A GitHub Action for running cargo-semver-checks
Find a file
2023-02-27 16:42:26 -05:00
.github Add eslint and prettier (#10) 2023-02-27 16:42:26 -05:00
dist Rename crate-name to package 2023-02-27 16:42:26 -05:00
src Rename crate-name to package 2023-02-27 16:42:26 -05:00
.eslintrc.cjs Add eslint and prettier (#10) 2023-02-27 16:42:26 -05:00
.gitignore brand-new action in node.js (#4) 2023-02-27 16:42:26 -05:00
.npmrc brand-new action in node.js (#4) 2023-02-27 16:42:26 -05:00
.prettierrc.json Add eslint and prettier (#10) 2023-02-27 16:42:26 -05:00
action.yml Rename crate-name to package 2023-02-27 16:42:26 -05:00
LICENSE Initial commit 2022-07-20 18:45:54 -04:00
package-lock.json Add eslint and prettier (#10) 2023-02-27 16:42:26 -05:00
package.json Add eslint and prettier (#10) 2023-02-27 16:42:26 -05:00
README.md Rename crate-name to package 2023-02-27 16:42:26 -05:00
tsconfig.json Add ending newlines 2023-02-27 16:42:26 -05:00

cargo-semver-checks-action

Lint your crate API changes for semver violations.

- name: Check semver
  uses: obi1kenobi/cargo-semver-checks-action@v2
- name: Publish to crates.io
  run: # your `cargo publish` code here

Input options

Every argument is optional.

Input Description Default
package The package whose API to check for semver (in Package Id Specification format, see https://doc.rust-lang.org/cargo/reference/pkgid-spec.html for reference). If not set, all packages in the workspace are processed.
manifest-path Path to Cargo.toml of crate or workspace to check. Has an effect only if package is not specified.
verbose Enables verbose output of cargo-semver-checks. false

Scenarios

Use in workspaces with more than one crate

By default, if workspace contains multiple crates, all of them are checked for semver violations. You can specify a single crate to be checked instead using package or manifest-path.

For example, this will check my-crate:

- name: Check semver
  uses: obi1kenobi/cargo-semver-checks-action@v2
  with:
    package: my-crate
- name: Publish my-crate to crates.io
  run: # your `cargo publish` code here