isi-vista / adam

Abduction to Demonstrate an Articulate Machine
MIT License
11 stars 3 forks source link

Travis Python3.7 build broken #1132

Closed spigo900 closed 2 years ago

spigo900 commented 2 years ago

Our Travis CI build for CPython 3.7 has been broken for a few months now. Example. (The PyPy3.7 builds work fine. Example.) Writing this up here as a place to put "things we've learned/eliminated."

spigo900 commented 2 years ago

Yep, looks like it was importlib_metadata! I added it to the upgrade command in 990a8eb35fe365f148817872b155cb848615b814 and it is working again. Apparently the default is really damn old:

  Attempting uninstall: importlib_metadata
    Found existing installation: importlib-metadata 0.18
    Uninstalling importlib-metadata-0.18:
      Successfully uninstalled importlib-metadata-0.18

(MyPy is still unhappy, but that's a separate issue. 🙃)

lichtefeld commented 2 years ago

@spigo900 Maybe we should update the base OS version to something other than Xenial as well :) LTS 16.04.07 is well old...

spigo900 commented 2 years ago

@lichtefeld Sure, that might be worthwhile. It looks like Travis also supports Bionic (18.04) and Focal (20.04) which are newer. Same dist naming scheme, we'd specify bionic or focal.

spigo900 commented 2 years ago

Updated the OS to focal as well.

It looks like the importlib version was because of using an old version of virtualenv:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.

virtualenv 20.0.20 requires importlib-metadata<2,>=0.12; python_version < "3.8", but you have importlib-metadata 4.2.0 which is incompatible.

Fortunately things seem to work okay despite virtualenv's warning.