Add value-strict interface

I would find a value-strict interface to this data structure helpful.
The proposal is to add a new module called Data.RRBVector.Strict which exports a newtype wrapper around the existing type, and functions and typeclass instances that are all value-strict.
If this sounds OK I'd be happy to prepare a PR.

The reason I didn't add a Data.RRBVector.Strict module originally is that I didn't want to duplicate the surface API. Doing that means having to write a bunch of wrapper boilerplate and duplicating the doc comments (and keeping them in sync!), which I think isn't worth it. Fwiw, similar modules like Data.Sequence and Data.Vector don't expose a strict version either (yes, I know about Data.Vector.Unboxed, but that uses a different representation altogether), the default in Haskell is lazy after all.
As a workaround, you can always manually make sure that the values are evaluated before putting them in a Vector. Data.RRBVector also provides adjust' and map' (not yet released) as strict versions of adjust and map, respectively.
What do you think?

Thanks for explaining your perspective. I think it's quite reasonable not to want to take on that extra maintenance burden.
I don't think that those steps would be enough for me unfortunately. Preferably I would like to maintain strictness invariants via distinct types. I find trying to enforce strictness invariants by using strict versions of functions very error-prone, especially because typeclass instances make it very easy to accidentally use a non-strict version.
After thinking this over a bit more, I think the best thing is probably for me to fork this package and keep a strict version in sync with this one. Having it be out of tree probably makes it easier to keep things in sync and places the burden on people like me who would like to have this variant rather than on you.


add on epoch end val metric

@ethanwhite I'm testing this now. It will come with some reduction in the speed of training due to matching with the boxes. i've added a config arg to control how often accuracy is checked.

closes https://github.com/weecology/DeepForest/issues/273

:+1: Happy to have some slowdown to get this info during training and I think the config arg is a great way to let the user handle the tradeoffs

DeepForest experiment (just one class, so recall and precision are always 1) is here
https://www.comet.ml/bw4sz/deepforest-pytorch/fa8f8297cff741d2bdbeffe6af89ec69?experiment-tab=metrics&viewId=RhhMXsRA1UdsXTxZv13D7WJ8e

it runs, but i'm unhappy about the worker slowdown. and it needs better labels?

I'm going to merge this and open a new branch on profiling.


Please tell more exact steps to get this SW working ...

My Android Studio's version is 3.0.1 and if I just integrate from Github your project to Android Studio I have following errors that I would not like to see:
in android.support.design.widget.TabLayout attributes app:tabMode and tabGravity were not found. I commented them out and now there is an error package android.support.design.widget does not exist
etc.
and I'm sure if I solve this next problem arises and so on. From this description you see that I'm a newcomer in these technologies but I would like to get a working example first and then deepen my understanding of these technologies.
I just wanted to try how android notifications work on lock screen from implementation point of view but now I'm frustrated. What can I do; is there in Android Studio a magic button resolving all version conflicts etc. to get this work ? I would not like to study this long ...
Or is there some other github project demonstrating these things that works better.

Were you eventually able to run it?

Unfortunatelly I had to stop this project because of lack of time and moved to other projects. I wish you good luck in your trials and maybe new versions of applied services help to solve this thing. I'm a novice in here and if I don't get tutorials running I'm in problems because of lack of knowledge ...

Thanks @learner62! :) Wishing you all the best with your projects!


Default behavior for Enter key in Transacting Terminal Challenge

When typing in the answer for Transacting Terminal Challenge I noticed that hitting the Enter key doesn't behave as expected on the first button press.
Expected Behavior

'Run' the code to progress the challenge

Actual Behavior

Normal newline behavior for Enter on the first press
Hitting enter for a second time the Enter key behaves as expected

Tested on Firefox on Android

Hmmm. I didn't have any issues on iPhone chrome or Firefox. Can you try to replicate this again?

Confirmed I can replicate

I also noticed that the terminal input has autocapitalization

This must be unique to android then.

I also noticed that the terminal input has autocapitalization

Mine does as well. Let's create a separate issue for that.

It works as expected after a space character, this seems to be due to how the virtual keyboard wokrs on Android, it doesn't track keyCodes as you type them

Here is some documentation describing the problem on Android.


[AMD] inThreadTranspose: Transpose between global load and local store for non-TN layouts: part 2 of 4

inThreadTranpose: part 2 of 4
Introduction
This PR introduces the AMD-specific inThreadTranspose feature to improve shared memory access efficiency for non-TN GEMM and 2nd dotOp in Flash Attention.
The entire feature has been broken into 4 pieces for more reliable integration and this PR is the 2nd of 4.

[x] Add TTGIR pass for inThreadTranspose w/o activating it
[x] Add the sharedEncodingAttr update and associate toLLVM change. This should fully enable inThreadTranspose.
[ ] Add the new flag in sharedEncodingAttr w/o using it
[ ] Change the shared linearLayout conversion and shared->dot in amd path to enable it. This should improve the perf of inThreadTranspose.

Feature description
Currently on AMD hardware, if the dot Operand is K-major, we'd use the same vectorization for ds_write as global_load, but won't coalesce on ds_read, resulting in poor shared memory/LDS read efficiency prior to MFMA operation.
This feature, inThreadTranspose, groups multiple global_load together and packs vector across grain to write to LDS with vectorization, so that when the matrix is written into LDS, it's already consecutive on K dimension, and therefore vectorized ds_read is also enabled. This is achieved by v_perm_b32 assembly instruction in AMDGCN, allowing independent register to be contiguous in VGPR space, so that we can write them together into LDS.
PR description
Continuous from the previous PR, this one updates the SharedEncodingAttr on AMD hardware such that SharedEncodingAttr will always guarantee coalesces LDS read, and let the inThreadTranspose to explore if LDS write can be coalesced on non-KContig tensor.
Beyond the TTGIR level update, lowerToLLVM has to be updated in order to properly align the shared memory address to the vector data about to be written. storeDistributedToShared is update to activate special linear layout conversion for blocked layout when it sees blocked -> shared transfer with different order.
In summary, there're three changes:

Change SharedEncodingAttr to guarantee coalesces LDS read and swap the sharedEncoding order if the tensor is non-KContig.
Activate the previously added blockedToLinearLayoutThreadRake when transferring blocked to shared for non-KContig.
A new perVectorCallback to align the shared memory data to the address.

Close given we need to implement it differently


feat: format most commented elements

This PR makes the most elements formattable. The only untouched expressions are Parenthesized, FieldAccess, and FuncCall, which have special treatment. Other elements are all marked formattable if not in math. No style change.
Fixes a bug with destructuring introduced in #154. Destruct and params with line comments should not fold into one line.
We treat elements focused on in this PR as flow of items. They are joined by spaces (can be optional) or blocks, and no line break is allowed within.
We use a trick. When formatting these elements, we need not care about the syntax, but simply consider their types and make corresponding countermeasures. In some cases where Expr and Pattern coexist, we need to record the order.
The implementations are subject to change for simplicity and expressiveness.

Thanks!


Annotating array types with example tag not working

Version: v3.0.0
Bug: When trying to annotate an array data type with the example tag it gets interpreted as string
Steps to reproduce:
Create following model in C#:
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;

namespace ns
{
    public class Model
    {
        /// <summary>
        /// summary
        /// </summary>
        /// <example>
        /// ["entry1", "entry2", "entry3"]
        /// </example>
        [Required]
        public ISet<string> Stuff{ get; set; }
    }
}

This will generate the following "Example Value" for the model:
{
  "stuff": "[\"entry1\", \"entry2\", \"entry3\"]"
}

instead of
{
  "stuff": [
    "entry1",
    "entry2",
    "entry3
  ]
}

This is not supported - you can only use XML comments to specify simple string examples. If you need to provide examples for more complex types, you should use an Operation Filter.
See the following blog post for some inspiration:
https://mattfrear.com/2015/04/21/generating-swagger-example-responses-with-swashbuckle/

Thank you very much for your response.
I would suggest adding this to https://github.com/domaindrivendev/Swashbuckle.AspNetCore#include-descriptions-from-xml-comments

For anyone having the same problem: Meanwhile someone published a well-working solution:
https://github.com/mattfrear/Swashbuckle.AspNetCore.Filters

Hi @pascalpfeil
Could you please elaborate a bit more on what helped you with the package
https://github.com/mattfrear/Swashbuckle.AspNetCore.Filters
Indeed, I've tried to install it added
c.ExampleFilters();
and
services.AddSwaggerExamplesFromAssemblyOf<MyType>();
but when using:
/// <example>["CHF"]</example>
public string[] Currencies { get; set; }
I still get "string", like this:

Best,
Nico

Hi @nicostubi, unfortuantely, that was a long time ago and I do not remember. Best of luck!


Update CMAC cipher algorithm list, and optimize CMAC_Update for better performance.

Update manual, add SM4-CBC to CMAC cipher algorithm list.
Reduce the number of EVP_Cipher function calls in CMAC_Update, to improve performance of CMAC.

Checklist

[x] documentation is added or updated
[x] tests are added or updated

I've sent my CLA, and is approved already.
I'm not sure why the cla check failed :(

We observe that SM4-CBC CMAC is also supported, but it is not included in the manual.
So we add the SM4-CBC to CMAC cipher algorithm list in the manual, and add some test cases for SM4-CBC CMAC.

As AES-CBC CMAC is based on AES-CBC. The performance of AES-CBC CMAC and AES-CBC should be nearly in large package case.
But we observer that, when package size is greater than 8KB, the performance of AEC-CBC CMAC is much worse than AES-CBC.
We found that CMAC_Update calls EVP_Cipher to cipher one bl (indicates block length) each time, so CMAC_Update calls EVP_Cipher for package_size/bl times. This introduces a great function-call overhead when package size is large.
To improve performance of CMAC, we reduce the number of EVP_Cipher function calls in CMAC_Update.
The performance test result of our optimization is list below.
IMPROVEMENT(%):
                    A72     N1      N2      x86
aes-128-cbc@256     65.4    54.6    37.9    86.6
aes-128-cbc@1024    156.0   105.6   65.8    197.1
aes-128-cbc@8192    237.7   139.2   80.5    285.8
aes-128-cbc@16384   249.1   143.5   82.2    294.1
aes-192-cbc@256     65.6    46.5    30.9    77.8
aes-192-cbc@1024    154.2   87.5    50.8    167.4
aes-192-cbc@8192    226.5   117.0   60.5    231.7
aes-192-cbc@16384   236.3   120.1   61.7    238.4
aes-256-cbc@256     66.0    40.3    22.2    69.5
aes-256-cbc@1024    136.8   74.6    35.7    142.2
aes-256-cbc@8192    189.7   93.5    41.5    191.7
aes-256-cbc@16384   196.6   95.8    42.2    195.9
des-ede3-cbc@64     6.9     4.4     2.9     7.2
des-ede3-cbc@256    9.3     6.1     4.3     13.1
des-ede3-cbc@1024   10.0    6.4     4.8     14.9
des-ede3-cbc@8192   10.3    6.5     5.1     15.5
des-ede3-cbc@16384  10.3    6.4     5.1     15.5
sm4-cbc@256         9.5     3.0     -       18.0
sm4-cbc@1024        12.3    3.6     -       24.6
sm4-cbc@8192        13.2    3.8     -       27.0
sm4-cbc@16384       13.5    3.8     -       27.2

Is a hybrid approach possible?  Buffer on stack for small sizes, malloc for large ones?  Malloc tends to be more efficient for large allocations in my experience.

Is a hybrid approach possible? Buffer on stack for small sizes, malloc for large ones? Malloc tends to be more efficient for large allocations in my experience.
Regardless, a 0.5% difference isn't significant IMO.

Yes, I also think 0.5% difference isn't significant.
And hybrid approach may cause the implementation more complicated. I think unhybrid approach could be better in this case.

malloc/free is not a cheap operation sometimes, would it make sense to instead have a fixed buffer on the stack of a size let's say 1024 bytes and use that as the output buffer? You would still have to loop but but the loop count would be much smaller.

Hi. We've made a implementation based on buffer on stack. Performance of buffer-on-stack-implementation is about 0.5% worse compared with malloc-implementation. But buffer-on-stack-implementation introduces more complicated branch logic (to cover cases that package size is greater than buffer size, and buffer size is not multiple of block length), making the code less readable. So we tend to choose malloc-implementation to balance performance and maintenance.

Hi @t8m , do you think this make sense?

I am still unsure about this. I would at least cap the allocation size by some number - not sure by how much but something around a 100kB would seem reasonable to me. Let's imagine you want to CMAC a few MB of data - with this PR as is it would require allocation of a same size buffer which would be then immediately dropped.

I am still unsure about this. I would at least cap the allocation size by some number - not sure by how much but something around a 100kB would seem reasonable to me. Let's imagine you want to CMAC a few MB of data - with this PR as is it would require allocation of a same size buffer which would be then immediately dropped.

Yes, I get it. Malloc then immediately drop a large buffer seems inappropriate in some cases.
I've updated the patch by buffer-on-stack implementation. Please help to review again, thanks.

The cases have been updated. The test buffer size is greater than or equal 2048, so the burst is tested.

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Hi @t8m @paulidale,
check_asni  job failed.
test/cmactest.c:296:9: error: string length '2048' is greater than the length '509' ISO C90 compilers are required to support [-Werror=overlength-strings]
296 |         "#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789#",
|         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The reason is, we use string longer than 509 bytes in cmactest.c , which is not supported by ISO C90.
Do we need to fix it?

Do we need to fix it?

Yes. This is a problem. This issue is causing CI failures for all PRs at the moment.

Yup, Fisher is preparing a fix for this

We need the fix ASAP. It is trivial fix so I can do it if he cannot do it right now.

Hi @t8m @mattcaswell @tom-cosgrove-arm , I've created a new pr https://github.com/openssl/openssl/pull/21177 to fix it.

There also #21177 21173


New toasts/alert/notification library

react-s-alert has been discontinued, as such we would like to move to a more active library like react-toastify.
Solving this issue would require rewriting all toasts/alert/notification code written using the react-s-alert to the new libraries API (react-toastify).

hi! let me do it!

Is this issue still up?
I would like to contribute to it.

Great! I'll assign you to it.

I have tried to clone the repo and run it in local, but because of backend error after login page not loading. What should I do ?

It says, not able to find MongoDB URI.

Can you provide me, backend .env file ?
I am not able to run without it.

Hey, I'll update the README of the backend with appropriate instructions. Sorry for the inconvenience.

@pcube99 I have now updated the README in https://github.com/gauravsofat/elections-api with appropriate development instructions. Do comment here if you run into problems :)

I have created PR. #7
Please have a look.

#7 fixes this.


Development planning, Milestone 2

Here's the list of planned tasks for this milestone, now that the new TypeScript runtime (antlr4ng) is working well.

[x] Convert ST4 to TypeScript (stringtemplate4ts)
[x] ANTLR4 runtime tests in TypeScript, currently being ported from the Java runtime tests and stored in this repo. They will move to the TS runtime repo once they are all finished.
[x] Work out the fundamental design of runtime testing, where each runtime author is responsible for his own tests. This is a major change from the current situation, where the tool author is responsible for all runtimes.
[x] antlr4ng completed (100% coverage of the Java runtime).

Converting StringTemplate 4 to TypeScript is a real pain and annoying side task, as I actually want to get rid of it. But migrating to a new template approach at the same time when converting ANTLR4 is probably too risky and might be more time consuming than just biting the bullet and convert ST4 first. Maybe someone can benefit from this at least.

Coverage of the Java runtime is nearly 100% complete (tracked in an own branch), except for Java specific classes.


Windows builder is not caching cargo and rust deps

Need to set the CARGO_HOME and SERVO_CACHE_DIR environment variables to something sensible to avoid wasting a ton of time on our Windows builder.
Changes should be made to this file:
https://github.com/servo/saltfs/blob/master/buildbot/master/files/config/environments.py

Specifically, these variables should be added to the build_windows expression.

What about using %APPDATA%\.cargo for CARGO_HOME and %APPDATA%\.servo for SERVO_CACHE_DIR?

@jeandudey That sounds great to me, and much better than my other hacky ideas! The one good thing to test locally is to make sure that env vars get properly expanded when set and used by Cargo, as otherwise the files will still end up in the directory that gets cleared every time!


'data_loc' in fields

Related to #91 and the discussions in #95. (particularly https://github.com/xcompact3d/x3d2/pull/95#discussion_r1609690019)
This issue is not about the mesh object, or the data_loc variables it defines, these are solid and finally bringing a functionality we very much need in the codebase. This issue is mainly about the data_loc variable in field, and discussing the best way to manage it.
I think managed to come up with a plan where we can have a correct data_loc in most fields (all of them in practice), with minimal user intervention.
My main concern is about making the user responsible for specifiying the data_loc when requesting a field.
dpdx_x => get_block(DIR_X, X_FACE)
call tds_solve(dpdx_x, p, x_stagder_p2v)

I think its not the best way to move forward, because we're taking effectively one action, but in two stages, and unnecessarily link them together making a potential mistake more likely.
So essentially, the tdsops instance x_stagder_p2v in the above code snipped already has got enough idea about where the input field data lives and where the output field data lives. I'll go into more detail but my proposal is basically nominating the tds_solve subroutine to determine the data_loc of the output field based on the input fields data_loc (if available, but will be available almost in all cases) and tdsops instance specifications. And once this is sorted we can rest assured that the output field nows about exactly where the data it store lives at.
dpdx_x => get_block(DIR_X)
call tds_solve(dpdx_x, p, x_stagder_p2v)
! print *, 'data_loc of dpdx_x:', dpdx_x%data_loc

We still need to define the data_loc by ourselves for the main field variables (u, v, and w), but the rest will be sorted out by itself because the tdsops instances can give the correct insight about data_locs.
The only minor issue for implementing this is that tdsops instances are essentially 1D operators, and they can be used in different pairs of data_locs. For example, x_der1st can be used to obtain derivatives from VERT to VERT, as well as from Y_EDGE to Y_EDGE, (also applies to X_FACE-X_FACE and Z_EDGE-Z_EDGE). And to keep things in good order I think the best is coming up with a terminology in tdsops so that we can deduce the output field's data_loc based on input field's data_loc and this newly introduced variable in tdsops, where it describes the relationship between the data_locs of input/output fields.
I think this requires more careful thinking and discussions and of course implementation of this is beyond the scope of #95. I'm looking forward to hear everyones opinion on this and will be happy to give this a try (after #95 is merged) and implement if we're all happy.

I like this idea as it allows to double check that tdsops is doing what we expect it to do and it forces us to set data_loc for inputs fields (which should be more obvious for the user).
I will let you implement that in a new PR, but I will add a setter for data_loc there that tsdops can use in the future.

I just want to elaborate on what I have in mind to make sure we're on the same page.
So the main thing is setting a data_loc in the output field_t before the tds_solve subroutine returns. This could be as simple as
u_out%data_loc = output_data_loc

or with a setter function like
u_out%set_data_loc(output_data_loc)

and probably setter function is a better idea and I think this is what you mentioned. But here this approach simply disregards the present data_loc and just sets it to its new value, and this new value is determined beforehand independently (more details below). The data in output field is also ignored and overwritten so I think it makes sense to just set the data_loc without paying attention to its previous state. Is this also what you have in mind?
The only challenge at this stage is finding the right data_loc for the output field by using input field's data_loc and the tdsops object specifications. There are two ways to sort this out and I think the best way is having an independent function in common.f90, and passing data_loc of the input field and the specific rule in the tdsops class (for now we only have p2v and v2p, but this need to be extended to cover v2v and p2p and maybe with a better naming) so that we get back the data_loc of output field based on these two inputs from this independent function.
Another option would be making tdsops class understand data_locs and figuring out the output data_loc, but I think its not a good idea. tdsops class essentially describes the rules for solving a single tridiagonal system, even applicable to a single RHS, so quite abstract. The pencil group or mesh are all very high level concepts at tdsops class level. data_loc in particular describes a location in a 3D domain, but tdsops is not concerned about higher dimensions and absracted away from all these. The codebase uses tdsops in a 3D domain, but the input and output data locations as far as tdsops concerned are essentially movements in a 1D line. So what this represents in a 3D domain is something we need to figure out outside of the tdsops in my opinion. Any thoughts on this?

yes, the setter is what I had in mind, and yes, I feel like we shouldn't check data_loc when setting it.
For the way to find the right data_loc I also agree, a single function (in common or elsewhere) that will return data_loc make sense. I wouldn't have minded having it in tsdops but you have a better understanding/vision of what tsdops should include that I leave that call to you


Issue with Silk.NET texture processing

I have a code which throws this message whenever I run the program and the Window immediately closes:

Unhandled exception. Silk.NET.Core.Loader.SymbolLoadingException: Native symbol not found (Symbol: glTextureParameteri)
   at Silk.NET.GLFW.GlfwContext.<GetProcAddress>g__Throw|3_0(String proc)
   at Silk.NET.GLFW.GlfwContext.GetProcAddress(String proc, Nullable`1 slot)
   at Silk.NET.OpenGL.GL._B.get__DNG()
   at Silk.NET.OpenGL.GL.TextureParameter(UInt32 texture, GLEnum pname, Int32 param)
   at Blood.RenderTests.Tests.Load() in C:\Users\Enis Dacik\Desktop\Blood-master\Blood\RenderTests\Tests.cs:line 164
   at Silk.NET.Windowing.Internals.ViewImplementationBase.Initialize()
   at Silk.NET.Windowing.WindowExtensions.Run(IView view)
   at Blood.RenderTests.Tests..ctor() in C:\Users\Enis Dacik\Desktop\Blood-master\Blood\RenderTests\Tests.cs:line 42
   at Blood.Program.Main(String[] args) in C:\Users\Enis Dacik\Desktop\Blood-master\Blood\Program.cs:line 13

Platform: Desktop
Framework Version: .NET 4.8
API: Vulkan/OpenGL
API Version: Vulkan 1.2/OpenGL 4.3 Legacy/OpenGL 4.5 Core/OpenGLES 3.2

Attempt one to fix it was to change IDEs, but that didn't work;
Attempt two was to download a newer version of .NET framework;
Attempt three was to check if the code worked at all by compiling it on another PC, and it worked.

My guess it's the Silk.NET version but I have the latest one. I really don't know what the problem is.

Have you checked using glGet* that the OpenGL version is 4.5 or higher? This function isn’t available on GLES. You’ll likely have to switch to using glTexParam*.

Yeah turns out I have 4.3. Nevermind, thanks for the help.


UnprocessableEntity. Reason: Sequence contains no matching element

Hi Team,
I am getting this error in the VS code while publishing in Sandbox Environment.
I searched the same error and checked this issue "https://github.com/microsoft/AL/issues/399"
I tried installing manually from Extension Management. it says -
The extension 'Xsens Global Master by Intwo <IP_ADDRESS>' is synchronized with the correct version. However, the provided extension has a different set of tables and table extensions than the synchronized extension.
I have checked and downloaded the symbols again but still I am getting same error.
Can you please help me out.

What versions are you using. An error message like this can happen in many ways given the variety of services and the complexity of the NST's codebase until a publish operation reaches the NST.
These kind of issues are more support cases where there is lot more information provided.
It would be better if you reach out to your CSS.

Hi kalberes,
Thank you for replying. I have been working on the same on priority as I need to deliver on time.
I tried a lot and I found it was happening due to a Key used in custom table that was disabled by Property "Enabled=False".
It took so much time to find out because of 100s of objects. I checked one by one. Also error information was not enough to find out in one go.
Thanks again!!


LU scraper failed

LU scraper currently fails:
Run the scraper...
./scrapers/run_scraper.sh: line 28: /home/runner/work/covid_19/covid_19/scrapers/scrape_lu.py: No such file or directory
Error: Not matched input line: ?? Error: unsupported format string passed to NoneType.__format__
Error: Not matched input line: Traceback (most recent call last):
Error: Not matched input line: File "/home/runner/work/covid_19/covid_19/scrapers/parse_scrape_output.py", line 304, in <module>
Error: Not matched input line: f"
# Errors: {errs}"))
Error: Not matched input line: TypeError: unsupported format string passed to NoneType.__format__
Error: Not matched input line:

Yes, one of the recent commits renamed it to scrape_ly.py apparently. Should be scrape_lu.py


Added 1.31 prow-job templater

Issue https://github.com/aws/eks-distro/issues/3214, if available:
Description of changes:

Created the 1.31 Prow job templates

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve
/lgtm


Prebuilt binaries are not being fetched correctly

Possible install-time or require-time problem
I am installing strapi which requires sharp. As I am in a corporate environment, I use an internal repository which contains a copy of prebuilt binaries for libs and sharp.
In my .npmrc I have sharp_libvips_binary_host and sharp_binary_host but the installer does not pull anything from there.
Actually the installer seems to append the URL to the local past of my installation

[X] I have read and understood all of the documentation relating to installation.
[X] I have searched for known bugs relating to this problem in my choice of package manager.

You must confirm both of these before continuing.
Are you using the latest version of sharp?

[X] I am using the latest version of sharp as reported by npm view sharp dist-tags.latest.

If you cannot confirm this, please upgrade to the latest version and try again before opening an issue.
If you are using another package which depends on a version of sharp that is not the latest,
please open an issue against that package instead.

[X] I am using Node.js with a version that satisfies ^18.17.0 || ^20.3.0 || >=21.0.0
[ ] I am using Deno
[ ] I am using Bun

Are you using a supported package manager and installing optional dependencies?

[X] I am using npm >= 10.1.0 with --include=optional
[ ] I am using yarn >= 3.2.0
[ ] I am using pnpm >= 7.1.0 with --no-optional=false
[ ] I am using Deno
[ ] I am using Bun

What is the complete error message, including the full stack trace?
><EMAIL_ADDRESS>install
> (node install/libvips && node install/dll-copy && prebuild-install) || (node install/can-compile && node-gyp rebuild && node install/dll-copy)

sharp: Using local libvips from /Users/stefano/_TEST/my-strapi-project/node_modules/@strapi/upload/node_modules/sharp/https:/myartifactoryhost/artifactory/gen-repo/node-libs/sharp/v8.14.5/libvips-8.14.5-darwin-arm64v8.tar.br
sharp: Installation error: ENOENT: no such file or directory, open '/Users/stefano/_TEST/my-strapi-project/node_modules/@strapi/upload/node_modules/sharp/https:/myartifactoryhost/artifactory/gen-repo/node-libs/sharp/v8.14.5/libvips-8.14.5-darwin-arm64v8.tar.br'

This is my .npmrc
sharp_libvips_binary_host=https://myartifactoryhost/artifactory/gen-repo/node-libs/sharp/
sharp_binary_host=https://myartifactoryhost/artifactory/gen-repo/node-libs/sharp/
npm_config_sharp_libvips_binary_host=https://myartifactoryhost/artifactory/gen-repo/node-libs/sharp/

My env
  System:
    OS: macOS 15.0.1
    CPU: (12) arm64 Apple M3 Pro
    Memory: 1.89 GB / 36.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.16.0 - /opt/homebrew/opt/nvm/versions/node/v20.16.0/bin/node
    Yarn: 1.22.22 - /opt/homebrew/bin/yarn
    npm: 10.8.1 - /opt/homebrew/opt/nvm/versions/node/v20.16.0/bin/npm
    pnpm: 9.7.1 - /opt/homebrew/bin/pnpm

<EMAIL_ADDRESS>install

Please upgrade to the latest version.
If you are using another package which depends on a version of sharp that is not the latest, please open an issue against that package instead.

Can't understand how does work...but npm install<EMAIL_ADDRESS>produces the exact same issue, appending the host to URL
npm error command sh -c (node install/libvips && node install/dll-copy && prebuild-install) || (node install/can-compile && node-gyp rebuild && node install/dll-copy)
npm error sharp: Using local libvips from /Users/stefano/_TEST/t2/node_modules/sharp/https:/myartifactoryhost/artifactory/gen-repo/node-libs/sharp/v8.14.5/libvips-8.14.5-darwin-arm64v8.tar.br
npm error sharp: Please see https://sharp.pixelplumbing.com/install for required dependencies
npm error

The latest version is v0.33.5, please upgrade.


configured prettier with eslint

Related #100
npm run eslint-check now shows
No rules that are unnecessary or conflict with Prettier were found.

Coverage remained the same at 58.086% when pulling 81d0f50f657fde01282793473d87baea25497041 on nileshgulia1:format into 23d4245787e0fa7b141915d3455edd6548a2aa21 on plone:master.

Why is this a separate command, this can just be part of "yarn lint" right?

@robgietema  Now we can use it with yarn lint  :+1:

Fixed by #128


Gradle 4.7 doesn't execute init scripts

It seems that Gradle 4.7 doesn't execute the init scripts stored in the "init.d" directory.
Expected Behavior
The init scripts should be evaluated upon build.
Current Behavior
The init scripts are simply ignored.
Context
I use custom init scripts to pre-configure the access to Artifactory.
Steps to Reproduce (for bugs)
In the "init.d" directory, create a file "fail.gradle" with the following content.
throw new RuntimeException("Fail on purpose !")

The build should fail when you run ./gradlew clean with any build. It doesn't. The test works with Gradle 4.6 but not Gradle 4.7.

What happens when you run ./gradlew -I $HOME/.gradle/init.d/fail.gradle?

Init scripts can be referenced from various locations. Is it possible that one location works while another does not? @fritaly could you please specify exactly where and how you're referencing your init script?

Thanks for the quick replies. In my case, the init script is located inside the Gradle distribution (that's a custom distro I package). So on my Mac, the file is located at ~/.gradle/wrapper/dists/gradle-4.7-custom/75we120cqoyuuwxr53aaddz7l/gradle-4.7/init.d/fail.gradle.
Interestingly, the init script is ignored when stored under ~/.gradle/wrapper/dists/gradle-4.7-custom/75we120cqoyuuwxr53aaddz7l/gradle-4.7/init.d but things work when I move the script to ~/.gradle/init.d.
Have things changed regarding init scripts embedded inside the Gradle distro ? This used to work in 4.6.

@fritaly I can't reproduce this.  Is it possible that you're not using the custom version that has the init script?
A couple of things to check:

Are there any other Gradle daemons running when the build doesn't fail when it should?
If you add println gradle.gradleHomeDir to your build.gradle, do you see the expected path to the Gradle distribution with the init script?

Thanks @big-guy, the issue was indeed a lingering Gradle daemon running unnoticed in the background. I was sure there was none 🤦♂ It started working as soon as I killed it.
Thanks and sorry for the inconvenience 👍

@fritaly No worries, thanks for letting us know!

The daemon used should not matter. init.d scripts should be run regardless. This is a bug.

init.d might not be the only thing that differs in a custom distribution. We occasionally have to patch a distribution to temporarily fix an issue, and it's really useful to be able to do that without having to build an entire snapshot distribution (or update the version ourselves).

Changing the Gradle jars themselves is not a use case we intend to officially support. This would require much more changes than just taking the distro into account for which daemon to start. E.g. caching would also be affected.

@oehme could the priority of this be reviewed please? This is seriously disruptive for those with custom distributions - we're having to manually --stop daemons several times a day to prevent Gradle from selecting the wrong daemon and failing builds.

@DanielThomas It's already assigned to 4.9 and at the top of the backlog.

@DanielThomas I don't recall you mentioning these problems before 4.7, have you experienced this with older versions? If it's a recent regression that would warrant a higher priority fix.

@oehme I think we'd occasionally seen this before, but 4.7 definitely made things much worse.

Okay, I can reproduce the issue. There is a test for it, but for some reason that I have yet to find the test doesn't catch this problem. The fix should be relatively easy, so I guess we can squeeze it in 4.8.

This change in 4.7 caused the problem. So this is indeed a recent problem and should go into 4.8.

I discovered another issue - nested builds (like buildSrc) currently don't inherit the gradle home from their enclosing build, leading to the same init script-finding issue. This needs to be fixed as well.

This is fixed for 4.8

Hi folks, first of all thanks for the fix and investigation!
Since it turned out to be an actual problem could this be (re)labeled with "affects-version:4.7" so it pops up as known issue in the release notes?


ReferenceError: Can't find variable: require

Have error similar to this :
http://stackoverflow.com/questions/30779915/is-it-possible-to-use-fs-filesystem-module-inside-page-executed-by-phantomjs
var fs = require('fs');
...
ReferenceError: Can't find variable: require
Anyone know how to solve this?
this is javascript that was executed in page

Hi. No, you can't do that. You can't reference or use any built-in module inside the page context. Use page.evaluate to transfer needed objects or data.


[REFACTOR][ARCH] Introduce StructInfo

This is the first PR that introduces StructInfo as discussed in https://github.com/tlc-pack/relax/issues/293.
The main list of changes include:

Introduce StructInfo data structures
Set of analysis functions that helps to do struct info derivation such as lca, erase_to_well_defined and base analysis
Test cases for the analysis functions
Update printer/parser to handle struct info
Update normalization/mutator to propagate struct info correct

As a first stab, we aim to bring in minimum best-effort derivation that mostly replicates the previous behavior. We will then send followup PRs to continue bring things to centered around struct info.
Right now, the constructor interface of Var, Function are purposely kept inact and accepts Shape/Type, we then derive struct info from the shape/type. The propagation function calls into UpdateStructInfo, which also automatically updates the shape/type that is consistent with the previous behavior.
All the tests passed locally, with a three exceptions in printer, which we disabled. This is mainly because StructInfo deduction brings more powerful result that returns Tensor("n * m"), which we still need to handle in parser and printer. They will be fixed in followup PRs and won't affect our current developments.
We note that the normalization and deduction logic becomes cleaner in the refactor, and as a result motivates us to move to this new state to facilitate future refactors, and we will continue bring set of following PRs for further consolidation

followup trackings https://github.com/tlc-pack/relax/issues/315

Followup M1 https://github.com/tlc-pack/relax/pull/319

I think we could move forward with this as well. There are some design questions that we should discuss in separate contexts (I've made a note of them).


fix: minor fixes after review

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


Allow all JSON-compatible types to pass to ValueFunction (MLDB-1880)

Replaces exception fallback with one that goes through JSON to allow all types to be converted.  This means that the ValueFunction interface is now able to support most types, rather than just ExpressionValues and CellValues.

+1


Debug console REPL disappears after collapsing and expanding debug console.

VSCode Version: 1.51.1
OS Version: Windows 10 2004

Steps to Reproduce:

Move the debug console to the sidebar. The debug REPL is available right below the debug console.
Collapse the debug console with the chevron icon
Expand the debug console with the chevron icon
The debug REPL has disappeared.

Expanding some other section (like watch), while the debug console is in the expanded state as well results in the reappearance of the REPL.

Does this issue occur when all extensions are disabled?: Yes

@billie-spektor thanks for this issue, I can reproduce and I acknowledge it.
I will probably prohibit debug console from being moved outside of the panel - since I think it needs the horizontal space.
Can you explain why you would like it in the sidebar? What is the use case

Hi isidorn, thanks for checking! My setup is a dual monitor setup, with VSCode open on one screen, and the browser open on the second. In combination with the microsoft/vscode-edge-devtools extension, my VSCode screen looks like this:

I think this provides a nice integrated experience for debugging HTML, CSS and JS and seeing your changes real-time reflected in the browser.
I do like to keep all debugging related sections together, hence my preference for using the sidebar for the debug console (given that the other debugging sections are there by default).
In terms of spacing, the only thing I miss here is some more default vertical spacing for the REPL (which I believe has been suggested before as a feature request but it was decided not to implement that). Regarding the horizontal spacing: I feel that there is enough horizontal spacing (the same as for the other debug sections, such as variables which may show similar information as the debug console).
My setup feels a bit cluttered if I move the debug console to the bottom. At the bottom, it takes up vertical space from the editor as well as from the edge-devtools extension. I also still keep the sidebar open for the other debug sections, so I would actually lose space if the debug console can't be moved to the sidebar anymore.

Makes sense, thanks for the expanation. We will try to fix the issue this milestone.

@billie-spektor can you please try this issue with the latest vscode insiders, it should be fixed.
Thanks!

@billie-spektor can you please try this issue with the latest vscode insiders, it should be fixed.
Thanks!

Perfect, thanks for fixing!

Perfect, thanks for fixing!

Thanks, based on your comment adding verified label

Thanks, based on your comment adding verified label


chore: Choose port for SxS install compatible with Azure Files CSI driver

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Changes the side-by-side-values.yaml file to choose port used with the node pod that do not conflict with the ports used by the Azure Files CSI Driver.
Which issue(s) this PR fixes:

Fixes #
Requirements:

[x] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] tested upgrade from previous version

Special notes for your reviewer:
Release note:
none

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-23.6%) to 42.925%

Totals

Change from base Build<PHONE_NUMBER>:
-23.6%

Covered Lines:
182

Relevant Lines:
424

💛  - Coveralls


Temporarily disable images and blobs GC in kubevirt eve

In kubevirt eve OCI images are downloaded by

eve downloader which downloads eve images and customer app images.
kubernetes downloader which downloads kubernetes components specific container images which are independent of eve.

But in both the cases we use same containerd repository to store the images. Volumemgr runs GC when the device reboots and tries to delete all the images which are not referenced, and in the process deleting all kubernetes images.
Until we find a reasonable solution to identify who downloaded the images like setting a label on eve downloaded images (eve-downloaded=true) For now disabling GC on kubevirt eve.

I see a few issues that we need to address properly:

Cleanup: with this, we lose any cleanup of images in kubevirt variant. That means volumes, VMs, anything that k3s didn't download. Call it a "storage leak", but we cannot let it sit for more than a very short while.
Structure: There is a growing proliferation of "if kubevirt-eve" or "if ! kupervirt-eve". This gets messy and unreadable really quickly. FWIW, the original code was that way about Xen vs kvm, which is what led to the hypervisor abstraction.
Architecture: Until this, the known way of getting a list of content was via config content trees. volumemgr had exclusive control over what should and should not be stored locally. Now we have 2 sources for it, and hence this cleanup problem. We need a clean design for this from the architectural level.

@deitch there is a way to fix this issue. I already have the code for that, but do not want to submit PR yet because it requires rigorous testing in kvm eve.
Basically idea is to add a label to images download by eve (eve-downloaded=true) so during GC we will cleanup only images that have the label. But the issue is how we deal with the upgrades of kvm eve ? We do not want to create issues at customer installs. Need to be tested thoroughly and hence for now I am masking the GC in kubevirt eve

Basically idea is to add a label to images download by eve (eve-downloaded=true) so during GC we will cleanup only images that have the label.

Just like the last option. Sounds like a good approach.

But the issue is how we deal with the upgrades of kvm eve ?

What is the problem?

Need to be tested thoroughly and hence for now I am masking the GC in kubevirt eve

Yes. although the risk mostly is about deleting less. volumemgr currently deletes anything it doesn't know about. Now it will delete only things it knows it placed there. The only risk is that it might place something without labeling it, so something will linger. That is better than deleting something we need

Basically idea is to add a label to images download by eve (eve-downloaded=true) so during GC we will cleanup only images that have the label.

Just like the last option. Sounds like a good approach.

But the issue is how we deal with the upgrades of kvm eve ?

What is the problem?

Need to be tested thoroughly and hence for now I am masking the GC in kubevirt eve

Yes. although the risk mostly is about deleting less. volumemgr currently deletes anything it doesn't know about. Now it will delete only things it knows it placed there. The only risk is that it might place something without labeling it, so something will linger. That is better than deleting something we need

Just for deleting sure its easy to leave some of those. But volumemgr also maintains the references of list of known blobs and images in this cache, it loads all of those  it sees now into its cache. But with the mix of images (with and without labels) we will be not be loading some of those into cache. That leads to other issues like content tree not found kind of errors. I do not remember on top of my head what exactly are the errors. I need to check again

But with the mix of images (with and without labels) we will be not be loading some of those into cache. That leads to other issues like content tree not found kind of errors. I do not remember on top of my head what exactly are the errors. I need to check again

Pretty much, it needs solid planning and design.

But with the mix of images (with and without labels) we will be not be loading some of those into cache. That leads to other issues like content tree not found kind of errors. I do not remember on top of my head what exactly are the errors. I need to check again

Pretty much, it needs solid planning and design.

Agreed. That's why this PR is to disable GC for now for kubevirt eve.  AFAIK, this GC is really needed for corner cases and in almost all the cases we will not have a stale images/blobs to be deleted on the device. So its better to disable than break things.

Looks like this temporary solution is not acceptable, will close this PR and submit a new PR which implements GC for Kubevirt eve.


create a social media navbar

I want to add a social media navbar . Please assign it to me under GSSOC'23.

Please assign me this issue under GSSoC'23, thank you.

Please assign me this issue under GSSoC'23, thank you.

KhushiKhandelwal610

Thank you, @KhushiKhandelwal610, for your response. You are welcome to continue with your code contribution. Please ensure that you follow the code standards and include a screenshot when submitting your pull request.


blank PDF after app returns from background mode.

When app switches to background mode, PDFView.onDetachedFromWindow might be called which causes the pdf to recycle and clear all of its contents.
Then, when app returns to foreground, the pdf appears blank.
This happens when pdf is located inside a Dialog, for example.

It happens for me too

this work in Activity but not work in Dialog.this is dialog Code:
public class PdfViewerModal extends Dialog {
    public PdfViewerModal(@NonNull Context context) {
        super(context);
        View mainView = LayoutInflater.from(context).inflate(R.layout.modal_pdf_viewer, null);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        addContentView(mainView, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.MATCH_PARENT));

        PDFView pdfView = mainView.findViewById(R.id.pdfView);

        pdfView.fromAsset("asan.pdf").load();
    }
}


documentation for attaching infos to scenario in cucumber-jvm

The documentation for attaching text/screenshot to the scenario is a bit outdated
https://cucumber.io/docs/guides/browser-automation/?sbsearch=attach#browser-automation-tools-for-jvm
In Cucumber 5.7.0 the emed is deprecated, and if I got it right in v6 it is removed and replaced with attach.

That is correct @boris779 - Currently we're trying to get the API standardised for each language cucumber is written in. Once we've got them all standardised, things should be easier to look at.
For now we just try to keep the docs reasonably up to date with what works currently, and as mentioned, feel free to submit some tweaks if you think you can improve on them. We welcome contributions to the docs from everybody!


[osx] Add get_period to Voice

cpal fails to compile on OSX without the get_period method on Voice, this PR provides it as it appears in the wasapi backend. The examples work as intended.

Is the value actually correct?
It's not because the example works that the value is good.

I believe the closest analogue is num_frames in the callback args but get_period is on the Voice itself, so there is an API discrepancy here.
I think the best way to go about this would be to store a Mutex or RwLock and mutate it whenever the callback is called, and return its current value in get_period. But I'm still not certain that num_frames is exactly what this is calling for.

Did some more research into this. The AudioUnit callback specifies the number of frames per channel requested by the OS, and it is not possible to set the callback interval/buffer size, only a hint can be provided (but that should be implemented in another PR).
For this, get_period() is semantically identical to the get_pending_frames() implementation, which waits for the ready event from the ready channel to indicate the number of frames and channels requested. However, the public get_period() interface does not specify if users should expect the period to be the same for any given Voice instance. I will push a commit implementing this, but that I think is worth putting in the documentation, because there's nothing that says the OS has to return the same inNumberFrames on each render. In practice, though, my MacBook Air did request exactly 512 frames (~11.6ms 44.1) every call for the beep example.

It's weird that get_period() would be the same as get_pending_samples(), but according to your explanation it would mean to me that get_pending_samples()'s implementation is wrong.

I am confused what the difference is supposed to be, or what "currently being processed" means. Is get_pending_samples supposed to be the number of samples submitted to the sample channel in this situation?

Is get_pending_samples supposed to be the number of samples submitted to the sample channel in this situation?

Yes, the number of samples submitted minus the number that have been processed already.

Provided CI passes, the most recent commit should provide a correct implementation of get_pending_samples for coreaudio.


Encounter segment error when trying to deploy tflite model

1. System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04):
Ubuntu 20.04.1
TensorFlow installation (pip package or built from source):
Pip package
TensorFlow library (version, if pip package or github SHA, if built from source):
2.11.0

2. Code
Provide code to help us reproduce your issues using one of the following options:
Option B: Paste your code here or provide a link to a custom end-to-end colab
TF_PATH = "/data/lxp/mmpose/tf_model"
TFLITE_PATH = "/data/lxp/mmpose/mmpose.tflite"
converter = tf.lite.TFLiteConverter.from_saved_model(TF_PATH)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
converter.representative_dataset = representative_data_gen
converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8]
converter.target_spec.supported_types = [tf.int8]
converter.inference_input_type = tf.int8
converter.inference_input_type = tf.int8  # or tf.uint8
converter.inference_output_type = tf.int8  # or tf.uint8
tf_lite_model = converter.convert()
with open(TFLITE_PATH, 'wb') as f:
f.write(tf_lite_model)
3. Failure after conversion
If the conversion is successful, but I encounter segment error when I try to deploy tflite model.
Then, I found that error appeared while "AllocateTensors()"->"graph_.PrepareSubgraphs()"->"registration->prepare(context_, node)"
There, I printed the node id and registration->builtin_code.

After using netron, we can know the node 24 correspond to FullyConnected.

Also, go into the funtion "prepare(context_, node)" , the error is raised by the following code.
TFLITE_DCHECK(filter->params.zero_point == 0);
This code restricts the zeropoints of the weight in fully_connected-layer should always be zero.

But mine is -10. What needs mentioning is that  the weight in this fully_connected-layer is poduced by the upper transpose-layer.
I wonder why my zeropoint is not zero while I use tensorflow-Post-training quantization-Full integer quantization to get my quantization_weight and it's hard for me to find the configure to restricts the zeropoints.

Hi @HJL8055. Thanks for reporting the issue.
Sorry for the delayed response.
As per the documentation,  the zero point of the weights in fully-connected layers is enforced to be zero to avoid the runtime cost of multiplying the zero point of the weight with the activation value.
Can you please provide  the model and steps you have followed in order to reproduce the issue and help troubleshooting process.
Thanks.

Closing as stale. Please reopen if you'd like to work on this further. Thanks!


Disabled switch on a dark background shows dashed border

It should not.

Closing in favor of the switch redesign #853


Headspace web app changed its routing

I didn't get to use this script today. It looks like the headspace web app changed its URL format. Hence the script can't find the right ID in the URL. I tried to handcraft URLs and then give it to the script but I ended up downloading some random track 😅

Yes they updated the frontend. I would fix it soon. I haven't been getting enough time.
The script still does work for downloading all packs and everyday meditations

Checkout the latest release v3.0.0, it has been fixed.

Closing this issue since it has been fixed

Thank you! I got to make it work on v 3.0.2 :-)


Worker threads fail to join

The code snippet below hangs.  It prints "done" but doesn't exit program.
MXNet version: 0f6b6b3d98d06dbbc7748086b05b149277773839
Env: AWS Ubuntu DL AMI
import os
import mxnet as mx

def test_ctx_group():
    data = mx.symbol.Variable('data')
    out  = mx.symbol.broadcast_add(data, data)
    texec = out.simple_bind(mx.cpu(0), data=(1,200))
    print("done")

if __name__ == '__main__':
    test_ctx_group()

If debug it with gdb, it shows it's blocked at
^C
Program received signal SIGINT, Interrupt.
0x00007ffff7bc565b in pthread_join (threadid=140736057591552, thread_return=0x0) at pthread_join.c:92
92      pthread_join.c: No such file or directory.
(gdb) bt
#0  0x00007ffff7bc565b in pthread_join (threadid=140736057591552, thread_return=0x0) at pthread_join.c:92
#1  0x00007fffedcbd857 in std::thread::join() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#2  0x00007fffa4155cb3 in mxnet::common::LazyAllocArray<mxnet::engine::ThreadedEnginePerDevice::ThreadWorkerBlock<(dmlc::ConcurrentQueueType)0> >::Clear() ()
   from /usr/local/lib/python2.7/dist-packages/mxnet-0.9.5-py2.7.egg/mxnet/libmxnet.so
#3  0x00007fffa41566d6 in mxnet::engine::ThreadedEnginePerDevice::~ThreadedEnginePerDevice() () from /usr/local/lib/python2.7/dist-packages/mxnet-0.9.5-py2.7.egg/mxnet/libmxnet.so
#4  0x00007fffa4156a69 in mxnet::engine::ThreadedEnginePerDevice::~ThreadedEnginePerDevice() () from /usr/local/lib/python2.7/dist-packages/mxnet-0.9.5-py2.7.egg/mxnet/libmxnet.so
#5  0x00007fffa41465da in std::shared_ptr<mxnet::Engine>::~shared_ptr() () from /usr/local/lib/python2.7/dist-packages/mxnet-0.9.5-py2.7.egg/mxnet/libmxnet.so
#6  0x00007ffff78331a9 in __run_exit_handlers (status=0, listp=0x7ffff7bb56c8 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true) at exit.c:82
#7  0x00007ffff78331f5 in __GI_exit (status=<optimized out>) at exit.c:104
#8  0x00007ffff7818f4c in __libc_start_main (main=0x466e50 <main>, argc=2, argv=0x7fffffffddc8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
    stack_end=0x7fffffffddb8) at libc-start.c:321
#9  0x0000000000577c2e in _start ()

Fix in this PR:  https://github.com/dmlc/mxnet/pull/6773


Unable to share vscode.dev from the web

Testing #156153
Desktop

Web

I kept expecting to be able to share a vscode.dev URL from either the web or desktop and don't see an option on the web. While I can easily cop the URL, having a direct link to the notebook cell is far more valuable.

The share currently depends on the built in git extension, which we don't have in the web.


[DO NOT MERE] test

Please ensure your pull request adheres to the following guidelines:

[ ] explain your motives to contribute this change: what problem you are trying to fix, what improvement you are trying to make
[ ] Document your Changes in the CHANGELOG.md file of the respected chart as well as the Chart.yaml

FIx was merged on master, closing PR, we are now more up to date but flakiness not fully resolved


On-screen keyboard not opening on Ayaneo 2 using LC

To my understanding, on Ayaneo 2, the LC button should bring up the on-screen keyboard. (Looking at HandyGCCS confic, LC is mapped to OSK.) For me it does not bring it up though, neither in SteamUI nor in games, on ChimeraOS v42.
When tapping into the SteamUI search bar, and the OSK opens automatically, pressing LC does close it.

On the Aya Neo 2, the RC button brings up the keyboard. However, this only works when in game.

my apologies @alkazar , I did mean RC. LC is for the Chimera app, and that works as expected.

@dctr Does it work on current stable?

Yes, working now, thanks @Samsagax


How can I find out Ipad on using DeviceInfo

if I want tab in android to findout like Deviceinfo.isTablet(){
}
similarly how Can we find out IPAD

DeviceInfo.getDeviceId().indexOf('iPad') > -1

DeviceInfo.isTablet() was added in 0.97
Please reopen an issue if you still got problems (check #198 first)


Rendering inaccuracy while loading tabs

Windows Terminal version
1.12.10393.0
Windows build number
10.0.19044.1586
Other Software
No response
Steps to reproduce
Running  the terminal for 4 to 5 time after closing each time
Expected Behavior
No response
Actual Behavior
Running  the terminal sometimes renders blurry software

Can you maybe send a screenshot? There's any number of things this could be, but I'm not really sure what specific issue you're having just based on your description.


Userdata without Usertype

Converting a project that uses
    Controller* controller = reinterpret_cast<Controller *>(lua_newuserdata(L, sizeof(Controller)));
    std::memset(controller, 0, sizeof(Controller));

to use sol.
This pointer gets mutated in other function calls, and holds some state data.
How do I get sol to allocate a Controller* (or a Controller&? or a smart pointer? I'm not at all experienced with C++) without having to go through the hassle of defining a usertype? And how do I then return that userdata from a function?

Answering things in reverse.
No Binding Necessary
You don't need to bind a usertype in order to put it in and outside of sol2:
lua_State* L; /* some pre-existing lua state in your Lua application */

int main () {
     sol::state_view lua(L);
     lua["meow"] = catte{};

     catte* p = lua["catte"];
     catte& p = lua["catte"];

     return 0;
}

For more on setting usertypes, see: https://sol2.readthedocs.io/en/latest/tutorial/all-the-things.html#c-classes-from-c
This covers also using std::unique_ptr and std::shared_ptr, which is as simple as: literally just using it there's no setup required lmao.
"I want to mess with memory directly"
Memory layout for lua_newuserdata calls is a bit complex (not really) because we obey alignment and layouting rules. For like 97% of types this doesn't matter for shit, but we've run afoul fo some people's code because the alignment was wrong when they just went casting it. So,
take a look at these docs: https://sol2.readthedocs.io/en/latest/api/usertype_memory.html
In plain terms (completely ignoring memory alignment), that looks like this:
    Controller** pp_controller = reinterpret_cast<Controller **>(lua_newuserdata(L, sizeof(Controller*) + sizeof(Controller)));
    Controller* p_controller = *(pp_controller + 1);
    *pp_controller = *p_controller;
    std::memset(p_controller, 0, sizeof(Controller));

But You Can Abstract That Away In Sol2
When you get more comfortable with sol2, you can actually leave these sections of your code alone and instead define interop layers instead: https://github.com/ThePhD/sol2/tree/develop/examples/interop
Replace "Kaguya" or "LuaBridge" with whatever bespoke thing your application is doing. The simplest example to see that from is this one: https://github.com/ThePhD/sol2/blob/develop/examples/interop/kaguya/source/kaguya.cpp
We use kaguya-special methods because that's what the example is, but you can replace it with your own functionality. This means that...
Controller* controller = lua["controller];

will invoke whatever special getters/checkers you define instead of the ones packaged with sol2.

Got it, I think the first section of your answer is what I want.
Did I accomplish it correctly?

Looks good to me. Both Controller* and Controller& will alias the memory directly in Lua and leave no copies, so you should be okay.
👍


testing for ctypes branch

Hello, I was wondering if anybody could have a go at the ctypes branch.
It is an update to the library that should make it easier to customise the camera streams (which ones as well as parameters). It should also work on Python 2 and 3.
I have been testing on my setup and it works ok so far. Wanted to have some feedback before pushing to master. Especially since some of you are using OsX and Windows, which I have not been trying out so far.

maybe @harajune, @scaldara55, @helxsz ?

I just moved back to my project where I'm using pyrealsense.  I had done a far amount with the older C/C++ wrapper style.  CType is new to me and I'm just coming up to speed.  I would like to contribute where possible.  I'm a bit of a novice with open source git development.  I can do some testing, documentation and/or functional enhancements.  I've never done a "pull request" but would like to learn how.  It seems to me that the current pyrealsense only supports basic operations.  There are a lot more capabilities in librealsense that are not exposed in pyrealsense.  Do you have plans and time to support more capabilities?  Would you please suggest areas of the project that I might work on which would not duplicate things that you are planning on doing?


Socks5 Proxy Server

Add an option to create a Socks5 proxy server that forwards all requests through the WireGuard tunnel.
Related: #38

Hi @tehcneko, I've decided against embedding a SOCKS5 server directly in onetun, as the would be too many features to maintain. I added a section in the README with an example on how to chain onetun with a proper SOCKS5 server such as dante.


Task26

Task on State machine activity

@gayathrigundaveni
Task -26
Code verified.
Task -27
Code verified.
Task -28
Code verified.
Task -29
Code verified.
Task -30
Code verified.
Task -31
Code verified.
Task -32
Code verified.
Task -33
Code verified.


get prediction probability

hi, can I get the probability of prediction result for each class?
I have 7 classes, and what I got is like this [-2.3080198764801025,1.7756237983703613,1.0015809535980225,0.9872103929519653,0.1296948343515396,3.5421037673950195,-5.409295558929443]
which is not the probability.

You should use torch.softmax function over the logit to get the probability.


rust-client: fix missing values in the reported TrackHolePunchRequest

Update the rust client to report the additional metrics that were recently added to the TrackHolePunchRequest  in the punchr.proto:

[ ] Protocol filter (see c0482a724e27a526be2383c38b5d12457a1c479b)
[ ] Latency and networking information (see #36)
[ ] NAT mapping (see da3b2f2512a1f0853836da53d3265ad85e24bc01)

Resolved with #40. Unfortunately we don't expose the necessary information in rust-libp2p to provide the above metrics, thus the fields had to be left empty.


react-tinacms-editor: TypeError: imagePluginState is undefined

Description
Given I run the next-demo locally on the master branch
When I select some text
Then I get a TypeScript error about imagePlugin State
Demo: https://www.loom.com/share/6380a04a1b8a497ab5c9b6ff0bf1e89c
Expected result
I can use the nextJS demo to test wysiwyg.
Environment
Tinacms Package Versions

├── UNMET DEPENDENCY<EMAIL_ADDRESS>├── UNMET DEPENDENCY<EMAIL_ADDRESS>├── UNMET DEPENDENCY<EMAIL_ADDRESS>├── UNMET DEPENDENCY<EMAIL_ADDRESS>├── UNMET DEPENDENCY<EMAIL_ADDRESS>├── UNMET DEPENDENCY<EMAIL_ADDRESS>├── UNMET DEPENDENCY<EMAIL_ADDRESS>├── UNMET DEPENDENCY<EMAIL_ADDRESS>├── UNMET DEPENDENCY<EMAIL_ADDRESS>

Tools

Tool
Version

browser
Firefox

os
macOS 10.15.6

node
v12.18

npm
v6.14

Good catch @DirtyF
Sidenote: there's no need to do the package versions when you're running the demos in the tinacms codebase, just the branch name


Feature Request: A option to silent output for batch/cron usage

I have setup a cron job to update pre cached games periodically and also setup cron to email me outputs prefill is pretty verbose which is ok when I sit in front of the computer, but an option to lower verbosity or disable output alltogehter (maybe except the summary) would be nice for usage in a cron job and mail setup as the mail gets pretty big.
Maybe also a logging function to log to a logfile only would be a nice addition.

Have you tried running prefill with the --no-ansi flag?  It will make it so that the progress bar is no longer displayed, and everything output should be in plaintext.

Closing as the --no-ansi flag should cover this use case.  If it doesn't, please feel free to reopen


Validate submodel reference in JSON Schema

Check submodel references to be only ModelReference<SubmodelReference>

@mhrimaz Thanks for the PR!
@sebbader-sap @s-heppner maybe we should collect all these patches and re-write them  as Python code so that they can be re-applied to new versions as well?

@sebbader-sap the constraint has been in aas-core-meta since forever, but we can not transpile it to JSON schema. At least, I don't know how.

We truly thank you for your input, @mhrimaz!
However, we sadly cannot allow changing the schema files by hand, since they are generated using aas-core-works.
That particular constraint is implemented in aas-core-meta (meaning it appears for example in the generated SDKs), however cannot be transpiled into the JSON schema with reasonable effort, so that we decided not to implement that particular generation function.
If you're willing to, you're more than welcome to contribute to the schema generation functionality at aas-core-codegen.
@mristin We decided against the semantic patching approach you mentioned due to not wanting to introduce another layer of code that needs to be maintained.

I'll close the pull request for now, but feel free to re-open it in the future.


Fix recipe loading tests for esmvalcore before and after version 2.8

Description
esmvalcore's _recipe.py has become a submodule in its own right in esmvalcore>=2.8 and we should account for that when we test the recipe loading and interaction with esmvalcore in tests/integration/test_recipes_loading.py

Closes #3018

Before you get started

[x] ☝ Create an issue to discuss what you are going to do

Checklist
It is the responsibility of the author to make sure the pull request is ready to review. The icons indicate whether the item will be subject to the 🛠 Technical or 🧪 Scientific review.

[x] 🛠 This pull request has a descriptive title
[x] 🛠 Code is written according to the code quality guidelines
[x] 🛠 Tests run successfully
[x] 🛠 All checks below this pull request were successful

@ESMValGroup/technical-lead-development-team anyone's got time to have a look at this pls, it bugs me we have red tests :grin:

cheers muchly @remi-kazeroni :beer: The problem is the tests will fail if we remove this and we get users that want to use an older version and run the tests after installation - I'd keep it there until we don't support 2.7 anymore (may be a while)

Two comments before merging:

I think using something like packaging.version.parse might be simpler and clearer to check for the version:

if version.parse(core_ver) < version.parse('2.8.0'):
    ...

Regarding @remi-kazeroni's comment: Once ESMValTool 2.8 is released, it's impossible to use ESMValCore < 2.8 with it (because of a pin similar to that) I guess. On the other hand, ESMValTool < 2.8 cannot be used with ESMValCore >= 2.8 (because of the same pin). So this if is only really necessary at the moment where one can have a development installation of ESMValTool 2.8.0.dev with ESMValTool v2.7.x. So I agree with @remi-kazeroni that we should remove the if right after the next release.

@schlunma all done now, cheers for the packaging suggestion! If you could have a last look and merge, that'd be fab, bud :beer:

Right - I thought we also have that same pin in setup.py, but apparently we don't. Then it's probably safer to use that, though I think that there will probably many other places where using an old core will fail :smile:
Regarding the check: Do you have an idea why if version.parse(core_ver) < version.parse('2.8.0'): did not work? This would be the better option, just in case we do a v2.7.2 :joy:

Regarding the check: Do you have an idea why if version.parse(core_ver) < version.parse('2.8.0'): did not work? This would be the better option, just in case we do a v2.7.2

You do a 2.7.2, I won't :rofl: The parser seems to be semantic ie a 2.8.0.dev is indeed smaller than a 2.8.0 and that made tests fail, and they'd keep failing until we actually release 2.8.0

though I think that there will probably many other places where using an old core will fail

That, sir, is very true - but not on my watch :grin:

Perfect, thanks both!!


Add PR template for the repo

Helps you have a good time accepting PRs

I will look into it, thank you.


failed to start project following Setup the Project in CONTRIBUTING.md

failed to start project following Setup the Project in CONTRIBUTING.md
Describe the bug
± |develop ✓| → yarn dev
yarn run v1.22.10
$ NODE_ENV=development vite serve playground --config ./vite.config.ts
failed to load config from /home/ming/learn/js/chakra-ui/chakra-ui-vue-next/vite.config.ts
error when starting dev server:
Error: Cannot find module<EMAIL_ADDRESS>    at createEsmNotFoundErr (internal/modules/cjs/loader.js:912:15)
    at finalizeEsmResolution (internal/modules/cjs/loader.js:905:15)
    at resolveExports (internal/modules/cjs/loader.js:437:14)
    at Function.Module._findPath (internal/modules/cjs/loader.js:477:31)
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:872:27)
    at Function.Module._load (internal/modules/cjs/loader.js:730:27)
    at Module.require (internal/modules/cjs/loader.js:957:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.<anonymous> (/home/ming/learn/js/chakra-ui/chakra-ui-vue-next/vite.config.ts:33:41)
    at Module._compile (internal/modules/cjs/loader.js:1068:30)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

To reproduce

git clone repo
yarn bootstrap
yarn dev

Additional context
i noticed that there are not dist folder in chakra-ui-vue-next/node_modules/@chakra-ui/vue-auto-import.
seems command yarn bootstrap does not aim to generate  above dist folder,  after i search lerna docment then run lerna run build,  dist is generated there and 'yarn dev' works

i have basic knowledge about lerna.

i noticed that there are yarn build step before yarn bootstrap, this should correct and need add to CONTRIBUTING.md

actually i  learned how success project use monorepo, vue3 removed lerna,  vitejs does not use it at all, slidev use pnpm. it seems pnpm is the best option.

I am trying to setup the project and I am getting a similar error by just following the guide in Contributing.md
[plugin:vite:import-analysis] Failed to resolve entry for package "@chakra-ui/c-alert".
The package may have incorrect main/module/exports specified in its package.json.

The error sometimes changes to a different component (@chakra-ui/vue-system for example)
PS: the setup guide now uses pnpm instead of yarn


<EMAIL_ADDRESS>application template

not working for RN0.29+?

@WhatAKitty - with new android app template.

@AlimovSV  This change is backward compatible. And it will be works fine for RN0.29-?

@AlimovSV I will published a new version which is BREAKING CHANG.

no close.


fix: TopCorner parameter in FluentProfileMenu doesnt apply style

🐛 Bug Report
Regression of this issue? https://github.com/microsoft/fluentui-blazor/issues/1997
Setting "TopCorner" to "true" on "FluentProfileMenu" does not apply the style that forces the positioning of the popup here
💻 Repro or Code Sample
Occurs when using Microsoft.FluentUI.AspNetCore.Components & Icons version 4.9.3, simply downgrading the packages to 4.7.1 fixes the issue. Can't attach a screenshot due to network policy here :/
The below component is the topmost element of my app.
<FluentLayout>
    <FluentHeader Style="height: 48px; background: var(--neutral-layer-4); color: var(--neutral-foreground-rest);">
        <FluentSpacer />
        <FluentProfileMenu Image="@(new Icons.Regular.Size48.Person().ToDataUri())"
                           TopCorner="true">
            <HeaderTemplate>
                    <FluentButton<EMAIL_ADDRESS>In</FluentButton>
            </HeaderTemplate>
            <ChildContent>
            </ChildContent>
            <FooterTemplate>
            </FooterTemplate>
        </FluentProfileMenu>
    </FluentHeader>
</FluentLayout>

Yes, it is indeed a regression. Later commits rearranged the divs, so ::deep used to solve this does not work anymore. We will pick this up.

The PR #2632 will fix that, in the next Release.


Force brace on new line if the signature ends with comment

Fixes the second issue of #1643.

Thanks!


App UI freeze when using Image.asset with LocalizationsDelegate during hot restart

Steps to Reproduce

Use following lib dart classes in a test project and rerun the app multiple times using hot restart until it starts feezing (replace "assets/sky.jpg" within the TestApp class with any other example picture). I have added the "debugPrintBeginFrameBanner = true;" to show all drawn frames.
I'm mainly able to reproduce the issue on the iOS emulator iPhone 11 Pro Max, but also reproduced the problem (less common) on an android emulator as well as on a real android device.
Main
import 'package:flutter/material.dart';
import 'app.dart';
void main() {
  runApp(TestApp());
}

TestApp
import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'app_localizations.dart';

class TestApp extends StatefulWidget {
  @override
  _TestAppState createState() => _TestAppState();
}

class _TestAppState extends State<TestApp> {

  @override
  void initState() {
    debugPrintBeginFrameBanner = true;
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    print("Build");
    return MaterialApp(
      title: 'TestApp',
      home: Scaffold(
        body: Center(
        child: Column(mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Image.asset("assets/sky.jpg"),
              CircularProgressIndicator(),
            ],
          ),
        ),
      ),
      localizationsDelegates: [
        AppLocalizations.delegate,
      ],
    );
  }
}

AppLocalizations
import 'dart:async';
import 'dart:convert';

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

class AppLocalizations {
  final Locale locale;

  // Static member to have a simple access to the delegate from the MaterialApp
  static const LocalizationsDelegate<AppLocalizations> delegate =
  _AppLocalizationsDelegate();

  AppLocalizations(this.locale);

  // Helper method to keep the code in the widgets concise
  // Localizations are accessed using an InheritedWidget "of" syntax
  static AppLocalizations of(BuildContext context) {
    return Localizations.of<AppLocalizations>(context, AppLocalizations);
  }

  Map<String, String> _localizedStrings;

  Future<bool> load() async {
    // Load the language JSON file from the "lang" folder
    String jsonString =
    await rootBundle.loadString('lang/en.json');
    print("loadString");
    Map<String, dynamic> jsonMap = json.decode(jsonString);
    _localizedStrings = jsonMap.map((key, value) {
      return MapEntry(key, value.toString());
    });

    return true;
  }

  // This method will be called from every widget which needs a localized text
  String translate(String key) {
    return _localizedStrings[key];
  }
}

// LocalizationsDelegate is a factory for a set of localized resources
// In this case, the localized strings will be gotten in an AppLocalizations object
class _AppLocalizationsDelegate
    extends LocalizationsDelegate<AppLocalizations> {
  // This delegate instance will never change (it doesn't even have fields!)
  // It can provide a constant constructor.
  const _AppLocalizationsDelegate();

  @override
  bool isSupported(Locale locale) {
    // Include all of your supported language codes here
    return ['en'].contains(locale.languageCode);
  }

  @override
  Future<AppLocalizations> load(Locale locale) async {
    // AppLocalizations class is where the JSON loading actually runs
    AppLocalizations localizations = new AppLocalizations(locale);
    await localizations.load();
    return localizations;
  }

  @override
  bool shouldReload(_AppLocalizationsDelegate old) => false;
}

lang/en.json
{
  "test": "test"
}

Expected results: No UI freezing.
Actual results: The UI freezes, but it seems like the app is still running. In some other test cases the UI freezed, but gestures were still handled (log messages). My current assumption is that all functions, which affect the file system/application directory (e.g. "Image.asset" and "await rootBundle.loadString('lang/en.json');") are leading to UI issues.

Logs

Performing hot restart...
Syncing files to device iPhone 11 Pro Max...
Restarted application in 930ms.
flutter: Build
flutter: ▄▄▄▄▄▄▄▄ Frame 1            (warm-up frame) ▄▄▄▄▄▄▄▄
flutter: ▄▄▄▄▄▄▄▄ Frame 2                        0ms ▄▄▄▄▄▄▄▄
flutter: loadString
flutter: ▄▄▄▄▄▄▄▄ Frame 3                  141.866ms ▄▄▄▄▄▄▄▄
flutter: ▄▄▄▄▄▄▄▄ Frame 4            (warm-up frame) ▄▄▄▄▄▄▄▄
flutter: Build

Analyzing test_app...
No issues found! (ran in 1.1s)

[✓] Flutter (Channel stable, v1.12.13+hotfix.9, on Mac OS X 10.15.3 19D76, locale en-US)
    • Flutter version 1.12.13+hotfix.9 at xxx/Development/flutter
    • Framework revision f139b11009 (11 days ago), 2020-03-30 13:57:30 -0700
    • Engine revision af51afceb8
    • Dart version 2.7.2

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at xxx/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Library/Java/JavaVirtualMachines/jdk-11.0.4.jdk/Contents/Home/bin/java
    • Java version Java(TM) SE Runtime Environment 18.9 (build 11.0.4+10-LTS)

[✓] Xcode - develop for iOS and macOS (Xcode 11.4)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.4, Build version 11E146
    • CocoaPods version 1.8.4

[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.0.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

Wow, thought I was alone with this problem. Flutter Devs why is that happening? Some logical explanations?

Hi @eitel4
I tried to reproduce the issue but no freezes

Code Sample
import 'dart:convert';

import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'package:flutter/services.dart';

void main() {
  runApp(TestApp());
}

class TestApp extends StatefulWidget {
  @override
  _TestAppState createState() => _TestAppState();
}

class _TestAppState extends State<TestApp> {
  @override
  void initState() {
    debugPrintBeginFrameBanner = true;
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    print("Build");
    return MaterialApp(
      title: 'TestApp',
      home: Scaffold(
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Image.asset("assets/dash.png"),
              CircularProgressIndicator(),
            ],
          ),
        ),
      ),
      localizationsDelegates: [
        AppLocalizations.delegate,
      ],
    );
  }
}

class AppLocalizations {
  final Locale locale;

  // Static member to have a simple access to the delegate from the MaterialApp
  static const LocalizationsDelegate<AppLocalizations> delegate =
      _AppLocalizationsDelegate();

  AppLocalizations(this.locale);

  // Helper method to keep the code in the widgets concise
  // Localizations are accessed using an InheritedWidget "of" syntax
  static AppLocalizations of(BuildContext context) {
    return Localizations.of<AppLocalizations>(context, AppLocalizations);
  }

  Map<String, String> _localizedStrings;

  Future<bool> load() async {
    // Load the language JSON file from the "lang" folder
    String jsonString = await rootBundle.loadString('lang/en.json');
    print("loadString");
    Map<String, dynamic> jsonMap = json.decode(jsonString);
    _localizedStrings = jsonMap.map((key, value) {
      return MapEntry(key, value.toString());
    });

    return true;
  }

  // This method will be called from every widget which needs a localized text
  String translate(String key) {
    return _localizedStrings[key];
  }
}

// LocalizationsDelegate is a factory for a set of localized resources
// In this case, the localized strings will be gotten in an AppLocalizations object
class _AppLocalizationsDelegate
    extends LocalizationsDelegate<AppLocalizations> {
  // This delegate instance will never change (it doesn't even have fields!)
  // It can provide a constant constructor.
  const _AppLocalizationsDelegate();

  @override
  bool isSupported(Locale locale) {
    // Include all of your supported language codes here
    return ['en'].contains(locale.languageCode);
  }

  @override
  Future<AppLocalizations> load(Locale locale) async {
    // AppLocalizations class is where the JSON loading actually runs
    AppLocalizations localizations = new AppLocalizations(locale);
    await localizations.load();
    return localizations;
  }

  @override
  bool shouldReload(_AppLocalizationsDelegate old) => false;
}

flutter doctor -v
[✓] Flutter (Channel stable, v1.12.13+hotfix.9, on Mac OS X 10.15.4 19E287,
    locale en-GB)
    • Flutter version 1.12.13+hotfix.9 at /Users/taha/Code/flutter_stable
    • Framework revision f139b11009 (2 weeks ago), 2020-03-30 13:57:30 -0700
    • Engine revision af51afceb8
    • Dart version 2.7.2

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/taha/Code/sdk
    • Android NDK location not configured (optional; useful for native profiling
      support)
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = /Users/taha/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 11.4)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.4, Build version 11E146
    • CocoaPods version 1.9.1
[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
[✓] VS Code (version 1.44.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.9.1
[✓] Connected device (2 available)
    • SM M305F  • 32003c30dc19668f                     • android-arm64 • Android
      10 (API 29)
    • iPhone 11 • 41EB2A85-7EB4-4FD2-8978-FBBE2A681D74 • ios           •
      com.apple.CoreSimulator.SimRuntime.iOS-13-4 (simulator)
• No issues found!

Hi @TahaTesser
thank you very much for your efforts so far.
I was able to reproduce the issue using your code sample.  Did you change anything ?
Using the Iphone 11 Pro Max emulator shows up the freezing issue in less than 5 hot restarts. Unfortunately the problem is quite hard to reproduce on Android, what means it needs a lot of hot restart (up to 100) to reproduce it. What helped in my tests was to implement another async function calling other file system operations like the "getApplicationDocumentsDirectory" function, which is part of the path_provider package (https://pub.dev/packages/path_provider). I just called it in the Constructor of the TestApp class in combination with "await".
After further debugging a couple of hours, it seems like the "_handleDrawFrame" function, part of the "SchedulerBinding" class, is not getting called anymore after some frames. In my case it always stops after frame 4. Furthermore I guess, that the second build call, which is only happening via hot restart, leads to this issue. But really not sure on that.
I have recorded a demonstration video to show the very ugly bug. I will attach it to this comment.
I really hope it helps you to further troubleshoot this issue, so we can fix it as soon as possible.
I'm looking forward to your reply!
app_freeze_demonstration_by_iphone_11_pro_max.mov.zip

I can reproduce this issue

Code Sample
import 'dart:convert';

import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'package:flutter/services.dart';

void main() {
  runApp(TestApp());
}

class TestApp extends StatefulWidget {
  @override
  _TestAppState createState() => _TestAppState();
}

class _TestAppState extends State<TestApp> {
  @override
  void initState() {
    debugPrintBeginFrameBanner = true;
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    print("Build");
    return MaterialApp(
      title: 'TestApp',
      home: Scaffold(
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Image.asset("assets/dash.png"),
              CircularProgressIndicator(),
            ],
          ),
        ),
      ),
      localizationsDelegates: [
        AppLocalizations.delegate,
      ],
    );
  }
}

class AppLocalizations {
  final Locale locale;

  // Static member to have a simple access to the delegate from the MaterialApp
  static const LocalizationsDelegate<AppLocalizations> delegate =
      _AppLocalizationsDelegate();

  AppLocalizations(this.locale);

  // Helper method to keep the code in the widgets concise
  // Localizations are accessed using an InheritedWidget "of" syntax
  static AppLocalizations of(BuildContext context) {
    return Localizations.of<AppLocalizations>(context, AppLocalizations);
  }

  Map<String, String> _localizedStrings;

  Future<bool> load() async {
    // Load the language JSON file from the "lang" folder
    String jsonString = await rootBundle.loadString('i18n/en-US.json');
    print("loadString");
    Map<String, dynamic> jsonMap = json.decode(jsonString);
    _localizedStrings = jsonMap.map((key, value) {
      return MapEntry(key, value.toString());
    });

    return true;
  }

  // This method will be called from every widget which needs a localized text
  String translate(String key) {
    return _localizedStrings[key];
  }
}

// LocalizationsDelegate is a factory for a set of localized resources
// In this case, the localized strings will be gotten in an AppLocalizations object
class _AppLocalizationsDelegate
    extends LocalizationsDelegate<AppLocalizations> {
  // This delegate instance will never change (it doesn't even have fields!)
  // It can provide a constant constructor.
  const _AppLocalizationsDelegate();

  @override
  bool isSupported(Locale locale) {
    // Include all of your supported language codes here
    return ['en'].contains(locale.languageCode);
  }

  @override
  Future<AppLocalizations> load(Locale locale) async {
    // AppLocalizations class is where the JSON loading actually runs
    AppLocalizations localizations = new AppLocalizations(locale);
    await localizations.load();
    return localizations;
  }

  @override
  bool shouldReload(_AppLocalizationsDelegate old) => false;
}

flutter doctor -v
[✓] Flutter (Channel dev, 1.20.0-3.0.pre, on Mac OS X 10.15.5 19F101, locale en-GB)
    • Flutter version 1.20.0-3.0.pre at /Users/taha/Code/flutter_dev
    • Framework revision 0af027f805 (4 days ago), 2020-07-04 12:19:20 -0700
    • Engine revision a751393804
    • Dart version 2.9.0 (build 2.9.0-20.0.dev 22da8934ac)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/taha/Code/sdk
    • Platform android-30, build-tools 30.0.0
    • ANDROID_HOME = /Users/taha/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.46.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.1

[✓] Connected device (3 available)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS 13.5.1
    • Web Server (web)       • web-server                • web-javascript • Flutter Tools
    • Chrome (web)           • chrome                    • web-javascript • Google Chrome
      83.0.4103.116

• No issues found!

Have a look at this - https://stackoverflow.com/questions/66830654/flutter-web-hanging-due-large-image-size
hope it helps. It helped me.

Hi @eitel4, I verified the issue on the latest master channel 3.7 on iphone 12 pro simulator and it seems to work fine, I couldn't reproduce the issue. I believe this issue is fixed.

code sample
import 'dart:convert';

import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'package:flutter/services.dart';

void main() {
  runApp(const TestApp());
}

class TestApp extends StatefulWidget {
  const TestApp({super.key});

  @override
  _TestAppState createState() => _TestAppState();
}

class _TestAppState extends State<TestApp> {
  @override
  void initState() {
    debugPrintBeginFrameBanner = true;
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    print("Build");
    return MaterialApp(
      title: 'TestApp',
      home: Scaffold(
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Image.asset("assets/brunch.png"),
              const CircularProgressIndicator(),
            ],
          ),
        ),
      ),
      localizationsDelegates: const [
        AppLocalizations.delegate,
      ],
    );
  }
}

class AppLocalizations {
  final Locale locale;

  // Static member to have a simple access to the delegate from the MaterialApp
  static const LocalizationsDelegate<AppLocalizations> delegate =
      _AppLocalizationsDelegate();

  AppLocalizations(this.locale);

  // Helper method to keep the code in the widgets concise
  // Localizations are accessed using an InheritedWidget "of" syntax
  static AppLocalizations? of(BuildContext context) {
    return Localizations.of<AppLocalizations>(context, AppLocalizations);
  }

  Map<String, String>? _localizedStrings;

  Future<bool> load() async {
    // Load the language JSON file from the "lang" folder
    String jsonString = await rootBundle.loadString('assets/en.json');
    Map<String, dynamic> jsonMap = json.decode(jsonString);
    _localizedStrings = jsonMap.map((key, value) {
      return MapEntry(key, value.toString());
    });

    return true;
  }

  // This method will be called from every widget which needs a localized text
  String translate(String key) {
    return _localizedStrings![key]!;
  }
}

// LocalizationsDelegate is a factory for a set of localized resources
// In this case, the localized strings will be gotten in an AppLocalizations object
class _AppLocalizationsDelegate
    extends LocalizationsDelegate<AppLocalizations> {
  // This delegate instance will never change (it doesn't even have fields!)
  // It can provide a constant constructor.
  const _AppLocalizationsDelegate();

  @override
  bool isSupported(Locale locale) {
    // Include all of your supported language codes here
    return ['en'].contains(locale.languageCode);
  }

  @override
  Future<AppLocalizations> load(Locale locale) async {
    // AppLocalizations class is where the JSON loading actually runs
    AppLocalizations localizations = AppLocalizations(locale);
    await localizations.load();
    return localizations;
  }

  @override
  bool shouldReload(_AppLocalizationsDelegate old) => false;
}

flutter doctor -v (mac)
[✓] Flutter (Channel master, 3.7.0-3.0.pre.33, on macOS 12.6 21G115 darwin-arm64, locale en-IN)
    • Flutter version 3.7.0-3.0.pre.33 on channel master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision<PHONE_NUMBER> (38 minutes ago), 2022-12-05 18:27:21 -0800
    • Engine revision a309d239c4
    • Dart version 2.19.0 (build 2.19.0-463.0.dev)
    • DevTools version 2.20.0
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly
      to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0-rc4)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0-rc4
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14A400
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

[✓] VS Code (version 1.70.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.55.20221129

[✓] Connected device (3 available)
    • iPhone 12 Pro (mobile) • 026D5789-9E78-4AD5-B1B2-3F8D4E7F65E4 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.6 21G115 darwin-arm64
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 108.0.5359.94

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Closing, In case anyone still encounters the issue, Please feel free to write in the comments and we will reopen it.
Thank you.