2026-04-22T22:05:13,994 Created temporary directory: /tmp/pip-ephem-wheel-cache-ax4d5_yo 2026-04-22T22:05:13,996 Created temporary directory: /tmp/pip-build-tracker-puytu1wm 2026-04-22T22:05:13,997 Initialized build tracking at /tmp/pip-build-tracker-puytu1wm 2026-04-22T22:05:13,997 Created build tracker: /tmp/pip-build-tracker-puytu1wm 2026-04-22T22:05:13,998 Entered build tracker: /tmp/pip-build-tracker-puytu1wm 2026-04-22T22:05:13,999 Created temporary directory: /tmp/pip-wheel-1b45khyi 2026-04-22T22:05:14,001 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-04-22T22:05:14,004 Created temporary directory: /tmp/pip-ephem-wheel-cache-bz3cgab9 2026-04-22T22:05:14,026 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-04-22T22:05:14,029 2 location(s) to search for versions of keplergl: 2026-04-22T22:05:14,029 * https://pypi.org/simple/keplergl/ 2026-04-22T22:05:14,029 * https://www.piwheels.org/simple/keplergl/ 2026-04-22T22:05:14,030 Fetching project page and analyzing links: https://pypi.org/simple/keplergl/ 2026-04-22T22:05:14,031 Getting page https://pypi.org/simple/keplergl/ 2026-04-22T22:05:14,032 Found index url https://pypi.org/simple 2026-04-22T22:05:14,266 Fetched page https://pypi.org/simple/keplergl/ as application/vnd.pypi.simple.v1+json 2026-04-22T22:05:14,272 Found link https://files.pythonhosted.org/packages/31/d8/67c4670b771d4833444a2b8b5a041f6d7c806c30df4e8c411c33fc0e2caa/keplergl-0.1.0a5.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.0a5 2026-04-22T22:05:14,273 Found link https://files.pythonhosted.org/packages/18/df/d5ac35d9be7bbafff99f4e0544b6708fce22829c2af94d0fc24744e8881a/keplergl-0.1.0a6.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.0a6 2026-04-22T22:05:14,274 Found link https://files.pythonhosted.org/packages/a0/78/3ec18827bf9f1a9ab19f348ae1704cd89bf8791616d00c798d1d76403272/keplergl-0.1.0a7.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.0a7 2026-04-22T22:05:14,274 Found link https://files.pythonhosted.org/packages/a2/57/160e0517679ce69600cfa1eeef6da96aba6a584ea38293e909c5c45da3f6/keplergl-0.1.0a8.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.0a8 2026-04-22T22:05:14,275 Found link https://files.pythonhosted.org/packages/16/0d/a8939bf9b1157b0c6b0470701724aad2909873d44f97905be78e52b3e2f3/keplergl-0.1.0a9.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.0a9 2026-04-22T22:05:14,276 Found link https://files.pythonhosted.org/packages/1b/75/9e30ef5d324f25863ac9217e9a19dfbe5757cc622cef84d28632efecd904/keplergl-0.1.0.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.0 2026-04-22T22:05:14,277 Found link https://files.pythonhosted.org/packages/1f/b5/80a1a696924da1f79e23a9ac74ba1c17801541edaef365f584c4b5e1401d/keplergl-0.1.1a0.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.1a0 2026-04-22T22:05:14,277 Found link https://files.pythonhosted.org/packages/f2/13/7b195b0a3b3509578aab9ed6a7d5f4c14505fee025922ab65a7bc6307fdc/keplergl-0.1.1.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.1 2026-04-22T22:05:14,278 Found link https://files.pythonhosted.org/packages/e6/2f/27093b60328cc13a1f71aed25ee9f63c0a2094efd931a7275da33b297975/keplergl-0.1.2.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.1.2 2026-04-22T22:05:14,279 Found link https://files.pythonhosted.org/packages/2e/f3/1205735e116d1837651b7a554f914588868431737c05fe390ccf4dff8e7e/keplergl-0.2.0.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.2.0 2026-04-22T22:05:14,279 Found link https://files.pythonhosted.org/packages/2f/a0/ea13a2cc4071fddc91a6ea530d0349e4b943a4a8839209a7facecee37db3/keplergl-0.2.1.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.2.1 2026-04-22T22:05:14,280 Found link https://files.pythonhosted.org/packages/0c/2c/a2d742fc409de354cb2f8f57b802cbb2e1b18e372e755d99a95314adfd73/keplergl-0.2.2.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.2.2 2026-04-22T22:05:14,281 Found link https://files.pythonhosted.org/packages/b6/68/45d1f3fcd8effdb518ca87e4cd86e49dd4d658f7547109a809031216d4d1/keplergl-0.3.0.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.0 2026-04-22T22:05:14,282 Found link https://files.pythonhosted.org/packages/60/57/610e85131c999e17bf7f78e58e9dc2a479c6ea63de8e30f3d52042bca5bb/keplergl-0.3.1.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.1 2026-04-22T22:05:14,282 Found link https://files.pythonhosted.org/packages/f0/b7/e36a95d722233af09e136855142c71a8f2327715f240552d72bc6b814a02/keplergl-0.3.2.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.2 2026-04-22T22:05:14,283 Found link https://files.pythonhosted.org/packages/bf/e5/c9289028b17f36f3c51812c40e087d951db8bc99ca3648a943ad9d01438b/keplergl-0.3.4a0.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.4a0 2026-04-22T22:05:14,284 Found link https://files.pythonhosted.org/packages/e6/eb/ccc3993bb4b2f1eb4c3db1190dd36bfe06214e0db2bbd73be40f699360d7/keplergl-0.3.4a1.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.4a1 2026-04-22T22:05:14,284 Found link https://files.pythonhosted.org/packages/fc/61/ad78a4a4a2f386e5607813af192540b597dfd609f1324c718c6285d12cf6/keplergl-0.3.4a2.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.4a2 2026-04-22T22:05:14,285 Found link https://files.pythonhosted.org/packages/da/42/0c5aff72be1f1f28e1f484c8a6e003e32e2c2a4b105ca6fe6cb5393dfd06/keplergl-0.3.4a3.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.4a3 2026-04-22T22:05:14,285 Found link https://files.pythonhosted.org/packages/ee/4a/d2fb22c5bb49ae6e04556510d8ebb30d2f6baa980b6a2b9e59df490f8b16/keplergl-0.3.4a4.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.4a4 2026-04-22T22:05:14,286 Found link https://files.pythonhosted.org/packages/7f/75/dbb069a66382bb72009867183aaa2e235c638ead24e1ae747513c5e8faf6/keplergl-0.3.4.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.4 2026-04-22T22:05:14,287 Found link https://files.pythonhosted.org/packages/18/d2/7cb0acdfbae69083704169e78a42343d2b53163ff462c4c964b8523bf8f8/keplergl-0.3.5.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.5 2026-04-22T22:05:14,287 Found link https://files.pythonhosted.org/packages/1f/11/77ba4458aca67b4abbb05b684d55363650ae267ec379ed34731e736f44f0/keplergl-0.3.6.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.6 2026-04-22T22:05:14,288 Found link https://files.pythonhosted.org/packages/a0/1e/adc9406362eba310840634c1482c016a49c60ab576daeeb4fee1c595ddae/keplergl-0.3.7.tar.gz (from https://pypi.org/simple/keplergl/), version: 0.3.7 2026-04-22T22:05:14,289 Skipping link: No binaries permitted for keplergl: https://files.pythonhosted.org/packages/33/bc/c62634066fa2ee1d52ff358b58acebc70afe1fe8d3f4f4161eb845629ac9/keplergl-0.4.0rc1-py3-none-any.whl (from https://pypi.org/simple/keplergl/) (requires-python:>=3.9) 2026-04-22T22:05:14,290 Found link https://files.pythonhosted.org/packages/cc/39/d1ccff224eda1b0563575419ca864c0f412e1ef447cd42a58f94c243eb80/keplergl-0.4.0rc1.tar.gz (from https://pypi.org/simple/keplergl/) (requires-python:>=3.9), version: 0.4.0rc1 2026-04-22T22:05:14,291 Skipping link: No binaries permitted for keplergl: https://files.pythonhosted.org/packages/ec/e2/41e8db137add453bb93ed03faa5573c9e67d5f7773efacff6aa87d1f9a89/keplergl-0.4.0rc2-py3-none-any.whl (from https://pypi.org/simple/keplergl/) (requires-python:>=3.9) 2026-04-22T22:05:14,291 Found link https://files.pythonhosted.org/packages/ed/f5/963451f4d5ce3d2cfb9002307702fef80eaaab4f39723d949f58d202854b/keplergl-0.4.0rc2.tar.gz (from https://pypi.org/simple/keplergl/) (requires-python:>=3.9), version: 0.4.0rc2 2026-04-22T22:05:14,292 Fetching project page and analyzing links: https://www.piwheels.org/simple/keplergl/ 2026-04-22T22:05:14,293 Getting page https://www.piwheels.org/simple/keplergl/ 2026-04-22T22:05:14,295 Found index url https://www.piwheels.org/simple 2026-04-22T22:05:14,462 Fetched page https://www.piwheels.org/simple/keplergl/ as text/html 2026-04-22T22:05:14,467 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.3.2-py2.py3-none-any.whl#sha256=99af00bbe680b07e741414155e8b92dbc97b6964cb9e657a7a5bb535a3e93a71 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,468 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.3.1-py2.py3-none-any.whl#sha256=49e76c6b881a20bdb5475decea341dde1c67d75fb2e8044d46e2ab9358928a26 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,468 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.3.0-py2.py3-none-any.whl#sha256=dacd43c6f2072878e38443328d221c5aae2777b5bbd9585e90d5b9fee8f6d1b0 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,469 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.2.2-py2.py3-none-any.whl#sha256=f7aa60d1c01874c498df8a5632cf29492e3cd83eddd6b3429d50a7020585831e (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,469 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.2.1-py2.py3-none-any.whl#sha256=8f9edb1d8368424738067f67944a756f830a7f5d502b43aed61789c28b2fb4f6 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,470 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.2.0-py2.py3-none-any.whl#sha256=38183beb3b06f090c339a7f3115fc289178fb95d361c76df9f3768326f1db4ef (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,470 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.2-py2.py3-none-any.whl#sha256=17ffada8f93ef252189c70ab9c235e29319130d7e9388d512dac66064019995f (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,471 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.1-py2.py3-none-any.whl#sha256=e441ef5aa468788b886b20dbb50691418466e85d53aaf12b7a1da5bcf57f3078 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,471 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.1a0-py2.py3-none-any.whl#sha256=c8aeb169b8778cc6398020987035b7f823f012e575ec0ce0546230a1be65e597 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,472 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.0-py2.py3-none-any.whl#sha256=07ed7ece4c5d6a75a045c071e02f1e3516c2b2f34cd0567290b8f0e353945bf2 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,473 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.0a9-py2.py3-none-any.whl#sha256=2624670c811e1e06d4e7091639cd5cc0a19b6e125210d0aae78b183b16fffa09 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,473 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.0a8-py2.py3-none-any.whl#sha256=22f56832202189be7fa08c480cd676eeff9958e957b4add204e93da53adf7098 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,474 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.0a7-py2.py3-none-any.whl#sha256=983f56e8ac97baffe02fd6365bde12f2d4075adcc7216fa290c152ac131e0b04 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,474 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.0a6-py2.py3-none-any.whl#sha256=b064936b82518821c0855cb3f3bf5849381b255c2ef52d13f934906725b69c73 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,475 Skipping link: No binaries permitted for keplergl: https://archive1.piwheels.org/simple/keplergl/keplergl-0.1.0a5-py2.py3-none-any.whl#sha256=6f58fa688a067a1ab76d2ea5b43e3a932bbb8d112a75d46a184a8432f288e8c2 (from https://www.piwheels.org/simple/keplergl/) 2026-04-22T22:05:14,476 Skipping link: not a file: https://www.piwheels.org/simple/keplergl/ 2026-04-22T22:05:14,476 Skipping link: not a file: https://pypi.org/simple/keplergl/ 2026-04-22T22:05:14,500 Given no hashes to check 1 links for project 'keplergl': discarding no candidates 2026-04-22T22:05:14,519 Collecting keplergl==0.4.0rc2 2026-04-22T22:05:14,522 Created temporary directory: /tmp/pip-unpack-gp1vlxz2 2026-04-22T22:05:14,761 Downloading keplergl-0.4.0rc2.tar.gz (3.8 MB) 2026-04-22T22:05:17,435 Added keplergl==0.4.0rc2 from https://files.pythonhosted.org/packages/ed/f5/963451f4d5ce3d2cfb9002307702fef80eaaab4f39723d949f58d202854b/keplergl-0.4.0rc2.tar.gz to build tracker '/tmp/pip-build-tracker-puytu1wm' 2026-04-22T22:05:17,441 Created temporary directory: /tmp/pip-build-env-89zm9fql 2026-04-22T22:05:17,445 Installing build dependencies: started 2026-04-22T22:05:17,446 Running command pip subprocess to install build dependencies 2026-04-22T22:05:17,477 Error processing line 1 of /home/piwheels/.local/lib/python3.11/site-packages/outofcuda_hook.pth: 2026-04-22T22:05:17,516 Traceback (most recent call last): 2026-04-22T22:05:17,517 File "", line 192, in addpackage 2026-04-22T22:05:17,517 File "", line 1, in 2026-04-22T22:05:17,518 ModuleNotFoundError: No module named 'outofcuda' 2026-04-22T22:05:17,519 Remainder of file ignored 2026-04-22T22:05:18,602 Using pip 23.0.1 from /usr/lib/python3/dist-packages/pip (python 3.11) 2026-04-22T22:05:19,014 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-04-22T22:05:19,037 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-04-22T22:05:19,558 Collecting hatchling 2026-04-22T22:05:19,576 Using cached https://www.piwheels.org/simple/hatchling/hatchling-1.29.0-py3-none-any.whl (76 kB) 2026-04-22T22:05:19,779 Collecting hatch-jupyter-builder>=0.9.0 2026-04-22T22:05:19,949 Using cached https://archive1.piwheels.org/simple/hatch-jupyter-builder/hatch_jupyter_builder-0.9.1-py3-none-any.whl (18 kB) 2026-04-22T22:05:20,136 Collecting packaging>=24.2 2026-04-22T22:05:20,152 Using cached https://www.piwheels.org/simple/packaging/packaging-26.1-py3-none-any.whl (95 kB) 2026-04-22T22:05:20,270 Collecting pathspec>=0.10.1 2026-04-22T22:05:20,286 Using cached https://www.piwheels.org/simple/pathspec/pathspec-1.0.4-py3-none-any.whl (55 kB) 2026-04-22T22:05:20,406 Collecting pluggy>=1.0.0 2026-04-22T22:05:20,420 Using cached https://www.piwheels.org/simple/pluggy/pluggy-1.6.0-py3-none-any.whl (20 kB) 2026-04-22T22:05:20,664 Collecting trove-classifiers 2026-04-22T22:05:20,676 Using cached https://www.piwheels.org/simple/trove-classifiers/trove_classifiers-2026.1.14.14-py3-none-any.whl (14 kB) 2026-04-22T22:05:23,466 Installing collected packages: trove-classifiers, pluggy, pathspec, packaging, hatchling, hatch-jupyter-builder 2026-04-22T22:05:23,502 Creating /tmp/pip-build-env-89zm9fql/overlay/local/bin 2026-04-22T22:05:23,504 changing mode of /tmp/pip-build-env-89zm9fql/overlay/local/bin/trove-classifiers to 755 2026-04-22T22:05:24,522 changing mode of /tmp/pip-build-env-89zm9fql/overlay/local/bin/hatchling to 755 2026-04-22T22:05:24,623 changing mode of /tmp/pip-build-env-89zm9fql/overlay/local/bin/hatch-jupyter-builder to 755 2026-04-22T22:05:24,668 Successfully installed hatch-jupyter-builder-0.9.1 hatchling-1.29.0 packaging-26.1 pathspec-1.0.4 pluggy-1.6.0 trove-classifiers-2026.1.14.14 2026-04-22T22:05:24,923 Installing build dependencies: finished with status 'done' 2026-04-22T22:05:24,930 Getting requirements to build wheel: started 2026-04-22T22:05:24,931 Running command Getting requirements to build wheel 2026-04-22T22:05:25,382 Getting requirements to build wheel: finished with status 'done' 2026-04-22T22:05:25,399 Created temporary directory: /tmp/pip-modern-metadata-cip91hii 2026-04-22T22:05:25,402 Preparing metadata (pyproject.toml): started 2026-04-22T22:05:25,403 Running command Preparing metadata (pyproject.toml) 2026-04-22T22:05:25,899 INFO:hatch_jupyter_builder.utils:Running jupyter-builder 2026-04-22T22:05:25,899 INFO:hatch_jupyter_builder.utils:Building with hatch_jupyter_builder.npm_builder 2026-04-22T22:05:25,900 INFO:hatch_jupyter_builder.utils:With kwargs: {'npm': ['npm'], 'build_cmd': 'build'} 2026-04-22T22:05:25,902 Traceback (most recent call last): 2026-04-22T22:05:25,902 File "/usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in 2026-04-22T22:05:25,903 main() 2026-04-22T22:05:25,903 File "/usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main 2026-04-22T22:05:25,904 json_out['return_val'] = hook(**hook_input['kwargs']) 2026-04-22T22:05:25,904 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,905 File "/usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 152, in prepare_metadata_for_build_wheel 2026-04-22T22:05:25,905 whl_basename = backend.build_wheel(metadata_directory, config_settings) 2026-04-22T22:05:25,906 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,906 File "/tmp/pip-build-env-89zm9fql/overlay/local/lib/python3.11/dist-packages/hatchling/build.py", line 58, in build_wheel 2026-04-22T22:05:25,907 return os.path.basename(next(builder.build(directory=wheel_directory, versions=["standard"]))) 2026-04-22T22:05:25,908 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,909 File "/tmp/pip-build-env-89zm9fql/overlay/local/lib/python3.11/dist-packages/hatchling/builders/plugin/interface.py", line 149, in build 2026-04-22T22:05:25,910 build_hook.initialize(version, build_data) 2026-04-22T22:05:25,911 File "/tmp/pip-build-env-89zm9fql/overlay/local/lib/python3.11/dist-packages/hatch_jupyter_builder/plugin.py", line 94, in initialize 2026-04-22T22:05:25,912 raise e 2026-04-22T22:05:25,913 File "/tmp/pip-build-env-89zm9fql/overlay/local/lib/python3.11/dist-packages/hatch_jupyter_builder/plugin.py", line 89, in initialize 2026-04-22T22:05:25,914 build_func(self.target_name, version, **build_kwargs) 2026-04-22T22:05:25,914 File "/tmp/pip-build-env-89zm9fql/overlay/local/lib/python3.11/dist-packages/hatch_jupyter_builder/utils.py", line 106, in npm_builder 2026-04-22T22:05:25,915 npm_cmd = normalize_cmd(npm) 2026-04-22T22:05:25,916 ^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,917 File "/tmp/pip-build-env-89zm9fql/overlay/local/lib/python3.11/dist-packages/hatch_jupyter_builder/utils.py", line 210, in normalize_cmd 2026-04-22T22:05:25,917 raise ValueError(msg) 2026-04-22T22:05:25,918 ValueError: Aborting. Could not find cmd (npm) in path. If command is not expected to be in user's path, use an absolute path. 2026-04-22T22:05:25,966 ERROR: [present-rich] Preparing metadata (pyproject.toml) exited with 1 2026-04-22T22:05:25,979 [bold magenta]full command[/]: [blue]/usr/bin/python3 /usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py prepare_metadata_for_build_wheel /tmp/tmp_pmqe6l5[/] 2026-04-22T22:05:25,980 [bold magenta]cwd[/]: /tmp/pip-wheel-1b45khyi/keplergl_06a72d46199848a3a798555f23a740f3 2026-04-22T22:05:25,980 Preparing metadata (pyproject.toml): finished with status 'error' 2026-04-22T22:05:25,983 ERROR: [present-rich] metadata generation failed 2026-04-22T22:05:25,989 Exception information: 2026-04-22T22:05:25,989 Traceback (most recent call last): 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata.py", line 35, in generate_metadata 2026-04-22T22:05:25,989 distinfo_dir = backend.prepare_metadata_for_build_wheel(metadata_dir) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/utils/misc.py", line 746, in prepare_metadata_for_build_wheel 2026-04-22T22:05:25,989 return super().prepare_metadata_for_build_wheel( 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_impl.py", line 186, in prepare_metadata_for_build_wheel 2026-04-22T22:05:25,989 return self._call_hook('prepare_metadata_for_build_wheel', { 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_vendor/pyproject_hooks/_impl.py", line 311, in _call_hook 2026-04-22T22:05:25,989 self._subprocess_runner( 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 252, in runner 2026-04-22T22:05:25,989 call_subprocess( 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 224, in call_subprocess 2026-04-22T22:05:25,989 raise error 2026-04-22T22:05:25,989 pip._internal.exceptions.InstallationSubprocessError: Preparing metadata (pyproject.toml) exited with 1 2026-04-22T22:05:25,989 2026-04-22T22:05:25,989 The above exception was the direct cause of the following exception: 2026-04-22T22:05:25,989 2026-04-22T22:05:25,989 Traceback (most recent call last): 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 160, in exc_logging_wrapper 2026-04-22T22:05:25,989 status = run_func(*args) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 247, in wrapper 2026-04-22T22:05:25,989 return func(self, options, args) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 170, in run 2026-04-22T22:05:25,989 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 92, in resolve 2026-04-22T22:05:25,989 result = self._result = resolver.resolve( 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 481, in resolve 2026-04-22T22:05:25,989 state = resolution.resolve(requirements, max_rounds=max_rounds) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 348, in resolve 2026-04-22T22:05:25,989 self._add_to_criteria(self.state.criteria, r, parent=None) 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 172, in _add_to_criteria 2026-04-22T22:05:25,989 if not criterion.candidates: 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 151, in __bool__ 2026-04-22T22:05:25,989 return bool(self._sequence) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155, in __bool__ 2026-04-22T22:05:25,989 return any(self) 2026-04-22T22:05:25,989 ^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143, in 2026-04-22T22:05:25,989 return (c for c in iterator if id(c) not in self._incompatible_ids) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 47, in _iter_built 2026-04-22T22:05:25,989 candidate = func() 2026-04-22T22:05:25,989 ^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 206, in _make_candidate_from_link 2026-04-22T22:05:25,989 self._link_candidate_cache[link] = LinkCandidate( 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 297, in __init__ 2026-04-22T22:05:25,989 super().__init__( 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 162, in __init__ 2026-04-22T22:05:25,989 self.dist = self._prepare() 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 231, in _prepare 2026-04-22T22:05:25,989 dist = self._prepare_distribution() 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 308, in _prepare_distribution 2026-04-22T22:05:25,989 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 491, in prepare_linked_requirement 2026-04-22T22:05:25,989 return self._prepare_linked_requirement(req, parallel_builds) 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 577, in _prepare_linked_requirement 2026-04-22T22:05:25,989 dist = _get_prepared_distribution( 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 69, in _get_prepared_distribution 2026-04-22T22:05:25,989 abstract_dist.prepare_distribution_metadata( 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 61, in prepare_distribution_metadata 2026-04-22T22:05:25,989 self.req.prepare_metadata() 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 539, in prepare_metadata 2026-04-22T22:05:25,989 self.metadata_directory = generate_metadata( 2026-04-22T22:05:25,989 ^^^^^^^^^^^^^^^^^^ 2026-04-22T22:05:25,989 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata.py", line 37, in generate_metadata 2026-04-22T22:05:25,989 raise MetadataGenerationFailed(package_details=details) from error 2026-04-22T22:05:25,989 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2026-04-22T22:05:26,007 Removed keplergl==0.4.0rc2 from https://files.pythonhosted.org/packages/ed/f5/963451f4d5ce3d2cfb9002307702fef80eaaab4f39723d949f58d202854b/keplergl-0.4.0rc2.tar.gz from build tracker '/tmp/pip-build-tracker-puytu1wm' 2026-04-22T22:05:26,007 Removed build tracker: '/tmp/pip-build-tracker-puytu1wm'