this derivation will be built: /nix/store/qy6s1mgfq4ii5kggcag5ibwv7iqdk36p-kmap-cli-0.1.0.drv building '/nix/store/qy6s1mgfq4ii5kggcag5ibwv7iqdk36p-kmap-cli-0.1.0.drv' kmap-cli-0.1.0> Sourcing python-remove-tests-dir-hook kmap-cli-0.1.0> Sourcing python-catch-conflicts-hook.sh kmap-cli-0.1.0> Sourcing python-remove-bin-bytecode-hook.sh kmap-cli-0.1.0> Sourcing pypa-build-hook kmap-cli-0.1.0> Using pypaBuildPhase kmap-cli-0.1.0> Sourcing python-runtime-deps-check-hook kmap-cli-0.1.0> Using pythonRuntimeDepsCheckHook kmap-cli-0.1.0> Sourcing pypa-install-hook kmap-cli-0.1.0> Using pypaInstallPhase kmap-cli-0.1.0> Sourcing python-imports-check-hook.sh kmap-cli-0.1.0> Using pythonImportsCheckPhase kmap-cli-0.1.0> Sourcing python-namespaces-hook kmap-cli-0.1.0> Sourcing python-catch-conflicts-hook.sh kmap-cli-0.1.0> Sourcing pytest-check-hook kmap-cli-0.1.0> Running phase: unpackPhase kmap-cli-0.1.0> unpacking source archive /nix/store/y83a928i2fyhkr2j8p00i9j1isb7qdj5-kmap-cli kmap-cli-0.1.0> source root is kmap-cli kmap-cli-0.1.0> setting SOURCE_DATE_EPOCH to timestamp 315619200 of file "kmap-cli/tests/test_kmap_cli.py" kmap-cli-0.1.0> Running phase: patchPhase kmap-cli-0.1.0> Running phase: updateAutotoolsGnuConfigScriptsPhase kmap-cli-0.1.0> Running phase: configurePhase kmap-cli-0.1.0> no configure script, doing nothing kmap-cli-0.1.0> Running phase: buildPhase kmap-cli-0.1.0> Executing pypaBuildPhase kmap-cli-0.1.0> Creating a wheel... kmap-cli-0.1.0> pypa build flags: --no-isolation --outdir dist/ --wheel kmap-cli-0.1.0> * Getting build dependencies for wheel... kmap-cli-0.1.0> * Building wheel... kmap-cli-0.1.0> Successfully built kmap_cli-0.1.0-py3-none-any.whl kmap-cli-0.1.0> Finished creating a wheel... kmap-cli-0.1.0> Finished executing pypaBuildPhase kmap-cli-0.1.0> Running phase: pythonRuntimeDepsCheckHook kmap-cli-0.1.0> Executing pythonRuntimeDepsCheck kmap-cli-0.1.0> Checking runtime dependencies for kmap_cli-0.1.0-py3-none-any.whl kmap-cli-0.1.0> Finished executing pythonRuntimeDepsCheck kmap-cli-0.1.0> Running phase: installPhase kmap-cli-0.1.0> Executing pypaInstallPhase kmap-cli-0.1.0> Successfully installed kmap_cli-0.1.0-py3-none-any.whl kmap-cli-0.1.0> Finished executing pypaInstallPhase kmap-cli-0.1.0> Running phase: pythonOutputDistPhase kmap-cli-0.1.0> Executing pythonOutputDistPhase kmap-cli-0.1.0> Finished executing pythonOutputDistPhase kmap-cli-0.1.0> Running phase: fixupPhase kmap-cli-0.1.0> shrinking RPATHs of ELF executables and libraries in /nix/store/h9lfn159gd9alrqzbg06bfl4df912am9-kmap-cli-0.1.0 kmap-cli-0.1.0> checking for references to /build/ in /nix/store/h9lfn159gd9alrqzbg06bfl4df912am9-kmap-cli-0.1.0... kmap-cli-0.1.0> patching script interpreter paths in /nix/store/h9lfn159gd9alrqzbg06bfl4df912am9-kmap-cli-0.1.0 kmap-cli-0.1.0> stripping (with command strip and flags -S -p) in /nix/store/h9lfn159gd9alrqzbg06bfl4df912am9-kmap-cli-0.1.0/lib /nix/store/h9lfn159gd9alrqzbg06bfl4df912am9-kmap-cli-0.1.0/bin kmap-cli-0.1.0> shrinking RPATHs of ELF executables and libraries in /nix/store/ajhfb67zfzd49q5qiawp75rxijnqjz96-kmap-cli-0.1.0-dist kmap-cli-0.1.0> checking for references to /build/ in /nix/store/ajhfb67zfzd49q5qiawp75rxijnqjz96-kmap-cli-0.1.0-dist... kmap-cli-0.1.0> patching script interpreter paths in /nix/store/ajhfb67zfzd49q5qiawp75rxijnqjz96-kmap-cli-0.1.0-dist kmap-cli-0.1.0> Rewriting #!/nix/store/gxzhl7aaiid7zp3y47jqqiq7zg5mqpwp-python3-3.14.6/bin/python3.14 to #!/nix/store/gxzhl7aaiid7zp3y47jqqiq7zg5mqpwp-python3-3.14.6 kmap-cli-0.1.0> wrapping `/nix/store/h9lfn159gd9alrqzbg06bfl4df912am9-kmap-cli-0.1.0/bin/kmap-cli'... kmap-cli-0.1.0> Executing pythonRemoveTestsDir kmap-cli-0.1.0> Finished executing pythonRemoveTestsDir kmap-cli-0.1.0> Running phase: installCheckPhase kmap-cli-0.1.0> EXE001 Shebang is present but file is not executable kmap-cli-0.1.0> --> kmap_cli.py:1:1 kmap-cli-0.1.0> | kmap-cli-0.1.0> 1 | #!/usr/bin/env python3 kmap-cli-0.1.0> | ^^^^^^^^^^^^^^^^^^^^^^ kmap-cli-0.1.0> 2 | from __future__ import annotations kmap-cli-0.1.0> | kmap-cli-0.1.0> kmap-cli-0.1.0> UP022 Prefer `capture_output` over sending `stdout` and `stderr` to `PIPE` kmap-cli-0.1.0> --> kmap_cli.py:149:18 kmap-cli-0.1.0> | kmap-cli-0.1.0> 147 | return None kmap-cli-0.1.0> 148 | try: kmap-cli-0.1.0> 149 | result = subprocess.run( kmap-cli-0.1.0> | __________________^ kmap-cli-0.1.0> 150 | | args, kmap-cli-0.1.0> 151 | | check=True, kmap-cli-0.1.0> 152 | | stdout=subprocess.PIPE, kmap-cli-0.1.0> 153 | | stderr=subprocess.PIPE, kmap-cli-0.1.0> 154 | | text=True, kmap-cli-0.1.0> 155 | | timeout=10, kmap-cli-0.1.0> 156 | | ) kmap-cli-0.1.0> | |_________^ kmap-cli-0.1.0> 157 | except (subprocess.SubprocessError, OSError) as error: kmap-cli-0.1.0> 158 | raise ConfigError(f"secret command failed: {error}") from error kmap-cli-0.1.0> | kmap-cli-0.1.0> help: Replace with `capture_output` keyword argument kmap-cli-0.1.0> kmap-cli-0.1.0> RUF100 [*] Unused `noqa` directive (non-enabled: `S310`) kmap-cli-0.1.0> --> kmap_cli.py:435:91 kmap-cli-0.1.0> | kmap-cli-0.1.0> 433 | headers["Content-Type"] = "application/json" kmap-cli-0.1.0> 434 | data = json.dumps(body).encode("utf-8") kmap-cli-0.1.0> 435 | request = urllib.request.Request(url, data=data, headers=headers, method=method) # noqa: S310 kmap-cli-0.1.0> | ^^^^^^^^^^^^ kmap-cli-0.1.0> 436 | try: kmap-cli-0.1.0> 437 | with urllib.request.urlopen(request, timeout=15) as response: # noqa: S310 kmap-cli-0.1.0> | kmap-cli-0.1.0> help: Remove unused `noqa` directive kmap-cli-0.1.0> | kmap-cli-0.1.0> 434 | data = json.dumps(body).encode("utf-8") kmap-cli-0.1.0> - request = urllib.request.Request(url, data=data, headers=headers, method=method) # noqa: S310 kmap-cli-0.1.0> 435 + request = urllib.request.Request(url, data=data, headers=headers, method=method) kmap-cli-0.1.0> 436 | try: kmap-cli-0.1.0> | kmap-cli-0.1.0> kmap-cli-0.1.0> RUF100 [*] Unused `noqa` directive (non-enabled: `S310`) kmap-cli-0.1.0> --> kmap_cli.py:437:76 kmap-cli-0.1.0> | kmap-cli-0.1.0> 435 | request = urllib.request.Request(url, data=data, headers=headers, method=method) # noqa: S310 kmap-cli-0.1.0> 436 | try: kmap-cli-0.1.0> 437 | with urllib.request.urlopen(request, timeout=15) as response: # noqa: S310 kmap-cli-0.1.0> | ^^^^^^^^^^^^ kmap-cli-0.1.0> 438 | parsed = json.loads(response.read().decode("utf-8")) kmap-cli-0.1.0> 439 | except urllib.error.HTTPError as error: kmap-cli-0.1.0> | kmap-cli-0.1.0> help: Remove unused `noqa` directive kmap-cli-0.1.0> | kmap-cli-0.1.0> 436 | try: kmap-cli-0.1.0> - with urllib.request.urlopen(request, timeout=15) as response: # noqa: S310 kmap-cli-0.1.0> 437 + with urllib.request.urlopen(request, timeout=15) as response: kmap-cli-0.1.0> 438 | parsed = json.loads(response.read().decode("utf-8")) kmap-cli-0.1.0> | kmap-cli-0.1.0> kmap-cli-0.1.0> PYI041 [*] Use `float` instead of `int | float` kmap-cli-0.1.0> --> kmap_cli.py:711:29 kmap-cli-0.1.0> | kmap-cli-0.1.0> 711 | def format_distance(meters: int | float) -> str: kmap-cli-0.1.0> | ^^^^^^^^^^^ kmap-cli-0.1.0> 712 | if meters < 1000: kmap-cli-0.1.0> 713 | return f"{meters:.0f} m" kmap-cli-0.1.0> | kmap-cli-0.1.0> help: Remove redundant type kmap-cli-0.1.0> | kmap-cli-0.1.0> 710 | kmap-cli-0.1.0> - def format_distance(meters: int | float) -> str: kmap-cli-0.1.0> 711 + def format_distance(meters: float) -> str: kmap-cli-0.1.0> 712 | if meters < 1000: kmap-cli-0.1.0> | kmap-cli-0.1.0> kmap-cli-0.1.0> RUF007 Prefer `itertools.pairwise()` over `zip()` when iterating over successive pairs kmap-cli-0.1.0> --> kmap_cli.py:884:32 kmap-cli-0.1.0> | kmap-cli-0.1.0> 882 | segments: list[dict[str, object]] = [] kmap-cli-0.1.0> 883 | has_routes = False kmap-cli-0.1.0> 884 | for origin, destination in zip(places, places[1:]): kmap-cli-0.1.0> | ^^^ kmap-cli-0.1.0> 885 | routes = client.transit_routes( kmap-cli-0.1.0> 886 | Point(origin.x, origin.y), kmap-cli-0.1.0> | kmap-cli-0.1.0> help: Replace `zip()` with `itertools.pairwise()` kmap-cli-0.1.0> kmap-cli-0.1.0> Found 6 errors. kmap-cli-0.1.0> [*] 3 fixable with the `--fix` option (2 hidden fixes can be enabled with the `--unsafe-fixes` option). error: Cannot build '/nix/store/qy6s1mgfq4ii5kggcag5ibwv7iqdk36p-kmap-cli-0.1.0.drv'. Reason: builder failed with exit code 1. Output paths: /nix/store/ajhfb67zfzd49q5qiawp75rxijnqjz96-kmap-cli-0.1.0-dist /nix/store/h9lfn159gd9alrqzbg06bfl4df912am9-kmap-cli-0.1.0 Last 25 log lines: > 712 | if meters < 1000: > 713 | return f"{meters:.0f} m" > | > help: Remove redundant type > | > 710 | > - def format_distance(meters: int | float) -> str: > 711 + def format_distance(meters: float) -> str: > 712 | if meters < 1000: > | > > RUF007 Prefer `itertools.pairwise()` over `zip()` when iterating over successive pairs > --> kmap_cli.py:884:32 > | > 882 | segments: list[dict[str, object]] = [] > 883 | has_routes = False > 884 | for origin, destination in zip(places, places[1:]): > | ^^^ > 885 | routes = client.transit_routes( > 886 | Point(origin.x, origin.y), > | > help: Replace `zip()` with `itertools.pairwise()` > > Found 6 errors. > [*] 3 fixable with the `--fix` option (2 hidden fixes can be enabled with the `--unsafe-fixes` option). For full logs, run: nix log /nix/store/qy6s1mgfq4ii5kggcag5ibwv7iqdk36p-kmap-cli-0.1.0.drv