[Company Cards] Update the Amex cards format

Coming from here
Lets update the Amex cards format to show as 4 digits, 6 digits, 5 digits because they are 15 digits number. This ensure they will look nice in the product.

Hi, I'm Viktoryia from Callstack - expert contributor group - and I would like to work on this issue.

@mountiny I can help on this issue

Updates:

Implemented updates and opened the Draft PR.

TODOs:

Add screenshots for mobile platforms
Add unit tests for maskCardNumber function.

I think the PR will be ready for the review tomorrow in the first part of the day.

The PR is ready for the review!

Seems like we are going to update the card formats again and show only the last 4 pans across the App so I dont think we need regression tests for this change yet, we will handle that in the follow up


[CHORE] CHANGELOG v0.0.5-alpha

Relocated the config file directory from the build directory to $HOME/.config/anvilock/ directory
Modified all the build (make, cmake and meson) files for the config file directory change
Updated readme for the new config file directory
Updated .gitignore to ignore the cache directory

looks good to me


Image orientation (portrait vs landscape) aware transformations for w, h and aspect

I find myself in a situation where I have both landscape and portrait images (loaded via import.meta.glob), and I want to resize them so that their larger side do not exceed 1000px, and also ensure a 16/9 aspect ratio in their respective orientation.
Currently, this is not possible to do, as we only have w and h directives, and aspect-ratio is independent from orientation.
I can see two solutions for this:
minSide, maxSide and orientedAspect
In a similar idea to vmin / vmax css units, corresponding to the smaller / larger size between vh and vw, we could have here two new directives: minSide and maxSide, allowing to set the size of the smaller / larger side of the image.
We would in addition have a new orientedAspect, that would perform the aspect ratio taking into consideration the image orientation.
It would be used like the following:
import Image from 'example.jpg?maxSide=1000'
import Image from 'example.jpg?minSide=640&orientedAspect=16:9'

These names can be bikeshedded if needed.
orientationAware
Instead of introducing a new directive for each directive that is sensitive to image orientation, we could instead just introduce a single one, specifying how to apply these transforms based on the image orientation.
So when the orientationAware directive is specified, the image is always handled as if in landscape mode:

w resizes the larger side
h resizes the smaller side
aspect is in the format large:small

It would be used like the following:
import Image from 'example.jpg?orientationAware&w=1000'
import Image from 'example.jpg?orientationAware&h=640&aspect=16:9'

Likewise, the directive name can probably be changed to something more desirable.

Do you have an opinion about the preferred approach?

seems related: #722


[3.x] Add support for prompting the user to retain app data on uninstall.

As specified in the documentation:
When the user uninstalls an app, whether or not to show the user a prompt to keep the app's data.

Supported on Android 10 and higher.

Thanks!

There are features rather than bug fixes, so we can omit them from the 3.3 cherry-pick.


[BUG] POSTs to /v3/cloudcredentials succeed but fail

Rancher Server Setup

Rancher version: 	v2.7-f0d4078f4fa75b303ce276c3f4b12fc465b1ba2a-head
Installation option (Docker install/Helm Chart):

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc):

Proxy/Cert Details:

Information about the Cluster

Kubernetes version: 1.25
Cluster Type (Local/Downstream): local

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider):

User Information

What is the role of the user logged in? (Admin/Cluster Owner/Cluster Member/Project Owner/Project Member/Custom)

Admin

Describe the bug

POST to /v3/cloudcredenitals with the below content returns 201 succeeds but does returns null and no credentials created
Bug 1 - Response should not be 201 if the call fails
Bug 2 - Response should not fail

Fails - Note - The Cloud CA node driver's cloud config schema does not contain any resourceFields
{"type":"cloudcredential","metadata":{"namespace":"fleet-default","annotations":{"provisioning.cattle.io/driver":"cloudca"},"generateName":"cloud-credential-"},"cloudcacredentialConfig":{"apiKey":"asdsad"},"name":"asdsadasdas"}

Succeeds - Note - The OTC node driver's cloud config schema does contain any resourceFields
{"type":"cloudcredential","metadata":{"namespace":"fleet-default","annotations":{"provisioning.cattle.io/driver":"otc"},"generateName":"cloud-credential-"},"otccredentialConfig":{"accessKeySecret":"otc"},"name":"otc"}

To Reproduce
In the UI...

Enable Cloud CA node driver (don't refresh)
Navigate to Cluster Management --> Clusters --> Create button --> RKE2 is toggled on --> Cloud.ca
Enter a name and apiKey
click Continue

Result

201 response, user should then proceed to rke2 cluster create screen... however as no cloud cred resource returned in create request we're in a weird world

Expected Result

If request contains junk the response should be 4XX
If request is valid response should be 201 AND contain the new resourcereturned

Screenshots

Additional context

As noted, this blocks https://github.com/rancher/dashboard/issues/8523 for UI. Pushing that out of Q2 for now as time is tight.

Internal reference: SURE-6517

Jira item now deleted but this ticket remains in limbo.
@jakefhyde since you brought up https://github.com/rancher/dashboard/issues/8523 earlier, are you blocked by this? If so, we can work with @samjustus on prioritization for Q1.

@MbolotSuse , thank you for doing thorough research into this issue. While it makes sense that schema is required for properly processing this request, it doesn't justify getting 201 (CREATED) with null response - a more fitting HTTP response code would be somethis in 4xx (or possibly 5xx) range. It should probably be spawned into separate issue to be owned by the frameworks team, something original reported alluded to:

Bug 1 - Response should not be 201 if the call fails
Bug 2 - Response should not fail

If you agree, could you / @samjustus / @cbron create this issue?

@snasovich Thanks for your detailed reply. Unfortunately, I do not agree that ownership of the 201 falls within the frameworks team. As briefly alluded to in my original comment, I believe that the issue causing the 201 is that a cloud-credential specific customization is returning a nil result and no error in this case. That code can be found here. Since that function is specific to cloud credentials, it won't be owned by the Frameworks team (which does not own resource specific customizations).
In short, Norman is returning a 201 and empty reply because the cloud credential endpoint has been misconfigured to do so. Since that misconfiguration is specific to that endpoint, it falls within the owning teams' area of responsibility.
If upon further investigation you find that I am incorrect about the source of the 201, then I would agree that the frameworks team should analyze further.
As far as the rest of your reply goes, I agree with the current analysis of the issue and recommendation that we pursue an enhancement to not require a hardcoded change in rancher to support things like this, though I'm not an expert in this area, so that's just an opinion on my end.

I'd agree that if no error is returned then 2XX seems in line with go standards, though the null response is weird given situation. IMO the frameworks aren't advanced enough to gracefully handle all cascading error situations like this. If provisioning team can take a look, you can let us know if anything else is needed, but I imagine fixing that endpoint should solve everything.

However, following some investigations I believe there is a reasonable workaround that Rancher admin can apply once and it "sticks" even through Rancher restarts / driver updates.
The workaround is to simply update annotations on corresponding nodedrivers.management.cattle.io object to set privateCredentialFields / publicCredentialFields to set as comma-separated list of fields that should be public/private fields on Cloud Credential for that driver. This change can be done via kubectl (recommended)

Thank you for this workaround, it helped us to test our own node driver doing RKE2 cluster deployments. Is there a way to  change these privateCredentialFields / publicCredentialFields  ?  I was only able to change those by re-installing rancher again.

However, following some investigations I believe there is a reasonable workaround that Rancher admin can apply once and it "sticks" even through Rancher restarts / driver updates.
The workaround is to simply update annotations on corresponding nodedrivers.management.cattle.io object to set privateCredentialFields / publicCredentialFields to set as comma-separated list of fields that should be public/private fields on Cloud Credential for that driver. This change can be done via kubectl (recommended)

Thank you for this workaround, it helped us to test our own node driver doing RKE2 cluster deployments. Is there a way to change these privateCredentialFields / publicCredentialFields ? I was only able to change those by re-installing rancher again.

@palvarez89 , I've just tried updating publicCredentialFields annotation on the nodeDriver object to add extra field to it and it immediately showed in resourceFields of the v3/dynamicSchemas/(drivername)credentialconfig link and after refreshing UI I see this new field appearing on form for creating cloud credentials for this node driver.
Could you please provide more information on what changes require Rancher reinstall for you to take effect?

@cbron @MbolotSuse , just to close the loop on the above conversations, I agree that the transformer should not return nil, nil as it's essentially stating “there was no error but there is no object available” which doesn’t make sense. I don't believe there is a way in Go to prevent nil, nil response so it's up for caller func to handle such a response.
This is then handled by Norman's API handler which produces that "201 - null" response.
We're splitting hairs here but IMO in a perfect world the system that depends on subsystems outside of its control should be resilient to potentially invalid responses from those subsystems and still produce valid responses. In a perfect world response 500 with error like “object not created, no further details are available” makes more sense than 201 with null content.
I'll leave it up to your team to see if it makes sense to add more resiliency to the code I link and for this issue we'll focus on ensuring Transformer doesn't return nil, nil for custom node drivers. Like mentioned in previous response, it's going to be an enhancement that, once implemented, will need to be adopted by individual node driver implementations to support:

Now, focusing on "Bug 2", adding cloudca to DriverData map here will certainly address the immediate issue for Cloud.ca driver but we need a more generic solution to allow node driver binary itself to declare publicCredentialFields / privateCredentialFields (and while at it, defaults as defined here) as having these needed to be hardcoded in Rancher goes against "plugin" model of node drivers.
This is an enhancement to be designed and implemented.

@palvarez89 , I've just tried updating publicCredentialFields annotation on the nodeDriver object to add extra field to it and it immediately showed in resourceFields of the v3/dynamicSchemas/(drivername)credentialconfig link and after refreshing UI I see this new field appearing on form for creating cloud credentials for this node driver.
Could you please provide more information on what changes require Rancher reinstall for you to take effect?

I've just tried again, and yes, it looks like the UI gets updated immediately. I'm now having problems to set fields that contain a hyphen in them, like for example image-id. Is there a way to escape them without changing the driver?


Broken links in the generated pdf

The footnotes aren't rendered correctly in the generated pdf. On clicking on any of the footnotes, the link takes to the beginning of the document.

This is fixed in the c04eda87d7c688d8fb589496203293f3bf2d1dfb commit.


Make it possible to run a patch inside another patch

This pull request makes it possible to run a patch inside another patch. Previously the variable insertedVnodeQueue was shared between patch-runs. This commit makes the variable local to the current patch-run.
The use case is custom elements running snabbdom that render other custom elements that might be using snabbdom.
I checked the min+gzip size and found the previous size to be 1403 bytes and the new 1423 bytes.

+1
Sometimes I have to use setTimeout.

Thanks a lot for this patch! Snabbdom aims to be as flexible and versatile as possible and this change makes it even more so.
I can certainly see how this can be useful. I have never needed it myself so this behaviour hasn't bothered me. I think this is a splendid change. Using a shared variable so that different patch invocations can affect each other really is a quite bad idea.
Thank you :+1:

It occurred to me that I hadn't published a new version with this change to npm. It is done now :)


Pin name spaces

Hardware pin names are usually marked on the circuit boards, that defines a board namespace for pins.
Operating systems, such as Linux, or Zephyr define a pin name mapping that is consistent across the boards supported by the OS.
There is definitely a use case to support OS pin namespace in implementations.
However, supporting board namespaces is very convenient and lowers the bar for simple programs.
The problem is when these name spaces clash. Since we don't control boards nor operating systems, we can't impose a rule to keep those namespaces disjunct. Therefore we can't use both namespaces in the same time (in general), with or without fallback to the other.
IMHO we have the following clean options:

Support only OS (system) pin namespace. Keep pin names completely opaque, and say in the spec that the meaning is defined by the OS documentation.
Support both board and system namespaces. The developer can choose the namespace when opening a pin. There is a default namespace, which I suggest to be the board namespace, for developer convenience vs manufacturer convenience. Just look at the board and be (almost) sure the labels will work in this API.

In PR #40 currently option 2 is supported, but it can be changed.
@pfalcon, @grgustaf, @nagineni, @poussa please comment.

The problem is when these name spaces clash. Since we don't control boards nor operating systems, we can't impose a rule to keep those namespaces disjunct.

Well, the namespaces are usually pretty distinguishable on their own, though edge cases may happen of course. Board pin identifiers are usually strings, though they can be strings of digits like "10". In Linux (for comparison), pin identifiers are integers. In Zephyr, they're "two-coordinate", a pair of port name (string) and an integer. So, for Zephyr a natural way to identify a pin would be an array like ["GPIO_1", 5]. That's a bit verbose, so in a patch I contributed long time ago to Zephyr.js a dot-separated string was used, like "GPIO_1.5". Now, it's possible that a label on a board would be with a dot, and even that on a board it can be written as GPIO1.5, while Zephyr thinks it's GPIO_1.5. Well, I'd consider it's fair to discount such possibility, by giving preference to one choice over another. My preference would be on OS side ;-).

Support only OS (system) pin namespace. Keep pin names completely opaque, and say in the spec that the meaning is defined by the OS documentation.

There's also option 1a:
1a. Support only system namespace on C level. But provide convenience modules, e.g. arduino101_pins , completely on JS level (i.e. written in JS). This would ease maintenance considerably IMHO. Of course, that requires mature enough module system (for example, ability to "freeze" some of the modules as the bytecode into executable, while still accepting a raw source via ashell).

Support both board and system namespaces. The developer can choose the namespace when opening a pin. There is a default namespace, which I suggest to be the board namespace, for developer convenience vs manufacturer convenience. Just look at the board and be (almost) sure the labels will work in this API.

That works too. If you don't find an idea of implicit separation robust enough, and there're any issues with implementing mapping on JS level, then just providing explicit means of selecting the namespace is a good choice.  I see that #40 says:

introduce support for OS pin namespace (default) and board namespace (backup)

Which would be my preference and opposite of your suggestion above, but if there's anticipation that users will strongly prefer board names, having them as default sounds good.

Thanks Paul for helping.

Well, the namespaces are usually pretty distinguishable on their own,

That depends on the OS. In Zephyr it's likely not an issue, but on Linux it may be. Anyway, the idea to have 2 (or even more) namespaces is not new: usually the one not using pin mapping is called "raw" pin name, otherwise the default is using the pin mapping.

That works too. If you don't find an idea of implicit separation robust enough, and there're any issues with implementing mapping on JS level, then just providing explicit means of selecting the namespace is a good choice.

Mind you that option 2 involves having an extra property mapping in the GPIO init dict. Okay, it will have a default value, but there were opinions we should get rid of it and use namespace fallback. We shortly discussed this and agreed that we definitely don't want fallback between different namespaces, it would create confusion. Built-in intelligence tends to have limits. Instead, make the choice available to devs. So we have some divergent opinions there.
About which is default - first I have put "system" namespace as the default one, for reasons you also shared. However, when discussed with @nagineni we realized the board namespace is more important for devs with simple programs and the pro guys can always write one more init property and have their use case covered. IOW we prioritize making scripting very easy for the non-professionals: just have the board, and take pin names from there.
So it's not yet decided, but I have recorded your preference for "system" as default pin namespace.

Discussed with @poussa that for now we stay with Option 2, gather experience and then consider again.
Option 2 has some advantages:

records a developer choice
doesn't need to require a module when board namespace is used.

The inconvenience is that for using system namespace one more property needs defining in the init dict.


How to build an executable?

How to build or compile to .exe ?

Building is currently a work in progress, you can likely currently use pre-existing solutions like pkg although it won't be as seamless.

Hope we can meet this feature sooner or later


test(connector-fabric): move integration tests to use Fabric v2.5.6 AIO

This fixes many flakes that we were suffering from before with the
older versions of the AIO image.
There could still be other flakes lurking around, but their numbers
should definitely be going down with this change due to the increased
stability of the new AIO image.

Signed-off-by: Peter Somogyvari<EMAIL_ADDRESS>Pull Request Requirements

[x] Rebased onto upstream/main branch and squashed into single commit to help maintainers review it more efficient and to avoid spaghetti git commit graphs that obfuscate which commit did exactly what change, when and, why.
[x] Have git sign off at the end of commit message to avoid being marked red. You can add -s flag when using git commit command. You may refer to this link for more information.
[x] Follow the Commit Linting specification. You may refer to this link for more information.

Character Limit

[x] Pull Request Title and Commit Subject must not exceed 72 characters (including spaces and special characters).
[x] Commit Message per line must not exceed 80 characters (including spaces and special characters).

A Must Read for Beginners
For rebasing and squashing, here's a must read guide for beginners.

@petermetz The Weaver test network scripts use Fabric v2.5.0: https://github.com/hyperledger/cacti/blob/main/weaver/tests/network-setups/fabric/dev/Makefile. Do you want this to be upgraded to 2.5.6 too?

@petermetz The Weaver test network scripts use Fabric v2.5.0: https://github.com/hyperledger/cacti/blob/main/weaver/tests/network-setups/fabric/dev/Makefile. Do you want this to be upgraded to 2.5.6 too?

@VRamakrishna
If the image itself is stable and the tests are not flaking because of it then I would prioritize it low and put it in the backlog (the task of upgrading it to v2.5.6 or newer).
If the image suffers from instability like our old v.2.2.x images were, then it's higher priority and I'd recommend upgrading ASAP as well.


feat: OpenAPI links support

Very early PoC PR to keep track of TODOs & comment on code
TODO:

[x] Quite a lot of small things in comments
[x] Threaded runners support
[x] WSGI support
[x] Fix coverage
[x] Docs
[ ] More docstrings
[x] complete runtime expressions support. https://swagger.io/docs/specification/links/#runtime-expressions
[x] Support for location prefixes in links when two or more parameters have the same name (query.id, body.id, etc)
[x] What if the parsed expression is not a string?
[x] $response variable support
[x] JSON pointer support
[x] Keep the same type inside runtime expressions
[x] Hypothesis tests for runtime expressions
[x] Entire body support in runtime expressions. How it should be done? JSON?
[x] Error handling for runtime expressions (including unbalanced brackets)
[x] Handle recursion
[x] Handle CLI percentage properly
[x] Deduplicate data samples
[x] Add a distinguishable CLI name to the test generated by the feedback instance
[x] Fix not needed newline in CLI output for threaded execution
[x] Store endpoints by operationId
[x] Resolve operationRef - local & external
[x] Resolve links behind references
[x] CLI option to enable links. E.g. --stateful=links
[x] Proper support for requestBody
[x] handle empty parameters
[ ] gather common parameters when resolving operation by operationRef
[ ] test for resolving external reference in operationRef
[x] Configurable recursion limit + test
[ ] server keyword overriding

Maybe the CLI output could look like this:
POST /api/users/ .
  -> GET /api/users/{user_id} .
  -> PUT /api/users/{user_id} .
       -> DELETE /api/users/{user_id} .

So it is clear what is the dependency tree

Codecov Report

Merging #581 into master will decrease coverage by 1.17%.
The diff coverage is 89.60%.

@@            Coverage Diff             @@
##           master     #581      +/-   ##
==========================================
- Coverage   99.73%   98.56%   -1.18%
==========================================
  Files          41       49       +8
  Lines        2673     2994     +321
  Branches      431      503      +72
==========================================
+ Hits         2666     2951     +285
- Misses          3       22      +19
- Partials        4       21      +17

Flag
Coverage Δ

#unittests
98.56% <89.60%> (-1.18%)
:arrow_down:

Impacted Files
Coverage Δ

src/schemathesis/runner/impl/solo.py
80.55% <46.15%> (-19.45%)
:arrow_down:

src/schemathesis/runner/impl/threadpool.py
96.20% <50.00%> (-3.80%)
:arrow_down:

...c/schemathesis/specs/openapi/expressions/parser.py
77.02% <77.02%> (ø)

...schemathesis/specs/openapi/expressions/pointers.py
90.00% <90.00%> (ø)

...rc/schemathesis/specs/openapi/expressions/nodes.py
92.72% <92.72%> (ø)

src/schemathesis/specs/openapi/links.py
96.29% <96.29%> (ø)

src/schemathesis/models.py
100.00% <100.00%> (ø)

src/schemathesis/runner/impl/core.py
99.35% <100.00%> (+0.08%)
:arrow_up:

src/schemathesis/schemas.py
100.00% <100.00%> (ø)

...schemathesis/specs/openapi/expressions/__init__.py
100.00% <100.00%> (ø)

... and 13 more

Continue to review full report at Codecov.

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

Occasionally failing tests happen because of this - https://github.com/HypothesisWorks/hypothesis/issues/2433

Codecov Report

Merging #581 into master will decrease coverage by 0.15%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #581      +/-   ##
==========================================
- Coverage   99.73%   99.58%   -0.16%
==========================================
  Files          41       50       +9
  Lines        2677     3137     +460
  Branches      432      521      +89
==========================================
+ Hits         2670     3124     +454
- Misses          3        7       +4
- Partials        4        6       +2

Flag
Coverage Δ

#unittests
99.58% <100.00%> (-0.16%)
:arrow_down:

Impacted Files
Coverage Δ

src/schemathesis/cli/__init__.py
100.00% <100.00%> (ø)

src/schemathesis/cli/output/default.py
100.00% <100.00%> (ø)

src/schemathesis/cli/output/short.py
100.00% <100.00%> (ø)

src/schemathesis/models.py
100.00% <100.00%> (ø)

src/schemathesis/runner/__init__.py
100.00% <100.00%> (ø)

src/schemathesis/runner/events.py
100.00% <100.00%> (ø)

src/schemathesis/runner/impl/__init__.py
100.00% <100.00%> (ø)

src/schemathesis/runner/impl/core.py
99.43% <100.00%> (+0.15%)
:arrow_up:

src/schemathesis/runner/impl/solo.py
100.00% <100.00%> (ø)

src/schemathesis/runner/impl/threadpool.py
100.00% <100.00%> (ø)

... and 23 more

Continue to review full report at Codecov.

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


Also build on Mac OS X. Fixes #164

@ErikSchierboom it looks like this might be stuck along with the same change in F# since the builds have been running for an hour and a half and they're usually done in ~5 minutes.

@robkeim Well, that's because sometimes the MacOS builds are delayed due to limited resources. Eventually, the build does run (and successfully too).

Ok sounds good, I'll go ahead and merge then! Thanks @ErikSchierboom!


Offcanvas closing animation is not playing

components: Offcanvas
reactstrap version #9.2.2
import method umd/csj/es
react version #^18.2.0
bootstrap version #^5.3.0

What is happening?
https://reactstrap.github.io/?path=/docs/components-offcanvas--offcanvas
When closing the offcanvas, the offcanvas just disappears and the closing animation is not played.
What should be happening?
The closing animation should be played.
Reference: https://getbootstrap.com/docs/5.0/components/offcanvas/
Steps to reproduce issue

open offcanvas in storybook
close offcanvas in storybook

I fixed it by using this patch:
diff --git a/esm/Offcanvas.js b/esm/Offcanvas.js
index 5006e62f2474270f0d6ffb49a967c897bc2f5627..7c5dd58181a72f5ca5897a09bfdc849ac967779a 100644
--- a/esm/Offcanvas.js
+++ b/esm/Offcanvas.js
@@ -406,11 +406,9 @@ var Offcanvas = /*#__PURE__*/function (_React$Component) {
           onEntered: this.onOpened,
           onExited: this.onClosed,
           cssModule: cssModule,
-          className: mapToCssModules(classNames('offcanvas', className, "offcanvas-".concat(direction)), cssModule),
+          className: mapToCssModules(classNames('offcanvas', className, "offcanvas-".concat(direction),  {hiding: !isOpen, show: !isOpen}), cssModule),
           innerRef: this._dialog,
-          style: _objectSpread(_objectSpread({}, style), {}, {
-            visibility: isOpen ? 'visible' : 'hidden'
-          })
+          style: _objectSpread(_objectSpread({}, style), {})
         }), this.props.children), Backdrop);
       }
       return null;

Seems like we shouldn't override visibility (so animation can be visible) when isOpen is false.
Then, to work with Fade, we need to pass "show hiding" classes when we are closing the Fade.


Incorrect verb mapped to default argument

When verb is not specified it is mapped to default verb, when default verb specified. Awesome!
But I recently found that even a incorrect verb is provided it is mapped to default verb as well.
So how could throw an exception to user notifying that incorrect verb is given, while there is a default verb as well. I want to allow empty verb as well.
Empty verb => Default Verb
Incorrect verb => call with no parsed
Here is a sample code snippet.
Thank you for the great library!

The issue here is that Parser use  the default verb as a non-verb options.
In general, Only named options (e.g -a xyz ) are tracked by the parser but values (e.g value1, incorrect, correct) are not tracked.
Here, incorrect is considered as a value token for the parser (not a verb).
When the value is not consumed,  it will be ignored and parser activate the default verb (no error is fired).
Console.WriteLine("Incorrect value, but ignored by the parser, then parser activate the default verb");
var args2 = "incorrect".Split();
Start(args2);

@moh-hassan In my case I have to check both cases. With verbs and without verbs. With verbs case is called by the user, but without verbs case is called by programmatically. And also I have throw an error if the user provide a incorrect verb. So how can I do that with this?
My verbs

install
start

$ app install -> correct
$ app start -> correct
$ app -> correct (This one is invoked by programmatically)
$ app notaverb -> incorrect
I can simply do this without a default verb. But I have some logic which works in no verb situation. So in order to check no verb situation I have to use a default verb.
So, is there any workaround for this?

@buddhikac96,

So, is there any workaround for this?

If you aren't using Value(0) , you can consume the incorrect verb by adding a dummy SubCommand Value:
[Verb("clone", true, HelpText = "Clone a repository into a new directory.")]
internal class CloneOptions
{
//consume the incorrect verb, or use it as a subCommand.
[Value(0)]
public string SubCommand  {get;set;}
//.... other named options

}

Then, you can handle the invalid subcommand:
Check the demo


cv-bridge configuration errors

Hello,
I'm trying to build meta-ros (master branch), cv-bridge do_configure throws the following error:
ERROR: cv-bridge-1.10.18-r0 do_configure: Function failed: do_configure (log file is located at /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/cv-bridge/1.10.18-r0/temp/log.do_configure.1524)
ERROR: Logfile of failure stored in: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/cv-bridge/1.10.18-r0/temp/log.do_configure.1524
Log data follows:
| DEBUG: Executing python function sysroot_cleansstate
| DEBUG: Python function sysroot_cleansstate finished
| DEBUG: Executing shell function do_configure
| NOTE: cmake.bbclass no longer uses OECMAKE_BUILDPATH.  The default behaviour is now out-of-tree builds with B=WORKDIR/build.
| -- The C compiler identification is GNU 5.3.0
| -- The CXX compiler identification is GNU 5.3.0
| -- Check for working C compiler: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
| -- Check for working C compiler: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc -- works
| -- Detecting C compiler ABI info
| -- Detecting C compiler ABI info - done
| -- Detecting C compile features
| -- Detecting C compile features - done
| -- Check for working CXX compiler: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++
| -- Check for working CXX compiler: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ -- works
| -- Detecting CXX compiler ABI info
| -- Detecting CXX compiler ABI info - done
| -- Detecting CXX compile features
| -- Detecting CXX compile features - done
| -- Using CATKIN_DEVEL_PREFIX: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/cv-bridge/1.10.18-r0/devel
| -- Using CMAKE_PREFIX_PATH: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/udooqdl/opt/ros/indigo;/media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/udooqdl/usr;/media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/opt/ros/indigo;/media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr
| -- This workspace overlays: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/udooqdl/opt/ros/indigo;/media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/opt/ros/indigo
| -- Found PythonInterp: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr/bin/python-native/python (found version "2.7.11")
| -- Using PYTHON_EXECUTABLE: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr/bin/python-native/python
| -- Using default Python package layout
| -- Found PY_em: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/em.pyc
| -- Using empy: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/em.pyc
| -- Using CATKIN_ENABLE_TESTING: 0
| -- catkin 0.6.19
| -- Boost version: 1.60.0
| -- Found the following Boost libraries:
| --   python
| -- Found PythonLibs: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/udooqdl/usr/lib/libpython2.7.so (found version "2.7.11")
| -- Configuring done
| CMake Error in src/CMakeLists.txt:
|   Imported target "opencv_xphoto" includes non-existent path
|
|     "/media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/udooqdl/include/opencv"
|
|   in its INTERFACE_INCLUDE_DIRECTORIES.  Possible reasons include:
|
|   * The path was deleted, renamed, or moved to another location.
|
|   * An install or uninstall procedure did not complete successfully.
|
|   * The installation package was faulty and references files it does not
|   provide.
|
|
|
| CMake Error in src/CMakeLists.txt:
|   Imported target "opencv_xphoto" includes non-existent path
|
|     "/media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/udooqdl/include/opencv"
|
|   in its INTERFACE_INCLUDE_DIRECTORIES.  Possible reasons include:
|
|   * The path was deleted, renamed, or moved to another location.
|
|   * An install or uninstall procedure did not complete successfully.
|
|   * The installation package was faulty and references files it does not
|   provide.
|
|
|
| -- Generating done
| CMake Warning:
|   Manually-specified variables were not used by the project:
|
|     CMAKE_INSTALL_BINDIR
|     CMAKE_INSTALL_DATAROOTDIR
|     CMAKE_INSTALL_INCLUDEDIR
|     CMAKE_INSTALL_LIBDIR
|     CMAKE_INSTALL_LIBEXECDIR
|     CMAKE_INSTALL_LOCALSTATEDIR
|     CMAKE_INSTALL_SBINDIR
|     CMAKE_INSTALL_SHAREDSTATEDIR
|     CMAKE_INSTALL_SYSCONFDIR
|
|
| -- Build files have been written to: /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/cv-bridge/1.10.18-r0/build
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_configure (log file is located at /media/talha/mybook/quad-yocto-build-krogoth/build/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/cv-bridge/1.10.18-r0/temp/log.do_configure.1524)
ERROR: Task 6 (/media/talha/mybook/quad-yocto-build-krogoth/sources/meta-ros/recipes-ros/vision-opencv/cv-bridge_1.10.18.bb, do_configure) failed with exit code '1'
NOTE: Tasks Summary: Attempted 2299 tasks of which 2298 didn't need to be rerun and 1 failed.
No currently running tasks (1919 of 2307)

Summary: 1 task failed:
  /media/talha/mybook/quad-yocto-build-krogoth/sources/meta-ros/recipes-ros/vision-opencv/cv-bridge_1.10.18.bb, do_configure
Summary: There was 1 WARNING message shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.

i reverted to vision_opencv 1.10.8 to check if the issue gets fixed but it persists. The error is quite clear, the imported cv module opencv_xphoto has set a wrong include path.
 Imported target "opencv_xphoto" includes non-existent path
|
|     "/media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/udooqdl/include/opencv"
|

This should be
 "/media/talha/mybook/quad-yocto-build-krogoth/build/tmp/sysroots/udooqdl/usr/include/opencv"
Following is my yocto build environment:
Build Configuration:
BB_VERSION        = "1.30.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "universal"
TARGET_SYS        = "arm-poky-linux-gnueabi"
MACHINE           = "udooqdl"
DISTRO            = "poky"
DISTRO_VERSION    = "2.1.3"
TUNE_FEATURES     = "arm armv7a vfp thumb neon       callconvention-hard       cortexa9"
TARGET_FPU        = "hard"
meta
meta-poky         = "HEAD:444dc2e99b3c3967d9f83380c34bb99077a6ffa8"
meta-oe
meta-multimedia
meta-python
meta-networking   = "HEAD:55c8a76da5dc099a7bc3838495c672140cedb78e"
meta-fsl-arm      = "HEAD:e2254e7b2ded0c2b66b1226f879b3a6d52037b2d"
meta-fsl-arm-extra = "HEAD:2c28e636ec15c2cfd49bc9cebe0bbbcfde95bc7b"
meta-fsl-demos    = "HEAD:a165068f8a0d1cf29aabe4b4053f28be1c2aa492"
meta-rust         = "krogoth:bedc4ad57c01a6e1c9ce11d36ab51b2f2a9e0dac"
meta-udoo         = "HEAD:a01cfce52c52fc942eab4375cd249795ca24c53f"
meta-ros          = "master:619eab0099fbb7bf71c7ddb43e4b50a0450ca40c"

I scanned through the opencv layer and could'nt locate where xphoto is being defined as a target.

I agree, this looks very strange. Did you have a look if there are recent commits to the opencv recipe concerning xphoto in master, which might not be backported to your poky version?
Do you modify opencv in some way, e.g., with a PACKAGECONFIG?

I was facing the same problem with the Krogoth release. Looks like the issue is caused by an incompatibility between opencv 3.1 (provided by meta-openembedded) and cv-bridge (master):
https://github.com/bmwcarit/meta-ros/commit/909662efe72b59d94e74884b62a113831ee659e3 sets cmake variable ANDROID to ON.
When cv-bridge tries to find opencv using <sysroot>/usr/share/OpenCV/OpenCVConfig.cmake the OpenCV_INSTALL_PATH variable is set incorrectly since ANDROID is turned on: https://github.com/opencv/opencv/blob/92387b1ef8fad15196dd5f7fb4931444a68bc93a/cmake/templates/OpenCVConfig.cmake.in#L112-L127 (note the different amount of ../)
This is how I fixed it locally:
opencv_3.1.bbappend:
SRC_URI += "file://fix-install-path.patch"

# Fix for https://github.com/bmwcarit/meta-ros/issues/599
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"

do_install_append() {
    # Fix for https://github.com/bmwcarit/meta-ros/issues/522#issuecomment-310878031
    cp -f ${D}${datadir}/OpenCV/OpenCVModules.cmake ${D}${datadir}/OpenCV/OpenCVModules_.cmake
}

fix-install-path.patch:
Index: git/cmake/templates/OpenCVConfig.cmake.in
===================================================================
--- git.orig/cmake/templates/OpenCVConfig.cmake.in
+++ git/cmake/templates/OpenCVConfig.cmake.in
@@ -114,7 +114,7 @@ get_filename_component(OpenCV_CONFIG_PAT

 if(NOT WIN32 OR ANDROID)
   if(ANDROID)
-    set(OpenCV_INSTALL_PATH "${OpenCV_CONFIG_PATH}/../../..")
+    set(OpenCV_INSTALL_PATH "${OpenCV_CONFIG_PATH}/../..")
   else()
     set(OpenCV_INSTALL_PATH "${OpenCV_CONFIG_PATH}/../..")
   endif()

Should we turn off the ANDROID option, or should we use the proposed solution for those patches here? I am happy to merge any change for this issue, if it is well described and explained with a proper rationale, and it does not break the build with the current master branch of openembedded-core and meta-openembedded. Just open a pull request and I will comment with my expectations.

No longer occurs in the [thud-draft] branch. @Tal-seven < Can this issue be closed?

"Silence implies consent" (see http://wiki.c2.com/?SilenceImpliesConsent).


Support for Speech Synthesis Markup Language (SSML)

Language
Text to speech markup. Each provider implements some standards plus extra features per their conveniences.
Personally more interested in Amazon's one.
Additional resources
https://docs.aws.amazon.com/en_us/polly/latest/dg/supportedtags.html
https://developers.google.com/assistant/actions/reference/ssml
https://docs.microsoft.com/en-us/cortana/skills/speech-synthesis-markup-language

Closed with eb70070.


Fix ios packages after device/simulator split

Tested scenarios:

Building and running with e_sqlite3 on .NET 7 for iOS Simulator
Building and running with e_sqlite3 on legacy Xamarin.iOS for iOS Simulator
Building with e_sqlite3 for iOS Device with .NET 7

Not tested:

Running on device
e_sqlcipher

On unrelated note, we should also fix tvOS builds in the same way once we tackle the iOS ones.

And the testing you did -- I'm guessing you were not using one of the bundles like bundle_e_sqlite3?
The assembly for lib.e_sqlite3.ios should no longer be needed, but the bundle code and packaging still assumes it is there.  I need to adjust some stuff there too.

And the testing you did -- I'm guessing you were not using one of the bundles like bundle_e_sqlite3?

Nope. Here are my test apps:
iostestapps.zip
Essentially, for .NET 7 it's dotnet new ios template with nuget.config (to point to my local builds) and this:
    <PackageReference Include="SQLitePCLRaw.core" Version="2.1.4" />
    <PackageReference Include="SQLitePCLRaw.lib.e_sqlite3.ios" Version="2.1.5-pre20230515124719" />
    <PackageReference Include="SQLitePCLRaw.provider.internal" Version="2.1.4" />

and
SQLitePCL.raw.SetProvider(new SQLitePCL.SQLite3Provider_internal());
...
SQLitePCL.raw.sqlite3_libversion().utf8_to_string()

The legacy one is similarly made from a VS template in a similar manner.

The assembly for lib.e_sqlite3.ios should no longer be needed

If you mean the .dll file then yes, it is unnecessary. It also gets stripped by the linker for device builds, so it may not be a big concern.

It also gets stripped by the linker for device builds, so it may not be a big concern.

The bundle packages contain stuff to prevent the linker from stripping it out.  That's what src/common/embedded_init.cs is for.  It gets called from the bundle initialization code in src/common/batteries_v2.cs.
I need to rip all that out.  But when I tried that last night, something went haywire with the package dependencies, because I'm using dotnet pack with stuff in the csproj for that particular package, so I may need to redo that with a regular nuspec.
It's funny how the simple addition of support for ios arm64 simulator is spidering out all over the place.


[k8s-extension] Update extension CLI to v1.3.2

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
The precondition is to put your code inside this repository and upgrade the version in the pull request but do not modify src/index.json.

k8s-extension

Currently all the testing is done in our forked repository,
pr initiated CI check - https://github.com/AzureArcForKubernetes/azure-cli-extensions/blob/k8s-extension/public/testing/pipeline/k8s-custom-pipelines.yml
CI check for each partner extension - https://github.com/AzureArcForKubernetes/azure-cli-extensions/tree/k8s-extension/public/testing/test/extensions/public
We had got an exception for our cli tests, the checks performed in this repository are basically using the recording file present in 'k8s-extension/azext_k8s_extension/tests/latest/recordings/test_k8s_extension.yaml'.
As mentioned in the comments for this pr: https://github.com/Azure/azure-cli-extensions/pull/5204 , just as we will be working on supporting testing for provisionedClusters we will alsoworking to support testing for appliances(currently needs special hardware configuration). Currently testing for appliances and provisionedClusters is only done manually and it has been verified.  These changes were tested against other clusterTypes for which we support testing in our forked repo and it passed and only then this pr was created.


Fix memory leak

Thank you for the fix (and typst and comemo, I suppose)! I'll get this released soon.


Add liquid handler operation callbacks

A quick pass at adding callback registration to LiquidHandler, generally following your suggestions @rickwierenga. Let me know what you think about this approach. Would you want to handle state tracker transactions in the callback?

This test succeeds intermittently for me locally. My brief investigation suggests that it's failing regularly, but that the tests sometimes finish before the async code raises? I haven't had time to look into it yet.
https://github.com/PyLabRobot/pylabrobot/actions/runs/7363549130/job/20043111792#step:6:397

This test succeeds intermittently for me locally. My brief investigation suggests that it's failing regularly, but that the tests sometimes finish before the async code raises? I haven't had time to look into it yet.

This is likely a threading issue in the simulator backend, that sometimes occurs. I'll have to fix that soon, so for now feel free to ignore it...

Thanks for the great feedback!
Once you've approved the list of allowed methods I'll add the trigger to those. Where in the docs do you think a page on using callbacks should live?

I think 'convenience' methods like return_tips and move_plate, that are essentially just thin wrappers around other methods like drop_tips and move_resource, should not have callbacks: the callback function will be called using the 'slightly-lower-level' method, so it will have get those kwargs, and so if the user wanted to retry they'd need to call this 'slightly-lower-level' method. Additionally, when logging/collecting analytics I doubt people are interested in which exact method called this, since it really doesn't matter and they could refactor their code to not use these methods anytime.
Do you think there's an argument for keeping those callbacks?

I think 'convenience' methods like return_tips and move_plate, that are essentially just thin wrappers around other methods like drop_tips and move_resource, should not have callbacks: the callback function will be called using the 'slightly-lower-level' method, so it will have get those kwargs, and so if the user wanted to retry they'd need to call this 'slightly-lower-level' method. Additionally, when logging/collecting analytics I doubt people are interested in which exact method called this, since it really doesn't matter and they could refactor their code to not use these methods anytime.
Do you think there's an argument for keeping those callbacks?

Makes sense, removed the wrapper methods, let me know how the list looks now.

Looking good!
Now it should just be a matter of adding the callbacks to each method in ALLOWED_CALLBACKS :)

Sweet, edits were enabled. I should have checked before.
Great work on this PR! Good implementation and adds a lot of value!

Awesome! Thanks for the guidance :)

Thank you!


[Feature Request] Add option to prefill favourites

Would be nice to have an option to prefill all games from the favourite list

I've looked through Epic's official documentation and I can't find any public API that offers this info.  I've dug through other people's unofficial documentation of their APIs as well and couldn't find anything there either.  Closing this since I can't find any way to get this info.


Implement [] operator for direct access to elements of a struct

A struct:
struct foo {
  key = 1

  struct bar {
    key = 2
  }
}

Should be accessible via cfg['foo']['key'] or cfg['foo']['bar']['key']

Start out by making this only work for objects of type flexi_cfg::Reader. That should be pretty straight-forward


Error with Linked Icon

Possibly related to Issue #10
Saved settings to object "Stagger Animation".
Traceback (most recent call last):
  File "D:\Donovan\MAXON\plugins\c4d-prototype-converter\c4d_prototype_converter\plugin_main.py", line 895, in Command
    self.do_create()
  File "D:\Donovan\MAXON\plugins\c4d-prototype-converter\c4d_prototype_converter\plugin_main.py", line 787, in do_create
    cnv.create()
  File "D:\Donovan\MAXON\plugins\c4d-prototype-converter\c4d_prototype_converter\plugin_main.py", line 433, in create
    shutil.copy(self.icon_file, files['icon'])
NameError: global name 'shutil' is not defined

I ran into this when trying to convert the Python Expression tag in the attached file.
DelayAnimationExpression.zip

This is the icon file, it was saved on my Desktop.
Sphere.zip
A possible complicating factor is that I'm creating my plugin somewhere other than the default preferences location.

Yup, I forgot or accidentally removed the shutil import at some point.


Cleanup

Description

Cleanup tasks blocks
Cleanup extra documentation

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 88.36%. Comparing base (effa457) to head (b08a33d).

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #106   +/-   ##
=========================================
  Coverage     88.36%   88.36%
  Complexity      117      117
=========================================
  Files            13       13
  Lines           421      421
  Branches         68       68
=========================================
  Hits            372      372
  Misses           17       17
  Partials         32       32

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


removes notifications automatically

When I schedule a notification and close the app, notification appears it is ok. but removes after a second. How can I stop it.
Android
react-native:"0.63.4"
notifee:"^3.0.4"
const trigger = {
type: TriggerType.TIMESTAMP,
alarmManager: {
allowWhileIdle: true
},
timestamp: date.getTime(),
};

Hey, thanks for letting us know. There was an issue that was fixed in version 4.0.1, but I'd recommend upgrading notifee to the latest version.
Please reopen if this is still an issue after upgrading

@oguzhan10 your project is incompatible with gradle 7? That seems odd, I'm not aware of gradle not being compatible with gradle 7? Or is because you're project is still on react-native 0.63 and 0.63 is incompatible? That may be, it's from nearly 2 years ago, so I'd upgrade react-native as well https://react-native-community.github.io/upgrade-helper/ then I know current react-native versions work fine with gradle 7 (and as a bonus, they actually compile with Xcode 12.5+, work well on ios 14 and 15 and android 10/11/12...)

ok then I need to upgrade react-native version first I think to become compatible with new notifee version? Project created 2 years ago :(

Mobile phones are one of the fastest development areas in software, and the notification APIs on mobile phone specifically change rapidly in order for Apple and Google to refine the user experience in the face of apps always trying to abuse user's attention.
You should expect to spend a reasonable amount of time every 6 months or so keeping react-native and this library up to date in response to new operating system releases from Apple and Google. Your project will never be truly "code it and forget it" as long as you are touching areas of mobile phones that consume user's attention (notifications) or affect privacy etc.

All the answers here when I search for that error seem sensible: https://duckduckgo.com/?q=Type+'CheckManifest'+property+'manifest'+has+%40input+annotation+used+on+property+of+type+'File'.&t=newext&atb=v277-1&ia=web
It appears you have not upgraded react-native fully (perhaps check android/build.gradle changes here https://react-native-community.github.io/upgrade-helper/) and the android gradle plugin is out of date?


Use SciMLBase over OrdinaryDiffEq where possible

This PR is an attempt to remove our dependency on OrdinaryDiffEq, in favor of using the lighter weight package, SciMLBase.
Unfortunately, we can't remove the dependency because, for example, ODE.Tsit5() is an ODE algorithm that is (I think) first defined in OrdinaryDiffEq. Same goes for a bunch of methods defined in type_getters.jl:
is_explicit_CTS_algo_type(alg_or_tableau) =
    alg_or_tableau <: CTS.ERKAlgorithmName

is_imex_CTS_algo_type(alg_or_tableau) =
    alg_or_tableau <: CTS.IMEXARKAlgorithmName

is_implicit_type(::typeof(ODE.IMEXEuler)) = true
is_implicit_type(alg_or_tableau) =
    alg_or_tableau <: Union{
        ODE.OrdinaryDiffEqImplicitAlgorithm,
        ODE.OrdinaryDiffEqAdaptiveImplicitAlgorithm,
    } || is_imex_CTS_algo_type(alg_or_tableau)

is_ordinary_diffeq_newton(::typeof(ODE.IMEXEuler)) = true
is_ordinary_diffeq_newton(alg_or_tableau) =
    alg_or_tableau <: Union{
        ODE.OrdinaryDiffEqNewtonAlgorithm,
        ODE.OrdinaryDiffEqNewtonAdaptiveAlgorithm,
    }

is_imex_CTS_algo(::CTS.IMEXAlgorithm) = true
is_imex_CTS_algo(::SciMLBase.AbstractODEAlgorithm) = false

is_implicit(::ODE.OrdinaryDiffEqImplicitAlgorithm) = true
is_implicit(::ODE.OrdinaryDiffEqAdaptiveImplicitAlgorithm) = true
is_implicit(ode_algo) = is_imex_CTS_algo(ode_algo)

is_rosenbrock(::ODE.Rosenbrock23) = true
is_rosenbrock(::ODE.Rosenbrock32) = true
is_rosenbrock(::SciMLBase.AbstractODEAlgorithm) = false
use_transform(ode_algo) =
    !(is_imex_CTS_algo(ode_algo) || is_rosenbrock(ode_algo))

additional_integrator_kwargs(::SciMLBase.AbstractODEAlgorithm) = (;
    adaptive = false,
    progress = isinteractive(),
    progress_steps = isinteractive() ? 1 : 1000,
)
additional_integrator_kwargs(::CTS.DistributedODEAlgorithm) = (;
    kwargshandle = ODE.KeywordArgSilent, # allow custom kwargs
    adjustfinal = true,
    # TODO: enable progress bars in ClimaTimeSteppers
)

is_cts_algo(::SciMLBase.AbstractODEAlgorithm) = false
is_cts_algo(::CTS.DistributedODEAlgorithm) = true

A bunch of these ODE. types are (I think) first defined in OrdinaryDiffEq.jl.

Increasing the jet failures is kind of a bummer, I'm going to see if I can break this down a bit to avoid that, or at least see where it's happening.

Actually, it looks like load times have improved quite a bit. Maybe it's a fluke, but I think this is generally headed in the right direction if we eventually remove OrdinaryDiffEq in favor of SciMLBase (which we can get away with once we convert the indefinite integrals that we currently depend on: search for ODE.solve( to find).

bors r+


template setting and schema

Hi,
how would one set the template inside the schema? The schema has to be on client and server. So template: Template.mySuggestView fails because Template is not available on the server.
Thanks for the heads up

Like this:
{
  template: Meteor.isClient && Template.mySuggestView
}


[BUG] - occasional timeout trying to send message to service bus queue

Describe the bug
Our asp.net core 3.1.0 application is running on Azure Web App for Windows Containers as a docker image.
Every so often we are seeing calls to add a message to a service bus queue, fail with a timeout:

Stack trace in text format:

Microsoft.Azure.ServiceBus.ServiceBusCommunicationException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. ErrorCode: TimedOut
---> System.Net.Sockets.SocketException (10060): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
at Microsoft.Azure.ServiceBus.ServiceBusConnection.CreateConnectionAsync(TimeSpan timeout)
at Microsoft.Azure.Amqp.FaultTolerantAmqpObject1.OnCreateAsync(TimeSpan timeout)    at Microsoft.Azure.Amqp.Singleton1.GetOrCreateAsync(TimeSpan timeout)
at Microsoft.Azure.Amqp.Singleton1.GetOrCreateAsync(TimeSpan timeout)    at Microsoft.Azure.ServiceBus.Amqp.AmqpLinkCreator.CreateAndOpenAmqpLinkAsync()    at Microsoft.Azure.ServiceBus.Core.MessageSender.CreateLinkAsync(TimeSpan timeout)    at Microsoft.Azure.Amqp.FaultTolerantAmqpObject1.OnCreateAsync(TimeSpan timeout)
at Microsoft.Azure.Amqp.Singleton1.GetOrCreateAsync(TimeSpan timeout)    at Microsoft.Azure.Amqp.Singleton1.GetOrCreateAsync(TimeSpan timeout)
at Microsoft.Azure.ServiceBus.Core.MessageSender.OnSendAsync(IList1 messageList)    --- End of inner exception stack trace ---    at Microsoft.Azure.ServiceBus.Core.MessageSender.OnSendAsync(IList1 messageList)
at Microsoft.Azure.ServiceBus.RetryPolicy.RunOperation(Func1 operation, TimeSpan operationTimeout)    at Microsoft.Azure.ServiceBus.RetryPolicy.RunOperation(Func1 operation, TimeSpan operationTimeout)
at Microsoft.Azure.ServiceBus.Core.MessageSender.SendAsync(IList`1 messageList)

Expected behavior
Wouldn't expect a timeout to be occuring with everything running on azure infrastructure.
Actual behavior (include Exception or Stack Trace)
As per above.
To Reproduce
As per the above stack trace, we aren't doing anything unusual, just sending a message to a queue.
The application is deployed to Azure App Service for Windows containers and is built from the base image: FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 AS base
Our azure service bus in the "standard" pricing tier, in the "West Europe" region.
Our azure app service plan is in the "PC2: 1" tier, in the West Europe region, with one app service which is the windows container.
Environment:

Name and version of the Library package used: Microsoft.Azure.ServiceBus 4.1.3
Hosting platform or OS and .NET runtime version (dotnet --info output for .NET Core projects): Azure App Service for Windows Containers (West Europe region, PC2: 1 pricing tier.
IDE and version : Microsoft Visual Studio Professional 2019 Version 16.7.2

Hi @dazinator.   Thank you for your feedback and we regret that you're experiencing difficulties.  Unfortunately, timeouts and transient failures are inherent in any network environment, whether running entirely within the Azure infrastructure or elsewhere.   Applications should expect to encounter occasional transient network issues and guard against them.
To assist with these scenarios, each of the Service Bus clients follows a retry policy to maximize its ability to recover from transient issues.  Because application scenarios have different tolerances for the length of operations and classifying failures, the default retry policy attempts a balanced approach.  If retries are exhausted, transient exceptions will be surfaced to the application so that it can make decisions appropriate to its context.
If your application favors more aggressive retries, the Service Bus library allows configuration of the retry policy that can be specified when constructing the various Service Bus clients.   For example, the QueueClient accepts a retry policy as the last argument in all of its constructor overloads.

Ok thanks. I guess I was just concerned that the in-built tolerance didn't catch the transient fault within azure infrastructure. We will look at taking control over the retry policy, but also moving to the premium tier as I understand the standard tier service bus is shared infrastructure and subject to much more variability in performance. Thanks for the pointers.


[broker] Allow to update Topic properties

Search before asking

[X] I searched in the issues and found nothing similar.

Motivation
Currently (Pulsar 2.11) it is possible to create a topic and set "topic properties", but it is not possible to change them later.
It would be useful to have an API to update the properties.
Also, internal components (like Protocol Handlers) should be notified about these changes, possibly using the mechanism introduced by PIP-241 https://github.com/apache/pulsar/issues/19224
Solution
No response
Alternatives
No response
Anything else?
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR!

@eolivelli i'd like to help if nobody is working on this.


HoloLens_Mount.stp appears to be corrupted

HoloLens_Mount.stp appears to be corrupted. My team is unable to open it, saying there may be an issue with saving this.

What software are you using to open the stp?
You can see my pull request here, which adds an stl of this file:
https://github.com/Microsoft/HoloLensCompanionKit/pull/48


[Enhancement]Metadata Utilities: Allow regex in Metadata Editor search box

It would be great to seach metadata with regular expressions to make it possible to search for data that contain either one or another term or several terms anywhere in the name for example.

Implemented and will be available with version 1.0


Replace azure-storage per deprecation notice

Replace azure-storage per deprecation notice: "Please note: newer packages @azure/storage-blob, @azure/storage-queue and @azure/storage-file are available as of November 2019 and @azure/data-tables is available as of June 2021. While the legacy azure-storage package will continue to receive critical bug fixes, we strongly encourage you to upgrade. Migration guide can be found: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/MigrationGuide.md"

Hello @owjsub ,
Thank you for your proposal. I've marked it as a feature request on our internal dashboard.

There are several other deprecated packages as well it seems:
npm WARN deprecated<EMAIL_ADDRESS>this library is no longer supported
npm WARN deprecated<EMAIL_ADDRESS>Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated<EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated<EMAIL_ADDRESS>Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up

I'm closing this issue as fixed. The azure-storage package was replaced in version 3.0.0.
@DanielBrown-ranger1968, all mentioned packages were removed or updated except<EMAIL_ADDRESS>and<EMAIL_ADDRESS>We don't have plans to update them at this moment.


Overhaul sgnmi_cli documentation and usage text

Overhaul sgnmi_cli usage text.

Convert sgnmi_cli.rst to sgnmi_cli.md and overhauled its content.

Rationale:

The sgnmi_cli.rst file looked really bad when rendered. Given that the original Stratum document is in Markdown, I opted to revert to that format rather than learn the Restructured Text equivalents. Among other things, it makes it easier to compare the two when looking for differences.
The usage text (which makes up the bulk of the document) had a number of readability problems, inherited from the original program. I reworked it to make better use of horizontal space and added a commands section in place of the in-line lists of choices.


Use a structure with different fields to save the quote, instead of one string.

like
struct quotation

author
context
number
quote

Don't forget to code a beautiful generic print function.
Don't forget to re-code the reformat functions for this structure.


[bug]  Data Loss in Batch Embedding Processing for llamindex

Describe the Bug
In the llamindex BaseEmbedding class:
class BaseEmbedding(TransformComponent, DispatcherSpanMixin):
    @dispatcher.span
    def get_text_embedding_batch(
        self,
        texts: List[str],
        show_progress: bool = False,
        **kwargs: Any,
    ) -> List[Embedding]:
           """Get a list of text embeddings, with batching."""
          cur_batch: List[str] = []
          result_embeddings: List[Embedding] = []

          queue_with_progress = enumerate(
              get_tqdm_iterable(texts, show_progress, "Generating embeddings")
          )

          model_dict = self.to_dict()
          model_dict.pop("api_key", None)
          for idx, text in queue_with_progress:
              cur_batch.append(text)
              if idx == len(texts) - 1 or len(cur_batch) == self.embed_batch_size:
                  # flush
                  dispatcher.event(
                      EmbeddingStartEvent(
                          model_dict=model_dict,
                      )
                  )
                  with self.callback_manager.event(
                      CBEventType.EMBEDDING,
                      payload={EventPayload.SERIALIZED: self.to_dict()},
                  ) as event:
                      embeddings = self._get_text_embeddings(cur_batch)
                      result_embeddings.extend(embeddings)
                      event.on_end(
                          payload={
                              EventPayload.CHUNKS: cur_batch,
                              EventPayload.EMBEDDINGS: embeddings,
                          },
                      )
                  dispatcher.event(
                      EmbeddingEndEvent(
                          chunks=cur_batch,
                          embeddings=embeddings,
                      )
                  )
                  cur_batch = []

          return result_embeddings

When embed_batch_size < len(texts), multiple EmbeddingEndEvent instances are emitted. However, the event handler in openinference.instrumentation.llama_index._handler.py processes these events by using keys like {EMBEDDING_EMBEDDINGS}.{i}.{EMBEDDING_TEXT} to store data:
@_process_event.register
def _(self, event: EmbeddingEndEvent) -> None:
    for i, (text, vector) in enumerate(zip(event.chunks, event.embeddings)):
        self[f"{EMBEDDING_EMBEDDINGS}.{i}.{EMBEDDING_TEXT}"] = text
        self[f"{EMBEDDING_EMBEDDINGS}.{i}.{EMBEDDING_VECTOR}"] = vector

This causes only the last batch of data to be saved, while data from earlier batches is overwritten and lost.

To Reproduce

Use llamindex to construct a VectorStoreIndex.
Ensure the number of nodes exceeds the batch size defined in the embedding model.

Expected Behavior
All vector data should be retained, ensuring no data is lost during the embedding process.

Screenshots
(No screenshots provided.)

Desktop (please complete the following information)

OS: Windows
Version: 11

Additional Context
The issue occurs due to the handling of keys in the event processing, where unique keys are not assigned to each batch's data.

change like this work fine
@_process_event.register
def _(self, event: EmbeddingEndEvent) -> None:
    index = self._attributes.get("embedding_index", 0)
    for i, (text, vector) in enumerate(zip(event.chunks, event.embeddings)):
        self[f"{EMBEDDING_EMBEDDINGS}.{index}.{EMBEDDING_TEXT}"] = text
        self[f"{EMBEDDING_EMBEDDINGS}.{index}.{EMBEDDING_VECTOR}"] = vector
        index += 1
    self["embedding_index"] = index

Hey @hu9029 thanks for the detailed report! Makes sense to me. Seems like we need to track the index of these embeddings as the events fire.


chore(package): set engine compatibility

Description
Set minimal engine compatibility to Node 18.

:tada: This PR is included in version 1.1.0-alpha.12 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Invoke Program.Save() after disabling PB (issue #22)

It allows ingame scripts to perform cleanup when PB gets damaged by PBLimiter.

to add though, after merging i will still add an option to disable this to the config. there could be situations where you would not want this due to people misusing the feature.


WebfluxNotIncludedTests fails with TypeNotPresentExceptionProxy

org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class [org.springframework.cloud.gateway.test.WebfluxNotIncludedTests$Config]; nested exception is java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
	at org.springframework.cloud.gateway.test.WebfluxNotIncludedTests.noWebfluxWorks(WebfluxNotIncludedTests.java:34)
Caused by: java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
	at org.springframework.cloud.gateway.test.WebfluxNotIncludedTests.noWebfluxWorks(WebfluxNotIncludedTests.java:34)

Missing class is
java.lang.NoClassDefFoundError: org/springframework/web/reactive/config/WebFluxConfigurer

This one looks like a bug in the Spring Boot condition that's only now showing up.
The org.springframework.boot.autoconfigure.security.reactive.ReactiveSecurityAutoConfiguration has a @ConditionalOnClass guard but it doesn't include any WebFlux clases. It's outcome ends up matching:
`@ConditionalOnClass found required classes 'reactor.core.publisher.Flux', 'org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity', 'org.springframework.security.web.server.WebFilterChainProxy'`

That means the inner EnableWebFluxSecurityConfiguration class gets processed and org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity is read. That is meta-annotated with @Import but some of the classes imported implement WebFluxConfigurer which isn't on the classpath.
I think it used to work because meta-annotations were previously read using ASM and wouldn't fail so early. I think the @ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.REACTIVE) would end up filter the inner class so it never actually ran.

We can easily fix the Spring Boot condition, but I wonder if there is something we should also do in Framework. We've considered the scenario where a meta-annotation causes a ClassNotFoundException but we've not considered the situation where the annotation class exists but an attribute class does not.


Added changes to reset provider region after user changes provider type

Added changes to reset provider region value in case user changed provider type after selecting provider region for a different type and then changed type to "Openstack". Added spec test to verify.
Added a description method to EmsOpenstack, to prevent from blowing up in UI incase somehow user's db has provider_region column populated for Openstack Provider.

https://bugzilla.redhat.com/show_bug.cgi?id=1229104
https://bugzilla.redhat.com/show_bug.cgi?id=1229781
@Fryguy @dclarizio please review.
Steps to recreate:
Try to Add a new cloud provider, select provider type as "Amazon EC2", select a value in region pull down, then change provider type to "Openstack" fill in appropriate data and add provider, when trying to go to summary screen of newly added provider it blows up.

:+1:

Actually, what will the value of the provider_region column be?  It should become nil if you switch to OpenStack.

@fryguy, provider_region is being set to nil when type is switched to openstack

Verified fix


Compile / sbt.Keys.packageBin := bundle.value can cause infinite recursive loop

As a consequence of https://github.com/sbt/sbt-osgi/pull/95, its possible to create an infinite recursive loop which means that sbt never ends up fully starting.
To reproduce this, simply change https://github.com/sbt/sbt-osgi/blob/main/src/main/scala/com/typesafe/sbt/osgi/SbtOsgi.scala#L47 to (fullClasspath in Compile).value.map(_.data) and then navigate into src/sbt-test/sbt-osgi/test-05-exportJars/ to run the test (i.e. run sbt osgiBundle).
You will notice that sbt stalls forever, failing to start. My suspicion is that there is an interdependency between

bundle := Osgi.bundleTask
(fullClasspath in Compile).value.map(_.data)
Compile / sbt.Keys.packageBin := bundle.value

Which causes the sbt task graph to not complete when evaluated. Apparently the intention of https://github.com/sbt/sbt-osgi/pull/95 was to prevent asynchronicity issues (see https://github.com/sbt/sbt-osgi/pull/79#issue-1884046058) by forcefully evaluating Compile / sbt.Keys.packageBin.
@romainreuillon Maybe there is a better way to solve this otherwise I think I would have to revert the change since you can easily prevent sbt from even starting.

I am not really familiar with how sbt-osgi is used, but do all sbt-osgi treat bundle to be same as packageBin, or only some? If people do not make the distinction between the regular JAR and OSGi bundle JAR, then maybe the plugin should reimplement packageBin instead of adding bundle? That might reduce the overall confusion around how the plugin is expected to behave with regard to publishing or interaction with other plugins.
On the other hand, the whole point of OSGi iirc is to create a module system on top of the JAR ecosystem by allowing private import etc, so I don't understand how it's useful to treat raw JAR as your bundle. Maybe it's a special case only for open source libraries that are expected to be part of module participant, but not fully take advantage of it? Either case, if we want to support Compile / sbt.Keys.packageBin := bundle.value, then bundle can't transitively call packageBin. fullClasspath depends on exportedProducts, which depends on packageBin when exportJars is true.

I am not really familiar with how sbt-osgi is used, but do all sbt-osgi treat bundle to be same as packageBin, or only some?

I am also familiarizing myself with the sbt-osgi as well, but from what I can tell users basically treat bundle in the same way as packageBin which is why PR's like https://github.com/sbt/sbt-osgi/pull/32 exist.

If people do not make the distinction between the regular JAR and OSGi bundle JAR, then maybe the plugin should reimplement packageBin instead of adding bundle? That might reduce the overall confusion around how the plugin is expected to behave with regard to publishing or interaction with other plugins.

From what I can tell this is definitely the ideal case, but there appears to be asynchronicity issues which is whats adding the complications here. Specifically sbt-osgi's bundle needs to be run either before or after packageBin if thats not the case then some data ends up missing which sbt-osgi needs to populate version information in the metadata, see response here https://github.com/sbt/sbt-osgi/issues/102#issuecomment-1882581926, specifically

There seems to be no API in sbt, that ensures that the result of tasks, once they are done, stays stable. I have no idea (and also did not receive any helpful idea from others) how this can be fixed.

On the other hand, the whole point of OSGi iirc is to create a module system on top of the JAR ecosystem by allowing private import etc, so I don't understand how it's useful to treat raw JAR as your bundle. Maybe it's a special case only for open source libraries that are expected to be part of module participant, but not fully take advantage of it?

So in my specific case, the original problem I hit is that since sbt-osgi was changed to use (dependencyClasspathAsJars in Compile).value.map(_.data) ++ (products in Compile).value to detect which jar's to automatically include in the bundle, it no longer worked with edge cases such as sbt-assembly. I ended up solving this issue by just setting the explodedJars setting (i.e. https://github.com/apache/incubator-pekko/blob/main/project/OSGi.scala#L85-L90) which solved the problem, but I guess can be argued isn't entirely clean?

Either case, if we want to support Compile / sbt.Keys.packageBin := bundle.value, then bundle can't transitively call packageBin. fullClasspath depends on exportedProducts, which depends on packageBin when exportJars is true.

I am still somewhat unsure whether this is an actual problem or not, the reason behind wanting to use fullClasspath was to fix an issue in Pekko where we had a bespoke case of creating fatjar using sbt-assembly that had zero dependencies and because that jar had zero dependencies it wasn't contained within dependencyClasspathAsJars (but is still contained within fullClasspath). So one can make an argument that this really is an exceptional case and hence the usage of explodedJars is appropriate.
On the other hand, its not the best user experience because if you don't do this, you basically create broken jar's which you only figure out at runtime in another project that includes your jar's as a standard dependency.


Incompatible with React 19

This library makes use of React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, which is removed in React 19.
Therefore, when trying to use it with React 19, you get "TypeError: Cannot read properties of undefined (reading 'ReactCurrentOwner')".
Reproduction: https://codesandbox.io/p/sandbox/fluentui-react-components-with-react-19-g4g5pw?file=%2Fsrc%2FApp.tsx
The error happens here: https://github.com/microsoft/use-disposable/blob/3e3d4a39f2518d6e5df8a9976a188624a3e733a7/src/useIsStrictMode.ts#L6-L9

#32 should fix the throwing in React 19. However, there are still two tests that fail due to effect ordring differences. Will need to look further there

Seems that Next.js with their canary versions is also affected, https://github.com/microsoft/fluentui/issues/31930.

Any Updates?

@elliot-huffman nope, it's not a high prio item now.


I'm not sure I've covered all of them, so feel free to point out missing ones & I'll add those as well.

Thanks! :smile:


Replace time.Now() with clock.Clock.Now() in pkg/workload/admissionchecks

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Replaces time.Now() to use the Now() function present inside clock package.
Which issue(s) this PR fixes:
Part of #3380
Special notes for your reviewer:
This PR is work-in-progress.
NONE

@mbobrovskyi Hey, can you please check if this was the refactor expected in admissionchecks.go. Post approval, i shall also proceed to update the tests.

/ok-to-test

/cc

@mbobrovskyi Actually, i haven't updated the tests yet. I just wanted to confirm if this is how you wanted me to fix the clock issue. I called clock to multiple levels.

@mbobrovskyi i updated the test. Now, i just have to figure out one thing
https://github.com/kubernetes-sigs/kueue/blob/6ac33dec0476a452c3406d39b15d9eaff74f44bc/cmd/importer/pod/import.go#L202
Here, we have to pass clock. I tried adding clock argument to admitWorkload but couldn't find clock instance anywhere to pass it to the function

/retest

kueue/cmd/importer/pod/import.go

Mmm. Initialize new instance of clock.

Mmm. Initialize new instance of clock.

and directly pass realClock ??

Mmm. Initialize new instance of clock.

and directly pass realClock ??

If it is using only one time than yes.

/retest

Hey @mbobrovskyi, any updates on this PR ?


indexing zero-length lists

.NET 6 throws ArgumentOutOfRangeException when executing the following code:
https://github.com/IronLanguages/ironpython2/blob/aa0526d4b786ad1fabbedbf91459903b8dc01ba3/Src/IronPython/Runtime/Operations/ListOfTOps.cs#L145-L147

It seems that such code is not used in IronPython 2. I found this bug when reusing the code for a Unity IL2CPP compatible .NET Python implementation.

It seems that such code is not used in IronPython 2. I found this bug when reusing the code for a Unity IL2CPP compatible .NET Python implementation.

Indeed, looks like extended slicing doesn't work with List<T> and this code is never invoked.
Doesn't appear to be an issue with IronPython 3 (the code has changed since it split from ironpython2).


Update MovieGenreViewModel to contain only properties in stead of fields

It's odd to have two PUBLIC fields and two public properties. Those should all be properties I think

Thank you for the contribution, @LocalJoost! We're currently in a content freeze. This change will be merged on Monday.


Appstudio update test-component-pac-gvyy

Pipelines as Code configuration proposal

Pipelines as Code CI/test-component-pac-gvyy-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
8 seconds
init

✅ Succeeded
17 seconds
clone-repository

✅ Succeeded
52 seconds
build-container

✅ Succeeded
10 seconds
inspect-image

✅ Succeeded
10 seconds
deprecated-base-image-check

✅ Succeeded
13 seconds
clair-scan

✅ Succeeded
34 seconds
clamav-scan

✅ Succeeded
8 seconds
sbom-json-check

✅ Succeeded
16 seconds
label-check

✅ Succeeded
16 seconds
optional-label-check

✅ Succeeded
6 seconds
show-summary

Pipelines as Code CI/test-component-pac-gvyy-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
8 seconds
init

✅ Succeeded
17 seconds
clone-repository

✅ Succeeded
52 seconds
build-container

✅ Succeeded
10 seconds
inspect-image

✅ Succeeded
10 seconds
deprecated-base-image-check

✅ Succeeded
13 seconds
clair-scan

✅ Succeeded
34 seconds
clamav-scan

✅ Succeeded
8 seconds
sbom-json-check

✅ Succeeded
16 seconds
optional-label-check

✅ Succeeded
16 seconds
label-check

✅ Succeeded
6 seconds
show-summary


Get AERO_PROVIDER=GMICHEM working and necessary changes in AGCM.rc to…

… run
Allow AERO_PROVIDER=GMICHEM and make necessary mods to AGCM.rc to run with it (aerosol optics files)

This PR should have the approval of @mmanyin

I'll approve since @mmanyin says this looks good.


TypeError: ref.startsWith is not a function

Same error but was not fixed by following #16
Here's my deployment - https://vercel.com/nestdotland/analyzer/8esvs9qzp
and the code - https://github.com/nestdotland/analyzer/blob/master/playground/api/index.ts

Thanks for the repro. Should be fixed by #35.

Can you try out v0.7.0 and let me know if that fixes it for you?


Option to always hide tabs, even if sidebery is closed, and option to hide the entire address bar.

Add a option to hide tabs even if sidebery is closed.
Add a option to hide the address bar / toolbar.

Thank you for this theme, I love it.

I just updated to the latest release of EdgeFr, and giving this 'sidebery' business a whirl. I don't know if we need a 3rd party addon for this if the same experience can be simply replicated from the CSS already. Please take a look at https://www.reddit.com/r/FirefoxCSS/comments/obw2wm/edgestyle_vertical_tabs_for_firefox_with_tab/
Again, I'm not tooo familiar with all the features sideberry offers and/or if the additional bloat is really worth it, so let me know if I'm missing out on something truly great.

Add a option to hide tabs even if sidebery is closed.

Add a option to hide the address bar / toolbar.

Thank you for this theme, I love it.

The first one may not be possible without duplicating all of the code used in hiding the tabs toolbar, which I would prefer not to do if I can. You could modify the chrome/tweaks/hide-tabs-bar.css file on your system, which would just involve replacing the selector:
/* FROM: */
:root:not([customizing]):has(#sidebar-box[sidebarcommand="[extention-id]"]:not([hidden])) {
  /* ... */
}

/* TO: */
:root:not([customizing]) {
  /* ... */
}

For the second one, do you mean permanently? Or like an auto hide option where it is activated when moving the mouse to the top? There is already the full screen mode where this possible, though that wouldn't work for a "windowed" mode.

can't you use the new nested seelctors in css to do that?

auto-hide

can't you use the new nested seelctors in css to do that?

auto-hide

I already use the nested rules, but you can't really mix media rules (used for tweaks) with regular rules (which target the elements themselves) easily.
The problem is that only one selector type can be applied without breaking functionality of the other option: always hidden OR hidden when Sidebery is active.
I can't change the selectors based on media rules, unless CSS adds support for variables inside selectors or mixins (reusable styles). The only way I know this can be accomplished is by duplicating the contents of the rules and putting them in separate media queries.
For the auto-hiding nav-bar, I will look into it but it may be out of scope of this theme.

could you switch to using SCSS, i think its super-set so shouldn't be an issue.

I have thought about using a preprocessor, but that would make is a bit harder for others to modify the CSS as SCSS doesn't seem to support outputting nested CSS code and others may not have SCSS installed or know how to use it.

I just updated to the latest release of EdgeFr, and giving this 'sidebery' business a whirl. I don't know if we need a 3rd party addon for this if the same experience can be simply replicated from the CSS already. Please take a look at https://www.reddit.com/r/FirefoxCSS/comments/obw2wm/edgestyle_vertical_tabs_for_firefox_with_tab/
Again, I'm not tooo familiar with all the features sideberry offers and/or if the additional bloat is really worth it, so let me know if I'm missing out on something truly great.

The theme used in the Reddit post you linked uses the Tab Center Reborn extension, which is similar to Sidebery (but with less options/features, e.g. tab tree structure).
I was originally going to make my own version of that theme (I even submitted some bug fixes and features), but I started using Sidebery due to the features it offers, so I made a theme for that instead.

P.S. if there's some way to include the focused singular tab as the header like Edge, would be more complete

I will give the title bar appearance a try and see if that can be added.


Change blocks depending on input

Is it possible to change the blocks based on the current input?
In cleave.js this could be achieved by destroying the Cleave instance and initializing a new one with updated config. Since cleave-es6 only exposes the custom element and not the constructor this is not possible.
Updating the data-config property also has no effect.
I made a small example to better showcase what I want to achieve: https://stackblitz.com/edit/js-t5repw

@kleinph reinit seems like overkill for the task :-)
you can do it like so, but i've also added a setBlocks method that is much more elegant. don't forget you can get the instance from the element using getCleave
                const inst = el.getCleave();

                // Update config with new blocks.
                inst.setBlocks(blocks);

                // Update data-config with new blocks.
                // el.dataset.config = JSON.stringify({
                //     ...config,
                //     blocks,
                // });
                // el.init();

https://github.com/lekoala/cleave-es6/releases/tag/1.0.3

closing, feel free to reopen if you need something else

Thanks again for implementing this so quickly!
I noticed one small problem:

enter AT00 3333 3333 0000 1111
change AT to BE
the last block (1111) remains, altough I would expect it to be cut off

PS: Sorry for the late reply, I was on vaction.

@kleinph yes, you can of course run formatInput(el.value) just after that, but it's not ideal. in fact, the block should change before the formatting itself (listening on input does it after)
i added two hooks : beforeInput and afterInput and corresponding events. They allow you to adjust things better (and it works also for copy paste for example)
        const BLOCKS = {
                AT: [4, 4, 4, 4, 4],
                BE: [4, 4, 4, 4],
                __: [4, 4, 4, 4, 4, 4, 4, 4, 2],
            };

            const el = document.getElementById('variable-input-el');
            const config = JSON.parse(el.dataset.config);

            el.addEventListener('cleave.valuechanged', (ev) => {
                console.log("value changed", ev.detail)
            })

            el.addEventListener('cleave.beforeinput', (ev) => {
                // Determine blocks based on first two characters.
                const code = event.target.value.slice(0, 2) || '__';
                const blocks = BLOCKS[code] ?? BLOCKS['__'];

                const inst = el.getCleave();
                inst.setBlocks(blocks);
            });


Implement sync_timestamps

Allows to resample (using interpolation for numeric values and shifting for strings) all streams to have their timestamps sample-wise in sync with the fastest stream.
Example
streams, fileheader = load_xdf(filename, sync_timestamps='linear')
This might help adress https://github.com/sccn/xdf/issues/24  and https://github.com/mne-tools/mne-python/issues/5180

did all tests interactively,  but i plan to write some test cases this week,  so no need to hurry.

@agricolab
Do you mind moving this PR to https://github.com/xdf-modules/xdf-Python?
(Unfortunately I can't transfer issues between organizations)

Is there a way to transfer between repositories? xdf-python does not show as option when changing the base... Googling didn't help either, it seems i have to clone xdf-python, add changes and create a new pull request.  So, unless you have a better idea, will do asap.

Unfortunately we can’t transfer issues or PRs across organizations. Linking to the old PR is the best we can do.

Done in https://github.com/xdf-modules/xdf-Python/pull/1


V0.3.0

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Primary Components Effected
Please mark one option with an "x".

[x] Shifter (Core CLI and Server Application)
[x] Shifter UI (The Web Interface)
[ ] Cross Component Configuration (.github workflows, templates, docs, .MD files)

Type of change
Please mark one option with an "x".

[x] #RELEASE New Collection of Features (containing breaking and non-breaking changes)
[x] #FT New feature (non-breaking change which adds functionality)
[ ] #BUG Bug Fix (non-breaking change which fixes an issue)
[ ] #PATCH Patch (non-breaking change which modifies only non-code object [Docs, Readme])

Developer / Author Notes
Please feel free to provide any additional notes, content or context relating to this PR and subsequent contribution.

Pushing for v0.3.0 to go into main - any additional changes needed we should go for point releases.

v0.3.0 ... Completed.


[onnx] Disable logging in non-verbose

From torch 1.10 support we are passing verbose=True to enable doc_string but it makes stdout dirty so here is a workaround for it using torch.onnx logging feature introduced in torch 1.12.

Ref https://github.com/pytorch/pytorch/commit/54a6942f8ddc5e9d5277938e163453e110432c5a
Ref https://github.com/pfnet/pytorch-pfn-extras/pull/497

/test

/test


Use :items data for TimeStackedBarChart.vue

改善詳細 / Details of Improvement

When cursor hover on Bar of Time Stack Bar Chart, it will show "都內" or "その他" now
But this two line is fixed in TimeStackedBarChart.vue
So you can't modify it from attribution of time-stacked-bar-chart
It will make TimeStackedBarChart.vue more useable

スクリーンショット / Screenshot (Before)

期待する見せ方・挙動 / Expected behavior (After)

@PichuChen
Can I try this issue?

@PichuChen
I will create draft pull request to notify my progress today. Please give me more time.

@PichuChen
Created draft pull request. If it is OK, please push "Ready for review"!


Why create and return a task?

Why does this transform hello() into:
_ttemp = hello()
if inspect.iscoroutine(_ttemp):
    _ttemp = asyncio.create_task(_ttemp)
    await _ttemp
_ttemp

instead of
_ttemp = hello()
if inspect.iscoroutine(_ttemp):
    _ttemp = await _ttemp
_ttemp

??

Basically, I have two options here:

Add training wheels to asyncio so it's a little more ergonomic (this is the Task() approach), or
Try to remove it from top-level code (this is what you're suggesting).

I see the appeal of (2), except it changes the semantics of asynchronous Python code depending on whether you're running in the top level of an ipython cell or not. The Task() option still allows/encourages you to use "await", so you can run the same code with and without awaitless.

The suggested code would still allow await. Why encourage using it? The README already implies the user shouldn't have to.

it changes the semantics of asynchronous Python code depending on whether you're running in the top level of an ipython cell or not.

This is already the case when you transform assignments:
In [1]: async def task(i): print(f'doing task {i}')

In [3]: t1 = task(1)

In [4]: t2 = task(2)

In [5]: tasks = [t1, t2]

In [6]: import asyncio

In [8]: await asyncio.gather(*tasks)
doing task 1
doing task 2
Out[8]: [None, None]

In [9]: load_ext awaitless

In [10]: t1 = task(1)
doing task 1

In [11]: t2 = task(2)
doing task 2

Shifting time of execution from the gather() call to the execution of the inserted AST nodes is deliberate - that's the primary way we improve asyncio ergonomics for interactive code. So, yes, that's a semantic change but it's also the whole point.
It's also why we need something future-like instead of a coroutine - we can only await the coroutine once (and either give the user interactive feedback, or allow them to run the next piece of code that depends on it), but a Task or future can be repeatedly awaited.

Is your alternate suggestion (above) intended for Expr, or Assign, or both?

OK, I see how the task helps with assignments. I was thinking that my version would still work with x = await hello(), but I can see that it doesn't work with x = hello(); await x.

Is your alternate suggestion (above) intended for Expr, or Assign, or both?

Originally both, now just Expr. Is there a benefit of returning a Task in that case?

(hmm, this makes me wonder if we should wrap Call sites too)

ok, makes sense


Wrong IDi key and length reported

I think there might be a bug in the parsing of the Identification payload. Here is my investigation:
From the logs:
ikev2_msg_decrypt: decrypted payload length 1644/1644 padding 0
2500000c 0b000000 6272616d 2600042a 04308204 21308202 ... etc

The relevant IDi payload has been summarised below:
2500000c # 25 = next payload (cert), 00 = reserved, 00 0c = length in octets (12 in this case)
0b000000 # 0b = ID_KEY_ID type, 00 00 00 = reserved
6272616d # bram in ASCII (data of the payload)

Furthermore, from the logs:
ikev2_pld_payloads: decrypted payload IDi nextpayload CERT critical 0x00 length 12
ikev2_pld_id: id KEY_ID/6766d length 8

What I would have expected:
ikev2_pld_id: id KEY_ID/6272616d length 4

Looking into the code this isn't really a serious bug. The printed length count includes the ID specific header part (0b000000 in this case). I suppose changing the code to print the actual ID value length still makes sense, the header has a fixed size anyway.


[VS Code] connect ENOENT /tmp/CoreFxPipe_a8483a6a2d654778b4d59c268e5f694e

Error:
connect ENOENT /tmp/CoreFxPipe_a8483a6a2d654778b4d59c268e5f694e
Steps to Reproduce:

Version Data

extensionName
VSLS

extensionVersion
0.3.735

protocolVersion
2.2

applicationName
VSCode

applicationVersion
1.27.2

platformName
Linux

platformVersion
4.15.0-34-generic

Closing as a dupe of 738. Could you please provide some more information on that issue?


Document criteria for ESNext types inclusion

Acknowledgement

[X] I acknowledge that issues using this template may be closed without further explanation at the maintainer's discretion.

Comment
Are stage 3 proposals allowed? Only stage 4?

Stage 3


Rendering issues

Environment
Microsoft Windows [Version 10.0.19042.685]
Steps to reproduce

Just open Terminal
Expected behavior
No rendering issues

Actual behavior

Thanks for the report! This is actually already being tracked by another issue - please refer to /dup #6142, which is being tracked upstream at microsoft/microsoft-ui-xaml#2550. The WinUI team would definitely be interested in hearing from you. Thanks!

Thanks for the report! This is actually already being tracked by another issue - please refer to /dup #6142, which is being tracked upstream at microsoft/microsoft-ui-xaml#2550. The WinUI team would definitely be interested in hearing from you. Thanks!


Fix Theaming

The current theming is not to the standard of the new design.

We have included it as a task in our current sprint for further development.


How to remove files from Files database?

In Files I can see add() and update() but there's no remove()?

The idea behind this was to keep the file ids stable, but to be honest if you're wanting to do stuff like this I'd highly recommend looking into making your own implementation of codespan_reporting::Files! I could never really get a solution for codespan that worked for all use cases, and I think it's probably better if these are designed on a per-use case basis.

I'm ok with accepting a PR for this for what it's worth - even if it goes against my original ideas for how codespan::Files would work (ie. deleting would involve clearing an existing file and crating a new one).

I'll close this since there has not been any action on this, and it is not really how the API is intended to be used.

I'll close this since there has not been any action on this, and it is not really how the API is intended to be used.


Make lndhub account creation an opt-in feature.

Is your feature request related to a problem? Please describe.
Right now at account creation (when we have the mnemonics available) we sign a challenge to later create an lndhub account. We store the signed message and we try to connect to the lndhub server to create that account. The problem is that we poll the server (in case the app is offline) without user permission, and maybe the user does not want a payment system.
Describe the solution you'd like
Sign the challenge and store it but do not create the account until we ask the user maybe with a modal.
Be careful with splitting payments because they currently assume that everybody has an lndhub account and split them accordingly. Maybe we could add an extra step on tipping where we check if the user has lndhub. This step could be when we show the payment modal (where the user chooses the distributions)
Or another solution would be to include the payment system in the profile and we check the profile for the payment system (maybe the user wants to use its own lndhub)

implemented here https://github.com/MintterHypermedia/mintter/commit/e26a844585a131cbee68d29d3cfb88092fd71088


Make instafail compatible with RSpec 2.8

Commit
https://github.com/rspec/rspec-core/commit/423af1314d3e75fae55d6021dd7ee57ffff54998
changed a private API, on which instafail relied.

+1 this fixes the problem, thanks @exviva! @grosser, could you please merge this? thanks!

I made it backwards compatible to rspec 2.2
-> 0.2.2

Cool!