Implement fuzzy finder as default filter for Select/MultiSelect

My initial suggestion on the implementation in #162 turned sour once I ran into issues with your filtered_options implementation.
In the end I decided to replace the Filter<'a, T> function in favour of a Scorer<'a, T> function.
The only difference between the two is the return type being Option<i64> still allowing to implement filters as before, but now also allowing to order/rank the options according to the calculated score.
Moving the prompts to the new scoring logic was minimally invasive and works together with the filtered_options logic already implemented!
I added a reset_cursor config option which if true, will reset the cursor position to 0 on filter input changes.
Since it's no longer a "Filter" I have renamed Documentation and types where it makes sense.
This is very much up for debate.
TODO

Create a feature flag that disables the fuzzy DEFAULT_SCORER and enables a naive one that just does a contains check.

Will get to the failing tests tomorrow :P

The rustix dependency breaking msrv tests seems to originate from the tmpfile from the editor feature:
├── tempfile v3.8.0
│   ├── cfg-if v1.0.0
│   ├── fastrand v2.0.0
│   └── rustix v0.38.13
│       ├── bitflags v2.4.0
│       └── linux-raw-sys v0.4.7

I'm not sure it's in scope of this PR to fix that?

Will take care of it.

I'm not sure it's in scope of this PR to fix that?

Will take care of it.
Update: Fixed it.

Great, I will rebase then!

Do you have an idea of the impact of pulling in the library you're using? Mostly out of curiosity and to make sure we won't be shooting ourselves in the foot.

In terms of performance:
Performance is great still, I've been using my fork with lists of 1500 options with instant changes to the options.
I would show an Asciinema cast, but the filtering test was on work related Jira issues..
Weight should not be an issue, though I'm not 100% sure on how to quantify this.
The number of sub-dependencies is minimal and there is no non-Rust code at least.
I will try to update my fork tomorrow!

I've applied the changes and rebased as discussed earlier, additionally I updated the changelog to reflect the changes.
Before this is considered final, I want to try and implement Nucleo instead.
It was apparently announced last week and is supposedly 5-8 times faster than fuzzy-matcher
But from a cursory view at how they are using it in the Helix editor, the implementation would potentially need to change a fair bit.
The easiest solution might be to implement a trait similar to Autocompleter which can hold the Matcher and the added Pattern/Atom types.
The reason being the Matcher can be reused for the entire lifetime of the current prompt, but the Pattern/Atom that is parsed from the input needs to be re-parsed on any change to the input.
But parsing anew on every Option in the list would be wasteful.
See: https://github.com/helix-editor/helix/blob/master/helix-term/src/ui/menu.rs#L95-L104

I'm a bit stuck on using Nucleo instead as of right now. I'm running into the same challenges as I faced with my initial idea in #162.
I would prefer to not rewrite most of the Select/Multiselect Prompt logic just to shoehorn Nucleo in.

Merge conflicts have been resolved and I defaulted the reset behaviour to true!
You're welcome to merge anytime! :D

Merged!


Replace abstract classes with function typdefs

In line with the Dart Styleguide, this PR replaces the ActionEncoder, ActionDecoder, and StateEncoder abstract classes with function typedefs.
Closes #11

Pull Request Test Coverage Report for Build 128

12 of 12 (100.0%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 92.308%

Totals

Change from base Build 122:
-0.3%

Covered Lines:
84

Relevant Lines:
91

💛  - Coveralls


Appstudio update test-component-pac-bsya

Pipelines as Code configuration proposal
To start the PipelineRun, add a new comment with content /ok-to-test
For more detailed information about running a PipelineRun, please refer to Pipelines as Code documentation Running the PipelineRun
To customize the proposed PipelineRuns after merge, please refer to Build Pipeline customization

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

StatusDurationName

✅ Succeeded
8 seconds
init

✅ Succeeded
15 seconds
clone-repository

✅ Succeeded
1 minute
build-container

✅ Succeeded
37 seconds
deprecated-base-image-check

✅ Succeeded
39 seconds
inspect-image

✅ Succeeded
1 minute
clamav-scan

✅ Succeeded
4 minutes
clair-scan

✅ Succeeded
34 seconds
sbom-json-check

✅ Succeeded
16 seconds
label-check

✅ Succeeded
5 seconds
show-sbom

✅ Succeeded
7 seconds
show-summary

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

StatusDurationName

✅ Succeeded
8 seconds
init

✅ Succeeded
15 seconds
clone-repository

✅ Succeeded
1 minute
build-container

✅ Succeeded
39 seconds
inspect-image

✅ Succeeded
37 seconds
deprecated-base-image-check

✅ Succeeded
4 minutes
clair-scan

✅ Succeeded
1 minute
clamav-scan

✅ Succeeded
34 seconds
sbom-json-check

✅ Succeeded
16 seconds
label-check

✅ Succeeded
5 seconds
show-sbom

✅ Succeeded
7 seconds
show-summary

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

StatusDurationName

✅ Succeeded
33 seconds
init

✅ Succeeded
13 seconds
clone-repository

✅ Succeeded
31 seconds
build-container

✅ Succeeded
14 seconds
deprecated-base-image-check

✅ Succeeded
13 seconds
inspect-image

✅ Succeeded
10 seconds
clair-scan

✅ Succeeded
1 minute
clamav-scan

✅ Succeeded
14 seconds
sbom-json-check

✅ Succeeded
9 seconds
label-check

✅ Succeeded
6 seconds
show-sbom

✅ Succeeded
9 seconds
show-summary


[ERROR] qemu not booting up for me

Hi! First, you are the best OS making tutor! But QEMU is not booting up for me.
Command: qemu-system-i386 -fda orangeos-img.img
Output:
Unable to init server: Could not connect: Connection refused
WARNING: Image format was not specified for 'orangeos-img.img' and probing guessed raw.
Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
Specify the 'raw' format explicitly to remove the restrictions.
gtk initialization failed
File Structure:
OrangeOs
|
--->/src
|
---> boot.asm
--->/dist
|
---> orangeos-img.img
---> boot.bin
--->Makefile
Is it related to me not having a Linux server?

Are you running this is in something like WSL or a Docker container? The error seems like qemu didn't connect to a display server.
If you are on windows:
just install qemu through their website and point it it to the build file in windows.

I'm running on WSL

Thanks for the help

I tried, but unfortunately, no change :(

Make is not working. I have it. The tab problem.

Really sorry about not responding sooner, I'm not getting notifications for new issues for some reason.
Have you followed the WSL guide in this video?. You need to install an X server on your Windows host (like VcxSrv), and then setup the DISPLAY variable.


Sort displayedAttributes field

Fix #943
displayedAttributes use the HashSet struct which is an unsorted structure, so I changed the implementation from HashSet into BTreeSet.

Hey @gorogoroumaru,
Is there something wrong with this PR? Do you want some help? Could you tell us why you closed this PR?
Thank you very much :)

Thank you @Kerollmops, and I’m sorry for suddenly closing this PR.
I managed to sort displayedAttributes fields and I was trying to sort facetsDistribution as described in the issue943.
I read the document about facetsDistribution.
However I couldn’t understand how to use it and how to sort it.

@LegendreM, thank you very much!
I will work on this issue again.

Hey @gorogoroumaru congratulation for your Pull Request, we should change the test to check the new behaviors of the engine 🔍.
In meilisearch-http/tests/settings.rs we are currently testing equality using a param ordered: false which ignore order in json array:
    assert_json_eq!(expect, response, ordered: false);

Copy pasting this part to create a new test to check equality using ordered: true  should be good for settings.
For stats we'll have to create our test from scratch in meilisearch-http/tests/index.rs
using:
let mut server = common::Server::test_server().await;

create a server with default settings and some documents

let (response, status_code) = server.get_index_stats();

call /stats route

assert_json_eq!(expected, response, ordered: true);

compare 2 json and check if the arrays are sorted in same order

I'll merge this PR when the feature is tested 🙂
If something is not well explained, don't hesitate to ask!

Thank you @LegendreM!
I changed the test as requested!

bors merge

Hello @gorogoroumaru thank you for your contribution! We would like to send you the contributor's sticker 2020,
can you make your email public on github or followback [meilisearch] (https://twitter.com/meilisearch) and send your email as a private message?
Thanks!

Thank you @LegendreM for your support!
I made my email address public.


change azure-dev-docs-pr name of "main" vs "master" branch

Learn Build status updates of commit d756da3:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.publish.config.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


Honor image environment variables with exec

Was reading the "env" argument twice instead of image.
When skipping storage setup it crashes, so avoid that.
Closes #2063

Apparently images don't always have names - so try ID instead

Should the environment match the container instead of just matching the image?

I was trying to read the ENV configuration from the image, to pass it to the new container.

I think we only need to set only the env variables that were set by the user (exec --env=..., the OCI runtime will do the rest of  .  I think that this patch should be enough:
diff --git a/cmd/podman/exec.go b/cmd/podman/exec.go
index 1dcb88db..cc8f55f2 100644
--- a/cmd/podman/exec.go
+++ b/cmd/podman/exec.go
@@ -98,16 +98,7 @@ func execCmd(c *cli.Context) error {
                os.Exit(ret)
        }

-       // ENVIRONMENT VARIABLES
-       env := defaultEnvVariables
-       for _, e := range c.StringSlice("env") {
-               split := strings.SplitN(e, "=", 2)
-               if len(split) > 1 {
-                       env[split[0]] = split[1]
-               } else {
-                       env[split[0]] = ""
-               }
-       }
+       env := map[string]string{}

        if err := readKVStrings(env, []string{}, c.StringSlice("env")); err != nil {
                return errors.Wrapf(err, "unable to process environment variables")

This did the trick for regular podman, but haven't been able to try rootless yet.
Thanks @giuseppe !


(Investigating #1331) Increase logging in test case 1e5beffd-b21f-4281-85c9-b1b6ab02471d (take 2)

For investigating #1331.

Forgot to rebase on top of 1279-run-tests-in-loop. Closing. Replaced with https://github.com/ably/ably-cocoa/pull/1349.


Where can we download the source code for this article?

Where can we download the source code for this article? The page does not consist of any picture, it is pretty hard to follow along.

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

ID: 698a8824-7a38-70d6-c041-0dca4c040217
Version Independent ID: ae663e33-6a08-0b24-aa19-3fc3c9edccfc
Content: ASP.NET Core Blazor templated components
Content Source: aspnetcore/blazor/components/templated-components.md
Product: aspnet-core
Technology: aspnetcore-blazor
GitHub Login: @guardrex
Microsoft Alias: riande

We're in the process of updating and upgrading topics and samples.
The existing component for this is here ...
https://github.com/dotnet/AspNetCore.Docs/blob/main/aspnetcore/blazor/common/samples/5.x/BlazorWebAssemblySample/Pages/TemplatedComponents.razor
... and to get that full sample, you should download the ZIP archive of this docs repo and navigate to the sample from there.
The sample experience will be addressed as soon as possible, but it will take a while to get through topic overhauls in progress now.
With regard to pictures, we don't use many because they're time-consuming to update. I'll consider adding images to this topic the next time I work on it.

Thanks


WARNING:tensorflow:Compiled the loaded model, but the compiled metrics have yet to be built. model.compile_metrics will be empty until you train or evaluate the model. W0525 15:34:09.281517<PHONE_NUMBER>07808 saving_utils.py:328] Compiled the loaded model, but the compiled metrics have yet to be built. model.compile_metrics will be empty until you train or evaluate the model. 2023-05-25 15:34:13.758020: W tensorflow/python/util/util.cc:368] Sets are not currently considered sequences, but this may change in the future, so consider avoiding using them. INFO:tensorflow:Assets written to: ./checkpoints/yolov4-tiny-416/assets I0525 15:34:19.957567<PHONE_NUMBER>07808 builder_impl.py:779] Assets written to: ./checkpoints/yolov4-tiny-416/assets

Please help me out with this problem, my tensorflow mdel is not creating, I'm using tensorflow==2.8.0 and opencv-python 4.7.0.
WARNING:tensorflow:Compiled the loaded model, but the compiled metrics have yet to be built. model.compile_metrics will be empty until you train or evaluate the model.
W0525 15:34:09.281517<PHONE_NUMBER>07808 saving_utils.py:328] Compiled the loaded model, but the compiled metrics have yet to be built. model.compile_metrics will be empty until you train or evaluate the model.
2023-05-25 15:34:13.758020: W tensorflow/python/util/util.cc:368] Sets are not currently considered sequences, but this may change in the future, so consider avoiding using them.
INFO:tensorflow:Assets written to: ./checkpoints/yolov4-tiny-416/assets
I0525 15:34:19.957567<PHONE_NUMBER>07808 builder_impl.py:779] Assets written to: ./checkpoints/yolov4-tiny-416/assets

ImageAI now uses Pytorch backend. Read more about it here
https://github.com/OlafenwaMoses/ImageAI/blob/master/BACKEND_MIGRATION.md


Hung Tests

I am running some tests to figure out the best -limit for my machines. I am using 8 core machines. I have played around with the recommend 1.5-2 per core. I then run with a single Selenoid hub. I am running ~200 in parallel. About 10% of the time, 1 to 10 of the 200 tests get hung, seemingly indefinitely.
I execute docker ps and can see the hung tests, but after 1 minute the docker containers are removed, but the tests never complete.
$ docker ps
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                    NAMES
bcddfbd02f12        aerokube/selenoid:1.3.9   "/usr/bin/selenoid..."   12 minutes ago      Up 12 minutes       <IP_ADDRESS>:4445->4444/tcp   selenoid
// there were 7 hung chrome containers but after 60 seconds they were removed

I keep a list of running tests and the list should eventually be empty, but this test has had no output for 15 minutes and 7 tests are still left and the process is still running:
// starts with Left: [1..200]
Left: [6, 14, 40, 89, 91, 103, 112, 132, 150]
Left: [6, 14, 40, 89, 91, 103, 112, 132]
Left: [6, 14, 40, 89, 91, 103, 112] <-- stuck with 7 tests
// should end with - Left: []

On the 8 core machine the recommended number of browsers is something like 12 to 16. You can also check that your Docker settings are efficient for Selenoid here.

I changed to 16. The first 5 executions completed successfully. The 6th execution had the same hanging issue. I had 10 of 220 tests hang indefinitely.
10 hung tests:
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                    NAMES
e577563fdb3c        selenoid/chrome:62.0      "/bin/sh -c /entry..."   47 seconds ago      Up 46 seconds       4444/tcp                 modest_kowalevski
5d51ad80be62        selenoid/chrome:62.0      "/bin/sh -c /entry..."   47 seconds ago      Up 46 seconds       4444/tcp                 amazing_raman
270d36e9e8fb        selenoid/chrome:62.0      "/bin/sh -c /entry..."   50 seconds ago      Up 49 seconds       4444/tcp                 flamboyant_noether
2efe69665475        selenoid/chrome:62.0      "/bin/sh -c /entry..."   51 seconds ago      Up 49 seconds       4444/tcp                 xenodochial_noether
d6cd40c53399        selenoid/chrome:62.0      "/bin/sh -c /entry..."   52 seconds ago      Up 50 seconds       4444/tcp                 laughing_pare
fd47b3c1dcb9        selenoid/chrome:62.0      "/bin/sh -c /entry..."   52 seconds ago      Up 50 seconds       4444/tcp                 distracted_lewin
57875a5b17ea        selenoid/chrome:62.0      "/bin/sh -c /entry..."   52 seconds ago      Up 52 seconds       4444/tcp                 cocky_mestorf
87a5e40527dd        selenoid/chrome:62.0      "/bin/sh -c /entry..."   54 seconds ago      Up 53 seconds       4444/tcp                 dreamy_brattain
a8c336027e4c        selenoid/chrome:62.0      "/bin/sh -c /entry..."   55 seconds ago      Up 53 seconds       4444/tcp                 festive_poincare
d31b77458276        selenoid/chrome:62.0      "/bin/sh -c /entry..."   56 seconds ago      Up 55 seconds       4444/tcp                 heuristic_hopper
95afcfca4331        aerokube/selenoid:1.3.9   "/usr/bin/selenoid..."   About an hour ago   Up About an hour    <IP_ADDRESS>:4445->4444/tcp   selenoid

10 hung test containers are destroyed:
 CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                    NAMES
95afcfca4331        aerokube/selenoid:1.3.9   "/usr/bin/selenoid..."   About an hour ago   Up About an hour    <IP_ADDRESS>:4445->4444/tcp   selenoid

Process never ends and 10 jobs are still in my list:
// Left [1..220] starts with tests #1-#220
Left: [21, 35, 90, 111, 119, 159, 171, 185, 195, 200, 219, 220]
Left: [21, 35, 90, 111, 119, 159, 171, 185, 195, 200, 220]
Left: [21, 35, 90, 111, 119, 159, 171, 185, 195, 200] <-- stuck tests

The test takes about 2-3 minutes to complete when successful. I have waited >15 minutes on these hung tests and it won't complete.
Note, in the first 5 successful runs, 2 of the tests did have a single test hang, but each time it returned successfully shortly after the container was destroyed. I feel like that was the same hang scenario, but for whatever reason when there is >1 hung test, it never completes.
What additional info should I view to debug this further?

I have verified that each of the hung tests are hung on driver initialization:
DesiredCapabilities caps = DesiredCapabilities.chrome();
WebDriver driver = new RemoteWebDriver(new URL("http://user:password@<IP_ADDRESS>:4445/wd/hub"), caps);

As I said in my previous comment - you should take a look at server system metrics. When you start too many containers your server becomes slow and this is visible in test execution results. Also wrong network settings as well as slow Docker storage driver such as DeviceMapper can dramatically slow down things.

What is/how to check load average?
Limit is 16 on 8 cores.
Memory is sufficient: 9/16gb free during execution.
I now updated docker0.
top command reveals no bottle neck in memory or cpu.
Still same issue: hung at driver initialization. This time 7/220 hung:
ubuntu@ip-172-31-2-35:~$ docker ps
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                    NAMES
a7cd1b1c845d        selenoid/chrome:62.0      "/bin/sh -c /entry..."   37 seconds ago      Up 35 seconds       4444/tcp                 compassionate_thompson
83b708286dfc        selenoid/chrome:62.0      "/bin/sh -c /entry..."   37 seconds ago      Up 35 seconds       4444/tcp                 mystifying_newton
89789fbf40d9        selenoid/chrome:62.0      "/bin/sh -c /entry..."   37 seconds ago      Up 35 seconds       4444/tcp                 hopeful_carson
7cd3b10cb40e        selenoid/chrome:62.0      "/bin/sh -c /entry..."   41 seconds ago      Up 38 seconds       4444/tcp                 adoring_brahmagupta
f18c31eae911        selenoid/chrome:62.0      "/bin/sh -c /entry..."   42 seconds ago      Up 39 seconds       4444/tcp                 lucid_ardinghelli
863cb5f48876        selenoid/chrome:62.0      "/bin/sh -c /entry..."   42 seconds ago      Up 40 seconds       4444/tcp                 wonderful_goldstine
2d83ed7b03c8        selenoid/chrome:62.0      "/bin/sh -c /entry..."   42 seconds ago      Up 41 seconds       4444/tcp                 angry_lamport
95afcfca4331        aerokube/selenoid:1.3.9   "/usr/bin/selenoid..."   5 hours ago         Up 5 hours          <IP_ADDRESS>:4445->4444/tcp   selenoid
ubuntu@ip-172-31-2-35:~$ docker ps
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                    NAMES
95afcfca4331        aerokube/selenoid:1.3.9   "/usr/bin/selenoid..."   5 hours ago         Up 5 hours          <IP_ADDRESS>:4445->4444/tcp   selenoid

UPDATE on previous execution: The hung tests do finally end after 1-2 hours with this error:
FAILED: test
org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
Build info: version: '3.7.0', revision: '2321c73', time: '2017-11-02T22:22:35.584Z'
System info: host: '----', ip: '---%en0', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.12.6', java.version: '1.8.0_131'
Driver info: driver.version: RemoteWebDriver
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:621)
	at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:219)
	at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:142)
	at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:155)
	at Main.test(Main.java:36)
	at sun.reflect.GeneratedMethodAccessor42.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:108)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:661)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:869)
	at org.testng.internal.TestMethodWithDataProviderMethodWorker.call(TestMethodWithDataProviderMethodWorker.java:75)
	at org.testng.internal.TestMethodWithDataProviderMethodWorker.call(TestMethodWithDataProviderMethodWorker.java:14)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.net.SocketTimeoutException: Read timed out
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
	at java.net.SocketInputStream.read(SocketInputStream.java:171)
	at java.net.SocketInputStream.read(SocketInputStream.java:141)
	at org.apache.http.impl.io.SessionInputBufferImpl.streamRead(SessionInputBufferImpl.java:137)
	at org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer(SessionInputBufferImpl.java:153)
	at org.apache.http.impl.io.SessionInputBufferImpl.readLine(SessionInputBufferImpl.java:282)
	at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:138)
	at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:56)
	at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:259)
	at org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection.java:163)
	at org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader(CPoolProxy.java:165)
	at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:273)
	at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:125)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:272)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:72)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
	at org.openqa.selenium.remote.internal.ApacheHttpClient.fallBackExecute(ApacheHttpClient.java:138)
	at org.openqa.selenium.remote.internal.ApacheHttpClient.execute(ApacheHttpClient.java:86)
	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:101)
	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:73)
	at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:142)
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:600)
	... 18 more

I tried with limit 12 and 4 hung:
ubuntu@ip:~$ docker ps
CONTAINER ID        IMAGE                     COMMAND                  CREATED              STATUS              PORTS                    NAMES
369559a1eb6b        selenoid/chrome:62.0      "/bin/sh -c /entry..."   55 seconds ago       Up 54 seconds       4444/tcp                 romantic_mayer
047188540f3b        selenoid/chrome:62.0      "/bin/sh -c /entry..."   56 seconds ago       Up 54 seconds       4444/tcp                 quizzical_tesla
21c6fe13cca0        selenoid/chrome:62.0      "/bin/sh -c /entry..."   59 seconds ago       Up 57 seconds       4444/tcp                 distracted_ramanujan
cc1d601507fb        selenoid/chrome:62.0      "/bin/sh -c /entry..."   About a minute ago   Up 59 seconds       4444/tcp                 xenodochial_lumiere
d6a13b9e9699        aerokube/selenoid:1.3.9   "/usr/bin/selenoid..."   2 minutes ago        Up 2 minutes        <IP_ADDRESS>:4445->4444/tcp   selenoid
ubuntu@ip:~$ docker ps
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                    NAMES
d6a13b9e9699        aerokube/selenoid:1.3.9   "/usr/bin/selenoid..."   3 minutes ago       Up 3 minutes        <IP_ADDRESS>:4445->4444/tcp   selenoid

@ryan-levell-twc 1) to check load average just type:
$ cat /proc/loadavg
... or
$ uptime

Default session timeout is 1 minute. So when your tests hung, their containers will be deleted 1 minute after last command. Tests waiting for session during hours is very strange.  Do you have anything (e.g. Nginx) between Selenoid and your test?

Also please take a look at Selenoid logs. You should be seeing entries with [SESSION_TIMED_OUT]. Please send an extract of Selenoid log here.

Yes the container successfully shuts down at 1 minute as shown above. And now I believe TestNG has a default 1 hour timeout that is being triggered to end the test.
If not for that 1 hour timeout, I believe it would hang indefinitely on driver initialization.

 The container is shutdown within 1 minute. But the new RemoteWebDriver call never returns control.

Similar to the table above, I have been running 75 tests concurrently and it has not hung yet. It seems when the parallel count of my side is too high then a few begin to hang:

# Parallel Threads
Max Grid Containers
# Tests To Run
Hung?

200
16
220
often

75
16
220
not yet

I also pointed the tests to a cloud service and they do not hang, even when running 200 in parallel.

So far as I can see you have load average = 30-40 which is very big. At least 4-5 processes are waiting for CPU under the load. I think this is why you are getting hung containers. Do you have anything else except Selenoid on these VMs? I would try to decrease -limit or find which process is "burning" your CPUs.

Nope these are new AWS machines, c5.2xlarge (8 cores). The only thing running is Selenoid in docker. Tests also hung with -limit 12.
Like I mentioned, it seems to happen when I am sending way more tests than my grid supports. If I have 200 parallel threads in my test execution and only a single hub with a limit of 16, then that is when I am getting some hung tests. When I reduced my parallel threads to 75, no tests have hung so far.
So the easy fix is to reduce the threads on my side. But my guess is that when the number of tests coming into Selenoid becomes too large compared to the limit, some tests are lost somehow.

@ryan-levell-twc Selenoid has queues. If total number of parallel session is equal to -limit then new requests will wait for slots to free. While waiting these new requests can timeout.

Ok that may be the cause. It times out in new RemoteWebDriver, but then unintentionally loses/destroys the reference and never issues a response?

Normally when new RemoteWebDriver() times out - an exception is thrown and you should have broken test cases. So not sure why it just "hungs" in your case.

Thanks, your comment lead me in a different direction. I was working on other things at the time, but I believe my "1-2 hour" wait was likely exactly 3 hours. Because there is a known issue about this: https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/3951. I now think that is the core issue.


Update char-transact-sql.md

Text revisions to tighten and optimize the reading flow of the material.

Thank you @fbsolo


feature(wallet-mobile): New add wallet funnel revamp

@SorinC6 can you please wire up the logic? My suggestion would be to create a package such as @yoroi/transfer -> @yoroi/setup-wallet

@banklesss I changed my mind, let's call it setup-wallet -> features/SetupWallet -> SetupWalletNavigator

@banklesss let's merge this update after these tiny changes, and give it another round to load off the input -> password, input -> wallet name, to the state, using the same schema from transfer, so errors, display value, etc... will also be available x-platform.

[ ] Rename navigator to setup-wallet-<...>
[ ] Rename package to @yoroi/setup-wallet
[ ] Rename feature to src/features/SetupWallet
[ ] Move back wallet selection stuff


[CARBONDATA-1528] [PreAgg] Restrict alter for pre-aggregate tables

Be sure to do all of the following checklist to help us incorporate
your contribution quickly and easily:

[X] Any interfaces changed?

[X] Any backward compatibility impacted?

[X] Document update required?

[X] Testing done
Please provide details on
- Whether new unit test cases have been added or why no new tests are required?
- How it is tested? Please attach test report.
- Is it a performance related change? Please attach the performance test report.
- Any additional information to help reviewers in testing this change.

[X] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1080/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1081/

SDV Build Success , Please check CI http://<IP_ADDRESS>:8080/job/ApacheSDVTests/1684/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1082/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1083/

SDV Build Fail , Please check CI http://<IP_ADDRESS>:8080/job/ApacheSDVTests/1685/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1086/

LGTM

SDV Build Success , Please check CI http://<IP_ADDRESS>:8080/job/ApacheSDVTests/1686/

SDV Build Success , Please check CI http://<IP_ADDRESS>:8080/job/ApacheSDVTests/1687/


Updated install.md for Ubuntu 22.04

After some trial and error trying to configure make check to work on my Ubuntu 22.04 LTS vm, I wrote down the extra steps I needed to take. This will hopefully help with the onboarding process of new devs. These extra steps were tried and confirmed working on @Andreea-Lupu 's xUbuntu 22.04 vm.
Signed-off-by: Catalin Hofnar<EMAIL_ADDRESS>

Looks reasonable to me, thanks!


istio-1.10.4 -->  "transport: Error while dialing dial tcp: lookup istiod.istio-system.svc on <IP_ADDRESS>:53: no such host

Bug Description
We are using Azure AKS 1.21.7 for prod workloads.
We have istio-proxy sidecar for all prod pods. We are getting the below error in our application pod. CoreDNS, Application pods, istio-system pods all are up and running. But still why we are getting DNS-related errors.
Error from actual/app pod: Error connecting to node my-release-kafka-2.my-release-kafka-headless.kafka:9092 (id: 2 rack: null) (org.apache.kafka.clients.NetworkClient)
java.net.UnknownHostException: my-release-kafka-2.my-release-kafka-headless.kafka
Error from istio-proxy for the same pod:
warning envoy config StreamAggregatedResources gRPC config stream closed: 14, connection error: desc = "transport: Error while dialing dial tcp: lookup istiod.istio-system.svc on <IP_ADDRESS>:53: no such host
Version
istio version - 1.10.4

Azure AKS - 1.21.7

Additional Information
No response

Does your pod configure the dnsPolicy field perhaps?

@howardjohn Thanks for your response.
Yes in pod configuration, I can see "dnsPolicy: ClusterFirst".
I just restarted the application pod and it's working fine without connectivity errors. Is istio-proxy using cache DNS entries?
I've verified CoreDNS pod, it is working and able to resolve hosts. But I suspect, istio-proxy is using cached DNS entries and trying to resolve with old pod entries.

Istio doesn't do anything particular with DNS, so any issues in this regard are likely lower level Kubernetes platform issues

Restarting application pod worked. Will check with Microsoft as well on this. Like why after restarting pod, it worked. We haven’t done any changes to coredns pod. We are using 1.10.4 istio version.
In istio docs, they are talking about DNS:
Starting with Istio 1.8, the Istio agent on the sidecar will ship with a caching DNS proxy, programmed dynamically by Istiod. Istiod pushes the hostname-to-IP-address mappings for all the services that the application may access based on the Kubernetes services and service entries in the cluster. DNS lookup queries from the application are transparently intercepted and served by the Istio agent in the pod or VM. If the query is for a service within the mesh, irrespective of the cluster that the service is in, the agent responds directly to the application. If not, it forwards the query to the upstream name servers defined in /etc/resolv.conf.

That is not enabled by default and doesn't impact DNS requests from the
istio-proxy (only from the user app)
On Sat, Mar 19, 2022, 9:15 AM zohebs341 @.***> wrote:

Restarting application pod worked. Will check with Microsoft as well on
this. Like why after restarting pod, it worked. We haven’t done any changes
to coredns pod. We are using 1.10.4 istio version.
In istio docs, they are talking about DNS:
Starting with Istio 1.8, the Istio agent on the sidecar will ship with a
caching DNS proxy, programmed dynamically by Istiod. Istiod pushes the
hostname-to-IP-address mappings for all the services that the application
may access based on the Kubernetes services and service entries in the
cluster. DNS lookup queries from the application are transparently
intercepted and served by the Istio agent in the pod or VM. If the query is
for a service within the mesh, irrespective of the cluster that the service
is in, the agent responds directly to the application. If not, it forwards
the query to the upstream name servers defined in /etc/resolv.conf.
—
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/issues/38004#issuecomment-1073037316, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXNPGO7ZPPP2NEXRWU3VAX4RRANCNFSM5RCO3SQA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

@howardjohn Thanks for sharing details and insights on this.


CT Project Details

@Jann-Skotdal : Thanks for your contribution! The author, @v-pawal, has been notified to review your proposed change.

@jborsecnik : Thanks for your contribution! The author, @v-pawal, has been notified to review your proposed change.

verified URL fix

#sign-off

@wjohnson: Thank you for submitting your PR: https://github.com/MicrosoftDocs/azure-docs/pull/31547. We published this change to the documentation in reference to your comment. I agree that we needed to make the Category ID easier to find and I hope this addresses your concern.


Authenticate with Twitter Gives a 500 - Internal Server Error

From the services page Authenticate with Twitter Gives a 500 - Internal Server Error.
API / Secret are set up in .env and callback is set to https://mydomain.com/twitter/auth/callback

My install was cloudflare --> nginx --> LXD --> nginx --> huginn
reinstalling as cloudflare --> nginx --> huginn solved the problem.


I got an error when trying to run az webapp up

I got this error when I follow this tutorial:
https://docs.microsoft.com/en-us/learn/modules/host-a-web-app-with-azure-app-service/6-exercise-deploy-your-code-to-app-service?pivots=csharp

Any help?

@beautifullife from the URL I can see that the issue is not related to the Webapp itself.
Could you call the same command with --resource-group parameter?
az webapp up --name "$APPNAME" --resource-group ….
I just wonder if you get the same error.
Could you also verify that the subscription 955..42 is correct and also resource group dung1582002_rg_Windows_centralus?
Could you try to display resource group as well?
az group show -g dung1582002_rg_Windows_centralus

@beautifullife, can you also run with --debug and share with us the trace? Might be another bad error from appservice

Thanks for your help! I missed 1 step that needs to get information about my Azure:
APPNAME=$(az webapp list --query [0].name --output tsv)
APPRG=$(az webapp list --query [0].resourceGroup --output tsv)
APPPLAN=$(az appservice plan list --query [0].name --output tsv)
APPSKU=$(az appservice plan list --query [0].sku.name --output tsv)
APPLOCATION=$(az appservice plan list --query [0].location --output tsv)
After this step, I run:
az webapp up --name $APPNAME --resource-group $APPRG --plan $APPPLAN --sku $APPSKU --location "$APPLOCATION"
It works perfectly now!


Changed externals version to 17.0.0-previews-3-31516-026

Changed externals version to 17.0.0-previews-3-31516-026

Retriggered to see if thw version became available, or a newer one. Is the one mentioned in the PR the earliest one to use?

Unfortunately the minimal version to use for *.Dia is lower than the one that contains the changes we need. I'm watching the VS feeds for when a newer version becomes available.


improve issue template to reflect process as discovered in #30

Feel free to wordsmith me and commit on my behalf @mbbroberg

Will do @majormoses

Made some edits to simplify (less words is gooder 👍) and amended. Also:

In some cases not all maintainers may have access and they may ask you to transfer to a specific maintainer who has access to transfer org repos.

☝ @majormoses this is behavior we can manage with sane permissions, so not needed in template.

only admins are capable of transferring in, this means that either all maintainers are admins or we only assign admins to these requests.

the thought behind the verbiage is that there is more work than simply transferring the repo and while I might transfer the repo I could hand off the rest to another maintainer who has access to everything else.

@majormoses I didn't realize the intended scope. I'm working from the belief that Issue/PR template need to be as short and actionable as possible.
What do you think of adding a checklist in the replies.md project since it sounds like a response from a maintainer to the issue (that will lend itself to automation later)?

ya that could work.


Fix value type requested for rapidjson value

After some thinking about it, we actually need to be more defensive on using rapidjson,  I will file a ticket regarding that.
Currently this ticket is a minimal fix for v2 L0_large_payload, I am okay with either merging it just for the fix or postponing it to be PR for the upcoming ticket mentioned above.


Remove code duplication in test_spack.py

Added the function spack_install_and_test, which automatically checks if 'spack devbuildcosmo', 'spack installcosmo' or 'spack install' should be used and calls self.Srun and self.Run with the same arguments as before.

Thanks for the review @jonasjucker and @PanicSheep! All requested changes should be implemented now.

Thanks a lot for implementing this, @AnnikaLau.
I think the only remaining error seems to be related with installcosmo. It seems it can't process '--show-log-on-error'. @AnnikaLau can you look into this? It might be just a matter of forwarding the command and allowing/accepting/recognizing it. Should it turn out to be complicated we could discuss if it's worth it, because there's also the solution of just omitting it in the case of installcosmo.

@PanicSheep: Having --show-log-on-error as a possible argument to installcosmo seems to be complicated. At least I wasn't able solve within half a day, which is why I now changed the code so that it only adds --show-log-on-error to 'spack install'. But I also haven't worked so much with Spack and maybe someone can solve that much faster. Otherwise, we can leave it like this I think.

Jonas idea was to add the verbose flag to 'spack installcosmo' as an alternative to --show-log-on-error.

launch jenkins cosmo

@AnnikaLau thanks for looking into it. I created an issue for it https://github.com/C2SM/spack-c2sm/issues/542. Would you mind add what you found out while trying to make it work, so the next person can profit?

@AnnikaLau thanks for looking into it. I created an issue for it #542. Would you mind add what you found out while trying to make it work, so the next person can profit?

Sure, I tried to write down what I figured out so far.

@AnnikaLau Perfect and thank you for the PR. It improves readability sooooo much 👍


JSX:

Description
I want to work on the README.md file for JSX.
Domain
JavaScript
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

@


Add furigana to self-updating websites such as messaging platforms like discord

Is your feature request related to a problem? Please describe.
The automatic addition of furigana only runs on page initialization. but some messaging platforms add furigana to the page fetching live updates from the server.
Describe the solution you'd like
Obviously, checking the full page for dynamic updates every few seconds is inefficient, i was hoping to add css selector rules that encompass dynamic area within a website. Such dynamic areas are essentially, individual messages. When furigana is added to one of these blocks, a unique identifier is appended to a HashSet. such a HashSet can be used to maintain the state of furigana for blocks.
A list of such blocks can be fetched every few seconds (could be 10 seconds, could be 5 seconds, maybe user selectable)
and then, the list is checked throughout the hashset. if an element is not in the hashset, the furigana for such element is added to the page and the element is added to the hashset.
Describe alternatives you've considered
instead of a hashset, the element can have an attribute set on it, namely: "furigana_added=true" or something like this. this can prevent the need of a hashset. and most modern messaging platforms that need such a dynamic update feature usually don't leave all the elements in the DOM. they remove and add elements that are near the viewing area.
Also, this dynamic update feature may be disabled by default and enabled for some websites
Additional context
There could be other efficient methods to solve this issue that i came up with, most websites usually add or remove from the ends of the said block list. so you could also just check the start or end of the block list and stop iterating from either end once you encounter a furigana added block.
Validations

[X] Check if you're on the latest Furigana Maker version.
[X] Follow our Code of Conduct
[X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.
[ ] I would like to implement this feature via a PR.

another thing that came to my mind, i suppose this would have to be asynchronous in nature to prevent user from noticing browser lag

so i was going over the source code, and addFurigana function seems to be exactly the thing that's needed to perform live updates without adding redundant furigana, I'll try to get it fixed on my end though i must admit to not having any experience with javascript in particular

https://github.com/aiktb/FuriganaMaker/blob/6587cd3aa017e5c0a7a788dfaaab67c897885ad7/entrypoints/autoMark.content.ts#L54
I've watched the DOM changes under body and if you set the selector correctly then the dynamic content should be grabbed correctly.
Can you give me a reproducible example, I'd like to know why this doesn't work correctly in discord.

indeed, as i was exploring the codebase, i did come across that.

I checked it by passing a console.log callback to a new mutationobserver. and very clearly, mutations are observed, but somehow, it doesn't add any furigana to the text.
As a matter of fact, the very now that i am writing this report, the mutations are coming in at a fast rate.

I also have added the above rule

indeed, as i was exploring the codebase, i did come across that.

I checked it by passing a console.log callback to a new mutationobserver. and very clearly, mutations are observed, but somehow, it doesn't add any furigana to the text.
As a matter of fact, the very now that i am writing this report, the mutations are coming in at a fast rate.

I also have added the above rule

You are using the wrong selector. This was my mistake. The body selector was for pre-2.0.0 versions of this extension. After 2.0.0 it was included by default but I forgot to change the text description to remove it.
I will correct the description in the extension later.
For a dynamically updated site you need a more fine-grained selector:
domain: discord.com
selector: .markup_f8f345

The problem is that the f8f345 at the end of this selector is suspicious. It seems to be a hash value generated based on the component structure, which may be broken if Discord is updated, but I don't notice that Discord has a more reliable selector.
If this solves your problem, I can close it.

mhm, since i know what selector to choose in case it breaks, i suppose it wouldn't be that hard even if discord breaks. Thank you so much! my issue is solved!


No --expandBorder option in token-transformer

Describe the bug
On of our designers uses the new border 'composition' tokens, but there's no way to expand these with token-transformer (where as it is possible for shadows, typography and custom composition tokens)
Expected behavior
I would expect a --expandBorder parameter in token-transformer

currently facing this problem :(

I have the same issue. Anything new around this topic?


Update akka-actor, akka-testkit to 2.6.10

Updates

com.typesafe.akka:akka-actor
com.typesafe.akka:akka-testkit

from 2.6.7 to 2.6.10.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.typesafe.akka" } ]

labels: library-update, semver-patch

Pull Request Test Coverage Report for Build 91

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 87.692%

Totals

Change from base Build 90:
0.0%

Covered Lines:
57

Relevant Lines:
65

💛  - Coveralls


Bump kube-vip to v0.7.1

Expected Behavior
We're running an outdated version of kube-vip. Are there any reasons not to update to latest v0.7.1? I did so on my local system and nothing seems to have broken, but I haven't fully put it through its paces. There is one change on how it's deployed, however. The path to the RBAC manifest now lives at a different URL and not tied to a release tag. Will this cause issues in the future? I don't know enough about RBAC to know. I was thinking of opening a PR with my changes but wanted to post an issue first.
I attempted the upgrade to see if it would fix an unrelated issue. While it did not fix the issue I was having, I do not fault kube-vip for it. I think the problem lies more with Litestream and how SQLite works.
I don't have a good reason to update kube-vip beyond just keeping things current. Nothing in the changelogs jumped out at me.
v0.6.4 -> 0.7.0 -> 0.7.1
Current Behavior
Kube-vip on v0.6.4
Steps to Reproduce
Not a bug; no steps to reproduce.
Context (variables)
Operating system: I've only tested on my local 3 node cluster running on Raspbian
Hardware: Pi4 Model B
Variables Used
all.yml
k3s_version: "v1.29.0+k3s1"
ansible_user: NA
systemd_dir: "/etc/systemd/system"

flannel_iface: "eth0"

#calico_iface: ""
calico_ebpf: ""
calico_cidr: ""
calico_tag: ""

apiserver_endpoint: ""

k3s_token: "NA"

extra_server_args: ""
extra_agent_args: ""

kube_vip_tag_version: "v0.7.1"

kube_vip_cloud_provider_tag_version: ""
kube_vip_lb_ip_range: ""

metal_lb_speaker_tag_version: "v0.13.12"
metal_lb_controller_tag_version: "v0.13.12"

metal_lb_ip_range: ""

Hosts
host.ini
[master]
IP.ADDRESS.ONE

[node]
IP.ADDRESS.TWO
IP.ADDRESS.THREE

[k3s_cluster:children]
master
node

Possible Solution

[x] I've checked the General Troubleshooting Guide

Thanks!  I love keeping things up to date.  PR is welcome!  Might be worth checking metallb too!  Thanks!

Thanks for your input. I'll put one in when I get a chance. Might be later in the week depending on day job work load.

closed by https://github.com/techno-tim/k3s-ansible/pull/469


invalid nonce (has already been used)

I have a [BUG REPORT] or [FEATURE REQUEST]
Details:
When calling the following Method OnGetOpenOrderDetailsAsync, within ExchangeYobitAPI, with a provided symbol

Please pull code and try again. Let me know if it works. Donations are always appreciated.


Relax accepted fstype restriction in mount_requests

Proposed feature
Relax the accepted fstype restriction for mount_requests.
Rationale
Currently, as stated in assert.yml, fstype for mount_requests must strictly be  "ext3", "ext4", "iso9660", "nfs", "none", "swap", or "xfs". This leads to assertion error when setting fstype to file systems such as btrfs, fuse-type filesystem, glusterfs, etc.
Additional context
I understand the rationale for default file system type a fallback for the user. Perhaps a toggle or some sort to bypass it may suffice?
Please consider sponsoring me.

Good one, let me zoom in and think of something. Maybe a warning-message instead of a failure.


Migrate to CircleCI

Supersedes #25

Ok, this looks great so far.
There are two last things to do - Update the CI badge, and see if it’s possible to cache Carthage build a bit better. When this is ready I’ll remove the WIP badge.
Regarding slack integration, it’s done from theDasjboard itself, not in the yml file, so that should be done later after this is merged in.

@freak4pc matrix builds run in parallel, but we can start with this.

@kzaher Let me give this a quick try with V2, it doesn't seem too tricky. I'll have a separate commit, and we can revert if any issues.

@kzaher Ok so - V2 will give you this "parallelism", but thing is - you don't get parallel builds in OSS anyways, so I'm not sure if we are gaining anything from working with this.
Still don't mind having the tests separated like down here (once I fix the problematic ones), but they will still run in Serial and not in Parallel unless CircleCI will be willing to add more containers for free somehow (which seems unlikely).

Another issue:
Your builds never ran in Matrix. For example your Cocoapods tests seem to "count on the fact" the submodules installed first (otherwise you have to add RxTest and RxBlocking to the test target in the Podfile)
Second issue, the Xcode project has the "Carthage" build step in it for Cocoapods as well, which seems to cause some issues when trying to build separately for some strange user. Need to dig into it a bit deeper if we want to use v2 here.

If you want the "separate workflows" solution, I think the best way to "sort this out" is to reimagine what we're testing here.
Right now you're testing a project is able to build and test vs both Carthage, Cocoapods, Submodules and SPM.
What I think might be better to do is

Submodules - just checkout and do a Test and Build, those are quick so no harm
Carthage: Do a regular Carthage build on both tvOS and iOS without Xcode at all - if those succeed, Carthage is fine. I don't see a reason necessarily to build against the sample project. This would also mean you can remove the build phase script in this case.
Cocoapods: We can either build vs. the example project or just do a full pod spec lint which makes a "Fake" Xcode project to test the Cocoapod installs successfully
SPM - As today swift build and swift test are relatively quick and performant

The two sticky points are Carthage and CocoPods together. So I think my point is, instead of trying to build and test vs. an example project for all of these platform, try to only build the framework itself for each of the platforms and only do the tests for one point (for example the Submodules option)

After our discussion this has been reverted to the standard style v1 config. Ready for you whenever @kzaher

cc @Vkt0r

@kzaher This doesn't really seem like a matrix build doesn't entirely ensure parallelism, sometimes it would run sequentially just because you get it out of the box.
The main way you can see this is true is since your project worked with Cocoapods even though your Podfile doesn't include RxTest and RxBlocking (while your test target uses it), probably since the submodules kick in, in that case.
When I tired an entirely separated parallel build it didn't work well and failed because of the Carthage build step (it tries to copy the frameworks and couldn't find them, it might find it in your since it's cached in Travis, but not sure)
carthage deintegrate would also mean get rid of the build step in this case, the folder itself actually has no meaning in the build process besides the fact the static frameworks are sitting there
In any case, since CircleCI don't give parallel builds here, and as we discussed in private, I don't think it matters that much in our case, unless you have any notes.
I don't mind removing a git reset instead of a pod reintegrate if its nicer for you.

@kzaher This doesn't really seem like a matrix build, doesn't seem like it entirely ensure parallelism, sometimes it would run sequentially just because you get it out of the box.

You mean to say that it's potentially parallel, but could be serial depending on available workers?

The main way you can see this is true is since your project worked with Cocoapods even though your Podfile doesn't include RxTest and RxBlocking (while your test target uses it), probably since the submodules kick in, in that case.

Ok, I've managed to reproduce that. We were indeed missing:
@@ -9,6 +9,8 @@ end
 target 'RxFeedbackTests' do
   pod 'RxSwift', '~> 4.0'
   pod 'RxCocoa', '~> 4.0'
+  pod 'RxTest', '~> 4.0'
+  pod 'RxBlocking', '~> 4.0'
 end

I have no idea why it built before. If we added this, CocoaPods should work.

When I tried an entirely separated parallel build it didn't work well and failed because of the Carthage build step (it tries to copy the frameworks and couldn't find them, it might find it in your current set-up since it's cached in Travis, but not sure)

I've missed RxSwift submodule, and that was causing my successful builds. Copy frameworks could be changed with a script that looks for them in product directory or Carthage directory.

carthage deintegrate would also mean get rid of the build step in this case, the folder itself actually has no meaning in the build process besides the fact the static frameworks are sitting there

I'm not sure what do you mean by this. Can you explain the exact problem?

I don't mind removing a git reset instead of a pod reintegrate if its nicer for you.

I think we should use git reset HEAD --hard; git clean -d -f; git rm -rf RxSwift.

I already did this (fixing the Podfile), and it didn't resolve the problem. Let me push the v2 script here real quick and you'll see the issue I was having. I'm 99% sure its relates to the build phase.

I believe this is also an important part.

Copy frameworks could be changed with a script that looks for them in product directory or Carthage directory.

Here, @kzaher - Feel free to track these 4 builds.
Regarding the carthage thing, Indeed it is - but It's not straight forward. It's not a "Run Script Phase" , the frameworks are "linked as binary" to the project, and they don't exist, so it fails (there is also some Header phase where it doesn't exist).

Maybe setting them to Optional would work but I'd have to try that separately.
You'll see these warnings when the builds do their thing.

@kzaher check out the failures:
for CocoaPods:
The following build commands failed:
	PBXCp /Users/distiller/Library/Developer/Xcode/DerivedData/RxFeedback-bnjsoiilaqkzbpfawauivabgwgxp/Build/Products/Debug-iphonesimulator/RxCocoa.framework /Users/distiller/Library/Developer/Xcode/DerivedData/RxFeedback-bnjsoiilaqkzbpfawauivabgwgxp/Build/Products/Debug-iphonesimulator/Example.app/Frameworks/RxCocoa.framework
	PBXCp /Users/distiller/Library/Developer/Xcode/DerivedData/RxFeedback-bnjsoiilaqkzbpfawauivabgwgxp/Build/Products/Debug-iphonesimulator/RxSwift.framework /Users/distiller/Library/Developer/Xcode/DerivedData/RxFeedback-bnjsoiilaqkzbpfawauivabgwgxp/Build/Products/Debug-iphonesimulator/Example.app/Frameworks/RxSwift.framework

For Carthage the error is a bit unclear, but we can debug that separately.

@freak4pc @kzaher quick update Definitely setting the status of the frameworks as Optional and isolating the carthage step didn't make any difference in the failure of the step. I was able to extract the xcodebuild-log from carthage using the Artifacts in CircleCI. This is the failure in the step Carthage Build tvOS:
/Users/distiller/project/Sources/RxFeedback/Feedbacks.swift:9:8: error: module file was created for incompatible target arm64-apple-ios8.0: /Users/distiller/project/Carthage/Build/iOS/RxSwift.framework/Modules/RxSwift.swiftmodule/arm64.swiftmodule
import RxSwift
       ^

** ARCHIVE FAILED **

The following build commands failed:
	CompileSwift normal arm64
	CompileSwiftSources normal arm64 com.apple.xcode.tools.swift.compiler
(2 failures)

So pretty much Xcode is using an incorrect framework here as is trying to use the iOS version. Continue working on it

I'm withdrawing from this effort for now. Seems that for concurrent builds Travis works better. This PR and branch still lives if anyone else would want to take an attempt on it.


Rename and detach repository

As discussed in #70 already, I think it would be a good idea to rename the repository. By giving it a unique name, it is easier to differentiate between our fork and the original.
Additionally, we should remove the "fork status", to prevent misguided PRs to the original project. This is possible through Github Support, and it turns the repo into a full standalone repository.
Both changes are possible without losing history. Github will automatically redirect users from old repo links to the new repo. Merge-back to the original repo is still possible (although unlikely).
Some proposals for new names:
FFmpegInterop-Adv(anced)
FFmpegInterop-Plus
FFmpegInteropX
What do you think? Which names do you prefer (new ideas welcome)?
I like FFmpegInteropX, the eXtended version of FFmpegInterop.

FFmpegInteropX seems simplest option so I think we should go with that one.

after it being detached we will still be able to access it with the same link ?

All links will be redirected. Also git repos will continue to work, although it is recommended to clone the repo again from the new official URI.

I vote for FFmpegInteropX

I have done the first steps: The repository has been renamed and moved to the new "FFmpegInteropX" github account! You can see the new address in the title bar. Any old links are automatically redirected to the new address.
Your local github repositories will continue to work thanks to redirection. But GitHub recommends you to update the path. This can be done by either deleting your local repository and cloning it again, or by using git command line to update the url:
 git remote set-url origin https://github.com/ffmpeginteropx/FFmpegInteropX

The final step is to detach the repository (remove "fork" status). This has been requested and will hopefully be completed soon.
Let me know if there are any issues.

What about project name and solution name? Are you gonna change that to FFmpegInteropX or not?

I think I will rename the solution file. I am not yet decided on the project file. Currently, it can work as a drop-in replacement for any devs who used the original Microsoft repo. Even the old APIs are all available and working (although mostly deprecated). If we change project file name and namespaces, quite a bunch of changes would be neccessary to even test our solution.

Yay, detaching the repo is finished!

Well, for us it will be just a namespace modification. I think this is the best time to remove the deprecated MS APIs. The people using them, if any, would miss out a lot by using them so..

I think we should use more C++/WinRT in the future.

Maybe we should close this?

I think the problem with c++/winRT is that it requires sdk 1803, which is pretty new.

@mcosmin222 Yes, but I think we should prepare now.

I agree with @mcosmin222 that C++/WinRT is currently not an option anytime soon, due to SDK dependency.

Regarding WinRT: When I first read about this, I was pretty excited, because it is so simple to consume UWP APIs. When I then read the parts about "component creation", I was a bit confused, hoping that this stuff is really needed for "normal programming". After trying it out now, I have to say that I am pretty disappointed. Creating classes is now even more complicated! Instead of two files you now even have to maintain three files: idl file, cpp file and h file. First you create the idl, then you must build the solution, then copy some generated prototype classes and headers into your solution, then implement it. And you have to do that for every class, every UI control (Page), ... Right now I don't believe that I am willing to switch to that model. I can arrange with C++/CX, where at least I can go header-only if I want. The same is impossible with C++/WinRT.

While I agree there are quite some annoying this in C++/CX, like string handling, I think it integrates quite nicely with the standard C++. I really don't see the point in creating a new C++/winRT abstraction, they should have just built on top of C++/CX, which is a pretty mature technology by now.

I think the whole pointer and hats stuff is pretty annoying. I really like the clean, C#-like dot syntax of C++/WinRT. But the added big overhead to create classes destroys it for me.
Best would be to combine the two: Use C++/CX way to define classes but have them act like in C++/WinRT (stack-only, dot-syntax). This would not be pure C++ anymore, and it would require compiler extensions like in C++/CX. But for me it would combine the benefits of both worlds (I don't care about pure C++ or not, I don't even like C++ ^^).

https://github.com/Project-Nagisa/Nagisa
Here is an open source UWP app project which uses pure C++. (C++/WinRT and Win32 API)
I hope it can help you.

The only way I could see me using this is with massive code generation, to generate the whole crap from idl files. And I don't feel like setting that all up-

Yes, you needs to write idl files and I can understand you.
But pure C++ is good for compiler to optimize, I think.

I know that C++/WinRT is a bit more efficient than C++/CX. But as long as you only use it for control flow and application logic, it's really not an issue at all. All performance critical stuff is done in native libaries (ffmpeg in our case).

I am agree with you.

I am closing this one. Maybe we will do a FFmpegInteropX 2.0 at some point, which is where we could reorganize the folder structure and drop deprecated APIs. But I think for now we are fine with FFmpegInteropX status.


run error

step one reset the dappchain

stop two run the dappchain

deploy contract to dappchain

start the web

result

i run it on the google cloud have some question ,

@eduardonunesp  hi  do you know what's wrong , it seems deploy error ,i refer the truffle doc , but  still don't know how to fix it

Same issue here.

@smlee729 @myyan do you guys have the number of the build? loom version

2018/07/08 09:12:58 Sending logs to file://- 1.0.0+b161

@eduardonunesp @myyan Oops sorry guys. I didn't notice that loom version has been upgraded.
I copied from loom's developers page, but it seems obsolete.
Now it's working.
`
yarn run v1.7.0
$ truffle deploy --reset --network loom_dapp_chain
Using network 'loom_dapp_chain'.
Running migration: 1_initial_migration.js
Deploying Migrations...
... 0x0365f31ddc3791ef38984b01f932560a790cbfbf829e59643024b6d868003dce
Migrations: 0x6d002528e54a421f5e7375690e5fb74b75add0d8
Saving successful migration to network...
... 0x4841ea8ddaa7e06263d1cf979bf30b4eb0250c3666da74b6f288648f97c0932f
Saving artifacts...
Running migration: 2_deploy_contracts.js
Deploying SimpleStore...
... 0x774e35f3c549e67431cf2d05924fd21d560ef08f522ffdbddc2618d6a8f7ec9a
SimpleStore: 0x1a31b9b9d281d49001fe7f3f638000a739afc9c3
Saving successful migration to network...
... 0x04114dc450dac2d4445d5cf35a21e5244925837dd67ed116ece7be5c91baa993
Saving artifacts...
✨  Done in 9.02s.
`


Sync and initialize the session message counter during PASE and CASE session establishment.

The session message counter should be initialized during PASE and CASE session establishment.

We're in progress of reviewing older issues. Is this still an issue given how old the SDK this was tested against? Please re-open if so. Thanks!


Allow generic parameters to differ the contract and implementation with AddSqlServerDbContext and AddCosmosDbContext

With the AddSqlServerDbContext and AddCosmosDbContext methods, please add a version to supply two generic types to differ the contract from the implementation.
The AddDbContext extension method allows specifying generic types TContextService and TContextImplementation, e.g. builder.Services.AddDbContext<IGamesRespository, GamesSqlServerContext>.
This allows to programmatically change the implementation at startup using configuration, e.g. GamesCosmosContext GamesInMemoryContext.
When just the context type is offered, for every context type a proxy class is needed which just forwards methods to the context.
Thanks!

With the planned redesign of the EF components public API #1403, this scenario is not listed, but if the redesign is done using 2 calls as mentioned by @eerhardt https://github.com/dotnet/aspire/issues/1403#issue-2042691815, this will solve this issue as well.

Triaging into preview three along with #1403

@christiannagel it's merged, you can know register the DbContext like you wanted and then call EnrichSqlServerDbContext (with SqlServer for instance). Here is sample inspired from the README in the component.
var connectionString = builder.Configuration.GetConnectionString("catalogdb");
builder.Services.AddDbContextPool<ICatalogDbContext, CatalogDbContext>(dbContextOptionsBuilder => dbContextOptionsBuilder.UseSqlServer(connectionString));
builder.EnrichSqlServerDbContext<CatalogDbContext>();


Regex in setvar variables (issues 2927)

Regex in setvar variables
https://github.com/SpiderLabs/ModSecurity/issues/2927

Unclean PR, to be replaced by another one


No support for Laravel >=9.x: Is the package still maintained?

Been using this package for a long time, until I realized all my projects are suddenly breaking.
The package can no longer be used from Laravel >= 9.x which uses league/flysystem v3
league/flysystem has since moved to v3, but this CloudinaryAdapter still uses interfaces and traits from v1.
There are several other issues faced by other devs coming down to same problem, e.g.

#112
#83
#114

I am willing to make PRs to update and generally improve the package, but need to know if we still got some eyes here?

Hey @newtonjob, I'm new to the project and have been tasked with bringing this up to date and fixing some bugs and adding new features. I apologize in advance if things look unmaintained as I ramp up and get familiar with the codebase!

Appreciate your response @joshmanders ❤

yes, it would be great to bring this package live again
and with Laravel 10.x too
because we are switching to Cloudinary very soon
and I need to use this package for our project 😌

we should be cutting a compatibility release for v9 hopefully early this week and a v10+ release soon after!

yes, it would be great to bring this package live again and with Laravel 10.x too
because we are switching to Cloudinary very soon and I need to use this package for our project 😌

I've cut a 1.0.6 release that makes it work with Laravel v9 again, this week I will be working on bringing it back to working state with bug fixes and tests to ensure no regressions including compatibility with Laravel 10 and 11.

yes, it would be great to bring this package live again and with Laravel 10.x too
because we are switching to Cloudinary very soon and I need to use this package for our project 😌

I've cut a 1.0.6 release that makes it work with Laravel v9 again, this week I will be working on bringing it back to working state with bug fixes and tests to ensure no regressions including compatibility with Laravel 10 and 11.

excuse me, but it is still not working with Laravel 9.x 😌
I wanted to test upload feature with Statamic and 'cloudinary' disk
so, I've set up new Laravel project
Laravel v9.52.16
installed "cloudinary-labs/cloudinary-laravel": "1.0.6"
set up Statamic 4
and everything worked fine until create new asset container with 'cloudinary' disk
my colleague said that he was able to test this at the end of last year
but I have this error message now:

Trait "League\Flysystem\Adapter\Polyfill\NotSupportingVisibilityTrait" not found

as you can see from screenshot below Laravel version is 9.x

what version have you used for v1.0.6?

@DmitrySidorenkoShim can you run composer why league/flysystem and tell me the output?

here you go:
$composer why league/flysystem
laravel/framework      v9.52.16 requires league/flysystem (^3.8.0)
league/flysystem-local 3.28.0   requires league/flysystem (^3.0.0)
league/glide           2.3.0    requires league/flysystem (^2.0|^3.0)

@joshmanders
to be honest, it is not so important to have it working with Laravel 9.x right now
just wanted to check upload with flysystem Cloudinary adapter (and Statamic)
but crucial to have it working with Laravel 10.x as soon as possible
in the best case "yesterday" of course 😄
but next week would be really good too
do you think it is possible?

@DmitrySidorenkoShim, if it works for Laravel 9.x, it believe it will also work for 10.x and 11.x
Primary issue is that these Laravel versions now use league/flysystem v3, but the package still uses v1

@DmitrySidorenkoShim, if it works for Laravel 9.x, it believe it will also work for 10.x and 11.x
Primary issue is that these Laravel versions now use league/flysystem v3, but the package still uses v1

This is the issue, and I'm working on it @DmitrySidorenkoShim. See https://github.com/cloudinary-community/cloudinary-laravel/pull/123

hi @joshmanders
sorry for annoying you
but is there any good news? 😌

hi @joshmanders
sorry for annoying you but is there any good news? 😌

Not annoying at all. Working through some stuff now and will hopefully have a release this weekend, Monday at the latest.

hi @joshmanders
I am just wondering if it isn’t ready yet? 😄

Huge thanks for your work on this @joshmanders!


Migrate 'components/profile_popover' module and associated tests to T…

Summary
Migrate 'components/profile_popover' module and associated tests to TypeScript
Ticket Link
https://mattermost.atlassian.net/browse/MM-20595
Related Pull Requests
None
Screenshots

Release Note
- Renamed the files to their associated TypeScript extensions
- Updated components using it to the correct imports
- Added utility function for removing keys from the object.

Hello @AshishDhama,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.


Create documentation for "make code" feature

Also worth adding to FAQ (from @galenbwill )

Update made in https://github.com/Vector35/debugger/commit/2f600129d9c6a4e26188cf0259c8cfd5083c0ebc
Not sure we want it in the FAQ, we don't put as many technical things in there.


Precaching 985

R: @jeffposnick @addyosmani @surma
Fixes #985 Add docs for cleanup, fix cleanup tests (They actually broke from DBWrapper changes).
Fixes #986 with install result typedef.
Fixes #987 with precache entry typedef.

LGTM


Fix qgis.rb for removed Cask

PR #13573 removed Cask matplotlib, as Python formula is available.

Thank you for the contribution. It was merged directly as 4c640a5dac9bae7faae08410292485b8e3598a0f to keep commit history cleaner. Your contribution is still credited to you.


Recaptcha on click in ie 11 errors with Object doesn't support property or method 'Symbol'

SCRIPT438: Object doesn't support property or method 'Symbol'
recaptcha__en.js (4,189)

Had a svg path id = symbol which was conflicting with the code


Is there a keyboard shortcut to focus Filter in Database Navigator?

Is your feature request related to a problem? Please describe.
Folks using keyboard heavily will prefer to focus this filter to type in the table name and other things. While it is currently smooth after focusing this filter but we really need to use mouse to get the cursor in the filter textbox. I checked if there are any keyboard shortcuts available but couldn't find any.
Describe the solution you'd like
A keyboard shortcut taking the user right into the above filter so that they can start typing. If there is an existing text the keyboard shortcut must select all the text automatically for convenience(for adding to the text with end/home key and all).
Describe alternatives you've considered
Using mouse
Additional context
Nothing

@binodkalathil probably, you could use Ctrl+Alt+Shift+T shortcut. Does it resolve your issue?

@uslss That focuses data editor filter not the Database Navigator Filter. However I was able to get what I need from here Ctrl + Shift + D:

One problem with this is that it allows us to select Database Objects in the current connection only. This window seem to have all the required keyboard navigations working 👍
However, adding a keyboard shortcut to Database Navigator Filter still seems like a good thing to me as that will be showing results from all the connections and that will be the default place users will be looking at when they have that sidebar activated.

If I understand you correctly, an object filter shortcut also could be assigned In Preferences. You could bind needed shortcut and change when condition to DB navigator context in preference

@uslss That doesn't seem to work 🤔
What I am saying is that we need to focus on this text box with a keyboard shortcut

@binodkalathil Did you figure it out? I was looking for the same.

@uslss as @binodkalathil mentioned, the shortcut in question is for the database filter, which would be really useful to have.

I really hope there is a shortcut feature that automatically focuses on the filter textarea, similar to other database clients that can easily search for tables/views with a shortcut or by typing in the navigator.


Support pagination for action alias.

Fixes https://github.com/StackStorm/hubot-stackstorm/issues/158
Setup limit=-1 to retrieve all the action alias records.

Please bump the required st2client version to 1.1.2 in package.json before merging this.


Getting Vim: Warning: Output is not to a terminal while doing kubectl edit secrets ...

I have an alias kubectl=kubecolor and when executed kubectl edit secret THE_SECRET and got the following error:
Vim: Warning: Output is not to a terminal

and my terminal just frozen.
I had to Ctrl+C and then exit the terminal in order to get my cursor in my terminal.

@laurentiuspurba I couldn't reproduce it in my environment.
I use the latest (v0.0.2) kubecolor. What's your version (It's better to write vim too)?

Currently this problem is fixed so can you update kubecolor (go get -u github.com/dty1er/kubecolor/cmd/kubecolor) then try again?
If it still doesn't work, please let us know shell and vim information (bash/zsh/fish, version)

Let me close this issue but feel free to open again if you have any issues!


Support run in linux server

Thanks for creating the awesome project, metricat is great.
I would like to deploy metricat on linux server, so we can see metric on a web broswer. So I wondering is there a way to deploy metricat as a server?

Sorry for a VERY late reply. Probably irrelevant at that point. But I think you are looking for Prometheus+Grafana 👍


App v1.4.1 does not run on SOAR <IP_ADDRESS>

Name of the app
DomainTools Iris Investigate
Describe the bug
Upon installation any action ran will trigger the following error
Failed to import the python connector module. For more details, ask an administrator to download the logs from Administration->System Health->Debugging. You may need to set the log level for the Action Daemon to DEBUG.

SPAWN logs show import issue:
{
    "time": "2023-08-01T13:36:00.549331",
    "component": "SPAWN3",
    "file": "/srv/phantom/alchemy/connectors/spawn3/spawn3.cpp",
    "level": "ERROR",
    "line": 738,
    "message": "Error occurred PyImport_Import Traceback (most recent call last):\n  File \"/opt/phantom/apps/domaintoolsirisinvestigate_f18b7ef9-0cbd-4dbb-b8ed-ce62e17f0603/domaintools_iris_connector.py\", line 16, in <module>\n    import phantom.app as phantom\n  File \"/opt/phantom/lib3/phantom/app.py\", line 27, in <module>\n    from phantom.base_connector import *\n  File \"/opt/phantom/lib3/phantom/base_connector.py\", line 76, in <module>\n    from phantom_common.encryption.encryption_manager_factory import platform_encryption_backend\n  File \"/opt/phantom/pycommon3/phantom_common/encryption/encryption_manager_factory.py\", line 50, in <module>\n    platform_encryption_backend = get_encryption_backend(secret_storage_type=SecretStorageType.PLATFORM)\n  File \"/opt/phantom/pycommon3/phantom_common/encryption/encryption_manager_factory.py\", line 31, in get_encryption_backend\n    from phantom_common.encryption.cloud import AWSSecretsManagerEncryptionStore\n  File \"/opt/phantom/pycommon3/phantom_common/encryption/cloud.py\", line 14, in <module>\n    from phantom_common.cloud.aws.kms_client import KMSClient\n  File \"/opt/phantom/pycommon3/phantom_common/cloud/aws/kms_client.py\", line 5, in <module>\n    from phantom_common.cloud.aws.base_client import AWSClient, AWSError\n  File \"/opt/phantom/pycommon3/phantom_common/cloud/aws/base_client.py\", line 6, in <module>\n    import boto3\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/boto3/__init__.py\", line 16, in <module>\n    from boto3.session import Session\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/boto3/session.py\", line 17, in <module>\n    import botocore.session\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/botocore/session.py\", line 30, in <module>\n    import botocore.credentials\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/botocore/credentials.py\", line 34, in <module>\n    from botocore.config import Config\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/botocore/config.py\", line 16, in <module>\n    from botocore.endpoint import DEFAULT_TIMEOUT, MAX_POOL_CONNECTIONS\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/botocore/endpoint.py\", line 22, in <module>\n    from botocore.awsrequest import create_request_object\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/botocore/awsrequest.py\", line 26, in <module>\n    import botocore.utils\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/botocore/utils.py\", line 33, in <module>\n    import botocore.httpsession\n  File \"/opt/phantom/usr/python39/lib/python3.9/site-packages/botocore/httpsession.py\", line 9, in <module>\n    from urllib3.util.ssl_ import (\nImportError: cannot import name 'DEFAULT_CIPHERS' from 'urllib3.util.ssl_' (/opt/phantom/apps/domaintoolsirisinvestigate_f18b7ef9-0cbd-4dbb-b8ed-ce62e17f0603/dependencies/urllib3/util/ssl_.py)\n",
    "pid": 38806,
    "product_version": "<IP_ADDRESS>",
    "tid": 38806
}

To Reproduce
Steps to reproduce the behavior:

Install the app v1.4.1 on Splunk SOAR Cloud v<IP_ADDRESS>
Create a new asset
Run the Test Connectivity Button

Expected behavior
N/A
Screenshots
N/A
Splunk SOAR Version (please complete the following information):

OVA, Unprivileged Install, or RPM? Splunk Cloud
If not OVA, OS Version? N/A
Hypervisor (if applicable)? N/A
App Version? 1.4.1

Additional context
None.

Hi @markcooke226. Thanks for reporting this. v1.5 is out now that should address this issue


Folding method inside its definition fails if the opening brace is on the next line

Description
In Rust, it's common to place the opening curly brace of a method on the next line if the method definition contains a where clause, like this:
    fn descend_to_start<S>(&mut self, mut subtree: Tree<T>, db: &S) -> Result<(), S::ReadError>
    where
        S: NodeStore<T>,
    {
      // implementation here...
    }

This seems to break folding from inside the method definition. If the curly brace is on the same line, toggling editor:fold-current-row will fold the method's body, but if in this case we fold the parent scope.
Steps to Reproduce

For a simpler example, paste the following into a JavaScript file:

function foo()
{

}

Place the cursor inside foo and toggle editor:fold-current-row.

Expected behavior: The method's body gets folded.
Actual behavior: Nothing happens, or the parent scope is folded if the method is inside one.
Reproduces how often: 100%
Versions
Atom    : 1.29.0-dev-b81e33c37
Electron: 2.0.1
Chrome  : 61.0.3163.100
Node    : 8.9.3
/cc @maxbrunsfeld

Just to clarify, this issue isn't specific to Tree-sitter, right? Atom has never had a notion of non-local folds (where, for example, running a command with the cursor at line 1 creates a fold at line 2). When the cursor is on a given line, fold commands have always created or destroyed folds intersecting that line. Similarly, clicking a fold buttons in the gutter has always toggled folds at that line.

It would be cool to generalize Atom's fold system to allow for this kind of thing, but it's not totally clear what the UI should be. I assume we would only want to show one fold button in the gutter (on the line with the curly brace, as opposed to the line with the method name).
JetBrains IDEs seem to have the same behavior as Atom in this regard:

The only way to fold the new method here is to click in the gutter on the line with the curly brace, or run the Fold: Collapse command with the cursor on that line.

Yeah you're right that it isn't specific to tree sitter. But it seems like with Tree Sitter's capabilities, you could potentially show the fold indicator at the start of the method definition. I could see how that might be confusing though, because maybe you want to fold the parameter list or something. I just reported this since I ran across the behavior while editing and found it unintuitive, and it seems like we might have the tools to improve it with the syntax tree at hand.


Node.js Full Course for Beginners

What does this PR do?
Add resource
For resources
Description
Node.js Full Course for Beginners
Why is this valuable (or not)?
This course is a 7 hours all-in-one tutorial for beginners
How do we know it's really free?
It's on Youtube
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[ ] Read our contributing guidelines.
[ ] Search for duplicates.
[ ] Include author(s) and platform where appropriate.
[ ] Put lists in alphabetical order, correct spacing.
[ ] Add needed indications (PDF, access notes, under construction).
[ ] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Thanks! Is there a chance to add in the label hacktoberfest-accepted?


CosmWasm concurrency

Related to #840.
This is a meta-issue to track / document cosmwasm multi-thread behaviour, and required functionality, in relation to Cosmos SDK provisions in that regard.
According to @ethanfrey's comments:
There is no unlimited concurrency, but we should expect 2 parallel threads potentially hitting the queue.
- The DeliverTx, calling all the mutable methods.
- The Query, which just can execute queries.
We may have one query and one execute running in parallel, with different data stores.
So, as part of this:

Validate / confirm the scenario above (only two threads at a maximum. One for execution, the other for querying).
Validate / confirm that Cosmos SDK provides atomic storage access (reads / writes).
Take a detailed look at the cosmwasm code, to see if any races can be spotted. Add locking if required. Similarly to #840, to be expanded in #843.

If there are only two threads (one for execute, and one for query), the query thread is strictly read-only (at the storage level), and storage access is atomic, the only missing issue would be multiple (non-atomic, i.e. unprotected) related writes in the execute thread.
That is, the query thread sometimes returning some inconsistent entry from the store, because the execute thread was just in the middle of writing some complex state, i.e. one composed of multiple writes.
This last point in minor, as it will only produce (temporary) inconsistent entries in query results.
Listed here for completeness, and because there can be cases / contracts in which we want to make sure this does not happen.

That is, the query thread sometimes returning some inconsistent entry from the store, because the execute thread was just in the middle of writing some complex state, i.e. one composed of multiple writes.

The query thread always read the state from the end of the last committed block - this is an independent underlying store than the one used in delivertx

Validate / confirm that Cosmos SDK provides atomic storage access (reads / writes).

The cosmos sdk provides local "transactional" caches for writing two and backed by different snapshots for query and execution

Thanks for this.
That means that if we solve all the potential races in the cosmwasm code, we're basically done with this.

Closing in favour of previous comments, #840, and the latest #843, #846, and #847.

Nice one


primary collection wrapper for use with dynamic projections

Use Map and List internally with a unified wrapper API.

Too specific, given that this feature requires further consideration and investigation.


MWPW-132671: Append region (country) display name to document title

Resolves: MWPW-132671
Description
Appends the geo's region display name (RDN) to document.title. This ensures that titles across Adobe sites are unique, which is critical for SEO. This feature already existed in Dexter, so this PR is a fix for a migration regression. See issue for details.
The RDN is the name of the geo's region/country in the geo's language. Examples:

be_en => Belgium
be_fr => Belgique

Code checks if RDN is already there before attempting to append again. The locales SSOT is modified to add explicit overrides for RFC5646-incompatible geos (e.g. africa, mena_en) using the rdn key, and fix ambiguous ietf values that are incorrect mappings of the geo to RFC5646 tag using tag values. I did not "fix" the offending ietf values because I am unsure what these values are used for.
Each Cloud (e.g. DC, CC, BACOM) MUST do one of two things:

copy changes to locales into their own repos, or
modified their utils.js to load locales from Milo: https://github.com/adobecom/milo/pull/880

Test URLs:

Before: https://main--dc--adobecom.hlx.live/ar/acrobat/online/word-to-pdf
After: https://main--dc--adobecom.hlx.live/ar/acrobat/online/word-to-pdf?milolibs=seo-title-region--milo--hparra

There should be no PRs in draft: https://github.com/adobecom/milo/wiki/Submitting-PRs#drafts-prs

@auniverseaway Added config feature gate and full test coverage. All checks pass except enforce PR labels. Prefer to land https://github.com/adobecom/milo/pull/880 first and then refactor this to use those changes.

The existing IETFs in Milo are wrong and should be updated to your tag properties. This should make this new "tag" property no longer needed. We will have to check the other consumers, but my guess would be they are more accurate since it's production content.
I would opt for a human readable property for the name instead of rdn. My first thought is that name seems to make the most sense since we need this for both language and region (aka locale). Another option would be to make it authorable in metadata.
We don't want milo opted into this in its config. This whole feature as a default was previously shot down at a VP level several years ago. You have the right idea, though: config > metadata.xlsx > page metadata is usually how we like to handle overriding w/ granularity. I personally don't see any site implementing this site-wide, but I'm also not opposed to having it supported in config.
Given that the majority of content will not use this feature, it shouldn't take so much precedence in the call stack... At a high level: it shouldn't happen before LCP and the code shouldn't live in utils. I would gate this into a separate file similar to our other opt-in features (georouting, rich results, etc.). My general rule is, "is this needed to get us to LCP?" if the answer is no, it should fire after LCP. Things like decorating links run the risk of being interacted with so we leave those CPU cycles in front of LCP.

The existing IETFs in Milo are wrong and should be updated to your tag properties. This should make this new "tag" property no longer needed. We will have to check the other consumers, but my guess would be they are more accurate since it's production content.
I would opt for a human readable property for the name instead of rdn. My first thought is that name seems to make the most sense since we need this for both language and region (aka locale). Another option would be to make it authorable in metadata.

See Changes to IETF Values in Milo. I'm not going to change the IETF values. There is a lot of pushback here even when the IETF value is wrong, e.g. https://github.com/adobecom/bacom/pull/123, https://github.com/adobecom/cc/pull/72, https://github.com/adobecom/dc/pull/270. Instead, I prefer to use the locales object I updated in https://github.com/adobecom/milo/pull/915.

We don't want milo opted into this in its config. This whole feature as a default was previously shot down at a VP level several years ago. You have the right idea, though: config > metadata.xlsx > page metadata is usually how we like to handle overriding w/ granularity. I personally don't see any site implementing this site-wide, but I'm also not opposed to having it supported in config.

Not sure this is relevant. Each cloud defines it's own config, so the fact that Milo opts-in only affects the actual Milo website, and not the libs' consumers. I will have to make the locales change for each cloud. That's why https://github.com/adobecom/milo/pull/880 was proposed.

Given that the majority of content will not use this feature, it shouldn't take so much precedence in the call stack... At a high level: it shouldn't happen before LCP and the code shouldn't live in utils. I would gate this into a separate file similar to our other opt-in features (georouting, rich results, etc.). My general rule is, "is this needed to get us to LCP?" if the answer is no, it should fire after LCP. Things like decorating links run the risk of being interacted with so we leave those CPU cycles in front of LCP.

OK. We're changing the <title>, so the concern here what that this will fire too late for googlebot to pick up change.

Use-case solved with #955 ✌


Link to External Icons

Hello guys, I'm interested in contributing a tip. The package of the react-color library that is in the NPM is well outdated and does not count the mined version, could we add the minified version? Example "react-color.min.js"


plugin: implement collapsible code for protosaurus language using metastring

This PR implements the collapsible code for protosaurus language, utilizing the metastring. Key features:

Code title (with title="...")
Collapsible code with (collapsible)

Link to page: https://imballinst.github.io/protosaurus/pr-33/docs/test

How it works

We parse the metastring
If there is only title, then we add the title element before the code
If there is only collapsible, throw an error (included in test)
If there are both, then the title is used as the collapsible title

Next steps

Apply it for non-protosaurus language as well (currently we need to use <details> tag
Implement line highlighting for protosaurus language using metastring
Do all the minor TODOs.
Perhaps it's a good time to refactor packages/rehype-plugin-codeblock/src/index.ts.

Signed-off-by: Try Ajitiono<EMAIL_ADDRESS>

Thanks @dio for the review!


Flash messages in Jade

Related to closed ticket 1054, is there a way to enable flash messages in jade? An example would be great!

Since you can run JS code in Jade, just like you can do in EJS, you can use the same approach as in EJS. See http://jade-lang.com/reference/code/.