-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[Issue 7050][python] Limit enum34 installation via environment markers #8213
Conversation
To prevent installing enum34 on systems where it is not needed, declare the dependency with environment markers. Installing certain versions of enum34 on systems where it is not needed at all, might result in compile time issues. This is the recommended approach discussed here: python-poetry/poetry#1122
Can't see how the failing test is related to this pull request |
/pulsarbot run-failure-checks |
This enum34 dependency is causing major issues for our projects, and this environment marker would fix that. I see people have been having issues with enum34 for over a year now. Can we not just get rid of it, or at minimum only use it as a dependency when using an old python version? I'm happy to help get this moving in any way possible, as we have already lost many man hours dealing with the fallout. |
@rosejn If you have a better solution than this pull request, feel free to submit one. So the community can take a look at the change and merge it if it solves the problem. |
Is there anything wrong with this PR that would require a different solution? According to @rosejn the marker that I introduced would solve the problem. |
@languitar I don't think so. I wasn't sure what does his comment mean. So I was asking if he is thinking about a different solution than this PR. |
Hi guys, after my team just waisted way too much time battling with this issue I was frustrated and trying to encourage forward motion on this PR, so my comment wasn't very clear. If there was something holding this back I wanted to volunteer to do whatever was needed to help get a fix merged. |
Thanks guys! I'm happy to test this out to double check that things work as hoped for. I've just pulled the latest on master and run the docker-build.sh script in pulsar-client-cpp, where it successfully built. Anyone know how to then try this out as a poetry dependency? |
Fixes #7050 ### Motivation To prevent installing enum34 on systems where it is not needed, declare the dependency with environment markers. Installing certain versions of enum34 on systems where it is not needed at all, might result in compile time issues. This is the recommended approach discussed here: python-poetry/poetry#1122 ### Modifications * `setup.py`: use environment markers for enum34 instead of custom logic that is not preserved in pypi metadata for the wheel (cherry picked from commit edf0944)
Fixes apache#7050 ### Motivation To prevent installing enum34 on systems where it is not needed, declare the dependency with environment markers. Installing certain versions of enum34 on systems where it is not needed at all, might result in compile time issues. This is the recommended approach discussed here: python-poetry/poetry#1122 ### Modifications * `setup.py`: use environment markers for enum34 instead of custom logic that is not preserved in pypi metadata for the wheel
Fixes #7050
Motivation
To prevent installing enum34 on systems where it is not needed, declare the dependency with environment markers. Installing certain versions of enum34 on systems where it is not needed at all, might result in compile time issues. This is the recommended approach discussed here:
python-poetry/poetry#1122
Modifications
setup.py
: use environment markers for enum34 instead of custom logic that is not preserved in pypi metadata for the wheelVerifying this change
This change is already covered by existing tests, such as all python tests
Does this pull request potentially affect one of the following parts:
If
yes
was chosen, please highlight the changesDocumentation