Skip to content
This repository was archived by the owner on Apr 4, 2025. It is now read-only.

Drop hard cap on lxml major version #2

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

AlecRosenbaum
Copy link

No description provided.

@wojcikstefan
Copy link
Member

Btw, we might wanna upstream it linking to https://hynek.me/articles/semver-will-not-save-you/, specifically:

If you maintain a public package and pin the major version of a dependency of yours, you transitively do this to the applications of your users.

Imagine an application depends on the wonderful urllib3 and your package does too. Now if you pin urllib3 to <2 [or lxml to <5 – Stefan], the user of your package doesn’t have it in their power to ever receive an update from urllib3 again, once urllib3 bumps its major version to 2 and beyond.

They may not even realize how far back they are.

On the other hand, if a new major version of a package surprisingly breaks your package, they can always add a pin themselves (see step 4 above) until you fix your package. But there’s no practical way for them to remove your pin.

Don’t ever pin major versions, unless you know they’re broken.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants