Support syntax and AST building for Materialized View Commands ...

... like CREATE MATERIALIZED VIEW, REFRESH MATERIALIZED VIEW
and DROP MATERIALIZED VIEW.
Much like a logical view, a materialized view has a SQL query associated with it.
Unlike logical view, it stores data corresponding to the SQL query.
This commit adds support to parse the materialized view related commands and
build an AST for those commands. This commit does not include connector-side
implementation of materialized views.
Materialized views are modeled as an extension of logical views with additional
properties such as partitioning.
Given that materialized views can be seen as a combination of a view and a table,
access control for a CREATE MATERIALIZED VIEW command is a combination of access
checks for CREATE TABLE and CREATE VIEW commands.
Similarly, a REFRESH MATERIALIZED VIEW command is a combination of DELETE and INSERT
operations and access checks for this command is a combination of access checks
for DELETE and INSERT.
Lastly, a DROP MATERIALIZED VIEW access check is a combination of DROP TABLE and
DROP VIEW command.

@anjalinorwood how does this relate to Hive 3's materialized views?

@anjalinorwood how does this relate to Hive 3's materialized views?

Not related to Hive 3's materialized views. Details here: https://docs.google.com/document/d/1MOtYt7BFNFoDBc7SwCStHzXy6cyzOvAKURH3hbnk8VU/edit?usp=sharing
I have been talking to @martint for this feature. Would you like to be added to that email conversation?

@anjalinorwood yes, thanks

@anjalinorwood How it is going to be modeled in connectors and how refresh is going to be implemented in the execution engine? The doc you mentioned is only about the syntax.

@anjalinorwood can you add me also to the email conversation that you mentioned?
We in Varada.io are having our own implementation of materialized view which have a lot in common with your proposal. We will be happy to share our insights and discuss more about the details.

@anjalinorwood can you add me also to the email conversation that you mentioned?
We in Varada.io are having our own implementation of materialized view which have a lot in common with your proposal. We will be happy to share our insights and discuss more about the details.

With the community interest in this feature, it is a good idea to keep the discussion on Github/gdrive. Turns out there are no additional details in the email. Relevant links are in my comment here: https://github.com/prestosql/presto/pull/3283#issuecomment-606927615
I looked at the Verada syntax, it looks similar to the proposal above. :-)

Final proposal for syntax for create/refresh/drop materialized views is here: https://docs.google.com/document/d/10jPGw3t-Tu8OgWo5oC9d-O8d1PVdnAbEhyfvnJA0T8U/edit

@anjalinorwood @martint We need access control checks for this. See https://github.com/prestosql/presto/issues/5041


Added in logo

Description
Added in the logo as requested, kinda just assumed the place.
Fixes https://github.com/vinitshahdeo/PortScanner/issues/72
Type of change

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] Any dependent changes have been merged and published in downstream modules
[x] I have added all the three reviewers: @vinitshahdeo, @kashish121 & @ishika1727

I have no idea how to add you guys as reviewers. The option seems disabled and there is no way for me to interact with it.


Firestore listener freezes Unity Editor on second launch (works on 6.15?)

[REQUIRED] Please fill in the following fields:

Unity editor version: 2019.4.14
Firebase Unity SDK version: 6.16.1 . Then downgraded to 6.15.2 and it worked
Source you installed the SDK: Package manager
Problematic Firebase Component: Firestore (DocumentReference.Listen)
Other Firebase Components in use: Auth, Storage, Functions
Additional SDKs you are using:
Platform you are using the Unity editor on: Windows
Platform you are targeting: Android
Scripting Runtime: IL2CPP

[REQUIRED] Please describe the issue here:
Hello, so I spent the last 5hours trying to resolve this bug, and the only way for me was to downgrade the sdk to 6.15.2.
This happened the first time i used the listener for firestore. On the first run, everything runs smoothly, but if i try to recompile or restart the project a second time, the editor hangs indefinitely.
The issue the closest to mine was #638 .
Seeing that there was a fix for 6.15.1, i gave it a chance, downgraded to 6.15.2 and apparently that solved my issue.
The editor logs were frozen on “Begin MonoManager ReloadAssembly”.
Sorry if thats not very detailed, I tried so many things ask me any question for explanation.
Steps to reproduce:
Have you been able to reproduce this issue with just the Firebase Unity quickstarts (this GitHub project)? No I used an existing firebase project.
What's the issue repro rate? 100%
What happened? How can we make the problem occur?
Just call a .Listen on a DocumentReference, quit play mode and try to restart.
Relevant Code:
//Basically call this anywhere in the project, on an existing DocumentReference object.
docRef.Listen(snap => TestFunc());

Unfortunately, this is a known issue and a fix is actively being worked on. Please see https://github.com/firebase/quickstart-unity/issues/845 for full details and a suggested workaround. I'm going to close this issue since it looks like an exact duplicate of #845, but feel free to re-open if you feel that it is a distinct issue.


Re-wrote String extensions in native Swift (no Foundation)

Re-wrote the three String extension computed properties in native Swift, i.e., using no Foundation methods. Functionality and performance should be ~same.
Only functionality/usage change: the prior(/current) '.humanReadableString' crashes for empty strings, due to no String length check prior to using '.substringToIndex(1)' (possible '.humanReadableString' is never used for empty used for empty strings in practice though). The native version in this commit above simply returns an empty String (self) for this case.

Note that current .camelCaseify in master passes the following test (which the branch above failed, yielding "Designeraz")
let simpleString = "DesignerAZ"
XCTAssertEqual("DesignerAZ", simpleString.camelCaseify)

But also passes this fictive test:
let simpleString = "THISISALLCAPSBUTNOSPACE"
XCTAssertEqual("THISISALLCAPSBUTNOSPACE", simpleString.camelCaseify) // true

Implying that the camelCaseify should be applied "in full" for all strings containing more than 2 words (i.e., more than one separatorm " " or  "-"), however for single word strings applying only upper case to the initial letter, but no lower case for the remaining letters in the word. The benefit with this approach is that we can't break a camelCaseify:d String by (mistakenly) applying camelCaseify to it again. Downside is (possibly) that single-word Strings in e.g. all-caps will not really be camelCaseify:d.
Is this as intended, or should e.g. "FOO".camelCaseify yield "Foo" rather than "FOO"?

Hi @dfrib -- thanks so much for working on this :+1:. It's been on my to-do list for a while! In response to your question, the method camelCaseify is simply poorly named -- we don't want to make the strings camel cased in the strict definition of camelcase -- a more accurate description of what the method should do is "it should uppercase the first letter of every word (found by splitting on " " and "-") and leave every other letter as it was".
If you're still interested in getting this merged in please reopen your PR and we'll have a look.
Thanks!

Hey @kerrmarin, I'll gladly help out, can look at this later today (.dropFirst() is a much better alternative above, thanks!).
Just another question before I dig into this again, to make sure I'm not misunderstanding. From the following test:
func testCamelCaseify_allCaps() {
    let simpleString = "THIS IS ALL CAPS"
    XCTAssertEqual("ThisIsAllCaps", simpleString.camelCaseify)
}

I interpret the method (w.r.t. yor description of it above) as:

For single word strings: "light-camelcase": only upper case first letter and leave remaining letters as they were (as you described above).
For multi-word (w.r.t. separators) strings, however: "full-camecaseing": lowercase all letters and uppercase first letter, finally joining all words into single camelcase word.

Is this correct?


Config JSON: Swap status 2 and 3

I think the valid status codes should grouped (so 0 or 1), so that statusCode > 1 always means an error.
Atm to check if a status code is OK, you have to check for "is status 0 or 2", which isn't very elegant.
Current status codes:

#
Description
Data

0
No errors
As requested

1
Invalid mod_id
{}

2
No custom JSON exists
Defaults from manifest.json

3
Invalid key. Custom JSON does not exist
{}

4
Invalid key. Custom JSON does exist
{}

Proposed:

#
Description
Data

0
No errors
As requested

1
No custom JSON exists
Defaults from manifest.json

2
Invalid mod_id
{}

3
Invalid key. Custom JSON does not exist
{}

4
Invalid key. Custom JSON does exist
{}

I feel like "no custom json" is not relevant enough to be part of the status codes. Just put an info log where it is set instead and return OK

@Qubus0 It's there because I experienced its usefulness first-hand while debugging, testing and using it. It tells you whether or not a custom JSON file exists. It's the same reason there's two status codes for an invalid key. Without these status codes, if you wanted to check if a custom JSON file exists, you'd have to implement your own way of checking for it.
So they provide info that's potentially incredibly helpful, all via a single API call, with info that you'd otherwise have to check for manually.
As for the logging itself, I've raised a separate issue related to that:

#133

I see. Then I agree to swapping

Closed in #137

#137


Refactor CameraSet, especially subsetting

This is mostly a note to revisit this later. The camera set object is a bit of a headache, especially when it comes to producing a subset of it. Especially for the derived SegmentorCameraSet, there's some weird edge cases where it returns the base image instead of the segmented one. Ideally, the only methods that are implemented in the camera set are ones that cannot be handled directly by the individual cameras. And subsetting should be handled in a clear and consistent manner across all derived classes.

Specifically, if you use [] indexing notation on the SegmentorCameraSet, it will no longer perform segmentation. For this to work, __getitem__ would need to be implemented in the derived class.

This code is confusing and that's a big part of what we're trying to address here. One of the simplest ways we can think about this is we want to only use the self.cameras list. All of the lists of attributes starting here should be removed unless absolutely necessary.


Custom authorizers for imported Cognito Auth

Amplify CLI Version
11.0.3
Question
Current Behaviour
In my project I have multiple apps. One of them is configured with Auth and nothing else. When I try and configure a different app API for authentication using overrides as per the documentation here:
https://docs.amplify.aws/cli/restapi/override/#authorize-api-requests-with-cognito-user-pools
I get the following error when I try and run amplify push:
🛑 Template error: instance of Fn::GetAtt references undefined resource
Replicating the Behaviour

create a project and then an app and only add auth
create another app and add a REST API do not add auth
in the REST app, run amplify auth import and import only the user pool
run amplify override api and edit the file adding the contents from the document above, changing authResourceName to match the name of the auth resource from the auth app. [Note that this resource name is also configured under backend/auth/<resource> after running amplify import auth]
run amplify push

Desired Outcome
Either the documentation is made clearer to state this method is unsupported because the process of updating CloudFormation cannot find the resource ARN that it's looking for. (If that is the cause).
OR
Give clearer instructions about other ways to achieve using the Auth created by one app, in another. I instead got it working through manually specifying the ARN of the user pool that I want to use:
    // Replace the following with your Auth resource name
    const authResourceName = "<authresourcename>";
    const userPoolArnParameter = "AuthCognitoUserPoolArn";

    // Add a parameter to your Cloud Formation Template for the User Pool's ID
    resources.addCfnParameter(
        {
            type: "String",
            description: "The ARN of an existing Cognito User Pool to authorize requests",
            default: "NONE",
        },
        userPoolArnParameter,
        // { "Fn::GetAtt": [`auth${authResourceName}`, "Outputs.UserPoolArn"], }
        "arn:aws:cognito-idp:<region>:<accountId>:userpool/<id of userpool>"
    );

In the spirit of reusability and avoiding hard-coding however, I wonder if I'm just getting it wrong. I couldn't find any more detailed information or examples on the internet.
Further Info
backend-config.json contains the right auth:
"auth": {
    "authresourcename": {
      "customAuth": false,
      "dependsOn": [],
      "providerPlugin": "awscloudformation",
      "service": "Cognito",
      "serviceType": "imported"
    }
  },

NOTE: I have replaced the name, but it's identical to the one I use in the override.ts file under backend/api/.

Hey @electronicalias, thank you for reaching. You should be able to achieve this use case by utilizing the following steps.

open the backend-config.json present in the amplify -> backend folder. (you may need to comment out .vscode -> settings.json file if the file is hidden )
edit the api block with another dependsOn attribute.

 "api": {
    "apif80c7988": {
      "dependsOn": [
        {
          "attributes": [
            "Name",
            "Arn"
          ],
          "category": "function",
          "resourceName": ""
        },
//// ---- add the following -----
        {
          "attributes": [
            "UserPoolId"
          ],
          "category": "auth",
          "resourceName": "<Auth resource ID>"
        }
//// ----------------------------
      ],
      "providerPlugin": "awscloudformation",
      "service": "API Gateway"
    }
  },

on adding this save and run amplify env checkout <current env name>.
in the override file add the following and replace the <resource name> to the auth resource name. You can additionally find the parameter in the root-cloudformation-stack.json in the awscloudformation -> build folder.

resources.addCfnParameter(
    {
      type: "String",
      description:
        "The ARN of an existing Cognito User Pool to authorize requests",
      default: "NONE",
    },
    "auth<resource name>UserPoolId"
  );

  resources.restApi.addPropertyOverride("Body.securityDefinitions", {
    Cognito: {
      type: "apiKey",
      name: "Authorization",
      in: "header",
      "x-amazon-apigateway-authtype": "cognito_user_pools",
      "x-amazon-apigateway-authorizer": {
        type: "cognito_user_pools",
        providerARNs: [
          {
            "Fn::Join": [
              "",
              [
                "arn:aws:cognito-idp:",
                { Ref: "AWS::Region" },
                ":",
                { Ref: "AWS::AccountId" },
                ":userpool/",
                { Ref: "auth<resource name>UserPoolId" },
              ],
            ],
          },
        ],
      },
    },
  });

  for (const path in resources.restApi.body.paths) {
    // Add the Authorization header as a parameter to requests
    resources.restApi.addPropertyOverride(
      `Body.paths.${path}.x-amazon-apigateway-any-method.parameters`,
      [
        ...resources.restApi.body.paths[path]["x-amazon-apigateway-any-method"]
          .parameters,
        {
          name: "Authorization",
          in: "header",
          required: false,
          type: "string",
        },
      ]
    );
    // Use your new Cognito User Pool authorizer for security
    resources.restApi.addPropertyOverride(
      `Body.paths.${path}.x-amazon-apigateway-any-method.security`,
      [{ Cognito: [] }]
    );
  }

this folder may be hidden and will need to commented out in the setting.json in the .vscode folder.

Closing due to inactivity. @electronicalias if you are still experiencing this issue please reply back to this thread and we can re-open to investigate further 🙂


[MM-22720] Assume maximize setting when AppleActionOnDoubleClick isn't explicitly set

Before submitting, please confirm you've

[x] read and understood our Contributing Guidelines
[x] completed Mattermost Contributor Agreement
[x] executed npm run lint:js for proper code formatting

Please provide the following information:
Summary
In some cases (like mine), the AppleActionOnDoubleClick setting isn't explicitly set even though System Preferences says so. This PR assumes that if it is not set to default to the 'zoom' or 'maximize' setting.
Issue link
https://mattermost.atlassian.net/browse/MM-22720

is this also expected to work that way on windows/linux? getUserDefaults is an osx only feature.

is this also expected to work that way on windows/linux? getUserDefaults is an osx only feature.

Windows handles this differently, but I'm not sure how linux does.

/update-branch


hyperlink?

Hey fellow classmates.. Im sorry to bring this up but professor is getting on me because I haven't been hyperlinking the read.me and the hw assignments.. please help me address this issue.. it would be greatly appreciated

When you go to the submission page on moodle, instead of just copying and pasting the links, click on the use advanced editor link under the character box. Then once you are on the advanced editor page, click on the down arrow under the character box. there should be a button that looks like a chain link. Type your desired word in the character box then highlight it and click the chain link button. You should be able to put the url there and specify if you would like to make it open in a new window. Hope this helps :)

thx alexk2313
That did the trick.. thank you!!


Engine -> FW Roll failures due to FlutterUITests failures

The rolls have been failing for ~3 days. Investigating the probable cause. e.g, https://github.com/flutter/flutter/pull/66671
https://github.com/flutter/engine/pull/21355 could the potential culprit.
Logs here.
[module_test_ios] [STDOUT] stderr: Failing tests:
[module_test_ios] [STDOUT] stderr: 	FlutterUITests:
[module_test_ios] [STDOUT] stderr: 		-[FlutterUITests testDualCold]
[module_test_ios] [STDOUT] stderr: 		-[FlutterUITests testFullScreenColdPop]
[module_test_ios] [STDOUT] stderr:
[module_test_ios] [STDOUT] stderr: ** TEST FAILED **

cc: @zanderso , @dnfield

I mentioned in chat - based on looking at roll attempts, this seems like the most likely candidate (the module ios test was succeeding on my DPR PR, and failing after this one which contained a couple other seemingly unrelated PRs).
I couldn't get the test running properly locally (was getting build failures), but @jmagman might know how to do that better.

I created a revert at https://github.com/flutter/engine/pull/21456. I wasn't able to get the tests to run with local engine. Agreed that this seems to be the most likely candidate.

"Host crashed in " isn't very helpful...
[module_test_ios] [STDOUT] stdout: Test Case '-[FlutterUITests testFullScreenColdPop]' started.
[module_test_ios] [STDOUT] stdout:     t =     0.00s Start Test at 2020-09-28 05:35:22.964
[module_test_ios] [STDOUT] stdout:     t =     0.02s Set Up
[module_test_ios] [STDOUT] stdout:     t =     0.02s Open io.flutter.add2app.Host
[module_test_ios] [STDOUT] stdout:     t =     0.03s     Launch io.flutter.add2app.Host
[module_test_ios] [STDOUT] stdout:     t =     0.03s         Terminate io.flutter.add2app.Host:13568
[module_test_ios] [STDOUT] stdout:     t =     0.16s             Assertion Failure: <unknown>:0: Host crashed in <external symbol>
[module_test_ios] [STDOUT] stdout:     t =     0.17s Tear Down

Nope, but these are regular XCUITests and I suspect that's what the framework is giving us.

I was able to get a better stack-trace for this
* thread #28, name = 'io.flutter.3.ui', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
  * frame #0: 0x000000019c94b5ec libobjc.A.dylib`objc_msgSend + 44
    frame #1: 0x000000010279a334 Flutter`-[VSyncClient dealloc] + 32
    frame #2: 0x000000010279a084 Flutter`flutter::VsyncWaiterIOS::~VsyncWaiterIOS() + 52
    frame #3: 0x000000010279a038 Flutter`flutter::VsyncWaiterIOS::~VsyncWaiterIOS() + 12
    frame #4: 0x0000000102a6d140 Flutter`flutter::Animator::~Animator() + 412
    frame #5: 0x0000000102a7037c Flutter`flutter::Engine::~Engine() + 580
    frame #6: 0x0000000102a6ff7c Flutter`flutter::Engine::~Engine() + 12

Cause is definitely my PR.

Engine -> Framework roll to monitor is here: https://github.com/flutter/flutter/pull/66840

Nope, but these are regular XCUITests and I suspect that's what the framework is giving us.

Oh for sure, nothing we can do about it (AFAIK), I was just complaining.


Code coverage interaction

It seems that even with the default color scheme, fancy schemes apart, Xvim interacts funny with the code coverage new feature in Xcode 7.
When both active code color in the active editor window gets the same one as the background.
A picture speaks a thousand words

Once the plugin is removed all seems to work fine again.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/22106984-code-coverage-interaction?utm_campaign=plugin&utm_content=tracker%2F252770&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F252770&utm_medium=issues&utm_source=github).

Ah is it XVim that does this. Just though it was a problem with the beta. Makes code coverage unusable though. Hope its possible to fix

I'm also seeing this problem. Even hiding code coverage isn't enough to let me use XVim in Xcode 7, so I've unfortunately had to uninstall XVim for now. I hope it can be made compatible with the new code coverage feature, so I can use XVim again!

+1

Just updated to Xcode7-beta4. Something's changed inside this new beta. Editor works properly and stop messing with background colours. However the problem moved to the code-coverage info right gutter.

Even after release got the same problem :/

Problem still persists for XCode Version 7.0.1 (7A1001).

+1, code coverage bar not shown correctly

Still can't see code coverage:

XCode Version 8.0 (8A218a)
The newest XVim Merge pull request #977 from johnelse/typo

Any chances to fix time soon?


SkeletonModificationStack3D several issues

Godot version
4.0.beta2
System information
Windows 11, RTX 3070TI, GLES3
Issue description
There are a large number of constraint bugs and issues with the SkeletonModificationStack3D currently.
First and foremost the entire ModificationStack must be disabled and re-enabled to update, and has to be done after every tweak or modification to correct calculations and deformations of the skeleton.
Specifically the SkeletonModification3DJiggle modifier seems to occasionally displace bone lengths when applied. Still trying to iron out which bones and why, but it seems consistent in the ones that it has errors on. The effect works correctly, however, on some bones it moves the location of the bone to it's parent bone origin.
https://user-images.githubusercontent.com/8258356/194995785-dc939273-af67-4fa2-8f9c-e723977db2f3.mp4
Also a really nice missing feature in this stack would be an orientation control, to copy transforms from a target object to the bone object, it's nice to have the IK and the "LookAt" constraints, but they really need the copyorientation constraint to really let the IK work properly.
Steps to reproduce
Open grass_hopper_leg scene, select the GeneralSkeleton node, navigate to the ModificationStack, toggle Element0 (JiggleBone) and watch Leg2_3.R magically move to the origin of Leg2_2.R. Also notice that skeleton does not update properly without toggling entire stack on and off to reset.
Minimal reproduction project
IKTestProject.zip
No response

@lyuma https://github.com/godotengine/godot/pull/63588#issuecomment-1244759362

@fire Thanks for the response! Reading through all the stuff going back to 2020 you seem to be pretty heavily involved in these matters, and I appreciate your efforts tremendously! My only question, possibly as a bit of a Git noob, is what does that imply for these issues? I see a lot of mentions of skeleton modifier deprecation and some kind of new node structure, but haven't seen anything like that 4.0.beta2, is this in an unpublished branch? If I plan on utilizing IK and other constraints with Godot should I be looking to utilize another custom build of Godot?

I have regrettably removed the SkeletonModificationStack3D for 4.0 in https://github.com/godotengine/godot/pull/71137 because we would not have time to get all the bugs working in time for 4.0. As noted in Calinou's article, this does not imply that the functionality is out of the question for a future 4.x, just that it didn't make the cut for the 4.0 point release itself.
SkeletonIK3D remains in 4.0 and I do intend to fix the known issues with SkeletonIK3D (the Node) in time for 4.0 to get it working as well as it was in 3.5
For now, there are modules made for Godot which can provide some IK functionality, including fire's many_bone_ik and RenIK which you can compile into the engine on your own, but we are unable to get them integrated in time for the 4.0 release, since feature freeze has already occurred.
Look forward to more IK and skeleton modifications available in Godot 4.1 or later.
I know this is hard to hear, but I will be closing this issue: the modification stack as you tested has been removed, and will not return in the same form. That said, I do hope to make sure Godot provides a way of performing these modifications in the future.
I have saved your example project and made note of this issue so when the time comes to add this functionality back into Godot, I will try and make sure the usecases in this MRP work.


Ignore #egg hash when auditing dependencies

E.g., this always reinstalls:
❯ uv pip install --no-cache-dir  git+https://github.com/weareprestatech/pdfminer.six.git@36ea9df0fcec931ac96b37aac9facfe2cfbe768e#egg=pdfminer-six
 Updated https://github.com/weareprestatech/pdfminer.six.git (36ea9df)
Resolved 5 packages in 165ms
   Built pdfminer-six @ git+https://github.com/weareprestatech/pdfminer.six.git@36ea9df0fcec931ac96b37aac9facfe2cfbe768e#egg=pdfminer-six                                                                                Downloaded 1 package in 624ms
Installed 1 package in 3ms
 - pdfminer-six==20240222 (from git+https://github.com/weareprestatech/pdfminer.six.git@36ea9df0fcec931ac96b37aac9facfe2cfbe768e)
 + pdfminer-six==20240222 (from git+https://github.com/weareprestatech/pdfminer.six.git@36ea9df0fcec931ac96b37aac9facfe2cfbe768e#egg=pdfminer-six)

#egg is unrelated, nevermind. It's because it's not a full commit SHA.


Feature/specdef refactor

Requirements
Description
Final improvements to SpeciesDefs, removing as much duplicate code as possible.

Building of ENSEMBL_TAXONOMY_DIVISION factored out into a separate method, as not used by NV (overridden with empty method in eg-web-common)
Moved NV-specific deep-copying code into ensembl-webcode so that I can get rid of the giant _parse method in eg-web-common

See also the corresponding PR in eg-web-common.
Views affected

Vertebrate species selector - should remain unchanged after this update. Click on the Select an alignment button on this page:

http://wp-np2-1f.ebi.ac.uk:10105/Mus_musculus/Location/Compara_Alignments/Image?r=4:136366473-136547301
and check that you can select the individual mouse strains in the multiple alignment.

Not a view, but NV packed files should be more-or-less the same size after these changes are applied, since the "copy-on-write" code is designed to prevent unnecassary file bloat. This has been checked by comparing freshly-generated files against the equivalent release on /nfs/public/nobackup/ensweb - the file sizes were either identical or within a few bytes, and any differences are likely to be down to using post-104 code with 104 databases.

Possible complications
Shouldn't have any impact beyond the situations described above.
Merge conflicts
I don't think anyone else is working on this low-level code.
Related JIRA Issues (EBI developers only)
https://www.ebi.ac.uk/panda/jira/browse/ENSWEB-6168

I can see loads of commits which doesnt look right. should this PR be against relase/104 or master?

I think the branch is badly out-of-date - I'll look into it and revise the PR

I can see loads of commits which doesnt look right. should this PR be against relase/104 or master?

Doh! Should have been against master.

It still looks like there are a lot more commits and commits like this is very strange:
Merge branch 'master' into feature/bcf
You should probably check if the branch you created is uptodate with master first before creating the PR.

@ens-ap5 when you have time can you have a look at your branch you submitted the PR, its probably outdated from master. Best to merge master into your branch and then do the PR.

@ens-ma7 Should I create a new pull request? Merging master again just added another commit.

Yes thats probably the safest one but make sure your master is uptodate before creating your new branch.


no progress bar on NPM

Describe ：
We used cli-progress in the project, which is normal in the development environment; Then we released our project on NPM, ran it with the project on NPM, and found that the progress bar cannot be displayed on gitbash；
This is the NPM link for our project：https://www.npmjs.com/package/@originjs/webpack-to-vite；
and this is our Repository: https://github.com/originjs/webpack-to-vite;
How To Reproduce:

download

npm install @originjs/webpack-to-vite -g

convert

webpack-to-vite -d <project path>

The first line of command in the picture uses the development environment, and the result is normal;
node ./dist/bin/index -d ../project-to-test/vue-manage-system
The second line of code is the package published after NPM, and the progress bar is not displayed。
webpack-to-vite -d ../project-to-test/vue-manage-system
**Environment Version Description: **
OS: windows 64
gitBash: Git-2.31.1-64-bit
Repository of  Conversion project：https://github.com/lin-xin/vue-manage-system.git  （branch is  dev)
========That's all=========

Hi @yosion-p
it sounds like a "known" issue regarding the isTTY check on windows systems (cmd.exe, gitbash). it's caused by the invocation by the .bat file instead of a direct call via node interpreter.
in the past, the issue didn't appeared in PowerShell.

Hi @yosion-p
it sounds like a "known" issue regarding the isTTY check on windows systems (cmd.exe, gitbash). it's caused by the invocation by the .bat file instead of a direct call via node interpreter.
in the past, the issue didn't appeared in PowerShell.

Thank you for your reply;
Indeed, this problem only appears on gitbash.


Sharing Cookies among ASP.NET apps does not work with a session store

The instructions at https://docs.microsoft.com/en-us/aspnet/core/security/cookie-sharing?view=aspnetcore-3.1#share-authentication-cookies-with-aspnet-core-identity does not work when you use an ITicketStore (CookieAuthenticationOptions.SessionStore).
The reason is that the session id claim set by Owin has the type string Microsoft.Owin.Security.Cookies-SessionId while ASP.Net Core expects Microsoft.AspNetCore.Authentication.Cookies-SessionId. The result is that the ASP.Net core can't find a session key to use. See https://github.com/dotnet/aspnetcore/blob/master/src/Security/Authentication/Cookies/src/CookieAuthenticationHandler.cs#L151.
I implemented a workaround that can be found at https://stackoverflow.com/a/65630992/587277.

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

ID: 99307104-c0d7-3e82-f0b2-af61dcfe072a
Version Independent ID: 315c02cb-54c4-e386-da85-6e4311ca10c2
Content: Share authentication cookies among ASP.NET apps
Content Source: aspnetcore/security/cookie-sharing.md
Product: aspnet-core
Technology: aspnetcore-security
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

@Tratcher  @blowdart  please review.

@Tratcher  @blowdart  please review.

The scenario and workaround make sense, though both are pretty advanced.

The scenario and workaround make sense, though both are pretty advanced.


An error occurred when I called this component

Hi @watermelon0314,
Can you create a github repo or a snack for me to look at?

I tried to change the code in ./src/index.tsx
deleted

then added export in front of interface SquircleParams and function SquircleView

and it will take effect.
The effect is very good👍

This is an issue from babel-plugin-transform-typescript and was fixed in this PR.
I think you might be using an older version of metro-react-native-babel-preset.
I moved SquircleParams to a type export in v0.1.2, please give it a try and let me know if it fixes the issue.

@watermelon0314  I'm closing this, feel free to reopen if the issue persists.


Paypal window pop-up and disappear without letting transaction happened (smart button)

Describe the bug
When select Paypal (smart button) as payment method in Salesforces commerce cloud (with Adyen plugin 20.1.2), the paypal pop-up window appear, showing the loading icon, and then disappear without complete the loading nor allowing any interaction.  The payment cannot get through and the order cannot complete.
To Reproduce
Steps to reproduce the behavior:

Add product to shopping cart
Checkout shopping cart
Enter all shipping and billing information
Click on Paypal smart button

Expected behavior
The paypal pop-up window show up, loaded completed and allow customer to login their paypal account, allow the authorisation and then close the pop-up window, bring back to SFCC and show the order completion page.
Screenshots
https://user-images.githubusercontent.com/53218741/107210715-7d251c00-6a3f-11eb-97e9-f70baadd2202.mov
Desktop (please complete the following information):

OS: iOS
Chrome Version 88.0.4324.96 (Official Build) (x86_64)

Additional context
Add any other context about the problem here.

Hi Wilson,
I had a look at the storefront you have provided to my colleagues in support.

In the console here it says the problem is the mismatch in intent. The default value for intent we had in the cartridge is capture
https://docs.adyen.com/payment-methods/paypal/web-component#show-paypal-in-your-payment-form


Please allow us to use the Peek feature on Powertoys

What feature or improvement do you think would benefit Files?
As far as I know, it supports one program besides Quick Look, can I also use Power Toy's Peek function?
I came across Fileapps by chance and it seems like it can be completely replaced with Windows's File Explorer.
Requirements

Powertoys - https://learn.microsoft.com/en-us/windows/powertoys/
Enable peek functionality within the Powertoys app
Ultimately, file navigators such as Quicklook can preview selected files

Files Version
<IP_ADDRESS>
Windows Version
10.0.22635.2915
Comments
It's a really great app.
How good would it be to use it officially by Microsoft?
😂

Thanks for the feedback, we're ready to add this feature to Files but PowerToys doesn't have an API that'll enable us to do this. I opened an issue on the PowerToys repo to start the discussion on creating an API for third party file managers https://github.com/microsoft/PowerToys/issues/26422. You can check there or click subscribe in the right sidebar for updates.


Locales: C.UTF-8 is not available

Issue description
The C.UTF-8 locale is missing (locale -a). We do have lots of other UTF-8 locales, but those are all country specific.

https://sourceware.org/glibc/wiki/Proposals/C.UTF-8
https://lists.fedoraproject.org/pipermail/glibc/2015-September/000081.html

We use the list provided by upstream in the localedata/SUPPORTED file. Any idea why they don't put it in there?

Apparently there is a strong push for putting C.UTF-8 in the binary instead, so that it can be guaranteed that it is available on all systems.
https://sourceware.org/bugzilla/show_bug.cgi?id=17318

While we could try and add C.UTF-8 support ourselves (like some other distro's have done or are planning) I think it's something best left to upstream, so I am closing this. If you think it should remain open, feel free to reopen.

The last inter-linked discussions were in February 2015, so it's possible the push isn't so strong and the issue is just stalled long-term.
I agree we would best leave this to upstream, at least until they to the first step of agreeing on some semantic details and adding C.UTF-8 among the regular generated locales.

It's likely that PEP 538 is accepted and that would mean Python 3.7 is going to try and use C.UTF-8 by default.

The patch from Fedora is quite simple: https://src.fedoraproject.org/cgit/rpms/glibc.git/tree/glibc-c-utf8-locale.patch

Anything evolved since last discussion?

Reopening because we are going to need this with Python 3.7.

Latest discussion on the topic upstream:
https://sourceware.org/bugzilla/show_bug.cgi?id=17318

Still not resolved upstream, not even in glibc-2.28 which we don't have yet.

@Mic92 I see you have a patch in your branch. Did you test it?

@FRidh I think there was a problem somewhere, which is why I never made a pull request.

This is in master, so closing now.

YES! Looking forward to this and resulting cleanups! (like the python PR ^_^)


Validation issue with forbidden symbols in the SPDXID

In this SPDX document (it is in JSON format, but has .txt extension because of GitHub), the SPDXID SPDXRef-v2\"-None is used, which contains the invalid (escaped) character ".
This issue is not picked up by the java-tools validation.
For reference, the issue came up here.

@armintaenzertng what version of the tools were you using?  I just ran verify the the above referenced file on the master version and got the following error:
Analysis exception processing SPDX file: No SPDX element found for SPDX ID SPDXRef-None-None

Sorry for the confusion, Gary, I did not notice that the java-tools don't even get to the validation step due to the SPDXRef-None-None error. I deleted the offending reference, here is the "fixed" version. This seems to pick up on all issues I mentioned, though I must say that the formatting seems a bit off, especially all these "Relationship error:" parts:
This SPDX Document is not valid due to:
        Relationship error: Relationship error: Relationship error: Relationship error: Invalid SPDX ID: SPDXRef-v2"-None.  Must match the pattern SPDXRef-([0-9a-zA-Z\.\-\+]+)$ in v2" in v2" in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Relationship error: License not found for LicenseRef-45c771b in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Relationship error: License not found for LicenseRef-21495e9 in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Relationship error: License not found for LicenseRef-fa9fd02 in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Relationship error: License not found for LicenseRef-1b79b75 in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Relationship error: License not found for LicenseRef-4ccf56f in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Relationship error: License not found for LicenseRef-ca2312b in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Relationship error: License not found for LicenseRef-39c3ee0 in 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Relationship error: Missing required package verification code for package 665fbbf998e4658c0a6f232f6b2e286eea9c794e8e92a529a92246fb7a7a1597 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in d909eff282003e2d64af08633f4ae58f8cab4efc0a83b86579b4bbcb0ac90956 in golang in golang in Tern report for golang
        Relationship error: Relationship error: License not found for LicenseRef-1c734cf in c9b1b535fdd91a9855fb7f82348177e5f019329a58c53c47272962dd60f71fc9 in golang in golang in Tern report for golang
        Relationship error: Relationship error: License not found for LicenseRef-21495e9 in c9b1b535fdd91a9855fb7f82348177e5f019329a58c53c47272962dd60f71fc9 in golang in golang in Tern report for golang
        Relationship error: Relationship error: Missing required package verification code for package c9b1b535fdd91a9855fb7f82348177e5f019329a58c53c47272962dd60f71fc9 in golang in golang in Tern report for golang

This is similar, if not a duplicate of issue #134 and the spec issue is in https://github.com/spdx/spdx-spec/issues/802.
Closing this issue.
@armintaenzertng - if I missed something, please open a new issue.


As Name field for Service is not showing in Edit or Clone

v0.23.0-rc1
Steps:

Create a service and start it
Create another service and link to the first service, put "TestName1" in the As Name field for link
Create and start service
Edit or Clone Service

Results:
Notice the "As Name" field is blank
Expected:
"As Name" should save

This ends up being a much bigger change to switch the way service dependencies are tracked from following the consumedservices links to loading the serviceConsumeMap resources separately and correlating.  So re-check that all the views show all the consumed services correctly.
Also the box view shows the alias now:

And the graph view on the line:

https://github.com/rancherio/ui/pull/205

build from master - June 11th
Verified fixed


libpod/config: default: use crun on Cgroups v2

When running on a node with Cgroups v2, default to using crun instead
of runc.  Note that this only impacts the hard-coded default config.
No user config will be over-written.
Fixes: #4463
Signed-off-by: Valentin Rothberg<EMAIL_ADDRESS>

/lgtm
/hold
hold cancel when tests pass.

LGTM

/hold cancel

/lgtm
Thank you for your quick work. There should be a rawhide autobuild soon after this commit, I'll update this PR with gating test results.

Update: Success.
There's no actual bodhi email nor IRC message yet, but that happens sometimes. What's important is that the gating tests passed on the 24efb5e build.
Thanks again for addressing this so quickly.


Error in console and canvas, but trade works

Foundry core 0.7.9, D&D 1.2.0, Let's trade 0.1.2, Windows 10, Self hosted Foundry with Jnode, Chrome Browser.
PG_Paolo has sent Nadarr Mordiscudo 1 Giaciglio(s)
Nadarr is giuseppe's PC.
Trade works fine, but I have attached error.
giuseppe_log.log
paolo.log
active_modules.txt
nodejs_errror.txt

Could you try to disable all of your modules with the exception of Let's Trade and see if the issue continues to happen? I have been unsuccessful in reproducing the issue.

Could you try to disable all of your modules with the exception of Let's Trade and see if the issue continues to happen? I have been unsuccessful in reproducing the issue.

Yep, no error with only Let's trade enabled. Now the hard part is find the culprit...can you send me the list of your modules so I can narrow it please?

Yep, no error with only Let's trade enabled. Now the hard part is find the culprit...can you send me the list of your modules so I can narrow it please?

I don't use many modules. Instead, I can teach you how to quickly narrow it down. (Assuming it's a single module and not a combination of modules).
Take your module list, enable the first, then test it. If it happens you have eliminated the second half, if it doesn't you have eliminated the second half.  You can repeat this process again and then again. Eventually, after 3 or 4 iterations, you should have narrowed it down to a handful of modules. This process is called bisection or binary search.

I don't use many modules. Instead, I can teach you how to quickly narrow it down. (Assuming it's a single module and not a combination of modules).
Take your module list, enable the first, then test it. If it happens you have eliminated the second half, if it doesn't you have eliminated the second half.  You can repeat this process again and then again. Eventually, after 3 or 4 iterations, you should have narrowed it down to a handful of modules. This process is called bisection or binary search.

@ariakas2008 Have you had any luck narrowing down which modules might be responsible?

@ariakas2008 Have you had any luck narrowing down which modules might be responsible?

@ariakas2008 Have you had any luck narrowing down which modules might be responsible?

Yes, sorry for late reply. It is caused by Variant Encumbrance, probably trying to update its lightly encumbered Active Effect.

@ariakas2008 Have you had any luck narrowing down which modules might be responsible?

Yes, sorry for late reply. It is caused by Variant Encumbrance, probably trying to update its lightly encumbered Active Effect.

Ok, this seems unrelated to let's trade 5e, perhaps my update calls are triggering it. Not really sure how I can address this issue on my end.

Ok, this seems unrelated to let's trade 5e, perhaps my update calls are triggering it. Not really sure how I can address this issue on my end.


Issue 50 & OpenHAB Setup

bridgeBackup.py  will allow allow users to backup and restore bridge configuration
openHabConfig.py allows users to setup bridge for use with an OpenHAB setup with a minimal amount of input

@iandday FYI I've restarted several times openHAB, Amazon Echo and the bridge and not a single time I lost the bridge configuration.

I agree, I've never had any issues with losing config information, I just wanted to make swapping configurations easier.


Setup Issue trying to use Fedora Linux with SD2SNES: cp: cannot stat 'linux/udev/rules.d/51-fxpak.rules': No such file or directory

I've tried the terminal commands in the README file on both root and in a user account and I have had no luck in getting SNI to work.
When I try:
sudo cp linux/udev/rules.d/51-fxpak.rules /etc/udev/rules.d/.
It returns:
cp: cannot stat 'linux/udev/rules.d/51-fxpak.rules': No such file or directory
I've even tried manually creating such a directory, but that doesn't seem to make a difference.

That README instruction is referring to this file in the repository with that path:
https://github.com/alttpo/sni/blob/main/linux/udev/rules.d/51-fxpak.rules
Just download it from github here and copy it to /etc/udev/rules.d/


Use Plays new OpenIdClient implementation instead of the global OpenID object

Coverage remained the same at 100.0% when pulling 528553e9a732deeb7fdf211756cadb5f3b8962c4 on akkie:master into a42a35b7456459f96bd1236517edaa0a7d7ae504 on mohiva:master.


ColumnType annotation ignored for Where clause?

I'm implementing some type mapping scenarios for Npgsql and have run into an issue.
PostgreSQL supports some types which don't have a natural corresponding CLR type; for example, the PostgreSQL jsonb type has no natural/universal JSON CLR type. It makes sense to map it to CLR string. This should work well as long as the user explicitly sets the ColumnType on the property to "jsonb"; this should make the type mapper to look up the JSON mapping (as opposed to string) and set up the DbParameter correctly.
I've written some Npgsql testing around this in the BuiltInDataTypes testsuite (similar to SqlServer's) and am running into trouble. Specifically, in the Can_query_using_any_mapped_data_type test, the jsonb property is being used in a Where() clauses. It seems that when the parameter is constructed, the GetMapping(Type) overload is called on IRelationalTypeMapper, rather than the GetMapping(IProperty) overload. The overload that accepts a type sees only the property's type, which is a string, and creates a string DbParameter instead of a jsonb one. In other words, the user-configured ColumnType seems to be ignored in this scenario.

This appears to be a part of a larger issue (#4608) that the query pipeline does not infer column/property facets. the DefaultQuerySqlGenerator does not use the IProperty based mapping because it is absent in the query expression.
Adding a note to that issue to ensure this is resolved as a part of that work and closing this issue.


Added link to restart docker daemon without restarting daemon

Added link to restart docker daemon without restarting daemon

@abhijeetka Thanks for this MR.


v-tooltip on mobile

It would be great if v-tooltip has an "on click" event for mobile devices.
Because of the fact that touch does not have a hover state - it makes v-tooltip unusable when you have to account for mobile devices. It would be great if there was also a click event on the trigger div.

You can change the default trigger to click on mobile: https://github.com/Akryum/v-tooltip#global-options

Sweet.
Thanks for the info!

I am wondering how this should be configures. In the global-options I see:
defaultTrigger: 'hover focus',

Should I configure this property to enable click for touch devices and how might can I accomplish that?

for mobile:
defaultTrigger: 'hover focus click'

This solved the issues on mobile for me:
Vue.use(VTooltip, {
  defaultTrigger: window.innerWidth > 768 ? 'hover focus click' : 'click'
})

Is there any solution to set defaultTrigger: 'hover focus click' to just specific element in my .vue file?

Is there any solution to set defaultTrigger: 'hover focus click' to just specific element in my .vue file?


rust-bindgen: 0.36.1 -> 0.37.0

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

built on NixOS
/nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0/bin/bindgen passed the binary check.
Warning: no invocation of /nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0/bin/.bindgen-wrapped had a zero exit code or showed the expected version
1 of 2 passed binary check by having a zero exit code.
1 of 2 passed binary check by having the new version present in output.
found 0.37.0 with grep in /nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0
directory tree listing: https://gist.github.com/dab90e1565932370211bc1cb47b526d9
du listing: https://gist.github.com/1ea884a58cb25990e712703124f8a6da

meta.description for rust-bindgen is: '"C and C++ binding generator"'.
cc @ralith for testing.

Success on x86_64-darwin (full log)
Attempted: rust-bindgen
Partial log (click to expand)
cp: -r not specified; omitting directory 'target/release/incremental'
cp: -r not specified; omitting directory 'target/release/native'
cp: -r not specified; omitting directory 'target/release/examples'
cp: -r not specified; omitting directory 'target/release/deps'
cp: -r not specified; omitting directory 'target/release/build'
post-installation fixup
strip is /nix/store/kdff2gim6417493yha769kh00n63lnrw-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/rjsqpnqavrlyhvbchks0i93477wvffza-rust-bindgen-0.37.0/bin
patching script interpreter paths in /nix/store/rjsqpnqavrlyhvbchks0i93477wvffza-rust-bindgen-0.37.0
/nix/store/rjsqpnqavrlyhvbchks0i93477wvffza-rust-bindgen-0.37.0

Success on x86_64-linux (full log)
Attempted: rust-bindgen
Partial log (click to expand)
cp: -r not specified; omitting directory 'target/release/native'
cp: -r not specified; omitting directory 'target/release/examples'
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0
shrinking /nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0/bin/.bindgen-wrapped
strip is /nix/store/j75dgadrff2d1fyc4fczmcgqkid2imdx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0/bin
patching script interpreter paths in /nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0
checking for references to /build in /nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0...
/nix/store/y7lbrcpy05c1br43257fj056p6vf269l-rust-bindgen-0.37.0

Success on aarch64-linux (full log)
Attempted: rust-bindgen
Partial log (click to expand)
cp: -r not specified; omitting directory 'target/release/native'
cp: -r not specified; omitting directory 'target/release/deps'
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/k2j3vjyg9d8gyqxk6m2nqg1kbb7i5g1g-rust-bindgen-0.37.0
shrinking /nix/store/k2j3vjyg9d8gyqxk6m2nqg1kbb7i5g1g-rust-bindgen-0.37.0/bin/.bindgen-wrapped
strip is /nix/store/jk6j4lh9v5mvjdbdc35sj0zffhhf6s56-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/k2j3vjyg9d8gyqxk6m2nqg1kbb7i5g1g-rust-bindgen-0.37.0/bin
patching script interpreter paths in /nix/store/k2j3vjyg9d8gyqxk6m2nqg1kbb7i5g1g-rust-bindgen-0.37.0
checking for references to /build in /nix/store/k2j3vjyg9d8gyqxk6m2nqg1kbb7i5g1g-rust-bindgen-0.37.0...
/nix/store/k2j3vjyg9d8gyqxk6m2nqg1kbb7i5g1g-rust-bindgen-0.37.0


Render the websocket served data graphically

Once we have an initial project able to connect to a websocket server and handle the data in a primitive way, we will create a component to render this streamed data through a graphic/chart.

Moved to https://github.com/frees-io/freestyle-opscenter-webclient/issues/2


feat: add actor_id and actor_type to Log response model

Description

Adds actor_id and actor_type to Log response object
Removes application_id property which is replaced by actor_id

Testing required outside of automated testing?

[X] Not Applicable

Screenshots (if appropriate):

[X] Not Applicable

Rollback / Rollforward Procedure

[X] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

:tada: This PR is included in version 1.15.0 :tada:
The release is available on:

v1.15.0
GitHub release

Your semantic-release bot :package::rocket:


Spelling: "frist" -> "first"

Single-word spelling change in comments.

Can one of the admins verify this patch?

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks for your contribution @endopol Can you prefix your commit summary with (maint) and force push to your feature branch?

This PR has been open for a year with no response, so I'm going to close it. If you're still wanting to contribute please reopen the PR, sign the CLA and append (maint) to your commit summary. Thanks!


Clitest update

There was a bad if/elif statement and the elif os.path ... would never get hit. So I swapped the order of those two statements and added testing for the prepare_exec_for_file function.

second commit should be amended into the first one
also, the first line of a commit should be no longer than 51 chars (right not even github truncates it) - see http://chris.beams.io/posts/git-commit/ for some useful guidelines

@ThiefMaster We can squash ourselves so commit styling is no longer that relevant.
@jphilipsen05 Can you verify (on your machine) that the tests fail without the bugfix?

Yes, If I swap the if/elif statements back to the original I get this error in the tests. Showing that the first if statement for an init.py is hitting the if statement that handles python files and does not reach the expected init.py elif statement.
When I have my bug fix in place there are no errors.
Let me know if you have any other questions.
test_apps = None
def test_prepare_exec_for_file(test_apps):
    assert prepare_exec_for_file('test.py') == 'test'

  assert prepare_exec_for_file('/usr/share/__init__.py') == 'share'

E       assert 'init' == 'share'
E         - init
E         + share


Regent: Interoperability with the CUDA runtime

The Regent compiler produces PTX registration code in the assumption that the PTX will be consumed by the Realm hijack. The registration code is not quite compatible with the default CUDA runtime, which was causing issue #713. This interoperability is useful in scenarios where the Realm hijack needs to be disabled, typically arising when the Regent code is integrated with legacy code directly using CUDA. While what integration strategies we should encourage is an interesting question in the long run, at least for the short term we need to fix the Regent compiler so that it generates a CUDA-compatible registration preamble.

I thought we fixed compatibility with the hijack being disabled?

Regent use of the hijack was truly and finally removed in #1059, so this is now resolved.


Are there any other distributed training examples?

I only find one MNIST lenet example from here:
https://aws.amazon.com/cn/blogs/compute/distributed-deep-learning-made-easy/
I prefer to run it in the AWS.

http://mxnet.io/how_to/multi_devices.html

This issue is closed due to lack of activity in the last 90 days. Feel free to reopen if this is still an active issue. Thanks!


REPLACE react-datetime with native date/time pickers

Issue: #4135
What I did
I replaced the react-datetime components by a custom component using the native date & time picker provided by the browser.
Effects are:

UX is dependent on the browser
We no longer have a dependency on moment, so the bundle is smaller

This is based on 3.4 branch
I will do a similar thing for master

FAIL  lib/core/src/client/preview/client_api.test.js
  ● preview.client_api › storiesOf › add › should replace stories when adding the same story

    expect(received).toBe(expected) // Object.is equality

    Expected value to be:
      [Function mockConstructor]
    Received:
      [Function mockConstructor]

    Difference:

    Compared values have no visual difference.

      312 |           // v3 returns the same function we passed in
      313 |           if (jest.isMockFunction(entry.stories[0].render)) {
    > 314 |             expect(entry.stories[0].render).toBe(stories[0]);
      315 |           } else {
      316 |             expect(entry.stories[0].render()).toBe('story2');
      317 |           }

      at Object.<anonymous> (lib/core/src/client/preview/client_api.test.js:314:46)

I think this might be an existing problem with 3.4 ?
I didn't change anything related to this 😕

it is:
https://circleci.com/gh/storybooks/storybook/65125

Danger also
Netlify's config is missing marko app
And this branch still does cli tests that were removed in master

Wow this will be so much nicer when it's in. Also, one less dependency!
Seeing a lot of issues with trying to make edits to the knob itself via the text input rather than the date picker.
Using up and down arrows to select any input sometimes ends up with the incorrect date being rendered:

Attempting to type out a year results in immediate re-render, the wrong knob value, and the wrong display value:

going to have to make them uncontrolled inputs then. Since right now, when a non-valid date is entered, it's immediately forced into a valid date again, making it impossible to edit freely.

Hey @kylemh I think I got it working this time.
Might extract this into it's own npm package maybe

https://deploy-preview-4244--storybooks-official.netlify.com/

Awesome - all of the gif issues resolved. The last issue that I can see is the ability to type and key to non-existent dates, like February 30th of any year.

That's browser behavior... I dunno maybe they allow it to give you the option of jumping to say 31th of January to 29th of February without having to switch the day first...
The dropdown will only allow you to select real dates in Chrome, but when editing the text, they allow any number < 32 for days in combo with any number < 13 for months. years allow up to 999999, but no negative and chrome will only show the last 4 digits.

Seems fine to me. At the end of the day, this for UI demonstration purposes.
Maybe just ensure we outline the fact that there's no validation beyond what the browser provides in the knobs README for that knob type. Otherwise, looks great to me 👍

Can I get a review @storybooks/team

No other comments other than what others mentioned.

Going to close this is favour of the one on master, which should imminently be released as 4.0.0


Dependency Issue: Could not load file or assembly Microsoft.Extensions.Options

Describe the bug
I'm working on implementing remote Authentication between a .NET Core and .NET Framework app following this article. Locally, the app works as expected, but when deployed to IIS I see the following error on the .NET Framework app.
"Could not load file or assembly 'Microsoft.Extensions.Options"

I believe the issue is due to an existing dependency in our packages.config
<package id="Microsoft.Extensions.Options" version="7.0.0" targetFramework="net48" />

I'm seeing \bin\Microsoft.Extensions.Options.dll, but the Product number on the file is listed as 7.0.0, and SystemWebAdapters calls for 6.0.0.
When I installed Microsoft.AspNetCore.SystemWebAdapters, it added the following to Web.config, so I thought it should be looking for 7.0.0. instead of 6.0.0 in the error message
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.Options" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="<IP_ADDRESS>-<IP_ADDRESS>" newVersion="<IP_ADDRESS>" />
      </dependentAssembly>

Any idea why I'm seeing this runtime error? Is there a workaround that I'm missing or something else I should check?
Thanks in advance for the tools and support!
To Reproduce
Repo with MRE (but issue is not reproducible locally) https://github.com/cswagerty/dotnet-migration-auth-mre.
Exceptions (if any)
Server Error in '/' Application.
Could not load file or assembly 'Microsoft.Extensions.Options, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=adb9793829ddae60' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.IO.FileLoadException: Could not load file or assembly 'Microsoft.Extensions.Options, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=adb9793829ddae60' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Assembly Load Trace: The following information can be helpful to determine why the assembly 'Microsoft.Extensions.Options, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=adb9793829ddae60' could not be loaded.

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

Stack Trace:

[FileLoadException: Could not load file or assembly 'Microsoft.Extensions.Options, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=adb9793829ddae60' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]
   System.Web.RemoteAppServerExtensions.AddRemoteAppServer(ISystemWebAdapterBuilder builder, Action`1 configure) +0
...

Further technical details
Please include the following if applicable:
ASP.NET Framework Application:

Technologies and versions used (i.e. MVC/WebForms/etc): MVC
.NET Framework Version: 4.8
IIS Version: 10.0
Windows Version: Windows Server 2019 Datacenter

Upon investigation, the deployed Web.config file did not contain the bindingRedirect, which was causing this issue. After adding everything is working like a charm. Thanks for all of the work on this excellent library!


Late spans with errors should get SampleRate: 1

Is your feature request related to a problem? Please describe.
Presently, if there's a rule to catch errors and give them a sample rate of 1, it will only consider that rule until the trace timeout or root span arrived and it gets sent.
This has the consequence where a 1/300 sample rate would end up multiplying the single error by 300 which may set off alarms or trash SLO budgets.
Describe the solution you'd like
Since honeycomb doesn't need all spans in a trace to have the same sample rate, the "late" behavior could still run a rule evaluation to see if it matches a sample rate 1 rule like an error or something else before sending the span.
It should only do this when the Trace's decided sample rate is greater than 1 and the rule caught is a SampleRate: 1 rule. Other scenarios don't typically have an impact that is as big.
If the span would have caused the trace to be dropped, it's a bit late for that.
If the span would have moved it into a different dynamic sampler or field list, those are typically minor issues that don't have as much benefit.
Describe alternatives you've considered
Doing nothing to refinery requires excluding "late" spans from SLOs and triggers which means you get zero fidelity signal from them.
Additional context

@mterhar after discussion with the team today, we think this requires evaluating rules outside of the current context which we're not prepared to do that. We'll add to our 2.5 milestone for consideration but may slip beyond that.

We had hoped to slip this into 2.7, but we re-evaluated this today, and realized that it requires us to manufacture a temporary trace, modify the trace evaluation logic, submit that trace through that system, and then intelligently evaluate the result.
We're not going to do that today, and it will probably now wait until we do a rework of the trace decision logic.


Validation hook for restful api

Steps to reproduce
use validateSchema and Ajv to validate the req.query is apposite.  always get BadRequest: Data does not match schema.
in get-item.js the context.data always is undefined because
context.data is a writeable property containing the data of a create, update and patch service method call..
I don't know how to validate the req.query in restful api,  could give me some help, thanks a lot, thanks a lot.
Expected behavior
validate req.query pass
Restful api
GET /*****?name="name"
const Ajv = require('ajv');
const {validateSchema } = require('feathers-hooks-common');
const  schema = {
  type: 'object',
  required: ['username'],
  properties: {
    username: {
      type: 'string',
      minLength: 4
    },
    email: {
      type: 'string',
      format: 'email'
    },
    password: {
      type: 'string',
      minLength: 6
    }
  }
};

// Hooks
module.exports = {
  before: {
    all: [],
    find: [validateSchema(schema, Ajv)]
}

Actual behavior
BadRequest: Data does not match schema
System configuration
Module versions (especially the part that's not working):
"feathers-hooks-common": "^4.19.6"
"ajv": "^6.6.2"
"@feathersjs/feathers": "^3.1.5",
NodeJS version:  v10.5.0
Operating System:  macOS

A get operation reads a record. You are trying to verify the contents of the read record before its read. The data does not exist at that point.
Perhaps you want to verify it after its read? If so module.exports = { after: {...}}.
However I don't know if verify the existing contents of a record is even a good idea. Usually you verify data you are about to write.

Sorry, maybe I did not describe clearly, I want to use the hook to verify the client input, req.query or req.body. I think in the server, we should verify the client input first.
Maybe I should use a middleware, like  express-validation.
Thank you for your reply.


Recent commit broke installation of module

Hi guys. Love this mod and use it often. Just trying to install it on a fresh 3.1.x and finding that on db build I'm getting a MySQL error along the lines of "Table dbname.SiteTree doesn't exist".
Some digging around and I'm quite certain the issue was moving onAfterInit() code from MultisitesContentControllerExtension to MultisitesControllerExtension in 6ebf49b
The code is now being called on controllers DevelopmentAdmin, DevBuildController and DatabaseAdmin - at which point in time for a fresh install there are no tables yet, but we're going searching for getCurrentSite()... hence the error.
I'm not certain of the best prac way around this. Perhaps removing the extension on Controller, and instead extending the onAfterInit() func onto a specific set of Controllers, excluding the base class and the controllers listed above? Seems pretty verbose though.
In the meantime I've wrapped the code inside an ugly but functional !in_array():
public function onAfterInit() {

		if (!in_array(get_class($this->owner), array('DevelopmentAdmin', 'DevBuildController', 'DatabaseAdmin'))) {

			$site = Multisites::inst()->getCurrentSite();

			if($site && $theme = $site->getSiteTheme()) {
				SSViewer::set_theme($theme);
			}
		}
	}

I'm happy to submit a PR with a fix if y'all can a) confirm I'm not going crazy and b) suggest the best method of fix?

Awesome. Thanks @nyeholt :)

It's not the best fix, but will do for now until I next do something with the module :)


web/dashboard: optimize task list auto-refresh

The auto refresh on the task list is a excessive. Looks like it refreshes every 2 seconds, and in my dashboard that's download over 500KB per request.
I do like the idea of having the dashboard update without needing to hit refresh, but there's a lot of room for optimization here:

increase the interval to at least 10 seconds
use the page visibility API to only update when the tab is active (i.e. don't bother refreshing when the user isn't looking)
refresh tasks individually, and cache tasks in a final state
expose a task events API via HTTP and subscribe to that, pushing polling/streaming down a layer in the stack
after the initial load, only state changes, so refreshes can use the minimal task view

https://github.com/ohsu-comp-bio/funnel/blob/master/webdash/app.js#L51

The main ideas left here are:

allow GetTask and ListTasks to request a specific subset of fields in the response to enable the client to get exactly what it wants without extra weight
provide an event system which client can easily subscribe to
server side rendering of initial page load
configurable and pause-able refresh in the dashboard

I'm not sure any of those are worth the amount of work and complexity. The initial problem was improved a lot.
The configurable and pause-able refresh loop is a good idea, but let's address that in a separate issue later.


help compiling the project

first, thank you for your hard work for making this tool! it will help a lot and saves a lot of time for others :)
second, i'm a newbie into fuzzing and i would like to learn more to use winnie, i did read the walkthrough and papers but i'm having trouble compiling the project from the sources,
is it possible to give the steps on how to do it? because it's my first time using visual studio so i'm not used to it and i'm doing my best to learn.
again thank you for the hard work! and i hope to see videos in the future for this tool :)

You have to generate the csrss offsets for your exact build of Windows (the following instructions are copied from the readme)

You open the project in Visual Studio

Set configuration to Release. Use x64 for 64-bit and Win32 for 32-bit build. 64-bit build should be used to fuzz 64-bit program and 32-bit fuzzer for fuzzing 32-bit program.

You press Build solution (Ctrl+Shift+B)

I forgot to add prebuilt binaries for libipt which I added today so the build should be fixed now.


Month view multiple day range

Hi there,
On month view, If I have an event that spans multiple days is it possible to show a solid bar from start to end rather than individual blocks, e.g.
This seems to be the default from the demos:

But I'm trying to achieve:

events: [         {           title: 'Two day event',           date: getCurrentDay(2),           time: '00:00',           days: 1,           bgcolor: 'orange'         }       ],
Thanks
Tim

look into the month-slot-week example
https://qcalendar.netlify.app/examples/month-slot-week

ahh much appreciated Bruno


GPUs evaluate to None when set to 0

I think gpus: 0 will result in None when referenced with {{ gpus }}. We need 0 in this case so I needed to came up with this hack.
https://github.com/usegalaxy-eu/infrastructure-playbook/commit/ede003c7959eac7f4f4e6b3fb57e85fc83804353
We have now ITs running on EU with TPV. Wonderful! :)

Fixed in commit: https://github.com/galaxyproject/total-perspective-vortex/commit/0b9f547022de2206f97e81dc8190285a4e64b45b as part of PR: https://github.com/galaxyproject/total-perspective-vortex/pull/58


Conform error reporting in macOS C source to logging rules

I implemented error reporting in the macOS C source in an ad hoc fashion, without referring to any "logging rules" as mentioned by @david-janssen. Where can I check these logging guidelines?

Actually, I have all of the logging for Linux in the Haskell code. The C-code just returns error-codes if something goes wrong, and then Haskell decides what to do with it. What I meant by that comment was that the C-code shouldn't really print anything.
Of course, we could send our logging-level into our C-code to also do logging from there, but that would require a little bit more infrastructure. Additionally, I'll probably be tweaking the logging soon. I'll get back to you once that's done.

Unfortunately, the macOS code is somewhat complex and much can go wrong. The current error statements have been useful for debugging and helping new users. In my mind, a thinner interface would be to pass the logging level to the C code, rather than to define many error codes in both the C code and Haskell code that must match. This approach scales well to an OS interface like that of macOS, where so much is going on, even though it might be overkill for that of linux: only the semantics of a small number of log levels must be agreed upon, rather than a large number of error codes, and the linux interface can just ignore these if it doesn't have anything to report.

Sure, then give me a few days. I was just working on logging code, and I'll check back in when I have KMonad running again with all the changes I've been making to it locally.


Concept of a selection on a graphic

It would be useful to have the concept of a "selection" on a graphic. This could operate somehow in conjunction with interaction.
Selection could either be an indexable graphic feature or a property. A change in selection could optionally trigger a change in one or more features.
For graphic collections, the selection would be indices for each individual graphic. For Image Graphic it could be a 2D slice (rectangular region). For lines and scatter it would be vertices or points.
The purpose for having this in addition to Interaction.link() is to programmatically get or set a selection of indices. For example, if you click on a contour in a line collection and make it set the color as white, in order to get the selected indices you have to access PreviouslyModifiedData but that is private and doesn't make sense since it's for a different purpose.
With "Selection" it would be possible to set or get selection indices and whether or not they change a feature, or multiple features, is optional. Not sure of what's the best way to define the communication between Selection and changing graphic features.

Maybe we need a Selection class, somewhat similar to CollectionIndexer. But we need to think about what type of behavior (methods, attributes) we want Selection to have.

Maybe a Selection instance can always be an attribute of Graphic

We need to look into how bokeh and other libs implement this type of stuff.

#142 is better


Only the title of the web page is sent to the LLM.

The embedding mode works normally, but only the title of the web page is sent to the LLM.

@wwjCMP
Hi This is most probably due to the fact that you did not set the searxng URL properly.
In the prompt say
"Say hi". If you get any response that means while other configurations related to LLMs are correct the searxng config is wrong.

@wwjCMP
Hi This is most probably due to the fact that you did not set the searxng URL properly.
In the prompt say
"Say hi". If you get any response that means while other configurations related to LLMs are correct the searxng config is wrong.

Hi! [1]  The current date and time is December 31st, 2024, at 08:19:29 UTC. [1]
[1]  Provided context: Current date & time in ISO format (UTC timezone) is: 2024-12-31T08:19:29.532Z.
false

2024-12-31 09:11:58,109 ERROR:searx.engines.wolframalpha: engine timeout
2024-12-31 09:11:58,309 ERROR:searx: call to ResultContainer.add_unresponsive_engine after ResultContainer.close
2024-12-31 09:11:58,309 WARNING:searx.engines.wolframalpha: ErrorContext('searx/search/processors/online.py', 116, "response = req(params['url'], **request_args)", 'httpx.TimeoutException', None, (None, None, None)) False
2024-12-31 09:11:58,310 ERROR:searx.engines.wolframalpha: HTTP requests timeout (search duration : 6.200519039999563 s, timeout: 6.0 s) : TimeoutException

Example Output

Begin with a brief introduction summarizing the event or query topic.
Follow with detailed sections under clear headings, covering all aspects of the query if possible.
Provide explanations or historical context as needed to enhance understanding.
End with a conclusion or overall perspective if relevant.

Spin effect in dual-atom catalysts for electrocatalysis Spin effect in dual-atom catalysts for electrocatalysis
Spin catalysis of chemical reactions Spin catalysis of chemical reactions
Spin effects in chemisorption and catalysis Spin effects in chemisorption and catalysis
A spin promotion effect in catalytic ammonia synthesis A spin promotion effect in catalytic ammonia synthesis
Spin effect on oxygen electrocatalysis Spin effect on oxygen electrocatalysis
Spin effects in activation of hydrocarbons: The role of triplet states in catalysis Spin effects in activation of hydrocarbons: The role of triplet states in catalysis
Electron spin catalysis Electron spin catalysis
Spin‐catalysis phenomena Spin‐catalysis phenomena
Modulating the oxygen reduction activity of heteroatom-doped carbon catalysts via the triple effect: charge, spin density and ligand effect Modulating the oxygen reduction activity of heteroatom-doped carbon catalysts via the triple effect: charge, spin density and ligand effect
Regulating the Spin State of FeIII Enhances the Magnetic Effect of the Molecular Catalysis Mechanism Regulating the Spin State of FeIII Enhances the Magnetic Effect of the Molecular Catalysis Mechanism
p-Block metal atom-induced spin state transition of Fe-N-C catalysts for efficient oxygen reduction. p-Block metal atom-induced spin state transition of Fe-N-C catalysts for efficient oxygen reduction.
Spin Crossover and Its Application in Organometallic Catalysis: Concepts and Recent Progress. Spin Crossover and Its Application in Organometallic Catalysis: Concepts and Recent Progress.
Insights into Heterogeneous Catalysis on Surfaces with 3d Transition Metals: Spin-Dependent Chemisorption Models and Magnetic Field Effects Insights into Heterogeneous Catalysis on Surfaces with 3d Transition Metals: Spin-Dependent Chemisorption Models and Magnetic Field Effects
Importance of Catalyst Stability vis-à-vis Hydrogen Peroxide Formation Rates in PEM Fuel Cell Electrodes Importance of Catalyst Stability vis-à-vis Hydrogen Peroxide Formation Rates in PEM Fuel Cell Electrodes
Many-body quantum catalysts for transforming between phases of matter Many-body quantum catalysts for transforming between phases of matter

Current date & time in ISO format (UTC timezone) is: 2024-12-31T13:12:39.389Z.
user:The role of spin effects in catalysts
user:The role of spin effects in catalysts

services:
searxng:
image: docker.io/searxng/searxng:latest
volumes:
- ./searxng:/etc/searxng:rw
ports:
- 4000:8080
networks:
- perplexica-network
restart: unless-stopped
perplexica-backend:
build:
context: .
dockerfile: backend.dockerfile
image: itzcrazykns1337/perplexica-backend:main
environment:
- SEARXNG_API_URL=http://searxng:8080
depends_on:
- searxng
ports:
- 3001:3001
volumes:
- backend-dbstore:/home/perplexica/data
- uploads:/home/perplexica/uploads
- ./config.toml:/home/perplexica/config.toml
extra_hosts:
- 'host.docker.internal:host-gateway'
networks:
- perplexica-network
restart: unless-stopped
perplexica-frontend:
build:
context: .
dockerfile: app.dockerfile
args:
- NEXT_PUBLIC_API_URL=http://<IP_ADDRESS>:3001/api
- NEXT_PUBLIC_WS_URL=ws://<IP_ADDRESS>:3001
image: itzcrazykns1337/perplexica-frontend:main
depends_on:
- perplexica-backend
ports:
- 3000:3000
networks:
- perplexica-network
restart: unless-stopped
networks:
perplexica-network:
volumes:
backend-dbstore:
uploads:


enableNamespacesByDefault doesn't work when revision tag is there and previous configuration has enableNamespacesByDefault disabled

Bug Description
enableNamespacesByDefault doesn't work when revision tag is there and the previous configuration had enableNamespacesByDefault disabled.
Version
$ istioctl version
client version: 1.14.1
control plane version: 1.14.1
data plane version: none

$ kubectl version --short
Flag --short has been deprecated, and will be removed in the future. The --short output will become the default.
Client Version: v1.24.1
Kustomize Version: v4.5.4
Server Version: v1.22.9-eks-a64ea69

Additional Information
Steps to reproduce
save this as disabledByDefault.yaml :
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  namespace: istio-system
  name: istiocontrolplane
spec:
  profile: minimal
  revision: 1-14-1

save this as enabledByDefault.yaml :
kind: IstioOperator
metadata:
  namespace: istio-system
  name: istiocontrolplane
spec:
  profile: minimal
  revision: 1-14-1
  values:
    sidecarInjectorWebhook:
      enableNamespacesByDefault: true

Do:
$ istioctl install -f disabledByDefault.yaml
Then do:
$ istioctl install -f enabledByDefault.yaml
The configmap istio-sidecar-injector-1-14-1 shows "enableNamespacesByDefault": true,
But sidecar injection does not work when a pod is created.

@sachin-ks followed your steps, and added the step to create a pod like the following:
kubectl create namespace sample

cat << EOF | kubectl apply -n sample -f -
apiVersion: apps/v1
kind: Deployment
metadata:
  name: helloworld-v1
  labels:
    app: helloworld
    istio.io/rev: 1-14-1
    version: v1
spec:
  replicas: 1
  selector:
    matchLabels:
      app: helloworld
      version: v1
  template:
    metadata:
      labels:
        app: helloworld
        version: v1
        sidecar.istio.io/inject: "true"
    spec:
      containers:
      - name: helloworld
        image: docker.io/istio/examples-helloworld-v1
        resources:
          requests:
            cpu: "100m"
        env:
        - name: FLASK_RUN_PORT
          value: "5000"
        - name: FLASK_RUN_HOST
          value: "::"
        - name: FLASK_ENV
          value: "development"
        - name: FLASK_APP
          value: "/opt/microservices/app.py"
        command: ["flask", "run"]
        imagePullPolicy: IfNotPresent #Always
        ports:
        - containerPort: 5000
EOF

notice that you will need to specify the revision label to match the istio revision. Injection worked fine.

@litong01 Actually, the injection should happen without labeling the namespace or pod because enableNamespacesByDefault is true.

@litong01  To confirm the expected behaviour, you can do:

Uninstall Istio
Install Istio using this file:

kind: IstioOperator
metadata:
  namespace: istio-system
  name: istiocontrolplane
spec:
  profile: minimal
  revision: 1-14-1
  values:
    sidecarInjectorWebhook:
      enableNamespacesByDefault: true

Create a new pod (notice that I have removed the labels from the yaml):

kubectl create namespace sample

cat << EOF | kubectl apply -n sample -f -
apiVersion: apps/v1
kind: Deployment
metadata:
 name: helloworld-v1
 labels:
   app: helloworld
   version: v1
spec:
 replicas: 1
 selector:
   matchLabels:
     app: helloworld
     version: v1
 template:
   metadata:
     labels:
       app: helloworld
       version: v1
   spec:
     containers:
     - name: helloworld
       image: docker.io/istio/examples-helloworld-v1
       resources:
         requests:
           cpu: "100m"
       env:
       - name: FLASK_RUN_PORT
         value: "5000"
       - name: FLASK_RUN_HOST
         value: "::"
       - name: FLASK_ENV
         value: "development"
       - name: FLASK_APP
         value: "/opt/microservices/app.py"
       command: ["flask", "run"]
       imagePullPolicy: IfNotPresent #Always
       ports:
       - containerPort: 5000
EOF

The sidecar injection will happen, which is expected.
But if you follow my steps from the original issue and try to create a pod, the sidecar injection will not happen, which is not expected.

That is right. You need the revision label, not the injection label. Please look at the example I posted. The behavior is correct, you need the revision label since you are using revisioned Istio. That is not the same thing as injection label.
Sent from my iPhone
On Jun 24, 2022, at 3:56 PM, Sachin Kumar @.***> wrote:

@litong01 To confirm the expected behaviour, you can do: Uninstall Istio Install Istio using this file: kind: IstioOperator metadata: namespace: istio-system name: istiocontrolplane spec: profile: minimal revision: 1-14-1 values: sidecarInjectorWebhook:
ZjQcmQRYFpfptBannerStart
This Message Is From an External Sender
This message came from outside your organization.
ZjQcmQRYFpfptBannerEnd
@litong01https://github.com/litong01 To confirm the expected behaviour, you can do:

Uninstall Istio
Install Istio using this file:

kind: IstioOperator
metadata:
namespace: istio-system
name: istiocontrolplane
spec:
profile: minimal
revision: 1-14-1
values:
sidecarInjectorWebhook:
enableNamespacesByDefault: true

Create a new pod (notice that I have removed the labels from the yaml):

kubectl create namespace sample
cat << EOF | kubectl apply -n sample -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: helloworld-v1
labels:
app: helloworld
version: v1
spec:
replicas: 1
selector:
matchLabels:
app: helloworld
version: v1
template:
metadata:
labels:
app: helloworld
version: v1
spec:
containers:
- name: helloworld
image: docker.io/istio/examples-helloworld-v1
resources:
requests:
cpu: "100m"
env:
- name: FLASK_RUN_PORT
value: "5000"
- name: FLASK_RUN_HOST
value: "::"
- name: FLASK_ENV
value: "development"
- name: FLASK_APP
value: "/opt/microservices/app.py"
command: ["flask", "run"]
imagePullPolicy: IfNotPresent #Always
ports:
- containerPort: 5000
EOF
The sidecar injection will happen, which is expected.
But if you follow my steps from the original issue and try to create a pod, the sidecar injection will not happen, which is not expected.
—
Reply to this email directly, view it on GitHubhttps://github.com/istio/istio/issues/39604#issuecomment-1165891819, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAO2NSZVBQKTMFFZUEXNQ33VQYHHRANCNFSM5ZXIFTMQ.
You are receiving this because you were mentioned.Message ID: @.***>

@litong01 I am using your example only. But please notice that in my previous comment, in 3rd step, I have removed the revision label but still sidecar injection will work.

You removed the revision label and injection still happens? Hmmm, if that is the case we are seriously broken. My tests showed if revision label is not there, injection won’t happen which is expected.
Sent from my iPhone
On Jun 24, 2022, at 4:09 PM, Sachin Kumar @.***> wrote:

@litong01 I am using your example only. But please notice that in my previous comment, in 3rd step, I have removed the revision label but still sidecar injection will work. — Reply to this email directly, view it on GitHub, or
ZjQcmQRYFpfptBannerStart
This Message Is From an External Sender
This message came from outside your organization.
ZjQcmQRYFpfptBannerEnd
@litong01https://github.com/litong01 I am using your example only. But please notice that in my previous comment, in 3rd step, I have removed the revision label but still sidecar injection will work.
—
Reply to this email directly, view it on GitHubhttps://github.com/istio/istio/issues/39604#issuecomment-1165899571, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAO2NS6QHNX3EHLZVVMOKD3VQYIV7ANCNFSM5ZXIFTMQ.
You are receiving this because you were mentioned.Message ID: @.***>

@litong01 Yes, injection still happens because enableNamespacesByDefault is true. There was a similar issue but it was fixed. Just for your reference: https://github.com/istio/istio/issues/36261

@sachin-ks with 1.14.1, with revision label in a work load spec, things will work as expected, if you do not use revision label, injection will not work which is also expected since your istio installed as revisioned istio, to make it work you will need the revision label, notice that enableNamespaceByDefault and revision are two different things. as far as I can see, things work as expected, please close this issue.

@litong01 as I have explained earlier, I was able to make injection work with revisioned Istio without the label in the workload spec. There is only one case where injection doesn't seem to work when enableNamespaceByDefault is enabled (which is explained in my original issue). Can you please point me to the documentation where it says that enableNamespaceByDefault will not work if Istio is revisioned?

Expected behavior from the documentation: https://istio.io/latest/docs/setup/additional-setup/sidecar-injection/#deploying-an-app
If the istio-injection label and the istio.io/rev label are both present on the same namespace, the istio-injection label will take precedence.
The injector is configured with the following logic:

If either label is disabled, the pod is not injected
If either label is enabled, the pod is injected
If neither label is set, the pod is injected if .values.sidecarInjectorWebhook.enableNamespacesByDefault is enabled. This is not enabled by default, so generally this means the pod is not injected.

@howardjohn my understanding is when revision tag is used, then all workload which wanting to be controlled by that revisioned control plane should bear the same revision tag, only under that condition, enabledNamespace config should control if injection should happen or not happen per namespace. Otherwise, we are mixed up revision with non revision.

that is why only one revision can use enableNamespacesByDefault
On Mon, Jun 27, 2022 at 12:04 PM Tong Li @.***> wrote:

@howardjohn https://github.com/howardjohn my understanding is when
revision tag is used, then all workload which wanting to be controlled by
that revisioned control plane should bear the same revision tag, only under
that condition, enabledNamespace config should control if injection should
happen or not happen per namespace. Otherwise, we are mixed up revision
with non revision.
—
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/issues/39604#issuecomment-1167765251, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXM3UZWZUUSY3QSBBX3VRH3NFANCNFSM5ZXIFTMQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

@howardjohn yes, it works if I do istioctl install -f enabledByDefault.yaml first, instead of first "disable" then "enable".

because enableNamespacesByDefault means "if there is no injection, use this revision"

I have created a draft PR, but need to test it a bit more

https://github.com/istio/istio/pull/39674

@howardjohn @cnvergence I am not so sure about this any more. I am seeing some rather weird behaviors now. Would like to do a bit more testing to figure out the behaviors, seems to me when the configmap istio-sidecar-injector policy is enabled (which is default), any other labels do not matter, injection will happen anyway regardless the value of enableNamespacesByDefault. Have you all seen something like that?

@cnvergence since you provided the fixes for the issue, would you like to take over this issue?

@sachin-ks @howardjohn @cnvergence if it is set to true, then change to false, the injection will still happen. This behavior confirms the conclusion by @cnvergence that the manifest generation uses old value instead of the latest.

@cnvergence since you provided the fixes for the issue, would you like to take over this issue?

@litong01  Alright, I will proceed with my Pull Request

Hey @sachin-ks, my changes were reverted, because of the wrong assumptions on how the default tag should work
Thanks, @Monkeyanator for the clarification on this
So if you install Istio with revision, using this file
istioctl install -f disabledByDefault.yaml
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  namespace: istio-system
  name: istiocontrolplane
spec:
  profile: minimal
  revision: 1-14-1

Then to change the default sidecar injection behaviour, you should overwrite the installed default tag with setting --auto-inject-namespaces flag:
istioctl tag set default --revision 1-14-1 --auto-inject-namespaces --overwrite
Still, I would believe it is needed to provide an option to overwrite the default tag, if it exists, when enableNamespacesByDefault: true is passed in the Helm values, WDYT?

@cnvergence, Thanks for the update!! I agree with you. The behavior seems inconsistent to me without any configuration option to overwrite. If the user enables/disables the flag enableNamespacesByDefault for the SAME revision, the expectation is, sidecar injection will work/not work for all namespaces.
@howardjohn, Sorry for bugging you for the same issue again. Please suggest the next action on this issue. Thanks in advance!

@howardjohn Can you please suggest the next action on this issue? The behavior is confusing if it stays as it is.

Just one more thing to add here, I ran istioctl tag command, as mentioned in this PR: https://github.com/istio/istio/pull/40050
And I did not find the behaviour any different. After tagging the revision as default, the sidecars are still not injected to the pods (enableNamespacesByDefault is true).
% ./istioctl tag set default --revision 1-15-0
Error: revision tag "default" already exists, and --overwrite is false

% ./istioctl tag set default --revision 1-15-0 --overwrite
Revision tag "default" created, referencing control plane revision "1-15-0". To enable injection using this

% kubectl get po -n bar
NAME                       READY   STATUS    RESTARTS   AGE
httpbin-84577d6cbc-p5hbg   1/1     Running   0          5s
sleep-5887444bd-ztk9q      1/1     Running   0          72s

% kubectl delete po -n bar httpbin-84577d6cbc-p5hbg
pod "httpbin-84577d6cbc-p5hbg" deleted

% kubectl get po -n bar
NAME                       READY   STATUS    RESTARTS   AGE
httpbin-84577d6cbc-9lhbl   1/1     Running   0          3s
sleep-5887444bd-ztk9q      1/1     Running   0          5m35s

Just one more thing to add here, I ran istioctl tag command, as mentioned in this PR: #40050 And I did not find the behaviour any different. After tagging the revision as default, the sidecars are still not injected to the pods (enableNamespacesByDefault is true).
% ./istioctl tag set default --revision 1-15-0
Error: revision tag "default" already exists, and --overwrite is false

% ./istioctl tag set default --revision 1-15-0 --overwrite
Revision tag "default" created, referencing control plane revision "1-15-0". To enable injection using this

% kubectl get po -n bar
NAME                       READY   STATUS    RESTARTS   AGE
httpbin-84577d6cbc-p5hbg   1/1     Running   0          5s
sleep-5887444bd-ztk9q      1/1     Running   0          72s

% kubectl delete po -n bar httpbin-84577d6cbc-p5hbg
pod "httpbin-84577d6cbc-p5hbg" deleted

% kubectl get po -n bar
NAME                       READY   STATUS    RESTARTS   AGE
httpbin-84577d6cbc-9lhbl   1/1     Running   0          3s
sleep-5887444bd-ztk9q      1/1     Running   0          5m35s

@sachin-ks just small remark, for istioctl tag command you need to set also --auto-inject-namespaces flag to enable sidecars by default

@cnvergence Thanks! I tried, it is working. I still believe the enableNamespacesByDefault behaviour needs to be fixed.