Repository navigation
Take the five open dependency bumps as one change - #13
Merged
Merged
Conversation
Dependabot had five major bumps open, four of them red on CI for reasons that
had nothing to do with the bump. Worth recording which was which, because the
red ticks made this look like four problems rather than one:
* rfd 0.15 -> 0.17 and pulldown-cmark 0.12 -> 0.13 failed against an August
base — the deny.toml that rejected k2g's *own* GPL-3.0-only (fixed in
26da706), a rand advisory, and an unrelated update test. No code change.
* jsonschema 0.28 -> 0.50 failed on a crates.io outage, which hid a real API
break underneath.
* image 0.24 -> 0.25 was the one genuine compile error.
* base64 0.22 -> 0.23 was already green.
The two that needed code:
`IcoFrame::as_png` now takes `ExtendedColorType`, a rename at the call site.
jsonschema moved resources off the options and into a `referencing::Registry`
built up front: `with_resource` is gone, `Resource::from_contents` is
infallible, `Retrieve` takes `Uri<String>`, and `instance_path` is a method.
`NoRemoteRefs` is now installed on *both* the registry and the options — they
retrieve at different moments and neither covers the other, the registry for
refs between the bundled schemas and the options for a ref in the untrusted
document. The tests that pin the refusal and the cross-file resolution still
pass, which is the point of touching this code path carefully.
`default-features = false` on jsonschema, because its default `resolve-http` is
the network fetch `NoRemoteRefs` exists to refuse. Left on it cost a second HTTP
stack beside our own — reqwest 0.13 next to the 0.12 the update check uses, plus
`rustls-platform-verifier` and the C/assembly `aws-lc-sys` — a new native build
dependency and a second set of trust decisions, for a code path deliberately
disabled. That also makes the note beside `reqwest` wrong, since jsonschema no
longer supplies one; corrected rather than left to mislead.
Net the lockfile loses 31 packages (705 -> 674): rfd 0.17 drops the whole
zbus/async-io stack, and the duplicate image, rfd, gif and tiff entries go.
1051 tests pass, the release profile checks, and cargo-deny reports advisories,
bans, licenses and sources all ok.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This was referenced Sep 12, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Supersedes #6, #7, #8, #10 and #11.
Four of the five were red on CI for reasons that had nothing to do with the bump, which made this look like four problems rather than one:
ExtendedColorTypedeny.tomlrejected k2g's ownGPL-3.0-only(fixed in 26da706)randRUSTSEC, the samedeny.toml, and an unrelated update testThe two that needed code
IcoFrame::as_pngnow takesExtendedColorType— a rename at the call site inbuild.rs.jsonschema moved resources off the options and into a
referencing::Registrybuilt up front:with_resourceis gone,Resource::from_contentsis infallible,RetrievetakesUri<String>, andinstance_pathis a method.NoRemoteRefsis now installed on both the registry and the options — they retrieve at different moments and neither covers the other: the registry resolves refs between the bundled schemas, the options' retriever is what a ref in the untrusted document reaches for.default-features = falseon jsonschemaIts default
resolve-httpis the network$reffetch thatNoRemoteRefsexists to refuse. Left on, it cost a second HTTP stack beside our own — reqwest 0.13 next to the 0.12 the update check uses, plusrustls-platform-verifierand the C/assemblyaws-lc-sys. A new native build dependency and a second set of trust decisions, in service of a code path this application has deliberately disabled.That also made the note beside
reqwestwrong ("already in the tree via jsonschema"), so it is corrected rather than left to mislead.Net effect
Lockfile loses 31 packages (705 → 674): rfd 0.17 drops the whole zbus/async-io stack (36 crates), and the duplicate
image,rfd,gifandtiffentries go. Noaws-lc-sys, norustls-platform-verifier;reqwest,rustlsandringeach stay at a single version.Verification (locally, on Windows)
cargo check --workspace --all-targets --releasecleancargo deny --all-features check→ advisories ok, bans ok, licenses ok, sources oka_remote_ref_is_refused_rather_than_fetched,an_off_machine_reference_is_refused_rather_than_fetched,refs_between_registered_schemas_still_resolve,cross_file_references_resolve_from_the_embedded_setThe Linux and macOS legs are what CI adds here — rfd 0.17 dropping the zbus stack is Linux-facing and I could not exercise it locally.
🤖 Generated with Claude Code