-
-
Notifications
You must be signed in to change notification settings - Fork 277
remove python upper bound requirement #1588
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
base: main
Are you sure you want to change the base?
Conversation
65bae73
to
2ad73b6
Compare
The lxml version is causing Dependency hell and build faliures |
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.
@solomoncyj I left a few comments inline.
What kind of install results in these problems? Are you trying to explicitly run with new python, or newer lxml, or something else?
@@ -109,7 +109,7 @@ def long_description(): | |||
"zulip>=0.8.2,<0.9.0", # Next release, 0.9.0, requires Python 3.9 | |||
"urwid_readline>=0.15.1", | |||
"beautifulsoup4>=4.13.4", | |||
"lxml==4.9.4", |
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've been busy outside of ZT recently, but I believe this was pinned so as to avoid errors with PyPy 3.7, which I believe you're seeing here.
As per comments elsewhere - likely in the channel(s) on chat.zulip.org as well as on GitHub - the idea some time ago was to get a release out for 3.7 and then drop support. I don't recall if one can set different package version dependencies per python version, which would work as a short-term workaround for this. Failing that, I'd be open to moving to 3.9+, since 3.8 is also past end of life now.
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.
If the lxml version is too low, the wheel has to be built manually for python>= 3.13 and failes due to ABI incompatibility , however there are abi changes when i bump lxml versions and tests fail.
lxml == 4.9.4 dosnt have prebuild wheels for >=3.12, and when pip attempts to compile from source, the dependncies are no longer abi-compatible to upstream libs
python_requires=">=3.7, <3.12", | ||
python_requires=">=3.7", |
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.
This seems to be an agreed-upon approach; the challenges are either keeping up to date with issues from newer python versions (and pinning until tested), or relying upon users to report issues with those newer versions.
In the past we staged support for more recent versions in CI, before making a release. With this change it'd be useful to document that certain versions are supported, but to report success and details with other pythons - perhaps similar to how it's great to hear reports from other terminal emulators that work well.
# crashing builds lately | ||
# - name: Check we detect the python environment correctly |
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.
Does the imported code not detect the platform correctly?
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.
Yup 3.12 and 3.13 was freaking out and not building
also it seems that the test suite fails due to typing errors |
What does this PR do, and why?
External discussion & connections
topic
How did you test this?
Self-review checklist for each commit