Skip to content

Stable branch for nix #756

Description

@Matt3o12

Problem

Following the installation docs, I set up my flake to track main:

{
  inputs.kache.url = "github:kunobi-ninja/kache";

  outputs = { nixpkgs, kache, ... }: {
    # ...
    nixpkgs.overlays = [ kache.overlays.default ];
    environment.systemPackages = [ pkgs.kache ];
  };
}

However, this often causes build failures when I run nix flake update. Failing tests are not the only breakage I hit, but they are the most common. My usual workaround is to revert the flake update and retry a few days later.

error: Cannot build '/nix/store/bijwlilza9wv5hy17hv0658q1b6vc3m8-kache-0.15.0-rc.1.drv'.
       Reason: builder failed with exit code 101.
       Output paths:
         /nix/store/c4mgv1z2g7z43j2ziwwqs3wx43cw1ich-kache-0.15.0-rc.1
       Last 25 log lines:
       > test store::tests::two_removers_on_one_entry_never_double_decrement_shared_blob ... ok
       > test store::tests::test_concurrent_put_remove_never_dangles ... ok
       >
       > failures:
       >
       > ---- incremental_policy::tests::second_distinct_dynamic_miss_seeds_then_activates stdout ----
       >
       > thread 'incremental_policy::tests::second_distinct_dynamic_miss_seeds_then_activates' (8152619) panicked at src/incremental_policy.rs:968:46:
       > called `Option::unwrap()` on a `None` value
       >
       > ---- wrapper::tests::mint_session_id_is_opaque_and_distinct stdout ----
       >
       > thread 'wrapper::tests::mint_session_id_is_opaque_and_distinct' (8158431) panicked at src/wrapper.rs:7946:9:
       > assertion `left != right` failed: nanos+pid make consecutive ids distinct
       >   left: "8e20b01e7f771614"
       >  right: "8e20b01e7f771614"
       >
       >
       > failures:
       >     incremental_policy::tests::second_distinct_dynamic_miss_seeds_then_activates
       >     wrapper::tests::mint_session_id_is_opaque_and_distinct
       >
       > test result: FAILED. 1923 passed; 2 failed; 0 ignored; 0 measured; 1 filtered out; finished in 26.50s
       >
       > error: test failed, to rerun pass `-p kache --bin kache`
       For full logs, run:
         nix log /nix/store/bijwlilza9wv5hy17hv0658q1b6vc3m8-kache-0.15.0-rc.1.drv

Proposed solution

It would be great if your flake could point to a stable release (for example, a branch called stable) so that I have few updates (the whole nix build + checks always takes a very long time) and the updates always target the latest stable release, no rcs or dev versions.

Alternatives considered

I could pin to a tag, but that would mean running an outdated version of kache until I remember to bump it manually, and I rely on nix flake update to keep my system current.

Use case

Nix users who consume kache as a flake input currently have to choose between tracking main, which breaks periodically, and pinning a tag, which goes stale. A stable branch would give them a moving reference that is safe to follow automatically.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions