[WIP] Enable dualStack cfg for istiod control plane in dualStack tests

Currently, in our integration tests, when "enableDualStack=true" we configure the ingress/egress gateways as dualStack but do not configure the istiod service as a dualStack service. This PR updates the istiod configuration to use a dualStack istiod control plane.

Hi @sridhargaddam. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

you already joined istio org, https://github.com/istio/community/pull/1427, so wondering why the PR is still asking for the same!

you already joined istio org, istio/community#1427, so wondering why the PR is still asking for the same!

I just realized that I forgot to join the "@istio organization" using the invite that I received. I'm now a member :) Thanks.

/ok-to-test

I did some basic testing after configuring the istiod control plane as dualStack and ran some integration tests.
I'm noticing few failures, which I'm not able to reproduce manually when i try similar commands using curl.
I pushed the following PR and marked it as draft to know the list of failures (if any).
--- FAIL: TestGateway (141.39s)
    --- FAIL: TestGateway/unmanaged (120.09s)
        --- FAIL: TestGateway/unmanaged/primary-0 (120.04s)
        --- FAIL: TestGateway/unmanaged/primary-0/http (30.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tcp (30.00s)
        --- PASS: TestGateway/unmanaged/primary-0/mesh (0.02s)
        --- PASS: TestGateway/unmanaged/primary-0/mesh-grpc (0.01s)
	--- PASS: TestGateway/unmanaged/primary-0/status (0.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tls-same (30.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tls-cross (30.00s)

@sridhargaddam: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
e37b9861a40c0a68755fc3c075c1f081edefc403
link
true
/test release-notes

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

I did some basic testing after configuring the istiod control plane as dualStack and ran some integration tests. However, i'm noticing few failures, which I'm not able to reproduce manually when i try similar commands using curl.
I pushed this PR and marked it as draft to know the list of failures (if any).
--- FAIL: TestGateway (141.39s)
    --- FAIL: TestGateway/unmanaged (120.09s)
        --- FAIL: TestGateway/unmanaged/primary-0 (120.04s)
        --- FAIL: TestGateway/unmanaged/primary-0/http (30.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tcp (30.00s)
        --- PASS: TestGateway/unmanaged/primary-0/mesh (0.02s)
        --- PASS: TestGateway/unmanaged/primary-0/mesh-grpc (0.01s)
	--- PASS: TestGateway/unmanaged/primary-0/status (0.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tls-same (30.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tls-cross (30.00s)

I re-ran the above tests in an IPv4 only KIND Cluster and noticed the same failures. So, it looks like there is some issue with my Kind env'.
Since these jobs are run as part of postsubmit hook, I'd like to know if there is a prow command which can manually trigger the postsubmit jobs before the PR is merged?
Alternately, another option is to temporarily modify the makefile to run these tests as part of presubmit job and check if the tests are passing (and revert the change before merging).
I'd appreciate if someone familiar with the test framework comments on this.

I did some basic testing after configuring the istiod control plane as dualStack and ran some integration tests. However, i'm noticing few failures, which I'm not able to reproduce manually when i try similar commands using curl.
I pushed this PR and marked it as draft to know the list of failures (if any).
--- FAIL: TestGateway (141.39s)
    --- FAIL: TestGateway/unmanaged (120.09s)
        --- FAIL: TestGateway/unmanaged/primary-0 (120.04s)
        --- FAIL: TestGateway/unmanaged/primary-0/http (30.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tcp (30.00s)
        --- PASS: TestGateway/unmanaged/primary-0/mesh (0.02s)
        --- PASS: TestGateway/unmanaged/primary-0/mesh-grpc (0.01s)
	--- PASS: TestGateway/unmanaged/primary-0/status (0.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tls-same (30.00s)
        --- FAIL: TestGateway/unmanaged/primary-0/tls-cross (30.00s)

I re-ran the above tests in an IPv4 only KIND Cluster and noticed the same failures. So, it looks like there is some issue with my Kind env'.
Since these jobs are run as part of postsubmit hook, I'd like to know if there is a prow command which can manually trigger the postsubmit jobs before the PR is merged?
Alternately, another option is to temporarily modify the makefile to run these tests as part of presubmit job and check if the tests are passing (and revert the change before merging).
I'd appreciate if someone familiar with the test framework comments on this.

I usually make the temporary changes in the tests.mk as in https://github.com/istio/istio/pull/51872 and test

I usually make the temporary changes in the tests.mk as in #51872 and test

Thanks @kfaseela. Let me give it a try. Hope the timeout configured in the presubmit job is sufficient for running the tests.

@sridhargaddam: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-ds_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-ds

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-ds_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-ds

integ-basic-arm64_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-basic-arm64

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-ds_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-ds

integ-basic-arm64_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-basic-arm64

integ-distroless_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-distroless

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-ds_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-ds

integ-basic-arm64_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-basic-arm64

integ-distroless_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-distroless

integ-ipv6_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-ipv6

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

We seem to be hitting the timeout while running some tests.
panic: test timed out after 30m0s
running tests:
	TestImagePullPolicyWithHTTP (4m43s)
	TestImagePullPolicyWithHTTP/HTTP_upstream_is_upgraded_to_0.0.2,_but_0.0.1_is_already_present_and_policy_is_IfNotPresent (1m23s)
goroutine 13322 [running]:
testing.(*M).startAlarm.func1()
	/usr/local/go/src/testing/testing.go:2366 +0x385

I'm also seeing that some of the tests which are marked as failed are working fine locally.
I have used the following command to run the test.
go test -p 1 -tags=integ -run TestStatsGatewayServerTCPFilter ./tests/integration/telemetry/api -timeout 30m --log_output_level=tf:debug -v --istio.test.work_dir=out/darwin_amd64 --istio.test.hub=gcr.io/istio-testing  --istio.test.tag=latest --istio.test.skipWorkloads=tproxy,vm,proxyless --istio.test.enableDualStack=true
...
<SNIP>
...
2024-07-07T15:21:02.366940Z	info	tf	=== SUCCEEDED: Cleanup Istio in 150.558378ms [Suite=telemetry_api] ===
2024-07-07T15:21:02.366960Z	debug	tf	Cleanup complete for resource [suite(telemetry_api)]/[*istio.istioImpl]
2024-07-07T15:21:02.366964Z	debug	tf	Done cleaning up scope: [suite(telemetry_api)]
ok  	istio.io/istio/tests/integration/telemetry/api	78.784s

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-ds_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-ds

integ-basic-arm64_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-basic-arm64

integ-distroless_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-distroless

integ-ipv6_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-ipv6

unit-tests-arm64_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test unit-tests-arm64

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-basic-arm64_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-basic-arm64

integ-distroless_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-distroless

integ-ipv6_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-ipv6

unit-tests-arm64_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test unit-tests-arm64

integ-ds_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-ds

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-basic-arm64_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-basic-arm64

integ-distroless_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-distroless

unit-tests-arm64_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test unit-tests-arm64

integ-ds_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-ds

integ-ipv6_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-ipv6

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-basic-arm64_istio
e464727f9f8b744a9004e65701b37adcfbb1a7b4
link
true
/test integ-basic-arm64

unit-tests-arm64_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test unit-tests-arm64

integ-ds_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-ds

integ-ipv6_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-ipv6

integ-distroless_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-distroless

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test unit-tests-arm64

integ-ds_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-ds

integ-ipv6_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-ipv6

integ-distroless_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-distroless

integ-basic-arm64_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-basic-arm64

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-ipv6_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-ipv6

integ-distroless_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-distroless

integ-basic-arm64_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-basic-arm64

integ-ds_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-ds

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-distroless_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-distroless

integ-basic-arm64_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-basic-arm64

integ-ds_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-ds

integ-ipv6_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-ipv6

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-distroless_istio
b328b2dcb6cfadfe2599faed93d96a455ba6a587
link
true
/test integ-distroless

integ-ds_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-ds

integ-ipv6_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-ipv6

integ-basic-arm64_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-basic-arm64

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

@sridhargaddam: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-ds_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-ds

integ-ipv6_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-ipv6

integ-basic-arm64_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-basic-arm64

integ-distroless_istio
211c30728989741a07b92527e346d345f73b3f94
link
true
/test integ-distroless

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

/test integ-ds

Good news @kfaseela/@jacob-delgado, as you can see all the integration tests have passed now. Shall I revert the temporary changes in prow/lib.sh and tests.mk and get the PR merged?

LGTM with the change reverted

LGTM with the change reverted

Thanks @howardjohn. Reverted the temporary changes.


F1-F12 keys support

I have opened this issue so you can to answer  for use of the F1 to F12 keys. Thank you.
When pressing the function keys F1-F12, instead of sending the standard escape sequence back to the server, WebTerminal sends the keyboard code of this key. Instead, the next table should be applied when using F1-F12 keys:
F1  ^[OP
F2  ^[OQ
F3  ^[OR
F4  ^[OS
F5  ^[[15~
F6  ^[[17~
F7  ^[[18~
F8  ^[[19~
F9  ^[[20~
F10 ^[[21~
F11 ^[[23~
F12 ^[[24~

Source

@jcorbalan, thanks for opening the issue.
I have edited the issue so it now contains technical details to be implemented. Please confirm that this is correct.

yes, it's correct.

@jcorbalan, one more fact I need to realize, does your terminal application work with Caché TERM? Maybe you use SSH clients like Putty to work with it. I cannot find out how to read the function keys in Caché TERM with one of these:
read *char
read string

If you have any suggestions, please comment. Thanks!

No, I work with TUN PLUS 2016 http://www.esker.com/host-access-software/tun.asp

The same problem is with arrow keys, don't work in webterminal, it's necesary
Reset	Set
up	 EscA	EscOA
down EscB       EscOB
right	 EscC	EscOC
left	EscD 	EscOD

I understood, thank you very much for clarifying this. I will get back in 1-2 days to this issue implementing required escape sequences, and then asking you to test the results (as I don't know any open solutions on M/COS languages to test this on).

OK, No problem, i test it.
Another drawback are the graphic character, you can see here:
http://www.theasciicode.com.ar/extended-ascii-code/graphic-character-low-density-dotted-ascii-code-176.html
they are the characteres from 176 to 223 . Now they are not shown in webterminal.
The sequence of escape necessary to activate or deactivate them is Esc(0	Esc)0 that Set G0 special chars. & line.
Please, yo can see :  http://ascii-table.com/ansi-escape-sequences-vt-100.php

Thanks! The idea is clear for now, let's deal first with function keys.

You can use this command in TERM:, to get the value of the PF key pressed, which will be stored in the variable PF.
READ E9#10
SET PF=$S($T=0:1,$ZB?.N:$ZB\256-31,$E($ZB,4)'=""&($A($ZB,4)'=126):$S($A($ZB,4)-49<5:$A($ZB,4)-39,1:$A($ZB,4)-49),$E($ZB,3)'="":$A($ZB,3)-79,1:-31)

OK, @jcorbalan, you are welcome to test function and arrow keys support. Please install the attached WebTerminal version (it is not released yet). Here are the key mappings. They work as follows: both read *c and read c commands take mapped escape sequence to the variable c.
However, I haven't been able to

get the value of the PF key pressed, which will be stored in the variable PF.

in Caché TERM. Probably you meant to test it under TUN PLUS 2016? Thanks.
File: WebTerminal-v4.1.4.zip

Does not work, the program shows the characters of the function key that you have pressed, for example if you press F2, it is written "OQ", and nothing should be written

@jcorbalan, I need to figure out how to test this.

READ E9#10
SET PF=$S($T=0:1,$ZB?.N:$ZB\256-31,$E($ZB,4)'=""&($A($ZB,4)'=126):$S($A($ZB,4)-49<5:$A($ZB,4)-39,1:$A($ZB,4)-49),$E($ZB,3)'="":$A($ZB,3)-79,1:-31)

This code does not work in Caché TERM, is it supposed to work there? Or should I use Putty/TUN PLUS 2016/etc to test how it works?

This code works inside a routine, not on the command line
READ E9#10
SET PF=$SELECT($TEST=0:1,$ZB?.N:$ZB\256-31,$EXTRACT($ZB,4)'=""&($ASCII($ZB,4)'=126):$SELECT($ASCII($ZB,4)-49<5:$ASCII($ZB,4)-39,1:$ASCII($ZB,4)-49),$EXTRACT($ZB,3)'="":$ASCII($ZB,3)-79,1:-31)

@jcorbalan, it works as next:

It doesn't return nothing but 1 for all function keys despite you have stated:

You can use this command in TERM:, to get the value of the PF key pressed, which will be stored in the variable PF.

Please try this code
DUCK
I $ZV["M/SQL"!($ZV["ISM")!($ZV["Open M")!($ZV["Cache")  W "Press F' Keys: "
READ E9#10
SET (PF,%PF5)=$SELECT($TEST=0:1,$ZB?.N:$ZB\256-31,$EXTRACT($ZB,4)'=""&($ASCII($ZB,4)'=126):$SELECT($ASCII($ZB,4)-49<5:$ASCII($ZB,4)-39,1:$ASCII($ZB,4)-49),$EXTRACT($ZB,3)'="":$ASCII($ZB,3)-79,1:-31)
write !, "PF: ", PF,!
Q

Thank you!
I have found the problem: variable $ZB not changing in WebTerminal, whether in Caché TERM it changes:
USER>read A#9 zw $ZB
$c(27)_"OS"

(Caché TERM)
Let me find out how to make it work...


Added way to remove filters from channel stack builder

This would allow different implementations of the same plugin filter (as indicated by using the same filter name) to be registered. Plugin init function are able to remove pre-existing versions of the filter (as determined by having the same filter name) as part of their registration process.

[trickle] No significant performance differences

[microbenchmarks] No significant performance differences

[trickle] No significant performance differences

[microbenchmarks] Performance differences noted:
Benchmark                                                                                atm_cas_per_iteration    cpu_time    real_time
----------------------------------------------------------------------------------------  -----------------------  ----------  -----------
BM_PumpStreamClientToServer<InProcess>/256k                                                                        -4%
BM_PumpStreamServerToClient<InProcess>/256k                                               -4%
BM_PumpStreamServerToClient<InProcess>/32k                                                                         -5%         -5%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/32k/1                                                    +7%         +8%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/32k/2                                                    +10%        +11%
BM_StreamingPingPong<InProcessCHTTP2, NoOpMutator, NoOpMutator>/32k/2                                              +6%         +6%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/256k/1                                                +8%         +8%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/32k/2                                                 +19%        +18%
BM_StreamingPingPong<MinInProcessCHTTP2, NoOpMutator, NoOpMutator>/32k/2                                           +4%         +4%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/256k                                                 +10%        +10%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/32k                                                  +17%        +17%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/2M                                                +8%         +8%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/32k                                               +24%        +24%
BM_StreamingPingPongMsgs<MinInProcessCHTTP2, NoOpMutator, NoOpMutator>/32k                                         +9%         +9%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/256k/1/1                                +4%         +4%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/256k/2/1                                +8%         +8%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/32k/1/0                                 +10%        +9%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/32k/1/1                                 +7%         +8%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/32k/2/0                                 +6%         +6%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/32k/2/1                                 +18%        +18%
BM_StreamingPingPongWithCoalescingApi<InProcessCHTTP2, NoOpMutator, NoOpMutator>/32k/2/0                           +5%         +5%
BM_StreamingPingPongWithCoalescingApi<InProcessCHTTP2, NoOpMutator, NoOpMutator>/32k/2/1                           +5%         +5%
BM_StreamingPingPongWithCoalescingApi<MinInProcess, NoOpMutator, NoOpMutator>/256k/1/0                             +5%         +5%
BM_StreamingPingPongWithCoalescingApi<MinInProcess, NoOpMutator, NoOpMutator>/32k/2/0                              +12%        +12%
BM_StreamingPingPongWithCoalescingApi<MinInProcess, NoOpMutator, NoOpMutator>/32k/2/1                              +4%         +4%
BM_UnaryPingPong<InProcess, NoOpMutator, NoOpMutator>/0/256k                                                       -5%         -5%
BM_UnaryPingPong<InProcess, NoOpMutator, NoOpMutator>/256k/256k                                                    -6%         -6%
BM_UnaryPingPong<MinInProcess, NoOpMutator, NoOpMutator>/256k/0                                                    -5%         -5%
BM_UnaryPingPong<MinInProcess, NoOpMutator, NoOpMutator>/32k/0                                                     -6%         -6%

@markdroth I've implemented one of your suggestions.


Improve handling of memory coefficients

This PR improves the handling of estimated memory coefficients by resolving two special cases:

If the very first standard in the first block has more injections than any other standard in this block, the resulting additional memory coefficients, being all NA, are removed from the data frame of memory coefficients to prevent error in the memory correction application.
If any normal sample or non-block1 standard is injected more often than estimated mean memory coefficients are available, the estimated mean coefficients are padded with 1 to ensure enough coefficients for all samples.

This closes #38 and #39.

@twollnik Could you please have a look over the changes to see if you are fine with the changes and whether one could improve the code?

@twollnik Thanks a lot for your code review and the suggested changes! It did not discourage me at all but instead helped me to improve my coding in general (and added some more work :)).
Please have a look over the new changes to see if you agree with them.

Looks good to me :+1:. Let's get this merged :)


Stock suggestion

Display top 3 stocks that the system predicts to be successful in the future and suggest to the users to pay attention.

Added the top ten stocks based on the performance in the last 30 days


[Bug]: Report workflow loads the component yaml with wrong URL for dashboards.

Describe the bug
Report workflow loads the component yaml with wrong URL for dashboards so none of the info was shown in the test-report manifest.
https://build.ci.opensearch.org/job/integ-test-opensearch-dashboards/3746/console
Error context:
2023-08-24 03:50:06 INFO     ./test.sh integ-test manifests/2.10.0/opensearch-dashboards-2.10.0-test.yml --paths opensearch=https://ci.opensearch.org/ci/dbc/distribution-build-opensearch/2.10.0/8278/linux/arm64/tar opensearch-dashboards=https://ci.opensearch.org/ci/dbc/distribution-build-opensearch-dashboards/2.10.0/6450/linux/arm64/tar --component alertingDashboards
2023-08-24 03:50:06 INFO     Configs for alertingDashboards on integ-test are ['with-security', 'without-security']
2023-08-24 03:50:06 INFO     Loading https://ci.opensearch.org/ci/dbc/integ-test-opensearch-dashboards/2.10.0/8278/linux/arm64/tar/test-results/3746/integ-test/alertingDashboards/with-security/alertingDashboards.yml
2023-08-24 03:50:06 INFO     Component yml file for alertingDashboards for with-security is missing or the base path is incorrect.

The correct component yml URL should be https://ci.opensearch.org/ci/dbc/integ-test-opensearch-dashboards/2.10.0/6450/linux/arm64/tar/test-results/3746/integ-test/alertingDashboards/with-security/alertingDashboards.yml. However, the current workflow uses the build ID from the OpenSearch bundle instead of Dashboards.
To reproduce
Running https://build.ci.opensearch.org/job/integ-test-opensearch-dashboards and see the test-report manifest it creates.
Expected behavior
No response
Screenshots
If applicable, add screenshots to help explain your problem.
Host / Environment
No response
Additional context
No response
Relevant log output
No response

The fix PR in our build library repo is merged. We will be updating the integ test jenkinsfile in this build repo to accommodate this change.


Update install-kumactl.md

Incorrect folder name for kong-mesh
kuma is mentioned in the enterprise docs instead of kong-mesh and the copy paste wont work
addressed failed command by replacing kuma with kong-mesh
Did you sign your commit? Instructions. yes
Have you read Contributing guidelines?
yes

Sorry, it's still wrong, needs to be lowercase

superseded by https://github.com/kumahq/kuma-website/pull/1353


Squash long words at window and sentence boundaries.

This PR improves the heuristic to squash long words at window/sentence boundaries.
The previous heuristic squashed any of the first two words of a window if they were too long, since long words at the start tend to indicate words being stretched out to cover silence at the start of the window.
This PR makes the following 3 improvements:

It adds a heuristic to detect long words at sentence boundaries in the middle of the window, and takes these to be indicative of words being stretched to cover silent gaps between sentences. The long boundary words will be squashed appropriately. This prevents many cases where the first word in a sentence comes in seconds too early.
It modifies the original heuristic that squashed any of the first two words if they were long, so that now it won't squash the second word if the first word wasn't also long. This is because the long-ness of a word "mid window" is less significant if it comes after a short word, except at a sentence boundary which is already handled by case 1 above.
If token inference doesn't complete the last sentence in a window, that last sentence might be discarded and then timestamp alignment may come up with a super elongated word duration for the last word to cover the span where that last sentence would have been. And since that last word end timestamp determines the start of the next window, a chunk of that last sentence will skipped over. In such cases, we can still get an accurate timestamp for the end of the segment coming from the last timestamp token in the finished sequence. So if the last word of the window is super elongated, and the last timestamp token looks reasonable, we prefer it.

Test example: https://audio2.redcircle.com/episodes/6b196013-8672-43d9-be52-4332b3207d93/stream.mp3
BEFORE
https://user-images.githubusercontent.com/19899190/226097083-c7105150-3b3d-49fb-b29c-e43f0a7eb13a.mp4
AFTER
https://user-images.githubusercontent.com/19899190/226097101-fe8b7495-897f-4600-8f92-969e4d4218b8.mp4
Example of 1. (detecting a gap between sentences mid-window)
In this example, both segments are within the same window. The audio exhibits a 3 second pause between sentences, but the timestamps elongate the first word of the second sentence ("Along") to cover that silence.
Before:
49
00:00:28,860 --> 00:00:30,100
and unapologetic.

50
00:00:30,100 --> 00:00:33,660
Along with co-host Matt and various guests of The 69 Whiskey Army, this dynamic group

After:
49
00:00:28,860 --> 00:00:29,620
and unapologetic.

50
00:00:32,900 --> 00:00:33,660
Along with co-host Matt and various guests of The 69 Whiskey Army, this dynamic group

Example of 2. (first 2 words of a window incorrectly classified as long)
In this example, the second segment starts a new window. However, the second word of this window ("unapologetic") is naturally long while the word before it ("and") is short, so it is incorrectly classified by the heuristic. As a result, "and apologetic" gets transported 1.5 seconds into the future after squashing.
Before:
46
00:00:26,580 --> 00:00:27,180
A show once restrained by rules and boundaries now comes straight to you raw, uncensored

47
00:00:28,580 --> 00:00:29,340
and unapologetic.

48
00:00:29,340 --> 00:00:28,860
and unapologetic.

49
00:00:28,860 --> 00:00:30,100
and unapologetic.

50
00:00:30,100 --> 00:00:33,660
Along with co-host Matt and various guests of The 69 Whiskey Army, this dynamic group

After:
46
00:00:26,580 --> 00:00:27,180
A show once restrained by rules and boundaries now comes straight to you raw, uncensored

47
00:00:27,180 --> 00:00:27,480
and unapologetic.

48
00:00:27,480 --> 00:00:28,860
and unapologetic.

49
00:00:28,860 --> 00:00:29,620
and unapologetic.

50
00:00:32,900 --> 00:00:33,660
Along with co-host Matt and various guests of The 69 Whiskey Army, this dynamic group

It's a minor change to the original heuristic but I didn't want to modify it too much since I didn't have the original test cases that may have inspired it. My inclination would have been to get rid of it and just generalise (1) to handle both sentence and window boundaries the same way since I have never seen a case where the first TWO words were both elongated, I've only seen the words immediately touching a boundary become elongated (at least since the introduction of the new word-level timestamps feature).
So I've left this in there for now, and if you had test cases where the first two words were elongated, you might be able to come back to this point.
Example of 3. (end of window being skipped and last word incorrectly elongated)
In this example, the second segment starts a new window. At the end of the first window, the word "you're" is elongated to almost 4 seconds which masks words "going to need to understand because" from the original audio which we never see transcribed - they are skipped over because the next window starts too late.
Before:
1244
00:07:47,980 --> 00:07:51,340
and girls, these are all the things your parents didn't want you to understand about, but you're

1245
00:07:54,800 --> 00:07:55,280
okay.

After:
1245
00:07:47,980 --> 00:07:48,360
and girls, these are all the things your parents didn't want you to understand about, but you're

1246
00:07:48,360 --> 00:07:48,520
going to need to understand because it's okay.

So I've left this in there for now, and if you had test cases where the first two words were elongated, you might be able to come back to this point.

I've converted this PR to a draft, because I think case 2 (i.e. the original heuristic) probably should be improved further. It looks like it could make the 2nd and 3rd word of a window overlap. And it also looks like it is still susceptible to transporting the first two words a long distance if the 3rd word of a window begins a new sentence.

From the original heuristic, start_time[1] could be shifted right beyond both end_time[1] and start_time[2]:
        if len(word_durations) >= 2 and word_durations[1] > max_duration:
            boundary = max(end_times[2] / 2, end_times[2] - max_duration)
            end_times[0] = start_times[1] = boundary

I think that was supposed to be:
        if len(word_durations) >= 2 and word_durations[1] > max_duration:
            boundary = max(end_times[1] / 2, end_times[1] - max_duration)
            end_times[0] = start_times[1] = boundary

I fixed the above issue and a similar issue, and so I've now removed the draft status of the PR.

Hi Ryan, I tried your improvements, and they work really well. However, I wanted to ask you could tell me how did you get the subtitles with the underlines highlighting the words, because passing the srt file right away to moviepy shows the  tag instead of underlining the words. I thought it was due to the font I was using but it was not.

Thanks, @seba-aguila . To generate the video above, I used:
ffmpeg -f lavfi -i color=size=720x120:rate=25:color=black -i input.mp3 -vf "subtitles=input.srt:force_style='Fontsize=70'" -shortest output.mp4


More Right-click actions

[x] Right-clicking, if it's going to hilite a file, should also load it
[x] Delete default should be delete.
[x] Open parent folder
[ ] Relocate/Move

If right-click is going to hilight a document in the list, it should also load/display it.

Perhaps instead of shift-clicking, we should implement the selection checkboxes.
If we do, the very left should be the checkbox.  The fold/unfold icons can be further in.

Parent folder
2b898f125b8dbdd853a114f94e25a4cab7ee14c9


Add target option to define.alias

This allows define.alias to be used with args similar to constructing
symlinks which makes it more intuitive and less verbose.
In other words, instead of:
define('bar', define.alias('foo'));

You can simply do:
define.alias('foo', 'bar');

@rwjblue good catch

Added a priming step.

released as v4.4.0 🎉


Test repeats

Wrote test cases and logic for methods to determine number of repeats of a given length in a sequence, maximum occurence of repeats in a sequence, total occurences in mutiple sequences.

CI Build failed due to linting issues. Please fix.


Fix accessibility issues raised by accessibility evaluation

In all pages there is no "skip to main content" link at the to of the page

Text on the homepage article "parent section" does not have sufficient color contrast ratio

Language selector is not keyboard accessible

Order of columns in navigation is different than visual order

The form is not accessible. The screen reader is not able to announce its title and the question goes directly to the combo box. https://www.internetofgoodthings.org/en/sections/covid-19/

Most links start with ‘Greater Greater’ when using the screen reader. https://www.internetofgoodthings.org/en/footers/use-internet-good-things-free-data-charges/ (this may be limited to Footer Pages or markdown blocks)

Decorative images repeat the same text as image alternative text.

Headings are not keyboard focusable. Identified on https://kindweb.org/en/footers/emergency-numbers/, which uses a markdown block for the headers, but I'm not sure whether the Paragraph blocks have focusable headers

Here is an example of "skip to main content": https://webaim.org/, press tab on keyboard to show the first navigation element.
We could enable this using JS, which ideally would mean that it doesn't appear on feature phones which mostly won't have screen reading capabilities (need to confirm?)


Add tests to assert correct behaviour ...

... and attempt to reproduce potential panic on lock
This first of all offers some unit tests if so desired by tendermint; while there is no CI set up, locally these tests all pass.
The first 6 tests assert normal behaviour:

TestStartEventSwitch
TestAddListenerForEvent
TestAddListenerForMultipleEvents
TestAddListenerForDifferentEvents
TestAddDifferentListenerForDifferentEvents
TestAddAndRemoveListenerForEvents

The seventh test is an attempt to recreate in a reproducible manner the reported crash when removing listeners under some load

TestRemoveListenersAsync
This test also passes, and does not seem to cause a runtime error.

It should be noted that this demonstrates:

that these tests assert good behaviour of go-events, and do not expose unknown bugs
that I have so far failed to reproduce the reported behaviour in these unit tests
It does not disprove the reported bug in https://github.com/eris-ltd/eris-db/issues/143

@ebuchman: you do not have to merge this; for the purpose of unit tests, the tests can be condensed
@dennismckinnon: I will need to move closer to the reported conditions to try to reproduce the bug.
PS: as I write this I realise that the version vendored in eris-db, where the bug was reported, is not necessarily the up-to-date version against which these test have been run.  That can be another assertion to make.

02:41 $ go test -race
INFO[06-17|02:42:22] Starting EventSwitch                     module=events impl=EventSwitch
INFO[06-17|02:42:22] Starting EventSwitch                     module=events impl=EventSwitch
INFO[06-17|02:42:22] Starting EventSwitch                     module=events impl=EventSwitch
INFO[06-17|02:42:22] Starting EventSwitch                     module=events impl=EventSwitch
INFO[06-17|02:42:22] Starting EventSwitch                     module=events impl=EventSwitch
INFO[06-17|02:42:22] Starting EventSwitch                     module=events impl=EventSwitch
INFO[06-17|02:42:22] Starting EventSwitch                     module=events impl=EventSwitch
==================
WARNING: DATA RACE
Read by goroutine 49:
  runtime.mapaccess1_faststr()
      /tmp/workdir/go/src/runtime/hashmap_fast.go:179 +0x0
  github.com/tendermint/go-events.(*EventSwitch).RemoveListener()
      /home/bbollen/golang/src/github.com/tendermint/go-events/events.go:76 +0xb5

Previous write by goroutine 43:
  runtime.mapdelete()
      /tmp/workdir/go/src/runtime/hashmap.go:511 +0x0
  github.com/tendermint/go-events.(*EventSwitch).RemoveListener()
      /home/bbollen/golang/src/github.com/tendermint/go-events/events.go:77 +0x13a

Goroutine 49 (running) created at:
  github.com/tendermint/go-events.TestRemoveListenersAsync.func11()
      /home/bbollen/golang/src/github.com/tendermint/go-events/events_test.go:403 +0x271

Goroutine 43 (finished) created at:
  github.com/tendermint/go-events.TestRemoveListenersAsync.func11()
      /home/bbollen/golang/src/github.com/tendermint/go-events/events_test.go:403 +0x271
==================
PASS
Found 1 data race(s)
exit status 66
FAIL	github.com/tendermint/go-events	1.112s

After these discussion, the work has been pushed on a cleaned up branch in #3; where the first commit introduces the unit tests, taking the above discussions into account. In a second commit the race condition is addressed.  As the git history was rebased, I have pushed it to a new branch abondoning this PR.


Support modules using PackageImports

Currently gazelle_haskell_modules ignores package imports as implemented in GHC with -XPackageImports. If two modules with the same module name are available, gazelle_haskell_modules complains of an ambiguity when resolving dependencies.
We could address this by collecting both the name of imported modules and the name of the package they are expected to come from.

This has been implemented in #15


Prototyping with Fedora CoreOS kernel

Opening this one for discussion based on Discord. Currently it only contains just copy/paste config from Fedora CoreOS 33.20210314.3.0 which is similar container OS than BurmillaOS but which focuses to Podman/Kubernetes.

Unfortunately it looks that build fails with those changes.

@ToeiRei btw. how you solved that embed firwmware issue on https://github.com/burmilla/os-kernel/pull/5#issuecomment-761600181 ? Looks that this config comes with same issue so kernel package is huge...

As the kernel is updated quite often, I just compile the firmware in. No need in separate updates.

Yea but how I can avoid it? I see as very useful to be able to drop firmwares from version which is used by virtual machines without need rebuild kernel.

Device Drivers  -> Generic Driver Options -> Firmware loader -> Build named firmware blobs into the kernel binary


Sbatch arguements treated as filepath

Not clear why, breaks any attempt to execute the common crawl example script
2024-02-08 03:42:32.169 | INFO     | datatrove.executor.slurm:launch_job:249 - Launching Slurm job cc_datatrove-test (8000 tasks) with launch script "s3://datatrove-test/base_processing//logs/base_processing/datatrove-test/launch_script.slurm"
Traceback (most recent call last):
  File "/home/ubuntu/dt1.py", line 55, in <module>
    executor.run()
  File "/home/ubuntu/datatrove/src/datatrove/executor/slurm.py", line 169, in run
    self.launch_job()
  File "/home/ubuntu/datatrove/src/datatrove/executor/slurm.py", line 262, in launch_job
    self.job_id = launch_slurm_job(launch_file_contents, *args)
  File "/home/ubuntu/datatrove/src/datatrove/executor/slurm.py", line 349, in launch_slurm_job
    return subprocess.check_output(["sbatch", *args, f.name]).decode("utf-8").split()[-1]
  File "/usr/lib/python3.10/subprocess.py", line 421, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/usr/lib/python3.10/subprocess.py", line 503, in run
    with Popen(*popenargs, **kwargs) as process:
  File "/usr/lib/python3.10/subprocess.py", line 971, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.10/subprocess.py", line 1863, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'sbatch'```

sbatch only appears in slurm.py and is not supplied by the common crawl example script. It appears to be useing the default empty dictionary.

Hi,
sbatch is a command from slurm used to submit jobs. Are you running the example on a slurm cluster? Is sbatch on your path?


Current LSP backend is not compositional

It should be noted that autocompletion, semantic tokens, document synchronization, go to definition/declaration, find references, hover, etc. are all out of the scope of asai. The current LSP backend is exclusive and makes it difficult to create an LSP server that has error reporting and other features. This has to be changed.

After having implemented quite a few LSP features I can give some feedback on this.
In a nutshell, I don't know what a compositional asai lsp handler would look like. Any serious language server implementation would need to do so much custom stuff that I don't know if it makes sense for the asai library to contain the main loop. I think that asai should ship with the Lsp_shims module (probably renamed) and provide useful handler combinators for fine-grained accumulation and reporting of diagnostics, see #185, #186.
Now granted, the current lsp implementation contains a lot of useful code, but I think it makes sense to publish this separately. Lsp_eio would be extremely handy even outside of asai. This repository could then contain an example lsp implementation shows how to use this hypothetical lsp library together with the diagnostic capabilities of asai. I think this would be a valuable resource for language implementers, whether they use asai or not!

For some context: the original design I had for Asai had it tracking arbitrary source-span related information, not just diagnostics. The idea was the Reporter would always know your current source location, so you could handle things like identifier references/type information/semantic tokens/diagnostics/etc all with the same machinery.

One possible point in the design space is to factor out the Range machinery into its own package, along with a glorified Reader effect that lets you track the current span. You could then have a zoo of packages for each individual language "feature" (identifier references, etc).
Tying it all back into an LSP server would be tricky though. I see a couple of options:

Have a big LSP package that provides handlers for all the per-feature libraries. Note that this requires us to depend on the whole zoo.
Have an lsp-eio-core package that creates effects on a per-message basis, and then provide libraries that act as a sort of mixin system. The dream code is something like

Lsp_core.default_handlers @@ fun () -> (* Big effect handler that ignores all messages we haven't handled already *)
Lsp_declarations.handle_hover @@ fun () ->
Lsp_identifiers.handle_goto_definition @@ fun () ->
Lsp_asai.handle_diagnostics @@ fun () ->
Lsp_core.run_event_loop
  ... (* All the stuff that actually does file loading etc goes here *)

The idea was the Reporter would always know your current source location, so you could handle things like identifier references/type information/semantic tokens/diagnostics/etc all with the same machinery.

In that case, I think that this goal has (to some extent) been achieved. We keep track of location info up until the final phase of compilation, and it allows me to write, say, a document symbols handler like this:
https://git.sr.ht/~jonsterling/ocaml-forester/tree/82ef7b96419e41776fdb58b083682a845df5c754/item/lib/language_server/Document_symbols.ml
https://asciinema.org/a/N0HQ0dVWpbisUrsZggdjxYncI


Rabbit mq

Merging RabbitMQ library, sample application and unit tests in the feature/dotnet

 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.barkha.shah seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.

I'm going to merge this in, we may or may not keep the two sample applications. We'll have to think about it. Everything else looks good :) Thank you!!!!!!!!

Thank you for your contribution. It's greatly appreciated! Do you know if there is a good way to setup rabbit mq on appveyor so we can get the tests running?

I just found this https://gist.github.com/FeodorFitsner/06b377df42ba8f398909 looks like we just need to put that script in the tools folder and call it next to our appveyor script for installing redis.. Would you mind doing that?

I'll merge this in and install the script, will only take me a minute :)

Everything has been merged, tested and deployed Thanks a bunch! I had one last question...

        private void CloseConnection() {
            if (_publisherClient != null && _publisherClient.IsOpen)
                _publisherClient.Close();
            if (_subscriberClient != null && _subscriberClient.IsOpen)
                _subscriberClient.Close();

            if (_lock != null) {
                using (_lock.Lock())
                    _publisherChannel?.Abort();
            }

            _subscriberChannel?.Abort();
        }

Any reason for locking publisher channel? Why not the subscriber channel. I would of thought channels would need to be closed before clients... Is this correct? You are constructing the channels from the client but disposing of them the opposite way.

@niemyjski - Actually as per the RabbitMQ documentation, channel should not be shared across the threads. I only locked publisher channel because publishing messages from the multiple threads of the same process is very likely compared to subscribing the event on every thread. We subscribe only once , however, we can publish as many times on the same process. Please let me know if I am wrong in thinking here or suggest me if you see any other possibility where we can subscribe on the same channel on different threads.

I would of thought channels would need to be closed before clients... Is this correct?
I agree. Channel should be closed first and then client connections :+1:
I will go ahead and make this change.

@barkhashah also, I noticed that Rabbit supports delayed messages. So we should use that instead of the timer based in memory delay since that has the potential to lose messages.


Does not support React v16.8+

Describe the bug
The docs say this library supports React v16.8+ (https://tanstack.com/router/v1/docs/installation).  However, when trying to run the basic example on React v17, the page crashes. This is because useTransition is a React v18 API.
Your Example Website or App
https://stackblitz.com/edit/github-czdpyf?file=src%2Fmain.tsx
Steps to Reproduce the Bug or Issue
Run the quickstart example on React < v18
Expected behavior
The example app should work on React v16.8+
Screenshots or Videos

Platform

OS: macOS
Browser: e.g. Chrome
Version: 120.0.6099.129

Additional context
No response

Can you check this again on the latest version?

In my testing, everything seems to work great!

I faced same issuse with "react": "^17.0.2"

Facing the same issue with "react": "^17.0.2" and "@tanstack/react-router": "^1.31.26"

@tannerlinsley  This is still an issue on the latest version, can this be reopened and looked at? I'm investigating switching routers but it's a pretty big blocker for me at the moment...

"react": "17.0.2",
"@tanstack/react-router": "1.40.0"

It doesn't work for react v16 & v17 since version v1.27


CORS Support for messaging-api-wechat

HI,
I am having the No 'Access-Control-Allow-Origin' header is present on the requested resource.
How to add the header in it?
Thank you
Here is the full error
Failed to load https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=xxxxxxxxxxx&secret=xxxxxxxxxxxx: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8081' is therefore not allowed access.

The header is controlled by WeChat server, we can't change that.
You should call these API on server side, not in browser.

As what @tw0517tw said, messaging-api-wechat is a package to run on node.js server, so you should never call  https://api.weixin.qq.com/ using messaging-api-wechat in the browser.


Fixed shared cache race on import

Make sure cache is updated under impror lock so that the best block info is always consistent.
is_best functor was checked under cache lock, which was supposed to guarantee consistency. But in reality it does not, because cache is also updated when validating transactions outside of import lock. So this is removed.
Changed import lock to be Rwlock instead of Mutex for extra performance.

LGTM. Probably this comment must be updated as well, because Backend actually acquires the lock itself starting from this PR. Also maybe worth mentioning that no states should be destroyed when import lock is held (this seems a bit fragile)?

Good point. It would be better to lock it outside.


Checkbox on Grid with values 0/1

Hi Vit,
First of all, great job. Now the problem I have, I am currently working with a Grid and i have a checkbox and works only with true and false, and actually my DB works with "0" / "1" . Is there any chance i can change the way it works?
Hope my question is understandable. Thank you

Please do not submit questions here. Only bug reports. All questions to stackoverflow or as comments on w2ui.com


chore: bump version

Bumped the version of the package following breaking changes in the API brought by #209

ah, good to know! Indeed it makes sense. Should the virtual workspace have no version at all?

Hmm, I always thought it has to, but it would make sense not to have it there 🤔 Summoning @mkaput to teach us the way 🙏

Frankly? It's actually entirely up to maintainers 😅
We're identical to Rust in this arena, so there are three possibilities and I'll use Rust projects as examples:

Each package has its own version that can be unsynchronized (that's what Tokio and Gitoxide do).
You define workspace.package.version and then share this version with all workspace members (that's what's happening in Cairo repository).
You mix both approaches (that's for example what Scarb repo itself does).

IMO, what path you choose depends on the level of coupling of workspace members, and what release strategy you have. In the case of Alexandria, I think the level of coupling is low enough that @milancermak's suggestion makes sense.
 Also, you have to manage a bit more Git tags, etc.


is it possible to edit a node's value or focusing on corresponding  json node on the editore?

After viewing a json file,  I want to edit some values So, I 'm looking for a way to focus on corresponding node on the editore or some window pupping out and I can enter new value.
How can I do this?
Thanks

Please refer test this in pre-release (https://github.com/NPP-JSONViewer/JSON-Viewer/releases/tag/v<IP_ADDRESS>) and provide feedback if any.

Please test this in pre-release (https://github.com/NPP-JSONViewer/JSON-Viewer/releases/tag/v<IP_ADDRESS>) and provide feedback if any.


Certificate renewal is not every 90 days but every 60 days.

This page (https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/perf-test/perfsdk-multi-user-testing) mention that self-service environment will see their certificate update by rotation about every 90 days. This is not accurate the timing between the automated renewal of certificates is about every 60 days. You may confirm this with the team, but I have done so already and believe is is safe to change the mentioned 90 days to 60 days.
This documentation page is owned by the performance team as part of PerfSDK documentation.

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

ID: f0b04519-4802-eaaa-c5ed-b13e8979d36d
Version Independent ID: a4ebe802-e7fd-fd99-00a1-aa0ebf8fcb48
Content: Run multi-user testing by using the Performance SDK - Finance & Operations | Dynamics 365
Content Source: articles/fin-ops-core/dev-itpro/perf-test/perfsdk-multi-user-testing.md
Service: dynamics-365-cross-app
GitHub Login: @kennysaelen
Microsoft Alias: kesaelen

@FrankDahl , thanks for letting us know.
@tonyafehr, Frank is PM for SCM. Looks like he has already verified his input, so I think it's safe to implement it.

@tonyafehr , I went ahead and implemented this as Frank suggested and closed this issue.


sway: Switch to 1.0

First commit (moves sway-beta to sway)
This is the result of executing:
git mv -f pkgs/applications/window-managers/sway/beta.nix pkgs/applications/window-managers/sway/default.nix
git mv -f nixos/modules/programs/sway-beta.nix nixos/modules/programs/sway.nix
And removing sway-beta from the following files:
pkgs/top-level/all-packages.nix
nixos/modules/module-list.nix
Second commit (manual changes)
Can be squashed later.
TODOs

[ ] Compare modules. Do we need a changelog entry?

sway-beta introduced a package option.
The new module does not need any capabilities anymore and drops the sway group.
The keymap may now be specified withing Sway's configuration file (TODO: Does XKB_DEFAULT_*  and WLC_REPEAT_* still work?)
We've removed i3status by default, this can break setups.
swaylock and swayidle are now separate packages.

[ ] Backport to 19.03.
[ ] Test different setups / collect feedback - are our current defaults ok?
[ ] Wait for an official patch to fix the build.
[x] cc @gnidorah @Synthetica9 @colemickens

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Cool! Thank you!

A few things could still be improved/discussed but this should be ready now.

Please resolve the merge conflict.

Just wanted to avoid rebasing for now (that did not cause any conflicts because the relevant commit was already in my branch, not sure why automatic merging fails) because it makes reviewing the changes through GitHub harder (IMO). But it's ready to be merged via GitHub now and I've also squashed some commits (keeping two separate commits makes sense IMO to keep the history readable). The only final change was to drop the package option for now (I did not test this change yet but I can do this tomorrow if no one beats me to it).

I decided to merge it so that we have enough time to test it with different setups and get some feeback (I'm currently testing the backport for 19.03 and will hopefully be able to merge it soon).
I've opened #57602 for further discussion, feedback, etc.


Support Database Schema/Migration

For many adaptors, the data can't be sent without the table/schema/etc. already defined in the system. Right now, there's no way to tell transporter to Run X, Y, Z on startup but it should.

The more I've been thinking on this one, I feel like we need the concept of a Schema Registry sort of like what Confluent does with Kafka.


Azure CLI install page information is not correct in zh-cn language.

The version in https://docs.microsoft.com/zh-cn/cli/azure/install-azure-cli?view=azure-cli-latest
and https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest are not the same.

@Juliehzl Thank you very much for bringing this to our attention. I have assigned the issue to the content author to evaluate and update as appropriate.

@juliehzl, our Microsoft docs language translation team has informed me that this has been corrected.  Thank you very much for bringing this to our attention.


Rework the NLU training data page

We should rewrite that to use markdown examples for most of the features -- right now it uses json, which is very strange.
I think ideally we could have an element where you can switch from markdown to json, but the primary one should be markdown
https://rasa.com/docs/rasa/nlu/training-data-format/

@msamogh this also covers any general improvements that you think could be made to the page

@msamogh we talked about having examples of both json and markdown - and being able to switch between them, what happened to that?

For now, I've just replaced them with Markdown. I'm guessing the switching component would need a separate extension, so I didn't look at it right away. But I found some examples here that we could try out - https://sublime-and-sphinx-guide.readthedocs.io/en/latest/code_blocks.html.

@msamogh good find -- would be cool if you could try it out, doesn't look like it'll even need any updates to rasabaster. but feel free to ask me if you run into trouble with sphinx

Ok I'm not really sure having only markdown is that great, we should look into fully reworking the page, not just making a quick fix

so let's look into adding this kind of component


Business VR platform meaning is vague

"AltspaceVR will turn into a business VR platform" isn't very descriptive
Currently one might visit AltspaceVR and build their business model accordingly, as it also provides a social atmosphere that allows other users to engage with providers with minimal effort
What does a business VR platform offer? Will businesses need to change to keep up with this transformation?

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

ID: a7f2cd55-ee7f-ffb2-d991-1835f02acf20
Version Independent ID: 6d482315-c30e-0ce4-29c0-0195c2edfbd2
Content: AltspaceVR overview - AltspaceVR
Content Source: altspace-vr/overview.md
Product: mixed-reality
GitHub Login: @qianw211
Microsoft Alias: v-qianwen

Hi @stephenc87,

Mesh will be the business platform once it is released.
Complete the Microsoft Mesh Register Interest form to stay up to date with Mesh news and announcements: https://aka.ms/meshsignup

Best regards,
Qian


Review "splashkit camera" guide

A tutorial review of this tutorial has been completed. You have run the code in this tutorial to ensure that it works properly and outputs the results. Fixed an issue in Python code where the wrong number of parameters were passed when fill_rectangle() was called, removed extra parameters, made sure that C# used a top-level statement style, and made sure that the style was consistent with other languages, changed some text descriptions to more clearly express the relationship between game coordinates and screen coordinates, And how to achieve dynamic effects through camera movement.

Good job on this tutorial review and mentioning the fixes you've made on this tutorial.


Enhancement in Admin Panel

Deliverable:

[ ] For Dashboard, please do the following -

Remove the count data
Make the icons a bit bigger
Make the content font a bit bigger(16px maybe)
The card should contain only heading and content

[ ] The Profile section has got distorted, please fix it

P.S - If you can come up with a better UI for profile section, would be happy to give you bonus points :)

I would like to work on this too

I would like to work on this too

Sure @LeeRenJie Go ahead!
Happy learning :)


[BEAM-559] Support for @Setup and @Teardown in DoFnTester

To allow testing DoFn reuse, adds a third cloning mode - CLONE_ONCE. The current CLONE is renamed to CLONE_PER_BUNDLE because it corresponds to the olden ways of DoFnTester. This rename should be harmless because it was the default, so probably nobody uses it (nobody uses it in the Beam codebase anyway), but I can rename it back if necessary.
Calls Setup lazily on the first interaction with the fn under test: depending on cloning mode, this is either a per-bundle clone, or the original fn, or a single clone of the original fn.
Calls Teardown either when the DoFnTester is closed, or when finishBundle'ing with CLONE_PER_BUNDLE.
Enforces that you have to configure the DoFnTester (setSideInputs, setCloningBehavior) before using it, to simplify the semantics. Makes setSideInputs consistent with setSideInput(without "s") in not resetting the state.
Allows processing a bundle after processing an element. This used to be disallowed, but it's weird, because processing a bundle after processing a bundle was allowed.

Additionally, improves testing coverage.

R: @tgroh

(driveby: I assigned BEAM-559 to you; can you please add this to PR message?)

Merged based on Thomas' LGTM.

(and I looked at the travis flake, and it's still a flake).


Moving to Edge.js version 5.9.1

We're currently using version 4.0.0 of the Edge.js package (which means we're running Node version 4.1.1). Moving to package version 5.9.1 (which will give us Node version 5.9.1).

:shipit:


netdata: 1.43.0 -> 1.43.2 and add systemd-journal plugin

Description of changes
Add the systemd-journal plugin to netdata >=1.43.2
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Thank you for your PR, can you please follow the CONTRIBUTING guide and rename your commits accordingly?

@ofborg eval

Can you rename the second commit: nixos/services/netdata: add systemd-journald plugin as a privileged wrapper ?
Can you drop in the first commit the reference to default.nix, it bring no useful information, for inspiration, I recommend you to take a look at the git log.
Ideally, also please reference documentation about systemd journal plugin inside the first commit and the second commit, especially to justify the capabilities bits you chose for the journal wrapper.
Thank you!

Hi @RaitoBezarius.
I dropped capability to minimal need and comment them in commit.
I need to update to 1.43.2 has 1.43.0 has issues.
tell me if it's good for you.
And thanks for your advices.

Result of nixpkgs-review pr 264234 run on x86_64-linux 1

2 packages blacklisted:

nixos-install-tools
tests.nixos-functions.nixos-test

3 packages built:

netdata
netdata-go-plugins
netdataCloud

Result of nixpkgs-review pr 264234 run on x86_64-linux 1

1 test built:

nixosTests.netdata


bound function not correct

See here: https://github.com/bluss/rust-itertools/blob/master/src/adaptors.rs#L142
Isn't it missing the case self.phase && a < b?

!self.phase && a > b || (self.phase && a < b) seems correct to me.

It has a quickcheck test here https://github.com/bluss/rust-itertools/blob/master/tests/quick.rs#L306
Can you form a testcase that fails?

I don't know quickcheck well enough at the moment, but check this out:
extern crate itertools;

use itertools::InterleaveShortest;

fn main() {
	let a = vec![1u32, 2u32, 3u32];
	let b = vec![1u32, 2u32, 3u32, 4u32, 5u32, 6u32];
	let mut i = InterleaveShortest::new(a.into_iter(), b.into_iter());
	let x = i.next();
	println!("{:?}", i.size_hint());
}

This prints (4, Some(5)), which in my opinion is not really accurate, I would expect (5, Some(5)).

This produces (5, Some(5)):
        let bound = |a: usize, b: usize| -> Option<usize> {
            use std::cmp::min;
            2usize.checked_mul(min(a, b))
//                .and_then(|lhs| lhs.checked_add(if !self.phase && a > b { 1 } else { 0 }))
                .and_then(|lhs| lhs.checked_add(if  !self.phase && a > b || (self.phase && a < b)  { 1 } else { 0 }))
        };

nice, thanks a lot!


Improve Gw2WebApi service relationship with modules

Makes Gw2WebApi calls async friendly.
Improves logging output for Gw2WebApi service.
Fixes a bug that could accidentally escalate the privileges on the shared anonymous connection.
Stopped creating so many ManagedConnections and instead just keep using the existing one.
Subtokens are requested before modules are told to load so the API should be ready when the module loads (assuming a token could be acquired).
When a token is removed, update all module subtokens to reflect this if they were using the removed token.
Stopped requesting subtokens when we know the privileged connection doesn't have a key to use yet.

@agaertner Do you feel this covers everything left that was needed?  If so, we can likely close #496.

Note that subtokens get invalidated if the parent key is deleted. In this case _activePermissions
still has entries and `HasPermissions`` will return true regardless.
I guess this case falls into failed request task results that have to be caught by the module developer.

That's a pretty great catch.  Let me PR a fix to that so that we don't leave that on the modules to deal with.  Should be a very rare scenario anyways, though (hopefully).


flush privileges operation.

you need to reload the grant tables, and perform a flush-privileges operation after setting the new user.

#hacktoberfest

label:hacktoberfest


The silentSignIn throws 'No state in response'.

The fix was to pass a null url to signinSilentCallback(url), otherwise otherwise, IFrameWindow.notifyParent will not work.


YOUTUBE-DL site in curl download closed by court ruling

Checklist

[x] I'm reporting a broken site support
[x] I've verified that I'm running youtube-dl version 2021.12.17
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar issues including closed ones

Verbose log

PASTE VERBOSE LOG HERE

Description

WRITE DESCRIPTION HERE
The site described in the curl and wget download option has been closed by a court ruling and access is being denied.

https://yt-dl.org/downloads/latest/youtube-dl

As if we didn't know!
Please review #30839 as asked.


High precision model

Hi,
I am a student.
Can I get/use the high precision model for my project in school?
I contacted via https://ai.minivision.cn/#/mainIndex but no response. Do you have an email?
Thanks

@nhathoang0110 could you get the high precision model?

You can follow our method to train your model.


Vault side kick init failing to startup as an init container

Hi, am noticing vault side kick fails to start up when used as an init container. See logs below. Appears to only happen on certain environments and has in the past been fixed by deleting and redeploying the service (multiple times).
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x764092]

goroutine 36 [running]:
main.VaultService.get(0x7fff91a574cd, 0x2c, 0xc42011f340, 0x0, 0x0, 0x0, 0xc420136020, 0x1, 0x1, 0xc4200646c0, ...)
	/home/travis/gopath/src/github.com/UKHomeOffice/vault-sidekick/vault.go:421 +0x13f2
main.(*VaultService).vaultServiceProcessor.func1(0xc420076780)
	/home/travis/gopath/src/github.com/UKHomeOffice/vault-sidekick/vault.go:152 +0x328
created by main.(*VaultService).vaultServiceProcessor
	/home/travis/gopath/src/github.com/UKHomeOffice/vault-sidekick/vault.go:113 +0x3f

Hi @Hazrin84 as discussed this was caused by the vault client receiving a 404 with a nil response body.
Clearly a Segfault is not the appropriate behavior, so we would need to look at what the correct behavior should be under these circumstances. At the minimum it should be exiting with with a meaningful error.

Hi @Hazrin84 are you able to find why you are getting this error? I am able to run side kick if I don't specify secrets to be mounted to the pod. If I add - -cn=secret:secret/db/prod/username:file=.credentials, this error will appear. I can be sure that the approle is granted permission to read the secret at this path, so I am suspecting the issue is with storing it into the path. Does anyone have an idea why this might be?
This is my error message below.
`I0630 20:07:30.802815       1 main.go:45] starting the vault-sidekick, v0.3.13 (git+sha 7836cf7)
I0630 20:07:30.803227       1 vault.go:289] rescheduling the resource: type: secret, path: secret/db/prod/username, channel: 0xc42004a7e0
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x7648e4]
goroutine 7 [running]:
main.VaultService.get(0xc4200165a0, 0x1c, 0xc4201073b0, 0x0, 0x0, 0x0, 0xc42000c088, 0x1, 0x1, 0xc42004a300, ...)
/home/travis/gopath/src/github.com/UKHomeOffice/vault-sidekick/vault.go:422 +0x1434
main.(*VaultService).vaultServiceProcessor.func1(0xc42000e640)
/home/travis/gopath/src/github.com/UKHomeOffice/vault-sidekick/vault.go:152 +0x328
created by main.(*VaultService).vaultServiceProcessor
/home/travis/gopath/src/github.com/UKHomeOffice/vault-sidekick/vault.go:113 +0x3f
`


Multisample example: GUI should be rendered after MS resolve, not before

The simple GUI in top left corner is broken in multisample example. It looks like the GUI is also resolved down. Mouseover highlights happen in wrong place.
GUI should be rendered after multisample resolve, not before.

Thx for letting me know. This may be caused by a recent change from a PR that fixed a MSAA crash on certain devices. Will take a look at this.

With the changes from PR #410 the UI should no longer be resolved down, and I can't reproduce the described behavior (mouse overs work fine).
If the problem still persists, can you please add on what hardware, os and driver?


linux-pam block root login?

Hi! I am creating a custom amd64 kali ISO with fluxbox and ly. After installation, i had this error:
Pam Transaction Aborted.
After reading all issues, i changed lib path link from /usr/lib/security/pam_loginuid.so to /usr/lib/x86_64-linux-gnu/security/pam_loginuid. Howerver, This issue still showed.
After creating an account (test:test), I found out i can login as non-root user.
Am I missing something? I cloned and did every step in README.md file. I also searched "linux pam login user" but there is no useful thing.

If you're still out there, watch this repo as a major update is coming. It should fix this issue.

Ok, so this still happens. I have no idea why, and will try to investigate

Hi! I am thinking this bug is similar root login error via SSH. There must be something inside PAM allowing /denying login as root. Sadly can't test and debug it now. I'll give new information here if I have new result.

Ok, so I think this is how PAM is supposed to work. I'm closing for now.


torchaudio backend isn't installed

https://github.com/dusty-nv/jetson-containers/issues/113 opened

Going back to using base image and PyTorch in the conda environment to fix this

Fixed by reverting to conda pytorch


Poor typing for array iterator

TypeScript Version:  3.6.3
Search Terms: Array iterator
Code
const array = [1];
const iterator = array[Symbol.iterator]();
const value: string = iterator.next().value; // compile error

Expected behavior:
A type check error that number cannot be string.
Actual behavior:
No type check error.
Playground Link: https://www.typescriptlang.org/play/?ssl=1&ssc=1&pln=4&pc=1#code/MYewdgzgLgBAhgJwXAnjAvDA2gRgLoDcAsAFCiSwCWUApslCAhvEqlgMooC2ARiADYA6anTgMEeABQBKYmXDQYANzj8ArjQBcMaAkpgA5sxH1GgsDQAeUGYJXqaBGAHpnMUFwAOlfjRh0ERlIgA
Related Issues:
I do not that Iterators/Generators were changed recently. IDK if that is related.

You'll get correct type error if you verify that !result.done:
const array = [1];
const iterator = array[Symbol.iterator]();
const res = iterator.next()
if (!res.done) {
    const num: string = res.value
}

Cause of this is that IterableIterator<number> is an alias for Iterator<number, any, undefined> (thanks to the changes to iterator typings in 3.6) so without checking the value of done first, value is typed as number | any, which collapses to just any.

I wonder whether it would have been possible to use unknown as default for the iterator's TReturn type..? @rbuckton might be able to clarify.

Oh, see discussion at https://github.com/microsoft/TypeScript/issues/33353

This is essentially a duplicate of #33353.


How to index and search into a local folder Windows

I'm on Windows environment, and use Hound on docker.  I would search code into a huge local folder (and related subfolders).
It seems not index the local folder D:\Weblabs\nodejs.
vcs pull error (LocalRepo - file:///D/Weblabs/nodejs): symlink /D/Weblabs/nodejs /data/data/vcs-5325464f050162f08d9d58f381e44cf239cd4ce5: file exists
The config.json is :
{
    "max-concurrent-indexers" : 2,
    "dbpath" : "data",
    "title" : "Hound",
    "health-check-uri" : "/healthz",
    "vcs-config" : {
        "git" : {
            "detect-ref" : true
        }
    },
    "repos" : {
        "DockerTest" : {
            "url" : "https://github.com/my-user/docker-test.git"
        },
        "QuickStart" : {
            "url" : "https://github.com/my-user/start.git"
        },
	"LocalRepo" : {
            "url" : "file:///d/Weblabs/nodejs",
            "vcs" : "local"
            "url-pattern" : {
                "base-url" : "{url}/{path}"
            },
            "vcs-config" : {
                "watch-changes" : true,
                "ignored-files" : []
            }
        }
    }
}

Any suggestion to configure the LocalRepo with local folders ?
Thanks in advance.

I have tried also with LocalFolder, always same issue.


Use ANSI functions explicitly

A simple attempt at fixing the issues with UNICODE. I've not removed the countermeasures already implemented.
Work towards: https://github.com/laudrup/boost-wintls/issues/84

Looks like how this should have been done initially. Thanks a lot.
If you remove the ugly #ifdef UNICODE stuff I had written initially I think this could be merged.
There's already a job for testing with UNICODE defined. You might consider extending that so it fails with the current implementation (ie. the headers are included with UNICODE defined before including wintls) but it's not all that important.

Sorry,  I had completely forgotten about this


blightmud: 3.6.2 -> 4.0.0

Description of changes
Updates blightmud derivation to v4.0.0. See the upstream project for full release notes.
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[X] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[X] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[X] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[x] (Package updates) Added a release notes entry if the change is major or breaking
[x] (Module updates) Added a release notes entry if the change is significant
[x] (Module addition) Added a release notes entry if adding a new NixOS module
[x] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

@onny You +1'd and merged my last package update. Would love another review of this branch if you have the bandwidth. Thank you!

Thanks marsam


[BUG] The inaccurate flop results after several rounds for model's inference

Hi I tried to use the method "get_model_profile" to get the latency and flop for my model. To get avoid of the influence from randomness, I used this method in a for loop for several times, and then an average operation would be done.
However, I found the results for the following rounds of the first one are not correct, which is far away from the theoritical result. As shown in the fig below, you could see the flops is increasing with the round, which is not correct, since I gave the same size of input into the model.

And this is the code:
def test_model(model, input_shape, warmup=20, num_tests=1000):
    results = []

    for _ in range(num_tests):
        #from profiler import get_model_profile
        flops, macs, params, latency = profiler.get_model_profile(
            model=model,
            input_shape=input_shape,
            print_profile=False,
            detailed=True,
            module_depth=-1,
            top_modules=1,
            warm_up=warmup,
            as_string=False
        )
        del sys.modules['profiler']
        results.append((flops/10**9, macs/10**9, params/10**3, latency*10**3))

    df = pd.DataFrame(results, columns=['FLOPs', 'MACs', 'Params', 'Latency'])
    return df

df_swin = test_model(Swin, (batch_size, math.prod(input_resolution), dim), warmup=warmup, num_tests=num_tests)

I tried to modify this code, and found if I could assign the model again in a different iteration with the profiler imported again, then the result is correct, shown in the fig below.

And the following is the modified code.
def test_model(input_shape, warmup=20, num_tests=1000):
    results = []
    for _ in range(num_tests):
        #from profiler import get_model_profile
        import profiler
        model = MySwinTransformerModel(dim, input_resolution, num_heads, window_size, mlp_ratio, depth).to(device)
        # model = MyTensorizedTransformerModel(dim, input_resolution, num_heads, n_proj, mlp_ratio, depth).to(device)
        flops, macs, params, latency = profiler.get_model_profile(
            model=model,
            input_shape=input_shape,
            print_profile=False,
            detailed=True,
            module_depth=-1,
            top_modules=1,
            warm_up=warmup,
            as_string=False
        )
        del sys.modules['profiler']
        results.append((flops/10**9, macs/10**9, params/10**3, latency*10**3))

    df = pd.DataFrame(results, columns=['FLOPs', 'MACs', 'Params', 'Latency'])
    return df

I'm using this commit from https://github.com/KimmiShi/DeepSpeed/tree/flops_profiler_attn since I want to get flops for @ operation in transformer-based models, which the released version doesn't have.


It is possible to customize the settings for both AuthToken and BaseURL at the same time.

Please allow me to customize AuthToken and BaseURL at the same time

@shengbox Hey, doesn't DefaultAzureConfig(apiKey, baseURL, engine string) fit your case?
https://pkg.go.dev/github.com/sashabaranov/go-openai#DefaultAzureConfig

Due to the "Great Firewall" in China, Chinese users typically use a proxy server deployed on a VPS to access OpenAI.

@shengbox so why doesn't DefaultAzureConfig(apiKey, baseURL, engine string) work for you? It sets both the authToken and baseURL

@sashabaranov When I use DefaultAzureConfig, the APIType is set to AZURE, but actually what I need is APIType=OPEN_AI.

@shengbox got it, what if you do something like:
// set authToken and BaseURL
config := openai.DefaultConfig("your token")
config.BaseURL = "your base URL"

// create client
client := openai.NewClientWithConfig(config)

Yes, that should work just fine.


Unfortunately populating caches first time out and downloading all th…

…e jars can take longer than 10mins. Not sure of a good number here, i put in an hour so it doesn't hang forever. But ideally we'd like to just know its making progress and maybe never timeout

This is only an issue on first time usage for cache seeding

Why does it take so long ? Isn't coursier multithreaded using non blocking io etc ?

@hsyed the e2e time here is to fully seed + fetch a pretty large repo's dependencies. So a few gb's of data, but split across thousands of files. So lots of overheads/latency there alas. It sounds long but i don't think it probably really is for this sort of operation


grpc with ssl can not connect to server on some machine

Please answer these questions before submitting your issue.
What version of gRPC and what language are you using?
1.8.0
What operating system (Linux, Windows, …) and version?
client Windows7, server linux
What runtime / compiler are you using (e.g. python version or version of gcc)
client dotnet 4.5, server golang 1.9.2
What did you do?
Use grpc with tls
What did you expect to see?
all client can connect to server
What did you see instead?
some client can conenct to, but some others can not. Those error clients can telnet to server port, can pass ssl verify use openssl s_client and can connect to server without ssl. Here is the client grpc log:
log.txt

@srini100 Looking at the logs, it seems to be connection issue rather than security issue. SSL handshake is not even started.

@jiangtaoli2016, thanks for looking into this.
@bpxeax, log is showing the connection is closed without errors. May be the server is closing it for some reason? Please provide more details.


Move ETL scripts to dbt project

Today I learned about dbt, a tool to perform data transformation from a reddit thread and I'm motivated to migrate the current ETL scripts to dbt.
I already used DuckDB for some ETL and python with pandas for some more processing with more complexity and it looks like dbt can be a great replacement for the current unstable ETL pipeline. I'm planning to use Clickhouse + dbt for the ETL pipeline.

All scripts has been migrated to dbt!


Dice-Rolling-Simulator

🎮 Game Request
### Description
The dice rolling simulator is a simple application built using Python and the Tkinter library for the graphical user interface (GUI). The simulator mimics the action of rolling a dice, providing a random outcome between 1 and 6 each time the user interacts with the interface. This application is useful for games, educational purposes, or simply for fun.
Game Logic

Initialization: When the program starts, it initializes the main window using Tkinter.
Dice Roll: A function generates a random number between 1 and 6 using Python's random module.
Display: The result of the dice roll is displayed on the GUI, typically as a number or a graphical representation of a dice face.
Interaction: The user can roll the dice by clicking a button on the GUI, which triggers the dice roll function.

Point down the features

Random Dice Roll: Uses the random.randint(1, 6) function to generate a number between 1 and 6.
Graphical Interface: A user-friendly interface built with Tkinter, making it easy to interact with the simulator.
Roll Button: A button that the user clicks to roll the dice.
Display Area: Shows the result of the dice roll, either as a numeric value or a visual representation.

Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @priyashuu! 🙂
It seems like you are not following proper guidelines !! 👀
Read documentation properly !!🙏
If you have any queries reach out to us on Discord🕹 .

Hey @priyashuu !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

Hey @priyashuu ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Fix description about SceneTreeTimer auto free

After time out, any existing reference to that SceneTreeTimer will still be valid as it's ref-counted.
For cherry-pick: RefCounted -> Reference.

Fixup to #61804.

Thanks!

Cherry-picked for 3.5.


[SPARK-7800] isDefined should not marked too early in putNewKey

JIRA: https://issues.apache.org/jira/browse/SPARK-7800
isDefined is marked as true twice in Location.putNewKey. The first one is unnecessary and will cause problem because it is too early and before some assert checking. E.g., if an attempt with incorrect keyLengthBytes marks isDefined as true, the location can not be used later.
ping @JoshRosen

Merged build triggered.

Merged build started.

Test build #33258 has started for   PR 6324 at commit cbfe03b.

Nice catch.  LGTM pending Jenkins.

Test build #33258 has finished for   PR 6324 at commit cbfe03b.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/33258/
Test PASSed.

This should also go into branch-1.4.

Cherry pick'd.

Fair enough, wasn't sure whether it was too theoretical a problem to introduce post RC1, but seems pretty fine.


by default it use gpt3.5

by default it use gpt3.5 . gpt4.o mini is cheaper

Instructions on how to update the model to use is in the ReadMe. There are no particular reasons why 3.5 is the default except it was the cheapest when the project started. Feel free to submit a PR if you got it to work.

Thank you!


Enable track widget creation on debug builds

Description
The assemble kernel builder always default to off for track widget creation (I thought that the builtin transformer had landed, but that was reverted). Add this back on debug builds and add tests to cover it.

LUCI is reporting success at head, landing


Use latest version

Hi @vishr ,
continue from my second pull request #127 . This PR overrides to the latest version.
Thank you.

Finally the correct version in the docs, thanks @nipeharefa ;-)


How to solve the issues when i change the widgets basic size?

I'd like to have square widgets. I changed the css code for the widgets like this:
[data-col="3"] { left:330px;}  [data-col="2"] { left:170px;}  [data-col="1"] { left:10px;}...
[data-row="3"] { top:330px;}  [data-row="2"] { top:170px;}  [data-row="1"] { top:10px;} ...
[data-sizey="1"] { height:140px;} [data-sizey="2"] { height:300px;} [data-sizey="3"] { height:460px;}...
[data-sizex="1"] { width:140px;} [data-sizex="2"] { width:300px;} [data-sizex="3"] { width:460px;} ...
Now i can create squares, not only rectangles, but when i try to move a widget, it goes wrong. The moving seems to be fixed as i changed the margin to: 30,30, but the resizing is not good. The faux is jumping, when i try to resize a widget. Where should i search the solution in the code?
Thanks for helping!

If you'd like to create square widgets, I'd suggest you use widget_base_dimensions for that, rather than changing the CSS.