-
-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Support mixed MSRV in --version-range #213
Conversation
This expands on the approach taken in taiki-e#212 bucketing packages into rust-versions to run. If we skipped the MSRV (due to `--version-step`), we automatically inject it. If a package's MSRV isn't within the range, we skip it. Benefits - Relatively simple to implement and to explain - We keep the number of runs to a minimum by walking in lock-step the `--version-step`, independent of what each package' MSRV I did have to specialize `--rust-version` vs `--version-range` to avoid `--rust-version` range users walking more than they needed. To keep the progress total accurate, I shifted the calculating of the total from `determine_package_list` to after we have bucketed everything. To make this feasible, I saved off the how many iterations a package will have without the version range being taken into account. As a byproduct, this fixes a bug in taiki-e#212 where it didn't take the rust-version into account when determining the total. Fixes taiki-e#199
@taiki-e CI is passing |
Great! Could you add a test case for --version-step? |
I also should add a warning when a selected package is skipped due to msrv being higher than the end of the range in case it isn't intentional |
CI is passing again with the applied changes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Published in 0.6.6. Thanks again @epage! |
This expands on the approach taken in #212 bucketing packages into
rust-versions to run. If we skipped the MSRV (due to
--version-step
),we automatically inject it. If a package's MSRV isn't within the range,
we skip it.
Benefits
--version-step
, independent of what each package' MSRVI did have to specialize
--rust-version
vs--version-range
to avoid--rust-version
range users walking more than they needed.To keep the progress total accurate, I shifted the calculating of the
total from
determine_package_list
to after we have bucketedeverything. To make this feasible, I saved off the how many iterations
a package will have without the version range being taken into account.
As a byproduct, this fixes a bug in #212 where it didn't take the
rust-version into account when determining the total.
Fixes #199