Skip to content

build(deps): update bincode requirement from 1 to 3 - #116

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/bincode-3
Open

build(deps): update bincode requirement from 1 to 3#116
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/bincode-3

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 3, 2026

Copy link
Copy Markdown

Updates the requirements on bincode to permit the latest version.

Commits

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Sep 3, 2026
@sanity

sanity commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

This cannot build: bincode 3.0.0 is a compile_error! stub, not a release

Not closing this — leaving the disposition to a maintainer — but flagging it so nobody spends an hour on it.

bincode 3.0.0 (published 2025-12-16, current and not yanked, which is why Dependabot proposes it) is a protest/placeholder release whose entire src/lib.rs is:

compile_error!("https://xkcd.com/2347/");

So cargo build fails outright the moment the dependency resolves. Verified by building against it:

error: https://xkcd.com/2347/
 --> .../bincode-3.0.0/src/lib.rs:1:1

This is not a wire-compatibility question or a migration effort estimate. There is no code in the crate to migrate to.

If a bincode upgrade is ever wanted

The last real release is 2.0.1 (2025-03-10), and it is not wire-compatible by default. Measured against 1.3.3 on a simple two-field struct:

config bytes compatible with 1.3.3
config::standard() (2.x default, varint ints) fb 2c 01 fc 70 11 01 00 no
config::legacy() 2c 01 00 00 70 11 01 00 yes, byte-identical

That matters more here than in most crates: bincode is the encoding of the host↔delegate wire (InboundDelegateMsg / OutboundDelegateMsg), and a delegate's decoder is frozen once its WASM is deployed. Adopting 2.x's default config would silently change the encoding of every already-deployed delegate's messages. Only config::legacy() is a safe target, and switching to it would need the wire pins in delegate_wire_compat re-run as the gate.

The actively-maintained successor is published under a different crate name (bincode-next), so a real migration is a rename, not a version bump — worth its own issue rather than a Dependabot PR.

See docs/wire-format.md (freenet-stdlib#129) for the wire rules this interacts with.

[AI-assisted - Claude]

Updates the requirements on [bincode](https://github.com/bincode-org/bincode) to permit the latest version.
- [Commits](https://github.com/bincode-org/bincode/commits)

---
updated-dependencies:
- dependency-name: bincode
  dependency-version: 3.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/cargo/bincode-3 branch from 3f97d09 to f6154ee Compare September 7, 2026 20:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant