File tree Expand file tree Collapse file tree 3 files changed +29
-3
lines changed
Expand file tree Collapse file tree 3 files changed +29
-3
lines changed Original file line number Diff line number Diff line change @@ -408,16 +408,39 @@ jobs:
408408 done
409409 git push
410410
411+ publish-crates-io :
412+ needs :
413+ - plan
414+ - host
415+ runs-on : " ubuntu-22.04"
416+ env :
417+ CARGO_REGISTRY_TOKEN : ${{ secrets.CARGO_REGISTRY_TOKEN }}
418+ if : ${{ !fromJson(needs.plan.outputs.val).announcement_is_prerelease || fromJson(needs.plan.outputs.val).publish_prereleases }}
419+ steps :
420+ - uses : actions/checkout@v4
421+ with :
422+ persist-credentials : false
423+ - name : Install Rust
424+ uses : dtolnay/rust-toolchain@stable
425+ - name : Publish to crates.io
426+ run : |
427+ echo "Publishing xleak to crates.io..."
428+ cargo publish --token "${CARGO_REGISTRY_TOKEN}" || {
429+ echo "::warning::cargo publish failed - version may already exist on crates.io"
430+ exit 0
431+ }
432+
411433 announce :
412434 needs :
413435 - plan
414436 - host
415437 - publish-homebrew-formula
416438 - publish-scoop-manifest
439+ - publish-crates-io
417440 # use "always() && ..." to allow us to wait for all publish jobs while
418441 # still allowing individual publish jobs to skip themselves (for prereleases).
419442 # "host" however must run to completion, no skipping allowed!
420- if : ${{ always() && needs.host.result == 'success' && (needs.publish-homebrew-formula.result == 'skipped' || needs.publish-homebrew-formula.result == 'success') && (needs.publish-scoop-manifest.result == 'skipped' || needs.publish-scoop-manifest.result == 'success') }}
443+ if : ${{ always() && needs.host.result == 'success' && (needs.publish-homebrew-formula.result == 'skipped' || needs.publish-homebrew-formula.result == 'success') && (needs.publish-scoop-manifest.result == 'skipped' || needs.publish-scoop-manifest.result == 'success') && (needs.publish-crates-io.result == 'skipped' || needs.publish-crates-io.result == 'success') }}
421444 runs-on : " ubuntu-22.04"
422445 env :
423446 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1414- VIM mode ` $ ` keybinding now correctly expects SHIFT modifier on Windows
1515
1616### Added
17- - Automated crates.io publishing via cargo-dist for all future releases
17+ - Automated crates.io publishing via custom GitHub Action for all future releases
1818
1919## [ 0.2.4] - 2025-12-04
2020
Original file line number Diff line number Diff line change @@ -7,7 +7,10 @@ Use this checklist when preparing a new release of xleak. You can also create a
77- [ ] All tests passing: ` cargo test `
88- [ ] No clippy warnings: ` cargo clippy `
99- [ ] Code is formatted: ` cargo fmt --check `
10- - [ ] CHANGELOG.md updated with new version changes
10+ - [ ] CHANGELOG.md updated:
11+ - [ ] Move items from ` [Unreleased] ` to new ` [X.Y.Z] - YYYY-MM-DD ` section
12+ - [ ] Keep ` [Unreleased] ` section empty for future changes
13+ - [ ] Verify changelog entries are accurate and complete
1114- [ ] Version bumped in ` Cargo.toml `
1215- [ ] Test binary works: ` cargo run --release -- test_data.xlsx `
1316
You can’t perform that action at this time.
0 commit comments