Skip to content

🐍 Update Supported Python Versions (add 3.11 ) - #500

Merged
shaneahmed merged 29 commits into
developfrom
dev-upgrade-python
May 5, 2023
Merged

shaneahmed merged 29 commits into
developfrom
dev-upgrade-python

Conversation

@John-P

@John-P John-P commented Oct 28, 2022 •

Copy link
Copy Markdown
Contributor
  • Add 3.11 to the GitHub Actions CI workflow.
  • Add 3.11 to setup.py
  • Update pip install workflow.
  • Update conda requirements python versions.

Waiting on some dependencies to update:

Add 3.11 and drop 3.7 to the GitHub Actions CI workflow.
@John-P John-P changed the title DEV: Update CI Python Versions (+3.11, -3.7) DEV: Update CI Python Versions (add 3.11 & drop 3.7) Oct 28, 2022
@John-P John-P changed the title DEV: Update CI Python Versions (add 3.11 & drop 3.7) DEV: Update Supported Python Versions (add 3.11 & drop 3.7) Oct 28, 2022
@John-P John-P changed the title DEV: Update Supported Python Versions (add 3.11 & drop 3.7) 🐍 DEV: Update Supported Python Versions (add 3.11 & drop 3.7) Oct 28, 2022
@John-P John-P changed the title 🐍 DEV: Update Supported Python Versions (add 3.11 & drop 3.7) 🐍 DEV: Update Supported Python Versions (➕ 3.11 & ➖ 3.7) Oct 28, 2022
@John-P John-P changed the title 🐍 DEV: Update Supported Python Versions (➕ 3.11 & ➖ 3.7) 🐍 DEV: Update Supported Python Versions (➕ 3.11 ) Oct 28, 2022
@John-P John-P changed the title 🐍 DEV: Update Supported Python Versions (➕ 3.11 ) 🐍 DEV: Update Supported Python Versions (add 3.11 ) Oct 28, 2022
@John-P

John-P commented Oct 28, 2022

Copy link
Copy Markdown
Contributor Author

