Idempotency and reconciliation for cni iptables

:warning:  wall of text incoming :warning:
New:

Achieved feature parity between cni/istio-iptables and tools/istio-iptables. --reconciliate, --cleanup-only, and --force-apply flags are now available.
Added Ambient flag ReconcilePodRulesOnStartup, which  so far only enables reconciliation for in-pod rules creation. @bleggett is adding the logic queue all existing all existing pods to be reconciled at start.
Added end-to-end (e2e) tests for host rules (including equivalent reruns and cleanup).
Added e2e tests for in-pod rules, covering equivalent reruns (idempotency verification) and unequal reruns (reconciliation verification), along with cleanup.

Changed:

Refactored cni iptables test cases to use a common configuration list for both test cases with dummy execution (iptables_test.go) and e2e tests (iptables_e2e_test.go). It might be worth considering merging these two files.
Refactored functions related to idempotency/reconciliation in tools/istio-iptables to expose them in a way that allows easy reuse in cni/istio-iptables.
Adjusted the signatures of CreateHostRules/AppendHostRules functions to be consistent with CreateInPodRules/AppendHostRules. No more pointers to addresses.
The constructor for IPConfigurator now takes two separate configurations for pod and host. This differentiation was needed as we don’t currently plan to enable reconciliation for host rules. This is likely a better solution than running the constructor twice (which would require rediscovery of the iptables binary).

Bug Fixes:

Fixed in-pod deletion errors caused by the deletion logic expecting certain commands to work despite relevant rules not always being present. Certain rules are not created if tproxy or ingressMode is set; hence, failed deletion commands cannot reliably indicate deletion success. See commit 1b03f56.
Fixed VerifyIptablesState so it no longer ignores empty chains in iptables-input. This was not an issue in the reconciliation of tools/istio-iptables, but Ambient was affected due to ISTIO_PRERT. See commit 999874d.
Fixed VerifyIptablesState to raise a delta if the current state has ISTIO chains that are not included in the expected state. This did not cause issues in tools/istio-iptables since istio-init reruns only result in a current state that is a subset of the expected state. See commit 39c5f07.

About the idempotency and reconciliation flow is the same as tools/istio-iptables:

If iptables execution detects no delta between the current and expected/desired state, it skips the apply step unless ForceApply is set to true.
If iptables execution detects a delta and no "residue" of previous Istio-related rules, it initiates a first-time installation.
If iptables execution detects the current state is not the desired state and "residue" of previous Istio executions is present, it sets up guardrails, performs cleanup, applies new rules, and removes guardrails.
If CleanupOnly is true, iptables execution performs only cleanup, with no guardrails or application of new rules.

The only notable change between cni/istio-iptables and tools/istio-iptables is the cleanup logic.
The CNI cleanup step now consists of two passes:

First pass: Reverses all rules in the expected/desired state, which may delete non-jump rules in non-Istio chains. Same as tools/istio-iptables.
Second pass: Checks the current iptables state again and attempts to delete any jump rule to an Istio chain and any ISTIO_ chain. This relies on parsing iptables-save rules --jump field. Should be safe as it is limited to just --jump CHAIN.

The second pass is not needed for tools/istio-iptables since reruns consist of a current state that is a subset of the expected state. For CNI, it is essential, as workloads could have been enrolled by a different Istio version or instance with a different iptables configuration, resulting in different rules/chains.
Limitations:

[Affected: Delta computation] States are considered identical if they share the same rules, even if these rules appear in different orders. See comment https://github.com/istio/istio/pull/53153#discussion_r1842251402.
[Affected: Delta computation] Two states are considered identical if the only difference is that the current state has rules in non-ISTIO chains that are absent in the expected/desired state. Note: this also applies to jump rules pointing to ISTIO_* chains in OUTPUT, INPUT, etc.
[Affected: Second pass cleanup] Second pass cleanup can only leftover Istio chains and the jump to those chains. Any other non-jump rule in non-istio chains will remain as there is no way to know if it was created by Istio or the user.

tl,dr about preventing limitations:

Avoid using non-jump rules in non-ISTIO chains, as these can be difficult to clean if they are present in certain configurations and not in others.
Ensure that any difference between two configurations is more than just a rule in a non-ISTIO chain (a jump rule to an ISTIO_* chain can fall into this category).
Ensure that the only difference between two configurations is more than just the order of the rules.

In theory, the second limitation could be addressed, at least for jumps to Istio chains, by comparing the count of Istio jump rules in non-ISTIO_* chains between the current and expected states.
However, this would add quite some complexity to VerifyIptablesState, as it would require parsing the --jump field from iptables-save output (similar to the second-pass cleanup).
I did not make my mind on this yet but atm I'm inclined on keeping as it is, as it is unlikely that an Istio iptables update would only add/remove a jump to an Istio chain without any other changes at all.

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

/test all

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

Test name
Commit
Details
Required
Rerun command

release-notes_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test release-notes

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

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

Test name
Commit
Details
Required
Rerun command

release-notes_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test release-notes

unit-tests-arm64_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test unit-tests-arm64

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

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

Test name
Commit
Details
Required
Rerun command

release-notes_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test release-notes

unit-tests-arm64_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test unit-tests-arm64

unit-tests_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test unit-tests

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

Specifically for ambient/istio-cni, in cni/pkg/nodeagent/server.go on startup of the node agent we

delete any leftover hostnode rules
recreate them

It would be good to switch this to use the reconcile mode, ideally.

PR needs rebase.

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

Specifically for ambient/istio-cni, in cni/pkg/nodeagent/server.go on startup of the node agent we

delete any leftover hostnode rules
recreate them

It would be good to switch this to use the reconcile mode instead, ideally.

Yes, eventually that is the plan. I'm not sure if I will incorporate those changes into this commit or if I will split them into another one.
I will start working on this commit again at the end of the week, as I have been quite busy in the last few weeks.
My current focus is to improve the reconciliation process to cover more complex cleanup scenarios that are relevant to the CNI. e.g: reconciliation for a pod that was enrolled by an old Istio deployment with a different set of rules (due to different configuration or changes in iptables-builder) that is not caught by the current "revert iptables logic"

Not stale

So far only the additional e2e testing is missing before this can reach a review state

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

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test unit-tests-arm64

unit-tests_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test unit-tests

release-notes_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test release-notes

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

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

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test unit-tests-arm64

unit-tests_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test unit-tests

release-notes_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test release-notes

lint_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test lint

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

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

Test name
Commit
Details
Required
Rerun command

unit-tests_istio
7f8093b5638c2025833117607a3e312c978ad3c8
link
true
/test unit-tests

release-notes_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test release-notes

lint_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test lint

unit-tests-arm64_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test unit-tests-arm64

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

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

Test name
Commit
Details
Required
Rerun command

release-notes_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test release-notes

lint_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test lint

unit-tests-arm64_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test unit-tests-arm64

unit-tests_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test unit-tests

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

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

Test name
Commit
Details
Required
Rerun command

lint_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test lint

unit-tests-arm64_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test unit-tests-arm64

unit-tests_istio
9c0c0ae16e2fa24d03aecb79f7e35ea892b7af42
link
true
/test unit-tests

release-notes_istio
a4d47d9b47a6e322dd1a017fbe0300ece5b57b6f
link
true
/test release-notes

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

/test all

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

Test name
Commit
Details
Required
Rerun command

release-notes_istio
b17428a58afff892411e21539eed0a63109fdd9d
link
true
/test release-notes

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

I added the first set of tests that cover "equivalent reruns" for both InPod and host rules.
Tomorrow I will work on the "unequal reruns" which focus more on the reconciliation part.

/test all

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

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
682e261f70ce0e222435a641b41fe24051a97412
link
true
/test unit-tests-arm64

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

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

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
682e261f70ce0e222435a641b41fe24051a97412
link
true
/test unit-tests-arm64

integ-basic-arm64_istio
682e261f70ce0e222435a641b41fe24051a97412
link
true
/test integ-basic-arm64

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

/retest-required

At long last, I believe the commit is ready. Apologies for the time it took to get there! :)
The test coverage for CNI now also includes reconciliation with the "unequal reruns" test cases.
Before moving it to official review, I’ll prepare a write-up to explain the changes, limitation, improvements, and bug fixes in the commit, as quite a bit is going on here.

Before moving it to official review, I’ll prepare a write-up to explain the changes, limitation, improvements, and bug fixes in the commit, as quite a bit is going on here.

I'm going to start building on this to fix https://github.com/istio/ztunnel/issues/1360 in the interim, since that's a 1.24.1 blocker, so we are looking to get this in quick.
A general doc on how reconciliation and idempotency works would be good as a separate PR, that can go into a README here: https://github.com/istio/istio/tree/master/tools/istio-iptables

I'm going to start building on this to fix istio/ztunnel#1360 in the interim, since that's a 1.24.1 blocker, so we are looking to get this in quick.

Thank you, let me know if there is any issue that needs addressing from my side.

A general doc on how reconciliation and idempotency works would be good as a separate PR, that can go into a README here: https://github.com/istio/istio/tree/master/tools/istio-iptables

Yes, I will do that after this commit, in the meantime I have added a wall of text as the PR description that goes through all the important details of this PR. Please take a look at the limitation paragraph.

/test all

Simple guidelines to dodge limitations:
1. Avoid using non-jump rules in non-ISTIO chains, as these can be difficult (or rather impossible...) to clean if they are present in certain configurations and not in others.

2. Ensure that any difference between two configurations is more than just a rule in a non-ISTIO chain (a jump rule to an ISTIO_* chain can fall into this category!).

3. Ensure that the only difference between two configurations is more than just the order of the rules.

In theory, the second limitation could be addressed, at least for jumps to Istio chains, by comparing the count of Istio jump rules in non-ISTIO_* chains between the current and expected states. However, this would add quite some complexity to VerifyIptablesState, as it would require parsing the --jump field from iptables-save output (similar to the second-pass cleanup). I haven’t made up my mind on this yet, but at the moment, I’m inclined to keep it as it is. It's unlikely that an Istio iptables update would only add or remove a jump to an Istio chain without any other changes.

Yeah this seems fine to me, and a doc can address this with basic hygiene rules we've talked about already (we could actually lint for these pretty easily too)

Adding or changing anything in top-level chains that isn't a jump to an ISTIO_ chains is a lint/PR fail.
Adding an ISTIO_ chain without a corresponding jump to it is a lint/PR fail.

Ambient already follows these rules but we need to make sure we keep following them (with automation guardrails, ideally).

Yes, linting would be a natural follow-up to this. The linter could run on all the test data we have for iptables, and the helper functions could be reused to parse the iptables-restore input inside those test data files.

PR needs rebase.

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

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

Test name
Commit
Details
Required
Rerun command

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

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-pilot-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote

integ-pilot_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot

integ-pilot-istiodremote-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote-mc

integ-security-multicluster_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-multicluster

integ-helm_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-helm

integ-cni_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-cni

integ-ambient_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ambient

integ-security_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security

integ-security-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-istiodremote

integ-ds_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ds

macbuildcheck_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test macbuildcheck

integ-telemetry-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-istiodremote

integ-telemetry-discovery_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-discovery

integ-telemetry_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry

release-notes_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test release-notes

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-pilot-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote

integ-pilot_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot

integ-pilot-istiodremote-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote-mc

integ-security-multicluster_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-multicluster

integ-helm_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-helm

integ-cni_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-cni

integ-ambient_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ambient

integ-security_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security

integ-security-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-istiodremote

integ-ds_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ds

macbuildcheck_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test macbuildcheck

integ-telemetry-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-istiodremote

integ-telemetry-discovery_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-discovery

integ-telemetry_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry

release-notes_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test release-notes

release-test_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test release-test

integ-telemetry-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-mc

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

unit-tests_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test unit-tests

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-pilot-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote

integ-pilot_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot

integ-pilot-istiodremote-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote-mc

integ-security-multicluster_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-multicluster

integ-helm_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-helm

integ-cni_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-cni

integ-ambient_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ambient

integ-security_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security

integ-security-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-istiodremote

integ-ds_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ds

macbuildcheck_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test macbuildcheck

integ-telemetry-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-istiodremote

integ-telemetry-discovery_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-discovery

integ-telemetry_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry

release-notes_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test release-notes

release-test_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test release-test

integ-telemetry-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-mc

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

unit-tests_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test unit-tests

integ-distroless_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-distroless

gencheck_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test gencheck

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-pilot-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote

integ-pilot_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot

integ-pilot-istiodremote-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote-mc

integ-security-multicluster_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-multicluster

integ-helm_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-helm

integ-cni_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-cni

integ-ambient_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ambient

integ-security_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security

integ-security-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-istiodremote

integ-ds_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ds

macbuildcheck_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test macbuildcheck

integ-telemetry-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-istiodremote

integ-telemetry-discovery_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-discovery

integ-telemetry_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry

release-notes_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test release-notes

release-test_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test release-test

integ-telemetry-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-mc

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

unit-tests_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test unit-tests

integ-distroless_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-distroless

gencheck_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test gencheck

integ-pilot-multicluster_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-multicluster

lint_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test lint

integ-ipv6_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-ipv6

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

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

Test name
Commit
Details
Required
Rerun command

integ-pilot_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot

integ-pilot-istiodremote-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote-mc

integ-security-multicluster_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-multicluster

integ-helm_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-helm

integ-telemetry-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-istiodremote

unit-tests_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test unit-tests

unit-tests-arm64_istio
313c81850e2de2c19b03a708849ee1eb06c0527f
link
true
/test unit-tests-arm64

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

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

Test name
Commit
Details
Required
Rerun command

integ-pilot_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot

integ-pilot-istiodremote-mc_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-pilot-istiodremote-mc

integ-security-multicluster_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-security-multicluster

integ-helm_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-helm

integ-telemetry-istiodremote_istio
f8a76453cd9097ed559336ef985b2870bb4a43af
link
true
/test integ-telemetry-istiodremote

unit-tests-arm64_istio
313c81850e2de2c19b03a708849ee1eb06c0527f
link
true
/test unit-tests-arm64

integ-distroless_istio
313c81850e2de2c19b03a708849ee1eb06c0527f
link
true
/test integ-distroless

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

/retest

Local + automated testing of this PR with https://github.com/istio/istio/pull/53906 on top seems good for cross-version upgrades

