I have a specific problem, but understanding the solution I think is going to be useful in a broader context.
I have a project that indirectly depends on pnet
; I don't directly reference it anywhere.
It was building fine for a few weeks with pnet version 0.22. On Monday, something changed and the version of pnet
incremented to 0.23 and our CI server started failing to build.
It seems that moving forward, especially once we start deploying builds, being able to definitively reproduce exact outputs is going to be pretty critical for us, so this isn't specific to this library. This could really happen at any time with any library.
Is there a way in Cargo to somehow "force" the dependency tree to use the older version short of us pulling the source of the older pnet
(and maybe whatever is using it)?
I'd love to just be able to put an entry into Cargo.toml
that pins the old version.
I tried adding the following, but it didn't help:
pnet = "=0.22.0"