Carriage return \r being appended to the output

This is autogenerated. Please review and update as needed.
Describe the bug
Getting the following error when trying to query the IP address of a NIC for which I had already pulled the ID and sent as a parameter in the show command.
Operation failed with status: 'Bad Request'. Details: 400 Client Error: Bad Request for url: https://management.azure.com/subscriptions/......./resourceGroups/......./providers/Microsoft.Network/networkInterfaces/.........?api-version=2020-04-01
Command Name
az resource show
Errors:
az: error: unrecognized arguments: \ \ \

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az resource show --name {} {} --resource-group {} {} --resource-type {} {} --query {} -o {}

Expected Behavior
Environment Summary
Windows-10-10.0.17763-SP0
Python 3.6.6
Installer:

azure-cli 2.6.0

Extensions:
interactive 0.4.4

Additional Context

hi @zhoxing-ms could you have a look? thanks

add to S171

Hello, just following up on this request, do you have any updates?

az: error: unrecognized arguments: \ \ \

This looks like a problem with the incorrect input parameters. Could you please email me the specific parameters of the command and the printed information after adding --debug to the command?
My email address is Zhou.Xing@microsoft, thanks~

@zhoxing-ms I've sent the requested information please let me know if you need anything else.

@lchave Hi, through the debug log, I found that this problem was caused by the \r at the end of the passed --id parameter. It will cause the URL of the service request to be https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/{provider}/{resource-type}/{resource-name}%0D
The %0D at the end will cause the URL to be illegal:

Bad Request - Invalid URL
HTTP Error 400. The request URL is invalid.

May I ask why there is a \r at the end of your resource id? Could you remove this special character?

@zhoxing-ms Hi! thanks for the input, we have not added the \r at the end. As you can see in the email I just sent we are only passing a variable defined in the step before it. If we echo that variable there is not a \r at the end of it.

@lchave This problem seems to be related to Windows style newline characters, there is a similar problems here:
https://stackoverflow.com/questions/11616835/r-command-not-found-bashrc-bash-profile
Bash expects that end-of-line in a script is always and only a newline \n character, Unix-style, not a carriage return-newline combination \r\n like you normally see on Windows.
Bash thinks the \r character is just an ordinary character at the end of the string.
Could you try to execute the command dos2unix for the scripts executed in Windows?

@lchave Could you please describe the environment in detail? By the way, please email me the script you used, thank you~

I think I've run into the same issue. I followed the following example:
https://docs.microsoft.com/en-us/azure/event-grid/custom-event-to-queue-storage#subscribe-to-a-custom-topic
so I had a script like:
storageid=$(az storage account show --name $storageAccountName --resource-group $storageResourceGroup --query id --output tsv | tr -d '\r')
queueid="$storageid/queueservices/default/queues/$queueName"

az eventgrid event-subscription create --source-resource-id $storageid --name $eventSubscriptionName --endpoint-type storagequeue --endpoint $queueid --included-event-types Microsoft.Storage.BlobCreated

what resulted in Operation failed with status: 'Bad Request'. Details: 400 Client Error: Bad Request for url:  because of %0D character in the middle of URL. I have workaround this by adding | tr -d '\r' here:
storageid=$(az storage account show --name $storageAccountName --resource-group $storageResourceGroup --query id --output tsv | tr -d '\r')

@arekpalinski May I ask your specific development environment? Is the WSL, Linux, Windows or others? And what is the type of this script?

Yes, WSL. It's a bash script.

@arekpalinski Hi, I have reproduced this problem in the WSL environment and identified the root cause:
The newline character in WSL is LF and the newline character in windows is CRLF. Therefore, when a script written under Windows is used in WSL, only \n in the newline character \r\n of CRLF is recognized as the newline character of LF, while \r is recognized as plain text.
For example:

Write a bash script in Windows, which is in CRLF format:
The script content:

group_name=$(az group show -n zhoxing-test --query name)
echo $group_name
az group create -l westus --debug -n $group_name

Execute the script in the WSL environment

root@DESKTOP-S8GCCTE:/mnt/c/Users/zhoxing.FAREAST/Desktop# file test.sh
test.sh: ASCII text, with CRLF line terminators

root@DESKTOP-S8GCCTE:/mnt/c/Users/zhoxing.FAREAST/Desktop# bash test.sh
"zhoxing-test"
Command arguments: ['group', 'create', '-l', 'westus', '--debug', '-n', '"zhoxing-test"\r\r']

At this point, the value of group_name is added with \r due to incompatibility between WSL and windows newline character.

Convert the file format from CRLF to LF and then execute the script

root@DESKTOP-S8GCCTE:/mnt/c/Users/zhoxing.FAREAST/Desktop# dos2unix test.sh
dos2unix: converting file test.sh to Unix format...

root@DESKTOP-S8GCCTE:/mnt/c/Users/zhoxing.FAREAST/Desktop# file test.sh
test.sh: ASCII text

root@DESKTOP-S8GCCTE:/mnt/c/Users/zhoxing.FAREAST/Desktop# bash test.sh
"zhoxing-test"
Command arguments: ['group', 'create', '-l', 'westus', '--debug', '-n', '"zhoxing-test"']

Problem solving after the file format becomes LF.
For more information, please refer to: click

Because there is no reply to this question for a long time, I will close it temporarily. If you have any questions, please feel free to let us know.

There are 2 ways to trigger this issue on WSL.
Calling az installed on Windows
If you are calling az installed on Windows system instead of the az installed on WSL Linux, you will hit this issue.
To identify which az you are calling, run
# az installed on Windows
$ which az
/mnt/c/Program Files (x86)/Microsoft SDKs/Azure/CLI2/wbin/az

# az installed on WSL Linux
$ which az
/usr/bin/az

Call az installed on Windows, save the result and let python3 help us display its raw value:
$ result=$(az account show --query id --output tsv)
$ python3 -c "import sys; print(sys.argv)" "$result"
['-c', '0b1f6471-1bf0-4dda-aec3-cb9272f09590\r']

Solution
Always stay in WSL Linux. Make sure az is installed following Install the Azure CLI on Linux and /mnt/c/Program Files (x86)/Microsoft SDKs/Azure/CLI2/wbin/az is not called.
Now it works correctly:
$ result=$(az account show --query id --output tsv)
$ python3 -c "import sys; print(sys.argv)" "$result"
['-c', '6b085460-5f21-477e-ba44-1035046e9101']

Executing .sh script with CRLF
As @zhoxing-ms stated in https://github.com/Azure/azure-cli/issues/13573#issuecomment-650686531, say we have test.sh with CRLF as End of Line Sequence:
result="somevalue"
python3 -c "import sys; print(sys.argv)" "$result"

When executing the script in WSL:
$ . test.sh
['-c', 'somevalue\r\r']

Solution
To fix it, you may open the script with VS Code:
code test.sh

Select End of Line Sequence and change it to LF:

Now it works correctly:
$ . test.sh
['-c', 'somevalue']

I have created https://github.com/microsoft/WSL/issues/7248 for WSL to improve its behavior.

I was also having this same issue following the samples on https://docs.microsoft.com/en-us/azure/event-grid/custom-event-to-eventhub#subscribe-to-a-custom-topic. I was able to resolve it by setting the internal field separator on the top of my bash script: IFS=$'\r\n' Hope this helps.

@treyham91, the IFS=$'\r\n' solution only works if the result (like $hubid and $topicid) is not quoted.
$ IFS=$'\r\n'
$ result=$(powershell.exe "Write-Output test")
$ python3 -c "import sys; print(sys.argv)" $result
['-c', 'test']

If an argument is quoted, Bash doesn't strip the trailing \r and still passes \r as part of the argument.
$ python3 -c "import sys; print(sys.argv)" "$result"
['-c', 'test\r']
            ^^

I would strongly recommend installing the Ubuntu distribution of Azure CLI in WSL to prevent further frustration.
For those who are interested in what $'string' is:

https://www.gnu.org/software/bash/manual/html_node/ANSI_002dC-Quoting.html
https://unix.stackexchange.com/questions/48106/what-does-it-mean-to-have-a-dollarsign-prefixed-string-in-a-script

The /mnt/c/Program Files (x86)/Microsoft SDKs/Azure/CLI2/wbin/az entry script was added by https://github.com/Azure/azure-cli/pull/13197. Apparently, it now also affects WSL and causes this \r being appended to the output issue.

The /mnt/c/Program Files (x86)/Microsoft SDKs/Azure/CLI2/wbin/az (C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin\az) entry script was added by https://github.com/Azure/azure-cli/pull/13197. As a side effect, it now also affects WSL and causes this issue.
Actually, that entry script never worked well even in Git Bash:
$ az1 version --query '"azure-cli"' --output tsv | cat -vE
2.48.1^M$

Options we have for C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin\az:

Keep it, but it doesn't really work well as we will face this \r being appended to the output issue.
Drop it, but Git Bash or (WSL without apt-installed Azure CLI) can no longer call Azure CLI installed on Windows.

\r still a problem with Azure CLI v 2.49.0 on WSL Umbuntu installed using curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash from instructions on https://learn.microsoft.com/en-us/cli/azure/install-azure-cli-linux?pivots=apt.
which az
/usr/bin/az
RESOURCE_GROUP=$(az group list --query "[0].name" -o tsv)
set
RESOURCE_GROUP=$'MyResourceGroup\r'

@gcrockenberg, this is because Bash caches az's location to the Windows one before you install the DEB package. You may confirm with below commands. I am also attaching the expected result:
$ command -v az
/usr/bin/az

$ az --version
azure-cli                         2.49.0

core                              2.49.0
telemetry                          1.0.8

Dependencies:
msal                              1.20.0
azure-mgmt-resource               22.0.0

Python location '/opt/az/bin/python3'
Extensions directory '/home/user2/.azure/cliextensions'

Python (Linux) 3.10.10 (main, May 19 2023, 08:20:31) [GCC 11.3.0]

Legal docs and information: aka.ms/AzureCliLegal

The result of which az and command -v az will differ because which always returns the latest status on disk, but command -v returns the cache of the shell.
The solution is to restart your shell.


WIP: Make search_services respond with JSON API style

This pull request is for discussion, please do not merge
Make the search_services method on the search API client return responses that look like JSON API responses even if they are not coming back from the search API like that.
JSON API style response would look like:
{
  "links": {
    "next": <next link>
  },
  "meta": {
    "query": { <query args sent to the search API> },
    "total": <total number of results>,
    "took": <milliseconds took>
  },
  "services": [
    <matching services>
  ]
}

The current response fromat from the search API follows. This change will
convert this to the JSON API style.
{
  "links": {
    "next": <next link>
  },
  "search": {
    "query": { <query args sent to the search API> },
    "services": [
      <matching services>
    ],
    "total": <total number of results>,
    "took": <milliseconds took>
  }
}

Closing as discussion as been had and this will be done in [#94576802].


d3d9: Send necessary messages for full-screen windows during WM_ACTIVATEAPP

Some fullscreen games such as `Heroes of Might and Magic V' have a black screen when restored from being minimized (out of focus). The patch has the same behavior that wined3d does here. With this patch the game restores properly even with DXVK, not just wined3d.

@Joshua-Ashton is there a chance to merge this PR before the next release?

@doitsujin is there a problem with these changes that they weren't merged yet?

Our QA found that this commit breaks alt-tabbing out of A Hat In Time. Quote from QA:
Found a windowing regression with a hat in time. The game now minimizes if you alt+tab in fullscreen mode (it used to stay open and other windows would go on top when they gained focus) but when you alt+tab again to regain focus, the screen in blown up and only a small portion is visible. Using alt+enter twice will restore the screen to look normal. Able to reproduce on ubuntu+gnome, and on kde as well.
Reverting the commit restores the old behavior.

Our QA found that this commit breaks alt-tabbing out of A Hat In Time. Quote from QA:
Found a windowing regression with a hat in time. The game now minimizes if you alt+tab in fullscreen mode (it used to stay open and other windows would go on top when they gained focus) but when you alt+tab again to regain focus, the screen in blown up and only a small portion is visible. Using alt+enter twice will restore the screen to look normal. Able to reproduce on ubuntu+gnome, and on kde as well.
Reverting the commit restores the old behavior.

What happens if you remove the else {} block with ShowWindow(window, SW_MINIMIZE), does it solve the issue?
That's technically not needed for Heroes of Might and Magic V to work, either—I just took it from wined3d, assuming it's correct. But if it causes a regression it should be left out.

What happens if you remove the else {} block with ShowWindow(window, SW_MINIMIZE), does it solve the issue?
That's technically not needed for Heroes of Might and Magic V to work, either—I just took it from wined3d, assuming it's correct. But if it causes a regression it should be left out.

@aeikum IMHO it is good idea to report an issue, since you already reversed this commit in Valve's fork https://github.com/ValveSoftware/dxvk/commit/85c70ad5db0863ffbc4afee2ca57a6e6e92e8ef6

@aeikum IMHO it is good idea to report an issue, since you already reversed this commit in Valve's fork https://github.com/ValveSoftware/dxvk/commit/85c70ad5db0863ffbc4afee2ca57a6e6e92e8ef6

@doitsujin are you going to revert this commit as well?

@doitsujin are you going to revert this commit as well?

Again, what happens if you remove just the else {} block that minimizes the window, does it solve the problem? Instead of reverting the whole patch.

Again, what happens if you remove just the else {} block that minimizes the window, does it solve the problem? Instead of reverting the whole patch.

@aeikum Alt-tabbing in Hat in Time works fine for me on KDE. I've tried at multiple resolutions.
Alt-tabbing does make the game minimise when fullscreen now, but I don't see why that's an issue. That behaviour happens on Windows too with the game.

However, I think I understand why. Please try with latest master.

@Joshua-Ashton I did some testing, and here are the results.  For reference, the bug with the "send necessary messages" commit was that it would regain focus in a super zoomed in way (see screenshot, I'll refer to this as "zoom bug").  You are correct that minimizing on focus loss in fullscreen, non-native mode is the Windows behavior and that part was an improvement :)

Proton 5.13-5 with "send necessary messages" commit still has "zoom bug" - game update did not change behavior.
Proton 5.13-6 with "send necessary messages" commit does NOT have "zoom bug".  minimizes on focus loss and regains focus correctly
Proton 5.13-6 checked out to dxvk master tip (with "send necessary messages" commit and "[d3d9] Don't minimise in WM_ACTIVATEAP" commit) does NOT have "zoom bug".  also does NOT minimize on focus loss (just like all past behavior from 5.13-4 and earlier)
Proton 5.13-6 checked out to dxvk master tip with "[d3d9] Don't minimise in WM_ACTIVATEAP" commit reverted (but with "send necessary messages" commit) does NOT have "zoom bug" and does minimize correctly on focus loss.
Proton 5.13-6 with new fullscreen commits from 5.13-6 reverted and "send necessary messages commit" applied - has "zoom bug" -- proves those commits fixed "zoom bug" in Proton 5.13-6

In summary, the problem with the original "send necessary messages" commit with Proton 5.13-5 was inadvertently resolved with some fullscreen hack fixes for DOOM Eternal in 5.13-6 (specifically commit 16de1f8d19d9fe92a02e5d5f6bdf611e69e6999f and e839e7f6b632217e76215e4b9ad23a27f92afa0d).  My opinion would be to use the dxvk master without "[d3d9] Don't minimise in WM_ACTIVATEAP" during the next Proton release testing and confirm that the commit is not needed.  If you think that "[d3d9] Don't minimise in WM_ACTIVATEAP" is actually correct, then I believe it would not regress things further to keep both commits and just revert the revert of the "send necessary messages" commit in the Proton dxvk branch.


Issue getting edge_envislink to work

I followed your instructions and everything seemed to work great until it connected to the envislink and I received this error message from cli - log
LAN client handler handler on driver thread encountered error: [string "envisalink.lua"]:420: attempt to index a nil value (local 'event')
any idea what i may have done incorrectly ?

Did you install the driver from my channel here?
Could you post the log so I can see some more context of the error?

Thanks Todd for getting back to me I will do that tonight and send it to
you.
I do remember  that there is a line in the log saying something to the
effect: Raw data - Login:
Not sure if it is looking for a login value like "user" ???
Regards
On Mon., Mar. 27, 2023, 12:19 p.m. Todd Austin, @.***>
wrote:

Did you install the driver from my channel here
https://bestow-regional.api.smartthings.com/invite/d429RZv8m9lo?
Could you post the log so I can see some more context of the error?
—
Reply to this email directly, view it on GitHub
https://github.com/toddaustin07/edge_envisalink/issues/5#issuecomment-1485435166,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6YCX3KEEHN2BFU7NF47KE3W6G4XZANCNFSM6AAAAAAWIHNJ6M
.
 Failing to login into the Envisalink
2023-03-28T13:18:44.544892498+00:00 TRACE Envisalink 2.1  Found DeviceLifecycleDispatcher handler in evlDriver
2023-03-28T13:18:44.548082165+00:00 DEBUG Envisalink 2.1  Info changed handler invoked
2023-03-28T13:18:44.554691498+00:00 DEBUG Envisalink 2.1  Time since last info_changed: 91.592000007629
2023-03-28T13:18:44.555532165+00:00 DEBUG Envisalink 2.1  Alarm Code <1113> validated
2023-03-28T13:18:44.556740165+00:00 INFO Envisalink 2.1  Using config prefs: <IP_ADDRESS>:4025, password: user, alarmcode: 1113
2023-03-28T13:18:44.559495165+00:00 DEBUG Envisalink 2.1  DSC Primary Panel device thread event handled
2023-03-28T13:18:47.131587166+00:00 INFO Envisalink 2.1  Attempting to reconnect to EnvisaLink
2023-03-28T13:18:47.167305166+00:00 INFO Envisalink 2.1  Re-connected to Envisalink
2023-03-28T13:18:47.184041166+00:00 DEBUG Envisalink 2.1  driver device thread event handled
2023-03-28T13:18:47.200582833+00:00 DEBUG Envisalink 2.1  RAW DATA RECEIVED: Login:
2023-03-28T13:18:47.201434833+00:00 DEBUG Envisalink 2.1  driver device thread event handled
2023-03-28T13:18:47.202642499+00:00 DEBUG Envisalink 2.1  driver device thread event handled
2023-03-28T13:18:47.216033166+00:00 WARN Envisalink 2.1  LAN client handler handler on driver thread encountered error: [string "envisalink.lua"]:429: attempt to index a nil value (local 'event')
2023-03-28T13:18:50.185434834+00:00 WARN Envisalink 2.1  Failed to log into Envisalink; connect retry in 15 seconds
2023-03-28T13:18:50.318858168+00:00 DEBUG Envisalink 2.1  driver device thread event handled
2023-03-28T13:18:50.325261168+00:00 DEBUG Envisalink 2.1  driver device thread event handled

Thanks for the logs.
The log is showing a very unexpected data stream received, namely the string "Login:".  This makes not sense to me how the Envisalink could be sending that.
Can you tell me a bit more about your set up?  What type of Envisalink do you have and what type of DSC panel do you have?  Is there anything unusual about your network configuration?  Are you trying to run the old Alarmserver python app in parallel to this?

Hi Todd,  I don't think I have anything setup strangely.
It is an envislink 4 firmware version 01.04.182A
I got this a few years ago... maybe it is too old?
The but system works fine. I get all my alerts etc.  I can login into to
the Web  interface using <IP_ADDRESS> so I have the right ip, login and
password.
DSC panel is a safewatch pro 3000en installed by ADT security. I added on
the Envisalink as per instructions at everything worked great.
I want to drop ADT so I am trying to get all the monitoring via smartthings
hub
Not even sure what a python alarmsever is so I don't think so
Hopefully something here will help
On Tue., Mar. 28, 2023, 5:59 p.m. Todd Austin, @.***>
wrote:

Thanks for the logs.
The log is showing a very unexpected data stream received, namely the
string "Login:". This makes no sense to me how the Envisalink could be
sending that.
Can you tell me a bit more about your set up? What type of Envisalink do
you have and what type of DSC panel do you have? Is there anything unusual
about your network configuration? Are you trying to run the old Alarmserver
python app in parallel to this?
—
Reply to this email directly, view it on GitHub
https://github.com/toddaustin07/edge_envisalink/issues/5#issuecomment-1487645306,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6YCX3K72VMCPHTMRH4T543W6NNK3ANCNFSM6AAAAAAWIHNJ6M
.
You are receiving this because you authored the thread.Message ID:
@.***>

Hi Todd any ideas why this isn't working ??

Hi-  I didn’t realize you didn’t have a DSC system, which is what this driver supports.  I understand you are successfully using the Envisalink with your system, but it may be using a different interface.  Could it be that it is using the Honeywell interface?  There is a Honeywell/Envisalink Edge driver that was done by another community member.  You might try that one or ask if it would be compatible with your Safewatch Pro system.
Here is the link to the community topic:
https://community.smartthings.com/t/st-edge-honeywell-ademco-vista-panel-envisalink/233766?u=taustin
If this isn’t the right answer then the only other thing I can think of is to make sure you are NOT logged in to your Envisalink via browser or cloud.  I know that the Envisalink itself only supported one network connection at a time.

Further to my comment above:  I've exchanged messages with the author of the Honeywell driver and he confirmed that your system is an ADT-branded version of the Honeywell system.  So my driver definitely won't work with that, but his should.  Use the link I provided above to get more information about his Honeywell, and you should be in business.
I'll close this issue.

thanks Todd for figuring this out for me!!


commit fa0f9a293e759e1d7179035674b7ccfe3b558e84 causes segfault

nsqd_connection_stop_timer() causes segfault, the diff below fixes the segfault
I was able to replicate the issue if a nsqd producer is inaccessible.
diff --git a/nsqd_connection.c b/nsqd_connection.c
index d47ed18..b1a04fd 100644
--- a/nsqd_connection.c
+++ b/nsqd_connection.c
@@ -159,7 +159,7 @@ void nsqd_connection_init_timer(struct NSQDConnection *conn,
 void nsqd_connection_stop_timer(struct NSQDConnection *conn)
 {
     if (conn && conn->reconnect_timer) {
-        ev_timer_stop(conn->loop, conn->reconnect_timer);
-        free(conn->reconnect_timer);
+        //ev_timer_stop(conn->loop, conn->reconnect_timer);
+        //free(conn->reconnect_timer);
     }
 }

@belltoy any ideas what is happening here? You can replicate it with test.c

@eschmidbauer It seems I forgot to initialize the reconnect_timer to NULL.

@belltoy are you sure that is the issue?
I think perhaps you are stopping the timer when it should not be. The following git diff seems to be working without segfault
diff --git a/nsq.h b/nsq.h
index 73fd252..01e4288 100644
--- a/nsq.h
+++ b/nsq.h
@@ -75,7 +75,7 @@ struct NSQDConnection *new_nsqd_connection(struct ev_loop *loop, const char *add
     void (*close_callback)(struct NSQDConnection *conn, void *arg),
     void (*msg_callback)(struct NSQDConnection *conn, struct NSQMessage *msg, void *arg),
     void *arg);
-void free_nsqd_connection(struct NSQDConnection *conn);
+void free_nsqd_connection(struct NSQDConnection *conn, int stoptimer);
 int nsqd_connection_connect(struct NSQDConnection *conn);
 void nsqd_connection_disconnect(struct NSQDConnection *conn);

diff --git a/nsqd_connection.c b/nsqd_connection.c
index d47ed18..dd07e5a 100644
--- a/nsqd_connection.c
+++ b/nsqd_connection.c
@@ -126,10 +126,12 @@ struct NSQDConnection *new_nsqd_connection(struct ev_loop *loop, const char *add
     return conn;
 }

-void free_nsqd_connection(struct NSQDConnection *conn)
+void free_nsqd_connection(struct NSQDConnection *conn, int stoptimer)
 {
     if (conn) {
-        nsqd_connection_stop_timer(conn);
+        if (stoptimer) {
+            nsqd_connection_stop_timer(conn);
+        }
         free(conn->address);
         free_buffer(conn->command_buf);
         free_buffered_socket(conn->bs);
diff --git a/reader.c b/reader.c
index 14141fc..7d2d5b3 100644
--- a/reader.c
+++ b/reader.c
@@ -65,7 +65,7 @@ static void nsq_reader_close_cb(struct NSQDConnection *conn, void *arg)
     if (rdr->lookupd == NULL) {
         ev_timer_again(conn->loop, conn->reconnect_timer);
     } else {
-        free_nsqd_connection(conn);
+        free_nsqd_connection(conn, 0);
     }
 }

@@ -81,7 +81,7 @@ static void nsq_reader_reconnect_cb(EV_P_ struct ev_timer *w, int revents)
         nsq_reader_connect_to_nsqd(rdr, conn->address, conn->port);
     }

-    free_nsqd_connection(conn);
+    free_nsqd_connection(conn, 1);
 }

 static void nsq_reader_lookupd_poll_cb(EV_P_ struct ev_timer *w, int revents)

@eschmidbauer Yes, that's what I mean. I stop the timer only if the timer is not NULL, which implicitly means that.

ah ha, so our patches did the same thing in the end, yours is more elegant though.
Thanks for the quick response on this issue


pip installing 'public' to a new virtual environment shows 0.0.0 version

Hi,
Installing 'public' to a new virtualenv installs it with version 0.0.0 which is very strange. We use several 3rd party python components and none of them had such a problem.
(I discovered this issue by installing 'request', then narrowed it down to 'public'. Also, the wrong version of 'public' seems to corrupt the versions of the other components: request, get, post, query-string.)
I need to keep track of the used 3rd party components and their versions so this is a major problem for me.
Please, please fix it!
I used pip versions 8.1.2 (and 9.0.1), 'virtualenv --version' shows 15.0.3.
Sorry I did not find a good way to format the log below, nor to attach as a file, but you can also read it at http://pastebin.com/k9kcvkAe .
Not sure about your environment, so I also tested this in Windows, where this issue also reproduces.
$ virtualenv /tmp/t1
New python executable in /tmp/t1/bin/python
Installing setuptools, pip...done.
$ . /tmp/t1/bin/activate
(t1)$ pip install public -v
Downloading/unpacking public
Using version 0.0.37 (newest of versions: 0.0.37, 0.0.36, 0.0.35, 0.0.34, 0.0.33, 0.0.32, 0.0.31, 0.0.30, 0.0.29, 0.0.28, 0.0.27, 0.0.26, 0.0.25, 0.0.24, 0.0.23, 0.0.22, 0.0.21, 0.0.20, 0.0.19, 0.0.17, 0.0.16, 0.0.15, 0.0.14, 0.0.13, 0.0.12, 0.0.11, 0.0.9, 0.0.8, 0.0.7, 0.0.6, 0.0.5, 0.0.4, 0.0.2, 0.0.1, 0.0.0)
Downloading public-0.0.37.tar.gz
Downloading from URL https://pypi.python.org/packages/55/7e/b4de5be2bfadaa342a9cc05ea7065be17f802aaf045960db082df95b95b1/public-0.0.37.tar.gz#md5=c4e04a381471a0929da6a0c7242b55a1 (from https://pypi.python.org/simple/public/)
Running setup.py (path:/tmp/t1/build/public/setup.py) egg_info for package public
running egg_info
creating pip-egg-info/public.egg-info
writing dependency_links to pip-egg-info/public.egg-info/dependency_links.txt
writing requirements to pip-egg-info/public.egg-info/requires.txt
writing pip-egg-info/public.egg-info/PKG-INFO
writing top-level names to pip-egg-info/public.egg-info/top_level.txt
writing manifest file 'pip-egg-info/public.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
reading manifest file 'pip-egg-info/public.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*.py[co]' found anywhere in distribution
warning: no previously-included files matching '*.command' found anywhere in distribution
warning: no previously-included files found matching '__pycache__/*'
warning: no previously-included files found matching 'LICENSE*'
warning: no previously-included files found matching 'README*'
warning: no previously-included files found matching 'description'
warning: no files found matching 'Examples/*'
warning: no files found matching 'Tests/*'
writing manifest file 'pip-egg-info/public.egg-info/SOURCES.txt'

Downloading/unpacking setupfiles (from public)
Using version 0.0.13 (newest of versions: 0.0.13, 0.0.12, 0.0.11, 0.0.10, 0.0.9, 0.0.8, 0.0.7, 0.0.6, 0.0.3, 0.0.1)
Downloading setupfiles-0.0.13.tar.gz
Downloading from URL https://pypi.python.org/packages/c5/98/bae71f2580810deddff7b61053a682e1993e6d92d7552ca92ff7ab4b978b/setupfiles-0.0.13.tar.gz#md5=df74f8b3937970948765a27fa4dc05b8 (from https://pypi.python.org/simple/setupfiles/)
Running setup.py (path:/tmp/t1/build/setupfiles/setup.py) egg_info for package setupfiles
running egg_info
creating pip-egg-info/setupfiles.egg-info
writing dependency_links to pip-egg-info/setupfiles.egg-info/dependency_links.txt
writing requirements to pip-egg-info/setupfiles.egg-info/requires.txt
writing pip-egg-info/setupfiles.egg-info/PKG-INFO
writing top-level names to pip-egg-info/setupfiles.egg-info/top_level.txt
writing manifest file 'pip-egg-info/setupfiles.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
reading manifest file 'pip-egg-info/setupfiles.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*.py[co]' found anywhere in distribution
warning: no previously-included files matching '*.command' found anywhere in distribution
warning: no previously-included files found matching '__pycache__/*'
warning: no previously-included files found matching 'LICENSE*'
warning: no previously-included files found matching 'README*'
warning: no previously-included files found matching 'description'
warning: no files found matching 'Examples/*'
warning: no files found matching 'Tests/*'
writing manifest file 'pip-egg-info/setupfiles.egg-info/SOURCES.txt'

Requirement already satisfied (use --upgrade to upgrade): setuptools in /tmp/t1/lib/python2.7/site-packages (from setupfiles->public)
Installing collected packages: public, setupfiles
Running setup.py install for public
running install
running build
running install_egg_info
running egg_info
creating public.egg-info
writing dependency_links to public.egg-info/dependency_links.txt
writing requirements to public.egg-info/requires.txt
writing public.egg-info/PKG-INFO
writing top-level names to public.egg-info/top_level.txt
writing manifest file 'public.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
reading manifest file 'public.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*.py[co]' found anywhere in distribution
warning: no previously-included files matching '*.command' found anywhere in distribution
warning: no previously-included files found matching '__pycache__/*'
warning: no previously-included files found matching 'LICENSE*'
warning: no previously-included files found matching 'README*'
warning: no previously-included files found matching 'description'
warning: no files found matching 'Examples/*'
warning: no files found matching 'Tests/*'
writing manifest file 'public.egg-info/SOURCES.txt'
Copying public.egg-info to /tmp/t1/lib/python2.7/site-packages/public-0.0.0-py2.7.egg-info
running install_scripts
writing list of installed files to '/tmp/pip-98nB8U-record/install-record.txt'

Running setup.py install for setupfiles
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/setupfiles
copying packages/setupfiles/init.py -> build/lib.linux-x86_64-2.7/setupfiles
copying packages/setupfiles/setup.py -> build/lib.linux-x86_64-2.7/setupfiles
copying packages/setupfiles/dist.py -> build/lib.linux-x86_64-2.7/setupfiles
creating build/lib.linux-x86_64-2.7/setupfiles/attrs
copying packages/setupfiles/attrs/entry_points.py -> build/lib.linux-x86_64-2.7/setupfiles/attrs
copying packages/setupfiles/attrs/scripts.py -> build/lib.linux-x86_64-2.7/setupfiles/attrs
copying packages/setupfiles/attrs/packages.py -> build/lib.linux-x86_64-2.7/setupfiles/attrs
copying packages/setupfiles/attrs/install_requires.py -> build/lib.linux-x86_64-2.7/setupfiles/attrs
copying packages/setupfiles/attrs/dependency_links.py -> build/lib.linux-x86_64-2.7/setupfiles/attrs
copying packages/setupfiles/attrs/init.py -> build/lib.linux-x86_64-2.7/setupfiles/attrs
copying packages/setupfiles/attrs/py_modules.py -> build/lib.linux-x86_64-2.7/setupfiles/attrs
running install_lib
creating /tmp/t1/lib/python2.7/site-packages/setupfiles
creating /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs
copying build/lib.linux-x86_64-2.7/setupfiles/attrs/entry_points.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs
copying build/lib.linux-x86_64-2.7/setupfiles/attrs/scripts.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs
copying build/lib.linux-x86_64-2.7/setupfiles/attrs/packages.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs
copying build/lib.linux-x86_64-2.7/setupfiles/attrs/install_requires.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs
copying build/lib.linux-x86_64-2.7/setupfiles/attrs/dependency_links.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs
copying build/lib.linux-x86_64-2.7/setupfiles/attrs/init.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs
copying build/lib.linux-x86_64-2.7/setupfiles/attrs/py_modules.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs
copying build/lib.linux-x86_64-2.7/setupfiles/init.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles
copying build/lib.linux-x86_64-2.7/setupfiles/setup.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles
copying build/lib.linux-x86_64-2.7/setupfiles/dist.py -> /tmp/t1/lib/python2.7/site-packages/setupfiles
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs/entry_points.py to entry_points.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs/scripts.py to scripts.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs/packages.py to packages.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs/install_requires.py to install_requires.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs/dependency_links.py to dependency_links.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs/init.py to init.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/attrs/py_modules.py to py_modules.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/init.py to init.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/setup.py to setup.pyc
byte-compiling /tmp/t1/lib/python2.7/site-packages/setupfiles/dist.py to dist.pyc
running install_egg_info
running egg_info
writing dependency_links to packages/setupfiles.egg-info/dependency_links.txt
writing requirements to packages/setupfiles.egg-info/requires.txt
writing packages/setupfiles.egg-info/PKG-INFO
writing top-level names to packages/setupfiles.egg-info/top_level.txt
warning: manifest_maker: standard file '-c' not found
reading manifest file 'packages/setupfiles.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*.py[co]' found anywhere in distribution
warning: no previously-included files matching '*.command' found anywhere in distribution
warning: no previously-included files found matching '__pycache__/*'
warning: no previously-included files found matching 'LICENSE*'
warning: no previously-included files found matching 'README*'
warning: no previously-included files found matching 'description'
warning: no files found matching 'Examples/*'
warning: no files found matching 'Tests/*'
writing manifest file 'packages/setupfiles.egg-info/SOURCES.txt'
Copying packages/setupfiles.egg-info to /tmp/t1/lib/python2.7/site-packages/setupfiles-0.0.13_-py2.7.egg-info
running install_scripts
writing list of installed files to '/tmp/pip-xoii7e-record/install-record.txt'

Successfully installed public setupfiles
Cleaning up...
Removing temporary dir /tmp/t1/build...
(t1)$ pip show public
Name: public
Version: 0.0.0
Location: /tmp/t1/lib/python2.7/site-packages
Requires: setupfiles
(t1)$

Also seeing this.

Seems to be something to do with pip building it as a wheel (note the 0-0.0.0 version):
setupfiles-0.0.14$ /usr/bin/python -u -c "import setuptools, tokenize;__file__='./setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmptXKQQvpip-wheel- --python-tag cp27
running bdist_wheel
running build
installing to build/bdist.linux-x86_64/wheel
running install
running install_egg_info
running egg_info
creating setupfiles_0.egg-info
writing requirements to setupfiles_0.egg-info/requires.txt
writing setupfiles_0.egg-info/PKG-INFO
writing top-level names to setupfiles_0.egg-info/top_level.txt
writing dependency_links to setupfiles_0.egg-info/dependency_links.txt
writing manifest file 'setupfiles_0.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found

reading manifest file 'setupfiles_0.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*.py[co]' found anywhere in distribution
warning: no previously-included files matching '*.command' found anywhere in distribution
warning: no previously-included files found matching '__pycache__/*'
warning: no previously-included files found matching 'LICENSE*'
warning: no previously-included files found matching 'README*'
warning: no previously-included files found matching 'description'
warning: no files found matching 'Examples/*'
warning: no files found matching 'Tests/*'
writing manifest file 'setupfiles_0.egg-info/SOURCES.txt'
Copying setupfiles_0.egg-info to build/bdist.linux-x86_64/wheel/setupfiles_0-0.0.0.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/setupfiles_0-0.0.0.dist-info/WHEEL

Building six as a wheel correctly assigns version:
six-1.10.0$ /usr/bin/python -u -c "import setuptools, tokenize;__file__='./setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmptXKQQvpip-wheel- --python-tag cp27
running bdist_wheel
running build
running build_py
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64/wheel
copying build/lib.linux-x86_64-2.7/six.py -> build/bdist.linux-x86_64/wheel
running install_egg_info
running egg_info
writing six.egg-info/PKG-INFO
writing top-level names to six.egg-info/top_level.txt
writing dependency_links to six.egg-info/dependency_links.txt
warning: manifest_maker: standard file '-c' not found

reading manifest file 'six.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'documentation/_build'
writing manifest file 'six.egg-info/SOURCES.txt'
Copying six.egg-info to build/bdist.linux-x86_64/wheel/six-1.10.0.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/six-1.10.0.dist-info/WHEEL

The root cause is a broken setupfiles-0.0.14 tarball.

Hi all.
Using Python 3.7 + PyCharm 2020.1 + Win 10. Happens to me with recent update, shows version  0.0.0... Tried to uninstall and reinstall it with a specific version (2020.7.1), same issue detected. Any help would be much appriciated.
Best Regards,
Egor

ikostan, по идее версия вообще не нужна в 99% случаев а для небольших пакетов в 100%. заморачивался раньше с bump version и регенерацией setup.py а недавно понял что это все вообще не нужно. ставится по умолчанию последняя которая на pypi т.е. 2020.1, а показывается как 0.0.0 тк setup.py везде одинаковый. такой вот lifehack. но не учел что будут в issues писать ))

ikostan, по идее версия вообще не нужна в 99% случаев а для небольших пакетов в 100%. заморачивался раньше с bump version и регенерацией setup.py а недавно понял что это все вообще не нужно. ставится по умолчанию последняя которая на pypi т.е. 2020.1, а показывается как 0.0.0 тк setup.py везде одинаковый. такой вот lifehack чтоб избавиться от головняка с setup.py (а заливаю при помощи setup_dist). но не учел что будут в issues писать, это единственный минус ))
пожалуй надо все таки версию добавлять чтоб не пугать никого ))

Well, you should mention that in "known issues" or something similar... I mean, I am scratching my head for about an hour trying to figure out what is wrong with my setup....


Add use of AWS Security Hub into monitoring procedures in Operations Guide

Describe the task

Investigate how to best leverage the AWS SecurityHub tool to monitor security findings, both for production monitoring and as part of development process
Document procedures in Operations Guide. Will likely need a new section on Monitoring and Event Management (missed previously)
Review existing findings as the first pass in executing the procedure and log tasks to address legitimate findings

Acceptance Criteria

[x] Operations Guide updated and reviewed - see https://apps.nrs.gov.bc.ca/int/confluence/display/FSAST1/Security+Monitoring
[x] Added SecurityHub review item to Security Review procedure - see https://apps.nrs.gov.bc.ca/int/confluence/display/FSAST1/Security+Review+Procedure
[ ] Review existing findings - done dev, tools, test.
[ ] Set up SecurityHub alert in each environment - done dev.
[x] Test SecurityHub alert - done in dev
[ ] Walk through monitoring procedure with team.
[x] Confirm new tasks in backlog for findings.
[x] Talk to Cloud Pathfinder team for valid findings at the org / ASEA level.

Additional context

AWS GuardDuty had no findings appear, not sure if that's a configuration issue or not. AWS Security Hub did have relevant findings. - prod has GuardDuty findings, so not an issue.
AWS Security Hub has a lot of 'noise' in the findings - e.g. items relating to ASEA, or perhaps false positives. Will need to figure out how to filter these out. - documented as part of our procedure.
Talk to Uniewski, Warren and Wardle, Max  to get their input/insights from the cloud pathfinder side. - added as AC item
Perhaps consider how to integrate in Check Point Infinity Portal, assuming it is out of pilot phase? - ignoring for now

Considerations:

can we add SecurityHub findings to our monitoring dashboard / alerts?
document under either InfoSec mgmt or Monitoring sections of Ops Guide
review existing findings.

Don't seem to be able to show SecurityHub findings in CloudWatch dashboard without a ton of additional work.

Additional learning: generating sample findings in GuardDuty causes them to have "[SAMPLE]" prefix in GuardDuty, but in SecurityHub this 'SAMPLE' prefix does not show up.
Also, GuardDuty finding suppressed in SecurityHub seems to be not suppressed in GuardDuty - we're just going to use SecurityHub as the hub, ignore GuardDuty.

See also #983 for adding the AWS Event Bridge alert to Terraform

Finished reviewing prod SecurityHub and addressing all findings in status 'new'.


JsonPath

What is this pull request?

I suspect it was an accident. I'm in favor of closing it.

Don't know what this PR is. Closing it!


Fix MEMBER_LIST enviroment variable not working

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


There is a typo in the blog post

Describe the bug
On this site, there is a typo
https://opensearch.org/blog/q1-survey-results/
The sentence should read: Users identified with four roles in OpenSearch and the extra four roles in the sentence needs to be remove
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
The typo needs to be fixed
Plugins
Please list all plugins currently enabled.
Screenshots
!

Host/Environment (please complete the following information):

OS: [e.g. iOS]
Version: [e.g. 22]
Browsers: [e.g. Chrome, Safari]
Browser Version: [e.g 93.0.4521.12]

Additional context
Add any other context about the problem here.

Solved with PR #1629


install a web3 Ruby gem and a web3 JavaScript package to the staging-forum source code (or install 3box) (½ day)

Completed by Aaron and Morgan by adding script tags to body_html

[ ] Add ethers.js to html_body
[ ] Create discourse backend plugin gem https://meet.google.com/linkredirect?authuser=2&dest=https%3A%2F%2Fkleinfreund.de%2Fhow-to-create-a-discourse-plugin%2F
[ ] Add ruby web3 gem to this plugin

https://github.com/discourse/all-the-plugins/tree/master/plugins

Ethereum ruby gem is lib/ethereum
Add it with
require_relative "lib/ethereum"```

Status update:
@dreamerxzz has started writing documentation on how to integrate with web3
I have identified a plugin (https://github.com/santiment/discourse-ethereum) that will allow us to test web3 interactions from a plugin
blocker: we are blocked from installing the plugin due to permissions configs in the DO server

Discourse has access to web3 and account[0]


Download Progress

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like that [x])
Use Preview tab to see how your issue will actually look like

WARNING
All invalid issues will be rejected!!

Before going further

If your problem is a bug with youtube-dl or a request for new site support please report it here

Make sure you are using the latest youtube-dl-gui version (Click the Settings icon and then About to view the current version)

Make sure you are using the latest youtube-dl version (Click the Settings icon and then Update to update to the latest youtube-dl version)

Make sure you searched the bugtracker for similar issues including closed ones

Make sure to read the FAQs file

[x] I think my problem is NOT with youtube-dl
[x] I've verified and i assure that I'm running youtube-dl-gui 0.4
[x] I assure that i am using the latest version of youtube-dl
[x] Searched bugtracker
[x] I've read the FAQs file

What is the purpose of your issue?

[x] Feature request (request for a new functionality)

Please remove any sections between (---) if they are not related to your issue
Feature request (request for a new functionality)
Please make sure that the requested feature is NOT already in the TODO list

[x] I've verified and i assure that my requested feature is NOT in the TODO list

What operating system do you use ?
Linux (antiX 21)
I am new to yt-dlp and  youtubedl-gui and I'm very impressed with both.
I am running antiX 21 Linux, and according to Synaptic Package Manager I am using the latest versions available of youtubedl-gui (3.0-1-mx21+1) and yt-dlp (2022.05.19).
I like using youtubedl-gui as the front-end, but obviously it doesn't offer the flexibility of yt-dlp.
In the FAQ it talks about the Options->Extra tab, but I don't have that on my youtubedl-gui, so I don't know how I should be accessing that.
Anyway, the feature I would like added is for the Progress dialogue to show more information about the download, specifically I would like to know the technical details of the file being downloaded (at a minimum the audio quality for audio files, the video resolution for video files, the file format, and the file size) since the GUI only allows the user to specify their preference for these.  In fact it would be good to confirm these details before authorising / initiating the download - perhaps have a "Choose" option on the initial download dialogue which then produces a dialogue listing the various options available (effectively the output from "yt-dlp -F") together with the corresponding file size when each option is selected?
Also, when the program downloads video and audio files separately (and then combines them), the dialogue should indicate each of those stages rather than simply saying "Downloading..." for each stage,

This project is abandoned. There are active forks here and here.

OK, thanks for letting me know.
Unfortunately, neither of the forks you mention is available for me to install via Synaptic Package Manager 8-(

The .DEB and .RPM packages should install themselves with just two clicks. But if you are religiously devoted to Synaptic, then perhaps you can do something to get this issue moving.


Report connectionQuality value from useParticipant never improves

Describe the bug
connectionQuality returned by useParticipant will never recover from "poor" even if the connection improves.
Example session: https://cloud.livekit.io/projects/p_3tux3vr78ux/sessions/RM_mUW6ymhUZXo9/participants/PA_AZcvSwaWa2rb
To Reproduce
Steps to reproduce the behavior:

Observe the connectionQuality value returned by useParticipant
Wait for connectionQuality to degrade to poor
Wait for the affected client's actual connection quality to improve
See that the connectionQuality value will never change even if the actual connection quality changes

Expected behavior
Reported connection quality should improve as the client's connection improves. As you can in the screenshot below, the connection quality in the example session improves, framerate hovers around 30fps, but the improved connection quality is never reported to the publisher nor any subscribers.
Screenshots

Device Info:

Device: Google Pixel 4, iPhone 6s, iPhone 14 Pro
OS: Android 13 (Build TP1A.221005.002.B2), iOS 15.7.5, iOS 16.2

Dependencies Info (please reference your package-lock.json or yarn.lock file):

@livekit/react-native: 1.0.0
livekit-client: 1.8.0
react-native-webrtc: 111.0.0

The issue also occurs in older versions such as:

@livekit/react-native: github:livekit/client-sdk-react-native#5ccd65b01e4ea591e10dac6cd2334d2ff6b60e34
livekit-client: 1.6.0
react-native-webrtc: 106.0.0

Additional context
Manually subscribing to the ParticipantEvent.ConnectionQualityChanged event has the same issue.

To be clear, ParticipantEvent.ConnectionQualityChanged doesn't fire an event when the connectionQuality improves?
Is it possible for you to see if the participant.connectionQuality variable remains poor (e.g. by periodically querying it)? Trying to locate where this issue is coming from. I can see that on the server side, the connection quality did recover.

Correct. In my case I listened to the ParticipantEvent.ConnectionQualityChanged event and observed the connectionQuality value from the useParticipant hook with useEffect in the same component and both reported the same "poor" value. Neither updated when the connection quality improved.

Can you check whether the connectionQuality on the original Participant object changes or not (i.e. without the useParticipant hook)?

In our case participant.connectionQuality is always updated to the value received by the ParticipantEvent.ConnectionQualityChanged event callback. Changes seem to be consistently in this order:

ParticipantEvent.ConnectionQualityChanged event received
connectionQuality from useParticipant is updated
participant.connectionQuality is updated

@davidliu After additional testing it appears that Android clients are reporting improved connection quality as expected. This may be isolated to iOS publishers.

@davidliu It also looks like the "poor" connection quality threshold may be too sensitive.
Here's another example: https://cloud.livekit.io/projects/p_3tux3vr78ux/sessions/RM_WLgKDXUqcfrb/participants/PA_5oAde2vYxeMg
In this case the connection was reported as "poor" within a few seconds of connecting but the Quality/MOS metric never went below 3.0. Published FPS & bitrate were both stable during the entire session.

@jbrowning which version of the ReactNative SDK are you using? I think versions prior to 1.0 had a bug with simulcast publishing, which caused connection quality to drop to poor.

@davidzhao looks like there's another issue on ios for simulcast that's causing the other layers not to be sent up, and causing the quality to drop when other subscribers request those layers.

@davidzhao We've seen this behavior on:

livekit/client-sdk-react-native: github:livekit/client-sdk-react-native#5ccd65b01e4ea591e10dac6cd2334d2ff6b60e34
@livekit/react-native: 1.0.0

I'll try disabling simulcast and see what happens.

I've confirmed that disabling simulcast on both github:livekit/client-sdk-react-native#5ccd65b01e4ea591e10dac6cd2334d2ff6b60e34 and 1.0.0 seems to fix the issue.

@jbrowning Thanks for the confirmation. As @davidliu mentioned, the connection quality drop is due to a bug in 1.0 with iOS simulcast publishing. investigating.


Stats for Caveira are missing

Caveira is listed at the end of operator list and stats show all zeros for all users

Looks like the official Rainbow Six stats page is also showing no play time for Caveira... Must be an issue on their end and not with the api.


DROP boblight (#2291)

closes #2291

Automated adapter checker
No changed adapters found
Add comment "RE-CHECK!" to start check anew


[CWS] Disable unused registry event types

What does this PR do?
Reconfigure ETW to only get registry events for which we have agent rules to match against.
Motivation
Describe how to test/QA your changes
Possible Drawbacks / Trade-offs
Additional Notes

/merge


build error: "Error path: allSettings.generalSettingsEmail. Sorry, you do not have permission to view this setting"

Hi there -- I just updated to the most recent version of gatsby-source-wordpress-experimental, and I'm having real trouble getting things to build.

I can't find anywhere in our code that calls allSettings, or generalSettingsEmail, so not sure how to proceed and debug. Have added define( 'GRAPHQL_DEBUG', true ); in the correct place in wp-config.php, and restarted the MAMP servers multiple times, tried multiple cache cleans, deleting node_modules, yarn upgrade, doing everything with npm instead, but same error every time.
I'm also not sure if this error relates to this error that I get from gatsby-compose... that one occurs right at the start of the build, which then continues for some time before failing with this message.
All the plugins are their most recent versions (I started this process after bumping WPGraphQL from 10.0.3 -> 12.0.0, which meant I had to update gatsby-source-wordpress-experimental).
At a bit of a loss; not sure what else to try? Thanks!

fixed this by adding:
excludeFieldNames: [`generalSettings`, `email`, `allSettings`, `generalSettingsEmail`],

and
        type: {
          RootQuery: {
            excludeFieldNames: [`generalSettings`, `email`, `allSettings`, `generalSettingsEmail`]
          },
       ...
       }

to the config file


Two DLLs trying to be copied with the same name

I am getting the following build error:
 Microsoft.Build.Msix.Packaging.targets(1370, 5): [APPX1101] Payload contains two or more files with the same destination path 'Microsoft.Web.WebView2.Core.dll'. Source files:
C:\Users\Bryan\.nuget\packages\microsoft.web.webview2\1.0.1018-prerelease\lib\netcoreapp3.0\Microsoft.Web.WebView2.Core.dll
C:\Users\Bryan\.nuget\packages\microsoft.web.webview2\1.0.1018-prerelease\runtimes\win-x64\native_uap\Microsoft.Web.WebView2.Core.dll

This happened after installing the Microsoft.Windows.CsWinRT v1.4.1 package in my winui3 app and a winui3 class library.

@bryaan I haven't been able to repro this.  Can you provide a repro that I can try out?

Closing out old issues with no recent feedback.


Feature request: integrate also csslint

Any plans to integrate also support for csslint to replace integrated VS 2017 support?

Hi @glat and thank you for your feedback!
I have thought about this and I would like to implement this if enough people would request this feature.
If you're just now reading this and would like this feature to be implemented, let me know.
I'm sorry to say, but until then this feature is lower priority because I've just started working on another project, and don't have much spare time left.
Pull requests are always welcome 👍

I sent a PR just not to add support for Stylelint.
Check it and let me know.
Kind regards

Cool @glat I'll check it out.


Linking on Windows

Seeing @bitbegin's issue (#17), I tried to use the GNU toolchain, but ended up with an error.
I'm on Windows 10 Home 64 bit.

Switched to the GNU based toolchain: rustup override set stable-x86_64-pc-windows-gnu
Installed pkg-config-lite
Set %PATH% to pkg-config-lite-0.28-1\bin
Set %PKG_CONFIG_PATH% to pkg-config-lite-0.28-1\libs I created
Verified pkg-config was working using pkg-config -v
Donwloaded libusb for Windows by clicking Downloads > Latest Windows binaries
Created a libusb.pc file in the PKG_CONFIG_PATH directory:

# libusb.pc

prefix=C:/Users/Tom/Desktop/pkg-config-lite-0.28-1/libs/libusb
exec_prefix=${prefix}
includedir=${prefix}/include/libusb-1.0
libdir=${exec_prefix}/MinGW64/dll # `/dll`?

Name: libusb
Description: libusb
Version: 1.0
Cflags: -I${includedir}
Libs: -L${libdir} -llibusb-1.0

Here's what pkg-config --libs --cflags libusb-1.0 spits out for me:
-IC:/Users/Tom/Desktop/pkg-config-lite-0.28-1/libs/libusb/include/libusb-1.0 -LC:/Users/Tom/Desktop/pkg-config-lite-0.28-1/libs/libusb/MinGW64/dll -llibusb-1.0
I am using this example code based on what's in the README.md file of this repository:
extern crate libusb;

fn main() {
    let context = libusb::Context::new().unwrap();
    for device in context.devices().unwrap().iter() {
        let device_desc = device.device_descriptor().unwrap();

        println!("Bus {:03} Device {:03} ID {:04x}:{:04x}",
            device.bus_number(),
            device.address(),
            device_desc.vendor_id(),
            device_desc.product_id());
    }

    println!("Hello, world!");
}

Running cargo run then links just fine and runs the binary which subsequently fails with the<PHONE_NUMBER> exit code, which is 0xC0000135, which means STATUS_DLL_NOT_FOUND.
I suspect this is because I am using the dll directory, not the static directory, but with that one, I just get linked errors.
@dcuddeback would you be able to advise here?

I got it working on windows with a .cargo/config build script override and the dll from here:
https://sourceforge.net/projects/libusb/files/

@TomasHubelbauer When I built this library (March 2015), rustup didn't exist, so I've not tested with the toolchains provided by rustup. The documented way to install Rust on Windows at that time was to use MSYS2. I documented the steps that worked for me in https://github.com/dcuddeback/libusb-sys/issues/4. There's also a PR for libusb-sys that borrows a build strategy from rust-openssl, which is supposed to work with MSVC as well: https://github.com/dcuddeback/libusb-sys/pull/5. You may want to give that a try. I haven't had time to test it myself. I'm not as comfortable on Windows as I am on Unix, so I could use help solving Windows build issues. If you happen to try https://github.com/dcuddeback/libusb-sys/pull/5, I'd appreciate some feedback on whether or not it solves your issue.

@TomasHubelbauer Thank you for your detailed report. This report helped me get my instance compiling with libusb. Specifically the pkg-config portion helped me the most.

I just succesfully built a windows binary using dcuddeback/libusb-sys#5.
if you want to build a project depending on libusb-rs, here are the steps required:
Cargo.toml
[replace]
"libusb-sys:0.2.3"= { git = "https://github.com/cmsd2/libusb-sys/" }

then export LIBUSB_DIR to point to the libusb installation. I installed libusb using  vcpkg on windows.
and pointed to the installed package folder for libusb.
Tested on Windows 10 and FreeBSD for now.
The change provides a very nice and helpfull error message if libusb is not found.
+1 for merging from here...

@TomasHubelbauer Thank you for your detailed report!! the best libusb/windows docs I've found! Thank you!

use the static lib, and modify the last line of libusb.pc to:
Libs: -L${libdir} -lusb-1.0

There is my libusb.pc:
prefix=C:\MinGW
exec_prefix=${prefix}
includedir=${prefix}/include/libusb-1.0
libdir=${exec_prefix}/lib/libusb

Name: libusb
Description: libusb
Version: 1.0
Cflags: -I${includedir}
Libs: -L${libdir} -lusb-1.0

libdir has only one file that is a copy of libusb-<IP_ADDRESS>z\MinGW64\static\libusb-1.0.a.


Insteresting question: Waht is the difference between "100 epoch and 1 epoch iterated for 100 times"

Hellow!
I made an experiment and found a interesting question that there is a little difference between "optimize a model for 100 epoch" and " optimize a model with 1epoch for 100 times."
#optimize a model for 100 epoch
    model.fit(X , Y, nb_epoch=100, batch_size=50)

    outcome_1=model.predict(X, batch_size=50)

#optimize a model with 1epoch for 100 times iterations
  for i in range(0,100):

       model.fit(X , Y, nb_epoch=1, batch_size=50

       i+=1
  outcome_2=model.predict(X, batch_size=50)

I am confused to these two different outcomes (although the difference is small)
Is anybody know the reason why??
Will there be any bias if I choose optimize a model with 1epoch for 100 times iterations rather than optimize a model for 100 epoch?
Thank you for help!

The difference is probably due to random initializations and other slight variations.  They should be the same thing.

Thank you grahamannett for prompt answer!
Yes, I made an experiment and found you are absolutely right!!!
Really thank you very much !!
Tony L.

I would guess if you're using an adaptive learing-rate method like rmsprop, there might be a bigger difference since the per-weight learning rates are not consistent over epochs in the second case.. Not 100% sure about this though.


Rearrange video widget

Move to the right => can be made much larger. Eliminate the dedicated ROI view. Maybe implement the ROI view and instead provide a quick way to zoom in

I have a rough draft that includes:

Rearrange video widgets to better use space: eliminate ROI view and move full view to the right
Calculate render size based on widget size instead of using a fixed size

These should make the view much larger and the code much more flexible / reliable. We might need different high level layouts based on widget aspect ratio though. But focus on square video feeds which is the norm right now


Bump jtravis to 2.7

Fixes #1225

CI failing in relation with #1221

Thanks @andre15silva
@javierron what's our ETA for merging #1221?


chore(plugin-chart-echarts): bump echarts to 5.1.2

🏆 Enhancements
Bump ECharts to version 5.1.2. See the changelog for details: https://github.com/apache/echarts/releases/tag/5.1.2 . Two minor tweaks/cleanups:

Remove the forceClear prop from the Echart component as it should no longer be needed: https://github.com/apache/echarts/pull/14930 . Ping @stephenLYZ
Change root_node_id to renderTrigger: true thanks to this fix: https://github.com/apache/echarts/pull/14905 . Ping @mayurnewase

Awesome


Update aws-core, http-client-spi, ... to 2.17.170

Updates

software.amazon.awssdk:aws-core
software.amazon.awssdk:http-client-spi
software.amazon.awssdk:netty-nio-client

from 2.17.104 to 2.17.170.
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 = "software.amazon.awssdk" } ]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #126.


A kind of bug with vibro

Hi there!
I installed ESPHome firmware in my sonoff tx-ultimate switch and tonight I faced a bug when vibro started working instantly and switch couldn't work properly (nothing happend when I touched it).
Sound of vibro was like when I first time flashed this firmware into module.
What could it be? I thought that it couldn't connect to HomeAssistant (I powered off it for the night) and it sarted to rollback the firmware to last version? I don't know if it can do such operation, could it?
If it happens one more time, I will try to record a video. Anyway, I need know what it could be and how to fix it, because waking up every night doesen't sound good))
Waiting for somebodies answer!

It's funny, but these problems were caused by current-conductive soldering acid, it seems.
When I soldered a pin (3.3v, rxd, txd, gnd) on the board, I didn't washed the remains of soldering acid and sometimes current passed between random contacts that caused activating vibro, random restarts, hanging and other problems I couldn't understand and classify.


2603 - Create anonymize method stub

Add method stub
Add flask as part of the dependencies
Add test for method stub

Can we maybe split linting, depnedencies, and flask+stubs into different PRs?

Can we maybe split linting, depnedencies, and flask+stubs into different PRs?

need to redo this PR.

need to redo this PR.


use transaction.atomic instead of old transaction.TransactionMiddleware

transaction stuff in app_review worries me a little still.

changes made btw.

I want to test this more but it looks ok. Wait till Monday to merge it so that we can look at how dev behaves with it.

tests pass now, with the bare minimum of fudging so everything still works.

r+, merge on Monday.


Training of RTDETRv2 with multi-gpus is hanging

We trained custom rtdetrv2 models using multi-gpu setting. With single gpu training it works fine. But when we utilized multi-gpus training is just hanging in the first epoch for a longer time. We haven't faced this kind of an issue with rtdetrv1.
Training details:

Dataset size: 20, 000 images (both training and validation split)
GPUs - 2 V100 gpus
other parameters were set to default ones expect the batch size

Thank you for your awesome work!
@lyuwenyu

I encountered the same problem

I'm facing the same problem. Did you find a solution by any chance? @VimukthiRandika1997

In my experiments, it caused by the nan result of loss_labels_vfl. It seems the loss is not well defined.
A simple solution is to add
if torch.isnan(loss):      return {'loss_vfl' : torch.tensor(0., device = loss.device, requires_grad = False)}
after line 130 in rtdetrv2_pytorch/src/nn/criterion/det_criterion.py.

I think I am experiencing this issue - 4x V100 in AWS, even with stock batch / worker counts training freezes on the first epoch, can see when it happens when monitoring gpu usage as it spikes to 100% on each device
I tried your suggestion @yenchi1222 but it didn't seem to work in my case - were you seeing these same symptoms?

@bryan-pakulski I used to face the same issue. After I modified the loss, the issue had been solved. Maybe you could try not to use the ``amp'' argument.  If that doesn't help, try to run the code by python instead of torchrun command with one gpu for debugging.

Cheers,
Will do some do some digging

Just as an update on this it seems it could possibly be hardware related
I have set up a local training server using multiple rtx 3060's and that is able to train using multi gpu without any hangs
It's only on aws with 2+ V100 gpu's that I experience problems
Not spending anymore time looking into it, aws compute is expensive, and local compute has been much easier to use


Fix posix segv handler to catch stack overflow

Tests do not yet pass.
inNative v0.1.0 Test Utility

Internal Tests           Subtests    Pass/Fail
--------------           --------    ---------
0000000000000000
FFFFFFFFFFFFFFFF
4000000000000000
internal.c               5121/5121   PASS
path.h                   144/144     PASS
queue.h                  65/65       PASS
stack.h                  25/25       PASS
stream.h                 40/40       PASS
util.h                   55/55       PASS

Running through 71 official webassembly spec tests.
../spec/test/core/call_indirect.wast: ..SUCCESS
../spec/test/core/int_literals.wast: ..SUCCESS
../spec/test/core/br_table.wast: ..SUCCESS
../spec/test/core/block.wast: ..SUCCESS
../spec/test/core/tee_local.wast: ..SUCCESS
../spec/test/core/unwind.wast: ..SUCCESS
../spec/test/core/utf8-invalid-encoding.wast: ..SUCCESS
../spec/test/core/utf8-import-module.wast: ..SUCCESS
../spec/test/core/call.wast: ..SUCCESS
../spec/test/core/binary.wast: ..SUCCESS
../spec/test/core/linking.wast: .........SUCCESS
../spec/test/core/fac.wast: ..SUCCESS
../spec/test/core/store_retval.wast: ..SUCCESS
../spec/test/core/align.wast: ...SUCCESS
../spec/test/core/conversions.wast: ..SUCCESS
../spec/test/core/memory_redundancy.wast: ..SUCCESS
../spec/test/core/i64.wast: ..SUCCESS
../spec/test/core/int_exprs.wast: ....................SUCCESS
../spec/test/core/typecheck.wast: ..SUCCESS
../spec/test/core/memory.wast: .....FAILED
  [26] Expected 'unknown memory' error, but got 'type mismatch' instead

../spec/test/core/f32.wast: ..FAILED
  m540: [405] Expected arithmetic NaN but got -nan
  m540: [409] Expected arithmetic NaN but got -nan
  m540: [413] Expected arithmetic NaN but got nan
  m540: [417] Expected arithmetic NaN but got nan
  m540: [805] Expected arithmetic NaN but got -nan
  m540: [809] Expected arithmetic NaN but got -nan
  m540: [813] Expected arithmetic NaN but got nan
  m540: [817] Expected arithmetic NaN but got nan
  m540: [1205] Expected arithmetic NaN but got -nan
  m540: [1209] Expected arithmetic NaN but got -nan
  m540: [1213] Expected arithmetic NaN but got nan
  m540: [1217] Expected arithmetic NaN but got nan
  m540: [1605] Expected arithmetic NaN but got -nan
  m540: [1609] Expected arithmetic NaN but got -nan
  m540: [1613] Expected arithmetic NaN but got nan
  m540: [1617] Expected arithmetic NaN but got nan
  m540: [1652] Expected arithmetic NaN but got nan
  m540: [1654] Expected arithmetic NaN but got nan
  m540: [1656] Expected arithmetic NaN but got nan
  m540: [1658] Expected arithmetic NaN but got nan
  m540: [1692] Expected arithmetic NaN but got nan
  m540: [1694] Expected arithmetic NaN but got nan
  m540: [1696] Expected arithmetic NaN but got nan
  m540: [1698] Expected arithmetic NaN but got nan
  m540: [1732] Expected arithmetic NaN but got nan
  m540: [1734] Expected arithmetic NaN but got nan
  m540: [1736] Expected arithmetic NaN but got nan
  m540: [1738] Expected arithmetic NaN but got nan
  m540: [1772] Expected arithmetic NaN but got nan
  m540: [1774] Expected arithmetic NaN but got nan
  m540: [1776] Expected arithmetic NaN but got nan
  m540: [1778] Expected arithmetic NaN but got nan
  m540: [1812] Expected arithmetic NaN but got nan
  m540: [1814] Expected arithmetic NaN but got nan
  m540: [1816] Expected arithmetic NaN but got nan
  m540: [1818] Expected arithmetic NaN but got nan
  m540: [1852] Expected arithmetic NaN but got nan
  m540: [1854] Expected arithmetic NaN but got nan
  m540: [1856] Expected arithmetic NaN but got nan
  m540: [1858] Expected arithmetic NaN but got nan
  m540: [1892] Expected arithmetic NaN but got nan
  m540: [1894] Expected arithmetic NaN but got nan
  m540: [1896] Expected arithmetic NaN but got nan
  m540: [1898] Expected arithmetic NaN but got nan
  m540: [1932] Expected arithmetic NaN but got nan
  m540: [1934] Expected arithmetic NaN but got nan
  m540: [1936] Expected arithmetic NaN but got nan
  m540: [1938] Expected arithmetic NaN but got nan
  m540: [1940] Expected arithmetic NaN but got nan
  m540: [1942] Expected arithmetic NaN but got nan
  m540: [1944] Expected arithmetic NaN but got nan
  m540: [1946] Expected arithmetic NaN but got nan
  m540: [1948] Expected arithmetic NaN but got nan
  m540: [1950] Expected arithmetic NaN but got nan
  m540: [1952] Expected arithmetic NaN but got nan
  m540: [1954] Expected arithmetic NaN but got nan
  m540: [1956] Expected arithmetic NaN but got nan
  m540: [1958] Expected arithmetic NaN but got nan
  m540: [1960] Expected arithmetic NaN but got nan
  m540: [1962] Expected arithmetic NaN but got nan
  m540: [1964] Expected arithmetic NaN but got nan
  m540: [1966] Expected arithmetic NaN but got nan
  m540: [1968] Expected arithmetic NaN but got nan
  m540: [1970] Expected arithmetic NaN but got nan
  m540: [1972] Expected arithmetic NaN but got nan
  m540: [1974] Expected arithmetic NaN but got nan
  m540: [1976] Expected arithmetic NaN but got nan
  m540: [1978] Expected arithmetic NaN but got nan
  m540: [1980] Expected arithmetic NaN but got nan
  m540: [1982] Expected arithmetic NaN but got nan
  m540: [1984] Expected arithmetic NaN but got nan
  m540: [1986] Expected arithmetic NaN but got nan
  m540: [1988] Expected arithmetic NaN but got nan
  m540: [1990] Expected arithmetic NaN but got nan
  m540: [1992] Expected arithmetic NaN but got nan
  m540: [1994] Expected arithmetic NaN but got nan
  m540: [1996] Expected arithmetic NaN but got nan
  m540: [1998] Expected arithmetic NaN but got nan
  m540: [2000] Expected arithmetic NaN but got nan
  m540: [2002] Expected arithmetic NaN but got nan
  m540: [2004] Expected arithmetic NaN but got nan
  m540: [2005] Expected arithmetic NaN but got nan
  m540: [2006] Expected arithmetic NaN but got nan
  m540: [2008] Expected arithmetic NaN but got nan
  m540: [2009] Expected arithmetic NaN but got nan
  m540: [2010] Expected arithmetic NaN but got nan
  m540: [2012] Expected arithmetic NaN but got nan
  m540: [2013] Expected arithmetic NaN but got nan
  m540: [2014] Expected arithmetic NaN but got nan
  m540: [2016] Expected arithmetic NaN but got nan
  m540: [2017] Expected arithmetic NaN but got nan
  m540: [2018] Expected arithmetic NaN but got nan
  m540: [2052] Expected arithmetic NaN but got nan
  m540: [2054] Expected arithmetic NaN but got nan
  m540: [2056] Expected arithmetic NaN but got nan
  m540: [2058] Expected arithmetic NaN but got nan
  m540: [2092] Expected arithmetic NaN but got nan
  m540: [2094] Expected arithmetic NaN but got nan
  m540: [2096] Expected arithmetic NaN but got nan
  m540: [2098] Expected arithmetic NaN but got nan
  m540: [2132] Expected arithmetic NaN but got nan
  m540: [2134] Expected arithmetic NaN but got nan
  m540: [2136] Expected arithmetic NaN but got nan
  m540: [2138] Expected arithmetic NaN but got nan
  m540: [2172] Expected arithmetic NaN but got nan
  m540: [2174] Expected arithmetic NaN but got nan
  m540: [2176] Expected arithmetic NaN but got nan
  m540: [2178] Expected arithmetic NaN but got nan
  m540: [2212] Expected arithmetic NaN but got nan
  m540: [2214] Expected arithmetic NaN but got nan
  m540: [2216] Expected arithmetic NaN but got nan
  m540: [2218] Expected arithmetic NaN but got nan
  m540: [2252] Expected arithmetic NaN but got nan
  m540: [2254] Expected arithmetic NaN but got nan
  m540: [2256] Expected arithmetic NaN but got nan
  m540: [2258] Expected arithmetic NaN but got nan
  m540: [2292] Expected arithmetic NaN but got nan
  m540: [2294] Expected arithmetic NaN but got nan
  m540: [2296] Expected arithmetic NaN but got nan
  m540: [2298] Expected arithmetic NaN but got nan
  m540: [2332] Expected arithmetic NaN but got nan
  m540: [2334] Expected arithmetic NaN but got nan
  m540: [2336] Expected arithmetic NaN but got nan
  m540: [2338] Expected arithmetic NaN but got nan
  m540: [2340] Expected arithmetic NaN but got nan
  m540: [2342] Expected arithmetic NaN but got nan
  m540: [2344] Expected arithmetic NaN but got nan
  m540: [2346] Expected arithmetic NaN but got nan
  m540: [2348] Expected arithmetic NaN but got nan
  m540: [2350] Expected arithmetic NaN but got nan
  m540: [2352] Expected arithmetic NaN but got nan
  m540: [2354] Expected arithmetic NaN but got nan
  m540: [2356] Expected arithmetic NaN but got nan
  m540: [2358] Expected arithmetic NaN but got nan
  m540: [2360] Expected arithmetic NaN but got nan
  m540: [2362] Expected arithmetic NaN but got nan
  m540: [2364] Expected arithmetic NaN but got nan
  m540: [2366] Expected arithmetic NaN but got nan
  m540: [2368] Expected arithmetic NaN but got nan
  m540: [2370] Expected arithmetic NaN but got nan
  m540: [2372] Expected arithmetic NaN but got nan
  m540: [2374] Expected arithmetic NaN but got nan
  m540: [2376] Expected arithmetic NaN but got nan
  m540: [2378] Expected arithmetic NaN but got nan
  m540: [2380] Expected arithmetic NaN but got nan
  m540: [2382] Expected arithmetic NaN but got nan
  m540: [2384] Expected arithmetic NaN but got nan
  m540: [2386] Expected arithmetic NaN but got nan
  m540: [2388] Expected arithmetic NaN but got nan
  m540: [2390] Expected arithmetic NaN but got nan
  m540: [2392] Expected arithmetic NaN but got nan
  m540: [2394] Expected arithmetic NaN but got nan
  m540: [2396] Expected arithmetic NaN but got nan
  m540: [2398] Expected arithmetic NaN but got nan
  m540: [2400] Expected arithmetic NaN but got nan
  m540: [2402] Expected arithmetic NaN but got nan
  m540: [2404] Expected arithmetic NaN but got nan
  m540: [2405] Expected arithmetic NaN but got nan
  m540: [2406] Expected arithmetic NaN but got nan
  m540: [2408] Expected arithmetic NaN but got nan
  m540: [2409] Expected arithmetic NaN but got nan
  m540: [2410] Expected arithmetic NaN but got nan
  m540: [2412] Expected arithmetic NaN but got nan
  m540: [2413] Expected arithmetic NaN but got nan
  m540: [2414] Expected arithmetic NaN but got nan
  m540: [2416] Expected arithmetic NaN but got nan
  m540: [2417] Expected arithmetic NaN but got nan
  m540: [2418] Expected arithmetic NaN but got nan

../spec/test/core/f64_bitwise.wast: ..SUCCESS
../spec/test/core/left-to-right.wast: ..SUCCESS
../spec/test/core/endianness.wast: ..SUCCESS
../spec/test/core/set_local.wast: ..SUCCESS
../spec/test/core/return.wast: ..SUCCESS
../spec/test/core/memory_grow.wast: .....SUCCESS
../spec/test/core/utf8-import-field.wast: ..SUCCESS
../spec/test/core/data.wast: ..FAILED
  [307] Expected 'constant expression required' error, but got 'type mismatch' instead

../spec/test/core/memory_trap.wast: ...SUCCESS
../spec/test/core/i32.wast: ..SUCCESS
../spec/test/core/br.wast: ..SUCCESS
../spec/test/core/nop.wast: ..SUCCESS
../spec/test/core/start.wast: ....SUCCESS
../spec/test/core/comments.wast: ..SUCCESS
../spec/test/core/custom.wast: ..SUCCESS
../spec/test/core/unreachable.wast: ..SUCCESS
../spec/test/core/token.wast: ..SUCCESS
../spec/test/core/f64.wast: ..FAILED
  m654: [405] Expected arithmetic NaN but got -nan
  m654: [409] Expected arithmetic NaN but got -nan
  m654: [413] Expected arithmetic NaN but got nan
  m654: [417] Expected arithmetic NaN but got nan
  m654: [805] Expected arithmetic NaN but got -nan
  m654: [809] Expected arithmetic NaN but got -nan
  m654: [813] Expected arithmetic NaN but got nan
  m654: [817] Expected arithmetic NaN but got nan
  m654: [1205] Expected arithmetic NaN but got -nan
  m654: [1209] Expected arithmetic NaN but got -nan
  m654: [1213] Expected arithmetic NaN but got nan
  m654: [1217] Expected arithmetic NaN but got nan
  m654: [1605] Expected arithmetic NaN but got -nan
  m654: [1609] Expected arithmetic NaN but got -nan
  m654: [1613] Expected arithmetic NaN but got nan
  m654: [1617] Expected arithmetic NaN but got nan
  m654: [1652] Expected arithmetic NaN but got nan
  m654: [1654] Expected arithmetic NaN but got nan
  m654: [1656] Expected arithmetic NaN but got nan
  m654: [1658] Expected arithmetic NaN but got nan
  m654: [1692] Expected arithmetic NaN but got nan
  m654: [1694] Expected arithmetic NaN but got nan
  m654: [1696] Expected arithmetic NaN but got nan
  m654: [1698] Expected arithmetic NaN but got nan
  m654: [1732] Expected arithmetic NaN but got nan
  m654: [1734] Expected arithmetic NaN but got nan
  m654: [1736] Expected arithmetic NaN but got nan
  m654: [1738] Expected arithmetic NaN but got nan
  m654: [1772] Expected arithmetic NaN but got nan
  m654: [1774] Expected arithmetic NaN but got nan
  m654: [1776] Expected arithmetic NaN but got nan
  m654: [1778] Expected arithmetic NaN but got nan
  m654: [1812] Expected arithmetic NaN but got nan
  m654: [1814] Expected arithmetic NaN but got nan
  m654: [1816] Expected arithmetic NaN but got nan
  m654: [1818] Expected arithmetic NaN but got nan
  m654: [1852] Expected arithmetic NaN but got nan
  m654: [1854] Expected arithmetic NaN but got nan
  m654: [1856] Expected arithmetic NaN but got nan
  m654: [1858] Expected arithmetic NaN but got nan
  m654: [1892] Expected arithmetic NaN but got nan
  m654: [1894] Expected arithmetic NaN but got nan
  m654: [1896] Expected arithmetic NaN but got nan
  m654: [1898] Expected arithmetic NaN but got nan
  m654: [1932] Expected arithmetic NaN but got nan
  m654: [1934] Expected arithmetic NaN but got nan
  m654: [1936] Expected arithmetic NaN but got nan
  m654: [1938] Expected arithmetic NaN but got nan
  m654: [1940] Expected arithmetic NaN but got nan
  m654: [1942] Expected arithmetic NaN but got nan
  m654: [1944] Expected arithmetic NaN but got nan
  m654: [1946] Expected arithmetic NaN but got nan
  m654: [1948] Expected arithmetic NaN but got nan
  m654: [1950] Expected arithmetic NaN but got nan
  m654: [1952] Expected arithmetic NaN but got nan
  m654: [1954] Expected arithmetic NaN but got nan
  m654: [1956] Expected arithmetic NaN but got nan
  m654: [1958] Expected arithmetic NaN but got nan
  m654: [1960] Expected arithmetic NaN but got nan
  m654: [1962] Expected arithmetic NaN but got nan
  m654: [1964] Expected arithmetic NaN but got nan
  m654: [1966] Expected arithmetic NaN but got nan
  m654: [1968] Expected arithmetic NaN but got nan
  m654: [1970] Expected arithmetic NaN but got nan
  m654: [1972] Expected arithmetic NaN but got nan
  m654: [1974] Expected arithmetic NaN but got nan
  m654: [1976] Expected arithmetic NaN but got nan
  m654: [1978] Expected arithmetic NaN but got nan
  m654: [1980] Expected arithmetic NaN but got nan
  m654: [1982] Expected arithmetic NaN but got nan
  m654: [1984] Expected arithmetic NaN but got nan
  m654: [1986] Expected arithmetic NaN but got nan
  m654: [1988] Expected arithmetic NaN but got nan
  m654: [1990] Expected arithmetic NaN but got nan
  m654: [1992] Expected arithmetic NaN but got nan
  m654: [1994] Expected arithmetic NaN but got nan
  m654: [1996] Expected arithmetic NaN but got nan
  m654: [1998] Expected arithmetic NaN but got nan
  m654: [2000] Expected arithmetic NaN but got nan
  m654: [2002] Expected arithmetic NaN but got nan
  m654: [2004] Expected arithmetic NaN but got nan
  m654: [2005] Expected arithmetic NaN but got nan
  m654: [2006] Expected arithmetic NaN but got nan
  m654: [2008] Expected arithmetic NaN but got nan
  m654: [2009] Expected arithmetic NaN but got nan
  m654: [2010] Expected arithmetic NaN but got nan
  m654: [2012] Expected arithmetic NaN but got nan
  m654: [2013] Expected arithmetic NaN but got nan
  m654: [2014] Expected arithmetic NaN but got nan
  m654: [2016] Expected arithmetic NaN but got nan
  m654: [2017] Expected arithmetic NaN but got nan
  m654: [2018] Expected arithmetic NaN but got nan
  m654: [2052] Expected arithmetic NaN but got nan
  m654: [2054] Expected arithmetic NaN but got nan
  m654: [2056] Expected arithmetic NaN but got nan
  m654: [2058] Expected arithmetic NaN but got nan
  m654: [2092] Expected arithmetic NaN but got nan
  m654: [2094] Expected arithmetic NaN but got nan
  m654: [2096] Expected arithmetic NaN but got nan
  m654: [2098] Expected arithmetic NaN but got nan
  m654: [2132] Expected arithmetic NaN but got nan
  m654: [2134] Expected arithmetic NaN but got nan
  m654: [2136] Expected arithmetic NaN but got nan
  m654: [2138] Expected arithmetic NaN but got nan
  m654: [2172] Expected arithmetic NaN but got nan
  m654: [2174] Expected arithmetic NaN but got nan
  m654: [2176] Expected arithmetic NaN but got nan
  m654: [2178] Expected arithmetic NaN but got nan
  m654: [2212] Expected arithmetic NaN but got nan
  m654: [2214] Expected arithmetic NaN but got nan
  m654: [2216] Expected arithmetic NaN but got nan
  m654: [2218] Expected arithmetic NaN but got nan
  m654: [2252] Expected arithmetic NaN but got nan
  m654: [2254] Expected arithmetic NaN but got nan
  m654: [2256] Expected arithmetic NaN but got nan
  m654: [2258] Expected arithmetic NaN but got nan
  m654: [2292] Expected arithmetic NaN but got nan
  m654: [2294] Expected arithmetic NaN but got nan
  m654: [2296] Expected arithmetic NaN but got nan
  m654: [2298] Expected arithmetic NaN but got nan
  m654: [2332] Expected arithmetic NaN but got nan
  m654: [2334] Expected arithmetic NaN but got nan
  m654: [2336] Expected arithmetic NaN but got nan
  m654: [2338] Expected arithmetic NaN but got nan
  m654: [2340] Expected arithmetic NaN but got nan
  m654: [2342] Expected arithmetic NaN but got nan
  m654: [2344] Expected arithmetic NaN but got nan
  m654: [2346] Expected arithmetic NaN but got nan
  m654: [2348] Expected arithmetic NaN but got nan
  m654: [2350] Expected arithmetic NaN but got nan
  m654: [2352] Expected arithmetic NaN but got nan
  m654: [2354] Expected arithmetic NaN but got nan
  m654: [2356] Expected arithmetic NaN but got nan
  m654: [2358] Expected arithmetic NaN but got nan
  m654: [2360] Expected arithmetic NaN but got nan
  m654: [2362] Expected arithmetic NaN but got nan
  m654: [2364] Expected arithmetic NaN but got nan
  m654: [2366] Expected arithmetic NaN but got nan
  m654: [2368] Expected arithmetic NaN but got nan
  m654: [2370] Expected arithmetic NaN but got nan
  m654: [2372] Expected arithmetic NaN but got nan
  m654: [2374] Expected arithmetic NaN but got nan
  m654: [2376] Expected arithmetic NaN but got nan
  m654: [2378] Expected arithmetic NaN but got nan
  m654: [2380] Expected arithmetic NaN but got nan
  m654: [2382] Expected arithmetic NaN but got nan
  m654: [2384] Expected arithmetic NaN but got nan
  m654: [2386] Expected arithmetic NaN but got nan
  m654: [2388] Expected arithmetic NaN but got nan
  m654: [2390] Expected arithmetic NaN but got nan
  m654: [2392] Expected arithmetic NaN but got nan
  m654: [2394] Expected arithmetic NaN but got nan
  m654: [2396] Expected arithmetic NaN but got nan
  m654: [2398] Expected arithmetic NaN but got nan
  m654: [2400] Expected arithmetic NaN but got nan
  m654: [2402] Expected arithmetic NaN but got nan
  m654: [2404] Expected arithmetic NaN but got nan
  m654: [2405] Expected arithmetic NaN but got nan
  m654: [2406] Expected arithmetic NaN but got nan
  m654: [2408] Expected arithmetic NaN but got nan
  m654: [2409] Expected arithmetic NaN but got nan
  m654: [2410] Expected arithmetic NaN but got nan
  m654: [2412] Expected arithmetic NaN but got nan
  m654: [2413] Expected arithmetic NaN but got nan
  m654: [2414] Expected arithmetic NaN but got nan
  m654: [2416] Expected arithmetic NaN but got nan
  m654: [2417] Expected arithmetic NaN but got nan
  m654: [2418] Expected arithmetic NaN but got nan

../spec/test/core/f32_bitwise.wast: ..SUCCESS
../spec/test/core/select.wast: ..SUCCESS
../spec/test/core/float_memory.wast: .......SUCCESS
../spec/test/core/switch.wast: ..SUCCESS
../spec/test/core/skip-stack-guard-page.wast: ..SUCCESS
../spec/test/core/labels.wast: ..SUCCESS
../spec/test/core/elem.wast: .......FAILED
  [273] Expected 'constant expression required' error, but got 'type mismatch' instead

../spec/test/core/type.wast: ..FAILED
  [43] Expected 'result before parameter' error, but got 'unexpected token' instead

../spec/test/core/f32_cmp.wast: ..SUCCESS
../spec/test/core/if.wast: ..SUCCESS
../spec/test/core/exports.wast: ......SUCCESS
../spec/test/core/forward.wast: ..SUCCESS
../spec/test/core/const.wast: .innative-test: innative/wat.cpp:1618: int innative::wat::WatModule(Environment&, Module&, innative::Queue<innative::wat::__WAT_TOKEN>&, innative::utility::StringRef, innative::wat::WatToken&): Assertion `m.name.str()' failed.
Aborted


ci: workflow improvements

Essentially a copy of miden-node/#426.

Limit comments to 100 character limit
Cache ci artifacts
Limit ci concurrency to the latest commit per PR

Closes #568

I've rebased and also

removed nightly from clippy and fix makefile jobs
simplified/removed matrix ci job setups where it made sense (to me)

Looks good! Thank you! I left just a couple of minor comments inline.
I think we should probably wait until #826 is merged and then rebase/merge this one (my assumption is that rebasing this one should be easier than doing it the other way around).

Thanks, yes I'll wait then. The only conflict here will be due to the rustfmt commit, which one can simply drop and re-apply separately.


Fix container app create not waiting for ready environment

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

For new extensions:

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

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

@p-bouchon Please take a look at this comment https://github.com/Azure/azure-cli-extensions/pull/6399#issuecomment-1589564154 first.


[feature] Customizable z-index

When using inside a mat-dialog in Angular, the picker does not show because it is hidden behind the dialog component.
I fixed this a global css style:
.emoji-picker {
  z-index: 1001; // Show over mat-dialog
}

It would be nice to be able to customize the z-index through the config object.

v2.4.0 adds a zIndex option.


chore(CategoryTheory/Limits/Shapes/BinaryProducts): More universe flexibility for pairComp

This is needed to have a satisfying ChosenFiniteProduct variant of Functor.toMonoidalFunctorOfHasFiniteProducts.

Thanks
bors merge


MNT: rerender

Hi! This is the friendly automated conda-forge-webservice.
I've rerendered the recipe as instructed in #24.
Here's a checklist to do before merging.

[ ] Bump the build number if needed.

Fixes #24

@conda-forge-admin please rerender

there was a typo for ppc64le. There is a way to specify cross compiling, but the correct flag is azure in this case.

@conda-forge-admin please rerender
Trying to cross compile correctly

@conda-forge-admin please rerender

i'm way too impatient. does ppc cross compilation take longer than aarch cross compilation?

@hmaarrfk I don't know if ppc would take longer, but after 3h40 I would say that something might have gone wrong ;)

It seems like it isn't cross compiling to me.

@conda-forge-admin please rerender


Update docker-compose.workspace.yml & .env for easier setup

Hi,
This PR :

changes ONLYOFFICE image tags (except onlyoffice/elasticsearch) with latest in docker-compose.workspace.yml ;
adds a TODO in it and in .env to remind the user to fill MAIL_SERVER_HOSTNAME ;
uncomments a line to solve an issue by default.

Thanks

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


Incorrect data rendering when deleting a product variant.

When deleting a product variant the table does not remove the deleted variant data. Instead it overflows into the next column and thereby displaying it incorrectly. Here's a demo, pay close attention to the SKU column.

Hi @baaae,
Thanks for reporting this issue. I'm attempting to fix this bug, but I'm not sure how long it will take. Please consider refreshing the webpage after clicking 'Save' as a, hopefully temporary, workaround.

Hi @baaae,
A fix for this issue has been written, but is awaiting a final review from one of DShop's lead developers. I'm expecting to hear back from them by the end of next week (01/08). If you have any questions/concerns, please don't hesitate to reach out.
Sincerely,
Rajath

The change is still pending a final review. Sorry for the inconvenience!

The change is still pending a final review. Sorry for the inconvenience!


fixed bug with default multiplay speed option

fixes the bug, that after the game ends and rejoining the lobby, the default multiplayer speed does not get set again
Related: https://github.com/Sh0wdown/UnofficialCrusaderPatch/issues/506, especially https://github.com/Sh0wdown/UnofficialCrusaderPatch/issues/506#issuecomment-597063044

You said its not tested yet?
Can we get someone to test this? @GRhin for example?


Support for deployment outside of GCP

Hi! I love Trotto, thank you for making it open source!
Today I installed Trotto on a Raspberry Pi, but it was a bit complicated, mainly because of the tight coupling the current code has with GCP. I had to work around a handful of issues until I managed to get it to work.
I wonder if that kind of support is something that interests you. If so, I can try to put some effort into polishing those workarounds and make some Pull Requests.
If not, I completely understand! I'll keep the hacks to myself :stuck_out_tongue_closed_eyes:

Hey @Ferdy89! Thank you, and you're so welcome!
That is rad that you put it on a Pi! I'm pretty sure you're breaking new ground there! 😹
Decoupling from GCP is indeed a high priority for Trotto, since GCP doesn't suit every use case. I did some initial work on this last year in https://github.com/trotto/go-links/tree/jon/platform_agnostic, but never finished it up. I'd love to collaborate on getting it done. The approach I took was to consolidate all datastore interactions to a single package (here) and implement a common interface for each datastore. Then you'd specify which implementation to use in a config file. To prove it out, I tried SQLite, but I imagine supporting at most 3 datastores would suffice for the future (Cloud Datastore, PostgreSQL or similar, and maybe just file system for the most dead-simple (if unreliable) implementation). Maintaining support for multiple databases certainly adds overhead, but the goal is to keep the Trotto core nice and simple, so there won't be a frequent need to implement new datastore interactions for multiple stores.
I welcome your thoughts on that approach and would love to hear how it compares to what you did!

@Ferdy89 hope you're well! I'm pleased to say we've moved Trotto to a platform-agnostic stack, using Postgres as the database. We've documented how to deploy with Docker as well as how to deploy to Heroku, which is quite simple since Heroku can create a Postgres database automatically:

Deploy with Docker
Deploy to Heroku

Take a look and please let me know if you have any questions!


Swipe back gesture is harder than native to activate when swiping diagonally

When swiping back the thumb will naturally do a diagonal swipe downwards, doing a purely horizontal swipe back is hard. The native gesture handler allows heavily diagonal swipes whereas react-navigation is very picky about the swipe being horizontal.
Update: Tried the below and it worked well in the map gesture interaction example that became less picky but in the web-view it's still very difficult to swipe back instead of scrolling...
With the limited time I had to look in to this I would guess that the pickiness has to do with the rather low maxDeltaY set in src/views/StackView/StackViewLayout.tsx -> gestureActivationCriteria() but I didn't have the time to try and change it. If someone has the time to try fiddling with this so we can get less annoyed when failing to swipe back in RN apps that would awesome!
Thanks!

A workaround I'm currently using is to render a transparent, ~5 points wide view above the scroll view along the edge that I want to be more easy to swipe back at. This prevents the scroll view from snatching the pan event.


[BUG] removal of automated virtual box setup on macos

This is unmaintained and unsupported code. When removed it also eliminates the need for us handling root/admin privileges needs on setup. The user is responsible for setting this up (as in most corporate environments this comes preinstalled)

Duplicate of #662


int() argument must be a string or a number, not 'NoneType'

Version: redis==2.10.3
Platform: Python 2.7.13
Description:
Hi, I have the strange error (which reported via Sentry) on remote machine which I cannot reproduce locally. The traceback is:
TypeError: int() argument must be a string or a number, not 'NoneType'
  File "v2/core/rq/base.py", line 523, in check_horses
    event.delete()
  File "v2/core/rq/redis_semaphore.py", line 346, in delete
    self._connection.delete(self._key)
  File "redis/client.py", line 824, in delete
    return self.execute_command('DEL', *names)
  File "redis/client.py", line 565, in execute_command
    return self.parse_response(connection, command_name, **options)
  File "redis/client.py", line 579, in parse_response
    return self.response_callbacks[command_name](response, **options)  # Sentry shows that response is None here

The error happens pretty seldom: ~10 times per day and sometimes I see same traceback but cause is slightly different:
TypeError: int() argument must be a string or a number, not 'list'
  <...>
  File "redis/client.py", line 579, in parse_response
    return self.response_callbacks[command_name](response, **options)

Can somebody help why None or list can be returned for DEL command?

What version of Redis server are you using on the remote machine? You're also running a very old version of redis-py. Can you tried upgrading to a more recent version?

Redis-server version is 5.0.6
At this time we cannot update to newer version (but is a plan to future).

This sounds like a race condition to me as DEL should never be returning null or list responses. It might be due to a bug in the lib (that has likely been fixed in more recent versions) or a misuse of the library.
Are you in the threaded or forked environment?

Yes, many number of processes actively communicate with Redis. I also though that sometimes instead of result for DEL I got result for some other command, but still do not understand how this possible.

redis-py uses a connection pool to share connections between threads. It's likely that there's a bug in the version of redis-py that you're using related to thread handling. As I said above, many (hopefully all!) of these bugs have been fixed in newer versions.

Understood, thank you.

Closing this for now. If you upgrade and still have issues, please feel free to reopen.