istio-integ-k8s-tests timeout on Prow

Tests are failing after 2 hours. Example: https://k8s-gubernator.appspot.com/build/istio-prow/pr-logs/pull/istio_istio/13182/istio-integ-k8s-tests/6701
istio.io/istio/tests/integration/security/sds_citadel_flow and istio.io/istio/tests/integration/security/healthcheck	 are killed after taking 30min each

@incfly you wrote health check, any insight?
@lei-tang you wrote sds citadel flow, any ideas?

The mtls health check test itself has been passed stably for a while, looking from testgrid, https://testgrid.k8s.io/istio-postsubmits#integration-k8s-tests&show-stale-tests=
I think this has something to do with the fact that we recently added more tests, and MtlsHealthCheck and SdsVaultTest both require different Helm flag installation, deploying Istio is the time killer and thus time-out...
Solution, for mtls health check test, recently someone from community helped to support per-annotation app prober rewrite. We can get rid of special Istio installation. I can send a PR to update that.
Question, why I can't see it running now on testgrid? I didn't see it's skipped in the code. Any ideas? Just curious.

We might not be able to do the same thing for sds related tests.. @lei-tang unless those workflows support per deployment test case.

I assume they don't show in testgrid because the tests get killed instead of failing? Should be fixed though

I tried to run the failured tests on a GKE cluster a few times and they all passed. My thoughts:

With whom can we consult about the difference between running the tests on prow and running on a GKE cluster through "go test -v TEST-DIRRECTORY"?
Is the prow go tests running without "-p 1"?  According to the integration test documents, "-p 1" is needed to avoid the interference from multiple concurrent tests.

You can look at build log to see arguments used:
+ T=-v
+ make test.integration.kube
mkdir -p /logs/artifacts/
set -o pipefail; \
/usr/local/go/bin/go test -p 1 -v istio.io/istio/tests/integration/citadel istio.io/istio/tests/integration/echo istio.io/istio/tests/integration/framework istio.io/istio/tests/integration/galley/conversion istio.io/istio/tests/integration/galley/validation istio.io/istio/tests/integration/mixer istio.io/istio/tests/integration/pilot istio.io/istio/tests/integration/pilot/locality istio.io/istio/tests/integration/security/authn istio.io/istio/tests/integration/security/healthcheck istio.io/istio/tests/integration/security/reachability istio.io/istio/tests/integration/security/sds_citadel_flow istio.io/istio/tests/integration/security/sds_vault_flow  --istio.test.ci -timeout 30m \
--istio.test.env kube \
--istio.test.kube.config ~/.kube/config \
--istio.test.hub=gcr.io/istio-testing \
--istio.test.tag=5a48a834e9f48861db56d2107f4e02f31c578a72 \
--istio.test.pullpolicy=IfNotPresent       \
 \
--istio.test.work_dir /logs/artifacts \
2>&1 | tee >(/opt/go/bin/go-junit-report > /logs/artifacts/junit_unit-tests.xml)

Looks like -p 1 is passed

@incfly When running the failed tests on a GKE cluster, the Istio deployment only takes around 2 minutes, far less than 30 minutes. Not sure about the Istio deployment time on prow. For the integration tests that require helm template to configure the Istio deployment, I think new Istio depolyment is needed to ensure the previous test does not contaminate the next test.

@howardjohn Thanks, "-p 1" is used so in theory these tests will run one by one without interfering each other. However, I have a few more speculations about the 30 minute timeout failures on prow test environments.

The cluster used in prow tests may run out of resources to create new test deployment. It may have problems on releasing the resources of previous tests, e.g., a new test is being deployed while the resources of previous test have not bee released yet.
In prow, the rests are running by "go test -p 1 test-directory-1 test-directory-2 ...", which may be different from running "go test test-directory-1", then running "go test test-directory-2". Even though "-p 1" in theory should provide equivalent results but I am not sure in practice it is the case (e.g., the timing of consecutive tests and the resource releasing).

Looking at logs, Istio is successfully deployed. I am pretty sure it gets stuck on this: https://github.com/istio/istio/blob/52a304e3fb21fd12f98ef7a1f64a91e156c5a018/tests/integration/security/healthcheck/mtls_healthcheck_test.go#L60-L73
I think we can change these to use galley maybe? Not sure if that will fix the problem though
These tests are consistently failing for days; we just never hit the timeout window until recently it seems. I think we should disable these tests until they are fixed.

PR to disable: https://github.com/istio/istio/pull/13305

Now with https://github.com/istio/istio/pull/13305 I see the other 2 security tests also timing out: https://k8s-gubernator.appspot.com/build/istio-prow/pr-logs/pull/istio_istio/13305/istio-integ-k8s-tests/6735
Not sure what it is about the security tests that make them different..

I am trying to debug why these tests fail in Prow environment while succeed when running through commands "go test integration-test-directory-name" on a GKE cluster. But the Prow test scripts (e.g., prow/istio-integ-k8s-tests.sh) fails to run on a desktop terminal (failed at getting a Boskos resource).
I created the issue https://github.com/istio/istio/issues/13307 for instructions/documents on running Prow scripts for the purpose of debugging Prow test failures.

Pretty sure security tests are not the issue, rather they happen to be the ones to fail because they are run last. See https://k8s-gubernator.appspot.com/build/istio-prow/pr-logs/pull/istio_istio/13348/istio-integ-k8s-tests/6845?log#log
I ran only the security tests, and added some more debug statements (shouldn't change anything), and the tests pass.

I am almost certain the issue is with the new locality LB tests recently added. Supporting evidence:

Failures started around when locality test was added
Every test that runs after locality test fails, every test before it passes
Tests pass with locality disabled: https://k8s-gubernator.appspot.com/build/istio-prow/pr-logs/pull/istio_istio/13348/istio-integ-k8s-tests/6847/
Tests fail with locality enabled: https://k8s-gubernator.appspot.com/build/istio-prow/pr-logs/pull/istio_istio/13348/istio-integ-k8s-tests/6851

For now lets disable the locality test. It is broken anyways.
@liamawhite


Fix some issues in github actions workflows

This pull request includes a change to the .github/workflows/terraform_provider.yml file. The change modifies the jobs: section to add a git diff command that checks for differences between the current branch and the upstream branch specifically for the docs/ directory. This will ensure that any changes made to the documentation are properly tracked and reviewed.

.github/workflows/terraform_provider.yml: Added a git diff command in the jobs: section to check for differences in the docs/ directory between the current branch and the upstream branch.

@mawasile can you update this branch with doc fixes so generated docs have the typo fixes in the markdown?

@mattdot  done


chore: update facade paths to new paths in core

As part of angular/angular#3713, facade lives in the core directory
inside angular2.

Per @alexeagle 's suggestion, I should parameratize this.

I should probably update tests, too.

I don't have a good suggestion how angular would pass this map through to ts2dart. I suppose something like a json config file we check in, and hand the path to that file when brocolli-ts2dart invokes ts2dart in-process?

LGTM on the change, when you've updated tests as needed. Parameterizing might be out of scope for this change, up to you

@alexeagle how about adding a property to the options argument passed to ts2dart.
ts2dart(tsInputTree, {
  facadeBasePath: 'angular2/src/core/facade'
  ...
});

If we are going to add the parameter, I think we should completely decouple angular's type mapping from ts2dart. It's not worth adding the ability to change facadeBasePath without also adding the ability to arbitrarily change the type mapping.

Oh and that would work well for the first block of type replacements, but
not so well for the call replacements.
On Mon, Aug 24, 2015 at 4:14 PM Jeff Cross<EMAIL_ADDRESS>wrote:

@alexeagle https://github.com/alexeagle how about adding a property to
the options argument passed to ts2dart.
ts2dart(tsInputTree, {
facadeBasePath: 'angular2/src/core/facade'
...
});
—
Reply to this email directly or view it on GitHub
https://github.com/angular/ts2dart/pull/266#issuecomment-134408419.

@alexeagle good point. In that case, I will forego parameretizing for now and will open an issue to explore decoupling.


ERROR: compile failed while processing ./erlang-emas/deps/skel: rebar_abort

First thank you for sharing this project :+1:
I try :
 make dep
I get the following error:
make deps
./rebar get-deps
==> erlang-emas (get-deps)
Pulling mas from {git,"https://github.com/ParaPhraseAGH/erlang-mas.git",
                      {tag,"0.5.1"}}
Clonage dans 'mas'...
Pulling getopt from {git,"https://github.com/jcomellas/getopt",{tag,"v0.8.2"}}
Clonage dans 'getopt'...
==> getopt (get-deps)
==> mas (get-deps)
Pulling skel from {git,"git://github.com/ParaPhraseAGH/skel.git",{tag,"0.2"}}
Clonage dans 'skel'...
Pulling ct_tty_hook from {git,"https://github.com/mpmiszczyk/ct_tty_hook.git"}
Clonage dans 'ct_tty_hook'...
Pulling exometer from {git,"https://github.com/ParaPhraseAGH/exometer.git",
                           {branch,"add_timestamps_to_values"}}
Clonage dans 'exometer'...
Pulling meck from {git,"https://github.com/eproxus/meck.git",{tag,"0.8.2"}}
Clonage dans 'meck'...
==> skel (get-deps)
==> ct_tty_hook (get-deps)
==> src (get-deps)
==> exometer (get-deps)
Pulling exometer_core from {git,"git://github.com/ParaPhraseAGH/exometer_core.git",
                                {branch,"add_timestamps_to_values"}}
Clonage dans 'exometer_core'...
Pulling exometer_collectd from {git,"git://github.com/Feuerlabs/exometer_collectd.git",
                                    {branch,"master"}}
Clonage dans 'exometer_collectd'...
Pulling netlink from {git,"git://github.com/Feuerlabs/netlink.git",
                          {tag,"1.0"}}
Clonage dans 'netlink'...
Pulling amqp_client from {git,"git://github.com/jbrisbin/amqp_client.git",
                              {tag,"rabbitmq-3.3.5"}}
Clonage dans 'amqp_client'...
Pulling jiffy from {git,"git://github.com/davisp/jiffy.git","0.13.3"}
Clonage dans 'jiffy'...
==> meck (get-deps)
==> src (get-deps)
==> exometer_core (get-deps)
Pulling lager from {git,"git://github.com/basho/lager.git",{tag,"2.0.3"}}
Clonage dans 'lager'...
Pulling parse_trans from {git,"git://github.com/uwiger/parse_trans.git",
                              {tag,"2.9"}}
Clonage dans 'parse_trans'...
Pulling folsom from {git,"git://github.com/boundary/folsom",{tag,"0.8.1"}}
Clonage dans 'folsom'...
Pulling setup from {git,"git://github.com/uwiger/setup.git",{tag,"1.4"}}
Clonage dans 'setup'...
==> lager (get-deps)
Pulling goldrush from {git,"git://github.com/DeadZen/goldrush.git",
                           {tag,"0.1.6"}}
Clonage dans 'goldrush'...
==> goldrush (get-deps)
==> parse_trans (get-deps)
Pulling edown from {git,"git://github.com/uwiger/edown.git",{tag,"0.5"}}
Clonage dans 'edown'...
==> edown (get-deps)
==> folsom (get-deps)
Pulling bear from {git,"git://github.com/boundary/bear.git",{tag,"0.8.1"}}
Clonage dans 'bear'...
==> bear (get-deps)
==> setup (get-deps)
==> exometer_collectd (get-deps)
Pulling afunix from {git,"git://github.com/tonyrog/afunix.git","3df8a32"}
Clonage dans 'afunix'...
==> afunix (get-deps)
==> netlink (get-deps)
==> amqp_client (get-deps)
Pulling rabbit_common from {git,"git://github.com/jbrisbin/rabbit_common.git",
                                {tag,"rabbitmq-3.3.5"}}
Clonage dans 'rabbit_common'...
==> rabbit_common (get-deps)
==> jiffy (get-deps)
./rebar compile
==> skel (compile)
Compiled src/gen_sk.erl
Compiled src/sk_sink.erl
Compiled src/sk_source.erl
Compiled src/sk_feedback.erl
Compiled src/sk_map.erl
Compiled src/sk_pipe.erl
/home/anas/workspace/erlang-emas/deps/skel/src/sk_cluster_recomp.erl:113: type dict() undefined
ERROR: compile failed while processing /home/anas/workspace/erlang-emas/deps/skel: rebar_abort
Makefile:16: recipe for target 'deps' failed
make: *** [deps] Error 1

my erlang version:
Erlang/OTP 22 [erts-10.5.3] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1]
Eshell V10.5.3

Thanks

Hello,
I don't feel like the project is still alive.
but I'm even going to add my investigations.
docker run -it -v $(pwd):/app  --rm unbalancedparentheses/erlang:17.3 bash
root@0b208457c9fc:/# cd /app/
root@0b208457c9fc:/app# ls
c_src  include  Makefile   rebar      rebar.config  scripts  test
emas   LICENSE  README.md  rebar.cmd  run_tests.sh  src
root@0b208457c9fc:/app# make deps
./rebar get-deps
==> app (get-deps)
Pulling mas from {git,"https://github.com/ParaPhraseAGH/erlang-mas.git",
                      {tag,"0.5.1"}}
Cloning into 'mas'...
Pulling getopt from {git,"https://github.com/jcomellas/getopt",{tag,"v0.8.2"}}
Cloning into 'getopt'...
==> getopt (get-deps)
==> mas (get-deps)
Pulling skel from {git,"git://github.com/ParaPhraseAGH/skel.git",{tag,"0.2"}}
Cloning into 'skel'...
Pulling ct_tty_hook from {git,"https://github.com/mpmiszczyk/ct_tty_hook.git"}
Cloning into 'ct_tty_hook'...
Pulling exometer from {git,"https://github.com/ParaPhraseAGH/exometer.git",
                           {branch,"add_timestamps_to_values"}}
Cloning into 'exometer'...
Pulling meck from {git,"https://github.com/eproxus/meck.git",{tag,"0.8.2"}}
Cloning into 'meck'...
==> skel (get-deps)
==> ct_tty_hook (get-deps)
==> src (get-deps)
==> exometer (get-deps)
Pulling exometer_core from {git,"git://github.com/ParaPhraseAGH/exometer_core.git",
                                {branch,"add_timestamps_to_values"}}
Cloning into 'exometer_core'...
Pulling exometer_collectd from {git,"git://github.com/Feuerlabs/exometer_collectd.git",
                                    {branch,"master"}}
Cloning into 'exometer_collectd'...
Pulling netlink from {git,"git://github.com/Feuerlabs/netlink.git",
                          {tag,"1.0"}}
Cloning into 'netlink'...
Pulling amqp_client from {git,"git://github.com/jbrisbin/amqp_client.git",
                              {tag,"rabbitmq-3.3.5"}}
Cloning into 'amqp_client'...
Pulling jiffy from {git,"git://github.com/davisp/jiffy.git","0.13.3"}
Cloning into 'jiffy'...
==> meck (get-deps)
==> src (get-deps)
==> exometer_core (get-deps)
Pulling lager from {git,"git://github.com/basho/lager.git",{tag,"2.0.3"}}
Cloning into 'lager'...
Pulling parse_trans from {git,"git://github.com/uwiger/parse_trans.git",
                              {tag,"2.9"}}
Cloning into 'parse_trans'...
Pulling folsom from {git,"git://github.com/boundary/folsom",{tag,"0.8.1"}}
Cloning into 'folsom'...
Pulling setup from {git,"git://github.com/uwiger/setup.git",{tag,"1.4"}}
Cloning into 'setup'...
==> lager (get-deps)
Pulling goldrush from {git,"git://github.com/DeadZen/goldrush.git",
                           {tag,"0.1.6"}}
Cloning into 'goldrush'...
==> goldrush (get-deps)
==> parse_trans (get-deps)
Pulling edown from {git,"git://github.com/uwiger/edown.git",{tag,"0.5"}}
Cloning into 'edown'...
==> edown (get-deps)
==> folsom (get-deps)
Pulling bear from {git,"git://github.com/boundary/bear.git",{tag,"0.8.1"}}
Cloning into 'bear'...
==> bear (get-deps)
==> setup (get-deps)
==> exometer_collectd (get-deps)
Pulling afunix from {git,"git://github.com/tonyrog/afunix.git","3df8a32"}
Cloning into 'afunix'...
==> afunix (get-deps)
==> netlink (get-deps)
==> amqp_client (get-deps)
Pulling rabbit_common from {git,"git://github.com/jbrisbin/rabbit_common.git",
                                {tag,"rabbitmq-3.3.5"}}
Cloning into 'rabbit_common'...
==> rabbit_common (get-deps)
==> jiffy (get-deps)
./rebar compile
==> skel (compile)
Compiled src/gen_sk.erl
Compiled src/sk_sink.erl
Compiled src/sk_source.erl
Compiled src/sk_feedback.erl
Compiled src/sk_map.erl
Compiled src/sk_pipe.erl
Compiled src/sk_map_auto_partitioner.erl
Compiled src/sk_farm_collector.erl
Compiled src/sk_assembler.erl
/app/deps/skel/src/sk_cluster_recomp.erl:44: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:62: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:62: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:74: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:74: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:84: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:84: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:104: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:113: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_cluster_recomp.erl:113: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
Compiled src/sk_cluster_recomp.erl
Compiled src/sk_feedback_filter.erl
Compiled src/sk_tracer.erl
/app/deps/skel/src/sk_reduce_reducer.erl:36: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_reduce_reducer.erl:60: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_reduce_reducer.erl:60: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_reduce_reducer.erl:66: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_reduce_reducer.erl:66: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_reduce_reducer.erl:82: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_reduce_reducer.erl:82: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
Compiled src/sk_reduce_reducer.erl
Compiled src/sk_farm.erl
Compiled src/sk_cluster_decomp.erl
Compiled src/skel.erl
/app/deps/skel/src/sk_map_pull_partitioner.erl:58: Warning: missing specification for function loop_pull_init/3
Compiled src/sk_map_pull_partitioner.erl
Compiled src/sk_feedback_bicounter.erl
Compiled src/sk_profile.erl
Compiled src/sk_utils.erl
Compiled src/sk_map_man_partitioner.erl
/app/deps/skel/src/sk_map_pulling_worker.erl:12: Warning: missing specification for function start/2
/app/deps/skel/src/sk_map_pulling_worker.erl:18: Warning: missing specification for function init/3
/app/deps/skel/src/sk_map_pulling_worker.erl:25: Warning: missing specification for function loop/3
Compiled src/sk_map_pulling_worker.erl
Compiled src/sk_farm_emitter.erl
Compiled src/sk_reduce.erl
Compiled src/sk_cluster.erl
Compiled src/sk_seq.erl
Compiled src/sk_data.erl
/app/deps/skel/src/sk_map_combiner.erl:53: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:112: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:112: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:123: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:123: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:137: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:137: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:160: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:170: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_map_combiner.erl:170: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
Compiled src/sk_map_combiner.erl
Compiled src/sk_ord.erl
/app/deps/skel/src/sk_ord_reorderer.erl:42: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_ord_reorderer.erl:58: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_ord_reorderer.erl:58: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_ord_reorderer.erl:64: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
/app/deps/skel/src/sk_ord_reorderer.erl:64: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
Compiled src/sk_ord_reorderer.erl
/app/deps/skel/src/sk_reduce_decomp.erl:22: Warning: type dict/0 is deprecated and will be removed in OTP 18.0; use use dict:dict/0 or preferably dict:dict/2
Compiled src/sk_reduce_decomp.erl
Compiled src/sk_feedback_receiver.erl
Compiled src/sk_ord_tagger.erl
==> ct_tty_hook (compile)
Compiled src/ct_tty_hook.erl
==> goldrush (compile)
Compiled src/gr_manager_sup.erl
Compiled src/gr_counter_sup.erl
Compiled src/gr_sup.erl
Compiled src/gr_context.erl
Compiled src/gre.erl
Compiled src/gr_app.erl
Compiled src/glc_ops.erl
Compiled src/gr_counter.erl
Compiled src/glc_lib.erl
Compiled src/gr_param_sup.erl
Compiled src/gr_param.erl
Compiled src/gr_manager.erl
Compiled src/glc.erl
Compiled src/glc_code.erl
==> lager (compile)
Compiled src/lager_util.erl
Compiled src/lager_transform.erl
Compiled src/lager_config.erl
Compiled src/lager_crash_log.erl
Compiled src/lager_app.erl
Compiled src/lager_trunc_io.erl
Compiled src/lager_stdlib.erl
Compiled src/lager_backend_throttle.erl
Compiled src/lager_sup.erl
Compiled src/lager_console_backend.erl
Compiled src/lager_handler_watcher.erl
Compiled src/error_logger_lager_h.erl
Compiled src/lager.erl
Compiled src/lager_msg.erl
Compiled src/lager_handler_watcher_sup.erl
Compiled src/lager_default_formatter.erl
Compiled src/lager_format.erl
Compiled src/lager_file_backend.erl
==> edown (compile)
Compiled src/edown_make.erl
Compiled src/edown_xmerl.erl
Compiled src/edown_doclet.erl
Compiled src/edown_lib.erl
Compiled src/edown_layout.erl
==> parse_trans (compile)
Compiled src/parse_trans.erl
Compiled src/parse_trans_pp.erl
Compiled src/parse_trans_codegen.erl
Compiled src/ct_expand.erl
Compiled src/exprecs.erl
Compiled src/parse_trans_mod.erl
==> meck (compile)
Compiled src/meck_matcher.erl
Compiled src/meck_history.erl
Compiled src/meck_util.erl
Compiled src/meck_code_gen.erl
Compiled src/meck_ret_spec.erl
Compiled src/meck_code.erl
Compiled src/meck_cover.erl
Compiled src/meck_expect.erl
Compiled src/meck.erl
Compiled src/meck_args_matcher.erl
Compiled src/meck_proc.erl
==> bear (compile)
Compiled src/bear.erl
==> folsom (compile)
Compiled src/folsom_metrics_histogram_ets.erl
Compiled src/folsom_sample_slide_server.erl
Compiled src/folsom_ewma.erl
Compiled src/folsom_meter_timer_server.erl
Compiled src/folsom_metrics_counter.erl
Compiled src/folsom_metrics_histogram.erl
Compiled src/folsom_metrics_gauge.erl
Compiled src/folsom_metrics_duration.erl
Compiled src/folsom_sample_none.erl
Compiled src/folsom_sample.erl
Compiled src/folsom_sample_slide.erl
Compiled src/folsom_metrics.erl
Compiled src/folsom_metrics_meter_reader.erl
Compiled src/folsom_sample_slide_sup.erl
Compiled src/folsom_vm_metrics.erl
Compiled src/folsom_sample_slide_sorted.erl
Compiled src/folsom_metrics_meter.erl
Compiled src/folsom_utils.erl
Compiled src/folsom_metrics_spiral.erl
Compiled src/folsom_sup.erl
Compiled src/folsom_sample_uniform.erl
Compiled src/folsom.erl
Compiled src/folsom_sample_slide_uniform.erl
Compiled src/folsom_sample_exdec.erl
Compiled src/folsom_metrics_history.erl
Compiled src/folsom_ets.erl
==> setup (compile)
Compiled src/setup_lib.erl
Compiled src/setup_gen.erl
Compiled src/setup.erl
==> edown (escriptize)
==> setup (escriptize)
==> src (compile)
==> exometer_core (compile)
Compiled src/exometer_igor.erl
Compiled src/exometer_util.erl
Compiled src/exometer_entry.erl
Compiled src/exometer_probe.erl
Compiled src/exometer_report.erl
Compiled src/exometer_folsom_monitor.erl
Compiled src/exometer_core_sup.erl
Compiled src/exometer_duration.erl
Compiled src/exometer_proc.erl
Compiled src/exometer_folsom.erl
Compiled src/exometer_slide.erl
Compiled src/exometer_shallowtree.erl
Compiled src/exometer_admin.erl
Compiled src/exometer_uniform.erl
Compiled src/exometer_report_lager.erl
Compiled src/exometer_alias.erl
Compiled src/exo_montest.erl
Compiled src/exometer_function.erl
Compiled src/exometer_info.erl
Compiled src/exometer_cache.erl
Compiled src/exometer_slot_slide.erl
Compiled src/exometer_spiral.erl
Compiled src/exometer_core_app.erl
Compiled src/exometer.erl
Compiled src/exometer_cpu.erl
Compiled src/exometer_report_tty.erl
Compiled src/exometer_histogram.erl
==> afunix (compile)
Compiled src/afunix.erl
Compiling c_src/afunix_drv.c
Compiling c_src/packet_parser.c
==> exometer_collectd (compile)
Dependency not available: exometer_core-1.5.7 (undefined)
ERROR: compile failed while processing /app/deps/exometer_collectd: rebar_abort
make: *** [deps] Error 1


Restructure backend

Synopsis
Currently, the bot runs well in a single group. There are a single language and behavior config and single storage of exceptions. This one and only config works for all groups where the bot is used. This creates several problems:

What if somebody wants to force the bot to enforce English, and somebody other: to enforce German?
What if somebody wants the bot to mute people and translate messages, and somebody other: to do the exact opposite?

Solutions
This problem seems to be a bit more complicated than the ones we faced previously.
The general, high-level solution I can think of now is:

separate config for every group Every group would have a separate collection in Firebase Firestore, where the group's admins could add exceptions and configure bot's behavior
setup wizard When the bot is added to the group, ask a few questions and save them (for this specific group)

Any suggestions/help are welcome.

Can't you just run two copies?
On Sun, Apr 12, 2020 at 5:15 PM Bartek Pacia<EMAIL_ADDRESS>wrote:

Synopsis
Currently, the bot runs well in a single group. There are a single
language and behavior config and single storage of exceptions. This one and
only config works for all groups where the bot is used. This creates
several problems:

What if somebody wants to force the bot to enforce English, and
somebody other: to enforce German?
What if somebody wants the bot to mute people and don't translate
messages, and somebody other: to do the exact opposite?

Solutions
This problem seems to be a bit more complicated than the ones we faced
previously.
The general, high-level solution I can think of now is:

separate config for every group Every group would have a separate
collection in Firebase Firestore, where the group's admins could add
exceptions and configure bot's behavior
setup wizard When the bot is added to the group, ask a few
questions and save them (for this specific group)

Any suggestions/help are welcome.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/bartekpacia/telegram-lang-enforcer/issues/20, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AN54XP4D67MMAEPVX6VM63TRMJKQRANCNFSM4MGTXYPA
.

Only 1 Telegram Bot instance can receive webhook events at the same time. Also, running a single instance for every language and behavior config doesn't sound like a good idea.


No shortcuts response if restart macOS

Add Source Switcher to Users -> Login Items. Restart macOS and find the app icon appears in menu bar, with shortcuts no response.

I tried using `showPopover()` below but found it not words.

https://github.com/Yang-Xijie/InputSourceSwitcher/blob/d5f309e678f8e97d83da95e6facc5b4eada6b501/InputSourceSwitcher/APP/App.swift#L23-L55
Codes above solve this problem. But the intention of the codes is to make the popover appear which not works in Big Sur.


Window Management button

Description
We should implement the logic for 3 window management buttons

Acceptance Criteria

The left button: Toggle the Left Panel
The right button: Toggle the right panel
The middle button: Toggle the Bottom panel
All three buttons state are persisted after closing the app
When open Proxyman, Proxyman will restore to previous states

After an evening of finding the solution for the last bug, I end up with nothing.
The bug is when SplitPane changes from vertical to horizontal or vice versa all rows in DataGrid will disappear. I have no idea why that happens. This issue Mui DataGrid rows disappear seems like a good solution but it still does not work.
There is a not good solution is: We add rows again after changing the style SplitPane.
So please feel free to take over this ticket, you can use my code to reference. My code is done  90% if that bug is solved this ticket will be done.
I will continue with ticket export.
Video Bug
https://user-images.githubusercontent.com/77295189/184125585-529062e5-39d6-4041-85cc-7459f03f964c.mp4

The SplitPanel is super buggy IMO. It's not designed for ReactJS 18.
@kics223w1 let's try migrating to SplitJS: https://split.js.org/
Ref: https://github.com/ProxymanApp/proxyman-electron-app/pull/45

Yes I got it.

Since we support the Source List Panel. We can revisit this ticket to make it works with all panels (Left, Middle, Right/Bottom).
Move this ticket to 0.10.0 version 👍


Cannot support this.$f7router.navigate({name: 'index'})

I saw the generated router path  using two property: name and component, it has not the name property, which will cause that we cannot use the router name functionality . thanks .

with pull request link: https://github.com/nuxt-community/nuxt7/pull/58

close it as the pull request: #58

released in v3.1.0


Error using LinkingIOS - undefined is not an object

I'm simply trying to open a url:
LinkingIOS.openURL("https://facebook.com/PlayUpwordsApp");

And getting:
message: undefined is not an object (evaluating 'RCTLinkingManager.openURL')"

I added RCTLinking.xcodeproj to my project and I'm still getting the same error.  Any thoughts?  I do notice the libRCTLinking.a file is red in Xcode.. does that mean it's not being built?  I did add that .a file to the "Linked Frameworks and Librarys" section of my project.

Not working for me either. +1

seems like this should be done automatically when you do let {LinkingIOS} = React  no?

let {LinkingIOS} = React only includes the JavaScript code, not the native code. We split the native code into distinct libraries to keep the binary size down for apps that aren't using all of the features, so you need to include all of the libraries that contain the native modules you want to use in your app.

ok!  for anyone else who finds this... here is instructions: https://facebook.github.io/react-native/docs/linking-libraries.html

@rkstar link to this doc has changed, now it is:  . LinkingIOS needs Step 3


gh-2340 FederatedPredicates to use Equals and hashcode Builders

Related Issue

Resolve #2340

Codecov Report

Merging #2351 (205b8f1) into develop (3fe0943) will increase coverage by 9.72%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             develop    #2351      +/-   ##
=============================================
+ Coverage      66.13%   75.85%   +9.72%
+ Complexity      2464      185    -2279
=============================================
  Files            958       11     -947
  Lines          31404      584   -30820
  Branches        3820       50    -3770
=============================================
- Hits           20769      443   -20326
+ Misses          9006      100    -8906
+ Partials        1629       41    -1588

Impacted Files
Coverage Δ
Complexity Δ

...park/serialisation/kryo/WrappedKryoSerializer.java

...ov/gchq/gaffer/federatedstore/FederatedAccess.java

...hq/gaffer/parquetstore/query/ParquetFileQuery.java

...hq/gaffer/store/schema/SchemaEntityDefinition.java

...gov/gchq/gaffer/operation/function/ToEntityId.java

...re/operation/handler/spark/AddElementsFromRDD.java

.../uk/gov/gchq/gaffer/rest/config/FactoryConfig.java

.../gaffer/store/operation/handler/ReduceHandler.java

...peration/validator/function/FunctionValidator.java

...ketches/theta/binaryoperator/SketchAggregator.java

... and 935 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 44b9f5a...fda6e1b. Read the comment docs.

Once checkstyle is fixed, it can be merged


Binding other context through the Provider

Hey all,
Today the Provider takes in the store prop and binds it to the Provider class and into context types. Over at http://docs.apollostack.com/ we're trying to build a data layer for any backend and Redux is our primary tool for dumping the various data sources to the client.
Currently, we've had to make a carbon copy of react-redux and thats because our Provider needs to bind the instance of the ApolloClient which much like the store, holds the state from the servers sending data to us.
I was wondering if we could make the Provider component in ReactRedux take other bindings? So a user would be able to
import Store from '../store/store';
import ApolloClient from 'apollo-client';
const client = new ApolloClient();

const clientBindings = {
  store: Store,
  client
};
<Provider bindings={clientBindings}>
</Provider>

And if no bindings prop is found, fallback to the original implementation. I really do not want to start spinning off separate libraries just for small differences in implementation, so if we could work on a optimal solution for this, that'd be great!!

Hi!
We use store as the context type name. Lots of apps, libraries, and tutorials already rely on this, so changing the context type name or putting something else there would be a huge breaking change that I’m not will to take.
Context types have to be specified at the type definition time. So we can’t dynamically add another context type name based on props either.
I understand what you want to accomplish but I’m afraid <Provider> was not really meant to be a pass-all bag for context for different libraries. Additionally, context is an unstable API, and while we use it internally, we don’t want to increase the public API surface area for anything related to context.
I think that, if you want to avoid a separate <ApolloContext>, your best bet is to provide your own <ApolloProvider> and tell people to use it instead of <Provider>. Internally it may be implemented as
class ApolloProvider extends Component {
  getChildContext() {
   return { client: this.props.client }
  }

  render() {
    return <Provider store={this.props.store}>{this.props.children}</Provider>
  }
}
ApolloProvider.contextTypes = {
  client: React.PropTypes.object
}

Then your consumers can write
<ApolloProvider store={store} client={client}>
  <App />
</ApolloProvider>

without having to use <Provider> directly.
Hope it helps!

Thanks Dan, I think that is a fine solution


fix https://github.com/microsoft/vscode/issues/115353

Cherry pick the fix for #115353 for the 1.53 release

Looks like a similar rule exists when tabs are enabled but with 22px:
https://github.com/microsoft/vscode/blob/bb6014df3b4312272ec741be1d794649f6a0b71e/src/vs/workbench/browser/parts/editor/media/tabstitlecontrol.css#L386-L388

Looks like a similar rule exists when tabs are enabled but with 22px:

Yes - that is with tabs enabled and then things are larger

Note that this changes the container height of breadcrumbs to 18px entirely:

That's interesting... The rule only targets ::before elements

@jrieken I think since the breadcrumbs itself do not set any height, it will inherit the height from any child element that sets the height unless there is another element overriding it.
I did not see an alignment issue on macOS though.


mp3d configs

I was wondering if it is possible to release mp3d exploration eval config files/models as well (those mentioned in the paper)?
Thanks!

Hi @ishikasingh,
You can find the MP3D configs here: https://github.com/facebookresearch/OccupancyAnticipation/tree/main/configs/exploration
We don't train any models on MP3D. We evaluate the Gibson models on MP3D to test cross-dataset transfer.

I tried using these but the mp3d configs end up running on gibson data. I think you use another file on top of the files in the folder you shared, of the form ppo_exploration.yaml (with some extra params). It would be great if you can share those configs for mp3d!


Create a mock for PostSetupProvider

Motivation
Part of https://github.com/spacemeshos/go-spacemesh/issues/3590. Generate a mock for PostSetupProvider
Changes
This are the MINIMUM changes necessary to be able to generate a mock for the PostSetupProvider interface and move that generated mock into a package outside activation.

Types used by that interface need to be moved to a new package activation/types and all uses of those types need to be updated
everywhere I see var _ SomeInterface = (*typeImplementingInterface)(nil) to check that a type actually implements the interface

This is a very "Java" / "C++" way of thinking of interfaces and is driven by the fact the provider defines the interface
In Go this should be the other way round: the consumer defines the interface not the provider

Test Plan

TODO

[x] Explain motivation or link existing issue(s)
[x] Test changes and document test plan
[x] Update documentation as needed

DevOps Notes

[x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources)
[x] This PR does not affect public APIs
[x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.)
[x] This PR does not make changes to log messages (which monitoring infrastructure may rely on)

bors merge


Export physical parameters like contact forces

Thank you for this amazing piece of software and for open sourcing it.
I'm planning to use your software in an engineering research context. After playing around with it for a bit I was wondering if there is any way to get contact forces and other values like torques, internal foces, positions and velocities resulting from the simulation with the python bindings. I guess latter two can be calculated from the resulting obj files.

Thanks for your interest in our work! Unfortunately we didn't expose these to the python binding. But all these information should be able to be obtained via certain C++ functions. For example, the contact forces can be obtained by first computing the barrier gradient using
Compute_IncPotential_Gradient()
in
https://github.com/ipc-sim/Codim-IPC/blob/main/Library/FEM/Energy/IPC_ENERGY.h
and then divide it by dt^2.


ByteArray.toByteString for numbers return empty string

In this PR https://github.com/massalabs/massa-as-sdk/pull/23 I try to create an Args class that handle the encoding and decoding of function call arguments.
The problem is that I can't make the current code work.
const ADDR1 = 'A1Czd9sRp3mt2KU9QBEEZPsYxRq9TisMs1KnV4JYCe7Z4AAVinq';
const ADDR2 = 'A1cjz8wvMvShrBH5eqGYkuFGGncTNqszJc1BDKwR7oou8fpLD2E';

const ENCODED =
  '3A1Czd9sRp3mt2KU9QBEEZPsYxRq9TisMs1KnV4JYCe7Z4AAVinq3A1cjz8wvMvShrBH5eqGYkuFGGncTNqszJc1BDKwR7oou8fpLD2Ed';

describe('Args tests', () => {
  it('encode, old way', () => {
    const ownerAccount = new Address(ADDR1);
    const recipientAccount = new Address(ADDR2);
    const nbTokens = new Amount(100);
    const result = ownerAccount
      .toStringSegment()
      .concat(
        recipientAccount
          .toStringSegment()
          .concat(ByteArray.fromU64(nbTokens.value()).toByteString()),
      );
    expect(result).toBe(ENCODED); // broken
  });
  it('decode, old way', () => {
    const args = ENCODED;
    const ownerAddress = new Address();
    let offset = ownerAddress.fromStringSegment(args);

    const recipientAddress = new Address();
    offset = recipientAddress.fromStringSegment(args, offset);

    const amount = ByteArray.fromByteString(args.substr(offset, 8)).toU64();

    expect(ownerAddress._value).toBe(ADDR1);
    expect(recipientAddress._value).toBe(ADDR2);
    expect(amount.toString()).toBe('100'); // broken
  });
});

Because ByteArray.fromU64 creates a Byte Array with value 1 and in toByteString, String.fromCharCode(1); returns an empty string according to this https://asecuritysite.com/coding/asc2
I might misunderstood something, could anyone help me on this please?

Why don't you use helpers from Amount class?
 amount.toStringSegment()
instead of ByteArray.fromU64(nbTokens.value()).toByteString()
And
const amount = new Amount();
amount.fromStringSegment(_args, offset);
instead of
const amount = ByteArray.fromByteString(args.substr(offset, 8)).toU64();

https://github.com/massalabs/as/blob/28024372b158c2ac4ff026d705169c0c795c1fe7/assembly/amount.ts#L142
it seems that the first byte of stringSegments of amounts is a length field. which is useless because the output is alwas u64 (8bytes length) 🤔

i think a nice evolution of this would be to have a "type" field so you can decode the bitstream without knowing types in advance

A nice evolution of this would be to have a custom preprocessor launched just before building. The equivalent of Macros in C/Cpp
it would allow to write function arguments as usual:
export function transferFrom(ownerAddress: Address, recipientAddress: Address, amount: Amount): string {

the preprocessor will automatically transform it to the following code:
export function transferFrom(args: string): string {
const ownerAddress = new Address();
let offset = ownerAddress.fromStringSegment(args);
const recipientAddress = new Address();
offset = recipientAddress.fromStringSegment(args, offset);
const amount = ByteArray.fromByteString(args.substr(offset, 8)).toU64();

We can facilltatte the detection of the code to replace by using a custom decorator on the func (@massa-args for example)

A couple of thoughs on this issue:

I think that ByteArray object should be removed and replaced by Args.
After discussing it with @Thykof and @peterjah , my feeeling is that the code is working but there a problem with .toBe in unit test.
Having the Args object will make @peterjah previous proposal about a transformer simpler to implement.

@gregLibert I am working on Args class and I need pieces of code of ByteArray class. So I can use ByteArray are copy paste the methods I need into Args, if we want to remove ByteArray class.


Transfer History page

Have an Order History sub-page to view a record of previous and pending transfers, with links to cancel (see #598).

[ ] Check analytics for Order History page usage (do people go here?)
[ ] Should we rename "Order History" in the user drop-down menu to "Orders & Transfers"?
[ ] Table of transfers in new view
[ ] Link to view from brambling/user/__base_orders.html menu
[ ] Add cancel links

Analytics shows that /history/ is 0.23% of overall pageviews and that it seems to mostly be an entrance point for /claim-orders/ (exit rate is high and time spent on page is very low). There are only a handful of exits from /history/ to a /order/summary/ page, implying that nobody really clicks on items in the order history table.


Finish mini rw

It's not really a rewrite and I don't plan to do a proper rewrite any time soon so I'm just gonna merge this now


Wiki: Files are not downloadable

Description
I tried to provide some files in the wiki via the link markdown
So I cloned the repo, I added a new folder, added the files and linked them as described here
When you click the link, the wiki opens a new page
Gitea Version
1.20.1
Can you reproduce the bug on the Gitea demo site?
Yes
Log Gist
No response
Screenshots
No response
Git Version
No response
Operating System
No response
How are you running Gitea?
Docker
Database
None

Something is wrong with method WebPathToGitPath in file ./services/wiki/wiki_path.go
@bauermarkus if you need access to your files in wiki pages, for now you can create link like this:
For example, if your main branch is named master, files is directory in root
[Link name](/raw/branch/master/files/MyFile.pdf "Test Alt text")

@BElluu Thanks a lot. But if I do that, I get a 404

I'm interested in fixing this bug and would like to open a pull request soon.
I managed to reproduce this locally and made a proof-of-concept fix, which, at first glance, seems to work:
Relative links to files which are not registered as renderable by Gitea now feature a raw link instead of a regular wiki link.
Before:

After:

For reference, this is the wiki markdown file I created for testing ( Home.md ):
Welcome to the Wiki.

[Test file](files/test-file.zip "An ordinary test file")

Since it's not by design in previous versions, I think feature is a better label for this issue.


RaggedTensor support for sparse_categorical_crossentropy.

Attempt to support RaggedTensors in sparse_categorical_crossentropy loss.

Independently to the OP_REQUIRES issue, which I could not tackle, is the sparse_categorical_crossentropy expected to work in case there are multiple ragged dimensions? For example, the batch examples are images and we classify every pixel?
It seems that such a scenario works with binary_crossentropy from #47075, but if crashes here. Notably, the following seems to work:
sce_obj = tf.losses.SparseCategoricalCrossentropy()
y_true = tf.ragged.constant([[1, 1], [0]])
y_pred = tf.ragged.constant([[[0.1, 0.9], [0.1, 0.9]], [[0.9, 0.1]]])
print(sce_obj(y_true, y_pred))

but after adding another ragged dimension
y_true = tf.ragged.constant([[[1, 1]], [[0]]])
y_pred = tf.ragged.constant([[[[0.1, 0.9], [0.1, 0.9]]], [[[0.9, 0.1]]]]) # both without and with `inner_shape=(2,)`
print(sce_obj(y_true, y_pred))

it crashes with ValueError: TypeError: object of type 'RaggedTensor' has no len().
It seems to be connected to _convert_to_dense in _ragged_tensor_apply_loss, because if the _convert_to_dense just passes through the inputs unchanged, the example above works.

@foxit Added a test with the example you provided and changed the approach a bit to avoid the warning generated by the previous code.

A gentle bump after two weeks -- we would be grateful for a review.
Thanks & cheers.

@pedro-r-marques can you please check build failures ?

@rthadur Fixed. It was a pylint error for an unused import.

@rthadur Can you please check why the CL doesn't built internally to google ?

@pedro-r-marques seeing this error internally
tensorflow/python/util/dispatch.py", line 206, in wrapper
   return target(*args, **kwargs)
 File "/tensorflow/python/keras/losses.py", line 1736, in sparse_categorical_crossentropy
   y_pred = ops.convert_to_tensor_v2_with_dispatch(y_pred)
 File "/tensorflow/python/util/dispatch.py", line 206, in wrapper
   return target(*args, **kwargs)
 File "/tensorflow/python/framework/ops.py", line 1429, in convert_to_tensor_v2_with_dispatch
   value, dtype=dtype, dtype_hint=dtype_hint, name=name)
 File "/tensorflow/python/framework/ops.py", line 1439, in convert_to_tensor_v2
   as_ref=False)
 File "/tensorflow/python/profiler/trace.py", line 163, in wrapped
   return func(*args, **kwargs)
 File "/tensorflow/python/framework/ops.py", line 1564, in convert_to_tensor
   ret = conversion_func(value, dtype=dtype, name=name, as_ref=as_ref)
 File "/tensorflow/python/framework/constant_op.py", line 340, in _constant_tensor_conversion_function
   return constant(v, dtype=dtype, name=name)
 File "/tensorflow/python/framework/constant_op.py", line 266, in constant
   allow_broadcast=True)
 File "/tensorflow/python/framework/constant_op.py", line 277, in _constant_impl
   return _constant_eager_impl(ctx, value, dtype, shape, verify_shape)
 File "/tensorflow/python/framework/constant_op.py", line 302, in _constant_eager_impl
   t = convert_to_eager_tensor(value, ctx, dtype)
 File "/tensorflow/python/framework/constant_op.py", line 99, in convert_to_eager_tensor
   return ops.EagerTensor(value, ctx.device_name, dtype)
ValueError: TypeError: object of type 'RaggedTensor' has no len()

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
 File "/py/absl/testing/parameterized.py", line 314, in bound_param_test
   return test_method(self, **testcase_params)
 File "/tensorflow/python/framework/test_combinations.py", line 367, in decorated
   execute_test_method()
 File "/tensorflow/python/framework/test_combinations.py", line 350, in execute_test_method
   test_method(**kwargs_to_pass)
 File "/tensorflow/python/keras/losses_test.py", line 1180, in test_ragged_tensors_3d
   loss = cce_obj(y_true, y_pred)
 File "/tensorflow/python/keras/losses.py", line 155, in __call__
   losses = call_fn(y_true, y_pred)
 File "/tensorflow/python/keras/losses.py", line 259, in call
   return ag_fn(y_true, y_pred, **self._fn_kwargs)
 File "/tensorflow/python/util/dispatch.py", line 210, in wrapper
   result = dispatch(wrapper, args, kwargs)
 File "/tensorflow/python/util/dispatch.py", line 122, in dispatch
   result = dispatcher.handle(args, kwargs)
 File "/tensorflow/python/util/dispatch.py", line 154, in handle
   return self._override_func(*args, **kwargs)
 File "/tensorflow/python/keras/losses.py", line 1762, in _ragged_tensor_sparse_categorical_crossentropy
   return _ragged_tensor_apply_loss(fn, y_true, y_pred, y_pred_extra_dim=True)
 File "/tensorflow/python/keras/losses.py", line 1291, in _ragged_tensor_apply_loss
   assertion_list = ragged_util.assert_splits_match(nested_splits_list)
 File "/tensorflow/python/ops/ragged/ragged_util.py", line 52, in assert_splits_match
   raise ValueError(error_msg)
ValueError: Inputs must have identical ragged splits

@rthadur
I've updated the patch with the following change in  _ragged_tensor_apply_loss:
-  if y_pred_extra_dim and y_pred.shape[-1] is None:
+  if y_pred_extra_dim:
     nested_splits_list[1] = nested_splits_list[1][:-1]

The flag y_pred_extra_dim is only set when calculating losses for sparse categorical cross entropy since we expect the shape of y_pred to have one extra dimension. This if statement had an extra check which is both unnecessary and incorrect. I would appreciate it if you could trigger the google internal CI and check that the patch passes the tests.

@tomerk @rthadur Please retrigger the CI.


Point light attenuation/falloff does not work when cast_shadows is enabled

Environment

OS Version:  Ubuntu 20.04
Source or binary build? source, ign-rendering6, f043b4fc
Render Engine: ogre2

Description

Expected behavior: Point light attenuation/falloff to work regardless of cast_shadows.
Actual behavior:
When cast_shadow is enabled, the light does not falloff according to the attenuation parameters. For example, given the following light source

<light type="point" name="mylight">
  <cast_shadows>true</cast_shadows>
  <pose>0 0 2.5 0 0 0</pose>
  <diffuse>0.8 0.8 0.8 1</diffuse>
  <specular>0.8 0.8 0.8 1</specular>
  <direction>0 0 -1</direction>
  <intensity>2</intensity>
  <attenuation>
    <range>4</range>
    <linear>0.5</linear>
    <constant>0.2</constant>
    <quadratic>0.01</quadratic>
  </attenuation>
</light>

with cast_shadows = true, I get a sharp circle determined by the range (4m) of the light.

with cast_shadows = false, the light falls of smoothly, but the box does not have a shadow.

Steps to reproduce

Run the attached file (test.sdf.txt) in ign gazebo.
Change <cast_shadows> to true or false.

This may actually be a different (but related) error.
Without cast_shadows
When cast_shadows is disabled Forward+ (from now on F+) algorithm is used by the lighting system. Very big lights can cause severe performance degradation; but small lights usually end up cut "abruptly".
Lights theoretically travel through infinity, so any radius that limits is range is going to be arbitrary. Using Light::setAttenuationBasedOnRadius helps cutting the arbitrariness by providing a minimum luminance threshold (i.e. pretend the light cuts off once % of luminance is reached) but it still gives you less flexibility.
As a hack/workaround, ForwardPlusBase::setFadeAttenuationRange is enabled by default; which will smoothly attenuate when getting close to the light's radius; regardless of PBR parameters of physical attenuation.
TL;DR The light's attenuation settings are honoured, but an extra (much more aggressive) fade is applied on top unless ForwardPlusBase::setFadeAttenuationRange( false ) is called.
With cast_shadows
When cast_shadows is enabled, regular Forward is used (without the +). Because in this case light's size has no direct impact on performance; we don't use the hack; and the light's attenuation settings are honoured without any hacks.
Solution?
That will depend on the intention. The physically correct solution is to call setFadeAttenuationRange( false ) and either use a very aggressive attenuation or a very large radius to avoid blockiness-like artifacts (light curring suddenly)
Other solutions is to just be aware of this and tweak the attenuation until they both agree.

Expected behavior: Point light attenuation/falloff to work regardless of cast_shadows.

I can confirm that is is not only related to point lights: spot light shows the same behaviour (left with, right without shadow):


Better PDF rendering

Current way PDF's are generated works for a few RUPS and has issues with many.  Want to make a new page containing all the regular RUP page components and generate pdf using that page.
Will explore offerings online, react specific and otherwise then choose what is appropriate.

duplicate, has since been broken down into other issues


Exposure time inconsistencies

I have a question about the inconsistencies in the way that the RGB and Depth/IR cameras of the D400 cameras handle exposure time.
The exposure time of the depth/IR cameras of the D435 and D455 can be very precisely set in microseconds.
The exposure time of the RGB camera appears to be set in "hundreds of microseconds" which is a strange format. Additionally instead of using the requested exposure time, it will be automatically clamped to a nearest value in an unknown list of exposure values. This can be easily tested in the RealSense Viewer.
This is understandable on a camera like the D435 where the RGB and IR cameras are different hardware. I assume that the RGB camera has some limitation where it needs to be set at a specific value, and maybe that is where the "hundreds of microseconds" comes from.
However on the D455 the RGB camera is apparently the exact same camera as the IR cameras. If the IR cameras can be precisely set in microseconds, why can't the RGB camera? Is this an unnecessary holdover in the SDK from the previous cameras?
Is this something that can be fixed in software/firmware? Or is it a hardware limitation?

@sam598 hello,
The control's granularity in FW is 100usec with effective range of [1-10000], so the bottleneck is definitely is in the host.
You haven't mentioned the OS used, but in Win10 the RGB sensor's exposure control is implemented using logarithmic scale logarithmic scale. If that's the case then unfortunately there is no way to override it.
Linux OS doesn't have this limitation and the user can select an arbitrary exposure value within the full range.
Possible duplicate of #5493

@sam598 hello,
The control's granularity in FW is 100usec with effective range of [1-10000], so the bottleneck is definitely is in the host.
You haven't mentioned the OS used, but in Win10 the RGB sensor's exposure control is implemented using logarithmic scale logarithmic scale. If that's the case then unfortunately there is no way to override it.
Linux OS doesn't have this limitation and the user can select an arbitrary exposure value within the full range.
Possible duplicate of #5493

Fascinating. So on Linux if you set the exposure to 4980usec the firmware will round up to 5000usec?

Fascinating. So on Linux if you set the exposure to 4980usec the firmware will round up to 5000usec?

Almost, it is just you can't set 4980 on Linux as the units are 100usec.
You can specify integer value of 49 or 50 (4900 or 5000 usec). So there is no need for round up/down by design.

Almost, it is just you can't set 4980 on Linux as the units are 100usec.
You can specify integer value of 49 or 50 (4900 or 5000 usec). So there is no need for round up/down by design.

Are the infrared/depth cameras limited to 100usec as well, or will the sensor have an exposure with 1usec precision?

Are the infrared/depth cameras limited to 100usec as well, or will the sensor have an exposure with 1usec precision?

@sam598 , to emphasize the info provided in the above discussion applies to the RGB sensor only.
IR/Depth stream exposure control can be set with 1usec granularity, uses a different range of [1-165000]usec and has no limitations on neither OS.

@sam598 , to emphasize the info provided in the above discussion applies to the RGB sensor only.
IR/Depth stream exposure control can be set with 1usec granularity, uses a different range of [1-165000]usec and has no limitations on neither OS.

Thank you for the clarifications. Is this information available somewhere in the documentation or data sheets?

Thank you for the clarifications. Is this information available somewhere in the documentation or data sheets?


System.NotImplementedException after adding layer or light in MaterialCreator

Issue Type
[x] Bug Report
Current Behavior
MaterialCreator crashes when clicking the "+" button for "Add layer" or "Add light".
The error message is
System.NotImplementedException: The method or operation is not implemented.
   at MaterialCreator.LayerControl.LayerControl_obj1_Bindings.ProcessBindings(Object item, Int32 itemIndex, Int32 phase, Int32& nextPhase)

Expected Behavior
Adding a layer or light without a crash
Steps to Reproduce (for bugs)

Clone this repo
Retarget the MaterialCreator solution to the 17763 SDKs
Run the MaterialCreator app
Click the "+" button for "Add layer"

Your Environment

SDK #:  17763
Operating System build # :  Windows 10 build 17763
Visual Studio Version # : 15.9 Preview 3

@hansmbakker Thanks for the feedback! We've pushed updates that fix this issue on our end - can you let us know if these work on your end as well?


hls streaming not working

Hi,
I'm new to the topic of streaming, so I hope this issue isn't stupid.
I can start streaming from obs.
Consuming the stream is working using rtmp at rtmp://serverIP/stream/test but not with hls at http://serverIP:8080/live/test.m3u8
In the logs I get:
2020/03/17 20:06:10 [error] 7#7: *8 open() "/opt/data/hls/test.m3u8" failed (2: No such file or directory), client: <IP_ADDRESS>, server: , request: "GET /live/test.m3u8 HTTP/1.1", host: "serverIP:8080"
clientIP - - [17/Mar/2020:20:06:10 +0000] "GET /live/test.m3u8 HTTP/1.1" 404 555 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/82.0.4061.0 Safari/537.36"

thanks in advance
Cornelius

ok, ic. envsubst is the problem
-c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 2500k -f flv -g 30 -r 30 -s 1280x720 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_720p2628kbs

envsubst substitutes $name_720p2628kbs to empty string
see pull request #55

Ughhh I hate when I wake up to my server being down because something got changed again here that either moves or updates files that didn't previously exist.

Update command like this:`envsubst "$(env | sed -e 's/=.*//' -e 's/^/$/g')" < nginx.conf.template > nginx.conf'

How can I not use any of this envsubst thing. It's literally messed up so much.

@andrewc2 You should maintain a fork and only pull in changes from upstream as needed. Pulling from master or latest image is not an ideal setup if you don't want the latest changes every time something is merged.

@alfg Good plan.

It still doesn't work for me. I get this error
2020/03/18 14:35:10 [error] 8#8: *4 open() "/opt/data/hls/test.m3u8" failed (2: No such file or directory), client: <IP_ADDRESS>, server: , request: "GET /live/test.m3u8 HTTP/1.0", host: "nas.home:8080"
<IP_ADDRESS> - - [18/Mar/2020:14:35:10 +0000] "GET /live/test.m3u8 HTTP/1.0" 404 153 "-" "VLC/3.0.8 LibVLC/3.0.8"

while the command
ffplay -fflags nobuffer rtmp://nas.home:1935/stream/test
works completely fine and shows me the stream.
I've pulled the latest image from last night. I am not sure how I would use the suggested envsubst command.

@pethil hoping to have this fixed as part of https://github.com/alfg/docker-nginx-rtmp/pull/55.
If it's causing too much complication, I will change it back.

Hey guys, sorry for the delay. I've added the suggested fix from @absentio (thank you) to the latest build and confirmed it works. Feel free to pull the latest image.
https://github.com/alfg/docker-nginx-rtmp/commit/3a6b69a6e80e8f90e30f838aef5193cda85eb47d

I still get 404s in the browser or VLC using http://localhost:8080/live/stream.m3u8 on alfg/nginx-rtmp:latest while ffplay and VLC on rtmp://localhost:1935/stream work...
Am I missing something?

@creimers are you sure you have the latest image pulled? Which docker image ID are you using?

@alfg I'm quite sure, yes. Look at this screenshot:


Competition organizer mass messages should have a way to reply to the organizer

We don't want to reveal the organizers email, so we can use an email relay or some such to forward the message from competition participant to competition organizer.

We could add this as an "option" when sending a mass email? If you have some new checkbox selected, then it reveals your personal email in the "reply to?"


touch, not swipe

hello,
have any one tried to see the buttons , not by swiping, but just by touching the table view cell ?
thnx in advance.

Try this:
SWTableViewCell *cell = (SWTableViewCell *)[tableView cellForRowAtIndexPath:indexPath];
[cell showRightUtilityButtonsAnimated:YES];
}```


docs(readme): fix installation command for helm3

Helm3 install doesn't have --name flag
Error: unknown flag: --name

Closing in favor of #491


Structure mode does not expand as the elements grow

I've a Django CMS website with the following requirements (It is in development).
django-cms>=3.5,<3.6
djangocms-admin-style>=1.2,<1.3
django-treebeard>=4.0,<5.0
djangocms-text-ckeditor>=3.6.0
djangocms-link>=2.1
djangocms-style>=2.0
djangocms-googlemap>=1.1
djangocms-snippet>=2.0
djangocms-video>=2.0
djangocms-column>=1.7
djangocms-file>=2.0,<3.0
djangocms-picture>=2.0,<3.0
easy_thumbnails
django-filer>=1.3
Django<2.0
pytz
django-classy-tags>=0.7
html5lib>=0.999999,<0.99999999
Pillow>=3.0
django-sekizai>=0.9
six

It is working, the problem is when I go to Structure mode (by clicking on button available on right), I can see the element until the page fills after that I can't see the way to reach to the elements available at very bottom. There is no scrollbar.
Please help me in fixing this problem, I searched a lot but could not find the solution or suggest me any best Django CMS version which does not have this issue (like in previous versions, Structure and content mode was not like in the current version).
@czpython can you please suggest me?

Hello @hygull , please make sure to submit questions within the appropriate channels on either the User Mailing List, IRC (freenode#django-cms) or Stackoverflow.
You can find additional information on our support page.
In this case I also think it would be good to include screenshots.


bugdown: Support 360 degrees images(equirectangular) in image preview.

If image URL endswith "_360." + extension, then a javascript panorama
viewer is used in image preview by adding "360_image" class to the
preview. This javascript panorama viewer uses panolens.min.js and
three.min.js.
This commit adds two new javascript libraries to Zulip. I don't know if it
really worths, because both panolens.min.js and three.min.js are big
libraries and they must make Zulip slow which is very bad. So I would like
to find a way to make this new image preview as an option. Since I like 360
degrees pictures very much, I implemented it during Zulip sprint at PyConJP.

Thanks for this contribution!

This commit adds two new javascript libraries to Zulip. I don't know if it
really worths, because both panolens.min.js and three.min.js are big
libraries and they must make Zulip slow which is very bad. So I would like
to find a way to make this new image preview as an option. Since I like 360
degrees pictures very much, I implemented it

I think the ideal solution would be for those libraries to be pulled in only when the user needs them -- only if they actually see a 360-degree image in a message, and then open it in the lightbox. That way it would be available for people who want to use it, and wouldn't require turning on an organization option or something (which would make the feature much harder to find for most people), but wouldn't cost anything for users that aren't making use of it.
I don't know much about our frontend infrastructure, so I asked about this in chat:
https://chat.zulip.org/#narrow/stream/frontend/subject/lazy.20library.20loading/near/278759

Thank you. I will study how webpack's lazy library works.

@brockwhittaker can you also review the code and experience, assuming that we're able to solve the lazy-loading issue?
(One specific thing: is the _360 thing a standard convention, or something we made up here?

Closing, since I think this PR may be easier to redo from scratch given how stale it is, and the fact we've rewritten our lightbox in the meantime.


[BUG] Reprovision Workflow IT is flaky

What is the bug?
FlowFrameworkRestApiIT.testReprovisionWorkflow() is flaky.  During 2.17.0 release it required multiple retries to pass on Windows x86.  There are occasional GitHub CI failures on other platforms, see https://github.com/opensearch-project/flow-framework/actions/runs/10777769278/job/29887668921#step:4:59 (Ubuntu) and https://github.com/opensearch-project/flow-framework/actions/runs/10777865339/job/29888745661#step:4:49 (macOS)
FlowFrameworkRestApiIT > testReprovisionWorkflow FAILED
    org.junit.ComparisonFailure: expected:<[COMPLET]ED> but was:<[FAIL]ED>
        at __randomizedtesting.SeedInfo.seed([4D7D6[49](https://github.com/opensearch-project/flow-framework/actions/runs/10777865339/job/29888745661#step:4:50)945752BD3:196DC17D8E477B7D]:0)
        at org.junit.Assert.assertEquals(Assert.java:117)
        at org.junit.Assert.assertEquals(Assert.java:146)
        at org.opensearch.flowframework.FlowFrameworkRestTestCase.getAndAssertWorkflowStatus(FlowFrameworkRestTestCase.java:7[53](https://github.com/opensearch-project/flow-framework/actions/runs/10777865339/job/29888745661#step:4:54))
        at org.opensearch.flowframework.FlowFrameworkRestTestCase.lambda$getResourcesCreated$7(FlowFrameworkRestTestCase.java:805)
        at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1136)
        at org.opensearch.flowframework.FlowFrameworkRestTestCase.getResourcesCreated(FlowFrameworkRestTestCase.java:804)
        at org.opensearch.flowframework.rest.FlowFrameworkRestApiIT.testReprovisionWorkflow(FlowFrameworkRestApiIT.java:471)

How can one reproduce the bug?
Run our CI repeatedly.  It fails reasonably often.
What is the expected behavior?
Tests consistently pass.
What is your host/environment?
Reproducible on Windows, Linux, macOS as shown above
Do you have any additional context?
The failure is occurring consistently on the attempt to reprovision to remove default ingest pipeline (setting it to _none, which is the SearchPipelineService.NOOP_PIPELINE_ID).
The change in default pipeline name is the only difference in the two templates.

Observations:

The logs are confusing because the execution sequence uses the original step id's, even though there are "update" steps or "workflow data" steps under the hood. Logging should be improved to include not only the id ("create_index") in this case, but the type (which is actually supposed to be "update_index").

» [2024-09-09T17:07:20,500][INFO ][o.o.f.t.ReprovisionWorkflowTransportAction] [integTest-0] Queueing process [create_openai_connector]. Can start immediately!
» [2024-09-09T17:07:20,500][INFO ][o.o.f.t.ReprovisionWorkflowTransportAction] [integTest-0] Queueing process [register_openai_model]. Must wait for [create_openai_connector] to complete first.
» [2024-09-09T17:07:20,500][INFO ][o.o.f.t.ReprovisionWorkflowTransportAction] [integTest-0] Queueing process [create_ingest_pipeline]. Must wait for [register_openai_model] to complete first.
» [2024-09-09T17:07:20,500][INFO ][o.o.f.t.ReprovisionWorkflowTransportAction] [integTest-0] Updated template for hE7B15EBOAAJWyIRCqLQ
» [2024-09-09T17:07:20,500][INFO ][o.o.f.t.ReprovisionWorkflowTransportAction] [integTest-0] Queueing process [create_index]. Must wait for [create_ingest_pipeline] to complete first.
» [2024-09-09T17:07:20,500][INFO ][o.o.f.w.ProcessNode      ] [integTest-0] Starting create_openai_connector.
» [2024-09-09T17:07:20,500][INFO ][o.o.f.w.ProcessNode      ] [integTest-0] Finished create_openai_connector.
» [2024-09-09T17:07:20,500][INFO ][o.o.f.w.ProcessNode      ] [integTest-0] Starting register_openai_model.
» [2024-09-09T17:07:20,500][INFO ][o.o.f.w.ProcessNode      ] [integTest-0] Finished register_openai_model.
» [2024-09-09T17:07:20,501][INFO ][o.o.f.w.ProcessNode      ] [integTest-0] Starting create_ingest_pipeline.
» [2024-09-09T17:07:20,501][INFO ][o.o.f.w.ProcessNode      ] [integTest-0] Finished create_ingest_pipeline.
» [2024-09-09T17:07:20,501][INFO ][o.o.f.w.ProcessNode      ] [integTest-0] Starting create_index.
» [2024-09-09T17:07:20,503][INFO ][o.o.f.t.GetWorkflowStateTransportAction] [integTest-0] Querying state workflow doc: hE7B15EBOAAJWyIRCqLQ
» [2024-09-09T17:07:20,535][INFO ][o.o.f.t.ReprovisionWorkflowTransportAction] [integTest-0] updated workflow hE7B15EBOAAJWyIRCqLQ state to FAILED

Looking at WorkflowProcessSorter.createProcessNode(), the expectation is the ProcessNode properly looks up the Update step in Case 2, which calls createUpdateProcessNode().

        String updateStepName = WorkflowResources.getUpdateStepByWorkflowStep(node.type());
        if (updateStepName != null) {
            WorkflowStep step = workflowStepFactory.createStep(updateStepName);
            return new ProcessNode(
                node.id(),
                step,

But the stack trace indicates it's executing CreateIndexStep:
» ERROR][o.o.f.t.ReprovisionWorkflowTransportAction] [integTest-0] Reprovisioning failed for workflow hE7B15EBOAAJWyIRCqLQ during step create_index.
»  org.opensearch.flowframework.exception.WorkflowStepException: Failed to create the index my-nlp-index
»  	at org.opensearch.flowframework.workflow.CreateIndexStep.lambda$execute$1(CreateIndexStep.java:120) ~[?:?]

That indicates we're matching case 1:

        if (!originalTemplateMap.containsKey(node.id())) {
            // Case 1: Additive modification, create new node
            return createNewProcessNode(node, data, predecessorNodes, nodeTimeout);

Going back to the test case, there are actually two reprovisionings that occur; the original template provisioned only has the first 3 steps. The "create index" is added with the 4th step to trigger Case 1 (which completes successfully).  But it appears the second reprovision may be comparing vs. the original template.
The original template is populated by a GET request early in the reprovisioning process.  It appears that in this case it may not have been updated.
Looking at ReprovisionWorkflowTransportAction.executeWorkflow() we see that the state index is updated first, before the template is replaced in the global context:

            flowFrameworkIndicesHandler.updateFlowFrameworkSystemIndexDoc(
                workflowId,
                Map.ofEntries(
                    Map.entry(STATE_FIELD, State.COMPLETED),
                    Map.entry(PROVISIONING_PROGRESS_FIELD, ProvisioningProgress.DONE),
                    Map.entry(PROVISION_END_TIME_FIELD, Instant.now().toEpochMilli())
                ),
                ActionListener.wrap(updateResponse -> {

                    logger.info("updated workflow {} state to {}", workflowId, State.COMPLETED);

                    // Replace template document
                    flowFrameworkIndicesHandler.updateTemplateInGlobalContext(
                        workflowId,
                        template,
                        ActionListener.wrap(templateResponse -> {
                            logger.info("Updated template for {}", workflowId, State.COMPLETED);
                        }, exception -> {
                            String errorMessage = "Failed to update use case template for " + workflowId;
                            logger.error(errorMessage, exception);
                        }),
                        true  // ignores NOT_STARTED state if request is to reprovision
                    );
                }, exception -> { logger.error("Failed to update workflow state for workflow {}", workflowId, exception); })
            );

Conclusion: We have a race condition in the test: the first reprovision (which adds a create_index step) completes successfully and updates the state to completed; which in the test case moves on to reprovision a second time.  It fails in the case where the GET occurs before the update, fetching the earlier copy of the template.
Needed fix: Make sure the template is updated before reporting the state as COMPLETED.

@gaiksaya do you want us to try to merge a fix for this into 2.17.1?

If it is just a test fix then sure @dbwiddis.
cc: @getsaurabh02 @Divyaasm

Should be merged shortly:

https://github.com/opensearch-project/flow-framework/pull/882

For clarity, PR #882 fixed the integration test, but there are still some underlying issues that need addressing in another PR:

[ ] Logging is unclear as it is using the old step id (e.g., create_index) rather than the name of the step actually being used (e.g., update_index).
[ ] The template update occurs after the completion of all the reprovisioning (unless it fails in which case the original template remains).  This is inconsistent with normal provisioning where the template is updated before any provisioning action.


fix: use correct private key for anvil testing

This fixes #24 .
@Gajesh2007  can you please confirm if typescript version is not affected with this change?

Typescript version isn't working at the moment, your PR fixes also #25

included in https://github.com/Layr-Labs/hello-world-avs/commit/c49ece411b7f3c2ad45b0c2fe4d0710041e0d8cb


Verification sets and test sets differ greatly in accuracy

When training with training set, the accuracy of verification set can reach 78.5, while when training from scratch with training set and verification set, the accuracy can only reach 77.2 on the test server. What is the reason

您好！
请问您的问题解决了吗？
我也遇到了同样的问题，PIDNet在cityscapes数据集val可达到78.2的精度，但在test只有75.5的miou。
请问是如何解决的训练验证相差过大的问题？期待您的回复，谢谢。


AttributeError

as shown in the figure

I wonder there is something wrong with my package. I just copied the code and ran pip install jaxqualin on bash, and ran this notebook: jaxqualin/docs/notebooks/example_mode_selection.ipynb, then I found this error.

In order to avoid missing some relevant packages, I intercepted the entire pip list.


Only deploy to privatelink mgmt/service clusters

For management/service clusters, only deploy AVO SSS if they are PrivateLink as well

Codecov Report

Merging #84 (09771c3) into main (8ad24ea) will not change coverage.
The diff coverage is n/a.

Additional details and impacted files

@@           Coverage Diff           @@
##             main      #84   +/-   ##
=======================================
  Coverage   61.92%   61.92%
=======================================
  Files          26       26
  Lines        1187     1187
=======================================
  Hits          735      735
  Misses        367      367
  Partials       85       85


Project Roadmap

(WIP)
Main Blockers
Screenpad Plus

[ ] Display output
Pre-OS (OpenCore verbose)

[x] UEFI GOP

iGPU Framebuffer

[ ] Valid clock data
[ ] Proper RGB screenspace
[ ] QE/CI acceleration

[ ] Display metadata (EDID)

[ ] Device Name (Cosmetic)
[x] Device and Vendor IDs
[ ] Valid resolution data
[ ] Physical size info (Cosmetic)

[x] Touchscreen

[x] Basic pointer functionality
[x] Multitouch Gestures
[ ] GPIO Pinning (addresses intermittency issue)

[ ] Backlight control

[ ] Leveled slider control
[x] Power toggle

Trackpad

[x] Trackpad functionality

[x] Basic pointer functionality
[x] Multitouch Gestures
[x] Disable force-touch pressure collision (for Recovery)
[ ] GPIO Pinning (addresses intermittency issue)

[ ] Physical buttons

[x] Recognize PS2 interface
[ ] Proper button mapping

Misc. Interface Devices

[x] Primary Display (Touchscreen)

[x] Basic pointer functionality
[x] Multitouch Gestures
[ ] GPIO Pinning (addresses intermittency issue)

[ ] Capacitive Stylus

[ ] Basic pointer functionality

Misc. Audio Devices

[x] Built-in Speakers
[ ] Built-in Microphone

IR Devices

[ ] Windows Hello Camera

Some additional software features to test/develop for non-opencore targets:

[ ] Virtual Touchbar (link to project).

[ ] Refactor for compiling to different macOS versions.

[ ] Fan Control
(os agnostic)

[ ] Create ACPI patch to expose basic fan controls

Windows

[ ] Recover EC writes from MyASUS driver.
[ ] Create notebookfancontrol profile (for non-opencore use).

Linux

[ ] Port fan control to ASUS linux driver

macOS

[ ] Expose fan control through AsusSMC kext
[ ] Expose fan control through touchbar slider


FLAP-118: added selenium tests for the run inputs dialog in the machi…

…nist ui
Description
FLAP-118: Added tests to check the different available texts on the run input dialogue box0
Link to work item
https://flapflap.atlassian.net/jira/software/projects/FLAP/boards/1/backlog?selectedIssue=FLAP-118
How to Test
Run the play button to see if the tests pass or not (but all tests passes)

@theNafsters you've got some CI failures - need any assistance debugging?

Also has failing CI build, can you check that out @theNafsters? Let me know if you need any help debugging


Is netcfg still alive?

Hi, I'm just wondering is still active.  Last release was on 2013 (6 years ago?).  I really like netcfg, and for non systemd Arch based systems, like the Artix distro, netcfg becomes more than handy.  So wondering if netcfg is to be considered maintained or not.
Thanks !

Does not seem so unfortunately, but I still use it, too.


Feature Request - Implement StackSizeEditor

Is there a chance you could make an updated version of the StackSizeEditor mod by Taki707?
Would it take much work? Thanks.

From a quick look it seems that would take me at least a whole day to figure out what's going on there and fix it. And since there seems to be a few alternative mods, I'm not sure if that would be worth it.

This is the only mod that allows changing the stack size of each individual item separately. All the others make all the stack sizes the same. Different things need different stack sizes.
Thanks anyway. I suppose it's time for me to do some programming again and look into it myself.
Thanks for looking at this.


Tuning codecov support

I don't think it's working. There is probably something that needs to happen within travis or only available to the admin.
If anyone knows how to get this working, advice would be appreciated.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@905f4f3). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             master     #27   +/-   ##
========================================
  Coverage          ?   79.2%
========================================
  Files             ?       4
  Lines             ?     327
  Branches          ?       0
========================================
  Hits              ?     259
  Misses            ?      68
  Partials          ?       0

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 905f4f3...e4ec457. Read the comment docs.


SCM: initialize git repository should use an icon

@bpasero not using an icon at least makes it clear what it does.
Here's an icon I found VS is using. Let me know how you feel about it

@isidorn I just find it weird to argue like that given we have tons of icons for actions in all other places and never a label. I would go for an icon to be consistent.

@isidorn to be fair, what I would probably expect is our old experience with a prominent button in the center similar to this one:

Yes I agree that the styled text is the best experience and I already created an issue for that https://github.com/Microsoft/vscode/issues/23421
I think @joaomoreno is passionate about this and I might not do this while he is away

Not feeling enough vibes for this.


Replace numpy.product() with .prod()

This PR replaces the deprecated numpy.product() calls with equivalent calls to numpy.prod(), which is compatible with numpy 2.0.

It is possible that the new approach here works in both 1.x and 2.x, whereas the old one works only in 1.x. Can you verify?
Specify a minimum numpy version (and testing against it) is a good idea in any case, but we should continue to support 1.x for awhile yet, per NEP 29.

"New in version 1.7.0"
https://numpy.org/doc/stable/reference/generated/numpy.prod.html#numpy.prod

I can confirm that it works with the current requirements in tiled
(tiled-dev) C:\Users\jmaruland>conda list | grep numpy
msgpack-numpy             0.4.8                    pypi_0    pypi
numpy                     1.26.2                   pypi_0    pypi
numpydoc                  1.6.0                    pypi_0    pypi

(tiled-dev) C:\Users\jmaruland>ipython
Python 3.11.5 | packaged by Anaconda, Inc. | (main, Sep 11 2023, 13:26:23) [MSC v.1916 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 8.15.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import numpy as np

In [2]: arr = np.ones([4,3])

In [3]: arr.shape
Out[3]: (4, 3)

In [4]: np.product(arr.shape)
Out[4]: 12

In [5]: np.prod(arr.shape)
Out[5]: 12


Intro section of home page

🚀 Feature
**Want to create a Home Page Banner **

@Nikhita28 assign please


Add basic login/password security

We like OM and want our managers to use it,  but we don't be able to use any SSO security for OM. It is block for us now.
It will be great if i could add new users as admin set up login/password for them.

Fixed with #7558


Wrong highlight on the line that was not the one that failed the test

Every time there is a wrong expectation in the test, it will highlight on a wrong line. From what I noticed, it always highlights on the first line of the test/example. The correct behavior should highlight the line that caused the test to fail with the wrong expectation.

Can you try and recreate with this minimal config:
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({
    "git",
    "clone",
    "--filter=blob:none",
    "--single-branch",
    "https://github.com/folke/lazy.nvim.git",
    lazypath,
  })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  {
    "nvim-neotest/neotest",
    lazy = true,
    dependencies = {
      "olimorris/neotest-rspec",
    },
    config = function()
      require("neotest").setup({
        adapters = {
          require("neotest-rspec"),
        },
      })
    end,
  },
}

require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

If you run nvim --clean -u minimal.lua to load the minimal config then test again. I can then work on a bugfix

@olimorris as your suggestion, I tried to start the minimal.lua in my project root, but it said "No tests found" when I tried to run on test file with this command lua require("neotest").run.run().
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
	vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
	vim.fn.system({
		"git",
		"clone",
		"--filter=blob:none",
		"--single-branch",
		"https://github.com/folke/lazy.nvim.git",
		lazypath,
	})
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
	{
		"nvim-neotest/neotest",
		lazy = true,
		dependencies = {
			"nvim-lua/plenary.nvim",
			"nvim-treesitter/nvim-treesitter",
			"antoinemadec/FixCursorHold.nvim",
			"olimorris/neotest-rspec",
		},
		config = function()
			require("neotest").setup({
				adapters = {
					require("neotest-rspec"),
				},
			})
		end,
	},
}

require("lazy").setup(plugins, {
	root = root .. "/plugins",
})

Arghhh. Of course it did. I forgot to include Treesitter:
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({
    "git",
    "clone",
    "--filter=blob:none",
    "--single-branch",
    "https://github.com/folke/lazy.nvim.git",
    lazypath,
  })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  {
    "nvim-treesitter/nvim-treesitter", -- Smarter code understanding like syntax Highlight and navigation
    build = ":TSUpdate",
    config = function()
      require("nvim-treesitter.configs").setup({
        ensure_installed = "all",
      })
    end,
  },
  {
    "nvim-neotest/neotest",
    lazy = true,
    dependencies = {
      "olimorris/neotest-rspec",
    },
    config = function()
      require("neotest").setup({
        adapters = {
          require("neotest-rspec"),
        },
      })
    end,
  },
}

require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

Apologies...this is what happens when you don't set an issue template in GitHub.
Don't forget to rm -rf the .repro folder too.

Ah, I forget to install the treesitter. After I installed the treesitter and started with nvim --clean -u minimal.lua, I still got the same result which poiting to the wrong line.

Actually, I've been able to recreate this. It's because the command we're sending to RSpec is for the "it" block, and not for the expect block.
That being said, the result should be shown on the line above and I've fixed that in 1b6ad445236bbe453bf9217aa7f82a5afff33f15.
I'll see what we can do about putting the failure on the specific line...

Thank @olimorris, now it shows as virtual text at the same line as it block.

I'll see what we can do about putting the failure on the specific line...

For putting the failure on the specific line, I notice neotest-jest adapter has the correct behaviour that we expected.

Appreciate the tip! I haven't looked at RSpec for a while so it might be just a feature of jest but I will take a look.

So digging into how RSpec formats JSON output (which we use in the adapter to parse and feed back to Neotest),  I can see that there isn't anything in there which outputs the actual line number responsible for the failed assertion.
I even had a look at the failures formatter but that is somewhat lacking too.
I'll do some more digging into this but it may be a PR to rspec-core or the creating of a custom formatter.

It's interesting to know there is no failed line number property directly in JsonFormatter, but I notice there are backtrace property and file_path in there, is it possible to match and get the first one because it's already in reverse order? Then we can extract the line number from there.

Brilliant spot!
In the latest commit this should be fixed. Let me know 👍🏼

Thank @olimorris, it works as expected 👍


SDWebImageDownloader cancel all operations

SDWebImageDownloader cancel all operations

:+1:
I'd like to see this merged in, much easier to have this API rather than having to manage all the operations created by
downloadImageWithURL:options:progress:completed: ourselves.
Needs a few minor changes an indicated in the line comments, apart from that - looks good to me.

Hello Mutix.
Fixed.

This was added via #1504 which adds the cancelAllDownloads method to SDWebImageDownloader


Transform response only for given API

I want to transform the resopnse for a single particular API. How can I enable the plugin on that particular API, and leave the rest of the API responses as they are now?
Quick help would be highly appreciated.
Thanks! @ComfortablyCoding @cssmagic

With the current version the only way to do so is to send the Strapi-Transformer-Ignore header on all routes that you do not want the transforms to run.
Once the next version is released you can utilize the denyList config setting to opt out of all apis that the transformation should not run on.

@ComfortablyCoding don't you think there should be a way to do it the opposite way also, i.e, mention which routes to work on? I have too many APIs being already used at many places. So I can't enable this change on my project, as it would lead to breaking changes, and sending the Strapi-Transformer-Ignore header everywhere Strapi APIs are being called is not a sane option in my case as you would imagine.
Thanks!

Agreed, I will think about this a bit more to see optimal solution for both paradigms.

Support for both deny and allow list filtering has been released in v3

@ComfortablyCoding  The deny list is not working.

@Montaser-BE Please open a new issue outlining

expected behaviour
what is currently happening
version of strapi
version of the plugin
current transformer plugin settings in plugins.js

And any other relevant debug info.


Verify SUBMARINER-LOCALCIDRS ipset being deleted on uninstall

It was noticed that SUBMARINER-LOCALCIDRS ipset deletion failed on uninstall flow with [1] error.
The issue can be addressed by flushing the ipset before
destroying it or by a short delay.
This PR applies the first method.
[1]
ipset v7.11: Set cannot be destroyed: it is in use by a kernel component
Fixes: https://github.com/submariner-io/submariner/issues/1778
Signed-off-by: yboaron<EMAIL_ADDRESS>

@yboaron should we backport this PR to release 0.12 branch?

@yboaron should we backport this PR to release 0.12 branch?

Hmm, I'm not sure about that, I don't think it's critical fix, it's a corner case that at worst may increase ipset size' and help' TCP MSS clamping for other subnets as well.
I would say it's nice to have, what's our policy for bug fixes backporting?


Re-turn on  the device after giving the turn off command from UI

Is your problem within Home Assistant (Core or Z-Wave JS Integration)?
NO, my problem is NOT within Home Assistant or the ZWave JS integration
Is your problem within Z-Wave JS UI (formerly ZwaveJS2MQTT)?
NO, my problem is NOT within Z-Wave JS UI
Checklist

[X] I have checked the troubleshooting section and my problem is not described there.

[X] I have read the changelog and my problem was not mentioned there.

Describe the bug
Hi.
Re-turn on  the device after giving the turn off command from UI
see log.
This does not allow you to use the device
Device information
Manufacturer: Philio
Model name: PAN03
Node ID in your network:
How are you using node-zwave-js?

[X] zwave-js-ui (formerly zwavejs2mqtt) Docker image (latest)
[ ] zwave-js-ui (formerly zwavejs2mqtt) Docker image (dev)
[ ] zwave-js-ui (formerly zwavejs2mqtt) Docker manually built (please specify branches)
[ ] ioBroker.zwave2 adapter (please specify version)
[ ] HomeAssistant zwave_js integration  (please specify version)
[ ] pkg
[ ] node-red-contrib-zwave-js (please specify version, double click node to find out)
[ ] Manually built from GitHub (please specify branch)
[ ] Other (please describe)

Which branches or versions?
version: 1.6.0
node-zwave-js branch:
zwave-js-ui branch:
Did you change anything?
no
If yes, what did you change?
No response
Did this work before?
Don't know, this is a new device
If yes, where did it work?
No response
Attach Driver Logfile
log.log

Node id: 048

yes, this crop from original logfile

What you see is that the driver confirms the change after attempting it, and the device always returns that it is off.
I can't tell you why that is - maybe you have remote control disabled in the configuration or so?

device_debug_info.txt
more information about device setup

Ok there is a value "RF protection state", but it seems to be set to "Unprotected".
There's also a config parameter "RF off command mode", which can be set to "Switch on". This sounds a bit like what you're experiencing, but it is supposedly set to "Switch off" already.
You could try changing both to something else and back.
If that doesn't help, I'm afraid this is a case for the manufacturer support.

The "RF off command mode" parameter determines the device's reaction to the BASIC_SET、BINARY_SWITCH_SET、command.
SWITCH_ALL_OFF.
I checked the behavior of the device with different values of this parameter. The result is the same: when a coma is applied, the device turns off and turns on again after a second. It is necessary to send a shutdown command several times in order for the device to turn off completely. Usually two to 10 times.
I am attaching a new file with debug information of the device and a manual for the device
Thank you for helping me solve the problem
info2.txt
PAN03+manual-A1_20210812.pdf

All I can see in the logs is that the device does not seem to switch. Z-Wave JS sends the OFF command, and the device acknowledges that it got the command. Then Z-Wave JS checks the status and the device tells us that it is ON.
I'm unable to help you figure out why this happens. I'm afraid only the manufacturer can do that.

It is possible to introduce a delay between the command from the state of the state and the request of the state

There already is a 1 second delay.
Maybe I'm misunderstanding... Does the device actually not turn off or is this just a UI issue?
Because if it the first, adding a further delay won't help. If it's a UI issue because the device is a bit slow, it might.

Physically, the device manages to turn off but after a couple of seconds it turns on again. Often by giving the command to turn off, you can ensure that the device remains in the off state.

So this is a device issue, not a driver issue. Delaying the query for the current state won't change this.


Add more hermetic tests

Hermetic test is a fast way to verify functionality e2e without requiring an integration test env. In addition to the basic test we have today, we should add the following:
Test framework improvements:

[ ] Run a fake k8s API server so we don't need to fake the reconcilers
[ ] Verify metrics (not added yet)

Test Case

[ ] Test when model is not found in LLMService
[ ] Test when ModelServerPool is not found
[ ] Test when no backend pods are available
[ ] Test invalid request (e.g., doesn't contain "model")
[ ] Test backend server error, client should receive an error with an appropriate error code
[ ] Verify traffic split
[ ] Test algorithm

[ ] Sheddable request succeeds when resource is available; and dropped when resource is constrained
[ ] Verify min KV cache algo without LoRA
[ ] Verify LoRA affinity algo for the "warm up" case (when no pods has loaded any LoRA yet). This requires sending multiple requests and verify later requests will be sticky to backend pods.

Please take a look at integration test setup in jobset as an example: https://github.com/kubernetes-sigs/jobset/tree/main/test/integration/controller


OCM-6387 | ci: Fix HCP cluster creation in CI

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story (OCM-xxxx):
Fixes #
Change type

[ ] New feature
[ ] Bug fix
[ ] Build
[x] CI
[ ] Documentation
[ ] Performance
[ ] Refactor
[ ] Style
[ ] Unit tests
[ ] Subsystem tests

Checklist

[ ] Subject and description added to both, commit and PR.
[ ] Relevant issues have been referenced.

/lgtm

/approve

/pj-rehearse ack

/retest

/retest


Fix wrong implementation of rowLength for embeddings

Fix wrong implementation of rowLength for embeddings and implement getAtomCount.
rowLength is meant to return the number of columns in the first structured level, and that worked for row representations. However for embeddings representations is was returning the number of atoms.
If you need the total number of atoms, the proper method is getAtomCount.

Test to avoid regression?

@FinchPowers
I had to change from rowLength to getAtomCount in a bunch of places, so now both are tested by dozens of tests.

verbal +1 !