Player->Actor Collisions not working in Adventure scene style

Describe the bug
In scenes that use the adventure type the player can move through actors.
Expected behavior
If I'm not mistaken, in 3.0alpha the collisions worked fine in adventure type scenes.
Screenshots

Platform (please complete the following information):

OS: Windows 10
App version 3.0.2

Can confirm this is still an issue in 3.0.3, tested on MacOS 1.14.6.
This is the same scene in Top Down 2D compared to Adventure
Top down 2D

Adventure

It would be great to be able to pick per actor if you want them to have collision or not

Did this ever work in adventure scenes? This PR exists (https://github.com/chrismaltby/gb-studio/pull/1037) that adds actor collisions to platformer AND adventure scenes. I'm newer to GB Studio though so maybe it did work at some point and the PR is just a refactor...?

Did this ever work in adventure scenes? This PR exists (#1037) that adds actor collisions to platformer AND adventure scenes. I'm newer to GB Studio though so maybe it did work at some point and the PR is just a refactor...?

It’s never been implemented

Maybe that PR wasn't implemented, but there used to be a pretty simple implementation for actor collisions in adventure scenes. I digged it up for my game and it works pretty well. The only downside is that when you move diagonally and collide with an actor, the player stops instead of going in at least one free direction.
Here's the code that adds actor collision to the adventure scenes (line numbers should give an indication where the code goes, but these might have changed by now).

Save the current position of the player before updating it

If you detect a collision, set the player back to that saved position so it doesn't get stuck in the actor

Hope this helps.

Maybe that PR wasn't implemented, but there used to be a pretty simple implementation for actor collisions in adventure scenes. I digged it up for my game and it works pretty well. The only downside is that when you move diagonally and collide with an actor, the player stops instead of going in at least one free direction.
Here's the code that adds actor collision to the adventure scenes (line numbers should give an indication where the code goes, but these might have changed by now).

Save the current position of the player before updating it

If you detect a collision, set the player back to that saved position so it doesn't get stuck in the actor

Hope this helps.

Can you implement this and do a pull request?

We might not need another PR. PR #1037 adds the described collisions and supports diagonal sliding in adventure mode. Chris also has done some groundwork changes prepping for that exact PR. I'm no maintainer though so I defer to higher powers.


AES: compliant mode

Tracking issue 2
Surfaced under #4242

False positive, reason provided under  2

Closing cc @Parsh


check with specific website like google.com

Hi, can you add this feature?

Hi,
I'd like to hear why this feature should exist.

He never answered, but the feature, to check the proxys against specific websites is very useful. For example you need a working proxy for facebook.com. It makes a lot more sense, to check the proxys against facebook.com, because like this you can be 100% sure the checked proxy can resolve facebook.com. A lot of the free proxys available in the internet, can just resolve some "whitelisted" websites. So its possible for a proxy to resolve ip-api.com/json but not facebook.com

He never answered, but the feature, to check the proxys against specific websites is very useful. For example you need a working proxy for facebook.com. It makes a lot more sense, to check the proxys against facebook.com, because like this you can be 100% sure the checked proxy can resolve facebook.com. A lot of the free proxys available in the internet, can just resolve some "whitelisted" websites. So its possible for a proxy to resolve ip-api.com/json but not facebook.com

The problem with checking the proxy on some other site is that it would be impossible to know the geolocation of the proxy and determine if the proxy is anonymous.

He never answered, but the feature, to check the proxys against specific websites is very useful. For example you need a working proxy for facebook.com. It makes a lot more sense, to check the proxys against facebook.com, because like this you can be 100% sure the checked proxy can resolve facebook.com. A lot of the free proxys available in the internet, can just resolve some "whitelisted" websites. So its possible for a proxy to resolve ip-api.com/json but not facebook.com

Didn't answer because it seemed obvious to me

He never answered, but the feature, to check the proxys against specific websites is very useful. For example you need a working proxy for facebook.com. It makes a lot more sense, to check the proxys against facebook.com, because like this you can be 100% sure the checked proxy can resolve facebook.com. A lot of the free proxys available in the internet, can just resolve some "whitelisted" websites. So its possible for a proxy to resolve ip-api.com/json but not facebook.com

The problem with checking the proxy on some other site is that it would be impossible to know the geolocation of the proxy and determine if the proxy is anonymous.

Thats true, but there are two workarounds. Check the geolocation offline against a database for example https://cdn.jsdelivr.net/npm/geolite2-city/
Or first check the custom website, and then against ip-api.com/json

Thats true, but there are two workarounds. Check the geolocation offline against a database for example cdn.jsdelivr.net/npm/geolite2-city
Or first check the custom website, and then against ip-api.com/json

This project previously used an offline database with geolocation. But I decided not to do this because these databases did not have information on all IP addresses (about 90%, as I recall). And in addition, every update of that database (which happens once a week) makes me update that database, which makes the .git folder start to weigh a lot.
The second approach also has a problem. The script will be slower because it will have to check twice, and besides, as you described above, the proxies may open facebook.com, but may not open ip-api.com/json.

Thats true, but there are two workarounds. Check the geolocation offline against a database for example cdn.jsdelivr.net/npm/geolite2-city
Or first check the custom website, and then against ip-api.com/json

I thought more about the first approach. So every time on startup, the script will download the geolocation database all over again?

Thats true, but there are two workarounds. Check the geolocation offline against a database for example cdn.jsdelivr.net/npm/geolite2-city
Or first check the custom website, and then against ip-api.com/json

I thought more about the first approach. So every time on startup, the script will download the geolocation database all over again?

Yes that would be very nice


Create an external available endpoint to trigger data archiving

It was expected this request would come from another ingest component for e.g. ingest-core/-archiver, but we realised it may be useful to be triggered by end-users as well, thus this endpoint to initiate the process in the background.
This would effectively automate Step 2 (of 3) of the current Archiving SOP.
This can be in ingest-core or ingest-archiver, both with external IP/domain name.

[x] endpoint in core or archiver to trigger archiver
[x] update Archiving SOP with new instructions
[x] update ingest-data-archiver README

Also, if time allows,

[ ] endpoint to check progress

@prabh-t updating the sop re data archiving. There's a PR for review.

@ami-day please review ebi-ait/hca-ebi-wrangler-central#633

@ami-day to test this

I have added my comments to the pull request here https://github.com/ebi-ait/hca-ebi-wrangler-central/pull/633#pullrequestreview-882996895

waiting on @prabh-t

Steps to test direct file upload to ENA:

Prepare a test submission in dev or staging.
Get the ARCHIVER_API_KEY from Step 2 of the Archiving SOP.
Run the following command in terminal, replacing INGEST_ARCHIVER_URL accordingly depending on the environment you are using and the test submission uuid.

curl -X POST {INGEST_ARCHIVER_URL}/archiveSubmissions/data -H 'Content-Type: application/json' -H "Api-Key:{ARCHIVER_API_KEY}" -d '{"sub_uuid": "{SUB_UUID}"}'
4. Go to the submission Data tab in Ingest UI.
5. Click on the ingest api url for some sequence file. This will open the file json document.
6. If this file has been copied to ENA, the fileArchiveResult attribute will not be null.

@ami-day to test this following the instructions

Ami has tested and left feedback (?) to be looked at.

@prabh-t to have a look at the feedback

PR have been reviewed and merged. Ami did comments that will be addressed in a separate improvement ticket. This can be closed

Checked. PRs affecting code (ingest-archiver, ingest-data-archiver) merged to dev and master, so in prod.


Invalid cast. The supplied value  did not pass the test 'isIdentifier'

Description
A bug was introduced around 0.42.0
other versions below 0.42.0 works.
Debug Failure. Invalid cast. The supplied value  did not pass the test 'isIdentifier'.
Error: Debug Failure. Invalid cast. The supplied value  did not pass the test 'isIdentifier'.
    at Object.cast (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:1847:25)
    at pipelineEmitWithHintWorker (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:111096:42)
    at pipelineEmitWithHint (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:111079:17)
    at pipelineEmitWithComments (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:114703:13)
    at pipelineEmit (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:111019:13)
    at emitIdentifierName (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:110998:13)
    at emitClassDeclarationOrExpression (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:112867:17)
    at emitClassDeclaration (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:112858:13)
    at pipelineEmitWithHintWorker (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:111262:32)
    at pipelineEmitWithHint (/home/Idea/frontend/node_modules/typescript/lib/typescript.js:111079:17)

OpenAPI specification (optional)
No response
Configuration
npx @hey-api/openapi-ts -i $RELEASE_BASE_URL/openapi.json -o ./src/rest-client  --base $RELEASE_BASE_URL --format --enums javascript --lint --schemas --useOptions"

System information (optional)
No response

@reinvertise hey, we will more information to properly assess this. Did you upgrade from 0.41.0?

@reinvertise can you provide the OpenAPI spec?

Hi, I just ran into the same problem. Downgrading to version 0.38.1 fixes the problem, upgrading to 0.39.0 introduces the problem.
This is the full error message for me:
tinco@tinco-aero-dev frontend % node bin/update-api-client.js
✨ Creating Node.js client
DeprecationWarning: 'createClassDeclaration' has been deprecated since v4.8.0. Decorators have been combined with modifiers. Callers should switch to an overload that does not accept a 'decorators' parameter.
/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:1706
        return ts.Debug.fail("Invalid cast. The supplied value ".concat(value, " did not pass the test '").concat(ts.Debug.getFunctionName(test), "'."));
                        ^

Error: Debug Failure. Invalid cast. The supplied value  did not pass the test 'isIdentifier'.
    at Object.cast (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:1706:25)
    at pipelineEmitWithHintWorker (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:113733:42)
    at pipelineEmitWithHint (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:113716:17)
    at pipelineEmitWithComments (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:117404:13)
    at pipelineEmit (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:113656:13)
    at emitIdentifierName (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:113635:13)
    at emitClassDeclarationOrExpression (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:115499:17)
    at emitClassDeclaration (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:115491:13)
    at pipelineEmitWithHintWorker (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:113899:32)
    at pipelineEmitWithHint (/Users/tinco/Source/aespect-super-project/frontend/node_modules/typescript/lib/typescript.js:113716:17)

Node.js v21.6.1

I'd rather not share our api doc on github right now, but if it's useful I can send you an e-mail with the link.

Thanks @tinco! I'll wait for Jordan to reply if this gives him enough info to fix

Actually, there's not much harm in it, I'll just share the script I'm using:
import { createClient } from '@hey-api/openapi-ts'

;['assets', 'identity'].forEach((api) => {
  const url = `https://beta.aero.nl/api/docs/${api}/v2/swagger.yaml`
  createClient({
    input: url,
    output: `src/api/v2/${api}`,
  })
})

If you could refrain from sharing the completed url's, so I don't have to deal with bots crawling it I'm all good :)

@reinvertise  @tinco can you provide the TypeScript versions you are using? aswell as any other relevant information. I cannot reproduce with version 0.42.0 or 0.42.1 of the package using the specs provided above

  resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
  resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.2.tgz#0ae9cebcfae970718474fe0da2c090cad6577372"

I'm not sure why I have two typescript versions resolved at the same time.

@tdreyno can you provide your spec?

@jordanshatford https://gist.github.com/tdreyno/243083e96748d823f73664cd08052bbe

@reinvertise  @tdreyno @tinco this is actually resolved in the latest code. Next release will no longer have this issue

Hey Jordan,
any workaround in the meantime? I do face the same problem and since I am just migrating to openapi-ts, I do not have a working solution yet.

@benjamineckstein i am taking with @mrlubos and hope to release soon. I am not aware of a workaround.

I'm seeing this issue on the new 0.45.1 version - was the fix not released in the new version?

@adawalli hey, can you share your spec? Did it work with any of the previous versions?

Should be easy enough to verify with this, thanks @adawalli, I'll let you know!

fwiw, here is the version of openapi-ts from my yarn.lock
"<EMAIL_ADDRESS>  version "0.45.1"
  resolved<EMAIL_ADDRESS>  integrity sha512-TT4YC9SshgruHnr/z47LD945hFhefuD6xSfdt9+fv/sU+shP0nPJhNdyt71oMGTAB9h6nsrjC8z84ZnoAGKHrg==
  dependencies:
    "@apidevtools/json-schema-ref-parser" "11.6.1"
    c12 "1.10.0"
    camelcase "8.0.0"
    commander "12.0.0"
    handlebars "4.7.8"

I created a fresh project and ran the tool against the spec and it works fine. We are running this tool within an instance of backstage - so I'm guessing one of your dependencies is actually the issue - any pointers on root-causing would be helpful

@adawalli are you able to see which TypeScript version each of your projects uses?

Good call, unmet dependency between my typescript 4.6 and your 5.x version. It's running great now that I overrode the "hoisted" project wide version with typescript 5.x. Sorry for the noise!

upgrade the typescript to v5.x solves this issue for v0.49.0


Can't stop the activity

Can't stop the activity (it's currently hanging)

Nothing can be done once activities are hung in DataWorks. Needs to create a ticket against the DW team


Fix dataset amazon_us_reviews metadata - 4/4/2022

Fixes #4048 by running dataset-cli test to reprocess data and regenerate metadata. Additionally I've updated the README to include up-to-date counts for the subsets.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

cc: @albertvillanova just FYI


While executing gem ... (Errno::EPERM)     Operation not permitted - /usr/bin/aws-rb

First, I use "gem install shenzhen" command to get shenzhen, got a error"You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory";
So, I use "sudo gem install shenzhen",still got an error"Operation not permitted - /usr/bin/aws-rb",
Then,I open "/usr/bin/" dirctory, but couldn't find any "aws-rb" or "aws" file.

You should disable SIP before installing gem. Read more http://apple.stackexchange.com/questions/208478/how-do-i-disable-system-integrity-protection-sip-aka-rootless-on-os-x-10-11

Instead of disabling SIP you could install shenzhen in a folder not restricted by SIP
ie sudo gem instal --bin /usr/local/bin/ shenzhen


Cannot instrument static methods

Hi,
I tried getting information regarding this but could not find any. It seems I cannot instrument static methods to test them with thread weaver.
Here is a basic example of what I try to achieve:
public class DoClass {
    public static void doTheThing() {
        System.out.println("do");
    }
}

public class DoClassTest {
    @ThreadedBefore
    public void before() {}

    @ThreadedMain
    public void mainThread() {
        DoClass.doTheThing();
    }

    @ThreadedSecondary
    public void secondThread() {
        DoClass.doTheThing();
    }

    @ThreadedAfter
    public void after() {}

    @Test
    public void runThreadedTests() {
        new AnnotatedTestRunner().runTests(DoClassTest.class, DoClass.class);
    }
}

All I end up with is this nasty exception:
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at com.google.testing.threadtester.MethodCaller.invoke(MethodCaller.java:71)
	at com.google.testing.threadtester.BaseThreadedTestRunner.runTests(BaseThreadedTestRunner.java:179)
	at com.google.testing.threadtester.BaseThreadedTestRunner.runTests(BaseThreadedTestRunner.java:143)
	at DoClassTest.runThreadedTests(DoClassTest.java:39)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at com.google.testing.threadtester.MethodCaller.invoke(MethodCaller.java:68)
	... 13 more
Caused by: java.lang.IllegalArgumentException: Cannot find method public static void DoClass.doTheThing()
	at com.google.testing.threadtester.ClassInstrumentationImpl.getMethod(ClassInstrumentationImpl.java:113)
	at com.google.testing.threadtester.InterleavedRunner.getMainMethod(InterleavedRunner.java:116)
	at com.google.testing.threadtester.InterleavedRunner.doInterleave(InterleavedRunner.java:131)
	at com.google.testing.threadtester.InterleavedRunner.interleave(InterleavedRunner.java:80)
	at com.google.testing.threadtester.AnnotatedTestWrapper.runTestCases(AnnotatedTestWrapper.java:258)
	at com.google.testing.threadtester.AnnotatedTestWrapper.runTests(AnnotatedTestWrapper.java:242)
	... 16 more

Is this a known issue ? Am I doing something wrong ?
Thanks

No update on this ticket, has the project been move somewhere else or is it still supported from here ?
Thanks.

Sorry - I must have missed this the first time around.
I'm afraid there's currently no support for static methods. The logic that handles breakpoints is built around the assumption that we are invoking non-static methods on a specific object being tested. (And the logic for interleaving threads of execution is built on breakpoints, which allow us to pause one thread and run another.)
I'm not sure what would break if this assumption was removed. I will try and investigate, but it might not be feasible.
Alasdair

OK, thanks for the answer.
I hope it is feasible, I tried having a look at the instrumentation but I'm really not familiar enough with that kind of procedure and could not figure out the limitations of the mechanism.
Please keep me posted on your investigation, thanks in advance :)

Hello,
Any update so far ?


I'd like to contribute to your open-source project.

Hi Emre
I saw your job on upwork and this is a little exciting to me because this job is solid matching my skills
I am specialized in python and js/ts frontend framework
I'd like to discuss this particular opportunity with you soon 🙏
Here is my email address<EMAIL_ADDRESS>my whatsapp: +1<PHONE_NUMBER>

Do you mind letting me know your Upwork name?

Yes, I already applied for one of your job postings
I saw you posted two jobs with same name.
My name is Chris R.

Are you interested in my proposal?

Let's continue the discussion on Upwork.

Sounds good. I will be on there

Let's continue the discussion on Upwork.

👍 i didn't get message from you yet


Adds -restore switch to MSBuild CLI

https://github.com/Microsoft/msbuild/pull/2414 added a new -restore switch to MSBuild and this PR adds it to the command-line reference.

@daveaglick : Thanks for your contribution! The author, @mikejo5000, has been notified to review your proposed change.

#sign-off


Not remove package on removing requirement from requirements.txt

So I added gevent as requirement and then removed it from requirements.txt but the package is not getting removed. The size of that package is too much which has increased size of my zipped lambda function from some 2 MB to 50 MB.
How can I remove the installed dependencies. I also tried uninstalling the package from virtualenv.

AFAIK if you change your requirements file everything should regenerate on every package step. You can try a few things:

delete the .serverless directory (the one inside your serverless project your having problems with)
delete the "static cache" that the plugin uses across all projects; for a Mac user this is located at $HOME/Library/Caches/serverless-python-requirements

Still an issue, or can this be closed?


React Bootstrap 2: update dependencies and prepare for new major version

Since this contains breaking changes from Bootstrap 4 to Bootstrap 5, this is going to be a new major version.

hmmm, yes, I can see that's an issue because React Bootstrap 2 has a completely different API than React Bootstrap 1 (because the former uses Bootstrap 5 whereas the former uses Bootstrap 4).
I think we need to update the whole library if we want to make it compatible with Bootstrap 5. Let me see what I can do near this weekend. I'll log an issue. So the tasks list would be somewhat close to:

Lock all dependencies for the better
Update react-bootstrap to v2
Update the parts of the codebase that imports react-bootstrap and adjust accordingly to the new API

Originally posted by @imballinst in https://github.com/imballinst/react-bs-datatable/issues/98#issuecomment-1022770927

@ahmetunal I have created a new branch for the next version of this library that supports React Bootstrap v2 and Bootstrap v5. Could you take a look? I have written some of the new stuff (so far) and the breaking changes: https://github.com/imballinst/react-bs-datatable/tree/v3-prep
I have also prepared a sandbox for the demo. If you want to install it in your local, you can do it with yarn add react-bs-datatable@next and see if it installs the 3.0.0-alpha.6 version, which is used in the sandbox.
Looking forward for your feedback. Thanks!

I will take a look today and let you know, thanks

I can confirm that it installs 3.0.0-alpha.6, but I am getting bunch of Module bot found errors:
ERROR in ./node_modules/react-bs-datatable/lib/esm/Filter.js 2:0-52 Module not found: Error: Can't resolve 'react-bootstrap/InputGroup' in 'G:\peorya\test\react-tests\node_modules\react-bs-datatable\lib\esm'
(and goes on for Form, Button, Row', Table, Col, ButtonGroup, fontawesome`

@ahmetunal Thanks for testing! Is it reproducible in Codesandbox?
Because in Codesandbox it works fine, and so does the Next.js example here: https://github.com/imballinst/react-bs-datatable/tree/v3-prep/examples/next (the screenshot is below, mostly unstyled):

nevermind, it was on me. Works great

Thanks for confirming @ahmetunal!
I'll work on some more bits on the v3, then I'll release the official version. As of this moment, I have made some more small optimizations with regards to the bundle size compared to the latest version in v2<EMAIL_ADDRESS>
Currently I'm still refactoring and improving Developer Experience (DX), so I might trouble you a bit later to test its DX, if you don't mind :smile:

Sure, anytime :thumbsup:

Closing this via https://github.com/imballinst/react-bs-datatable/pull/111.


Debug point is able to be added to a non executable code

 Issue by erandidesilva
Thursday Oct 19, 2017 at 15:47 GMT
Originally opened as https://github.com/ballerina-lang/composer/issues/4046

Currently debug point is able to be added to a non executable code as a variable declaration. This should be fixed

 Comment by erandidesilva
Friday Oct 20, 2017 at 06:54 GMT

Debug is hit on a transaction block start as well. Since this is not executable, we should not have a debug on this.

Closing in favour of https://github.com/ballerina-platform/ballerina-lang/issues/6324


fix and improve reconfiture_search_duplicates

@ultrabug
I noticed another challenge when creating a PR a few days ago, so I am issuing this PR. Please review it.
description
I improved performance of  reconfigure_search_duplicates and fix (maybe) a bug.
effects of Improvements
Bulid took 9m47.324s so far, but takes 0m12.866s after this improment.
# generate many files
$ ./copy.sh

# When reconfigure_search: true in mkdocs.yml
$ time mkdocs build
INFO    -  mkdocs_static_i18n: Adding 'ja' to the 'search' plugin 'lang' option
INFO    -  Cleaning site directory
INFO    -  Building documentation to directory: /home/yosuke/work/git/sample-mkdocs-prj/site
INFO    -  mkdocs_static_i18n: Building 'ja' documentation to directory: /home/yosuke/work/git/sample-mkdocs-prj/site
INFO    -  Documentation built in 6.30 seconds
INFO    -  Documentation built in 587.09 seconds

real    9m47.324s
user    9m47.103s
sys     0m0.220s

# When reconfigure_search: false in mkdocs.yml
$ time mkdocs build
INFO    -  Cleaning site directory
INFO    -  Building documentation to directory: /home/yosuke/work/git/sample-mkdocs-prj/site
INFO    -  mkdocs_static_i18n: Building 'ja' documentation to directory: /home/yosuke/work/git/sample-mkdocs-prj/site
INFO    -  Documentation built in 6.31 seconds
INFO    -  Documentation built in 12.64 seconds

real    0m12.866s
user    0m12.641s
sys     0m0.220s

This is logged with following env.

WSL(Ubuntu 22.04.1 LTS)
mkdocs version 1.5.2
mkdocs-static-i18n version 1.0.2
target mkdocs project -> https://github.com/AngryMane/sample-mkdocs-prj  (main branch)

root cause
reconfigure_search_duplicates takes too much time.   See following result.
$ vmprofshow vmlog  tree  --prune_percent 1
100.0%  _run_module_as_main  100.0%  /usr/lib/python3.10/runpy.py:171
100.0% |. _run_code  100.0%  /usr/lib/python3.10/runpy.py:63
100.0% |.|. <native symbol 0x7fefa18a73c0>  100.0%  -:0
100.0% |.|.|. main  100.0%  /home/yosuke/.local/lib/python3.10/site-packages/vmprof/__main__.py:30
100.0% |.|.|.|. run_path  100.0%  /usr/lib/python3.10/runpy.py:245
100.0% |.|.|.|.|. _run_module_code  100.0%  /usr/lib/python3.10/runpy.py:89
100.0% |.|.|.|.|.|. _run_code  100.0%  /usr/lib/python3.10/runpy.py:63
100.0% |.|.|.|.|.|.|. ImpLoader  100.0%  /usr/lib/python3.10/pkgutil.py:269
100.0% |.|.|.|.|.|.|.|. __call__  100.0%  /usr/lib/python3/dist-packages/click/core.py:1126
100.0% |.|.|.|.|.|.|.|.|. main  100.0%  /usr/lib/python3/dist-packages/click/core.py:981
100.0% |.|.|.|.|.|.|.|.|.|. invoke  100.0%  /usr/lib/python3/dist-packages/click/core.py:1625
100.0% |.|.|.|.|.|.|.|.|.|.|. invoke  100.0%  /usr/lib/python3/dist-packages/click/core.py:1384
100.0% |.|.|.|.|.|.|.|.|.|.|.|. invoke  100.0%  /usr/lib/python3/dist-packages/click/core.py:703
100.0% |.|.|.|.|.|.|.|.|.|.|.|.|. build_command  100.0%  /home/yosuke/work/git/mkdocs/mkdocs/__main__.py:273
100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|. build  100.0%  /home/yosuke/.local/lib/python3.10/site-packages/mkdocs/commands/build.py:258
 98.9% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|. on_post_build  98.9%  /home/yosuke/.local/lib/python3.10/site-packages/mkdocs/plugins.py:541
 98.9% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. run_event  100.0%  /home/yosuke/.local/lib/python3.10/site-packages/mkdocs/plugins.py:492
 98.9% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. on_post_build  100.0%  /home/yosuke/work/git/mkdocs-static-i18n/mkdocs_static_i18n/plugin.py:146
  1.1% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. build  1.1%  /home/yosuke/.local/lib/python3.10/site-packages/mkdocs/commands/build.py:258
 97.8% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. reconfigure_search_index  98.9%  /home/yosuke/work/git/mkdocs-static-i18n/mkdocs_static_i18n/reconfigure.py:486
 97.8% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. reconfigure_search_duplicates  100.0%  /home/yosuke/work/git/mkdocs-static-i18n/mkdocs_static_i18n/reconfigure.py:449
 74.6% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. <native symbol 0x55cc6a805121>  76.3%  -:0
  8.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. <native symbol 0x55cc6a8f7611>  10.8%  -:0
  1.6% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. PyUnicode_RichCompare  19.7%  -:0
  2.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. <lambda>  2.1%  /home/yosuke/work/git/mkdocs-static-i18n/mkdocs_static_i18n/reconfigure.py:473

The first number in the line is the percentage of the total execution time of the function. As you can see, reconfigure_search_duplicates function takes too much time.
Then, I logged with line_profiler.  See following result.
$ python3 -m line_profiler -rmt "__main__.py.lprof"
Timer unit: 1e-06 s

Total time: 638.575 s
File: /home/yosuke/work/git/mkdocs-static-i18n/mkdocs_static_i18n/reconfigure.py
Function: reconfigure_search_duplicates at line 449

Line #      Hits         Time  Per Hit   % Time  Line Contents
==============================================================
   449                                               @profile
   450                                               def reconfigure_search_duplicates(self, search_index_entries):
   451                                                   """
   452                                                   We want to avoid indexing the same pages twice if the default language
   453                                                   has its own version built as well as the /language version too as this
   454                                                   would pollute the search results.
   455                                                   When this happens, we favor the default language location if its
   456                                                   content is the same as its /language counterpart.
   457                                                   """
   458         2          2.1      1.1      0.0          default_lang_entries = filter(
   459         1          1.0      1.0      0.0              lambda x: not x["location"].startswith(
   460                                                           tuple([f"{lang}/" for lang in self.build_languages])
   461                                                       ),
   462         1          0.1      0.1      0.0              search_index_entries,
   463                                                   )
   464         2     110505.5  55252.8      0.0          target_lang_entries = list(
   465         2          0.8      0.4      0.0              filter(
   466         1          0.3      0.3      0.0                  lambda x: x["location"].startswith(
   467                                                               tuple([f"{lang}/" for lang in self.build_languages])
   468                                                           ),
   469         1          0.1      0.1      0.0                  search_index_entries,
   470                                                       )
   471                                                   )
   472      7526     292071.2     38.8      0.0          for default_lang_entry in default_lang_entries:
   473     15050       8913.7      0.6      0.0              duplicated_entries = filter(
   474      7525       3248.7      0.4      0.0                  lambda x: x["title"] == default_lang_entry["title"]
   475                                                           and x["location"].endswith(x["location"])
   476                                                           and x["text"] == default_lang_entry["text"],
   477      7525       1033.0      0.1      0.0                  target_lang_entries,
   478                                                       )
<PHONE_NUMBER>   29943908.1     13.7      4.7              for duplicated_entry in duplicated_entries:
<PHONE_NUMBER>  605155199.4    278.3     94.8                  if duplicated_entry in search_index_entries:
   481     15048     245214.8     16.3      0.0                      log.debug(
   482     15048       5767.5      0.4      0.0                          f"removed duplicated search entry: {duplicated_entry['title']} "
   483      7524       1247.3      0.2      0.0                          f"{duplicated_entry['location']}"
   484                                                               )
   485      7524    2807696.3    373.2      0.4                      search_index_entries.remove(duplicated_entry)

638.57 seconds - /home/yosuke/work/git/mkdocs-static-i18n/mkdocs_static_i18n/reconfigure.py:449 - reconfigure_search_duplicates

The following two points are important.

x["location"].endswith(x["location"]) is always True and seems a mistake. Maybe this indends x["location"].endswith(default_lang_entry["location"]).
if duplicated_entry in search_index_entries: took much time.

How to improve

x["location"].endswith(x["location"]) maybe intend x["location"].endswith(default_lang_entry["location"]). So I fix as intended.
duplicated_entry is removed from target_lang_entries. if duplicated_entry in search_index_entries: is unnecessary now.

Yep, both a bug fix and a master PR, :pray: a big thank you and congratulations!


Deeply nested values crash the program

Minimal example: running pandoc with pandoc -L test.lua <<< 'test', where test.lua contains the following filter.
function Meta (meta)
  local foo = true
  for i=1,50 do
    foo = {test=foo}
  end
  meta.foo = foo
  return meta
end

Pandoc crashes with a segfault.
At least part of this needs to be fixed in hslua.

Fixed by switching to hslua-2.1.


Fixed wrong migrate url error description

#14994 introduced a bug which shows the wrong reason in the error message if the migrate url was invalid.
The following error is shown if github.com is a blocked domain.

This PR synchronises the error generation with routers/api/v1/repo/migrate.go.

:rocket:


extension built by meson are not packaged in wheel

Hi,
I managed to mimic the packaging of scipy on another project and despite the binary extensions are built, they are not packaged in the wheel and provide this warning message:
WARNING Using heuristics to map files to wheel, this may result in incorrect locations
WARNING File could not be mapped to an equivalent wheel directory: /tmp/build-via-sdist-jsg87qg9/fabio-0.15.0-a0/.mesonpy-5bwmoite/install/usr/lib/python3/dist-packages/fabio/ext/cf_io.cpython-39-x86_64-linux-gnu.so ({moduledir_shared}/cf_io.cpython-39-x86_64-linux-gnu.so)

Did I forgot any configuration ? Since the same "bug" occurs when packaging scipy, I suspect there is something in meson-python (which I don't master for the moment).
Cheers,
Jerome

This should be fixed by gh-77 shortly.

Indeed, I confirm this patch fixes the bug.
One needs to build the package with "python -m build -n" to use the currently version of meson-python and not the one packaged which does not yet contain the fix.
The bug can be closed when this patch is merged.

Fixed by #77. 0.6.0 should be released soon with this fix.


Review & revise .NET docs hub page "Create your application" web card

Review & revise .NET docs hub page "Create your application" web card, part of https://github.com/dotnet/docs/issues/20970.

@IEvangelist Here's another issue that will need a new owner.

I believe @Rick-Anderson should be, if not you.

@wadepickett  hold all the cards


Feature/393 - AssetDownloadServlet configuration (don't merge)

added config to enable AssetDownloadServlet on publish environments
added UI warning to users in Download Modal Dialog if current download size exceeds max size

Set some default limits at 50MB... not sure if the default should be higher..lower?
Here is the warning in the UI:

And updates to the Download Component Dialog:

This is just an initial PR to get some feedback. I think the Dynamic Media download should be updated as well (need to test/check) and would probably be good to include some unit tests for this.
@davidjgonzalez check it out when you get a chance...

@davidjgonzalez any thoughts about the way I'm using configAdmin.getConfiguration in AssetDownloadHelperImpl.java? Whenever that configuration gets read, the AssetDownloadServlet component gets disabled and all download functionality breaks...

@godanny86 is this still a "dont merge"? Or ready for review / merge?

just going to add a couple more unit tests and then ready for review/merge

@davidjgonzalez one thing I was testing was allowing someone to override the OSGi config we have for AssetDownloadServlet (if they want to increase/decrease the maxcontentsize). Unfortunately, it doesn't seem to pick up if the ASC config is in a folder asset-share-commons/config.publish/AssetDownloadServlet.confg vs. my-customer/config.publish/AssetDownloadServlet.config.
I was thinking of putting the ASC AssetDownloadServlet.config in a subfolder named config.samplecontent.publish so that it will work in local development/demo instances but then wouldn't conflict with a customer's production setup. I could also just not commit the config and add it to documentation. WDYT?

@godanny86 if you set our config to a really low service.ranking will the 'customer' one get picked up when deployed -- i believe it should? I think most of our other "overrideable" configs are around -10000 ?
(I think higher gets precedence; maybe its the other way -- i always get confused cause sling filters are (were) the opposite or something..)

@davidjgonzalez i think this is ready for review. FWIW I couldn't get anywhere with service ranking, it could be because the AssetDownloadServlet config is a little strange. Left the config in config.publish. That should make it easy for an implementation to override it in production with a folder of config.nosamplecontent.publish


make resource "aws_sqs_queue_redrive_allow_policy" "dlq"

Is your request related to a new offering from AWS?
Is this functionality available in the AWS provider for Terraform? See CHANGELOG.md, too.

Yes ✅: aws_sqs_queue_redrive_allow_policy was introduced in AWS provider in 4.31.0

Is your request related to a problem? Please describe.

Some AWS regions do not support redrive allow policies on dead letter queues (DLQ). Thus, when deploying a stack that includes a DLQ in one of these regions, the stack will fail because Terraform attempts to create resource "aws_sqs_queue_redrive_allow_policy" "dlq" due to var.create_dlq = true.
Describe the solution you'd like.

Users should be able to create a DLQ without a redrive allow policy. This could be implemented by creating a var.create_redrive_allow_policy_dlq that could be used in the conditional statement for the count associated with the "aws_sqs_queue_redrive_allow_policy" "dlq" resource, i.e. count = var.create && var.create_dlq && length && var.create_redrive_allow_policy_dlq ? 1 : 0. The variable could be set with default = true to maintain backward compatibility.
Describe alternatives you've considered.

This could also be implemented by creating a var.redrive_allow_policy_dlq (similar to var.redrive_allow_policy) where the length of the value could be used in the conditional statement for the count associated with the "aws_sqs_queue_redrive_allow_policy" "dlq" resource, i.e. count = var.create && var.create_dlq && length(var.redrive_allow_policy_dlq) > 0 ? 1 : 0. But, this would require removing the default policy included in the resource and it would be up to the user to specify the entire policy including what was previously done for them.
Additional context

I am running into this same issue on a project we are working on.
module.sqs.aws_sqs_queue_policy.dlq[0]: Creating...
╷
│ Error: setting SQS Queue (https://sqs.us-west-2.amazonaws.com/<accuont>/<queue-name>-dlq) attribute (Policy): InvalidAttributeValue: Invalid value for the parameter Policy.
│       status code: 400, request id:
│
│   with module.sqs.aws_sqs_queue_policy.dlq[0],
│   on .terraform\modules\sqs\main.tf line 202, in resource "aws_sqs_queue_policy" "dlq":
│  202: resource "aws_sqs_queue_policy" "dlq" {
│
╵

@jebbens is there a workaround that you've found for this?

Sorry for the delayed response. I ended up creating a separate queue resource to be used as a DLQ, whose ARN is referenced as the deadLetterTargetArn for the other "source" queues.

Completed in #60


Feature Request: Allow meetings with virtual agendas (e.g. general meetings) to provide link to agenda

If an event uses the website to sign in, it would be nice if a new field could be added to the event, a link to the event's agenda, that would be displayed either upon signing into the event OR along with the prompt to sign in on the main page (e.g. change  "Second General is going on. Click here to sign in." to "Second General is going on. Click here to sign in. Click here to view the agenda."

Wait, we don't do that?

I mean you can link the agenda in the description...
It's not structured data like Benson wants
On Tuesday, February 2, 2016, Kyle Lady<EMAIL_ADDRESS>wrote:

Wait, we don't do that?
—
Reply to this email directly or view it on GitHub
https://github.com/tbpmig/mig-website/issues/203#issuecomment-178964511.

--
Mike Hand

Oh. I thought we did that.


QCMA crashes when attempting to transfer the application.

As soon as I attempt to transfer h-encore, QCMA crashes and the transfer fails.

Fixed, dragged the wrong folder to transfer.


Fix changing scene during _init causing the first scene to not unload

Fixes #99651

I've added a warning, but I'm not sure if it's right.


have only one Cypress command inside integtest.sh

have only one Cypress command inside integtest.sh

https://github.com/opensearch-project/opensearch-dashboards-functional-test/blob/main/integtest.sh


Add syntax for homogenous tuples, i.e. arrays

Problem
making a 1024 length tuple sounds dumb.
Solution
Use special syntax to declare homogenous tuples: U8[1024]. Just desugar it for now and maybe optimize later.

Tuples also are missing field projection and maybe a .length value.

let xs: Integer[5] = (1, 2, 3, 4, 5);
[for x:Integer in xs yield x^2];

needs to work before this issue will be closed.


[Notion] Insufficient permissions for this endpoint

Extension
https://www.raycast.com/notion/notion
Description
Getting the error captured below when using two of the built in actions in the Notion extension. Both 'Create Database Page' and 'Search Notion' say "Insufficient permissions for this endpoint." Despite the message, I can create a new page and searching works.
https://share.cleanshot.com/cK3W1GZp
Steps To Reproduce

Install Notion extension
Create new Notion integration
Select pages to share with Raycast
Run Create Database Page or Search Notion command

Current Behaviour
Raycast window display permissions issue
Expected Behaviour
No permissions error

Does you still get it? Or was it a one-time thing?

the same problem .


Don't require msgr2 port for provider/consumer clusters

For consumer/provider MS mode we cannot set global configuration at the csi level as a single consumer will be connected to the multiple provider clusters.
resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2184068#c10

/assign @nb-ohad

This change (adding sc.Spec.AllowRemoteStorageConsumers to the condition) only affects provider clusters, but we do not run ceph-csi on provider clusters. How does this solve the attached bug which

@nb-ohad If RequireMsg2 is set to true, Rook will setup the ceph cluster monitor to use the v2 port, which is 3300, ceph will not be listening on v1 ports anymore, and we also need some changes in cephcsi to support v2 ports like setting cephfs kernel mount option and rbd kernel map option. Currently we dont have this support in managed service/

/retest

I dont have an external setup to test. But I tried to simulate it by installing ocs & creating pvc+pod with Not making requiremsgr2 true & passing nothing in the mount option. That worked.

/assign @iamniting

/cherry-pick release-4.13


on iOS cannot reply via notification or share while the app is closed

Summary
Two long-standing bugs on iOS. They manifest whenever MM app is closed, regardless of login status. If the app is running in background, everything works as expeced. No other chatting app exhibits such behaviour, even WeChat works properly in both scenarios.

Replying via force-touch on a notification fails with "Message failed to send"
Sharing a file fails with "Authentication required. Please first login using the app"

Environment Information

iPhone X, but any really
iOS 16, but this bug has been round forever
Latest, but it never worked
Server 7.2.0, but same was with 5.x and 6.x

Steps to reproduce

Close MM app (don't leave it running in background),
receive a notification and use force-touch to reply, OR
try sharing a photo/file using iOS standard share menu.

Expected behavior
no errors, just works.
Observed behavior (that appears unintentional)
see screenshots and videos attached

https://user-images.githubusercontent.com/85218635/204795752-a642e3a3-3447-44d9-9014-39bdcdf4ec7d.mp4

https://user-images.githubusercontent.com/85218635/204795417-21148f83-0115-484c-90b2-9aad58b2d5d3.MP4
Possible fixes
Tried re-logging in, did not help. Updating / reinstalling did not help either.  These bugs been around for years, just recently I managed to understand that background app status is important to reproduce the bug.

@recsdj Would you be open to testing if you also see these bugs in our upcoming V2 app? You can get access to the beta version via the instructions here https://mattermost.com/blog/mobile-beta-program-v2/.

@recsdj Were you able to check if this is still a problem?

Hello, thanks for following up. Mattermost Beta seems to be fine, I have
been testing it since your offer and haven’t encountered the bug. Thanks
heaps!
On Wed, 11 Jan 2023 at 23:45, Daniel Espino García @.***>
wrote:

@recsdj https://github.com/recsdj Were you able to check if this is
still a problem?
—
Reply to this email directly, view it on GitHub
https://github.com/mattermost/mattermost-mobile/issues/6802#issuecomment-1379135651,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUKFKSY3UORSRAP7L3XOGA3WR3PTTANCNFSM6AAAAAASPSMLUQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


warnings in sys_info() output

This showed up in a user's mne.sys_info() output on the forum.
├☑ pyvista           0.41.1C:\ProgramData\mne-python\1.5.0_0\Lib\site-packages\threadpoolctl.py:1010: RuntimeWarning:
Found Intel OpenMP ('libiomp') and LLVM OpenMP ('libomp') loaded at
the same time. Both libraries are known to be incompatible and this
can cause random crashes or deadlocks on Linux when loaded in the
same Python program.
Using threadpoolctl may cause crashes or deadlocks. For more
information and possible workarounds, please see
    https://github.com/joblib/threadpoolctl/blob/master/multiple_openmp.md

  warnings.warn(msg, RuntimeWarning)
 (OpenGL 4.5.0 NVIDIA 536.23 via NVIDIA GeForce RTX 2080 SUPER/PCIe/SSE2)
├☑ pyvistaqt         0.0.0

Seems worth digging into how this happened, and trying to prevent it.

OpenMEEG will use OpenBLAS (it compiles with / links to it), and I'm guessing the user installed numpy/scipy with the MKL BLAS backend

... this sort of conflict is difficult to guard against. Ideally OpenMEEG would be linalg-agnostic but that would be a lot of really annoying/difficult work

if we can't prevent it, can we anticipate the error, catch the warning, and spit out something at the end of the sys_info() output?  (basically, make it prettier)

I doubt it (it's going to be emitted at the level of the C bindings I think) but you could try

OpenMEEG will use OpenBLAS (it compiles with / links to it), and I'm guessing the user installed numpy/scipy with the MKL BLAS backend

Considering the path, it looks to me like this is an installation produced by our standalone installers, no? So it may be something for us to fix in the installer package specification

@larsoner According to https://github.com/mne-tools/mne-installers/releases/download/v1.5.0/MNE-Python-1.5.0_0-Windows.exe.env.json we ship libraries for MKL and OpenBLAS:
  {
    "base_url": "https://conda.anaconda.org/conda-forge",
    "build_number": 17,
    "build_string": "17_win64_mkl",
    "channel": "conda-forge",
    "dist_name": "libblas-3.9.0-17_win64_mkl",
    "name": "libblas",
    "platform": "win-64",
    "version": "3.9.0"
  },
  ...
  {
    "base_url": "https://conda.anaconda.org/conda-forge",
    "build_number": 0,
    "build_string": "pthreads_hc140b1d_0",
    "channel": "conda-forge",
    "dist_name": "libopenblas-0.3.23-pthreads_hc140b1d_0",
    "name": "libopenblas",
    "platform": "win-64",
    "version": "0.3.23"
  },
  ...
  {
    "base_url": "https://conda.anaconda.org/conda-forge",
    "build_number": 0,
    "build_string": "pthreads_h1956dd5_0",
    "channel": "conda-forge",
    "dist_name": "openblas-0.3.23-pthreads_h1956dd5_0",
    "name": "openblas",
    "platform": "win-64",
    "version": "0.3.23"
  },

Maybe explicitly requesting "libblas=*=*openblas" could avoid this, see
https://conda-forge.org/docs/maintainer/knowledge_base.html#switching-blas-implementation

But are you sure this is the cause of the error message here? Because the message itself mentions OpenMP, not BLAS / MKL. Are they linked to one another?

@larsoner Could you transfer this issue to mne-tools/mne-installers please?

@hoechenberger the issue says "Intel OpenMP ('libiomp') and LLVM OpenMP ('libomp')" -- I think the former will be used by MKL (being Intel's "thing"), the latter by OpenBLAS (maybe Numba/LLVM as well)


Question about computing constraint forces using XPBD integrator

Hi,
I am using the XPBD integrator to simulate a tetrahedron FEM model. I am reading the original paper which mentioned the constraint forces can be computed https://matthias-research.github.io/pages/publications/XPBD.pdf. Equation (6) provides a way to compute elastic forces.

However, I realize these values are not saved in the body_f or particle_f attributes. Especially in the solve_tetrahedron function, these values are never computed. If possible, I wonder if there these values can be saved in the integrator. Or, if you may provide a recommended way to create these values. The current implementation seems to have a different notation compared to the original paper. I am looking forward to your reply.

The current implementation is based on this paper: https://mmacklin.com/neohookean.pdf
It is relatively straightforward to compute the forces given the pose of the tetrahedron, you first compute C, then multiply by inverse stiffness and gradient (as in the equation above).
Alternatively, you can look at the SemiImplicitIntegrator() which computes the forces from the tet pose directly using the same model. https://github.com/NVIDIA/warp/blob/main/warp/sim/integrator_euler.py#L608
Hope that helps.
Cheers,
Miles


Make build metadata configurable.

On development builds we annotate the build with the short git commit
id, but in some cases this is not available (Google Cloud Build does not
send the .git directory to the server), and in other cases we want to
override it. Allow the developer (or script) calling cmake to set the
build metadata.
Update API/ABI baseline as this change removes a function in
google::cloud::internal::.

This change is

PTAL.


Error: Command failed: npm install<EMAIL_ADDRESS>--prefix /root/./

During build: amplify fails build do to "Error: Command failed: npm install<EMAIL_ADDRESS>--prefix /root/./
It seems that a similar error to the issue described below has occurred.
https://github.com/aws-amplify/amplify-js/issues/10049
There are comments as follows, but is this also related to Amplify Hosting this time?

This was an issue with Amplify Hosting and due to the npm outage today where certain package versions were not published, breaking a lot CI/CD tools. It is resolved now.

（https://github.com/aws-amplify/amplify-js/issues/10049#issuecomment-1171979052)
Please confirm, and thank you in advance.
error
2023-09-14T09:28:07.321Z [INFO]: Starting SSR Build...
2023-09-14T09:29:20.594Z [ERROR]: Error: Command failed: npm install<EMAIL_ADDRESS>--prefix /root/./
                                  npm WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-url#deprecated
                                  npm WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-resolve#deprecated
                                  npm WARN deprecated<EMAIL_ADDRESS>The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                  npm WARN deprecated<EMAIL_ADDRESS>Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future
                                  npm WARN deprecated<EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated
                                  npm WARN deprecated<EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated
                                  npm ERR! code ERR_SOCKET_TIMEOUT
                                  npm ERR! network Socket timeout
                                  npm ERR! network This is a problem related to network connectivity.
                                  npm ERR! network In most cases you are behind a proxy or have bad network settings.
                                  npm ERR! network
                                  npm ERR! network If you are behind a proxy, please make sure that the
                                  npm ERR! network 'proxy' config is set properly.  See: 'npm help config'
                                  npm ERR! A complete log of this run can be found in:
                                  npm ERR!     /root/.npm/_logs/2023-09-14T09_29_18_977Z-debug.log
                                  at ChildProcess.exithandler (node:child_process:397:12)
                                  at ChildProcess.emit (node:events:390:28)
                                  at maybeClose (node:internal/child_process:1064:16)
                                  at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5) {
                                  killed: false,
                                  code: 1,
                                  signal: null,
                                  cmd: 'npm install<EMAIL_ADDRESS>--prefix /root/./',
                                  stdout: '',
                                  stderr: 'npm WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-url#deprecated\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-resolve#deprecated\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>The querystring API is considered Legacy. new code should use the URLSearchParams API instead.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated\n' +
                                  'npm WARN deprecated<EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated\n' +
                                  'npm ERR! code ERR_SOCKET_TIMEOUT\n' +
                                  'npm ERR! network Socket timeout\n' +
                                  'npm ERR! network This is a problem related to network connectivity.\n' +
                                  'npm ERR! network In most cases you are behind a proxy or have bad network settings.\n' +
                                  'npm ERR! network \n' +
                                  'npm ERR! network If you are behind a proxy, please make sure that the\n' +
                                  "npm ERR! network 'proxy' config is set properly.  See: 'npm help config'\n" +
                                  '\n' +
                                  'npm ERR! A complete log of this run can be found in:\n' +
                                  'npm ERR!     /root/.npm/_logs/2023-09-14T09_29_18_977Z-debug.log\n'
                                  }
2023-09-14T09:29:20.594Z [HELP]: Outputting the npm debug log
                                 [object Promise]
                                 Outputting the npm debug log
                                 [object Promise]

**Next.js version** : 11

**Node.js version**: 16.13.0

Hi @suzu1997 👋 , thanks for raising this and apologies for the inconvenience caused due to this.
Can you share your Amplify App ID?

@Jay2113
Thank you for your response.
Sorry,

App Id: d2le6jo6egdekr
AWS Region: ap-northeast-1

@Jay2113
Same problem. happens frequently from Sep 12th.
App Id: d1geu5zv5rbfqs
AWS Region: ap-northeast-1

@Jay2113
Today, at around 4:00 PM Japan time, when I attempted to deploy using Amplify once again,
I encountered no errors like "Error: Command failed: npm install<EMAIL_ADDRESS>--prefix /root/./," and the build and deployment were successful.
Have you made any corrections?
However, I still found the following error logs, which were not present in the logs of previous deployments.
Is this related to the current issue?
2023-09-15T07:10:32.450Z [INFO]: # Executing command:
                                 retries=3
                                 while [ $retries -gt 0 ]; do
                                 if npm install -g<EMAIL_ADDRESS>then
                                 break
                                 else
                                 echo "Command failed. Retrying..."
                                 retries=$((retries-1))
                                 fi
                                 done
                                 if [ $retries -eq 0 ]; then
                                 echo "Command failed after 3 attempts."
                                 fi
2023-09-15T07:11:48.713Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-url#deprecated
2023-09-15T07:11:49.208Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-resolve#deprecated
2023-09-15T07:11:50.340Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:11:50.340Z [WARNING]: npm
2023-09-15T07:11:50.341Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:11:50.341Z [WARNING]: npm
2023-09-15T07:11:50.341Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:11:50.341Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:11:50.342Z [WARNING]: npm
2023-09-15T07:11:50.342Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:11:50.342Z [WARNING]: npm
2023-09-15T07:11:50.342Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:11:50.343Z [WARNING]: npm
2023-09-15T07:11:50.343Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:11:50.343Z [WARNING]: npm
2023-09-15T07:11:50.343Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:11:55.286Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated
2023-09-15T07:11:55.361Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated
2023-09-15T07:11:56.563Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
2023-09-15T07:11:56.699Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future
2023-09-15T07:12:08.683Z [WARNING]: npm ERR!
2023-09-15T07:12:08.685Z [WARNING]: code ERR_SOCKET_TIMEOUT
                                    npm ERR! network Socket timeout
                                    npm ERR! network This is a problem related to network connectivity.
                                    npm ERR! network In most cases you are behind a proxy or have bad network settings.
                                    npm ERR! network
                                    npm ERR! network If you are behind a proxy, please make sure that the
                                    npm ERR! network 'proxy' config is set properly.  See: 'npm help config'
2023-09-15T07:12:08.717Z [WARNING]:
2023-09-15T07:12:08.718Z [WARNING]: npm ERR!  Retrying...
2023-09-15T07:13:05.877Z [WARNING]: npm
2023-09-15T07:13:05.880Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-url#deprecated
2023-09-15T07:13:06.352Z [WARNING]: npm
2023-09-15T07:13:06.352Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated
2023-09-15T07:13:06.488Z [WARNING]: npm
2023-09-15T07:13:06.489Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated
2023-09-15T07:13:06.579Z [WARNING]: npm
2023-09-15T07:13:06.580Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-resolve#deprecated
2023-09-15T07:13:06.748Z [WARNING]: npm
2023-09-15T07:13:06.749Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
2023-09-15T07:13:06.982Z [WARNING]: npm
2023-09-15T07:13:06.982Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:13:06.983Z [WARNING]: npm
2023-09-15T07:13:06.983Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:13:06.983Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:13:06.984Z [WARNING]: npm
2023-09-15T07:13:06.984Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:13:06.984Z [WARNING]: npm
2023-09-15T07:13:06.985Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:13:06.985Z [WARNING]: npm
2023-09-15T07:13:06.985Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:13:06.986Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:13:07.007Z [WARNING]: npm
2023-09-15T07:13:07.007Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:13:07.376Z [WARNING]: npm WARN deprecated<EMAIL_ADDRESS>Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future
2023-09-15T07:13:16.051Z [WARNING]: npm
2023-09-15T07:13:16.053Z [WARNING]: ERR! code 127
                                    npm ERR! path /root/.nvm/versions/node/v16.13.0/lib/node_modules/@sls-next/serverless-component/node_modules/aws-crt
                                    npm ERR! command failed
                                    npm ERR! command sh -c node ./scripts/install.js
                                    npm ERR! sh: node: command not found
2023-09-15T07:13:16.076Z [WARNING]:
2023-09-15T07:13:16.077Z [WARNING]: npm ERR!  Retrying...
2023-09-15T07:14:12.904Z [WARNING]: npm
2023-09-15T07:14:12.906Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-url#deprecated
2023-09-15T07:14:13.351Z [WARNING]: npm
2023-09-15T07:14:13.351Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated
2023-09-15T07:14:13.481Z [WARNING]: npm
2023-09-15T07:14:13.482Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated
2023-09-15T07:14:13.576Z [WARNING]: npm
2023-09-15T07:14:13.577Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>See https://github.com/lydell/source-map-resolve#deprecated
2023-09-15T07:14:13.752Z [WARNING]: npm
2023-09-15T07:14:13.753Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
2023-09-15T07:14:13.999Z [WARNING]: npm
2023-09-15T07:14:13.999Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                    npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:14:14.000Z [WARNING]: npm
2023-09-15T07:14:14.001Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
                                    npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:14:14.002Z [WARNING]: npm
2023-09-15T07:14:14.002Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:14:14.002Z [WARNING]: npm
2023-09-15T07:14:14.003Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:14:14.003Z [WARNING]: npm
2023-09-15T07:14:14.003Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:14:14.020Z [WARNING]: npm WARN
2023-09-15T07:14:14.020Z [WARNING]: deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2023-09-15T07:14:14.402Z [WARNING]: npm
2023-09-15T07:14:14.402Z [WARNING]: WARN deprecated<EMAIL_ADDRESS>Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future
2023-09-15T07:14:22.728Z [WARNING]: npm
2023-09-15T07:14:22.730Z [WARNING]: ERR! code 127
                                    npm ERR! path /root/.nvm/versions/node/v16.13.0/lib/node_modules/@sls-next/serverless-component/node_modules/aws-crt
                                    npm ERR! command failed
                                    npm ERR! command sh -c node ./scripts/install.js
                                    npm ERR! sh: node: command not found
2023-09-15T07:14:22.756Z [WARNING]:
2023-09-15T07:14:22.756Z [WARNING]: npm ERR! A complete log of this run can be found in:
                                    npm ERR!     /root/.npm/_logs/2023-09-15T07_14_22_742Z-debug.log

Additionally, is there a significant likelihood of encountering similar errors in the future?
I would like to confirm this as I believe it's necessary to consider potential solutions if we encounter a similar problem in the future.


train_baseline might not working in cleanup environment

All of the agent's rewards are saturated to 0 around ~390 episodes while training with the default configurations of cleanup environment in train_baseline.py
All of the agents are just getting 0 reward until the end of the training.

Sorry for the difficulties you've been having and thank you for trying out the baselines!
There's three aspects to this. One, 390 episodes is not a lot if you look at the paper the training curves come from they take many, many more iterations: https://arxiv.org/abs/1810.08647
Two, some of the default parameters of Ray, such as the way the underlying value functions are implemented, may differ from the paper so simply taking the default hyperparameters from the paper may not be sufficient.
Three, in my understanding, most of the time the scores in Cleanup actually come out as zero and a score above zero is more unusual than it is likely. Is this third point correct @natashamjaques ?

Thank you so much for your kind reply ^_^ !! Still... I have some concerns
Even though, I have trained around 20,000,000 time steps (20000 episodes) all of my agent's rewards are just 0 from episode 390 without any change.
For the second part, I will look through some default parameters  in ray and will notice you if i find some critical parameters that can affect the performance.

One thing I would suggest trying is just disabling the hyperparameters in that file and using the default hyperparameters in Ray, with a possible sweep over the learning rate and the training batch size. To my mind those are usually the most critical hyperparameters.

This isn't super unusual, without some initial luck in agents deleting enough of the initial waste cells, they never learn to get any apples. Increasing (making more negative) the value of the entropy coefficient, which should encourage exploration, may also help with the 0 score.

Hey, just to chime in: actually, agents collectively scoring 0 reward in Cleanup is very typical. When I was using these environments in DeepMind, it was understood that 0 was the normal score for A3C agents. If you check out the Inequity Aversion paper https://arxiv.org/pdf/1803.08884.pdf, they report an average collective return of near 0 for 5 A3C agents in Cleanup.
I know that my paper reports a higher score; this was pretty atypical and actually just because I did a super extensive hyperparameter sweep for the baseline. But you can consider 0 the expected score.
Agents have difficulty solving this task both because of the partial observability (they can't see the apples appear when they clean the river), the delayed rewards (have to clean river, walk to apple patch, obtain apples, build that association), and because even if one agent learns to clean the river, the other agents will exploit it so much that they will consume all the apples before it can get to the apples to harvest anything resulting from its cleaning. So it will eventually un-learn the cleaning behavior.
Hope this helps!

Thanks for your comments! It helps a lot.
I was feeling just kinda weird that the causal influence paper's A3C baseline in cleanup was around 50 ~ 100 and the Inequity Aversion paper's baseline seems to be around 10~50 not 0 all the way.
I am a beginner in MARL and hoping to try some of my ideas to solve these social dilemmas. Just the word super extensive hyper parameter sweep seems to be very scary for me since I'm trying with my personal computer.
btw, I loved the way you encoded the intrinsic motivation and thanks for the reproduction of the environments in open-source.

Hi, we've found a few bugs that may be contributing to your difficulties reproducing and will ping you here as soon as they're resolved; apologies! Additionally, you may want to try focusing on Harvest, I've found it to be less sensitive to hyperparams.

Thank you so much!!
Actually, I had some fun times experimenting with using A3C in Cleanup and Harvest environments and was quite able to successfully reproduce the results.
Below are the results of re-implementing inequity aversion paper.
CleanUp - Original Paper

CleanUp - My Experiment

However, few things that made me confusing was that the collective returns have soared too early than reported in the paper. I thought timesteps is equal to the timesteps of the single agent. Is timesteps in this multi-agent settings equal to the timesteps of single-agent * number of agents or
is this might be the result of few bugs?
Or maybe, am I good at hyper-parameter tuning? LOL

Hi @natashamjaques, I think you might be able to answer this question best?

Hi @joonleesky, I'm pretty sure that timesteps is the total number of environment steps. It's perfectly possible that you've just found a better set of hyperparams. Would you mind posting what those hyperparams are so that I can:
(1) investigate the issue
(2) Put those hyperparams into the project?

Hi @joonleesky, I'd still love to know what hyperparams you wound up using!

Hello @eugenevinitsky , Sorry for the late replies! I was in the middle of the semester.
I've tested the inequity aversion model again with 5 random seeds with same hyper-parameter, but the soaring performance was observable only 1 out of the 5.
Actually, I've had some fun experiments with adopting the reward schemes as https://gist.github.com/dfarhi/66ec9d760ae0c49a5c492c9fae93984a and some other methods.
Even though the performance was some what unstable, I will commit the training scripts with hyper-parameters, model scripts and the results in a quick time to help some people who needs so.
It was really fun for me to watch how training was going on as shown as below, thank you!

Hello @eugenevinitsky , Sorry for the late replies! I was in the middle of the semester.
I've tested the inequity aversion model again with 5 random seeds with same hyper-parameter, but the soaring performance was observable only 1 out of the 5.
Actually, I've had some fun experiments with adopting the reward schemes as https://gist.github.com/dfarhi/66ec9d760ae0c49a5c492c9fae93984a and some other methods.
Even though the performance was some what unstable, I will commit the training scripts with hyper-parameters, model scripts and the results in a quick time to help some people who needs so.
It was really fun for me to watch how training was going on as shown as below, thank you!

Hello @joonleesky , I met the same problem like you. But I didn't find your commitments. Could you give the link of your contributions?  I would be very grateful.


Allow LogLevelMax to be set in [Service]

Pull Request (PR) description
systemd::manage_dropin { 'maxloglevel.conf':
  ensure        => present,
  unit          => 'chatty.service',
  service_entry => {
    'LogLevelMax' => 'warning',
  }
}

https://www.freedesktop.org/software/systemd/man/systemd.exec.html#LogLevelMax=

@kenyon thanks -  MaxLevelMax sounds like an option that should be there.


Trying to reduce transcribing latency

Hey,
I am trying to implementing whisper streaming code to transcribe the speech to text, and it is working.
But facing latency issues like below. While starting it is transcribing 1.01 seconds from 0.00 but for the next time it is transcribing 13.86 seconds from 0.00. I want the transcribe for every 1 or 2 seconds and I need the output also in the same way ( It came nearly after 30 seconds of speech: 0 4440  Hello, this is Saran Kumar. Good morning.)
INFO    Whisper is warmed up.
INFO    Listening on('localhost', 5000)
INFO    Connected to client on ('<IP_ADDRESS>', 57184)
DEBUG   PROMPT:
DEBUG   CONTEXT:
DEBUG   transcribing 1.01 seconds from 0.00
DEBUG   >>>>COMPLETE NOW: (None, None, '')
DEBUG   INCOMPLETE: (0.0, 0.92, ' hello')
DEBUG   len of buffer now: 1.01
DEBUG   No text in this segment
DEBUG   PROMPT:
DEBUG   CONTEXT:
DEBUG   transcribing 13.86 seconds from 0.00
DEBUG   >>>>COMPLETE NOW: (None, None, '')
DEBUG   INCOMPLETE: (0.0, 4.44, ' Hello, this is Saran Kumar. Good morning.')
DEBUG   len of buffer now: 13.86
DEBUG   No text in this segment
DEBUG   PROMPT:
DEBUG   CONTEXT:
DEBUG   transcribing 27.85 seconds from 0.00
DEBUG   >>>>COMPLETE NOW: (0.0, 4.44, ' Hello, this is Saran Kumar. Good morning.')
DEBUG   INCOMPLETE: (None, None, '')
DEBUG   --- not enough segments to chunk
DEBUG   chunking segment
DEBUG   len of buffer now: 27.85
0 4440  Hello, this is Saran Kumar. Good morning.
DEBUG   PROMPT:
DEBUG   CONTEXT:  Hello, this is Saran Kumar. Good morning.
DEBUG   transcribing 41.89 seconds from 0.00
DEBUG   >>>>COMPLETE NOW: (None, None, '')
DEBUG   INCOMPLETE: (39.74, 41.86, ' Good morning.')
DEBUG   --- segment chunked at 4.44
DEBUG   chunking segment
DEBUG   len of buffer now: 37.45
DEBUG   No text in this segment
DEBUG   PROMPT:  Hello, this is Saran Kumar. Good
DEBUG   CONTEXT:  morning.
DEBUG   transcribing 65.24 seconds from 4.44
Can you please help me to enhance this code to give me the results for every 1 or 2 seconds.

how big audio chunks do you send to the server? can you try simulating from file with whisper_online.py ? and with unaware mode?
do you use gpu and faster whisper?

I am using CPU and Faster whisper in backend.
I am trying with min-chunk-size=1.0 seconds and using the same whisper_online.py file.


Can't get rid of recursive_type_depth warning

I can't seem to get rid of the following warning:
(pid=1230) Some types are disabled by default due to being incompatible with Mypy, it is highly recommended
(pid=1230) to use Pyright instead and configure Prisma Python to use recursive types. To re-enable certain types:
(pid=1230)
(pid=1230) generator client {
(pid=1230)   provider             = "prisma-client-py"
(pid=1230)   recursive_type_depth = -1
(pid=1230) }
(pid=1230)
(pid=1230) If you need to use Mypy, you can also disable this message by explicitly setting the default value:
(pid=1230)
(pid=1230) generator client {
(pid=1230)   provider             = "prisma-client-py"
(pid=1230)   recursive_type_depth = 5
(pid=1230) }
(pid=1230)
(pid=1230) For more information see: https://prisma-client-py.readthedocs.io/en/stable/reference/limitations/#default-type-limitations

It appears every time I load the python client. My schema.prisma file contains:
generator client {
  provider  = "prisma-client-py"
  recursive_type_depth = 5
  interface = "sync"
  output    = "../../../src/prisma"
}

And I also tried setting recursive-type-depth = -1 without luck. Is there anything I am missing?

Huh this is very weird, I've never seen this before.
If you set the PRISMA_PY_DEBUG_GENERATOR and PRISMA_PY_DEBUG environment variables to 1 you should see some debug logs and the config that Prisma Client Python will be written to prisma/generator/debug-params.json (the absolute path should be show in the logs). Could you share that JSON file please?

Thanks Robert!
I did set the env vars and I see some debug logs when using the client, but the debug-params.json file is not generated (can't locate it anywhere in the file system). Is there anything else I should enable?

Huh, you should see logs that look like this:
$ PRISMA_PY_DEBUG=1 PRISMA_PY_DEBUG_GENERATOR=1 prisma generate --schema=tests/data/schema.prisma
[DEBUG  ] prisma.cli.prisma: Running prisma command with args: ['generate', '--schema=tests/data/schema.prisma']
[DEBUG  ] prisma.cli._node: Checking if nodejs-bin is installed
[DEBUG  ] prisma.cli._node: Using nodejs-bin with version: 18.4.0
[DEBUG  ] prisma.cli._node: Attempting to preprend /Users/robert/code/prisma-client-py/.venv/lib/python3.10/site-packages/nodejs/bin to the PATH
[DEBUG  ] prisma.cli._node: Using PATH environment variable: /Users/robert/code/prisma-client-py/.venv/lib/python3.10/site-packages/nodejs/bin:/Users/robert/code/prisma-client-py/.venv/bin:/Users/robert/.local/bin:/Users/robert/Library/Python/3.10/bin:/Users/robert/Library/pnpm:/Users/robert/Library/Python/3.9/bin:/opt/homebrew/opt/openjdk@11/bin:/opt/homebrew/opt/libxslt/bin:/Users/robert/.poetry/bin:/Users/robert/.nvm/versions/node/v16.14.2/bin:/Users/robert/.pyenv/shims:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/go/bin:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Apple/usr/bin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Applications/Postgres.app/Contents/Versions/latest/bin:/Users/robert/.codon/bin:/Users/robert/.cargo/bin
Environment variables loaded from .env
Prisma schema loaded from tests/data/schema.prisma
  prisma:GeneratorProcess  [DEBUG  ] prisma.generator.jsonrpc: Replied with {"id": 1, "jsonrpc": "2.0", "result": {"manifest": {"prettyName": "Prisma Client Python (v0.8.1a)", "defaultOutput": "/Users/robert/code/prisma-client-py/src/prisma", "denylist": null, "requiresEngines": ["queryEngine"], "requiresGenerators": null}}} +0ms
  prisma:GeneratorProcess  [DEBUG  ] prisma.generator.generator: Wrote generator params to /Users/robert/code/prisma-client-py/src/prisma/generator/debug-params.json +60ms
  prisma:GeneratorProcess  [DEBUG  ] prisma.generator.generator: Wrote generator data to /Users/robert/code/prisma-client-py/src/prisma/generator/debug-data.json +54ms

There will be more logs than this but can you see the line that says Wrote generator params to <path> in your local logs?

My bad, I was trying to load the client module in python instead! Got it and sent it to you via email.
Eduard

hmm this is really strange...
Thanks for sending those logs over! I can't see anything in there that looks suspicious unfortunately, I was thinking it could be because something internally between the schema parsing and the config parsing is going wrong but it looks completely normal to me.
I also can't replicate this using your data which is even stranger.
This is the script I'm using to try to replicate the issue:
from pathlib import Path
from prisma.generator import models as m

m.DEBUG_GENERATOR = True

params_file = Path("<path to params.json>")
contents = params_file.read_text()

d = m.PythonData.parse_raw(contents)

This doesn't print any warnings for me...
If I modify the debug-params.json file to remove the "recursive_type_depth": 5 entry then it works as expected and prints a warning.
I have no idea what's really going wrong here :/

Thanks for looking into this @RobertCraigie. No worries, I can just ignore it for now, I will let you know if I eventually figure out what is causing it.

Did you figure it out?

Not really, I just ended up replacing that piece of code on the fly for production installs...


Download content assertions

Port from https://github.com/livewire/livewire/pull/7769

Thanks @nuernbergerA and @christophrumpel - much appreciated


PeriodID and Updating Periods

Am curious to workflow for MTD particularly around creation and updating of periods.
We see can update a period using:  Update a self-employment update period [test only], method: PUT
Path parameters: nino, selfEmploymentId, periodId
We understand the PeriodID is returned from create a period but what if the flow is not continuous and a user returns to update a period at a later date, how is the PeriodID obtained?  The get periods end point returns dates for given PeriodID so not useable.  Is there an expectation that once a period is created that the PeriodID is stored our side ??
Welcome advice around this.
Kind regards

Hi @NickyJP
You can use the retrieve all periods endpoint  (e.g. /self-employments/{id}/periods). This will return a list of summarised periods for a self-employment, each containing the from/to dates and its associated ID.
Thanks!

Thank you @GlassAndOneHalf, we missed that end point.


fixing bug 107

Hi :)
Closes #107

Adjusting the template "miniurl.storageSecretName" to be the same value as .Values.postgres.existingSecret . Hence, all occurences of this template will refer to the existingSecret value.
Fixing required function syntax in storage.yaml.
Adjusting storage.yaml to use existing password while upgrading.


Run trailing debounce when browser tab is closed

A common issue with debounced API calls is that when the user closes the browser tab, the debounced function may not have run yet. This is a frequent cause of data loss. The debounce implementation now prevents this issue by running the trailing debounce immediately if the tab is closed prior to the trailing timeout.
The code detects whether it's running in an environment with access to the DOM. In runtimes where this function is unavailable (e.g. Node.js) the new functionality is ignored since would not be relevant in that context.
Resolves #2983 @jashkenas

I appreciate your willingness to contribute, but unfortunately, I have to reject this change. There are two main reason for rejecting.
Firstly, changes of this type are highly problematic. The implementation of debounce and throttle is extremely tricky to get right, as shown by the large number of changes that went into them and the large number of tests dedicated to just those two functions. At the same time, literally millions of developers rely on these functions working correctly every day. Unless the behavior of debounce is clearly broken, which is not the case here, I cannot justify risking new bugs by making "feature additions" that are arguably somewhat arbitrary. The use case you're trying to address is extremely specific, and I'm not even fully convinced that your suggested changes will address it completely.
Secondly, you can realize the suggested behavior without changing the implementation of debounce at all. Instead of using a debounced function directly as an event handler, like in the example below,
var handler = _.debounce(expensiveAPICall);
document.querySelector('#button').addEventListener(handler);

you can define a new, reusable wrapper function that manages a debounced version of the callback as well as a visibilitychange event handler:
function debounceUntilHidden(callback) {
    var bound = false, debounced = _.debounce(callback);

    function handleHidden() {
        if (document.visibilityState !== 'hidden') return;
        debounced.cancel();
        document.removeEventListener('visibilitychange', handleHidden, {
            capture: true,
        });
        bound = false;
        callback();
    }

    return function() {
        if (!bound) {
            document.addEventListener('visibilitychange', handleHidden, {
                capture: true,
                passive: true,
            });
            bound = true;
        }
        debounced();
    };
}

var handler = debounceUntilHidden(expensiveAPICall);
document.querySelector('#button').addEvenListener('click', handler);

This will give you a clean separation of concerns and responsibilities. Your debounceUntilHidden can do exactly what you need it to do, and you can reuse it everywhere. At the same time, you can rely on _.debounce to behave the same way it has always done.
I release the above example code under the unlicense; you are free to adjust and use it, without attribution, at your own risk. I hope this addresses your use case sufficiently.
I will now close this pull request, but you can still reply if you wish.


Log if general.classpaths or general.dynamic.classpaths is set

This is needed when #885 is completed.  Accumulo should log (probably at the INFO level) if an application is started and general.classpaths or general.dynamic.classpaths is set.

I'm taking this over from @Manno15

@mikewalch the properties are printed at the start of services: master, tserver, monitor, tracer.  Can you explain better what is being asked here?  Are you looking for an additional info message that says using "general.dynamic.classpath" (because it is set to something) vs. "general.classpath" (because it is empty)?

@hkeebler The properties are deprecated as of #885. The preferred way of setting a class path is to set the CLASSPATH environment variable in conf/accumulo-env.sh (or whatever environment is appropriate for a user's particular deployment). This replaces the general.classpaths configuration property.
As for the general.dynamic.classpaths property, that should also be deprecated. The dynamic class loading features are not, and have never been, stable in Accumulo. We were trying to provide a reasonable mechanism for users to drop in user code without restarting the servers, but this was always unreliable. Users can achieve a similar result by using a custom class loader (of their choosing) and configuring it appropriately, using built-in Java features to specify the system class loader with a system property: -Djava.system.class.loader=com.test.YourCustomClassLoader.
So, for this issue, we just want to mark the properties deprecated, and then print a warning if they are set by the user, to highlight the fact that they are deprecated.

Thank you.  That makes sense.

@ctubbsii  If a property is set and is deprecated a warning is logged by server.ServerUtil in the respective service log at system startup.  The general.dynamic.classpath property is 'zk mutable: no'  and cannot be set in the shell or java api InstanceOperation.setProperty() so I believe it is already properly logging the deprecation.
The only change here,   I believe, is to mark the property deprecated in Property.java.  Additionally, since the property is deprecated I removed the defaultValue - seemed to make sense.
Note that the properties are printed at service startup with empty values.  What if an empty property with deprecated set NOT be printed?

Marking the property @Deprecated in Property.java should also affect the generated documentation, if I remember correctly.

What if an empty property with deprecated set NOT be printed?

I think you're suggesting that we stop printing deprecated properties that aren't set? If so, I think that could be a good idea, but I can also see it being useful to somebody debugging to explicitly see in the logs that the property wasn't set. I don't have a strong opinion either way.