Repository navigation
chore: prepare the package manifest for crates.io - #1
Merged
Merged
Conversation
Add repository, readme, keywords and categories. Restrict the package to the sources, theme assets, embedding example and docs (96 files, 930 KiB), so tests, fixtures, tools and vendor/ stay out of the crate. Move crossterm's use-dev-tty behind a default dev-tty feature so embedding hosts can turn it off. Relax the hashbrown and arboard exact pins to caret requirements; Cargo.lock still resolves the same versions. publish stays false: the [patch.crates-io] overrides still block a faithful publish.
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.
First step toward publishing this crate to crates.io, so plannotator-tui can depend on it. This PR only makes the safe manifest changes.
publish = falsestays, because the three[patch.crates-io]overrides still block a faithful publish (see "Still blocked" below).Changes
repository,readme,keywordsandcategories, and updatesdescriptionto match the repo description.includelist: the package now holds onlysrc/**/*.rs,assets/pierre/**,examples/embedded_viewer.rs, README, EMBEDDING, LICENSE, NOTICE and the manifest/lockfile. That is 96 files, 930 KiB (208 KiB compressed). Tests, fixtures, tools, reports,docs/andvendor/stay in Git. The onlyinclude_bytes!that points atfixtures/is in a#[cfg(test)]module.dev-ttyfeature: crossterm'suse-dev-ttywas always on. It is now a default feature,dev-tty. The standalone build behaves exactly as before. Because crossterm features apply to the whole build, embedding hosts can now turn it off withdefault-features = false. EMBEDDING.md says how.hashbrown = "=0.16.1"becomes"0.16.1", andarboard = "=3.6.1"becomes"3.6.1". As dependencies, exact pins conflict with any host that needs a newer semver-compatible version.Cargo.lockis unchanged, so--lockedbuilds resolve the same versions.Checks
cargo fmt --check: passcargo clippy --locked --all-targets -D warnings: pass, with default features, with--all-features, and with--lib --no-default-featurescargo test --release --locked -- --test-threads=1: 247 passed, 0 failed (macOS arm64)cargo publish --dry-run: refused becausepublish = false, as intended.cargo packagealso fails on this branch, before it builds anything:package native-diff depends on syntect with feature owner-census but syntect does not have that feature. That is the patch blocker.publishunset, the diagnostic features removed andshared-enginesremoved, using--no-verify. It packaged 96 files, 930.4 KiB (207.5 KiB compressed). It also warned thatclipboard-win 5.4.1(a Windows-only arboard dependency) is yanked in the lockfile.Still blocked (not in this PR)
Diff::from_buffer, rewrite unquotedrename/copy from/tonames into C-quoted form, then move hunk offsets back by the bytes added. A prototype passes allgit_paths_contracttests and the full suite on stock libgit2-sys 0.18.8. Without it, two of those three contracts fail.vendor/:diffs-fancy-regex,diffs-syntectanddiffs-two-face. diffs-rs would depend on them throughpackage = ...renames, with no source changes. A scratch build of that layout passescargo check --all-targets --all-features.