Support file composition for WinGet Configure

Description of the new feature / enhancement
I'd like to be able to reference one file from another to use with winget configure.   When WinGet's configure command processes a file with one or more references, it applies the union of all configurations described.
This would become even more powerful with #3554
This would support the following scenarios and possibly more:

I want to break up my files for readability.  For example, I have nodejs and several web tools in one file for the frontend, and the dotnet sdk and tools in another. This makes finding specific resources easier.
I have a project based on a different project with additional requirements.  For example, I have a project that uses electron - I can reference the electron project DSC and then add my additional requirements to my own repository without having to duplicate and maintain the base file.  When the electron project changes its requirements, my configuration does not need to be updated.
I have a multi-repository project and want to compartmentalize the configuration files but use a common core that can be updated independently.
I can share configurations with people for specific scenarios and they can compose those into full machine setups (DevBox) or project setups without having to do partial compares if I publish changes.  For example, I provide a config that will set up OhMyPosh and some related tools for great kubernetes visibility.  Another person can download that and reference it rather than

Proposed technical implementation details
No response

I may already be able to implement this somewhat in a hacky way with a script resource that calls winget configure, and has test always return false.  There's a few downsides with that - initial display of configurations to apply is not accurate, output is odd, and perf problems along with the fact that it's not actually able to determine if the config is applied as described.  It's sort of an imperative hack inside my DSC.
Given that, I can see two "obvious" mechanisms:
The first would be to have a special resource type and simply use the current config schema.  There would need to be special handling for it to cure the  problems listed above with the hack approach.  It would really need to merge the file contents before actually processing the resources.  This magic resource type being handled differently could be confusing, especially for anyone trying to implement a third-party parser/editor.  An upside there would be that id: xxx and dependsOn: xxx could continue to work as is.
The second would be to have a separate section (like imports) alongside resources and assertions.  This would make it clear that there is special handling to roll the files together and would remove the confusion of there being a type of magic resource that is handled in a completely different way, at the cost of slightly higher schema complexity.  I do prefer this approch though, as it makes the semantic differences clear and surfaces clearly that there is more to this configuration than a single file.  It would also better lend itself to an option like --allowImports or --noImports, for example.
For id/dependencies: I don't see a lot of value in hoisting ids so that dependsOn can work across files.  That would break composability and add complexity to handle id collisions via namespacing or mangling.  I think a simple test to require the included file was configured would be enough

@PhilipRieck thanks for submitting this Issue!
We're looking at several different scenarios where multiple configuration files represent the single "logical" configuration we want to apply. Part of the challenge is the visibility into the actual configuration. We are looking at the proposed powershell/DSC v3 implementation and some of that work is in progress.
It was an intentional decision to initially limit our current use case to a single configuration file (on the local file system) while we iterate on the designs to support these more sophisticated scenarios.
The best case scenario in my mind is some kind of mechanism to support what you want and it includes the ability to present a single merged view of everything to be configured. I don't want someone to run a configuration thinking it's only a few things they need to evaluate and then find out after the fact that any number of arbitrary configurations are also applied.
This is certainly a "high-order" problem on the WinGet side rather than just on the PowerShell DSC side, but I want to keep scenarios like this visible.
Mentioning @SteveL-MSFT for visibility.


check for ActiveRecord presence before configuring logging

i get an NameError: uninitialized constant Sinatra::Logger::ActiveRecord when I try and use this with my sinatra app that doesn't use AR, so this checks for the class' existence first.

@substars Merged & release on RubyGems (v0.3.1). Thank you for your contribution! 👍


Add resource groups extension to recommended for workspace

Already did it in most repos yesterday, just not the first two.

Does it need to be recommended if it's a dependency though?

When we F5 as devs, yes. For our customers, this has no effect


Measure performance and scalability of OSM control plane

This issue is to measure the performance and scalability of OSM control plane.
We need to document the measurements and then recommend improvements.
As part of this issue we need to:

[x] create a benchmarking tool / framework:  https://github.com/openservicemesh/osm/issues/1916
[x] document the findings of the tool and publish in the OSM repo
[x] define test scenarios and benchmarking metrics to collect from these scenarios (for example how many services, how many pods OSM etc. / CPU, RAM etc.)

@eduser25 I hear that you have already ran tests for this. Would you be able to document your methods and discoveries so far?

Let's make sure this also includes recommendations for resource specifications (limits and requests) based on the number of pods and policies.

Doc available: https://github.com/openservicemesh/osm/blob/main/docs/content/docs/scale.md


fix: add hostname check to decide http mode in windows

Description
Unlike Linux and Darwin, Windows doesn't allow wails:// protocol without having NSIS installer. So wails uses http://wails.localhost in Windows. This leads to the HTTP backup endpoint being requested in Windows which results in 405 Method Not Allowed

good debugging.
how is the HTTP endpoint being requested? what URL is exposed there?


Separate workflow analysis and pack actions from each other.

Should be separated to enable workflow analysis on separate steps in workflows such as static code checks before generating a release

Workflow analysis action created in repository: https://github.com/Mikael-RnD/UiPath-Analyze


Upgrade/update to ES6

Hi @kaimallea I'm using this lib, it's awesome.
Is there any plan to rewrite it using ES6 features, and then browserify to generate an dist file?
[]s

Yes, I want to do this. No ETA, though.

#77 modernized the tests, dependencies and build step. However, using ES6 in the source file and then bundling with browserify or webpack will introduce overhead that doubles the size of the generated file for browsers. :disappointed:


[Question] Change in cellpix id when reloaded

I'm currently updating my add-on functions (originally built on v2.3.2) to be compatible with the latest version of Cellpose (v3.0.10 release) [https://github.com/MouseLand/cellpose/releases/tag/v3.0.10].
While reviewing the major differences, I noticed that in the latest version, the original cellpix IDs are changed when loading a previous seg.npy file.
In v2.3.2, when loading the seg.npy file, the data is loaded directly from the file: https://github.com/MouseLand/cellpose/blob/28ddc24fa36f57b20932b842f4210e0caa3ea4e5/cellpose/gui/io.py#L309-L311
However, in the new version, the masks_to_gui function is called instead, which alters the cellpix IDs due to the fastremap.renumber function: https://github.com/MouseLand/cellpose/blob/9a0d61f6381308400cafd3b2088d13bbfc497ae6/cellpose/gui/io.py#L382
I haven’t delved deeply into that function, but it seems like the cellpix IDs are remapped top-to-bottom and right-to-left. This could mean that if another mask is added in the top corner of the FOV, the IDs and corresponding colors of all masks would change.
I’m wondering if this is intended behavior.

thanks for noticing this yes here: https://github.com/MouseLand/cellpose/blob/9a0d61f6381308400cafd3b2088d13bbfc497ae6/cellpose/gui/io.py#L481
I will turn this off unless there are missing mask ids - then we have to renumber


is the website just down?

:(

Yes unfortunately:( , but we are working on a replacement of it and we will love keep you up-to-date when we have that finished!


[PE-D][Tester D] Edit command does not work

Not sure if the team wrote the UG wrongly but in the UG, in order to edit Gender, the team state an example to edit 1 g/F. But I did that and the output is Unknown Command

[UG]

[App]

Labels: severity.Medium type.DocumentationBug
original: shaniceng/ped#1

Duplicate issue as #166


WiX: package libcxxstdlibshim.h on Windows

This file was not being packaged into the installer, which gives us an incomplete module.
Fixes: apple/swift#67462

Tested: https://ci-external.swift.org/job/swift-PR-build-toolchain-windows/728/


UmbracoDictionary processor - added factory

Following a discussion with @mattbrailsford earlier, (yup same chat that sparked PR #161), we agreed that using a ProcessorContext to abstract Umbraco logic wasn't the correct approach.
However the reason I used it was so I could unit-test the UmbracoDictionary processor.
Matt suggested that I try using a factory pattern to set the dictionary retrieval method. So this PR is my attempt.
Currently I've placed all the internal classes within the "UmbracoDictionaryAttribute.cs", I'm not 100% happy with this, but I wasn't sure where else to put them? (I'm open to suggestions)

Hope you don't mind, but after giving this some more thought, I don't think the factory pattern is the right solution either, as a factory generally creates multiple types on demand, where as we were creating one type, and storing it for retrieval at any point, which isn't a true factory.
After searching around I found a nice solution here https://lostechies.com/jimmybogard/2008/11/09/systemtime-versus-isystemclock-dependencies-revisited/ where they use a replaceable delegate to fetch a value, but they allow the fetching logic to be replaced so that it can be easily unit tested.
I've updated the code accordingly and I think it makes it a bit cleaner. Wadda you think?

@mattbrailsford Ace, I like it!

Looks good. Will need more time to get my head around everything still though.


s_client gets fried by ENGINE_by_id("openssl") in linked library

Since I'm clueless otherwise, I was wondering if this was an upstream issue ?
using openssl s_client a user of the tpm2-tss engine gets errors related to ENGINE_by_id attempting to load openssl.so ? https://github.com/tpm2-software/tpm2-tss-engine/issues/93
Which I could also reproduce with "OpenSSL 1.1.0j  20 Nov 2018"
My code does not include any call to ENGINE_by_id at all.
Is that issue known ?
Note that s_client continues nicely afterwards and performs the TLS connection correctly.
139897488847296:error:25066067:DSO support routines:dlfcn_load:could not load the shared library:crypto/dso/dso_dlfcn.c:113:filename(~/tpm2-tss-engine/.libs/openssl.so): ~/tpm2-tss-engine/.libs/openssl.so: cannot open shared object file: No such file or directory
139897488847296:error:25070067:DSO support routines:DSO_load:could not load the shared library:crypto/dso/dso_lib.c:161:
139897488847296:error:260B6084:engine routines:dynamic_load:dso not found:crypto/engine/eng_dyn.c:414:
139897488847296:error:2606A074:engine routines:ENGINE_by_id:no such engine:crypto/engine/eng_list.c:339:id=openssl
139897488847296:error:25066067:DSO support routines:dlfcn_load:could not load the shared library:crypto/dso/dso_dlfcn.c:113:filename(~/tpm2-tss-engine/.libs/openssl.so): ~/tpm2-tss-engine/.libs/openssl.so: cannot open shared object file: No such file or directory
139897488847296:error:25070067:DSO support routines:DSO_load:could not load the shared library:crypto/dso/dso_lib.c:161:
139897488847296:error:260B6084:engine routines:dynamic_load:dso not found:crypto/engine/eng_dyn.c:414:
139897488847296:error:2606A074:engine routines:ENGINE_by_id:no such engine:crypto/engine/eng_list.c:339:id=openssl

It's the ~. The shell is supposed to expand that into a proper path

Yes, sorry. The ~ was added by me for reasons of anonymization... Should've known... :-(
My question is basically, what is the engine "openssl.so" and why is it search for. I could not find any reference anywhere...

Hmmm, there is such a thing, but it's a test engine that should not end up in production or be loaded automatically.
Have you looked in the default configuration file (i.e openssl.cnf)?

$ echo $OPENSSL_CONF
/home/afuchs/Dokumente/oss-tss/INSTALLDIR/usr/bin/../../usr/openssl/openssl.cnf

which is attached (added .txt for github)
openssl.cnf.txt

Ok...  I tried the first s_client command I saw in  tpm2-software/tpm2-tss-engine#93, and here's what I got:
: ; openssl s_client -connect somewebsite.com:443 -cert rsa.crt -key rsa.tss -CAfile CA.pem -engine tpm2tss -keyform engine
invalid engine "tpm2tss"
140179301053504:error:25066067:DSO support routines:dlfcn_load:could not load the shared library:../crypto/dso/dso_dlfcn.c:119:filename(/usr/lib/x86_64-linux-gnu/engines-1.1/tpm2tss.so): /usr/lib/x86_64-linux-gnu/engines-1.1/tpm2tss.so: cannot open shared object file: No such file or directory
140179301053504:error:25070067:DSO support routines:DSO_load:could not load the shared library:../crypto/dso/dso_lib.c:162:
140179301053504:error:260B6084:engine routines:dynamic_load:dso not found:../crypto/engine/eng_dyn.c:414:
140179301053504:error:2606A074:engine routines:ENGINE_by_id:no such engine:../crypto/engine/eng_list.c:334:id=tpm2tss
140179301053504:error:25066067:DSO support routines:dlfcn_load:could not load the shared library:../crypto/dso/dso_dlfcn.c:119:filename(libtpm2tss.so): libtpm2tss.so: cannot open shared object file: No such file or directory
140179301053504:error:25070067:DSO support routines:DSO_load:could not load the shared library:../crypto/dso/dso_lib.c:162:
140179301053504:error:260B6084:engine routines:dynamic_load:dso not found:../crypto/engine/eng_dyn.c:414:
no engine specified
unable to load client certificate private key file

It's the exact same kind of output, but make more sense

I think someone will have to run a debug session to see the call stack each time ENGINE_by_id is called.  Would you mind?

Ok, I found it... It's actually in
https://github.com/tpm2-software/tpm2-tss/blob/1d57398857b6302acbec7a601b49cb46745a827e/src/tss2-esys/esys_crypto_ossl.c#L33
Funny enough, never shows up in the integration tests of tpm2-tss...
Thanks a lot the help.
Sorry for the confusion.

@levitte Maybe one last question, if I may:
How do you ask OpenSSL for an engine that comes from software ?
I guess, the offending code was relying on
https://github.com/openssl/openssl/blob/52eb5b7ca46a1bf0bb0e148c651eb7dcaae1a074/crypto/engine/eng_openssl.c#L77
What should be used here instead, if we want to force a software implementation of ciphers ?
https://github.com/tpm2-software/tpm2-tss/blob/1d57398857b6302acbec7a601b49cb46745a827e/src/tss2-esys/esys_crypto_ossl.c#L33

Sorry for the confusion.

No problem.
I'm not sure what you mean with forcing a software implementation of ciphers. If you're calling things like EVP_ functions, you've linked with libcrypto, which contains all the OpenSSL software implementations.  The way I see it, all the get_engine() calls there can be replaced with NULL...  or that's at least what it looks to me after just a quick look.

@levitte One more question: What happens, if the default OpenSSL engine is set to tpm2tss ?
i.e. openssl -> tpm2-tss-engine -> tpm2-tss -> openssl -> tpm2-tss-engine, ...
I assume the ENGINE_by_id was added to prevent these kind of cycle invocations.
Could this happen or does NULL enforce the software-implementation or how should we do this ?
Thanks a lot for the help !

Also, now that I think about it: If ENGINE_by_id("openssl") errors, it will return NULL. So apparently tpm2-tss will have used NULL all along.
However, changing it to NULL without calling ENGINE_by_id, the bug in the tpm2-tss-engine's s_client test suddenly disappears.
Seems like a failure in ENGINE_by_id is not side-effect free wrt s_client ?

I'm reopening this, since IMHO the side-effect of ENGINE_by_id from a linked library into the s_client app is not only weird but probably broken ?

I'm not sure I understand the issue... What are you trying to do?

So openssl s_client behaves differently when used with -engine tpm2tss from without. The difference is that with tpm2tss it exits after successful session establishment opposed to remaining.
When I exchange ENGINE_by_id("openssl") which returns NULL with a plain NULL inside the tpm2-tss library, then openssl s_client -engine tpm2tss behaves the same as without the engine.
Thus, the failing call to ENGINE_by_id("openssl") does have some side-effect (not along the call path since it returns NULL) that makes s_client exit after successful connection establishment.
P.S. s_server works just fine under the same circumstances though...

Just to make clear what this means in praxis:
This test https://github.com/tpm2-software/tpm2-tss-engine/blob/master/test/sclient.sh only works if this commit https://github.com/tpm2-software/tpm2-tss/commit/4bd982186d5d408f92e329660d85f8c0649cb6f8 was applied.

Is this problem still occuring on the 3.3 release?

marking as inactive, for lack of response, to be closed at the end of 3.4 dev


Load different form state in modal based on session

Hello,
I am trying to load form inside a modal based on session variable, but once the modal is shown with corresponding form I am not able to navigate between each other any more. i.e. when I open signIn state I can't click on Register link inside modal and vice versa.
<template name="login">

            {{> atForm state=state}}

</template>

Template.login.helpers
  state: ->
    return Session.get 'templateState' or 'signUp'

Template.navbar.events
  'click .sign-in': (e, t) ->
    Session.set 'templateState', 'signIn'
    Modal.show 'login'
  'click .sign-up': (e, t) ->
    Session.set 'templateState', 'signUp'
    Modal.show 'login'

Any suggestions?

I'd say the rigth way to do it is by using AccountsTemplates.setState inside your event handlers rather than {{> atForm state=state}}.
<template name="login">

            {{> atForm}}

</template>

Template.navbar.events
  'click .sign-in': (e, t) ->
    AccountsTemplates.setState('signIn')
    Modal.show 'login'
  'click .sign-up': (e, t) ->
    AccountsTemplates.setState('signUp')
    Modal.show 'login'

The internal state for AT is kept with a reactive var so everytime you change it you get the atForm template adapted to the new state.
If you're playing with modals, you might want to have a look at this discussion

@splendido AccountsTemplates.setState works like charm, thank you.
Ciao


"Grivița", "Smirna" are listed in the drop-down menu

Description:
When user writes ” Grivița” and "Smirna" the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Grivița"

Expected results
The location appears in the drop-down menu as "Sat Grivița, IALOMIȚA (Grivița)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Smirna"

Expected results
The location appears in the drop-down menu as "Sat Smirna, IALOMIȚA (Grivița)".


[Request/Feedback] Decouple Area Selection Size (Rectangle) from Output Zoom

First of all, I just discovered your heightmap generator today and it's freaking awesome!
ATM the size of the selected area seems to be attached to the output zoom level and if the output zoom level is set to 13, then the selected area is smaller as with zoom level set to 14 and so on. So if I want a bigger area I'll have to deal with less detail.
My question is:
Is it possible to decouple the area selection size from the output zoom level, so that I can select a bigger area without losing details from the selected output zoom level?
Maybe it would make more sense if the size of the area would be based on the selected zoom level for preview.
This would help at least getting more information/details from the albedo map.
Another thing I'm wondering about is, why the size of the rectangle changes unproportionally with every output zoom level from 14 and below.
Is this a bug or to be intended?

Hi! Glad you like the tool 😁👌

ATM the size of the selected area seems to be attached to the output zoom level and if the output zoom level is set to 13, then the selected area is smaller as with zoom level set to 14 and so on. So if I want a bigger area I'll have to deal with less detail.

There are two variables that control the size of the exported area

the zoom level
the pixel size

The maximum zoom is 15 (which is the maximum zoom of the source data), but there is no limit on the pixel size except what your computer can handle.

Is it possible to decouple the area selection size from the output zoom level, so that I can select a bigger area without losing details from the selected output zoom level?

Yes. If you want a higher detail for the same area, you can go up a zoom level, but then increase the pixel size as well. It is a log ratio, so going up 1 zoom level you will have to double the pixel size.
For example, if you are on 1000 x 1000px at zoom level 10, you can go to zoom level 11 to increase the detail, and increase the dimensions to 2000 x 2000px. This will represent the same area, but with twice the detail.
Does that make sense? Does that answer your question? The exported tiles are just based on mapping tiles, which have a set pixel resolution - so to export a bigger area for a given detail level, you have to increase the pixel size.

Another thing I'm wondering about is, why the size of the rectangle changes unproportionally with every output zoom level from 14 and below.
Is this a bug or to be intended?

I'm not sure what you mean? For me it is always square:

Are you able to post a screenshot?

Hi 👋😃
Thanks for your reply!

Does that make sense? Does that answer your question? The exported tiles are just based on mapping tiles, which have a set pixel resolution - so to export a bigger area for a given detail level, you have to increase the pixel size.

Ah true, I didn't knew that this is possible 😅🙈
Thanks for the hint!

I'm not sure what you mean? For me it is always square:

You should already see it in your pics, just look at the dimensions of the selected area.
The dimensions in the first pic are 86,5 x 88,6 km with output zoom level set to 10. That's not a perfect square 😉 and probably leads into incorrect sizes/proportions within UE.
Regardless of the output pixel size, the higher the output zoom level, the greater the difference in the dimensions of the selection, except for output zoom level 15 and 14.
Here an example...
With output pixel size set to 8129 you'll get following dimensions per output zoom level:
24.8 x 24.8 km @ 15
49.4 x 49.6 km @ 14
98.4 x 99.3 km @ 13
195 x 199 km @ 12
382 x 397 km @ 11
735 x 795 km @ 10
etc.
Do you now understand what I mean?
Another thing I've noticed is that the marker doesn't stay on the selected location when zooming in or out. When zooming, the marker moves and the coordinates change.

And another thing...
I saved the coordinates and then tried to paste them manually at lower zoom level, so the selected location keeps staying in the center, but it doesn't seem to work. As soon as I type in the latitude coordinate, the longitude coordinate also changes and vice versa.

Regardless of the output pixel size, the higher the output zoom level, the greater the difference in the dimensions of the selection...

I guess that this is also the reason why a horizontal black line appears at the bottom of the heightmap, as you can see in the following image

Sorry, for the spamming, but I ran into another issue 🙈
So I've set the output pixel size to 16258 to get a selection of 49.4 x 49.6km - 3.05m/px resolution at output zoom level 15. I was able to download the heightmap, but as soon as try to generate an albedo map based on the Open Street Map data, the download stops at 63/4160.

Have I upset you or are you just too busy atm?

Have I upset you or are you just too busy atm?

Hi sorry I have been very ill the past few weeks, and I might not have time to look at these things for a while I'm afraid

Hi, thanks for your reply!

Hi sorry I have been very ill the past few weeks, and I might not have time to look at these things for a while I'm afraid

Oh, I'm sorry to read that and hope you'll recover soon!

Aha, right I see what you mean. I think this is just slight areas in how this specific map projection works. To note, you will always get "errors" at large enough scales because of how you're trying to map the spherical world onto a square.
The widths will always be a little bit skewed, but to represent the mapping data 1:1 (the whole point of this repo) this is an acceptable sacrifice.
Another way to demonstrate this issue by moving your cursor at a fixed zoom from the equator to the poles - the square will start representing a smaller area (i.e. the mercator projection is artificially inflating those values).
Does this make sense?
I.e. this is not a bug in the applcation, but rather a limitation of mapping the spherical planet onto a plane
If you wish to more accurately model large sections of the planet, then this tool is not for you.
If you're happy with the slight mercator skewing (which shouldn't degrade the source data) then you will have to accept the slight measurement error.
Using you're examples, at zoom 13, the error is 4/199 = ~2%.

Well, it probably makes sense but I only do understand a bit as I don't know much about this subject matter 😅
However, I do understand if you can't submit any improvements in this case.

Is this when zooming with the mouse? That is intentional, it will zoom into the mouse location. If you would like to stay on the same point, you can change the zoom levels with manual zoom controls:

I've noticed that this also happens if I try to zoom with the arrows in the zoom panel. This is just my opinion but I guess that it would be more user friendly if setting/changing the location would be bounded to a press/click of LMB.

I'm not sure what this black line is - are you able to provide a link and/or screenshot to the location? I will try to recreate the issue.
Can I also ask what browser / OS you're using?

Do you mean a link/screenshot of the location from your heightmap generator?
I use the latest versions of Chrome and Windows 11

It may require trying multiple times to make this work. The rate at which we poll for tiles can stress some servers out, best bet is to refresh and try again :)

I already tried it several times but without success and finally I gave up 🙈
I really appreciate your help and in return for this I will gladly help you with feedback and suggestions 😊

Well, it probably makes sense but I only do understand a bit as I don't know much about this subject matter 😅
However, I do understand if you can't submit any improvements in this case.

I think we've got to the bottom of this issue now, any more issues, can you please post them as a seperate issue? e.g. the zooming problem.
Thank you!

Hmkay, I'll give it a try even if this means more work as I've to rewrite everything again


npm install fail

Bug

Environment info

React native info output:
System:
    OS: macOS Mojave 10.14.6
    CPU: (4) x64 Intel(R) Core(TM) i5-7400 CPU @ 3.00GHz
    Memory: 166.80 MB / 16.00 GB
    Shell: 3.2.57 - /bin/bash
  Binaries:
    Node: 10.13.0 - /usr/local/bin/node
    Yarn: 1.15.2 - /usr/local/bin/yarn
    npm: 6.10.3 - /usr/local/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
  SDKs:
    iOS SDK:
      Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
    Android SDK:
      API Levels: 17, 18, 19, 21, 22, 23, 25, 26, 27, 28
      Build Tools: 21.1.2, 22.0.1, 23.0.1, 23.0.2, 24.0.2, 25.0.0, 25.0.2, 25.0.3, 26.0.1, 26.0.2, 27.0.2, 27.0.3, 28.0.1, 28.0.2, 28.0.3
      System Images: android-28 | Intel x86 Atom, android-28 | Google APIs Intel x86 Atom, android-28 | Google Play Intel x86 Atom, android-Q | Google APIs Intel x86 Atom_64, android-Q | Google Play Intel x86 Atom, android-Q | Google Play Intel x86 Atom_64
  IDEs:
    Android Studio: 3.4 AI-183.6<IP_ADDRESS>22156
    Xcode: 11.2.1/11B500 - /usr/bin/xcodebuild
  npmPackages:
    react: 16.9.0 => 16.9.0
    react-native: 0.61.2 => 0.61.2
  npmGlobalPackages:
    react-native-cli: 2.0.1

Steps To Reproduce

run  npm install react-native-maps --save-exact
result:
npm WARN tarball tarball data for react-native-maps@latest (sha1-bsMWJZs40lnIl0RI2JS9eiMQHaQ=) seems to be corrupted. Trying one more time.
npm ERR! code EINTEGRITY
npm ERR! Verification failed while extracting react-native-maps@latest:
npm ERR! Verification failed while extracting react-native-maps@latest:
npm ERR! sha1-bsMWJZs40lnIl0RI2JS9eiMQHaQ= integrity checksum failed when using sha1: wanted sha1-bsMWJZs40lnIl0RI2JS9eiMQHaQ= but got sha512-xr+3BsqJyyMReho5G2TnNdcoN4VY1XpEveijJW3TISgJWQpp80mJsCc1f/ZBInWJpsD06zrMjVsWVwukZaykbA== sha1-jdhmn+8DCc7kVSMvhjmf7cke8RA=. (1730002 bytes)

npm ERR!      /Users/XXXXXX/.npm/_logs/2019-11-25T07_47_35_781Z-debug.log
log:
64 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "--save" "react-native-maps"
65 verbose node v10.13.0
66 verbose npm  v6.10.3
67 error code EINTEGRITY
68 error Verification failed while extracting react-native-maps@latest:
68 error Verification failed while extracting react-native-maps@latest:
68 error sha1-bsMWJZs40lnIl0RI2JS9eiMQHaQ= integrity checksum failed when using sha1: wanted sha1-bsMWJZs40lnIl0RI2JS9eiMQHaQ= but got sha512-LjZFh/ThlCE2srGZdgR4p5NYOnM/zhbJVgHYyK/noPSnLjjQDmlQ4ZNip4+cTIigP1szwqkD+BfnUPA26uAANw== sha1-D01GwNqYse/yQL4yXpXu9dKDp0Y=. (1690582 bytes)

tried remove node_module folder & clean npm cache , still cannot install

Solved by downloading the library directly & link manually.


[terra-overlay] Add aria screenreader a11y to Loading Overlay.

Summary
Fixes #2540.

@tbiethman and I chatted about this issue and whether or not to add aria-busy to the overlay. I can't say whether this is appropriate to use or not. Is there risk in not adding it for now? If not, my thought is we hold off and re-evaluate later. Whatever is done, it must be tested to ensure the user's expectation is met. If there is harm in not adding something, aria-busy may be the option to try first.

@scottwilmarth

Is there risk in not adding it for now?

I did not find a difference in the screen-reader behavior with/without it. I'd appreciate it if you could test the functionality out in the deployed site and let me know if the current change (sans aria-busy) looks good.

@nramamurth I'd say let's just go ahead and hold off on adding it for now.

Functional review complete.  No issues identified.


I use this to load CRZKD driver in 20H2,load success.But when Iconnect to the driver,then I got system-service-exception.

This issue is related to CRZKD and not to kdmapper, CRZKD is little old and kdmapper now clears PiDDbCacheTable for you, try to remove this line from the driver: https://github.com/TheCruZ/CRZKD/blob/9d500885f3a95ab7c093ba675e95dcd5ec528f29/CRZKD/main.cpp#L162 the other option is use old kdmapper version or in any case create the issue in CRZKD project

i use kd 20H2 to load crzkd but the pid and base i receive is incorrect.


microk8s incorrectly shows istio addon as enabled

Summary
I am deploying istio via juju charms instead of enabling the addon. When doing this, microk8s status incorrectly reflects that the istio addon is enabled.
What Should Happen Instead?
Addons shouldn't show as enabled unless they have been enabled by microk8s enable
Reproduction Steps
Install microk8s --channel=1.21/stable
Deploy istio using juju on microk8s
check microk8s status
$ microk8s.status
microk8s is running
high-availability: no
  datastore master nodes: <IP_ADDRESS>:19001
  datastore standby nodes: none
addons:
  enabled:
    dns                  # CoreDNS
    ha-cluster           # Configure high availability on the current node
    istio                # Core Istio service mesh services
    metallb              # Loadbalancer for your Kubernetes cluster
    rbac                 # Role-Based Access Control for authorisation
    storage              # Storage class; allocates storage from host directory
  disabled:
    ambassador           # Ambassador API Gateway and Ingress
    cilium               # SDN, fast with full network policy
    dashboard            # The Kubernetes dashboard
    fluentd              # Elasticsearch-Fluentd-Kibana logging and monitoring
    gpu                  # Automatic enablement of Nvidia CUDA
    helm                 # Helm 2 - the package manager for Kubernetes
    helm3                # Helm 3 - Kubernetes package manager
    host-access          # Allow Pods connecting to Host services smoothly
    ingress              # Ingress controller for external access
    jaeger               # Kubernetes Jaeger operator with its simple config
    keda                 # Kubernetes-based Event Driven Autoscaling
    knative              # The Knative framework on Kubernetes.
    kubeflow             # Kubeflow for easy ML deployments
    linkerd              # Linkerd is a service mesh for Kubernetes and other frameworks
    metrics-server       # K8s Metrics Server for API access to service metrics
    multus               # Multus CNI enables attaching multiple network interfaces to pods
    openebs              # OpenEBS is the open-source storage solution for Kubernetes
    openfaas             # openfaas serverless framework
    portainer            # Portainer UI for your Kubernetes cluster
    prometheus           # Prometheus operator for monitoring and logging
    registry             # Private image registry exposed on localhost:32000
    traefik              # traefik Ingress controller for external access

$ juju status
Model  Controller  Cloud/Region        Version  SLA          Timestamp
istio  controller  microk8s/localhost  2.9.29   unsupported  21:40:57Z

App                            Version                Status  Scale  Charm          Channel     Rev  Address         Exposed  Message
istio-ingressgateway-operator  res:oci-image@aae58cf  active      1  istio-gateway  1.5/stable   40  <IP_ADDRESS>    no
istio-pilot                    res:oci-image@87fc646  active      1  istio-pilot    1.5/stable   61  <IP_ADDRESS>  no

Unit                              Workload  Agent  Address     Ports                                                                                Message
istio-ingressgateway-operator/0*  active    idle   <IP_ADDRESS>  15020/TCP,80/TCP,443/TCP,15029/TCP,15030/TCP,15031/TCP,15032/TCP,15443/TCP,15011/TCP,8060/TCP,853/TCP
istio-pilot/0*                    active    idle   <IP_ADDRESS>  8080/TCP,15010/TCP,15012/TCP,15017/TCP

$ microk8s disable istio
Disabling Istio
Error from server (NotFound): namespaces "istio-system" not found

OK, this is a bug in MicroK8s 1.21, where the istio addon is shown as enabled if any pod with the name istio exists, see https://github.com/ubuntu/microk8s/blob/91f43ae9a6769554ebeb206fb297b44dd1b4e187/microk8s-resources/wrappers/addon-lists.yaml#L63
This has beem fixed in newer versions.


Bump one-webcrypto to 1.0.3 and keystore-idb to 0.15.4

Allows webnative to be used in more environments.
Main action is a version bump of one-webcrypto to 1.0.3 and keystore-idb to 0.15.4 (which again is only due to a version bump of one-webcrypto).
Discussed in #318

Fixes #318


refactor heap

Is your feature request related to a problem? Please describe.
The heap module is generic (it can behave as a min/max heap). However, some of the variable names emphasis on min-heap only.
Describe the solution you'd like
Update the heap module to use more generic variable names.

