Bump everything to ICU4X 2.1.1 #7191
Merged
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.
I made a small mistake in the release: most crates got published without an updated dep on
icu_locale_coreandicu_provider. What happened was that when I updated crate deps I updated the section for ICU4X crates, but those crates are in a different Cargo.toml "section" and they didn't get an update (I plan to improve the release checklist to avoid this problem in the future, it has never been clear about this step).These crates don't use ~ deps unlike the rest (see #4343), which is why they are separate.
This breaks clients who depend directly on a component crate or metacrate (say,
icu_calendar), and they update that: this leads to combinations likeicu_locale_core 2.0.0withwriteable 0.6.2.ICU4X 2.0 had broken no-alloc support, which meant that it claimed to support no-alloc but in practice it didn't work. But the crates successfully compiled together. ICU4X 2.1 fixes this. Unfortunately, ICU4X 2.1 "fixed" no-alloc crates will not work with ICU4X 2.0 "broken" no-alloc crates.
To prevent people from getting inconsistent lockfiles, we just globally publish 2.1.1.
A more surgical alternative is to publish 2.1.1 only for component crates (not for provider/etc crates which people will not depend on directly anyway).