From 450cda78d53d8770e34334d07f5a3b35c49719bc Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 09:38:03 +0100 Subject: [PATCH 01/22] GHA: include reverse dependency testing --- .github/workflows/reverse.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/reverse.yml diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml new file mode 100644 index 000000000..61c1d5930 --- /dev/null +++ b/.github/workflows/reverse.yml @@ -0,0 +1,25 @@ +name: Test reverse dependencies +on: + pull_request: + workflow_dispatch: +jobs: + reverse_dependencies: + name: Reverse dependency testing + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - uses: scientific-python/reverse-dependency-testing@main + with: + package_name: libpysal + ignore: >- + fine + tigernet + cenpy + autoesda + include: mapclassify + install: >- + setuptools-scm + fail_on_failure: false From 68ceef7f8884ae53401eacc3c0c3013fa29e991f Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 10:10:26 +0100 Subject: [PATCH 02/22] try verbose mode --- .github/workflows/reverse.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 61c1d5930..4f5f1ee26 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -11,7 +11,7 @@ jobs: with: fetch-depth: 0 - - uses: scientific-python/reverse-dependency-testing@main + - uses: martinfleis/reverse-dependency-testing@verbose with: package_name: libpysal ignore: >- @@ -23,3 +23,4 @@ jobs: install: >- setuptools-scm fail_on_failure: false + verbose: true From dba64a8a74b671eefd5f664e8e1438d1639f90bc Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 10:41:02 +0100 Subject: [PATCH 03/22] fetch examples --- .github/workflows/reverse.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 4f5f1ee26..828885d0e 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -22,5 +22,7 @@ jobs: include: mapclassify install: >- setuptools-scm + installation_command: >- + pip install .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false verbose: true From 91c86e7ce24be5e3911671c938f887d520c8852d Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 11:09:03 +0100 Subject: [PATCH 04/22] add deps, ignore region, avoid verbose this run --- .github/workflows/reverse.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 828885d0e..a24d775b3 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -19,10 +19,15 @@ jobs: tigernet cenpy autoesda + region include: mapclassify install: >- - setuptools-scm + setuptools-scm + py-opencv + h3-py + hdbscan + pandana installation_command: >- pip install .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false - verbose: true + verbose: false From 783d82c1b8ee0b900854595c988730a4b2079be6 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 11:25:49 +0100 Subject: [PATCH 05/22] pip install opencv --- .github/workflows/reverse.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index a24d775b3..3a8c4ad4e 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -27,6 +27,9 @@ jobs: h3-py hdbscan pandana + install_pip: >- + opencv-contrib-python + KDEpy installation_command: >- pip install .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false From da6b0b45c80c8d42793824c1180f736ec812f933 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 11:52:05 +0100 Subject: [PATCH 06/22] disable parallel execution --- .github/workflows/reverse.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 3a8c4ad4e..13bd28ac8 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -27,6 +27,7 @@ jobs: h3-py hdbscan pandana + astropy install_pip: >- opencv-contrib-python KDEpy @@ -34,3 +35,4 @@ jobs: pip install .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false verbose: false + parallel: false From e7e257006eb49967a159da03892c4fdd9f2e22c7 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 11:52:46 +0100 Subject: [PATCH 07/22] use whitelist to speedup testing --- .github/workflows/reverse.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 13bd28ac8..05ad6c586 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -21,6 +21,10 @@ jobs: autoesda region include: mapclassify + whitelist: >- + esda + spreg + spaghetti install: >- setuptools-scm py-opencv From bf4733dd498e2007dd14b8cce5a2793bfc3b74a7 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 12:08:12 +0100 Subject: [PATCH 08/22] verbose errors --- .github/workflows/reverse.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 05ad6c586..22e758aa6 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -38,5 +38,5 @@ jobs: installation_command: >- pip install .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false - verbose: false + verbose: true parallel: false From ed705582d18a053c65a2f073186630686f0b4d4a Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 12:12:18 +0100 Subject: [PATCH 09/22] test lib inside the container --- .github/workflows/reverse.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 22e758aa6..3df1aa978 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -20,7 +20,9 @@ jobs: cenpy autoesda region - include: mapclassify + include: >- + mapclassify + libpysal whitelist: >- esda spreg From 5315dd2db789ae74f80b4656f99143ec1492dd8a Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 12:42:13 +0100 Subject: [PATCH 10/22] debug examples --- .github/workflows/reverse.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 3df1aa978..7110dfbda 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -34,11 +34,12 @@ jobs: hdbscan pandana astropy + geodatasets install_pip: >- opencv-contrib-python KDEpy installation_command: >- - pip install .; python -c 'import libpysal; libpysal.examples.fetch_all()' + pip install .; python -c 'import libpysal; libpysal.examples.builtin_datasets.keys()' fail_on_failure: false verbose: true parallel: false From dca301e9686c07cc99af402f99ace6a0e45d3197 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 12:46:07 +0100 Subject: [PATCH 11/22] print --- .github/workflows/reverse.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 7110dfbda..73bc54238 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -39,7 +39,7 @@ jobs: opencv-contrib-python KDEpy installation_command: >- - pip install .; python -c 'import libpysal; libpysal.examples.builtin_datasets.keys()' + pip install .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets)' fail_on_failure: false verbose: true parallel: false From 1461034db57515b9d1b4bb8e90c251ab6790aed0 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 12:55:31 +0100 Subject: [PATCH 12/22] more dbug --- .github/workflows/reverse.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 73bc54238..cce49c821 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -25,8 +25,6 @@ jobs: libpysal whitelist: >- esda - spreg - spaghetti install: >- setuptools-scm py-opencv @@ -39,7 +37,7 @@ jobs: opencv-contrib-python KDEpy installation_command: >- - pip install .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets)' + pip install .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets.keys(); print(examples.get_path("columbus.shp")))' fail_on_failure: false verbose: true parallel: false From 5c589d98e0e10a78c2d3dbf6d8c59fc9a66789c0 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 12:59:28 +0100 Subject: [PATCH 13/22] fix syntax --- .github/workflows/reverse.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index cce49c821..7b4f09a25 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -37,7 +37,7 @@ jobs: opencv-contrib-python KDEpy installation_command: >- - pip install .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets.keys(); print(examples.get_path("columbus.shp")))' + pip install .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets.keys()); print(examples.get_path("columbus.shp"))' fail_on_failure: false verbose: true parallel: false From 0197c65679fbbf35df11e56f2cf2c75ef9effaa1 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 13:04:16 +0100 Subject: [PATCH 14/22] name error --- .github/workflows/reverse.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 7b4f09a25..21ce96ea1 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -37,7 +37,7 @@ jobs: opencv-contrib-python KDEpy installation_command: >- - pip install .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets.keys()); print(examples.get_path("columbus.shp"))' + pip install .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets.keys()); print(libpysal.examples.get_path("columbus.shp"))' fail_on_failure: false verbose: true parallel: false From 2a4e9ee20f952a55ab3cca2b51b0fdd3a1074acc Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 13:27:09 +0100 Subject: [PATCH 15/22] try editable install --- .github/workflows/reverse.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 21ce96ea1..bf1c02ce5 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -37,7 +37,7 @@ jobs: opencv-contrib-python KDEpy installation_command: >- - pip install .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets.keys()); print(libpysal.examples.get_path("columbus.shp"))' + pip install -e .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets.keys()); print(libpysal.examples.get_path("columbus.shp"))' fail_on_failure: false verbose: true parallel: false From f22b26b30886ed5222e4c908f858519b75eefab2 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 13:33:10 +0100 Subject: [PATCH 16/22] test all --- .github/workflows/reverse.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index bf1c02ce5..c7283585f 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -22,9 +22,6 @@ jobs: region include: >- mapclassify - libpysal - whitelist: >- - esda install: >- setuptools-scm py-opencv @@ -37,7 +34,7 @@ jobs: opencv-contrib-python KDEpy installation_command: >- - pip install -e .; python -c 'import libpysal; print(libpysal.examples.builtin_datasets.keys()); print(libpysal.examples.get_path("columbus.shp"))' + pip install -e .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false - verbose: true - parallel: false + verbose: false + parallel: true From c7c8f5f0416877c989a4f6e1ffe76994d14c0477 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 14:13:52 +0100 Subject: [PATCH 17/22] verbose again --- .github/workflows/reverse.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index c7283585f..b52252fba 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -20,6 +20,8 @@ jobs: cenpy autoesda region + greedy + pysal include: >- mapclassify install: >- @@ -36,5 +38,5 @@ jobs: installation_command: >- pip install -e .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false - verbose: false + verbose: true parallel: true From 08dad19dd389cfdc051180e8ad8f8aa0a11df151 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Fri, 10 Nov 2023 14:58:58 +0100 Subject: [PATCH 18/22] it works! --- .github/workflows/reverse.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index b52252fba..5618ea06d 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -22,6 +22,7 @@ jobs: region greedy pysal + mesa-geo include: >- mapclassify install: >- @@ -32,6 +33,8 @@ jobs: pandana astropy geodatasets + bokeh + pulp install_pip: >- opencv-contrib-python KDEpy From aafc45787b4550339c700d742de0f364c2891379 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Wed, 24 Jan 2024 11:17:21 +0100 Subject: [PATCH 19/22] test non-parallel --- .github/workflows/reverse.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 5618ea06d..d0df45ba2 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -42,4 +42,4 @@ jobs: pip install -e .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false verbose: true - parallel: true + parallel: false From c0b70c0e471e35dc2762f56e266ac5575f3ff7bb Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Wed, 24 Jan 2024 11:41:42 +0100 Subject: [PATCH 20/22] test verbosity control --- .github/workflows/reverse.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index d0df45ba2..c72f385f3 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -41,5 +41,5 @@ jobs: installation_command: >- pip install -e .; python -c 'import libpysal; libpysal.examples.fetch_all()' fail_on_failure: false - verbose: true - parallel: false + verbose: false + parallel: true From bea4323a39c83e523c790657c891e1b0887aea09 Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Wed, 24 Jan 2024 11:51:01 +0100 Subject: [PATCH 21/22] point to scientific-python repo --- .github/workflows/reverse.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index c72f385f3..8aae29f7e 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -11,7 +11,7 @@ jobs: with: fetch-depth: 0 - - uses: martinfleis/reverse-dependency-testing@verbose + - uses: scientific-python/reverse-dependency-testing@main with: package_name: libpysal ignore: >- From 9f3b41279428ffb1eff2a03369c2b79a738991da Mon Sep 17 00:00:00 2001 From: Martin Fleischmann Date: Wed, 24 Jan 2024 23:20:32 +0100 Subject: [PATCH 22/22] triggers, verbosity and fail on failure --- .github/workflows/reverse.yml | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/.github/workflows/reverse.yml b/.github/workflows/reverse.yml index 8aae29f7e..b80f4b2dd 100644 --- a/.github/workflows/reverse.yml +++ b/.github/workflows/reverse.yml @@ -1,7 +1,16 @@ name: Test reverse dependencies on: - pull_request: + push: + branches: [main] + schedule: + - cron: "0 0 * * 1,4" workflow_dispatch: + inputs: + version: + description: Manual reverse dependency testing + default: test + required: false + jobs: reverse_dependencies: name: Reverse dependency testing @@ -11,7 +20,7 @@ jobs: with: fetch-depth: 0 - - uses: scientific-python/reverse-dependency-testing@main + - uses: scientific-python/reverse-dependency-testing-action@main with: package_name: libpysal ignore: >- @@ -40,6 +49,6 @@ jobs: KDEpy installation_command: >- pip install -e .; python -c 'import libpysal; libpysal.examples.fetch_all()' - fail_on_failure: false - verbose: false + fail_on_failure: true + verbose: true parallel: true