lix/tests/unit/libutil
eldritch horrors d55b158e24 libutil: make rewriteStrings sound
this is used in CA rewriting, replacement of placeholders in
derivations, generating scripts for devShells, and some more
places. in all of these transitive replacements are unsound,
and overlapping replacements would be as well. there even is
a test that transitive replacements do not happen (in the CA
RewriteSink suite), but none for overlapping replacements. a
minimally surprising binary rewriter surely would not do any
of these replacements, the only reason we have not seen this
break yet is probably that rewriteStrings is only called for
store paths and things that look like store paths (and those
should never overlap nor admit such transitive replacements)

Change-Id: I6fc29f939d5061d9f56c752624a823ece8437c07
2024-05-03 00:50:31 +00:00
..
canon-path.cc
chunked-vector.cc Add pre-commit checks 2024-03-29 22:57:40 -07:00
closure.cc
compression.cc
config.cc
escape-string.cc Add EscapeStringOptions and escapeString tests 2024-04-03 16:25:54 +00:00
fmt.cc abort with a descriptive message on bad HintFmt usage 2024-04-15 23:09:16 +00:00
git.cc Add pre-commit checks 2024-03-29 22:57:40 -07:00
hash.cc
hilite.cc
json-utils.cc
local.mk
logging.cc
lru-cache.cc
paths-setting.cc Add PathsSetting 2024-04-07 18:22:15 -07:00
pool.cc Revert "libutil: drop Pool resources on exceptional free" 2024-04-05 20:13:02 +00:00
references.cc Add pre-commit checks 2024-03-29 22:57:40 -07:00
shlex.cc
suggestions.cc
tests.cc libutil: make rewriteStrings sound 2024-05-03 00:50:31 +00:00
url-name.cc getNameFromURL(): Support uppercase characters in attribute names 2024-05-02 12:02:28 -06:00
url.cc
xml-writer.cc