Improve internal/ziplist TestSkiplistChaos execution time

Description
This is more a developer experience issue. It doesn't affect any existing features but lowers CI times significantly.
TestSkiplistChaos has always been using the same seed (see analysis below) since it was introduced 4 months ago and ran sequentially.
By making the individual iterations run in parallel plus updating to the new math/rand/v2 PRNG it's now taking a 10% of the time it previously took to run.
On my machine this test was taking 15.62s (avg 12 runs). It now takes 2.83s (avg 12 runs).
On GitHub Actions machines this was taking 175 seconds (avg, see analysis below) it should be much lower now (if it follows same proportions should be around 35 seconds).
GitHub Actions Analysis (previous version)
https://github.com/heroiclabs/nakama/actions/runs/10116183915/job/27978481102
 ok  	github.com/heroiclabs/nakama/v3/internal/skiplist	175.273s entire test suite took 325s
https://github.com/heroiclabs/nakama/actions/runs/10123008945/job/27995805457
 ok  	github.com/heroiclabs/nakama/v3/internal/skiplist	176.145s entire test suite took 322s
https://github.com/heroiclabs/nakama/actions/runs/10123130877/job/27996059606
 ok  	github.com/heroiclabs/nakama/v3/internal/skiplist	173.110s entire test suite took 317s
All runs report the same output:
=== RUN   TestSkiplistChaos
** iteration=0, users=1374, ops=35005, lists=38
** iteration=1, users=890, ops=32301, lists=27
** iteration=2, users=2049, ops=38384, lists=32
** iteration=3, users=1746, ops=60205, lists=46
** iteration=4, users=228, ops=19687, lists=9
** iteration=5, users=489, ops=52435, lists=40
** iteration=6, users=434, ops=92996, lists=28
** iteration=7, users=276, ops=19057, lists=37
** iteration=8, users=1676, ops=55060, lists=32
** iteration=9, users=1944, ops=39779, lists=20
** iteration=10, users=1157, ops=50303, lists=49
** iteration=11, users=1222, ops=63424, lists=6
** iteration=12, users=1519, ops=10031, lists=13
** iteration=13, users=1545, ops=98758, lists=35
** iteration=14, users=1362, ops=62395, lists=37
** iteration=15, users=1170, ops=83115, lists=38
** iteration=16, users=1789, ops=55313, lists=44
** iteration=17, users=1545, ops=3161, lists=43
** iteration=18, users=230, ops=44652, lists=11
** iteration=19, users=2021, ops=44110, lists=12
--- PASS: TestSkiplistChaos (174.09s)

No need to use math/rand/v2. Just by running the test in parallel nets the most bang for the buck without requiring changes in go.mod or updating the vendor folder. I'll update the PR.


Option to disable "pane is dead" message

My tmux is already configured with remain-on-exit and so I'd like to disable the message "pane is dead, press enter to exitdisplayed byxpanes`.

Oh, I just realised I can get this effect with -ss. Sorry!


Fix segfault in SpirvTools::Disassemble when printing

When the SPV_BINARY_TO_TEXT_OPTION_PRINT option is specified, spvtext will not be created: https://github.com/KhronosGroup/SPIRV-Tools/blob/37d2396cabe56b29d37551ea55d0d745d5748ded/source/disassemble.cpp#L116-L132
The attempt to afterwards dereference into its members (spvtext->str and spvtext->length) then results in segmentation fault:
https://github.com/KhronosGroup/SPIRV-Tools/blob/37d2396cabe56b29d37551ea55d0d745d5748ded/source/libspirv.cpp#L103
This PR adds a check on spvtext.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Seems there're some problems with the format... I've re-formatted the changed files.

Seems that the changes have broken some tests... I think it's because the Dissembler class only takes either the text_ or the standard output as the output stream, which is then picked by the instruction_disassembler_:
https://github.com/KhronosGroup/SPIRV-Tools/blob/37d2396cabe56b29d37551ea55d0d745d5748ded/source/disassemble.cpp#L48-L57
So in the printing mode, no dissembled instructions actually go into the text.

The problem is that tests in shaderc/glsl expect the disassembler to return the null pointer for the text instead of the empty string when printing to stdout.  I've modified the PR to revert back to that behaviour.


Search by no annotations

Under the old command-line argument syntax we could say:
$ juggle -m '' -@ '' -n getUpperBound"
public abstract java.lang.reflect.Type[] java.lang.reflect.WildcardType.getUpperBounds()
public java.lang.reflect.Type[] sun.reflect.generics.reflectiveObjects.WildcardTypeImpl.getUpperBounds()
public sun.reflect.generics.tree.FieldTypeSignature[] sun.reflect.generics.tree.Wildcard.getUpperBounds()
$

This would list all methods called getUpperBound that had no annotations. We can't express that in the new declaration syntax.
Consider whether it's useful to be able to make such searches.

On reflection I can't see a good use case for this.


XACML "Deny-unless-permit" returns Not Applicable

According to http://docs.oasis-open.org/xacml/3.0/xacml-3.0-core-spec-os-en.html section "C.6 Deny-unless-permit", an “Indeterminate” or “NotApplicable” must never be the result.
However, in WSO2 IAM 5.9.0, "NotApplicable" can be returned when the "Deny-unless-permit" combining algorithm is used.
Such cases should always return "deny"

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


Localized strack traces cannot be parsed by HockeyApp services (.Net)

The call stack sent to the HockeyApp services is localized in .net, causing the HockeyApp service to not being able to parse it correctly.
For example this crash in Japanese:
Package: TestApp
Version: <IP_ADDRESS>
OS: Windows
Windows: 6.3.10586.0
Date: 2018-02-12T04:39:04.6649385Z

System.ArgumentOutOfRangeException: 指定された引数は、有効な値の範囲内にありませんパラメーター名:index
   場所 System.Windows.Media.VisualCollection.get_Item(Int32 index)
   場所 System.Windows.Documents.AdornerLayer.GetVisualChild(Int32 index)
   場所 System.Windows.Media.Visual.InternalGet2DOr3DVisualChild(Int32 index)
   場所 System.Windows.UIElement.InvalidateForceInheritPropertyOnChildren(Visual v, DependencyProperty property)

Results in this output on the service:

This is rather problematic, since this will also cause the integration to bug trackers not be triggered.
According to https://stackoverflow.com/questions/209133/exception-messages-in-english it should be possible to change the CurrentCulture of the thread to InvariantCulture to receive the stack trace in English, however I have not tested this so far.
I am able to reproduce this in the .Net (WPF) module, but this should apply to at least all .Net applications.

Hi @tseifried
Thanks for getting in touch.
This is duplicate of #108
It's more tricky because localization can be performed when an exception is created. Also, after an unhandled crash, we cannot just create a new thread since the whole application will close immediately. So, this approach doesn't look as good solution for that. It's better to improve parsing on the server side (known issue).
Best,
Ivan


Add a pipenv sync subcommand (remove update)

(Breaking this out as the first step towards #1255)
pipenv install is currently overloaded to handle a number of different tasks, including both editing Pipfile to add new dependencies, and updating the current environment to match the contents of Pipfile and/or Pipfile.lock. This overloading currently leads to some quirky behaviours, like those described in #1137 (where [packages] and [dev-packages] are resolved independently of each other).
To start resolving this, pipenv sync would be a new subcommand that works solely based on Pipfile.lock: if that's missing, the command will fail, with a direction to run pipenv lock first.
The basic behaviour would be similar to the current pipenv install --deploy --ignore-pipfile, but with [dev-packages] handling adjusted as follows:

when --dev is given, both [packages] and [dev-packages] will be installed, anything else will be uninstalled
when --no-dev given, only [packages] will be installed, anything else will be uninstalled
when neither is given, the default will be --keep-dev, which installs [packages], ensures versions match for any already installed [dev-packages], and uninstalls everything else

Other changes relative to pipenv install:

no --pre argument (only uses exact versions from Pipfile.lock)
no --skip-lock (only uses exact versions from Pipfile.lock)
no --ignore-pipfile (only uses exact versions from Pipfile.lock)
no -r or -c import options (only uses exact versions from Pipfile.lock)
always aborts if Pipfile.lock is missing or out of date
--deploy only adds the check of the Python version constraint
no --system option (at least for now)

Options shared with pipenv install:

--three/--two/--python: affect implicit venv creation as usual
--verbose/-h/--help: work the same way as for any other subcommand

Thanks for detailing this, I feel there are a lot of critical elements to untangle resolution that are kind of scattered across a few issues.  I think breaking this apart into smaller pieces and detailing a plan of action for each one will help guide both a badly needed refactor of certain elements as well as a reimplementation of some of this core logic.
If you are feeling ambitious, I wouldn't mind seeing some of these pieces in project form (though I might be the only one who likes to work that way), but from a very high-level we are talking about essentially:

Creating environments
Installing packages

'Deploying' already-resolved dependency graphs
Updating dependencies (by either an only-as-needed or aggressive re-resolution strategy)

Resolving dependencies (constrained currently by the given system/platform/python)

Hash retrieval / comparison from APIs & hash generation

As far as pipenv sync, when you say uninstall, I assume you do mean this as opposed to pipenv --rm, which does a full replacement of the virtualenv -- presumably we would be comparing against pip freeze or something like that?
I see the utility for this separation internally, but I'm not convinced about implementing it as a completely separate command (but that leaves us with another argument for install which as you mention is quite cluttered and confusing) --  I just think we need to be confident this isn't going to be even more confusing to the average user when they encounter it in pipenv --help.

The Python precedent I'd cite here is pip-tools, which makes a very clear distinction between "update the lock file from the input file" (pip-compile) and "update the current environment to exactly match the lock file" (pip-sync, which upgrades, downgrades, installs, and uninstalls things as needed to make the environment match the specification). This is a good model, since it clearly separates the dependency management process into three phases:

define what you want/need (recorded in Pipfile)
resolve the full dependency tree (recorded in Pipfile.lock)
make a particular environment match the specification (shown by pipenv graph)

Right now, pipenv doesn't model that management process clearly at all - pipenv install and pipenv uninstall cover all three aspects (with a grab bag of arcane switches to turn different substeps on and off), and only the middle step is clearly exposed as its own subcommand (pipenv lock).
With pipenv sync added, then using pipenv install and pipenv uninstall would become entirely optional: you'd be free to instead just always edit Pipfile directly, use pipenv lock to update the lock file, then pipenv sync to get an environment to match that.
And then the later steps in #1255 would aim to ensure behavioural consistency by having install and uninstall actually run both lock and sync in order to make the change they make take effect locally.

Perfect, thanks for your continuing work and patience on this @ncoghlan -- I think that description clarifies the distinction perfectly.
@kennethreitz, thoughts?

this sounds a lot like what update does.

Perhaps it could replace it.

Based on the help text, I had assumed that pipenv update ignored the current state of the lock file and updated everything (including the lock file entries) to the latest version compatible with the Pipfile version specifications.
If it's actually an environment syncing operation that doesn't modify the lock file at all, then I'd suggest renaming it, as I doubt I'd be the only person to interpret it as "update the lock file and the current environment to the latest compatible version of everything".

You are correct @ncoghlan. I suggest we remove it in favor of sync.

I think having both would be confusing.

Yeah, we definitely wouldn't want both. I think it does change the nature of this RFE a bit though, as now I understand pipenv update a bit better (thanks!), I think this suggestion breaks down into two different pieces:

Rename pipenv update to pipenv sync
Make the renamed pipenv sync more efficient by borrowing implementation ideas from pip-sync

+100
we can alias pipenv update to still work too, but not list it as a command.

working on this now

also adding clean.

this is done

should be released shortly, as v10.0.0

released! ✨🍰✨

Just a quick clarification here, based on trial and error (as it seems like the documentation doesn't mentioned it):
pipenv lock -  Will create a .lock file based on the specification on the pipfile. It won't install anything on the virtual environment.
pipenv sync - Reads the pipfilefile, create/updates the pipfile.lock file, and install the packages.
pipenv update - According to the --help information, it runs pipenv lock and then pipenv sync. But isn't it exactly what pipenv sync already do?
pipenv install - If package name is being specific, it will add this package to the pipfile and install it (sort if like manually adding the package name to pipfile and running pipenv sync). I'm not sure what pipenv install does without package name, because it looks like it doing the exact thing like pipenv sync?
Thanks!

The issue here seems to be that sync now locks automatically. Maybe it shouldn’t?
update and install without arguments are unfavored, you can pretend they don’t exist; they are kept mainly for compatibility reasons.

Yes. I think sync should only sync your virtualenv according to the spec defined in the lock file and that's it. Here's what makes sense to me:
pipenv lock - Create a new .lock file or modify you current .lock file if your pipfile has a new package in it, or - you specifically asking for a version that does not aligned with the one currently in the lock file. That's something I would rarely do manually, as generated .lock file is never enough - I  mostly would like to deploy the changes into my virtualenv.
pipenv sync - Install packages based on the Pipfile.lock specification (and pop an error if there is no .lock file). Because the recommendation is to push your .lock file into the repo, It something I would do when I clone a new app (so  I can grab the needed dependencies into my virtualenv).
pipenv update - This runs lock with specific flag that upgrades ALL the dependencies (unless again the Pipfile specifically implies version number). After I have a new .lock file, it sync those changes. I would use it when I want to upgrades all my packages in one go.
pipenv update package_name - Same as the above, just for a specific package and not all of them. For example, I would like to upgrade my requests library version, and update the .lock file accordingly.
pipenv install - Calling the "normal" lock option (that does not update anything that is already specific in the .lock file, and then sync. It useful when I have a new project with new pipfile, where you want to generate lock for it and deploy the virtualenv before you start working.
pipenv install package_name - Manually add a new package to pipfile and then again generated a new "normal" lock and then sync.
tl;dr - It's not clear now if lock create a new .lock file by grabbing the latest versions, or modify an already exists .lock file based on the delta. Both are probably needed.
Hopefully it makes sense :-)

Sync is not supposed to lock. Why would we want that? The behaviors were separated very explicitly.

Aye, pipenv sync should never modify the lock file - it's meant to be strictly "make my environment match the lock  file". If there's no lock file, it should just error out (if the lock file is out of date, printing a warning is fine, but the command should still work).

A bug maybe? That's how I re-produce it:

Have a pipfile and pipefile.lock that are aligned.
Add package to the pipfile (for example requests = "*")
Run pipfile sync

The above updated the .lock file with the requests package information. I'm using version 11.10.1. If that's indeed now the proper behaviour, I'll open a separate bug.

Thanks for the quick fix. Will be testing it when a new version is released :)

Can I request that the docs be updated with command descriptions asap?
There's a bit of guess-work required to figure out what they each do, and hence I ended up where when trying to figure out what "sync" does.

Maybe orienting the documentation toward a classic workflow example with correspondance between old and new behavior:

project bootstrap (?)
install for dev
add a dependency
update a dependency
update all dependencies (I usually does that every week, so I do not think ‘pipenv update’ should be deprecated)
install for prod (ie remove dev env, could be useful for Travis), maybe explicitly how to install within a docker

Contributions are always welcomed :) Here’s my typical workflow:

pipenv --python=... to bootstrap
pipenv install (or install --dev depending on the project)
Manage packages by either

pipenv install/uninstall [--dev] <package> to manage packages
Manually update Pipfile and then run pipenv install [--dev] without arguments

On another machine, run pipenv sync [--dev] after pulling in changes to keep the local env up-to-date
pipenv update to update locked dependencies from time to time to keep them modern

Other machines would see the lockfile update when pulling in changes, and run pipenv sync [--dev]

Prod can either be treated as “just another computer” and simply use the usual workflow, or use the --deploy flag to install/sync globally (without a virtual environment).

@gsemet nobody is deprecating update. Why are you raising old conversations about things that have been put to rest? But your entire post can be summarized with pipenv install [--dev]  [package] and pipenv update

My bad, I certainly misunderstood something

@twig-openlearning It is already make possible in #1846, but obviously readthedocs is still using the old dependencies somehow.
Please update the doc dependencies.


What is returned by Storage.get when the file doesn't exist?

If I make a call to Storage.get, such as the code snippet below, and test.txt doesn't exist in the S3 bucket, what is returned?
Storage.get('test.txt')
.then(result => console.log(result))
.catch(err => console.log(err));
I'm finding that it returns a URL that results in a 404.
Which versions of Amplify, and which browser / OS are affected by this issue? Did this work in previous versions?
0.4.6 in Chrome on OSX

That is correct. 404 is a file not found http error code which is correctly returned.

@benevolentprof you can use Storage.list() to get all the keys under a specified path and then you can check whether the file is among those keys.


Upload new file to github

I have created a new file, and I would like to add it to an existing GitHub repo. I can't see a way to do that. Save always only lets me save locally.

Yea, I also have that issue. I think this should be added.

Same here, for me.

For now, you can use termux with git cli. #483


fwsp-hydra examples

Hello!
First things first, i think this is great! It's nice to have this package which bundles together the essentials for quick development of service-based applications!
However it would be great to see some examples of a real-world application.
Right now i'm kind of confused how hydra-express integrates with hydra. Some clarification with an example project would be lovely.
I'm also curious if there is a way to do RPC/request-response kind of communication with  sendMessage/sendReplyMessage? What if i, on a GET /api/v1/login, want to communicate with another service before sending a response? How can i do this? I don't want the communication between the services to be available via a public API so i guess i can't use makeAPIRequest
I've just started using hydra and i'm eager to learn more about it in general so a simple example project would help a lot for everyone who wants to get involved i think.

Hi @linde12. Definitely agree that a simple example project would be very helpful, and we'll be putting out some practical examples soon. In the meantime, I'd recommend checking out @cjus's tutorial if that isn't what brought you here.
You can definitely do some sort of RPC communication between services using sendMessage and sendReplyMessage - it's what we've been doing. Since all messages need to be JSON, I think it would be quite possible to use something like JSON RPC in the payload (body field) of the UMFMessages, but we haven't needed to implemented anything this robust so far.
IMO, you shouldn't feel that all HydraExpress services are public APIs. You can limit their accessibility at the application-level with auth, or at the system-level with firewall rules. We're doing both of these things, and have plans to make our Hydra Express auth service open source eventually.  This service uses JSON Web Tokens, and is just a verylight wrapper around fwsp-jwt-auth that checks passwords against our user database, and injects relevant user-data into the issued JWT.
However, an HTTP API is sometimes overkill, and there may be no reason to introduce the overhead of HTTP communication when you can use Redis pub-sub messaging. This is particularly true if these APIs are exclusively being consumed by other Hydra services.
HTH!

@linde12 I'm working on a post for RisingStack which will focus on hydra messaging using sendMessage and related functions. The article should be published around the end of this month. We'll let you know when that's available.

@emadum Ah, yes i read that article. It was great and was what got me started. I see, but it's nothing that's built-in? To clarify what i want to do is something like this:
..., (req, res) => {
  hydra.sendMessage({to: 'service', from: 'another_service', bdy: {msg: 'Hello'}}, function onResponse (response) {
    res.send(response.bdy);
  });
});

@cjus That would be great, it's an important topic so some clarification would be great.
Again, great looking project. Can't wait to get started! :+1:

@linde12 here's an article that covers messaging in Hydra.
https://community.risingstack.com/building-a-microservices-example-game-with-distributed-messaging/

@linde12 here you basically need to use Hydra's hydra.on('message', function(message) {}) and hydra.sendMessage call.  There's nothing yet to do this automatically. Join us on our<EMAIL_ADDRESS>account to discuss this further with the team. Send me an email to<EMAIL_ADDRESS>and I'll send you an invite.

@cjus Ah, i see! Sent you an email and closing this for now! Thanks!

Hey I would like to reopen this issue.
I want to calfiry what it is that both I and also (i think) @linde12 were trying to achieve.
I have 1 router service. It is listening to RESTful requests. When it gets a request it takes the post data and transfers it to another service via  sendMessage(). The other process is built to take the data, process it, and return the result. The problem is that sendMessage has no callback functionality and cannot be chained with a then() to start working on the result - by either sending it to another service or routing it back to the user.
Is the only way to achieve this is by defining the process.js service as a hydra-express process with a restfulAPI? makeAPIrequest does allow for a callback function handling the response.
Another cumbersome way would be to open a different route on the router.js which will listen to the response from the service. But then how do i relay this response back to the user?


Add Juliana Cynthia to Contributors list

Hi  @jaycynth, I'm quite elated about your pull request. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a pull request and learned that I merged it?
We’ve recently added social share  to our web app. Could you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.

Hi, I've been developing for about a year now and I've really had a hard time trying to find my way around contributing to open source particularly how to get started since i'm still new and finding the right project to contribute to. I'm interested in contributing to open source since I need guidance and also just know what it is and how to work in a team .This  tutorial has been really helpful  and easy to follow and understand and I think i'm a step ahead after making my first pull request..Cant wait to dive in and start learning and contributing

I’d urge you to continue contributing to other open source projects.
We also have a slack team to help/mentor people trying to contribute to open source projects.
You can join the team by going to https://goo.gl/PM1Jdh


Workaround to allow checks run against forked repos

Some of this is restoring functionality that was removed here: https://github.com/SmartThingsCommunity/SmartThingsEdgeDrivers/commit/a8953b4ed1c854a0fe299afa795286b0e77d6e00
but some of it is new. Not positive how the test coverage thing will work since every action does things a bit differently


Adds the desk and chair classes as part of the Equipment>Furniture class

Resolves BuildSysUniformMetadata/Brick#15

1b21ff0d8dbf7135a859de20441ce95c08e31bd1 merges with #20 and resets the notebook

Just merged! Sorry it took me so long to get back to this.


Replace "osalbool" and "boolean" types with C99 bool

CCB intends to deprecate the OSAL-provided "boolean" and "osalbool" types in version 5.0.0, in favor of the C99-specified "bool" type.
CFE needs to be updated to stop using these types along with the related macro definitions:
`osalbool` and `boolean` should be `bool`
`TRUE` should be `true`
`FALSE` should be `false`

Imported from trac issue 319.  Created by jphickey on 2019-08-02T10:25:30, last modified: 2019-08-29T13:02:04

Trac comment by jphickey on 2019-08-03 09:06:27:
Ready for review, commit [changeset:04d32e5] on branch trac-319-use-c99-bool
Note, this is a big changeset of over 1300 lines because it changes all use of TRUE/FALSE to be true/false instead.  The changes are almost all mechanical (search/replace) and do not change the logic.
A specific exception worth noting is that the CFE_ES_RunLoop() function is defined as returning a boolean true/false value in the API/doxygen documentation, but was prototyped as returning an int32.  An int32 return is easily confused with the CFE return codes (where CFE_SUCCESS is 0, basically the opposite).  To avoid possible error, this corrects the prototype to return a bool as it should.  Apps use this as a conditional in the while loop of their main routine.

Trac comment by jphickey on 2019-08-22 10:12:50:
Note this is a dependency of [cfs_osal:228] and must be merged before that one (or at the same cycle).

Trac comment by jhageman on 2019-08-22 10:36:16:
Approved for 'fast-track' to IC branch for test.  CCB will code review prior to merge to master.

Trac comment by jphickey on 2019-08-29 10:48:13:
Confirmed that ic-ccb-20190821 merge is acceptable for development merge

Trac comment by jphickey on 2019-08-22 16:06:59:
Merged into branch ic-ccb-20190821

Trac comment by jhageman on 2019-08-29 13:02:04:
CCB 8/28/2019 - Code review and approved for merge to development

Trac comment by jphickey on 2019-08-29 10:53:33:
Merged to development branch


Expose “dev mode” flag

Creates a top-level getter that can be used to conditionally do stuff based on whether the "dev" build of ReactJS is being used on the page.
@greglittlefield-wf @jacehensley-wf @clairesarsam-wf @trentgrover-wf

+10

All tests pass locally in content-shell and chrome and DDC

Merging this and releasing 4.3.0


OTP Autocomplete issue (Safari)

First off, thank you for all the work on this component - made our implementation of this feature for MFA so quick and easy.
We had a reported bug related to using the autocomplete feature on Safari (both desktop and mobile) which results in sporadic behavior / failure of code entry into the inputs. After a lot of fun, painful I mean, debugging we determined that there appeared to be a race condition with focusing on the inputs and which input was actually selected.

it's worth noting that the code which was entered was 491879. As you can see, the code is not in order and thus values were entered and then replaced since the input focus wasn't firing constantly.
This was seen both on mobile and desktop safari browsers and we're trying to confirm if this was consistent on Chrome as well.

I wanted to posted the above for record sake but we have determined what the issue was - at least for us.
The methods of selectInputContent and focusInput leverage an requestAnimationFrame and that method wraps the ref input.focus && input.select methods (as well as the blur method). When we removed this requestAnimationFrame the autocomplete works as expected and consistently.
https://user-images.githubusercontent.com/100605721/231537421-e66c435c-cf74-4151-b494-d4c0c9e584b2.mov

I am unsure of the benefits / tradeoffs of this utility, but it might be worth exploring removing if other people report this same issue.

Hi, thanks for the report.
I'm confused about the focus behavior since the component only uses one input element. Is it possible that you are using a different library?


(xEventGroupWaitBits)- assert failed! (Can't connect to WiFi)

I am trying to subscribe to a MQTT topic using the code from the Blinky-Hello-World example. When I run this line:
/* Wait for WiFI to show as connected */
xEventGroupWaitBits(wifi_event_group, CONNECTED_BIT, 0, 1, portMAX_DELAY);

I get the error: (xEventGroupWaitBits)- assert failed!.
Please help
main.c: https://github.com/Raunak-Singh-Inventor/Stockly/blob/master/edukit_deployment/main/main.c
logs:
[0;32mI (29) boot: ESP-IDF 3.40200.210118 2nd stage bootloader␛[0m
␛[0;32mI (29) boot: compile time 07:50:11␛[0m
␛[0;32mI (29) boot: chip revision: 3␛[0m
␛[0;32mI (33) boot_comm: chip revision: 3, min. bootloader chip revision: 0␛[0m
␛[0;32mI (40) boot.esp32: SPI Speed      : 80MHz␛[0m
␛[0;32mI (45) boot.esp32: SPI Mode       : DIO␛[0m
␛[0;32mI (49) boot.esp32: SPI Flash Size : 16MB␛[0m
␛[0;32mI (54) boot: Enabling RNG early entropy source...␛[0m
␛[0;32mI (59) boot: Partition Table:␛[0m
␛[0;32mI (63) boot: ## Label            Usage          Type ST Offset   Length␛[0m
␛[0;32mI (70) boot:  0 nvs              WiFi data        01 02 00009000 00006000␛[0m
␛[0;32mI (77) boot:  1 phy_init         RF data          01 01 0000f000 00001000␛[0m
␛[0;32mI (85) boot:  2 factory          factory app      00 00 00010000 003f7a00␛[0m
␛[0;32mI (92) boot:  3 ota_0            OTA app          00 10 00410000 00010000␛[0m
␛[0;32mI (100) boot:  4 ota_1            OTA app          00 11 00420000 00640000␛[0m
␛[0;32mI (107) boot:  5 spiffs           Unknown data     01 82 00a60000 004c4c00␛[0m
␛[0;32mI (115) boot: End of partition table␛[0m
␛[0;32mI (119) boot_comm: chip revision: 3, min. application chip revision: 0␛[0m
␛[0;32mI (126) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x3055c (197980) map␛[0m
␛[0;32mI (199) esp_image: segment 1: paddr=0x00040584 vaddr=0x3ffbdb60 size=0x02cd0 ( 11472) load␛[0m
␛[0;32mI (203) esp_image: segment 2: paddr=0x0004325c vaddr=0x40080000 size=0x00404 (  1028) load␛[0m
␛[0;32mI (206) esp_image: segment 3: paddr=0x00043668 vaddr=0x40080404 size=0x0c9b0 ( 51632) load␛[0m
␛[0;32mI (234) esp_image: segment 4: paddr=0x00050020 vaddr=0x400d0020 size=0x9968c (628364) map␛[0m
␛[0;32mI (436) esp_image: segment 5: paddr=0x000e96b4 vaddr=0x4008cdb4 size=0x02620 (  9760) load␛[0m
␛[0;32mI (449) boot: Loaded app from partition at offset 0x10000␛[0m
␛[0;32mI (449) boot: Disabling RNG early entropy source...␛[0m
␛[0;32mI (449) psram: This chip is ESP32-D0WD␛[0m
␛[0;32mI (454) spiram: Found 64MBit SPI RAM device␛[0m
␛[0;32mI (458) spiram: SPI RAM mode: flash 80m sram 80m␛[0m
␛[0;32mI (464) spiram: PSRAM initialized, cache is in low/high (2-core) mode.␛[0m
␛[0;32mI (471) cpu_start: Pro cpu up.␛[0m
␛[0;32mI (475) cpu_start: Application information:␛[0m
␛[0;32mI (479) cpu_start: Project name:     Stockly␛[0m
␛[0;32mI (484) cpu_start: App version:      93108bf-dirty␛[0m
␛[0;32mI (490) cpu_start: Compile time:     May 14 2022 11:28:56␛[0m
␛[0;32mI (496) cpu_start: ELF file SHA256:  e1c98a4eb766075b...␛[0m
␛[0;32mI (502) cpu_start: ESP-IDF:          3.40200.210118␛[0m
␛[0;32mI (507) cpu_start: Starting app cpu, entry point is 0x40083008␛[0m
␛[0;32mI (0) cpu_start: App cpu up.␛[0m
␛[0;32mI (1011) spiram: SPI SRAM memory test OK␛[0m
␛[0;32mI (1012) heap_init: Initializing. RAM available for dynamic allocation:␛[0m
␛[0;32mI (1012) heap_init: At 3FFAE6E0 len 0000F480 (61 KiB): DRAM␛[0m
␛[0;32mI (1018) heap_init: At 3FFCDD80 len 00012280 (72 KiB): DRAM␛[0m
␛[0;32mI (1024) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM␛[0m
␛[0;32mI (1031) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM␛[0m
␛[0;32mI (1037) heap_init: At 4008F3D4 len 00010C2C (67 KiB): IRAM␛[0m
␛[0;32mI (1043) cpu_start: Pro cpu start user code␛[0m
␛[0;32mI (1048) spiram: Adding pool of 4093K of external SPI memory to heap allocator␛[0m
␛[0;32mI (1071) spi_flash: detected chip: generic␛[0m
␛[0;32mI (1071) spi_flash: flash io: dio␛[0m
␛[0;32mI (1071) cpu_start: Starting scheduler on PRO CPU.␛[0m
␛[0;32mI (0) cpu_start: Starting scheduler on APP CPU.␛[0m
␛[0;32mI (1079) spiram: Reserving pool of 32K of internal memory for DMA/internal allocations␛[0m
␛[0;32mI (1309) ILI9341: Initialization.␛[0m
␛[0;32mI (1509) ILI9341: Display orientation: LANDSCAPE␛[0m
␛[0;32mI (1509) ILI9341: 0x36 command value: 0x08␛[0m
␛[0;32mI (1509) gpio: GPIO[39]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 1| Intr:3 ␛[0m
␛[0;32mI (2909) atecc608: Seeding the random number generator...␛[0m
␛[0;32mI (2909) atecc608: ok␛[0m
␛[0;32mI (2919) atecc608: Initializing ATECC608 secure element␛[0m
␛[0;32mI (2919) atecc608: ok␛[0m
␛[0;32mI (2919) atecc608: Checking data zone lock status...␛[0m
␛[0;32mI (2929) atecc608: ok: locked␛[0m
␛[0;32mI (2929) atecc608: Get the device info (type)...␛[0m
␛[0;32mI (2939) atecc608: ok: 60 03␛[0m
␛[0;32mI (3949) STOCKLY: AWS IoT SDK Version 3.0.1-␛[0m
C:\Users\rauna\.platformio\packages\framework-espidf\components\freertos\event_groups.c:350 (xEventGroupWaitBits)- assert failed!

abort() was called at PC 0x40088c96 on core 1

Backtrace:0x40087f37:0x3ffd0f80 0x400885e1:0x3ffd0fa0 0x4008c34a:0x3ffd0fc0 0x40088c96:0x3ffd1030 0x400d223b:0x3ffd1060 0x400885e9:0x3ffd1d10

ELF file SHA256: e1c98a4eb766075b

Rebooting...

I looked in esp-aws-iot/examples/subscribe_publish/main/subscribe_publish_sample.c and found out that I have to create the event group before running the xEventGroupWaitBits. Here is my updated code:
    /* Wait for WiFI to show as connected */
    EventGroupHandle_t wifi_event_group = xEventGroupCreate();
    xEventGroupWaitBits(wifi_event_group, CONNECTED_BIT, 0, 1, portMAX_DELAY);

This code fixes the error, but now the EduKit isn't able to connect to wifi and instead is stuck in the portMAX_DELAY.
Any idea on why this is happening?
Updated main.c: https://github.com/Raunak-Singh-Inventor/Stockly/blob/master/edukit_deployment/main/main.c

Just figured it out. Had to call initialise_wifi() from wifi.c before connecting to wifi. Updated code snippet.
    /* Wait for WiFI to show as connected */
    initialise_wifi();
    xEventGroupWaitBits(wifi_event_group, CONNECTED_BIT, 0, 1, 300);


Configuring SMTP category reorg

[x] Taken all valuable information from existing pages and added it to the new category
[x] Deleted old pages
[x] Added redirects from deleted page to new content
[x] Head data should have SEO title, keywords, and description
~- [ ] Screenshots updated~
~- [ ] all images have an alt tag~
~- [ ] all images are named according to style guide~
[x] Content is in Jobs-to-be-done format
[x] Update all in-content links and links to deleted pages
[x] Added additional resources (aim for a link to the glossary, the blog and other jobs-to-be-done)
[x] Added a TOC
[x] Added a talk to Dewey/Olivia section
[x] title optimized for google search snippits
[x] content optimized for google search snippits
[x] keyword optimization for each category
[x] addressed/closed any related issues in the backlog

Hello @ksigler7,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX


fixed the width of flash message

@Gloria-kuang welcome & thanks for the bug fix!
Your change is due to go out after we release https://github.com/restarone/violet_rails/pull/359 (which is in turn currently blocked by our production deployment)
While we wait, can you update your description with a picture or some other context for posterity?


Incorporate Infura networks into networkConfigurations

Today we have two types of networks that are accessible via the network controller: built-in Infura networks and RPC endpoints that the user has added. The former list is hardcoded and the latter list is tracked via networkConfigurations. Because of this bifurcation, when the network controller creates clients for these networks, it needs to use one way for built-in networks and another way for custom networks. For this reason, the configuration object that is used to create an Infura network client is different from the one used to create a custom network client. This creates unnecessary complexity.
Moving built-in networks into networkConfigurations would not completely remove the complexity, but it would help simplify some of the boilerplate code in NetworkController, and is a prerequisite for #1279.

Moving this back to Product Backlog because it's dependent on the investigatory work I'm doing for #3793.

This ticket is being addressed by #4286.


feat!: EKS Node Pool Subnets to use Single AZ by Default

Changes
In order to line up with the recommendations from the SAS Viya Platform Operations documentation we are updating the code base so that when EKS node groups are created they will be placed in a single-AZ rather than spanning over multiple-AZs. This feature is controlled by the new variable enable_multi_zone which by default will be set to false, resulting in the node groups being a single subnet in a single-az.
This is considered a breaking change single since users who initially created their infrastructure with viya4-iac-aws:7.2.1 or earlier and want to use the new version to make adjustments to their infrastructure will now have their node groups moved to a single-az. If they have a stopped Viya deployment they were planning on starting after the infrastructure updates they will most likely run in SAS Viya pod instability as they try to get it back online. Our recommendation for those users is to set enable_multi_zone to true when they run apply again to keep their node groups in a multi-az configuration so that the Viya pods are unaffected. Alternatively if the user wants to move over to a single-az configuration from their previous multi-az deployment following the SAS Viya Platform Operation backup and restore documentation is recommended.
Relevant SAS Viya Platform documentation for AWS Cluster Requirements:
https://documentation.sas.com/?cdcId=itopscdc&cdcVersion=default&docsetId=itopssr&docsetTarget=n098rczq46ffjfn1xbgfzahytnmx.htm#p0vx68bmb3fs88n12d73wwxpsnhu
Tests

Tests
Tests move to comment for better formatting

Scenario
Provider
Summary
From
To
K8s Version
enable_multi_zone
Order
Cadence
Notes

1
AWS
Single-AZ OOTB
viya4-iac-aws: PRviya4-deployment: 6.12.0
N/A
v1.26.7-eks-2d98532
FALSE
0B9SWB
fast:2020

2
AWS
Multi-AZ OOTB
viya4-iac-aws: PRviya4-deployment: 6.12.0
N/A
v1.27.4-eks-2d98532
TRUE
0B9SWB
fast:2020

3
AWS
Multi-AZ > Stop Viya > Single-AZ > Start Viya
viya4-iac-aws: 7.2.1viya4-deployment: 6.12.0
viya4-iac-aws: PRviya4-deployment: 6.12.0
v1.26.7-eks-2d98532
FALSE
*
fast:2020
pods pending

4
AWS
Multi-AZ > Stop Viya > Multi-AZ > Start Viya
viya4-iac-aws: 7.2.1viya4-deployment: 6.12.0
viya4-iac-aws: PRviya4-deployment: 6.12.0
v1.27.4-eks-2d98532
TRUE
*
fast:2020
pods all running

5
AWS
Single-AZ > Stop Viya > Multi-AZ > Start Viya
viya4-iac-aws: PRviya4-deployment: 6.12.0
viya4-iac-aws: PRviya4-deployment: 6.12.0
v1.26.7-eks-2d98532
FALSE > TRUE
*
fast:2020
this tests switching the enable_multi_zone flag while only using the PR code

6
AWS
Multi-AZ > Stop Viya > Single-AZ > Start Viya
viya4-iac-aws: PRviya4-deployment: 6.12.0
viya4-iac-aws: PRviya4-deployment: 6.12.0
v1.27.4-eks-2d98532
TRUE > FALSE
*
fast:2020
this tests switching the enable_multi_zone flag while only using the PR code, pods pending


Assignment 5

use  ishawagh19  code as an inspiration to fix my code  and took help for extra credit

good work, 133


Joanie - Manage Free Product

Problematic behavior
Joanie allows to create free product. In this case, when order is submitted, api returns a payment_info sets to null.
Currently, Richie frontend codebase does not manage this case, so the SaleTunnel crashed.
Expected behavior
When a product is free, the SaleTunnel should submit the order then instead of instantiate the PaymentInterface, it should poll the related order to ensure its state has been transitioned from draft or pending to validated.
So the payment step should be skip.

I think the backend order's submit endpoint should return
payment_infos: { is_paid: true }

And then everyting would work fine in our frontend.


LCD works on minimal build?

To checked/tested: The v1.11.0rc4-min sd card image already on first fresh boot has the LCD working. That is not how it was intended for the minimal build - it should start with hdmi/headless display mode and LCD drivers uninstalled.

Tested - min build is now headless. Closing issue.


QuerySet.count() method is broken on Django 1.8

I get this traceback when trying to execute a Model.objects.count() with django-pyodbc 0.3.0 and Django 1.8.4.
[...]/local/lib/python2.7/site-packages/django_pyodbc/compiler.pyc in _fix_aggregates(self)
    116         """
    117         for alias, aggregate in self.query.aggregate_select.items():
--> 118             if aggregate.sql_function == 'AVG':# and self.connection.cast_avg_to_float:
    119                 # Embed the CAST in the template on this query to
    120                 # maintain multi-db support.

AttributeError: 'Count' object has no attribute 'sql_function'

I do not get this same error when using Django 1.7.10.

Same issue with other aggreagate functions like Max and Min

Bump

For whom it may help, we switched to django-pyodbc-azure. It is kept much
more up to date than this lib and is not tied to Azure in any special way,
despite the name. Highly recommended 👍
On Feb 5, 2016 11:27 AM, "Michael Folkerts"<EMAIL_ADDRESS>wrote:

Bump
—
Reply to this email directly or view it on GitHub
https://github.com/lionheart/django-pyodbc/issues/100#issuecomment-180428905
.


How to NOT fail some scenario with some tags?

Hi there
Is it any way NOT fail scenario with some tag even if it was failed?

You can completely ignore scenarios that have a certain tag using the --tags= command-line option, or in the suite configuration


Editing python.nix to change model, rebuild-switch, re-run desktop app doesn't change model

python-shell.nix has been deprecated for now, replaced by derivations that build the packages. I could bring it back, refactoring and adding as a devShell in the flake


RFP - Voicemeeter

Checklist

[x] The package I am requesting does not already exist on https://chocolatey.org/packages;
[x] There is no open issue for this package;
[x] The issue title starts 'RFP - ';
[x] The download URL is public and not locked behind a paywall / login;

Package Details
Software project URL : https://www.vb-audio.com/Voicemeeter/index.htm (banana, potato)
Direct download URL for the software / installer (potato version) : exe, zip/portable zipped exe
Software summary / short description:

Voicemeeter is Audio Mixer Application endowed with Virtual Audio Device used as Virtual I/O to mix and manage any audio sources from or to any audio devices or applications.

Voicemeeter is donationware. For some reason they ship tiered versions with better feature sets (potato > banana > basic). The higher tiered versions include the lesser versions, so it's probably best to just make one package for the top tier version that includes everything (potato version).

Status: Review
https://chocolatey.org/packages/voicemeeter

You're right, there's not a portable version. My mistake. I'm not sure what you mean by your second point?

Updated for clarity. The download links I put are for potato version, like I said this should be the default version.

Status: Published

https://chocolatey.org/packages/voicemeeter
https://chocolatey.org/packages/voicemeeter.install
https://chocolatey.org/packages/voicemeeter.portable

Can be closed.


Added german translation

Hello everyone,
This PR contains the German translation of the welcome message.
Note: Due to lack of time I didn't run a test instance of osm-welcome-belgium!

Damn! That's awesome!
Thanks a lot !
I'll review it (and merge it) ASAP ! 🎉


Memory assignment to Tensor

Hi,
Can I allocate a buffer  and assign that ptr to Tensor for neon based layers as shown  below
float* buf=new float[size]
Tensor.allocator()->allocate(buf)
instead of using the existing allocation strategy
Tensor.allocator()->allocate()
Is there any overloaded function for allocate as it is for memory Memory(uint8_t *memory);
If I do so , are there any repercussions? do I need to handle any extra things?
Thanks

Hi,
Instead of doing Tensor.allocator()->allocate() you can do Tensor.allocator()->import_memory(arm_compute::Memory(your_ptr))
However you need to make sure the alignment/padding meet the minimum requirements or it will not work.

Yes, as long as you handle the padding requirements it should work.
The function will automatically zero the padding bytes for you if it relies on their values

I want to know about the impact on the output, if the padded elements of input are non-zeroes.
Example Scenario
If I have actual input/output size of 10, and due to the padding requirements let us say configure will change it to 16.
In this case, Does the read/write happen on the 16 values or only on the 10 values.

It depends, sometimes padding is required by vector loads, sometimes by vector store, so can't really tell if the padding bytes will be written to.
However the content of the padding bytes won't affect the output: if a kernel uses the values from the padding bytes then the ACL Function will run a fill border kernel before that kernel to make sure the value of the padding bytes won't affect the output of the kernel

Good to know that " padding bytes won't affect the output of the kernel" .Thanks Anthony.

@Subarukun what is the reason for reopening this?


[Go] Dependabot removes dependencies that are being used

Package ecosystem Go
Package manager version Go 1.16
Language version Go 1.16
Manifest location and content prior to update https://github.com/DataDog/datadog-agent/blob/add545d/go.mod
dependabot.yml content https://github.com/DataDog/datadog-agent/blob/add545d/.github/dependabot.yaml
Updated dependency github.com/open-policy-agent/opa from 0.31.0 to 0.33.1
What you expected to see, versus what you actually saw
Dependabot created DataDog/datadog-agent#9531 in which it removed a bunch of dependencies that are used by the Go module. I would expect to bump the open-policy-agent dependency and possibly others, but never remove used dependencies.
Native package manager behavior

Diff when running 'go get<EMAIL_ADDRESS>and 'go mod tidy'

diff --git a/go.mod b/go.mod
index d76642cf4..1c13d9ecc 100644
--- a/go.mod
+++ b/go.mod
@@ -94,7 +94,7 @@ require (
 	github.com/coreos/go-semver v0.3.0
 	github.com/coreos/go-systemd v0.0.0-20190620071333-e64a0ec8b42a
 	github.com/davecgh/go-spew v1.1.1
-	github.com/dgraph-io/ristretto v0.0.3
+	github.com/dgraph-io/ristretto v0.1.0
 	github.com/docker/docker v17.12.0-ce-rc1.0.20200916142827-bd33bbf0497b+incompatible
 	github.com/docker/go-connections v0.4.0
 	github.com/dustin/go-humanize v1.0.0
@@ -114,7 +114,6 @@ require (
 	github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da
 	github.com/golang/mock v1.6.0
 	github.com/golang/protobuf v1.5.2
-	github.com/golang/snappy v0.0.3 // indirect
 	github.com/google/go-cmp v0.5.6
 	github.com/google/gofuzz v1.2.0
 	github.com/google/gopacket v1.1.19
@@ -152,7 +151,7 @@ require (
 	github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d // indirect
 	github.com/olekukonko/tablewriter v0.0.5
 	github.com/oliveagle/jsonpath v0.0.0-20180606110733-2e52cf6e6852 // indirect
-	github.com/open-policy-agent/opa v0.31.0
+	github.com/open-policy-agent/opa v0.33.1
 	github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417
 	github.com/openshift/api v0.0.0-20190924102528-32369d4db2ad
 	github.com/patrickmn/go-cache v2.1.0+incompatible
@@ -190,7 +189,7 @@ require (
 	go.uber.org/zap v1.19.1
 	go4.org/intern v0.0.0-20210108033219-3eb7198706b2
 	golang.org/x/mobile v0.0.0-20201217150744-e6ae53a27f4f
-	golang.org/x/net v0.0.0-20210614182718-04defd469f4e
+	golang.org/x/net v0.0.0-20210825183410-e898025ed96a
 	golang.org/x/sync v0.0.0-20210220032951-036812b2e83c
 	golang.org/x/sys v0.0.0-20210923061019-b8560ed6a9b7
 	golang.org/x/text v0.3.7
diff --git a/go.sum b/go.sum
index 656d287f1..8a706a6f9 100644
Binary files a/go.sum and b/go.sum differ

Images of the diff or a link to the PR, issue or logs

PR linked above, specific commit is https://github.com/DataDog/datadog-agent/commit/ad68f769ecd080399a110b049a55a225f541fcb1

Not sure if related but this was generated during a run where Dependabot had the Dependabot ran out of disk space during its update error

Not sure if related but this was generated during a run where Dependabot had the Dependabot ran out of disk space during its update error

We've made some recent changes to improve this: https://github.com/dependabot/dependabot-core/pull/4356

@mx-psi I'm not sure I understand, it seems like the diff Dependabot generated is the same as for running go get<EMAIL_ADDRESS>and go mod tidy manually? This is essentially exactly what Dependabot does, and the behavior seems consistent with the package manager? Even without running go mod tidy, go removes that snappy dependency when I run this update manually.
datadog-agent HEAD % g st
HEAD detached at 8088e0e37 # The ref dependabot ran against
nothing to commit, working tree clean
datadog-agent HEAD % go get<EMAIL_ADDRESS>go: downloading github.com/open-policy-agent/opa v0.33.1
go: downloading github.com/fsnotify/fsnotify v1.5.1
go: downloading github.com/peterh/liner v0.0.0-20170211195444-bf27d3ba8e1d
go: downloading github.com/bytecodealliance/wasmtime-go v0.30.0
go: downloading github.com/cespare/xxhash/v2 v2.1.2
go get: upgraded github.com/dgraph-io/ristretto v0.0.3 => v0.1.0
go get: upgraded github.com/golang/snappy v0.0.3 => v0.0.4 # seems like this was upgraded, but is not in the `go.mod` file
go get: upgraded github.com/open-policy-agent/opa v0.31.0 => v0.33.1
datadog-agent HEAD % git diff
diff --git a/go.mod b/go.mod
index 5230bf499..e611aa928 100644
--- a/go.mod
+++ b/go.mod
@@ -94,7 +94,7 @@ require (
        github.com/coreos/go-semver v0.3.0
        github.com/coreos/go-systemd v0.0.0-20190620071333-e64a0ec8b42a
        github.com/davecgh/go-spew v1.1.1
-       github.com/dgraph-io/ristretto v0.0.3
+       github.com/dgraph-io/ristretto v0.1.0
        github.com/docker/docker v17.12.0-ce-rc1.0.20200916142827-bd33bbf0497b+incompatible
        github.com/docker/go-connections v0.4.0
        github.com/dustin/go-humanize v1.0.0
@@ -114,7 +114,6 @@ require (
        github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da
        github.com/golang/mock v1.6.0
        github.com/golang/protobuf v1.5.2
-       github.com/golang/snappy v0.0.3 // indirect
        github.com/google/go-cmp v0.5.6
        github.com/google/gofuzz v1.2.0
        github.com/google/gopacket v1.1.19
@@ -152,7 +151,7 @@ require (
        github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d // indirect
        github.com/olekukonko/tablewriter v0.0.5
        github.com/oliveagle/jsonpath v0.0.0-20180606110733-2e52cf6e6852 // indirect
-       github.com/open-policy-agent/opa v0.31.0
+       github.com/open-policy-agent/opa v0.33.1
        github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417
        github.com/openshift/api v0.0.0-20190924102528-32369d4db2ad
        github.com/patrickmn/go-cache v2.1.0+incompatible
diff --git a/go.sum b/go.sum
index 92d317ed2..1f2c5c6ea 100644
Binary files a/go.sum and b/go.sum differ

We can see that the upgraded version of snappy is in the go.sum in both the diff Dependabot generates and when performed manually:
github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.3 h1:fHPg5GQYlCeLIPB9BZqMVR5nR9A+IM5zcgeTdjMYmLA=
github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM=
github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=

I believe this is expected behavior:

The go.mod file includes an explicit require directive for each module that provides any package transitively imported by a package or test in the main module. (At go 1.16 and lower, an indirect dependency is included only if minimal version selection would otherwise select a different version.)

The packages that are imported by datadog-agent from the open-policy-agent/opa module are:

github.com/open-policy-agent/opa/ast
github.com/open-policy-agent/opa/rego
github.com/open-policy-agent/opa/types

I think that none of these (transitively) rely on snappy in that new version of the opa dependency, and that's why it gets pruned out. If that seems like a bug to you, we should raise it with the go mod maintainers I think, since Dependabot is just executing the package manager in this case.

@jurre since Dependabot does force pushes, looking at the latest diff will not show you the incorrect commit.
The incorrect commit Dependabot made is  https://github.com/DataDog/datadog-agent/commit/ad68f769ecd080399a110b049a55a225f541fcb1 as you can see that commit removes github.com/cilium/ebpf, github.com/docker/docker, github.com/h2non/filetype, github.com/opencontainers/runtime-spec, go.etcd.io/etcd/client/v2, k8s.io/kube-state-metrics/v2 and k8s.io/klog. These don't get removed when you do go mod tidy.

Ah, thanks I had missed the commit specific link!
I am not able to reproduce it by running dependabot against that commits parent ref, and it looks like the rebases Dependabot performed also resolved the issue, so I'm tempted to assume it did have something to do with the disk space error.
I apologize for not being able to give a more conclusive answer.
If you do run into it again please let us know!

Alright, thanks for having a look, fingers crossed then! I will reopen the issue if something similar happens again


Cloudinary sign-in window does not open in Firefox or Safari browsers

Brief bug description
When attempting to sign in to Cloudinary using the custom element in firefox, the external window cannot open. The Firefox browser console displays the following message

Repro steps

Open an item containing the Cloudinary custom element
Click on the sign in button

Expected behavior
A new window opens and lets the user log in
Test environment
Firefox v 107.0.1

The customer who reported this problem is also reporting similar issues in Safari browser, but I'm unable to test for the time being as there is no supported Windows version

Tried it on safari and was unable to load some resources due to "requested insecurely"

Hi,
Thank you for submitting the issue. It seems there are two issues here.
First is the iframe that wraps the custom element (it is part of the Kontent.ai app) is sandboxed and doesn't allow allow-storage-access-by-user-activation permission. Which means the Cloudinary widget cannot access the browser storage which causes it to fail. After we consulted adding the permission with our security team, I was able to add it and it should be released next week. It should fix the integration for Firefox users.
Second issue is connected to Safari. The custom element is built using the official Cloudinary widget (https://cloudinary.com/documentation/media_library_widget). Unfortunately, it seems the widget doesn't work properly on Safari. I tried the example in their documentation and it doesn't seem to work either. We will try to contact them about the issue, but in the meantime the workaround is to open the custom element in a different browser. After the next week's release Firefox, Chrome and all the Chromium based browsers (Edge, Opera...) should work properly.


 is not a valid SSR component in SvelteKit

The Step component gives the below error:
`<Step> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules
Error: <Step> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules
    at Module.validate_component (/node_modules/svelte/internal/index.mjs:1747:15)
    at Object.default (/src/routes/+page.svelte:189:37)
    at Stepper.svelte:20:49
    at Object.$$render (/node_modules/svelte/internal/index.mjs:1770:22)
    at eval (/src/routes/+page.svelte:187:86)
    at Object.$$render (/node_modules/svelte/internal/index.mjs:1770:22)
    at Object.default (root.svelte:44:39)
    at eval (/src/routes/+layout.svelte:13:47)
    at Object.$$render (/node_modules/svelte/internal/index.mjs:1770:22)
    at root.svelte:38:37`

Is there a way to SSR this? Below is the package.json:
{
	"name": "sveltekit-skeleton-demo",
	"version": "0.0.1",
	"scripts": {
		"dev": "vite dev",
		"build": "vite build",
		"package": "svelte-kit package",
		"preview": "vite preview",
		"check": "svelte-check --tsconfig ./tsconfig.json",
		"check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
		"lint": "prettier --check --plugin-search-dir=. . && eslint .",
		"format": "prettier --write --plugin-search-dir=. ."
	},
	"devDependencies": {
		"@brainandbones/skeleton": "^0.30.7",
		"@sveltejs/adapter-auto": "next",
		"@sveltejs/kit": "next",
		"@tailwindcss/aspect-ratio": "^0.4.0",
		"@tailwindcss/forms": "^0.5.2",
		"@tailwindcss/line-clamp": "^0.4.0",
		"@tailwindcss/typography": "^0.5.4",
		"@types/cookie": "^0.5.1",
		"@typescript-eslint/eslint-plugin": "^5.27.0",
		"@typescript-eslint/parser": "^5.27.0",
		"autoprefixer": "^10.4.7",
		"eslint": "^8.16.0",
		"eslint-config-prettier": "^8.3.0",
		"eslint-plugin-svelte3": "^4.0.0",
		"postcss": "^8.4.14",
		"postcss-load-config": "^4.0.1",
		"prettier": "^2.6.2",
		"prettier-plugin-svelte": "^2.7.0",
		"svelte": "^3.46.0",
		"svelte-check": "^2.7.1",
		"svelte-preprocess": "^4.10.7",
		"tailwindcss": "^3.1.5",
		"tslib": "^2.3.1",
		"typescript": "^4.7.4",
		"vite": "^3.0.0"
	},
	"type": "module",
	"dependencies": {
		"@fontsource/fira-mono": "^4.5.0",
		"cookie": "^0.4.1"
	}
}

The import { Step } from '@brainandbones/skeleton' gives error, so I manually added NavItem component to<EMAIL_ADDRESS>The import { NavItem } from '@brainandbones/skeleton' also gives error, added it manually to both index.js and index.d.ts in /node_modules/@brainandbones/skeleton/.

Ok, it got fixed, I had to manually import { Step } component in<EMAIL_ADDRESS>too.

Hi @hshoob, thanks for reporting this issue. It looks like we've missed a couple export ins index.js.
A couple things to note:

I'll create a new ticket to add missing exports in index.js for Step and anything else.
In the next release, the NavItem component will be merged into ListItem. This is of course a breaking change so watch for that! This will be detailed all release notes.

Modifying the contents of your node_modules is typically a bad idea. Those updates will get flushed the next time you update your packages of course. So what I might suggest is importing the component using the FULL path temporarily for now. For Step that would be:
import Stepper from<EMAIL_ADDRESS>
Even when index.js is updated in the next release this will continue to work for you. You should be able switch to the documented shorter import syntax. Of course do whatever works for you, but this might be a bit safer if this is an app you plan to maintain for a while.

See: https://github.com/Brain-Bones/skeleton/issues/103

@endigo9740 thanks for the above. I totally agree it's bad to get things directly from node_modules. I just came across Skeleton and playing with it. It's great! Once the above changes are implemented I'll use it in my app, so will be on the lookout.
Also, would be good to have a listbox similar to the tailwind headlessui listbox in Skeleton. If not anytime soon, can you propose an implementation with Skeleton, please?
Thanks!

Sounds good! I'd say keep an eye on the releases section on Skeleton and our social channels to know when that goes live. Twitter, Discord, etc.
I see the value of what Tailwind is doing with the Listbox, but right now we're taking a pretty hard stance against replicating form input components that exist that already have a solid native equivalent. Read the text at the top of this page for a better explanation:
https://skeleton.brainandbonesllc.com/guides/forms
I think you most folks would be better served using a native <select> component instead. I completely understand the limitations in styling native inputs though. However, it is technically possible to build a relative stand-in for this combining our Menu component with a selection List. You would probably use an input in place of the Buttons we show in our menu examples. The "target" component comes from a slot so it can be anything.
That said, we're building Skeleton for the community, not just for myself. So I welcome feedback like this. I'd highly encourage you view our roadmap and the discussion thread for it here. Chime in with this (or any other) suggestions you have. The team will be reviewing this soon and it'll help steer priority for us:
https://github.com/Brain-Bones/skeleton/discussions/79
Thanks!

Sounds good! I'd say keep an eye on the releases section on Skeleton and our social channels to know when that goes live. Twitter, Discord, etc.

This is great, thanks, @endigo9740 !

Read the text at the top of this page for a better explanation:
https://skeleton.brainandbonesllc.com/guides/forms

I read that when I was going through the docs, and I totally agree. It's just that sometimes we all get tempted by custom styling. :)


Incorrect macro delimiter can cause syntax error in mangled code

If code containing macros is mangled through syntex, the produced code can be syntactically incorrect. The following annotated code allows to reproduce the issue.
use std::io::{Write, stdout};

fn delimiter() {
    // this delimiter determines the one used in the macro that follows
    (
        write!(stdout(), "1").ok()
    );

    (
        // this is syntactically incorrect, but works as the delimiter
        // is overridden by the enclosing parantheses
        write!{stdout(), "2"}.ok()
    );
}

fn delimiter_fail() {
    // Please read on - this is the workaround of the following problem
    (write!(stdout(), "3")).ok();

    // this doesn't work, as the delimiter used for the function is
    // used in the macro as well.
    // The macro itself would be syntactically correct
    write!(stdout(), "4").ok()
}

How to reproduce
You can easily reproduce the issue with the latest syntex, v0.7.0, and the respective branch in my fork
$ git clone --branch reproduce-issue-11 https://github.com/Byron/rust-syntex
$ cd rust-syntex/tests/macro_delimiter
$ cargo build

which results in something like
/private/tmp/rust-syntex/tests/macro_delimiter/target/debug/build/macro_delimiter-42f6e97bf01f0821/out/lib.rs:8:35: 8:36 error: unexpected token: `.`
/private/tmp/rust-syntex/tests/macro_delimiter/target/debug/build/macro_delimiter-42f6e97bf01f0821/out/lib.rs:8     write!{stdout (  ) , "hello" }.ok()

I wonder if this is due to rust macros not preserving the brace style. I've got a patch that fixes it that I have yet to get landed upstream. It still needs a little work to get it in though.

Thanks so much for looking in to this ! Macros in Rust seem to show their teeth, and I start to realize why the language maintainers are not too happy with them (despite their features and usefulness). The devil is in the details.

Thanks for the detailed steps for reproducing the issue. I was able to reproduce it with Syntex 0.7.0 but not Syntex 0.34.0 so it was fixed upstream somewhere in between.


dep: dependency checker should ignore pre-releases

Signed-off-by: Faseela K<EMAIL_ADDRESS>Fixes #19263

cc @phlax

@moderation any objections to me landing this fix? as explained this essentially reverts to the previous behaviour that we had using the github api get_latest_release of ignoring the pre-releases
i think this is what we want, but we could potentially customize it for specific deps - particularly the compgen one that only creates pre-releases
in most cases, even if we were using a pre-release we would be mostly interested in getting onto the release track - potentially we might detect that we are currently using a pre-release and act on that basis

This change appears to work well. Now if you can only figure out why the emscripten part goes crazy. All of the other repos correctly work out the latest and report that vs. iterating through all releases.  I can't figure it out
github_release:  GitHubRelease(organization='emscripten-core', project='emsdk', version='2.0.8', tagged=True)
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.9@<2020-11-16 22:58:38>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.10@<2020-12-04 16:53:37>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.11@<2020-12-17 22:47:38>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.12@<2021-01-09 15:25:52>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.13@<2021-01-30 02:25:41>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.14@<2021-02-14 19:46:10>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.15@<2021-03-06 07:18:22>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.16@<2021-03-26 02:00:07>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.17@<2021-04-11 00:41:55>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.18@<2021-04-24 01:35:03>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.19@<2021-05-04 22:25:01>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.20@<2021-05-06 21:31:10>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.21@<2021-05-18 15:39:21>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.22@<2021-05-25 14:21:40>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.23@<2021-05-27 01:10:10>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.24@<2021-06-10 16:02:19>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.25@<2021-06-30 17:24:41>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.26@<2021-07-26 22:26:01>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.27@<2021-08-13 02:34:34>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.28@<2021-08-23 20:37:00>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.29@<2021-08-28 00:27:29>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.30@<2021-09-15 19:03:43>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.31@<2021-10-01 23:02:25>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.32@<2021-10-20 00:55:27>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.33@<2021-11-01 22:30:30>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 2.0.34@<2021-11-04 21:53:04>
*WARNING* emsdk has a newer release than 2.0.8@<2020-10-24 17:42:23>: 3.0.0@<2021-11-22 23:09:10>
emscripten_toolchain has a GitHub release date 2020-10-24


Feature/sum for count resources

This PR addresses the lack of capability defined in #84

Pull Request Test Coverage Report for Build 275

2 of 2 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+3.5%) to 79.032%

Totals

Change from base Build 272:
3.5%

Covered Lines:
392

Relevant Lines:
496

💛  - Coveralls


Lock Error when nesting ThreadSafe::Cache objects

I see that you cannot nest the usage of ThreadSafe::Cache objects in version 0.3.5 of the gem because there is a single Mutex for all instances of ThreadSafe::Cache. Looking through the git history, I see that this issue has existed since at least 2012, so if you guys don't want to fix it, that makes total sense to me.
Here's a little ruby script that demonstrates the issue.
require 'thread_safe'

outer = ThreadSafe::Cache.new
inner = ThreadSafe::Cache.new

outer.compute("seven") do
  three = inner.compute("three") { 3 } #blows up here
  three + 4
end

The place where the issue comes in for me is with using Rails.cache in conjunction with a ThreadSafe::Cache as the ActiveSupport::Cache seems to use one already under the hood. I'm using Rails v4.2.
I'm planning on switching to Concurrent::Map once I upgrade my project from concurrent-ruby 0.9.2 to 1.0.0 and I can monkey patch until then.

I'm have mixed feelings. We've fixed this in concurrent-ruby so I's rather not release updates to thread_safe. OTOH since Rails 4 uses thread_safe we need to support it until most shops have updated to Rails 5--and that's going to take a long time.
If you don't mind using your monkey patch solution for now then I'd rather not release an update to thread_safe. But I'm happy to keep this issue open indefinitely. If other users start having trouble with this we can release an update later.
Will that work for you?

That works for me. Thanks for the quick reply. :)
On Mon, Jan 25, 2016 at 11:21 AM jdantonio<EMAIL_ADDRESS>wrote:

I'm have mixed feelings. We've fixed this
https://github.com/ruby-concurrency/concurrent-ruby/blob/master/lib/concurrent/collection/map/mri_map_backend.rb#L14
in concurrent-ruby so I's rather not release updates to thread_safe. OTOH
since Rails 4 uses thread_safe we need to support it until most shops have
updated to Rails 5--and that's going to take a long time.
If you don't mind using your monkey patch solution for now then I'd rather
not release an update to thread_safe. But I'm happy to keep this issue open
indefinitely. If other users start having trouble with this we can release
an update later.
Will that work for you?
—
Reply to this email directly or view it on GitHub
https://github.com/ruby-concurrency/thread_safe/issues/24#issuecomment-174592333
.

:-)


Jupyter Lmod for vscode

the jupyter has an extension call lmod, which allows us to load modules while using HPC. I'm used to use vscode to write python script and run jupyter cell. I hope vscode can also add extension similar to the lmod

This worked:

This failed:


Django 3.2 support

In the supported Django versions, 3.1 is listed as the latest. Is there a time estimate for DJ3.2 support?

Bump this question please. Important to a big project. Thanks.

@petrklus @jerryhall As of now, it supports Django >= 3.2


Copy/paste toolbar needs smarter positioning

The copy/paste toolbar is always positioned above the selection. We should position it below the selection if it is too close to the top of the screen.

There's logic in the tooltip code to do something similar, might be able to factor it out into a reusable component.

From #20692 remember to avoid placing the toolbar above the selected text itself when avoiding the edge.
From #25632 remember to avoid placing the toolbar into the safe area when avoiding the edge.

Any update on this?

@parsodyl I hope to work on this soon.  There is a major bug with this where the selection menu is overlapping the cutout, which was pointed out in the duplicate issue above.

Hope someone could figure out a way to summon the native menu. Flutter applications are very obvious on androids with skins.

That probably won't be doable since Flutter does all of its own text rendering.  It's true that there are too many inconsistencies with the native menu right now though.  I think we can make a few tweaks and get it to match the default menu perfectly, but I'm not sure about skins.  Maybe long term we can detect and show a reproduction of the common skinned menus as well?

@justinmc thanks for your reply.
Having a text field inside the app bar is a common pattern and sometimes the copy/paste bar is not only "ugly", but also unusable. If the text field widget could have something like a flag (in order to draw the copy/past bar under the widget), that would be a really nice solution in many cases.

We intentionally do not attempt to match skins.

Thanks for the clarification 👍

This problem (selection menu is overlapping the cutout) is a main block for releasing our application. So we have to speed some time to fix it. Is this problem pull request welcome? @justinmc

Generally there are two solutions.

change the position smarter. Put some safe space at top of screen, when TextField intersects with safe space, position toolbar below the TextField.
Add a property such as overlayPosition to TextField, let developer to decide proper position. When desired position is not safe, use the offsite position.

Android and iOS choose 1st solution. Tooltip widget chooses 2nd solution.
I prefer 2nd solution, which bring more freedom when TextField is in the middle.

@loongliu You'd make a lot of people happy if you submitted a pull request for this!  It's definitely welcome.
I agree that we should try to make this solution follow what Tooltip does.  We should try to reuse as much code as possible between the two.  Take a look at _TooltipPositionDelegate and how it uses positionDependentBox.  positionDependentBox seems like something we should reuse for this.  Maybe even create a common widget shared with Tooltip that uses it?

Looks like there is already an outstanding PR that should solve this: https://github.com/flutter/flutter/pull/29809
@loongliu I'm interested in your feedback on that PR if it solves your problem!

This is now fixed with https://github.com/flutter/flutter/pull/29809.
To get the changes, you'll need a Flutter version greater than 1.5.8, or for now you can use the master channel.

I'm a little confused. Should the copy/paste menu now not be displaying under the appbar (or other obstructions) after the PR mentioned above? Because it's still happening for me. Sorry if I'm misunderstanding the fix.

@jlund24 In your case the menu should appear on top of the appbar, and this issue's fix shouldn't affect you.  Is anything complicated happening in your main view that could affect the stacking order?  Here is what I see on master:

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Welcome to Flutter',
      home: Scaffold(
        appBar: AppBar(
          title: Text('Welcome to Flutter'),
        ),
        body: Center(
          child: Column(
            children: <Widget>[
              TextField(
                autofocus: true,
              ),
            ],
          ),
        ),
      ),
    );
  }
}

@justinmc possibly, the textfields are in a Reorderable listview. The copy/paste menu also seems to cause an error talking about paint order which I'm guessing is related. Would the list view be forcing some strange stacking behavior?

I can create a separate issue with an example if that would be more appropriate since it sounds like my issue is different than the one this thread is concerned with

That could be it... Yes please open a new issue.  If you can, try to pare down the problem into a minimal app and include it in the issue.

Created a new issue that can be found here: https://github.com/flutter/flutter/issues/35227#issue-461785818


RSD has 2 decimal

Hi!
Faced with the problem that the value of decimal is incorrect for Serbian dinars.
Problem:
"RSD": {"941", 0}
Valid value:
"RSD": {"941", 2}
Source:
https://en.wikipedia.org/wiki/ISO_4217

That's my home currency, funny enough.
This is one of the areas where CLDR intentionally goes against ISO:

The currency decimal place information in CLDR is intended to reflect what is the most common usage in the countries in question, (for generalized usage in most computer applications) and may or may not line up exactly with ISO4217.  In many of the cases, the true buying power of a single unit of the currency is so small that you would never see a currency value written with any decimal places, but ISO might still list the currency as a 2 decimal place currency.  There are certain specialized places such as banking or stock transactions where you might see the decimals, but for normal usage you would never see them.

https://unicode-org.atlassian.net/jira/software/c/projects/CLDR/issues/CLDR-8790
https://unicode-org.atlassian.net/jira/software/c/projects/CLDR/issues/CLDR-11586
This is also currently documented in the code:
// replaceDigits replaces currency digits with data from CLDR.
//
// CLDR data reflects real life usage more closely, specifying 0 digits
// (instead of 2 in ISO data) for ~14 currencies, such as ALL and RSD.
//
// Note that CLDR does not have data for every currency, in which case
// the original ISO digits are kept.
func replaceDigits(currencies map[string]*currencyInfo, dir string) error {

From a Serbian perspective, both ISO and CLDR views are correct.
On one hand, we officially have 2 decimals in our currency, they are expressed in supermarkets (maxi.rs) and on utility bills (such as electricity), in bank apps. On the other hand, there are no coins smaller than 1 RSD, meaning all cash amounts are rounded, eCommerce sites (see gigatron.rs, ananas.rs) never show decimals, and colloquially they are never talked about. The state bank has repeatedly promised to eliminate them officially, but no movement has happened.
Based on previous links, I don't think CLDR will accept a Jira issue for changing this. I could be persuaded to use the ISO data with enough feedback, but I like the fact that this package currently matches CLDR completely, meaning that it has the same rules as in Windows, Mac OS, packages for other languages, etc. Software generally trusts CLDR over ISO when it comes to defaults.
So while I think that that specifying 2 decimals would be a safer default, I am also fine with keeping it as-is and allowing anyone selling bread or gasoline to manage their own number of decimals explicitly.  This is also the case in countries like the US, where USD has 2 decimals but certain prices (bulk items, gasoline) have 3 decimals.

@bigspawn It would be great to know how you came across this and what your own needs are.

Thanks for the detailed answer!
For card operations, we receive the amount for RSD with decimal 2 from the provider. Example:
{
    "amount": "-2999.22",
    "currency": "RSD"
}

I see that the description of the library clearly indicates the use of the CLDR format. My expectations were about ISO. I assume that changing the format to ISO does not break backward compatibility, because it precision gets bigger.

I've slept on it, and you are right. More precision won't hurt, and people can further restrict it if necessary. I'll switch that data to ISO in the next few days.


Fix input prefix aligment

Proposed changes
This PR fixes Dogfalo/materialize#4822 (the vertical alignment of prefix icons)
Screenshots (if appropriate) or codepen:
Before:

After:

Types of changes

[x] Bug fix (non-breaking change which fixes an issue).
[ ] New feature (non-breaking change which adds functionality).
[ ] Breaking change (fix or feature that would cause existing functionality to change).

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes. (does not affect test)
[x] All new and existing tests passed.

Since the v1-dev branch has become the main branch, I would suggest to make the PR against that branch.

@tomscholz I have created a PR with the correct base here.


Need user-friendly way to transfer files in and out of WSA

Is your feature request related to a problem? Please describe
Will WSA eventually have a user-friendly way to share files between WSA and Windows? I see that developers can use adb to push and pull files, and some online forums describe sideloading Android file manager apps and setting up network connections to the main Windows system, but I wouldn't consider either of these to be suitable for end users.
Of the two Android apps I'm testing for Windows 11 release, one relies on loading and saving local files to an extent that it probably won't be worth releasing if this is not available.
Describe the solution you'd like
My apps use the ACTION_GET_CONTENT and ACTION_CREATE_DOCUMENT intents to open Android file pickers to load and save files. Currently this file picker only shows the WSA filesystem, labeled as "Subsystem for Android." The ideal solution would be to show "Windows" as another source that users can browse in the file picker. Then users could open a file saved in their Windows directories or save a file to their Windows directories.
Another solution would be showing cloud storage services like Dropbox in the file pickers. Then users could copy files from Windows to Dropbox and then access them from Dropbox in WSA. Maybe this already works, but I haven't been able to test it because Dropbox, Google Drive, etc. aren't yet available in the Amazon App Store on Windows devices.
Another solution would be enabling drag-and-drop of files between the WSA "Files" window and a Windows File Explorer window. I tried this but when dragging a Windows file to the WSA Files window, it showed a "not allowed" icon. Going the other direction, files in the WSA Files window could not be dragged at all.
Describe alternatives you've considered
adb - too technical for end users
sideloading file manager apps - too technical for end users
cloud service as a go-between - not currently available, don't know if it will be available
drag and drop between file explorer windows - not available
Please specify the version of Windows Subsystem for Android
2209.40000.26.0

Great, this will make my app suitable for a Windows release.

I dunno whether this is related to this but I'm searching for a similar feature like the android studio has, called device file explorer. I know, that WSA can show me the normal user folders like Android, Downloads, DCIM, etc. but all the system folders are missing, like lost+found and so on. My app is writing a database to the file and this folder is not visible for a normal user of my app.

if possible, if it can be like the WSL where you can transfer files via the file explorer

@nieubank I think without support for this functionality - your subsystem is in alpha version.

A common user story we would like to have supported with the file transfer feature:  A WSA user downloads a certificate from Windows Edge Browser and imports that cert into WSA trust store.

Any updates on this? Our app is crippled by the inability to open files #114, so I'm hoping to see this implemented soon 🤞

Any updates on this? Our app is crippled by the inability to open files #114, so I'm hoping to see this implemented soon 🤞

Hi, we are investigating solutions for the feature, but don't have details to share at this time.

I want to access D:\ or other directory, if possible

Hi, this is something on our radar already for new feature requests, we appreciate the feedback here!

Hey zadesai, while you folks are looking into this, could you also consider enabling file sharing via the Windows and Android Share Panels instead of just their file systems? That's a totally different and more direct means of sharing data with Android apps, and it enables loads of productivity benefits from Android on our phones, which we currently can only dream of on Windows.
As described in this Feedback ( https://aka.ms/AAl24ll ), one of the major benefits of Android apps on our phones is for them to receive content via the share dialog, from ANY APP (not just the file system app), and perform a wide variety of actions with them. Few of endless examples include:

Locating an address on a maps app
Locating a product in an online retailer app
Rendering a website-extracting its text-and reading it aloud all from a URL shared to the app
Dowloading content from a URL shared to the app
Tracking a parcel via a tracking number shared to the app
Uploading/Posting content to a site or communication platform app (literally every social media app takes advantage of this)
Sharing those content to other devices via NAS apps

All of this is possible with Android apps on our phones. However, with Windows Subsystem for Android, there's currently no way to directly share content to those Android apps directly via the Windows Share Dialog (especially when initiated from Edge), drastically hampering the productive uses of Android apps on Windows. Please kindly consider implementing this content sharing aspect too.

We already support sharing files from Android apps to Windows apps using Android's share pane.  If you select the "Windows default preference" option, it will open the file on Windows using the file type association (copying the file to Windows Downloads if the source isn't in a shared folder).
Unfortunately, integrating Android apps into the Windows share pane isn't currently an option because only MSIX packages can register as Windows share targets.  Until Windows provides a way to programmatically register share targets, WSA can't support this, and Windows just hasn't prioritized the share experience.  As a work-around, WSA supports drag-and-drop to Android app windows and will invoke the Android app's share intent on drop.

Unfortunately, integrating Android apps into the Windows share pane isn't currently an option because only MSIX packages can register as Windows share targets. Until Windows provides a way to programmatically register share targets, WSA can't support this, and Windows just hasn't prioritized the share experience.

That indeed is unfortunate, as it renders a major productivity enhancing aspect Android apps totally mute. No way of sending this request to Panos to actually prioritise the Windows Share Experience? Without it, the WSA experience just won't ever be complete, living a lot to be desired.

As a work-around, WSA supports drag-and-drop to Android app windows and will invoke the Android app's share intent on drop.

Unfortunately, this work-around presumes you have the app open in the foreground, which isn't always the case, especially for Android apps that offer the following:

Rendering a website-extracting its text-and reading it aloud all from a URL shared to the app
Dowloading content from a URL shared to the app
Sharing those content to other devices via NAS apps

As a work-around, WSA supports drag-and-drop to Android app windows and will invoke the Android app's share intent on drop.

Would this only work for importing/opening files? Is there a way to export/save files from an app to the Windows environment?

As a work-around, WSA supports drag-and-drop to Android app windows and will invoke the Android app's share intent on drop.

Would this only work for importing/opening files? Is there a way to export/save files from an app to the Windows environment?

Android apps should invoke an ACTION_VIEW or ACTION_SEND intent to open/share a file.  If the user selects "Windows default preference" in the chooser dialog, the file will open on Windows (copying it to downloads if necessary).  Android apps can also use ACTION_CREATE_DOCUMENT to allow the user to select a save location, which can be in the "Windows" folder.  If the Android app isn't following best practices for files, users can manually invoke ACTION_VIEW on a file from the "Files" link in WSA Settings as long as the file is in a public folder (app private folders are only accessible to that app).

My apps use ACTION_GET_CONTENT to import and ACTION_CREATE_DOCUMENT to export. I haven't seen an option to select Windows folders from the file browser. I'll try it again.

My main use case is exporting and importing .sqlite files for the purpose of backing up or moving data between devices. Here's what I see when using ACTION_CREATE_DOCUMENT to export a file from an Android app using the current Windows Subsystem For Android version 2306.40000.4.0:

The file browser opens, showing only "Subsystem for Android(TM)." Compared to previous WSA versions, I now see the "Windows" folder mentioned above. However, that apparently is not a link to the Windows environment, it's just a new folder within the Subsystem for Android environment.
I can open the Windows Subsystem For Android Settings app and click the arrow icon next to Files to browse the Subsystem For Android folders and see the file I exported, whether into a regular folder like Documents or this new Windows folder.
If I click the file, it opens a prompt asking me what Windows app to open it with. None of the displayed options are useful for an .sqlite file. I don't see an option to simply save the file to a location in my Windows environment. If I select the file and click the Share button, I see the "Windows default preference" option. If I click that, the same thing happens. In the previous WSA version I had, either action would copy the file to the Download folder in the Windows environment so I could then move it to my desired location. In the current version, I don't see any way to save the file to the Windows environment.

When using ACTION_GET_CONTENT to import a file, the file browser again only shows "Subsystem for Android(TM)." I don't see a way to move a file from the Windows environment into that. Dragging and dropping a file from a Windows folder to my app window or to the Windows Subsystem For Android Settings app's Files window shows a "not allowed" icon. So this seems to not be possible without developer tools like adb.
It sounds like I would have to rework my apps to use ACTION_SEND and ACTION_VIEW to access a more direct workflow. I stopped using those several years ago because they show a lot of irrelevant or confusing options on Android devices. So if I did this, I would implement separate code for Windows, and leave the functions the way they are for native Android.
It also sounds like a reworked export workflow would only present the "Windows default preference" option, which would only attempt to open the file in a Windows app. So that still wouldn't provide the functionality I'm trying to replicate. I don't see any indication of how the reworked import workflow would work.

My main use case is exporting and importing .sqlite files for the purpose of backing up or moving data between devices. Here's what I see when using ACTION_CREATE_DOCUMENT to export a file from an Android app using the current Windows Subsystem For Android version 2306.40000.4.0:

The file browser opens, showing only "Subsystem for Android(TM)." Compared to previous WSA versions, I now see the "Windows" folder mentioned above. However, that apparently is not a link to the Windows environment, it's just a new folder within the Subsystem for Android environment.
I can open the Windows Subsystem For Android Settings app and click the arrow icon next to Files to browse the Subsystem For Android folders and see the file I exported, whether into a regular folder like Documents or this new Windows folder.
If I click the file, it opens a prompt asking me what Windows app to open it with. None of the displayed options are useful for an .sqlite file. I don't see an option to simply save the file to a location in my Windows environment. If I select the file and click the Share button, I see the "Windows default preference" option. If I click that, the same thing happens. In the previous WSA version I had, either action would copy the file to the Download folder in the Windows environment so I could then move it to my desired location. In the current version, I don't see any way to save the file to the Windows environment.

When using ACTION_GET_CONTENT to import a file, the file browser again only shows "Subsystem for Android(TM)." I don't see a way to move a file from the Windows environment into that. Dragging and dropping a file from a Windows folder to my app window or to the Windows Subsystem For Android Settings app's Files window shows a "not allowed" icon. So this seems to not be possible without developer tools like adb.
It sounds like I would have to rework my apps to use ACTION_SEND and ACTION_VIEW to access a more direct workflow. I stopped using those several years ago because they show a lot of irrelevant or confusing options on Android devices. So if I did this, I would implement separate code for Windows, and leave the functions the way they are for native Android.
It also sounds like a reworked export workflow would only present the "Windows default preference" option, which would only attempt to open the file in a Windows app. So that still wouldn't provide the functionality I'm trying to replicate. I don't see any indication of how the reworked import workflow would work.

The "Windows" folder in WSA is the same as the user profile folder on Windows (e.g., "C:\Users\YourUserName").  For example, it contains the user's Windows Documents and Pictures folders.  ACTION_CREATE_DOCUMENT should let the user select any folder within their Windows user profile folder, and you should be able to find the files you save in Windows File Explorer if you navigate to the corresponding folder in the user profile.
If WSA isn't copying a file to Windows Downloads when you select the "Windows default preference" option, that's because the file is already in a shared folder, so WSA instead asks Windows to open it directly from the shared folder.  If you browse your user profile folder in Windows File Explorer, you should find that file and can move it elsewhere (although it should already be where you want it since you must have selected a location in the "Windows" folder in WSA corresponding to a location in your Windows user profile folder).
ACTION_GET_CONTENT should include the "Windows" folder in WSA, so you should be able to find files in your Windows user profile.  If drag and drop isn't working for your app window, then your app probably doesn't declare an intent-filter for ACTION_SEND for that file type (WSA's drag and drop invokes ACTION_SEND since that is the most commonly supported way to transfer a file to an Android app).
Note that if you are looking for Windows files outside the user profile folder, those aren't shared with Android (unless the user manually chooses a different folder to share in WSA's settings app instead of their user profile folder).

Yes, I did have "share user folders" turned on, but that's good to know about if it's not on for regular users. But now I see the problem, and it's just a misunderstanding about how my new Windows PC is set up (I have very little experience using Windows). When I look at the file manager, it's showing me standard folders like Documents, Desktop, etc. but it turns out those are on OneDrive, not my local hard drive. So my Android app was saving to C:\Users\arlo\Documents but I was looking in C:\Users\arlo\OneDrive\Documents and not seeing any files saved there. I unpinned all the OneDrive folders from the file manager and pinned my local Documents folder instead and now I can easily copy files between my local drive and my Android app.
I first tried this with WSA version 2306.40000.4.0 and again with 2311.40000.3.0 and it worked with both.
I'm still exporting files with ACTION_CREATE_DOCUMENT and importing with ACTION_GET_CONTENT -- I haven't changed the app code at all for this -- and the file pickers open directly in both cases (no Share panel or other unwanted options). This is ideal for me. I think I can release my app now! Some other app features still aren't supported, but this was the only essential one.
I also found more info about this functionality here: https://github.com/microsoft/WSA/discussions/321


PI-940 Add "SSL Settings" to  moresettings/security

What ticket is this associated with?  Didn't we remove the SSLCard because of the certificate issues cPanel servers often face?

This is fine because we have CNAME SSL certs which fixes the issue that caused us to remove the card in the first place.  PI-940

@thellimist whats the status on this?  It will conflict with @manatarms PR after he merges.

I forgot about this. Merged it