Commit a19a2df
fix(release): scope published crate with include allowlist (fixes crates.io 413) (#154)
The `sqlrite-engine` crate publish for v0.11.0 was rejected by crates.io:
status 413 Payload Too Large: max upload size is: 10485760
The package root is the workspace root and the engine [package] had no
`include`/`exclude`, so `cargo publish` swept the ENTIRE repo tree —
every sibling member plus `web/`, `images/`, and the journal example's
demo media. After SQLR-42 (web/public/playground/pkg/*.wasm, 2.1 MiB)
and SQLR-43 (examples/desktop-journal/docs/demo.gif 9 MiB + demo.mp4
8.7 MiB + screenshots) landed since v0.10.2, the uncompressed tarball
hit ~25 MiB and blew the 10 MiB cap. Patch releases before that stayed
under the limit, which is why this is the first time it broke.
Fix: add an `include` allowlist so only the library/REPL sources, the
three declared `[[example]]` targets (their .rs files must be in the
tarball or `cargo publish`'s verify step can't parse the manifest), and
the readme/license ship. An allowlist beats `exclude` here because new
large files anywhere in the repo can't silently re-bloat the crate.
Verified locally: `cargo package -p sqlrite-engine` produces a 376 KiB
.crate (down from ~25 MiB uncompressed) and the packaged crate compiles
clean against the already-published sqlrite-ask 0.11.0.
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>1 parent 44b16e3 commit a19a2df
1 file changed
Lines changed: 22 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
38 | 60 | | |
39 | 61 | | |
40 | 62 | | |
| |||
0 commit comments