pksunkara / cargo-workspaces

A tool for managing cargo workspaces and their crates, inspired by lerna
MIT License
483 stars 46 forks source link

feat: Implement print plan and basic checks for publish command #154

Closed popzxc closed 4 months ago

popzxc commented 4 months ago

This PR adds two features I found useful recently:

The first one proved handy when I had to publish a lot of crates written by different people that weren't initially meant to be published. So every so often a field would be forgotten, but I won't know about it until I'm in the middle of the publishing process.

The second one is useful for large workspaces: crates.io has pretty strict rate limits on publishing new packages, so it's actually easier to get the order in which crates should be published and then do it manually.

popzxc commented 4 months ago

@pksunkara I've implemented the requested changes. However, unfortunately, I cannot run tests, they fail even on main branch:

failures:
    test_create_bin_2015
    test_create_bin_2018
    test_create_lib_2015
    test_create_lib_2018
    test_member_glob

create_bin ones seem to fail because # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html is missing in the output. However even if I update snapshots there, they panic because of some other error.

Do you have any advice on how to proceed here?