From 5075a514030bd31f030eeac85ff7f0ebfdf1651a Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Thu, 10 Aug 2023 06:31:36 +0200 Subject: [PATCH] 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. --- lib/types.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/types.nix b/lib/types.nix index ddd37f260c9a..5ffbecda5db3 100644 --- a/lib/types.nix +++ b/lib/types.nix @@ -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}";