Skip to content

fix(packaging): include README on published aube crate#349

Merged
jdx merged 2 commits intomainfrom
fix/crates-io-readme
Apr 27, 2026
Merged

fix(packaging): include README on published aube crate#349
jdx merged 2 commits intomainfrom
fix/crates-io-readme

Conversation

@jdx
Copy link
Copy Markdown
Contributor

@jdx jdx commented Apr 27, 2026

Summary

  • Add readme = \"README.md\" to [workspace.package] and inherit it on the aube binary crate so crates.io renders the project README. Currently the crates.io page has no README because the binary crate's include whitelist ([\"src/**/*.rs\", \"build.rs\"]) excluded it and no readme field was set.
  • Cargo always bundles the README when readme is set, regardless of include; verified with cargo package --list -p aube (README.md now appears in the file list).
  • Takes effect on the next publish (1.3.0+); 1.2.1 is already up without one.

Test plan

  • cargo package --list -p aube --no-verify shows README.md in the tarball
  • After release-plz publishes the next version, confirm the README renders on crates.io

🤖 Generated with Claude Code


Note

Low Risk
Low risk: this only adjusts Cargo package metadata for publishing and should not affect runtime behavior or dependencies.

Overview
Ensures crates published from this workspace include and render the repository README.md by setting readme = "README.md" in [workspace.package] and having each crate inherit it via readme.workspace = true (including the aube binary crate that previously whitelisted files via include).

Reviewed by Cursor Bugbot for commit 3134282. Bugbot is set up for automated code reviews on this repo. Configure here.

The aube binary crate's `include` whitelist limited the package tarball
to .rs files, and the workspace had no `readme` field, so crates.io had
no README to render. Set `readme = "README.md"` at the workspace level
and inherit it on the aube crate; cargo auto-bundles the README into
the tarball regardless of the include list.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@greptile-apps
Copy link
Copy Markdown

greptile-apps Bot commented Apr 27, 2026

Greptile Summary

Adds readme = "README.md" to [workspace.package] in the root Cargo.toml and propagates it to all 11 crates via readme.workspace = true, so crates.io renders the project README on each crate's page. The change is purely metadata and has no effect on compiled output.

Confidence Score: 5/5

Safe to merge — purely additive metadata change with no code or logic impact.

All changes are Cargo manifest metadata additions. No logic, no security surface, no breaking changes. Cargo's workspace inheritance correctly resolves the README path relative to the workspace root when packaging individual crates, so the include whitelists on library crates are not a concern.

No files require special attention.

Important Files Changed

Filename Overview
Cargo.toml Adds readme = "README.md" to [workspace.package] so all crates can inherit it
crates/aube/Cargo.toml Inherits readme from workspace; the primary fix target for the missing crates.io README
crates/aube-linker/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-lockfile/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-manifest/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-registry/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-resolver/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-scripts/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-settings/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-store/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-util/Cargo.toml Adds readme.workspace = true for consistent README on crates.io
crates/aube-workspace/Cargo.toml Adds readme.workspace = true for consistent README on crates.io

Reviews (2): Last reviewed commit: "fix(packaging): inherit readme on every ..." | Re-trigger Greptile

Extends the previous commit so all 10 sibling library crates also publish
with the project README on crates.io, not just the aube binary.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@jdx jdx enabled auto-merge (squash) April 27, 2026 20:56
@jdx jdx merged commit e5f1f44 into main Apr 27, 2026
29 of 31 checks passed
@jdx jdx deleted the fix/crates-io-readme branch April 27, 2026 21:00
@greptile-apps greptile-apps Bot mentioned this pull request Apr 27, 2026
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.

1 participant