resolved by #10


ptyhost causes 100% CPU load

Version: 1.90.0-insider (user setup)
Commit: bbc4ba1eff648ee542972589216f211b7a6a08f2
Date: 2024-05-14T05:48:27.714Z
Electron: 29.3.1
ElectronBuildId: 9464424
Chromium: 122.0.6261.156
Node.js: 20.9.0
V8: 12.2.281.27-electron.0
OS: Windows_NT x64 10.0.22635
Not sure how to reproduce but the ptyHost quite often goes up to 100% CPU load for me on WSL

Same here, started after latest wsl update

@dbaeumer same as yours - 1.90.0-insider

same problem!
Version: 1.89.1 (user setup)
Commit: dc96b837cf6bb4af9cd736aa3af08cf8279f7685
Date: 2024-05-07T05:13:33.891Z
Electron: 28.2.8
ElectronBuildId: 27744544
Chromium: 120.0.6099.291
Node.js: 18.18.2
V8: 12.0.267.19-electron.0
OS: Windows_NT x64 10.0.19045

Not actionable unfortunately. If anyone can figure out how to reproduce this we can look into it.


Multiple response codes

Coverage increased (+0.1%) to 97.753% when pulling 82f2cc233f7b5bde799576e84cc7b1c610f048b9 on multiple-response-codes into 1be508026d61358b9df4ef0c612b9f9349681b2f on master.

Coverage increased (+0.1%) to 97.753% when pulling 82f2cc233f7b5bde799576e84cc7b1c610f048b9 on multiple-response-codes into 1be508026d61358b9df4ef0c612b9f9349681b2f on master.


Bug 3156 - Connect-DbaInstance set StatementTimeout when value of 0

Type of Change

[x] Bug fix (non-breaking change, fixes #3156)
[ ] New feature (non-breaking change, adds functionality)
[ ] Breaking change (effects multiple commands or functionality)
[x] Ran manual Pester test and has passed (`.\tests\manual.pester.ps1)
[x] Adding code coverage to existing functionality
[x] Pester test is included
[ ] Nunit test is included
[ ] Documentation
[ ] Build system

Purpose

Resolves bug #3156 and adds additional tests coverage for Connect-DbaInstance.
Approach

Any property on ConnectionContext that was set directly from a parameter was changed to use Test-Bound before setting the property. The reason this bug came up was because a 0 was being passed in, which was being evaluated as $false in the conditional before setting the property on ConnectionContext. By using Test-Bound it checks to see if the parameter was passed or not instead.
Commands to test

See test file.
Screenshots

Learning

sweet! @gbargsley can you give this a spin?

Fantastic 💌 Thank you, merged.


.. button to navigate to parent directory

Description
No easy way to navigate to parent directory.
I understand that it's possible to select directory on the directory path, but you have to aim for one you are interested in.
Describe the solution you'd like
Add .. button to allow linux like navigation
Describe alternatives you've considered
Add arrow up semething like this to have like Windows navigation

Feature is available in 2.1.0a35 i.e. in latest alpha release (which is relatively stable).
Here is a demo in (single panel mode):

and in case of dual panel mode:


feat(port-storage): overload putObject to support file upload and signed url flow #444

This PR makes it such that putObject supports both of the following function schemas:
type PutObjectUploadSchema = ({ bucket: string, object: string, stream: Buffer, doReturnUrl?: false }) => Promise<{ ok: boolean }>
type PutObjectSignedUrlSchema = ({ bucket: string, object: string, doReturnUrl: true }) => Promise<{ ok: boolean, url: UrlString }>

If stream is provided, doReturnUrl must be falsey, and putObject will need to do a file upload and not return a signed url. If doReturnUrl is true, stream must not be provided, and a signed url must be returned.
We can make doReturnUrl be anything, I just picked a name to work with. We can change if we have a better name for it. Maybe doReturnSignedUrl?
Also fixed a little bug on listBuckets that I discovered when writing a catch all test for the port.
Details
I was not able to use a Zod Union of the function schemas. Instead, I was able to use a union of the two possible input arg schemas for putObject. This validates shared fields present in both function schemas ie. bucket and object, and then also prevents issues such as conflicting/ambiguous args ie. providing both a stream and doReturnUrl: true or doReturnUrl: false and no stream
From there, we know the input args are valid for one of the function schemas, but Zod isn't smart enough to know which schema it should use to check the return value. So we check if doReturnUrl is provided. If it is, then we use the PutObjectSignedUrlSchema to validate args and the return. Otherwise, we use PutObjectUploadSchema. This seems to work really well, as I added some pretty exhaustive tests for putObject that check for proper validation, and that there isn't any chance for the input args to be ambiguous.
In general, the strategy that seemed to work was:

use a function schema with a union of the arg schemas (if there are shared arg fields), to validate the shared args
determine which overload is being used and use that function schema for end to end validation.

We've settled on useSignedUrl as the input arg name.


Org can set default pet tasks

🔗 Issue
N/A
✍ Description
This PR is the preliminary work to allow org staff to create default Pet tasks. This means, for any task set in Default Pet Tasks, when a new pet is created, these tasks will also be created for that pet.
I think the task creation should be handled in its own class. There is plenty of debate on where best to place these classes. I placed it in app/models but open to discussion on this one. Use of app/services seems generally not recommended and not OOP in most cases.
I just wanted to check this approach is acceptable before writing tests.
To do:

add acts_as_list to enable ordering tasks
tests

To do in future issues:

build out the CRUD of Default Pet Tasks via the UI using Turbo Stream

Add recurring task functionality

Possible future requirement - scope default tasks to pet type, e.g., dogs get a different set to cats.

📷 Screenshots/Demos

@all-contributors
please add @gorangorun for code.
please add @phonghpham for code.
please add @DreamVenerable for code.
please add @diegolinhares for code.
please add @egemen-dev for code.
please add @DreamVenerable for code.
please add @MooseCowBear for code.

https://github.com/all-contributors
please add @DreamVenerable for code.
please add @diegolinhares for code.
please add @egemen-dev for code.
please add @DreamVenerable for code.
please add @MooseCowBear for code.

@all-contributors
please add @diegolinhares for code.
please add @egemen-dev for code.
please add @DreamVenerable for code.
please add @MooseCowBear for code.

@all-contributors
please add @egemen-dev for code.
please add @DreamVenerable for code.
please add @MooseCowBear for code.

@all-contributors
please add @DreamVenerable for code.
please add @MooseCowBear for code.


Release 0.3.3

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

@conda-forge-admin, please rerender

This should be good to go after https://github.com/conda-forge/status/issues/181 is resolved


[ Multiplayer ] Heavy package lost and lag

May because of shadowtenpo or Games in shop battle

Using MaiDXR as relay may solve this issue (maybe


Occasional fatal error: concurrent map iteration and map write

Hey 👋 I'm using orchestrator to monitor a large amount of mysql nodes, somewhere in the 1000 ballpark, and maybe between 1-2 times per day I see orchestrator crash with a fatal error: concurrent map iteration and map write.
The full goroutine dump is relatively gigantic, but I've thrown it in a gist (https://gist.github.com/hmcgonig/b5184cc495420dff3d811d3a85af5a95).
For version, I'm running a self-built version of v3.0.8 using
  "BackendDB": "sqlite",
  "SQLite3DataFile": ":memory:",
  "RaftEnabled": true,

If there's anything else I should provide, let me know! Thanks!
edit: it might also be worth mentioning that all mysql nodes have an accompanying Vitess vttablet process which should be hitting the discovery API periodically.

Interesting. The bug has been there for years and this is the first I see it. Seems to be unrelated to Vitess and more about the use of go-cache. Looking into.

Need to update to this: https://github.com/patrickmn/go-cache/commit/a2d8b56f0c21c5562c23717b6137ed6254ddc6d4#diff-56ffa6659747ba7a23d2b5597a4cda5d

#435 addresses this issue.

Hah, excellent! Thanks for the speedy fix!

I can confirm, this fixed everything. Thanks again 👍


Copy actions from flux-local-action to this repo

Copy actions from flux-local-action to this repo, and update the test action to do tests on the repo.

Codecov Report

Merging #199 (18b04dc) into main (4be5d37) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 18b04dc differs from pull request most recent head 55479b7. Consider uploading reports for the commit 55479b7 to get more accurate results

@@           Coverage Diff           @@
##             main     #199   +/-   ##
=======================================
  Coverage   91.74%   91.74%
=======================================
  Files          15       15
  Lines        1502     1502
=======================================
  Hits         1378     1378
  Misses        124      124

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Issue 2985 -- The shipping address information disapears, after adding promo code in checkout form

I want to merge this change because...
resolves #2985

Screenshots

Pull Request Checklist

[ ] Privileged views and APIs are guarded by proper permission checks.
[ ] All visible strings are translated with proper context.
[ ] All data-formatting is locale-aware (dates, numbers, and so on).
[ ] Database queries are optimized and the number of queries is constant.
[ ] The changes are tested.
[ ] The code is documented (docstrings, project documentation).
[ ] GraphQL schema and type definitions are up to date.

I need some clarifications with this, as I am stuck trying to figure out how the whole flow works. I am trying to make ajax calls to the server to submit the code, but I am not getting any response back. What am I not getting right?
prefix = 'discount'
        data = {k: v for k, v in request.POST.items() if k.startswith(prefix)}

Where is the discount coming from?

Closing due to inactivity.


Migrated to Android X

In order to use this library in today's day and age, we need to make sure the given library is compatible with AndroidX as i myself couldn't integrate the same in my project. Hope this is good for you guys.

Could you please exclude the changes in .idea dir from the PR?

@edsilfer I have updated gitignore and then removed untracked files as well. I hope this solved our purpose.

@edsilfer Thanks for the review. I think you need to update the library from the-big-refactor branch in order for new projects to use it.

@edsilfer Thanks for the review. I think you need to update the library from the-big-refactor branch in order for new projects to use it.

The PR was merged in master yesterday :)


Add Quote generator

Project title
Quote generator
Project Description
The quote generator generates automatic quotes and colorful background after hitting the new quote button
Stack:
And in order to tick the check box just put x inside them for example - [x] like this. Please delete options that are not relevant.

[x] Html
[x] CSS
[x] JavaScript
[] ReactJS

/assign


Support working_directory

Description:
Support working_directory value.
Justification:
I have a mono-repo project whereas folder structure is:
.
├── backend  <=== BACKEND
├── certbot
├── commit.template
├── docker-compose.dev.yml
├── docker-compose.dev.yml~
├── docker-compose.prod.yml
├── docker-compose.prod.yml~
├── docker-compose.yml -> docker-compose.dev.yml
├── docker-compose.yml~
├── docs
├── downloads
├── frontend   <==== FRONTEND
├── media
├── selenium
├── static
├── venv
└── waagent

To build frontend, I need to set working_directory to frontend, but use is not observing this value.
Are you willing to submit a PR?
No

Hello @fengxia41103 !
Could you please explain your use case a bit more?
The action installs Node.js version, adds it to the PATH and optionally caches dependencies. You should use a separate step to build your project. You can specify working_directory in that separate step:
steps:
- uses: actions/checkout@v3

- uses: actions/setup-node@v3
  with:
    node-version: 16

- name: Install dependencies
  run: npm ci
  working-directory: ./frontend

- name: Build
  run: npm run build
  working-directory: ./frontend

The error I'm getting is
Error: Dependencies lock file is not found in /runner/_work/repo-dir. Supported file patterns: package-lock.json,npm-shrinkwrap.json,yarn.lock

t looks like the error message is indicating that the lock file for the dependencies is not found in the specified directory. The supported lock file patterns are package-lock.json, npm-shrinkwrap.json, and yarn.lock.
However, it seems that you have identified the cause of the issue yourself. The cache: 'npm' parameter in the actions/setup-node step may be causing problems. Removing it may have resolved the issue.
If you still encounter issues, you could try running npm install or yarn install in your workflow to generate the lock file. Alternatively, you could specify the path to the lock file using the working-directory parameter in the actions/checkout step.

I have the same issue and removing cache solves the problem. But this loses caching functionality.
I want to be able to set the path to lockfile so that projects with a "different" directory structure can use caching.

看起来错误消息表明在指定目录中找不到依赖项的锁定文件。支持的锁定文件模式是 package-lock.json、npm-shrinkwrap.json 和 yarn.lock。
但是，您似乎已经自己确定了问题的原因。cache: actions/setup-node 步骤中的 'npm' 参数可能会导致问题。删除它可能已经解决了问题。
如果仍然遇到问题，可以尝试在工作流程中运行 npm install 或 yarn install 来生成锁定文件。或者，您可以在 actions/checkout 步骤中使用 working-directory 参数指定锁定文件的路径。

I've encountered this issue after switching to the integrated caching in setup-node. The documentation includes the solution for this use case:
# Used to specify the path to a dependency file: package-lock.json, yarn.lock, etc.
# It will generate hash from the target file for primary key. It works only If cache is specified.
# Supports wildcards or a list of file names for caching multiple dependencies.
# Default: ''
cache-dependency-path: ''

Here's an example with Yarn and a <root>/app/yarn.lock file:
- uses: actions/setup-node@v3
  with:
    cache: "yarn"
    cache-dependency-path: "app"

And here's my working config file.

I can confirm that the solution proposed by @darekkay works as expected.

For monorepos, I think cache-dependency-path would rather be a workaround, not a real solution. The action should always honor the working-directory setting. IMO, that's the expected behavior on GitHub Actions.
Another property that has problems with this is node-version-file, even though you could specify the exact path to the file, having to do so is confusing when the working-directory path is already set:
defaults:
  run:
    working-directory: ./frontend

- uses: actions/setup-node@v3
  with:
    node-version-file: ./frontend/.nvmrc
    cache-dependency-path: ./frontend
    cache: yarn

@darekkay's solution worked for me - maybe this could be improved by making the docs a bit clearer?
I searched for directory, working directory, etc but it wasn't clear to me there was an option to tweak this.  Based on my googlin' and this issue, it seems like a lot of people are led down the path of "oh, I'll just do this and set my working-directory" to no avail.

I also confirm this weird issue happed to me. First I wanted to rely on basic GitHub Actions template for NodeJS build and test, which always works OK. But this time my code was in sub-directory. What can be easier, right?
on:
  workflow_dispatch:

jobs:
  build:
    runs-on: ubuntu-latest

    defaults:
      run:
        working-directory: ./docker-test-containers/

    strategy:
      matrix:
        node-version: [19.x, 20.x, 21.x]

    steps:
    - uses: actions/checkout@v3
    - name: Use Node.js ${{ matrix.node-version }}

      uses: actions/setup-node@v3
      with:
        node-version: ${{ matrix.node-version }}
        # cache: 'npm' # commenting SOLVED MY issue and build was OK
    - run: |
        npm ci
        npm test

So how to run this WITH caching then?
I know, caching is important. But who would believe that simple matter of changing working directory would cause a build to fail.

I've encountered this issue after switching to the integrated caching in setup-node. The documentation includes the solution for this use case:
# Used to specify the path to a dependency file: package-lock.json, yarn.lock, etc.
# It will generate hash from the target file for primary key. It works only If cache is specified.
# Supports wildcards or a list of file names for caching multiple dependencies.
# Default: ''
cache-dependency-path: ''

Here's an example with Yarn and a <root>/app/yarn.lock file:
- uses: actions/setup-node@v3
  with:
    cache: "yarn"
    cache-dependency-path: "app"

And here's my working config file.

Works as expected, Figured out that npm is looking up package.json and the like in the root of my repo where clearly there is nothing there for npm to use. I tried changing the run command working dir   but the problem lies as mentioned earlier.

@alundiak seems cache-dependency-path should specify to a lockfile, for example:

      - uses: pnpm/action-setup@v4
        name: Install pnpm
        with:
          version: 9

      - name: Setup Node
        uses: actions/setup-node@v4
        with:
          node-version: '20'
          cache: 'pnpm'
          cache-dependency-path: 'web/pnpm-lock.yaml'

      - name: Install deps
        run: pnpm install

but run failed with:
/home/runner/setup-pnpm/node_modules/.bin/pnpm store path --silent
/home/runner/setup-pnpm/node_modules/.bin/store/v3
Error: Some specified paths were not resolved, unable to cache dependencies.

@JoseLion seems doesn't work for v4


CUDA environment problem

GPU GeForce GTX TITAN X
[INFO] Load droid pretrained checkpiont from ./pretrained/droid.pth!
[TRACKER] Tracking Triggered!
[INFO] Load ConvONet pretrained checkpiont from ./pretrained/middle_fine.pt!
[MAPPER] Mapping Triggered!
[TRACKER] :   1%|█▍                                                                                | 1/100 [00:01<01:45,  1.07s/it]Process Process-2:
Traceback (most recent call last):
  File "/home/cver/miniconda3/envs/glorie-slam/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/home/cver/miniconda3/envs/glorie-slam/lib/python3.10/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/home/cver/code/GlORIE-SLAM/src/slam.py", line 93, in tracking
    self.tracker.run(self.stream)
  File "/home/cver/code/GlORIE-SLAM/src/tracker.py", line 54, in run
    self.motion_filter.track(timestamp, image, intrinsic)
  File "/home/cver/miniconda3/envs/glorie-slam/lib/python3.10/site-packages/torch/amp/autocast_mode.py", line 12, in decorate_autocast
    return func(*args, **kwargs)
  File "/home/cver/miniconda3/envs/glorie-slam/lib/python3.10/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context
    return func(*args, **kwargs)
  File "/home/cver/code/GlORIE-SLAM/src/motion_filter.py", line 79, in track
    corr = CorrBlock(self.fmap[None,[0]], gmap[None,[0]])(coords0)
  File "/home/cver/code/GlORIE-SLAM/src/modules/droid_net/corr.py", line 50, in __call__
    corr = CorrSampler.apply(self.corr_pyramid[i], coords/2**i, self.radius)
RuntimeError: CUDA error: no kernel image is available for execution on the device
CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.

Thanks !

I never met it before, are you using the same environment as glorie_env ?

Oh I might find the issue, you are using Titan X, which should use compute_52, adding 52 here and recompiling dorid_backends might be helpful.

Oh I might find the issue, you are using Titan X, which should use compute_52 according to this blog, adding 52 here and here, then recompiling dorid_backends and lietorch might be helpful.

problem solved,Thanks!


Trying to make it work for ROS iron and elixir 1.15.6-otp-26

I'm trying to run the package with the versions specified above, however on a clean install after running mix deps.compile I get the following error
mix deps.compile ==> rclex cc -o /home/ed/projects/ros_elixir_ws/src/hello-elixir/src/talker/_build/dev/lib/rclex/obj/graph_nif.o -c -g -O2 -Wall -Wextra -Wno-unused-parameter -pedantic -fPIC -I./src -I/home/ed/.asdf/installs/erlang/26.1.1/usr/include -I/opt/ros/iron/include/rcl -I/opt/ros/iron/include/rcl_yaml_param_parser -I/opt/ros/iron/include/rcutils -I/opt/ros/iron/include/rmw -I/opt/ros/iron/include/rosidl_runtime_c -I/opt/ros/iron/include/rosidl_typesupport_interface -I/opt/ros/iron/include/rosidl_dynamic_typesupport -I/opt/ros/iron/include/actionlib_msgs -I/opt/ros/iron/include/action_msgs -I/opt/ros/iron/include/diagnostic_msgs -I/opt/ros/iron/include/geometry_msgs -I/opt/ros/iron/include/lifecycle_msgs -I/opt/ros/iron/include/map_msgs -I/opt/ros/iron/include/nav_msgs -I/opt/ros/iron/include/pcl_msgs -I/opt/ros/iron/include/pendulum_msgs -I/opt/ros/iron/include/rosgraph_msgs -I/opt/ros/iron/include/sensor_msgs -I/opt/ros/iron/include/service_msgs -I/opt/ros/iron/include/shape_msgs -I/opt/ros/iron/include/statistics_msgs -I/opt/ros/iron/include/std_msgs -I/opt/ros/iron/include/stereo_msgs -I/opt/ros/iron/include/tf2_geometry_msgs -I/opt/ros/iron/include/tf2_msgs -I/opt/ros/iron/include/tf2_sensor_msgs -I/opt/ros/iron/include/trajectory_msgs -I/opt/ros/iron/include/unique_identifier_msgs -I/opt/ros/iron/include/visualization_msgs src/graph_nif.c In file included from /opt/ros/iron/include/rcl/rcl/rcl.h:77,                  from src/graph_nif.c:11: /opt/ros/iron/include/rcl/rcl/node.h:36:10: fatal error: type_description_interfaces/srv/get_type_description.h: No such file or directory    36 | #include "type_description_interfaces/srv/get_type_description.h"       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. make: *** [Makefile:78: /home/ed/projects/ros_elixir_ws/src/hello-elixir/src/talker/_build/dev/lib/rclex/obj/graph_nif.o] Error 1 could not compile dependency :rclex, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile rclex --force", update it with "mix deps.update rclex" or clean it with "mix deps.clean rclex" ==>  ** (Mix) Could not compile with "make" (exit status: 2). You need to have gcc and make installed. If you are using Ubuntu or any other Debian-based system, install the packages "build-essential". Also install "erlang-dev" package if not included in your Erlang/OTP version. If you're on Fedora, run "dnf group install 'Development Tools'".
erlang-dev and build-essential is already installed.
Would like to know any guidance on how to get it working

Hi @edwinallenz, nice to meet you, and thank you so much for trying out our library!!
When I tried to do mix compile in this library in my native environment (where I installed your versions directly, elixir 1.15.6-otp-26 / erlang 26.1.1 by asdf and ros-iron-desktopy by apt install), I confirmed that your issue has unfortunately reproduced,,, I will investigate this issue;(
BTW, why do you want to use these versions, especially for ROS 2 Iron?
We recommend using the following version, with ROS 2 Humble that is LTS as ROS 2 distribution.
https://github.com/rclex/rclex#the-environment-where-host-development-and-target-operation-are-the-same
Since Iron is an STS release, we do not want to support this with higher priority due to our limited development resources. However, please feel free to ask us if you have a strong request about the usage of our library with Iron.

@edwinallenz Good news! I can fix your issue by modifying Makefile according to the below.
diff --git a/Makefile b/Makefile
index 21aedfa..0be9b7f 100644
--- a/Makefile
+++ b/Makefile
@@ -33,7 +33,7 @@ ifeq ($(ROS_DISTRO), humble)
 ROS_INCS    ?= rcl rcl_yaml_param_parser rcutils rmw rosidl_runtime_c rosidl_typesupport_interface
 ROS_CFLAGS  ?= $(addprefix -I$(ROS_DIR)/include/, $(ROS_INCS)) $(addprefix -I, $(wildcard $(ROS_DIR)/include/*_msgs))
 else ifeq ($(ROS_DISTRO), iron)
-ROS_INCS    ?= rcl rcl_yaml_param_parser rcutils rmw rosidl_runtime_c rosidl_typesupport_interface rosidl_dynamic_typesupport
+ROS_INCS    ?= rcl rcl_yaml_param_parser rcutils rmw rosidl_runtime_c rosidl_typesupport_interface rosidl_dynamic_typesupport type_description_interfaces builtin_interfaces
 ROS_CFLAGS  ?= $(addprefix -I$(ROS_DIR)/include/, $(ROS_INCS)) $(addprefix -I, $(wildcard $(ROS_DIR)/include/*_msgs))
 else
 ROS_CFLAGS  ?= -I$(ROS_DIR)/include

I'm not fully sure why it is, but I guess the change in Iron about "Type Description Distribution" may cause your issue.
https://docs.ros.org/en/rolling/Releases/Release-Iron-Irwini.html#type-description-distribution
I will create PR to fix this.

@edwinallenz Could you confirm the operation works fine with #256?
Editing mix.exs is the simplest way to try it out.
      {:rclex, git: "https://github.com/rclex/rclex.git", branch: "fix_253"}

@takasehideki thank you so much for the fast response and fix, it worked. I would never sort it out.

BTW, why do you want to use these versions, especially for ROS 2 Iron?
Because is the latest version and even if it is not LTS when I start exploring any new library or service I always try to stick to the most recent release, given conceptual changes that are sometimes introduced and tried on latest versions. Yes, I read that the iron is not supported, but given that my goal at this point is to start learning and playing, I decided to give it a try.

I'm in the middle of building and launching an AR4 robotic arm. I've been developing on Elixir for the last 5 years and been an Elixir fan, I was looking to find a good way to use some Elixir along with ros, given all the concepts from ros that Elixir already manages, from the comments of this post, so trying to explore I found you're library.
BTW, I read that you will be presenting  Rclex on Nerves, on Ros conf, would be good if you share access to those materials, afterward.
best

worked well

@edwinallenz 🎉
It's always great fun for us to observe our product working on different grounds.
I'm so curious about your project. We have applied Rclex to ground wheel robots, but have not yet tried it on arm robots. You may want to use msg containing arrays (e.g., JointState) or Services, but these remain on our TODO list. And while Iron is certainly the latest, it has incorporated LTTng as a standard, which is becoming more difficult to deal with, especially in Nerves (we are aware of a solution, but have yet to implement it).
Anyway, please feel free to contact and/or request us whatever you want to realize. We want to help you according to your demand!!

BTW, I read that you will be presenting Rclex on Nerves, on Ros conf, would be good if you share access to those materials, afterward.

Yes, obviously!!
Before that, I wanna share our past talks that have been given at past Code BEAM: the former in 2021 introduces this Rclex library, and the latter in 2022 further introduces support for Nerves (and extensions to wide-area distributed communications leveraging Zenoh). I hope you can catch up on our activity from them.
These past talks have been tended toward Elixir/Erlang developers, but at this ROSCon we intend to bring all these contents together and present them to ROS developers. As a major update to be added them, I will introduce a case study of a ground wheel robot, but the presentation time of ROSCon is limited to 10 minutes, very tight,,,;(


Validating JWT protected resource

First off, many thanks for your tutorials, they are very helpful. I've followed the JWT section in your eBook and all is well but how do I go from there to protect some resources with this token. For example, if I want to pull a user profile from a USER table, I need to make sure the token is not only valid but corresponds to this specific user. It seems logical to inspect the token to retrieve the 'uid' but where? When JwtAuthMdwr completes, if it is a valid token, control is passed to the routeAction... should I get the token and inspect for proper uid at this point ? If so, how ?

Hi @mapicard
When the API / JWT authentication is done, the request contains the valid "uid" as attribute within the request object.
$request = $request->withAttribute('uid', $token->claims()->get('uid'));

You could (for example) convert that identifying information from the Presentation (User Interface) layer into the Application layer, and letting the Application layer coordinate the creation of the Domain layer User instance via Infrastructure implementations. Read more
To map the "uid" into a real user value object or DTO you can map that within a custom middleware:
<?php

namespace App\Middleware;

use App\Domain\Auth\UserAuth;
use App\Domain\Auth\UserCredentialExchanger;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface;

final class UserAuthMiddleware implements MiddlewareInterface
{
    private UserAuth $userAuth;

    public function __construct(UserCredentialExchanger $credentialExchanger, UserAuth $userAuth)
    {
        $this->credentialExchanger = $credentialExchanger;
        $this->userAuth = $userAuth;
    }

    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $userId = $request->getAttribute('uid')

        if (!$uid) {
            return $this->responseFactory->createResponse()
                ->withHeader('Content-Type', 'application/json')
                ->withStatus(401, 'Unauthorized');
        }

       // Map userId to domain layer user instance
       $user = $this->credentialExchanger->getUser($userId);

       // Set user into the UserAuth instance
       $this->userAuth->setUser($user );

        return $handler->handle($request);
    }
}

Then you need an additional authorization check that should happen before the service starts to retrieve the data.
The implementation for the authorization depends on your specific requirements. RBAC or ACL etc.

Hi @odan,

You could (for example) convert that identifying information from the Presentation (User Interface) layer into the Application layer, and letting the Application layer coordinate the creation of the Domain layer User instance via Infrastructure implementations. Read more

This is dense, I definitely need to "Read more". Thanks for the pointers.

additional authorization check that should happen before the service starts to retrieve the data.

Should i conclude that this check should be done in the Action module? For example to make sure only the owner of a profile  can update it, and assuming the uid in the token is the sequential $userId of the userRepo, i would simply...
if ( $request->getAttribute('uid') === $userId ) {
    $this->userUpdater->updateUser($userId, $data)
}
else {
    ... unauthorized

The uid could also be something different, like a UUID or an email address. It depedens on your specific use case.
There is no "rule" that says it must be the ID of the table "users". At the end it must be a unique identifier (credential) for you application.
I think your example should work but it would also produce a lot of redundant code.
I would try to add middleware that initializes the auth component with the current user based on the UID of the request with the JWT. My example from above shows how this middleware might look. The specific implementation of course depends on the used Auth component.
Maybe I will write an additional article about this specific topic.

https://docs.laminas.dev/laminas-permissions-rbac/examples/
https://github.com/mezzio/mezzio-authentication/blob/1.3.x/src/UserInterface.php
https://github.com/mezzio/mezzio-authentication/blob/1.3.x/src/AuthenticationInterface.php


Unable to access /assets/ directory items after disabling grunt

Sails version: 0.12.13
Node version:7.10.0
NPM version: 4.2.0
Operating system: Windows 10 64-bit

I'm trying to use Webpack, which means I have removed grunt and disabled grunt. Webpack bundles correctly, but the problem I am now faced with is that I cannot include the webpack-created files in any of the Layouts. ( I also changed the layout engine from EJS to ECT as I dislike EJS, but that part worked fine).
I get the following error in the console whenever I attempt to load js/app.bundle.js or any file that would be normally accessible via the assets/ folder. :
warn: res.notFound() :: When attempting to render error page view, an error occured (sending JSON instead).  Details:  [stdin]:8:1: error: unexpected if
if (typeof data!== 'undefined') {
^^

Error should be visible by going to this repo and copying it onto your local machine.
##Possible Solutions
My idea here would be to have webpack work on outputting the files, and using the grunt-copy task to simply move those to the correct location. I'm aware of the grunt-webpack task, but I believe that that particular task is meant for webpack v1.x, not webpack v2 (if wrong please let me know).
Any suggestions on where to go from here?

The first thing I notice in your repo is that your Webpack config is copying the bundle to .tmp/js, when it needs to go into .tmp/public/js.  That's why it's trying to render the 404 page.  As to the error you're getting on that page, that looks like a problem with the ECT renderer?

that's weird, as I have another project which uses ECT renderer but the error pages worked fine on that one. I had previously tried .tmp/public/js and didn't get it to work. let me try and switch the render engine back over and see if that changes anything.

@jhechtf Can you verify that the file is actually being copied into the .tmp/public/js folder?  Also, it shouldn't matter in this case, but you should make the path to the file in your

@jhechtf You can also try starting with the Sails Webpack seed project!


Remove archetype mangling

Other than the special 'qualified archetype' mangling for debug info, we have no good reasons to mangle archetypes anymore. This PR removes this mangling, which came up with variables and closures. Instead we just mangle the interface type.
Tests still need updating.

@swift-ci Please test Linux

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - aabccdd6280b895f55fa071126325c4fe09f64ee
Test requested by - @slavapestov

Does this affect SourceKit and USRs?

This PR is actually wrong because LLDB breaks for some reason. I'll invesigate.
I believe USR mangling already calls getInterfaceType(), but I might be wrong.

@slavapestov I think you told me why LLDB used this information, but now I've completely forgotten. If you remember, can you record it here for posterity? This is close to being in my critical path.

@swift-ci Please test

@swift-ci Please test

This is a rebased version. It will still fail in LLDB tests (unless that magically got fixed) -- I'll finish this up tomorrow.

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - ee295ddbb8a1b6b9164f911b52ebfaac905dd1ea
Test requested by - @slavapestov

@swift-ci Please test Linux

Yippee!


Merge master to 2.0 rc6

Notable changes:

Reduce lock contention in Worker
Add metrics to the FuturePool
Fix misused metrics in coprocessor

Oh, rc6 tag is already tagged. never mind. ship #2973 with next release.
LGTM


Tests failing for mercurial changed files

🐛 Bug Report
Currently, when cloning straight from the current version master the test for getting changed files in hg is failing.
I'm running the latest version of hg (5.0.1) in an old Mac I have but the same happens in any of the other machines I've cloned jest into.
The error I get is due to the pattern we use to specify a revset returning an empty revision range.
    Command failed: hg status -amnu --rev min((!public() & ::.)+.)^ /var/folders/p0/0npmk50s57v5sgzb_s9z2xmc0000gn/T/jest-changed-files-test-dir /var/folders/p0/0npmk50s57v5sgzb_s9z2xmc0000gn/T/jest-changed-files-test-dir/nested-dir /var/folders/p0/0npmk50s57v5sgzb_s9z2xmc0000gn/T/jest-changed-files-test-dir/nested-dir/second-nested-dir
    abort: empty revision range

      at makeError (node_modules/execa/index.js:181:11)

Related PRs:

https://github.com/facebook/jest/pull/7880
https://github.com/facebook/jest/pull/8066
https://github.com/facebook/jest/pull/5476

To Reproduce
Steps to reproduce the behavior:

Clone jest
Install hg
Install dependencies
Run tests (yarn test)

Expected behavior
The test linked above should pass since the withAncestor option should return both the current changes and the changes in the last commit. Currently, the pattern we use to specify a revset errors because the pattern specifies an empty range.
I managed to solve this locally myself, by using ancestors(.)::0 as the argument for --revset, but I'm not sure whether this solution covers all necessary edge-cases. Since I don't use mercurial myself I thought it was better to open an issue and see what other mercurial users think of this solution. If this is a satisfactory solution I can open a PR as I already have these changes commited to this branch.
Link to repl or repo (highly encouraged)
As per the steps to reproduce section, this repo is its own reproducible repo.
Run npx envinfo --preset jest
Paste the results here:
  System:
    OS: macOS High Sierra 10.13.6
    CPU: (4) x64 Intel(R) Core(TM) i5-5257U CPU @ 2.70GHz
  Binaries:
    Node: 10.16.0 - ~/.nvm/versions/node/v10.16.0/bin/node
    Yarn: 1.15.0 - /usr/local/bin/yarn
    npm: 6.9.0 - ~/.nvm/versions/node/v10.16.0/bin/npm

I have same problem.
$ git rev-parse HEAD
e3f4c65140f08a2ec81e5a8260704c1d201e33c1

  System:
    OS: macOS 10.15.1
    CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
  Binaries:
    Node: 12.13.0 - ~/.nvm/versions/node/v12.13.0/bin/node
    Yarn: 1.19.1 - /usr/local/bin/yarn
    npm: 6.12.0 - ~/.nvm/versions/node/v12.13.0/bin/npm

 FAIL  e2e/__tests__/jestChangedFiles.test.ts (26.869s)
  ● gets changed files for hg

    abort: empty revision range

      334 |   });
      335 |
    > 336 |   ({changedFiles: files} = await getChangedFilesForRoots(roots, {
          |                            ^
      337 |     withAncestor: true,
      338 |   }));
      339 |   // Returns files from current uncommitted state + the last commit

      at makeError (node_modules/execa/lib/error.js:58:11)
          at runMicrotasks (<anonymous>)
          at async Promise.all (index 0)
      at Object.<anonymous> (e2e/__tests__/jestChangedFiles.test.ts:336:28)

 FAIL  e2e/__tests__/onlyChanged.test.ts (93.791s)
  ● gets changed files for hg

    expect(received).toMatch(expected)

    Expected pattern: /PASS __tests__(\/|\\)file2.test.js/
    Received string:  "·
      ● Test suite failed to run·
        abort: empty revision range
    "

      299 |
      300 |   ({stdout, stderr} = runJest(DIR, ['-o', '--changedFilesWithAncestor']));
    > 301 |   expect(stderr).toMatch(/PASS __tests__(\/|\\)file2.test.js/);
          |                  ^
      302 |   expect(stderr).toMatch(/PASS __tests__(\/|\\)file3.test.js/);
      303 | });
      304 |

      at Object.toMatch (e2e/__tests__/onlyChanged.test.ts:301:18)

Yeah, they fail for me as well. I've never used mercurial, so I have no real point of reference here. Maybe @scotthovestadt can help?

@SimenB I'd be happy to open a PR if the solution I've described when I opened the issue is valid, but given that I'm not an SVN expert, I'd like to confirm before doing it:

I managed to solve this locally myself, by using ancestors(.)::0 as the argument for --revset, but I'm not sure whether this solution covers all necessary edge-cases. Since I don't use mercurial myself I thought it was better to open an issue and see what other mercurial users think of this solution. If this is a satisfactory solution I can open a PR as I already have these changes commited to this branch.

I have absolutely no clue, unfortunately... Maybe @quark-zju knows?

This is mostly likely related to phase configuration. In Mercurial, the common workflow is that the "master" branch has public commits, and feature branches have "draft" commits.
I suspect all commits are "drafts" and there are commits that should be public but are not public in these cases. In that case, hg phase --public master will probably fix it.
I think the revset can be changed to:
first(min(!public() & ::.)^+.^)

to work with incorrect phase setup (all commits are draft) while still being able to take advantage of phases to detect draft feature branch.
Explanation:

min(!public() & ::.)^: This is the parent of the first commit of the feature branch, or an empty set if phases is not setup correctly.
first(x+y): This picks x if x is not empty, or y if x is empty.


Unable to override setAttribute method in model

I am trying to set null on all empty values by doing this in my model that implements StaplerableInterface and uses EloquentTrait:
use Codesleeve\Stapler\ORM\StaplerableInterface;
use Codesleeve\Stapler\ORM\EloquentTrait;
class FooBar extends Eloquent implements StaplerableInterface{
	use EloquentTrait;
	protected $table = 'foobars';
	protected $fillable = ['file_attachment_1'];
	public function __construct(array $attributes = array()) {
		$this->hasAttachedFile('file_attachment_1');
		parent::__construct($attributes);
	}
	/**
	 * Override setAttribute
	 */
	public function setAttribute($key, $value)
	{
		parent::setAttribute($key, $value);
		if ( is_null($value) || empty($value))
		{
			$this->attributes[$key] = null;
		}
	}
}

I get this error:
Illuminate \ Database \ QueryException (42S22)
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'file_attachment_1' in 'field list' (SQL: update `foobars` set

There's currently no way (that I know of) to make the EloquentTrait work if you're overriding the setAttribute method.  I can make this work, but it's going to require a couple of changes to the EloquentTrait.  I'm going to keep this issue open until I get that done.

Actually, you can manually handle the stapler stuff in you setAttribute method if you're going to override it.  Something like this should work:
public function setAttribute($key, $value)
    {
        // handle stapler attachments first:
        if (array_key_exists($key, $this->attachedFiles)) {
            if ($value) {
                $attachedFile = $this->attachedFiles[$key];
                $attachedFile->setUploadedFile($value);
            }

            return;
        } else {
            // do your any work you need to here
        }
    }


WHAT CAN BE IMPROVED

Every group member is to input their individual retrospection on what went well.

1.3.5 Software Architecture Patterns

Did not specify how the project made use of the software patterns and how it aids the functionality of the software

1.5.1 Introduction, Data Dictionary, Features and Requirements

Data Dictionary could be more detailed

1.6.7 Integrated Features Testing
1.6.8 D1 Prototype Release
Overall, communication between teams in the module and entire project can be improved.

Report Quality:
3.4 The sequence diagram should be controller -> entity -> mapper -> uow -> db
3.3 Class Diagram naming convention should be standardized with the codes
Team Improvement:
Tasks delegated could have been made clearer so that the manpower can be maximised efficiently
Class Improvement:
Communication between the teams could have been improved to improve the naming conventions, less time to figure out and complete the diagrams

Report Quality:
Individual reflections should be written with regards to what I did and contributed instead of what the team did overall.
Team Improvement:
Task delegation and github board updates could have been done more frequently
Class Improvement:
Better communication among the teams so that naming convention as well as our quality attributes could have been standardized. Ultimately, we should be working as a class instead of being individualistic.

Report Quality:
Quality Attributes stated in the report should be defined better and it should be align with the other groups. Use case descriptions can be better improved.
Team improvements:
Team member's should also be on the ball when updating the Project board in github. Task delegation should be clearly stated along with retrospection for each team member.


Blog post December 17, 2020 note: Number of transmission risk level

Where to find the issue
https://github.com/corona-warn-app/cwa-website/blob/master/blog/2020-12-17-risk-calculation-enf-2-0/index.md
https://github.com/corona-warn-app/cwa-website/blob/master/blog/2020-12-17-risk-calculation-enf-2-0/index_de.md

Describe the issue
Mention of only VII (7) transmission risk level instead of VIII (8), while the nomalized risk factor is given as 0.6 to 1.6 (Division by 5) acc. to the linked diagram:
https://github.com/corona-warn-app/cwa-documentation/blob/master/images/risk_calculation/risk_calculation_enf_v2_overview.pdf
This holds true for the English as well as the German version of the blogpost.

Suggested change
Changing the number of transmission risk level to VIII (8).

EXPOSUREAPP-4529

@Ben220
It looks like you found a typo! It also affects the same description which can be found on:
https://www.coronawarn.app/en/faq/#encounter_19_calc
"Based on the transmission risk level (III to VII), only a factor between 0.6 and 1.6 is determined."
should be changed to
"Based on the transmission risk level (III to VIII), only a factor between 0.6 and 1.6 is determined."
https://www.coronawarn.app/de/faq/#encounter_19_calc
"Basierend auf dem Transmission Risk Level (III bis VII) wird nur ein Faktor zwischen 0,6 und 1,6 ermittelt."
which should be changed to
"Basierend auf dem Transmission Risk Level (III bis VIII) wird nur ein Faktor zwischen 0,6 und 1,6 ermittelt."

@Ben220
It looks like you found a typo! It also affects the same description which can be found on:
https://www.coronawarn.app/en/faq/#encounter_19_calc
"Based on the transmission risk level (III to VII), only a factor between 0.6 and 1.6 is determined."
should be changed to
"Based on the transmission risk level (III to VIII), only a factor between 0.6 and 1.6 is determined."
https://www.coronawarn.app/de/faq/#encounter_19_calc
"Basierend auf dem Transmission Risk Level (III bis VII) wird nur ein Faktor zwischen 0,6 und 1,6 ermittelt."
which should be changed to
"Basierend auf dem Transmission Risk Level (III bis VIII) wird nur ein Faktor zwischen 0,6 und 1,6 ermittelt."

Dear @Ben220, @MikeMcC399,
Thank you for your contributions.
We have created a ticket for the bug (Internal Tracking ID: EXPOSUREAPP-4529) in the internal Jira system. Before changing, I asked for feedback, but seems a typo.
Best wishes,
DS

Corona-Warn-App Open Source Team

Dear @Ben220, @MikeMcC399,
Thank you for your contributions.
We have created a ticket for the bug (Internal Tracking ID: EXPOSUREAPP-4529) in the internal Jira system. Before changing, I asked for feedback, but seems a typo.
Best wishes,
DS

Corona-Warn-App Open Source Team

PR fixing this, ready to merge, when you got feedback @dsarkar.

PR fixing this, ready to merge, when you got feedback @dsarkar.

@Ben220,  @MikeMcC399, @Ein-Tim,
https://github.com/corona-warn-app/cwa-website/blob/master/blog/2020-12-17-risk-calculation-enf-2-0/index.md
https://github.com/corona-warn-app/cwa-website/blob/master/blog/2020-12-17-risk-calculation-enf-2-0/index_de.md
have been updated.
I think we can close this issue.

@Ben220,  @MikeMcC399, @Ein-Tim,
https://github.com/corona-warn-app/cwa-website/blob/master/blog/2020-12-17-risk-calculation-enf-2-0/index.md
https://github.com/corona-warn-app/cwa-website/blob/master/blog/2020-12-17-risk-calculation-enf-2-0/index_de.md
have been updated.
I think we can close this issue.

I will update the FAQ as well.
Thanks to everybody!

I will update the FAQ as well.
Thanks to everybody!

@Ein-Tim you have a PR regarding this issue. The .md files have been changed already. The FAQ has conflicts. Do you want to adapt your PR, or shall I do it? Thanks.

@Ein-Tim you have a PR regarding this issue. The .md files have been changed already. The FAQ has conflicts. Do you want to adapt your PR, or shall I do it? Thanks.

@dsarkar Will quickly adapt the PR, saw #821 a second ago.

@dsarkar Will quickly adapt the PR, saw #821 a second ago.

@Ein-Tim ... ok, thanks.

@Ein-Tim ... ok, thanks.

@dsarkar #823

@dsarkar #823

@Ben220 Thanks for spotting this issue. Feel free to close this issue.

@Ben220 Thanks for spotting this issue. Feel free to close this issue.

OK, I closed it accidentally, but I guess it's fine.

OK, I closed it accidentally, but I guess it's fine.


[RELAY] Add MergeCompilerRegions pass

This is part of the infrastructure necessary to support multiple outputs in the BYOC graph partitioning framework. It corresponds to step 3 of the flow outlined here and implements the algorithm described in this RFC. In summary, it merges together consecutive operators supported by the same target while ensuring that no data dependency issues are created.
This PR depends upon the utility functions provided by the AnnotationRegionSet PR and the Improved graph partitioner.

cc @zhiics @comaniac @masahi @tqchen

@mbaret Sorry I haven't been following the development of a new partitioning algorithm. Is this related to annotator support for composite?

It isn't (although I hope to handle that next). This is to help support the case where we partition into a region that has multiple outputs.

@mbaret could you reproduce the failure and try to resolve it? It crashed before partition graph so it should not be the issue of multiple output support.

@mbaret could you reproduce the failure and try to resolve it? It crashed before partition graph so it should not be the issue of multiple output support.

I've found the issue (was to do with changes I made the merging during code review on the AnnotatedRegionSet patch). I've made the necessary change in this PR, but we'll also need this fix PR. I've also added in a more extensive test (based on the one in your PR) to verify the issue is resolved.

Can you just incorporate that change?

also please fix @comaniac's comments

I've incorporated that fix into this PR now.

Thanks for pushing the fixes! However, I'm still getting the segfault on call to MergeCompilerRegions in that example I posted earlier? Are you able to run that example successsfully?

There's still another issue to resolve with this (in AnnotateRestDefault). I'll take a look at it on Monday.

Thanks @mbaret @trevor-m @zhiics @comaniac


Login from a page that need initial value?

Hi i needed to implement a steam login in my webpage and this project solved my problems, but now i got an issue. It worked well in "static" pages but when i need to login from a page that need an initial "get value" like a search page it simply doesn't work. When i hit the login button the page ask me for a value to search and doesn't proceed to the login redirect.
The problem is that the button calls a "?login" form action and it clear the get values of the actual page.
Thanks!
PD: I'm using 2.1.3 release.

You could redirect to a new php file that calls steamlogin() directly and passes through your GET parameters.

You could do it like this: https://gist.github.com/BlackCetha/eb0ba62c016f4501de87
Note that it is not tested.

Thanks, i will try that and let you know.

mmm i tried this but it didnt work. I cant successfully override the 'loginpage' value, and when i redirect the button to the other page that only gets the "GET" values and execute steamlogin() it only shows the button, i would need a way to force the page to go to the steam login page.

Well i solved the problem, i read a session var in the steamlogin() function that i previously created in the login page that captures the actual login page with a "$_SESSION['login_page'] = basename($_SERVER['PHP_SELF']);" so i can redirect the page after the steam redirection.
Thanks!


Atom Restart To Update Issue

When clicking the 'restart to update' button Atom will close but does not reopen.

This looks like a duplicate of https://github.com/atom/atom/issues/5692 – please subscribe there for updates.


Fixing #935: Secure function against random data return.

As described in bug #935, this will secure
sf::Uint32 factorToGlConstant(sf::BlendMode::Factor blendFactor)
and
sf::Uint32 equationToGlConstant(sf::BlendMode::Equation blendEquation)
from RenderTarget.cpp against returning random data.
The common consent was to apply the patch and add an assert on top.
See also discussion in bug report #935.

@zsbzsb No I need the sf:: namespace.
This functions are not in the sf namespace, if I not use sf:: I get:

Yeah, the code is only in an anonymous namespace and not the sf:: one, so that's alright. However as mentioned you need to swap the lines. In debug mode the user would never end up seeing the message.

As mentioned I moved the assert behind the error message.
If you want I squash the commits to one.

The patch looks ideal now, thank you. :+1: :cat2:

Looks good :+1: Just needs to be squashed now :wink:

I think there should be an empty line after the closing }.
And maybe write "Fall back to sf::BlendMode::Add" instead of "GLEXT_GL_FUNC_ADD", because the user doesn't know about the OpenGL behind the scenes. Same for "sf::BlendMode::Zero"/"GL_ZERO".

Alright, I see this newline is common code style in SFML, so I have added it ;-)
Hoping for the last one of three thumb-up, then I squash the commits.

:+1: after squash

Ok squashed.

This PR has been added to my merge list, meaning it will be merged soon into the 2.3.x branch, unless someone raises any concerns.

Merged in 0f1dc5a7542a1794412a02744ab6afc1810bab17 on branch 2.3.x


Is pinpoint allowed to pass the application business ID and track the links based on that ID?

Is pinpoint allowed to pass the application business ID and track the links based on that ID?

Not supported.


Webpack error "non EcmaScript module"

Describe the bug
When i import tiptap-extensions, i get the errors listed below. i've checked your Code Sand Box with the packages im using and it works ok. There are any inconvenience in using ES6 + Babel?
Errors:

error  in ./node_modules/prosemirror-history/dist/index.mjs
Can't import the named export 'Mapping' from non EcmaScript module (only default export is available)

error  in ./node_modules/prosemirror-history/dist/index.mjs
Can't import the named export 'Plugin' from non EcmaScript module (only default export is available)

error  in ./node_modules/prosemirror-collab/dist/index.mjs
Can't import the named export 'Plugin' from non EcmaScript module (only default export is available)

error  in ./node_modules/prosemirror-history/dist/index.mjs
Can't import the named export 'PluginKey' from non EcmaScript module (only default export is available)

error  in ./node_modules/prosemirror-history/dist/index.mjs
Can't import the named export 'PluginKey' from non EcmaScript module (only default export is available)

error  in ./node_modules/prosemirror-collab/dist/index.mjs
Can't import the named export 'PluginKey' from non EcmaScript module (only default export is available)

error  in ./node_modules/prosemirror-collab/dist/index.mjs
Can't import the named export 'TextSelection' from non EcmaScript module (only default export is available)

error  in ./node_modules/prosemirror-collab/dist/index.mjs
Can't import the named export 'TextSelection' from non EcmaScript module (only default export is available)
Screenshots

Environment

OS: Windows 12
Browser chrome
Tiptap Version [1.26.4]
Tiptap-extensions Version [1.28.4]
Vue Version [2.6.10]
Vue CLI Version: [3.9.x]
Babel Version: [7.6.0]
Webpack Version: [4.33.0]

Additional context
// babel.config.js
module.exports = {
  'presets': [
    [
      '@vue/app',
      {
        'useBuiltIns': 'entry'
      }
    ]
  ]
}

i guess that this is related with this issue
prosemirror#1003

Which version of prosemirror-model are you using as dependency for tiptap-extensions? It should be alright for version 1.8.2

1.8.0

Yes, that problem should be fix on the http://prosemirror.net/docs/changelog/. So, just make sure you update properly the dependency to version 1.8.2

Is it possible for the tip-tap project to lock the dependency versions in the package.json, it seems sort of unstable that sub-dependencies can break the build.

The issue was that prosemirror was trying to compole ES5 module, and was then using .mjs files instead of .js files, they have reverted this in their new commits.
https://github.com/ProseMirror/prosemirror-view/blob/master/CHANGELOG.md

@funkfreakout you should really lock the dependencies for your own version.

@joelpro2 I do, but I guess if a problem in a particular version of the dependency is fixed in a new one, which only purpose is to fix that problem, the best option is to upgrade that dependency to the new one and manage your code so it can cope with those changes.

@funkfreakout this could be a recurring issue in the future, I would highly recommend to lock your package dependencies, and only use tested versions of your dependencies.
Seems like you have a CI/CD pipeline that can upgrade the sub packages, to newest version without testing the packages compatibility.
I'v submitted a pull-request to lock the dependency versions in package.json files, in the following folders:

tiptap
tiptap-commands
tiptap-extensions
tiptap-utils

The PR is here:
https://github.com/scrumpy/tiptap/pulls
Please take this into consideration.

btw, but not related to this bug (just a question), is it possible to apply css properties like color and save as JSON?

@iliyaZelenko


Improve bcrypt example

This PR improves the bcrypt example by using the DefaultCost constant (which is currently 10 and the recommended value instead of the previously used 8) and by allowing password which are longer than 72 characters.
Bcrypt truncates the plaintext input at 72 characters, so passwords which are longer than that, are not recognized as different inputs. By hashing the input first to a fixed size (and removing possible NULL bytes) an arbitrary long input is possible.

thanks 👍


Quality review of "Disaster recovery for Azure applications" document.

@alexbuckgit,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/resiliency/disaster-recovery-azure-applications.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/resiliency/disaster-recovery-azure-applications.md
:white_check_mark:Succeeded
View

docs/resiliency/images/disaster-recovery-azure-applications/reduced-application-functionality-for-transaction-capture.png
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Markdown file gets swallowed due to failing "file" command

I have a Markdown file in German. Somehow file does not like the first umlaut (all others are fine, weirdly enough — it's just that specific instance).
~/Projects » echo $LANG
en_US.UTF-8
~/Projects » echo $LC_ALL
en_US.UTF-8
~/Projects » echo $LC_CTYPE
UTF-8
~/Projects » file /Users/npiccolotto/Desktop/gallery/04\ Konferenz/L1000500.md
/Users/npiccolotto/Desktop/gallery/04 Konferenz/L1000500.md: ERROR: line 22: regexec error 17, (illegal byte sequence)

Anyway, I was able to fix it by overriding LC_ALL or unsetting all of LANG, LC_ALL and LC_CTYPE.
~/Projects » LC_ALL=C file /Users/npiccolotto/Desktop/gallery/04\ Konferenz/L1000500.md
/Users/npiccolotto/Desktop/gallery/04 Konferenz/L1000500.md: UTF-8 Unicode text, with very long lines

Not sure what the best solution here is.

seems like a good idea to fix the locale anyways, added it to the repo after testing.