single-cell-data / TileDB-SOMA

Python and R SOMA APIs using TileDB’s cloud-native format. Ideal for single-cell data at any scale.
https://tiledbsoma.readthedocs.io
MIT License
90 stars 25 forks source link

[python] Drop support for Python 3.8 #2949

Closed kounelisagis closed 3 weeks ago

kounelisagis commented 1 month ago

Issue and/or context: End of life for python 3.8 is Oct. 2024 https://devguide.python.org/versions/ / [sc-41048]

Changes: 🔥

Notes for Reviewer:

kounelisagis commented 1 month ago

@ryan-williams can you help with this? https://github.com/single-cell-data/TileDB-SOMA/blob/eb5fc8bb70614d2fd9c6c8c6b116bdb787b5f6b8/apis/python/src/tiledbsoma/_types.py#L35-L36

johnkerl commented 1 month ago

This needs internal discussion regarding some legacy UDFs

ryan-williams commented 1 month ago

@ryan-williams can you help with this? https://github.com/single-cell-data/TileDB-SOMA/blob/eb5fc8bb70614d2fd9c6c8c6b116bdb787b5f6b8/apis/python/src/tiledbsoma/_types.py#L35-L36

Ideally, we'll just move to the if TYPE_CHECKING branch here, and remove the else: https://github.com/single-cell-data/TileDB-SOMA/blob/eb5fc8bb70614d2fd9c6c8c6b116bdb787b5f6b8/apis/python/src/tiledbsoma/_types.py#L19-L42

The else branch was just necessary due to type-checking limitations in <3.9.

ryan-williams commented 1 month ago

Just sent https://github.com/kounelisagis/TileDB-SOMA/pull/1 on top of this PR, if you merge that, it should help CI here.

ryan-williams commented 4 weeks ago

One more: https://github.com/kounelisagis/TileDB-SOMA/pull/2 cc @kounelisagis

ryan-williams commented 4 weeks ago

I rebased this, and fixed the Numpy typedefs some more: https://github.com/single-cell-data/TileDB-SOMA/pull/3021

It turns out we still need the whole "if/else" block I thought we could remove above, but the comment warranted an update, which I did.

@kounelisagis you're welcome to incorporate these changes into your branch / this PR, or I'm happy to "take the baton" and move forward with #3021.

(Since #3021 is a branch in this repo, not a fork, other TileDB-SOMA team members can also push to it, and the CI runs automatically)

kounelisagis commented 3 weeks ago

Let's move forward with https://github.com/single-cell-data/TileDB-SOMA/pull/3021