Require enum34 only for Python versions before 3.4 #503
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
enum34 appears to be a potential source of problems when installed in
environments using Python 3.4 or later [0, 1]. Apparently enum34
1.1.8 was able to avoid these issues, but a regression was introduced in
1.1.9 and is still present in the most recent release [2].
This commit loosens the requirement on enum34 so that it is only
installed if Python 3.3 or older is used.
This particular solution requires setuptools v36.2 or newer [3]. If
older versions of setuptools need to be supported, then the requirements
can be put into an extras_require clause [4, 5].
[0]: python-poetry/poetry#1122
[1]: iterative/dvc#1995
[2]: https://web.archive.org/web/20200621215937/https://bitbucket.org/stoneleaf/enum34/issues/31/make-the-install-a-noop-on-python36
[3]: https://setuptools.readthedocs.io/en/latest/history.html#v36-2-0
[4]: robshakir/pyangbind#232 (comment)
[5]: https://gitlab.com/pycqa/flake8/-/merge_requests/191/diffs