-
Notifications
You must be signed in to change notification settings - Fork 2k
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
use the lock file for pinning dependencies, not the project definition #18305
base: main
Are you sure you want to change the base?
Conversation
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
Conflicts have been resolved. A maintainer will review the pull request shortly. |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
Conflicts have been resolved. A maintainer will review the pull request shortly. |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
Conflicts have been resolved. A maintainer will review the pull request shortly. |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
1 similar comment
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
keyring = "25.2.1" # Store keys in MacOS Keychain, Windows Credential Locker | ||
packaging = "24.0" | ||
pip = "24.2" | ||
aiofiles = ">=24.1.0" # Async IO for files |
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.
as I understand the poetry documentation, we would want to use ^
instead of >=
.
https://python-poetry.org/docs/dependency-specification/
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.
I personally started with *
since we have no particular ties the the version we are exactly pinning now. I switched to >=
since Earle asked for it. There's doubt in the Python community that upper version limits actually net a better ecosystem. Yeah, SemVer, I'm all about it. But, if you strictly follow it then you can end up with many major version bumps over minor corner case fixes that won't affect the vast majority of dependees. Then some of those dependees aren't really well maintained and have upper version limits. Then nobody can install anything sensible anymore. The flip side is more accidental breakage... but. Anyone can add a constraint (an upper limit for a package) while nobody can take an existing constraint away from a package they don't own (like an upper limit). And yes, there are issues talking about adding the ability to override other package's dependency constraints. :]
So yes, we could ^
if we wanted to constrain the upper bound. Given that we have a lock and require PRs, we'll be testing every update to the lock the same regardless of it being major, minor, or patch and also regardless of what constraint we use here.
There are cases, like a user needing to do a local version update for whatever reason, where better describing our limits of compatibility would be good. Today, we provide no guidance on that since we pin version in both the lock and the project definition. So, I'm not clear that just dropping the constraints in the project definition makes things particularly worse.
Conflicts have been resolved. A maintainer will review the pull request shortly. |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
1 similar comment
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
Conflicts have been resolved. A maintainer will review the pull request shortly. |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
1 similar comment
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
Conflicts have been resolved. A maintainer will review the pull request shortly. |
Pull Request Test Coverage Report for Build 11072836265Details
💛 - Coveralls |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
This PR has been flagged as stale due to no activity for over 60 days. It will not be automatically closed, but it has been given a stale-pr label and should be manually reviewed by the relevant parties. |
Conflicts have been resolved. A maintainer will review the pull request shortly. |
This reverts commit 659eb4d.
Purpose:
Presently every dependabot PR that updates a package we have specified in
pyproject.toml
conflicts because thepoetry.lock
has a hash of the contents ofpyproject.toml
. There's various discussion that could be had around*
vs.>=x.y.z
vs.^x.y
and specifying versions here or there or wherever... but we can't be dealing with these conflicts every time so some option involving not changingpyproject.toml
every time is needed.With this change it is reasonable once again to have dependabot auto-rebase since the PRs won't all be conflicting.
Current Behavior:
New Behavior:
Testing Notes: