confluentinc / confluent-docker-utils

Common Python utils for testing Confluent's Docker images
Apache License 2.0
3 stars 3 forks source link

Pin pyrsistent bellow 0.17.0 #24

Closed andrewegel closed 4 years ago

andrewegel commented 4 years ago

Confluent Docker Images are failing to build:

17:01:52  ==================================== ERRORS ====================================
17:01:52  ___________________ ERROR collecting test/test_base_image.py ___________________
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/_pytest/python.py:507: in _importtestmodule
17:01:52      mod = self.fspath.pyimport(ensuresyspath=importmode)
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/py/_path/local.py:704: in pyimport
17:01:52      __import__(modname)
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/_pytest/assertion/rewrite.py:304: in load_module
17:01:52      exec(co, mod.__dict__)
17:01:52  test/test_base_image.py:4: in <module>
17:01:52      import confluent.docker_utils as utils
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/confluent/docker_utils/__init__.py:7: in <module>
17:01:52      from compose.config.config import ConfigDetails, ConfigFile, load
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/compose/config/__init__.py:6: in <module>
17:01:52      from .config import ConfigurationError
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/compose/config/config.py:51: in <module>
17:01:52      from .validation import match_named_volumes
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/compose/config/validation.py:12: in <module>
17:01:52      from jsonschema import Draft4Validator
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/jsonschema/__init__.py:21: in <module>
17:01:52      from jsonschema._types import TypeChecker
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/jsonschema/_types.py:3: in <module>
17:01:52      from pyrsistent import pmap
17:01:52  /var/tmp/confluent/lib/python2.7/site-packages/pyrsistent/__init__.py:3: in <module>
17:01:52      from pyrsistent._pmap import pmap, m, PMap
17:01:52  E     File "/var/tmp/confluent/lib/python2.7/site-packages/pyrsistent/_pmap.py", line 98
17:01:52  E       ) from e
17:01:52  E            ^
17:01:52  E   SyntaxError: invalid syntax

Due to https://github.com/tobgu/pyrsistent/pull/206 - If the maintainers yank the 0.17.0 release & add a python_requires & re-publish, then we won't have to take an action, otherwise this will be required.

andrewegel commented 4 years ago

We're somewhat fixed now that they've yanked all the 0.17.* releases: https://pypi.org/project/pyrsistent/#history

But I'm keeping this around if it pops up again.

andrewegel commented 4 years ago

Actually looking at the 5.4.x common-docker logs:

02:08:45  [INFO] Collecting pyrsistent>=0.14.0
02:08:45  [INFO]   Downloading pyrsistent-0.17.1.tar.gz (106 kB)
02:08:45  [INFO] ERROR: Package 'pyrsistent' requires a different Python: 2.7.9 not in '>=3.5'

This is needed now.