Just to refresh my context: the bug in 1.24 that this is fixing is due to the extra iptables chains for DNS capture correct? If so, theoretically, no one should run into that bug unless:

They have DNS proxy turned on
They are upgrading from 1.23 to 1.24

If we anticipate a lot of people onboarding to 1.24 to try ambient, I'm a bit worried about such a large PR/bug fix going into 1.24's first patch release and being on by default. Can we make this off-by-default as an alpha feature and iterate on it as usage increases?

Just to refresh my context: the bug in 1.24 that this is fixing is due to the extra iptables chains for DNS capture correct? If so, theoretically, no one should run into that bug unless:
1. They have DNS proxy turned on

2. They are upgrading from 1.23 to 1.24

If we anticipate a lot of people onboarding to 1.24 to try ambient, I'm a bit worried about such a large PR/bug fix going into 1.24's first patch release and being on by default. Can we make this off-by-default as an alpha feature and iterate on it as usage increases?

In this PR it's off-by-default already.
If you want it off-by-default as the fix for the DNS bug specifically, comment in https://github.com/istio/istio/pull/53906 - I had flipped it there, but happy to turn it back off by default if we're worried.

If we anticipate a lot of people onboarding to 1.24 to try ambient, I'm a bit worried about such a large PR/bug fix going into 1.24's first patch release and being on by default. Can we make this off-by-default as an alpha feature and iterate on it as usage increases?

Also note both of these will need 1.24 backports - I'm inclined to default this to on in 1.25, and turn it off by default in the 1.24 backports.

on in 1.25, off in 1.24 sounds right to me (caveat: I haven't read the PR yet)

Yeah +1 - thanks for clarifying @bleggett!

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

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
3813b276489c6756f3a34680060567f68cde2b02
link
true
/test unit-tests-arm64

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

Local + automated testing of this PR with #53906 on top seems good for cross-version upgrades

Happy to hear that! Thank you for checking :blush:

/test unit-tests-arm64

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

Test name
Commit
Details
Required
Rerun command

macbuildcheck_istio
99be31505ff39de7b38cf3239940401b26502d9b
link
true
/test macbuildcheck

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-cni_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-cni

integ-ipv6_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ipv6

integ-helm_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-helm

lint_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test lint

integ-distroless_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-distroless

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-cni_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-cni

integ-ipv6_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ipv6

integ-helm_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-helm

lint_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test lint

integ-distroless_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-distroless

integ-pilot-istiodremote-mc_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote-mc

gencheck_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test gencheck

integ-pilot-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote

integ-ds_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ds

integ-pilot_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot

integ-ambient_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ambient

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-cni_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-cni

integ-ipv6_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ipv6

integ-helm_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-helm

lint_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test lint

integ-distroless_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-distroless

integ-pilot-istiodremote-mc_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote-mc

gencheck_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test gencheck

integ-pilot-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote

integ-ds_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ds

integ-pilot_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot

integ-ambient_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ambient

release-test_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test release-test

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-cni_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-cni

integ-ipv6_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ipv6

integ-helm_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-helm

lint_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test lint

integ-distroless_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-distroless

integ-pilot-istiodremote-mc_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote-mc

gencheck_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test gencheck

integ-pilot-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote

integ-ds_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ds

integ-pilot_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot

integ-ambient_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ambient

release-test_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test release-test

integ-telemetry-discovery_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry-discovery

integ-security-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security-istiodremote

integ-telemetry_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-cni_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-cni

integ-ipv6_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ipv6

integ-helm_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-helm

lint_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test lint

integ-distroless_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-distroless

integ-pilot-istiodremote-mc_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote-mc

gencheck_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test gencheck

integ-pilot-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote

integ-ds_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ds

integ-pilot_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot

integ-ambient_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ambient

release-test_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test release-test

integ-telemetry-discovery_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry-discovery

integ-security-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security-istiodremote

integ-telemetry_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry

integ-security-multicluster_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security-multicluster

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-cni_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-cni

integ-ipv6_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ipv6

integ-helm_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-helm

lint_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test lint

integ-distroless_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-distroless

integ-pilot-istiodremote-mc_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote-mc

gencheck_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test gencheck

integ-pilot-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote

integ-ds_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ds

integ-pilot_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot

integ-ambient_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ambient

release-test_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test release-test

integ-telemetry-discovery_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry-discovery

integ-security-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security-istiodremote

integ-telemetry_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry

integ-security-multicluster_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security-multicluster

integ-telemetry-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry-istiodremote

integ-security_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security

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

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

Test name
Commit
Details
Required
Rerun command

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

integ-cni_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-cni

integ-ipv6_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ipv6

integ-helm_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-helm

lint_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test lint

integ-distroless_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-distroless

integ-pilot-istiodremote-mc_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote-mc

gencheck_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test gencheck

integ-pilot-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-istiodremote

integ-ds_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ds

integ-pilot_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot

integ-ambient_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ambient

release-test_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test release-test

integ-telemetry-discovery_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry-discovery

integ-security-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security-istiodremote

integ-telemetry_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry

integ-security-multicluster_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security-multicluster

integ-telemetry-istiodremote_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-telemetry-istiodremote

integ-security_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security

integ-pilot-multicluster_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-pilot-multicluster

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

Rebased and squashed for the sake of simplicity

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

Test name
Commit
Details
Required
Rerun command

integ-helm_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-helm

integ-ambient_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ambient

integ-security-multicluster_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-security-multicluster

unit-tests-arm64_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test unit-tests-arm64

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

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

Test name
Commit
Details
Required
Rerun command

integ-ambient_istio
ead3ac9004053c547fd0fcb568d319fc1cc61f9e
link
true
/test integ-ambient

unit-tests-arm64_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test unit-tests-arm64

integ-helm_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test integ-helm

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

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

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test unit-tests-arm64

integ-helm_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test integ-helm

integ-ambient_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test integ-ambient

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

/retest-required

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

Test name
Commit
Details
Required
Rerun command

integ-ambient_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test integ-ambient

integ-helm_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test integ-helm

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

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

Test name
Commit
Details
Required
Rerun command

integ-helm_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test integ-helm

integ-ambient_istio
6f3ab88b1dcf6d136e5fe7774af2a52d7ded69a0
link
true
/test integ-ambient

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

This breaks disabling ambient on a running pod:

This might be from https://github.com/istio/istio/pull/53951 being split out and not rebased maybe

PR needs rebase.

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

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

Test name
Commit
Details
Required
Rerun command

integ-distroless_istio
e243f9c2ca0fbea2a68496da078c02d78834d18c
link
true
/test integ-distroless

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

/test integ-distroless

/retest

@leosarra I think we are good to remove the DNM?

Yes, from my side, it is ready.
I was waiting for @howardjohn's approval regarding the way forward with respect on the above discussion.

I have removed the label. Thank you both of you for the reviews :blush:
I will let you know once the nftables+reconciliation PoC is ready for discussion :+1:


[9.x] Fix breaking change introduced in #41914

Fixes breaking changes introduced in #41914 .
As mentioned by @nuernbergerA
@taylorotwell  Now I matched the withCount() & withExists() function signature to the with() function signature. It is no longer a breaking change.
Sorry about that.

I added the same tests as in the original PR (#41914) since it was reverted. It should also work with the tests being submitted in #41945.

Adding method arguments is also a breaking change so this solution would need to target 10.x. A non-breaking solution likely exists using your previous PR but adding a func_num_args() === 2 && func_get_arg(1) instanceof Closure check to detect the extra callback arg.

Adding method arguments is also a breaking change so this solution would need to target 10.x. A non-breaking solution likely exists using your previous PR but adding a func_num_args() === 2 && func_get_arg(1) instanceof Closure check to detect the extra callback arg.

Could you help me understand why it is considered a breaking change if the added argument is null by default? I understand it is a change in the api, but in function could it actually break something?

In a Laravel app, update file vendor\laravel\framework\src\Illuminate\Database\Eloquent\Concerns\QueriesRelationships.php with new method signature public function withCount($relations, $callback = null)
In a Laravel Tinker prompt, define this new class:class CustomBuilder extends \Illuminate\Database\Eloquent\Builder
{
    public function withCount($relations)
    {
        //
    }
}

Exception:

Declaration of CustomBuilder::withCount($relations) must be compatible with Illuminate\Database\Eloquent\Builder::withCount($relations, $callback = null)

Laravel allows packages or userland app to extend the base framework with custom implementation overrides. Since any method signature change can break that behavior in a point release, such concrete argument changes are delayed until the next major release (10.x).
However in the case of Eloquent query builder methods withCount(), withExists(), and with(), they contain dynamic handling of method arguments so you can get around PHP's hard enforcement of the method signature without breaking existing packages.

Honestly not sure it's worth making breaking changes for this. It doesn't seem to be in very popular demand?

I understand @taylorotwell, would this be something you would consider if it was targeted at '10.x'?


Visualizations frontend: Line plot viz tool (continuous y-vars only)

We need a working line plot viz tool for b56.
Mockups can be found here: https://docs.google.com/presentation/d/16xCzGUs744KD3IQ91ITMt30pbAF9SJ7yvOkWZoE-AeE/edit#slide=id.p

Note that the deliverable for b56 only includes "General Line Plots" in the mockups (ignore "Frequency line plots", "Cumulative frequency plots", and "Kaplan Meier plots" for now)
Note also that categorical y axis variables are NOT included in this current ticket - see #956 for that

NOTES FOR TESTING/DEMO-ING

Mouse-overs are all on one line. Splitting into a nicer layout may/may not be possible. Future ticket?
When switching off binning for date x-variables, actually a bin width of "1 day" is sent to the back end. This avoids a 500 error. Was this what we intended anyway, @d-callan?
Y-axis starting at zero or not?  Not sure yet. Wasn't in the mock-ups. Comments please!
Ordinal x-vars, such as "Age group" ["0-11 months", "12-23 months", "24-59 months"] not yet supported by front end. Making a new ticket #963
FACETING: not really supported yet because y-axis is not globally scaled - adding a ticket or adding to #813
Error bars seem flaky on QA.  Investigating... (BM) - this was already fixed by #964 for issue #963

not sure how to describe the bug exactly but error bars were not working for persons sleeping in dwelling count vs sleeping rooms in dwelling count
update: I think it's when you have an integer variable on the y-axis
hopefully you can avoid these examples for your demo, @SheenaTomko - otherwise we can push out #964 for you.

Hi @bobular, I took a look with LLINEUP and found some issues:

the y-axis range is currently being set by the range of raw data values and not by the range of the mean (or median, etc selected by the user). outliers in the raw data are making the plots virtually useless for most selections.

Date binning is really weird! I don't understand what is going on. I set the bin width to 30 thinking this would be 30 days (~1 month), but the date ranged from 2017-03-06 to 2017-10-02! Can you implement the nice binning you have for other visualizations where dates can be binned by week, month, year, etc?

Ordinal variables like study timepoint cannot be selected for the x-axis. I added a note in: https://github.com/VEuPathDB/web-eda/issues/963

4.In the mouseover, the y:XXX and N:XXX looked to me at first glance of counts of yes and no! I do think putting the information on 3 separate lines would help, but can we also explicitly write "x-axis:XXX, y-axis:XXX, N: XXX" (note this also includes a comma between each item)

We need to implement marginal plots sooner rather than later! Counts in the mouseover are helpful but the plots are still really prone to misinterpretation! In a line plot of "Plasmodium asexual stages, by microscopy result" vs "Female non-anophiline count" with bin width of 10 has >6000 data points on the left of the plot and 1-2 data points on the right side of the plot! the counts in the mouseover are too subtle

y-axis should start at zero; the way you have it now is perfect

so the yaxis comments.. currently what were doing is setting the range in a similar way to scatter, which is based on annotated ranges, or when those arent available the range of the data. it seems worth knowing, to me, that the mean of some value typically sits very low in the range of the data for ex. also this ensures that any time the user puts the same var on the yaxis in the line plot they start by seeing the same range by default. a user can always zoom if they like.
as for starting at 0, i think thats true for counts and proportions. but if a user puts a zscore on the yaxis then 0 has a very different meaning than it would for something like counts or proportions, since its not really a baseline to compare positive values against in that case.

@danicahelb how would you feel if we don't change the y axis scaling behaviour right now, and (y and probably x when continuous) axis zoom controls were added for b57?  Seems like we need at least a discussion with an odd-number of people ;-)

Discussed in 4/4/2022 EDA UX meeting.

[ ] Error bars should be “on” as the default; user can choose to toggle them “off”

[ ] For mean & medians, the y-axis range should always include the origin

[ ] For mean & medians, the absolute value of the maximum for the y-axis range should be scaled to the calculated mean or median values (plus error bars) instead of to the inferred or annotated range of the raw values

I'm loving the date binning on line plots! I can see trends in seasonality, but also I can see that parasite prevalence is going down over time! This is so beautiful!!!


Numba-dppy performance regression in dppy.kernel versions

Reporting a performance regression with Numba-dppy (0.14.1+10.gcae3063) + dpctl (0.8.0rc2+2.g4fbf7a9) + numba (0.53.1+8.gddf817af0).
The regression is seen in dppy.kernel versions of blackscholes and pairwise distance workloads.
Blackscholes kernel used to execute in 0.07 seconds. In this latest release it executes in 29.69 secs, have a performance regression of 424X.
To reproduce the error run the kernel version of blackshcoles benchmark in dpbench.

cd <PATH_TO_DPBENCH>
python automate_run.py -ws blackscholes -i numba -p gpu -a test -k

This https://github.com/IntelPython/numba-dppy/pull/408#pullrequestreview-669449460 should fix it.


MILESTONE FOR  REACT

In this PR the following are implemented:-

I made use of the Ether Scan APi.
Used redux for state management.
Implemented react hooks API.
Performed tests using React testing library.
Displayed data for the Ethereum blockchain API.
A short documentation of the project here.

Hello Reviewer, I have implemented all of the changes required by the previous reviewer. I also made some comments about the changes in the review.
Thanks.


crates.io, NPM, and docs.rs badges are of unrelated projects

Summary

crates.io and docs.rs badges point to Tamschi/rhizome
NPM badge points to benw/rhizome

Problem
These badges link to unrelated projects.
Impact
This may confuse the reader.
Solution
Remove them or replace them with relevant badges.

Additionally, rhizome's crate manifest uses https://docs.rs/rhizome for its documentation, which is the aforementioned unrelated crate. It may be preferable to omit it so that the docs.rs link may be provided automatically.

haha oh no! The badges were generated from a template; we'll fix those. Thanks for the report!

@QuinnWilton we may want to rename the various crates to rhizomedb or revert to pomodb or something

Thanks for pointing this out! I agree that renaming to rhizomedb makes the most sense :)

Thank you! The crates have been renamed and published as rhizomedb-*, and the links updated: https://crates.io/crates/rhizomedb


Any Planning to update the angular 10v to 13v

Hi @mathkruger are you planning to update the angular from 10v to 13v, do you let me know i can do that.
Thank you :)

I don't have plans for it yet, I know this is quite easy but I would prefer to do it myself when I have more time and make sure nothing broke in the process. But, thanks anyway for your interest!


"Powered by Islandora" ??

I maintain the Islandora installations list (Yes, I know the map is busted right now; Google API issues). It's populated a little bit by people contacting us to let us know they use Islandora, but a lot of it is sites that we find in the wild, often because the word "islandora" appears in the url for all repositories items in Islandora 7 unless the sites have taken steps to change their root repository.
Islandora 8 doesn't have that tell. It there another way we could insert "islandora" into a place that would be discoverable with a search engine, like a "powered by" block (as Drupal does)? Something that can be turned off or opted out easily? It would be great is we could carry over that "Googeable" kind of Islandora identification so we can still find new Islandora 8 sites who don't necessarily reach out to our community

Suggestions from the call: information page, put "islandora" back in path

Everyone seemed most comfortable with adding in a basic pade that goes with defaults, with a brief (Googleable) blurb explaining what Islandora is, maybe with some useful links.
Alos, put in some SEO work.

@manez would #1787 be a possible basic page that would get two birds stoned here?


Video player gets too big

The video player is overwriting the contents of the page
https://scholarsphere.psu.edu/concern/parent/db78tc20t/file_sets/9kd17cs73r

Add width: 100% to the  video

Confirmed: works in Chrome, Firefox, and Safari.


[metadata prespecialization] Fixed OldRemangler's remangling for canonical prespecialized metaclasses.

The OldRemangler's implementation of mangleCanonicalSpecializedGenericMetaclass will never be used and could be replaced with llvm_unreachable.  The function is defined, though, so it should be defined correctly.  Previously, the suffix was added to the buffer before the metaclass itself.  Here, that is fixed.

@swift-ci please test and merge


Added Appetize badge

Description
Fixes #2842 Hosting App on Appetize
What changes did you make and why?
Hosted 2.10.2 on Appetize and added the badge so that people can try it out.

Codecov Report

Merging #2866 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master   #2866   +/-   ##
======================================
  Coverage    3.42%   3.42%
======================================
  Files         246     246
  Lines       12193   12193
  Branches     1071    1071
======================================
  Hits          418     418
  Misses      11744   11744
  Partials       31      31

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 07c335e...50a055c. Read the comment docs.

In the discussion at https://github.com/commons-app/apps-android-commons/issues/2842#issuecomment-479812453 there is "we will not advertise appetize.io as a mainstream way to try the app, as we would quickly overflow the free tier". Has this issue been fixed?

@domdomegg No that issue is not fixed, we will have 100 min per month, but I think that only a few people use the app this way, as it's sole purpose is to get the look of the app on different devices without building/installing.

@nicolas-raoul @misaochan Please review the PR :)


New widget not found

Hi!
I am very new to this theme and would really love to have it working for my purposes. So, I am trying to build my own widget and I have followed the instructions on the website.

I have created layouts/partials/widgets/my-widget.html which now should only print the name of admin person.
I have created content/home/mysection folder and inside this folder I have created index.md and my-widget.md files. index.md file has type: "widget_page" option and my-widget.md has widget: "my-widget" option.

If I try to build the website, it throws me an error that partial "widgets/my-widget.html" not found. However, if I put this html file into themes/academic/layouts/partials/widgets folder, everything builds correctly.
Could you please help me?
Thanks!
Fatima

Sorry, my bad. I had to restart the hugo server (obviously, since I created a new folder 😅)


Do not error on Maven settings password decryption failure

Fixes #1709.

I think I might just change this whole section of code? Do we still want to merge this?

No, closing it.


feat(query): Add some new types

+ BlockStatement
+ BlockStatement implements Statement
+ BlockStatement implements HasSpan
+ BlockStatement.statement

+ BlockStatementAST
+ BlockStatementAST implements BlockStatement
+ BlockStatementAST implements HasSpan
+ BlockStatementAST implements Statement
+ BlockStatementAST implements ASTNode

+ ExpressionStatement
+ ExpressionStatement implements Statement
+ ExpressionStatement implements HasSpan
+ ExpressionStatement.expression

+ ExpressionStatementAST
+ ExpressionStatementAST implements HasSpan
+ ExpressionStatementAST implements ExpressionStatement
+ ExpressionStatementAST implements Statement
+ ExpressionStatementAST implements ASTNode

+ WhileStatement
+ WhileStatement implements HasSpan
+ WhileStatement implements Statement
+ WhileStatement.body
+ WhileStatement.condition

+ WhileStatementAST
+ WhileStatementAST implements ASTNode
+ WhileStatementAST implements WhileStatement
+ WhileStatementAST implements Statement
+ WhileStatementAST implements HasSpan

Codecov Report
Patch and project coverage have no change.

Comparison is base (1fdce7e) 92.24% compared to head (c39100d) 92.24%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #761   +/-   ##
=======================================
  Coverage   92.24%   92.24%
=======================================
  Files         202      202
  Lines       41316    41316
=======================================
  Hits        38111    38111
  Misses       3205     3205

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


fix(appbar): improve performance in menu

:tada: This PR is included in version 1.0.0-alpha.129 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Construct celestia client with an explicit reqwest client

At the moment CelestiaClient is constructed with an implicitly created reqwest::Client (through rs-cnc). It's best practice to create one reqwest::Client and clone it because Client is just a thin wrapper around a Arc to a connection pool.
https://github.com/astriaorg/sequencer-relayer/blob/8cd9b9e4268368c48ab3be02d9fa85b46914a32e/sequencer-relayer/src/da.rs#L131

Would love to give a short at this. The fix PR should be in https://github.com/astriaorg/sequencer-relayer right?


Problem Loading Ue4Duino

I´m having trouble running UE4Duino. I created a new project and put ue4Duino (correct version) inside Plugins Folder. When I try to open the project it says "failed to load plugin ue4duino because module could not loaded" And the project closes. I tried with version 4.23.1 and also 4.24.1 (I downloaded the two engine versions).

I managed to solve it. If someone is experiencing the same, try this:

Check if Visual Studio is installed with "game development with C++".
Create a blank project with C++ and not Blueprint
Create Plugins Folder and put inside all ue4duino files without Binaries folder (delete it).
Wait the project load and select rebuild plugin.
After that, copy this ue4duino folder with your recompiled binaries to whatever project you want, including VR templates using only blueprints.
that is it!

I just waned to add that I ran into this same issue and this worked for me.


[WIP] v1.1.0 Documentation

:+1: that's a lot of additions

:+1:

I set up a release script that generates docs and pushes them to the gh-pages branch without committing them to the repo. So, hooray!


Various improvements

👋 sorry for another unfocused PR...
This time around it's mostly various bug fixes, as I was doing some more extensive testing on our production codebase...
There's also more compatibility with elm-review-debug, better docs and a small new feature, which is that it will now pick up user function that have parametric generics (i.e. if we see a decoder myDecoder : Decoder a -> Decoder (MyType a), we will now take advantage of that by generating the argument to that).

Sorry about the delay, I'll review this PR later tonight or tomorrow.

Looks good! Just remove the docs.json and I think this is ready to merge.


As an external user, I can view and edit my profile page

As a external user I want to view and edit my profile page So That my information is up to date for all applications
Additional Context

If there is any info from Keycloak (like BCeID or BCSS JWT), then we should use that to pre-fill the profile page during account creation
https://github.com/bcgov/sso-keycloak/wiki/Identity-Provider-Attribute-Mapping
Will create future tasks to implement designs for this story once the designs are done.
Content of profile page should be same as contact info pre-amble in multiple CHEFs forms.  So can review CHEFs forms to see what profile fields we need.  See comments for screenshot.

Acceptance Criteria

[ ] Given the user is logged in and on their account details screen, When the user updates their contact info, Then info is expected to persist regardless of what their upstream Identity Provider says (eg if BCeID email is out of date and user provides one, we should use the provided email).
[ ] Given the user has just registered via BCeID, and the BCeID API has contact information data (like email address), then the profile contact info should be auto-populated (but still needs to be confirmed by user).  (NOTE: DO NOT LET IDIR USERS CUSTOMIZE CONTACT INFO.  IDIR MUST BE READ-ONLY FOR SECURITY PURPOSES.  NEED TO REVIEW BC SERVICES CARD HERE).

Designs
https://www.figma.com/file/gzF7SL5xpYr5PIY4FyE1TF/Internal-SITE%2FCATS
Definition of Done

[ ] Ready to Demo in Sprint Review
[ ] Does what I have made have appropriate test coverage?
[ ] Documentation and/or scientific documentation exists and can be found
[ ] Peer Reviewed by 2 people on the team
[ ] Manual testing of all PRs in Dev and Prod
[ ] Merged

https://github.com/bcgov/sso-keycloak/wiki/Identity-Provider-Attribute-Mapping

Also include FN status question.
@mariaye-aot can you please document any other fields that have been confirmed like license numbers and the logic around those?


Questions related to *.dll  packaging

Hello, I think I need help. The screenshot is as follows:

I tried the following two methods to package 'api_jni. ll' into the application, but none of them were successful.

Is it the way I write that is wrong?

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


fix(EmptyStatesPage):replaced tables

Closes #939
Replaced carbon tables with markdown tables, adjusted margin-left to fix bullet alignment.

good move

@vpicone i accidentally upgraded the theme while i was working on this PR, then down-graded it because i didn't want to introduce new bugs and that a theme upgrade should be it's own PR. Thoughts?

It was already at 1.21.0, you actually just downgraded it. The package json shows the min version. The yarn lock has the true version. You should just checkout the yarn lock and package json from master. I can help clean it up or explain more tomorrow if needed


Select New Task for Mentors/Mentor Manager-Admin-App - Sprint 2

Description:

Build the Screen using the style guide.
Integrate Screen with the Backend

@mowfaqqa @sheyi103  The backed task for this task is complete


How can audiocache join the listening event? I added it but it is invalid

How can audiocache join the listening event? I added it but it is invalid

what do you mean it's invalid? what did you try to do? can you share some code?

I'm not sure what @du666du was asking about. But what I faced with is absence of onPlayerCompletion() or similar callback for AudioCache. And I haven't found a way to execute some code AFTER local audio asset is played. Can you help me with that @luanpotter?

Closing due inactivity, if there is more info that you can add to the issue, comment here and we can re open the issue.


Number Sorter - Step 6 (JS Beta) makes incorrect statement

Describe the Issue
Step 6 of the JS Beta Number Sorter projects starts out by saying:
Remember that .getElementsByClassName() returns an array-like object.
However no such concept was previously conveyed.
I suggest this is fixed to say:
The getElementsByClassName function returns an array-like object of all the elements that have a matching class name.
Affected Page
https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures-v8/learn-basic-algorithmic-thinking-by-building-a-number-sorter/step-6
Your code
N/A
Expected behavior
please re-word the step
Screenshots
No response
System
N/A
Additional context
No response

Nice catch. The todo app project was supposed to cover this, initially, but seems to have been lost in the shuffle.
We should update the text to be:

The .getElementsByClassName() method returns an HTMLCollection, which is an array-like object of all the elements that have a matching class name.

Thanks. But introducing HTMLCollection may throw people off? No concept of collections has been discussed before.

It's the correct term, though.
And I'd argue it's no more or less confusing than just calling this an "array-like object". At least this way we're being specific and giving campers a term to look up if they wish to learn more.


Deploy prod - Rsync not found

Q
A

Bug report?
[ ]

Feature request?
[ ]

Support request?
[X]

Hi! It happens to me that when deploying production with the command deploy that is in the doc it returns "rsync not found" I am using the image of Docker cocorico, I enter by sh to the container and run the deploy ... Anything idea?
The code is:
docker exec -i -t cocorico php bin/console project:deploy prodPHP Warning:  Version warning: Imagick was compiled against Image Magick version 1799 but version 1800 is loaded. Imagick will run but may behave surprisingly in Unknown on line 0
Fake deploying on prod server with rsync --dry-run -azC --force --delete --progress -h --checksum --exclude-from="/cocorico/app/config/rsync_exclude.txt" -e "ssh -p 22" ./ fakeuser@fake.cocorico.prod:/fake/path command
START deploy
ERR > sh: rsync: not found
END deploy
This was a simulation, --go was not specified. Post deploy operation not run.
Run the command with --go for really copy the files to prod server

HI @enuelmorales-snoop,
Indeed Cocorico Docker image does not allow rsync for now. We will inform you as soon as it will be available (maybe in June).

Feel free to reopen it if needed


CAN NOT run cli on raspbian or armbian? how to run  cli on raspbian or armbian?

CAN NOT run cli on raspbian or armbian? how to run  cli on raspbian or armbian?

right now we don't have plan to support these two platforms

I just want to add my support for having it come to these platforms, as groups and individuals using Raspberry Pis as IoT devices, for even just sandboxing, are looking for solutions for managing them through cloud platforms.

@ScottMorse @bluegod1996 It's quite straightforward to add linux arm64 into support. But you might need kubectl/docker cli/cf cli as well. They don't provide linxu arm64 support.

There is now Linux ARM provided as an as-is release.


Fix status bar icon being invisible in dark mode

The icon image is currently not visible when using a dark status bar in OS X Yosemite. This PR fixes it by changing it into a template image.

Result of integration 1
Integration took 1 minute and 15 seconds.
Perfect build! All 22 tests passed. :+1:

Thanks @accatyyc!


Commerce clienteling overview - patch

Corrected line numbering in the last section.
Restructured the final paragraph into a bulleted
list in order to separate form field descriptions
and to create more clarity.

@v-chgri  @johnmichalak  Changes proposed by @RobBertram looks good to me, please proceed with getting it published.


Release 2.1.5

2.1.5 (2018-05-22)
Bug fixes

[ #398 ] Fix #362 dispatch LIST_INDEXES_AND_COLLECTION when prepare session   (Njuelle)
[ #374 ] Fix #366 Call logout action when json web token error   (Njuelle)

Codecov Report

Merging #406 into master will decrease coverage by 0.09%.
The diff coverage is 50%.

@@            Coverage Diff            @@
##           master     #406     +/-   ##
=========================================
- Coverage   85.89%   85.79%   -0.1%
=========================================
  Files          38       38
  Lines         723      725      +2
=========================================
+ Hits          621      622      +1
- Misses        102      103      +1

Impacted Files
Coverage Δ

src/services/kuzzleWrapper.js
84.32% <0%> (-0.64%)
:arrow_down:

src/vuex/modules/auth/actions.js
95.74% <100%> (+0.09%)
:arrow_up:

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 16b9059...4d6b565. Read the comment docs.


Desync

Product and Version [VS/VSCode]: VSCode
OS Version [macOS/Windows/Linux]: Windows (both the client and the host)
Live Share Extension Version:
Target Platform or Language [e.g. Node.js]: Python
What were you doing when you encountered the desync?
The client creates a new file by copying & pasting & renaming in the expolorer within VSCode.
In the host side, the user can notice that the file can be successfully renamed. However, any modifications that the client makes cannot be synced in the host side. The client cursor is not visible, too.
In the meantime, modifications that the host makes can be synced in the client side.
How often have you encountered desyncs?
I have tried two times of this action and the desync occurs everytime.

Thanks for reporting @lzl1918 ! I think you're the first user to actually give a clear repro of a desync. We're working on this and will hopefully have a fix out soon. The issue is with renaming files, so in the meantime, to avoid desyncs, you may want to avoid this type of usage. I'll reach back out when we have this resolved.

Posting here although slightly unrelated. In my case - guest and host cursors were visible from both sessions (I'm the guest and host). The files appeared de-synced, random parts of the file disappeared (no copy-paste was involved). In my case - Host and Client were both Windows 10 working on a Git repo of a Python project
A temporary workaround if the file was tracked in a Git repo -
I could delete the file from the client side, and then do a git stash. That got me back to the file I was expecting to see.
I can't provide any logs as I'd have to do a lot of scrubbing (Apologies!)

Thanks for the info! And no worries about the logs, I don't think they'd provide much additional info of value.
What are you seeing in the logs that you'd have to scrub? We try to keep the logs free of any sensitive information so that people like you can comfortably post them without privacy/security concerns.

In the meantime, when we get out of sync, is there any sort of force refresh option we can use?  Disconnecting and reconnecting does not seem to be enough and the only workaround I've found is for the host to kill the session and start a new one.
It would be nice if there was a cmd-p (or ctrl-p) "Live Share: force refresh" or "Live Share: force refresh file" option that would dump what live share thinks it knows about the current file (or whole tree) and refreshes from the host what the real state is.

@bjornicus that's an excellent suggestion. The only reason we haven't done this yet is because it shouldn't be necessary - coediting is the most fundamental piece of Live Share, and staying in sync is essential. We're currently investing in improving the reliability, with the goal being that desyncs never occur. But we'll consider taking your suggestion (as a temporary mitigation) .

Could this also be related to a F2 refactor/rename action that causes a desync? Me, a participant tried to refactor a class name and it wasn't working. Then the host attempted to refactor a variable name in the class as a test and it desync'd the moment he hit F2 to rename it.

@bzuillsmith that's an interesting one that I hadn't heard before. Are you able to repro it?

Just a little more info. In my case, I had a desync occur in a different way. The host created a new file and made some edits which I could see. Then, he copied over some code from a different file that was also in the project and it desync'd. It is worth mentioning that this is not reliably reproducible.
I am on Windows 10 Version 1909 with VSCode 1.43.2 and Live Share 1.0.1891.
I have had desyncs on both Verilog and Python projects (those are the only two languages I use as of late, so I can't speak for more than that). I also have the Vim plugin for VSCode if that's important.

Thanks @Lexden12 ! That's tremendously useful.

I'm getting desyncs as well, and because there's no option to force a resync, I have to kick out all the participants to start a new session.

As a stopgap, a "Request that the Host resync all of the files in the project" button would be amazing. Honestly, if the underlying issue never gets fixed, a reliable "Force a Resync" button would resolve this issue for me.

Hey @klakin-pivotal , this is actually something we briefly considered, but decided it would be best to invest resources in actually fixing the desyncs. However, since we've been slow to deliver on that, maybe we should revisit providing such a button. I'll keep you posted with updates! To others on the thread, would that be useful as a stopgap?

Absolutely, the other option (killing and restarting the session) interrupts the entire workflow and can get annoying if desyncs present themselves regularly.

100%. This bug is the reason a very rarely use live share. Every time I come back to live share and work on a project with someone where this error creeps up I always look for a refresh button until I eventually remember there isn't one. I'm usually on a call with the person I'm working with and so we are able to find out fairly quickly when things are out of sync, but it takes us forever to get them back in sync.

Yep refresh button would get me to try live share more. Additionally, it takes too much time to report such a bug with any helpful data (collecting logs, etc). I won't ask a pair or whole team to stop what they are doing to figure out how to report it and continue trying to use live share. It's easier to switch to a screen sharing app and continue working.
For example, I tested this in mob programming scenarios and we pretty quickly hit a desync. The team felt the value of live-share was unproven at that point so we weren't going to spend the time to figure out how to submit a proper bug report with logs and repro steps. If there was more automated reporting--a button leading to a quick form that automatically grabbed logs--we at least would have reported it before moving on to screen sharing. But we weren't about to spend the whole team's time figuring out how to reproduce it, collect logs, etc.

Thanks for the feedback @bzuillsmith . That's completely understandable and I appreciate you taking the time to engage on this issue 😊. I'm very grateful for all of our users that do go above and beyond to help us figure out these issues, because as you noted, it's a bit of a hassle.

Hi ,
I am also getting the same issue on live share when I save my work  or edit code or open a new file and start editing on it , suddenly session ends with a message that "the host has ended the current collaberation session".
and on restart of session I don't see my saved work  because of this issue we are unable to use this feature
we are using Visual studio 2019 Community edition On windows platform and C# language we are using.
Can you please tell us when can we expect fix for this ?

Hey @vsharmatest , that sounds like a potentially different issue than what's being discussed here. Is it possible you were experience internet connectivity issues?

I noticed it get out of sync when I created a file, renamed it and put some text in it/ saved it.

I'm also getting the desync issues, but the bigger problem isn't the error itself—it's that the problem often isn't announced until well after the desync actually happens. A colleague and I have had several instances today where we lost an hour's work due to someone continuing to work on a file that had since desynced; we didn't cotton on until the Follow feature failed to track them moving to a new file.

I'm very sorry to hear that @rensa 😔. We're working on better desync detection at the moment that should ship next week (it'll be behind a special flag). That change will also include some diagnostic info that should help us figure out what caused the desync so we can finally fix this. I'll reach back out when we release that.

That's all right, @daytonellwanger! I was a little frustrated when I wrote that comment, but I'm very appreciative of the hard work you've all our into VSCode and Live Share. It's improving my work a lot!

Copying this repo from #3361:

If multiple lines of text are highlighted using CTRL-SHIFT-L and replaced with new text, Live Share will go out of sync. Clicking "Reconnect" will not resolve the issue - the live share session will need to be terminated and then spun back up.
This happens quite frequently - perhaps 80% to 90% of the time.

For folks that haven't seen it yet, we've invested a lot in better diagnostic tooling so we can get to the bottom of any remaining issues (I actually think most of the issues discussed in this thread have already been solved).
So if you're still experiencing issues, check out the troubleshooting instructions in this issue template and comment here. Thanks!


fix: fix 'bad array subscript' error

This pull request fixes the bad array subscript error that is thrown when no python files are found (see https://github.com/rickstaa/panda-gazebo/actions/runs/5269309929/jobs/9527260724). It also simplifies the codebase.

I think it's fine
(If possible, it would be better to have others see it, I think it would be better if there was an execution result with this content.)

You mean that we throw a warning when no python files are found? Or a verbose option that also prints the output of black to the console?

@rickstaa san
It wasn't the right way to say it.
I thought it would be nice to have a test run with this fix and the results.
There is no problem with the contents.

@tsuyoshicho Ah, I see I did the following:

Added a verbose variable people can use to get the black output in the GitHub action console.
Added a warning in the console when a user inputs an empty folder.
Added a test to see if the action does not fail when an empty folder is supplied.

Looks like all tests are now successful (see https://github.com/reviewdog/action-black/actions/runs/5291044936/jobs/9576026780?pr=62). Hope that is what you had in mind. Additionally, I performed two tests in an external repo so that you can see the changes in action:

https://github.com/rickstaa/action-test-repo/actions/runs/5291049014/jobs/9576036169 (With verbose enabled).
https://github.com/rickstaa/action-test-repo/actions/runs/5291093285/jobs/9576257366 (With warning).


How to set aabb_bbox, near, far plane for UAV datasets

Hi there, first of all, thanks for this fantastic work.
Here is my problem. I have a custom dataset of UAV images in colmap format (shown in figure below). By using nerfacto, I first load camera poses and set the value of scene_box with the bounding box (~1000m in x,y ,~100m in z) of sparse point cloud derived by colmap. Both are in meter unit. Then I scale both poses and scene_bbox with 0.001, otherwise the rendered images during training turn all-gray. For near and far plane, i set to 0 and 1000. However, the results are kind blurry. I am not sure if my settings are correct. Or, put it in this way, if the cameras are out of the scene_bbox, will the sampler only sample within the scene_bbox or within the near and far plane or mixture of them?
Thanks so much!

I think there are two issues you are potentially running into the with nerfacto model. The first is that nerfacto uses scene contraction - https://docs.nerf.studio/en/latest/nerfology/model_components/visualize_spatial_distortions.html
This could be warping the space around where the camera potentially leading to less efficient allocation of space. In this scene you probably don't want to use scene contraction (requires modifying the code). The second potential issue is that nerfacto does uniform sampling up to a distance of "1" followed by exponential spacing. This could be leading to fewer samples around the area of interest. One thing your could try is increasing the "near plane" to a value that is closer to the target. A better approach would be to create a custom sampler that just samples the region of interest around the ground plane (this would require modifying the code).

Thanks for your quick comment. I am new to the nerf, so there are lots of parameters I need to play around with. It turns out that nerfacto without scene contracting works fine with my drone datasets. I previously used distorted images with a simple pinhole camera model. Also, after modifying the scene_bbox, the results look good now.

Thanks for sharing your experience and solution! Could you please provide more details on how you modified the scene_bbox and what values worked for you? I'm facing a similar issue on a similar dataset and it would be helpful to know. Thanks!

@rmx4 I let the scene_bbox encompass both the cameras and the objects. And when it ray sampling, i let it only samples within the object bounding box. I use nerfacto without scene contraction, and increase the number of layers/neurons and hash encoding parameters for modeling large-scene. But be carefull about the weight decay of optimizer, bigger one will largely reduce the accuracy.

Hi,
@Ggs1mida to ray sample within the bbox do you use the class VolumetricSampler(Sampler) ?

@rmx4 I let the scene_bbox encompass both the cameras and the objects. And when it ray sampling, i let it only samples within the object bounding box. I use nerfacto without scene contraction, and increase the number of layers/neurons and hash encoding parameters for modeling large-scene. But be carefull about the weight decay of optimizer, bigger one will largely reduce the accuracy.

Thanks for sharing your experience and great solution! I am working on a similar task of street view reconstruction with the same failure cases, but I am not familiar with the nerfstudio code framework, could you give some suggestions of modifing the code according to your solutions? And how to change the position and the scale of the scene box? Thanks a lot. :)


Updated to be able to work with Minecraft 1.19

Updated Loom to 0.12-SNAPSHOT.
Removed world parameter from interactBlock since it isn't requested anymore.
Updated to the latest fabric and yarn mappings.

You don't have a 1.19 branch, so I couldn't directly try and merge into that.

Legend, your efforts are appreciated.


docutils rst parser triggers virus on Windows 7 and Windows 10

For the following code piece I need to have docutils included in my PyInstaller script:
            tpitem = string.Template('''
AccordionItem:
    id: '$acc_id'
    title: '$acc_title'
    font_name: 'Roboto'
    min_space: 30
    RstDocument:
        background_color: 1, 1, 1, 1
        source: '$rstdoc'
            ''')

            for idx in range(0, self.totevents):
                event = str(idx + 1)
                acc_id = 'acc_' + event
                evidx = 'Event' + event + ':'
                rstdoc = qglobals.PROJDIR + tempInstrData[evidx]['RstDoc:']
                acc_title = str(tempInstrData[evidx]['Instruction:'])

                new_acc = tpitem.substitute(vars())
                acc = Builder.load_string(new_acc)
                acc_panel.add_widget(acc)

Unfortunately at build time this triggers my virusscanner with the following virus: Gen:Variant.Razy.41062 - though my PC is clean.
When setting the build environment to the list of accepted (do not include in scanning) folders the build produces a distribution package. But when installing this package on another PC with another virusscanner, same virus is triggered..
When adding docutils to the list of excluded modules in my PyInstaller script, the application is build without any virus triggers but then of course the lack of docutils results in an error message:

Here is the PyInstaller spec file:
test-spec.txt

What file is reported by the antivirus? PyInstaller had again problem with run.exe files reported as viruses recently (this appears sometimes, but seems to be false) and the installation might not be complete. But anyway, this should be reported in their repo or in docutils repo, not in kivy.

It is indeed when building the run.exe. However, when I include docutils then the virus is reported. That's why I related this to the kivy part. Anyway, I will report this in the respective repo.

Some further info on this. It occurs only when building sg-assist.exe with option console = True ; see attached test-spec.txt file above.

@BillBridge, usingned executables are ofted flagged by AV software, but there's nothing kivy or docutils can do about it. Your best option is to buy a certificate and start signing your executables, or use a self-signed cert and wait until AV vendors whitelist it.