2025-09-08T03:54:24,877 Created temporary directory: /tmp/pip-build-tracker-3x28d8u3 2025-09-08T03:54:24,878 Initialized build tracking at /tmp/pip-build-tracker-3x28d8u3 2025-09-08T03:54:24,878 Created build tracker: /tmp/pip-build-tracker-3x28d8u3 2025-09-08T03:54:24,878 Entered build tracker: /tmp/pip-build-tracker-3x28d8u3 2025-09-08T03:54:24,879 Created temporary directory: /tmp/pip-wheel-799ga5ef 2025-09-08T03:54:24,882 Created temporary directory: /tmp/pip-ephem-wheel-cache-ifdriot7 2025-09-08T03:54:24,939 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-08T03:54:24,942 2 location(s) to search for versions of agglomcluster: 2025-09-08T03:54:24,942 * https://pypi.org/simple/agglomcluster/ 2025-09-08T03:54:24,942 * https://www.piwheels.org/simple/agglomcluster/ 2025-09-08T03:54:24,942 Fetching project page and analyzing links: https://pypi.org/simple/agglomcluster/ 2025-09-08T03:54:24,943 Getting page https://pypi.org/simple/agglomcluster/ 2025-09-08T03:54:24,944 Found index url https://pypi.org/simple/ 2025-09-08T03:54:25,013 Fetched page https://pypi.org/simple/agglomcluster/ as application/vnd.pypi.simple.v1+json 2025-09-08T03:54:25,015 Found link https://files.pythonhosted.org/packages/36/ae/6e4d36264dbf7f6d8197f862a1214db74424dfcb60344cbf659606eefc3e/AgglomCluster-1.0.0.zip (from https://pypi.org/simple/agglomcluster/), version: 1.0.0 2025-09-08T03:54:25,016 Found link https://files.pythonhosted.org/packages/77/36/1ae98d1ac26403cf7986fa5d6748fa2832985b112561ba6cfccff8469bc1/AgglomCluster-1.0.1.zip (from https://pypi.org/simple/agglomcluster/), version: 1.0.1 2025-09-08T03:54:25,016 Found link https://files.pythonhosted.org/packages/e0/7c/c47754f8075537d3995ec33ffab3a41a74edb07a31ad3812b687b5aa4a3d/AgglomCluster-1.0.2.zip (from https://pypi.org/simple/agglomcluster/), version: 1.0.2 2025-09-08T03:54:25,016 Found link https://files.pythonhosted.org/packages/5a/53/16117e2aaa9e2d36d2c854570b1e96e7298fc9197944cafb52bde583d43b/AgglomCluster-1.0.3.zip (from https://pypi.org/simple/agglomcluster/), version: 1.0.3 2025-09-08T03:54:25,016 Found link https://files.pythonhosted.org/packages/9d/e3/ae7caa679ee1e601112e2b34c3b351c20f7faee50e819c22a879b1101135/AgglomCluster-2.0.0-pre.zip (from https://pypi.org/simple/agglomcluster/), version: 2.0.0-pre 2025-09-08T03:54:25,016 Found link https://files.pythonhosted.org/packages/19/41/606dadf95fb546068c1619a005fe74f394b7b18934b45a6fc4a27ba0fcd4/AgglomCluster-2.0.0-pre-1.zip (from https://pypi.org/simple/agglomcluster/), version: 2.0.0-pre-1 2025-09-08T03:54:25,017 Found link https://files.pythonhosted.org/packages/72/ae/4c3a26bf6d4b93cdf64ffc3cc6ba88c097946bb2b058deda25aa0a1862e9/AgglomCluster-2.0.0.zip (from https://pypi.org/simple/agglomcluster/), version: 2.0.0 2025-09-08T03:54:25,017 Found link https://files.pythonhosted.org/packages/ce/07/24d87d609123f98914b537e83767bfc13a6e62ef670619dca986f1041f77/AgglomCluster-2.0.1.tar.gz (from https://pypi.org/simple/agglomcluster/), version: 2.0.1 2025-09-08T03:54:25,017 Found link https://files.pythonhosted.org/packages/3b/58/2a34e875f8a0da41d46162195e3bf976b90f085fab4ed4f73fd56eb57b93/AgglomCluster-2.0.2.tar.gz (from https://pypi.org/simple/agglomcluster/), version: 2.0.2 2025-09-08T03:54:25,017 Found link https://files.pythonhosted.org/packages/83/db/0a464d59581f04c291ea75afbf5885373893441694ff307545abdeed23ad/AgglomCluster-2.0.4.tar.gz (from https://pypi.org/simple/agglomcluster/), version: 2.0.4 2025-09-08T03:54:25,018 Found link https://files.pythonhosted.org/packages/71/eb/b64fd4ebb4d0087c78536ea48bc79d9f439a567b434ad15252a1233b853c/AgglomCluster-2.0.5.tar.gz (from https://pypi.org/simple/agglomcluster/), version: 2.0.5 2025-09-08T03:54:25,018 Found link https://files.pythonhosted.org/packages/c6/4d/90a40ffb0100df079c949d2fb5db02b7cec7e139bb948a0620d37366d84d/AgglomCluster-2.0.6.tar.gz (from https://pypi.org/simple/agglomcluster/), version: 2.0.6 2025-09-08T03:54:25,018 Found link https://files.pythonhosted.org/packages/40/5a/6675d8094915a2f22b53d2e57f2f58f753c7fa91ad813e05e4209a02dee5/AgglomCluster-2.0.7.tar.gz (from https://pypi.org/simple/agglomcluster/), version: 2.0.7 2025-09-08T03:54:25,018 Fetching project page and analyzing links: https://www.piwheels.org/simple/agglomcluster/ 2025-09-08T03:54:25,019 Getting page https://www.piwheels.org/simple/agglomcluster/ 2025-09-08T03:54:25,020 Found index url https://www.piwheels.org/simple/ 2025-09-08T03:54:25,116 Fetched page https://www.piwheels.org/simple/agglomcluster/ as text/html 2025-09-08T03:54:25,121 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.2-cp34-cp34m-linux_armv7l.whl#sha256=729b68174a4d42ed2e814b7c185e508d7abc24228a5ce2fd9957e96622e8d8e4 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,121 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.2-cp34-cp34m-linux_armv6l.whl#sha256=729b68174a4d42ed2e814b7c185e508d7abc24228a5ce2fd9957e96622e8d8e4 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,121 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.2-cp35-cp35m-linux_armv7l.whl#sha256=3790807e90ff6a6ef3428ca43229f19060f60a9f97adb98a3eec01eaeaa5f366 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,122 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.2-cp35-cp35m-linux_armv6l.whl#sha256=3790807e90ff6a6ef3428ca43229f19060f60a9f97adb98a3eec01eaeaa5f366 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,122 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.1-cp35-cp35m-linux_armv7l.whl#sha256=1bd72bc9d04e1e327538c53e73c205c702255dc279742de9fb77895610726690 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,122 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.1-cp35-cp35m-linux_armv6l.whl#sha256=1bd72bc9d04e1e327538c53e73c205c702255dc279742de9fb77895610726690 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,122 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.1-cp34-cp34m-linux_armv7l.whl#sha256=75d19d3f04ba2d553c624f6fbd14a7956d8a0e50b8456003d1548ea1433f08aa (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,122 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.1-cp34-cp34m-linux_armv6l.whl#sha256=75d19d3f04ba2d553c624f6fbd14a7956d8a0e50b8456003d1548ea1433f08aa (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,122 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.0-cp35-cp35m-linux_armv7l.whl#sha256=d7610b0e1b82d7740296903c01f3a9bcc5d796731b616ab112e69444ed54c1f6 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,123 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.0-cp35-cp35m-linux_armv6l.whl#sha256=d7610b0e1b82d7740296903c01f3a9bcc5d796731b616ab112e69444ed54c1f6 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,123 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.0-cp34-cp34m-linux_armv6l.whl#sha256=85b197cc28d39cee7e08eaf63bcadea48e8d1cc0f2a56209daa6b51bc564500b (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,123 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.0-cp34-cp34m-linux_armv7l.whl#sha256=85b197cc28d39cee7e08eaf63bcadea48e8d1cc0f2a56209daa6b51bc564500b (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,123 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.0rc1-cp34-cp34m-linux_armv7l.whl#sha256=2697dd1f3f7dfd1e64c65845f0c7c361ab01a88090cda1cc8b3f8aa84cada945 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,123 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.0rc1-cp34-cp34m-linux_armv6l.whl#sha256=2697dd1f3f7dfd1e64c65845f0c7c361ab01a88090cda1cc8b3f8aa84cada945 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,123 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.0rc1-cp35-cp35m-linux_armv7l.whl#sha256=628aadc51462a268ec02fdc8b766bf3b9f9a5ed6cc607228dcafb722d86c9fec (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,123 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-2.0.0rc1-cp35-cp35m-linux_armv6l.whl#sha256=628aadc51462a268ec02fdc8b766bf3b9f9a5ed6cc607228dcafb722d86c9fec (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,124 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-1.0.3-py3-none-any.whl#sha256=24ae349b165355d13a5dedf6fdd83481ffe8fd889f200bfbd5a25312b544d616 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,124 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-1.0.2-py3-none-any.whl#sha256=ae5b4457c8c61b2dc0ca38690698dc563187a5e82b9a2bc7818537a59a373559 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,124 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-1.0.1-py3-none-any.whl#sha256=8e659b5b152316074afe0eaf9f12ff45d4cb054523028237a1c44e4b5a4e959e (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,124 Skipping link: No binaries permitted for agglomcluster: https://archive1.piwheels.org/simple/agglomcluster/AgglomCluster-1.0.0-py3-none-any.whl#sha256=e8318e7f95d767866bc63d30023ada833cf97c37b99a8d2844732a8d0dd4ba70 (from https://www.piwheels.org/simple/agglomcluster/) 2025-09-08T03:54:25,124 Skipping link: not a file: https://www.piwheels.org/simple/agglomcluster/ 2025-09-08T03:54:25,124 Skipping link: not a file: https://pypi.org/simple/agglomcluster/ 2025-09-08T03:54:25,151 Given no hashes to check 1 links for project 'agglomcluster': discarding no candidates 2025-09-08T03:54:25,152 Collecting agglomcluster==2.0.0 2025-09-08T03:54:25,153 Created temporary directory: /tmp/pip-unpack-ujp52n0u 2025-09-08T03:54:25,293 Downloading AgglomCluster-2.0.0.zip (162 kB) 2025-09-08T03:54:25,343 Added agglomcluster==2.0.0 from https://files.pythonhosted.org/packages/72/ae/4c3a26bf6d4b93cdf64ffc3cc6ba88c097946bb2b058deda25aa0a1862e9/AgglomCluster-2.0.0.zip to build tracker '/tmp/pip-build-tracker-3x28d8u3' 2025-09-08T03:54:25,344 Running setup.py (path:/tmp/pip-wheel-799ga5ef/agglomcluster_459eaea1a3344dfd9ed880cdea7cf1d1/setup.py) egg_info for package agglomcluster 2025-09-08T03:54:25,345 Created temporary directory: /tmp/pip-pip-egg-info-esdoqah_ 2025-09-08T03:54:25,345 Preparing metadata (setup.py): started 2025-09-08T03:54:25,346 Running command python setup.py egg_info 2025-09-08T03:54:26,154 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead. 2025-09-08T03:54:26,154 !! 2025-09-08T03:54:26,155 ******************************************************************************** 2025-09-08T03:54:26,155 Usage of dash-separated 'description-file' will not be supported in future 2025-09-08T03:54:26,155 versions. Please use the underscore name 'description_file' instead. 2025-09-08T03:54:26,155 By 2026-Mar-03, you need to update your project and remove deprecated calls 2025-09-08T03:54:26,155 or your builds will no longer be supported. 2025-09-08T03:54:26,155 See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. 2025-09-08T03:54:26,155 ******************************************************************************** 2025-09-08T03:54:26,156 !! 2025-09-08T03:54:26,156 opt = self._enforce_underscore(opt, section) 2025-09-08T03:54:26,230 /usr/local/lib/python3.13/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite' 2025-09-08T03:54:26,230 warnings.warn(msg) 2025-09-08T03:54:26,430 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead. 2025-09-08T03:54:26,430 !! 2025-09-08T03:54:26,431 ******************************************************************************** 2025-09-08T03:54:26,431 Usage of dash-separated 'description-file' will not be supported in future 2025-09-08T03:54:26,431 versions. Please use the underscore name 'description_file' instead. 2025-09-08T03:54:26,431 (Affected: AgglomCluster). 2025-09-08T03:54:26,431 By 2026-Mar-03, you need to update your project and remove deprecated calls 2025-09-08T03:54:26,431 or your builds will no longer be supported. 2025-09-08T03:54:26,431 See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. 2025-09-08T03:54:26,431 ******************************************************************************** 2025-09-08T03:54:26,432 !! 2025-09-08T03:54:26,432 opt = self._enforce_underscore(opt, section) 2025-09-08T03:54:26,432 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2025-09-08T03:54:26,432 !! 2025-09-08T03:54:26,432 ******************************************************************************** 2025-09-08T03:54:26,432 Please consider removing the following classifiers in favor of a SPDX license expression: 2025-09-08T03:54:26,432 License :: OSI Approved :: GNU Lesser General Public License v2 (LGPLv2) 2025-09-08T03:54:26,433 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2025-09-08T03:54:26,433 ******************************************************************************** 2025-09-08T03:54:26,433 !! 2025-09-08T03:54:26,433 self._finalize_license_expression() 2025-09-08T03:54:26,505 running egg_info 2025-09-08T03:54:26,578 creating /tmp/pip-pip-egg-info-esdoqah_/AgglomCluster.egg-info 2025-09-08T03:54:26,578 writing /tmp/pip-pip-egg-info-esdoqah_/AgglomCluster.egg-info/PKG-INFO 2025-09-08T03:54:26,580 writing dependency_links to /tmp/pip-pip-egg-info-esdoqah_/AgglomCluster.egg-info/dependency_links.txt 2025-09-08T03:54:26,580 writing requirements to /tmp/pip-pip-egg-info-esdoqah_/AgglomCluster.egg-info/requires.txt 2025-09-08T03:54:26,580 writing top-level names to /tmp/pip-pip-egg-info-esdoqah_/AgglomCluster.egg-info/top_level.txt 2025-09-08T03:54:26,581 writing manifest file '/tmp/pip-pip-egg-info-esdoqah_/AgglomCluster.egg-info/SOURCES.txt' 2025-09-08T03:54:26,807 reading manifest file '/tmp/pip-pip-egg-info-esdoqah_/AgglomCluster.egg-info/SOURCES.txt' 2025-09-08T03:54:26,807 reading manifest template 'MANIFEST.in' 2025-09-08T03:54:26,808 warning: no previously-included files found matching 'tests' 2025-09-08T03:54:26,809 adding license file 'LICENSE' 2025-09-08T03:54:26,811 writing manifest file '/tmp/pip-pip-egg-info-esdoqah_/AgglomCluster.egg-info/SOURCES.txt' 2025-09-08T03:54:26,927 Preparing metadata (setup.py): finished with status 'done' 2025-09-08T03:54:26,932 Source in /tmp/pip-wheel-799ga5ef/agglomcluster_459eaea1a3344dfd9ed880cdea7cf1d1 has version 2.0.0, which satisfies requirement agglomcluster==2.0.0 from https://files.pythonhosted.org/packages/72/ae/4c3a26bf6d4b93cdf64ffc3cc6ba88c097946bb2b058deda25aa0a1862e9/AgglomCluster-2.0.0.zip 2025-09-08T03:54:26,932 Removed agglomcluster==2.0.0 from https://files.pythonhosted.org/packages/72/ae/4c3a26bf6d4b93cdf64ffc3cc6ba88c097946bb2b058deda25aa0a1862e9/AgglomCluster-2.0.0.zip from build tracker '/tmp/pip-build-tracker-3x28d8u3' 2025-09-08T03:54:26,937 Created temporary directory: /tmp/pip-unpack-weos0c9y 2025-09-08T03:54:26,937 Created temporary directory: /tmp/pip-unpack-037osviz 2025-09-08T03:54:26,937 Building wheels for collected packages: agglomcluster 2025-09-08T03:54:26,939 Created temporary directory: /tmp/pip-wheel-gbyhnuhq 2025-09-08T03:54:26,939 DEPRECATION: Building 'agglomcluster' using the legacy setup.py bdist_wheel mechanism, which will be removed in a future version. pip 25.3 will enforce this behaviour change. A possible replacement is to use the standardized build interface by setting the `--use-pep517` option, (possibly combined with `--no-build-isolation`), or adding a `pyproject.toml` file to the source tree of 'agglomcluster'. Discussion can be found at https://github.com/pypa/pip/issues/6334 2025-09-08T03:54:26,940 Building wheel for agglomcluster (setup.py): started 2025-09-08T03:54:26,941 Destination directory: /tmp/pip-wheel-gbyhnuhq 2025-09-08T03:54:26,941 Running command python setup.py bdist_wheel 2025-09-08T03:54:27,737 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead. 2025-09-08T03:54:27,737 !! 2025-09-08T03:54:27,737 ******************************************************************************** 2025-09-08T03:54:27,738 Usage of dash-separated 'description-file' will not be supported in future 2025-09-08T03:54:27,738 versions. Please use the underscore name 'description_file' instead. 2025-09-08T03:54:27,738 By 2026-Mar-03, you need to update your project and remove deprecated calls 2025-09-08T03:54:27,738 or your builds will no longer be supported. 2025-09-08T03:54:27,738 See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. 2025-09-08T03:54:27,738 ******************************************************************************** 2025-09-08T03:54:27,738 !! 2025-09-08T03:54:27,738 opt = self._enforce_underscore(opt, section) 2025-09-08T03:54:27,815 /usr/local/lib/python3.13/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite' 2025-09-08T03:54:27,816 warnings.warn(msg) 2025-09-08T03:54:28,024 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead. 2025-09-08T03:54:28,024 !! 2025-09-08T03:54:28,024 ******************************************************************************** 2025-09-08T03:54:28,024 Usage of dash-separated 'description-file' will not be supported in future 2025-09-08T03:54:28,024 versions. Please use the underscore name 'description_file' instead. 2025-09-08T03:54:28,024 (Affected: AgglomCluster). 2025-09-08T03:54:28,025 By 2026-Mar-03, you need to update your project and remove deprecated calls 2025-09-08T03:54:28,025 or your builds will no longer be supported. 2025-09-08T03:54:28,025 See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. 2025-09-08T03:54:28,025 ******************************************************************************** 2025-09-08T03:54:28,025 !! 2025-09-08T03:54:28,025 opt = self._enforce_underscore(opt, section) 2025-09-08T03:54:28,025 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2025-09-08T03:54:28,025 !! 2025-09-08T03:54:28,026 ******************************************************************************** 2025-09-08T03:54:28,026 Please consider removing the following classifiers in favor of a SPDX license expression: 2025-09-08T03:54:28,026 License :: OSI Approved :: GNU Lesser General Public License v2 (LGPLv2) 2025-09-08T03:54:28,026 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2025-09-08T03:54:28,026 ******************************************************************************** 2025-09-08T03:54:28,026 !! 2025-09-08T03:54:28,026 self._finalize_license_expression() 2025-09-08T03:54:28,027 running bdist_wheel 2025-09-08T03:54:28,326 running build 2025-09-08T03:54:28,326 running build_py 2025-09-08T03:54:28,405 creating build/lib.linux-armv7l-cpython-313/hac 2025-09-08T03:54:28,406 copying hac/__init__.py -> build/lib.linux-armv7l-cpython-313/hac 2025-09-08T03:54:28,410 copying hac/cluster.pyx -> build/lib.linux-armv7l-cpython-313/hac 2025-09-08T03:54:28,411 copying hac/cluster.pyd -> build/lib.linux-armv7l-cpython-313/hac 2025-09-08T03:54:28,412 running build_ext 2025-09-08T03:54:28,766 building 'hac.cluster' extension 2025-09-08T03:54:28,767 creating build/temp.linux-armv7l-cpython-313/hac 2025-09-08T03:54:28,767 arm-linux-gnueabihf-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -I/usr/include/python3.13 -c hac/cluster.c -o build/temp.linux-armv7l-cpython-313/hac/cluster.o -O3 -g0 2025-09-08T03:54:29,108 hac/cluster.c: In function ‘__Pyx_PyList_Append’: 2025-09-08T03:54:29,108 hac/cluster.c:703:23: error: lvalue required as left operand of assignment 2025-09-08T03:54:29,108 703 | Py_SIZE(list) = len+1; 2025-09-08T03:54:29,108 | ^ 2025-09-08T03:54:29,112 hac/cluster.c: In function ‘__Pyx_ListComp_Append’: 2025-09-08T03:54:29,112 hac/cluster.c:880:23: error: lvalue required as left operand of assignment 2025-09-08T03:54:29,112 880 | Py_SIZE(list) = len+1; 2025-09-08T03:54:29,112 | ^ 2025-09-08T03:54:29,439 hac/cluster.c: In function ‘__pyx_tp_dealloc_3hac_7cluster_GreedyAgglomerativeClusterer’: 2025-09-08T03:54:29,451 hac/cluster.c:10217:45: error: implicit declaration of function ‘_PyGC_FINALIZED’ [-Wimplicit-function-declaration] 2025-09-08T03:54:29,451 10217 | if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) { 2025-09-08T03:54:29,451 | ^~~~~~~~~~~~~~~ 2025-09-08T03:54:29,471 hac/cluster.c: In function ‘__Pyx_InitCachedConstants’: 2025-09-08T03:54:29,484 hac/cluster.c:11075:3: warning: ‘PyCode_New’ is deprecated [-Wdeprecated-declarations] 2025-09-08T03:54:29,484 11075 | __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__10, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_plt, 11, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,484 | ^~~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,485 In file included from /usr/include/python3.13/Python.h:101, 2025-09-08T03:54:29,485 from hac/cluster.c:12: 2025-09-08T03:54:29,485 /usr/include/python3.13/cpython/code.h:213:1: note: declared here 2025-09-08T03:54:29,485 213 | PyCode_New( 2025-09-08T03:54:29,485 | ^~~~~~~~~~ 2025-09-08T03:54:29,499 hac/cluster.c:11075:262: error: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T03:54:29,499 11075 | __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__10, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_plt, 11, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,499 | ^~ 2025-09-08T03:54:29,499 | | 2025-09-08T03:54:29,499 | int 2025-09-08T03:54:29,499 hac/cluster.c:69:72: note: in definition of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,500 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,500 | ^~~~~ 2025-09-08T03:54:29,500 /usr/include/python3.13/cpython/code.h:216:45: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 2025-09-08T03:54:29,500 216 | PyObject *l, PyObject *m, PyObject *n, int o, PyObject *p, 2025-09-08T03:54:29,500 | ~~~~~~~~~~^ 2025-09-08T03:54:29,514 hac/cluster.c:11075:266: error: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion] 2025-09-08T03:54:29,514 11075 | __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__10, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_plt, 11, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,514 | ^~~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,514 | | 2025-09-08T03:54:29,514 | PyObject * {aka struct _object *} 2025-09-08T03:54:29,514 hac/cluster.c:69:79: note: in definition of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,514 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,515 | ^~~~ 2025-09-08T03:54:29,515 /usr/include/python3.13/cpython/code.h:216:52: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’} 2025-09-08T03:54:29,515 216 | PyObject *l, PyObject *m, PyObject *n, int o, PyObject *p, 2025-09-08T03:54:29,515 | ~~~~^ 2025-09-08T03:54:29,528 hac/cluster.c:69:11: error: too few arguments to function ‘PyCode_New’ 2025-09-08T03:54:29,529 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,529 | ^~~~~~~~~~ 2025-09-08T03:54:29,529 hac/cluster.c:11075:34: note: in expansion of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,529 11075 | __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__10, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_plt, 11, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,529 | ^~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,529 /usr/include/python3.13/cpython/code.h:213:1: note: declared here 2025-09-08T03:54:29,529 213 | PyCode_New( 2025-09-08T03:54:29,529 | ^~~~~~~~~~ 2025-09-08T03:54:29,542 hac/cluster.c:11087:3: warning: ‘PyCode_New’ is deprecated [-Wdeprecated-declarations] 2025-09-08T03:54:29,542 11087 | __pyx_codeobj__13 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__12, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_graphviz_layout, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,542 | ^~~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,542 /usr/include/python3.13/cpython/code.h:213:1: note: declared here 2025-09-08T03:54:29,543 213 | PyCode_New( 2025-09-08T03:54:29,543 | ^~~~~~~~~~ 2025-09-08T03:54:29,556 hac/cluster.c:11087:274: error: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T03:54:29,557 11087 | __pyx_codeobj__13 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__12, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_graphviz_layout, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,557 | ^~ 2025-09-08T03:54:29,557 | | 2025-09-08T03:54:29,557 | int 2025-09-08T03:54:29,557 hac/cluster.c:69:72: note: in definition of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,557 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,557 | ^~~~~ 2025-09-08T03:54:29,557 /usr/include/python3.13/cpython/code.h:216:45: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 2025-09-08T03:54:29,557 216 | PyObject *l, PyObject *m, PyObject *n, int o, PyObject *p, 2025-09-08T03:54:29,558 | ~~~~~~~~~~^ 2025-09-08T03:54:29,571 hac/cluster.c:11087:278: error: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion] 2025-09-08T03:54:29,571 11087 | __pyx_codeobj__13 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__12, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_graphviz_layout, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,572 | ^~~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,572 | | 2025-09-08T03:54:29,572 | PyObject * {aka struct _object *} 2025-09-08T03:54:29,572 hac/cluster.c:69:79: note: in definition of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,572 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,572 | ^~~~ 2025-09-08T03:54:29,572 /usr/include/python3.13/cpython/code.h:216:52: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’} 2025-09-08T03:54:29,572 216 | PyObject *l, PyObject *m, PyObject *n, int o, PyObject *p, 2025-09-08T03:54:29,572 | ~~~~^ 2025-09-08T03:54:29,586 hac/cluster.c:69:11: error: too few arguments to function ‘PyCode_New’ 2025-09-08T03:54:29,586 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,586 | ^~~~~~~~~~ 2025-09-08T03:54:29,586 hac/cluster.c:11087:34: note: in expansion of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,586 11087 | __pyx_codeobj__13 = (PyObject*)__Pyx_PyCode_New(0, 0, 2, 0, CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__12, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_graphviz_layout, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,586 | ^~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,587 /usr/include/python3.13/cpython/code.h:213:1: note: declared here 2025-09-08T03:54:29,587 213 | PyCode_New( 2025-09-08T03:54:29,587 | ^~~~~~~~~~ 2025-09-08T03:54:29,599 hac/cluster.c:11099:3: warning: ‘PyCode_New’ is deprecated [-Wdeprecated-declarations] 2025-09-08T03:54:29,600 11099 | __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__14, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_int_graph_mapping, 51, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,600 | ^~~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,600 /usr/include/python3.13/cpython/code.h:213:1: note: declared here 2025-09-08T03:54:29,600 213 | PyCode_New( 2025-09-08T03:54:29,600 | ^~~~~~~~~~ 2025-09-08T03:54:29,614 hac/cluster.c:11099:252: error: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T03:54:29,614 11099 | __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__14, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_int_graph_mapping, 51, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,614 | ^~ 2025-09-08T03:54:29,614 | | 2025-09-08T03:54:29,614 | int 2025-09-08T03:54:29,614 hac/cluster.c:69:72: note: in definition of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,614 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,615 | ^~~~~ 2025-09-08T03:54:29,615 /usr/include/python3.13/cpython/code.h:216:45: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’ 2025-09-08T03:54:29,615 216 | PyObject *l, PyObject *m, PyObject *n, int o, PyObject *p, 2025-09-08T03:54:29,615 | ~~~~~~~~~~^ 2025-09-08T03:54:29,629 hac/cluster.c:11099:256: error: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion] 2025-09-08T03:54:29,629 11099 | __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__14, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_int_graph_mapping, 51, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,629 | ^~~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,629 | | 2025-09-08T03:54:29,629 | PyObject * {aka struct _object *} 2025-09-08T03:54:29,629 hac/cluster.c:69:79: note: in definition of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,629 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,629 | ^~~~ 2025-09-08T03:54:29,630 /usr/include/python3.13/cpython/code.h:216:52: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’} 2025-09-08T03:54:29,630 216 | PyObject *l, PyObject *m, PyObject *n, int o, PyObject *p, 2025-09-08T03:54:29,630 | ~~~~^ 2025-09-08T03:54:29,643 hac/cluster.c:69:11: error: too few arguments to function ‘PyCode_New’ 2025-09-08T03:54:29,644 69 | PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) 2025-09-08T03:54:29,644 | ^~~~~~~~~~ 2025-09-08T03:54:29,644 hac/cluster.c:11099:34: note: in expansion of macro ‘__Pyx_PyCode_New’ 2025-09-08T03:54:29,644 11099 | __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__14, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_C_Users_Matthew_Workspace_agglom, __pyx_n_s_int_graph_mapping, 51, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} 2025-09-08T03:54:29,644 | ^~~~~~~~~~~~~~~~ 2025-09-08T03:54:29,644 /usr/include/python3.13/cpython/code.h:213:1: note: declared here 2025-09-08T03:54:29,644 213 | PyCode_New( 2025-09-08T03:54:29,644 | ^~~~~~~~~~ 2025-09-08T03:54:29,648 hac/cluster.c: In function ‘PyInit_cluster’: 2025-09-08T03:54:29,660 hac/cluster.c:11220:56: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’ 2025-09-08T03:54:29,660 11220 | __pyx_type_3hac_7cluster_GreedyAgglomerativeClusterer.tp_print = 0; 2025-09-08T03:54:29,661 | ^ 2025-09-08T03:54:29,674 hac/cluster.c:11234:38: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’ 2025-09-08T03:54:29,674 11234 | __pyx_type_3hac_7cluster_Dendrogram.tp_print = 0; 2025-09-08T03:54:29,674 | ^ 2025-09-08T03:54:29,687 hac/cluster.c:11238:55: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’ 2025-09-08T03:54:29,687 11238 | __pyx_type_3hac_7cluster___pyx_scope_struct__cluster.tp_print = 0; 2025-09-08T03:54:29,687 | ^ 2025-09-08T03:54:29,700 hac/cluster.c:11241:56: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’ 2025-09-08T03:54:29,700 11241 | __pyx_type_3hac_7cluster___pyx_scope_struct_1_genexpr.tp_print = 0; 2025-09-08T03:54:29,700 | ^ 2025-09-08T03:54:29,714 hac/cluster.c: In function ‘__Pyx_ErrRestore’: 2025-09-08T03:54:29,727 hac/cluster.c:11715:22: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:29,727 11715 | tmp_type = tstate->curexc_type; 2025-09-08T03:54:29,727 | ^~ 2025-09-08T03:54:29,741 hac/cluster.c:11716:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T03:54:29,741 11716 | tmp_value = tstate->curexc_value; 2025-09-08T03:54:29,741 | ^~ 2025-09-08T03:54:29,754 hac/cluster.c:11717:20: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:29,754 11717 | tmp_tb = tstate->curexc_traceback; 2025-09-08T03:54:29,755 | ^~ 2025-09-08T03:54:29,768 hac/cluster.c:11718:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:29,768 11718 | tstate->curexc_type = type; 2025-09-08T03:54:29,768 | ^~ 2025-09-08T03:54:29,781 hac/cluster.c:11719:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T03:54:29,781 11719 | tstate->curexc_value = value; 2025-09-08T03:54:29,782 | ^~ 2025-09-08T03:54:29,794 hac/cluster.c:11720:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:29,795 11720 | tstate->curexc_traceback = tb; 2025-09-08T03:54:29,795 | ^~ 2025-09-08T03:54:29,795 hac/cluster.c: In function ‘__Pyx_ErrFetch’: 2025-09-08T03:54:29,808 hac/cluster.c:11731:19: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:29,808 11731 | *type = tstate->curexc_type; 2025-09-08T03:54:29,808 | ^~ 2025-09-08T03:54:29,820 hac/cluster.c:11732:20: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T03:54:29,821 11732 | *value = tstate->curexc_value; 2025-09-08T03:54:29,821 | ^~ 2025-09-08T03:54:29,833 hac/cluster.c:11733:17: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:29,833 11733 | *tb = tstate->curexc_traceback; 2025-09-08T03:54:29,834 | ^~ 2025-09-08T03:54:29,846 hac/cluster.c:11734:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:29,846 11734 | tstate->curexc_type = 0; 2025-09-08T03:54:29,846 | ^~ 2025-09-08T03:54:29,859 hac/cluster.c:11735:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T03:54:29,859 11735 | tstate->curexc_value = 0; 2025-09-08T03:54:29,859 | ^~ 2025-09-08T03:54:29,872 hac/cluster.c:11736:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:29,872 11736 | tstate->curexc_traceback = 0; 2025-09-08T03:54:29,872 | ^~ 2025-09-08T03:54:29,900 hac/cluster.c: In function ‘__Pyx_Raise’: 2025-09-08T03:54:29,913 hac/cluster.c:11888:34: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:29,914 11888 | PyObject* tmp_tb = tstate->curexc_traceback; 2025-09-08T03:54:29,914 | ^~ 2025-09-08T03:54:29,927 hac/cluster.c:11891:19: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:29,927 11891 | tstate->curexc_traceback = tb; 2025-09-08T03:54:29,927 | ^~ 2025-09-08T03:54:29,937 hac/cluster.c: In function ‘__Pyx_IterFinish’: 2025-09-08T03:54:29,950 hac/cluster.c:11971:32: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:29,950 11971 | PyObject* exc_type = tstate->curexc_type; 2025-09-08T03:54:29,951 | ^~ 2025-09-08T03:54:29,964 hac/cluster.c:11975:31: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T03:54:29,964 11975 | exc_value = tstate->curexc_value; 2025-09-08T03:54:29,964 | ^~ 2025-09-08T03:54:29,977 hac/cluster.c:11976:28: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:29,977 11976 | exc_tb = tstate->curexc_traceback; 2025-09-08T03:54:29,977 | ^~ 2025-09-08T03:54:29,990 hac/cluster.c:11977:19: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:29,991 11977 | tstate->curexc_type = 0; 2025-09-08T03:54:29,991 | ^~ 2025-09-08T03:54:30,004 hac/cluster.c:11978:19: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T03:54:30,004 11978 | tstate->curexc_value = 0; 2025-09-08T03:54:30,004 | ^~ 2025-09-08T03:54:30,017 hac/cluster.c:11979:19: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:30,017 11979 | tstate->curexc_traceback = 0; 2025-09-08T03:54:30,017 | ^~ 2025-09-08T03:54:30,042 hac/cluster.c: In function ‘__Pyx_ParseOptionalKeywords’: 2025-09-08T03:54:30,061 hac/cluster.c:12123:22: error: implicit declaration of function ‘PyUnicode_GET_SIZE’; did you mean ‘PyDict_GET_SIZE’? [-Wimplicit-function-declaration] 2025-09-08T03:54:30,061 12123 | (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 : 2025-09-08T03:54:30,061 | ^~~~~~~~~~~~~~~~~~ 2025-09-08T03:54:30,061 | PyDict_GET_SIZE 2025-09-08T03:54:30,140 hac/cluster.c: In function ‘__Pyx__PyList_PopIndex’: 2025-09-08T03:54:30,154 hac/cluster.c:12528:24: error: lvalue required as left operand of assignment 2025-09-08T03:54:30,154 12528 | Py_SIZE(L) -= 1; 2025-09-08T03:54:30,154 | ^~ 2025-09-08T03:54:30,170 hac/cluster.c: In function ‘__Pyx_ExceptionSave’: 2025-09-08T03:54:30,189 hac/cluster.c:12641:21: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_type’; did you mean ‘exc_state’? 2025-09-08T03:54:30,189 12641 | *type = tstate->exc_type; 2025-09-08T03:54:30,190 | ^~~~~~~~ 2025-09-08T03:54:30,190 | exc_state 2025-09-08T03:54:30,203 hac/cluster.c:12642:20: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_value’ 2025-09-08T03:54:30,203 12642 | *value = tstate->exc_value; 2025-09-08T03:54:30,203 | ^~ 2025-09-08T03:54:30,217 hac/cluster.c:12643:17: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_traceback’ 2025-09-08T03:54:30,217 12643 | *tb = tstate->exc_traceback; 2025-09-08T03:54:30,217 | ^~ 2025-09-08T03:54:30,217 hac/cluster.c: In function ‘__Pyx_ExceptionReset’: 2025-09-08T03:54:30,237 hac/cluster.c:12655:24: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_type’; did you mean ‘exc_state’? 2025-09-08T03:54:30,237 12655 | tmp_type = tstate->exc_type; 2025-09-08T03:54:30,237 | ^~~~~~~~ 2025-09-08T03:54:30,237 | exc_state 2025-09-08T03:54:30,250 hac/cluster.c:12656:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_value’ 2025-09-08T03:54:30,250 12656 | tmp_value = tstate->exc_value; 2025-09-08T03:54:30,251 | ^~ 2025-09-08T03:54:30,264 hac/cluster.c:12657:20: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_traceback’ 2025-09-08T03:54:30,264 12657 | tmp_tb = tstate->exc_traceback; 2025-09-08T03:54:30,264 | ^~ 2025-09-08T03:54:30,284 hac/cluster.c:12658:13: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_type’; did you mean ‘exc_state’? 2025-09-08T03:54:30,284 12658 | tstate->exc_type = type; 2025-09-08T03:54:30,284 | ^~~~~~~~ 2025-09-08T03:54:30,284 | exc_state 2025-09-08T03:54:30,297 hac/cluster.c:12659:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_value’ 2025-09-08T03:54:30,297 12659 | tstate->exc_value = value; 2025-09-08T03:54:30,298 | ^~ 2025-09-08T03:54:30,311 hac/cluster.c:12660:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_traceback’ 2025-09-08T03:54:30,311 12660 | tstate->exc_traceback = tb; 2025-09-08T03:54:30,311 | ^~ 2025-09-08T03:54:30,388 hac/cluster.c: In function ‘__Pyx_CyFunction_Call’: 2025-09-08T03:54:30,409 hac/cluster.c:13175:16: error: implicit declaration of function ‘PyCFunction_Call’; did you mean ‘PyCFunction_New’? [-Wimplicit-function-declaration] 2025-09-08T03:54:30,409 13175 | return PyCFunction_Call(func, arg, kw); 2025-09-08T03:54:30,409 | ^~~~~~~~~~~~~~~~ 2025-09-08T03:54:30,409 | PyCFunction_New 2025-09-08T03:54:30,425 hac/cluster.c:13175:16: error: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T03:54:30,426 13175 | return PyCFunction_Call(func, arg, kw); 2025-09-08T03:54:30,426 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-08T03:54:30,439 hac/cluster.c: In function ‘__pyx_CyFunction_init’: 2025-09-08T03:54:30,461 hac/cluster.c:13240:41: error: ‘PyCFunction_Call’ undeclared (first use in this function); did you mean ‘PyCFunction_New’? 2025-09-08T03:54:30,461 13240 | __pyx_CyFunctionType_type.tp_call = PyCFunction_Call; 2025-09-08T03:54:30,461 | ^~~~~~~~~~~~~~~~ 2025-09-08T03:54:30,461 | PyCFunction_New 2025-09-08T03:54:30,462 hac/cluster.c:13240:41: note: each undeclared identifier is reported only once for each function it appears in 2025-09-08T03:54:30,467 hac/cluster.c: In function ‘__Pyx_GetException’: 2025-09-08T03:54:30,481 hac/cluster.c:13278:24: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:30,481 13278 | local_type = tstate->curexc_type; 2025-09-08T03:54:30,481 | ^~ 2025-09-08T03:54:30,496 hac/cluster.c:13279:25: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T03:54:30,496 13279 | local_value = tstate->curexc_value; 2025-09-08T03:54:30,496 | ^~ 2025-09-08T03:54:30,511 hac/cluster.c:13280:22: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:30,511 13280 | local_tb = tstate->curexc_traceback; 2025-09-08T03:54:30,512 | ^~ 2025-09-08T03:54:30,526 hac/cluster.c:13281:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:30,526 13281 | tstate->curexc_type = 0; 2025-09-08T03:54:30,526 | ^~ 2025-09-08T03:54:30,540 hac/cluster.c:13282:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T03:54:30,541 13282 | tstate->curexc_value = 0; 2025-09-08T03:54:30,541 | ^~ 2025-09-08T03:54:30,556 hac/cluster.c:13283:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T03:54:30,556 13283 | tstate->curexc_traceback = 0; 2025-09-08T03:54:30,556 | ^~ 2025-09-08T03:54:30,570 hac/cluster.c:13289:24: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T03:54:30,570 13289 | if (unlikely(tstate->curexc_type)) 2025-09-08T03:54:30,570 | ^~ 2025-09-08T03:54:30,570 hac/cluster.c:437:43: note: in definition of macro ‘unlikely’ 2025-09-08T03:54:30,571 437 | #define unlikely(x) __builtin_expect(!!(x), 0) 2025-09-08T03:54:30,571 | ^ 2025-09-08T03:54:30,596 hac/cluster.c:13307:24: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_type’; did you mean ‘exc_state’? 2025-09-08T03:54:30,596 13307 | tmp_type = tstate->exc_type; 2025-09-08T03:54:30,596 | ^~~~~~~~ 2025-09-08T03:54:30,596 | exc_state 2025-09-08T03:54:30,610 hac/cluster.c:13308:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_value’ 2025-09-08T03:54:30,610 13308 | tmp_value = tstate->exc_value; 2025-09-08T03:54:30,610 | ^~ 2025-09-08T03:54:30,624 hac/cluster.c:13309:20: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_traceback’ 2025-09-08T03:54:30,625 13309 | tmp_tb = tstate->exc_traceback; 2025-09-08T03:54:30,625 | ^~ 2025-09-08T03:54:30,645 hac/cluster.c:13310:13: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_type’; did you mean ‘exc_state’? 2025-09-08T03:54:30,645 13310 | tstate->exc_type = local_type; 2025-09-08T03:54:30,645 | ^~~~~~~~ 2025-09-08T03:54:30,645 | exc_state 2025-09-08T03:54:30,659 hac/cluster.c:13311:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_value’ 2025-09-08T03:54:30,659 13311 | tstate->exc_value = local_value; 2025-09-08T03:54:30,659 | ^~ 2025-09-08T03:54:30,673 hac/cluster.c:13312:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_traceback’ 2025-09-08T03:54:30,674 13312 | tstate->exc_traceback = local_tb; 2025-09-08T03:54:30,674 | ^~ 2025-09-08T03:54:30,674 hac/cluster.c: In function ‘__Pyx_ExceptionSwap’: 2025-09-08T03:54:30,694 hac/cluster.c:13334:24: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_type’; did you mean ‘exc_state’? 2025-09-08T03:54:30,695 13334 | tmp_type = tstate->exc_type; 2025-09-08T03:54:30,695 | ^~~~~~~~ 2025-09-08T03:54:30,695 | exc_state 2025-09-08T03:54:30,709 hac/cluster.c:13335:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_value’ 2025-09-08T03:54:30,709 13335 | tmp_value = tstate->exc_value; 2025-09-08T03:54:30,709 | ^~ 2025-09-08T03:54:30,723 hac/cluster.c:13336:20: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_traceback’ 2025-09-08T03:54:30,723 13336 | tmp_tb = tstate->exc_traceback; 2025-09-08T03:54:30,723 | ^~ 2025-09-08T03:54:30,744 hac/cluster.c:13337:13: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_type’; did you mean ‘exc_state’? 2025-09-08T03:54:30,744 13337 | tstate->exc_type = *type; 2025-09-08T03:54:30,744 | ^~~~~~~~ 2025-09-08T03:54:30,744 | exc_state 2025-09-08T03:54:30,758 hac/cluster.c:13338:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_value’ 2025-09-08T03:54:30,758 13338 | tstate->exc_value = *value; 2025-09-08T03:54:30,758 | ^~ 2025-09-08T03:54:30,772 hac/cluster.c:13339:11: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘exc_traceback’ 2025-09-08T03:54:30,772 13339 | tstate->exc_traceback = *tb; 2025-09-08T03:54:30,772 | ^~ 2025-09-08T03:54:30,773 hac/cluster.c: At top level: 2025-09-08T03:54:30,787 hac/cluster.c:13350:12: fatal error: longintrepr.h: No such file or directory 2025-09-08T03:54:30,787 13350 | #include "longintrepr.h" 2025-09-08T03:54:30,787 | ^~~~~~~~~~~~~~~ 2025-09-08T03:54:30,787 compilation terminated. 2025-09-08T03:54:30,791 error: command '/usr/bin/arm-linux-gnueabihf-gcc' failed with exit code 1 2025-09-08T03:54:30,938 ERROR: python setup.py bdist_wheel exited with 1 2025-09-08T03:54:30,950 [bold magenta]full command[/]: [blue]/usr/bin/python3 -u -c ' 2025-09-08T03:54:30,950 exec(compile('"'"''"'"''"'"' 2025-09-08T03:54:30,950 # This is -- a caller that pip uses to run setup.py 2025-09-08T03:54:30,950 # 2025-09-08T03:54:30,950 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-08T03:54:30,950 # import from `distutils.core` to work with newer packaging standards. 2025-09-08T03:54:30,950 # - It provides a clear error message when setuptools is not installed. 2025-09-08T03:54:30,950 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-08T03:54:30,950 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-08T03:54:30,950 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-08T03:54:30,950 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-08T03:54:30,950 import os, sys, tokenize, traceback 2025-09-08T03:54:30,950 2025-09-08T03:54:30,950 try: 2025-09-08T03:54:30,950 import setuptools 2025-09-08T03:54:30,950 except ImportError: 2025-09-08T03:54:30,950 print( 2025-09-08T03:54:30,950 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-08T03:54:30,950 "the build environment with exception:", 2025-09-08T03:54:30,950 file=sys.stderr, 2025-09-08T03:54:30,950 ) 2025-09-08T03:54:30,950 traceback.print_exc() 2025-09-08T03:54:30,950 sys.exit(1) 2025-09-08T03:54:30,950 2025-09-08T03:54:30,950 __file__ = %r 2025-09-08T03:54:30,950 sys.argv[0] = __file__ 2025-09-08T03:54:30,950 2025-09-08T03:54:30,950 if os.path.exists(__file__): 2025-09-08T03:54:30,950 filename = __file__ 2025-09-08T03:54:30,950 with tokenize.open(__file__) as f: 2025-09-08T03:54:30,950 setup_py_code = f.read() 2025-09-08T03:54:30,950 else: 2025-09-08T03:54:30,950 filename = "" 2025-09-08T03:54:30,950 setup_py_code = "from setuptools import setup; setup()" 2025-09-08T03:54:30,950 2025-09-08T03:54:30,950 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T03:54:30,950 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-799ga5ef/agglomcluster_459eaea1a3344dfd9ed880cdea7cf1d1/setup.py'"'"',), "", "exec"))' bdist_wheel -d /tmp/pip-wheel-gbyhnuhq[/] 2025-09-08T03:54:30,950 [bold magenta]cwd[/]: /tmp/pip-wheel-799ga5ef/agglomcluster_459eaea1a3344dfd9ed880cdea7cf1d1/ 2025-09-08T03:54:30,950 Building wheel for agglomcluster (setup.py): finished with status 'error' 2025-09-08T03:54:30,951 ERROR: Failed building wheel for agglomcluster 2025-09-08T03:54:30,952 Running setup.py clean for agglomcluster 2025-09-08T03:54:30,952 Running command python setup.py clean 2025-09-08T03:54:31,750 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead. 2025-09-08T03:54:31,750 !! 2025-09-08T03:54:31,750 ******************************************************************************** 2025-09-08T03:54:31,750 Usage of dash-separated 'description-file' will not be supported in future 2025-09-08T03:54:31,751 versions. Please use the underscore name 'description_file' instead. 2025-09-08T03:54:31,751 By 2026-Mar-03, you need to update your project and remove deprecated calls 2025-09-08T03:54:31,751 or your builds will no longer be supported. 2025-09-08T03:54:31,751 See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. 2025-09-08T03:54:31,751 ******************************************************************************** 2025-09-08T03:54:31,751 !! 2025-09-08T03:54:31,751 opt = self._enforce_underscore(opt, section) 2025-09-08T03:54:31,828 /usr/local/lib/python3.13/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite' 2025-09-08T03:54:31,829 warnings.warn(msg) 2025-09-08T03:54:32,034 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead. 2025-09-08T03:54:32,035 !! 2025-09-08T03:54:32,035 ******************************************************************************** 2025-09-08T03:54:32,035 Usage of dash-separated 'description-file' will not be supported in future 2025-09-08T03:54:32,035 versions. Please use the underscore name 'description_file' instead. 2025-09-08T03:54:32,035 (Affected: AgglomCluster). 2025-09-08T03:54:32,035 By 2026-Mar-03, you need to update your project and remove deprecated calls 2025-09-08T03:54:32,035 or your builds will no longer be supported. 2025-09-08T03:54:32,035 See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. 2025-09-08T03:54:32,036 ******************************************************************************** 2025-09-08T03:54:32,036 !! 2025-09-08T03:54:32,036 opt = self._enforce_underscore(opt, section) 2025-09-08T03:54:32,036 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2025-09-08T03:54:32,036 !! 2025-09-08T03:54:32,036 ******************************************************************************** 2025-09-08T03:54:32,036 Please consider removing the following classifiers in favor of a SPDX license expression: 2025-09-08T03:54:32,036 License :: OSI Approved :: GNU Lesser General Public License v2 (LGPLv2) 2025-09-08T03:54:32,037 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2025-09-08T03:54:32,037 ******************************************************************************** 2025-09-08T03:54:32,037 !! 2025-09-08T03:54:32,037 self._finalize_license_expression() 2025-09-08T03:54:32,112 running clean 2025-09-08T03:54:32,260 removing 'build/temp.linux-armv7l-cpython-313' (and everything under it) 2025-09-08T03:54:32,260 removing 'build/lib.linux-armv7l-cpython-313' (and everything under it) 2025-09-08T03:54:32,261 'build/bdist.linux-armv7l' does not exist -- can't clean it 2025-09-08T03:54:32,261 'build/scripts-3.13' does not exist -- can't clean it 2025-09-08T03:54:32,261 removing 'build' 2025-09-08T03:54:32,374 Failed to build agglomcluster 2025-09-08T03:54:32,375 ERROR: Failed to build one or more wheels 2025-09-08T03:54:32,376 Exception information: 2025-09-08T03:54:32,376 Traceback (most recent call last): 2025-09-08T03:54:32,376 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-08T03:54:32,376 status = _inner_run() 2025-09-08T03:54:32,376 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-08T03:54:32,376 return self.run(options, args) 2025-09-08T03:54:32,376 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-08T03:54:32,376 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-08T03:54:32,376 return func(self, options, args) 2025-09-08T03:54:32,376 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 180, in run 2025-09-08T03:54:32,376 raise CommandError("Failed to build one or more wheels") 2025-09-08T03:54:32,376 pip._internal.exceptions.CommandError: Failed to build one or more wheels 2025-09-08T03:54:32,380 Removed build tracker: '/tmp/pip-build-tracker-3x28d8u3'