summary refs log tree commit diff
path: root/lib/fileset/README.md
diff options
context:
space:
mode:
authorSilvan Mosberger <silvan.mosberger@tweag.io>2023-09-14 23:34:21 +0200
committerSilvan Mosberger <silvan.mosberger@tweag.io>2023-09-21 00:21:02 +0200
commitfe6c1539cc27c52d1f4cffd28c1479e973689766 (patch)
tree15beb2f6e4a8a91215620e87c4ecc9c43f96cd1e /lib/fileset/README.md
parent45bf2c7617afd7ac794fb56519301e1ee3324c08 (diff)
downloadnixpkgs-fe6c1539cc27c52d1f4cffd28c1479e973689766.tar
nixpkgs-fe6c1539cc27c52d1f4cffd28c1479e973689766.tar.gz
nixpkgs-fe6c1539cc27c52d1f4cffd28c1479e973689766.tar.bz2
nixpkgs-fe6c1539cc27c52d1f4cffd28c1479e973689766.tar.lz
nixpkgs-fe6c1539cc27c52d1f4cffd28c1479e973689766.tar.xz
nixpkgs-fe6c1539cc27c52d1f4cffd28c1479e973689766.tar.zst
nixpkgs-fe6c1539cc27c52d1f4cffd28c1479e973689766.zip
lib.fileset: Internal representation v2, ~12x faster unions!
    $ ./benchmark.sh HEAD
    [...]
    Mean CPU time 0.04006 (σ = 0.0040146) for 10 runs is 8.193619775953792% (σ = 0.9584251052704821%) of the old value 0.488917 (σ = 0.0294955)
    [...]
Diffstat (limited to 'lib/fileset/README.md')
-rw-r--r--lib/fileset/README.md6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/fileset/README.md b/lib/fileset/README.md
index a75efc496c4..c50f7936aa7 100644
--- a/lib/fileset/README.md
+++ b/lib/fileset/README.md
@@ -41,7 +41,7 @@ An attribute set with these values:
 - `_type` (constant string `"fileset"`):
   Tag to indicate this value is a file set.
 
-- `_internalVersion` (constant `1`, the current version):
+- `_internalVersion` (constant `2`, the current version):
   Version of the representation.
 
 - `_internalBase` (path):
@@ -67,8 +67,8 @@ An attribute set with these values:
 One of the following:
 
 - `{ <name> = filesetTree; }`:
-  A directory with a nested `filesetTree` value for every directory entry.
-  Even entries that aren't included are present as `null` because it improves laziness and allows using this as a sort of `builtins.readDir` cache.
+  A directory with a nested `filesetTree` value for directory entries.
+  Entries not included may either be omitted or set to `null`, as necessary to improve efficiency or laziness.
 
 - `"directory"`:
   A directory with all its files included recursively, allowing early cutoff for some operations.