Shapely does not yet support 3.11 (https://pypi.org/project/shapely/)

@shaneahmed

Copy link
Copy Markdown
Member

Shapely does not yet support 3.11 (https://pypi.org/project/shapely/)

Let's keep this PR as draft until we get all the dependencies supporting 3.11

@shaneahmed
shaneahmed marked this pull request as draft October 31, 2022 09:47
@John-P John-P added release dependencies Pull requests that update a dependency file labels Nov 4, 2022
@Erotemic

Erotemic commented Dec 3, 2022

Copy link
Copy Markdown

Shapely does have 311 wheels now. Still waiting on pygeos.

@shaneahmed

Copy link
Copy Markdown
Member

Shapely does have 311 wheels now. Still waiting on pygeos.

Great! I will update this now.

@shaneahmed

Copy link
Copy Markdown
Member

PyTorch does not support Python 3.11 yet

pytorch/pytorch#86566

@Somiona

Somiona commented Mar 16, 2023

Copy link
Copy Markdown

Pytorch launched version 2.0.0 and officially support python3.11 now

@shaneahmed

Copy link
Copy Markdown
Member

Waiting for numba release https://github.com/numba/numba/milestone/63 numba/numba#8304 support

@shaneahmed shaneahmed changed the title 🐍 DEV: Update Supported Python Versions (add 3.11 ) 🐍 Update Supported Python Versions (add 3.11 ) Apr 6, 2023
@shaneahmed shaneahmed added this to the Release v2.0.0 milestone Apr 10, 2023
@shaneahmed
shaneahmed marked this pull request as ready for review May 3, 2023 14:12

@shaneahmed shaneahmed left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@John-P I think it can be released with beta support as torch doesn't fully support 3.11 and Openslide support is not fully complete yet.

@codecov

codecov Bot commented May 3, 2023 •

Copy link
Copy Markdown

Codecov Report

Merging #500 (2be4072) into develop (bb78d2e) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           develop     #500    +/-   ##
=========================================
  Coverage    99.74%   99.74%            
=========================================
  Files           63       63            
  Lines         6744     6744            
  Branches      1107     1342   +235     
=========================================
  Hits          6727     6727            
  Misses           8        8            
  Partials         9        9            

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@shaneahmed
shaneahmed merged commit 591482c into develop May 5, 2023
@shaneahmed
shaneahmed deleted the dev-upgrade-python branch May 5, 2023 10:00
This was referenced May 5, 2023
shaneahmed added a commit that referenced this pull request May 5, 2023
## 1.4.0 (2023-04-24)

### Major Updates and Feature Improvements

- Adds Python 3.11 support \[experimental\] #500
  - Python 3.11 is not fully supported by `pytorch` pytorch/pytorch#86566 and `openslide` openslide/openslide-python#188
- Removes Python 3.7 support
  - This allows upgrading all the dependencies which were dependent on an older version of Python.
- Adds Neighbourhood Querying Support To AnnotationStore #540
  - This enables easy and efficient querying of annotations within a neighbourhood of other annotations.
- Adds `MultiTaskSegmentor` engine #424
- Fixes an issue with stain augmentation to apply augmentation to only tissue regions.
  - #546 contributed by @navidstuv
- Filters logger output to stdout instead of stderr.
  - Fixes #255
- Allows import of some modules at higher level for improved usability
  - `WSIReader` can now be imported as `from tiatoolbox.wsicore import WSIReader`
  - `WSIMeta` can now be imported as `from tiatoolbox.wsicore import WSIMeta`
  - `HoVerNet`, `HoVerNetPlus`, `IDaRS`, `MapDe`, `MicroNet`, `NuClick`, `SCCNN` can now be imported as \`from tiatoolbox.models import HoVerNet, HoVerNetPlus, IDaRS, MapDe, MicroNet, NuClick, SCCNN
- Improves `PatchExtractor` performance. Updates `WSIPatchDataset` to be consistent. #571
- Updates documentation for `License` for clarity on source code and model weights license.

### Changes to API

- Updates SCCNN architecture to make it consistent with other models. #544

### Bug Fixes and Other Changes

- Fixes Parsing Missing Omero Version NGFF Metadata #568
  - Fixes #535 raised by @benkamphaus
- Fixes reading of DICOM WSIs at the correct level #564
  - Fixes #529
- Fixes `scipy`, `matplotlib`, `scikit-image` deprecated code
- Fixes breaking changes in `DICOMWSIReader` to make it compatible with latest `wsidicom` version. #539, #580
- Updates `shapely` dependency to version >=2.0.0 and fixes any breaking changes.
- Fixes bug with `DictionaryStore.bquery` and `geometry=None`, i.e. only a where predicate given.
  - Partly Fixes #532 raised by @blaginin
- Fixes local tests for Windows/Linux
- Fixes `flake8`, `deepsource` errors.
- Uses `logger` instead of `warnings` and `print` statements to properly log runs.

### Development related changes

- Upgrades dependencies which are dependent on Python 3.7
- Moves `requirements*.txt` files to `requirements` folder
- Removes `tox`
- Uses `pyproject.toml` for `bdist_wheel`, `pytest` and `isort`
- Adds `joblib` and `numba` as dependencies.
shaneahmed added a commit that referenced this pull request May 5, 2023
## 1.4.0 (2023-04-24)

### Major Updates and Feature Improvements

- Adds Python 3.11 support \[experimental\] #500
  - Python 3.11 is not fully supported by `pytorch` pytorch/pytorch#86566 and `openslide` openslide/openslide-python#188
- Removes Python 3.7 support
  - This allows upgrading all the dependencies which were dependent on an older version of Python.
- Adds Neighbourhood Querying Support To AnnotationStore #540
  - This enables easy and efficient querying of annotations within a neighbourhood of other annotations.
- Adds `MultiTaskSegmentor` engine #424
- Fixes an issue with stain augmentation to apply augmentation to only tissue regions.
  - #546 contributed by @navidstuv
- Filters logger output to stdout instead of stderr.
  - Fixes #255
- Allows import of some modules at higher level for improved usability
  - `WSIReader` can now be imported as `from tiatoolbox.wsicore import WSIReader`
  - `WSIMeta` can now be imported as `from tiatoolbox.wsicore import WSIMeta`
  - `HoVerNet`, `HoVerNetPlus`, `IDaRS`, `MapDe`, `MicroNet`, `NuClick`, `SCCNN` can now be imported as \`from tiatoolbox.models import HoVerNet, HoVerNetPlus, IDaRS, MapDe, MicroNet, NuClick, SCCNN
- Improves `PatchExtractor` performance. Updates `WSIPatchDataset` to be consistent. #571
- Updates documentation for `License` for clarity on source code and model weights license.

### Changes to API

- Updates SCCNN architecture to make it consistent with other models. #544

### Bug Fixes and Other Changes

- Fixes Parsing Missing Omero Version NGFF Metadata #568
  - Fixes #535 raised by @benkamphaus
- Fixes reading of DICOM WSIs at the correct level #564
  - Fixes #529
- Fixes `scipy`, `matplotlib`, `scikit-image` deprecated code
- Fixes breaking changes in `DICOMWSIReader` to make it compatible with latest `wsidicom` version. #539, #580
- Updates `shapely` dependency to version >=2.0.0 and fixes any breaking changes.
- Fixes bug with `DictionaryStore.bquery` and `geometry=None`, i.e. only a where predicate given.
  - Partly Fixes #532 raised by @blaginin
- Fixes local tests for Windows/Linux
- Fixes `flake8`, `deepsource` errors.
- Uses `logger` instead of `warnings` and `print` statements to properly log runs.

### Development related changes

- Upgrades dependencies which are dependent on Python 3.7
- Moves `requirements*.txt` files to `requirements` folder
- Removes `tox`
- Uses `pyproject.toml` for `bdist_wheel`, `pytest` and `isort`
- Adds `joblib` and `numba` as dependencies.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants