hubcio opened a new pull request, #3468: URL: https://github.com/apache/iggy/pull/3468
The DockerHub :edge refresh gate treated cargo-rail's `empty` scope mode (no Rust crate impact) the same as `workspace`, refreshing every image on any docs/SDK/node-only push. An esbuild bump under examples/node thus triggered a full publish, whose third-party-license release gate then died on a transient crates.io reset. cargo-rail reports three modes, not two: `crates` (a subset), `empty` (no build/test/bench surface, so zero crates ship new code), and `workspace` (all crates). `empty` must not refresh all images, but it also is not "publish nothing": non-crate build inputs (the embedded web UI, Dockerfiles) are still gated per image via gate.paths. So route `empty` through the existing per-image path gate with an empty crate set; only `workspace` and unparsable modes fall open to all images. A web-only push now refreshes just rust-server and web-ui, not all five. Separately, the license validation shells `cargo about` -> `cargo metadata`, which hits the crates.io index and can reset mid-download past cargo's own net retries. Retry that invocation up to three times with backoff so a flake never reddens the gate. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
