Software /
code /
prosody
Comparison
util/prosodyctl/check.lua @ 12158:7ff3699c1653
util.prosodyctl.check: Move word to ease future translations
Recent experience with translations in the context of Snikket
highlighted that sentences spread across concatenated strings like this
makes the experience less than pleasant for translators.
We don't have translation yet, but it is a future goal and why not?
The duplication can be solved with a parameterized function for the
common cases.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 08 Jan 2022 17:01:10 +0100 |
parent | 12157:1dd9ee6112e9 |
child | 12159:aa299551f8c6 |
comparison
equal
deleted
inserted
replaced
12157:1dd9ee6112e9 | 12158:7ff3699c1653 |
---|---|
111 "s2s_dns_resolvers", | 111 "s2s_dns_resolvers", |
112 "setgid", | 112 "setgid", |
113 "setuid", | 113 "setuid", |
114 }); | 114 }); |
115 local deprecated_replacements = { | 115 local deprecated_replacements = { |
116 anonymous_login = "use 'authentication = \"anonymous\"'", | 116 anonymous_login = "instead, use 'authentication = \"anonymous\"'", |
117 daemonize = "use the --daemonize/-D or --foreground/-F command line flags", | 117 daemonize = "instead, use the --daemonize/-D or --foreground/-F command line flags", |
118 disallow_s2s = "add \"s2s\" to 'modules_disabled'", | 118 disallow_s2s = "instead, add \"s2s\" to 'modules_disabled'", |
119 no_daemonize = "use the --daemonize/-D or --foreground/-F command line flags", | 119 no_daemonize = "instead, use the --daemonize/-D or --foreground/-F command line flags", |
120 require_encryption = "use 'c2s_require_encryption' and 's2s_require_encryption'", | 120 require_encryption = "instead, use 'c2s_require_encryption' and 's2s_require_encryption'", |
121 vcard_compatibility = "use 'mod_compat_vcard' from prosody-modules", | 121 vcard_compatibility = "instead, use 'mod_compat_vcard' from prosody-modules", |
122 use_libevent = "use 'network_backend = \"event\"'", | 122 use_libevent = "instead, use 'network_backend = \"event\"'", |
123 whitelist_registration_only = "use 'allowlist_registration_only'", | 123 whitelist_registration_only = "instead, use 'allowlist_registration_only'", |
124 registration_whitelist = "use 'registration_allowlist'", | 124 registration_whitelist = "instead, use 'registration_allowlist'", |
125 registration_blacklist = "use 'registration_blocklist'", | 125 registration_blacklist = "instead, use 'registration_blocklist'", |
126 blacklist_on_registration_throttle_overload = "use 'blocklist_on_registration_throttle_overload'", | 126 blacklist_on_registration_throttle_overload = "instead, use 'blocklist_on_registration_throttle_overload'", |
127 }; | 127 }; |
128 -- FIXME all the singular _port and _interface options are supposed to be deprecated too | 128 -- FIXME all the singular _port and _interface options are supposed to be deprecated too |
129 local deprecated_ports = { bosh = "http", legacy_ssl = "c2s_direct_tls" }; | 129 local deprecated_ports = { bosh = "http", legacy_ssl = "c2s_direct_tls" }; |
130 local port_suffixes = set.new({ "port", "ports", "interface", "interfaces", "ssl" }); | 130 local port_suffixes = set.new({ "port", "ports", "interface", "interfaces", "ssl" }); |
131 for port, replacement in pairs(deprecated_ports) do | 131 for port, replacement in pairs(deprecated_ports) do |
132 for suffix in port_suffixes do | 132 for suffix in port_suffixes do |
133 local rsuffix = (suffix == "port" or suffix == "interface") and suffix.."s" or suffix; | 133 local rsuffix = (suffix == "port" or suffix == "interface") and suffix.."s" or suffix; |
134 deprecated_replacements[port.."_"..suffix] = "use '"..replacement.."_"..rsuffix.."'" | 134 deprecated_replacements[port.."_"..suffix] = "instead, use '"..replacement.."_"..rsuffix.."'" |
135 end | 135 end |
136 end | 136 end |
137 local deprecated = set.new(array.collect(it.keys(deprecated_replacements))); | 137 local deprecated = set.new(array.collect(it.keys(deprecated_replacements))); |
138 local known_global_options = set.new({ | 138 local known_global_options = set.new({ |
139 "access_control_allow_credentials", | 139 "access_control_allow_credentials", |
263 local deprecated_global_options = set.intersection(global_options, deprecated); | 263 local deprecated_global_options = set.intersection(global_options, deprecated); |
264 if not deprecated_global_options:empty() then | 264 if not deprecated_global_options:empty() then |
265 print(""); | 265 print(""); |
266 print(" You have some deprecated options in the global section:"); | 266 print(" You have some deprecated options in the global section:"); |
267 for option in deprecated_global_options do | 267 for option in deprecated_global_options do |
268 print((" '%s' -- instead, %s"):format(option, deprecated_replacements[option])); | 268 print((" '%s' -- %s"):format(option, deprecated_replacements[option])); |
269 end | 269 end |
270 ok = false; | 270 ok = false; |
271 end | 271 end |
272 for host, options in it.filter(function (h) return h ~= "*" end, pairs(configmanager.getconfig())) do | 272 for host, options in it.filter(function (h) return h ~= "*" end, pairs(configmanager.getconfig())) do |
273 local host_options = set.new(it.to_array(it.keys(options))); | 273 local host_options = set.new(it.to_array(it.keys(options))); |