Relax MSRV policy to exclude dependencies #44
Labels
D-accepted
A decision (D) has been made and the issue will be worked on
I-feature
This issue (I) regards a (potential) feature in the project
T-accepted
Triage (T): Initial review accepted issue/PR as valid
Short Description:
Relax MSRV policy to exclude any guarantees about the MSRV of
duplicate
's dependencies.Motivation:
#42 showed that the current MSRV policy implementation of pinning any dependencies that don't have a compatible MSRV policy puts undue limits on users who want to use the same dependencies as
duplicate
.The discussion in the same issue shows the problem isn't likely to be fixed by rust tooling, meaning pinning versions must be avoided by
duplicate
As such, the MSRV is practically too restrictive and should be relaxed.
Design
The original vision of the MSRV was to promise that increasing it would always follow with a major version bump.
While this can be maintained by
duplicate
itself, it is unlikely to be a policy that is generally used by dependencies.Therefore, to maintain as much of the promise as we can, while avoiding having to pin dependencies, the new policy is that dependencies don't necessarily have a compatible MSRV policy.
Instead, we will promise that the lowest version used by
duplicate
works for the MSRV. The user must then independently pin any dependencies they need that releases a version with a higher MSRV.Misc:
The text was updated successfully, but these errors were encountered: