CORS error after successful sign-in

Hi everyone,
I am currently receiving a CORS error after a successful sign-in when I run an ajax call to my web app that’s installed on my server.

This is preventing my configure page from rendering inside the Teams tab configuration section.
I have tried the following:

Added app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll) to Startup.cs;
Added the following headers to my ajax call as well as IIS:
'Access-Control-Allow-Origin': ‘login.microsoft.com,mydomain.com.au' (also tried ‘*’)

I have also tried the prerequisites on this page such as:

Adding "frame-ancestors teams.microsoft.com *.teams.microsoft.com *.skype.com" to the Content-Security-Policy header in both IIS and my ASP.NET MVC app
Adding X-Frame-Options: ALLOW-FROM https://teams.microsoft.com/ header in both IIS and my ASP.NET MVC app

I have spent some time researching the error but none of the fixes seems to work.
My web app is built using asp.net 4 MVC (version 4.7.2)
My app was working in October, so I am unsure if a Teams update caused this issue.
Has anyone seen this issue before, and if so, what was the fix?
Thank you,
Oliver

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: b159fe6e-33d0-6174-f3c3-68aaec79ee1b
Version Independent ID: 7037e9c7-f501-5b70-8acf-1f004a06289b
Content: Prerequisites - Teams
Content Source: msteams-platform/tabs/how-to/tab-requirements.md
Service: msteams
GitHub Login: @surbhigupta
Microsoft Alias: lajanuar

@sayali-MSFT Thank you for the suggestions.
I have tried both enabling CORS via IIS 10 and in my ASP.NET Code via these two links:
https://enable-cors.org/server_aspnet.html
https://enable-cors.org/server_iis7.html
However I am still receiving the CORS errors above
I also have the IIS 10 CORS module installed
https://www.iis.net/downloads/microsoft/iis-cors-module

@Oliver15-dev - The user agent was unable to add the required Origin header to the HTTP request. All CORS requests must have an Origin header.
This can happen if the JavaScript code is running with enhanced privileges allowing it access to multiple domains' content, for example.

@sayali-MSFT How can I tell if my javascript code is running with enhanced privileges?
Also, in terms of the CORS headers, this is what I've done:
In the c#ASP.NET code I have added:

To the Startup.cs file

app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);

