Bug 277826

Summary: [exp-run]science/py-scipy: Update to 1.12.0
Product: Ports & Packages Reporter: wen <wenheping2000>
Component: Individual Port(s)Assignee: freebsd-python (Nobody) <python>
Status: Open ---    
Severity: Affects Only Me CC: freebsd-2024, sunpoet, vishwin, wen
Priority: --- Flags: antoine: exp-run+
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
Update to 1.12.0 none

Description wen 2024-03-20 03:08:10 UTC
Created attachment 249318 [details]
Update to 1.12.0

- Update to 1.12.0
- Add option for openblas(PR 257400)
- Comment out test things(I don't remove it, hoping it would be back in the future)
- Switch to pep517(https://reviews.freebsd.org/D42144)
- Switch to UNZIP_NATIVE_CMD(https://reviews.freebsd.org/D42144)
Comment 1 Antoine Brodin freebsd_committer freebsd_triage 2024-03-24 08:00:39 UTC
Exp-run looks fine
Comment 2 Yuri Victorovich freebsd_committer freebsd_triage 2024-05-27 00:09:17 UTC
Committed.
Comment 3 commit-hook freebsd_committer freebsd_triage 2024-05-27 00:10:20 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6b7a258af89199f12214268c416d69bae7453b80

commit 6b7a258af89199f12214268c416d69bae7453b80
Author:     wen <wenheping2000@hotmail.com>
AuthorDate: 2024-05-27 00:08:26 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2024-05-27 00:08:26 +0000

    science/py-scipy: update 1.11.1 → 1.12.0

    PR:     277826

 science/py-scipy/Makefile                          | 49 ++++++++++++----------
 science/py-scipy/distinfo                          | 10 ++---
 .../files/patch-scipy_linalg_setup.py (gone)       | 11 -----
 3 files changed, 32 insertions(+), 38 deletions(-)
Comment 4 commit-hook freebsd_committer freebsd_triage 2024-05-27 00:13:22 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2de1b0699d062e31f2272c450ce65fdf50eca92f

commit 2de1b0699d062e31f2272c450ce65fdf50eca92f
Author:     wen <wenheping2000@hotmail.com>
AuthorDate: 2024-05-27 00:12:32 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2024-05-27 00:12:32 +0000

    devel/meson-python: update 0.14.0 → 0.15.0

    PR:     277826

 devel/meson-python/Makefile | 2 +-
 devel/meson-python/distinfo | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)
Comment 5 wen 2024-05-27 00:17:36 UTC
I did not commit this PR because maintainer of meson-python disapprove the update of it.
Comment 6 Yuri Victorovich freebsd_committer freebsd_triage 2024-05-27 00:26:00 UTC
Reverted because Wen said that the maintainer of devel/meson-python didn't approve the patch.

However, this wasn't mobvious from this Bug report because 2 ports were in one patch and there was only a note from Antoine that exp-run is fine.
Comment 7 Charlie Li freebsd_committer freebsd_triage 2024-05-27 02:01:28 UTC
Both devel/meson-python and this need more review due to the amount of changes, particularly the change to PEP-517 and actually getting the test suite to run.
Comment 8 wen 2024-05-27 02:33:17 UTC
(In reply to Charlie Li from comment #7)
Would you list the failure caused by this patch, then we know what to do next.
Comment 9 Charlie Li freebsd_committer freebsd_triage 2024-05-31 19:37:00 UTC
Unless we can verify that scipy usage/output in consumers are giving the correct results, beyond any exp-run (which hardly verifies anything beyond package or bdist wheel building), we need to get the test suite running. The change to meson-python is significantly different enough that warrants more scrutiny here.
Comment 10 Charlie Li freebsd_committer freebsd_triage 2024-05-31 19:59:56 UTC
Note: latest upstream version is now 1.13.1 but that series uses the coming soon numpy 2.0, a major breaking update.
Comment 11 Wen Heping freebsd_committer freebsd_triage 2024-06-10 12:50:16 UTC
Since meson-python had been updated, now this PR could be committed.
If no objection, I shall commit this PR later.
Comment 12 Charlie Li freebsd_committer freebsd_triage 2024-06-10 13:04:28 UTC
I would like to do some further Makefile verification and comparison with my own copy, especially with how conservative upstream is with dependency version specifications. Also still need to runtime test and verify further since the meson-python change is significant enough. Another open source conference immediately after BSDCan doesn't help.
Comment 13 Wen Heping freebsd_committer freebsd_triage 2024-06-10 22:56:18 UTC
result of regression test:

============================================== short test summary info ===============================================
FAILED optimize/tests/test_optimize.py::TestOptimizeWrapperDisp::test_ncg - AssertionError: 18
FAILED optimize/tests/test_optimize.py::TestOptimizeWrapperNoDisp::test_ncg - AssertionError: 18
FAILED optimize/tests/test_optimize.py::TestOptimizeNoWrapperDisp::test_ncg - AssertionError: 18
FAILED optimize/tests/test_optimize.py::TestOptimizeNoWrapperNoDisp::test_ncg - AssertionError: 18
FAILED optimize/tests/test_zeros.py::TestNewton::test_halley_collections - AssertionError:
FAILED signal/tests/test_signaltools.py::TestCorrelateReal::test_method[uint8] - AssertionError:
FAILED signal/tests/test_signaltools.py::TestCorrelateReal::test_method[int8] - AssertionError:
FAILED sparse/tests/test_base.py::TestCOO::test_multiple_ellipsis_slicing - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::TestDIA::test_multiple_ellipsis_slicing - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::TestBSR::test_multiple_ellipsis_slicing - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::TestCOONonCanonical::test_multiple_ellipsis_slicing - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_limit_10[TestBSR-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_limit_10[TestCOO-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_limit_10[TestDIA-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_random[TestBSR-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_random[TestCOO-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_random[TestDIA-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_all_32[TestBSR-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_all_32[TestCOO-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_all_32[TestDIA-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_all_64[TestBSR-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_all_64[TestCOO-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_resiliency_all_64[TestDIA-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_no_64[TestBSR-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_no_64[TestCOO-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
FAILED sparse/tests/test_base.py::Test64Bit::test_no_64[TestDIA-test_multiple_ellipsis_slicing] - Failed: DID NOT WARN. No warnings of type (<class 'DeprecationWarning'>, <class 'PendingDeprecationWarning'>, <cl...
ERROR datasets/tests/test_data.py::TestDatasets::test_existence_all - requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries...
ERROR datasets/tests/test_data.py::TestDatasets::test_ascent - requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries...
ERROR datasets/tests/test_data.py::TestDatasets::test_face - requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries...
ERROR datasets/tests/test_data.py::TestDatasets::test_electrocardiogram - requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries...
= 26 failed, 45077 passed, 2431 skipped, 14022 deselected, 143 xfailed, 13 xpassed, 63 warnings, 4 errors in 400.79s (0:06:40) =
Comment 14 Charlie Li freebsd_committer freebsd_triage 2024-07-12 02:46:06 UTC
Build now broken because devel/py-gast updated to 0.6.0, which is a devel/py-pythran dependency. The current pythran does not support gast 0.6 at all.
Comment 15 Po-Chuan Hsieh freebsd_committer freebsd_triage 2024-07-13 11:49:37 UTC
(In reply to Charlie Li from comment #14)

1. This can avoided by using correct version range in RUN_DEPENDS. Upstream uses "gast~=0.5.0" [1] which is ">=0.5.0<0.6", not ">=0.5.0". If the correct RUN_DEPENDS lines are used, it should be caught before I committing the devel/py-gast 0.6.0 update. IMHO, maintainer is responsible for correct *_DEPENDS. You cannot expect others to dig into the source code.

2. The gast 0.6.0 support [2] was added to the repository 2 weeks ago.

[1] https://github.com/serge-sans-paille/pythran/blob/0.16.1/requirements.txt#L3
[2] https://github.com/serge-sans-paille/pythran/commit/840a0e706ec39963aec6bcd1f118bf33177c20b4
Comment 16 Charlie Li freebsd_committer freebsd_triage 2024-07-13 12:32:52 UTC
(In reply to Po-Chuan Hsieh from comment #15)
While maintainer should be doing their due diligence wrt correct *_DEPENDS version specifiers when present, maintainers of dependencies and consumers still need to do their part in ensuring their surroundings work as intended, which can include digging in source code. Otherwise you will have a situation like this where it takes meson-python, the build system of a second-level consumer, to correctly bail from wrong dependencies (good job, meson-python!). It does not matter how long something has been in the tree, if it's wrong, it's wrong.
Comment 17 Mikhail T. 2024-12-13 00:51:00 UTC
The latest scipy is 1.14.1 (released in August)...