Cashout of outstanding cheques

User story

Story

As a cheque-recipient, I want to cash out all cheques which I own which are worth more than a certain amount, such that I the money which I earned is available on-chain and I decrease the risk of holding on to uncashed cheques.
Acceptance criteria

User can run a command (internally to the Bee or externally) that cashes out all cheques
The feature is properly documented @significance

Background

User will want to do this, once we have an incentivized network. @ralph-pichler suggested that a shell script would probably be best.
Tasks

Task
Assignee
Done (1), or 0

Completed per: https://gist.github.com/ralph-pichler/3b5ccd7a5c5cd0500e6428752b37e975

@paxthemax , could you please review this and maybe pair together with @significance , to ensure this gets a place in our docs as well?

@significance , bump :)

Running this command now with @GasperX93 . He encountered a problem that he doesn't have jq. Would it be possible to make this command without jq @ralph-pichler ?

When we run cashout.sh list-uncashed it works as expected
When we run cashout.sh cashout-all , we see one output (cashout out cheque for in transaction null). Afterwards it blocks. @ralph-pichler , any idea what went wrong?

Update. We didn't run cashout-all, but cashout. Seems to work now. Great!

@Eknir can't do the command without jq as we need to parse the json responses from bee. in cashout you probably omitted the peer leading to this. there is very little sanity checking on the user input.

This needs documentation.
The moral of this story is that cashing out cheques is a manual operation. In order to make this easier, we provide a simple script that makes cashing out many cheques easier.

This needs documentation.
The moral of this story is that cashing out cheques is a manual operation. In order to make this easier, we provide a simple script that makes cashing out many cheques easier.


[feat] Add configuration option for portal activation and deactivation sound volume

the sound was giving everyone on my server a heart attack
(in my config when testing locally, I liked 0.35 for activation and leaving deactivation unchanged from default)

Thanks for your contribution, I think its a good idea :D
Unrelated question: Did you have any major problems when reading through the code-base? (Especially regarding how
to add config values, given that there is no documentation at all for devs)

The hardest part for me was setting up a dev environment, I've been away from the java game for a long time. Like... the last time I was active in really Java nobody knew what gradle was, and neither did I. There were issues with missing executables (I had to download a sha1sum.exe and put it in my system path), I had to disable removeUnusedImports for spotless because it was throwing strange errors I couldn't resolve (but I confirmed I didn't add any)...
Once I was able to actually build, the codebase was pretty easy to peruse. Weird naming conventions, imo, but pretty easy to understand. To confirm I wasn't missing anything in regards to adding a config (it seemed too easy), I looked at your recent commit about adding a dirt path speed config. Which, by the way, was a feature request I was going to submit as well ;)

The hardest part for me was setting up a dev environment, I've been away from the java game for a long time. Like... the last time I was active in really Java nobody knew what gradle was, and neither did I. There were issues with missing executables (I had to download a sha1sum.exe and put it in my system path), I had to disable removeUnusedImports for spotless because it was throwing strange errors I couldn't resolve (but I confirmed I didn't add any)...

Same issues when I opened up the code. Seems like it isn't Windows friendly. Windows has an equivalent sha1sum that you can put in the build gradle instead. commandLine("CertUtil", "-hashfile", "../docs/resourcepacks/v" + project.version + ".zip", "SHA1"). I also faced issues with spotless, I think there are some unsupported characters in the Regions.java comments that make the diagram. Also the symbolic links for the custom item textures were giving me issues after building that I never bothered resolving.

I'll merge this tomorrow :)

@Dambroda: The hardest part for me was setting up a dev environment, I've been away from the java game for a long time. Like... the last time I was active in really Java nobody knew what gradle was, and neither did I. There were issues with missing executables (I had to download a sha1sum.exe and put it in my system path), I had to disable removeUnusedImports for spotless because it was throwing strange errors I couldn't resolve (but I confirmed I didn't add any)...

Ah that's unfortunate. On linux it's all done with a simple git clone & ./gradlew spotlessApply build. Maybe I'll have to test it on windows too sometime to fix these issues. (For sha1 I can use CertUtil, but no idea yet regarding the spotless errors)

@CosmicCaterpillar: Same issues when I opened up the code. Seems like it isn't Windows friendly. Windows has an equivalent sha1sum that you can put in the build gradle instead. commandLine("CertUtil", "-hashfile", "../docs/resourcepacks/v" + project.version + ".zip", "SHA1"). I also faced issues with spotless, I think there are some unsupported characters in the Regions.java comments that make the diagram. Also the symbolic links for the custom item textures were giving me issues after building that I never bothered resolving.

You are absolutely right, I'm only developing on linux. Windows is known for have issues with symbolic links, and sha1sum doesn't seem to be installed by default. As said above, thats something i can look into. No idea though why spotless isn't working. I assumed UTF-8 support would be working by default as on every platform today. It's definitely a little strange that it reports unsupported characters.

@Dambroda Once I was able to actually build, the codebase was pretty easy to peruse. Weird naming conventions, imo, but pretty easy to understand. To confirm I wasn't missing anything in regards to adding a config (it seemed too easy), I looked at your recent commit about adding a dirt path speed config.

Thats great! I feared it would be a little harder to grasp initially, as the vane-core API makes development quite different compared to your "average" minecraft plugin. I had a lot of fun building these annotations xD

Which, by the way, was a feature request I was going to submit as well ;)

Nice 😄


ebpf, tool: Don't use aya-bpf-cty

It's not needed anymore, all C types we need are in core::ffi.
Signed-off-by: Michal Rostecki<EMAIL_ADDRESS>

Nah, not gonna happen.
We need aya_bpf_cty for cross-compilation to arm


Add unit tests

@Mahesh419 How should we add an unit testing framework? The project currently doesn't use a package manager.

You can generate the package.json file using the npm init command and then use the command npm install <packageName> --save to install the package and update the package.json file. @anjulalk
For more information -

https://docs.npmjs.com/creating-a-package-json-file
https://stackoverflow.com/questions/9961502/is-there-a-way-to-automatically-build-the-package-json-file-for-node-js-projects

Prefer https://mochajs.org/ but any other can be used as you wish 😄


reintroduce exports.FBSD

Description
https://github.com/louislam/uptime-kuma/pull/1155 broke environment variable parsing for FreeBSD. So this reintroduce the specific FreeBSD check.

I think that /bsd$/ is already covering freebsd.

Yes, it does. However, the $HOST envvar is FreeBSD specific (is not set on Open/Net/Dragonfly)
I am fine with your latest commit though :)

Yes, it does. However, the $HOST envvar used in server.js is FreeBSD specific (is not set on Open/Net/Dragonfly)
I am fine with your latest commit though :)

Oh, then FBSD should be kept, I thought HOST is existing in all BSDs.


fzf in the middle of a pipe  doesn't work

git branch -a | fzf | pbcopy
git checkout (git branch -a | fzf) also doesn't work

fixed


The real srcPort should be passed to the auth plugins

Metronome will always pass 0 as srcPort. It should behave like Marathon and pass the real source port.

Note: This issue has been migrated to https://jira.mesosphere.com/browse/MARATHON-1612. For more information see https://groups.google.com/forum/#!topic/marathon-framework/khtvf-ifnp8.


The example in README is not working anymore

Hi! I'm trying to test the example from the README file, but is now working anymore.
➜  ~ npx puppeteer-heap-snapshot query -u https://www.instagram.com/p/CVEJmFTgdRw/ -p video_view_count,video_play_count,shortcode,video_url --no-headless | jq .

>> Opening Puppeteer page at: https://www.instagram.com/p/CVEJmFTgdRw/
>> Taking heap snapshot..
[]
➜  ~

@escodel Yes, puppeteer is a pre-requisite for this. And puppeteer will install chromium under the hood. Maybe puppeteer-heap-snapshot assume you already have puppeteer installed.

I also have the same issue, maybe we could try to figure out if instagram has made any changes to the property names. If @adriancooney could point us in the right direction would be great, because I've been trying to manually reproduce the original blog post but to no avail.

I'm using "type": "module" for ESM in my package.json, but for some reason it's saying 'export' is an unexpected token from puppeteer-heap-snapshot. Found this StackOverflow answer that says there could be an issue with TS types?
Also noticed this PR #10 was opened a few weeks back, especially because syntax was incorrect for puppeteer method .goto() but still can't find a true solution 🤷♂

@escodel I had the same issue with respect to export and can recommend just using as common js and don't bother with esm as it seems broken at the moment.


Add [GitHub] Total Commits Badge

Adds the GitHub Total Commits Badge discussed in #6070
I'm running into this error every time I try running npm start:

TODO:

[ ] Fix error above
[ ] Add Tests

Warnings

:warning:
This PR modified service code for github but not its test code. That's okay so long as it's refactoring existing code.

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @YashTotale!

  Generated by :no_entry_sign: dangerJS against 182ddf513790aa2d0ed395757f9ed033dc790ab5

Warnings

:warning:
This PR modified service code for github but not its test code. That's okay so long as it's refactoring existing code.

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @YashTotale!

  Generated by :no_entry_sign: dangerJS against 182ddf513790aa2d0ed395757f9ed033dc790ab5

I'm running into this error every time I try running npm start:

You can ignore the token pool error, or just add a GH_TOKEN to your local env: https://github.com/badges/shields/blob/master/doc/server-secrets.md#github (this is typically a good idea anyway if you're developing badges for GitHub)
As for the rest, looks like you've got a syntax error which is causing errors in Heroku, tests, and presumably your local env as well:
/tmp/build_0e08ee14_/services/github/github-total-commits.service.js:87

    const json = await this.fetch({ user, repo, branch: branch ?? 'HEAD' })

                                                                ^

SyntaxError: Unexpected token '?'

Try just adding 'HEAD' as a default value for the param above on the function signature

I'm running into this error every time I try running npm start:

You can ignore the token pool error, or just add a GH_TOKEN to your local env: https://github.com/badges/shields/blob/master/doc/server-secrets.md#github (this is typically a good idea anyway if you're developing badges for GitHub)
As for the rest, looks like you've got a syntax error which is causing errors in Heroku, tests, and presumably your local env as well:
/tmp/build_0e08ee14_/services/github/github-total-commits.service.js:87

    const json = await this.fetch({ user, repo, branch: branch ?? 'HEAD' })

                                                                ^

SyntaxError: Unexpected token '?'

Try just adding 'HEAD' as a default value for the param above on the function signature

The tests that are failing seem to be failing for the master branch as well. The daily service tests show this.
Please let me know if I have anything left to add or fix.

The tests that are failing seem to be failing for the master branch as well. The daily service tests show this.
Please let me know if I have anything left to add or fix.

Have adjusted the title so that only the tests for this service are executed (as opposed to the entire GitHub suite).
From the perspective of the end user experience, I'm not convinced that it makes sense to expose this as a separate badge/separate route. The existing GitHub Commit Activity badge presents users with the option to choose the interval, and I feel like this is just another interval (total/all time), much like the various download badges that allow users to select between the all time download count or count during interval period.
Under the hood, I know the target implementation for this is quite different than the existing commit badges, in no small part because the former is leveraging the newer v4 API option while the latter are still using the older v3 APIs. However, I don't we want those internals to leak through and drive the user experience and add a separate route.
I would rather see the existing commit activity service class refactored to take fully take advantage of the graphql/v4 approach. If it seems like it would be too much to refactor that and add support for total/all time interval in a single PR, then that's alright, but I'd still prefer to see the total interval incorporated on the existing badge route by adding some conditionals to that class to use different fetch/transform logic when the interval is t (for total/all time)

Have adjusted the title so that only the tests for this service are executed (as opposed to the entire GitHub suite).
From the perspective of the end user experience, I'm not convinced that it makes sense to expose this as a separate badge/separate route. The existing GitHub Commit Activity badge presents users with the option to choose the interval, and I feel like this is just another interval (total/all time), much like the various download badges that allow users to select between the all time download count or count during interval period.
Under the hood, I know the target implementation for this is quite different than the existing commit badges, in no small part because the former is leveraging the newer v4 API option while the latter are still using the older v3 APIs. However, I don't we want those internals to leak through and drive the user experience and add a separate route.
I would rather see the existing commit activity service class refactored to take fully take advantage of the graphql/v4 approach. If it seems like it would be too much to refactor that and add support for total/all time interval in a single PR, then that's alright, but I'd still prefer to see the total interval incorporated on the existing badge route by adding some conditionals to that class to use different fetch/transform logic when the interval is t (for total/all time)

I agree with @calebcartwright 's reasoning. @YashTotale is this something you would be keen on working on? :)

@PyvesB, I would love to work on this, but probably won't be able to get to it for a while. If anyone else wants to give it a shot, feel free to do so. :)

Thanks for the update. Will close this for now then. We can always reopen if need-be. 😉


Reverse Proxy container fails to build

There has been some update on the OpenResty container which cause the container build to fail for the Reverse proxy Image.
Step 7/12 : RUN luarocks install lua-resty-openidc
 ---> Running in bedc7a78fd87
Warning: Failed searching manifest: Failed downloading https://luarocks.org/manifest-5.1 - failed downloading https://luarocks.org/manifest-5.1
Warning: Failed searching manifest: Failed downloading https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/manifest-5.1 - failed downloading https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/manifest-5.1
Warning: Failed searching manifest: Failed downloading https://luafr.org/luarocks/manifest-5.1 - failed downloading https://luafr.org/luarocks/manifest-5.1

Error: No results matching query were found for Lua 5.1.
To check if it is available for other Lua versions, use --check-lua-versions.
The command '/bin/sh -c luarocks install lua-resty-openidc' returned a non-zero code: 1
ERROR: Service 'reverse-proxy' failed to build : Build failed

Looks like tag "openresty/openrecsty:<IP_ADDRESS>-10-alpine-fat" (https://hub.docker.com/layers/openresty/openresty/openresty/<IP_ADDRESS>-10-alpine-fat/images/sha256-932fc71d6cd82163b3d2b02e0847abe8a197956f179e6a5ab12476bc81864a64?context=explore) is working,
but it looks the same as the tag "openresty/openresty:alpine-fat" (openresty/openresty:alpine-fat).

We can close this issue, because the fixed version solved the problem.
And issue https://github.com/com-pas/compas-architecture/issues/157 will be used to monitor new versions of the image.


feat(usbboot): add new files that provide better speed

We currently ship with bootcode.bin and start.elf from the Raspberry
Pi Foundation, which provide a writing speed of about 6 MB/s. This PR
includes new boot files by resin.io that boost the speed to ~20 MB/s.
Change-Type: minor
Changelog-Entry: Increase the flashing speed of usbboot discovered devices.
Signed-off-by: Juan Cruz Viotti<EMAIL_ADDRESS>

@lurch What do you about merging this as-is, with just CM3 support, and then creating a new PR for CM1 support?

Awesome, thanks a lot for the files!

The usbboot-server stuff itself seems a bit flaky (which is a separate discussion...), but with the latest commit I've just pushed, I've successfully tested these kernels as working in Etcher under both Ubuntu Linux 14.04 x64 and Windows 7 x64 :grinning:   (but the latter requires drivers to be installed first, which is also a separate conversation :wink: )


It should be possible to disable 'synced_folder' in vagrant provider

Some VM in vagrantcloud (including puppetlabs/debian-7.6-64-nocm) does not have virtualbox guests installed so the provisioning fails with:
Failed to exec 'vagrant up'. Error was Failed to mount folders in Linux guest. This is usually because (RuntimeError)
the "vboxsf" file system is not available. Please verify that
the guest additions are properly installed in the guest and
can work properly. The command attempted was:

mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group vagrant | cut -d: -f3` vagrant /vagrant
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` vagrant /vagrant

The error output from the last command was:

stdin: is not a tty
/sbin/mount.vboxsf: mounting failed with the error: No such device
...

This could be worked around by disabling synced_folder in Vagrantfile.
ps: could you please add virtualbox-tools to puppetlabs/debian-7.6-64-nocm?

Merged.


📝[Docs]:  GitHub Desktop Contribution Instructions

Is there an existing issue for this?

[X] I have searched the existing issues

Issue Description
Description ✍
I am interested in contributing to the project by adding detailed instructions on how to contribute using GitHub Desktop.
Suggested Change
I believe that by providing clear and comprehensive guidance, we can encourage more contributors to participate in the project, especially those who prefer using GitHub Desktop for their contributions.
Could you please assign me the issue related to adding GitHub Desktop contribution instructions under gssoc24? I am excited about the opportunity to contribute to the project and help streamline the contribution process for others.
Rationale
No response
Urgency
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@iamkanhaiyakumar sure go ahead

@aditya-bhaumik Sir for this PR i did not any point Why Can you Oepn the issue gain i will make again pr request

@sk66641 @aditya-bhaumik
Can you open the pr issue again and cancle merged request
I talked to PM that said if you again raised PR and merged it you will get points

@iamkanhaiyakumar you already got level 2 for this why do want to open this pr again

@iamkanhaiyakumar i have changed the label in your pr now it should be equivalent to the 2 issue points

@aditya-bhaumik But in leadboard show PR #485 only because both isuue are in one this cause i did not get any point
You open the issue i merged in few second

@iamkanhaiyakumar i have changed the label now it will update in 12 hours

2 issues is 20 points you had done it in one pull request only  i did not see that so gave you level 1 just updated it to level 2 which is 25 points

@aditya-bhaumik So let's wait and see what happens tomorrow, the point will be added to the leadboard.


Constraints for feature with cardinality

Constraints do not effect every child of a feature with cardinality.

We have some questions regarding the constraints between cardinality @SundermannC :

Should all E be true and thus force a cardinality of 3. Or should we check beforehand if C is true.

If We switch to E => F, should one true E force F to be true or should all E's be true for that?
Here the most extreme example, what is the behavior in this case?

Especially the second case is a very interesting and I think far from solved in literature. I think a solution reasonably covering all such use cases is far more complex than desired here. In a recent bachelor's thesis, we discussed possible (still far from perfect) solutions. For simplicity, I would prefer the first solution proposed there. Here, each cardinality (sub-)feature is internally replaced with an or over the incarnations.
 I suppose this is sometimes not the expected behavior but it should be easy to realize and understand.
What do you think about this approach?

This looks good to me

@SundermannC One more question came up. Does that also mean, that the Constraint E alone will produce  (E_1 v E_2 v E_3)?

I think for now we should maintain equivalent translations everywhere. I agree that in some constraints this replacement does not feel like the intuitive semantic. However, I think no simple solution will do so. Hence, I would also replace E with E_1 v E_2 v E_3. I think the semantics of  the constraints E being "the UVL models needs an E" is fine.
Same with the E => D = (E_1 v E_2) => (D_1 v D_2), where it would mean "Having an E requires a D" as translation for us is good enough for now. Especially since UVLS is rather a playground for UVL than a tool for productive analysis.

Cardinality of zero is interesting.  Then, a cardinality of zero would behave equivalent in constraints to not selecting the feature.


New Rule: disallowNotOperatorsInConditionals

WIP. for #1205
Need to figure out a better name, also other cases?
Looks like I would need to add a check for != (inequality) and change the naming for !== to be strict inequality operator

Coverage increased (+0.0%) to 99.1% when pulling 94102ae1f3a96fbc45a32567a8d40e95c1ac218e on hzoo:disallow-not-operators-in-if into c668ff1be0b1cfa058866048944bad3df7ff7cbc on jscs-dev:master.

@hzoo Could you cover ternaries as well?
Error
date = !_.isEmpty(date) ? moment(date, 'DD-MM-YYYY') : null;
Correct
date = _.isEmpty(date) ? null : moment(date, 'DD-MM-YYYY');

Ok with that the rule name/docs should change as well. disallowNotOperatorsInConditionals to cover both?

Yeah, sounds good :+1:

Totally agreed about conditionals.
But are you sure about plural in naming?
disallowNotOperatorsInConditionals vs disallowNotOperatorInConditional

As of now, we will be checking for !==, !=, !a
in if() and ternary (a ? b : c)

Still a WIP?

Yeah I just have to change the rule name to disallowNotOperatorsInConditionals and add a check for ternary statement and != which I can do soon.

Coverage increased (+0.01%) to 99.13% when pulling 2a6868dc820b5bab7e1cc832dbac412d78983b31 on hzoo:disallow-not-operators-in-if into d651a78819680c6e9adc1c1330da09fe14d0be3d on jscs-dev:master.

Updated the rule name to disallowNotOperatorsInConditionals, fixed examples/tests - added check for != and ternaries.

I would ask for opposite rule, but really, who would need that?

validate*?

Yeah, was thinking the same thing, but validateNotOperatorsInConditionals sounds peculiar to me.
Ideas?

validateTestInConditionals?

@hzoo ?

validateNegationInConditionals? validateNoNegationInConditionals?
On Mon, 27 Apr 2015 07:56 Oleg Gaidarenko<EMAIL_ADDRESS>wrote:

@hzoo https://github.com/hzoo ?
—
Reply to this email directly or view it on GitHub
https://github.com/jscs-dev/node-jscs/pull/1210#issuecomment-96514481.

We have disallow/require rules without opposites. No need to force it to be named "validate".

I think it would be a good naming convention, we can start enforcing it now and continue to use it in new major version

I still like disallowNotOperatorsInConditionals

Me too, but see above, i'd like establish convention for these kind of rules.

@markelog What you think about leaving it as is for now and try to rethink it in the way to 2.0? I still want to revive your issue with new shiny configurations.

Works for me, will land this soon

Oh I didn't add it to the commit - #1205.


Duplicated mouse events with ncurses-backend

Right and Middle mouse buttons generate strange sequence of events.
Steps to reproduce:

run cargo run --example key_codes
click on middle mouse button

Expected event sequence for middle mouse button:
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 139, y: 23 }, event: Press(Middle) }
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 139, y: 23 }, event: Release(Middle) }

Actual event sequence for middle mouse button:
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 139, y: 23 }, event: Press(Middle) }
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 139, y: 23 }, event: Release(Middle) }
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 139, y: 23 }, event: Press(Middle) }

Expected event sequence for right mouse button:
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 117, y: 25 }, event: Press(Right) }
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 117, y: 25 }, event: Release(Right) }

Actual event sequence for right mouse button:
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 117, y: 25 }, event: Press(Right) }
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 117, y: 25 }, event: Release(Right) }
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 117, y: 25 }, event: Press(Right) }
Mouse { offset: XY { x: 1, y: 19 }, position: XY { x: 117, y: 25 }, event: Release(Right) }

P.S with termion-backend it works correctly.

Also, mouse WheelUp and WheelDown don’t work. Tested with ncurses on Ubuntu 16.04

Hi, and thanks for the report!
Ncurses used to not handle mouse wheel (it was assuming mouses only had 3 buttons).
At some point it was patched to support 5 buttons (mouse wheel up and down are simulated as extra buttons), but this resulted in a backward-compatibility break.
To avoid this break, Ubuntu ships ncurses with this new feature disabled. This means that:

Mouse wheel on ubuntu is a little broken (there are possible workarounds, but by default it's a bit of a mess)
Ncurses on ubuntu and ncurses on other systems (like Archlinux) behave differently, and the ncurses-rs crate currently doesn't adapt to this (though I opened a PR some time ago: https://github.com/jeaye/ncurses-rs/pull/165). The result is that on ubuntu, basically all mouse input is broken, or almost broken.

The ideal solution would be to merge the linked PR in ncurses (so at least non-wheel events work correctly on Ubuntu), and then implement some workaround in Cursive to detect these wheel events.
Unfortunately it seems the maintainer of ncurses-rs has moved on to other projects and is not really responsive anymore.
I've been trying to avoid publishing a forked ncurses-rs, but if the situation doesn't improve it may be the only solution.

Yes, my email about this PR seems to have worked ;)
Also, I noticed that he is looking for collaborators(https://github.com/jeaye/ncurses-rs/issues/102) and maybe instead of forking ncurses-rs you should ask him about commit rights.

The current master should now work fine for most mouse events, except mouse wheel down on Ubuntu.

Thank you! It worked! :+1:


Doesn't handle hgt files of a no standard size.

E.g., S44W177.hgt is 2801664 bytes instead of the usual 2884802 and that breaks the system.

Hi,
to my knowledge there is no way to know the resolution except looking at the file size (https://github.com/perliedman/node-hgt/blob/master/src/hgt.js#L16), so currently there is no way for us to handle a file like that.
I am open to suggestion on how to handle this, PRs welcome if this important to you!


Fix eager mode in run_generation by removing graph logs

What does this PR do?
This PR removed GRAPH_VISUALIZATION=TRUE from run_generation.py script as it was generating thousands of logs files(.pbtxt) in eager mode.

Fixes # (issue)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

@Vasud-ha this only generates when it in lazy model, and we have stats to print the graph #. you can remove manually, right?

This only generates in eager mode and since the number of generated log files is huge it is difficult to delete.

@Vasud-ha , I too ran into this issue, what puzzles me is args.torch_compile must be true for eager though.
Can you test if you see the files generated if you set ENABLE_CONSOLE=true. In my case it just stopped generating them when I set that. I am not sure its a good solution necessarily as ENABLE_CONSOLE affects all logging.

@Vasud-ha , I too ran into this issue, what puzzles me is args.torch_compile must be true for eager though. Can you share your command with us? Can you test if you see that the files generated if you set ENABLE_CONSOLE=true ?

Any run_generation script example will do this when in eager mode, our example is :
PT_HPU_LAZY_MODE=0 python run_generation.py --model_name_or_path google/gemma-2b-it --use_kv_cache --max_new_tokens 100 --bf16 --batch_size 1 --do_sample --prompt "Write a hello world program"
Always turning ON a debug env variable inside the script is a bad idea anyway.

@Vasud-ha , I too ran into this issue, what puzzles me is args.torch_compile must be true for eager though. Can you share your command with us? Can you test if you see that the files generated if you set ENABLE_CONSOLE=true ?

Any run_generation script example will do this when in eager mode, our example is : PT_HPU_LAZY_MODE=0 python run_generation.py --model_name_or_path google/gemma-2b-it --use_kv_cache --max_new_tokens 100 --bf16 --batch_size 1 --do_sample --prompt "Write a hello world program"
Always turning ON a debug env variable inside the script is a bad idea anyway.

Agreed I wasn't suggesting to turn on the debug var as a solution, I was just trying to understand behavior.

LGTM.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

LGTM! Please run make style and then I'll merge it.

make style Done.


TensorFlow Lite InterpreterBuilder::ParseTensors incorrect for big-endian machines

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): No
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-45-generic s390x)
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: N/A
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): 1.13.0
Python version: Python 2.7.15rc1 (default, Nov 12 2018, 14:31:15)
Bazel version (if compiling from source): N/A (tflite build via lite/tools/make/Makefile)
GCC/Compiler version (if compiling from source): gcc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0
CUDA/cuDNN version: N/A
GPU model and memory: N/A

Describe the current behavior
Any attempt to run one of the TF Lite utilities (e.g. label_image, benchmark_model) or use the interpreter via an import in Python will generate error messages at time of loading a FlatBuffers tflite model file.
Describe the expected behavior
TensorFlow Lite should correctly read a FlatBuffers tflite file and build an internal model structure for its interpreter without any errors.
Code to reproduce the issue
A mere inspection of the model.cc source code (in directory tensorflow/lite) will show that the InterpreterBuilder::ParseTensors function assigns a FlatBuffers buffer pointer directly to the TF Lite tensor's object data field. (See https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/model.cc line 350).
This will cause any multi-byte element of a tensor to be incorrectly interpreted since FlatBuffers use strictly little-endian for all numeric values.
Other info / logs
The offending source line is line 390:
buffer_data = reinterpret_cast<const char>(array->data());
A tentative solution needs a two-fold change:

The tensor type must be used to learn how to interpret the char data and this data must be byte swapped accordingly. FlatBuffers already provides a utility function for that:
flatbuffers::EndianScalar(). Unfortunately this requires a loop over all data in strides of the size of a tensor element. But need only be done once during model build.

Example of correctly handling 32-bit integers:

            *buffer_size = size;
            *buffer_data = reinterpret_cast<const char*>(array->data());
            switch (type) {
            case kTfLiteInt32: {
              int32_t *p = reinterpret_cast<int32_t*>(const_cast<uint8_t*>(array->data()));
              for (size_t i = 0; i < size; i+=4, ++p)
                *p = flatbuffers::EndianScalar(*p);
              break;
            }

The FlatBuffers buffer must be writable. One must drop the const specifier and moreover since the tflite file is memory-mapped the mapping options must include PROT_WRITE and the mode must be MAP_PRIVATE in mmap_allocation.cc.

Example of new mmap call:

   mmap(nullptr, buffer_size_bytes_, PROT_READ|PROT_WRITE, MAP_PRIVATE, mmap_fd_, 0);

There is also a minor issue in the label_image example where a BMP file is read and its header which has some little-endian integers that are not converted on a big-endian machine.
A simple solution for this (in lite/examples/label_image/bitmap_helpers.cc):

 header_size = flatbuffers::EndianScalar(header_size);
 *width = flatbuffers::EndianScalar(*width);
 *height = flatbuffers::EndianScalar(*height);
 bpp = flatbuffers::EndianScalar(bpp);

I'd like to update this issue. I've run into exactly the same problem while deploying a TensorFlow lite model to a new big endian target using lite micro. The additional problem here is that the FlatBuffer is compiled into the program binary and referenced from there. This means that step 2 of the proposed solution is not possible in TensorFlow lite micro deployments.
I'm not sure what the best solution in this case is. Either the values are byte shuffled from little endian to big endian as the tensor operations are being evaluated which would have a terrible effect on performance or a big endian version of the FlatBuffer could be created which would technically break the flat buffer standard. The latter would be the simplest and highest performance solution, but alter the TensorFlow lite micro deployment process.

I've actually made the solution presented by @geert56 work successfully in TF lite micro when tested on the Leon 3 (Sparc V8) big endian system. There wasn't any problem updating the values stored in the binary.
A pull request with these updates has been submitted here https://github.com/tensorflow/tensorflow/pull/30362
This doesn't fix the problem in TF lite in general only in TF lite micro.
Two files of this PR are specifically dealing with big endian compatability.
tensorflow/lite/experimental/micro/micro_interpreter.cc - modifies the loaded model weights in the case of a big endian system
tensorflow/lite/kernels/kernel_util.h - modifies the reading of several array indices which are incorrect if not converted.
Update demonstrates the proposed solution works as indented and can be used as a guide to updating the relevant files for TF lite in general

This is a known limitation of TFLite schema:
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/schema/schema.fbs#L94
Also please try out what @PeteBlackerThe3rd suggested. Thanks!


calling jit-ed function results in weird TypeError

In numba v0.21.0, the following example raises an odd TypeError:
from __future__ import print_function
from numba import jit
import numpy as np

@jit
def func1(fromLons, fromLats, toLons, toLats):
    return (np.radians(fromLons),
            np.radians(fromLats),
            np.radians(toLons),
            np.radians(toLats))

@jit
def func2(fromLons, fromLats, toLons, toLats):
    # Haversine formula
    return (6371.0 * 2.0 * np.arcsin(np.sqrt(np.sin((toLats - fromLats)/2.0) ** 2
                          + np.cos(fromLats) * np.cos(toLats)
                        * np.sin((toLons - fromLons)/2.0) ** 2)))

@jit
def distance(fromLons, fromLats, toLons, toLats):
    return func2(*func1(fromLons, fromLats, toLons, toLats))

if __name__ == '__main__':
    a = np.linspace(0, 360, 20)
    b = np.linspace(10, 55, 25)

    distance(a, b[:20], 1.75, 1.5)
    distance(a[:, None], b[None, :], 1.75, 1.5)

    print("distance() types:\n", distance.inspect_types())

Running this results in:
bash-4.1$ python numba_scce2.py
Traceback (most recent call last):
  File "numba_scce2.py", line 29, in <module>
    distance(a[:, None], b[None, :], 1.75, 1.5)
TypeError: not enough arguments: expected 4, got 0

Notice that the exception is being raised from the 2nd call to distance(), not the first one. I should also note that this error does not happen if the distance() function is formulated as it appears in #1466.

This particular example now works properly. The weird TypeError will be fixed more generally by PR #1614. Thanks for reporting this issue :)


improve XML error message

It would be more helpful if a specific message regarding what is wrong with the XML is printed.  Right now, it just say "wrong format"

done.  now it prints out the actual error.


Mann Whitney U difference in p value between Windows and Mac

There appears to be a discrepancy in the calculated p value of the Mann-Whitney U test - after much testing we seem to be able to attribute it to whether we run it on Windows or Mac. Not sure if this is a bug in the code somewhere, or an inevitable difference between the two OSs.
Here is a link to the data set we have been using: https://www.dropbox.com/s/blf5osto696bm4h/intro_to_ds_programming_files.zip
(it is called turnstile_data_master_with_weather.csv and can be found in the directory project_5/average_rides_per_day)
Here is a code snippet:
import pandas as pd
import scipy
df_turnstile_weather = pd.DataFrame(pd.read_csv('turnstile_data_master_with_weather.csv'))
U, p = scipy.stats.mannwhitneyu(turnstile_weather['ENTRIESn_hourly'][turnstile_weather.rain ==1],turnstile_weather['ENTRIESn_hourly'][turnstile_weather.rain ==0])

We obtained a p value of 0.024999 on Mac, and 0.0193 in Windows. The U values are the same in both cases. Calculations were done in an iPython notebook. The value seems to be independent of the version of any of the software and only on the OS (as far as we can tell). For reference, here are a few of the systems/versions we tried it on:
Mac 10.9.5 :
Python 2.7.5
ipython 2.3.0
numpy 1.9.1
pandas 0.15.1
scipy 0.11.0 (tried 0.14.0 on Mac as well, got the 'normal' Mac value)
Windows (8.1 64 bit, clean python/Anaconda build):
Python 2.7.9
ipython 2.2.0
numpy 1.9.0
pandas 0.14.1
scipy 0.14.0
A second Windows build tested (8.1, 64 bit):
ipython 2.3.1
numpy 1.9.1
pandas 0.15.2
scipy 0.14.0

I suspect it is the same problem as discussed in https://github.com/scipy/scipy/issues/3611.  In particular, see the comments from https://github.com/scipy/scipy/issues/3611#issuecomment-42390135 onward.

Issue gh-3611 and related ones have been fixed a long time ago. This CSV file is gone, but assuming this is fixed as well - closing.


[DragDrop] Model & view update during drag breaks drag & drop

Reproduction scenario is trivial. This can happen in muli-user environments where data updates are pushed and merged live.
Reproduction
https://stackblitz.com/edit/components-issue-crtxst?file=src%2Fapp%2Fexample-component.html

Open repro - there are 4 buttons,
Wait 3 seconds - there are 2 different buttons. They can be dragged,
Now refresh the page, and as soon as it loads start dragging "Button 1". Hold it,
After 3 seconds model is updated, dragging is cancelled, and dragging is no longer possible.

On stackblitz, I don't see any errors logged. However, on my production app, I got something logged via Sentry that points to this transpiled piece of code in fesm2015/drag-drop.js:
1078                 (event) => {
1079                     if (!event || (event.target === this._preview && event.propertyName === 'transform')) {
1080                         this._preview.removeEventListener('transitionend', handler);
1081                         resolve();
1082                         clearTimeout(timeout);
1083                     }
1084                 }))));

with error being:
TypeError: Cannot read property 'removeEventListener' of null
Expected Behavior
Dragging should be possible with new items
Actual Behavior
Dragging doesn't work until page is reloaded
Environment

Angular: 9.0.2
CDK/Material: 9.0.1
Browser(s): Chrome 80
Operating System (e.g. Windows, macOS, Ubuntu): Ubuntu

As a workaround, is there any way to cancel any ongoing drag & drop?

As a workaround, is there any way to cancel any ongoing drag & drop?

Regarding a workaround, here is one....kind of, by using a setter for the ngFor iterable and some private methods.
https://stackblitz.com/edit/components-issue-yuzqth?file=src/app/example-component.ts

That's great, thanks!


Need Proper Documentation for this project (Need Updation as well)

We are in need of comprehensive and up-to-date documentation for Demon_Connect. Proper documentation is crucial for the project's maintenance, future development, and onboarding of new contributors. This will help ensure the project's long-term success and make it more accessible to everyone.

Hello @anupammaurya6767 , I am interested to resolve this issue. It will be easy to me if you give detailed information about the project so that a proper documentation will be created accordingly.

Hello @anupammaurya6767 , I am interested to resolve this issue. It will be easy to me if you give detailed information about the project so that a proper documentation will be created accordingly.

Join this group and you can discuss it with other maintainers.
Grp link : https://chat.whatsapp.com/FGV7ef4d9tNGtfN8HDvbim

I like to contribute to this issue, can you assign me this one?

@Burhanuddin-2001 go ahead


Bot is closed when I clicked Start simulation

Bot is closed when I clicked Start simulation. I had 2 open tabs, both connected to bitler accounts, a tab with a script running and I was doing my simulations on the other tab, before Dicebot crashed, I had already launched several simulations with success. I may have clicked while a simulation was already running, but I don't think I did this.
dicebotlog.log

You can upload files directly to github by dragging and dropping into the text box, no need to use megaupload

You can upload files directly to github by dragging and dropping into the text box, no need to use megaupload

I couldn't because file was to big


Cloud-based wake word verification How to

IMPORTANT: Before you create an issue, please take a look at our Issue Reporting Guide.
Briefly summarize your issue:

How to include "Cloud-based wake word" supported in SampleApp
What is the expected behavior?

What behavior are you observing?

Currently, I could just use 't' to accept voice command, is it possible to enable "Cloud-based wake word"?
Provide the steps to reproduce the issue, if applicable:

Tell us about your environment:

What version of the AVS Device SDK are you using?
  <x.y.z>

<1.9.0>
Tell us what hardware you're using:

[ ] Desktop / Laptop
[ ] Raspberry Pi
[X ] Other - tell us more: my embedded platform MIPS core

Tell us about your OS (Type & version):

[How to include "Cloud-based wake word" supported in SampleApp ] Linux
[ ] MacOS
[ ] Raspbian Stretch
[ ] Raspbian Jessy
[X] Other - tell us more: linux

Hi @DiazSo, I think what you are asking about is local far-field detection, so you don't have to press 't'.  In this case, the SampleApp will detect the "Alexa" keyword in user speech, and then automatically initiate sending the audio query to AVS.
You should configure one of the keyword detectors, as described here.  If you ran our complete install script, as offered here for pi, then this will already be done - just say "Alexa" to the device when the SampleApp is running.
For completeness, Cloud-based wake word verification is a feature where the cloud will double-check that "Alexa" was actually in the user speech.  On the client side, this requires the wake word engine to provide the audio sample index points to show where the wake word began and ended.
Let us know if you need any further assistance.

Hi @DiazSo , in my knowledge, if you have several devices in the room using ONE ACCOUNT AVS will be the one to determine which device will respond.


Data Corruption Fix: overflow when reading values from arrays

My company runs many Hollow based apps in production and we noticed data corruption with a couple datasets that used a large number of array elements. After debugging we found that the failure occurs when the dataset consists of more than 2^29 array elements. It does not matter how many elements are in any individual array. Cumulatively there must be less than 2^29 array elements across all arrays.
The problem was happening because HollowListTypeReadStateShard tries to read 2 values at once, which results in a 58 bit read. However the 29 bit value can be offset by 7 bits from a byte boundary, causing the result of a 58 bit read to overflow the 64 bit space and an invalid value to be returned.
The fix was to modify HollowListTypeReadStateShard to read the values individually.
Unit tests are provided demonstrating the situations described above. In addition, we found that FixedLengthData values are actually limited to 58 bits in length, contrary to the comments in code which claim it can support 60 bit wide values. This is because a 59 bit wide value will overflow when offset by 6 bits from a byte boundary. There are also unit tests included to demonstrate this.
Issue: #513

@rpalcolea Hello from Target

@toolbear @dkoszewnik If you have a moment to take a look at this, it would be much appreciated. We've hit this overflow problem with a couple production clients now, and it effectively makes them unable to process new updates. Causing an ArrayIndexOutOfBoundsException or DELTA CHECKSUM errors with all subsequent Producer cycles.

#512

@mikemuske can you please elaborate on the diagnosis process for this issue? we are experiencing similar symptoms on HollowSetTypeReadStateShard in a long running consumer instances


RedisBroadcaster fails on Redis cluster

Laravel Version
7
PHP Version
7.4
PhpRedis
5.3.1
Redis cluster
6.2.6
Database Driver & Version
No response
Description
I'll try to test on other environments later, if needed
Broadcasting script defined in \Illuminate\Broadcasting\Broadcasters\RedisBroadcaster::broadcastMultipleChannelsScript() does not follows guidelines for EVAL (see https://redis.io/commands/eval/). It passes channel names as ARGV, while they should be KEYS. The problem is visible, only when you switch to redis cluster. When specified channel names maps to multiple slots, this can lead to random dies of php. In some cases it dies with 139 (SIGSEGV). In some cases  it throws exception The slot XXX is not covered by any node in this cluster, where XXX has inadequate values like 22506 or -3899. In some cases script will fail with MOVED error.
The simpliest way to fix is to use
foreach ($this->formatChannels($channels) as $channel) {
   $connection->client()->publish($channel, $payload);
}

instead of
        $connection->eval(
            $this->broadcastMultipleChannelsScript(),
            0, $payload, ...$this->formatChannels($channels)
        );

Steps To Reproduce

Setup redis-cluster with 3 nodes
Setup redis-cluster connection via phpredis (predis does not support publish or eval)
Setup broadcasting to use cluster connection
Create event with 2+ broadcast channels

    public function broadcastOn()
    {
        return [new PrivateChannel('channel1'), new PrivateChannel('channel2'), ...];
    }

Subscribe to event in redis-cli SUBSCRIBE private-channel1 private-channel2 ...
Try to broadcast this event.
See if message is received, and php is not crashed

Hey there,
Unfortunately we don't support this version anymore. Please check out our support policy on which versions we are currently supporting. Can you please try to upgrade to the latest version and see if your problem persists? If so, please open up a new issue and we'll help you out.
Thanks!


esi/combo_handler plugin doesn't register

The plugin doesn't call TSPluginRegister. The causes ATS to crash upon
startup if combo_handler is enabled.
See issue #1486.

Apparently no one uses ComboHandler, if this wasn't noticed.

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/freebsd-github/1609/ for details.

Intel CC build successful! See https://ci.trafficserver.apache.org/job/icc-github/42/ for details.

Linux build successful! See https://ci.trafficserver.apache.org/job/linux-github/1504/ for details.

Linux build successful! See https://ci.trafficserver.apache.org/job/linux-github/1503/ for details.

Intel CC build successful! See https://ci.trafficserver.apache.org/job/icc-github/41/ for details.

clang-analyzer build successful! See https://ci.trafficserver.apache.org/job/clang-analyzer-github/174/ for details.

clang-analyzer build successful! See https://ci.trafficserver.apache.org/job/clang-analyzer-github/173/ for details.

@SolidWallOfCode Why was this closed with no labels, no Milestone, no nothing :-/. Come one!


Cloudwatch logs group destroyed with module

Currently cloudwatch logs group is created and destroyed along with the module.
For audit purposes we have a use case not to delete any logs.
It would be best for us to create the cloudwatch logs group outside the module, and manage its lifecycle separately.
Possible solution would be adding create_cloudwatch_logs_group boolean to the module.

No longer required for our use case, closing the PR and issue.
Someone else can open if needed...


Supporting a whole site service shadow deployment

This is a requirement is needed by performance testing on production.
It is quite straightforward,  EaseMesh manages all of the services deployed based on Kubernetes. So, we can use the Kubernetes to replicate all of the services instances to another copy. We call this the "Shadow Service". After that, we can schedule the test traffic to the "shadow service" for the test.
In other words, we try to finish the following works.

Make all services a copy as a shadow.
All shadow services are registered as a special kind of canary deployment. and only specific traffic can be scheduled for them.
At last, all shadows services can be removed safely.

Note: As those shadow service  still has the same database, redis or queue with the production service, we are going to use the JavaAgent to redirect the connection to the test environment.  This requirement is addressed by https://github.com/megaease/easeagent/issues/99

The shadow service needs to support the creation of requests from other services, such as easeload, or users through command-line operations. Therefore, it needs to:

Provide API interface for other service calls.
Provide emctl subcommand for managers to call.

In addition to the deployment object created by meshdeployment, easemesh also supports native deployment, so we only need to copy the deployment. Copy all or a single qualified deployment of a namespace by specifying the namespace and deployname.
Deployment replication rules are as follows:

The specified namespace must conform to the mutatehook configuration.

Copy only the Deployment where the easemesh-sidecar container exists in the Deployment.Spec.

Remove sidecarcontainer, initcontainer, volume and other elements injected by the operator.

Modify the original name, selector and annotations, and add the shadow tag.

Examples are as follows:

Original Deployment

apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    deployment.kubernetes.io/revision: "1"
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{"mesh.megaease.com/alive-probe-url":"http://localhost:9900/health","mesh.megaease.com/service-name":"vets-service"},"name":"vets-service","namespace":"spring-petclinic"},"spec":{"replicas":1,"selector":{"matchLabels":{"app":"vets-service"}},"template":{"metadata":{"labels":{"app":"vets-service"}},"spec":{"containers":[{"args":["-c","java -server -Xmx1024m -Xms1024m -Dspring.profiles.active=sit -Djava.security.egd=file:/dev/./urandom  org.springframework.boot.loader.JarLauncher"],"command":["/bin/sh"],"image":"megaease/spring-petclinic-vets-service:latest","imagePullPolicy":"IfNotPresent","lifecycle":{"preStop":{"exec":{"command":["sh","-c","sleep 10"]}}},"name":"vets-service","ports":[{"containerPort":8080}],"resources":{"limits":{"cpu":"2000m","memory":"1Gi"},"requests":{"cpu":"200m","memory":"256Mi"}},"volumeMounts":[{"mountPath":"/application/application-sit.yml","name":"configmap-volume-0","subPath":"application-sit.yml"}]}],"restartPolicy":"Always","volumes":[{"configMap":{"defaultMode":420,"items":[{"key":"application-sit-yml","path":"application-sit.yml"}],"name":"vets-service"},"name":"configmap-volume-0"}]}}}}
    mesh.megaease.com/alive-probe-url: http://localhost:9900/health
    mesh.megaease.com/service-name: vets-service
  name: vets-service
  namespace: spring-petclinic
spec:
  replicas: 1
  selector:
    matchLabels:
      app: vets-service
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: vets-service
    spec:
      containers:
      - args:
        - -c
        - java -server -Xmx1024m -Xms1024m -Dspring.profiles.active=sit -Djava.security.egd=file:/dev/./urandom  org.springframework.boot.loader.JarLauncher
        command:
        - /bin/sh
        env:
        - name: JAVA_TOOL_OPTIONS
          value: ' -javaagent:/agent-volume/easeagent.jar -Deaseagent.log.conf=/agent-volume/log4j2.xml '
        image: megaease/spring-petclinic-vets-service:latest
        imagePullPolicy: IfNotPresent
        lifecycle:
          preStop:
            exec:
              command:
              - sh
              - -c
              - sleep 10
        name: vets-service
        ports:
        - containerPort: 8080
          protocol: TCP
        resources:
          limits:
            cpu: "2"
            memory: 1Gi
          requests:
            cpu: 200m
            memory: 256Mi
        volumeMounts:
        - mountPath: /application/application-sit.yml
          name: configmap-volume-0
          subPath: application-sit.yml
        - mountPath: /agent-volume
          name: agent-volume
      - command:
        - /bin/sh
        - -c
        - /opt/easegress/bin/easegress-server -f /sidecar-volume/sidecar-config.yaml
        env:
        - name: APPLICATION_IP
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: status.podIP
        image: <IP_ADDRESS>:5001/megaease/easegress:server-sidecar
        imagePullPolicy: IfNotPresent
        name: easemesh-sidecar
        ports:
        - containerPort: 13001
          name: sidecar-ingress
          protocol: TCP
        - containerPort: 13002
          name: sidecar-egress
          protocol: TCP
        - containerPort: 13009
          name: sidecar-eureka
          protocol: TCP
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /sidecar-volume
          name: sidecar-volume
      initContainers:
      - command:
        - sh
        - -c
        - "set -e\ncp -r /easeagent-volume/* /agent-volume\n\necho 'name: vets-service\ncluster-join-urls:
          http://easemesh-controlplane-svc.easemesh:2380\ncluster-request-timeout:
          10s\ncluster-role: reader\ncluster-name: easemesh-control-plane\nlabels:\n
          \ alive-probe: http://localhost:9900/health\n  application-port: 8080\n
          \ mesh-service-labels: \n  mesh-servicename: vets-service\n' > /sidecar-volume/sidecar-config.yaml"
        image: <IP_ADDRESS>:5001/megaease/easeagent-initializer:latest
        imagePullPolicy: IfNotPresent
        name: initializer
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /agent-volume
          name: agent-volume
        - mountPath: /sidecar-volume
          name: sidecar-volume
      volumes:
      - configMap:
          defaultMode: 420
          items:
          - key: application-sit-yml
            path: application-sit.yml
          name: vets-service
        name: configmap-volume-0
      - emptyDir: {}
        name: agent-volume
      - emptyDir: {}
        name: sidecar-volume

Shadow Deployment

apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    deployment.kubernetes.io/revision: "1"
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{"mesh.megaease.com/alive-probe-url":"http://localhost:9900/health","mesh.megaease.com/service-name":"vets-service"},"name":"vets-service","namespace":"spring-petclinic"},"spec":{"replicas":1,"selector":{"matchLabels":{"app":"vets-service"}},"template":{"metadata":{"labels":{"app":"vets-service"}},"spec":{"containers":[{"args":["-c","java -server -Xmx1024m -Xms1024m -Dspring.profiles.active=sit -Djava.security.egd=file:/dev/./urandom  org.springframework.boot.loader.JarLauncher"],"command":["/bin/sh"],"image":"megaease/spring-petclinic-vets-service:latest","imagePullPolicy":"IfNotPresent","lifecycle":{"preStop":{"exec":{"command":["sh","-c","sleep 10"]}}},"name":"vets-service","ports":[{"containerPort":8080}],"resources":{"limits":{"cpu":"2000m","memory":"1Gi"},"requests":{"cpu":"200m","memory":"256Mi"}},"volumeMounts":[{"mountPath":"/application/application-sit.yml","name":"configmap-volume-0","subPath":"application-sit.yml"}]}],"restartPolicy":"Always","volumes":[{"configMap":{"defaultMode":420,"items":[{"key":"application-sit-yml","path":"application-sit.yml"}],"name":"vets-service"},"name":"configmap-volume-0"}]}}}}
    mesh.megaease.com/alive-probe-url: http://localhost:9900/health
    mesh.megaease.com/service-name: vets-service
    // 1. Add shadow service-label
    mesh.megaease.com/service-labels: "version=shadow"
  // 2. change Deployment name
  name: vets-service-shadow
  namespace: spring-petclinic
spec:
  replicas: 1
  selector:
    matchLabels:
      app: vets-service
      // 3. add new selector for shadow pods
      mesh.megaease.com/mesh-shadow-service: true
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: vets-service
        // 4. add new label for shadow pods
        mesh.megaease.com/mesh-shadow-service: true
    spec:
      containers:
      - args:
        - -c
        - java -server -Xmx1024m -Xms1024m -Dspring.profiles.active=sit -Djava.security.egd=file:/dev/./urandom  org.springframework.boot.loader.JarLauncher
        command:
        - /bin/sh
        env:
        - name: JAVA_TOOL_OPTIONS
          value: ' -javaagent:/agent-volume/easeagent.jar -Deaseagent.log.conf=/agent-volume/log4j2.xml '
        image: megaease/spring-petclinic-vets-service:latest
        imagePullPolicy: IfNotPresent
        lifecycle:
          preStop:
            exec:
              command:
              - sh
              - -c
              - sleep 10
        name: vets-service
        ports:
        - containerPort: 8080
          protocol: TCP
        resources:
          limits:
            cpu: "2"
            memory: 1Gi
          requests:
            cpu: 200m
            memory: 256Mi
        volumeMounts:
        - mountPath: /application/application-sit.yml
          name: configmap-volume-0
          subPath: application-sit.yml
      volumes:
      - configMap:
          defaultMode: 420
          items:
          - key: application-sit-yml
            path: application-sit.yml
          name: vets-service
        name: configmap-volume-0

@haoel @zhao-kun @xxx7xxxx

Let me clarify the shadow service architecture through a diagram:

There are several parts in the architecture:
Shadow service: It is an in-cluster service, which accepts requests forward from the EaseMesh control plane (Easegress).  When a request is incoming, the Shadow service will fetch the deployment information in the K8s cluster, After rendering a new shadow deployment with annotation, it will send create to the K8s API server to deploy new deployments.
MeshController: It's the endpoint of the EaseMesh control plane, which manages the specifications and service registry of the Mesh. The emctl and other services could integrate EaseMesh via it.
Why do we need a standalone Shadow service.
First, The logic implemented by the Shadow service isn't belong to scope of the common Mesh. Second, it's heavily communicated with K8s and very different from EaseMesh controller implementation. Thirdly, like K8s, the EaseMesh control plane needs a mechanism to allow developers to customize the EaseMesh. After serveral days study, I found the K8s has a mechanism to extend the K8s API server which is API Aggregation layer [1]. I think we could leverage it extending the EaseMesh control plane and implement the requirment.
[1]https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation

Some Q&A:

Can emctl communicate with customized service (currently only shadow service) directly?

We use k8s apiserver as one and only one gate for all APIs, and MeshController will also support extensional APIs, so it's better to use unique access gate.

Does a new customized service means adding a new API (new image) for MeshController (in Easegress)?

No, the extensible APIs of MeshController will cover it from start.

Does EaseMesh send all information for the shadow service instead of itself fetching?

It depends, we need to design a general APIs(Mesh service dedicated info, general storage, etc) for customized serviced.

Related to #107, It will be closed after #109 is accepted


Chess: Move E8 to F7

Please do not change the title. Just click "Submit new issue".

@MGBoulware88 done! Successfully played move e8f7 for current game.
Thanks for playing!


!!single_sign

I haven't seen this structure before, I'm assuming its not not, which would be single_sign?
https://github.com/iotaledger/ledger-iota-app/blob/7ab9a796421a5906ada80a786e40d6cc27082188/src/api.c#L363

@gsmithufl no, !! contains the value to 0 and 1. For instance !!5 would become 1.
Without using !! it would like like api.essence.single_sign_mode = (single_sign) ? 1 : 0;.


[PDI-18576] executeTrans REST API do not return error response is inc…

…onsistent when transformation errors out
@pentaho-lmartins @bcostahitachivantara @smmribeiro

:white_check_mark: Build finished in 27m 21s
Build command:
mvn clean verify -B -e -Daudit -amd -pl engine

:ok_hand: All tests passed!
Tests run: 3831, Failures: 0, Skipped: 7    Test Results

:information_source:  This is an automatic message


NIFI-6999 - Made changes to load flow.xml files using streams. Update…

…d tests.
NIFI-6999 - Slight change to test to check for WARN message.
NIFI-6999 - Removed very large flow file and test that uses it. This test ran for about 2 minutes so was excessive to keep in. The other changed tests to handle streams proves the functionality. A large file can be used on the command line to manually test large flow files. Some other cleanup.
Thank you for submitting a contribution to Apache NiFi.
Please provide a short description of the PR here:
Description of PR
Enables X functionality; fixes bug NIFI-YYYY.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically main)?

[x] Is your initial contribution a single, squashed commit? Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not squash or use --force when pushing to allow for clean monitoring of changes.

For code changes:

[x] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[x] Have you written or updated unit tests to verify your changes?
[x] Have you verified that the full build is successful on JDK 8?
[x] Have you verified that the full build is successful on JDK 11?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check GitHub Actions CI for build issues and submit an update to your PR as soon as possible.

This can be tested with the following files:
nifi-toolkit/nifi-toolkit-encrypt-config/src/test/resources/bootstrap.conf
nifi-toolkit/nifi-toolkit-encrypt-config/src/test/resources/nifi_default.properties
and the attached flow.xml.gz file. large-flow.xml.gz
The attached file is 10mb gzipped, and ~1GB unzipped. It has a processor with an encrypted field repeated many times:
enc{2032416987A00D9FCD757528D7AE609D7E793CA5F956641DB53E14CDB9BFCD4037B73AC705CD3F5C1C1BDE18B8D7B281} whose value is "thisIsABadPassword"
The command to run is:
./encrypt-config.sh -n conf/nifi.properties -f conf/large-flow.xml.gz -b conf/bootstrap.conf -x -v -s aNewPassword

Updated PR to remove junk comments and improve readability etc. as per your recommendation.

@exceptionfactory Updated with latest request. Let me know if there's anything else.

@exceptionfactory Updated with latest request. Let me know if there's anything else.

Thanks for making the changes @thenatog.  Looks good!

Thanks for making the changes @thenatog.  Looks good!

Will merge.

Will merge.


Make circuit drawers not crash on Expr nodes

Summary
This at least causes the circuit visualisers to not crash when encountering an Expr node, and instead emit a warning and make a best-effort attempt (except for LaTeX) to output something.  We intend to extend the capabilities of these drawers in the future.

Details and comments
This is not an ideal situation, and I've not written any tests really because there's not really much to test here.  The intent is just to improve the situation beyond a crash to a warning that something's amiss, and display something.  We're hoping to add more complete support later.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

13 of 61 (21.31%)  changed or added relevant lines in 4 files are covered.
9 unchanged lines in 4 files lost coverage.
Overall coverage decreased (-0.02%) to 85.883%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

qiskit/visualization/circuit/latex.py
3
4
75.0%

qiskit/visualization/circuit/text.py
4
19
21.05%

qiskit/visualization/circuit/matplotlib.py
3
35
8.57%

Files with Coverage Reduction
New Missed Lines
%

qiskit/extensions/unitary.py
1
93.75%

qiskit/visualization/circuit/matplotlib.py
2
49.94%

crates/qasm2/src/lex.rs
3
91.14%

qiskit/pulse/library/waveform.py
3
93.75%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
73035

Relevant Lines:
85040

💛  - Coveralls

tbf, if anything, I'd think it's the MPL and text drawers whose warnings might be too noisy, because they still produce sensible (but not necessarily the prettiest) output, so there's still valid cause to use them.  The LaTeX drawer produces technically invalid output, so I think the warning's most appropriate.
I'm not certain what would be better with the warnings, though - I'm not a big fan of a global "show warning if ..." filter since that takes away users' ability to control things, but maybe it's more appropriate here?


debugconfig field missing from /devices/family/../device in PACK.xsd schema

There is a severe mismatch between the Open-CMSIS Pack specification and what's in the PACK.xsd file that is causing packchk to throw a schema error
I note that the following is in the current revision of the Open-CMSIS Pack spec here: https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/main/html/pdsc_family_pg.html#element_device

While in the PACK.xsd schema I see the following:
https://github.com/Open-CMSIS-Pack/Open-CMSIS-Pack-Spec/blob/main/schema/PACK.xsd#L947-L966
The debugconfig field is missing. We are currently getting around this by passing --disable-validation, however it would be preferable to not have this disabled on the build of our device pack.

Interestingly, this seems to be in the DevicePropertiesGroup group, however the following snippet (I have made some redactions of sensitive information) seems to throw an parse error
      <device Dname="">
        <processor Pname="" Dcore="" DcoreVersion="" Dfpu="" Dmpu="" Ddsp="" Dtz="" Dendian="Little-endian" Dclock=""/>
        <processor Pname="" Dcore="" DcoreVersion="" Dfpu="" Dmpu="" Ddsp="" Dtz="" Dendian="Little-endian" Dclock=""/>

        <compile Pname="" Pdefine=""/>
        <compile Pname="" Pdefine=""/>

        <memory name="FlashUser0" access="rw"  start="0x60000000" size="0x00080000" startup="0" default="0"/>
        <memory name="FlashUser1" access="rw"  start="0x60400000" size="0x00080000" startup="0" default="0"/>
        <memory name="SRAM0"      access="rwx" start="0x20000000" size="0x10000" startup="1" default="1"/>
        <memory name="SRAM1"      access="rwx" start="0x20010000" size="0x10000" startup="0" default="1"/>
        <memory name="SRAM2"      access="rwx" start="0x20020000" size="0xE0000" startup="0" default="0"/>

        <!-- Specify the APs for both core0 and core1. This allows a CMSIS DAP to auto-configure the AP per core -->
        <debug Pname="xyz1" __ap="1" svd="svd_file.svd"/>
        <debug Pname="xyz2" __ap="2" svd="svd_file.svd"/>

        <!-- This line is generating a schema error -->
        <debugconfig default="swd" clock="1000000" sdf="sdf_file.sdf"/>

      </device>

Please note that the  in the schema requires to follow the order of <elements>.
<debugconfig> must be listed before any elements of the DefaultDevicePropertiesGroup:
If you change the order as shown below the schema check should pass.
      <device Dname="">
        <processor Pname="" Dcore="Cortex-M33" DcoreVersion="" Dfpu="" Dmpu="" Ddsp="" Dtz="" Dendian="Little-endian" Dclock=""/>
        <processor Pname="" Dcore="" DcoreVersion="" Dfpu="FPU" Dmpu="MPU" Ddsp="DSP" Dtz="" Dendian="Little-endian" Dclock=""/>

        <!-- debugconfig must be before any elements of the DefaultDevicePropertiesGroup -->
        <debugconfig default="swd" clock="1000000" sdf="sdf_file.sdf"/>

        <compile Pname="" Pdefine=""/>
        <compile Pname="" Pdefine=""/>

        <memory name="FlashUser0" access="rw"  start="0x60000000" size="0x00080000" startup="0" default="0"/>
        <memory name="FlashUser1" access="rw"  start="0x60400000" size="0x00080000" startup="0" default="0"/>

        <!-- Specify the APs for both core0 and core1. This allows a CMSIS DAP to auto-configure the AP per core -->
        <debug Pname="xyz1" __ap="1" svd="svd_file.svd"/>
        <debug Pname="xyz2" __ap="2" svd="svd_file.svd"/>

      </device>

@jkrech Thanks, that seems to have done it. Please excuse my misreading of the schema.


handle command interrupt

This PR makes idpbuilder handle interrupts correctly. Currently, idpbuilder doesn't handle signals well. For example, if you send ctrl+c while it's executing, it prints out a message saying Finished Creating IDP Successfully!. With this PR, it correctly says that the command execution was interrupted. It still prints command usages at the end but we can address that in another PR.

Should we also add SIGINT to tell to the program to print interrupt and then exit ?
See: https://gobyexample.com/signals

My understanding is os.Interrupt is essentially SIGINT because that's one of the few signals guaranteed to be available on all systems. So we should be good here.


Add Authorizer Support

Problem
If we're switching to use this extension, it needs the authorizer support added in https://github.com/jupyter-server/jupyter_server/pull/165

Proposed Solution
Add the auth handling here as well.

Fixed in https://github.com/jupyter-server/jupyter_server_terminals/pull/11


Switch from event-based CircleCI deployment to frequent scheduled task

Docs are driven by external repositories, so we need this one to operate on a schedule instead of based on events.

Neat.

See also original issue: #54


feat: add support for reserved instances #148

/terratest

@kevcube see my review comment for how to fix bats tests

@Gowiem I see no review comment 👀

@kevcube

oh duh. ok thanks, fixed.

/terrateset

/terratest

/terratest


HUB-667 Fixed missing journey_type being passed to event system

Fixed missing journey_type and also fixed the tests which broke as a result.
JIRA Ticket: https://govukverify.atlassian.net/browse/HUB-667

What happened to removing those methods that we worked out were unused?
Also: I'm not clear why we would need to set this in more than one place.
Also: as there's now a constant, can we use it instead of the raw string?

@galund it actually is, just placed in a before(:each) see https://github.com/alphagov/verify-frontend/blob/master/spec/features/user_visits_continue_to_your_idp_page_spec.rb#L27


CMS fails to load due to a bug in react-aria-menubutton

Describe the bug
CMS fails to load due to a bug in https://github.com/davidtheclark/react-aria-menubutton/
I havent seen this reported yet and im not sure how this isnt then a problem for more people because from the looks of it, it should be critical bug for all users that use netlify-cms ever since react-aria-menubutton changed their code.
The error itself is:

ManagerContext.js:5 Uncaught TypeError: createReactContext is not a function
    at Object../node_modules/react-aria-menubutton/dist/ManagerContext.js (ManagerContext.js:5)
    at __webpack_require__ (bootstrap:725)
    at fn (bootstrap:100)
    at Object../node_modules/react-aria-menubutton/dist/Wrapper.js (Wrapper.js:12)
    at __webpack_require__ (bootstrap:725)
    at fn (bootstrap:100)
    at Object../node_modules/react-aria-menubutton/dist/index.js (index.js:6)
    at __webpack_require__ (bootstrap:725)
    at fn (bootstrap:100)
    at Object../node_modules/netlify-cms-ui-default/dist/esm/Dropdown.js (Dropdown.js:22)

Its happening because in their transpiled code inside ManagerContext.js
node_modules/react-aria-menubutton/dist/ManagerContext.js
is doing:
var createReactContext = require('create-react-context');

var AriaMenuButtonManagerContext = createReactContext();

instead of:
var createReactContext = require('create-react-context').default;

If I change the code in my node_modules folder to the latter, everything goes back to work. But obviously this isnt a solution as i can only do it locally. I publish my site through netlify and there I have the bug which means users cannot update or create content anymore.
The netlify-cms package that's using this dep is: netlify-cms-ui-default
I realize this is a bug in the 3rd party library but i havent seen anyone reporting this issue on their GH repo (Ive opened a bug there as well)
In any case, the issue is that its completely broken my use of netlify-cms so Im hoping to find a solution here rather than hope they fix it on their end.
To Reproduce
see versions of dependencies below. As far as i know, there's nothing special about my setup that causes this problem...
Screenshots

Applicable Versions:

Netlify CMS version: 2.12.7
netlify-cms-ui-default: 2.9.5

Additional context
bug opened on react-aria-menubutton:  https://github.com/davidtheclark/react-aria-menubutton/issues/127

Hi @yoavniran, I've seen this recently when someone was trying to create a custom widget based on the number widget and got hit with this error when trying to use the preview component (the solution was to remove the import for the preview component). Can you elaborate on how you're using the CMS as a dependency? Possibly share an example repo?

thanks for the quick reply @erezrokah I will have a look and see if i can disable stuff and if that will have an effect.
however, if you look at the stracktrace:
ManagerContext.js:5 Uncaught TypeError: createReactContext is not a function
    at Object../node_modules/react-aria-menubutton/dist/ManagerContext.js (ManagerContext.js:5)
    at __webpack_require__ (bootstrap:725)
    at fn (bootstrap:100)
    at Object../node_modules/react-aria-menubutton/dist/Wrapper.js (Wrapper.js:12)
    at __webpack_require__ (bootstrap:725)
    at fn (bootstrap:100)
    at Object../node_modules/react-aria-menubutton/dist/index.js (index.js:6)
    at __webpack_require__ (bootstrap:725)
    at fn (bootstrap:100)
    at Object../node_modules/netlify-cms-ui-default/dist/esm/Dropdown.js (Dropdown.js:22)

the error is coming from: netlify-cms-ui-default/dist/esm/Dropdown.js (Dropdown.js:22)
so it doesnt look like it has to do with any customization of mine.
Its a little hard to share my configuration because my site is in a private repo and im using javascript to generate the CMS config (YAML is a disaster, to put it mildly, so I refuse to use it when possible)
I am using a Youtube Editor component based on the example shown in the docs.
I also have a couple of custom widgets I created (RTLMarkdownWidget & PostIdWidget). I will see if something changes when I disable these.
thanks

hey @erezrokah
I removed all of my custom configuration (all collections and widgets) but still the error persists.
As I mentioned before, the stacktrace shows that its coming from internal netlify-cms code.
Im still puzzled how this isnt a more general issue for all users and how it wasnt reported by more people.
Not sure what im missing here.
From the  bug i opened for react-aria-menubutton I got a response that soon they will release a major version without create-react-context which will fix the problem.
Unfortunately, until that happens and you guys upgrade the dep, Im stuck without a working CMS. I guess I'll try to downgrade until I find a working version in the meantime.

I think it will only show up if you bundle the CMS in a specific way that triggers the import. For example our demo site https://cms-demo.netlify.com/#/collections/posts uses the CMS from CDN and doesn't have that issue.

well... ive installed it through npm... Isnt that the normal way? Is there a preferable way to consume netlify-cms?
in any case, the error happens whether i build in dev or in prod...

If you could share a reproduction repo it might help. You could either use the CMS from CDN or install from npm via netlify-cms-app. The latter is the preferred way since it is easier to register custom code.

cool. ill try and make time to create a public repo to reproduce. thanks

this is breaking my site, without doing any changes on libraries just on rebuilding this issue was introduced

Hi @lookea, any chance you can setup a reproduction repo? I saw this issue when using trying to extend an existing CMS widget. Can you share your use case?

Hi I have workaround this issue modifying my widgets they were importing
import { ObjectWidgetTopBar, lengths } from 'netlify-cms-ui-default';
I hope the issue get fixed in the next release of that library

thanks @lookea. unfortunately, i don have an reference to the netlify-cms-ui-default lib but still have this problem...

I've made a little progress in diagnosing the problem -
What I noticed is that create-react-context is being overriden by Gatsby's cache.
So its not the actual dependency (from node_modules/create-react-context) but a ES version that only exposes React's createContext method.
.cache/create-react-context.js
import React from "react"

export default React.createContext

This explains why the require from react-aria-menubutton is breaking.
I dont know where this is coming from and if its possible to stop Gatsby from doing so. A google search I did didn't find anything useful. I will open an issue for them as well

opened bug at Gatsby repo: https://github.com/gatsbyjs/gatsby/issues/23645

Closing as fixed


Maintenance status

Hi, is this still maintained?
We’d be interested to include something like it into scanpy.
In case you’re no longer interested in maintenance, maybe we could transfer this project to scverse and take over, publish it to PyPI, …

Hi @flying-sheep ! Thanks for getting in contact about this.
It's not currently maintained, no. On the other hand I did start doing the work to try and polish this a bit more. I would therefore like to make a counter-proposal.
My original intention before getting distracted by other work was to include this scikit-learn-contrib. So, what if I try to go ahead with transferring it there? I would then be happy to add you onto the relevant scikit-learn-contrib team. Would this work? From my perspective it could be better to keep this in an org with a general emphasis if possible.

That sounds like a great idea! What would be needed to transfer it there?

Hi! So I am a bit time poor at the moment -- I'm unplugging for a couple of weeks starting tomorrow. It looks like one of the requirements is to setup CI. I tried this but https://github.com/frankier/sklearn-ann/actions/runs/5412841941 .-- unfortunately FAISS has changed its interface. I will fix this and open an issue to move to sklearn contrib when I get back. I understand this might not fit your own timetable, but maybe we can still make it work? Let me know either way.

I recognise your handle, so I have added you if you want to fix up the CI to expedite things, I think I can open the issue on sklearn contrib before the 12th, otherwise I will fix ci and do it then. Phone only atm

Don’t worry, enjoy your away time!

OK, decisions. I like do do things the following way, in increasing order of opinion

Ruff instead of flake8 for faster style checks and fixes
pre-commit for formatting and style checks (no black or ruff in our dependencies, auto-update PRs from pre-commit.ci, and one can quickly see if a PR failure is tests or style because there’s two checks instead of one)
Hatch instead of poetry for PEP 621 support (standardized pyproject.toml layout instead of poetry specific)
tests outside of the source directory and package in src directory, as recommended by Pytest
Squash & merge as only merge option on GitHub, branch protection

So yeah, I think Ruff is just a straight upgrade

All sounds fine to me!

Great! Since I’m no admin, I can’t turn on pre-commit.ci integration, or “Squash & Merge”, …
Seems like the “don’t commit directly to the main branch” hook fails when run in GH actions. It should also work on pre-commit.ci:

Hi! I hope your time unplugging was nice! Do you think we can proceed with this?

Just putting the hatch PR together now. Hold on a moment.

I've tried to get the ball rolling over at https://github.com/scikit-learn-contrib/scikit-learn-contrib/issues/64
I think there might be some stuff to tighten up, but maybe now we can see how receptive the scikit-learn-contrib org is an what they think is most important to target.

Looks like no response. Would it be useful to upload this package to pypi (under its current name) in the interim?

Maybe we can get in touch with them some other way. It says it’s maintained by one person, @egy1st, who seems to be active on GitHub, but hasn’t merged anything into that repo in 9 months.
@egy1st, is it possible that you ask the scientific python community for some help with reviewing things and getting them in?

@flying-sheep @frankier
When you mentioned receiving a message that the repo is maintained by @egy1st, I needed clarification because I am not a member of the scikit-learn-contrib community. I have contributed an algorithm called denmune to their repo at https://github.com/scikit-learn-contrib/denmune-clustering-algorithm. I am just a contributor, a maintainer but not an admin/member. Since I didn't receive any private messages as egy1st, what message were you referring to, and when you received it? I don't have any inside information beyond the public GitHub thread you shared, so I'm unsure what additional messages you mentioned."

Hmm, maybe I read the wrong readme then, sorry. I now see that you’re simply the maintainer of the last package that got added. Sorry about the ping!
@frankier the people who are actually part of that org are here: https://github.com/orgs/scikit-learn-contrib/people maybe we can get in tough

@adrinjalali Ping! Any info on what the next steps are to get this package added?


Generic version of lambd-edge with other IDP

https://github.com/aws-samples/cloudfront-authorization-at-edge/tree/master/src/lambda-edge
Do you have a version or plans to maintain a generic version of lambda-edge auth which can work with other Identity Providers like
Azure AD, Azure B2C,  auth0 ..

Hi @alexantom,
No direct integration at this point in time, BUT, you can federate the Cognito User Pool to those IDP's and thus make the solution work with them using Cognito as "middleware".
Makes sense?

Cognito federation is the way to go, @alexantom

Has anyone tried this solution after adding a Federated Identity provider to the User Pool?
I've done this and I think the solution needs a new feature to make this functional.
I tested it with Google. I'm able to sign in (and sign up) with Google and gain access to the 'private' demo app.  The problem is that any google user can also sign in and access the 'private' demo app. So without changes, this approach essentially makes the demo app public since anyone can get a google account.
The users associated with the IdP are given the status EXTERNAL_PROVIDER.  They are also added to an autogenerated user pool group. Cognito issues tokens for them just like a user that is added by an admin so the Lambda functions treat these users as valid.
So what seems to be needed is way for the lambdas to look for some characteristic of users, so an admin can approve an external provider user before they can access the private site.
I'm planning to try supporting this by adding a new configuration parameter to the solution: "required group".  Then the lambda can check the access token provided by cognito to see if this group is present. If the group isn't present hopefully lambda can show an error message telling the user they need to be contact an admin.
Perhaps there is a better way to do this?

Yes, if federating with social IDP's where users can sign-up themselves, you need extra controls to manage user access.
Your suggestion to use Cognito groups could work and makes sense––I'd go for that.

hopefully the lambda can show an error message telling the user they need to be contact an admin.

You can code that, e.g.:

Redirect to a static HTML page, that sits behind an unprotected public CloudFront behavior. (e.g. /signupmessage)
Or, use the createErrorHtml function to directly create a message "contaxt X to signup", similar to how messages are shown to users here.


Show other nearby hotspots on the map

resolves #271
open questions:

are we ok with the zoomed out style of network hotspots? should there be a different style lower zoom levels?
should we exclude offline hotspots at the server level? would reduce the number of items on the map and more accurately represent nearby coverage
is the zoom/fly effect when toggling witnesses too intense? there's the possibility it disrupts the user's flow when exploring around
we also need to see how the server stands up to these requests under load, tbd

are we ok with the zoomed out style of network hotspots? should there be a different style lower zoom levels?

this looks fine in the video. happy with it.

should we exclude offline hotspots at the server level? would reduce the number of items on the map and more accurately represent nearby coverage

maybe we can color them differently? too many queries? want to stay consistent with explorer that will use red for offline hotspots.

is the zoom/fly effect when toggling witnesses too intense? there's the possibility it disrupts the user's flow when exploring around

hm, I haven't noticed this to be an issue and my hotspots have far-away witnesses. maybe we can optimize later

we also need to see how the server stands up to these requests under load, tbd

ok

I think we should remove either the settings all together for the network hotspots or at least remove the transfer hotspot option when you go to settings.

Comment out the settings cuz we’ll use it later for favorite a hotspot

From: Tyler Whitman<EMAIL_ADDRESS>Sent: Wednesday, February 24, 2021 12:13:20 PM
To: helium/hotspot-app<EMAIL_ADDRESS>Cc: Coco Tang<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [helium/hotspot-app] Show other nearby hotspots on the map (#277)
I think we should remove either the settings all together for the network hotspots or at least remove the transfer hotspot option when you go to settings.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/helium/hotspot-app/pull/277#issuecomment-785344027, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AETPRSR56XZGH2QST6VDJNLTAVMWBANCNFSM4YBT34BA.


Add CSV Support

Per issue #18 discussion, once the current pull requests stuff is thoroughly done I want to add CSV support, but I'm not sure what the most pythonic way to do it is.

Could you describe a little more what you're looking for with csv support?

Is this solved by using regex delimiters?

Yes, please close and make sure the update from the last PR was pushed to
pypi
On Aug 31, 2017 4:18 PM, "Fabian von Feilitzsch"<EMAIL_ADDRESS>wrote:

Is this solved by using regex delimiters?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/fabianvf/python-rake/issues/21#issuecomment-326409134,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AShd7FXPFPcxxckgIsR2CIpp082QP5K1ks5sdxUXgaJpZM4OkrAJ
.

Fixed by #22, released in 1.3.0


[SR-10374] URLCache: init method and first time sqlite database setup implemented

init method implemented
URLCache.shared singleton object created with 4MB of memory space and 20MB of disk space
Directory and database file Cache.db file created under the local directory
Sqlite Tables and Indices created in the database
Unit tests added for URLCache to verify directory, file, tables, and indices

Bug Link: https://bugs.swift.org/browse/SR-10374

@karthikkeyan Apologies for the very late response on this PR. I think implementations of URLCache and URLCredentialStorage have been long pending and this looks like a great start! However, I've a few questions about this pull request:

Is SQLite available on Linux and Windows? I guess not.
Have we considered other storage alternatives?
I came across this old discussion on URLCache . You might find it relevant.

@karthikkeyan Apologies for the very late response on this PR. I think implementations of URLCache and URLCredentialStorage have been long pending and this looks like a great start! However, I've a few questions about this pull request:

Is SQLite available on Linux and Windows? I guess not.
Have we considered other storage alternatives?
I came across this old discussion on URLCache . You might find it relevant.

I have failed to give a fair bit of a thought process about the Linux platform. Thanks for reminding of it, I will follow the discussion and see how best we can move this PR forward.

@pushkarnk I have reimplemented store and retrieve logic using NSKeyedArchiver and NSKeyedUnarchiver. This implementation is not perfect but I think it would be a good start.

@swift-ci test

Full disclosure: I didn’t know about this PR, and I started working on my own URLCache (that's the reason for #2245). I have some parts that are present in this version (with some differences), but I focused in the memory cache first. I have ideas for the disk cache, but that's more complicated. I can also have a lot more feedback about things I know that will need to be handle (for example skipping some protocols from being cached). Are you still planning in working on this?

@drodriguez  Sorry for the delay response, yes I will be working on this PR. I was just waiting for someone to review this. Please give me your suggestions.

I want to shepherd this patch into the repository. Do you need help with changes here?

I want to shepherd this patch into the repository. Do you need help with changes here?

@millenomi I am addressing all the comments added by you and Danial. I will let you know if I need any help. Thanks Lily.

@millenomi @drodriguez I have addressed all the comments. I still have some doubts about the implementation of the property cacheFileIdentifier, please let me know if there is any changes needed.

@swift-ci please test

I'm going to commandeer this patch; I may drop the SQLite dependency, though.

I'm going to commandeer this patch; I may drop the SQLite dependency, though.

@millenomi  I have pushed one more commit addressing the comments related to secure archiving. Also, I have updated the hashing mechanism for generating cacheFileIdentifier.
The one thing I am struggling though is to write a unit test for the internal property cacheFileIdentifier

Closing this PR as URLCache is implemented in this PR https://github.com/apple/swift-corelibs-foundation/pull/2401


[runtime][hip][cuda] Fix semaphore multi-wait, action GPU events and cleanup

Fix a bug where we may miss a signal when waiting on multiple semaphores. Improve code reusability by increasing code sharing in multi-wait and single-wait.

Fix destruction in error path to not leak actions.

Fix acquisition of action GPU events from semaphore timepoints. The switch to using iree_hal_*_event_t instead of HIP/CUDA events directly, introduced by 459fab66b0c59389b88c7bb8a8bfe81492581d9b, caused mishandling of timepoint events.
This may cause erroneous removal of action wait events and leaking them.

Add a mutex-protected counter in the work area that keeps track of all pending host stream callbacks.
We need to make sure that all work is done before exiting the worker and then tear down the execution context.

These are a few fixes here that I can try to disentangle if it is too hard to follow.
The CI tests may fail then.

I am not sure if we want this by default when TSan is enabled since there is a problem in some HAL backend.

@antiagainst, could you review again?

Thank you for the review. I rebased and mirrored the change to the CUDA driver.

Rebased to get the fix from ea7d01e4279bab94e1fdb5b0ade9a82f20b6c32d.


Project SCC Global queue

Hi everyone, i'm currently failing test case 9_11:

Think it's most likely a problem with my global queue updating for self checks, here's the code i'm using to update each server in the serverlist for Arrive, Wait and Serve events... Not sure what i'm missing

Thanks!

Hi, can I check what does getSelfCheckQ() do?

Hi, can I check what does getSelfCheckQ() do?
hi, it's supposed to check if that server is the one holding the global queue for all self checks. But i'm not sure if that's the way i'm supposed to be coding it either

Hmmm, not really sure how to make your global queue implementation work but you can consider all SCCs having the same exact queue as each other and each time a customer joins or leaves a SCC queue, you loop through all the SCC queues to update all of them

Hmmm, not really sure how to make your global queue implementation work but you can consider all SCCs having the same exact queue as each other and each time a customer joins or leaves a SCC queue, you loop through all the SCC queues to update all of them

Hmm okay, i'll try it and update the issue if it works. thanks!

Agreed with nicklass8 !

Hi, can I check what does getSelfCheckQ() do?
hi, it's supposed to check if that server is the one holding the global queue for all self checks. But i'm not sure if that's the way i'm supposed to be coding it either

your way of doing this should work, but again it depends on which you think is easier to change to. As for your issue, you second for loop updates your own server with the extracted queue, but does not update the global queue anywhere, you still need an extra method to update that global queue and then pass that global queue back into the server containing that global queue.

Again up to you which way you want to commit to, but make sure every queue is updated accurately no matter how many versions you store/where you store it

You can also consider creating another class that extends Servers as a manager of the queue. The list of servers will contain human servers and a Manager server (which stores a list of SCC). Doing it this way will only require you to update the SCC queue once, which I think is easier for queue management

Hi I had the same issue as yours. You should check your visible Wait event to see if in that Event, you are passing the right timing to the next hidden Wait Event (the earliest amongst SelfChecks, and not the available timing of that one SelfCheck).
I suggest you could also create your own test case of a lot of customers queuing at self check out to see whether the queue is processed correctly.

resolved with global queue, thanks all :) I looped through all the servers after making to changes to the queue and updated the SCCs