Wrong Dead code warning when using break in switch case

Dead code detection ignores break in switch case. Marks everything after the switch case as dead code although it is called.
void main() {
  print(nameThing(Thing.One));
  // prints "skipped"
}

String nameThing(Thing thing, [bool skip = true]) {
  switch (thing) {
    case Thing.One:
      if (skip) break;
      return "one";
    case Thing.Two:
      return "two";
    default:
      return "unknown";
  }
  return "skipped"; // Wrong "Dead code" warning
}

enum Thing { One, Two }

[✓] Flutter (Channel beta, v1.12.13+hotfix.3, on Mac OS X 10.15.1 19B2106, locale en-GB)
    • Flutter version 1.12.13+hotfix.3 at .flutter
    • Framework revision 57f2df76d7 (3 days ago), 2019-12-05 21:23:21 -0800
    • Engine revision ac9391978e
    • Dart version 2.7.0

Ouch good catch. I suspect the analyzer's DEAD_CODE algorithm is to be replaced with the new flow analysis system in the NNBD Dart type system. This should happen in 2020.

Duplicate of https://github.com/dart-lang/sdk/issues/35710


setup.sh is not compatible with bash 3.x anymore

Describe the bug
setup.sh received a bit of syntax (;&) in e07a2fab7f065c3fa084027f07dcf8cafbd19394 that is not compatible with bash versions before 4.0 (see bash's CHANGES file). This breaks direnv for darwin users with a confusing error message.
Steps To Reproduce
Steps to reproduce the behavior:

Create a new flake with nix flake new asdf
cd asdf
Replace the content of flake.nix with:{
  inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";

  outputs = { self, nixpkgs }:
    let
      pkgs = nixpkgs.legacyPackages.aarch64-darwin;
    in
    {
      devShell.aarch64-darwin = pkgs.mkShellNoCC { };
    };
}

Run git add .
Run nix run github:NixOS/nix#nix print-dev-env | bash to see the error:warning: Git tree '/Users/feuh/repos/advent_of_code' is dirty
warning: creating lock file '/Users/feuh/repos/advent_of_code/gleam/asdf/flake.lock':
• Added input 'nixpkgs':
    'github:NixOS/nixpkgs/c75037bbf9093a2acb617804ee46320d6d1fea5a?narHash=sha256-rL5LSYd85kplL5othxK5lmAtjyMOBg390sGBTb3LRMM%3D' (2024-03-16)
warning: Git tree '/Users/feuh/repos/advent_of_code' is dirty
bash: line 1604: syntax error near unexpected token `;'
bash: line 1604: `            ;&'

Expected behavior
I would expect this to work. However, I understand that it is potentially not within the scope of nixpkgs to support 17-year old versions of bash.
So the only thing I can expect from nixpkgs here is to add some check to the top of setup.sh like so:
if [[ ${BASH_VERSINFO[0]} -lt 4 ]]; then
    echo "nixpkgs requires Bash version 4.0 or later."
    exit 1
fi

Users can then solve the problem by installing a newer version of bash from nixpkgs.
Additional context
direnv should solve this problem by using a version of bash from nixpkgs when evaluating a flake.nix or shell.nix file. I'll open a ticket regarding that in their repo and link it here.
I originally thought this was an issue of nix itself, see https://github.com/NixOS/nix/issues/10263
Notify maintainers

Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"aarch64-darwin"`
 - host os: `Darwin 23.4.0, macOS 14.4`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.1`
 - channels(root): `"nixpkgs"`
 - channels(feuh): `"stable-22.11-darwin, unstable"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixpkgs`

Add a :+1: reaction to issues you find important.

Huh, would you look at that.
setup.sh already has pretty much that exact check at the top:
if [[ -n "${BASH_VERSINFO-}" && "${BASH_VERSINFO-}" -lt 4 ]]; then
    echo "Detected Bash version that isn't supported by Nixpkgs (${BASH_VERSION})"
    echo "Please install Bash 4 or greater to continue."
    exit 1
fi

The issue is that nix print-dev-env doesn't include it. So I guess nixpkgs can't do anything here.


Instance of SKBitMap is null, when i decode a image from project path

I wanna display image in SkCanvasView. when i tried to change the image into bitmap by using decode, i got a null in Bitmap. Here is my code in ContentPage Constructor
string resourceID = "Helloworld.Media.icon.png";
Assembly assembly = GetType().GetTypeInfo().Assembly;
using (Stream stream = assembly.GetManifestResourceStream(resourceID))
using (SKManagedStream skStream = new SKManagedStream(stream))
  {
   resourceBitmap = SKBitmap.Decode(skStream); // System.NullReference
  }

And below is drawing surface method
void OnCanvasViewPaintSurface(object sender, SKPaintSurfaceEventArgs args)
  {
   SKImageInfo info = args.Info;
   SKSurface surface = args.Surface;
   SKCanvas canvas = surface.Canvas;
   canvas.Clear();
			if (resourceBitmap != null)
			{
			canvas.DrawBitmap(resourceBitmap,
					new SKRect(0, info.Height / 3, info.Width, 2 * info.Height / 3));
			}
}

Now, i got a null in SkBitmap.Decode(skStream). I have changed the path also. it doesn't work well

I am closing this as this is an old issue and there are some causes:

is the image marked as Embedded Resource?
is the image embedded in the same assembly as the type returned by GetType()?

Assuming the above is true (and the image is valid), then this should work:
string resourceID = "Helloworld.Media.icon.png";
Assembly assembly = GetType().GetTypeInfo().Assembly;
using (Stream stream = assembly.GetManifestResourceStream(resourceID))
{
    resourceBitmap = SKBitmap.Decode(stream);
}

NOTE: no need for SKManagedStream anymore - it is done internally.


Add Laser compatibility with AE2 Certus Quartz Cluster

Describe the feature you'd like
When the laser break the fully grown Certus Quartz Cluster, you don't receive any Certus Quartz Crystal.
Having the compatibility would be nice, so the laser can collect the result of breaking the Certus Quartz Cluster
Describe alternatives you've considered
An alternative is to use the laser to enhance the Certus Budding growth and with Annihilation Plane collect the crystal
Additional context
No response

PR created #226

PR has been merged, thanks


Allow setting of glusterblock provisioner name using env

Fixes #1168
Signed-off-by: Raghavendra Talur<EMAIL_ADDRESS>

/assign @humblec

As discussed in detail, I think we need to decide on below thing first.

Who get the priority if both are set ( ENV or ID)

Based on that we need to change the condition.

As discussed in detail in the subjected bz, I think we need to decide on below thing first.
* Who get the priority if both are set ( ENV or ID)

Agreed.

Thats a must thing. current code is done for ENV. afaict. ENV get preference on other settings in general in linux.

The current code's behavior is too confusing to use as a baseline IMO. I'll take your word that's what was intended though.

Based on that assumption as mentioned in the bugzilla this is my solution.
#1170
@phlogistonjohn @raghavendra-talur

I disagree about the precedence though. Funny enough it was a comment of yours elsewhere that made me realize that. When an env var and a cli option both can be used to set the same internal value, I believe it is more typical for the cli option to have precedence. For example, take the virsh command line. It can take the server to connect to via the cli option --connect or an env var. But if both are specified it uses the value passed with --connect. To take something a little closer to home, heketi-cli can read the server url from a var or the --server option. If both are set, then --server's value is used.
(These also makes sense as the "nearest" or most specific to the process being run "wins")

The current code's behavior is too confusing to use as a baseline IMO. I'll take your word that's what was intended though.

It is, so its clearly documented in the current code. :)

I disagree about the precedence though. Funny enough it was a comment of yours elsewhere that made me realize that.

Oh.. I dont know where/when it happened :)

When an env var and a cli option both can be used to set the same internal value, I believe it is more typical for the cli option to have precedence. For example, take the virsh command line....

The reason for me to keep https://github.com/kubernetes-incubator/external-storage/pull/1170 with preference of ENV is this @phlogistonjohn .. Its kind of a assurance for maintaining backward compatibility.  Since start if both set the preference was given for ENV. If we change that, compatibility is broken which I dont want to happen. Thats why I kept https://github.com/kubernetes-incubator/external-storage/pull/1170 as an improvement to handle/respect only ENV set scenario. Hopefully it handle all the scenarios.

The current code's behavior is too confusing to use as a baseline IMO. I'll take your word that's what was intended though.

It is, so its clearly documented in the current code. :)

I disagree about the precedence though. Funny enough it was a comment of yours elsewhere that made me realize that.

Oh.. I dont know where/when it happened :)

When an env var and a cli option both can be used to set the same internal value, I believe it is more typical for the cli option to have precedence. For example, take the virsh command line....

The reason for me to keep #1170 with preference of ENV is this @phlogistonjohn .. Its kind of a assurance for maintaining backward compatibility. Since start if both set, the preference was given for ENV. If we change that, compatibility is broken which I dont want to happen. Thats why I kept #1170 as an improvement to handle/respect only ENV set scenario. Hopefully it handle all the scenarios.

Can we please have a table with required behavior in either this patch or #1170 ?
Based on the logic illustrated by @humblec if would be :

ENV set
CLI set
Name of the provisioner

No
No
Default

Yes
No
ENV

No
Yes
CLI

Yes
Yes
ENV

I'm less concerned about backwards compat. here as I doubt many users have tried setting the name of the provisioner or we might have uncovered this issue earlier.
As for @raghavendra-talur  suggestion of a table I suggest:

ENV set
CLI set
Name of the provisioner

No
No
Default

Yes
No
ENV

No
Yes
CLI

Yes
Yes
CLI

as this is more typical of other tools.

I agree with @phlogistonjohn on the preference of command args over ENV because that is the norm in most of the *nix projects. It is very confusing to not to be able to override ENV with a command line.

/lgtm

@wongma7 I think you mistakenly placed lgtm here, so removing the same. :)
That said, as discussed, to maintain backward compatibility we have to work on solution proposed in 1170.

it was not a mistake. I don't see a conclusion to your discussions so please decide which PR you want to merge

Just to make sure  everyone on same page. The lgtm was removed to avoid auto merging. That said, if this solution (auto)merged there is a backward compatibility break which I was trying to avoid, especially when there was no consensus on the solution between proposed solutions in subjected PRs.


Feat/font change

fixes #8
Update the fonts
might be looking great font style if you wanna change let me know about the font name

Duplicate issue


treewide: Improve docker container build, CI caching and python dependencies

Docker container

Use the official Verilator container as final base container, which has verilator prebuilt
Improve docker build stages for better caching
Clean up apt installs and getting rid of apt-requirements.txt
Bump python to 3.11
Bump Verilator to 5.020

