chore(release): 0.8.1 - #464
Merged
Merged
Conversation
Four lines in the root manifest and the lockfile: the version lives in `[workspace.package]` and in the three internal dependency pins, and one missed there fails the publish after the earlier crates have already gone up. A patch bump rather than 0.9: this cycle is four fixes, a subcommand and a schema that stopped lying, with no public type gaining or losing a field. The one removal is `rustmotion::studio::command()`, which had no caller anywhere, sits behind the `studio` feature, and belongs to the module that is the application rather than to anything a library consumer builds against. What changed for someone installing it: `rustmotion studio` exists when the feature is on; `--codec h265` produces a file QuickTime and Safari open; text stops stepping by whole pixels under slow motion; and `rustmotion schema` accepts a templated scenario and reports the property that is wrong instead of the whole component. `cargo publish --dry-run` is clean for rustmotion-core and rustmotion-html, and no dependency is yanked. The other two cannot be dry-run before their dependencies exist on crates.io, so the order is rustmotion-core, rustmotion-html, rustmotion-components, rustmotion.
LeadcodeDev
force-pushed
the
chore/release-0.8.1
branch
from
October 1, 2026 16:24
f22e858 to
03243b4
Compare
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.
Four lines in the root manifest plus the lockfile. The version lives in
[workspace.package]and in the three internal dependency pins; one missed there fails the publish after the earlier crates have already gone up, which does not come back.Rebased onto
main. The branch was opened before the toolchain pin andclippywas its one red check: CI installed the floatingstablechannel, rustc moved to 1.99.0, and a lint fired on code this branch does not touch. #467 fixed the cause and is inmain, so the rebase is what makes this green rather than anything in the diff. The rebase was clean — the lockfile did not conflict, because none of the three commitsmaingained adds a dependency.A patch bump rather than 0.9. The cycle is seven fixes, a subcommand and a schema that stopped lying, and no public type gained or lost a field. Two things in here argue the other way and are worth disagreeing with. The first is a removal:
rustmotion::studio::command(), with no caller anywhere in the repository, behind thestudiofeature, in the module that is the application rather than anything a library consumer builds against. The second is four public additions inrustmotion-core::engine::renderer—css_font_weight,draw_photo,photo_sampling,device_axis_scales, each the single place a rule is now expressed. Additions break no caller, so they do not force a minor; under cargo's 0.x rules the removal is the one that argues for 0.9.0, and calling it a patch is a judgement rather than a reading of the rule.What an installing user gets, over 0.8.0:
rustmotion studioexists when the feature is on (Norustmotion studiosubcommand: the studio is only reachable as a second binary #458, feat(cli): add a studio subcommand behind the studio feature #459)--codec h265produces a file QuickTime, Safari andavconvertopen (H.265 output is tagged hev1, which QuickTime and Safari refuse: -tag:v hvc1 is never passed to ffmpeg #457, fix(encode): tag HEVC as hvc1 so AVFoundation players open the file #460)rustmotion schemaaccepts a templated scenario and names the property that is wrong (The exported schema rejects every templated scenario: $-placeholders are not modelled #424, fix(schema): make the exported schema accept what the engine accepts #463)font-weightof 600 or more is painted at the weight it declares instead of 700, so a title measured on one face and painted with a wider one no longer wraps over its next sibling (font-weight 800/900 is painted as 700 while measured at its real weight, so text wraps over its next sibling when several weights are loaded #466, fix(text): resolve a declared font weight in one place, so paint and measure agree #469)The last two landed after this branch was opened and are the reason the version list is longer than the body first claimed.
cargo publish --dry-runwas re-run after the rebase and passes forrustmotion-coreandrustmotion-htmlat 0.8.1, reporting no yanked dependency. The other two cannot be dry-run until their dependencies exist on crates.io, so publish in this order:rustmotion-core,rustmotion-html,rustmotion-components,rustmotion.cargo fmt --all --check,cargo clippy --workspace --all-targets --features rustmotion/studio -- -D warnings,cargo test --workspace --features rustmotion/studio: 2157 passed, 0 failed, 10 ignored across 53 suites, on the pinned 1.99.0.cargo auditwith CI's ignore list: no blocking advisory, twelve allowed unsound/unmaintained warnings.cargo metadatareports all four crates at 0.8.1 with every internal pin at^0.8.1— read from cargo rather than grepped, sinceversion.workspace = truemakes a grep lie. The built binary reportsrustmotion 0.8.1.No issue: a version bump is not work anyone filed.