To the Global.asax file:

     context.Response.AddHeader("Content-Security-Policy", "frame-ancestors teams.microsoft.com *.teams.microsoft.com *.skype.com");
     context.Response.AddHeader("Access-Control-Allow-Origin", "{mydomain}.com.au login.microsoftonline.com"); ```

- To my controllers

[EnableCors(origins: "https://login.microsoftonline.com,{mydomain}.com.au", headers: "", methods: "")]

- To **WebApiConfig.cs** in the **Register** method

var corsAttr = new EnableCorsAttribute("https://login.microsoftonline.com,{mydomain}.com.au", "", "");
config.EnableCors(corsAttr);

and in IIS10:
![image](https://user-images.githubusercontent.com/55416849/206934030-9fdb7ea5-84a4-4ae3-8f1c-f70a722d34e2.png)

Am I missing anything/have I misconfigured anything?

@Oliver15-dev -Follow the below 2 steps to enable CORS in your ASP.NET app:

Install the Microsoft.AspNetCore.Cors Nuget package.
Register CORS in the ConfigureService() method of Startup.cs. Next, enable CORS middleware in the Configure() method of Startup.cs.
Note: in .NET 6 or later versions, we need to perform 2nd step on Program.cs class.

We need to Register CORS as a service in the Startup.cs file’s ConfigureServices() method as shown below:
public void ConfigureServices(IServiceCollection services)
{
    services.AddCors();
    services.AddControllersWithViews();
}

For .NET 6 or later versions: The above code for .NET 6 or later version is added to Program class as shown below:
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddCors();

 // Shows UseCors with CorsPolicyBuilder.
app.UseCors(builder =>
{
    builder.AllowAnyOrigin()
           .AllowAnyMethod()
           .AllowAnyHeader();
});

Hi @sayali-MSFT ,
Thank you for your suggestion, however, my App is built using ASP.NET 4.7, so it doesn't not have a ConfigureServices method
This is what I have in my Startup.cs file to enable CORS

@Oliver15-dev - Thanks u for the detailed information. We are checking it with internally and let you know the update.

Thank you @sayali-MSFT! Did you manage to find anything?

@Oliver15-dev - The error seems to imply that your app is making an AJAX request to some login.microsftonline.com endpoint from its own domain and AAD is not returning the right CORS header. You need to modify your app's registration in the AAD portal.
similar issue discussed here:
https://stackoverflow.com/questions/68585377/access-to-xmlhttprequest-at-https-login-microsoftonline-com-has-been-blocked-b

@sayali-MSFT Thank you for the information, The tutorials seem to be for ASP.NET CORE and .NET 6, are there any tutorials for ASP.NET MVC (4.7.2)?
Also has there been a change to Azure that requires the changes listed here?
https://stackoverflow.com/questions/68585377/access-to-xmlhttprequest-at-https-login-microsoftonline-com-has-been-blocked-b
Only asking as my app has been working for sometime now until a couple months ago.
You are correct, my app is making an AJAX request.
The app is currently setup to use OIDC Authentication, this is the code I have for the Configuration function:
public void Configuration(IAppBuilder app)
{
    try
    {
        app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);

        GlobalHost.Configuration.TransportConnectTimeout = TimeSpan.FromSeconds(10);
        app.MapSignalR();

        app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);

        app.UseCookieAuthentication(new CookieAuthenticationOptions()
        {
            CookieManager = new SystemWebCookieManager(),
        });

        // Configure Open ID Connect
        app.UseOpenIdConnectAuthentication(
        new OpenIdConnectAuthenticationOptions
        {
            ResponseType = OpenIdConnectResponseType.Code,
            ClientId = MsalAppBuilder.applicationID,
            Authority = MsalAppBuilder.authority,
            RedirectUri = MsalAppBuilder.redirectUri,
            PostLogoutRedirectUri = MsalAppBuilder.redirectUri,
            Scope = "openid email profile offline_access Files.ReadWrite.All User.Read",
            AuthenticationMode = AuthenticationMode.Active,
            TokenValidationParameters = new TokenValidationParameters()
            {
                ValidateIssuer = false
            },
            Notifications = new OpenIdConnectAuthenticationNotifications
            {
                SecurityTokenValidated = async n =>
                {
                    // Set persistent cookie,
                    n.AuthenticationTicket.Properties.IsPersistent = true;
                    // and the expiration
                    n.AuthenticationTicket.Properties.ExpiresUtc = DateTime.Today.AddDays(2);
                },
                AuthenticationFailed = OnAuthenticationFailed,
                AuthorizationCodeReceived = OnAuthorizationCodeReceivedAsync,
            },
            UsePkce = false,
        });

        //IdentityModelEventSource.ShowPII = true;
    }
}

After the user successfully signs in, within the javascript file, there is a GET ajax call to retrieve the user's settings:
microsoftTeams.initialize();

microsoftTeams.getContext(async function (context) {
$.ajax({
    url: rootPath + '/Admin/GetSettings',
    type: "GET",
    headers: {
        'Content-Security-Policy': 'frame-ancestors teams.microsoft.com *.teams.microsoft.com *.skype.com',
        'Access-Control-Allow-Origin': 'https://login.microsoftonline.com https://mydomain.com.au'
    },
    data: { channelId: context.channelId, teamsId: context.groupId, channelName: context.channelName, teamName: context.teamName },
    async: false,
    success: function (data) {
        // notify success

    },
    error: function (data) {
        console.log("error retrieving Teams settings");
        console.log(data);

    }
})

}

Previously, the above ajax call was successful and would return a JSON of the user's settings, however, now it just throws the CORS error instead

Hi @sayali-MSFT , have you had a chance to review the above information? Let me know if you need me to provide any more information help diagnose the issue

@Oliver15-dev -We are trying to repro the issue and also check with the internal team and let you know the results. Thanks!

Hi @sayali-MSFT , unfortunately I won't be able to provide a Fiddler Trace at this stage
rootPath is just a variable containing the sitepath
e.g. rootPath = "https://example.com.au/Teams2CMCollaborate"

@Oliver15-dev - We are not able to investigation further due to unavailability of network traces/logs.
Could you please monitor this error and try to provide network trace when it reappears?

@Oliver15-dev -Please send the details here-<EMAIL_ADDRESS>

@sayali-MSFT Thank you, I have sent the .har network trace to<EMAIL_ADDRESS>

@Oliver15-dev -Have you sent mail with .har network trace?
because we did not got the mail.

@sayali-MSFT Yes, I sent the email on the 19/01. I have just sent another one from the following email address<EMAIL_ADDRESS>Please let me know if you receive the email

@Oliver15-dev -Thanks for sharing the details, we are checking it internally and let you know once we get any update.

@sayali-MSFT no worries, thank you for letting me know

@Oliver15-dev -Just want to confirm one thing, have you done below steps?
If you attempt to use the authorization code flow without setting up CORS for your redirect URI, you will see this error in the console:
access to XMLHttpRequest at 'https://login.microsoftonline.com/common/v2.0/oauth2/token' from origin 'yourApp.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
To solve the issue, you need to do below steps: -
go to their app registration in Azure Portal, switch to the Authentication tab, and then migrate their callback URL(s) to from the "Web" to "Single-page application" section:

Reference document-https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow#redirect-uris-for-single-page-apps-spas

@sayali-MSFT Thank you for the advice, when I migrate my callback URL from "Web" to "Single-page application" and sign in, I get this error:

hi @sayali-MSFT , have your team received my network trace file?

@Oliver15-dev -Yes, we receive network trace file. We are checking this with engineering team.
Currently we don't have update on this. Once we get any update, we will inform you.

@sayali-MSFT too easy, thank you for the update

Hi @sayali-MSFT has there been any updates on the issue?

@Oliver15-dev - Could you please post this query on below to the AAD support channels as well.
https://learn.microsoft.com/en-us/azure/active-directory/fundamentals/how-to-get-support

@sayali-MSFT all done, I've just opened a support ticket

@Oliver15-dev , Did you get a solution to this , we are also facing the same issues. Can you suggest a workaround if you pass thru this.

@Inventrax69 nah, my issue got escalated to a Techincal Lead, however we closed the case as we no longer support the solution that had the CORS error


Syntax highlighting is inconsistent for Class names

I saw this in one of the examples:

Notice the highlighting on constructors of XElement; two of them are highlighted in lighter blue color, while the rest are in black color.
I noticed that you are using highlight.js v9.12.0. So let me know if I should raise the issue on their repo.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: b4a44517-d9a2-454d-90f3-90d9553ff4be
Version Independent ID: f31a6959-8212-a49f-eeb4-43936dbfbadb
Content: Data Transformations with LINQ (C#)
Content Source: docs/csharp/programming-guide/concepts/linq/data-transformations-with-linq.md
Product: dotnet-csharp
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Thank you for your feedback @Shah-Nisarg. Given this is about the site experience and not the content itself, I've moved the feedback to https://github.com/MicrosoftDocs/feedback/issues/641. Someone from the engineering team should follow up on that.


Promote libkrun podman machine

Is your enhancement related to a problem? Please describe
As we're giving advice about Podman machine settings when starting a recipe or inference server, we should also promote libkrun Podman machines on macos.
Describe the solution you'd like
If the connection is targetting on Podman machine that is not libkrun, we should add a message about the new machine kind
Describe alternatives you've considered
No response
Additional context
No response

Ok to close in favor of #1591

Ok to close in favor of #1591 ?

No as I think it's a little bit different and if it's the same intent why create a new issue to clone an existing one


Equivalent of hintStyle prop for TextField in v1.x?

I'd like to style the placeholder text in a TextField in v1.  Is there a way to do this with inline styles or props, or do we need to use classes for it?
I'm effectively looking for a replacement for the hintStyle prop in the v0.x TextField.
Thanks!

We have an example in the docs that shows how to customize the TextField:
The placeholder can be reached with the classes.input. Still, it's challenging to change as you have to handle all the browsers prefixes:
https://github.com/callemall/material-ui/blob/86dbd4986c6fdc1f32c088abb3b73d25974272e8/src/Input/Input.js#L117-L120

Thanks!


Drivelist crash with PocketBook device

Drivelist (v6.1.1 on MacOS 10.13.3) crashes if I connect my e-ink device (a PocketBook Touch Lux 2).
$ node test.js
/Users/dummy/projects/app/node_modules/drivelist/lib/diskutil.js:122
    const partitions = layout.Partitions.concat(layout.APFSVolumes || []);
                                         ^

TypeError: Cannot read property 'concat' of undefined
    at devices.forEach (/Users/dummy/projects/app/node_modules/drivelist/lib/diskutil.js:122:42)
    at Array.forEach (<anonymous>)
    at setMountpoints (/Users/dummy/projects/app/node_modules/drivelist/lib/diskutil.js:118:11)
    at asyncMap (/Users/dummy/projects/app/node_modules/drivelist/lib/diskutil.js:149:7)
    at next (/Users/dummy/projects/app/node_modules/drivelist/lib/diskutil.js:73:7)
    at ChildProcess.childProcess.spawn.on.on (/Users/dummy/projects/app/node_modules/drivelist/lib/diskutil.js:45:7)
    at emitTwo (events.js:126:13)
    at ChildProcess.emit (events.js:214:7)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)

Content of test.js:
const drivelist = require('drivelist');

drivelist.list((error, drives) => {
  if (error) {
    throw error;
  }

  console.log(drives);
});

Thanks for your help.

I just tried the same script with the 5.2.12 version: it does not crash this time.
But the mountpoint path is incomplete.
The real volume path:
$ ls -l /Volumes/
total 16
lrwxr-xr-x  1 root          wheel     1 Mar  1 07:36 Macintosh HD -> /
drwxrwxrwx@ 1 dummy  staff  4096 Mar 16 10:31 TL TEA

The one found by drivelist:
$ node test.js
[]
[ { path: '/' }, { path: '/private/var/vm' } ]
[ { path: '/Volumes/TL' } ]

With test.js:
const drivelist = require('drivelist');

drivelist.list((error, drives) => {
  if (error) {
    throw error;
  }

  drives.forEach(drive => console.dir(drive.mountpoints));
});

The problem with spaces in the mountpoint was fixed in #246 which got released in drivelist 6.0.1 :slightly_smiling_face:

The problem with spaces in the mountpoint was fixed in #246 which got released in drivelist 6.0.1

OK thanks. That's why I wanted to use the 6.x version but with no luck.

Maybe this issue is a duplicate of #258 ?

Maybe this issue is a duplicate of #258 ?

Yes it looks like it. Can I do something to help?

Duplicate of #258

Being fixed in #259


More unit tests for parser

This PR is to include more unit tests for the parser. The parser may be quite buggy.

Looks good to me.


Enabling tech debt changes

Remove xml file for service loader
Remove spring from enclave module
Jaxrs applications can be created with default constructor allowing the rest container to create instances.
Remove marker interfaces to filter for application to server matching use AppyType property on application class.

Codecov Report

Merging #813 into master will increase coverage by 0.04%.
The diff coverage is 100%.

@@             Coverage Diff              @@
##             master     #813      +/-   ##
============================================
+ Coverage     99.48%   99.52%   +0.04%
- Complexity     1890     1953      +63
============================================
  Files           286      294       +8
  Lines          5639     5742     +103
  Branches        289      286       -3
============================================
+ Hits           5610     5715     +105
  Misses            5        5
+ Partials         24       22       -2

Impacted Files
Coverage Δ
Complexity Δ

...m/jpmorgan/quorum/tessera/sync/PartyInfoCodec.java
100% <ø> (ø)
7 <0> (?)

...rum/tessera/partyinfo/PartyInfoServiceFactory.java
100% <100%> (ø)
2 <2> (?)

.../quorum/tessera/sync/WebSocketSessionCallback.java
100% <100%> (ø)
1 <1> (?)

...c/main/java/com/quorum/tessera/config/AppType.java
100% <100%> (ø)
3 <1> (-1)
:arrow_down:

...c/main/java/com/quorum/tessera/p2p/P2PRestApp.java
100% <100%> (ø)
8 <8> (+7)
:arrow_up:

...com/quorum/tessera/app/TesseraRestApplication.java
100% <100%> (ø)
2 <2> (?)

...n/java/com/quorum/tessera/grpc/p2p/P2PGrpcApp.java
100% <100%> (ø)
3 <3> (+2)
:arrow_up:

...um/tessera/sync/PartyInfoEndpointConfigurator.java
100% <100%> (ø)
3 <3> (?)

...c/main/java/com/quorum/tessera/q2t/Q2TRestApp.java
100% <100%> (ø)
7 <7> (+6)
:arrow_up:

.../java/com/quorum/tessera/admin/ConfigResource.java
100% <100%> (ø)
10 <10> (ø)
:arrow_down:

... and 22 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a47358f...1a53176. Read the comment docs.


Build failing due to octokit plugin-rest-endpoint

Note:

I've confirmed this on different machines (linux + windows), at home and on my VPS.
This appears to be due to the latest patch with plugin-rest-endpoint-methods.js, released 3hrs ago.
I've filed an issue there: https://github.com/octokit/plugin-rest-endpoint-methods.js/issues/172

Filing an issue here as well so that it can be tracked if anyone else experiences the same.
Steps:
git clone https://github.com/microsoft/TypeScript.git
cd TypeScript
npm install
npm run build:compiler

Search Terms: octokit, build failing
Affected Versions: 3.9 - 4.0 fail (3.8.2 succeeded)
Errors
[21:44:13] Finished 'generateLibs' after 571 ms
node_modules/@octokit/plugin-rest-endpoint-methods/dist-types/generated/parameters-and-response-types.d.ts:961:60 - error TS2339: Property 'GET /user/:migration_id/repositories' does not exist on type 'Endpoints'.

961             parameters: RequestParameters & Omit<Endpoints["GET /user/:migration_id/repositories"]["parameters"], "baseUrl" | "headers" | "mediaType">;
                                                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

node_modules/@octokit/plugin-rest-endpoint-methods/dist-types/generated/parameters-and-response-types.d.ts:962:33 - error TS2339: Property 'GET /user/:migration_id/repositories' does not exist on type 'Endpoints'.

962             response: Endpoints["GET /user/:migration_id/repositories"]["response"];
                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

node_modules/@octokit/plugin-paginate-rest/dist-types/generated/paginating-endpoints.d.ts:987:31 - error TS2339: Property 'GET /user/:migration_id/repositories' does not exist on type 'Endpoints'.

987         parameters: Endpoints["GET /user/:migration_id/repositories"]["parameters"];
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

node_modules/@octokit/plugin-paginate-rest/dist-types/generated/paginating-endpoints.d.ts:988:29 - error TS2339: Property 'GET /user/:migration_id/repositories' does not exist on type 'Endpoints'.

988         response: Endpoints["GET /user/:migration_id/repositories"]["response"];
                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Found 4 errors.

Issue fixed on plugin side. https://github.com/octokit/plugin-rest-endpoint-methods.js/issues/172
Forthcoming from contributor is: 'post-mortem to explain what happened, how I'll make sure it won't happen again.'

Here is the promised post-mortem:
https://github.com/octokit/plugin-rest-endpoint-methods.js/issues/172#issuecomment-663164635
I'll also look through your code base to see how you use @octokit/rest. It's possible that using @octokit/core instead with only the plugins you need might be a better fit. It has a much smaller API surface, which will lower the risk for future incidents as well as lower the maintenance overhead, as there are not nearly as many breaking changes. It also has a smaller bundle size which will fasten your build times

I looked through your code and I think you should use @octokit/core instead of @octokit/rest.
The changes will look like this. Instead of
gh.pulls.get({ pull_number: +process.env.SOURCE_ISSUE, owner: "microsoft", repo: "TypeScript" }))

the code will be
// https://docs.github.com/en/rest/reference/pulls#get-a-pull-request
gh.request('GET /repos/:owner/:repo/pulls/:pull_number', { pull_number: +process.env.SOURCE_ISSUE, owner: "microsoft", repo: "TypeScript" }))

gh.request has TypeScript definitions for all known routes, so from a user experience it's not such a big trade off. @octokit/core is roughly 1/3 of the code size, and it does not need to generate the 600+ rest endpoint methods each time you instantiate an Octokit instance. You also won't be affected by method name changes, which happened a lot in the past (it will slow down now though).
I'd be happy to send a pull request if you'd like that.
One thing I'd like to do first though is to update the type definitions for the paths from /repos/:owner/:repo/pulls/:pull_number to /repos/{owner}/{repo}/pulls/{pull_number}. Both work at run time, but the latter aligns with the new documentation, e.g. https://docs.github.com/en/rest/reference/pulls#get-a-pull-request
I promise to release that change as a breaking change in @octokit/types 🤞🏼😁


Move SEND_ACTIVATION_EMAIL code to SetUsernameView

Add few tweaks and fixes
Add tests on activation and same username

Coverage decreased (-0.07%) to 96.667% when pulling c367cdeeb8b628e8de8f6e32552af62a4f17b40f on issue/206 into 1ffeb417da1d2793ce75b37e6cc946912261c367 on master.

Coverage decreased (-0.07%) to 96.667% when pulling f8d070944c94c04445fb53211b7d04ea940a9f5d on issue/206 into f38d1162d62468e8ff99b9a92e0f69edc95c8d5c on master.

Coverage decreased (-0.07%) to 96.667% when pulling f8d070944c94c04445fb53211b7d04ea940a9f5d on issue/206 into f38d1162d62468e8ff99b9a92e0f69edc95c8d5c on master.

Coverage decreased (-0.07%) to 96.667% when pulling f8d070944c94c04445fb53211b7d04ea940a9f5d on issue/206 into f38d1162d62468e8ff99b9a92e0f69edc95c8d5c on master.

Coverage decreased (-0.07%) to 96.659% when pulling 6caef61332df00f8740b926b3a31068ff307eaf3 on issue/206 into 101c12712eb4d6207023fda5bda7c6f3bc53ead3 on master.


Apply filter while typing in the filtering box for text field and number field.

Feature Request / Help Request
Hi, @tabalinas I have tried searching for this and found the solution for it #487 but my requirement does not match it.
We need:-

Filter number while typing without hitting enter.
Filter text neglecting uppercase and lowercase characters.
i.e to filter without considering the case of the text entered.

http://jsfiddle.net/singh_jasvinder/xk402uhg/8/
Thanks.

You are almost there with your example. All you need is to tweak your filtering function a bit.
=== is used for Number, while filter value is a string, so it doesn't work.
For case insensitive search use .toLowerCase().
Here is the corrected fiddle:
http://jsfiddle.net/tabalinas/p4xbh260/

Hi, Thank you for the solution!


[Cex.io] API key is not activated

Hi,
I am getting this error message everytime I try to make an authenticated call on Cex. This is the first time I am using Cex.io, is this something I need to do other than what I did:

Activate the key via the web interface
authenticating with apikey/password/username

Thanks

This is a bug on CexIO. You fix it by disabling 2FA, then you should activate the api key on the exchange page and reenable 2FA.
I had the same problem yesterday, somehow 2FA is making the activation fail, even though it says the key was activated.
Cheers

Thanks.

This should be reported to CexIo


X64Backend: fix codegen for ROR when amount is non-zero but divisible by 32

gba-suite tests this, see thumb.gba test 66


Producer API: blacklist/whitelist control

@tbfleming is this the same as https://github.com/EOSIO/eos/issues/4149?

Yes


Allow a prop to update (and animate to) a new active index

Hello,
I'd like to allow the parent component of the slider to update the current index of the pager and have it animate to that page. Right now it doesn't seem to do that.
I've tried to tweak the code a bit in order to do this using the componentWillReceiveProps lifecycle method, but I can't seem to get it to work.
Anyway, if you could add this, that would be great.
Thanks.

Cool idea @lelandrichardson !
slider should be supports, Would you like show me some UI pics, I will design this feature later.

+1

+1

+1

+1 It will be nice if code can control which page to show, and get callback when a page is shown.

+1

+1

+1

I'm working on it right now. There's a bit of code in there I have a question about. Looks like this around line 500:
  renderScrollView(pages) {     // console.log('Render scroll view: ', pages);      // if (Platform.OS === 'ios')          return (             <ScrollView ref="scrollView"              {...this.props}                        contentContainerStyle={[styles.wrapper, this.props.style]}                        contentOffset={this.state.offset}                        onScrollBeginDrag={this.onScrollBegin}                        onScrollEndDrag={()=>this.setState({isScrolling:false})}                        onMomentumScrollEnd={this.onScrollEnd}>              {pages}             </ScrollView>          );       // return (       //    <ViewPagerAndroid ref="scrollView"       //     {...this.props}       //       initialPage={this.state.index}       //       onPageSelected={this.onScrollEnd}       //       style={{flex: 1}}>       //       {pages}       //    </ViewPagerAndroid>       // );   },
I've commented out the  component and it's working fine on Genymotion android simulator. I guess ScrollView is cross platform now? My scrolling solution is about to be working with ScrollView. I haven't looked into implementing it with ViewPager as this now seems redundant. Opinions?


partials from references

need to handle this situation
y { title, desc }

x --> y

subs
{
    x: { title: true }
    z: { desc: true ]
}

z.set(y) --- needs to fire desc

could be something with switch as well but this is the problem
previous hotfix slows down the rest so think of something better

idea 1 was
incoming stamps (and re-diffing most of the tree allways)


Previous version randomly fails, but after 2/3 retries, analyze can be completed.

In my case even failOnError=false does not help, as the build task checkAggregate still fails.
Task :dependencyCheckAggregate FAILED

In my case even failOnError=false does not help, as the build task checkAggregate still fails. Task :dependencyCheckAggregate FAILED

same for me!

Locked conversation on this one as 'me too' comments are unneeded
For the people suffering from a 'me too' that came here to weigh in: double-check that you do cache your OWASP DependencyCheck data folder, then you should be able to run (with current data) using the "don't update" flag of your tool.
If you previously did not cache the intermediate results then make sure to start doing so ASAP in order to not contribute to the DDoS on the NVD API in the future.
Preferably set up a dedicated periodic job (e.g. every 4 hours) to just update your cached copy in your infrastructure and configure your builds to run without updating so that you are less impacted by infrastructure overload at the side of the NIST NVD (as a bonus you also are causing less impact on NIST NVD infrastructure by your builds reducing the risk for everyone to run into a 503).


GH966: Signtool: Add support for description URL (/du)

From https://msdn.microsoft.com/en-us/library/8s9b9yaz(v=vs.110).aspx#Anchor_3:

/du URL - Specifies a Uniform Resource Locator (URL) for the expanded description of the signed content.

Adds SignToolSignSettings.DescriptionUri and corresponding changes in SignToolSignRunner.

Relates to #966

@dbertram I have restarted the Travis Build, as it looks like there was a timeout when it was attempting to do the nuget package restore.

@gep13 Looks like nuget restore failed again on that Travis CI build. :/

@dbertram kicked the build again.

@dbertram this is honestly unlikely anything to do with your PR.  It is just that sometimes Travis has a hard time restoring nuget packages.  We have put in some retry logic using Polly, which normally gets it to work, but looks like there are more serious problems today than normal.

@dbertram looks good to me, PR needs rebasing against latest develop though.

@devlead Rebased.


[CON-155] not working until server is killed an additional time

Happened in two different cases. Things were freezing. Then killed the 65432 process, reloaded window, and it worked. Either a) this was an invalid (older version) server or b) there was some old websocket being held onto by the vscode extension or react app which was no longer valid. Except reloading the window didn't solve the problem so seems like more of a server issue. Also possible that the server is holding onto an older websocket. This would make sense. Maybe we are swallowing WebsocketConnectionClosed errors?

One safe solution is to get pinged updates from the server every few seconds, and if they stop coming, then you kill the server, and completely redo the installation process.
The other correct thing to do is find out why its trying to await read_text() on an already closed websocket. Probably because of the error handling changes you made.

CON-155

I think this is resolved, but want to leave it here just to be sure. We've made sure that if there was already a server connection, then the VS Code extension + React App always knows how to reconnect once it is back up, and state is persisted. Only issue is if it somehow doesn't connect in the first place. In this case, you probably want to kill whatever is on 65432 and just try again.

add a default system message. This can ask the assistant to always be helpful. Also can serve as a placeholder example in config.json


Mounting Volumes - nothing happens

Hi,
I can't make "Volume Mounting" to work, even with the example: https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/blob/master/examples/spark-pi.yaml
kubectl --namespace spark describe pod spark-pi-driver
[...]
Volumes:
  spark-local-dir-1:
    Type:    EmptyDir (a temporary directory that shares a pod's lifetime)
    Medium:
  spark-conf-volume:
    Type:      ConfigMap (a volume populated by a ConfigMap)
    Name:      spark-pi-1553707634744-driver-conf-map
    Optional:  false
  spark-operator-spark-token-7w84x:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  spark-operator-spark-token-7w84x
    Optional:    false

There is no "test-volume" anywhere there
At the same time when I describe sparkapplications I see volume over there:
kubectl --namespace spark describe sparkapplications.sparkoperator.k8s.io spark-pi
[...]
    Volume Mounts:
      Mount Path:  /tmp
      Name:        test-volume
[...]
  Volumes:
    Host Path:
      Path:  /tmp
      Type:  Directory
    Name:    test-volume

Do you have the mutating webhook enabled? One thing you want to check is if there's an OwnerReference for the owning SparkApplication on your driver pod. If no, then it's clearly that the webhook is either not enabled or not functioning properly.

I installed it with that command: helm install incubator/sparkoperator --namespace spark --set "sparkJobNamespace=spark" --set "enableWebhook=true" --name spark-operator
I can see webhook service in spark namespace

Did you check the OwnerReference?

Is that this Adnotatipon you are asking about?
~❯ kubectl --namespace spark get pod  spark-pi-driver -o yaml | grep -i ownerreference
    sparkoperator.k8s.io/ownerreference: ChBTcGFya0FwcGxpY2F0aW9uGghzcGFyay1waSIkYjFmOTFiYTQtNTE4MS0xMWU5LWFjYWEtMDY5MDc4NGUxNDNjKhxzcGFya29wZXJhdG9yLms4cy5pby92MWJldGExMAE=

No, I meant the ownerReferences field in the pod metadata. BTW: the operator no longer uses the annotation you pasted above. Which version of the operator are you running?

I am not seeing this one. This is entire Pod:
apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: "2019-03-29T09:53:17Z"
  labels:
    spark-app-selector: spark-062c3d6b66f84a77a87bbd2260ef042f
    spark-role: driver
    sparkoperator.k8s.io/app-name: spark-pi
    sparkoperator.k8s.io/launched-by-spark-operator: "true"
    sparkoperator.k8s.io/submission-id: spark-pi-1553853194906163458
    version: 2.4.0
  name: spark-pi-driver
  namespace: spark
  resourceVersion: "9548018"
  selfLink: /api/v1/namespaces/spark/pods/spark-pi-driver
  uid: 7a50ef59-5208-11e9-acaa-0690784e143c
spec:
  containers:
  - args:
    - driver
    - --properties-file
    - /opt/spark/conf/spark.properties
    - --class
    - org.apache.spark.examples.SparkPi
    - spark-internal
    env:
    - name: SPARK_DRIVER_BIND_ADDRESS
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: status.podIP
    - name: SPARK_LOCAL_DIRS
      value: /var/data/spark-d8a2bc42-33da-40af-8d96-83ff79026ce6
    - name: SPARK_CONF_DIR
      value: /opt/spark/conf
    image: gcr.io/spark-operator/spark:v2.4.0
    imagePullPolicy: Always
    name: spark-kubernetes-driver
    ports:
    - containerPort: 7078
      name: driver-rpc-port
      protocol: TCP
    - containerPort: 7079
      name: blockmanager
      protocol: TCP
    - containerPort: 4040
      name: spark-ui
      protocol: TCP
    resources:
      limits:
        cpu: 200m
        memory: 896Mi
      requests:
        cpu: 100m
        memory: 896Mi
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/data/spark-d8a2bc42-33da-40af-8d96-83ff79026ce6
      name: spark-local-dir-1
    - mountPath: /opt/spark/conf
      name: spark-conf-volume
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: spark-operator-spark-token-m28hv
      readOnly: true
  dnsPolicy: ClusterFirst
  nodeName: ip-172-17-10-13.eu-west-1.compute.internal
  priority: 0
  restartPolicy: Never
  schedulerName: default-scheduler
  securityContext: {}
  serviceAccount: spark-operator-spark
  serviceAccountName: spark-operator-spark
  terminationGracePeriodSeconds: 30
  tolerations:
  - effect: NoExecute
    key: node.kubernetes.io/not-ready
    operator: Exists
    tolerationSeconds: 300
  - effect: NoExecute
    key: node.kubernetes.io/unreachable
    operator: Exists
    tolerationSeconds: 300
  volumes:
  - emptyDir: {}
    name: spark-local-dir-1
  - configMap:
      defaultMode: 420
      name: spark-pi-1553853196427-driver-conf-map
    name: spark-conf-volume
  - name: spark-operator-spark-token-m28hv
    secret:
      defaultMode: 420
      secretName: spark-operator-spark-token-m28hv
status:
  conditions:
  - lastProbeTime: null
    lastTransitionTime: "2019-03-29T09:53:17Z"
    status: "True"
    type: Initialized
  - lastProbeTime: null
    lastTransitionTime: "2019-03-29T09:53:20Z"
    status: "True"
    type: Ready
  - lastProbeTime: null
    lastTransitionTime: null
    status: "True"
    type: ContainersReady
  - lastProbeTime: null
    lastTransitionTime: "2019-03-29T09:53:17Z"
    status: "True"
    type: PodScheduled
  containerStatuses:
  - containerID: docker://58733f0cd88c983d238dba2a8ba05387202dadbf0acf80dc3d32717a6e0c4357
    image: gcr.io/spark-operator/spark:v2.4.0
    imageID: docker-pullable://gcr.io/spark-operator/spark@sha256:375cd079d14179687b37625ce850c905c452010325d62c35618b8e0c8ddc749b
    lastState: {}
    name: spark-kubernetes-driver
    ready: true
    restartCount: 0
    state:
      running:
        startedAt: "2019-03-29T09:53:19Z"
  hostIP: <IP_ADDRESS>
  phase: Running
  podIP: <IP_ADDRESS>
  qosClass: Burstable
  startTime: "2019-03-29T09:53:17Z"```

```~❯ kubectl --namespace spark describe pod spark-pi-driver
Name:               spark-pi-driver
Namespace:          spark
Priority:           0
PriorityClassName:  <none>
Node:               ip-172-17-10-13.eu-west-1.compute.internal/<IP_ADDRESS>
Start Time:         Fri, 29 Mar 2019 09:53:17 +0000
Labels:             spark-app-selector=spark-062c3d6b66f84a77a87bbd2260ef042f
                    spark-role=driver
                    sparkoperator.k8s.io/app-name=spark-pi
                    sparkoperator.k8s.io/launched-by-spark-operator=true
                    sparkoperator.k8s.io/submission-id=spark-pi-1553853194906163458
                    version=2.4.0
Annotations:        <none>
Status:             Succeeded
IP:                 <IP_ADDRESS>
Containers:
  spark-kubernetes-driver:
    Container ID:  docker://58733f0cd88c983d238dba2a8ba05387202dadbf0acf80dc3d32717a6e0c4357
    Image:         gcr.io/spark-operator/spark:v2.4.0
    Image ID:      docker-pullable://gcr.io/spark-operator/spark@sha256:375cd079d14179687b37625ce850c905c452010325d62c35618b8e0c8ddc749b
    Ports:         7078/TCP, 7079/TCP, 4040/TCP
    Host Ports:    0/TCP, 0/TCP, 0/TCP
    Args:
      driver
      --properties-file
      /opt/spark/conf/spark.properties
      --class
      org.apache.spark.examples.SparkPi
      spark-internal
    State:          Terminated
      Reason:       Completed
      Exit Code:    0
      Started:      Fri, 29 Mar 2019 09:53:19 +0000
      Finished:     Fri, 29 Mar 2019 09:54:45 +0000
    Ready:          False
    Restart Count:  0
    Limits:
      cpu:     200m
      memory:  896Mi
    Requests:
      cpu:     100m
      memory:  896Mi
    Environment:
      SPARK_DRIVER_BIND_ADDRESS:   (v1:status.podIP)
      SPARK_LOCAL_DIRS:           /var/data/spark-d8a2bc42-33da-40af-8d96-83ff79026ce6
      SPARK_CONF_DIR:             /opt/spark/conf
    Mounts:
      /opt/spark/conf from spark-conf-volume (rw)
      /var/data/spark-d8a2bc42-33da-40af-8d96-83ff79026ce6 from spark-local-dir-1 (rw)
      /var/run/secrets/kubernetes.io/serviceaccount from spark-operator-spark-token-m28hv (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             False
  ContainersReady   False
  PodScheduled      True
Volumes:
  spark-local-dir-1:
    Type:       EmptyDir (a temporary directory that shares a pod's lifetime)
    Medium:
    SizeLimit:  <unset>
  spark-conf-volume:
    Type:      ConfigMap (a volume populated by a ConfigMap)
    Name:      spark-pi-1553853196427-driver-conf-map
    Optional:  false
  spark-operator-spark-token-m28hv:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  spark-operator-spark-token-m28hv
    Optional:    false
QoS Class:       Burstable
Node-Selectors:  <none>
Tolerations:     node.kubernetes.io/not-ready:NoExecute for 300s
                 node.kubernetes.io/unreachable:NoExecute for 300s
Events:
  Type     Reason       Age    From                                                 Message
  ----     ------       ----   ----                                                 -------
  Normal   Scheduled    3m44s  default-scheduler                                    Successfully assigned spark/spark-pi-driver to ip-172-17-10-13.eu-west-1.compute.internal
  Warning  FailedMount  3m44s  kubelet, ip-172-17-10-13.eu-west-1.compute.internal  MountVolume.SetUp failed for volume "spark-conf-volume" : configmaps "spark-pi-1553853196427-driver-conf-map" not found
  Normal   Pulling      3m42s  kubelet, ip-172-17-10-13.eu-west-1.compute.internal  pulling image "gcr.io/spark-operator/spark:v2.4.0"
  Normal   Pulled       3m42s  kubelet, ip-172-17-10-13.eu-west-1.compute.internal  Successfully pulled image "gcr.io/spark-operator/spark:v2.4.0"
  Normal   Created      3m42s  kubelet, ip-172-17-10-13.eu-west-1.compute.internal  Created container
  Normal   Started      3m42s  kubelet, ip-172-17-10-13.eu-west-1.compute.internal  Started container

I made sure to upgrade version to newest one:
spark-operator                  	1       	Fri Mar 29 09:52:27 2019	DEPLOYED	sparkoperator-0.1.13                                       	v1beta1-0.8.1-2.4.0                     	spark ```

This is Amazon EKS cluster, version: v1.11.5

Amazon is claiming that EKS should support Dynamic Admission Webhooks https://aws.amazon.com/about-aws/whats-new/2018/10/amazon-eks-enables-support-for-kubernetes-dynamic-admission-cont/

I don't see the OwnerReference in the resource metadata. Apparently the webhook didn't work properly.

@michalzxc Have you tried this example? Note that you need to first create a ConfigMap called dummy-cm in the job namespace before running the example. I ask because some Kubernetes distributions (not sure about Amazon EKS specifically) require special settings to enable hostPath mounting, which is what the spark-pi example is doing. But the example I referred to should work without special setup, as long as the webhook is enabled.

@yuchaoran2011 I tried also using existing PVC targeting NFS storage, but claim isn't mounted:
~❯ kubectl --namespace spark describe pvc spark-checkpoint
Name:          spark-checkpoint
Namespace:     spark
StorageClass:  efs
Status:        Bound
Volume:        pvc-cd4742f9-50a0-11e9-acaa-0690784e143c
Labels:        <none>
Annotations:   pv.kubernetes.io/bind-completed: yes
              pv.kubernetes.io/bound-by-controller: yes
              volume.beta.kubernetes.io/storage-class: efs
              volume.beta.kubernetes.io/storage-provisioner: stg01.tixey.com/aws-efs
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      10Gi
Access Modes:  RWX
Events:        <none>
Mounted By:    <none>

And PV:
~❯ kubectl --namespace spark describe pv pvc-cd4742f9-50a0-11e9-acaa-0690784e143c
Name:            pvc-cd4742f9-50a0-11e9-acaa-0690784e143c
Labels:          <none>
Annotations:     pv.beta.kubernetes.io/gid: 40001
                 pv.kubernetes.io/provisioned-by: stg01.tixey.com/aws-efs
Finalizers:      [kubernetes.io/pv-protection]
StorageClass:    efs
Status:          Bound
Claim:           spark/spark-checkpoint
Reclaim Policy:  Delete
Access Modes:    RWX
Capacity:        10Gi
Node Affinity:   <none>
Message:
Source:
    Type:      NFS (an NFS mount that lasts the lifetime of a pod)
    Server:    fs-8a751542.efs.eu-west-1.amazonaws.com
    Path:      /spark-checkpoint-pvc-cd4742f9-50a0-11e9-acaa-0690784e143c
    ReadOnly:  false
Events:        <none>

Not sure if you have found the cause of the issue and resolved it. Feel free to reopen.

I've installed the webhook, but I don't see the ownerReferences field.  Does anybody have the same issue? Here's how I installed the operator:
helm install spark-operator incubator/sparkoperator --namespace spark-rak --set sparkJobNamespace=spark-rak,enableWebhook=true,operatorVersion=v1beta2-1.1.2-2.4.5
I'm also not able to mount, more here: https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/issues/946

Hi,
I have the same issue with kubernees 1.20 and spark on the 3 node cluster.  enabled webhook and running the same. but the mount is not working as expected. I don't see the ownerReferences, How to fix this issue?

Hi,
I have the same issue with kubernees 1.20 and spark on the 3 node cluster.  enabled webhook and running the same. but the mount is not working as expected. I don't see the ownerReferences, How to fix this issue?

if I enable the webhooks I can see the secret being generated, but still no volume gets mounted

if I enable the webhooks I can see the secret being generated, but still no volume gets mounted

I failed on spark-opearator tag "v1beta2-1.2.0-3.0.0" but success on tag "latest".

Hi,
Yes it was resolved for me, in my case problem was completely somewhere else. I was using weave with eks (what is more stable in my opinion than aws-cni), but the thing what I didn't know is that using different CNI with eks breaks MuttatingAdmissionWebhooks all together. So as result masters (managed as a "service" without weave pod/networking) wasn't able to reach operator so mutation never happened. Spark was my first thing using Muttations in kubernetes, so I had no idea at a time that weave could be at fault

Hi,
Thanks for the update. I was able to fix this by reinstalling the webhook
operator and able to mount the volumes.
Regards,
Unni.
On Thu, Apr 22, 2021 at 9:03 PM michalzxc @.***> wrote:

Hi,
Yes it was resolved for me, in my case problem was completely somewhere
else. I was using weave with eks (what is more stable in my opinion than
aws-cni), but the thing what I didn't know is that using different CNI with
eks breaks MuttatingAdmissionWebhooks all together. So as result masters
(managed as a "service" without weave pod/networking) wasn't able to reach
operator so mutation never happened. Spark was my first thing using
Muttations in kubernetes, so I had no idea at a time that weave could be at
fault
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/issues/455#issuecomment-824946254,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABOCLKBSBJPZHJ5VV7GOOPDTKA6SZANCNFSM4HBZUOLQ
.

Hi, Thanks for the update. I was able to fix this by reinstalling the webhook operator and able to mount the volumes. Regards, Unni.

If you don't mind, can you please tell the steps you took to re-install webhook operator?
Anybody facing same issue on AKS? I have tried to re-install multiple times on AKS with webhook enabled, it still does not work. I see the webhook getting creating. This was working and then stopped suddenly.
Thanks in advance!!!
With Regards,
Zia

Hi,
The following one is I executed
curl -fsSL -o get_helm.sh
https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod 700 get_helm.sh
/get_helm.sh
Ref: https://helm.sh/docs/intro/install/
Configure the operator POD with web hook
helm repo add spark-operator
https://googlecloudplatform.github.io/spark-on-k8s-operator
helm install my-release spark-operator/spark-operator --namespace
spark-operator --create-namespace --
set webhook.enable=true
Regards,
Unni
On Mon, Apr 26, 2021, 8:28 PM ziaulhaqueansari @.***>
wrote:

Hi, Thanks for the update. I was able to fix this by reinstalling the
webhook operator and able to mount the volumes. Regards, Unni.
If you don't mind, can you please tell the steps you took to re-install
webhook operator?
Anybody facing same issue on AKS? I have tried to re-install multiple
times on AKS with webhook enabled, it still does not work. I see the
webhook getting creating. This was working and then stopped suddenly.
Thanks in advance!!!
With Regards,
Zia
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/issues/455#issuecomment-826903729,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABOCLKHKMLGSH6SMRF7FXFLTKV5QZANCNFSM4HBZUOLQ
.

I change the volume name to spark-local-dir-1 , the pvc mounted

spark-local-dir-1

Nice, Thank you very much. This problem has bothered me for a long time. I'm going to collapse. Thank you very much😭

Did you check the OwnerReference?

What is the OwnerReference? I don't see the OwnerReference? How to resolve the problem?

Hi everyone,
thank you all for providing all this information out there on how this can be done.  In case someone still is facing the same issue, you indeed must enable the webhook but in the recent version it was changed to --set webhook.enable=true instead.
Just wanted to share that it did work with that flag enabled.
Happy Sparking.

@GezimSejdiu your link is outdated, here's the pinned one


In Add Catalog, the preview yml is below the Create/Cancel buttons

Version - Master with reskin
Steps:

Go to Catalog and click on any catalog
In Add Catalog screen scroll to bottom

Result:
The Preview for yml is below the Create/Cancel buttons.  This seems really strange.
Expected:
They should probably be above the buttons, but maybe minimized (have a way to open/close the preview).

Minimized by default and in tabs now.

Verified fixed - Version Master with updated reskined UI


Remove deprecated empty fields in bootstrap.yaml

Changes
As mentioned in https://github.com/knative-sandbox/net-kourier/pull/920, there are some deprecated empty configurations are remained, which makes confusion.
This patch cleans up them.

:broom: Update or clean up current behavior

/cc @skonto @maschmid

/lgtm

I guess there is no semantic difference between empty and non-existence.


Add BaseControllerV2 state metadata

