xcube-dev / xcube

xcube is a Python package for generating and exploiting data cubes powered by xarray, dask, and zarr.
https://xcube.readthedocs.io/
MIT License
201 stars 20 forks source link

Minimum Python version should be 3.9, not 3.8 #920

Closed pont-us closed 9 months ago

pont-us commented 9 months ago

Describe the bug

environment.yml currently specifies the minimum Python version as 3.8. However, xcube is no longer compatible with 3.9. For instance, commit e22e7fbad (2023-02-20) adds an import of functools.cache (only introduced in 3.9) to xcube/server/config.py. There doesn't seem to be any need to keep supporting 3.8, and there have been no complaints about this incompatibility so far, so all we need to do is bump the specifier in environment.yml to enforce and communicate the >=3.9 requirement.

To Reproduce Steps to reproduce the behavior:

  1. Install xcube from source in a Python 3.8 environment.
  2. Run unit test suite.
  3. Test run will already fail at import stage, since xcube is using language features and library imports that aren't available in Python 3.8.

Expected behavior All tests should pass.