Skip to content

crypto-common: note that 0.2.0 was [YANKED]#2321

Merged
newpavlov merged 1 commit intoRustCrypto:masterfrom
dishmaker:patch-1
Feb 27, 2026
Merged

crypto-common: note that 0.2.0 was [YANKED]#2321
newpavlov merged 1 commit intoRustCrypto:masterfrom
dishmaker:patch-1

Conversation

@dishmaker
Copy link
Contributor

Resolves #2319

@newpavlov newpavlov merged commit f82c5c5 into RustCrypto:master Feb 27, 2026
17 checks passed
@shepmaster
Copy link

Note that I had asked why this crate was yanked, which this commit does not explain. As someone that is using crypto-common 0.2.0, I don't have any context to understand if I need to upgrade.

@newpavlov
Copy link
Member

newpavlov commented Feb 27, 2026

As mentioned in the changelog, v0.2.1 has introduced a breaking change. Technically we should've released v0.3.0, but since we thought that the impact will be minimal, we decided to sneak it in a patch release (see discussion in #2309).

if I need to upgrade

I think yanking of the version is a pretty clear signal that you should. But you may want to postpone the upgrade if you use existing pre-releases (e.g. see #2316) since the upgrade may break your builds.

@shepmaster
Copy link

As mentioned in the changelog, v0.2.1 has introduced a breaking change

I did not look at the rest of the changelog, only at this commit's diff, so I apologize. However, now that I do look at it, I don't think that the text in the changelog explains why 0.2.0 was yanked or clearly indicates what the breaking change in 0.2.1 would have been (or that it is a breaking change).

I already knew that the version was yanked as my builds / crates.io told me that already, so marking that version as "yanked" doesn't provide any information, other than it was an intentional yank and not a typo. What is missing is the why the yank happened. Having a dedicated sentence in the changelog along the lines of "this version was yanked because we forgot to make an important breaking change and decided to include that in 0.2.1" (or whatever phrasing is true and accurate), potentially with a link to the discussion you have above, would go a long way.

For what it's worth, in my changelogs, I include this with each relevant bullet point:

This is a **breaking change**.

I think yanking of the version is a pretty clear signal that you should.

Maybe for most people, but my interest arises because this crate has stopped the nightly playground builds from occurring. In the vast majority of cases that someone has yanked a version, it doesn't actually matter to the playground, but I can't tell that without some sort of documentation / explanation.

@newpavlov
Copy link
Member

I will add a note for the yanked versions.

Maybe for most people, but my interest arises because this crate has stopped the nightly playground builds from occurring.

I wonder which crate is responsible for this:

error: failed to select a version for the requirement crypto-common = "=0.2.0"

Such bounds are notoriously fragile.

@newpavlov
Copy link
Member

See #2325

@shepmaster
Copy link

I wonder which crate is responsible for this:

Oh, that's something I do specifically. I want to know when there are issues, but I also don't want to rebuild every crate every night.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Please document why a crate was yanked

3 participants