Skip to content

publish: crates.io as clank-cli-app (manual gate) - #3

Merged
makefunstuff merged 4 commits into
mainfrom
publish/crates-io-clank-cli-app
Sep 22, 2026
Merged

makefunstuff merged 4 commits into
mainfrom
publish/crates-io-clank-cli-app

Conversation

@makefunstuff

@makefunstuff makefunstuff commented Sep 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • Rename Cargo package to clank-cli-app (binaries stay clank / clank-jev). Version 0.1.0 for first crates.io publish under the new name.
  • README Install first line: package ≠ binaries; primary install cargo install clank-cli-app --locked; git install kept as fallback; never cargo install clank.
  • STATUS: crates.io gated (critique gate).

Critique gate (workflows)

Local commit 652bc28 ready but not pushed (gh OAuth lacks workflow scope):

  • CI: cargo publish --dry-run --locked on every PR
  • Release: workflow_dispatch + publish_crates_io + environment crates-io only — no auto tag→crates.io

Push with: gh auth refresh -h github.com -s repo,workflow,read:org then git push.

Dry-run

cargo publish --dry-run --locked locally: packaged 76 files, verified, aborted upload — OK.

Follow-ups (parent / user)

  1. Push workflow commit (scope above).
  2. Set CARGO_REGISTRY_TOKEN via secret card / gh secret set (do not echo); protect environment crates-io.
  3. After merge + green dry-run: one manual Actions → release → Run workflow with publish_crates_io=true before wiring auto tag publish.

Test plan

  • Workflows on branch; CI publish-dry-run green
  • Manual dispatch publish once secret is set
  • Confirm a plain v* tag does not publish to crates.io

Rename the Cargo package to clank-cli-app so install is
`cargo install clank-cli-app` while binaries stay clank / clank-jev.
CI dry-runs packaging on every PR; real crates.io publish is
workflow_dispatch only until one manual publish has landed — tags
still cut GitHub assets only.
@makefunstuff

Copy link
Copy Markdown
Owner Author

Blocker: workflow commit not on the branch yet

Package rename + README/STATUS are on this PR (0ac2e65). The critique-gate workflow commit is local only at 652bc28:

  • CI job publish-dry-run: cargo publish --dry-run --locked
  • Release: workflow_dispatch + input publish_crates_io + environment crates-io
  • No auto cargo publish on v* tags (tags still cut GitHub assets only)

git push is rejected: OAuth app lacks workflow scope.

To land it: from the box checkout on publish/crates-io-clank-cli-app (commit 652bc28 already committed):

gh auth refresh -h github.com -s repo,workflow,read:org
git push origin publish/crates-io-clank-cli-app

Or apply the same two files via the GitHub UI.

Also needed before real publish: repo secret CARGO_REGISTRY_TOKEN + environment crates-io (ask via secret card / gh secret set — never echo the token).

Local dry-run (clean tree): packaged clank-cli-app v0.1.0 (76 files), verified compile, aborted upload — OK.

Install after first manual publish: cargo install clank-cli-app --locked

@makefunstuff
makefunstuff merged commit fb6067d into main Sep 22, 2026
3 checks passed
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