2025-09-08T06:40:33,954 Created temporary directory: /tmp/pip-build-tracker-oesplqww 2025-09-08T06:40:33,955 Initialized build tracking at /tmp/pip-build-tracker-oesplqww 2025-09-08T06:40:33,955 Created build tracker: /tmp/pip-build-tracker-oesplqww 2025-09-08T06:40:33,955 Entered build tracker: /tmp/pip-build-tracker-oesplqww 2025-09-08T06:40:33,955 Created temporary directory: /tmp/pip-wheel-8quglps6 2025-09-08T06:40:33,958 Created temporary directory: /tmp/pip-ephem-wheel-cache-c9hw94cw 2025-09-08T06:40:34,017 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-08T06:40:34,020 2 location(s) to search for versions of sparse-dot: 2025-09-08T06:40:34,020 * https://pypi.org/simple/sparse-dot/ 2025-09-08T06:40:34,020 * https://www.piwheels.org/simple/sparse-dot/ 2025-09-08T06:40:34,020 Fetching project page and analyzing links: https://pypi.org/simple/sparse-dot/ 2025-09-08T06:40:34,020 Getting page https://pypi.org/simple/sparse-dot/ 2025-09-08T06:40:34,022 Found index url https://pypi.org/simple/ 2025-09-08T06:40:34,091 Fetched page https://pypi.org/simple/sparse-dot/ as application/vnd.pypi.simple.v1+json 2025-09-08T06:40:34,092 Found link https://files.pythonhosted.org/packages/94/2c/97f327d36c391c259b3f31a1cbe3a4d2e6a67b937931b5876311cff0a2f2/sparse_dot-0.1.1.0.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.1.0 2025-09-08T06:40:34,093 Found link https://files.pythonhosted.org/packages/8e/af/0bb4a1c46f5855331bf0cbc96df2a274b103d64961401ebf26ca82a7d719/sparse_dot-0.1.2.0.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.2.0 2025-09-08T06:40:34,093 Found link https://files.pythonhosted.org/packages/9e/a9/68df8c31d82fbe9d5a0e1aa07d8c5f7c9306954884ba8f9a5d7428a19b4a/sparse_dot-0.1.2.1.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.2.1 2025-09-08T06:40:34,093 Found link https://files.pythonhosted.org/packages/ec/ad/6ddd72087adffb4710c8d5b43bab5559cef6c131f9aa3a79f53685ad100e/sparse_dot-0.1.3.0.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.3.0 2025-09-08T06:40:34,093 Found link https://files.pythonhosted.org/packages/21/00/b0b6bf28495a29478fbc505dcaee1529bd153fbc30530c6519578b775f12/sparse_dot-0.1.4.0.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.4.0 2025-09-08T06:40:34,094 Found link https://files.pythonhosted.org/packages/92/08/8869b3d0627a72ad54d43941f48163a644f6ec6987c144e6cd486ed98948/sparse_dot-0.1.4.1.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.4.1 2025-09-08T06:40:34,094 Found link https://files.pythonhosted.org/packages/ca/e4/87348b20ab3688986101934d8d9892ec3ed637ba57d33d89cdb3f537e20c/sparse_dot-0.1.4.2.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.4.2 2025-09-08T06:40:34,094 Found link https://files.pythonhosted.org/packages/75/b8/18a127fe5c1a35c515fb17919071f1722701ab9f8653d5a48986f51e42c0/sparse_dot-0.1.4.3.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.4.3 2025-09-08T06:40:34,094 Found link https://files.pythonhosted.org/packages/c2/50/fe45fb073c2c2713e3339a64380f87aa506ab508dd84bd98a88a043bf7f9/sparse_dot-0.1.4.4.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.1.4.4 2025-09-08T06:40:34,095 Found link https://files.pythonhosted.org/packages/b0/78/baeb23e0fd0419c1c64400f0cbeff0587919946973b9f4b8d72a76ec28c3/sparse_dot-0.2.0.0.tar.gz (from https://pypi.org/simple/sparse-dot/), version: 0.2.0.0 2025-09-08T06:40:34,095 Fetching project page and analyzing links: https://www.piwheels.org/simple/sparse-dot/ 2025-09-08T06:40:34,095 Getting page https://www.piwheels.org/simple/sparse-dot/ 2025-09-08T06:40:34,096 Found index url https://www.piwheels.org/simple/ 2025-09-08T06:40:34,186 Fetched page https://www.piwheels.org/simple/sparse-dot/ as text/html 2025-09-08T06:40:34,194 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.2.0.0-cp39-cp39-linux_armv6l.whl#sha256=fc2a5f3e3e9694d648953761c2ec720857550056258c2ae696dca8f912b437c3 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,194 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.2.0.0-cp39-cp39-linux_armv7l.whl#sha256=fc2a5f3e3e9694d648953761c2ec720857550056258c2ae696dca8f912b437c3 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,194 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.2.0.0-cp34-cp34m-linux_armv7l.whl#sha256=ced0aff26fc6ab26fa7c745563ecf4dce3a2419ad2dc753e86c8722ad2c161b7 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,194 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.2.0.0-cp34-cp34m-linux_armv6l.whl#sha256=ced0aff26fc6ab26fa7c745563ecf4dce3a2419ad2dc753e86c8722ad2c161b7 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,194 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.2.0.0-cp35-cp35m-linux_armv6l.whl#sha256=c436d170cdd54b0d31c4fd02ef466575d1ba7dc39330145c1d1f07bbd5c79e96 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,195 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.2.0.0-cp35-cp35m-linux_armv7l.whl#sha256=c436d170cdd54b0d31c4fd02ef466575d1ba7dc39330145c1d1f07bbd5c79e96 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,195 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.2.0.0-cp37-cp37m-linux_armv6l.whl#sha256=fe6eba0d8158cbe55c3dd81f61947e9ede84204f05b6ebecdd7661b4256b0394 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,195 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.2.0.0-cp37-cp37m-linux_armv7l.whl#sha256=fe6eba0d8158cbe55c3dd81f61947e9ede84204f05b6ebecdd7661b4256b0394 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,195 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.4-cp35-cp35m-linux_armv7l.whl#sha256=b7ee09842186196327ac71c9c55ff993c00d9a62cebe44926963b5d20f2d4396 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,195 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.4-cp35-cp35m-linux_armv6l.whl#sha256=b7ee09842186196327ac71c9c55ff993c00d9a62cebe44926963b5d20f2d4396 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,195 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.4-cp34-cp34m-linux_armv7l.whl#sha256=82503fb847833ed2335e8432dfee8c7d6e1f679077ce3b9456adb3f25c78eedb (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,195 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.4-cp34-cp34m-linux_armv6l.whl#sha256=82503fb847833ed2335e8432dfee8c7d6e1f679077ce3b9456adb3f25c78eedb (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,196 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.4-cp37-cp37m-linux_armv7l.whl#sha256=62a2f6cd7f504904b7fb86a78ae97333d4715d1f0d34f98b6ea8baca28852ea7 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,196 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.4-cp37-cp37m-linux_armv6l.whl#sha256=62a2f6cd7f504904b7fb86a78ae97333d4715d1f0d34f98b6ea8baca28852ea7 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,196 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.3-cp34-cp34m-linux_armv7l.whl#sha256=8cbc88163ea2764a95e6044f998ef30ad2ca12071513056446c4cbf427a4f7dc (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,196 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.3-cp34-cp34m-linux_armv6l.whl#sha256=8cbc88163ea2764a95e6044f998ef30ad2ca12071513056446c4cbf427a4f7dc (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,196 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.3-cp35-cp35m-linux_armv6l.whl#sha256=35fe359140da78479c0dc9031acae5512279bbcc793c2f4448c704df4157a360 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,196 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.3-cp35-cp35m-linux_armv7l.whl#sha256=35fe359140da78479c0dc9031acae5512279bbcc793c2f4448c704df4157a360 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,196 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.3-cp37-cp37m-linux_armv7l.whl#sha256=d302ea54d4b9f23eb1bbc0de8023dec851da90a756895aa87a632895c67cc0c3 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,196 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.3-cp37-cp37m-linux_armv6l.whl#sha256=d302ea54d4b9f23eb1bbc0de8023dec851da90a756895aa87a632895c67cc0c3 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,197 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.2-cp34-cp34m-linux_armv7l.whl#sha256=ccf9324a8a2cf916e68bb5d4a063379960bae8921dd9eb5516b187df61f80330 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,197 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.2-cp34-cp34m-linux_armv6l.whl#sha256=ccf9324a8a2cf916e68bb5d4a063379960bae8921dd9eb5516b187df61f80330 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,197 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.1-cp34-cp34m-linux_armv7l.whl#sha256=52933210fd2c10a1f2f9510c5c0fc7bf09e40b6d5e3299e4eb69731bfaf0087f (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,197 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.1-cp34-cp34m-linux_armv6l.whl#sha256=52933210fd2c10a1f2f9510c5c0fc7bf09e40b6d5e3299e4eb69731bfaf0087f (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,197 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.4.0-py3-none-any.whl#sha256=eb69de12285afefd50dd28a7abde662767e9f8abc9ed1cbfff6dc01ae01c715b (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,197 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.3.0-py3-none-any.whl#sha256=56257b646bcb457d5bea62642a53ad249866a90dc897a6575a5a3413d82996ad (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,197 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.2.1-py3-none-any.whl#sha256=4072ab7b96df87faf926feddfface48f9cbe98770bb05bdc141b123e4c092fdb (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,198 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.2.0-py3-none-any.whl#sha256=232ffd7b318e792064bbd836c0d3462c8dd3142ab87f1bc6178b19f916063d0d (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,198 Skipping link: No binaries permitted for sparse-dot: https://archive1.piwheels.org/simple/sparse-dot/sparse_dot-0.1.1.0-py3-none-any.whl#sha256=fd9260e5d201c248ad0d9bd00f1036630bbeb10770dfd2b7a4302593955444c2 (from https://www.piwheels.org/simple/sparse-dot/) 2025-09-08T06:40:34,198 Skipping link: not a file: https://www.piwheels.org/simple/sparse-dot/ 2025-09-08T06:40:34,198 Skipping link: not a file: https://pypi.org/simple/sparse-dot/ 2025-09-08T06:40:34,223 Given no hashes to check 1 links for project 'sparse-dot': discarding no candidates 2025-09-08T06:40:34,224 Collecting sparse-dot==0.1.4.3 2025-09-08T06:40:34,225 Created temporary directory: /tmp/pip-unpack-fmmidn7d 2025-09-08T06:40:34,359 Downloading sparse_dot-0.1.4.3.tar.gz (34 kB) 2025-09-08T06:40:34,395 Added sparse-dot==0.1.4.3 from https://files.pythonhosted.org/packages/75/b8/18a127fe5c1a35c515fb17919071f1722701ab9f8653d5a48986f51e42c0/sparse_dot-0.1.4.3.tar.gz to build tracker '/tmp/pip-build-tracker-oesplqww' 2025-09-08T06:40:34,396 Running setup.py (path:/tmp/pip-wheel-8quglps6/sparse-dot_078cbbe8e8d54374b068f6b7a46de40c/setup.py) egg_info for package sparse-dot 2025-09-08T06:40:34,396 Created temporary directory: /tmp/pip-pip-egg-info-2lllu1mc 2025-09-08T06:40:34,396 Preparing metadata (setup.py): started 2025-09-08T06:40:34,397 Running command python setup.py egg_info 2025-09-08T06:40:36,359 Error compiling Cython file: 2025-09-08T06:40:36,360 ------------------------------------------------------------ 2025-09-08T06:40:36,360 ... 2025-09-08T06:40:36,360 cimport c_python 2025-09-08T06:40:36,360 ^ 2025-09-08T06:40:36,360 ------------------------------------------------------------ 2025-09-08T06:40:36,360 sparse_dot/cy_sparse_dot.pyx:1:8: 'c_python.pxd' not found 2025-09-08T06:40:36,387 Error compiling Cython file: 2025-09-08T06:40:36,387 ------------------------------------------------------------ 2025-09-08T06:40:36,387 ... 2025-09-08T06:40:36,387 cimport c_python 2025-09-08T06:40:36,387 cimport c_numpy 2025-09-08T06:40:36,387 ^ 2025-09-08T06:40:36,387 ------------------------------------------------------------ 2025-09-08T06:40:36,388 sparse_dot/cy_sparse_dot.pyx:2:8: 'c_numpy.pxd' not found 2025-09-08T06:40:36,427 Error compiling Cython file: 2025-09-08T06:40:36,427 ------------------------------------------------------------ 2025-09-08T06:40:36,427 ... 2025-09-08T06:40:36,427 '''Takes a python dictionary of arrays and fill a SparseArrayF 2025-09-08T06:40:36,427 The expected input format for the input_dict is: 2025-09-08T06:40:36,427 {'locs': , 2025-09-08T06:40:36,428 'array': } 2025-09-08T06:40:36,428 ''' 2025-09-08T06:40:36,428 cdef c_numpy.ndarray locs_cn = input_dict['locs'] 2025-09-08T06:40:36,428 ^ 2025-09-08T06:40:36,428 ------------------------------------------------------------ 2025-09-08T06:40:36,428 sparse_dot/cy_sparse_dot.pyx:48:9: 'ndarray' is not a type identifier 2025-09-08T06:40:36,428 Error compiling Cython file: 2025-09-08T06:40:36,428 ------------------------------------------------------------ 2025-09-08T06:40:36,429 ... 2025-09-08T06:40:36,429 The expected input format for the input_dict is: 2025-09-08T06:40:36,429 {'locs': , 2025-09-08T06:40:36,429 'array': } 2025-09-08T06:40:36,429 ''' 2025-09-08T06:40:36,429 cdef c_numpy.ndarray locs_cn = input_dict['locs'] 2025-09-08T06:40:36,429 cdef c_numpy.ndarray array_cn = input_dict['array'] 2025-09-08T06:40:36,429 ^ 2025-09-08T06:40:36,429 ------------------------------------------------------------ 2025-09-08T06:40:36,429 sparse_dot/cy_sparse_dot.pyx:49:9: 'ndarray' is not a type identifier 2025-09-08T06:40:36,430 Error compiling Cython file: 2025-09-08T06:40:36,430 ------------------------------------------------------------ 2025-09-08T06:40:36,430 ... 2025-09-08T06:40:36,430 # * Makes a C double pointer (array-of-arrays) of SparseResult's 2025-09-08T06:40:36,430 # * Sets the pointers to each of the numpy sub-arrays (each is num_items) 2025-09-08T06:40:36,430 # Each thread then gets it's own num_items length buffer to store its result 2025-09-08T06:40:36,430 sparse_results_tmp_arr = np.zeros((num_threads, num_items), # Make sure each thread uses separate memory 2025-09-08T06:40:36,430 dtype=SPARSE_RESULTS_DTYPE) 2025-09-08T06:40:36,430 cdef c_numpy.ndarray sparse_results_cn 2025-09-08T06:40:36,431 ^ 2025-09-08T06:40:36,431 ------------------------------------------------------------ 2025-09-08T06:40:36,431 sparse_dot/cy_sparse_dot.pyx:91:9: 'ndarray' is not a type identifier 2025-09-08T06:40:36,441 Error compiling Cython file: 2025-09-08T06:40:36,441 ------------------------------------------------------------ 2025-09-08T06:40:36,441 ... 2025-09-08T06:40:36,441 'array': } 2025-09-08T06:40:36,441 ''' 2025-09-08T06:40:36,441 cdef c_numpy.ndarray locs_cn = input_dict['locs'] 2025-09-08T06:40:36,441 cdef c_numpy.ndarray array_cn = input_dict['array'] 2025-09-08T06:40:36,442 saf[saf_ind].locs = locs_cn.data 2025-09-08T06:40:36,442 ^ 2025-09-08T06:40:36,442 ------------------------------------------------------------ 2025-09-08T06:40:36,442 sparse_dot/cy_sparse_dot.pyx:51:24: Python objects cannot be cast to pointers of primitive types 2025-09-08T06:40:36,442 Error compiling Cython file: 2025-09-08T06:40:36,442 ------------------------------------------------------------ 2025-09-08T06:40:36,442 ... 2025-09-08T06:40:36,442 ''' 2025-09-08T06:40:36,443 cdef c_numpy.ndarray locs_cn = input_dict['locs'] 2025-09-08T06:40:36,443 cdef c_numpy.ndarray array_cn = input_dict['array'] 2025-09-08T06:40:36,443 saf[saf_ind].locs = locs_cn.data 2025-09-08T06:40:36,443 saf[saf_ind].array = array_cn.data 2025-09-08T06:40:36,443 ^ 2025-09-08T06:40:36,443 ------------------------------------------------------------ 2025-09-08T06:40:36,443 sparse_dot/cy_sparse_dot.pyx:52:25: Python objects cannot be cast to pointers of primitive types 2025-09-08T06:40:36,487 Traceback (most recent call last): 2025-09-08T06:40:36,489 File "", line 2, in 2025-09-08T06:40:36,489 exec(compile(''' 2025-09-08T06:40:36,489 ~~~~^^^^^^^^^^^^ 2025-09-08T06:40:36,490 # This is -- a caller that pip uses to run setup.py 2025-09-08T06:40:36,490 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,490 ...<32 lines>... 2025-09-08T06:40:36,490 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T06:40:36,490 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,490 ''' % ('/tmp/pip-wheel-8quglps6/sparse-dot_078cbbe8e8d54374b068f6b7a46de40c/setup.py',), "", "exec")) 2025-09-08T06:40:36,490 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,490 File "", line 35, in 2025-09-08T06:40:36,490 File "/tmp/pip-wheel-8quglps6/sparse-dot_078cbbe8e8d54374b068f6b7a46de40c/setup.py", line 45, in 2025-09-08T06:40:36,491 ext_modules=cythonize(extensions, 2025-09-08T06:40:36,491 ~~~~~~~~~^^^^^^^^^^^^ 2025-09-08T06:40:36,491 nthreads=nthreads), 2025-09-08T06:40:36,491 ^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,491 File "/usr/local/lib/python3.13/dist-packages/Cython/Build/Dependencies.py", line 1154, in cythonize 2025-09-08T06:40:36,491 cythonize_one(*args) 2025-09-08T06:40:36,491 ~~~~~~~~~~~~~^^^^^^^ 2025-09-08T06:40:36,491 File "/usr/local/lib/python3.13/dist-packages/Cython/Build/Dependencies.py", line 1298, in cythonize_one 2025-09-08T06:40:36,491 raise CompileError(None, pyx_file) 2025-09-08T06:40:36,491 Cython.Compiler.Errors.CompileError: sparse_dot/cy_sparse_dot.pyx 2025-09-08T06:40:36,492 Compiling sparse_dot/cy_sparse_dot.pyx because it changed. 2025-09-08T06:40:36,492 [1/1] Cythonizing sparse_dot/cy_sparse_dot.pyx 2025-09-08T06:40:36,738 ERROR: python setup.py egg_info exited with 1 2025-09-08T06:40:36,751 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-08T06:40:36,751 exec(compile('"'"''"'"''"'"' 2025-09-08T06:40:36,751 # This is -- a caller that pip uses to run setup.py 2025-09-08T06:40:36,751 # 2025-09-08T06:40:36,751 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-08T06:40:36,751 # import from `distutils.core` to work with newer packaging standards. 2025-09-08T06:40:36,751 # - It provides a clear error message when setuptools is not installed. 2025-09-08T06:40:36,751 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-08T06:40:36,751 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-08T06:40:36,751 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-08T06:40:36,751 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-08T06:40:36,751 import os, sys, tokenize, traceback 2025-09-08T06:40:36,751 2025-09-08T06:40:36,751 try: 2025-09-08T06:40:36,751 import setuptools 2025-09-08T06:40:36,751 except ImportError: 2025-09-08T06:40:36,751 print( 2025-09-08T06:40:36,751 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-08T06:40:36,751 "the build environment with exception:", 2025-09-08T06:40:36,751 file=sys.stderr, 2025-09-08T06:40:36,751 ) 2025-09-08T06:40:36,751 traceback.print_exc() 2025-09-08T06:40:36,751 sys.exit(1) 2025-09-08T06:40:36,751 2025-09-08T06:40:36,751 __file__ = %r 2025-09-08T06:40:36,751 sys.argv[0] = __file__ 2025-09-08T06:40:36,751 2025-09-08T06:40:36,751 if os.path.exists(__file__): 2025-09-08T06:40:36,751 filename = __file__ 2025-09-08T06:40:36,751 with tokenize.open(__file__) as f: 2025-09-08T06:40:36,751 setup_py_code = f.read() 2025-09-08T06:40:36,751 else: 2025-09-08T06:40:36,751 filename = "" 2025-09-08T06:40:36,751 setup_py_code = "from setuptools import setup; setup()" 2025-09-08T06:40:36,751 2025-09-08T06:40:36,751 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T06:40:36,751 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-8quglps6/sparse-dot_078cbbe8e8d54374b068f6b7a46de40c/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-2lllu1mc[/] 2025-09-08T06:40:36,751 [bold magenta]cwd[/]: /tmp/pip-wheel-8quglps6/sparse-dot_078cbbe8e8d54374b068f6b7a46de40c/ 2025-09-08T06:40:36,751 Preparing metadata (setup.py): finished with status 'error' 2025-09-08T06:40:36,752 ERROR: metadata generation failed 2025-09-08T06:40:36,757 Exception information: 2025-09-08T06:40:36,757 Traceback (most recent call last): 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-08T06:40:36,757 call_subprocess( 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~^ 2025-09-08T06:40:36,757 args, 2025-09-08T06:40:36,757 ^^^^^ 2025-09-08T06:40:36,757 ...<2 lines>... 2025-09-08T06:40:36,757 spinner=spinner, 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 ) 2025-09-08T06:40:36,757 ^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-08T06:40:36,757 raise error 2025-09-08T06:40:36,757 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-08T06:40:36,757 2025-09-08T06:40:36,757 The above exception was the direct cause of the following exception: 2025-09-08T06:40:36,757 2025-09-08T06:40:36,757 Traceback (most recent call last): 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-08T06:40:36,757 status = _inner_run() 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-08T06:40:36,757 return self.run(options, args) 2025-09-08T06:40:36,757 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-08T06:40:36,757 return func(self, options, args) 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-08T06:40:36,757 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-08T06:40:36,757 result = self._result = resolver.resolve( 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~^ 2025-09-08T06:40:36,757 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 ) 2025-09-08T06:40:36,757 ^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-08T06:40:36,757 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-08T06:40:36,757 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-08T06:40:36,757 if not criterion.candidates: 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-08T06:40:36,757 return bool(self._sequence) 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-08T06:40:36,757 self._bool = any(self) 2025-09-08T06:40:36,757 ~~~^^^^^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-08T06:40:36,757 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-08T06:40:36,757 ^^^^^^^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-08T06:40:36,757 candidate = func() 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-08T06:40:36,757 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T06:40:36,757 link, template, name, version 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 ) 2025-09-08T06:40:36,757 ^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-08T06:40:36,757 self._link_candidate_cache[link] = LinkCandidate( 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~^ 2025-09-08T06:40:36,757 link, 2025-09-08T06:40:36,757 ^^^^^ 2025-09-08T06:40:36,757 ...<3 lines>... 2025-09-08T06:40:36,757 version=version, 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 ) 2025-09-08T06:40:36,757 ^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-08T06:40:36,757 super().__init__( 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~^ 2025-09-08T06:40:36,757 link=link, 2025-09-08T06:40:36,757 ^^^^^^^^^^ 2025-09-08T06:40:36,757 ...<4 lines>... 2025-09-08T06:40:36,757 version=version, 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 ) 2025-09-08T06:40:36,757 ^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-08T06:40:36,757 self.dist = self._prepare() 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-08T06:40:36,757 dist = self._prepare_distribution() 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-08T06:40:36,757 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-08T06:40:36,757 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-08T06:40:36,757 dist = _get_prepared_distribution( 2025-09-08T06:40:36,757 req, 2025-09-08T06:40:36,757 ...<3 lines>... 2025-09-08T06:40:36,757 self.check_build_deps, 2025-09-08T06:40:36,757 ) 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-08T06:40:36,757 abstract_dist.prepare_distribution_metadata( 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T06:40:36,757 finder, build_isolation, check_build_deps 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 ) 2025-09-08T06:40:36,757 ^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-08T06:40:36,757 self.req.prepare_metadata() 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-08T06:40:36,757 self.metadata_directory = generate_metadata_legacy( 2025-09-08T06:40:36,757 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T06:40:36,757 build_env=self.build_env, 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 ...<3 lines>... 2025-09-08T06:40:36,757 details=details, 2025-09-08T06:40:36,757 ^^^^^^^^^^^^^^^^ 2025-09-08T06:40:36,757 ) 2025-09-08T06:40:36,757 ^ 2025-09-08T06:40:36,757 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-08T06:40:36,757 raise MetadataGenerationFailed(package_details=details) from error 2025-09-08T06:40:36,757 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-08T06:40:36,778 Removed sparse-dot==0.1.4.3 from https://files.pythonhosted.org/packages/75/b8/18a127fe5c1a35c515fb17919071f1722701ab9f8653d5a48986f51e42c0/sparse_dot-0.1.4.3.tar.gz from build tracker '/tmp/pip-build-tracker-oesplqww' 2025-09-08T06:40:36,779 Removed build tracker: '/tmp/pip-build-tracker-oesplqww'