diff --git a/lix/libfetchers/mercurial.cc b/lix/libfetchers/mercurial.cc index 3454d58ba..eda49f93c 100644 --- a/lix/libfetchers/mercurial.cc +++ b/lix/libfetchers/mercurial.cc @@ -288,7 +288,7 @@ struct MercurialInputScheme : InputScheme } auto tokens = tokenizeString>( - runHg({ "log", "-R", cacheDir, "-r", revOrRef, "--template", "{node} {rev} {branch}" })); + runHg({ "log", "-R", cacheDir, "-r", revOrRef, "--template", "{node} {count(revset('::{rev}'))} {branch}" })); assert(tokens.size() == 3); input.attrs.insert_or_assign("rev", Hash::parseAny(tokens[0], HashType::SHA1).gitRev()); diff --git a/tests/functional/fetchMercurial.sh b/tests/functional/fetchMercurial.sh index d82347829..624705e9b 100644 --- a/tests/functional/fetchMercurial.sh +++ b/tests/functional/fetchMercurial.sh @@ -54,7 +54,7 @@ path2=$(nix eval --impure --raw --expr "(builtins.fetchMercurial \"file://$repo\ [[ $path = $path2 ]] [[ $(nix eval --impure --raw --expr "(builtins.fetchMercurial \"file://$repo\").branch") = default ]] -[[ $(nix eval --impure --expr "(builtins.fetchMercurial \"file://$repo\").revCount") = 1 ]] +[[ $(nix eval --impure --expr "(builtins.fetchMercurial \"file://$repo\").revCount") = 2 ]] [[ $(nix eval --impure --raw --expr "(builtins.fetchMercurial \"file://$repo\").rev") = $rev2 ]] # But with TTL 0, it should fail. diff --git a/tests/functional/flakes/mercurial.sh b/tests/functional/flakes/mercurial.sh index 7074af6f7..b5756a3ea 100644 --- a/tests/functional/flakes/mercurial.sh +++ b/tests/functional/flakes/mercurial.sh @@ -37,7 +37,7 @@ hg commit --config ui.username=foobar@example.org $flake2Dir -m 'Add lock file' nix flake metadata --json hg+file://$flake2Dir --refresh | jq -e -r .revision nix flake metadata --json hg+file://$flake2Dir -[[ $(nix flake metadata --json hg+file://$flake2Dir | jq -e -r .revCount) = 1 ]] +[[ $(nix flake metadata --json hg+file://$flake2Dir | jq -e -r .revCount) = 2 ]] nix build -o $TEST_ROOT/result hg+file://$flake2Dir --no-registries --no-allow-dirty nix build -o $TEST_ROOT/result hg+file://$flake2Dir --no-use-registries --no-allow-dirty