PR #349: ftl-sdk-macros v0.14.0
- Status: Ready to merge (awaiting approval)
- All Rust Lint checks: β PASS
- All Rust Test checks: β PASS
- Mergeable: YES
PR #348: ftl-sdk v0.14.0
- Status: Ready to merge (awaiting approval)
- All Rust Lint checks: β PASS
- All Rust Test checks: β PASS
- Mergeable: YES
- Removed all complex coordination - No linked-versions, no cargo-workspace, no extra-files
- Separate PRs - Each package gets its own release PR
- Standard semver - ftl-sdk uses
^0.11.1for ftl-sdk-macros (current crates.io version) - Independent versioning - Packages can evolve at their own pace
# Once approved
gh pr merge 349 --repo fastertools/ftl --squashThis will trigger automatic publishing to crates.io
After ftl-sdk-macros 0.14.0 is on crates.io:
git checkout main && git pull
git checkout -b update-macros-dep
sed -i '' 's/ftl-sdk-macros = { version = "^0.11.1"/ftl-sdk-macros = { version = "^0.14"/' sdk/rust/Cargo.toml
git add sdk/rust/Cargo.toml
git commit -m "chore: update ftl-sdk-macros to ^0.14"
git push origin update-macros-dep
gh pr create --title "chore: update ftl-sdk-macros dependency to ^0.14" \
--body "Updates dependency to use newly published version from crates.io"After the dependency update PR is merged, PR #348 will rebuild and can be merged.
- No coordination needed - Just like separate repos
- Standard Rust/Cargo practices - Nothing special or custom
- CI passes - Because we use published crates from crates.io
- Simple to understand - Anyone familiar with Rust knows this pattern
- KISS wins - Complex coordination creates more problems than it solves
- Standard practices exist for a reason - Rust ecosystem handles this well already
- Separate repos pattern works - Even in a monorepo, treat packages independently
- Release order matters - Dependencies must be published before dependents
Once both packages are at 0.14.0 on crates.io:
- Patch/minor updates will work automatically within semver ranges
- Major version bumps will need dependency update PRs
- This is completely normal and expected in the Rust ecosystem