Each workspace crate now owns its own version instead of the previous lockstep scheme; irtt-proto, irtt-client, irtt-server, irtt-stats, and irtt-cli all become 0.5.0 as the first independently-versioned release. Workspace dependency requirements are bumped to match. Add a root CHANGELOG.md with a real per-crate 0.5.0 section drawn from archaeology of every merge since v0.4.0, not just path-filtered commits. Move cargo-dist to a crate-qualified `irtt-cli/vX.Y.Z` tag namespace so only irtt-cli (the one dist-able application) triggers a GitHub Release; library crate tags (irtt-proto/irtt-client/irtt-server/irtt-stats) exist purely to pin the source for a crates.io release and no longer risk tripping the release workflow. Regenerate the renamed irtt-cli-release.yml via `dist generate` and update the few other files that referenced the old release.yml path by name. Also fix a stale `features = ["full"]` in dist-workspace.toml left over from a feature-flag refactor that dropped the "full" feature entirely, which was silently breaking every dist build. Rescope semver.yml's tag trigger to the same five crate-qualified tags so semver checks keep running under the new convention.
32 lines
681 B
YAML
32 lines
681 B
YAML
name: Semver
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
tags:
|
|
- "irtt-proto/v*.*.*"
|
|
- "irtt-client/v*.*.*"
|
|
- "irtt-server/v*.*.*"
|
|
- "irtt-stats/v*.*.*"
|
|
- "irtt-cli/v*.*.*"
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
semver:
|
|
name: cargo-semver-checks
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 20
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: Check semver compatibility
|
|
uses: obi1kenobi/cargo-semver-checks-action@6b69fcf40e9b5fb17adeb57e4b6ecd020649a239 # v2
|
|
with:
|
|
feature-group: all-features
|