From 4d545042b0537c6ea965bec24528f8752fa422b9 Mon Sep 17 00:00:00 2001 From: Baptiste Parmantier Date: Thu, 20 Aug 2026 14:40:59 +0200 Subject: [PATCH] fix(crates): ship the README with every published crate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit crates.io shows 'rustmotion v0.7.0 appears to have no README.md file'. Cargo looks for the readme inside the package directory, and README.md lives at the repository root — outside all four crates — so it was never archived. None of them declared a readme field either, so cargo looked, found nothing, and published without one. readme = "../../README.md" is enough: cargo copies the file into the tarball and rewrites the path to README.md in the published manifest. No duplicate, no symlink, and the file stays where GitHub renders it. Same family as the theme files and the skills tree: code or metadata reaching outside its own crate, invisible until something builds a tarball. Ships as 0.7.1 — 0.7.0 is already on crates.io and a published version cannot be amended. --- Cargo.lock | 10 +++++----- Cargo.toml | 8 ++++---- crates/rustmotion-components/Cargo.toml | 1 + crates/rustmotion-core/Cargo.toml | 1 + crates/rustmotion-html/Cargo.toml | 1 + crates/rustmotion/Cargo.toml | 1 + 6 files changed, 13 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 883517d8..39836ca3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5071,7 +5071,7 @@ dependencies = [ [[package]] name = "rustmotion" -version = "0.7.0" +version = "0.7.1" dependencies = [ "clap", "clap_complete", @@ -5104,7 +5104,7 @@ dependencies = [ [[package]] name = "rustmotion-components" -version = "0.7.0" +version = "0.7.1" dependencies = [ "dashmap", "gif 0.13.3", @@ -5125,7 +5125,7 @@ dependencies = [ [[package]] name = "rustmotion-core" -version = "0.7.0" +version = "0.7.1" dependencies = [ "cosmic-text", "dashmap", @@ -5149,7 +5149,7 @@ dependencies = [ [[package]] name = "rustmotion-html" -version = "0.7.0" +version = "0.7.1" dependencies = [ "html5ever 0.39.0", "markup5ever_rcdom", @@ -5159,7 +5159,7 @@ dependencies = [ [[package]] name = "rustmotion-studio" -version = "0.7.0" +version = "0.7.1" dependencies = [ "clap", "dioxus", diff --git a/Cargo.toml b/Cargo.toml index db8049ef..130af36b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,15 +13,15 @@ members = [ # par dépendance interne — et une seule oubliée fait échouer la publication après # que les précédentes soient parties, ce qui ne se rattrape pas. [workspace.package] -version = "0.7.0" +version = "0.7.1" # Les dépendances internes portent aussi la version, donc elles se déclarent ici # pour la même raison. `path` sert au développement, `version` à ce que cargo # écrit dans le paquet publié : les deux doivent coexister, et rester d'accord. [workspace.dependencies] -rustmotion-core = { path = "crates/rustmotion-core", version = "0.7.0" } -rustmotion-components = { path = "crates/rustmotion-components", version = "0.7.0" } -rustmotion-html = { path = "crates/rustmotion-html", version = "0.7.0" } +rustmotion-core = { path = "crates/rustmotion-core", version = "0.7.1" } +rustmotion-components = { path = "crates/rustmotion-components", version = "0.7.1" } +rustmotion-html = { path = "crates/rustmotion-html", version = "0.7.1" } # Optimize dependencies even in dev builds. Our own crates stay at opt-level 0 # (fast incremental + debuggable), but heavy compute in deps (image encoding, diff --git a/crates/rustmotion-components/Cargo.toml b/crates/rustmotion-components/Cargo.toml index 381f5f72..adf8f0e1 100644 --- a/crates/rustmotion-components/Cargo.toml +++ b/crates/rustmotion-components/Cargo.toml @@ -5,6 +5,7 @@ edition = "2021" description = "Component library for rustmotion (51 components)" license = "MIT" repository = "https://github.com/LeadcodeDev/rustmotion" +readme = "../../README.md" [features] default = ["lottie-native"] diff --git a/crates/rustmotion-core/Cargo.toml b/crates/rustmotion-core/Cargo.toml index 4999d582..a0160e8f 100644 --- a/crates/rustmotion-core/Cargo.toml +++ b/crates/rustmotion-core/Cargo.toml @@ -5,6 +5,7 @@ edition = "2021" description = "Core types, traits, and rendering utilities for rustmotion" license = "MIT" repository = "https://github.com/LeadcodeDev/rustmotion" +readme = "../../README.md" [dependencies] serde = { version = "1", features = ["derive"] } diff --git a/crates/rustmotion-html/Cargo.toml b/crates/rustmotion-html/Cargo.toml index f5827ec7..031a8236 100644 --- a/crates/rustmotion-html/Cargo.toml +++ b/crates/rustmotion-html/Cargo.toml @@ -5,6 +5,7 @@ edition = "2021" description = "HTML/CSS front-end transpiler for rustmotion scenarios" license = "MIT" repository = "https://github.com/LeadcodeDev/rustmotion" +readme = "../../README.md" [dependencies] html5ever = "0.39.0" diff --git a/crates/rustmotion/Cargo.toml b/crates/rustmotion/Cargo.toml index 07f9196f..ce87eba3 100644 --- a/crates/rustmotion/Cargo.toml +++ b/crates/rustmotion/Cargo.toml @@ -5,6 +5,7 @@ edition = "2021" description = "A CLI tool that renders motion design videos from JSON scenarios. No browser, no Node.js — just a single Rust binary." license = "MIT" repository = "https://github.com/LeadcodeDev/rustmotion" +readme = "../../README.md" [lib] path = "src/lib.rs"