3
0
Fork 0
forked from mirrors/nixpkgs

lib.callPackageWith: Optimize levenshtein sort

Probably not significant because of the limits already applied.
This is mostly cleanup.
This commit is contained in:
Robert Hensing 2023-12-07 20:00:40 +01:00
parent 67cc78643d
commit 016993237f

View file

@ -5,7 +5,7 @@ let
intersectAttrs;
inherit (lib)
functionArgs isFunction mirrorFunctionArgs isAttrs setFunctionArgs
optionalAttrs attrNames filter elemAt concatStringsSep sort take length
optionalAttrs attrNames filter elemAt concatStringsSep sortOn take length
filterAttrs optionalString flip pathIsDirectory head pipe isDerivation listToAttrs
mapAttrs seq flatten deepSeq warnIf isInOldestRelease extends
;
@ -174,7 +174,7 @@ rec {
# levenshteinAtMost is only fast for 2 or less.
(filter (levenshteinAtMost 2 arg))
# Put strings with shorter distance first
(sort (x: y: levenshtein x arg < levenshtein y arg))
(sortOn (levenshtein arg))
# Only take the first couple results
(take 3)
# Quote all entries