Closed rbtcollins closed 6 years ago
@polachok ping
So what happens if pnet introduces a breaking change?
If/when that happens we put a patch in to specify that we aren't compatible; until then everything just works for existing users (because their build deps are locked to a working version). Any app deployments being built should have precise pins in lock files. Libraries need to be maximally tolerant (only exclude on incompatibilities) or you end up with many different versions of the same dep being linked in, which is both slow and large, and also often incompatible if the abstraction is surfaced - which is our situation here.
Could you rebase?
Allow for Cargo.lock in consumers to bring together working versions with less redundancy. Its very awkward having different versions of pnet in particular pulled in from multiple crates, because of the transitive dependency on netmap_sys which has to be a singleton.