polachok / pnetlink

netlink library for rust
43 stars 13 forks source link

Be less restrictive on versions #25

Closed rbtcollins closed 6 years ago

rbtcollins commented 7 years ago

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.

rbtcollins commented 6 years ago

@polachok ping

polachok commented 6 years ago

So what happens if pnet introduces a breaking change?

rbtcollins commented 6 years ago

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.

bkchr commented 6 years ago

Could you rebase?