I am subscribing to events and receiving data I am not authorized to see

** Which Category is your question related to? **
Amplify subscriptions
** What AWS Services are you utilizing? **
Amplify, AppSync, DynamoDB
** Provide additional details e.g. code snippets **
I am wondering what's the expected behavior of a subscription generated with codegen.
If I am subscribed to onCreateSomething, and then someone else adds a record that I am not authorized to read (based on owner field). Am I supposed to still receive the event data? I could be doing something wrong, but right now all subscribed clients receive a copy of every event authorized or not. I hope this is not the expected behavior.

Hi there,
Just experiencing this security breach myself with a very simple app.
I have to add that @searchable directive is also concerned, results from searchQuery are not @auth complients
This securities breaches are for me as critical as surprising in AWS cloud, because I remember the AWS's CTO was saying that every AWS developer is at first a security engineer ... I thought it was true :(
So disappointing and looking forward for a fast and serious response.
Best regards
Lionel

@rawadrifai @licalac What does your annotated schema look like?

Hi,
Many thanks for your reply.
Mine is as follow:
type Deck @model @auth(rules: [{ allow: owner }]) {
id: ID!
name: String!
cards: [Card]! @connection(name: "DeckCards")
}
type Card @model @searchable @auth(rules: [{ allow: owner }]) {
id: ID!
question: String!
answer: String
deck: Deck! @connection(name: "DeckCards")
}
When I make a subscription OnCreateCard and then receive all new card created by whatever user.
Lionel

This behavior has been outlined in the #1043. You have the ability to fine protect subscriptions yourself but it requires custom logic. You have the option to a) turn off subscriptions via the @model(subscriptions: null) argument or b) add custom authorization logic yourself using custom resources. To do so you add a resolver to the subscription field that implements your authorization check. The resolver will be run at connect time (i.e. when you first issue the subscription query) and allows you to implement fine-grained authorization.

@kaustavghosh06 the schema can be anything, I don't think it's specific to me.
Take this for instance:
type Something @model @auth(rules: [
  { allow: owner }
]) {
  id: ID!
  owner: String
}

if I have 2 users subscribed to onCreateSomething. One of them inserts an object that the other is not allowed to see according to the auth rules. The subscribed user will get notified regardless. The event data contain the full record. I think that's a serious security concern if one wants to rely on Amplify and Transform only to do the job.
@mikeparisstuff Can you please point me to an example for locking down the subscriptions I receive to only the ones that fit the auth rules? So for example, for the example above, no one should receive a subscription event except the user that created the record.

Think if you're building a simple messaging app, DM or channels. You want to certain folks to receive a notification through AppSync when a new message is created.. not any new message, only the ones they're authorized to see. I am certain it can be done with AWS, just not certain Amplify provides that yet using Transform alone.

Can we please add a pre-alpha tag to the Amplify-CLI documentation so that people know that it is not production ready because an attacker can circumvent the @auth directive by simply subscribing to the data model and they will receive all new data objects delivered to them?
Also that this is the default implementation and there is no documentation suggesting that you should add this custom logic?

@rawadrifai You can read more about how to protect subscription fields here https://docs.aws.amazon.com/appsync/latest/devguide/security-authorization-use-cases.html. You may add custom subscription resolvers via the Amplify CLI using a custom stack within the API category.

@mikeparisstuff I've read this before. I have not put the effort into learning VTL well. This feels like a lot of friction and I'm not sure it addresses the security concerns behind this. One developer can write bad code and pushes an unfiltered subscription. This will likely drain the battery in a few minutes on the phone fairly quickly as well.
Do you mind if we reach a conclusion whether codegen subscriptions are meant to respect Auth rules?  I think they should. It's the right thing to do.

Hi @rawadrifai we’re not implying that subscriptions should not respect auth rules. Providing simple solutions while also allowing for flexibility and customization is a goal of Amplify, and as outlined in the RFC we’re still trying to get feedback from customers on what their use cases and needs are. We also prioritize based on customer feedback and interest, which is why some of the other auth features were completed first. Your feedback on the RFC with some concrete use cases will help us complete this design and move forward. We always want to provide methods for you still to accomplish tasks even if a feature in the Transformer doesn’t exist yet, which is why custom stack support was added into the API category to allow customers to side-step any situations where the underlying services support features that the CLI/transform have yet to implement. We also provide hooks to turn subscriptions off if you do not need them or do not want to implement your own fine-grained authorization logic.
Auth support for subscriptions is different than that of queries/mutations and will require further
design for us to implement in a simple & flexible manner. It would be helpful to hear more specifics about your use cases to help guide the design of @auth support on subscriptions.

@mikeparisstuff Would you consider having subscriptions disabled by default and having them as opt-in? The current situation defaults users into an insecure configuration. There may also be many tutorials around @auth in the wild that falsely give assurances and neglect to describe subscriptions as bypassing auth.
This would be a breaking change, but thats why we have semver.

Providing simple solutions while also allowing for flexibility and customization is a goal of Amplify, and as outlined in the RFC we’re still trying to get feedback from customers on what their use cases and needs are. We also prioritize based on customer feedback and interest, which is why some of the other auth features were completed first.

This isn't the absence of a feature, this is an undocumented security vulnerability in the default configuration of the Amplify framework.
If subscriptions were disabled by default and the documentation said:
"Add an @subscriptions directive to enable subscriptions.
Then, that would be a completely understandable absence of a feature. This current behavior:

Developer follows docs and adds "DiaryEntry @auth owner" to protect diary entries (wow Amplify makes auth so easy and explicit!)
Amplify framework automatically broadcasts all DiaryEntry objects to any subscriber who knows how to copy and paste code

however, is an undocumented security vulnerability in the default configuration of the framework and the lack of recognition, acknowledgment, or urgency in fixing it is startling. There shouldn't need to be community feedback to realize that this is a terrible default configuration and it shouldn't take half a year (and counting) to fix it. If there are half a year's worth of other auth features that have higher priority than this -- maybe hire more people?

Hi @ajhool
Amplify being an open source framework is driven by customer requests, and as noted we do want to add this feature but the demand wasn’t as strong as other features. It seems that you and a few others would like us to prioritize this in the coming months which we’re happy to do however getting your concrete use cases listed down would help us do the design. The default setup is fine for many customers we have worked with but we still want to provide more options here. While we do offer the capability to define custom resolvers having the option to add configuration in the @auth directive will be simpler. Could you give us:

The Use Cases and/or scenarios you’d like to support
How you might see yourself specifying this in a resolver
What actions should pass/fail when sending and receiving messages

In the meantime we’ve added a note Authorizing Subscriptions that subscriptions are unprotected by default and given a couple sample templates for you to use.

@ajhool Amplify is work in progress, and open source if we'd like to contribute.
I feel your frustration on this, let's try to give clear use cases so we get this prioritized.
@mikeparisstuff a few months .. I'll take that although I wish it could be quicker. We're planning on going live in a few months, and we're 100% aws / amplify thus far.

@mikeparisstuff here's my feedback copied from the other thread:
@mikeparisstuff here's some feedback on our use case regarding auth and subscriptions. I hope it helps. It's a pretty straight forward scenario.
Consider a slack clone. We have a message table or type. Every message is inserted with the groups and individuals that can see it (according to the auth rules). The identity claims are custom and injected pre token generation, via Cognito triggers.
When a new message is created, we hope that all the users that are authorized to read it, will get notified through an onCreateMessage subscription. The case right now is that every client that is subscribed gets the notification. Clearly that cannot scale and compromises security.
I understand there is custom work that can be done through vtl. Our suggestion is that all the groups and individuals that are authorized to read the record, would receive an event. It is what I expected the case would be before diving in.

Hi @ajhool
Amplify being an open source framework is driven by customer requests, and as noted we do want to add this feature but the demand wasn’t as strong as other features. It seems that you and a few others would like us to prioritize this in the coming months which we’re happy to do however getting your concrete use cases listed down would help us do the design. The default setup is fine for many customers we have worked with but we still want to provide more options here.

There are two separate concerns in this thread and I think they're being conflated
Concern 1: Providing fine-grained authorization capabilities for Subscription Resolvers.
I am not advocating for urgency on Concern 1. I recognize that that is a feature that many people don't need or want (although I do want it!) and that it isn't a priority for the team and I completely respect that the customer demand for that feature isn't there -- I'm not trying to cut in line to get this feature set pushed through. No worries there.
Concern 2: The massive undocumented (now slightly documented) security vulnerability in the default configuration. The vulnerability is that Amplify autogenerates Subscription resolvers by default which allow an attacker to circumvent explicit Auth rules and gain access to a stream of literally all of the data that goes through AppSync.
I am only advocating for urgency (and startled by the lack thereof) on Concern 2, which is a totally independent concern from Concern 1. Currently, the default configuration is a vulnerability. Whether Amplify is an open-source framework is irrelevant; it is controlled by AWS, promoted by AWS on the AWS website, the roadmap is privately maintained by AWS, all the repo admins are AWS employees etc., so AWS should be responsible for fixing the massive security vulnerability in the default configuration -- or expect complaints about the massive security vulnerability in the default configuration. Users can't complain about something that they aren't aware of.
The obvious, quick solution would be to make Subscription resolvers not autogenerated -- make them be opt-in in the model schema (as @RossWilliams suggested). Yes, this might cause breaking changes for some people; however, the revelation about this security vulnerability is a breaking change in mine and others' code. Documentation is the bare minimum, but an opt-in approach would fix this security vulnerability for new-comers and existing users.

The default setup is fine for many customers we have worked with but we still want to provide more options here

Concern 2 was not a documented vulnerability until today and the fix was not provided until today so I don't see how they could be okay with it. I also don't see why them being okay with a terrible security vulnerability is relevant to other users' concern about the vulnerability.
Are there other undocumented security vulnerabilities in Amplify that those customers were okay with but that haven't been made generally known?

Just hit this myself and completely agreed with @ajhool this should be documented as a bug and a massive security vulnerability, not a feature request.

@kaustavghosh06 good sign labeling this as a feature request.
Should we take this as an indication for something?
Sorry happens to be a sensitive time to pick the right tech to use.

Why have auth if by default it doesn't do anything?

@jchris see #1043 for more discussion/vulnerabilities

@mikeparisstuff do you have any update on this?

This is akin to having S3 buckets open by default. If turning off subscriptions by default isn't on your roadmap, consider using a similar approach to S3: have the CLI warn users with a red security message when subscriptions are not turned off on a model and an @auth directive exists. Have a similar warning for @subscriptions with @auth.
A project re-tweeted by dabit3 this week had left subscriptions exposed. AWS owned sample github repos show insecure @searchable usage. Real users are facing security issues. They might not be shouting about it because they don't know.

We're actively working on a design for this feature request based on some of the input that @rawadrifai has given on his use case. If you have further input on your use case to the design please can you comment on the RFC in https://github.com/aws-amplify/amplify-cli/issues/1043 so that we can incorporate it in the design.

have the CLI warn users with a red security message when subscriptions are not turned off on a model and an @auth directive exists. Have a similar warning for @subscriptions with @auth.

This is good feedback and something that we were discussing this week, potentially also showing a matrix of permissions. Full evaluation of permissions and displaying the resultant set of policy is not a simple thing to implement, but we're looking into it.
cc @kaustavghosh06

Just make everything explicit so you don't need to rely on warnings or documentations.
Developers should be forced to set auth to be PUBLIC or AUTHENTICATED or OWNER, etc. There shouldn't be default permissions and there certainly shouldn't be default PUBLIC permissions. If the developer doesn't specify an auth level, they shouldn't be able to push the schema and it should show an error that auth isn't specified.
This should be released in a cardinal semver version (eg. 3.x.x) to specify a breaking change and anybody who is relying on the current public default should need to upgrade their schema. It might seem like a breaking change for them, but IMO this was already a broken system for everybody who thought they were being protected by @auth when they weren't.

Hi @ajhool we are actively working on a design to address this request to protect subscriptions. As noted in the RFC, we have been listening to the feedback on the use cases. We do need to provide more explicit authorization controls while being mindful of usability. So, suggestions such as @RossWilliams have made are valuable, and we don’t want to dismiss them. There isn’t a single correct answer, especially when trying to provide authorization controls on request/response patterns (queries/mutations) vs. push (subscriptions). If everything is difficult to use, we have seen customers turn everything off; this is the wrong behavior, and we don’t want to encourage that either. We want to instead setup customers for success. For example, for more explicit settings such as denoting things Public and Private, we’ve been actively working on that and will be exposing this soon in the following PR: https://github.com/aws-amplify/amplify-cli/pull/1916.
These are not easy problems and we are actively spending a lot of time researching, designing, and implementing them. We are also looking at doing a version bump as you suggested.

I was also making a design suggestion...

Hello everyone - We have a version of this functionality which has been published to the following tag:
npm install -g @aws-amplify/cli@authSubRelease

In this implementation, when a model is protected using the owner auth strategy, each subscription request will require that the user is passed as an argument to the subscription request. If the user field is not passed, the subscription connection will fail. In the case where it is passed, the user will only get notified of updates to records for which they are the owner.
Alternatively, when the model is protected using the static group auth strategy, the subscription request will only succeed if the user is in an allowed group. Further, the user will only get notifications of updates to records if they are in an allowed group. Note: You don't need to pass the user as an argument in the subscription request, since the resolver will instead check the contents of your JWT token.
For example suppose you have the following schema:
type Post @model
@auth(rules: [{allow: owner}])
{
  id: ID!
  username: String
  postname: String
  content: String
}

This means that the subscription must look like the following or it will fail:
subscription onCreatePost(username: “Bob”){
  postname
  content
}

In the case of groups if you define the following:
type Post @model
@model @auth(rules: [{allow: groups, groups: ["Admin"]}]) {
{
  id: ID!
  username: String
  postname: String
  content: String
}

Then you don’t need to pass an argument, as the resolver will check the contents of your JWT token at subscription time and ensure you are in the “Admin” group.
Finally, if you use both owner and group authorization then the username argument becomes optional. This means the following:

If you don’t pass the user in, but are a member of an allowed group, the subscription will notify you of records added.
If you don’t pass the user in, but are NOT a member of an allowed group, the subscription will fail to connect.
If you pass the user in who IS the owner but is NOT a member of a group, the subscription will will notify you of records added of which you are the owner.
If you pass the user in who is NOT the owner and is NOT a member of a group, the subscription will not notify you of anything as there are no records for which you own

Dynamic groups have no impact to subscriptions, so you will not get notified of any updates to them.
Next week we will add capability that if your type doesn’t already have username the Transformer will automatically add this for you. There are also still a few edge cases with field level auth we need to validate for subscriptions, however the behavior will be that the field will return null if the field auth is not a subset of the object type auth. In the meantime please have a look at the early version published to the tag above. Our aim is to do final validations over the next few days and publish to the latest build next week.

@undefobj @mikeparisstuff This is a great start.
Please keep in mind the use case where Cognito groups do not suffice.
For example, I interject a login request to append the groups a user belongs to. I get those from Dynamo. So to check whether a user belongs in a group or not, please do so with the token not a call to Cognito. I assume this is the case right with this release.

@undefobj @mikeparisstuff This is a great start.
Please keep in mind the use case where Cognito groups do not suffice.
For example, I interject a login request to append the groups a user belongs to. I get those from Dynamo. So to check whether a user belongs in a group or not, please do so with the token not a call to Cognito. I assume this is the case with this release.

Answered in https://github.com/aws-amplify/amplify-cli/issues/1043#issuecomment-522847175

@rawadrifai cross posting from the other issue:
we have published to the tag again:
sudo npm install -g @aws-amplify/cli@authSubRelease --unsafe-perm=true

I've also just submitted a PR for the new functionality: https://github.com/aws-amplify/docs/pull/868
You should be able to use this for documentation before we merge this to latest build. We're still running final stability tests but are trying to get this out ASAP. Your testing would assist us in expediting this. Note that the custom claims for either the user identity (identityClaim) or the groups (groupClaim) are also part of this PR. While the default behavior is to protect subscriptions, customers have an explicit control now to make them public if they wish to keep previous behavior. Also we've added some automatic inspection (per @RossWilliams suggestion) to flag a warning if you're not using @auth on any @model, listing the ones that are unprotected, with information on how to learn how to add more controls. This happens before an $amplify push sends updates to the cloud allowing you to abort if you made a mistake. Finally there are protections in place if you're using per-field level @auth to protect sensitive data inside a model from being sent over subscriptions.

@undefobj
I don't understand how I can use that subscriptions now with the generated JavaScript client. How can I pass the owner to the subscription?
type Todo @model @auth(rules: [{allow: owner}]){
  id: ID!
  title: String!
  owner: String
}

this.apiService.OnCreateTodoListener.subscribe((evt) => {
      console.log("added: ", data);
});

same in react - how can you pass the owner to the subscription?

@rawadrifai @auth protection on subscriptions have now been released with a major version bump of the CLI to 2.0. The new behavior along with additions of custom claims can be found here: https://aws-amplify.github.io/docs/cli-toolchain/graphql#authorizing-subscriptions

those docs stop short of telling you how to actually pass the owner to the subscription mutation.

@Flos it depends on the platform which you are using. The link gives information on how you could use the owner argument dynamically.
"Passing in the current user can be done dynamically in your code by using Auth.currentAuthenticatedUser() in JavaScript, AWSMobileClient.default().username in iOS, or AWSMobileClient.getInstance().getUsername() in Android."
I'll go ahead and close this issue as the original question was resolved a couple months back. For any other questions on usage please open up a new issue and we can address there.


"The specified executable is not a valid application for this OS platform" on windows-latest 2023.0417.1

Description
We have a build process that involves running an executable fetched by npm, but which we launch directly. (We don't run it via npm.)
Our last successful build ran on:
Image: windows-2022
Version: 20230314.1

Running a build of the same commit now fails. The Azure DevOps source card reports that the sources are the same. As far as we can tell, the only difference is that the build agent has updated:
Image: windows-2022
Version: 20230417.1

The failure occurs when running a dotnet test step. The tests run, so the problem isn't with launching the test runner. The problem is that our tests attempt to run the Azure Functions host, which fails with this error:
  Error Message:
   System.ComponentModel.Win32Exception : An error occurred trying to start process 'C:\npm\prefix\node_modules\azure-functions-core-tools\bin\func' with working directory 'd:\a\1\s\solutions\Corvus.Testing.AzureFunctions.DemoFunction\bin\release\net6.0'. The specified executable is not a valid application for this OS platform.
  Stack Trace:
     at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
   at System.Diagnostics.Process.Start()
...

As you can see we're trying to run the func program that is included in the azure-functions-core-tools package downloaded from NPM. This has worked just fine for years, and continues to work when running locally. It's only on Azure build agents that we see this problem.
We don't believe that this Azure Functions tool has changed. The current version is 4.0.5095, which was also the current version when our last successful build ran. So the executable we're trying to launch certainly used not to cause this error.
So we're wondering if some new constraint has been created that limits launching of executables on build agents. When we run test code with dotnet test are we now not allowed to launch arbitrary executables as part of that?
Platforms affected

[X] Azure DevOps
[ ] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[ ] macOS 11
[ ] macOS 12
[ ] Windows Server 2019
[X] Windows Server 2022

Image version and build link
Image: windows-2022
Version: 20230417.1
https://dev.azure.com/endjin-labs/Corvus.Testing/_build/results?buildId=19060&view=results
Is it regression?
20230314.1
Expected behavior
We expect our test project to be be able to launch the func.exe downloaded as part of the Azure Functions Core Tools npm package.
Actual behavior
After having used this approach successfully for years, we are now seeing an error "The specified executable is not a valid application for this OS platform" when trying to launch the func.exe executable.
Repro steps
Install the Azure Functions Core tools, e.g.:
      - task: Npm@1
        displayName: 'Install Latest Azure Functions V4 Runtime'
        inputs:
          command: custom
          verbose: false
          customCommand: 'install -g azure-functions-core-tools@ --unsafe-perm true --verbose'

Run a step that executes a test that attempts to run an executable from the npm package just downloaded.
(Our repository is open source, so you can see it for yourself.)

This seems to be similar to an issue I'm currently having. I'm also using the azure function core tools in a Ubuntu pipeline to spin up an OpenAPI function and then download the swagger definition to publish later on. When func start --port 5000 is used, I just get the error back of /usr/local/lib/node_modules/azure-functions-core-tools/bin/func: 2: Syntax error: Unterminated quoted string. This was working in Ubuntu 22.04 20230409.1 images, but no longer in Ubuntu 22.04 20230417.1 and Ubuntu 20.04 20230417.1.
I notice that the PowerShell version got bumped to 7.2.11, don't know if that's related at all

I'm also seeing issues on the ubuntu-latest image for 20230417.1. 20230409.1 works fine.
Would be great if there was a way to pin runner version.

Having exact same error as @milkyware.  Does anyone know if there is a way to pin the agent back to previous version while this gets resolved?  My initial search said no. :(

We also have an issue partially similar, on both GitHub Runners and on Azure DevOps Build Agents.
The similar error output is thrown when using either func settings add or func start
Below is the info from our GitHub workflow run on func start

Current runner version: '2.303.0'
Operating System
Microsoft Windows Server 2022
10.0.20348
Datacenter
Runner Image
Image: windows-2022
Version: 20230417.1
Included Software: https://github.com/actions/runner-images/blob/win22/20230417.1/images/win/Windows2022-Readme.md
Image Release: https://github.com/actions/runner-images/releases/tag/win22%2F20230417.1
Runner Image Provisioner
<IP_ADDRESS>

    - name: Install Azure Functions Core Tools
      run: npm i -g azure-functions-core-tools@4 --unsafe-perm true
...
    - name: Start Function App
      working-directory: ${{ github.workspace }}\BuildOutput
      shell: bash
      run: func start --no-build --csharp --useHttps --verbose --cert certificate.pfx --password ${{ *** }} &

Throws an error as:
...
node:internal/child_process:413
    throw errnoException(err, 'spawn');
    ^

Error: spawn UNKNOWN
    at ChildProcess.spawn (node:internal/child_process:413:11)
    at spawn (node:child_process:757:9)
    at main (C:\npm\prefix\node_modules\azure-functions-core-tools\lib\main.js:9:22)
    at Object.<anonymous> (C:\npm\prefix\node_modules\azure-functions-core-tools\lib\main.js:18:1)
    at Module._compile (node:internal/modules/cjs/loader:1254:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1308:10)
    at Module.load (node:internal/modules/cjs/loader:1117:32)
    at Module._load (node:internal/modules/cjs/loader:958:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at node:internal/main/run_main_module:23:47 ***
  errno: -4094,
  code: 'UNKNOWN',
  syscall: 'spawn'
***

Node.js v18.16.0

@ggritco-mrsk - same here.  When I switched from ubuntu latest to windows latest - I get your error instead of the one @milkyware  is getting.

I noticed that most of the posted examples were using NPM to install azure function core tools.  We were also using that approach. I switched to using APT to install the tools (for ubuntu image) and we were able to get past this issue.  It specifically appears to be a combo of the new images (windows and ubuntu current versions) using the new image number 20230417.1 AND the npm install of the azure core functions.

I'm also seeing issues on the ubuntu-latest image for 20230417.1. 20230409.1 works fine. Specifically, python fails to find a module to import while running tests, while it should be right there, just using the standard checkout flow. Would be great if there was a way to pin runner version, I'm convinced it's this new version that's causing issues.

Having the same issue with some python jobs... A specific install job ran fine 4 days ago, using the following image version:
  Image: ubuntu-22.04
  Version: 20230409.1

Rerunning the exact same job picks up the new runner
 Image: ubuntu-22.04
 Version: 20230417.1

And then fails with
python3.8 -m pip install -t /home/runner/.cache/serverless-python-requirements/[...]_x86_64_slspyc -r /home/runner/.cache/serverless-python-requirements/[...]_x86_64_slspyc/requirements.txt --cache-dir /home/runner/.cache/serverless-python-requirements/downloadCacheslspyc

Hello @idg10 . We will take a look.

I changed installation step from using NPM to use Chocolatey. Works for us.
    - name: Install Azure Functions Core Tools
      run: choco install azure-functions-core-tools

Hi @idg10. Looks like there is a problem with the latest version of Node.
https://github.com/Azure/azure-functions-core-tools/issues/3335
You may workaround it by downgrading Node to version 18.15:
    - task: NodeTool@0
      inputs:
        versionSpec: '18.15'

Thanks @vpolikarpov-akvelon - that does seem to be the root cause of this problem, and your suggested workaround is working for me.

@idg10 Look like problem is gone, can you try your workflow without pinned node version 18.5?


Poor default values in PartialFriction

Reported by Edo.Drenth on 15 Feb 2012 13:36 UTC
In trunk, partial fritction has:
w_small=1.0e10
by default which obviously is missing a sign. In general, the small/eps default values seems quite random, from 1e-4 to 1e-10.

Migrated-From: https://trac.modelica.org/Modelica/ticket/701

Modified by dietmarw on 15 Feb 2012 15:46 UTC

Comment by hansolsson on 29 Feb 2012 10:52 UTC
This is not a bug as far I as understand.
The description of the variable says:
"Relative angular velocity near to zero if jumps due to a reinit(..) of the velocity can occur (set to low value only if such impulses can occur)"
This indicates that w_small being large is actually the normal case; and only in exceptional cases w_small should be decreased to a small value. (I believe there is more history about this; and that it was originally small and increased due to found issues.)

Comment by otter on 9 Dec 2012 16:04 UTC
w_small was introduced due to a bug report, where at zero velocity a reinit was triggered and then the friction handling logic is no longer correct. This was a hack to at least give the possibility to fix this manually for a specific model. On the other hand, introducing w_small in general gave other problems for connected friction elements. Therefore, it was decided to introduce w_small but with a large value. If the special case with reinit occurs, then the user has to set w_small to a small value.
This is of course not nice, but there is currently no better idea how to handle it (this would require to remove the hack "reinit" and introduce proper handling of Dirac impulses).
The description text of variable w_small seems to be also correct ("set to low value only if such impulses can occur").

Changelog removed by otter on 9 Dec 2012 16:04 UTC


composer build uses private repo

Steps to reproduce
1> run composer create test
2> run composer build
3> observe the output
Expected Behaviour
To use organization repo
Actual Behaviour
Uses individuals repo not organization.
Screenshot

Can you add the config file here. basically it is a dependency that are compiling. please add the config file for debuging

Sure here it is
hello_world = task(
    kind = "hello_world",
    action_name = "hello_world",
    input_arguments = [
        argument(
            name="name",
            input_type = String,
            default_value = "World"
        ),
    ],
)

workflows(
    name = "test",
    version = "0.0.1",
    tasks = [hello_world]
)

verified and closing this issue as fixed


How to check FPS ..

If you look at the specification of the onboard camera, it says 120 fps for 1280 * 720.
Actual execution is expressed as follows.
NvCameraSrc: Trying To Set Default Camera Resolution. Selected sensorModeIndex = 2 WxH = 1280x720 FrameRate = 120.000000 ....
The display shows 60 FPS as follows.
TensorRT build 836 | FP16 | 60.0 FPS
Why is 120Frame not coming out?
The above code is FPS when you capture and run ConvertRGBA only.

Either you are only getting 60fps from gstreamer, or there is VSYNC with OpenGL and the display.  How are you setting the camera to 120fps?
-------- Original message --------
From: vusdo<EMAIL_ADDRESS>Date: 9/7/17 3:43 AM (GMT-05:00)
To: dusty-nv/jetson-inference<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Subject: [dusty-nv/jetson-inference] How to check FPS .. (#137)
If you look at the specification of the onboard camera, it says 120 fps for 1280 * 720.
Actual execution is expressed as follows.
NvCameraSrc: Trying To Set Default Camera Resolution. Selected sensorModeIndex = 2 WxH = 1280x720 FrameRate = 120.000000 ....
The display shows 60 FPS as follows.
TensorRT build 836 | FP16 | 60.0 FPS
Why is 120Frame not coming out?
The above code is FPS when you capture and run ConvertRGBA only.

You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/dusty-nv/jetson-inference/issues/137, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AOpDK_mWWi-Du9GEarGyyq40eUxHqPF3ks5sf55AgaJpZM4PPaYf.

This email message is for the sole use of the intended recipient(s) and may contain
confidential information.  Any unauthorized review, use, disclosure or distribution
is prohibited.  If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.

nvcamerasrc ! video/x-raw(memory:NVMM), width=(int)1280, height=(int)720,format=(string)I420, framerate=(fraction)120/1

Using the gst-camera test app or similar, please disable openGL display.
You can do it by making the following change to gst-camera.cpp:81
--- glDisplay* display = glDisplay::Create();
+++ glDisplay* display = NULL;

This will make is so display isn't used to limit camera capture with VSYNC.
Closing this issue as FPS is displayed in the GUI title bar.


Skill - SandRush

If there is a sandstorm, double this unit's battle speed.

Obviously, this PR was not compiled before submission. https://github.com/MokhaLeee/fe8u-cskillsys-kernel/commit/e6aa711d6ba91d4eb9a523f1b010da67538ef2f0


Issues with: Create 3 CPU load, TB4 freezing/restarting, ntpd - time way of, downgrading to Galactic?

Please provide the following information:

OS: Ubuntu 22.04
ROS Distro: Humble

Expected behaviour

driving the TB4 around with the controller without freezing
start mapping or navigating without problems

Actual behaviour

From time to time the TB4 is freezing and you have to restart it (or it restarts itself). It often happens when pressing the "docking" button on the controller or when running SLAM with ros2 launch turtlebot4_navigation slam.launch.py.

To Reproduce
Provide the steps to reproduce:

updated the create 2 to VERSION: H.1.2
updated the Raspberry Pi image to Humble 1.0.0
connected a PS4 controller, because the original one does not work anymore since updating to Humble
configured the TB4 to discovery server

From now on i'm listing the current problems:

(this happened not every time) dock the TB4 with controller -> TB4 freezes -> Log message on create 3 Server 'create-platform' crashed with exit code 134.
(very often) CPU usage of the Create 3 close to 100% and because of this the robot freezes during SLAM or navigating
In the create 3 Logs all over the place is the message: [INFO] (src/gateway_pinger.c:113) wifi is disconnected
the time on the robot is way of, i tried restarting the ntpd with the create 3 beta features but it won't work. There is the following in the Log:

May 24 15:25:47 iRobot-9F44E8C9A8FE4225B49E96444FA8A979 user.notice ntpd: ntpd: bad address '0.irobot.pool.ntp.org'
May 24 15:25:47 iRobot-9F44E8C9A8FE4225B49E96444FA8A979 user.notice ntpd: ntpd: timed out waiting for <IP_ADDRESS>, reach 0x00, next query in 32s

I had the problems also before i switched to discovery server. There i had another log message telling something like 'time way of, ignoring ...' don't remember it clearly, because the Logs are cleared.
Other notes
I am on a relatively tight schedule due to a university project and need to get ahead. Would it be an option to switch back to Galactic? Have there been the same problems?
I am glad about any help.

Hi may i ask in which kind of project ure using it ? Im also currently on a Project for my university and struggeling as well with Humble, if u wanna hit me up on DC so we can help each other - FeelsDankMan#5663

@tschinfra @Cur1ousKea
I have the same issue and I am waiting for the update from create3 base which will solve the issue with the CPU and RAM maxing out.

@ipa-rar so i guess till then the best option is to downgrade to galactic to get going... I just can not wait much longer :/
Or would you suggest something else?

@tschinfra The 100% CPU issues are related to Humble and are being tracked here. Switching back to Galactic is an option if you are on a tight schedule. You will have to update the Create 3 to the latest firmware, and flash the RPi4 SD card with the 0.1.3 image. Instructions are available here.

@tschinfra, did downgrade to galactic solved 100% CPU utilization ?

This issue is being closed due to inactivity. If you are still experiencing the issue, feel free to reopen this ticket when you are ready to continue the troubleshooting process.


Announcing WebView2 in WinUI2.7 pre-release

Announcing the the release of WebView2 in the pre-release version of WinUI2.7
Many of you in the community requested that we make WebView2 available in UWP apps for your PC -based scenarios. We have heard your request. We are introducing WebView2 in the pre-release of WinUI2.7 today.
Functionality-wise, there isn’t any change from the WebView2 API spec  that you may have reviewed last year when WebView2 was released in a very early preview of WinUI3.
Installation information
For installation information and known issues see here
What's next?
We will be working on addressing the issues/bugs you file and getting WebView2 ready for release in upcoming stable(non-pre-release)versions of WinUI2.x

@jevansa @predavid It looks like cppwinrt apps hit an issue when using the new nuget: #5793

It's great to hear that WebView2 makes it to WinUI2. I am just starting to see growing need for it in my apps.
Unfortunately, submitting an app using the 2.7 preview fails in the Store certification:
API GetCurrentProcessExplicitAppUserModelID in shell32.dll is not supported for this application type. Microsoft.Web.WebView2.Core.dll calls this API.
API GetFileVersionInfoSizeW in version.dll is not supported for this application type. Microsoft.Web.WebView2.Core.dll calls this API.
API GetCurrentProcessExplicitAppUserModelID in shell32.dll is not supported for this application type. WebView2Loader.dll calls this API.
API GetFileVersionInfoSizeW in version.dll is not supported for this application type. WebView2Loader.dll calls this API.

Let me know if I should open a separate issue for this.

And now you removed it.

Would this backport enable us to use Mica Material in WebView apps? We started our project with WinUI 3 and are now stuck until Mica Material is supported in WinUI 3. Its super frustrating since our app design i built around Mica.


Nix: fix macOS install by using 'yes'

Nix 1.11.12 was released that uses interactive mode for macOS, so this commit fixes that.
I haven't tested this change, so if @BanzaiMan can deploy it to staging I'm happy to give it a spin.
cc @garbas @matthewbauer

This has been deployed to staging.

Waiting on https://staging.travis-ci.org/hercules-ci/hercules/jobs/602517

@BanzaiMan ready for another try.

e187000 has been deployed to staging.

@BanzaiMan sorry, another fix :)

0267c32 has been deployed to staging.

Looks good as a short term fix.
Long term, though, can we maybe get some args for the install script like "--noninteractive" and "--quiet"? That's a lot of extra data for the log that is pretty much unneeded.
https://github.com/NixOS/nix/pull/1453#issuecomment-315225451

@BanzaiMan I pushed another fix, can you redeploy? Thanks!

@domenkozar 9ba6ea5 has been deployed to staging.

@BanzaiMan thanks, that caught another problem with sed on macOS. Hopefully last time now.

cb87a62 has been deployed to staging.

@BanzaiMan new round of fixes were needed.

879f5aa has been deployed to staging.

@BanzaiMan are you sure it is? https://staging.travis-ci.org/hercules-ci/hercules/jobs/602970#L513 doesn't show the sudo call I've added

Oops! Sorry. I did so now.

 No worries. f4505fb has been deployed to staging.

Please fix the specs, though. :-)

@BanzaiMan what do you mean by specs? :) I pushed another fix :)

Ah. The build failure was spurious. I pushed 3eeedde to staging.

@BanzaiMan it works! :) https://staging.travis-ci.org/hercules-ci/hercules/builds/602969
Can you deploy this to prod?


Fix cmds that were broken

fixed and tested locally.

no idea why codecov complains about p2p/server.go


bug-fix/internal-issue-#609

Big redesign of ArangoSearch recovery is intended to drastically simplify the code, improve maintainability and speedup the recovery. The approach is generic and may be reused in other cases where synchronization of storage engine and 3rd-party source on per transaction basis is required.

seems to be related
https://github.com/arangodb/backlog/issues/552

https://github.com/arangodb/backlog/issues/609

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/5265/

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/5298/

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/5304/


Application crashes when clicking sorting by name twice on a plain drive (no subfolder)

This is regarding issue #2775

@heistema thanks for this PR

That's because "TrimEnd(..)" returns null if not successful

Are you sure about this? Doesn't seem to happen in my testing, is this something you noticed happening (if so with which string for example?) or is it something from the documentation? (we use TrimEnd() in other places, this is omething important to confirm)

@heistema sadly the fix is not enough, the app also crashes when the path starts with a backslash (network share, phone storage)
So it's necesasry something like the following:
if (App.AppSettings.AreLayoutPreferencesPerFolder)
{
	if (!WriteLayoutPreferencesToAds(folderPath.TrimEnd('\\'), prefs)) ---> must use TrimEnd() here
	{
		WriteLayoutPreferencesToSettings(folderPath.Replace('\\', '_'), prefs); ---> replace all backslashed to underscore
	}
}

I also found other issues, especially concerning drives... They might be connected as well. I am currently unable to answer further on the issue (no tech except mobile phone). But I really would like to tomorrow
Holen Sie sich Outlook für Androidhttps://aka.ms/ghei36

From: Marco Gavelli<EMAIL_ADDRESS>Sent: Thursday, December 31, 2020 5:21:18 PM
To: files-community/Files<EMAIL_ADDRESS>Cc: Stefan Heitmann<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [files-community/Files] Application crashes when clicking sorting by name twice on a plain drive (no subfolder) (#2777)
@heistemahttps://github.com/heistema sadly the fix is not enough, the app also crashes when the path starts with a backslash (network share, phone storage)
So it's necesasry something like the following:
if (App.AppSettings.AreLayoutPreferencesPerFolder)
{
if (!WriteLayoutPreferencesToAds(folderPath.TrimEnd('\'), prefs)) ---> must use TrimEnd() here
{
WriteLayoutPreferencesToSettings(folderPath.Replace('\', '_'), prefs); ---> replace all backslashed to underscore
}
}
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/files-community/Files/pull/2777#issuecomment-752998394, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ASIVY2HVVR2I2Z5PQ4LLAQ3SXSQH5ANCNFSM4VOYU75Q.

I posted an other issue which also seems to be path related. The question is shall I correct this bug by making it as suggested by gave92 or shall I introduce a new class like PathSanitizer where all our paths have to run through?
The latter might also be a fix for #2814 .
I will also give TrimEnd another try maybe gave92 was right with his first suggestion...

I posted an other issue which also seems to be path related. The question is shall I correct this bug by making it as suggested by gave92 or shall I introduce a new class like PathSanitizer where all our paths have to run through?
The latter might also be a fix for #2814 .
I will also give TrimEnd another try maybe gave92 was right with his first suggestion...

@heistema Looking at #2814, I'd still suggest the above approach which will (should) fix both #2775 and #2814:
In GetLayoutPreferencesForPath:
if (App.AppSettings.AreLayoutPreferencesPerFolder)
{
    var layoutPrefs = ReadLayoutPreferencesFromAds(folderPath.TrimEnd('\\')); ---> must use TrimEnd() here as it needs a valid filepath
    return layoutPrefs ?? ReadLayoutPreferencesFromSettings(folderPath.Replace('\\', '_')); ---> replace all backslashes to underscore
}

In `UpdateLayoutPreferencesForPath`:
```cs
if (App.AppSettings.AreLayoutPreferencesPerFolder)
{
    if (!WriteLayoutPreferencesToAds(folderPath.TrimEnd('\\'), prefs)) ---> must use TrimEnd() here as it needs a valid filepath
    {
        WriteLayoutPreferencesToSettings(folderPath.Replace('\\', '_'), prefs); ---> replace all backslashes to underscore
    }
}

@heistema Looking at #2814, I'd still suggest the above approach which will (should) fix both #2775 and #2814:
In GetLayoutPreferencesForPath:
if (App.AppSettings.AreLayoutPreferencesPerFolder)
{
    var layoutPrefs = ReadLayoutPreferencesFromAds(folderPath.TrimEnd('\\')); ---> must use TrimEnd() here as it needs a valid filepath
    return layoutPrefs ?? ReadLayoutPreferencesFromSettings(folderPath.Replace('\\', '_')); ---> replace all backslashes to underscore
}

In `UpdateLayoutPreferencesForPath`:
```cs
if (App.AppSettings.AreLayoutPreferencesPerFolder)
{
    if (!WriteLayoutPreferencesToAds(folderPath.TrimEnd('\\'), prefs)) ---> must use TrimEnd() here as it needs a valid filepath
    {
        WriteLayoutPreferencesToSettings(folderPath.Replace('\\', '_'), prefs); ---> replace all backslashes to underscore
    }
}

You're right. I updated the solution in my repository... It should be attached to this PR?!

You're right. I updated the solution in my repository... It should be attached to this PR?!

@heistema looks good 👍
Can you remove the TrimEnd from here? With this changes it's not needed anymore.
Then we're ready to merge this.

@heistema looks good 👍
Can you remove the TrimEnd from here? With this changes it's not needed anymore.
Then we're ready to merge this.

@gave92 And it's done...

@gave92 And it's done...


Verify newly spawned cars are visible to all players

It seems that when Host spawns them via Work Train, they are visible to others, but when client spawns them via Spawn option, they are only visible to that client (and non-functional, micro shanter was not moving and always saying "TR offline" even when everything was turned on) and they disappear on reconnect.

It seems that when Host spawns them via Work Train, they are visible to others, but when client spawns them via Spawn option, they are only visible to that client (and non-functional, micro shanter was not moving and always saying "TR offline" even when everything was turned on) and they disappear on reconnect.

This part hasn't been implemented yet. Currently it's a medium priority feature.


Starting a stopped 3bot results in error.

Starting a stopped 3bot results in error:

Testnet - 3bot name: jetsetter.

verified, starting a stopped 3bot succeeds

verified, starting a stopped 3bot succeeds


Adding software requirements properties

What is the motivation for your change request?
Software might have minimal requirements (processor, memory, free space, dependencies - tomcat, java, RDBMS, OS, etc.)
Describe the solution you'd like
A couple of string properties for defining different types of requirements

From https://wiki.lyrasis.org/display/VIVO/2024-09-18+Ontology+Interest+Group+Call:
Decision: the requirements for software like certain OS, required hardware etc. are not relevant for software as a research output or as a tool being described in a RIS. Therefore it is deemed out of scope
@chenejac Can this issue be closed?


[WIP][DONOTMERGE][Runner] Allow multiple assemblies to be run at once.

I've been using this locally to be able to use OpenCover on the unit tests.

Found a smarter way to do it in opencover.


Path variable "%20"

seriesCategory endpoint url contains a space for certain categories, but I need the space present in the seriesCategory column for the data to display on the model, but it needs to be removed in the url

Similar issue with category 911/911s and 928 GT/GTS. Since the categories are path variables, when a category is clicked into, the URL is reading it as "http://localhost:8080/series/911/911/911S" which is technically correct, but its seeing 911 and 911s as two endpoints rather than one.


Crash during Vulkan replay in push descriptor replay

RenderDoc nightly (11/19) crashes during replay of the capture below, taken from https://github.com/zeux/niagara master on RTX 2080 with drawCount = 1000:
rdoccrash.rdc.zip
The crash can be reproduced as follows:

Open the capture
Click on the "Colour pass 2" without expanding any commands

The crash happens with the following callstack:
>	renderdoc.dll!VulkanRenderState::BindDescriptorSet(const DescSetLayout & descLayout, VkCommandBuffer_T * cmd, VkPipelineLayout_T * layout, VkPipelineBindPoint bindPoint, unsigned int setIndex, unsigned int * dynamicOffsets) Line 447	C++
 	renderdoc.dll!VulkanRenderState::BindPipeline(VkCommandBuffer_T * cmd, VulkanRenderState::PipelineBinding binding, bool subpass0) Line 367	C++
 	renderdoc.dll!WrappedVulkan::ReplayLog(unsigned int startEventID, unsigned int endEventID, ReplayLogType replayType) Line 2931	C++
 	renderdoc.dll!VulkanReplay::ReplayLog(unsigned int endEventID, ReplayLogType replayType) Line 99	C++
 	renderdoc.dll!ReplayController::SetFrameEvent(unsigned int eventId, bool force) Line 223	C++
 	qrenderdoc.exe!CaptureContext::SetEventID::__l2::<lambda>(IReplayController * r) Line 1370	C++

descLayout.bindings.size() has 6 elements, but setInfo.currentBindings only has 3; therefore the following line:
      DescriptorSetSlot *slots = setInfo.currentBindings[b];

Performs an out-of-bounds read, slots ends up as nullptr and the following access to slots crashes:
          dst[a] = slots[a].bufferInfo;

It looks like setInfo.currentBindings corresponds to the push descriptor setup for the indirect draw call (3 input buffers), and descLayout.bindings corresponds to the push descriptor setup for the preceding compute dispatch (5 input buffers and 1 input sampler).

Fixed - I should have been tracking push descriptors separately for compute/graphics but I wasn't. This lead to the graphics bind trampling the compute bind but getting confused because the layouts were still separate.


Build on Centos 8 and RHEL 8 creates broken binaries

For some weird reason, binaries are being built in RHEL8 or Centos 8 are broken in a pretty bad way.
This snippet will return Segmentation fault      (core dumped) ./bin/enroot-mount as a last line
git clone https://github.com/NVIDIA/enroot
docker run -it --rm --name cos8 -v $(pwd)/enroot:/w -w /w centos:8 /bin/bash -c 'yum install git make rpm-build gcc libtool -y && make clean && make ; ./bin/enroot-mount'

If the image is centos:7 then binaries in ./bin are pretty healthy

Can you check if it's the same issue as we've seen for ppc64? Namely static PIE seems to be broken on rhel8

I removed -fPIE and replaced -static-pie with just -static, but for some reason musl-gcc still builds binaries with -static-pie:
/w/deps/dist/musl/bin/musl-gcc -std=c99 -O2 -fstack-protector -pedantic -Wall -Wextra -Wcast-align -Wpointer-arith -Wmissing-prototypes -Wnonnull -Wwrite-strings -Wlogical-op -Wformat=2 -Wmissing-format-attribute -Winit-self -Wshadow -Wstrict-prototypes -Wunreachable-code -Wconversion -Wsign-conversion  -s -D_FORTIFY_SOURCE=2 -isystem /w/deps/dist/libbsd/include/bsd -DLIBBSD_OVERLAY  -Wl,-zrelro -Wl,-znow -Wl,-zdefs -Wl,--as-needed -Wl,--gc-sections -L/w/deps/dist/libbsd/lib  -pie -static-pie  bin/enroot-mount.c  -lbsd -o bin/enroot-mount


[otbn] pseudo instructions in loop bodies

How do we want to handle pseudo instructions within loop bodies?
The issue here is that a pseudo instruction can be replaced by more than one machine instruction. Especially with li this is tricky, since here it depends on the immediate whether this will result in a sequence of 1 or 2 instructions.
At the end, the loop length immediate of the loop and loopi machine instruction has to match the count of machine (not pseudo) instructions.
Long term we also want to have pseudo instructions for loop and loopi. Then this issue is solved (when they are used).
But independent from that (as long as pseudo instr. for loop/loopi are not there, or later if they are not used), do we want to allow pseudo instructions in loop bodies? And if so, should the assembler automatically adjust the loop length immediate or does the author of assembly have to be aware of the number of resulting machine instructions?

I'd suggest the "easy" option: don't use li in a loop body (at least until we have a magic pseudo-instruction for loop / loopi), and definitely don't mandate it in any style guide.


Make Nginx IPv6 binding optional

In my infrastructure we use templates in order to create VMs. In these templates we disable IPv6 by choice.
I tried to installe Zulip 3.1 on a fresh Ubuntu 20.04 without IPv6, however I encountered problems because the configuraton file for Zulip expects IPv6 to be enabled.
Nginx fails to start making it an unresolved depedency for the rest of the install.
All the steps linked to Nginx are marked as skipped.
It would be nice to have an option with the installer to enable or not IPv6 in the configuration files.

Can you elaborate on how you disabled IPv6 and why? It sounds like you may have disabled the IPv6 stack entirely when you only want to disable IPv6 communication with the outside. The former will break various things; for better or worse, it is 2020. For the latter, you can create /etc/netplan/99-no-ipv6.yaml with e.g.
network:
  ethernets:
    eth0:
      accept-ra: false
      link-local: []

I think I completely disable the IPv6 stack. To do so I modify the following file /etc/default/grub and add the following parameter: GRUB_CMDLINE_LINUX="ipv6.disable=1".
We don't need IPv6 at all and we would like to no have it configured.

Well, if you want to run an unusual configuration, you have to recognize that it will break assumptions that some software relies on. Zulip expects to have the system to itself and to have it configured in certain ways. Without a convincing use case, it’s hard to justify the development, maintenance, and testing work that would be required to support extra options. So if you have no particular need to disable IPv6 entirely, we recommend you leave it enabled and use a configuration like the one I described above to disable acquiring IPv6 addresses.


cannot use it with livolo remote rf switch

It learns rf remote button, but cannot replay command.
When i use IR remote, everything is fine.
Does it support RF at all?

Yes, tested and working fine on many RF switched and plugs. Can you see the activity led on RM flashing when you sending your commands?

yes, it's looks like code is received partial or something like that. becase when i replay recorded signal 20 or 30 times, it works and my lights are on, then i need 20 or 30 times again.
at the same time stock broadlink application learns code well and turns on/off from first try.

What I found when learned my switches, that's is better to do like "short click" on remote's button. Otherwise it sending very long command that probably harder to save or recall after..

When I learned my Livolo remotes, I usually learned 10 times each button and stored those codes to try each one and see what was the best one...
Another alternative is loading a cloud livolo remote (there are plenty of them on the add remote search button top right) and use the method described at the end of documentation on broadlink switch section on HA website.
That way you step over the learning part and use your E-Control database to create the base64 codes for HA...
https://home-assistant.io/components/switch.broadlink/

yes, i finished by downloading template from cloud to iphone, download app database over openssh(my iphone is jailbroken) and extracting command from there. still, i'm not happy about this :) proper solution will be in generating remotes code, not sniffing it.

You're not sniffing them, you're learning the rf codes and replaying them later. There's a lot of them, very different and very custom.


Zuta Daniel Narh Module 2

WS2_M2E2_Submission.docx

Well done, Zuta. You clearly grasped the material outlined in Module 2 and successfully applied it to these exercises. Thank you for your participation! Please be sure to fill out the post-Module survey before you begin the next Module.


Corrected heading for project editor (Issue #101)

This looks great, @meltourn ! Thank you for your contribution. Do you mind bumping the version before I merge the PR? The current version is 0.2-dev.2, can you bump it to 0.2-dev.3? You'll find it on line 6 of Caf.Midden.Wasm/Caf.Midden.Wasm.csprojc. Thanks!!


AddConsult and Event features added

Do not merge yet please! Waiting for all user docs to be done.

LGTM


vanilla watermark define or something idk

back with another pull request that doesn’t actually have a point

bruh


Grant bonus starting stats based on Order

Use the same stat bonuses that we use for item suffixes

I like this - but I worry it will be tricky to balance. Or we can just yolo it right now for v1 and do something quick


Automating Canny Threshold parameter tuning

using the median value of pixel intensities to do automatic canny threshold parameter tuning
making the code universal, easy to use for any game

Have tested it on GTA San Andreas


Sabayon Linux: GUI doesn't start (Unit keybase.gui.service not found)

When attempting to run_keybase on Sabayon Linux (Gentoo-based), I get the following output:
Unmounting and shutting down kbfsfuse...
Shutting down keybase service...
Starting via systemd...
Failed to restart keybase.gui.service: Unit keybase.gui.service not found.
Failed to launch GUI. Pass -g to prevent startup if on a machine without a graphical display.
run_keybase: Success!

Here's the output of keybase status:
Logged in:     yes

Device:
    name:      Stillstorm-Sabayon
    ID:        86f3354be301c540df1d4c76d5fc9518
    status:    active

Session:
    is valid:  yes
    keys:      unlocked

Key status:
    stream:    not cached
    secret:    stored
    dev sig:   cached
    dev enc:   cached
    paper sig: not cached
    paper enc: not cached
    prompt:    show
    tsec:      not cached

KBFS:
    status:    running
    version:   1.0.2
    installed: 1.0.2
    log:       /home/halian/.cache/keybase/keybase.kbfs.log
    mount:     /run/user/1000/keybase/kbfs

Service:
    status:    running
    version:   5.1.1
    log:       /home/halian/.cache/keybase/keybase.service.log
    eklog:     /home/halian/.cache/keybase/keybase.ek.log

Updater:
    log:       /home/halian/.cache/keybase/keybase.updater.log

Platform Information:
    OS:        linux
    OS vers:   Linux 4.20.0-sabayon x86_64-"Sabayon Linux amd64 20.03"
    Runtime:   go1.12.17
    Arch:      amd64

Client:
    version:   5.1.1

Desktop app:
    status:    not running
    version:
    log:       /home/halian/.cache/keybase/Keybase.app.log

Config path:   /home/halian/.config/keybase/config.json
Default user:  halian
Other users:   halian
Configured accounts:
    halian (current, logged in)
Known DeviceEKs:
    deviceEphemeralKey-halian-1-1.ek
LocalDbStats:
Compactions
 Level |   Tables   |    Size(MB)   |    Time(sec)  |    Read(MB)   |   Write(MB)
-------+------------+---------------+---------------+---------------+---------------
   1   |         13 |      91.93593 |       0.42045 |      95.32524 |      93.30474
   2   |        128 |     663.99391 |       0.51270 |      72.26206 |      71.00473
-------+------------+---------------+---------------+---------------+---------------
 Total |        141 |     755.92984 |       0.93316 |     167.58729 |     164.30947

levelDbCleaner{cacheSize: 45915, lastRun: 2020-04-19 19:40:32.205008546 -0400 EDT m=-3239.983229463, lastKey: [], running: false}
DbCleanerConfig{MaxSize: 2.1GB, HaltSize: 1.6GB, CleanInterval: 1h0m0s, CacheCapacity: 100000, MinCacheSize: 10000, SleepInterval: 50ms}

LocalChatDbStats:
Compactions
 Level |   Tables   |    Size(MB)   |    Time(sec)  |    Read(MB)   |   Write(MB)
-------+------------+---------------+---------------+---------------+---------------
   0   |          2 |       7.37305 |       0.06841 |       0.00000 |       7.37305
   1   |          9 |      90.78957 |       0.33547 |      59.47697 |      50.51146
-------+------------+---------------+---------------+---------------+---------------
 Total |         11 |      98.16263 |       0.40387 |      59.47697 |      57.88452

levelDbCleaner{cacheSize: 212, lastRun: 2020-04-19 19:40:32.206661381 -0400 EDT m=-3239.981576619, lastKey: [], running: false}
DbCleanerConfig{MaxSize: 2.1GB, HaltSize: 1.6GB, CleanInterval: 1h0m0s, CacheCapacity: 100000, MinCacheSize: 10000, SleepInterval: 50ms}

LocalBlockCacheDbStats:

LocalSyncCacheDbStats:

CacheDirSizeInfo:
/home/halian/.cache/keybase: 404MB, (0 files)

command-line client:
    keybase status [cid: 4, pid: 10978, version: 5.1.1]

KBFS:
    /usr/bin/kbfsfuse -debug -log-to-file [cid: 2, pid: 10289, version: 1.0.2]
    Notification subscriptions: Session, Favorites, Paperkeys, Keyfamily, Service, Kbfsrequest, Reachability, Team, Chatkbfsedits

I have also run keybase log send with log ID 6f2c2ad75fe9de590f623f1c.

How did you install Keybase?

If you installed it from the Gentoo packages, it looks like it doesn't include the GUI (https://packages.gentoo.org/packages/app-crypt/keybase). Additionally, KBFS is pointing at a outdated repo; it was moved into this one (https://gitweb.gentoo.org/repo/gentoo.git/tree/app-crypt/kbfs/kbfs-9999.ebuild).
You may want to leave a comment at https://bugs.gentoo.org/show_bug.cgi?id=673832.

How did you install Keybase?
sudo equo i app-crypt/keybase app-crypt/kbfs


add interpolation of template variables

Thanks for the PR, much appreciated :).

Just a note, I'm going to separate the two changes.
I'll release interpolation support in version 1.1 .
But the multi ami-ids / multi regions support will go to 2.0 later on since it changes the behaviour of this post processor.
I think the guts of the second change is to handle multi builds, I'll modify your PR a bit to add more flexibility to the output. There are users who do not wish to use region as the output key, others wish to use other field as key like AMI name.


_check method content is written and test is passing for the same, request you to verify and approve the same.

Delete me and write your Pull Request message here!

Thanks for the submission, @sureshjsweb.
As mentioned in the contributing guidelines, I can only accept a pull request made to your branch. This behavior deviates from most projects (where a pull request to the master branch may be expected) in order to replicate this experience for multiple people.
Click here to open this pull request to your branch


when a mob finishes its attack animation and it fails to attack something, the next time it gets the opportunity to attack it wont play the attack animation

this has been an issue for a while, and now that there's a brand new attacker in town with a pretty long attack animation (3 seconds) this will become more of a problem. this has to be fixed asap

fixed ig


Alignment issues in Argo graph

This issue is not specific to Litmus-UI and must be addressed in Litmus.

@mallick370
Addressed here https://github.com/litmuschaos/litmus/pull/2722


FALCON-2187 Refactoring to move entity xsd and jxb bindings to a new nmodule

+1 for the changes. This might need some changes to falcon-regression. Please raise a JIRA for the same.

Created the jira : https://issues.apache.org/jira/browse/FALCON-2192


Image Thumbnail Slider- Alt Text and Tooltip are Missing

Hi Team,
I have noticed that for the image thumbnail slider Alt text and the tooltip hover are missing. Please look into the below and do the needful.

This issue is fixed. Please make sure to author Alt text in the respective word document.  Screenshot for reference.

Hi @Kummu007  Looks like this issue is fixed by @RAJSEKHARMANUBALLA . Please validate and close

Image alt can be given from doc itself

This is working as expected.


Added missing content-disposition header

Added missing content-disposition header in HttpHeaders interface and added it in responseHeaders constant list

[x] I’ve reviewed the contributor guide and applied the relevant portions to this PR.

Contribution guidelines:

See our contributor guide for general expectations for PRs.
Larger or significant changes should be discussed in an issue before creating a PR.
Contributions to our repos should follow the Dart style guide and use dart format.

Note that this repository uses Gerrit for code reviews. Your pull request will be automatically converted into a Gerrit CL and a link to the CL written into this PR. The review will happen on Gerrit but you can also push additional commits to this PR to update the code review.

No opinion here. Don't know enough HTTP to say what's important.

Well, then I CR+1 it. Thanks for the contribution @necessarylion.


feature: support username password auth

Thank you for your contribution to Go-AutoRest! We will triage and review it as soon as we can.
As part of submitting, please make sure you can make the following assertions:

[x] I've tested my changes, adding unit tests if applicable.
[x] I've added Apache 2.0 Headers to the top of any new source files.
[x] I'm submitting this PR to the dev branch, except in the case of urgent bug fixes warranting their own release.
[x] If I'm targeting master, I've updated CHANGELOG.md to address the changes I'm making.

 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.:x: halfcrazy sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@jhendrixMSFT PTAL

Oh, I forgot to note in my review, because this is targeting the master branch, this file should be updated. https://github.com/Azure/go-autorest/blob/master/CHANGELOG.md

Chatted with @vladbarosan offline, we decided on a slightly different strategy. We've got some other changes that aren't currently associated with a release tag, so we'll be submitting our own PR with the updated CHANGELOG.

Addresses: https://github.com/Azure/go-autorest/issues/203


To Do's

Here are the features that I plan to add to the library:

[ ] Manga info class
[ ] Anime tracker
[ ] Faster processing
[x] Typehinting
[ ] Building cache

Nice waiting for manga info

Hey can you add more parameter like source and score in anime search


Use ITS-90 C2 and C1 constant for CCT

We should use the recommended C2 constant for CCT as recommended in ITS-90. The difference is simply that the constant is rounded to 6 places and affects values slightly.

Well, this is a weird issue, apparently, all the Window's builds are off by 2e-12 for a single test. It's clearly specific to the Windows and/or the Python version on Windows. There's nothing wrong that we are doing. I guess will have to test if it is close

@gir-bot lgtm


Review aws-lambda-redshift-loader for code style and repo structure tips

https://github.com/awslabs/aws-lambda-redshift-loader

cleaned up folder structure and removed most bash scripts and python scripts


quic: fix Server's Preferred Address tests to when envoy.reloadable_features.quic_send_server_preferred_address_to_all_clients is false

Those tests were accidentally changed pass only if that runtime guard is true.
Risk Level: low
Testing: fixing tests
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A

I don't understand; this flag isn't ever false in these tests, so it seems like this is dead code.

No, they are not dead code. Before this flag is introduced, these tests would make the client to send the connection option kSPAD to signal its support of SPA. This logic is accidentally removed when the flag is introduced, so these tests will fail when the flag is false.

so these tests will fail when the flag is false

But the flag is never false in these tests. Otherwise, they'd be failing in CI everytime.

so these tests will fail when the flag is false

But the flag is never false in these tests. Otherwise, they'd be failing in CI everytime.

The issue is that we flipped the flag internally and these tests were not happy.

so these tests will fail when the flag is false

But the flag is never false in these tests. Otherwise, they'd be failing in CI everytime.

The issue is that we flipped the flag internally and these tests were not happy.

I think all tests should be written in a way that is robust to random flag flips.

/retest

I think all tests should be written in a way that is robust to random flag flips.

Most/all of the envoy tests are written to assume the default value for the flags (or the test explicitly flips the flag to test the opposite case); I don't think anything like this has been done before.

I think all tests should be written in a way that is robust to random flag flips.

Most/all of the envoy tests are written to assume the default value for the flags (or the test explicitly flips the flag to test the opposite case); I don't think anything like this has been done before.

@alyssawilk who originally implemented runtime guard. If tests only work for default values, it will be hard time to turn off the flags when issues are reported with the flag.

/retest

/retest


is_action_released triggers both left and right on gamepad

Godot version
4.01
System information
Windows 10
Issue description
The problem is specifically with event.is_action_released in a _input function.
I mapped 2 actions, for left and right, and set the controller properly for both.
When I press Right or Left on the joy stick, it triggers both in the code; where the debug output shows "test" the moment I move the joy stick. It doesn't wait until I release the joy stick, the line where it adds the two variables always returns 2.
Steps to reproduce
In the Input Map tab, set the following:
move_left
joypad Axis 0 - (Left Stick Left, joystick 0 Left) - All Devices
move_right
joypad Axis 0 + (Left Stick Right, joystick 0 Right) - All Devices
Create a new scene and attach a new script and add the following:
extends Node3D

var test1:= 0
var test2:= 0

func _input(event):
	if test1 == 0 and event.is_action_released("move_left"):
		test1 = 1
	if test2 == 0 and event.is_action_released("move_right"):
		test2 = 1
	if (test1 + test2) == 2:
		print_debug("test")

Minimal reproduction project
TestProject.zip

I forgot to mention it's not a issue with key presses.

I did another code test with the following:
func _input(event):
	if event.is_action_released("move_left") and !event.is_action_pressed("move_right"):
		test1 = 1
		print_debug("test")
	if event.is_action_released("move_right") and !event.is_action_pressed("move_left"):
		test2 = 1
		print_debug("test2")
	if (test1 + test2) == 2:
		print_debug("test3")

One would think this would work, but instead I get weird behavior:
test
test2
test3

The function is_action_released returns true as long as it is not pressed/active, not the moment when it is released

I suspect this might fire when it passes the deadzone, if you want it to be more exact you would need Input.is_action_just_released

Also it works if you reset test1 and test2, they remain set permanently otherwise

You need is_action_pressed("move_*", true) to make it check that it's the correct direction, i.e. exact match

But I'm not sure what you are trying to achieve here, it doesn't look like any helpful approach?

Hi @RichardR01 ,
What's important to remember about controller inputs is that the "deadzone" of a controller is considered released for both the positive and negative directions. Additionally, the "move_left" and "move_right" actions can both be "true" on the same InputEventAction, since they're essentially the the same axis with inverted behavior!
So to break your code down step-by-step:
extends Node3D

var test1:= 0
var test2:= 0

func _input(event):
        # Extra assert to prove a point: Axis 'move_left' and 'move_right' are both true at the same time! So...
        assert(event.is_action("move_left") == event.is_action("move_right"))

        # Suppose you moved your controller x axis from value 0.0 to 0.1, below a deadzone of 0.5 ...

        # "move_left"  is tracking the negative value. Since we're moving in the positive direction, obviously it will be considered released...
	if test1 == 0 and event.is_action_released("move_left"):
		test1 = 1 # SET
        # "move_right" is tracking positive value, however it won't be true since it's less than the deadzone...
	if test2 == 0 and event.is_action_released("move_right"):
		test2 = 1 # OK

	if (test1 + test2) == 2: # Hence we clear this check!
		print_debug("test")

So I think the problem is that you are mixing InputActionEvent.is_action_pressed/released which reports the state of the action whenever the state changes (think whenever the stick value changes) with Input.is_action_just_pressed/released which will effectively only be true on the single frame where the input state of an action has changed.
So if you only want to trigger on just release, as in just when the stick passes the deadzone, I would recommend only checking for release after previously receiving a "pressed" state for one of the axis directions. Alternatively, you could use the Input.is_action_just_released call but make sure you're calling it from the correct method!
I hope that helps.

As I see it, the trouble here currently is that:

Mapping joystick axes is presented the same as mapping buttons in the editor
Naïvely handling joystick axes as if they were buttons leads to unexpected behaviour (eg. this issue)
Handling joystick axes to act like buttons is more complex than handling actual buttons

This means that, for games which have remappable controls (which should be most of them IMO!), all input handling needs to be handled in the more complex manner since any action might be from a joystick axis, and might also have modifiers.  Which to me seems to make eg. InputEvent.is_action_pressed something of a noob trap!
When I hit this today adding controller support to my project, I wound up creating custom utility functions that test for just-pressed and just-released. There's probably edge cases I'm not thinking of/understanding, but it seems to be working so far. Eg:
func action_just_pressed(event: InputEvent, action: String) -> bool:
        return event.is_action_pressed(action) and Input.is_action_just_pressed(action)

I think there needs to be a simpler, more obvious and direct way of handling any input event as a button press.  Perhaps it's as simple as an is_action_just_pressed method being available on InputEvent itself, rather than only through Input?


EnoELK setup didn't go smoothly

Not sure what happened, but creating a fresh ELK without the setup scripts worked

status from bambictf6:

no containers were started
no containers were ownloaded
I had to change the perms of es_data

related to #27
any idea on the other two points? did this happen again afterwards?

didn't happen during this weeks tests


Git clone for dependencies default to be more specific

Which solution do you suggest?
git clone for dependencies should default to being more specific (if not already done in the devspace CLI binary) for example specify a depth "--depth 1" when git cloning or
You can also use git shallow clone to access a single branch:
git clone [remote-url] --branch [name] --single-branch [folder]
With git shallow clone you get fewer files. And as a result, they clone faster. Builds and feedback can be delivered quicker.

/kind feature

@DylanSD thanks for opening this issue! Makes sense, I'll implement that

Implemented in v4.9.0


Table improve

@baseilos description:

Prevent table component from calling loadData when it is being resized
Add additional inputs to table component, including min-width and font-size.
Fix issue whereby skeleton loader was shown on all interactions.


422 status code required

Hi?
I've started using this package from today, and find out that '422 Unprocessable Entity' status is not available. Since I don't understand how the code is working under the hood at the moment, I hope you add this. If I happen to understand things and have a chance to add it, I will propose a PR.
Thanks.

@appkr
How about https://github.com/shrikeh/teapot/blob/2a31a80746bca2a5bece0436ba333bcf3f67aaf0/src/StatusCode/RFC/RFC4918.php#L74?

@localheinz Thanks for the answer. Hope I can use \Teapot\StatusCode::UNPROCESSABLE_ENTITY instead of \Teapot\StatusCode\RFC\RFC4918::UNPROCESSABLE_ENTITY. I think I will have to implement my StatusCode class that combines everything. That's the right way of use, you intended to, right? Thanks.

@appkr
You could use
use Teapot\StatusCode;

var_dump(StatusCode\All:: UNPROCESSABLE_ENTITY);

:+1:

Nice and clean! It would be better if it is included in readme. Thanks ^^/


Ensure region on cluster create, update SDK

When creating a cluster, we want to make sure we instantiate the AWS client using the same region that the cluster is set to.
This also updates the OCM SDK to the latest version, which adds extra logging output. After discussion with @cben, we've determined that most SDK logs belong to the debug level output.

LGTM


cjson.encode() modified order

when i use cjson.encode(table), the table is modified order ,why?
e.g:
local json = cjson.encode({name="yhc",age=40,birthday="1985"})
print(json) -- {"birthday":"1985","name":"yhc","age":40}
i don't want to change,how to do?

I hava the same problem，anybody knows why？

cjson.encode can not have the fixed order since Lua table doesn't have a fixed order for keys.
otherwise, cjson.encode have to sort for the keys, it will hit bad performance then.

There was a PR on the original mpx/lua-cjson repo here, that adds support for this. It only took a few small tweaks to get working with the latest openresty/lua-cjson. I have a working branch of this here.
Just configure OpenResty with the --without-lua_cjson flag, and then you can just build and require your own custom cjson in your project. I've been using this in production for almost a year with no problems. Performance is still great.

There is a PR on the original mpx/lua-cjson repo here, that adds support for this. It only took a few small tweaks to get working with the latest openresty/lua-cjson. I have a working branch of this here.
Just configure OpenResty with the --without-lua_cjson flag, and then you can just build and require your own custom cjson (I'm using LuaRocks for this) in your project. I've been using this in production for almost a year with no problems. Performance is still great.

This is a good method, but it seems that it can only be applied to a small amount of data. The number of citations Lua stack is limited to 20

https://plain.blog.csdn.net/article/details/120364853
it seems like a good method

You can possibly define the order you want in __order metatable and use the forked version: https://github.com/edo888/lua-cjson
local cjson = require "cjson.safe"
cjson.decode_save_key_order(true)

local json = {name="yhc",age=40,birthday="1985"}
setmetatable(json, {
    __order = {"name", "age", "birthday"}
})
print(cjson.encode(json))

Output:
{"name":"yhc","age":40,"birthday":"1985"}


New C5 assignment: combine Shell + Git

Launching a new assignment for Cohort 5. This assignment is an evolution of C4:

Scenario based: jr dev tasked with updating existing team code
Only relies on basic bash commands (mkdir, mv, ls, cp, rm, output redirection)
Includes merging upstream changes and resolving a Git merge conflict

can I just use tree for the last question or is find okay?

Do we add the raw files as gitignores or do we need it for the autograder?

The raw files are hosted in a separate branch of the DSI repo, so it's not strictly necessary to do the assignment. But I figured I'd provide it as a ZIP file as well, for participants who might not know to run the wget / unzip steps.

can I just use tree for the last question or is find okay?

Any of these should be accepted by the autograder
ls -r
ls *
ls server_logs event_logs user_logs
find . -type f


Upgrade @babel/traverese to not-vulnerable version

According to dependabot there is a vulnerability in @babel/traverse <7.23.2
The vulnerability is fixed in 7.23.2

Duplicate of https://github.com/trivago/prettier-plugin-sort-imports/pull/263 ?

Duplicate of #263 ?

seems so! closing this :)

I think your version doesn't have breaking changes @helgefredheim

I think your version doesn't have breaking changes @helgefredheim

Ok, I repoen this then.

Closing again, as this now is fixed in another PR.


Add a Swift backwards-compatibility test category.

These tests contains a subset of Swift that is expected to work in
LLDB even when compiled with (slightly) older versions of the Swift
compiler.
rdar://problem/36031662

@swift-ci test and merge


PE container images are not available on Docker Hub

Using [1] instruction I'm trying to get container images.
The [2] page contains
Deprecation notice
This product is no longer maintained on this page, and will be removed in the future. The publisher may offer a more recent version elsewhere in Docker Hub.

https://thingsboard.io/docs/user-guide/install/pe/cluster/gcp-microservices-setup/
https://hub.docker.com/_/thingsboard-pe-node

https://github.com/thingsboard/thingsboard-pe-k8s/commit/a03380927f98c127003b9145245fa94571424e32


⚠ Bofrost.be has degraded performance

In 19d1889, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 966 ms

Resolved: Bofrost.be performance has improved in 98d5ae1.


Question about the env with ROS

Hi, I have run your code successfully. It's a great work!
Then I have another pytorch code which a better sam. So I add rclpy, then subscribtion  topic.
However, the env always has error with ros2.
Such as ModuleNotFoundError: No module named 'rclpy._rclpy_pybind11'. Then I must conda deactivate.
But I am aoncfused that your code no such problem, I run your code in conda env, and can sub topic successfully.
Can you tell me how to do like you?

Hi @Un1Lee,
It is because of the specific Python version compatibility with the ROS versions qs is also mentioned in this repo:
You have to create your Conda env with that Python version such as:

Conda environment must be created with the correct Python version according to the ROS2 distribution to ensure compatibility. For example, use Python 3.8 for ROS Foxy and Python 3.10 for ROS Humble.


State clearly the project's license - MIT

Hi!
I have noticed that license under which this project is distributed is not stated anywhere besides the package.json file. Here is a PR to correct that.
Since I did not know, whether you would like to dual-license it as with Solo, I have cut out the Apache alternative.
https://github.com/solokeys/solo-desktop/blob/0c8a99ec84d7e3f1be23a0e6dc561b3990713981/package.json#L39

Sorry for missing this, and thank you!


"init accessors" don't work with actors

Description
init accessors don't seem to be usable from actor initializers (I expected that accesses: might not work, but initializes: doesn't either, which seems like a bug)
Reproduction
The example from the "init accessors" SE, with struct changed to actor,
final actor Angle {
  var degrees: Double
  var radians: Double {
    @storageRestrictions(initializes: degrees)
    init(initialValue)  {
      degrees = initialValue * 180 / .pi
    }

    get { degrees * .pi / 180 }
    set { degrees = newValue * 180 / .pi }
  }

  init(degrees: Double) {
    self.degrees = degrees // initializes 'self.degrees' directly
  }

  init(radians: Double) {
    self.radians = radians // calls init accessor for 'self.radians', passing 'radians' as the argument
  }
}

produces
ActorInitAccessor.swift:18:10: warning: actor-isolated property 'radians' can not be mutated from a non-isolated context; this is an error in Swift 6
    self.radians = radians // calls init accessor for 'self.radians', passing 'radians' as the argument
         ^
ActorInitAccessor.swift:3:7: note: mutation of this property is only permitted within the actor
  var radians: Double {
      ^
ActorInitAccessor.swift:18:18: warning: cannot access property 'degrees' here in non-isolated initializer; this is an error in Swift 6
    self.radians = radians // calls init accessor for 'self.radians', passing 'radians' as the argument
    ~~~~~~~~~~~~~^~~~~~~~~
ActorInitAccessor.swift:18:18: note: after making a copy of 'self', only non-isolated properties of 'self' can be accessed from this init
    self.radians = radians // calls init accessor for 'self.radians', passing 'radians' as the argument
    ~~~~~~~~~~~~~^~~~~~~~~

Expected behavior
I think this should compile.
Environment
(Xcode 15.1)
swift-driver version: 1.87.3 Apple Swift version 5.9.2 (swiftlang-<IP_ADDRESS>.56 clang-15<IP_ADDRESS>.5)
Target: arm64-apple-macosx13.0
Additional information
No response

Are you running with -warnings-as-errors? It seems like isolation checker is just confused about reference to init accessor but it does build and run fine without -warnings-as-errors or -swift-version 6 mode.

main compiler does produce a warning but a different one.

@kavon should init accessor properties be handled just like stored properties by memberAccessHasSpecialPermissionInSwift5 because they are only allowed to access stored properties inside?...

@xedin the short answer is yes, they should be treated like stored properties, and in memberAccessHasSpecialPermissionInSwift5 in the spot where it says in a comment, "Later, flow-isolation pass will check and emit a warning if needed." That should handle the first warnings.
It looks like the second warning is coming from the FlowIsolation pass, as it probably is misunderstanding those init accessors. Notice that it's complaining about a copy of self, that's definitely a point where analysis stops as it's assumed self has "escaped" after that point.


Unify chain_break_method's API

Change change_break_method so it does not require any additional arguments (unifying its API).
Change minimize_energy to be an object, now providing its additional neccessary state (i.e. linear and quadratic coefficients) on construction instead of additional kwargs. (Satisfying change_break_method's new unified API).
Added pycharm's folder to gitignore.

Missing test modifications.


[Update] the latest version of clash-verge-rev is 2.0.1 now.

The latest version of clash-verge-rev is 2.0.1 now.

See https://github.com/ScoopInstaller/Extras/actions/runs/12026627370/job/33525976429
clash-verge-rev: 2.0.1 (scoop version is 1.7.7) autoupdate available
Autoupdating clash-verge-rev
Downloading Clash.Verge_2.0.1_x64_portable.zip to compute hashes!
VERBOSE: GET https://api.github.com/repos/clash-verge-rev/clash-verge-rev with 0-byte payload
VERBOSE: received 7116-byte response of content type application/json; charset=utf-8
The remote server returned an error: (404) Not Found.
URL https://github.com/clash-verge-rev/clash-verge-rev/releases/download/v2.0.1/Clash.Verge_2.0.1_x64_portable.zip is not valid
ERROR Could not update clash-verge-rev, hash for Clash.Verge_2.0.1_x64_portable.zip failed!

See https://github.com/clash-verge-rev/clash-verge-rev/releases/tag/v2.0.1

（因为便携版问题较多不再提供便携版）


[analyzer] Ignore -fno-printf-return-value

Fixes #4328

Newbie question: how can I test this locally? Simply calling pip install fails:
$ pip install https://github.com/pdgendt/codechecker/archive/no-printf-return-value.zip
Collecting https://github.com/pdgendt/codechecker/archive/no-printf-return-value.zip
  Downloading https://github.com/pdgendt/codechecker/archive/no-printf-return-value.zip
     / 12.1 MB 16.8 MB/s 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [2 lines of output]
      running egg_info
      error: error in 'egg_base' option: 'build_dist/CodeChecker/lib/python3' does not exist or is not a directory
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-fno-printf-return-value


Formatting improvements

As agreed, sending a PR to slightly improve the format of your extension
NB! please do check that these changes don't break the indicator on selection (it's not working for me for some reason even with a fresh extension install, so maybe it's just the changes to fman core, but maybe I've made a mistake somewhere in the code)

Thank you for this! I'll do some testing before I merge it in regarding the selection indicator you mentioned. I'm currently swamped so might have to delay it just a couple of days.

Sorry for my delay here!
The reason selection doesn't work is because the justification variables (justFd, justFl, justSz) only exists as local properties in the refresh() method. You can fix it by adding them as class-wide properties or simply adding them in the show_selected_files() method as well.
Would you like to fix it?

No worries, adding the variables in the other method seems simple enough, so I'll take a stab at fixing it and update the PR

Hey, I've moved the variables to a 'Just' class as you suggested and made a reference to a class in both show_selected_files() and refresh() methods, but I still can't test it — as mentioned before, even with a freshly installed fman version (your original addon, no themes), selection doesn't work for me for some reason, though I can see the regular status bar just fine.

Awesome, thank you :)
FYI it only works when selecting 1 and 1 file using Spacebar. "Select all" and "Deselect" doesn't trigger StatusBarExtended

Ah, got it, – it only works when toggle_selection command has been explicitly called as a command, rather than an argument, but I've mapped all my keys (e.g. space) to have that passed as an argument (i.e. command is move_cursor_down with "args" toggle_selection)
Got it working now via a dedicated key, which doesn't move cursor, just selects/delesects.
Is that something that fman has to fix API-wise or is there a way to actually listen to those toggle_selection as well?

I'm not sure, I had to overwrite the toggle_selection method from the Core plugin. I guess we have to do the same for select_all and deselect as well


Questions about training

Thank you very much for sharing. I have some questions about training.
1、What data should I use to download scanet datasets?
2、What are the GPU requirements for training?

You should download the entire dataset, not the semantic segmentation subset.
Training with 8*V100 is preferred.


How to use Oimo.js in 2D use-case ?

I want to use Oimo.js in a 2D scene.
How do it ?
Is there an example ?
Thanks.

Oimo.js is a 3D Physics Engine.
I would recommend some other 2D Physics Engine for a 2D Game.
Some 2D Physics Engines for JS are Matter.js, Planck.js, Box2dJS, etc.


Why do we need to specify 2034438 lovelace in lobster-contribute.sh?

This is not an issue actually, I just wanna ask to understand more.
Why do we need to specify exactly 2034438 lovelace in this line https://github.com/input-output-hk/lobster-challenge/blob/main/scripts/lobster-contribute.sh#L65 . Can we use different amount of lovelace?
...
--tx-out "$scriptAddr + 2034438 lovelace + $nftValue + $counterValue + $votesValue" \
...

because of minimum Ada requirements


Non-existant INTERFACE_INCLUDE_DIRECTORIES in important targets cause CMake failures

I keep running into this from our imported targets (Conduit in this case but I don't think they are doing anything wrong per-say).  Basically CMake is okay with a directory not existing for a build which you then export in your install.  It however is not okay with it being imported and then used in any follow up projects (Axom in this case).  This continues to plague me in different OS's.
We should probably fix this in the base packages and filter the directories before they are exported but in the meantime filter any incoming targets.
Related Github conversations:
https://github.com/spack/spack/pull/23377#issuecomment-830464468
https://github.com/LLNL/serac/pull/456/commits/a0e92264d101986f24d8239a6863a19f29db60c7
https://github.com/LLNL/conduit/issues/679

I would like to get to the bottom of the source of the empty.
Lots of moving pieces since conduit 0.7.1 with respect to MPI, etc. I want to make sure it's not due to this.


Typescript?

Should we use typescript?
https://github.com/rails/webpacker/blob/master/docs/typescript.md

We feel that we're doing enough new things in this work cycle for now, so we are closing this issue.


Fix content form

There were a number of bugs introduced when the combined content view was added.  I've addressed the following.

Combined view now can add new Print Content (before it only supported Snippet)
Removed duplicate Page input
Date selector styling no longer extends past the parent div
Time mask input now aligns with sibling

@jdtoombs Take a look at a the changes in this PR even after it's merged.  Apply these styling changes to all components so that they all work/look the same.


Use Accept-Language header to determine locale

Configure Spring's web framework so it sets the current locale based on the value
of the Accept-Language header.
Use that header to determine the default locale for /api/v1/i18n/timeZones.

Current dependencies on/for this PR:

main

PR #913

PR #914   👈

This comment was auto-generated by Graphite.


Improve temporary file handling

Create a temporary file handler singleton that will track all created files and delete when destroyed

Note that FPDF2 supports embedding PIL images directly. Investigate using FPDF2 first as this will negate the need for temporary files as required by reportlabs. See issue #6


Updated lint config

When I updated dependencies here: https://github.com/playcanvas/engine/commit/3e9547e8b08c68adf22ea0d4c305964e02fb95f9
We got error that the lint no longer supports --ext option.
The solution is to move it to the config. The npm config does not support this, and so an external config needs to be used.

closing, reverted the upgrade for now


MGCI results dashboard issues

[x] 1. Process scale: The resolution of the analysis should not be an open option for the user. The tool should adjust the resolution based on the coarsest of the 2 input layers (DEM and land cover).

[x] 2. Please replace: "Reducing land cover classes to Kapos regions"-> "Calculating MGCI values"
"The first four IPCC classes were used as green cover classes. All the units are shown in hectares" -> The last four IPCC classes are considered as green cover in accordance to SDG Indicator 15.4.2 Metadata"

""Download results"_> ""Export reporting tables"

[x] #23

Please also replace "Kapos Range" by "Mountain Class" throughout all the MGCI result dashboard


'layers' not declared in 'properties:"

I got the following error building with latest urob/zmk-config:

devicetree error: 'layers' appears in /behaviors/num_word in /app/build/left/zephyr/zephyr.dts.pre, but is not declared in 'properties:' in /app/zmk-auto-layer/dts/bindings/behaviors/zmk,behavior-auto-layer.yaml

The behavior changed to specifying the layer as an argument instead of a property. It's a bit hard to say what went wrong without seeing your config. But it sounds like you are trying to use the new module with the old behavior init in your config.
With the module, there's no need to configure num_word at all (if you like the defaults), you just add it to the keymap with &num_word NAV as done here: https://github.com/urob/zmk-config/commit/686ecd11fa8aeff7016d7830ad5903ae8e09d252

Whoops, I added the parameter but didn't remove the old definition. Closing, sorry.