2025-09-09T18:21:25,483 Created temporary directory: /tmp/pip-build-tracker-94duzbye 2025-09-09T18:21:25,483 Initialized build tracking at /tmp/pip-build-tracker-94duzbye 2025-09-09T18:21:25,484 Created build tracker: /tmp/pip-build-tracker-94duzbye 2025-09-09T18:21:25,484 Entered build tracker: /tmp/pip-build-tracker-94duzbye 2025-09-09T18:21:25,484 Created temporary directory: /tmp/pip-wheel-ujw5x0m1 2025-09-09T18:21:25,487 Created temporary directory: /tmp/pip-ephem-wheel-cache-in8c7f2p 2025-09-09T18:21:25,546 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-09T18:21:25,548 2 location(s) to search for versions of bats-tda: 2025-09-09T18:21:25,548 * https://pypi.org/simple/bats-tda/ 2025-09-09T18:21:25,548 * https://www.piwheels.org/simple/bats-tda/ 2025-09-09T18:21:25,549 Fetching project page and analyzing links: https://pypi.org/simple/bats-tda/ 2025-09-09T18:21:25,549 Getting page https://pypi.org/simple/bats-tda/ 2025-09-09T18:21:25,550 Found index url https://pypi.org/simple/ 2025-09-09T18:21:25,620 Fetched page https://pypi.org/simple/bats-tda/ as application/vnd.pypi.simple.v1+json 2025-09-09T18:21:25,623 Found link https://files.pythonhosted.org/packages/bc/29/a80c4be659d05c22f8dae2e0a3eab912bdc2b60086e64fdffadc4f9cf3b9/bats-tda-0.0.0.tar.gz (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.7), version: 0.0.0 2025-09-09T18:21:25,623 Found link https://files.pythonhosted.org/packages/71/09/37563a06919fc5ad8e8c7ffb3061396b3a6e38a8e0652eb13663a08ebf1c/bats-tda-0.0.1.tar.gz (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.7), version: 0.0.1 2025-09-09T18:21:25,623 Found link https://files.pythonhosted.org/packages/c5/64/e37113985c40c35b8f152f6be65571feba7daf85ea6ac5cc7a785ffb41f8/bats-tda-0.1.0.tar.gz (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.7), version: 0.1.0 2025-09-09T18:21:25,624 Found link https://files.pythonhosted.org/packages/fd/0e/418ee02ffbe9ccb556f5db3d8c21a719cac72b2c601899f279abb76169d4/bats-tda-0.2.0.tar.gz (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6), version: 0.2.0 2025-09-09T18:21:25,624 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/73/18/f2490256b33dbc3284118237e1e2694dd8118576b1d93f123507ee39f0b7/bats_tda-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,624 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/5a/65/4257aa2137d4b1475d970cf2ffa2ef14c89944184d62457e190d313e0223/bats_tda-0.2.0-cp310-cp310-manylinux_2_24_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,624 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/bd/a0/6cb8bea46cab7b1110db1e239f0e2ed83e6ae5f05f9d46fb6213e1a35fee/bats_tda-0.2.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,625 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/f9/fc/7c58365b40f8f90fe99fa33e694cd02457aa0229e8636492929962536bba/bats_tda-0.2.0-cp36-cp36m-manylinux_2_24_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,625 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/6d/de/f8096a1c1f95f9dedcde411ec96e5dc7e8fc9a4fa7332b47134491c72caf/bats_tda-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,625 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/3a/8e/251cbef59eca5ebb7b8cbba905562bc5ec1415bf273451cceb29090abe3c/bats_tda-0.2.0-cp38-cp38-manylinux_2_24_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,625 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/b9/95/7d334ee31269400bd43496e79208f47ebc2458b48f5d9f0539cbd75b958a/bats_tda-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,625 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/b3/61/bd0fe0355975da56d26da872b8d97edaec26b8afe8c979d8adf4ad9724e9/bats_tda-0.2.0-cp39-cp39-manylinux_2_24_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,625 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/fd/1d/725bdd0f057084a52a042dc72b24dd24599d3945e2ebbda2a20f7f9d16f2/bats_tda-0.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,625 Skipping link: No binaries permitted for bats-tda: https://files.pythonhosted.org/packages/2d/39/d51aa8ad5ec72b830a12892295d00ccc3fe172a6c93843e9f6f4da13fd79/bats_tda-0.2.0-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl (from https://pypi.org/simple/bats-tda/) (requires-python:>=3.6) 2025-09-09T18:21:25,626 Fetching project page and analyzing links: https://www.piwheels.org/simple/bats-tda/ 2025-09-09T18:21:25,626 Getting page https://www.piwheels.org/simple/bats-tda/ 2025-09-09T18:21:25,627 Found index url https://www.piwheels.org/simple/ 2025-09-09T18:21:25,721 Fetched page https://www.piwheels.org/simple/bats-tda/ as text/html 2025-09-09T18:21:25,721 Skipping link: not a file: https://www.piwheels.org/simple/bats-tda/ 2025-09-09T18:21:25,722 Skipping link: not a file: https://pypi.org/simple/bats-tda/ 2025-09-09T18:21:25,744 Given no hashes to check 1 links for project 'bats-tda': discarding no candidates 2025-09-09T18:21:25,745 Collecting bats-tda==0.0.1 2025-09-09T18:21:25,746 Created temporary directory: /tmp/pip-unpack-uirhbrrx 2025-09-09T18:21:26,040 Downloading bats-tda-0.0.1.tar.gz (275 kB) 2025-09-09T18:21:26,196 Added bats-tda==0.0.1 from https://files.pythonhosted.org/packages/71/09/37563a06919fc5ad8e8c7ffb3061396b3a6e38a8e0652eb13663a08ebf1c/bats-tda-0.0.1.tar.gz to build tracker '/tmp/pip-build-tracker-94duzbye' 2025-09-09T18:21:26,197 Running setup.py (path:/tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/setup.py) egg_info for package bats-tda 2025-09-09T18:21:26,197 Created temporary directory: /tmp/pip-pip-egg-info-5xm5_si1 2025-09-09T18:21:26,197 Preparing metadata (setup.py): started 2025-09-09T18:21:26,198 Running command python setup.py egg_info 2025-09-09T18:21:27,284 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2025-09-09T18:21:27,284 !! 2025-09-09T18:21:27,284 ******************************************************************************** 2025-09-09T18:21:27,284 Please consider removing the following classifiers in favor of a SPDX license expression: 2025-09-09T18:21:27,284 License :: OSI Approved :: MIT License 2025-09-09T18:21:27,284 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2025-09-09T18:21:27,285 ******************************************************************************** 2025-09-09T18:21:27,285 !! 2025-09-09T18:21:27,285 self._finalize_license_expression() 2025-09-09T18:21:27,360 running egg_info 2025-09-09T18:21:27,434 creating /tmp/pip-pip-egg-info-5xm5_si1/bats_tda.egg-info 2025-09-09T18:21:27,434 writing /tmp/pip-pip-egg-info-5xm5_si1/bats_tda.egg-info/PKG-INFO 2025-09-09T18:21:27,436 writing dependency_links to /tmp/pip-pip-egg-info-5xm5_si1/bats_tda.egg-info/dependency_links.txt 2025-09-09T18:21:27,437 writing requirements to /tmp/pip-pip-egg-info-5xm5_si1/bats_tda.egg-info/requires.txt 2025-09-09T18:21:27,437 writing top-level names to /tmp/pip-pip-egg-info-5xm5_si1/bats_tda.egg-info/top_level.txt 2025-09-09T18:21:27,438 writing manifest file '/tmp/pip-pip-egg-info-5xm5_si1/bats_tda.egg-info/SOURCES.txt' 2025-09-09T18:21:27,733 reading manifest file '/tmp/pip-pip-egg-info-5xm5_si1/bats_tda.egg-info/SOURCES.txt' 2025-09-09T18:21:27,734 reading manifest template 'MANIFEST.in' 2025-09-09T18:21:27,745 warning: no previously-included files matching '*.cpp' found under directory 'BATS' 2025-09-09T18:21:27,747 adding license file 'LICENSE' 2025-09-09T18:21:27,753 writing manifest file '/tmp/pip-pip-egg-info-5xm5_si1/bats_tda.egg-info/SOURCES.txt' 2025-09-09T18:21:27,867 Preparing metadata (setup.py): finished with status 'done' 2025-09-09T18:21:27,872 Source in /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a has version 0.0.1, which satisfies requirement bats-tda==0.0.1 from https://files.pythonhosted.org/packages/71/09/37563a06919fc5ad8e8c7ffb3061396b3a6e38a8e0652eb13663a08ebf1c/bats-tda-0.0.1.tar.gz 2025-09-09T18:21:27,872 Removed bats-tda==0.0.1 from https://files.pythonhosted.org/packages/71/09/37563a06919fc5ad8e8c7ffb3061396b3a6e38a8e0652eb13663a08ebf1c/bats-tda-0.0.1.tar.gz from build tracker '/tmp/pip-build-tracker-94duzbye' 2025-09-09T18:21:27,877 Created temporary directory: /tmp/pip-unpack-x1skjk35 2025-09-09T18:21:27,877 Created temporary directory: /tmp/pip-unpack-i35_kpbz 2025-09-09T18:21:27,877 Building wheels for collected packages: bats-tda 2025-09-09T18:21:27,879 Created temporary directory: /tmp/pip-wheel-fv0gsxnq 2025-09-09T18:21:27,879 DEPRECATION: Building 'bats-tda' 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 'bats-tda'. Discussion can be found at https://github.com/pypa/pip/issues/6334 2025-09-09T18:21:27,880 Building wheel for bats-tda (setup.py): started 2025-09-09T18:21:27,881 Destination directory: /tmp/pip-wheel-fv0gsxnq 2025-09-09T18:21:27,881 Running command python setup.py bdist_wheel 2025-09-09T18:21:28,960 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2025-09-09T18:21:28,960 !! 2025-09-09T18:21:28,960 ******************************************************************************** 2025-09-09T18:21:28,960 Please consider removing the following classifiers in favor of a SPDX license expression: 2025-09-09T18:21:28,960 License :: OSI Approved :: MIT License 2025-09-09T18:21:28,961 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2025-09-09T18:21:28,961 ******************************************************************************** 2025-09-09T18:21:28,961 !! 2025-09-09T18:21:28,961 self._finalize_license_expression() 2025-09-09T18:21:28,961 running bdist_wheel 2025-09-09T18:21:29,331 running build 2025-09-09T18:21:29,331 running build_py 2025-09-09T18:21:29,408 creating build/lib.linux-armv7l-cpython-313/bats 2025-09-09T18:21:29,409 copying bats/__init__.py -> build/lib.linux-armv7l-cpython-313/bats 2025-09-09T18:21:29,410 creating build/lib.linux-armv7l-cpython-313/bats/visualization 2025-09-09T18:21:29,410 copying bats/visualization/visualization.py -> build/lib.linux-armv7l-cpython-313/bats/visualization 2025-09-09T18:21:29,410 copying bats/visualization/plotly.py -> build/lib.linux-armv7l-cpython-313/bats/visualization 2025-09-09T18:21:29,411 copying bats/visualization/__init__.py -> build/lib.linux-armv7l-cpython-313/bats/visualization 2025-09-09T18:21:29,413 running build_ext 2025-09-09T18:21:29,776 building 'bats.libbats' extension 2025-09-09T18:21:29,777 creating build/temp.linux-armv7l-cpython-313/bats 2025-09-09T18:21:29,777 arm-linux-gnueabihf-g++ -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -I/tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/ -I/tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/ -I/usr/include/python3.13 -c bats/libbats.cpp -o build/temp.linux-armv7l-cpython-313/bats/libbats.o -std=c++17 -fopenmp 2025-09-09T18:21:33,120 In file included from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg.hpp:7, 2025-09-09T18:21:33,120 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/bats.hpp:11, 2025-09-09T18:21:33,120 from bats/pybats.hpp:9, 2025-09-09T18:21:33,121 from bats/libbats.cpp:1: 2025-09-09T18:21:33,121 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/naive_dense.hpp:345:14: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] 2025-09-09T18:21:33,121 345 | A(){ m=0;n=0;} 2025-09-09T18:21:33,121 | ^ 2025-09-09T18:21:33,121 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/naive_dense.hpp:345:14: note: remove the ‘< >’ 2025-09-09T18:21:33,121 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/naive_dense.hpp:348:14: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] 2025-09-09T18:21:33,121 348 | A(const A &m2) {m = m2.m; n = m2.n; mat = m2.mat; macc=m2.macc; } 2025-09-09T18:21:33,121 | ^ 2025-09-09T18:21:33,121 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/naive_dense.hpp:348:14: note: remove the ‘< >’ 2025-09-09T18:21:33,122 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/naive_dense.hpp:350:11: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] 2025-09-09T18:21:33,122 350 | A(size_t mm, size_t nn, F* mat) : m(mm), n(nn), mat(mat) { 2025-09-09T18:21:33,122 | ^~~~~~ 2025-09-09T18:21:33,122 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/naive_dense.hpp:350:11: note: remove the ‘< >’ 2025-09-09T18:21:33,122 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/naive_dense.hpp:354:11: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] 2025-09-09T18:21:33,122 354 | A(size_t mm, size_t nn) : m(mm), n(nn) { 2025-09-09T18:21:33,122 | ^~~~~~ 2025-09-09T18:21:33,122 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/naive_dense.hpp:354:11: note: remove the ‘< >’ 2025-09-09T18:21:34,167 In file included from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/future.hpp:3, 2025-09-09T18:21:34,167 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/bats.hpp:22: 2025-09-09T18:21:34,167 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/future/dense.hpp:34:23: warning: ‘template struct std::iterator’ is deprecated [-Wdeprecated-declarations] 2025-09-09T18:21:34,168 34 | : public std::iterator 2025-09-09T18:21:34,168 | ^~~~~~~~ 2025-09-09T18:21:34,168 In file included from /usr/include/c++/14/bits/stl_algobase.h:65, 2025-09-09T18:21:34,168 from /usr/include/c++/14/vector:62, 2025-09-09T18:21:34,168 from bats/pybats.hpp:6: 2025-09-09T18:21:34,168 /usr/include/c++/14/bits/stl_iterator_base_types.h:127:34: note: declared here 2025-09-09T18:21:34,168 127 | struct _GLIBCXX17_DEPRECATED iterator 2025-09-09T18:21:34,168 | ^~~~~~~~ 2025-09-09T18:21:34,169 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/future/dense.hpp:66:23: warning: ‘template struct std::iterator’ is deprecated [-Wdeprecated-declarations] 2025-09-09T18:21:34,169 66 | : public std::iterator 2025-09-09T18:21:34,170 | ^~~~~~~~ 2025-09-09T18:21:34,170 /usr/include/c++/14/bits/stl_iterator_base_types.h:127:34: note: declared here 2025-09-09T18:21:34,170 127 | struct _GLIBCXX17_DEPRECATED iterator 2025-09-09T18:21:34,170 | ^~~~~~~~ 2025-09-09T18:21:34,171 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/future/dense.hpp:125:31: warning: ‘template struct std::iterator’ is deprecated [-Wdeprecated-declarations] 2025-09-09T18:21:34,171 125 | : public std::iterator 2025-09-09T18:21:34,171 | ^~~~~~~~ 2025-09-09T18:21:34,171 /usr/include/c++/14/bits/stl_iterator_base_types.h:127:34: note: declared here 2025-09-09T18:21:34,172 127 | struct _GLIBCXX17_DEPRECATED iterator 2025-09-09T18:21:34,172 | ^~~~~~~~ 2025-09-09T18:21:35,350 In file included from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:16, 2025-09-09T18:21:35,350 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/attr.h:13, 2025-09-09T18:21:35,350 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pybind11.h:44, 2025-09-09T18:21:35,350 from bats/libbats.cpp:3: 2025-09-09T18:21:35,350 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/detail/internals.h: In function ‘pybind11::detail::internals& pybind11::detail::get_internals()’: 2025-09-09T18:21:35,351 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/detail/internals.h:276:27: warning: ‘void PyEval_InitThreads()’ is deprecated [-Wdeprecated-declarations] 2025-09-09T18:21:35,351 276 | PyEval_InitThreads(); 2025-09-09T18:21:35,351 | ~~~~~~~~~~~~~~~~~~^~ 2025-09-09T18:21:35,351 In file included from /usr/include/python3.13/Python.h:124, 2025-09-09T18:21:35,351 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/detail/common.h:112, 2025-09-09T18:21:35,351 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pytypes.h:12, 2025-09-09T18:21:35,351 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:13: 2025-09-09T18:21:35,351 /usr/include/python3.13/ceval.h:114:37: note: declared here 2025-09-09T18:21:35,351 114 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void); 2025-09-09T18:21:35,352 | ^~~~~~~~~~~~~~~~~~ 2025-09-09T18:21:35,430 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h: In function ‘std::string pybind11::detail::error_string()’: 2025-09-09T18:21:35,430 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:446:36: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,430 446 | " " + handle(frame->f_code->co_filename).cast() + 2025-09-09T18:21:35,431 | ^~ 2025-09-09T18:21:35,431 In file included from /usr/include/python3.13/Python.h:67: 2025-09-09T18:21:35,431 /usr/include/python3.13/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,431 22 | typedef struct _frame PyFrameObject; 2025-09-09T18:21:35,431 | ^~~~~~ 2025-09-09T18:21:35,431 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:446:75: error: expected primary-expression before ‘>’ token 2025-09-09T18:21:35,431 446 | " " + handle(frame->f_code->co_filename).cast() + 2025-09-09T18:21:35,431 | ^ 2025-09-09T18:21:35,431 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:446:77: error: expected primary-expression before ‘)’ token 2025-09-09T18:21:35,432 446 | " " + handle(frame->f_code->co_filename).cast() + 2025-09-09T18:21:35,432 | ^ 2025-09-09T18:21:35,432 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:448:29: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,432 448 | handle(frame->f_code->co_name).cast() + "\n"; 2025-09-09T18:21:35,432 | ^~ 2025-09-09T18:21:35,432 /usr/include/python3.13/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,432 22 | typedef struct _frame PyFrameObject; 2025-09-09T18:21:35,432 | ^~~~~~ 2025-09-09T18:21:35,432 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:448:64: error: expected primary-expression before ‘>’ token 2025-09-09T18:21:35,433 448 | handle(frame->f_code->co_name).cast() + "\n"; 2025-09-09T18:21:35,433 | ^ 2025-09-09T18:21:35,433 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:448:66: error: expected primary-expression before ‘)’ token 2025-09-09T18:21:35,433 448 | handle(frame->f_code->co_name).cast() + "\n"; 2025-09-09T18:21:35,433 | ^ 2025-09-09T18:21:35,433 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/cast.h:449:26: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,433 449 | frame = frame->f_back; 2025-09-09T18:21:35,433 | ^~ 2025-09-09T18:21:35,433 /usr/include/python3.13/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,433 22 | typedef struct _frame PyFrameObject; 2025-09-09T18:21:35,433 | ^~~~~~ 2025-09-09T18:21:35,883 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pybind11.h: In function ‘pybind11::function pybind11::get_type_overload(const void*, const detail::type_info*, const char*)’: 2025-09-09T18:21:35,883 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pybind11.h:2053:49: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’ 2025-09-09T18:21:35,884 2053 | PyFrameObject *frame = PyThreadState_Get()->frame; 2025-09-09T18:21:35,884 | ^~~~~ 2025-09-09T18:21:35,884 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pybind11.h:2054:41: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,884 2054 | if (frame && (std::string) str(frame->f_code->co_name) == name && 2025-09-09T18:21:35,884 | ^~ 2025-09-09T18:21:35,884 /usr/include/python3.13/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,884 22 | typedef struct _frame PyFrameObject; 2025-09-09T18:21:35,884 | ^~~~~~ 2025-09-09T18:21:35,884 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pybind11.h:2055:14: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,885 2055 | frame->f_code->co_argcount > 0) { 2025-09-09T18:21:35,885 | ^~ 2025-09-09T18:21:35,885 /usr/include/python3.13/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,885 22 | typedef struct _frame PyFrameObject; 2025-09-09T18:21:35,885 | ^~~~~~ 2025-09-09T18:21:35,885 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pybind11.h:2058:18: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,885 2058 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0)); 2025-09-09T18:21:35,885 | ^~ 2025-09-09T18:21:35,885 /usr/include/python3.13/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,886 22 | typedef struct _frame PyFrameObject; 2025-09-09T18:21:35,886 | ^~~~~~ 2025-09-09T18:21:35,886 In file included from /usr/include/python3.13/Python.h:63: 2025-09-09T18:21:35,886 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pybind11.h:2058:52: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,886 2058 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0)); 2025-09-09T18:21:35,886 | ^~ 2025-09-09T18:21:35,886 /usr/include/python3.13/pyport.h:19:38: note: in definition of macro ‘_Py_CAST’ 2025-09-09T18:21:35,886 19 | #define _Py_CAST(type, expr) ((type)(expr)) 2025-09-09T18:21:35,886 | ^~~~ 2025-09-09T18:21:35,887 /usr/include/python3.13/cpython/tupleobject.h:27:38: note: in expansion of macro ‘_PyTuple_CAST’ 2025-09-09T18:21:35,887 27 | #define PyTuple_GET_ITEM(op, index) (_PyTuple_CAST(op)->ob_item[(index)]) 2025-09-09T18:21:35,887 | ^~~~~~~~~~~~~ 2025-09-09T18:21:35,887 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/pybind11/include/pybind11/pybind11.h:2058:30: note: in expansion of macro ‘PyTuple_GET_ITEM’ 2025-09-09T18:21:35,887 2058 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0)); 2025-09-09T18:21:35,887 | ^~~~~~~~~~~~~~~~ 2025-09-09T18:21:35,887 /usr/include/python3.13/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’} 2025-09-09T18:21:35,887 22 | typedef struct _frame PyFrameObject; 2025-09-09T18:21:35,887 | ^~~~~~ 2025-09-09T18:21:36,840 In file included from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/zigzag_filtration.hpp:9, 2025-09-09T18:21:36,840 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag.hpp:3, 2025-09-09T18:21:36,840 from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/bats.hpp:18: 2025-09-09T18:21:36,840 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp: In instantiation of ‘auto bats::zigzag::zigzag_barcode_reduction(const bats::ChainComplex&, const std::vector >&, ssize_t, opt_flag, reduction_flag) [with MT = ColumnMatrix, unsigned int> >; T = double; opt_flag = bats::no_optimization_flag; reduction_flag = bats::standard_reduction_flag; ssize_t = int]’: 2025-09-09T18:21:36,840 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/zigzag_filtration.hpp:525:33: required from ‘auto bats::zigzag::barcode(const ZigzagFiltration&, ssize_t, FT, opt_flag, reduction_flag) [with CpxT = bats::CubicalComplex; T = double; FT = ModP; opt_flag = bats::no_optimization_flag; reduction_flag = bats::standard_reduction_flag; ssize_t = int]’ 2025-09-09T18:21:36,840 525 | return zigzag_barcode_reduction(C, filt_order, maxdim, opt_flag(), reduction_flag()); 2025-09-09T18:21:36,841 | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-09T18:21:36,841 bats/libbats.cpp:429:2: required from here 2025-09-09T18:21:36,841 176 | m.def("ZigzagBarcode", [](zigzag::ZigzagFiltration& F, size_t maxdim, F2){return zigzag::barcode(F, maxdim, F2(), no_optimization_flag(), standard_reduction_flag()); });\ 2025-09-09T18:21:36,841 | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-09T18:21:36,841 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp:463:32: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘unsigned int’} and ‘ssize_t’ {aka ‘int’} [-Wsign-compare] 2025-09-09T18:21:36,841 463 | if ((k < maxdim + 2) && F.R[k][j].nnz() > 0) { 2025-09-09T18:21:36,841 | ~~~^~~~~~~~~~~~~ 2025-09-09T18:21:36,845 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp:491:38: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘unsigned int’} and ‘ssize_t’ {aka ‘int’} [-Wsign-compare] 2025-09-09T18:21:36,845 491 | } else if (k < maxdim + 1) { 2025-09-09T18:21:36,845 | ~~^~~~~~~~~~~~ 2025-09-09T18:21:36,847 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp:519:32: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘unsigned int’} and ‘ssize_t’ {aka ‘int’} [-Wsign-compare] 2025-09-09T18:21:36,847 519 | if ((k < maxdim + 2) && F.R[k][fval.ind].nnz() > 0) { 2025-09-09T18:21:36,847 | ~~~^~~~~~~~~~~~~ 2025-09-09T18:21:36,850 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp:548:38: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘unsigned int’} and ‘ssize_t’ {aka ‘int’} [-Wsign-compare] 2025-09-09T18:21:36,850 548 | } else if (k < maxdim + 1) { 2025-09-09T18:21:36,850 | ~~^~~~~~~~~~~~ 2025-09-09T18:21:36,860 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp: In instantiation of ‘auto bats::zigzag::zigzag_barcode_reduction(const bats::ChainComplex&, const std::vector >&, ssize_t, opt_flag, reduction_flag) [with MT = ColumnMatrix, unsigned int> >; T = double; opt_flag = bats::no_optimization_flag; reduction_flag = bats::extra_reduction_flag; ssize_t = int]’: 2025-09-09T18:21:36,860 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/zigzag_filtration.hpp:525:33: required from ‘auto bats::zigzag::barcode(const ZigzagFiltration&, ssize_t, FT, opt_flag, reduction_flag) [with CpxT = bats::CubicalComplex; T = double; FT = ModP; opt_flag = bats::no_optimization_flag; reduction_flag = bats::extra_reduction_flag; ssize_t = int]’ 2025-09-09T18:21:36,860 525 | return zigzag_barcode_reduction(C, filt_order, maxdim, opt_flag(), reduction_flag()); 2025-09-09T18:21:36,860 | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-09T18:21:36,860 bats/libbats.cpp:429:2: required from here 2025-09-09T18:21:36,860 177 | m.def("ZigzagBarcode", [](zigzag::ZigzagFiltration& F, size_t maxdim, F2, extra_reduction_flag){return zigzag::barcode(F, maxdim, F2(), no_optimization_flag(), extra_reduction_flag()); });\ 2025-09-09T18:21:36,860 | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-09T18:21:36,860 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp:463:32: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘unsigned int’} and ‘ssize_t’ {aka ‘int’} [-Wsign-compare] 2025-09-09T18:21:36,861 463 | if ((k < maxdim + 2) && F.R[k][j].nnz() > 0) { 2025-09-09T18:21:36,861 | ~~~^~~~~~~~~~~~~ 2025-09-09T18:21:36,863 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp:491:38: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘unsigned int’} and ‘ssize_t’ {aka ‘int’} [-Wsign-compare] 2025-09-09T18:21:36,863 491 | } else if (k < maxdim + 1) { 2025-09-09T18:21:36,863 | ~~^~~~~~~~~~~~ 2025-09-09T18:21:36,864 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp:519:32: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘unsigned int’} and ‘ssize_t’ {aka ‘int’} [-Wsign-compare] 2025-09-09T18:21:36,864 519 | if ((k < maxdim + 2) && F.R[k][fval.ind].nnz() > 0) { 2025-09-09T18:21:36,864 | ~~~^~~~~~~~~~~~~ 2025-09-09T18:21:36,867 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/reduction.hpp:548:38: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘unsigned int’} and ‘ssize_t’ {aka ‘int’} [-Wsign-compare] 2025-09-09T18:21:36,867 548 | } else if (k < maxdim + 1) { 2025-09-09T18:21:36,867 | ~~^~~~~~~~~~~~ 2025-09-09T18:21:36,922 In file included from /usr/include/c++/14/bits/stl_algobase.h:64: 2025-09-09T18:21:36,922 /usr/include/c++/14/bits/stl_pair.h: In instantiation of ‘constexpr std::pair::type>::__type, typename std::__strip_reference_wrapper::type>::__type> std::make_pair(_T1&&, _T2&&) [with _T1 = double&; _T2 = double&; typename __strip_reference_wrapper::type>::__type = double; typename decay<_Tp>::type = double; typename __strip_reference_wrapper::type>::__type = double; typename decay<_Tp2>::type = double]’: 2025-09-09T18:21:36,923 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/zigzag/extension.hpp:69:50: required from ‘auto bats::zigzag::extend_zigzag_filtration(const std::vector<_RealType>&, const CpxT&, T) [with T = double; CpxT = bats::SimplicialComplex]’ 2025-09-09T18:21:36,923 69 | val[k][i].emplace_back(std::make_pair(entry, removal)); 2025-09-09T18:21:36,923 | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 2025-09-09T18:21:36,923 bats/libbats.cpp:431:137: required from here 2025-09-09T18:21:36,923 431 | m.def("extend_zigzag_filtration", [](std::vector& f0, SimplicialComplex& X, double eps){return zigzag::extend_zigzag_filtration(f0, X, eps); }); 2025-09-09T18:21:36,923 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ 2025-09-09T18:21:36,923 /usr/include/c++/14/bits/stl_pair.h:1132:5: note: parameter passing for argument of type ‘std::pair’ when C++17 is enabled changed to match C++14 in GCC 10.1 2025-09-09T18:21:36,923 1132 | make_pair(_T1&& __x, _T2&& __y) 2025-09-09T18:21:36,923 | ^~~~~~~~~ 2025-09-09T18:22:00,433 In file included from /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg.hpp:3: 2025-09-09T18:22:00,433 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp: In instantiation of ‘void ColumnMatrix::insert_columns(const std::vector&, std::vector<_RealType>&) [with TC = SparseVector, unsigned int>]’: 2025-09-09T18:22:00,433 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/homology/basis.hpp:423:24: required from ‘void bats::ReducedChainComplex::update_basis_general(const Information_type&, Args ...) [with Information_type = bats::Update_info >; Args = {}; MT = ColumnMatrix, unsigned int> >]’ 2025-09-09T18:22:00,433 423 | R[k].insert_columns(add_inds, Rcol); 2025-09-09T18:22:00,433 | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 2025-09-09T18:22:00,433 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/persistence/filtered_basis.hpp:152:26: required from ‘void bats::ReducedFilteredChainComplex::update_filtration_general(const Information_type&, Args ...) [with Information_type = bats::Update_info >; Args = {}; T = double; MT = ColumnMatrix, unsigned int> >]’ 2025-09-09T18:22:00,433 152 | RC.update_basis_general(updating_information, args...); 2025-09-09T18:22:00,434 | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:00,434 bats/libbats.cpp:491:5: required from here 2025-09-09T18:22:00,434 234 | #define ReducedFilteredChainComplexInterface(T, MT, name) py::class_>(m, name)\ 2025-09-09T18:22:00,434 235 | .def(py::init<>())\ 2025-09-09T18:22:00,434 236 | .def(py::init&>())\ 2025-09-09T18:22:00,434 237 | .def(py::init&, bats::standard_reduction_flag>())\ 2025-09-09T18:22:00,434 238 | .def(py::init&, bats::standard_reduction_flag, bats::compute_basis_flag>())\ 2025-09-09T18:22:00,434 239 | .def(py::init&, bats::standard_reduction_flag, bats::clearing_flag>())\ 2025-09-09T18:22:00,434 240 | .def(py::init&, bats::standard_reduction_flag, bats::compression_flag>())\ 2025-09-09T18:22:00,434 241 | .def(py::init&, bats::extra_reduction_flag>())\ 2025-09-09T18:22:00,435 242 | .def(py::init&, bats::extra_reduction_flag, bats::compute_basis_flag>())\ 2025-09-09T18:22:00,435 243 | .def(py::init&, bats::extra_reduction_flag, bats::clearing_flag>())\ 2025-09-09T18:22:00,435 244 | .def("nnz_U", &ReducedFilteredChainComplex::get_nnz_U, "get the number of non-zeros in U")\ 2025-09-09T18:22:00,435 245 | .def("nnz_R", &ReducedFilteredChainComplex::get_nnz_R, "get the number of non-zeros in R")\ 2025-09-09T18:22:00,435 246 | .def(py::init&, bats::extra_reduction_flag, bats::compression_flag>())\ 2025-09-09T18:22:00,435 247 | .def("reduced_complex", [](ReducedFilteredChainComplex& C){return C.RC;}, "underlying reduced complex")\ 2025-09-09T18:22:00,435 248 | .def("val", [](ReducedFilteredChainComplex& C) {return C.val;}, "filtration values")\ 2025-09-09T18:22:00,435 249 | .def("perm", [](ReducedFilteredChainComplex& C) {return C.perm;}, "permutation from original order")\ 2025-09-09T18:22:00,435 250 | .def("dim", &ReducedFilteredChainComplex::dim)\ 2025-09-09T18:22:00,435 251 | .def("maxdim", &ReducedFilteredChainComplex::maxdim)\ 2025-09-09T18:22:00,436 252 | .def("representative", [](ReducedFilteredChainComplex& F, PersistencePair& p){return F.representative(p, false); })\ 2025-09-09T18:22:00,436 253 | .def("representative", [](ReducedFilteredChainComplex& F, PersistencePair& p, bool perm){return F.representative(p, perm); })\ 2025-09-09T18:22:00,436 254 | .def("persistence_pairs", [](ReducedFilteredChainComplex& F, size_t k){return F.persistence_pairs(k);} )\ 2025-09-09T18:22:00,436 255 | .def("persistence_pairs", [](ReducedFilteredChainComplex& F, size_t k, bool perm){return F.persistence_pairs(k, perm);} )\ 2025-09-09T18:22:00,436 256 | .def("update_filtration", &ReducedFilteredChainComplex::update_filtration, "update filtration with new values")\ 2025-09-09T18:22:00,436 257 | .def("update_filtration_general", &ReducedFilteredChainComplex::update_filtration_general>>, "generally update filtration with updating information")\ 2025-09-09T18:22:00,436 258 | .def("update_filtration_general", &ReducedFilteredChainComplex::update_filtration_general>>, "generally update filtration with updating information"); 2025-09-09T18:22:00,436 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:206:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:00,436 206 | while (oldi < col.size() && newi < insert_col.size()) { 2025-09-09T18:22:00,436 | ~~~~~^~~~~~~~~~~~ 2025-09-09T18:22:00,437 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:206:50: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:00,437 206 | while (oldi < col.size() && newi < insert_col.size()) { 2025-09-09T18:22:00,437 | ~~~~~^~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:00,437 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:220:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:00,437 220 | while (oldi < col.size()) { 2025-09-09T18:22:00,437 | ~~~~~^~~~~~~~~~~~ 2025-09-09T18:22:00,437 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:226:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:00,437 226 | while (newi < insert_col.size()) { 2025-09-09T18:22:00,438 | ~~~~~^~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:00,759 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp: In instantiation of ‘void ColumnMatrix::insert_columns(const std::vector&, std::vector<_RealType>&) [with TC = SparseVector, unsigned int>]’: 2025-09-09T18:22:00,760 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/homology/basis.hpp:423:24: required from ‘void bats::ReducedChainComplex::update_basis_general(const Information_type&, Args ...) [with Information_type = bats::Update_info >; Args = {}; MT = ColumnMatrix, unsigned int> >]’ 2025-09-09T18:22:00,760 423 | R[k].insert_columns(add_inds, Rcol); 2025-09-09T18:22:00,760 | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 2025-09-09T18:22:00,760 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/persistence/filtered_basis.hpp:152:26: required from ‘void bats::ReducedFilteredChainComplex::update_filtration_general(const Information_type&, Args ...) [with Information_type = bats::Update_info >; Args = {}; T = double; MT = ColumnMatrix, unsigned int> >]’ 2025-09-09T18:22:00,760 152 | RC.update_basis_general(updating_information, args...); 2025-09-09T18:22:00,760 | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:00,760 bats/libbats.cpp:492:5: required from here 2025-09-09T18:22:00,760 234 | #define ReducedFilteredChainComplexInterface(T, MT, name) py::class_>(m, name)\ 2025-09-09T18:22:00,761 235 | .def(py::init<>())\ 2025-09-09T18:22:00,761 236 | .def(py::init&>())\ 2025-09-09T18:22:00,761 237 | .def(py::init&, bats::standard_reduction_flag>())\ 2025-09-09T18:22:00,761 238 | .def(py::init&, bats::standard_reduction_flag, bats::compute_basis_flag>())\ 2025-09-09T18:22:00,761 239 | .def(py::init&, bats::standard_reduction_flag, bats::clearing_flag>())\ 2025-09-09T18:22:00,761 240 | .def(py::init&, bats::standard_reduction_flag, bats::compression_flag>())\ 2025-09-09T18:22:00,761 241 | .def(py::init&, bats::extra_reduction_flag>())\ 2025-09-09T18:22:00,761 242 | .def(py::init&, bats::extra_reduction_flag, bats::compute_basis_flag>())\ 2025-09-09T18:22:00,761 243 | .def(py::init&, bats::extra_reduction_flag, bats::clearing_flag>())\ 2025-09-09T18:22:00,761 244 | .def("nnz_U", &ReducedFilteredChainComplex::get_nnz_U, "get the number of non-zeros in U")\ 2025-09-09T18:22:00,762 245 | .def("nnz_R", &ReducedFilteredChainComplex::get_nnz_R, "get the number of non-zeros in R")\ 2025-09-09T18:22:00,762 246 | .def(py::init&, bats::extra_reduction_flag, bats::compression_flag>())\ 2025-09-09T18:22:00,762 247 | .def("reduced_complex", [](ReducedFilteredChainComplex& C){return C.RC;}, "underlying reduced complex")\ 2025-09-09T18:22:00,762 248 | .def("val", [](ReducedFilteredChainComplex& C) {return C.val;}, "filtration values")\ 2025-09-09T18:22:00,762 249 | .def("perm", [](ReducedFilteredChainComplex& C) {return C.perm;}, "permutation from original order")\ 2025-09-09T18:22:00,762 250 | .def("dim", &ReducedFilteredChainComplex::dim)\ 2025-09-09T18:22:00,762 251 | .def("maxdim", &ReducedFilteredChainComplex::maxdim)\ 2025-09-09T18:22:00,762 252 | .def("representative", [](ReducedFilteredChainComplex& F, PersistencePair& p){return F.representative(p, false); })\ 2025-09-09T18:22:00,762 253 | .def("representative", [](ReducedFilteredChainComplex& F, PersistencePair& p, bool perm){return F.representative(p, perm); })\ 2025-09-09T18:22:00,762 254 | .def("persistence_pairs", [](ReducedFilteredChainComplex& F, size_t k){return F.persistence_pairs(k);} )\ 2025-09-09T18:22:00,763 255 | .def("persistence_pairs", [](ReducedFilteredChainComplex& F, size_t k, bool perm){return F.persistence_pairs(k, perm);} )\ 2025-09-09T18:22:00,763 256 | .def("update_filtration", &ReducedFilteredChainComplex::update_filtration, "update filtration with new values")\ 2025-09-09T18:22:00,763 257 | .def("update_filtration_general", &ReducedFilteredChainComplex::update_filtration_general>>, "generally update filtration with updating information")\ 2025-09-09T18:22:00,763 258 | .def("update_filtration_general", &ReducedFilteredChainComplex::update_filtration_general>>, "generally update filtration with updating information"); 2025-09-09T18:22:00,763 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:206:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:00,763 206 | while (oldi < col.size() && newi < insert_col.size()) { 2025-09-09T18:22:00,763 | ~~~~~^~~~~~~~~~~~ 2025-09-09T18:22:00,763 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:206:50: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:00,763 206 | while (oldi < col.size() && newi < insert_col.size()) { 2025-09-09T18:22:00,764 | ~~~~~^~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:00,764 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:220:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:00,764 220 | while (oldi < col.size()) { 2025-09-09T18:22:00,764 | ~~~~~^~~~~~~~~~~~ 2025-09-09T18:22:00,764 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:226:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:00,764 226 | while (newi < insert_col.size()) { 2025-09-09T18:22:00,764 | ~~~~~^~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:01,092 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp: In instantiation of ‘void ColumnMatrix::insert_columns(const std::vector&, std::vector<_RealType>&) [with TC = SparseVector, unsigned int>]’: 2025-09-09T18:22:01,092 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/homology/basis.hpp:423:24: required from ‘void bats::ReducedChainComplex::update_basis_general(const Information_type&, Args ...) [with Information_type = bats::Update_info >; Args = {}; MT = ColumnMatrix, unsigned int> >]’ 2025-09-09T18:22:01,092 423 | R[k].insert_columns(add_inds, Rcol); 2025-09-09T18:22:01,092 | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 2025-09-09T18:22:01,093 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/persistence/filtered_basis.hpp:152:26: required from ‘void bats::ReducedFilteredChainComplex::update_filtration_general(const Information_type&, Args ...) [with Information_type = bats::Update_info >; Args = {}; T = double; MT = ColumnMatrix, unsigned int> >]’ 2025-09-09T18:22:01,093 152 | RC.update_basis_general(updating_information, args...); 2025-09-09T18:22:01,093 | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:01,093 bats/libbats.cpp:493:5: required from here 2025-09-09T18:22:01,093 234 | #define ReducedFilteredChainComplexInterface(T, MT, name) py::class_>(m, name)\ 2025-09-09T18:22:01,093 235 | .def(py::init<>())\ 2025-09-09T18:22:01,093 236 | .def(py::init&>())\ 2025-09-09T18:22:01,093 237 | .def(py::init&, bats::standard_reduction_flag>())\ 2025-09-09T18:22:01,093 238 | .def(py::init&, bats::standard_reduction_flag, bats::compute_basis_flag>())\ 2025-09-09T18:22:01,094 239 | .def(py::init&, bats::standard_reduction_flag, bats::clearing_flag>())\ 2025-09-09T18:22:01,094 240 | .def(py::init&, bats::standard_reduction_flag, bats::compression_flag>())\ 2025-09-09T18:22:01,094 241 | .def(py::init&, bats::extra_reduction_flag>())\ 2025-09-09T18:22:01,094 242 | .def(py::init&, bats::extra_reduction_flag, bats::compute_basis_flag>())\ 2025-09-09T18:22:01,094 243 | .def(py::init&, bats::extra_reduction_flag, bats::clearing_flag>())\ 2025-09-09T18:22:01,094 244 | .def("nnz_U", &ReducedFilteredChainComplex::get_nnz_U, "get the number of non-zeros in U")\ 2025-09-09T18:22:01,094 245 | .def("nnz_R", &ReducedFilteredChainComplex::get_nnz_R, "get the number of non-zeros in R")\ 2025-09-09T18:22:01,094 246 | .def(py::init&, bats::extra_reduction_flag, bats::compression_flag>())\ 2025-09-09T18:22:01,094 247 | .def("reduced_complex", [](ReducedFilteredChainComplex& C){return C.RC;}, "underlying reduced complex")\ 2025-09-09T18:22:01,094 248 | .def("val", [](ReducedFilteredChainComplex& C) {return C.val;}, "filtration values")\ 2025-09-09T18:22:01,094 249 | .def("perm", [](ReducedFilteredChainComplex& C) {return C.perm;}, "permutation from original order")\ 2025-09-09T18:22:01,095 250 | .def("dim", &ReducedFilteredChainComplex::dim)\ 2025-09-09T18:22:01,095 251 | .def("maxdim", &ReducedFilteredChainComplex::maxdim)\ 2025-09-09T18:22:01,095 252 | .def("representative", [](ReducedFilteredChainComplex& F, PersistencePair& p){return F.representative(p, false); })\ 2025-09-09T18:22:01,095 253 | .def("representative", [](ReducedFilteredChainComplex& F, PersistencePair& p, bool perm){return F.representative(p, perm); })\ 2025-09-09T18:22:01,095 254 | .def("persistence_pairs", [](ReducedFilteredChainComplex& F, size_t k){return F.persistence_pairs(k);} )\ 2025-09-09T18:22:01,095 255 | .def("persistence_pairs", [](ReducedFilteredChainComplex& F, size_t k, bool perm){return F.persistence_pairs(k, perm);} )\ 2025-09-09T18:22:01,095 256 | .def("update_filtration", &ReducedFilteredChainComplex::update_filtration, "update filtration with new values")\ 2025-09-09T18:22:01,095 257 | .def("update_filtration_general", &ReducedFilteredChainComplex::update_filtration_general>>, "generally update filtration with updating information")\ 2025-09-09T18:22:01,095 258 | .def("update_filtration_general", &ReducedFilteredChainComplex::update_filtration_general>>, "generally update filtration with updating information"); 2025-09-09T18:22:01,096 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:206:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:01,096 206 | while (oldi < col.size() && newi < insert_col.size()) { 2025-09-09T18:22:01,096 | ~~~~~^~~~~~~~~~~~ 2025-09-09T18:22:01,096 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:206:50: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:01,096 206 | while (oldi < col.size() && newi < insert_col.size()) { 2025-09-09T18:22:01,096 | ~~~~~^~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:01,096 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:220:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:01,096 220 | while (oldi < col.size()) { 2025-09-09T18:22:01,096 | ~~~~~^~~~~~~~~~~~ 2025-09-09T18:22:01,097 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:226:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:01,097 226 | while (newi < insert_col.size()) { 2025-09-09T18:22:01,097 | ~~~~~^~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:01,419 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp: In instantiation of ‘void ColumnMatrix::insert_columns(const std::vector&, std::vector<_RealType>&) [with TC = SparseVector, unsigned int>]’: 2025-09-09T18:22:01,419 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/homology/basis.hpp:423:24: required from ‘void bats::ReducedChainComplex::update_basis_general(const Information_type&, Args ...) [with Information_type = bats::Update_info >; Args = {}; MT = ColumnMatrix, unsigned int> >]’ 2025-09-09T18:22:01,419 423 | R[k].insert_columns(add_inds, Rcol); 2025-09-09T18:22:01,419 | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 2025-09-09T18:22:01,419 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/persistence/filtered_basis.hpp:152:26: required from ‘void bats::ReducedFilteredChainComplex::update_filtration_general(const Information_type&, Args ...) [with Information_type = bats::Update_info >; Args = {}; T = double; MT = ColumnMatrix, unsigned int> >]’ 2025-09-09T18:22:01,420 152 | RC.update_basis_general(updating_information, args...); 2025-09-09T18:22:01,420 | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:01,420 bats/libbats.cpp:494:5: required from here 2025-09-09T18:22:01,420 234 | #define ReducedFilteredChainComplexInterface(T, MT, name) py::class_>(m, name)\ 2025-09-09T18:22:01,420 235 | .def(py::init<>())\ 2025-09-09T18:22:01,420 236 | .def(py::init&>())\ 2025-09-09T18:22:01,420 237 | .def(py::init&, bats::standard_reduction_flag>())\ 2025-09-09T18:22:01,420 238 | .def(py::init&, bats::standard_reduction_flag, bats::compute_basis_flag>())\ 2025-09-09T18:22:01,420 239 | .def(py::init&, bats::standard_reduction_flag, bats::clearing_flag>())\ 2025-09-09T18:22:01,421 240 | .def(py::init&, bats::standard_reduction_flag, bats::compression_flag>())\ 2025-09-09T18:22:01,421 241 | .def(py::init&, bats::extra_reduction_flag>())\ 2025-09-09T18:22:01,421 242 | .def(py::init&, bats::extra_reduction_flag, bats::compute_basis_flag>())\ 2025-09-09T18:22:01,421 243 | .def(py::init&, bats::extra_reduction_flag, bats::clearing_flag>())\ 2025-09-09T18:22:01,421 244 | .def("nnz_U", &ReducedFilteredChainComplex::get_nnz_U, "get the number of non-zeros in U")\ 2025-09-09T18:22:01,421 245 | .def("nnz_R", &ReducedFilteredChainComplex::get_nnz_R, "get the number of non-zeros in R")\ 2025-09-09T18:22:01,421 246 | .def(py::init&, bats::extra_reduction_flag, bats::compression_flag>())\ 2025-09-09T18:22:01,421 247 | .def("reduced_complex", [](ReducedFilteredChainComplex& C){return C.RC;}, "underlying reduced complex")\ 2025-09-09T18:22:01,421 248 | .def("val", [](ReducedFilteredChainComplex& C) {return C.val;}, "filtration values")\ 2025-09-09T18:22:01,421 249 | .def("perm", [](ReducedFilteredChainComplex& C) {return C.perm;}, "permutation from original order")\ 2025-09-09T18:22:01,422 250 | .def("dim", &ReducedFilteredChainComplex::dim)\ 2025-09-09T18:22:01,422 251 | .def("maxdim", &ReducedFilteredChainComplex::maxdim)\ 2025-09-09T18:22:01,422 252 | .def("representative", [](ReducedFilteredChainComplex& F, PersistencePair& p){return F.representative(p, false); })\ 2025-09-09T18:22:01,422 253 | .def("representative", [](ReducedFilteredChainComplex& F, PersistencePair& p, bool perm){return F.representative(p, perm); })\ 2025-09-09T18:22:01,422 254 | .def("persistence_pairs", [](ReducedFilteredChainComplex& F, size_t k){return F.persistence_pairs(k);} )\ 2025-09-09T18:22:01,422 255 | .def("persistence_pairs", [](ReducedFilteredChainComplex& F, size_t k, bool perm){return F.persistence_pairs(k, perm);} )\ 2025-09-09T18:22:01,422 256 | .def("update_filtration", &ReducedFilteredChainComplex::update_filtration, "update filtration with new values")\ 2025-09-09T18:22:01,422 257 | .def("update_filtration_general", &ReducedFilteredChainComplex::update_filtration_general>>, "generally update filtration with updating information")\ 2025-09-09T18:22:01,422 258 | .def("update_filtration_general", &ReducedFilteredChainComplex::update_filtration_general>>, "generally update filtration with updating information"); 2025-09-09T18:22:01,422 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:206:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:01,423 206 | while (oldi < col.size() && newi < insert_col.size()) { 2025-09-09T18:22:01,423 | ~~~~~^~~~~~~~~~~~ 2025-09-09T18:22:01,423 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:206:50: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:01,423 206 | while (oldi < col.size() && newi < insert_col.size()) { 2025-09-09T18:22:01,423 | ~~~~~^~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:01,423 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:220:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:01,423 220 | while (oldi < col.size()) { 2025-09-09T18:22:01,423 | ~~~~~^~~~~~~~~~~~ 2025-09-09T18:22:01,424 /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/BATS_include/include/linalg/col_matrix.hpp:226:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, unsigned int>, std::allocator, unsigned int> > >::size_type’ {aka ‘unsigned int’} [-Wsign-compare] 2025-09-09T18:22:01,424 226 | while (newi < insert_col.size()) { 2025-09-09T18:22:01,424 | ~~~~~^~~~~~~~~~~~~~~~~~~ 2025-09-09T18:22:29,317 virtual memory exhausted: Cannot allocate memory 2025-09-09T18:22:29,421 error: command '/usr/bin/arm-linux-gnueabihf-g++' failed with exit code 1 2025-09-09T18:22:29,568 ERROR: python setup.py bdist_wheel exited with 1 2025-09-09T18:22:29,580 [bold magenta]full command[/]: [blue]/usr/bin/python3 -u -c ' 2025-09-09T18:22:29,580 exec(compile('"'"''"'"''"'"' 2025-09-09T18:22:29,580 # This is -- a caller that pip uses to run setup.py 2025-09-09T18:22:29,580 # 2025-09-09T18:22:29,580 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-09T18:22:29,580 # import from `distutils.core` to work with newer packaging standards. 2025-09-09T18:22:29,580 # - It provides a clear error message when setuptools is not installed. 2025-09-09T18:22:29,580 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-09T18:22:29,580 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-09T18:22:29,580 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-09T18:22:29,580 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-09T18:22:29,580 import os, sys, tokenize, traceback 2025-09-09T18:22:29,580 2025-09-09T18:22:29,580 try: 2025-09-09T18:22:29,580 import setuptools 2025-09-09T18:22:29,580 except ImportError: 2025-09-09T18:22:29,580 print( 2025-09-09T18:22:29,580 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-09T18:22:29,580 "the build environment with exception:", 2025-09-09T18:22:29,580 file=sys.stderr, 2025-09-09T18:22:29,580 ) 2025-09-09T18:22:29,580 traceback.print_exc() 2025-09-09T18:22:29,580 sys.exit(1) 2025-09-09T18:22:29,580 2025-09-09T18:22:29,580 __file__ = %r 2025-09-09T18:22:29,580 sys.argv[0] = __file__ 2025-09-09T18:22:29,580 2025-09-09T18:22:29,580 if os.path.exists(__file__): 2025-09-09T18:22:29,580 filename = __file__ 2025-09-09T18:22:29,580 with tokenize.open(__file__) as f: 2025-09-09T18:22:29,580 setup_py_code = f.read() 2025-09-09T18:22:29,580 else: 2025-09-09T18:22:29,580 filename = "" 2025-09-09T18:22:29,580 setup_py_code = "from setuptools import setup; setup()" 2025-09-09T18:22:29,580 2025-09-09T18:22:29,580 exec(compile(setup_py_code, filename, "exec")) 2025-09-09T18:22:29,580 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/setup.py'"'"',), "", "exec"))' bdist_wheel -d /tmp/pip-wheel-fv0gsxnq[/] 2025-09-09T18:22:29,581 [bold magenta]cwd[/]: /tmp/pip-wheel-ujw5x0m1/bats-tda_0614f9162fe8446796e3fac0cfbaec0a/ 2025-09-09T18:22:29,581 Building wheel for bats-tda (setup.py): finished with status 'error' 2025-09-09T18:22:29,582 ERROR: Failed building wheel for bats-tda 2025-09-09T18:22:29,582 Running setup.py clean for bats-tda 2025-09-09T18:22:29,583 Running command python setup.py clean 2025-09-09T18:22:30,797 /usr/local/lib/python3.13/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2025-09-09T18:22:30,798 !! 2025-09-09T18:22:30,798 ******************************************************************************** 2025-09-09T18:22:30,798 Please consider removing the following classifiers in favor of a SPDX license expression: 2025-09-09T18:22:30,798 License :: OSI Approved :: MIT License 2025-09-09T18:22:30,798 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2025-09-09T18:22:30,799 ******************************************************************************** 2025-09-09T18:22:30,799 !! 2025-09-09T18:22:30,799 self._finalize_license_expression() 2025-09-09T18:22:30,879 running clean 2025-09-09T18:22:31,022 removing 'build/temp.linux-armv7l-cpython-313' (and everything under it) 2025-09-09T18:22:31,023 removing 'build/lib.linux-armv7l-cpython-313' (and everything under it) 2025-09-09T18:22:31,023 'build/bdist.linux-armv7l' does not exist -- can't clean it 2025-09-09T18:22:31,024 'build/scripts-3.13' does not exist -- can't clean it 2025-09-09T18:22:31,024 removing 'build' 2025-09-09T18:22:31,137 Failed to build bats-tda 2025-09-09T18:22:31,137 ERROR: Failed to build one or more wheels 2025-09-09T18:22:31,138 Exception information: 2025-09-09T18:22:31,138 Traceback (most recent call last): 2025-09-09T18:22:31,138 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-09T18:22:31,138 status = _inner_run() 2025-09-09T18:22:31,138 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-09T18:22:31,138 return self.run(options, args) 2025-09-09T18:22:31,138 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-09T18:22:31,138 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-09T18:22:31,138 return func(self, options, args) 2025-09-09T18:22:31,138 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 180, in run 2025-09-09T18:22:31,138 raise CommandError("Failed to build one or more wheels") 2025-09-09T18:22:31,138 pip._internal.exceptions.CommandError: Failed to build one or more wheels 2025-09-09T18:22:31,144 Removed build tracker: '/tmp/pip-build-tracker-94duzbye'