studio config file should specify resource picker tabs by itself

The underlying issue is an incomplete separation of concerns between Studio frontend and OCW configs... When you insert links / resources into markdown, there’s this picker dialog with tabs (below). What tabs show up is determined by the config. (So ocw-www and ocw-courses can show different tabs, for example).

But—as currently written—studio needs know the set of possible tabs. The possible tabs and labels are stored in studio here:  https://github.com/mitodl/ocw-studio/blob/f00c392adbd827ea9c68051ef61a406c881a9b82/static/js/components/widgets/ResourcePickerDialog.tsx#L52
And the original commit specified a tab resource-list that studio was not prepared to deal with https://github.com/mitodl/ocw-hugo-projects/commit/9fe2ed0bb5d057535339274cb83d39f052af0337#diff-4e28d8dc0f3e2776c95d55c22426e08abadbb81b90355b2d10de8772fb7fcde1R37
The tabIds are hard-coded content type values. It would be good if we avoided this hard-coding of "possible tab" content types all together, and config handled it all
Originally posted by @ChristopherChudzicki in https://github.com/mitodl/ocw-hugo-projects/issues/206#issuecomment-1171415424

Per discussion with @Ferdi and @pdpinch, this is the current plan for this issue:

Leave the current config files in ocw-hugo-projects unchanged.
The frontend should handle "known" types with hardcoded values (resources) and for anything else, use the label property from the config file. For example,

  - category: Content
    folder: content/video_galleries
    label: "Video Gallery"
    name: video_gallery

and
link:
   - video_gallery

would create a TabSettings object with the following properties:
     title: "Video Gallery" #from the label, as above
     id: "video_gallery" #from the name, as above
     contentType: "video_gallery" #from the name, as above
     resourcetype: null #default
     embeddable: false #default
     singleColumn: true #default

If there is no associated content type defined in the config file, ignore the name provided in the link field and don't create a tab in the ResourcePicker.

For context as to the reasoning behind this, the config files should support creating new content types that will then also appear in the ResourcePicker. Currently, this requires an additional set of changes to be made manually in the frontend. The new plan will allow for the existing config files to support creating new content types and associated tabs in the ResourcePicker with reasonable defaults. Additional changes to a content type's settings (such as making a new content type embeddable) will still require manual updates to the frontend. Since creating new content types will likely not be very frequent for most users, it is reasonable to set these defaults for new content types so as to avoid adding unnecessary complexity to the config files.


Add builtin gateway in the demo

Description
The builtin gateway is here. It would be great to have it running in the demo

Triage: also add --without-gateway to not deploy a gateway


TypeError: '[object Object]' is not a function (evaluating 'obj.toJSON()') after upgrade from 0.12.16 to 0.13.*

I'm using Karma with gulp (directly, not through gulp-karma) and attempted to upgrade Karma to version 0.13 and now running the test suite fails with a TypeError. I tried 0.13.15, 0.13.1, and 0.13.10 and they all have the same problem.
$ gulp karma
[11:57:58] Using gulpfile ~/<path>/gulpfile.js
[11:57:58] Starting 'karma'...
WARN `start` method is deprecated since 0.13. It will be removed in 0.14. Please use
  server = new Server(config, [done])
  server.start()
instead.
03 11 2015 11:57:59.172:INFO [karma]: Karma v0.13.15 server started at http://localhost:9876/
03 11 2015 11:57:59.177:INFO [launcher]: Starting browser PhantomJS
03 11 2015 11:58:00.445:INFO [PhantomJS 1.9.8 (Mac OS X 0.0.0)]: Connected on socket NNFnU6fvJSQUedQkAAAA with id 83297669
PhantomJS 1.9.8 (Mac OS X 0.0.0) ERROR
  TypeError: '[object Object]' is not a function (evaluating 'obj.toJSON()')
  at http://localhost:9876/socket.io/socket.io.js:5362
PhantomJS 1.9.8 (Mac OS X 0.0.0): Executed 0 of 0 ERROR (0.161 secs / 0 secs)
[11:58:00] Finished 'karma' after 1.73 s

For the record, the problem is not solved by fixing the usage of the deprecated interface.
This is possibly related to #1684. Note also that this is not specific to PhantomJS - the Firefox and Chrome launchers have the same problem.
$ node --version; npm --version
v4.2.1
2.14.7

Thank you for your assistance!

After doing some investigation, this issue is caused by https://github.com/Automattic/has-binary/issues/4.
I don't think there's anything that needs to be done at your end.
Leaving open for now, but your call.

Resolved now that Socket.io has made a release that includes the fix for has-binary.

Thanks @rhoggSugarcrm for keeping track of this :)


allowing contracts to be absent  in ethereum:*

The new default TS files are valid:
weiwu@damascus:~/IdeaProjects/TokenScript/ERCs$ TOKENSCRIPT_SCHEMA=/home/weiwu/IdeaProjects/TokenScript/schema/tokenscript.xsd ../examples/validate.sh ERC20/ERC20-TokenScript.xml
ERC20-TokenScript.canonicalized.xml validates
[Valid]   : ERC20/ERC20-TokenScript.xml
weiwu@damascus:~/IdeaProjects/TokenScript/ERCs$ TOKENSCRIPT_SCHEMA=/home/weiwu/IdeaProjects/TokenScript/schema/tokenscript.xsd ../examples/validate.sh ERC721/ERC721-TokenScript.xml
ERC721-TokenScript.canonicalized.xml validates
[Valid]   : ERC721/ERC721-TokenScript.xml

Looks good to me. Waiting for @James-Sangalli

I consider that an approval. I don't want you to waste time work on buggy TS  so I went ahead and merged it.


New objects not rendered with SEMANTIC sensor in MP3D

🐛 Bug
New objects imported into an MP3D scene are not rendered with SEMANTIC sensor.
In this case the separate semantic SceneGraph is being rendered. Imported objects are not currently being added to this separate SceneGraph and therefore are not rendered by the sensor.
To Reproduce

Add an MP3D scene to the test_scenes list in <path-to-habitat>/examples/tutorials/semantic_id_tutorial.py.
Run the script python <path-to-habitat>/examples/tutorials/semantic_id_tutorial.py

Example output:

Expected behavior
The chair and box should be rendered in the SEMANTIC image.
Additional context
Related to new functionality in #668

This is addressed by #679.


Change SyncUser.logIn() to invoke its callback on the main thread

Also rewrote the documentation to be clearer.
Fixes #4338. Breaking change.
I'm quite against offering the option of a queue to be specified as an argument. This would increase our API surface for negligible gain.

The object server test that failed is one that JP wrote for asyncOpen, and has nothing to do with this PR. It's been failing very occasionally; I'm going to investigate when I have time.


Write counter

Hello, I’ve got a SRI512 tag & I want to write a new value on the counter in sector 5, I’ve see it’s possible with a write block but idk how with srix tools.
Thanks!

I wrote srix-restore to skip the first 6 blocks, because some of them are "not rewritable" (e.g. Countdown Counters [5-6]).
Also I don't have a SRI512, so I cannot properly test it.
Can you tell me more about what do you want to do with your Block 5? Do you want to reset the OTP area?

I want to update the count down counter, I know it’s possible because another repo made that and I’ve tried and It’s working well, If you can implement this it would be great

Yeah, no problem, it should be pretty easy to implement. In the meantime, can you send me the link for the other repo?

Thank’s a lot for what you do ! https://github.com/Depau/nfc-st-srx
I’m just testing to crack my Transport ticket ;)

Just out of curiosity, which reader are you using?
I was thinking of writing a custom userspace driver for the ACR122U (and the PN532 in the future) so I can remove the libnfc dependency.

Does it mean we can fully restore a key, even the counter ?
I ask because I have a "dead" key where counter are set to 0 after trying to use "srix-reset"

You cannot increment the Countdown Counters on B5 and B6. The srix-reset tool decrement the counter (you can only do this for about 1024 times) to reset the OTP resettable bits area.

I’m using an ACR122U on Kali Linux with Libnfc, it’s work very well with your script, if you have discord or anything i’m working on SRI512 Tag

Hi, I'm reopening this discussion after 3 years, I hope it's not too difficult to answer me. I tried to change the count down counters without success. With the restore function I cannot modify the OTP bits (probably blocked) and therefore I cannot trigger the function that modifies sector 5 and 6 in the reset function. Despite the blocked OTP bits, the official machine that modifies this tag manages to lower the counter with each operation. Is there a way I can do the same thing too? I could manually force the parameter in otp-reset but I would like something more practical.
Thanks!

As I said (don't want to be rude):

You cannot increment the Countdown Counters on B5 and B6. The srix-reset tool decrement the counter (you can only do this for about 1024 times) to reset the OTP resettable bits area.

You can check the datasheet for more information: https://www.st.com/resource/en/datasheet/st25tb04k.pdf
On page 10 there is the Memory mapping of the ST25TB04K/SRIX4K. As you can see, block 5 and 6 are "Count down counter" blocks (more info at page 13 about these blocks). You cannot increment these counters, only decrement them.
srix-reset only helps you "reset" the 5 resettable OTP blocks (0-4), by decrementing the block 6 and entering the "reload" state. You can only reset this area 1024 times.

With the restore function I cannot modify the OTP bits (probably blocked) and therefore I cannot trigger the function that modifies sector 5 and 6 in the reset function.

The machine that you are talking about decrement that counter by 1 every operation you make. It never increment it.

Hi, don't worry, you didn't seem rude to me, in fact your explanation only helps me. However my problem is not directly related to what you said. Yes, I want to change the value of the counter, but I'm interested in lowering it, not raising it, which should theoretically be possible.My only problem was that with the reset function, the counter lowering only occurred if the OTP bytes had been changed.In my case it is impossible to change the OTP because as it is written in the documentation you attached, the OTP can be set to be non-editable. To solve the problem I'm trying to get my hands on your code to make it work without the need for OTP checking.  While I'm at it I also wanted to try changing a few functions

Which block are you trying to edit? Can you share the value of block 0xFF (system block)?

my reading of the card gives the following output (I only take the part that interests me)
[00] FF FF FF FF [01] FF FF FF FF [02] FF FF FF FF [03] FF FF FF FF [04] FF FF FF FF [05] FC FF FF FF [06] FF FF FF FF [07] FF FF FF FF
the system block is: FF FF FF FF with OTP_Lock_Regs all unlocked from b24 to b31.
My goal is to transform that FC into a FB and subsequently into an FA and so on. In the OTP reset command, since my blocks from 0 to 4 are all the same as FF I do not continue with the routine that updates block 6 and therefore block 5 does not change.

You simply can't.

32-bit binary counters
The two 32-bit binary counters are located at block addresses 5 and 6. The ST25TB04K uses dedicated logic
that only allows the update of a counter if the new value is lower than the previous one. This feature allows the
application to count down by steps of 1 or more. The initial value in Counter 5 is FFFF FFFEh and is FFFF FFFFh
in Counter 6. When the reached value is 0000 0000h, the counter is empty and cannot be reloaded. For each
counter 5 and 6, the update is done by issuing the Write_block command. The Write_block command writes the
new 32-bit value to the counter block address. Table 6 shows examples of how the counters operate.
The counter programming cycles are protected by automated antitearing logic. This function allows the counter
value to be protected in case of power down within the programming cycle. In case of power down, the counter
value is not updated and the previous value continues to be stored.

Block 5 and 6 can only be decremented.

Just issue a Write_block command, 09 05 FB FF FF FF.


Feature: Import existing transaction

As of now, it's possible to create new transactions. Besides that we should add a button "Import Transaction" which let's the user importing the JSON String of an existing transaction. Otherwise it's only possible to sign simple transfers.
E.g. in JUNO they need more advanced transactions to delegate stuff etc.
A simple textbox to import pre-formatted JSON should be enough.

This would be really nice.
Let's track this in #29 since it will require changes to Cosmjs and this app to support this feature.


feat(curriculum): add animations to block 5.2 of the English Curriculum

Checklist:

[X] I have read and followed the contribution guidelines.
[X] I have read and followed the how to open a pull request guide.
[X] My pull request targets the main branch of freeCodeCamp.
[X] I have tested these changes either locally on my machine, or GitPod.

Hey @DanielRosa74, didn't you just upload a new audio file to the CDN for 5.2-3? Won't the timestamps for that be different and you will likely need to adjust all the scenes in that section?

Hey @DanielRosa74, didn't you just upload a new audio file to the CDN for 5.2-3? Won't the timestamps for that be different and you will likely need to adjust all the scenes in that section?

Yes, @moT01! This was sent prior to that. I did not imagine the file would be ready that fast.

Do you want to make those changes on this PR?


Updated Task And Contribution Table

Added information about my contribution to this sprint

I thought I tried to commit to the master of ItJustWorks but apparently not?


Mention contributors in CONTRIBUTING.md

Codecov Report

Merging #184 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #184   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          11     11
  Lines        1303   1300    -3
=====================================
- Hits         1303   1300    -3

Impacted Files
Coverage Δ

ldap2pg/defaults.py
100% <0%> (ø)
:arrow_up:

ldap2pg/config.py
100% <0%> (ø)
:arrow_up:

ldap2pg/role.py
100% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

@cbandy @leorenc , i wanted to mention your help in ldap2pg this way. GitHub contributors page is incomplete ;-) Are-you ok ?

You can see the output at https://github.com/bersace/ldap2pg/blob/contributors/CONTRIBUTING.md


Fixed jsdoc return typos

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


merge from konsum-frontend-svelte,template-arlac77-github,template-svelte-app

package.json

fix(deps): add ^1.2.45 remove ^1.2.44 (dependencies.mf-styling)
chore(deps): add ^3.0.7 remove ^3.0.6 (devDependencies.vite)

.github/workflows/browser_ci.yml

chore: add ubuntu-latest (jobs.test.runs-on)
chore(deps): remove 18.7.0 (jobs.test.strategy.matrix.node)

package-lock.json

add missing package-lock.json from template

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

npm package (@latest dist-tag)
v1.32.2
GitHub release

Your semantic-release bot :package::rocket:


Implement indicators

This implements showing indicators for other slicers on the same volume. The proposed implementation allows keeping the API similar to what we had: you still simply create unit slicer objects. This keeps the API simple and flexible.
It works by making use of dictionary id's and pattern matching callbacks. Every component of the slicer has an id composed of:
context-id, scene-id, axis. When the scene-id is shared between slicer objects, they also share indicators. And this all works well by default, because the scene-id is derived from id(volume).
Also consider the added example, that has two slicers for the same axis, and indeed both appear in the other slicer:

This also includes some changes to make the low-res images display exactly in the same position as the original image.

The only thing is that with the long id names, it's quite painful to look at the callback graph [...]

Thanks for the tip about the callback graph, I had not discovered it yet!  It seems very useful ... if it wasn't so cluttered by the long id names ;)  I created #9 to track this. Using short string id's except for where we really need the dict-id's should already help a lot.


Shorten the text in the menu

Change and shorted the menu option to make it look better.

Thanks for the PR! I'm keeping this on hold until I work on a next update

Thanks for the PR! I'm keeping this on hold until I work on a next update

Any estimate when the next update will be released?

Nothing certain at this time.
If you want to change those texts on your forum in the meantime, you can use the Linguist extension https://discuss.flarum.org/d/7026-linguist-customize-translations-with-ease

Rebased as dd076391fcb0fe601638feb7fb8c445d45fa56bb . Included in version 0.3.0


Asking for bad System.Text.Json version (for .NET Core 6.0)

Simple.Odata.V4.Client is referencing System.Text.Json, with a limitation (netstandard Version 2.0) to< 6.0.0
This is not compatible with Net Core 6.0, more exact Visual Studio 2022.
I have tests using this to test an Odata server.
I get the following error:
Tests.OpenDataCore.Server to resolve this issue.
Tests.OpenDataCore.Server -> Microsoft.AspNetCore.Mvc.Testing 6.0.0 -> Microsoft.Extensions.Hosting 6.0.0 -> Microsoft.Extensions.Logging.EventSource 6.0.0 -> System.Text.Json (>= 6.0.0)
Tests.OpenDataCore.Server -> Simple.OData.V4.Client 5.25.0 -> System.Text.Json (>= 5.0.2 && < 6.0.0).	Tests.OpenDataCore.Server	C:\Work\CoreLibraries\OpenDataCore\Source\Tests.OpenDataCore.Server\Tests.OpenDataCore.Server.csproj	1
Please issue a version targeting the net60 framework (as it seems netstandard is going away) that references the current framework.

I have a pull request (#833) to fix this.

While we wait, and for those that desperately need it, check out the PanoramicData fork:

https://www.nuget.org/packages?q=PanoramicData.OData
https://github.com/panoramicdata/PanoramicData.OData.Client

You can also use the following packages references to bypass the problem:
    <PackageReference Include="Simple.OData.V4.Client" Version="5.*" NoWarn="NU1608" />
    <PackageReference Include="System.Text.Json" Version="6.*" NoWarn="NU1608" />

The same problem exists for Simple.Odata.Client

Should this be closed? Looks like https://www.nuget.org/packages/Simple.OData.V4.Client/5.26.0 fixes this.

Yes I believe this one should be closed.

Closing


Please cut a release of Cloud Asset

Pending fixed codegen in #5987.

@danoscarmike I've got a question about packaging metadata / branding:  at the moment, setup.py has the name of the installed package as google-cloud-cloudasset, which has two drawbacks:

It sounds inane when pronounced.
It doesn't match the package structure (google.cloud.asset_v1).

I would prefer just using google-cloud-asset as the PyPI name.


Add a flag that tracks whether the Route's structure has updated, but statistics have not been synced yet

This PR addresses a perhaps minor issue in pyvrp::search::Route: after inserting/removing nodes, the associated statistics are not updated until Route::update() is explicitly called. The reason is performance: updating is somewhat expensive, and typically the call-site modifying the routes knows it can delay updating until all modifications have been made. That's much more efficient.
The downside is that the Route object can be left in a somewhat broken state, where after updating the Route's nodes one forgets to call update(). Using the statistics in this case is not something we currently catch in any way. This PR adds a dirty flag that tracks the state of Route, and causes asserts to fail when the statistics have not yet been updated. All this only applies in debug mode, so no runtime penalty is paid for these checks by our users.

Notes:

It is essential that you add a test when making code changes.
This keeps the code coverage level up, and helps ensure the changes work as intended.
When fixing a bug, you must add a test that would produce the bug in the master branch, and then show that it is fixed with the new code.
New code additions must be well formatted. Changes should pass the pre-commit workflow, which you can set up locally using pre-commit.
Docstring additions must render correctly, including escapes and LaTeX.

An alternative is something like the following in all statistics members:
if (dirty)
    update();

This way we could even make update() private altogether.
The downside is that a lot of these members are used in really tight loops, where even the if(dirty) check adds up. Additionally, we might not want simple members to (somewhat unexpectedly) be really expensive because they're the first one called after a structure change.
I think it's reasonable to force the programmer to think about exactly where the call to update() goes in this case. The debug statements should at least help point out the issue in case it's forgotten.


Error in the new version of flow 0.55

Library in version<EMAIL_ADDRESS>To get this error just run flow:
Error: node_modules/immutable/dist/immutable.js.flow:519
519:   static of<T>(...values: T[]): SetSeq<T>;
                                     ^^^^^^^^^ SetSeq. This type is incompatible with
383:   static of<T>(...values: T[]): IndexedSeq<T>;
                                     ^^^^^^^^^^^^^ IndexedSeq

@leebyron Oops, sorry I didn't upstream a fix for this, but internally I resolved this in D5708450. On that diff, I wrote:
The Immutable API for sets has a fatal flaw, because Set is defined to be a
subtype of Collection<T,T>. This makes it impossible to define methods on the
base class which modify either K or V in a type-safe way.
We previously ran into this exact issue with Immutable.Iterable.map, which
takes an Iterable<K,V> and a function V => M and produces an
Iterable<K,M>. This creates a problem, because Immutable.Set<T> is declared
to be a subtype of Immutable.Iterable<T,T>. Here's an example of the problem:
function f(iter: Iterable<string, string>): Iterable<string, number> {
  // what does this return? if we pass a set, this function's type is wrong
  // if we pass any other iterable, this function's type is OK
  return iter.map(s => s.length);
}

We fixed this by removing the declaration of Iterable.map and instead
declaring the signatures on every subclass.
This issue follows the same pattern. If B is a subtype of A, then
Class<B> is a subtype of Class<A>.
function f<K,V>(S: Class<Seq<K,V>>, ...values: V[]): Seq.Indexed<V> {
  return S.of(...values);
}

// We think this returns Seq.Indexed<string> (Seq<number,string>) but it
// actually returns Seq.Set<string> (Seq<string,string>).
f(Seq.Set, "foo", "bar");

The fix takes the same form as well: remove the declaration. Since it's an
alias for Seq.Indexed.of, I've codemodded all callers to call that method
instead.

@samwgoldman
So can we expect this error to be corrected in the version<EMAIL_ADDRESS>? :)

@szagi3891 I don't think so. The fix is a single line: just remove the definition of Immutable.Iterable.of from the flow type definitions. It might exist at runtime, but due to subtyping it's unsafe.

Hey @samwgoldman, just wanted to make sure I understood your suggestion ☝
We're using 3.8.1, so it looks like we should ditch this line. But after you mentioned nothing would be done in 4.0.0-rc.3, does that mean something still might be done on the 3.8 branch?
Should we submit a PR / run with a fork / hang tight for a while?

Same here. So the solution is to remove the line?

It seems we have a local copy of the type definitions, so the change I made isn't going to sync out (we should keep these in sync, but alas).

Any chance you can publish this as a third party definition in https://github.com/flowtype/flow-typed? I think this would make it a lot easier to work on flow types collaboratively (i.e for https://github.com/facebook/immutable-js/issues/1223).

@szagi3891 I don't think so. The fix is a single line: just remove the definition of Immutable.Seq.of from the flow type definitions. It might exist at runtime, but due to subtyping it's unsafe.

What if you automatically pull in type definitions from node_modules/?

I agree with @duro, it would be good to either port these types to flow-typed so that it's easier to fix them manually. But releasing a new version with the fix would be really nice.

I've forked and pushed a branch to remove this line. Feel free to use my fork to get rid of the flow errors.
If you're using yarn:
$ yarn add FormAPI/immutable-js#v3.8.1-flow-fix

Or add this line to your package.json:
"immutable": "FormAPI/immutable-js#v3.8.1-flow-fix"

I think removing Seq.of is the right call, even though it's breaking. It's really just an alias for IndexedSeq.of and also a less commonly used API. Will include in the next release.

@leebyron Will this be released in a 3.x release too?

@williamboman Since it's merged with master I think it will be available in the next RC (v4.0.0-rc.3)

@williamboman Since it's merged with master, I think it will be available in the next RC (v4.0.0-rc.3)

This is released in the latest rc

@williamboman unfortunately this is a breaking change, so incompatible with a patch release atop the 3.x releases

OK I could work around this issue without having to update to 4.0.0, which I can't do ATM.
Here are the instructions: https://gist.github.com/fabiomcosta/617ef69320a5539ab5cdc510b0b648af


Fixed contribution button functionality on main page

🛠 Issue (Number)

Closes #1994
Description
The contribution button on the main page is not functioning. I have identified the issue to be related to the z-index of a div element on the main page, which is set to -1, causing the div to be hidden beneath the body element and preventing interaction with the button. I have committed a solution to this issue in the newly created branch fix-landing-page-bug.
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] I have made this from my own
[ ] I have taken help from some online resources
[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] The title of my pull request is a short description of the requested changes.

ATTACH SCREEN-SHOTS / DEPLOYMENT LINK

Hello @TusharKesarwani ,
I wanted to follow up on this pull request (PR #1994) that I've submitted to fix the issue with the contribution button on the main page. I've identified the problem to be related to the z-index of a div element, and I've committed a solution in the fix-landing-page-bug branch.
Could you please take a look at this PR when you have a chance? I'm happy to address any feedback or concerns you may have. Please let me know if there's anything else I can do to help get this merged.
Thank you for your time and consideration!


[REQUEST] AMD/Metal GPU Support

I noticed in the readme.md that there is work going into supporting AMD GPUs.  How can I help with this?  I have some hardware of my own and would love to be able out.

Seconding this notion, even if for the thrill of getting hands dirty.

I restored METAL to the array and ran it on an M1 Max laptop with 32GB of ram with a non-simple scene setup and it's running fine (it's been running the third step of going from the fine output folder to frames output folder step for over 3 hours now and has another 3 and a half to go...). The time estimate with a CPU-only approach was almost 20 hours.

Oh worth noting the final step errors from running out of GPU memory 🥲

I don't have time to provide much support on development, and I don't want to mess with compiling the program either. Send me a version of the program compiled for Windows 11 64-bit though, and I can test with these specs:
CPU: R9 5900X
GPU: RX 7900 XT
RAM: 64 GB

Hello all! I have done some initial tinkering to try and provide AMD support for mac/linux/WSL. Would appreciate any testers or PR's into the amd_support branch, but be warned its nearly entirely untested so far. I have also updated the infinigen_gpl submodule to point to a branch of that repo to allow me to change the relevant enable_gpu code

Hello
No GPU here only AMD Ryzen 9 7900x3D
Windows 11 Pro 64bits


Docs: Added Solution to Leetcode 473

Related Issue
Closes #1082
Description
This PR adds the solution to leetcode problem 473 - (Matchsticks to Square)
Type of PR

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

Screenshots / Videos (if applicable)

Checklist

[X] I have performed a self-review of my code.
[X] I have read and followed the Contribution Guidelines.
[X] I have tested the changes thoroughly before submitting this pull request.
[X] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[X] I have commented my code, particularly in hard-to-understand areas.
[X] I have followed the code style guidelines of this project.
[X] I have checked for any existing open issues that my pull request may address.
[X] I have ensured that my changes do not break any existing functionality.
[X] Each contributor is allowed to create a maximum of 4 issues per day. This helps us manage and address issues efficiently.
[X] I have read the resources for guidance listed below.
[X] I have followed security best practices in my code changes.

Additional Context
N/A

@Ajay-Dhangar Kindly Review and Merge It
Thankyou

@shreyash3087, you need to add something to this file to count its score on your leaderboard. Then, you can try it at the bottom.
---

Authors:

{['github_username'].map(username => (
 <Author key={username} username={username} />
))}

for your author profile in docs


Document actions read permission

According to the release notes for v4, the actions: read permission is now needed.
I didn't see any explanation as to why, so if you could add that, this would be even better.

It's not needed anymore since #288.

Ah ok, so it was only 4.0.0. That's great!


feat: support shiki twoslash

This PR allows the highlighter to use https://github.com/antfu/shikiji/tree/main/packages/shikiji-twoslash to render TypeScript code snippets with type information.
TODO:

[ ] https://github.com/antfu/twoslash-cdn supports to pass an unstorage instance to cache the fetched .d.ts files across builds. But not sure how we could pass the options and instance for users to configure. Maybe a mdc.storage object like Nitro?
[ ] Find a way to have TwoSlash hover display even outside of the code block with overflow: hidden - This is more like a styling issue and general to Shikiji. It's non-blocking, I'll try to experiment in parallel.

Preview:

Close in favor of #129, later I will make a module to integrate twoslash for nuxt/content and MDC


r2.17 cherry-pick: 314385ab894 "Bump minSdkVersion of TFL Android libs to 21."

Refer to the original commit: https://github.com/tensorflow/tensorflow/commit/314385ab894368074cc109121de7359c12839b04

Context (b/346609094): TFL Android libs are built with NDK API 21. This bump is to match the reality.


Indent guides missing or partially rendered when zoomed out

VSCode Version: Code 1.19.0 (816be6780ca8bd0ab80314e11478c48c70d09383, 2017-12-14T09:51:12.123Z)
OS Version: Darwin x64 17.2.0
Extensions:

Extension
Author (truncated)
Version

vscode-markdownlint
Dav
0.12.0

quokka-vscode
Wal
1.0.84

markdown-mermaid
bie
0.1.1

vscode-eslint
dba
1.4.3

gitlens
eam
6.4.0

markdown-shortcuts
mdi
0.8.1

vscode-code-outline
pat
0.0.12

code-spell-checker
str
1.6.0

vscode-mermaid-preview
vst
0.8.2

gitblame
wad
2.2.0

Steps to Reproduce:

Have indent guides on
Zoom out with cmd + -
Indent guides are missing or partially rendered

Reproduces without extensions: Yes
Screenshot

@dlchen I cannot reproduce this.
Can you repro this when running code --disable-extensions?

This issue has been closed because it needs more information and has not had recent activity. Please refer to our guidelines for filing issues. Thank you for your contributions.


[BUG] 3.5rc7 rightclick drag scales brush without modifier pressed

Godot version
3.5rc7 mono official
Plugin version
current git repository state (7b127ade841c7b2fc8ccfd34f4cbb46fb2bb33d6)
Platform
Windows 10
Issue description
While having the Gardener selected, rightclick-drag scales the brush instead of adjusting the view (3D editor camera rotation). This happens even though in the gardener settings it says shift as modifier is required; and setting this to another modifier like control also doesn't change anything.
My 3D editor navigation scheme is maya, maybe that matters:

Steps to Reproduce
maybe it's reproducable with the settings from the screenshot, not sure.
Minimal reproduction project
This is more an editor-settings/addon problem than a project-problem

Oh, i misunderstood the settings. the lower "Brush Property Edit Button" is parameter 1 in the paint panel, the '~..Modifier Key' one is for parameter 2.
I can change the mouse button to middle mouse (and that works).
Sorry for bothering.

:3

Maybe renaming them would be an improvement in general. I still would understand them to be a key-combination (as they share a large part of their name)


fix: prevent old app that mail is not working any more

:tada: This PR is included in version 1.39.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


The interface texture does not change

Hello, I would like to know how to use CIT to change the interface of shulkers, chests and other blocks that have an interface?
I'm playing with the colorful containers darkmode resource pack (https://www.curseforge.com/minecraft/texture-packs/colourful-containers-dark-mode-gui-optifine) which changes the game interface. But I encountered such a problem that without optifine, only the standard interface textures change, and the rest of the textures that are changed using .properties (like a shulker) do not change their texture. For example, a green shulker has the interface texture of a standard shulker, not a green one.
I went into the resource pack, into the .properties files and saw the following lines:
container=shulker_box
texture=green
colors=green
How can I change them so that everything works fine?

CITR only does CITs, not guis, guis is out of scope.
You are probably looking for OptiGui

Thank you very much


animate background bg.svg?

Can we also animate bg.svg?

Sure, do you have anything in mind?

I feel a sound wave kind of animation... lines growing and shrinking
Originally posted by @SirusCodes in https://github.com/OurTechCommunity/talks/issues/1#issuecomment-1329468694

Wouldn't that distract viewers? The shrink animation that currently exists distracted me from reading the title of the page and made me focus on the animation first...
Maybe we can have a demo of this animation and check how that looks before coming to a conclusion, but IMO this is not a pressing change.
Also, how are you going to animate every line? That's going to require a lot of CSS positioning, responsiveness and animation effort IMO.

Wouldn't that distract viewers? The shrink animation that currently exists distracted me from reading the title of the page and made me focus on the animation first...

Just for first few seconds. I feel it would add a nice touch.


Use newer OSG versions where available

Let's stop getting stuff from 3.3; it's dead.

Odd that it says there is still a continuous running.  But this looks good.


Support passing an ABI directly in any mint/burn/transfer/approval call

In a chain with #103.
Part of FIR-16.
Background
Currently this connector supports a small set of ABIs, which are checked in to src/abi. There are 2 flavors of ERC20 (ERC20NoData and ERC20WithData) and 2 of ERC721 (ERC721NoData and ERC721WithData). When a new pool is created, the connector probes the contract (via ERC165 "supportsInterface") to determine if it is the "WithData" variant. If not, it assumes it is the "NoData" variant. From that point forward, whenever a mint/burn/transfer/approval call is needed, the connector refers to the ABI that it inferred for the contract, in order to determine what method to call.
This works for many cases, but does not cover all common variants of these contracts. However, expanding beyond 2 flavors of each within the current system (ie continuing to rely on probing the contract and making educated guesses about its methods) could quickly become complex and fragile.
New Enhancements
With this PR, the mint/burn/transfer/approval APIs all accept a new interface: { abi: [ ... ] } parameter. If this is populated with a list of ABI methods, the connector will look at this list instead of any ABI it has previously inferred, to see if the list contains a method it knows how to use.
This makes the task of creating a custom connector potentially simpler, as new method signatures can be supported by adding them to the list and then passing in an ABI from FireFly (rather than requiring ERC165 support in the contract coupled with a set of queries to determine the methods supported).
Breaking Changes
The mint and burn methods of the ERC20NoData and ERC721NoData sample contracts have been altered to align with OpenZeppelin. This means that if the old versions of these contracts were previously deployed, they will no longer be usable by the new connector. It seems unlikely that these were deployed, as the "WithData" sample variants are encouraged.
The info.uri field will no longer be populated when creating a non-fungible pool against a pre-deployed ERC721 that has a base token URI configured. Justification for this:

It relied on a baseTokenUri() method that is not part of the ERC721 standard (unlike other queryable methods like name and symbol, which are defined in the standard)
It was inconsistent in that info.uri would be populated for pre-deployed ERC721 contracts, but not for ERC721 contracts deployed asynchronously by a factory
The field is not used by FireFly, and as far as I'm aware, is not widely used in application development (if at all)
The baseTokenUri() method is left in place on the sample ERC721 contract, so it still can be queried directly if needed, even though the connector will no longer query it

Future Plans
Currently the changes in this PR won't be exercised in actual FireFly deployments, because FireFly does not pass an ABI to mint/burn/transfer/approval calls. Follow-on PRs here and in Firefly core will add the ability to tie a contract interface to a token pool at creation time, and then cause it to pass the ABI (or a subset) to mint/burn/transfer/approval calls within that pool.