State metadata has been added to the new BaseController constructor as a required constructor parameter. The metadata describes how to derive the state that should be persisted, and how to derive an 'anonymized' representation of the controller state.
The metadata describes top-level properties only, but it allows you to define a function to derive the anonymized or persistent state for each property. The only requirement of this derivation function is that the output is also valid JSON.
This is part of the controller redesign (#337).

This depends upon #366

To add a bit more background on how this compromise was reached: I did want to have a metadata format that was fully declarative, but this proved to be difficult. It's declarative for top-level properties, but any fine-grained control over whether nested properties are included requires writing a function.
e.g. for this state:
const state = {
  txMeta: {
    hash: '0x123',
    history: [
      {
        hash: '0x123',
        value: 9,
      },
    ],
    value: 10,
  },
};

If I wanted to keep everything but the balance in each history object, I'd need to write a function to strip it out, like this:
const schema = {
  txMeta: {
    anonymous: false,
    persist: (txMeta) => {
      return {
        history: txMeta.history.map((entry) => {
          return { hash: entry.hash };
        }),
        value: txMeta.value,
      };
    },
  },
};

I would like to revisit the idea of a declarative API that would allow specifying this without using a function, e.g. something like this:
const schema = {
  txMeta: {
    history: {
      '*': {
        hash: {
          anonymous: true.
          persist: true
        },
        value: {
          anonymous: false,
          persist: false,
        },
      },
    },
    value: {
      anonymous: true,
      persist: true,
    },
  },
};

But I abandoned that effort for now because handling this arbitrarily-nested metadata structure proved to be difficult. I did have it working (with some caveats) until I tried adding wildcard support (to apply rules for any entries/properties in a particular object), and then the types totally fell apart.

I'm assuming that in a new PR that deriveStateFromMetadata will be called when writing state to a persistent store?

Exactly, yes. This won't be implemented until the first controller based upon this one is integrated into a product, as the state persistence is handled separately in each product.

Will, there be a need for a deanonmyzier method to restore the state from its persisted anonymized version?

I don't think so, no. The anonymous state isn't meant to be persisted - it's for sending off to Sentry, and for generating state logs for support. The persisted state would not be anonymized. If the anonymization could be reversed, it would not be effective.

I don't think so, no. The anonymous state isn't meant to be persisted - it's for sending off to Sentry, and for generating state logs for support. The persisted state would not be anonymized. If the anonymization could be reversed, it would not be effective.

Ah that makes total sense, I erroneously thought both transforms were done before persisting.


Migrate status JSON files out of idseq-dag

Delete the code for creating these JSON files (to be read by webapp to display pipeline status) from idseq-dag, in favor of posting them from a miniwdl plugin.
The status JSON includes a markdown description for each step, which in some cases idseq-dag customized dynamically to reflect details of the specific inputs. We keep that idseq-dag logic and transmit the description through a WDL String output from each task to be read by the plugin.

Good point @morsecodist -- per @tfrcarvalho suggestion, I restored the existing code to update status.json within idseq-dag, and changed the plugin to create status2.json instead. This will make a smoother transition, we can re-delete the idseq-dag bits once the webapp is confirmed working with status2.json.

Just noting down a follow-on thought that we've discussed a few times: it would be great to minimize the number of tasks (pipeline steps) that have dynamic descriptions, and for those that have static descriptions, write those down as markdown comments in the WDL file itself, so the frontend can consume them from the static copy. (Building on that, for dynamic descriptions, we could use a templating convention where the docstring uses a jinja or ERB template with values that can be filled in from task inputs or outputs.)

They certainly were an inconvenience! One limitation is that WDL doesn't yet have multi-line string literals (task commands excepted), so it's inconvenient to put a lengthy markdown in them. That's been discussed in the standards forum, but hasn't made its way through yet.


[windows/k8s/cni] calico cni supports k8s pod of windows hyper-v mode ?

Hi Team
I'd like to consult if calico cni supports k8s pod of windows hyper-v mode ? Thank you for the help.
The config of my k8s cluster:
1 master: ubuntu18.4
1 worker: windows 2019
k8s version: 1.20.2 (the latest version supporting windows  hyper-v mode container)
calico cni: 3.21 (the latest version supporting k8s 1.20), vxlan mode
calico cni is installed by referring https://docs.tigera.io/archive/v3.21/getting-started/windows-calico/quickstart
My pod works well in windows process mode.
While the pod in hyper mode failed to set network interface, after kubelet open the feature gate HyperVContainer=true.

docker exec -it k8s_k8s-test-108-hv_k8s-test-108-hv-... powershell
PS C:> ipconfig

Windows IP Configuration

PS C:\> Get-NetAdapterAdvancedProperty
PS C:\> Get-NetAdapter
PS C:\>

I don't see error in kubelet log, but there is error in calico-felix log:

Could you please advise if this looks like a calico cni issue? Thank you.

C:\k\cni\config\10-calico.conf
{
"name": "Calico",
"windows_use_single_network": true,
"cniVersion": "0.3.1",
"type": "calico",
"mode": "vxlan",
"vxlan_mac_prefix":  "0E-2A",
"vxlan_vni": 4096,
"policy": {
"type": "k8s"
},
"log_level": "info",
"capabilities": {"dns": true},
"DNS":  {
"Nameservers":  ["<IP_ADDRESS>"],
"Search":  [
"svc.cluster.local"
]
},
"nodename_file": "C:\CalicoWindows\libs\calico\..\..\nodename",
"datastore_type": "kubernetes",
"etcd_endpoints": "",
"etcd_key_file": "",
"etcd_cert_file": "",
"etcd_ca_cert_file": "",
"kubernetes": {
"kubeconfig": "C:\CalicoWindows\calico-kube-config"
},
"ipam": {
"type": "calico-ipam",
"subnet": "usePodCidr"
},
"policies":  [
{
"Name":  "EndpointPolicy",
"Value":  {
"Type":  "OutBoundNAT",
"ExceptionList":  [
"<IP_ADDRESS>/12"
]
}
},
{
"Name":  "EndpointPolicy",
"Value":  {
"Type":  "ROUTE",
"DestinationPrefix":  "<IP_ADDRESS>/12",
"NeedEncap":  true
}
}
]
}

I have same query

I think the issue lies in "RefreshHnsEndpointCache" method in hns_windows.go where it is looking for containers attached to a HnSEndpoint. In the case of Hyper-v, a virtual machine is attached to the HNSEndpoint by containerd.
Get-HNsEndpoint

Good catch! Thank you for the help, @rahulgupta999
In my case, I don't see VirtureMachine item in Get-HNsEndpoint.
I'll look into hns_windows.go. Thank you again.

@danyang-intel and @rahulgupta999, thanks for spotting this and digging into it... I'm not sure as v3.21/k8s v1.20 predate me working on calico+windows, but @song-jiang might know this.
It looks like hns_windows.go is only a shim to https://github.com/microsoft/hcsshim/, but I'm not very familiar with it. Would you know if this is something hcsshim supports and/or only minor changes to hns_windows.go are needed?

it has same problem in
calico cni: 3.25.1 and k8s 1.27.2
any workarounds?


Do not put a slab on top of a campfire (Within the same block)

It crashes the server and causes an "Exception Ticking World" error.

Could you provide the console log please? Also, which mod and Minecraft version are you using? Thanks


PRODENG-2139 Changed MSR naming schema to 'mirantis-msr'

Description
*Changed the naming schema from mirantis-msr-connect to mirantis-msr
Issue
https://mirantis.jira.com/browse/PRODENG-2139

I was wrong

The makefile should also be changed: https://github.com/Mirantis/terraform-provider-msr/blob/main/Makefile#L10


Unable to inject: poll.c No such file or directory

Same problem as #4176 but it was closed so I'm opening a new ticket. However I have multiple different outputs, and I ran an infinite loop and it always had an error, similar but not the same, an extract of what I had:
29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
323	../sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S: No such file or directory.
29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
^C29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
3287	./malloc/malloc.c: No such file or directory.
The program being debugged was signaled while in a function called from GDB.
GDB remains in the frame where the signal was received.
To change this behavior use "set unwindonsignal on".
Evaluation of the expression containing the function
(__GI___libc_malloc) will be abandoned.
When the function is done executing, GDB will silently stop.
30	../sysdeps/unix/sysv/linux/epoll_wait.c: No such file or directory.
29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
146	../sysdeps/nptl/futex-internal.h: No such file or directory.
29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.
30	../sysdeps/unix/sysv/linux/epoll_wait.c: No such file or directory.

Removed most of the duplicates for brevity's sake, ran the loop 300 times and it never worked, also tried playing the game at the same time, it keeps stuttering briefly at every iteration but that's it, no menu appearing no nothing.
Any idea how can that be resolved?

reshout@debian:~/Osiris/build/Source$ sudo gdb -batch-silent -p $(pidof cs2) -ex "call (void*)dlopen(\"$PWD/libOsiris.so\", 2)"
29	../sysdeps/unix/sysv/linux/poll.c: No such file or directory.

Same issue here.

Same @danielkrupinski


fix: Added social media profile urls in feedback page.

Title and Issue number
Title :  Added social media profile urls in feedback page
Issue No. : #1364
Code Stack : HTML
Close #1364
Description

Added social media profile urls in feedback page.
Now, the social media profiles will open when clicked on these icons.

Video/Screenshots (mandatory)
https://github.com/user-attachments/assets/60a8fcb3-28c4-4379-8f07-d06543f4e248
Type of PR

[x] Bug fix
[ ] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Checklist:

[x] I have performed a self-review of my code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have gone through the  contributing.md file before contributing

Additional context:
@apu52 please review & merge my pull-request under GSSoC'24
Are you contributing under any Open-source programme?
Yes, GSSoC'24

[x] I am contributing under GSSOC'24
[ ] I am contributing under VSOC'24

There is some issue with the video recorder...

There is some issue with the video recorder...

https://github.com/user-attachments/assets/c338f9a1-7ee1-4b2a-b494-47f3b197f50b
@apu52 @itsekta
This is the output...

@apu52 can you  please add level label on this pr 🙏

Because without level label I will not be able to get the points of this pr in GSSOC'24. Hope you understand 🙏


fix: kafka consumer data loss promble

See related discussion https://github.com/apache/streampipes/discussions/1626

Hi @luoluoyuyu thanks for the PR!
I have a question related to the earliest offset (I'm not so familiar with the Kafka internals):
When stopping a pipeline and restarting the pipeline again, the same consumer group id is used. Would this change imply that all data which has been produced to the topic would be replayed to the processors of a pipeline?

Hi @dominikriemer
If the offset exists in the kafka consumer group, the consumption data is not started over. If the offset of the consumer group expires or the offset is never committed. Kafka in the earliest configuration will consume data from scratch. So whether to consume from scratch depends on when the kafka offset expires.
you can find more related information in the following resources:
https://kafka.apache.org/documentation/#consumerconfigs_auto.offset.reset
https://issues.apache.org/jira/browse/KAFKA-3806
I'm happy to contribute to the Streampipes community.

So to be on the safe side, we should check how we commit our offsets, right?
If we, e.g., set a short expiration period this might cause issues if my understanding is correct

while (isRunning) {
      ConsumerRecords<byte[], byte[]> records = consumer.poll(duration);
      records.forEach(record -> eventProcessor.onEvent(record.value()));
      if (/*Disable auto commit*/) {
        consumer.commitSync();
      }
    }

Yes, think this method works, kafka default offsets expiration time is 7 days (https://kafka.apache.org/documentation/#brokerconfigs_offsets.retention.minutes), I think long enough if the user modifies the offsets expiration time. We can expose this configuration to users. Let users choose what they want

while (isRunning) {
      ConsumerRecords<byte[], byte[]> records = consumer.poll(duration);
      records.forEach(record -> eventProcessor.onEvent(record.value()));
      if (/*Disable auto commit*/) {
        consumer.commitSync();
      }
    }

should we put this program in another PR to complete

So do we then want to expose AUTO_OFFSET_RESET_CONFIG_DEFAULT and OFFSET_COMMIT_SYNC (or so) as an environment variable?

I think we could just expose these configs to the Kafka adapter first to solve this adapter test issue. There are too many Kafka configurations, exposing them as environment variables would make it too complicated. If we subsequently need to allow users to configure more parameters for the Kafka messaging protocol, we can write these configurations to a file and expose an environment variable KAFKA_CONSUMER_PROPERTIES to point to that file. It's better to make the environment variables simple.

My understandig is that if a pipeline is manually stopped (user doesn't want to receive any data) and started again, the earliest setting would cause Kafka to either replay the data from the beginning if the time between pipeline stop and start is more than 7 days, or replay from the last offset. The current behaviour is that data is replayed from the latest offset (all events arriving after pipeline start).

Yes. That's correct. If we don't want to replay any messages that are produced before the consumer created and can tolerate messages loss, then we can use this approach to set the retention or use unique consumer group each time the consumer is created. I think the non-persistent topic feature from the Pulsar would be a better choice for this case.

while (isRunning) {
      ConsumerRecords<byte[], byte[]> records = consumer.poll(duration);
      records.forEach(record -> eventProcessor.onEvent(record.value()));
      if (/*Disable auto commit*/) {
        consumer.commitSync();
      }
    }

should we put this program in another PR to complete

Yes. That's a different topic. Let's put it in another PR.

Thanks for the explanation @RobertIndie! :-)

Hi @luoluoyuyu,
Thanks a lot for providing the PR. It looks good, and I see the problem you are solving.
However, I agree with @dominikriemer that merging this PR as it is will break the behavior of running pipelines. Please correct me if I am wrong, but I would say that when a user does the following:

Start a pipeline at timestamp_0.
Then the pipeline is stopped at timestamp_1.
And started again at timestamp_2.

Expected behavior: The events between timestamp_1 and timestamp_2 are not processed.
Behavior of PR: The events between timestamp_1 and timestamp_2 are replayed when the pipeline is started again.
My suggestion would be to leave the consumer config ConsumerConfig.AUTO_OFFSET_RESET_CONFIG as it was and provide a way for developers to set it to earliest.
This would ensure that the pipeline behaviour is as expected and a developer could change the properties for the integration tests.
Is there anything I'm not thinking about?
Cheers,
Philipp

HI, @tenthe
I have added a ConsumerConfig.AUTO_OFFSET_RESET_CONFIG configuration item for the kafka adapter and this option is not mandatory, even if the user does not configure  ConsumerConfig.AUTO_OFFSET_RESET_CONFIG , it will not affect the creation of the kafka adapter and the adapter is created using the default behavior of kafka。
What do you think of this program?

The effect is as follows

Can we pre-select the default option in the UI?
In addition I have two minor remarks:

A more detailed description below the option heading would be great
IMHO the new config option should be placed above the Topic section

HI, @tenthe I have added a ConsumerConfig.AUTO_OFFSET_RESET_CONFIG configuration item for the kafka adapter and this option is not mandatory, even if the user does not configure ConsumerConfig.AUTO_OFFSET_RESET_CONFIG , it will not affect the creation of the kafka adapter and the adapter is created using the default behavior of kafka。
What do you think of this program?

Hello @luoluoyuyu,
thank you very much for updating the PR, I like this solution very much 👍.
We should create a follow up issue to create an update script for existing adapters that don't have these settings yet.
Once we have a solution for this (see discussion #1663), we can provide an implement in another PR.

Hi, @bossenti

Can we pre-select the default option in the UI?
In addition I have two minor remarks:
A more detailed description below the option heading would be great
IMHO the new config option should be placed above the Topic section

Thank you for your suggestion, I am refining the description information of the configuration, but I think that the configuration item of ConsumerConfig.AUTO_OFFSET_RESET_CONFIG is not mandatory, that is to say, if the user does not configure the ConsumerConfig. AUTO_OFFSET_RESET_CONFIG, then the kafka adapter also does not configure the ConsumerConfig.AUTO_OFFSET_RESET_CONFIG for the consumer and does not need to configure the default option for the ConsumerConfig.AUTO_OFFSET_RESET_CONFIG option. What do you think?

Hi, @bossenti

Can we pre-select the default option in the UI?
In addition I have two minor remarks:
A more detailed description below the option heading would be great
IMHO the new config option should be placed above the Topic section

Thank you for your suggestion, in the process of modification found that you should add the default configuration, streampipes in the process of creating adapters need to iterate through the configuration items, if there is an unconfigured option may throw an exception back, resulting in the failure of creating the adapter.

Okay then I'd propose to remove the option to set  None as a configuration value as it always results in an exception, right?
Another aspect I'd like to discuss although I'm a bit late to the party here:
We all agree that this is a configuration only required for development purpose, right?
Do we then rely want to expose it via the UI and potentially confuse users with it?
Wouldn't it be better if we expose it as an environment variable as proposed earlier by @dominikriemer?
I'm very sorry to be so late in bringing up this discussion, @loststar
The effort you are already putting in is really appreciated.
I would love to get PR in as soon as possible, but I think we should always have the best user experience as a goal.

Hey @bossenti,
you are right, first the problem came up in the tests. But I personally actually like the idea that a user  also has the possibility to configure this behavior for each adapter.
Do you see a downside of having this option in the adapter? If not  I would like to merge this new feature.
Regarding the default value I agree with you. It would be good to have one there.

Hi,
thanks @luoluoyuyu for this solution, looks great!
Concerning the default value of radio buttons, I don't think there is currently an option do define a default selection in the SDK, so we can create a new issue for this feature and later on also add it to other adapters and pipeline elements.
We could maybe call None something like Default and assign a default behaviour in the implementation (I'd favor latest).

Okay then I'd propose to remove the option to set  None as a configuration value as it always results in an exception, right?
Another aspect I'd like to discuss although I'm a bit late to the party here: We all agree that this is a configuration only required for development purpose, right? Do we then rely want to expose it via the UI and potentially confuse users with it? Wouldn't it be better if we expose it as an environment variable as proposed earlier by @dominikriemer?
I'm very sorry to be so late in bringing up this discussion, @loststar The effort you are already putting in is really appreciated. I would love to get PR in as soon as possible, but I think we should always have the best user experience as a goal.

Hi @bossenti
May I interpret your proposal as follows: Do we need to add an option to the UI that is unlikely to be used in the production environment?
If so, I think it's a good idea to include it. However, it would be better if it was placed in something like a "Debug Panel" or a collapsed "Advanced Configuration" section.

Hi @loststar

Hi @bossenti
May I interpret your proposal as follows: Do we need to add an option to the UI that is unlikely to be used in the production  environment?
If so, I think it's a good idea to include it. However, it would be better if it was placed in something like a "Debug Panel" or a  collapsed "Advanced Configuration" section.

This is a good idea, but I did not find the configuration and description of the advanced settings in the code, I think if we want to implement " advanced configuration " may need to create an issue to complete the " Advanced Configuration " function

But I personally actually like the idea that a user also has the possibility to configure this behavior for each adapter.

Okay, then I'm fine with it :)

I'm very sorry to be so late in bringing up this discussion, @loststar
The effort you are already putting in is really appreciated.
I would love to get PR in as soon as possible, but I think we should always have the best user experience as a goal.

I'm sorry @luoluoyuyu, this was addressed to you 🙂

Hi @bossenti

I'm sorry @luoluoyuyu, this was addressed to you 🙂

Sorry, I'll try to do better

@luoluoyuyu don't worry, Tim only apologized for adressing the wrong username in his comment ;-)
You are doing great and we really appreciate your contribution!!

@luoluoyuyu wait wait...
This was only meant as an appreciation for you, please don't get me wrong!
I was feeling bad to bring again another topic to this discussion and just wanted to express my gratitude for you 🙂
You are really doing great and the insights you bring into our project are really valuable.
I'm really sorry in case I snubbed you

Thank you very much @luoluoyuyu and sorry that this took so long to merge!


FR: Support MFA on macOS

Feature proposal

Firebase Component: Auth

Currently, the SDK supports auth on macOS but is missing MFA (as stated here for example)
Supporting macOS for those functions would help bring feature parity between iOS and macOS

This would also bring support for phone auth on macOS, right? See also #8221

@paulb777 according to https://firebase.google.com/docs/ios/learn-more#firebase_library_support_by_platform Authentication is fully supported on macOS. Can you share some insights when we can expect feature parity?

@cbenhagen Sorry for the confusion here. As you've noticed, there are missing Authentication APIs for macOS and I can't say anything about release plans.
In the meantime, we'll improve the documentation.


History type for Gradio's Chat UI

Description
History type for Gradio's Chat UI
Type of change

[ ] Refactor
[ ] New feature
[ ] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[ ] Configuration Update
[ ] Bump-up dependent library
[x] Trivial change

/lgtm
/approve

Codecov Report
Attention: 4 lines in your changes are missing coverage. Please review.

Comparison is base (618eeab) 94.49% compared to head (a6cf05f) 94.86%.
Report is 12 commits behind head on main.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #381      +/-   ##
==========================================
+ Coverage   94.49%   94.86%   +0.37%
==========================================
  Files          32       32
  Lines        1035     1033       -2
==========================================
+ Hits          978      980       +2
+ Misses         57       53       -4

Files
Coverage Δ

ols/app/endpoints/ols.py
100.00% <ø> (ø)

ols/constants.py
100.00% <100.00%> (ø)

ols/src/ui/gradio_ui.py
96.00% <ø> (ø)

ols/src/query_helpers/docs_summarizer.py
91.80% <63.63%> (ø)

... and 1 file with indirect coverage changes


CI: Add linting step to Github Actions

We may want to do this step last so that we get early feedback about builds / tests passing across the OS / python / deps matrix.
Should run:

black for Python files
`clang-format for C files

Cython files currently do not have a formatter / linter available that I know about; we may want to fall back to checking line length only.

Maybe we should start using pytest-black and/or pytest-flakes. I also like to use isort, but it has to be tweaked to be able to combine it with black.
Also, I have good experience using pre-commit hooks  (https://github.com/pre-commit/pre-commit)

Maybe we should start using pytest-black

What's the value of pytest-black compared to just black ? (don't really get that from their readme)
I am personally in favor, at least for python code; for C code it might be harder to require this every contributor to have it installed/set-up (but probably also something to discuss with Shapely devs).
But if we start requiring it, I agree we should use pre-commit, I also have good experience with it using it for pandas and black (or at least have a configuration, and recommend contributors to use it; it shouldn't be a hard requirement of course)

Solved in #328


checkSSLCert: 1.51.0 -> 1.64.0

Semi-automatic update generated by https://github.com/ryantm/nix-update tools.
This update was made based on information from https://repology.org/metapackage/check_ssl_cert/versions.
These checks were done:

built on NixOS
Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
found 1.64.0 with grep in /nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0
directory tree listing: https://gist.github.com/37591ae2c040336904beb8059082afdc

Success on x86_64-darwin (full log)
Attempted: checkSSLCert
Partial log (click to expand)
install -m 755 check_ssl_cert /nix/store/lx90ph23b6y9996i240mr1rs7mkqdpcj-check_ssl_cert-1.64.0/bin
mkdir -p /nix/store/lx90ph23b6y9996i240mr1rs7mkqdpcj-check_ssl_cert-1.64.0/share/man/man1
install -m 644 check_ssl_cert.1 /nix/store/lx90ph23b6y9996i240mr1rs7mkqdpcj-check_ssl_cert-1.64.0/share/man/man1/
post-installation fixup
gzipping man pages under /nix/store/lx90ph23b6y9996i240mr1rs7mkqdpcj-check_ssl_cert-1.64.0/share/man/
strip is /nix/store/0fzpxnsanc02i4jsb1yhchjp4p62b2n3-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/lx90ph23b6y9996i240mr1rs7mkqdpcj-check_ssl_cert-1.64.0/bin
patching script interpreter paths in /nix/store/lx90ph23b6y9996i240mr1rs7mkqdpcj-check_ssl_cert-1.64.0
/nix/store/lx90ph23b6y9996i240mr1rs7mkqdpcj-check_ssl_cert-1.64.0/bin/.check_ssl_cert-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/x030a63qdilnv02pkivfjg44pdxsh5km-bash-4.4-p19/bin/sh"
/nix/store/lx90ph23b6y9996i240mr1rs7mkqdpcj-check_ssl_cert-1.64.0

Success on x86_64-linux (full log)
Attempted: checkSSLCert
Partial log (click to expand)
install -m 644 check_ssl_cert.1 /nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0/share/man/man1/
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0
gzipping man pages under /nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0/share/man/
strip is /nix/store/fzcs0fn6bb04m82frhlb78nc03ny3w55-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0/bin
patching script interpreter paths in /nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0
/nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0/bin/.check_ssl_cert-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/q1g0rl8zfmz7r371fp5p42p4acmv297d-bash-4.4-p19/bin/sh"
checking for references to /tmp/nix-build-check_ssl_cert-1.64.0.drv-0 in /nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0...
/nix/store/yiphzx29lcf6zx02g4bh1p80pappzw6f-check_ssl_cert-1.64.0

Success on aarch64-linux (full log)
Attempted: checkSSLCert
Partial log (click to expand)
install -m 644 check_ssl_cert.1 /nix/store/iim2q3hs1q2b5cb68wn7q768g1fq20nw-check_ssl_cert-1.64.0/share/man/man1/
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/iim2q3hs1q2b5cb68wn7q768g1fq20nw-check_ssl_cert-1.64.0
gzipping man pages under /nix/store/iim2q3hs1q2b5cb68wn7q768g1fq20nw-check_ssl_cert-1.64.0/share/man/
strip is /nix/store/3zq400fri5dv7d30lpxlqm2v9y1iis6j-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/iim2q3hs1q2b5cb68wn7q768g1fq20nw-check_ssl_cert-1.64.0/bin
patching script interpreter paths in /nix/store/iim2q3hs1q2b5cb68wn7q768g1fq20nw-check_ssl_cert-1.64.0
/nix/store/iim2q3hs1q2b5cb68wn7q768g1fq20nw-check_ssl_cert-1.64.0/bin/.check_ssl_cert-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/3gg2p6n4kv2f0lsxd41f5iz1ivkbzyzr-bash-4.4-p19/bin/sh"
checking for references to /build in /nix/store/iim2q3hs1q2b5cb68wn7q768g1fq20nw-check_ssl_cert-1.64.0...
/nix/store/iim2q3hs1q2b5cb68wn7q768g1fq20nw-check_ssl_cert-1.64.0


Added new test cases

Fixes https://github.com/openBackhaul/ApplicationPattern/issues/648
Reviewer @DanaSunal

Please go through existing comments, a lot of them were not addressed yet.

Please go through existing comments, a lot of them were not addressed yet.

@DanaSunal made changes for every comment already.


added tests

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@478344d). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main       #4   +/-   ##
=======================================
  Coverage        ?   75.17%
=======================================
  Files           ?        4
  Lines           ?      145
  Branches        ?        0
=======================================
  Hits            ?      109
  Misses          ?       36
  Partials        ?        0

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 478344d...086ec71. Read the comment docs.


feat(tangle-dapp): Implement updated design for LS pools

Summary of changes
Provide a detailed description of proposed changes.

➕ Added a new table which lists LS pools that the user is involved in: either via management roles, or staked in. This provides a quick view on how the pools which you've staked on are performing (APY), and also management actions in case you have management roles.
➕ The action button's text will change depending on the action that the user will take. For example, if the user is about to stake on a pool in which they already have a stake in, it'll show Increase Stake, otherwise Stake.
➕ Added various table states for the LS pool tables: Loading, error, and empty.
➕ Implemented onboarding modal logic, and also onboarding modal for the liquid staking page (see #2577).
➕ Added OpenGraph page metadata to the Liquid Staking page.
🔧 Simplified liquid staking pages: Instead of having an overview page, both liquid staking & overview page will now live in a single page for a more streamlined UX.
🖌 Adjusted design of the pools table and simplified interaction & pool selection process.
⚠ Restaking Parachain LS protocol handling hasn't yet been adjusted since there are still changes that need to be made on the parachain, such as associating every pool with a single token (ie. DOT, PHA, etc.). CC @1xstj

Proposed area of change
Put an x in the boxes that apply.

[ ] apps/bridge-dapp
[ ] apps/hubble-stats
[ ] apps/stats-dapp
[x] apps/tangle-dapp
[ ] apps/testnet-leaderboard
[ ] apps/faucet
[ ] apps/zk-explorer
[ ] libs/webb-ui-components

Reference issue to close (if applicable)
Specify any issues that can be closed from these changes (e.g. Closes #233).

Closes #2568

Screen Recording
If possible provide a screen recording of proposed change.
https://github.com/user-attachments/assets/30a68c7d-11b4-45fe-9ed1-1dc935f4a9ab

Code Checklist
Please be sure to add .stories documentation if any additions are made to libs/webb-ui-components.

[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

⚠ Restaking Parachain LS protocol handling hasn't yet been adjusted since there are still changes that need to be made on the parachain, such as associating every pool with a single token (ie. DOT, PHA, etc.). CC @1xstj

CC @1xstj

Let's cut a release! @yurixander @AtelyPham

Let's cut a release! @yurixander @AtelyPham

Yep. I'll also see if I can get the pool creation flow in today or tomorrow.


[QST] OBS Data Source Support

Does the OBS Data Source Support?

Also note would love to hear the results if you try it out.  If you have any issues let us know or if it he multi-threaded works well we could update it to be in the spark.rapids.cloudSchemes by default.

Okay, I'll try it.

Feel free to contact us at<EMAIL_ADDRESS>as well, we'd be happy to set up a discussion if needed.

I have tried to use OBS as the data source and can be accessed normally. We will try to use OBS in the production environment in the future.

I have tried to use OBS as the data source and can be accessed normally. We will try to use OBS in the production environment in the future.

Good to know.  I am going to close this issue.  Do not hesitate to file other questions or issues as needed.


Online docs broken?

The link in the readme - https://ronenness.github.io/GeonBit.UI-docs/ - gives a 404 error.
Thanks for the hard work on this awesome library - I'm enjoying using it so far.

Thanks, fixed now :)


How to adjust stride in RPN_head in fpn

I think the stride 4 is corresponding to the 1/32 of the original size and  stride 8 is corresponding to the 1/16? If the outputs  size of fpn are change, i should adjust the stride like these?


Generate all missing localisation for jobs should generate the locs for autogenerated modifiers too

Would be neat if it would be possible, it would remove a lot of copy pasting. Also generating and effect_desc would be lovely too.

Yeah typo XD, was in a meeting while making the ticket and i think the word slipped in xd

Note that the cwt configs are updated, and some locs are optional, not inspected and generated by default.

Very fair, could there be an option to generate the optional ones too?

Will be optimized in v1.1.5


Icons no longer showing in the waybar

The waybar-updates module no longer shows up in waybar, not sure why this is happening all of a sudden, here's what the config looks like,
  "modules-left": ["sway/workspaces", "custom/updates", "tray", "sway/mode"],
  "custom/updates": {
    "format": "{icon}{}",
    "return-type": "json",
    "format-icons": {
      "pending-updates": "󰮯 ",
      "updated": ""
    },
    "exec-if": "which waybar-updates",
    "exec": "waybar-updates"
},

@keyframes blink {
  to {
    color: #ebdbb2;
  }

#custom-updates {
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	animation-direction: alternate;
}
#custom-updates.pending-updates {
	animation-name: blink;
	animation-duration: 3s;
}

same here
[2024-09-13 12:17:56.792] [error] custom/pacman: cannot switch from manual to automatic argument indexing

To be clear: I didn't release any new update.

same here [2024-09-13 12:17:56.792] [error] custom/pacman: cannot switch from manual to automatic argument indexing

having the same issue

It's regression in waybar: https://github.com/Alexays/Waybar/issues/3597

It was kinda fixed, but it seems the problem persist, so I am linking the new issue: https://github.com/Alexays/Waybar/issues/3607

I don't know why. I have the same problem with updates and media player. I change the order like that
"format": "{} {icon}",
and the icons and Text show up again.

If i switch it back the problem returns. For the test I only switch the media player.

I don't know why. I have the same problem with updates and media player. I change the order like that
"format": "{} {icon}", and the icons and Text show up again.

just tried swapping the arguments as well and seems to have fixed it. weird.

Please update to the latest 0.11.0-3 (and optionally restore order), it should work as previously.

Hey,
thx for this thread.
I have waybar version 0.11.0-3 installed, but the issue still consists. Swapping icon and text however does the trick.

instead of
 "format": "{icon}{}",
use
"format": "{icon}{text}",


Luci repo outdated

Luci repo outdated

It is expected that builtin packages can be newer than what is available in the repos.


SSKW-76 Readable Field atom

Checklist ✅

[x] I have followed the contributor guideline
[x] Tests are included
[x] Documentation is changed or added
[x] Related issue has been created
[x] Commits messages follows commit guideline

resolves #76

I have never used
and
tags but looks great

I didn't do it before, but using it makes perfect sense in this case.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dl


Adding Metronome job queue functionality to CLI

command:   job queue, job queue startdeadline, job queue --json, job queue -q
dcos job queue
ID                         JOB RUN ID
startdeadline  /startdeadline/201801172321181BlLt

 dcos job queue --json
[
  {
    "jobId": "startdeadline",
    "runs": [
      {
        "runId": "/startdeadline/201801172321181BlLt"
      }
    ]
  }
]

Originally a PR on https://github.com/dcos/dcos-cli/pull/1133
with approvals

run linux integration tests

@bamarni moved the PR to this repo

@bamarni all concerns addressed

@mesosphere-ci run all integration tests

haha.. tests are failing because I removed the output if nothing is in the queue.. and didn't change the test... I'll have an update tomorrow am.

@mesosphere-ci run all integration tests

@mesosphere-ci run all integration tests

the failure on linux integration tests is something to do with metrics... and has nothing to do with this PR... is this a flaky test? or ?


samples: bluetooth: hci_spi: add nrf52dk_nrf52832 board support

Add nrf52dk_nrf52832 board support to bluetooth hci_spi sample.
SPI1 is used as bluetooth hci_spi slave.
Configured with a pin slave config and gpio P0.03 is output interrupt to communicate with the host board.

Please don't create new a new PR. You can simply forece-push to the old one: https://github.com/zephyrproject-rtos/zephyr/pull/55549


Update unit testing versions of Tensorflow

I would like to propose to change the versions of Tensorflow in our unit tests. Currently we are testing with Tensorflow 1.5, 1.7 and 1.10.
Are there any reason against changing these versions to 1.12 and 1.13?

Works for me. Do we have any info about what TF version users have in practice?


[network] Improve error propagation and handling

Using the ? operator liberally across various protocol implementations means that it's not very clear what stage a function failed at. We need to start propagating context when returning a Result<> - this can be done by leveraging a crate like anyhow.
Also, ? ends up making the code feel like when using exceptions in other languages, and the caller might need to perform pattern matching on a received error to know if/how it should handle it. This can be a source of bugs as also discussed in http://sled.rs/errors. We should definitely learn from the experience of the community here.

I think this is being driven from a project wide standpoint based on whenever Rust supports backtraces on the errors.


Concerns using Update-Module causing multiple versions of the same module

I've been experiencing issues running script due to having multiple versions of the same module installed in my system.
I good example is with the AzureRM modules. Then, I just use the Update-Module cmdlet to update (is my understanding) AzureRM module from version 5.0.1 to the latest version 5.1.1
Expected Behavior

To see  AzureRM module upgraded from version 5.0.1 to the latest version 5.1.1.
Current Behavior

It will create  multiple AzureRM module: version 5.0.1 and 5.1.1
Possible Solution

Steps to Reproduce (for bugs)

Make sure Azure Module version 5.0.1 is already installed.
Proceed to execute Update-Module -Name AzureRM

Context

Having multiple versions of the same module has cause issue executing scripts having obsolete/deprecated cmdlets and/or invalid parameterset.
Your Environment

Windows 10 Insider Build 17046

> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.17046.1000
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.17046.1000
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

> Get-Module
AzureRM

> Get-Module -ListAvailable PowerShellGet,PackageManagement

    Directory: C:\Program Files\WindowsPowerShell\Modules

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Script     <IP_ADDRESS>    PackageManagement                   {Find-Package, Get-Package, Get-PackageProvider, Get-P...
Binary     <IP_ADDRESS>    PackageManagement                   {Find-Package, Get-Package, Get-PackageProvider, Get-P...
Script     <IP_ADDRESS>    PowerShellGet                       {Install-Module, Find-Module, Save-Module, Update-Modu...
Script     <IP_ADDRESS>    PowerShellGet                       {Install-Module, Find-Module, Save-Module, Update-Modu...

> Get-PackageProvider

Name                     Version          DynamicOptions
----                     -------          --------------
msi                      <IP_ADDRESS>          AdditionalArguments
msu                      <IP_ADDRESS>
NuGet                    <IP_ADDRESS>        Destination, ExcludeVersion, Scope, SkipDependencies, Headers, FilterOnTag...
PowerShellGet            <IP_ADDRESS>          PackageManagementProvider, Type, Scope, AllowClobber, SkipPublisherCheck, ...
Programs                 <IP_ADDRESS>          IncludeWindowsInstaller, IncludeSystemComponent

>Get-PackageProvider -ListAvailable

Name                     Version          DynamicOptions
----                     -------          --------------
msi                      <IP_ADDRESS>          AdditionalArguments
msu                      <IP_ADDRESS>
nuget                    <IP_ADDRESS>
NuGet                    <IP_ADDRESS>        Destination, ExcludeVersion, Scope, SkipDependencies, Headers, FilterO...
PowerShellGet            <IP_ADDRESS>          PackageManagementProvider, Type, Scope, AllowClobber, SkipPublisherChe...
PowerShellGet            <IP_ADDRESS>
Programs                 <IP_ADDRESS>          IncludeWindowsInstaller, IncludeSystemComponent

Sorry! During my cleanup update I ended up removing all versions
Below is a print screen of what was happening.

It would be really nice to have a switch to say something like -RemoveOldVersions

I think the point of the post is that Update-module should automatically remove the old version of the module.  Since it apparently is not, what is the purpose of the update-module and why is it even present if you can get the exact same result by running "Install-module Azurerm -allowclobber -force"?  It makes no sense.  Now to the developer's point, I can understand if the module is being locked by a process handle and the old version can't be removed as a result, I completely understand that would make removing the old version difficult.  However, that is not an excuse to just half-ass it like you have done.
In that case, I would Poshinternals "close-handle" function to unlock the module so that it can be removed.

I have address this issue ( to @JKeithB ) recently at the MVP Summit.  But this is by-design, and special to protect the anyone of removing Modules by mistake.
And, specially, using the Update-Module, thinking that will in fact update to the latest version but in reality keeps the previous version installed.

This happens with, not only AzureRm modules, but with any other ones downloaded from the PowerShell Gallery.
I had to create a script code, in this case to identity the AzureRM installed Module(s), and then I can uninstalled it:
Import-Module PowerShellGet
$Modules = Get-Module -ListAvailable AzureRM* `
| where-object{ $_.name -notmatch ".NetCore" } `
| Select-Object Name, Version;

foreach ($Module in $Modules.Name)
{
	Write-Host "Removing module: $($Module)" -ForegroundColor Yellow;
	Uninstall-Module -Name $Module -Force;
};

They will probably come up with a resolution to help us in this scenario.
:)

@whiggs,
BTW using the remove-module modulename will clear the lock condition.
:)

We do have on our backlog adding an additional optional parameter to uninstall previous versions of a module when you do an update.
This is by design, because PowerShellGet was added when PowerShell added support for side-by-side versions of modules. With side-by-side module versions, we created the issue wherein a developer MAY take a dependency on a specific version of another module and still install the latest copy for use by other things. There are, as it turns out, many modules that take advantage of this feature, starting with some of the Azure modules. As a result, if you remove a module version when updating to the latest copy, you can break some other module in a way that is extremely difficult to identify programmatically, and even more difficult to troubleshoot once it happens.
The intent in the future is to provide a flag (something like "-RemovePreviousVersion"), which will give the user the choice.

Yeah, with shared dependencies it gets really messy...


Maps of specific types

It would be nice to be able to extract only fields of specific types and get Map[String, T] as a result. The most common use case is data-binding. In my http://scala-js-binding.com/ library I use ugly old-style macro for this, it would be nice to switch to scalameta-serialiser

cool idea! sounds doable.

Actually, it would be much easier that scalameta-serialiser is based on typeclass not just a companion object.
Since, it's more elegant and easy to extend.

Agreed!

@ariwaranosai see https://github.com/mpollmeier/scalameta-serialiser/tree/typeclass

In my case I just need toMap and I usually apply it to noncase classes.

@antonkulaga so you typically define your classes like this?
class SimpleClass(val i: Int, val s: String)

@mpollmeier  try to add toMap for specific types in the branch typeclass.


Stash property

Attempting to support "object" style properties ig.down etc. led to mysterious type instability, apparently because of overloading getproperty method, so I am abandoning this extension for now and stashing the the code in archive/ so that code coverage does not complain about it.

Codecov Report

Merging #2 (071eb58) into main (85e7a5a) will increase coverage by 32.85%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main       #2       +/-   ##
===========================================
+ Coverage   66.53%   99.39%   +32.85%
===========================================
  Files           7        6        -1
  Lines         245      164       -81
===========================================
  Hits          163      163
+ Misses         82        1       -81

Impacted Files
Coverage Δ

src/ImageGeoms.jl
100.00% <ø> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 85e7a5a...071eb58. Read the comment docs.