CI

Build Docker container on every branch as part of the ci.yml workflow. Before, the docker container had to be manually changed and triggered on the working branch if the Docker container needed modification.
Cache docker build (~3min if cached, ~15min for clean build)
Cache Verilator simulation build if *.sv files and Bender.lock remains unchanged (saves ~20min)
Disable redundant runs for pull_request if the pull request is from an internal contributor.

Python dependencies

Consolidate all dependencies into the pyproject.toml file, replaces all requirements.txt files.

Undrafting this again after quite a lot of changes. The PR now touches a lot more than just consolidating python dependencies (see updated description).

I pushed commit 4f89a6f9fb4052b8cceaab57e1a5ab9d530d7795 to automate generation of the dependency list which determines the Verilator model build.
It is based on the List Make Prerequisites Action, which parses Make's database output (from make -pq), to generate the dependency tree for any top-level target (in our case bin/snitch_cluster.vsim). It then lists all leaf nodes of the tree, i.e. all file dependencies the target ultimately depends on, and hashes their contents.
The method is still not 100% correct, e.g. if FESVR_VERSION is changed it will not trigger a cache miss. A solution would be to include the Makefiles themselves in the list of dependencies. The List Make Prerequisites Action could be extended to this end, but probably also the Makefiles would have to be split up to mix the least amount of logic, to not trigger unnecessary builds on every Makefile edit.
Nonetheless, the method is at least as precise as the previously proposed method, so I think we can continue with this solution, and eventually refine it in the future, when needed.


Language switch doesn't work

Hi, the language switch only translates the contact info, not the whole page

Hi mostafachatillon,
The language switch button only translates the texts in header & footer, other content isn't included in the translation, you have to add the content yourself, that's the whole idea behind this template.

I don't get the whole idea. The template said : "Save weeks of time and
build your landing page in minutes.", but it will be very time consuming to
finish the work (for someone who doesn't know how the code is structured)
On Wed, Dec 23, 2020 at 12:45 PM Lasha Kakabadze<EMAIL_ADDRESS>wrote:

Hi mostafachatillon,
The language switch button only translates the texts in header & footer,
other content isn't included in the translation, you have to add the
content yourself, that's the whole idea behind this template.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Adrinlol/landy-react-template/issues/4#issuecomment-750124836,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB6N6FG4CRVSYWCWGPEVFJLSWHC23ANCNFSM4VG2IDYA
.


Two factor authentication required

Hello, I get this error:
Login error. Two factor authentication required, please use visit below url and retry login.
Thank you!

As the error states, you have two factor authentication activated for that reason you need to visit the specified url and allow the connection.

I tried that, but the url changes every time it is called. In addition, I have not found a way to deactivate the 2nd factor. I didn't activate it myself.

The url changes because of security reasons, each time you try a new login it will change. You have to either visit the url or disable the 2 factor authentication.

Thanks for the answer. Unfortunately, I can't find a way to deactivate the 2nd factor. I wrote to Mi Support.

Yeah, well I never had it activated for my account so I unfortunately cannot help you with that. Please let me know what the mi support will tell you.

Thanks for the answer. Unfortunately, I can't find a way to deactivate the 2nd factor. I wrote to Mi Support.

Did you get any reply or find any solution?
For now I just follow the link to auth and then restart HB. No idea how long the login will last until it expires though.
I checked two factor setting in mi dashboard and mine is clearly marked as disabled. https://account.xiaomi.com/fe/service/account/home/2step I tried toggling on then off but same result.
I'm guessing the 2FA we see is not actually 2FA but some sort of security challenge (though I'm guessing they work similarly?). Don't quote me on that though.

Apparently, as it turns out, the two factor setting in mi account dashboard is pretty much useless if we want to disable account verification as they automatically decide whether to show it or not. At least according to the wording in this FAQ https://account.xiaomi.com/helpcenter/faq/en_US/03.account-safety/12.safety-verification/faq-1
I really wish I'm wrong though. Since validating manually via sms/email each time auth expires is gonna be a pain.

Yeah, well there is nothing really i cannot do about it... i use the specified credentials to login to the account and in some cases this comes back. I am not sure when or why but there must be some way to disable it? I mean most of the account do not have that active somehow...

Unfortunately I haven't gotten any further with the support. I was told that I should contact my PC for support ???

For me it is also the case that the second factor is definitely deactivated in the account. I never activated it myself. Suddenly it stopped working from one day to the next.

That is certainly a mystery when or why this appears. It does not really make sense that for some people it pops up and for some not... Maybe it has something to do with the region?

I'm in Germany.

Same here 😅

This is the answer from the support:
"Account verification at login cannot be turned off"

Apparently it somehow can be turned off when most of the people do not have it...

I have the same issue after setting up my homebridge instance from scratch. I see the challenge url and I can complete it on the web, but the plugin will never authenticate successfully.. 2FA is 'off' for me as well.

It is important to find out why some people have this and most not... I mean there must be a way to somehow disable this? Maybe just new accounts have?

It is important to find out why some people have this and most not... I mean there must be a way to somehow disable this? Maybe just new accounts have?

Here's some background on my account.
Maybe it can help narrow the criteria down

Never logged on or connected to any Mi mobile devices
As far as I can tell it was created September 2020
The verification isn't there on Mi group apps. At least, so far.

I am having the same issue. What I found out so far is that the URL delivered in the console (under: Error: Two-factor authentication required, please visit the following url and retry login: …) will only show the option to request a two-factor auth code if I log in in to https://i.mi.com/ or https://account.xiaomi.com before actually loading that url from the console. Then, I get a button to actually send the request and I receive the code via mail. It is accepted, which returns a string "ok" on screen.
Unfortunately, even after restarting homebridge, the error message persists. Under the URL (within console) following lines are printed:
 at MiCloud._loginStep2 (/usr/local/lib/node_modules/homebridge-miot/lib/protocol/MiCloud.js:327:13) at processTicksAndRejections (node:internal/process/task_queues:96:5) at MiCloud.login (/usr/local/lib/node_modules/homebridge-miot/lib/protocol/MiCloud.js:70:9) at ZhimiAirPurifierVb2._connectToMiCloud (/usr/local/lib/node_modules/homebridge-miot/lib/protocol/MiotDevice.js:195:9) [03/01/2022, 22:28:43] Got SIGTERM, shutting down Homebridge...
This now seems to loop happily ever after, even though my login credentials work when logging into the above-mentioned accounts and the auth codes are also accepted. The autodetect functionality also fails due to login failure.
Don't know if any of this helps debugging this issue, but it is worth mentioning that this setup worked until recently and nothing has changed on my end since then.

The URL which needs to be visited for the two factor authentication is not something that i come up by myself, but this is actually included in the response from the xiaomi server when you try to log in with your account and they request the user to visit it in order to proceed.
Anyway, having a look at the code makes me think that there might be something missing... It was added in a pull request and since i do not have any account with two factor auth, i never could test it by myself...
@patowod could you do me a favor a try to modify the code in MiCloud.js slightly and check if that fixes your issue?
Please locally replace this line of code with: https://github.com/merdok/homebridge-miot/blob/ce67aec040de3bbec4bb861dc3142a80ee2177df/lib/protocol/MiCloud.js#L326
with:
if (!ssecurity && notificationUrl) {
I somehow have the feeling that even after visiting the url it will still be included in requests so maybe an additional check is required...

@merdok Sorry, I couldn’t answer sooner. Today I finally got around to trying your solution. The good  news is, though, that your idea/solution works! 🎉 I did exactly as you wrote. For anyone trying the same, here is the path where I found the MiCloud.js:
/usr/local/lib/node_modules/homebridge-miot/lib/protocol
After changing the line 326 accordingly, I restarted Homebridge and clicked on the link within the error message. I then initiated sending the 2Factor authentication, which worked flawlessly. Next step: None :) Everything behaved and worked like it used to. Thank you very much @merdok

Nice! Thanks for testing and letting me know! I will include the fix in the next update!

Should now be fixed in version 1.0.0!


chore(macos,firestore): use precompiled frameworks in example app

Description
https://github.com/invertase/firestore-ios-sdk-frameworks should now be compatible with macOS, this PR adds it back in to improve build times on CI.
Related Issues
https://github.com/FirebaseExtended/flutterfire/issues/2751
https://github.com/invertase/firestore-ios-sdk-frameworks/issues/11
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]).
This will ensure a smooth and quick review process. Updating the pubspec.yaml and changelogs is not required.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[ ] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
[x] All existing and new tests are passing.
[ ] I updated/added relevant documentation (doc comments with ///).
[x] The analyzer (flutter analyze) does not report any problems on my PR.
[x] I read and followed the Flutter Style Guide.
[x] I signed the CLA.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[x] No, this is not a breaking change.

A related Ticket is also https://github.com/FirebaseExtended/flutterfire/issues/3185 👍

A related Ticket is also https://github.com/FirebaseExtended/flutterfire/issues/3185 👍


Update app.js

@HotdrynoodlesTauren Thanks for the comment. And the yarn importdata command imports 1200 records of recipes into the DB. The data file locates data/recipe.json, it's a one-line json file generated by our script :)


Noticable delay in OutputEvents being displayed in the Debug Console

I had this raised against my extension - there's a (sub-second, but noticeable) delay between log events generated in an app and them appearing in the Debug Console. I put some timing in from when the event is generated on the mobile side and when I sent the OutputEvent and it was 0.03 milliseconds. This leads me to believe the delay is somewhere between the OutputEvent being sent and then being rendered back in the Debug Console (I don't think I can measure that without being able to show accurate timestamps as the Debug Console renders a line of text).
The delay is not great (like I say, sub-second) but it is pretty noticeable if the log is in response to some user action (say tapping somewhere in a mobile device being debugged). Since you don't make any promises about the latency here, I don't know if this is something you thing is acceptable but I figured since it was raised with me I should pass it along.

This is designed behavior. The debug console as an implementation detail is using a tree, and whenever new output arrives we refresh the whole tree - not the best approach but that is just life for now.
Thus each output arriving causes a tree refresh, and many outputs can cause many refreshes. Does we update the tree with a 300ms timeout.
Code pointer https://github.com/Microsoft/vscode/blob/master/src/vs/workbench/parts/debug/electron-browser/repl.ts#L118
Here's an issue capturing that the debug console should move to some non tree implementation. Closing this as a duplicate of that https://github.com/Microsoft/vscode/issues/11462

Gotcha! Thanks for the link; I did search for something related but didn't turn that one up.


Add ebml.xml file

Fixes #391

Fixes #391

I think that all comments are resolved?

I think that all comments are resolved?

There's still the range you left a 1-8. After that it's good to merge.
Thanks a lot.

There's still the range you left a 1-8. After that it's good to merge.
Thanks a lot.

Excellent ! Thanks a lot for doing this, and so promptly !

Excellent ! Thanks a lot for doing this, and so promptly !

@robUx4
I did also fix the range from EBMLMaxIDLength  to >=4

@robUx4
I did also fix the range from EBMLMaxIDLength  to >=4

@robUx4
You were too fast ;-)
What about  EBMLMaxIDLength ?
That should be
range="≥4"

?

@robUx4
You were too fast ;-)
What about  EBMLMaxIDLength ?
That should be
range="≥4"

?

The merged version of EBMLMaxIDLength has range=">4" default="4" which matches the RFC text.

The merged version of EBMLMaxIDLength has range=">4" default="4" which matches the RFC text.

The specification.markdown has different value?
https://github.com/ietf-wg-cellar/ebml-specification/blob/master/specification.markdown#ebmlmaxidlength-element

The specification.markdown has different value?
https://github.com/ietf-wg-cellar/ebml-specification/blob/master/specification.markdown#ebmlmaxidlength-element

It could be interesting to adapt the code that transforms the Matroska XML file to markdown for the RFC, to this XML file. The result should match almost exactly the markdown used to generate the RFC.

It could be interesting to adapt the code that transforms the Matroska XML file to markdown for the RFC, to this XML file. The result should match almost exactly the markdown used to generate the RFC.

The specification.markdown has different value?
https://github.com/ietf-wg-cellar/ebml-specification/blob/master/specification.markdown#ebmlmaxidlength-element

Ah > vs >= ? I'll fix it.

The specification.markdown has different value?
https://github.com/ietf-wg-cellar/ebml-specification/blob/master/specification.markdown#ebmlmaxidlength-element

Ah > vs >= ? I'll fix it.

OK, then you can abandon my PR.

OK, then you can abandon my PR.

BTW : I'm building a C# based Matroska parser, and I'm using these xml files to generate the specifications and classes using T4 templating.
https://github.com/StefH/Matroska/blob/ebml/src/Matroska/MatroskaSpecification.tt

BTW : I'm building a C# based Matroska parser, and I'm using these xml files to generate the specifications and classes using T4 templating.
https://github.com/StefH/Matroska/blob/ebml/src/Matroska/MatroskaSpecification.tt

Very nice. That's definitely why it's good to have machine readable specs.
In my case I use it to generate libmatroska and libmatroska2 code and it makes refactoring easy and safe.

Very nice. That's definitely why it's good to have machine readable specs.
In my case I use it to generate libmatroska and libmatroska2 code and it makes refactoring easy and safe.


TypeError: init() got an unexpected keyword argument 'strict'

from pws import Google
from pws import Bing
print(Google.search(query='hello world', num=5, start=2))
print(Bing.search('hello world', 5, 2))
When I run this example, I get this error:

TypeError: init() got an unexpected keyword argument 'strict'

on line 3.

Hi, as stated in the README file, I am no longer able to maintain this project. Sorry!


Improve slot table access performance

Commit 8def1a7a542 (part of 0.5.12) already improved the performance
of qmn queries compared to 0.5.11.
This commit improves it again compared to 0.5.12 because it turnes out
that reading the large slots tuple with 16384 elements from ETS forces
the runtime system to perform too many garbage collections. The solution
removes the large tuple from State and stores the mapping in an ETS
table as {k, v} pairs.
Performance tested on AWS m5.x2large instance with 8 cores.
Rough numbers for qmn read (@ ~4200 req/seq):

0.5.11: 8ms
0.5.12: 6ms
this:   4ms

Rough numbers for qmn write (@ ~3300 req/seq):

0.5.11:  10 ms
0.5.12: 5.5 ms
this:     3 ms

Even though as a side effect of the solution the slot table update is
not atomic anymore it will not cause issues as the current retry logic
of MOVED responses should handle it already.

I also tested a version where slots were shaded to 128 ETS tables and also one using process dictionary (not shown on the graph above) with similar results.
Here are the VM metrics as reported by microstate accounting:
eredis_cluster 0.5.11
--------------------
iex(transform_asg@<IP_ADDRESS>)6> :msacc.print
Average thread real-time    :  5003138 us
Accumulated system run-time : 75489765 us
Average scheduler run-time  :  4247044 us

        Thread      aux check_io emulator       gc    other     port    sleep

Stats per thread:
     async( 0)    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
       aux( 1)   33.38%    0.11%    0.00%    0.00%    0.03%    0.00%   66.48%
dirty_cpu_( 1)    0.00%    0.00%    0.05%   99.26%    0.00%    0.00%    0.68%
...
dirty_cpu_( 8)    0.00%    0.00%    0.01%   99.57%    0.00%    0.00%    0.42%
dirty_io_s( 1)    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
...
      poll( 0)    0.00%    2.02%    0.00%    0.00%    0.00%    0.00%   97.98%
 scheduler( 1)    5.87%    0.41%   55.80%    0.52%   22.69%    1.25%   13.45%
 scheduler( 8)    2.87%    0.55%   53.29%    0.49%   22.90%    1.26%   18.65%

Stats per type:
         async    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
           aux   33.38%    0.11%    0.00%    0.00%    0.03%    0.00%   66.48%
dirty_cpu_sche    0.00%    0.00%    0.05%   99.22%    0.00%    0.00%    0.74%
dirty_io_sched    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
          poll    0.00%    2.02%    0.00%    0.00%    0.00%    0.00%   97.98%
     scheduler    3.23%    0.49%   55.33%    0.52%   23.90%    1.45%   15.09%
:ok

eredis_cluster 0.5.12
---------------------
iex(transform_asg@<IP_ADDRESS>)1> :msacc.start 5000
true
iex(transform_asg@<IP_ADDRESS>)2> :msacc.print
Average thread real-time    :  5019935 us
Accumulated system run-time : 73880062 us
Average scheduler run-time  :  4720501 us

        Thread      aux check_io emulator       gc    other     port    sleep

Stats per thread:
     async( 0)    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
       aux( 1)   19.12%    0.15%    0.00%    0.00%    0.13%    0.00%   80.61%
dirty_cpu_( 1)    0.00%    0.00%    0.00%   88.23%    0.58%    0.00%   11.19%
...
dirty_cpu_( 8)    0.00%    0.00%    0.00%   84.74%    0.87%    0.00%   14.39%
dirty_io_s( 1)    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
      poll( 0)    0.00%    3.35%    0.00%    0.00%    0.00%    0.00%   96.65%
 scheduler( 1)    9.31%    1.64%   71.16%    1.07%    9.10%    3.35%    4.38%
...
 scheduler( 8)    4.70%    1.82%   73.23%    1.02%    9.58%    3.15%    6.49%

Stats per type:
         async    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
           aux   19.12%    0.15%    0.00%    0.00%    0.13%    0.00%   80.61%
dirty_cpu_sche    0.00%    0.00%    0.00%   86.23%    0.79%    0.00%   12.97%
dirty_io_sched    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
          poll    0.00%    3.35%    0.00%    0.00%    0.00%    0.00%   96.65%
     scheduler    5.19%    1.27%   73.55%    0.90%   10.50%    2.78%    5.80%
:ok

Fix with one ETS table
----------------------
iex(transform_asg@<IP_ADDRESS>)4> :msacc.start 5000
true
iex(transform_asg@<IP_ADDRESS>)5> :msacc.print
Average thread real-time    :  5015660 us
Accumulated system run-time : 54295829 us
Average scheduler run-time  :  4817415 us

        Thread      aux check_io emulator       gc    other     port    sleep

Stats per thread:
     async( 0)    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
       aux( 1)    6.45%    0.25%    0.00%    0.00%    0.07%    0.00%   93.23%
dirty_cpu_( 1)    0.00%    0.00%    0.00%   46.67%    0.49%    0.00%   52.84%
...
dirty_cpu_( 8)    0.00%    0.00%    0.00%   29.84%    0.88%    0.00%   69.27%
dirty_io_s( 1)    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
      poll( 0)    0.00%    4.68%    0.00%    0.00%    0.00%    0.00%   95.32%
 scheduler( 1)    7.19%    1.35%   79.75%    1.02%    5.03%    2.49%    3.16%
...
 scheduler( 8)    7.27%    1.28%   78.44%    0.94%    5.51%    2.60%    3.97%

Stats per type:
         async    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
           aux    6.45%    0.25%    0.00%    0.00%    0.07%    0.00%   93.23%
dirty_cpu_sche    0.00%    0.00%    0.01%   37.03%    0.78%    0.00%   62.18%
dirty_io_sched    0.00%    0.00%    0.00%    0.00%    0.00%    0.00%  100.00%
          poll    0.00%    4.68%    0.00%    0.00%    0.00%    0.00%   95.32%
     scheduler    5.33%    1.45%   79.70%    1.01%    5.72%    2.94%    3.86%
:ok


exclude istiod pods by default in webhook objectSelector

Istio installation should have good defaults. If objectSelector were to be enabled, it is only fair to expect that all istiod pods be exempt from the webhook. This way, we get out of the deadlock scenario where the webhook blocks the creation of the pod that acts as the backend for that same webhook.
[ ] Configuration Infrastructure
[ ] Docs
[X] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

@tariq1890: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
41e2c0064fb7fedf59c7f5c262838abdc07ae245
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Adding support for new user-change events with types

These are UserHuddleChangedEvent, UserProfileChangedEvent, UserStatusChangedEvent.
I assume this is a minor version bump but maybe not? Not sure if a new type counts as an API addition? 🤔

I assume this is a minor version bump but maybe not? Not sure if a new type counts as an API addition? 🤔

I'd also consider this a .minor because we're adding support for the event types - a feature that didn't exist previously. But I'm also curious how we've versioned these changes in the past!

But I'm also curious how we've versioned these changes in the past!

I looked to @srajiang's past PR as a guide before I tackled this: https://github.com/slackapi/bolt-js/pull/1008 - it looks like that was a minor bump back then.

Yeah... wow @srajiang I am now testing these events with an app and there are.. a lot of differences. I will try to address them in forthcoming commits as best I can...


chore: tune GitHub workflow

Codecov Report

Merging #7 (15e7a75) into main (9045a9e) will increase coverage by 0.17%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main       #7      +/-   ##
==========================================
+ Coverage   90.00%   90.17%   +0.17%
==========================================
  Files           7        7
  Lines         110      112       +2
==========================================
+ Hits           99      101       +2
  Misses         11       11

Impacted Files
Coverage Δ

lib/src/core/command.dart
100.00% <100.00%> (ø)

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 9045a9e...15e7a75. Read the comment docs.


Add semantic-releases 🤖

See commit info :D

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Confusing comment about forward security

K.java contains a confusing comment about forward security:
/**
Forward secured matching key seeds are generated by a reversed hash chain with truncation, to ensure future keys cannot be
derived from historic keys. The cryptographic hash function offers a one-way function for forward security. The truncation
function offers additional assurance by deleting intermediate key material, thus a compromised hash function will still maintain forward security.
 */
final MatchingKeySeed[] matchingKeySeed = new MatchingKeySeed[n + 1];

Although I think the code does seem to have the property described in the comment - "future keys cannot be derived from historic keys" - forward secrecy is actually the opposite property, i.e. that a compromise in future does not expose today's key.  This protocol clearly doesn't have that property - today's key can be derived from secretKey or from any later element of the MatchingKeySeed array.
I think the simple fix is to remove the term "Forward secured".  (And don't substitute "future secured" because a compromise of secretKey allows all keys, past and future, to be derived.)
This is a common and understandable mistake - I wish it wasn't called "forward security" because it's not obvious which way you're supposed to imagine facing 'forward' - most of my students spend a while learning that they have to think about today's key and its potential exposure by a compromise in the future.
There's a nice explanation by Bellare and Yee

Yes agreed. I didn't catch this comment in the original commit. Forward security is a very unfortunate term, I agree. I'll add this to the next Android changes I make. I intend to publish the API doc soon, so this is a very timely catch. Thank you.


Does not detect decimal places in some scenarios

Unfortunately the predictDecimals() function isn't terribly thorough. Here are some floating point errors that are not 19 characters long when converted to a string, and so are not fixed by this function.
> String(.1+.2*7)
'1.5000000000000002'  (length 18)

> String(458.196*3/3)
'458.1960000000001'  (length 17)

And it also doesn't handle small numbers like:
> String(.0001/1000)
'1.0000000000000001e-7'

I think it's best to use a proper Math library that's thoroughly tested like Big.js when you need to handle floating point errors, rather than guesswork which might work sometimes but then randomly break.

I'm going to be completely honest and say I never expected an issue on this repo -- But yes, I definitely think the floating point error via regex prediction is not a good system at all, and shouldn't be used with the expectation of consistent/correct results.
I think manually specifying the precision wanted with the second parameter is the only way this really should be used, as there definitely is still use in a version of Math.round() that allows for rounding to any decimal place, not only to an integer (though that is trivially easy for anyone to write if needed, that function alone really doesn't need to be a library). Overall, I would not recommend using this package


Wasm and Glue JS is being encrypted

@joamag I want to see how boytacean core works through wasm files and glue js files.  But it is being encrypted, how can they not be encrypted? I am trying to build another frontend for it, like kabu.io.vn I am doing for my GBA emulator.
Please help me, I tried downloading your emukit here, it would be good if you provide it in unencrypted form.
boytacean-wasm.zip

I tried your emulator for 2 hours, it really impressed me a lot when running on IOS. Thanks for creating it

I'm not sure I understand what you mean by encrypted. That zip file is not encrypted and contains the WASM core (.wasm file) used for Boytacean. It uses wasm-bindgen for wasm code generation, which can make it a bit trickier than usual to make use of.
You shouldn't need the emukit to run the emulator - that's just a "helper" to build the UI.
If you provide some details on what you're trying to achieve, I can probably help :).

@sonht0555 try to take a look here https://www.npmjs.com/package/boytacean?activeTab=code
This contains the npm package for Boytacean which is a result of running:
cargo install wasm-pack
wasm-pack build --release --target=web --out-dir=frontends/web/lib -- --features wasm

as state in README.md

@joamag Thank you very much, I will try to read it.

Closing this one as fixed


Reatcive Subscripitons experience changing

Dear contributors,,
Since account portal is going to migrate to portal.azure.com, the reactive subscription has been changed. Kindly update the doc. Thanks.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: e4afcaf1-4c44-e88e-da26-a0fdb3b49736
Version Independent ID: 053c490b-4078-a18c-cc22-38e8e3329dc1
Content: Reactivate a disabled Azure subscription
Content Source: articles/billing/billing-subscription-become-disable.md
Service: billing
GitHub Login: @bandersmsft
Microsoft Alias: banders

@Pengcici Thanks for the feedback. We are investigating the issue and will update you shortly.

@Pengcici Thanks for the comment! Only the managing experience is going to change. For example, when you login to accounts portal and select your subscription, you will be redirected to Azure portal. However, when you click on the manage in the Azure portal you will be redirected back to accounts portal. That said, it is not a complete migration of accounts portal to Azure portal.
Let me know if you're looking for any specific information that needs to be added in the documentation.

@pengcici Thanks for letting us know. We can only publish documentation for current functionality. The Billing engineering team and I will update this article when new functionality replaces existing. If you want to contact me directly, please feel free.
#please-close


Member updateName extension hook

Allow updating the member name from an extension.
When extending the Member object with fields like "Insertion" or "Initials", for example. It would be nice if we're able to change the result from the getName method so we can insert these new fields.

Thanks for the merge!


Timed out after 10 seconds

I tested on my Mikrotik (just connecting):
{
name: "RosException",
errno: "SOCKTMOUT",
message: "Timed out after 10 seconds"
}
I applied to port 8728 but still, it doesn't work.

RouterOS doesn't keep the connection alive by default, but you can add a keepalive: true with the connection options like:
const conn = new RouterOSAPI({
    host: "<IP_ADDRESS>",
    user: "admin",
    keepalive: true
});

Lemme know if that works.

I see, have you checked if the api port it open on your firewall? Is it a lan or wan ip you are trying to connect through?

wan ip, do I need to configure something to make that work?

You need to add a firewall rule in the input chain for the 8728 tcp port, otherwise the routerboard will drop the packets.

Thanks, now it's working!


C++ Build fails but Pulsar build passes

Expected behavior
The Build should fail if C++ clients fails to compile or tests fail
Actual behavior
Build continues since compile steps is a part of after_success and as per documentation

The exit code of after_success, after_failure, after_script and subsequent stages do not affect the build result. However, if one of these stages times out, the build is marked as a failure.
Don't know if it was done deliberately since C++ unit tests are a bit flaky
Steps to reproduce
Checkin incorrect C++ code
System configuration
Pulsar version: x.y

@jai1 was this already fixed?

@merlimat -no will work on it next week
The fix is easy but I have noticed that CPP Tests always fail, I don't want to let CPP Test failures hamper the pulsar build.

Only one fix remaining - CPP client crashes on Producer Destruction

Fixed in #492. Running the c++ build and tests in script sections after java maven build.


Tooglegroup kb navigation does not work without defined values on children

Description of the bug
The component works as normal with mouse clicks but does not work with arrow keys or correct tab-focus if value is not defined on
Steps To Reproduce

Use keyboard navigation and tab until ToggleGroup is in focus
Try to use arrow keys to navigate to left/right items
Focus jumps immediately to last item.

Additional Information
Might related to #1473

This is solved in #2130 by generating a random value if it is not set, using useId()


Improve Error Message, including Comparable, Orderable Info

Add typeParameter info(Comparable, Orderable) into error message
Fix https://github.com/facebook/presto/issues/2181

Merged. Thanks!


[Bug]: IOS App crash Bundle+MapboxMaps

Mapbox Implementation
Mapbox
Mapbox Version
10.7.0
Platform
iOS
@rnmapbox/maps version
10.0.0-beta.33
Standalone component to reproduce
import React from 'react';
import {
  MapView,
  ShapeSource,
  LineLayer,
  Camera,
} from '@rnmapbox/maps';

const aLine = {
  type: 'LineString',
  coordinates: [
    [-74.00597, 40.71427],
    [-74.00697, 40.71527],
  ],
};

class BugReportExample extends React.Component {
  render() {
    return (
      <MapView style={{flex: 1}}>
        <Camera centerCoordinate={[-74.00597, 40.71427]} zoomLevel={14} />
        <ShapeSource id="idStreetLayer" shape={aLine}>
          <LineLayer id="idStreetLayer" />
        </ShapeSource>
      </MapView>
    );
  }
}

Observed behavior and steps to reproduce
the application opens and crashes after 10 seconds.

Expected behavior
No response
Notes / preliminary analysis
No response
Additional links and references
No response

@jeremyvinec there must be special in your setup, or you missed to perform some steps in install, what is your Podfile?!

here is my Podfile :
`require_relative '../node_modules/react-native/scripts/react_native_pods'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
$RNMapboxMapsImpl = 'mapbox'
platform :ios, '13'
install! 'cocoapods', :deterministic_uuids => false
production = ENV["PRODUCTION"] == "1"
target 'Example' do
config = use_native_modules!
Flags change depending on the env values.
flags = get_default_flags()
use_react_native!(
:path => config[:reactNativePath],
# to enable hermes on iOS, change false to true and then install pods
:production => production,
:hermes_enabled => flags[:hermes_enabled],
:fabric_enabled => flags[:fabric_enabled],
:flipper_configuration => FlipperConfiguration.enabled,
# An absolute path to your application root.
:app_path => "#{Pod::Config.instance.installation_root}/.."
)
pod 'rnmapbox-maps', :path => '../node_modules/@rnmapbox/maps', :inhibit_warnings => false
pod 'Firebase', :modular_headers => true
pod 'FirebaseCoreInternal', :modular_headers => true
pod 'GoogleUtilities', :modular_headers => true
pod 'FirebaseCore', :modular_headers => true
target 'ExampleTests' do
inherit! :complete
# Pods for testing
end
post_install do |installer|
react_native_post_install(installer)
__apply_Xcode_12_5_M1_post_install_workaround(installer)
$RNMapboxMaps.post_install(installer)
end
end
`

@jeremyvinec you're missing pre_install hook for $RNMapboxMaps

Thank's !  i added this
pre_install do |installer|     $RNMapboxMaps.pre_install(installer)   end


Reports Settings Templates API

Addresses #24

@sabarish98 thanks a lot for your contribution! 🚀

@sabarish98 thanks a lot for your contribution! 🚀

Happy to help @andrii-bodnar  : )


CUBLAS_STATUS_INVALID_VALUE when using tf.matmal to calculate large size of tensors

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Feroda 34
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): 2.5.0
Python version: 3.9.6
Bazel version (if compiling from source): 3.7.2
GCC/Compiler version (if compiling from source): 5.4
CUDA/cuDNN version: 11.3.1/8.2.1
GPU model and memory: 2080 Super 8GB

Describe the current behavior
We are developers of deepmd-kit, a deep learning package based on TensorFlow in areas of computational chemistry and computational material. To give convenience to our users, we use conda-build to build TensorFlow and our programs from source, and distribute them using an offline package, ensuring our users have the same library environment. As reported by our users in deepmodeling/deepmd-kit#1061 and deepmodeling/deepmd-kit#1062, when using tf.matmal to calculate large size of tensors, an error happened below. The original error should be  failed to run cuBLAS routine: CUBLAS_STATUS_INVALID_VALUE, and this causes Blas xGEMV launch failed. When we try to descrease the size of the tensor, and it works fine. However, I believe the error is not related to the memory, as some one also got this error in 40GB A100, where the memory is enough and there is no OOM message. And also, it works fine with CUDA 10.1 and cuDNN 7. I think it may be an internal error in TensorFlow or cuBLAS.
2021-09-08 17:04:15.418750: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcublas.so.11
2021-09-08 17:04:15.794003: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcublasLt.so.11
2021-09-08 17:04:15.839986: E tensorflow/stream_executor/cuda/cuda_blas.cc:564] failed to run cuBLAS routine: CUBLAS_STATUS_INVALID_VALUE
Traceback (most recent call last):
  File "/home/jz748/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/client/session.py", line 1375, in _do_call
    return fn(*args)
  File "/home/jz748/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/client/session.py", line 1359, in _run_fn
    return self._call_tf_sessionrun(options, feed_dict, fetch_list,
  File "/home/jz748/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/client/session.py", line 1451, in _call_tf_sessionrun
    return tf_session.TF_SessionRun_wrapper(self._session, options, feed_dict,
tensorflow.python.framework.errors_impl.InternalError: 2 root error(s) found.
  (0) Internal: Blas xGEMV launch failed : a.shape=[1,1228800,2], b.shape=[1,1,2], m=1228800, n=1, k=2
	 [[{{node gradients/filter_type_all/MatMul_6_grad/MatMul}}]]
	 [[l2_virial_test/_45]]
  (1) Internal: Blas xGEMV launch failed : a.shape=[1,1228800,2], b.shape=[1,1,2], m=1228800, n=1, k=2
	 [[{{node gradients/filter_type_all/MatMul_6_grad/MatMul}}]]
0 successful operations.
0 derived errors ignored.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/jz748/anaconda3/envs/dpdev113/bin/dp", line 33, in <module>
    sys.exit(load_entry_point('deepmd-kit', 'console_scripts', 'dp')())
  File "/home/jz748/codes/deepmd-kit/deepmd/entrypoints/main.py", line 437, in main
    train_dp(**dict_args)
  File "/home/jz748/codes/deepmd-kit/deepmd/entrypoints/train.py", line 102, in train
    _do_work(jdata, run_opt, is_compress)
  File "/home/jz748/codes/deepmd-kit/deepmd/entrypoints/train.py", line 163, in _do_work
    model.train(train_data, valid_data)
  File "/home/jz748/codes/deepmd-kit/deepmd/train/trainer.py", line 497, in train
    self.valid_on_the_fly(fp, [train_batch], valid_batches, print_header=True)
  File "/home/jz748/codes/deepmd-kit/deepmd/train/trainer.py", line 591, in valid_on_the_fly
    train_results = self.get_evaluation_results(train_batches)
  File "/home/jz748/codes/deepmd-kit/deepmd/train/trainer.py", line 643, in get_evaluation_results
    results = self.loss.eval(self.sess, feed_dict, natoms)
  File "/home/jz748/codes/deepmd-kit/deepmd/loss/ener.py", line 140, in eval
    error, error_e, error_f, error_v, error_ae, error_pf = run_sess(sess, run_data, feed_dict=feed_dict)
  File "/home/jz748/codes/deepmd-kit/deepmd/utils/sess.py", line 20, in run_sess
    return sess.run(*args, **kwargs)
  File "/home/jz748/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/client/session.py", line 967, in run
    result = self._run(None, fetches, feed_dict, options_ptr,
  File "/home/jz748/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/client/session.py", line 1190, in _run
    results = self._do_run(handle, final_targets, final_fetches,
  File "/home/jz748/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/client/session.py", line 1368, in _do_run
    return self._do_call(_run_fn, feeds, fetches, targets, options,
  File "/home/jz748/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/client/session.py", line 1394, in _do_call
    raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.InternalError: 2 root error(s) found.
  (0) Internal: Blas xGEMV launch failed : a.shape=[1,1228800,2], b.shape=[1,1,2], m=1228800, n=1, k=2
	 [[node gradients/filter_type_all/MatMul_6_grad/MatMul (defined at /codes/deepmd-kit/deepmd/descriptor/se_t.py:353) ]]
	 [[l2_virial_test/_45]]
  (1) Internal: Blas xGEMV launch failed : a.shape=[1,1228800,2], b.shape=[1,1,2], m=1228800, n=1, k=2
	 [[node gradients/filter_type_all/MatMul_6_grad/MatMul (defined at /codes/deepmd-kit/deepmd/descriptor/se_t.py:353) ]]
0 successful operations.
0 derived errors ignored.

Errors may have originated from an input operation.
Input Source operations connected to node gradients/filter_type_all/MatMul_6_grad/MatMul:
 filter_type_all/matrix_1_1_1/read (defined at /codes/deepmd-kit/deepmd/utils/network.py:174)

Input Source operations connected to node gradients/filter_type_all/MatMul_6_grad/MatMul:
 filter_type_all/matrix_1_1_1/read (defined at /codes/deepmd-kit/deepmd/utils/network.py:174)

Original stack trace for 'gradients/filter_type_all/MatMul_6_grad/MatMul':
  File "/anaconda3/envs/dpdev113/bin/dp", line 33, in <module>
    sys.exit(load_entry_point('deepmd-kit', 'console_scripts', 'dp')())
  File "/codes/deepmd-kit/deepmd/entrypoints/main.py", line 437, in main
    train_dp(**dict_args)
  File "/codes/deepmd-kit/deepmd/entrypoints/train.py", line 102, in train
    _do_work(jdata, run_opt, is_compress)
  File "/codes/deepmd-kit/deepmd/entrypoints/train.py", line 158, in _do_work
    model.build(train_data, stop_batch)
  File "/codes/deepmd-kit/deepmd/train/trainer.py", line 329, in build
    self._build_network(data)
  File "/codes/deepmd-kit/deepmd/train/trainer.py", line 353, in _build_network
    = self.model.build (self.place_holders['coord'],
  File "/codes/deepmd-kit/deepmd/model/ener.py", line 229, in build
    = self.descrpt.prod_force_virial (atom_ener, natoms)
  File "/codes/deepmd-kit/deepmd/descriptor/se_t.py", line 353, in prod_force_virial
    [net_deriv] = tf.gradients (atom_ener, self.descrpt_reshape)
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/ops/gradients_impl.py", line 169, in gradients
    return gradients_util._GradientsHelper(
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/ops/gradients_util.py", line 681, in _GradientsHelper
    in_grads = _MaybeCompile(grad_scope, op, func_call,
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/ops/gradients_util.py", line 338, in _MaybeCompile
    return grad_fn()  # Exit early
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/ops/gradients_util.py", line 682, in <lambda>
    lambda: grad_fn(op, *out_grads))
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/ops/math_grad.py", line 1733, in _MatMulGrad
    grad_a = gen_math_ops.mat_mul(grad, b, transpose_b=True)
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/ops/gen_math_ops.py", line 5716, in mat_mul
    _, _, _op, _outputs = _op_def_library._apply_op_helper(
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/framework/op_def_library.py", line 748, in _apply_op_helper
    op = g._create_op_internal(op_type_name, inputs, dtypes=None,
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/framework/ops.py", line 3557, in _create_op_internal
    ret = Operation(
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/framework/ops.py", line 2045, in __init__
    self._traceback = tf_stack.extract_stack_for_node(self._c_op)

...which was originally created as op 'filter_type_all/MatMul_6', defined at:
  File "/anaconda3/envs/dpdev113/bin/dp", line 33, in <module>
    sys.exit(load_entry_point('deepmd-kit', 'console_scripts', 'dp')())
[elided 4 identical lines from previous traceback]
  File "/codes/deepmd-kit/deepmd/train/trainer.py", line 353, in _build_network
    = self.model.build (self.place_holders['coord'],
  File "/codes/deepmd-kit/deepmd/model/ener.py", line 159, in build
    = self.descrpt.build(coord_,
  File "/codes/deepmd-kit/deepmd/descriptor/se_t.py", line 316, in build
    self.dout, self.qmat = self._pass_filter(self.descrpt_reshape,
  File "/codes/deepmd-kit/deepmd/descriptor/se_t.py", line 388, in _pass_filter
    layer, qmat = self._filter(tf.cast(inputs_i, self.filter_precision), type_i, name='filter_type_all'+suffix, natoms=natoms, reuse=reuse, trainable = trainable, activation_fn = self.filter_activation_fn)
  File "/codes/deepmd-kit/deepmd/descriptor/se_t.py", line 499, in _filter
    ebd_env_ij = embedding_net(ebd_env_ij,
  File "/codes/deepmd-kit/deepmd/utils/network.py", line 188, in embedding_net
    hidden = tf.reshape(activation_fn(tf.matmul(xx, w) + b), [-1, outputs_size[ii]])
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/util/dispatch.py", line 206, in wrapper
    return target(*args, **kwargs)
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/ops/math_ops.py", line 3489, in matmul
    return gen_math_ops.mat_mul(
  File "/anaconda3/envs/dpdev113/lib/python3.9/site-packages/tensorflow/python/ops/gen_math_ops.py", line 5716, in mat_mul
    _, _, _op, _outputs = _op_def_library._apply_op_helper(

Describe the expected behavior
It works without errors.
Contributing

Do you want to contribute a PR? (yes/no): no, I don't have the idea about the reason
Briefly describe your candidate solution(if contributing):

Standalone code to reproduce the issue
I haven't successfully created a minimum code to reproduce the error. Maybe provide later...
Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.
Blas xGEMV launch failed is raised here:
https://github.com/tensorflow/tensorflow/blob/0b6b491d21d6a4eb5fbab1cca565bc1e94ca9543/tensorflow/core/kernels/matmul_op_impl.h#L431-L436

@njzjz ,
Every TensorFlow release is compatible with a certain version, for more information please take a look at the tested build configurations.In this case, can you please try installing TensorFlow v2.5 with CUDA 11.2 and cuDNN 8 .1and check if you are facing the same error. Thanks!

Hi @tilakrayal, CUDA 11.2 works for me. So, I guess there is still something incompatible with CUDA 11.3 in the source code, even if I built from source?

@njzjz ,
As mentioned above please follow  the tested build configurations and try to install tf v2.5 with compatible cuda and cudnn and let us know if you are facing any issue. CUDA 11.3 is incompatible with v2.5 as every tensorflow release is compatible with certain version.Hope it r helps to resolve the issue.Thanks!


Adds Release Docs

Adds release documentation.
Fixes: https://github.com/projectcontour/contour-operator/issues/123

@stevesloka I will update https://projectcontour.io/resources/release-process/ with the process for releasing contour operator. Commit f5954b8 provides additional operator release details based on your feedback above.


Disable deprecated and not promoted features

Hide following items from the management console menu

User Management (Role management will be available)
Userstores
Claims
Service Providers
Identity Verification Providers
Identity Providers (Resident IdP section can be enabled based on a config)
Email Templates
OIDC Scopes
Admin Advisory
Remote Logging
Server Roles

Related Issue
https://github.com/wso2/product-is/issues/18950

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/7572205002

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/7572205002
Status: success


truncateMiddle improvements

I think truncateMiddle function (also truncateBegin and truncateCharacters) should have a different behavior.
We need to set the limit of the total string length, which includes the length of the separator.
For example:
original string<PHONE_NUMBER>
truncateMiddle ('123456789', 8, '...');

As a result, we should get 123...89 or 12...789, and not 1234...6789 (11 symbols)
I also think that the function should first crop whitespace from the edges, and only then cut the content from the middle if necessary

I think that the function is good as it is. With your proposal:

what would this return ?
truncateMiddle ('123456789', 3, '...');

what if I do want to keep the whitespaces? You can use trim() on your side

1 Invalid argument exception
2 ok

It should be consistent with other trim methods.

It should be consistent with other trim methods.

Of course, this also applies to other methods.

I find this idea suitable. Usually when trimming a string the goal is to reduce it to a certain number of characters.

I find this idea suitable. Usually when trimming a string the goal is to reduce it to a certain number of characters.

By default, the length of $separator should be counted, then which is often difficult. For example: last N digits of phone, bank card, contact number.
It makes sense when displaying with with a monospace font, but usually the purpose in the browser  is "don't be too long text".
What do you think of the $includeSeparator = false function parameter.

What do you think of the $includeSeparator = false function parameter.

I'm against having it so either changing behavior by default or not changing it. Both are OK.

I think it would be better to create a separate function truncateMonospace($data, $resultLength, $separator, $separatorPosition) for fixed|monospace text such as phone numbers, bank cards numbers etc.


make marginal_counts act on memory

Summary
The marginal_counts method only acted on the ExperimentResult.data.counts, not the ExperimentResult.data.memory field. This PR updates the method so that the memory is also marginalized.  Fixes #7448
Details and comments

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

8 of 8 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.002%) to 83.439%

Totals

Change from base Build<PHONE_NUMBER>:
0.002%

Covered Lines:
52420

Relevant Lines:
62824

💛  - Coveralls

Thanks for pushing this up and sorry for the delay in an initial review. I think this is a good start, but I have a few inline comments that I think we should address. The biggest things are:

While this works correctly for the use case you wrote a test for, calling marginal_counts(result) on a result with memory will fail with a TypeError.
I also think we should put the marginalization of memory behind a feature flag (or maybe a separate function) because it is a change in behavior on a potentially inplace modification on a results object which might be unexpected for users. So we should make this opt-in somehow to not surprise people

@mtreinish I will pick up the inline comments. Initially my idea was that non marginalizing the memory  is a bug and fixing it does not require backwards compatibility. But for inplace operations I agree that we should take some care. My proposal: add a flag marginalize_memory with options:

marginalize_memory=True: marginalize both inplace and normal
marginalize_memory=False: do not marginalize, and remove the memory field from the result as it is invalid (e.g. inconsistent with the counts)
marginalize_memory=None: the old behaviour: just leave the memory intact

I would prefer to make True  the default, but we could also leave None as the default for backwards compatibility.


Configuration profile dashboard needs the ability to add / remove administrative users

We need to be able to add / remove administrative users to a configuration profile.

@excelsior - We need to edit and delete users too.


[11.x] add getOptions method to the eloquent builder

Dear sir
I have been created a method called getOptions for the eloquent builder.
This method is used to retrieve the options data for the select box.
For example:
\App\Models\User::query()->getOptions();

This will return collection with label and value keys with the name as label and id as a value by default.
In addition to, you can customize all the keys names as a parameters.

Thanks for your pull request to Laravel!
Unfortunately, I'm going to delay merging this code for now. To preserve our ability to adequately maintain the framework, we need to be very careful regarding the amount of code we include.
If possible, please consider releasing your code as a package so that the community can still take advantage of your contributions!
If you feel absolutely certain that this code corrects a bug in the framework, please "@" mention me in a follow-up comment with further explanation so that GitHub will send me a notification of your response.

Can you give me an example about what kind of features could be accepted to merge? @taylorotwell


Improve content-card 4

While going through I observe the following glitch in design
Improvement area of image:
Over big size screen it is cover whole width of screen while content is aligned toward image and left extra white space.

Here card is responsive but left side border radius is not visible

Please checkout this is final design of this specific component
https://play.tailwindcss.com/AVmp1NpZWY

@Rajdip019 @rupsha014 Please assign this to me


FFmpeg prebuffer process exited with error / Protocol not found

Describe the bug
I can't see the video stream of my camera (REOLINK RLC810 A with a NVR RLN8 410) on camera UI but it works with the same URL on VLC. The video source in Camera UI is : -i rtsp://admin:XXXX@<IP_ADDRESS>:554/h264Preview_01_sub
Logs
[2/16/2024, 7:37:59 PM] [CameraUI] Piscine: Restart prebuffer session..
[2/16/2024, 7:38:09 PM] [CameraUI]  ERROR  Piscine: FFmpeg prebuffer process exited with error! (null) - rtsp://admin:XXXX@<IP_ADDRESS>:554/h264Preview_01_sub: Protocol not found -  - Did you mean file:rtsp://admin:XXXX@<IP_ADDRESS>:554/h264Preview_01_sub? -
Environment

Node.js Version: v20.9.0
Homebridge Version: v1.7.0
Camera UI Version: v5.0.27
Operating System: Synology DSM 7.2.1
Browser: Safari on OS14

thanks for your advices !!

Same situation/error here.  Works in VLC with the same URL.
"Entry: FFmpeg prebuffer process exited with error! (null) - rtsp://user:password@<IP_ADDRESS>:8554/Streaming/Channels/101: Protocol not found - Did you mean file:rtsp://user:password@<IP_ADDRESS>:8554/Streaming/Channels/101? - "

Same situation here

🎉 A new version of camera.ui
A new version of camera.ui is currently under active development. An initial alpha/beta release and previews are coming soon. Stay tuned for exciting updates: https://github.com/seydx/camera.ui/issues/448 .
This version will no longer be developed / fixed. The new version contains many novelties and fixes (most important is for HKSV recording).

Same issu here:
[7/29/2024, 9:24:03 PM] [CameraUI]  ERROR  South Valley: FFmpeg prebuffer process exited with error! (null) - [rtsp @ 0x13e004080] method DESCRIBE failed: 404 Not Found -  - rtsp://USER:PASS@<IP_ADDRESS>:554/cam/realmonitor?channel=8&subtype=1]2: Server returned 404 Not Found -


What about existing configuration in Application Gateway?

As the title states: " with existing Azure Application Gateway",
we cannot find any statement about the configuration of listeners, backend pools, healthprobes and such that exist in the application gateway before deploying AKS services to it.
With former AGIC solution, we always had the problem that AKS is wiping the application gateway configuration, so that existing settings are lost.
What about this solution? will existing config settings stay when AKS is rolling over services?
We are asking this, because we have the need to provide other services like static webpages and mongo db clusters within the same Application Gateway idealy.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 94bdeded-846e-526c-8ce3-77ee36ffa852
Version Independent ID: 7d768d5c-0318-25f1-38f8-7a2ee15c1c41
Content: Tutorial: Enable Ingress Controller Add-On for existing AKS cluster with existing Azure Application Gateway
Content Source: articles/application-gateway/tutorial-ingress-controller-add-on-existing.md
Service: application-gateway
GitHub Login: @Caya
Microsoft Alias: caya

@sundbing, Thanks for reaching out. We will investigate and update this thread.

@sundbing, Appreciate your patience. The doc targets towards enabling AGIC add-on in existing APPGW. A sample AGIC supported application is deployed for ingress to the cluster. AGIC will update the Application Gateway you set up earlier with corresponding routing rules to the new sample application you deployed.
We are closing this issue for now. If there are further questions regarding this matter, please reply and we will gladly continue the discussion.

Thanks for the answer.
If one creates a config in the appgw manually, next to the one from AGIC, will this stay available on resetti g the pods in AKS?
Or will one loose every config but the one from AGIC.
If this is the case, I would expect to see a hint in the article

From: suvasara<EMAIL_ADDRESS>Sent: Monday, February 8, 2021 11:37:43 AM
To: MicrosoftDocs/azure-docs<EMAIL_ADDRESS>Cc: sundbing<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/azure-docs] What about existing configuration in Application Gateway? (#69885)
@sundbinghttps://github.com/sundbing, Appreciate your patience. The doc targets towards enabling AGIC add-on in existing APPGW. A sample AGIC supported application is deployed for ingress to the cluster. AGIC will update the Application Gateway you set up earlier with corresponding routing rules to the new sample application you deployed.
We are closing this issue for now. If there are further questions regarding this matter, please reply and we will gladly continue the discussion.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/issues/69885#issuecomment-775047140, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEA3HLX3WLKV65MB3SL7UK3S565HPANCNFSM4W6YDK3Q.

@sundbing, we are working on updating the document accordingly.


Expand end-to-end tests

Include dealing with static input data vs generate

Duplicae
already #82


ERROR: for lancache_monolithic_1  a bytes-like object is required, not 'str'

Describe the issue you are having
When following the quickstart and getting to the step with docker-compose I get the following error:
for lancache_monolithic_1  a bytes-like object is required, not 'str'
How are you running the container(s)
version: '2'
services:
  dns:
    image: lancachenet/lancache-dns:latest
    env_file: .env
#    restart: unless-stopped
    ports:
      - ${DNS_BIND_IP}:53:53/udp
      - ${DNS_BIND_IP}:53:53/tcp

## HTTPS requests are now handled in monolithic directly
## you could choose to return to sniproxy if desired
#
#  sniproxy:
#    image: lancachenet/sniproxy:latest
#    env_file: .env
#    restart: unless-stopped
#    ports:
#      - 443:443/tcp

  monolithic:
    image: lancachenet/monolithic:latest
    env_file: .env
#    restart: unless-stopped
    ports:
      - 80:80/tcp
      - 443:443/tcp
    volumes:
      - ${CACHE_ROOT}/cache:/data/cache
      - ${CACHE_ROOT}/logs:/data/logs

DNS Configuration
DNS is on pfsense, but the issue is running the docker, not anything to do with DNS

Output of container(s)
:~/lancache$ sudo docker-compose up -d
Starting lancache_monolithic_1 ...
lancache_dns_1 is up-to-date

ERROR: for lancache_monolithic_1  a bytes-like object is required, not 'str'

ERROR: for monolithic  a bytes-like object is required, not 'str'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 261, in _raise_for_status
    response.raise_for_status()
  File "/usr/lib/python3/dist-packages/requests/models.py", line 940, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: http+docker://localhost/v1.22/containers/ab49b494afac3610ba377685970594468aaa68e19198e9adb734eefe4618211b/start

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/compose/service.py", line 625, in start_container
    container.start()
  File "/usr/lib/python3/dist-packages/compose/container.py", line 241, in start
    return self.client.start(self.id, **options)
  File "/usr/lib/python3/dist-packages/docker/utils/decorators.py", line 19, in wrapped
    return f(self, resource_id, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/docker/api/container.py", line 1095, in start
    self._raise_for_status(res)
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 263, in _raise_for_status
    raise create_api_error_from_http_exception(e)
  File "/usr/lib/python3/dist-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
    raise cls(e, response=response, explanation=explanation)
docker.errors.APIError: 500 Server Error: Internal Server Error ("b'driver failed programming external connectivity on endpoint lancache_monolithic_1 (d84ef0df8af48a69588b8cfcee275e5300de2d739065612cd522603d36e9f929): Error starting userland proxy: listen tcp4 <IP_ADDRESS>:443: bind: address already in use'")

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 11, in <module>
    load_entry_point('docker-compose==1.25.0', 'console_scripts', 'docker-compose')()
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 72, in main
    command()
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 128, in perform_command
    handler(command, command_options)
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 1107, in up
    to_attach = up(False)
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 1088, in up
    return self.project.up(
  File "/usr/lib/python3/dist-packages/compose/project.py", line 565, in up
    results, errors = parallel.parallel_execute(
  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 112, in parallel_execute
    raise error_to_reraise
  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 210, in producer
    result = func(obj)
  File "/usr/lib/python3/dist-packages/compose/project.py", line 548, in do
    return service.execute_convergence_plan(
  File "/usr/lib/python3/dist-packages/compose/service.py", line 567, in execute_convergence_plan
    return self._execute_convergence_start(
  File "/usr/lib/python3/dist-packages/compose/service.py", line 506, in _execute_convergence_start
    _, errors = parallel_execute(
  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 112, in parallel_execute
    raise error_to_reraise
  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 210, in producer
    result = func(obj)
  File "/usr/lib/python3/dist-packages/compose/service.py", line 508, in <lambda>
    lambda c: self.start_container_if_stopped(c, attach_logs=not detached, quiet=True),
  File "/usr/lib/python3/dist-packages/compose/service.py", line 620, in start_container_if_stopped
    return self.start_container(container)
  File "/usr/lib/python3/dist-packages/compose/service.py", line 627, in start_container
    if "driver failed programming external connectivity" in ex.explanation:
TypeError: a bytes-like object is required, not 'str'

Same error for me

this is usually telling you that there is a syntax error in the .env file


Notify for app pause and resume events on Android

Add new events and accompanying logic to notify when the app is paused and resumed on Android devices.
One side effect of the pause event on Android is that the egl surface is destroyed and recreated on resume. As such this causes issues for Android apps and/or plugins that promptly makes use of the egl surface on app resume. The new resume event is setup so that it only fires after the app resumes AND the egl surface is available.
This helps resolve GodotVR/godot_oculus_mobile/issue#43
Note: I decided to add new events instead of modifying the logic for sending the NOTIFICATION_WM_FOCUS_IN and NOTIFICATION_WM_FOCUS_OUT events in order to provide backward compatibility for existing apps that have no issues with the current logic.

You may want to update the MainLoop documentation to document the new NOTIFICATION_APP_PAUSED and NOTIFICATION_APP_RESUMED constants 🙂
See Contribute to the Class Reference.

Done, thanks for the reminder!

@akien-mga Ping for this PR. It's a blocker for the Godot Oculus mobile plugin (see PR#44 and issues #35 and #43) so it'd be great if it can make the 3.2 freeze.

Thanks!


Some fixes

Some fixes of CI originally part of #368.

@staticfloat Sorry to bother you again: On Slack I read that sandbox.jl was replaced with sandbox_capable and I updated the pipeline accordingly (and indeed now tutorials are built again whereas previously they were just stuck in the queue forever). Unfortunately, that means that the tree hash has to be updated again (so far I've unblocked the pipeline manually) - could you push the necessary changes (IRC it's not something I can do on my own)?

Done, and pushed straight to master :)

Thank you!


Integrate Spike Chart with Interactive Html report

Spike chart is disabled by default
When Spike chart is enabled, provide a link on the top of the page of interactive chart

This will help the testers to navigate easily to spikes to figure out the most delayed test-steps and the failed test steps without going through the entire interactive html.
This is an enhancement.
Refer the ReportListener code for this.

Please create a branch called ISSUE-45_link_charts for this feature for the fork and PR.

Note-
@authorjapps , While reviewing this PR, if you want to run and see the report, then make sure you enable spike.chart  i.e. by marking it to true. Otherwise you may not see the link and the report just runs normally without the link.

PR pending your approval !


Worker process exits if the job failure callback raises an exception.

This change traps exceptions raised while invoking the job failure callback to prevent the worker process from exiting.  Since this callback is invoked prior to permanently failing the job, it seems reasonable to just swallow the exception and remove the job.

I'd like to see this one merged in as well. The daemon should try to protect itself from exiting if a job misbehaves.
The clunky workaround is to rescue and ignore exceptions in failure callbacks for every job I implement.

It's better to rescue any exception (Exception) rather than StandardError and ancestors.


npx prisma migrate dev --create-only

Bug description
so this --create-only is not working and it still asks for wiping the data
How to reproduce
by running "npx prisma migrate dev --create-only"  this cmd
Expected behavior
No response
Prisma information

model ui_account {
  id String!
  ......
}

// Add your code using Prisma Client

Environment & setup

OS:
Database:
Node.js version:

Prisma Version

I just experienced this and was shocked when all DB tables (except _prisma_migrations) got dumped and all installed Postgresql extensions were removed, even though --create-only was set. I would have thought that the option --create-only would imply that no data loss would happen at all, yet it does.

How to reproduce

Create bare-bones schema.prisma:
File: schema.prisma:
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["postgresqlExtensions"]
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
  extensions = [pgcrypto]
}

In Postgresql, setup something:

Create initial setup:
-- Add extension so UUID columns can use: public.gen_random_uuid()
CREATE EXTENSION IF NOT EXISTS pgcrypto;

-- CreateTable
CREATE TABLE "users" (
  "id" UUID NOT NULL DEFAULT public.gen_random_uuid(),
  "soul_bound_wallet" TEXT NOT NULL,
  "username" TEXT NOT NULL,
  "email" TEXT NOT NULL,
  CONSTRAINT "users_pkey" PRIMARY KEY ("id")
);

-- add single record
INSERT INTO
  "public"."users" ("id", "soul_bound_wallet", "username", "email")
VALUES
  (
    '1c66f019-0c29-4845-a3a1-463c9e419d3e',
    'fake-wallet-address',
    'messa_username',
<EMAIL_ADDRESS>  );

You should be able to query your tables, including the created extension:
-- find installed extensions (should at least show 'pgcrypto')
SELECT *
FROM pg_available_extensions
WHERE installed_version IS NOT NULL;

-- find user record
SELECT *
FROM users;

npx prisma db pull to populate your schema.prisma models; should look
like the following:
File: schema.prisma:
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["postgresqlExtensions"]
}

datasource db {
  provider   = "postgresql"
  url        = env("DATABASE_URL")
  extensions = [pgcrypto]
}

model users {
  id                String @id @default(dbgenerated("public.gen_random_uuid()")) @db.Uuid
  soul_bound_wallet String
  username          String
  email             String
}

Create migration files, using --create-only so no data loss happens:
npx prisma migrate dev --create-only --name init

But you still get the prompt to lose all of your data:
? We need to reset the "public" schema at "<IP_ADDRESS>:5431"
Do you want to continue? All data will be lost. › (y/N)
yes

Prisma Migrate created the following migration without applying it<PHONE_NUMBER>5245_init

The migration files are created without being applied, but all tables except
_prisma_migrations get dropped, and installed extensions are removed.

Expected behavior
For no data loss to happen; specifically for this, the prompt for deleting
everything (Do you want to continue? All data will be lost) should be
removed, or a separate option (--create-only-no-data-loss) be added to
completely prevent data loss.
Prisma information
File: schema.prisma:
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["postgresqlExtensions"]
}

datasource db {
  provider   = "postgresql"
  url        = env("DATABASE_URL")
  extensions = [pgcrypto]
}

model users {
  id                String @id @default(dbgenerated("public.gen_random_uuid()")) @db.Uuid
  soul_bound_wallet String
  username          String
  email             String
}

Environment & setup

OS: macOS Monterey
Database: Postgresql v15
Node.js version: v18.12.0
Prisma Version: 4.11.0

I'm trying to identify what version this bug started.
How do I run the migrate commands on an older version of Prisma (to run prisma migrate dev --name initial-migration --create-only on)?
(At minimum, I want to successfully baseline my DB by using an older version (and then switch to the current version again moving forward); but if possible I'd also like to help identify when the issue started.)
It doesn't seem like specifying the Prisma version correctly uses older code, making it not possible to test older versions... :/
I've gone all the way back to Prisma v2.22.0 and the issue is still happening, I highly doubt this issue is that old :S
The reason why I don't think that setting the version works is because of this output:
// set the version and check the version:
npx<EMAIL_ADDRESS>--version

// the output shows newer versions of the client, and I'm assuming for the engines as well
prisma               : 2.22.0
@prisma/client       : 4.11.0
Current platform     : darwin
Query Engine         : query-engine 60c...f6c (at /.npm/_npx/83b...ac7/node_modules/@prisma/engines/query-engine-darwin)               // shortened
Migration Engine     : migration-engine-cli 60c...f6c (at /.npm/_npx/83b...ac7/node_modules/@prisma/engines/migration-engine-darwin)   // shortened
Introspection Engine : introspection-core 60c...f6c (at /.npm/_npx/83b...ac7/node_modules/@prisma/engines/introspection-engine-darwin) // shortened
Format Binary        : prisma-fmt 60c...f6c (at /.npm/_npx/83b...ac7/node_modules/@prisma/engines/prisma-fmt-darwin)                   // shortened
Default Engines Hash : 60c...f6c // shortened
Studio               : 0.379.0

since the latest version of client/engines are used, the following command doesn't actually run the migration on an older version:
npx<EMAIL_ADDRESS>migrate dev --name initial-migration --create-only

But I still get the "reset" prompt, which shouldn't be happening when --create-only option is used:
? Drift detected: Your database schema is not in sync with your migration history.

We need to reset the PostgreSQL database "my_db" at "<IP_ADDRESS>:5431".
Do you want to continue? All data will be lost. › (y/N)

There is no bug. This is currently intended behavior, and the CLI explicitly asks you to manually confirm the reset. When this was built, the --create-only was understood differently as "do not apply the created migration at the end" and that is where we are right now. I understand that is not optimal, but it is nothing we can easily revert or change.

There is no bug. This is currently intended behavior, and the CLI explicitly asks you to manually confirm the reset. When this was built, the --create-only was understood differently as "do not apply the created migration at the end" and that is where we are right now. I understand that is not optimal, but it is nothing we can easily revert or change.

What about the docs for baselining from a production DB, which is not possible due to this dropping all your data? (tried following these steps and can't do what the docs say I can do). If --create-only isn't supposed to do what it's understood it should do (based off of you saying it does not do this), then the baseline docs are completely wrong.
Baselining is meant to create your initial migration files without touching the DB data so you can then run the next step of using the resolve command to tell prisma that the newly created init migration files have been skipped/applied; but you can't do that because following the baseline steps (specifically, this --create-only bug) still suggests to wipe your data clean which isn't what the baselining docs say will happen. Did someone who didn't understand --create-only write these docs? Or did it use to work on a significantly older version, and then the docs never updated to reflect this change? It sounds like the only way you can baseline without dropping data is by manually creating the migration files, which sounds very unpleasant and has a lot of room for error. The docs should be updated to say this, or completely removed/rewritten if this is true.
I think all docs that mention using --create-only should be rewritten/reworded to better explain it; or rename the option to something that matches the behaviour since --create-only is not only creating. All docs about baselining for existing DB's should also be rewritten, possible having warnings that it doesn't actually do what it currently says, and include suggestions of backing up your data first, running the prisma steps, get your data dropped by prisma then tables recreated, and then importing your backup into the re-created tables; or methods to manually create the needed files correctly so you can use resolve as it's currently mentioned?

What about the docs for baselining from a production DB, which is not possible due to this dropping all your data? (tried following these steps and can't do what the docs say I can do). If --create-only isn't supposed to do what it's understood it should do (based off of you saying it does not do this), then the baseline docs are completely wrong.

Sigh. That seems to be true. Try to follow these: https://www.prisma.io/docs/getting-started/setup-prisma/add-to-existing-project/relational-databases/baseline-your-database-typescript-postgres
(I raised this internally again.)


Show the "Touch the Walls" indicator on the nearest wall or on multiple walls

Potentially we also want to show steps towards the closest point on a wall
cc @llllkatjallll

cc @llllkatjallll


rounding errors cause empty white space

If the total available size is not dividable between the desired amount of columns, you possibly get empty space.
Example:
Available width: 20px
Desired cols: 3.
Each col width: 6.66px, current code rounds it to 7px.
7px x 3 cols cuases the last block to jump to a new line.
Flooring the width results in 3 x 6px cols.
Ideally, it should create blocks 6, 6 & 7px wide, however, my fix is easy and results in only 2 empty pixels on the right and 3 cols as desired.

This problem still exists (off by one pixel due to rounding issues).


docker-outside-of-docker error: "The repository 'https://dl.yarnpkg.com/debian stable InRelease' is not signed"

In the last day or two I have started to hit this error when installing the docker-outside-of-docker feature:
------
 > [dev_containers_target_stage 4/4] RUN cd /tmp/build-features/docker-outside-of-docker_1 && chmod +x ./devcontainer-features-install.sh && ./devcontainer-features-install.sh:
#15 1.035 Get:6 https://packages.microsoft.com/repos/microsoft-debian-bullseye-prod bullseye/main amd64 Packages [110 kB]
#15 1.073 Err:3 https://dl.yarnpkg.com/debian stable InRelease
#15 1.073   The following signatures were invalid: EXPKEYSIG 23E7166788B63E1E Yarn Packaging<EMAIL_ADDRESS>#15 1.196 Get:7 http://deb.debian.org/debian bullseye/main amd64 Packages [8183 kB]
#15 2.868 Get:8 http://deb.debian.org/debian-security bullseye-security/main amd64 Packages [216 kB]
#15 2.916 Get:9 http://deb.debian.org/debian bullseye-updates/main amd64 Packages [14.6 kB]

#15 4.934 W: GPG error: https://dl.yarnpkg.com/debian stable InRelease: The following signatures were invalid: EXPKEYSIG 23E7166788B63E1E Yarn Packaging<EMAIL_ADDRESS>#15 4.934 E: The repository 'https://dl.yarnpkg.com/debian stable InRelease' is not signed.
#15 4.935 ERROR: Feature "Docker (docker-outside-of-docker)" (ghcr.io/devcontainers/features/docker-outside-of-docker) failed to install! Look at the documentation at https://github.com/devcontainers/features/tree/main/src/docker-outside-of-docker for help troubleshooting this error.
------

The devcontainer.json I'm using is:
{
	"name": "Go",
	"image": "mcr.microsoft.com/devcontainers/go:0-1.17-bullseye",
	"features": {
		"ghcr.io/devcontainers/features/docker-outside-of-docker:1": {}
	}
}

NOTE: Changing to the 1.18-bullseye image version successfully installs the feature

Thanks @jkeech. I just tried docker pull mcr.microsoft.com/devcontainers/go:0-1.17-bullseye and it did pull a newer image version. However, I re-ran the dev container on my local machine but still get the issue.
I first hit the issue on the devcontainers/ci tests running in GitHub actions - I only tried building locally  to repro and test it.

Ah, sorry for the confusion. Looks like the go-1.17 image is out of support and hasn't been republished since August, which explains why it didn't get rebuilt with the new Yarn key. We only publish updates for language/runtime versions that are in active support.
From the Go docs at https://go.dev/doc/devel/release:

Each major Go release is supported until there are two newer major releases.

Go 1.19 was published on August 2, 2022, which is when support for 1.17 was officially dropped. Devcontainers dropped 1.17 and added 1.19 on August 5, 2022: https://github.com/microsoft/vscode-dev-containers/pull/1564

ah, ok - makes sense. Thanks!

Closing this as by-design/won't fix since that image is out of support. I would recommend upgrading to a supported version of Go if possible.


NIFI-5065: HTTP Site-to-Site fails sending data more than 2GB at once

Confirmed HTTP S2S can send files containing more than 2GB. I tested up to 8GB but can be more.

Int variables got overflown.
Thank you for submitting a contribution to Apache NiFi.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

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

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

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

[x] Is your initial contribution a single, squashed commit?

For code changes:

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

For documentation related changes:

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

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

@ijokarumawak Merged, but I accidentally put the Jira # in the close line and not the PR.

Thanks @MikeThomsen ! Closing.


ImageResize+ not working after update (doesn't recognize data from "load image" node)

I'm getting this error:

_ImageResize+:
Failed to validate prompt for output 155:
Output will be ignored
Failed to validate prompt for output 156:
Output will be ignored
invalid prompt: {'type': 'prompt_outputs_failed_validation', 'message': 'Prompt outputs failed validation', 'details': 'Required input is missing: image', 'extra_info': {}}
got prompt
Failed to validate prompt for output 157:

ImageResize+ 18:

Value not in list: method: 'False' not in ['stretch', 'keep proportion', 'fill / crop', 'pad']

Workflow:

Seems this issue happened before with another node:

The problem seems to be the updated version of ComfyUI Essentials nodes.
One of their values changed from bool to str.
This affects two nodes: Back To Org Size(if Smaller) and Res Limits.
The fix for the first is simple. Just select keep_proportion for the method value.

hey I have the same issue
* ImageResize+ 14:
  - Value not in list: method: 'False' not in ['stretch', 'keep proportion', 'fill / crop', 'pad']
Output will be ignored
Failed to validate prompt for output 38:
Output will be ignored
Failed to validate prompt for output 12:
Output will be ignored
Failed to validate prompt for output 18:
Output will be ignored
invalid prompt: {'type': 'prompt_outputs_failed_validation', 'message': 'Prompt outputs failed validation', 'details': '', 'extra_info': {}}

I think all you have to do is to delete the node and recreate it. It will work then


[IncreaseStackSize] Fixed description for keys setting

Due to a copy/paste error, the description for keys was the same as that for tomes.

Fixed by 62387b2b783fa39b234f5c42a3362cb1c21e9bcd to avoid messing up prettier formatting.


[FEAT] Support Redshift

Hi and thanks for this amazing project!
We've recently started using Splink with Athena and it works great. But we want to move to Amazon Redshift as it's an actual database. I think Redshift would be an excellent fit for Splink.

That said, if you are particularly keen on getting a Redshift linker up and running, take a look at #1191 where another user has put in a PR for a Postgres Linker and feel free to put in a similar PR for Redshift!

Thanks for the detailed reply!
We haven't needed fuzzy matching in our Athena-Splink project for now.
I realise that without a full implementation we can't submit a PR for Redshift support but if we don't use fuzzy matching we should be able to write a basic Redshift linker without it (for our internal use only)?
Is that right? Or does Splink still always use fuzzy matching internally somehow?

If you do make one, please submit a PR! It just won't have all the functionality of some of the linkers, but that's ok. You can see this in the comparison_level_library docs where linkers like SQLite don't have the same fuzzy matching capability. Everything else in Splink will still work fine, you just aren't able to specify comparison levels based on fuzzy matches. Given you aren't using fuzzy matching currently I would say give a PR a shot and we would be more than happy to review!
I guess my comments above were more around how we as a dev team would prioritise features. I.e. if we were going to add a new linker from scratch, we would probably lean towards backends which can give as much functionality out-of-the-box as possible. But given you have a clear need and use case for it, we are more than happy to support you with any changes you want to put in 😊