parking_lot icon indicating copy to clipboard operation
parking_lot copied to clipboard

How to update parking_lot's dependency on parking_lot_core

Open peterthejohnston opened this issue 2 years ago • 7 comments

parking_lot_core's dependency on windows-sys was recently updated from v0.33.0 to v0.34.0. What's the process for updating parking_lot's dependency on parking_lot_core? I suppose it would require tagging a new release of the latter, and then updating the root crate to depend on the new release of core?

Am I understanding this change, for example, correctly that it does those things simultaneously?

peterthejohnston avatar Mar 21 '22 15:03 peterthejohnston

There is no need for a release of parking_lot, a minor release of parking_lot_core is enough, as the last one.

a1phyr avatar Mar 25 '22 14:03 a1phyr

But parking_lot depends specifically on parking_lot_core = "0.9.0", so a new minor release of core wouldn't result in its being pulled into parking_lot.

So I think if I want parking_lot to transitively depend on the latest windows-sys, both parking_lot_core and parking_lot have to be released.

peterthejohnston avatar Mar 25 '22 14:03 peterthejohnston

That is not the case. 0.9.0 is semver compatible with 0.9.1, so just releasing parking_lot_core 0.9.1 would be enough.

CryZe avatar Mar 25 '22 14:03 CryZe

I know that it's semver compatible, but I guess what I'm getting at is that if I were to cargo vendor parking_lot, I'm pretty sure it would pull in parking_lot_core 0.9.0 since it is explicitly pinned to that version, rather than "0.9" for example. Am I missing something?

peterthejohnston avatar Mar 25 '22 14:03 peterthejohnston

parking_lot is not pinned to 0.9.0. It is pinned to any version semver compatible to 0.9.0, which includes 0.9.1:

https://github.com/Amanieu/parking_lot/blob/e27f37d111c57a99b0a7147caddc28c57fb44e91/Cargo.toml#L14

bjorn3 avatar Mar 25 '22 14:03 bjorn3

Gotcha, I didn't realize that specifying a full version worked that way. Thanks for clarifying.

peterthejohnston avatar Mar 25 '22 14:03 peterthejohnston

This should do it: #334

Although a maintainer would need to publish the new release to crates.io.

peterthejohnston avatar Mar 25 '22 15:03 peterthejohnston