Why would we not add the mint(... (vs safeMint(...) variant from v1.0/v1.1 of FF to the list

We could add them to the list, but the current behavior of FireFly and the connector wouldn't really have a way to use them:

The connector only knows about two ABIs for each standard inherently - the "WithData" variant and the "NoData" variant
Here, the "NoData" ABI has been (destructively) replaced - so mint/burn are no longer spelled the way we spelled them before, but are spelled as OpenZeppelin does
In the absence of FireFly giving it extra clues, the connector will default to one of these ABIs - the "WithData" variant if a handful of ERC165 queries succeed, and the "NoData" variant otherwise
For any pre-existing token pool that happened to have been created against the legacy "NoData" contract sample, there's no way (defined in this PR or the follow-ups) to make FireFly "go back" and teach it about the ABI for that contract

I suppose the only way to give an "escape hatch" for that possibility would be to keep both "NoData" ABIs checked in (the legacy one and the OpenZeppelin one), and either:

add a config option to choose one or the other as the fallback when ERC165 queries fail
somehow support a 3-way fallback ("WithData" -> "NoData OpenZeppelin flavor" -> "NoData legacy flavor")

Of course (1) is massively simpler, and maybe good enough as I hope/don't think it's likely that many people used this sample as a foundation.

I went ahead and added a commit that gives a configurable way to switch back to assuming the old contract ABIs.


Can't choose files to upload when editing a post

Need to add the Upload Files section for the Edit page. Currently it's on the New page only.

This should be addressed in #147


Increase wait instance ready timeout for image tests

Currently, image VM tests are partially failing because instance is not ready in time (2 minutes). This increases wait instance timeout to 4 minutes in image tests.
Still, this may be a bit concerning as Alpine VMs are not ready within 2 minutes. I'm wondering how long will it take for heavier images.

I have the same feeling, just wanted to prove it.
I'll revert self-hosted runners changes.


FirstChild(...): No render method found on the returned component instance

FirstChild(...): No render method found on the returned component instance: you may have forgotten to define render, returned null/false from a stateless component, or tried to render an element whose type is a function that isn't a React component.
I gave it a try, Issue is in the \react-images\lib\Fade.js 33 line to return empty.Want to be able to repair

i have the same problem too

@ArturAmbartsumov in \node_modules\react-images\lib\Fade.js 33 line
Replace return kids[0] || null;
with
return kids[0] || _react.createElement('div',null);
please take a chance.

There is still problem with rendering on this component.
Error message: "Uncaught TypeError: inst.render is not a function".
Compiled code - Portal.js lines 57 and 52.

react v15.0.2 is no problem

Yes indeed, this problem occurs with older React versions.
Solution: use latest React.

Upgrading react to the latest version fixes this problem. Thanks guys

Fixed by 591761f


[Sentry] Exception Warp: Client closed connection prematurely while handling request

Context & versions

Steps to reproduce

Fetch /proposal/list
Sometimes the client closes connection

Actual behavior

Sometimes the client closes connection.
Sentry log
Expected behavior

Exception should be handled and fixed

I decided to temporarily disable the reporting of this error in order not to exceed the sentry limit. Warp is a haskell web-server. In its case, we have the user's entire request available, meaning that he or she has submitted his or her data, but there is a chance that the user interrupts operations at this stage, resulting in the above exception being thrown. This also only happens with a significant load during stress-testing.
I'll keep this issue as open and on To do to provide the solution instead of the workaround for reporting.


Random Encounters Don't Respect CR Filters

When creating random encounters min CR and max CR are not respected. Random encounters do respect other filters such as size, type, and environment.

That is correct. Random encounter generation ignores CR filters. This is a limitation of the algorithm.


source: Replace ENTRY_POINT with base_entry_point

We can remove the ENTRY_POINT and ENTRY_POINT_NAME class variables if we add the base_entry_point decorator to BaseSource.
https://github.com/intel/dffml/blob/2a23f55acaac69c7a1840260b0ede694216c2007/dffml/source/source.py#L51-L58
@base_entry_point("dffml.source", "source")
 class BaseSource(BaseDataFlowFacilitatorObject):
     """
     Abstract base class for all sources. New sources must be derived from this
     class and implement the repos method.
     """

@pdxjohnny - can i work on this?

@raghav-ys Yes please do!


Adding support for integer type tensors using CudaHostAllocator

@soumith I hope the for loop isn't an ugly solution :) I just did not want to repeat the same few lines over and over.

this is great, thanks!


After upgrade Laravel 9 Route not found, please confirm if QuickAdmin 2.0.0 can work with Laravel 9

After upgrade Laravel 9 Route not found, please confirm if QuickAdmin 2.0.0 can work with Laravel 9

@hassanphp the first line from the readme file:
IMPORTANT: This package is not actively maintained and probably won't work with newest Laravel versions.


Carousel movement advancing

What does this PR do?

Have the next slide starting from the top
testimonial section links open on the same page
Fix unordered list

Description of tasks

User scrollTo() to scroll to the top.
Remove target blank on testimonial section
Use disc list type and add padding left.

How to test the app
link
Screenshots

Please check this PR. It has the same work only specific.


Fill in and refactor test coverage of extracted reports

Several of the extracted reports have no coverage, or need tests moved over from the original dashboard.

We weren't missing much!


Basic test case: copr build only (upstream -> upstream PR)

This test case is triggered automatically by our validation script.
- job: copr_build
  trigger: pull_request
  metadata:
    targets:
    - fedora-all

/packit build

/packit build

/packit build

Replaced with #651.


${all-event-properties}: Added IncludeEmptyValues option

suggested here: https://stackoverflow.com/questions/56298028/how-to-handle-empty-values-produced-by-nlogs-all-event-properties-layout-render

Codecov Report

Merging #3423 into release/4.6.4 will increase coverage by 1%.
The diff coverage is 100%.

@@              Coverage Diff               @@
##           release/4.6.4   #3423    +/-   ##
==============================================
+ Coverage             80%     81%    +1%
==============================================
  Files                358     358
  Lines              28373   29325   +952
  Branches            3785    4160   +375
==============================================
+ Hits               22750   23707   +957
  Misses              4537    4537
+ Partials            1086    1081     -5

docs done: https://github.com/NLog/NLog/wiki/All-Event-Properties-Layout-Renderer


HTML is always open in the default browser

Even if I install this plugin, the HTML file in my Obsidian vault is always open in the default browser, making no difference.
I also disabled all other plugins to ensure this issue is not caused by the interaction with other plugins.
Environment:

HTML Reader 1.0.12
Obsidian 1.5.12
Linux

Sorry for a false alarm. It looks like the Opener plugin is the culprit. It works as expected once I update its settings to open HTML inside Obsidian. Not sure why this behavior didn't go away even after I disable the plugin. :thinking:


Use pip_requirements_parser

Hm, it looks like pip-requirements-parser does not support http nested requirements.


pre-training for data params

Unsupervised learning for choosing data parameters

Method: K-means clustering
Score: model's inertia (Sum of squared distances of samples to their closest cluster center)
Parameters:

window size: window size of Gaussian kernel for smoothing data
K: the threshold for the length of segments
num_kernels: number of kernels used in ROCKET transformation

Criteria: the smaller the inertia of the clustering model, the better.
working dir: /work/notebooks/3-decoding-model/2-classification/3-time-series-classification/2-pre-training

Work Flow

[x] research on how to use K-means
[x] train script for testing on diff params of data -> train.py

large scale of num_kernels and K
~small scale~

[x] Analyze the training results -> 02-influence-of-data-param.ipynb

visualized the results and it's the opposite of what we expected

~get the best param pair from the large scale~
~examine the small scale results~

[ ] ~Analyze the similarity between the clustering results and y(position) -> 03-similarity-between-clusters-positions.ipynb~

~coverage rate, e.g probability of instances from the same position are in the same cluster~
~if the coverage rate is above 50% ?~

K-means usage
from sklearn.cluster import KMeans

kmeans = KMeans(n_clusters=2, random_state=0, n_init="auto")
kmeans.fit(X_train)
kmeans.predict(X_train)

Regarding Data

Use all the data to train a K-means model -> Modify UniformSegmentDataset

[x]  change train_ratio to Optional
[x]  if it's given a float number then split the data
[x]  if not, then only return the train set which used all the available data.
[x] import the modified UniformSegmentDataset

The /data folder was deleted

[x] convert the original xlsx data to csv
:point_right: It takes Wall time of 266 ms to read from csv files of all mice, 45.4 sfor xlsx files

K-means training

the cv was not used in the training
However, If we are to use CV for K-means: k-fold Cross Validation for determining k in k-means?

A ground truth set is needed
Specify a scoring method.

checking the results
The desired result: the inertia would reduce as more kernels are used
Reasons

the small the inertia is, the data is more likely to be separated
the previous supervised method showed the higher the num_kernels is, the more accurate the model is.
👉  However the opposite result was shown

Questions to be answered

is it true that the small the inertia is, the data is more likely to be separated?
how did num_kernels influenced inertia?

The n_clusters parameter was set to a wrong number, retrained the k-means model after modifying.


using a static generic member of a generic class doesn’t work on JS

While investigating #7308, I found that the following currently fails at runtime on JS:
class Foo<T>
{
    shared static String member<U>() => "Hello, `` `T` `` and `` `U` ``!";

    new()
    {
    }
}

shared void run()
{
    value member = Foo.member<String>;
    value fun = member<Integer>;
    value res = fun();
    print(res);
}

Actually, it seems reference to non‐static members of generic classes don’t work either.
class Foo<Argument>
{
	shared static String member = `Argument`.string;

	shared new ctor()
	{
	}
}

Given the above class, the following segments don’t work:
shared void run() => print(Foo<String>.member);

shared void run()
{
    value member = Foo.member;
    value res = member<String>;
    print(res);
}

@chochos would you do me a favor and take a quick look at this one, please?

To be clear, because the title of this issue is extremely misleading: what doesn't work is a reference to the type parameters of a class or static member from within the static member.
This minimal test case reproduces the problem, and work fine on the Java backend:
class Foo<T> {
    shared static void member<U>()
            => print("`` `U` `` and `` `T` ``");

    shared new() {}
}

shared void runme() {
    Foo<Integer>.member<String>();
    value member = Foo<Integer>.member<String>;
    member();
}


Add section on experimental cache to Content Collection page

Description (required)
Adds a new section to Content Collection page to highlight the forthcoming experimental.contentCollectionCache flag. This flag will automatically be added to the configuration reference, so that isn't covered here.
Related issues & labels (optional)

For Astro version: 3.5. See astro PR #8854.

I believe the lint check will fail until the config reference is updated!


rust/cargo: enable caching

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew tests with your changes locally?

The primary intention of this PR is to avoid having to download the complete crates.io-index package registry (currently a 125MB download) for each build. The formulae crate dependencies are also cached and can be reused between formulae. This will work without needing any changes to be made in formulae.
Similar to https://github.com/Homebrew/brew/pull/4774 one downside is increased disk usage. Also, rust formulae aren't as common (currently 35), but we do seem to be adding them quickly (16 this year so far.)

One possible problem that I've encountered with setting CARGO_HOME occurs if the install target (i.e. "--root", prefix) isn't set as it will install by default into CARGO_HOME.
  Installing /Users/commitay/Library/Caches/Homebrew/cargo_cache/bin/bat
warning: be sure to add `/Users/commitay/Library/Caches/Homebrew/cargo_cache/bin` to your PATH to be able to run the installed binaries
Error: Empty installation

Disclaimer: My internet is terrible, so while this is a decent improvement for me locally it might not actually be that useful.
Removing cargo_cache for each formula:
/usr/local/Cellar/bat/0.6.1: 5 files, 5.2MB, built in 11 minutes 45 seconds

/usr/local/Cellar/bat/0.6.1: 5 files, 5.2MB, built in 5 minutes 34 seconds

/usr/local/Cellar/exa/0.8.0: 9 files, 1.4MB, built in 7 minutes 17 seconds

/usr/local/Cellar/exa/0.8.0: 9 files, 1.4MB, built in 2 minutes 38 seconds

/usr/local/Cellar/fd/7.1.0: 9 files, 3.1MB, built in 6 minutes 43 seconds

/usr/local/Cellar/fd/7.1.0: 9 files, 3.1MB, built in 1 minute 56 seconds

/usr/local/Cellar/ripgrep/0.9.0: 11 files, 4.9MB, built in 6 minutes 54 seconds

/usr/local/Cellar/ripgrep/0.9.0: 11 files, 4.9MB, built in 2 minutes 45 seconds

/usr/local/Cellar/watchexec/1.9.0: 7 files, 2.3MB, built in 6 minutes 52 seconds

/usr/local/Cellar/watchexec/1.9.0: 7 files, 2.3MB, built in 2 minutes 28 seconds

The cargo_cache size after building all of the above formulae again was 247MB (including the 125MB package registry.)

We could probably do the same for cargo install and "--root", prefix as we do here:
https://github.com/Homebrew/brew/blob/bfb2d53f98b9055b2fce53830f5b74a1f99ffb26/Library/Homebrew/rubocops/text_cop.rb#L52-L55

Does it make sense for an enhancement to allow a user to specify their own cache path? As in, if I'm working in Rust regularly, would it be worthwhile for me to be able to set HOMEBREW_CACHE_PATH_CARGO or something like that in order to have Homebrew use my user's CARGO_HOME path in ~/.cargo instead?
This optional centralization might save significant disk space, but we'd probably want to determine the benefit before spending the time to implement it.

Does it make sense for an enhancement to allow a user to specify their own cache path? As in, if I'm working in Rust regularly, would it be worthwhile for me to be able to set HOMEBREW_CACHE_PATH_CARGO or something like that in order to have Homebrew use my user's CARGO_HOME path in ~/.cargo instead?

I suppose we could in theory but we probably wouldn't want to go down that road as people would want similar support for go, npm and everything else. We'd also have to handle any potential conflicts that might arise from the user and Homebrew attempting to access the cache at the same time.

Does it make sense for an enhancement to allow a user to specify their own cache path

@colindean FYI you can do that with HOMEBREW_CACHE for the Homebrew cache more generally but I agree with @commitay that it's not worth allowing each to be configurable. One can always use symlinks if needed.


fix "RuntimeError: dictionary changed size during iteration"

Summary
resolves https://github.com/Qiskit/qiskit-aqua/issues/1491

I added a hold status for now since components/optimizers are frozen in qiskit-aqua and were moved to qiskit-terra qiskit/algorithms/optimizers

Since this is a just a bug fix it seems it could be done even if the optimizer in Aqua is deprecated now since they have been moved to Terra. We should have this fix in the version now in Terra too.

Since this is a just a bug fix it seems it could be done even if the optimizer in Aqua is deprecated now since they have been moved to Terra. We should have this fix in the version now in Terra too.

@woodsp-ibm OK I made a fix in terra as well https://github.com/Qiskit/qiskit-terra/pull/5621

@woodsp-ibm OK I made a fix in terra as well https://github.com/Qiskit/qiskit-terra/pull/5621


Bug: Command sent to the sensor badly formed

Expected Behavior
I should retrieve the exact payload I tried to send.
Current Behavior
When I am looking in the LorawanNetworkSrvModule logs, the pyaload is not the same.
Context (Environment)
Portal version: 2.4.0
LoRaWAN Stack version: 2.1.0
Logs

Command sent:
0149001E001E03E8000000

Command seen in the logs:
30313439303031453030314530334538303030303030

This seems to be related to the LoRaWAN Starter Kit.
@adcoly is in contact with the team in charge to that module.

Reopening as it is not a LoRaWAN Starter Kit issue, it's an issue in the portal when sending the command


Signal to eye to tell it to load?

I tried sending eye a HUP but that just causes it to shut down.

why do you mean? eye to reload all configs? there is no such function. you should just call eye load config to reload/update it.

if you have many configs, you can put symlinks of it in one dir, /etc/eye/, and reload all of it. eye load /etc/eye/

I would like to be able to send it a signal as part of a systemd service config to reload the config.

this is not possible right now, because eye not storing file paths, but i think should not be hard to implement

I found that I can use an ExecReload setting in a systemd unit file, too, instead of just sending a signal.  I should be fine for now, then.


How to get BlockCipher from hex?

 Say I store this encrypted text, how would I pass this text to aes.decrypt() again so it can be decrypted? As far as I can understand from the code, decrypt() expects a BlockCiper object, but how do I get one from a hex string?
thanks and sorry again for the question =)...
EDIT: I dug around crypto-js a bit and found how they convert a hex string to bytes:
	// Convert a hex string to a byte array
	function hex2bytes(hex) {
		for (var bytes = [], c = 0; c < hex.length; c += 2)
		bytes.push(parseInt(hex.substr(c, 2), 16));
		return bytes;
	}

but wouldn't it be useful if god_crypto would do that by itself, e.g. some kind of flag or something for decrypt() when the input is a string, e.g. something like .decrypt(<string>, '<hex|base64>')

.decrypt does not expect BlockCiper, it expects string or Uint8Array. encrypt and decrypt all returns RawBinary which basically extends from Uint8Array and add a few convenience method like .hex() or .base64().
Currently, you can store the Uint8Array, but if it is more convenience to hex or base64 somewhere and later on use it to decrypt back. I can add it quickly. It shouldn't be hard.
One more thing, we will release new version. Everything will be promise-based to be more consistence with the WebCrypto. We also use WebCrypto now if it is available and only fallback to our Javascript implement if WebCrypto is not available.

Thanks for the clearification! I tried to pass the hex string to .decrypt() but that didn't work (obviously), how would you store the encrypted value as Uint8Array in a JSON file? I'm using deno, which afaik does not implement WebCrypto completely, right? there is a window.crypto object but it doesn't seem to have all the methods available in the browser...

Deno can be compiled and work inside the browser. If it is inside the browser, we will use WebCrypto if available. If you run from deno command line, it will use Javascript implementation. You can store Uint8Array in a JSON file as array of number, but I think storing base64 is better option. I will implement a few helper function to convert hex/base64 back into Uint8Array. Probably will be done pretty soon.

We have added the utility for encoding. You can use as following
const aes = new AES(key, { mode: "cbc", iv: "some_random_iv...." });
await aes.decrypt(encode.hex("some_hex_value"));


Moved the logic to enable the user interaction of the views outside t…

Moved the logic to enable the user interaction of the views outside the condition in the method scrollViewDidEndScrollingAnimation:
This way we make sure the interface never gets disabled forever if the user interacts with the interface like crazy tapping every button fast.
Addresses Issue #124 : App becomes unresponsive after randomly tapping the tabs quickly #124

@mats-claassen, would you mind merging this fix? I will be glad to help.

@mats-claassen What would it take to get this merged?

Awesome, thanks so much Mathias.


proposal: Go 2: error handling syntactically similar to the range keyword

what if you could just print out the error message with the check keyword and even suppress it if you wanted to?
hex, err := check ioutil.ReadAll(os.Stdin)

The above line would just print out the error.
hex, err := check! ioutil.ReadAll(os.Stdin)

With the exclamation mark, the error message won't be printed out on the console. (silent failure)
hex, err := check! ioutil.ReadAll(os.Stdin) { handlerFunc(err) }

or
hex, err := check! ioutil.ReadAll(os.Stdin) { log.Fatal(err) }

The third example would suppress the error message and handle the error with a function defined somewhere else.
I believe this is syntactically a bit similar to the range function. I personally don't really see a point in creating another reserved keyword in the language just to handle errors. Why can't we just defined a handler function somewhere else and call it as you would do in other languages?
hex, err := check ioutil.ReadAll(os.Stdin) { handlerFunc(err) }

The last example would print out the error message and then call a function afterwards.

What you want is "named error handlers" -- which have been suggested in various forms by 17 different responses to the Go2 Draft Design for Error Handling.
See
Go 2 Error Handling Feedback
Requirements to Consider for Go 2 Error Handling
Note that feedback re Go 2 Draft Designs was requested to be via Gist or blog post and linked on the above feedback wiki page.

Yes, as mentioned in the wiki link, please write your proposal in a gist or something else and add a link on the feedback page.
Thanks.


[$500] IOU–Finished Receipt Scanning has whisper 'Only visible to you' if create it in new workspace

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: v1.4.74-1
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail: https://expensify.testrail.io/index.php?/tests/view/4562917
Email or phone of affected tester (no customers<EMAIL_ADDRESS>Logs: https://stackoverflow.com/c/expensify/questions/4856
Issue reported by: Applause-Internal team
Action Performed:

Go to https://staging.new.expensify.com/
Log in as Employee of a new Collect workspace.
Navigate to the workspace chat
Select the option to Submit expense > Scan receipt
Select the option to upload a receipt
Upload a receipt file
Click on Submit expense

Expected Result:
Whisper 'Only visible to you' appears when receipt is scanning and disappears when scanning is finished
Actual Result:
Whisper 'Only visible to you' appears only after scanning is finished and not disappears. Admin can’t see finished scanning.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[ ] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
https://github.com/Expensify/App/assets/115492554/ea735f3a-38d0-45f0-866c-e9db88f88bfd

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~0150a29c219ff1ecec
Upwork Job ID:<PHONE_NUMBER>472001024
Last Price Increase: 2024-06-20

Issue OwnerCurrent Issue Owner: @sobitneupane

We think this issue might be related to the #collect project.

This is a bug because logically, only visible to you should disappear after a successful SmartScan.

Waiting for proposals.

Waiting for proposals.

Waiting for proposals.

Waiting for proposals.

Hmm @sobitneupane @izarutskaya can you repro this? I tested on a Collect Workspace and scanned a receipt today and am not seeing the whisper anymore.

Not overdue, but can you repro this @sobitneupane @izarutskaya ?

Not overdue

@jliexpensify I can still reproduce the issue. The whisper "Only visible to you" appears after some time and remains visible even after the receipt is scanned.
https://github.com/Expensify/App/assets/25876548/ff23d967-1904-4a03-ba9c-a9834f1a8e09

Thanks, going to get this posted to the Open Source channel to try and grab someone!

Waiting on proposal.

Increased the bounty

Waiting on proposal.

Proposal
Please re-state the problem that we are trying to solve in this issue.
Whisper 'Only visible to you' should disappear when scanning is finished
What is the root cause of that problem?
in the src/libs/ReportActionsUtils.ts::getWhisperedTo, the logic relies on originalMessage.

What changes do you think we should make in order to solve the problem?
Update the function getWhisperedTo relies on reportAction?.message only
What alternative solutions did you explore? (Optional)
NA

Hi @sobitneupane we have our first proposal 😓 any thoughts?

Please re-state the problem that we are trying to solve in this issue.
Whisper 'Only visible to you' does not disappear when scanning is finished
What is the root cause of that problem?
when receipt is submitted the report is created optimistically, using buildOptimisticIOUReportAction function, since the receipt is still in SCANREADY or SCANNING state, the whisperedTo Array is assigned the current user ID.
https://github.com/Expensify/App/blob/8dea185bbc1431fb9c268a7ce74e1045d930cb0e/src/libs/ReportUtils.ts#L4096-L4104 but in ReportActionItem there's no checking happening when the transaction.receipt.state changes and scanning is successful (or not) to re-render ReportActionItem and reflect changes
What changes do you think we should make in order to solve the problem?
in ReportActionItem we should subscribe to changes in Transaction.receipt.state in  onyx so once the scanning is done we trigger the rendering of ReportActionItem  using renderReportActionItem with a  hook like useMemo to reflect changes in state
What alternative solutions did you explore? (Optional)
N/A

Thanks for your proposal @M00rish

there's no checking happening when the transaction.receipt.state changes and scanning is successful (or not) to re-render ReportActionItem and reflect changes

I am not sure if that's the case as the issue can still be reproduced after the page re-renders.
Can you please include pseudocode on how you will implement the solution you suggested.

actually, the issue is no longer reproducible on staging... it seems fixed I guess.

Oh nice - @M00rish did you manage to grab a video?

@jliexpensify not really if you still need it I might be able to make one tonight

@sobitneupane can you repro this any more? I can't seem to.

@jliexpensify I cannot reproduce the issue any longer.
https://github.com/Expensify/App/assets/25876548/f3977381-a1a1-4744-874c-647bcf3e63e1

Ok, lets close this!


use total ops by counting ES ops in explorer instead of api

The API total_ops can be inconsistent, specially if API node is the same as an ES node started with https://github.com/bitshares/bitshares-core/pull/1458 https://github.com/bitshares/bitshares-core/pull/1458
This can maybe deserves an issue in the core plugin but by now the explorer can count the operations from the ES and dont relay on API.

fixed here https://github.com/oxarbitrage/open-explorer/commit/eac0c05de8e099a2bbe8daf947f2b476ae84f40e


Generic function argument inference differs between Visual Studio and tsc (2.0)

Angular's .d.ts file has the following declaration:
 interface IQService {
       all<T>(promises: IPromise<any>[]): IPromise<T[]>;
 }

I augmented this by adding some typed overloads:
 interface IQService {
       all<T>(promises: IPromise<any>[]): IPromise<T[]>;
       //overloads below
       all<T>(promises: IPromise<T>[]): IPromise<T[]>;
       all<T1, T2>(promises: [IPromise<T1>, IPromise<T2>]): IPromise<[T1, T2]>;
       all<T1, T2, T3>(promises: [IPromise<T1>, IPromise<T2>, IPromise<T3>]): IPromise<[T1, T2, T3]>;
       all<T1, T2, T3, T4>(promises: [IPromise<T1>, IPromise<T2>, IPromise<T3>, IPromise<T4>]): IPromise<[T1, T2, T3, T4]>;
       all<T1, T2, T3, T4, T5>(promises: [IPromise<T1>, IPromise<T2>, IPromise<T3>, IPromise<T4>, IPromise<T5>]): IPromise<[T1, T2, T3, T4, T5]>;
 }

When I call one of these overloaded methods, whatever Visual Studio uses to determine which definition to use seems to pick the "correct" one (or at least what I would like tsc to do):
declare function foo(): IPromise<number>;
declare function bar(): IPromise<string>;
declare let $q: IQService;

let result = $.q.all([foo(), bar()]);

Visual Studio thinks that result is of type IPromise<[number, string]>, as I would hope. However, tsc.exe thinks it is of type {}[]. So Visual Studio is using my overloaded method declaration, whereas tsc.exe is using the original all<T>(promises: IPromise<any>[]): IPromise<T[]> and resolving T to {}.
So I guess my 2 questions are:

Which one is by design? (I am hoping VS's behavior)
What is the best way to ensure VS is consistent with tsc.exe?

I know the second question is not really a TypeScript question, so apologies for that; I figured I'd throw it out there just in case.
Thanks

Which one is by design? (I am hoping VS's behavior)

Not sure what versions you are using, but it is important to note that overload resolution is order specific. so the order at which overloads are encountered by the compiler decides which ones it tries to match first, and the first matching overload is picked.
The result is you want your most general overloads all<T>(promises: IPromise<T>[]): IPromise<T[]>; to be listed at the bottom of the list. and you want your all<T1, T2, T3, T4, T5>(promises: [IPromise<T1>, IPromise<T2>, IPromise<T3>, IPromise<T4>, IPromise<T5>]): IPromise<[T1, T2, T3, T4, T5]>; to be at the top.
Moreover, interface declarations do merge, so if this interface is defined in multiple files, make sure the order of the files passed to the compiler has your augmentation after the angualar.d.ts. You can find more here about how to control the order of files passed to the compiler .

What is the best way to ensure VS is consistent with tsc.exe?

Make sure you have the same version of both.

Automatically closing this issue for housekeeping purposes. The issue labels indicate that it is unactionable at the moment or has already been addressed.


MRG: Dont try/except save

Closes #146.

Coverage increased (+0.06%) to 77.313% when pulling 4b1f3129414196e5237c3bb6c97aaf9d352accf3 on Eric89GXL:try into be31a94e4d35ffb00d64a9d9a0976c45bbb037a3 on nipy:master.


[BEAM-5626] Fix hadoop filesystem test for py3.

Hadoop filesystem test for python3.
After this PR, following test passes:
python ./setup.py test -s  apache_beam.io.hadoopfilesystem_test.HadoopFileSystemTest

Follow this checklist to help us incorporate your contribution quickly and easily:

[ X] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.

Not sure why the PR shows build failing, but in fact on my local repository testPython2 and testPython3 both succeeded.

Last postcommit status is red, but precommit tests on this PR are green.
LGTM

PTAL.

LGTM

@aaltay for merge.

Thank you! This LGTM.

Run Python PostCommit


feat!: migrate to vite 3

🔗 Linked issue
resolves https://github.com/nuxt/bridge/issues/492
❓ Type of change

[ ] 📖 Documentation (updates to the documentation or readme)
[x] 🐞 Bug fix (a non-breaking change that fixes an issue)
[x] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
This PR upgrades Bridge to Vite 3.
There are quite a few fixes/refactors to note, including some other vite fixes in Nuxt 3 that we're hereby porting back to Bridge. But particularly worth observing:

We remove the workaround where we move build output files around, instead modifying chunk names.

We remove our runtime URL implementation, using new Vite support from https://github.com/vitejs/vite/pull/8450.
We'll track the development of this feature quite closely as it moves from experimental into the mainstream, but it will not break in a minor version so the current version constraint is safe.

👉 Migration
Vite 3 is a major release with its own breaking changes. Users should read through the migration guide and make any updates necessary. (Other libraries may also have to be updated to work with Vite 3.)
There are no Nuxt-specific changes that users will need to make.
📝 Checklist

[ ] I have linked an issue or discussion.
[ ] I have updated the documentation accordingly.

@pi0 - note stub fix for now - please do let me know if you have a better idea.


Added constants to the FHIR Path tool

This PR adds the ability to add constants to the FHIR Path tool.  For example:
./prime fhirpath -i src/testIntegration/resources/datatests/HL7_to_FHIR/sample_co_1_2022051
-c patientState=Bundle.entry.resource.ofType(Patient).address.state
-c patientZip=Bundle.entry.resource.ofType(Patient).address.postalCode
-c patientCountry=Bundle.entry.resource.ofType(Patient).address.country

Test Steps:

Run ./gradlew fatjar
Run the prime command above in the description.
Type in %patientZip and press Enter. Verify the zip code value is provided.

Changes

Added constants to the FHIR path tool

Checklist
Testing

[ ] Tested locally?
[ ] Ran ./prime test or ./gradlew testSmoke against local Docker ReportStream container?
[ ] (For Changes to /frontend-react/...) Ran npm run lint:write?
[ ] Added tests?

Process

[ ] Are there licensing issues with any new dependencies introduced?
[ ] Includes a summary of what a code reviewer should test/verify?
[ ] Updated the release notes?
[ ] Database changes are submitted as a separate PR?
[ ] DevOps team has been notified if PR requires ops support?

Linked Issues

Fixes #issue

To Be Done
Create GitHub issues to track the work remaining, if any

#issue

Specific Security-related subjects a reviewer should pay specific attention to

Does this PR introduce new endpoints?

new endpoint A
new endpoint B

Does this PR include changes in authentication and/or authorization of existing endpoints?
Does this change introduce new dependencies that need vetting?
Does this change require changes to our infrastructure?
Does logging contain sensitive data?
Does this PR include or remove any sensitive information itself?

If you answered 'yes' to any of the questions above, conduct a detailed Review that addresses at least:

What are the potential security threats and mitigations? Please list the STRIDE threats and how they are mitigated

Spoofing (faking authenticity)

Threat T, which could be achieved by A, is mitigated by M

Tampering (influence or sabotage the integrity of information, data, or system)
Repudiation (the ability to dispute the origin or originator of an action)
Information disclosure (data made available to entities who should not have it)
Denial of service (make a resource unavailable)
Elevation of Privilege (reduce restrictions that apply or gain privileges one should not have)

Have you ensured logging does not contain sensitive data?
Have you received any additional approvals needed for this change?

I couldn't find any unit tests on the CLI commands. Are they not required, are these mostly used for integration testing?

I couldn't find any unit tests on the CLI commands. Are they not required, are these mostly used for integration testing?

Yes, the CLI is a test tool, so not unit tests required for a test tool


Incorrectly marking JS syntax as invalid

So for some reason this just started a few months ago and has persisted after resetting my Code installation including removing all installed extensions.
I have a .JS file which contains lots of JavaScript, including some jQuery.
Now, for some reason, a few seconds after opening the file, Code marks almost every line as containing a syntax error - incorrectly. The file has no syntax issues whatsoever, which has been confirmed by multiple validators.
This occurs no matter what type of file Code is treating it as, be it JS or HTML.
It only started happening after an update months ago.

This screenshot I'm uploading shows the first function in the file, as you can see, it's even marking the word var as invalid...
Honestly, this is making it impossible to be productive using Code and really needs to be fixed ASAP.

Please share the full text of a minimal piece of code that shows this problem


Import ReactElement for tsrfc / tsrfce

Closes #90

@impulse Thanks! :) I did not merge this as I did not have time yesterday to release new version :)
Should be available in an hour


GHC 9.4 compatibility

cleff just needs bumps of upper versions of base and template-haskell to build with 9.4.1.
Unfortunately the story for cleff-plugin seems to be more complicated due to removal of derived constraints.

It wasn't too complicated, just a few shifts in the data constructors.
https://github.com/re-xyr/cleff/pull/29

Though I take it back, some extra work is needed to for the CPP pragmas.

Any luck on the plugin?

Hi. To let you know. I'm personally not aiming at fixing this issue at the moment.

cleff seems to build fine on 9.4 and 9.6. Is this issue resolved?
(Relatedly, it requires --allow-newer for 9.8)

Just a heads up that ghc-9.6 has problems with plugins in general.  The link below is for polysemy, but I've had the same trouble in effectful.  Surely cleff is affected too.
Ref https://github.com/commercialhaskell/stack/issues/6251


Mitaka

@szakeri
Fixes:  #597
This PR is the driver component of the containerization (draft one) of our test infrastructure.

This is a big change to nightly regression testing and the PR template does not conform to the expected template.  You need to list the tests you executed to prove our your changes.  Fill in the expected details per @richbrowne PR guidelines.  I also request that you bring in someone outside the team (Kevin, Brian Marshall) for an in-person review that will understand the operational impact.  By removing requirements.test.txt, you are violating one of the team requirements that external contributors MUST be able to run tests.  Seems like you have constrained the tests for this repo to only ever be runnable from within a container.

Closing by request @zancas


Wikidata schema edit in the Japanese language setting doesn't work properly.

Describe the bug
When I edit Wikidata schema in the language setting of Japanese, any property cannot be suggested.
To Reproduce
Steps to reproduce the behavior:

Go to 'Language Settings'
Choose '日本語' and click 'Change Language'
Click on 'クリップボード' (= 'Clipboard')
Follow the instruction explained at this tutorial.
When typing in 'patronage' as a property of a statement, you see nothing is suggested.
Even if you type in '利用者数', a Japanese label of the patronage property (P3872), the result doesn't change.

Current Results
Nothing suggested.
If I type in 'P3872', OpenRefine suggests 'SPARQL: P3872', which might work properly, but it is not helpful for human.
Expected behavior
OpenRefine is expected to suggest properties as in the language setting of English.
Screenshots

Desktop (please complete the following information):

OS [Windows 10]
Browser Version: [Chrome 69.0.3497.92]
JRE or JDK Version:[JRE 1.8.0_171]

OpenRefine (please complete the following information):

Version [e.g. OpenRefine 3.0]

Datasets
List of metro systems referred from this tutorial
Additional context

@yayamamo thanks! The good news is that this seems to be a bug of the reconciliation service, not OpenRefine itself, so we can fix that even if we just made a release.

In fact it is not a bug in the reconciliation service: the bug was introduced by an anonymous translator who changed the language code for Japanese (currently is jp, should be ja). So I'll fix this in OpenRefine and introduce a silent mapping in the reconciliation service so that users do not have to upgrade anything.


Colcon missing an install verb

Catkin used to distinguish between catkin_make and catkin_make install DESTDIR=..., whereas Colcon has only colcon build with or without symlinks.
Looking beyond the Debian ecosystem, the RPM packaging format strictly separates %build and %install phases, of which only %install shall access the destination directory.
So it would seem we need something like colcon build --no-install and colcon install to be able to use it for other distros, such as openSUSE.
Or is Colcon only intended for local user builds? Should we rather be using CMake directly somehow? Catkin used to generate a CMakeLists.txt file in the base directory that we'd be missing out on then.

Looking beyond the Debian ecosystem ...

colcon (as well as catkin_make) is not used for packaging a single package but to build a set of packages in the right order.
In ROS 1 / catkin you were able to only build a package and still use it (with a custom mixture of the source space and the devel space). That approach doesn't exist in ROS 2 since it is non-standard and fragile. When building multiple packages from source the only "sane" choice is to install them and use the resulting install prefix only.

So it would seem we need something like colcon build --no-install and colcon install to be able to use it for other distros, such as openSUSE.

For packaging a single ROS package there is no need to invoke any build tool like colcon. For each build type (e.g. CMake, Python setuptools) you should use the native tool directly instead.

Catkin used to generate a CMakeLists.txt file in the base directory that we'd be missing out on then.

The top level CMake file generated by catkin for non-isolated builds is not supported by colcon. Simply because the approach is fragile and requires packages to have knowledge about the internal target structure of their dependencies (which it shouldn't need to know about). catkin_make_isolated, catkin_tools as well as colcon do not support that approach of building multiple packages in a single CMake context.

For each build type (e.g. CMake, Python setuptools) you should use the native tool directly instead.

So the recommended way is to manually enter each package directory, deduce what kind of package I'm in and manually launch some packaging command? And there's not even something like 'colcon for-each-py-pkg-do '?
I figured out how to create deb packages using CMake+CPack with minimal efforts, but things are tougher when it comes to Python. It is so ... incredible that colcon can't do packaging on its own. I miss Poettering for this.

It is so ... incredible that colcon can't do packaging on its own.

@deitry The task of packaging is explicitly listed as an out-of-scope goal for colcon atm: https://colcon.readthedocs.io/en/released/developer/design.html#explicitly-out-of-scope

So the recommended way is to manually enter each package directory, deduce what kind of package I'm in and manually launch some packaging command? And there's not even something like 'colcon for-each-py-pkg-do '?

That being said if you would like to write an extension for that functionality please feel free to do so. The extension API will provide you with all the necessary information (e.g.  the package type).


Updated travis build scripts + rubocop config (from rspec-dev)

ZOMG this can be merged on rspec-rails too, happy days.


Iox #841 upgrade gtest gmock to v1.10

Pre-Review Checklist for the PR Author

[x] Code follows the coding style of CONTRIBUTING.md
[x] Tests follow the best practice for testing
[x] Changelog updated in the unreleased section including API breaking changes
[x] Branch follows the naming format (iox-#123-this-is-a-branch)
[x] Commits messages are according to this guideline

[x] Commit messages have the issue ID (iox-#123 commit text)
[x] Commit messages are signed (git commit -s)
[x] Commit author matches Eclipse Contributor Agreement (and ECA is signed)

[x] Update the PR title

Follow the same conventions as for commit messages
Link to the relevant issue

[x] Relevant issues are linked
[x] Add sensible notes for the reviewer
[x] All checks have passed (except task-list-completed)
[x] Assign PR to reviewer

Notes for Reviewer

This PR updates GTest/GMock to v1.10 and removes some workarounds caused by v1.8.
Checklist for the PR Reviewer

[x] Commits are properly organized and messages are according to the guideline
[x] Code according to our coding style and naming conventions
[x] Unit tests have been written for new behavior
[x] Public API changes are documented via doxygen
[x] Copyright owner are updated in the changed files
[x] PR title describes the changes

Post-review Checklist for the PR Author

[x] All open points are addressed and tracked via issues

References

Closes #841

LGTM! I know it's tiresome, but please adapt the year in all files with new code upside_down_face

Sorry, but no. It was either code removal or mass search & replace. This is too trivial for a copyright update and we already handled it this way for other contributors.

Sorry, but no. It was either code removal or mass search & replace. This is too trivial for a copyright update and we already handled it this way for other contributors.

Understood and I think you're right to keep the copyright update process as simple as possible! As IANL and our previous workflow was:

Remove code -> Old copyright header
Code was changed or added -> Adapt copyright header

Hence, I would appreciate if we could discuss this topic in the next developer meetup.
cc @budrus

@mossmaurice INAL but the last time I talked with one about this the answer was The change should be substantive before we claim Copyright protection and I got a thumbs up for my question so we can use common sense for this. I hereby claim to not be insane (was not tested, so it's only a claim) and a mass search and replace does not count for copyright update ;)
cc @budrus


Is there any other method to load ONNX model without registering the SAM model?

I was using the model is the celery docker app, but when registering the SAM model celery crash. The following code
checkpoint = "sam_vit_h_4b8939.pth"
model_type = "vit_h"
sam = sam_model_registry[model_type](checkpoint=checkpoint)
sam.to(device="cpu")
sam_predictor = SamPredictor(sam)

The sam_model_registry doesn't really register anything. It's just a dictionary which looks up the appropriate 'build_sam...' function, depending on the model size. You can see it in the build_sam.py file.
It's hard to say how to fix the crash without more details. Most likely either the checkpoint pathing is incorrect (i.e. the file is missing or the name/location  doesn't match the provided checkpoint variable), or the sizing of the checkpoint data is incorrect (although it looks ok in the code you posted).

I think vit_h model was huge, After changing to vit_l, celery doesnot crash but when executing the following statement celery crash.
checkpoint = "sam_vit_l_0b3195.pth"
model_type = "vit_l"
sam = sam_model_registry[model_type](checkpoint=checkpoint)
sam.to(device="cpu")
sam_predictor = SamPredictor(sam)
sam_predictor.set_image(image) # celery crash here

I am using solo pool which support CPU intensive tasks in a microservices environment like Docker or Kubernetes.
celery worker --app=worker.app --pool=solo
here the the simple task code I am using

@celery_app.task()
def process_image(image_path):
      checkpoint = "sam_vit_h_4b8939.pth"
      model_type = "vit_h"

      sam = sam_model_registry[model_type](checkpoint=checkpoint)
      ort_session = onnxruntime.InferenceSession('sam_onnx_quantized.onnx')
      sam.to(device="cpu")
      sam_predictor = SamPredictor(sam)

      image = cv2.imread(image_path)
      image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      sam_predictor.set_image(image) # crash here
      image_embedding = sam.get_image_embedding().cpu().numpy()

Given that the code gets through the sam_predictor = SamPredictor(sam) line as well as the image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) line, that suggests that everything should be configured correctly to be able to run the set_image(...) part, so it's weird that it exits there. There's nothing in the SAM code that could cause a SIGKILL signal, as far as I can tell. To me, that implies that the process is being shutdown by something else, either the operating system itself (for example due to running out of memory) or maybe something to do with celery (maybe a timeout due to it taking too long?).
One easy thing that's worth trying is using the small (vit_b) model, since that uses a lot less memory than the l/h versions and should help avoid out-of-memory errors, if that's what's happening. The other thing to try would be running the same code without celery (i.e. just copy-pasting it into another script and removing the celery stuff), to see if it runs that way. If it does run, then that narrows the problem down to being a celery config issue, if it doesn't run then at least the error message should be a bit easier to interpret without the celery code catching it.
Beyond that, I don't know much about how celery & pytorch interact, so hopefully someone else can help with that.

Thanks for the reply. I just fix it. The problem was Docker resource. I notice when executing the code the CPU usage go to 99% then the task is killed. After adding more resource (4 CPU and 5Gb memory) to my docker engine everything works perfectly.  But I had to also use celery prefork instead of solo pool.

Thanks for the reply. I just fix it. The problem was Docker resources. I noticed when executing the code the CPU usage go to 99% then the task is killed. After adding more resource (4 CPU and 5Gb memory) to my docker engine everything works perfectly.  But I had to also use celery prefork instead of solo pool.


Unclear errors from wrangler dev

🐛 Bug Report
Environment

operating system: macos
output of rustc -V: rustc 1.46.0 (04488afe3 2020-08-24)
output of node -v: v14.15.1
output of wrangler -V: wrangler 1.12.2
contents of wrangler.toml:

type = "webpack"
name = "service_id"

Steps to reproduce
Run yarn wrangler dev
What did you expect to see?
App starting, or a clear error.
What did you see instead?

Error: No deployments specified!
error Command failed with exit code 1.

With no link / explanation. There doesn't seem to be any mention about deployment configuration in https://developers.cloudflare.com/workers/cli-wrangler/commands#dev

You need to specify either workers_dev or a zone_id with a route or routes to do a dev deployment with wrangler dev.
See Configuration -> Keys.

I'm seeing the same error (Error: No deployments specified!) when trying to run wrangler dev. I can successfully run wrangler preview and wrangler publish. This error message is super not helpful. I'm trying to run a "development" related command, why am I seeing an error mentioning "deployment"!?

Not sure if this will help you.
When you run wrangler dev the code actually runs on the Cloudflare network and not on your local machine.
cloudflare/cloudflare-docs#10
https://blog.cloudflare.com/announcing-wrangler-dev-the-edge-on-localhost/

I agree. No deployments specified is not an error that gave me any useful information about needing a zone_id for environments.


Sonic boom players for all players, not just localplayer

This fixes a bug where all players are creating a sonic boom app for local player when they join the world. Instead, the player is referenced into the sonic boom app, the result is sonic boom works in multiplayer.

Sonic boom is already working for local player though, but  I am unable to test it in multiplayer as multiplayer rooms aren't working for me at all.

@alisaad673 this was extracted from multiplayer PR, so while it definitely works, it is dependent on multiplayer to QA -- we can wait until those PRs are merged in


buildroot.sh ends in :(stdin)

May I suggest adding an exit 1 to the end of buildroot.sh (so that it exits once complete)

Thanks for providing a solution. Could you please also provide the problem and some context? Do you perhaps have a screendump or log?


Add mate::Promise

This is just so we can start looking at native promisification in Electron 👍

Closes/Refs #20 ?

@alexeykuzmin @zcbenz Updated as per feedback 👍


Logs with trace IDs

On client and server transactions logs are printed with trace IDs. To improve correlation of tracing and logs, use OpenTelemetry log format of printing IDs as separate fields. Use logrus WithFields function.
That does not resolve the issue of behaving differently from OpenTelemetry.
See https://opentelemetry.io/docs/reference/specification/logs/overview/#json-formats

There is an ongoing pull request review of OpenTelemetry. That sounds to be a better idea.


Possible race condition in ReaderWriterLock.cpp

https://github.com/aws/aws-sdk-cpp/blob/4c686e743e289205b8e4b0f48d472e09ecbd9941/aws-cpp-sdk-core/source/utils/threading/ReaderWriterLock.cpp#L43
I think this line contains a race condition because m_readers and m_holdouts aren't updated at the same time in ReaderWriterLock::LockWriter. So m_readers could already be negative, but m_holdouts could still be 0, which will cause m_writerSem.Release() to not be called.

Suppose we have N readers at the time of m_readers.fetch_sub(MaxReaders) inside LockWriter, now current equals to N and m_readers becomes N - MaxReaders, which is a small negative number. After that statement, no readers can actually go into reader mode, they will wait. Right now, those N readers can call UnlockReader() at most N times, doesn't matter if these calls are before or after we update m_holdouts.
In an extreme situation, all of them call UnlockReaders() before we update m_holdouts, then m_holdouts will become -N and YES no readers will call m_writerSem.Release(), but eventually, we will update m_holdouts, at this extreme case, holdouts will be -N  + current, which is 0, and we will not call WaitOne().
In other cases, some readers will call UnlockReaders() after we update m_holdouts, in these cases, m_holdouts will be greater than -N before updating, after plus N, it will be positive, and holdouts will be positive as well. So we will go into WaitOne(). Those readers which call UnlockReaders() after we update m_holdouts will eventually call Release() in UnlockReader()

Thanks for clearing that up. That seems totally fine if you put it like that.
The thing that I'm really trying to figure out is why my application locks up in the destructor of a Semaphore, which is called from the destructor of the ReaderWriterLock, which is called from the destructor of the EnumParseOverflowContainer (sorry, I don't have a backtrace at hand) since I upgraded the SDK. And the use of the ReaderWriteLock in the EnumParseOverflowContainer happens to be introduced in this upgrade. So the ReaderWriterLock seems an obvious candidate for blaming.
The actual lockup happens in pthread_cond_destroy by the way.
Any idea what else could cause that?

This might be a bug in the Semaphore class. We need to call notify_all() in the destructor.

That sounds a bit odd. There shouldn't be any waiters when a Semaphore gets destructed should there? I definitely don't see any waiting threads in my backtrace.

I was suspecting the following might have caused the problem you're seeing.
From http://en.cppreference.com/w/cpp/thread/condition_variable/~condition_variable

It is only safe to invoke the destructor if all threads have been notified.

Also, the documentation of pthreads_cond_destroy says (emphasis mine):

It shall be safe to destroy an initialized condition variable upon which no threads are currently blocked. Attempting to destroy a condition variable upon which other threads are currently blocked results in undefined behavior.

However, you're saying you don't see any waiting threads in your backtrace, so before going any further into debugging this, please provide the full backtrace (of all the threads, if any) of your application.

I actually suspected the same, but my stacktrace disproves that theory. I do have another theory. The thread that's locked is actually in the process of shutting down the sdk. However, the only other thread that's still running is a thread that polls credentials in the background, for another incarnation of the SDK. But it does use some components from this SDK. This background thread is actually sleeping, but who knows what it was doing a few cycles earlier. So perhaps we're just using it incorrectly and the new lock just breaks on this misuse. Unfortunately this thread is spawned on demand and only terminated at process exit, which seems to happen after we shutdown the sdk.
I think my employer doesn't like me to post a stacktrace here, but I'll get it to you some other way.

So perhaps we're just using it incorrectly

Yes you are.

another incarnation of the SDK

There should be ONE incarnation of the SDK in any given process.
The shutdown call cleans up static variables., the static variables are global, not thread_local. That explains the strange behavior you're experiencing.

So this is indeed caused by our misuse of the API, which didn't cause any issues in the past.
Closing issue.


How to use ElmahCore with Oracle Database

I have an ASP.NetCore 2.1 project in which I need to use ElmahCore and connect it to oracle database to store my logs in it.
Is there any possible way to do this?
would anyone shed light upon this matter?
Thanks

Currently you can create custom error log, based on documentation you can create a class that inherit  class ErrorLog.
For Example:
Public class OracleSqlErrorLog: ErrorLog
and you can use that class as middleware
For example:
services.AddElmah<OracleSqlErrorLog>(options => {     options.ConnectionString = "connection_string"; });
hope this helps for you.