Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relax requirements for scipy #578

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Conversation

stweil
Copy link
Contributor

@stweil stweil commented Mar 15, 2024

Python 3.8 only supports scipy 1.10, but newer Python versions like 3.11 also work fine with scipy 1.11.

Python 3.8 only supports scipy 1.10, but newer Python versions like 3.11
also work fine with scipy 1.11.

Signed-off-by: Stefan Weil <[email protected]>
@stweil
Copy link
Contributor Author

stweil commented Mar 15, 2024

Maybe we could even relax the requirements further. Meanwhile there exists scipy 1.12.0, and I could run the tests with that newer release:

$ pytest -k 'not test_train'
================================================================================== test session starts ===================================================================================
platform linux -- Python 3.11.2, pytest-8.1.1, pluggy-1.4.0
rootdir: /home/kraken
configfile: pytest.ini
testpaths: tests
collected 188 items / 14 deselected / 174 selected                                                                                                                                       

tests/test_align.py .                                                                                                                                                              [  0%]
tests/test_arrow_dataset.py ....                                                                                                                                                   [  2%]
tests/test_binarization.py .....                                                                                                                                                   [  5%]
tests/test_cli.py ....                                                                                                                                                             [  8%]
tests/test_codec.py ..............................                                                                                                                                 [ 25%]
tests/test_dataset.py ............                                                                                                                                                 [ 32%]
tests/test_layers.py .............................                                                                                                                                 [ 48%]
tests/test_lineest.py ....                                                                                                                                                         [ 51%]
tests/test_merging.py .......                                                                                                                                                      [ 55%]
tests/test_models.py .                                                                                                                                                             [ 55%]
tests/test_pageseg.py ..                                                                                                                                                           [ 56%]
tests/test_readingorder.py ......x...x....                                                                                                                                         [ 65%]
tests/test_repo.py ...                                                                                                                                                             [ 67%]
tests/test_rpred.py ......................x..      
tests/test_serialization.py .................                                                                                                                                      [ 91%]
tests/test_transcribe.py .                                                                                                                                                         [ 91%]
tests/test_vgsl.py ...s.....                                                                                                                                                       [ 97%]
tests/test_xml.py .....                                                                                                                                                            [100%]

========================================================== 170 passed, 1 skipped, 14 deselected, 3 xfailed in 237.04s (0:03:57) ==========================================================

@@ -47,7 +47,7 @@ install_requires =
numpy~=1.23.0
Pillow>=9.2.0
regex
scipy~=1.10.0 # bump up to latest release with py3.8 EOL
scipy>1.10.0,<1.12.0 # remove 1.10 with py3.8 EOL
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Suggested change
scipy>1.10.0,<1.12.0 # remove 1.10 with py3.8 EOL
scipy>1.10.0,<1.12.99 # remove 1.10 with py3.8 EOL

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Optionally the latest release scipy 1.12.0 can also be allowed.

@mittagessen
Copy link
Owner

Do you need that relaxation for some specific reason? I've basically arrived at the point where all the dependencies are pinned as anything looser tends to break sooner or later. Especially libraries depending on scipy like scikit-image do not define their working versions correctly so I'd rather remain at an ensemble of releases that I know won't cause any trouble.

@stweil
Copy link
Contributor Author

stweil commented Mar 16, 2024

I prepared the pull request because we got a report from someone who had the issue described in #525.

But currently I see no urgent need for a relaxation: both OCR-D and eScriptorium don't require it.

So it's fine for me to wait with this pull request until it is really needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants