lib.types.string: Use lib.warn instead of deprecationMessage

This will cause a poorer error message without option location
information, but it will catch all uses of its use.
This commit is contained in:
Silvan Mosberger 2023-08-10 06:31:36 +02:00
parent 040b0ad3ed
commit 5075a51403

View File

@ -436,10 +436,12 @@ rec {
# Deprecated; should not be used because it quietly concatenates
# strings, which is usually not what you want.
string = separatedString "" // {
name = "string";
deprecationMessage = "See https://github.com/NixOS/nixpkgs/pull/66346 for better alternative types.";
};
# We use a lib.warn because `deprecationMessage` doesn't trigger in nested types such as `attrsOf string`
string = lib.warn
"The type `types.string` is deprecated. See https://github.com/NixOS/nixpkgs/pull/66346 for better alternative types."
(separatedString "" // {
name = "string";
});
passwdEntry = entryType: addCheck entryType (str: !(hasInfix ":" str || hasInfix "\n" str)) // {
name = "passwdEntry ${entryType.name}";