Skip to content

Add crates.io release workflow, crate READMEs and LICENSE - #32

Merged
setoelkahfi merged 1 commit into
developmentfrom
chore/release-crates-workflow
Oct 11, 2026
Merged

setoelkahfi merged 1 commit into
developmentfrom
chore/release-crates-workflow

Conversation

@setoelkahfi

Copy link
Copy Markdown
Contributor

What

  • release-crates.yml: on a v*.*.* tag (or manual dispatch), checks the tag against the workspace version, runs fmt, clippy, tests and the lower-crate solo builds, then publishes core, aso, pricing, signing, reports, frontend, mcp and cli to crates.io in that order. Publishing uses trusted publishing (OIDC), so there is no registry token secret. Versions already on crates.io are skipped, so a re-run resumes after a partial failure. Once everything is published it dispatches release-github.yml and release-mcp-registry.yml with the same tag.
  • A README.md for each library crate, referenced from its Cargo.toml via readme.
  • The Apache-2.0 LICENSE at the repo root.
  • Copyright holder changed from Splitfire AB to PT Sigit Mitra Bangun in the READMEs and two doc-comment examples. The 5mb.app link is gone.
  • The root README said seven crates and left out reports. It now lists all eight.

Before the first release

  • Each of the eight crates needs a trusted publisher on crates.io pointing at smbcloudXYZ/smbcloud-ascapi and workflow release-crates.yml. The publish job runs in the crates-io environment, so the crates.io config must match if it names one.
  • The new READMEs change the package contents, so the next release needs a version bump (the tag check enforces this). 0.1.1 is already published and can't be replaced.
  • LICENSE sits at the repo root, so it is not included in the published crates. Each crate still declares Apache-2.0 in its metadata.

Checked

cargo fmt --check, cargo check --workspace --locked and cargo doc with -D warnings pass locally. The workflow has not run yet.

Add release-crates.yml, which verifies a v*.*.* tag against the workspace
version, runs fmt, clippy and tests, and publishes the eight crates to
crates.io in dependency order through trusted publishing. It then
dispatches the GitHub release and MCP Registry workflows.

Give every library crate a README and point its Cargo.toml at it, add the
Apache-2.0 LICENSE, and change the copyright holder to PT Sigit Mitra
Bangun. The root README now lists the reports crate.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

@sigit-code-review sigit-code-review Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change introduces a new GitHub Actions workflow (release-crates.yml) to automate publishing all workspace crates to crates.io in dependency order, with trusted publishing (OIDC) and robust handling of partial failures. Each library crate now has a README.md referenced in its Cargo.toml, and the root README is updated to list all eight crates, including reports. The Apache-2.0 LICENSE is added at the repo root. Copyright and example references are updated from Splitfire AB to PT Sigit Mitra Bangun. The workflow ensures the tag matches the workspace version, runs formatting, lint, and tests, and triggers further distribution workflows after a successful publish. No critical or warning issues are present in the diff.


Automated review by siGit Code Review · commit 431924d · see the review dashboard

@setoelkahfi setoelkahfi self-assigned this Oct 11, 2026
@setoelkahfi
setoelkahfi requested a review from paydii October 11, 2026 22:50
Comment thread .github/workflows/release-crates.yml
@setoelkahfi
setoelkahfi merged commit 85192fb into development Oct 11, 2026
2 checks passed
@setoelkahfi
setoelkahfi deleted the chore/release-crates-workflow branch October 11, 2026 23:20
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.

2 participants