The flake cache was only checking existence for paths starting with NIX_STORE_DIR (defaulting to /nix/store), but not for paths in the test store when CLAN_TEST_STORE is set. This caused the cache to return stale references to paths that had been garbage collected. This fix updates the is_cached method to also check for paths in the test store, preventing cache misses during tests.
clan-cli
The Clan CLI contains the command line interface.
Hacking on the CLI
We recommend setting up direnv to load the development with Nix.
If you do not have it set up you can also use nix develop directly like this:
use flake .#clan-cli --builders ''
After you can use the local bin wrapper to test things in the CLI:
./bin/clan
Run locally single-threaded for debugging
By default tests run in parallel using pytest-parallel.
pytest-parallel however breaks breakpoint(). To disable it, use this:
pytest -n0 -s
You can also run a single test like this:
pytest -n0 -s tests/test_secrets_cli.py::test_users
Run tests in nix container
Run all impure checks
nix run .#impure-checks
Run all checks
nix flake check