update Changelog and translation

This commit is contained in:
Emmanuel Garette 2019-07-26 09:45:19 +02:00
parent 34d71901d0
commit fd18af62ca
3 changed files with 252 additions and 178 deletions

View file

@ -1,3 +1,9 @@
Fri Jul 26 09:43:03 2019 +0200 Emmanuel Garette <egarette@cadoles.com>
* version 3.0 rc9
* better todict support (especially for leadership
* can add display_name method to Config init to change the name a
option in errors
Mon Jun 5 14:49:27 2019 +0200 Emmanuel Garette <egarette@cadoles.com> Mon Jun 5 14:49:27 2019 +0200 Emmanuel Garette <egarette@cadoles.com>
* version 3.0 rc7 * version 3.0 rc7
* retrieve metaconfig/mixconfig/config by name in a metaconfig/mixconfig * retrieve metaconfig/mixconfig/config by name in a metaconfig/mixconfig

View file

@ -2,7 +2,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Tiramisu\n" "Project-Id-Version: Tiramisu\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-07-06 11:27+CEST\n" "POT-Creation-Date: 2019-07-26 09:35+CEST\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Emmanuel Garette <egarette@cadoles.com>\n" "Last-Translator: Emmanuel Garette <egarette@cadoles.com>\n"
"Language-Team: Tiramisu's team <egarette@cadoles.com>\n" "Language-Team: Tiramisu's team <egarette@cadoles.com>\n"
@ -57,39 +57,39 @@ msgstr "méthode {} inconnue dans {}"
msgid "cannot add this property: \"{0}\"" msgid "cannot add this property: \"{0}\""
msgstr "ne peut pas ajouter cette propriété : \"{0}\"" msgstr "ne peut pas ajouter cette propriété : \"{0}\""
#: tiramisu/api.py:538 tiramisu/config.py:252 #: tiramisu/api.py:549 tiramisu/config.py:252
msgid "can't delete a SymLinkOption" msgid "can't delete a SymLinkOption"
msgstr "ne peut supprimer une valeur à une SymLinkOption" msgstr "ne peut supprimer une valeur à une SymLinkOption"
#: tiramisu/api.py:698 tiramisu/api.py:1470 #: tiramisu/api.py:709 tiramisu/api.py:1487
msgid "please specify a valid sub function ({})" msgid "please specify a valid sub function ({})"
msgstr "veuillez spécifier une sous fonction valide ({})" msgstr "veuillez spécifier une sous fonction valide ({})"
#: tiramisu/api.py:761 tiramisu/api.py:1247 #: tiramisu/api.py:770 tiramisu/api.py:1264
msgid "unknown list type {}" msgid "unknown list type {}"
msgstr "type de liste inconnue {}" msgstr "type de liste inconnue {}"
#: tiramisu/api.py:763 tiramisu/api.py:1249 #: tiramisu/api.py:772 tiramisu/api.py:1266
msgid "unknown group_type: {0}" msgid "unknown group_type: {0}"
msgstr "group_type inconnu: {0}" msgstr "group_type inconnu: {0}"
#: tiramisu/api.py:812 tiramisu/api.py:1279 #: tiramisu/api.py:826 tiramisu/api.py:1296
msgid "please use .dict() before .updates()" msgid "please use .dict() before .updates()"
msgstr "faire .dict() avant .updates()" msgstr "faire .dict() avant .updates()"
#: tiramisu/api.py:860 #: tiramisu/api.py:878
msgid "unknown config type {}" msgid "unknown config type {}"
msgstr "type de config {} inconnue" msgstr "type de config {} inconnue"
#: tiramisu/api.py:1071 #: tiramisu/api.py:1089
msgid "properties must be a frozenset" msgid "properties must be a frozenset"
msgstr "une propriété doit être de type frozenset" msgstr "une propriété doit être de type frozenset"
#: tiramisu/api.py:1077 tiramisu/api.py:1099 #: tiramisu/api.py:1095 tiramisu/api.py:1117
msgid "unknown when {} (must be in append or remove)" msgid "unknown when {} (must be in append or remove)"
msgstr "value {} inconsistent (doit être append ou remove)" msgstr "value {} inconsistent (doit être append ou remove)"
#: tiramisu/api.py:1089 tiramisu/api.py:1111 tiramisu/config.py:1257 #: tiramisu/api.py:1107 tiramisu/api.py:1129 tiramisu/config.py:1268
msgid "unknown type {}" msgid "unknown type {}"
msgstr "type inconnu {}" msgstr "type inconnu {}"
@ -169,54 +169,54 @@ msgstr "make_dict ne peut filtrer sur une valeur mais sans option"
msgid "unexpected path \"{0}\", should start with \"{1}\"" msgid "unexpected path \"{0}\", should start with \"{1}\""
msgstr "chemin inconsistant \"{0}\", devrait commencé par \"{1}\"" msgstr "chemin inconsistant \"{0}\", devrait commencé par \"{1}\""
#: tiramisu/config.py:668 #: tiramisu/config.py:669
msgid "cannot duplicate {}" msgid "cannot duplicate {}"
msgstr "ne peut dupliquer : {0}" msgstr "ne peut dupliquer : {0}"
#: tiramisu/config.py:742 #: tiramisu/config.py:748
msgid "cannot set leadership object has root optiondescription" msgid "cannot set leadership object has root optiondescription"
msgstr "ne peut assigner un objet leadership comme optiondescription racine" msgstr "ne peut assigner un objet leadership comme optiondescription racine"
#: tiramisu/config.py:744 #: tiramisu/config.py:750
msgid "cannot set dynoptiondescription object has root optiondescription" msgid "cannot set dynoptiondescription object has root optiondescription"
msgstr "" msgstr ""
"ne peut assigner un objet dynoptiondescription comme optiondescription racine" "ne peut assigner un objet dynoptiondescription comme optiondescription racine"
#: tiramisu/config.py:758 tiramisu/config.py:805 #: tiramisu/config.py:764 tiramisu/config.py:811
msgid "invalid session ID: {0} for config" msgid "invalid session ID: {0} for config"
msgstr "ID de session invalide : {0} pour une config" msgstr "ID de session invalide : {0} pour une config"
#: tiramisu/config.py:789 #: tiramisu/config.py:795
msgid "groupconfig's children must be a list" msgid "groupconfig's children must be a list"
msgstr "enfants d'une groupconfig doit être une liste" msgstr "enfants d'une groupconfig doit être une liste"
#: tiramisu/config.py:793 #: tiramisu/config.py:799
msgid "groupconfig's children must be Config, MetaConfig or GroupConfig" msgid "groupconfig's children must be Config, MetaConfig or GroupConfig"
msgstr "" msgstr ""
"les enfants d'un groupconfig doivent être des Config, MetaConfig ou " "les enfants d'un groupconfig doivent être des Config, MetaConfig ou "
"GroupConfig" "GroupConfig"
#: tiramisu/config.py:800 #: tiramisu/config.py:806
msgid "config name must be uniq in groupconfig for \"{0}\"" msgid "config name must be uniq in groupconfig for \"{0}\""
msgstr "le nom d'un config doit être unique dans un groupconfig pour \"{0}\"" msgstr "le nom d'un config doit être unique dans un groupconfig pour \"{0}\""
#: tiramisu/config.py:970 #: tiramisu/config.py:976
msgid "unknown config \"{}\"" msgid "unknown config \"{}\""
msgstr "config \"{}\" inconnue" msgstr "config \"{}\" inconnue"
#: tiramisu/config.py:995 tiramisu/config.py:1232 #: tiramisu/config.py:1003 tiramisu/config.py:1243
msgid "{}config's children should be config, not {}" msgid "{}config's children should be config, not {}"
msgstr "enfants d'un {}config doit être une config, pas {}" msgstr "enfants d'un {}config doit être une config, pas {}"
#: tiramisu/config.py:1000 #: tiramisu/config.py:1008
msgid "child must be a Config, MixConfig or MetaConfig" msgid "child must be a Config, MixConfig or MetaConfig"
msgstr "l'enfant doit être une Config, MixConfig ou MetaConfig" msgstr "l'enfant doit être une Config, MixConfig ou MetaConfig"
#: tiramisu/config.py:1002 #: tiramisu/config.py:1010
msgid "child has already a {}config's" msgid "child has already a {}config's"
msgstr "enfant a déjà un {}config" msgstr "enfant a déjà un {}config"
#: tiramisu/config.py:1031 #: tiramisu/config.py:1039
msgid "" msgid ""
"force_default, force_default_if_same or force_dont_change_value cannot be " "force_default, force_default_if_same or force_dont_change_value cannot be "
"set with only_config" "set with only_config"
@ -224,38 +224,38 @@ msgstr ""
"force_default, force_default_if_same ou force_dont_change_value ne peuvent " "force_default, force_default_if_same ou force_dont_change_value ne peuvent "
"pas être spécifié avec only_config" "pas être spécifié avec only_config"
#: tiramisu/config.py:1053 #: tiramisu/config.py:1061
msgid "force_default and force_dont_change_value cannot be set together" msgid "force_default and force_dont_change_value cannot be set together"
msgstr "" msgstr ""
"force_default et force_dont_change_value ne peuvent pas être mis ensemble" "force_default et force_dont_change_value ne peuvent pas être mis ensemble"
#: tiramisu/config.py:1184 #: tiramisu/config.py:1192
msgid "config is already in a metaconfig" msgid "config is already in a metaconfig"
msgstr "la config est déjà dans une metaconfig" msgstr "la config est déjà dans une metaconfig"
#: tiramisu/config.py:1186 tiramisu/config.py:1255 #: tiramisu/config.py:1194 tiramisu/config.py:1266
msgid "config name must be uniq in groupconfig for {0}" msgid "config name must be uniq in groupconfig for {0}"
msgstr "le nom de la config doit être unique dans un groupconfig pour {0}" msgstr "le nom de la config doit être unique dans un groupconfig pour {0}"
#: tiramisu/config.py:1200 #: tiramisu/config.py:1208
msgid "cannot find the config {}" msgid "cannot find the config {}"
msgstr "ne peut pas trouver la config {0}" msgstr "ne peut pas trouver la config {0}"
#: tiramisu/config.py:1219 #: tiramisu/config.py:1229
msgid "MetaConfig with optiondescription must have string has child, not {}" msgid "MetaConfig with optiondescription must have string has child, not {}"
msgstr "" msgstr ""
"MetaConfig avec une optiondescription doit avoir un nom comme enfant, pas {}" "MetaConfig avec une optiondescription doit avoir un nom comme enfant, pas {}"
#: tiramisu/config.py:1238 #: tiramisu/config.py:1249
msgid "child must be a Config or MetaConfig" msgid "child must be a Config or MetaConfig"
msgstr "enfant doit être une une Config ou une MetaConfig" msgstr "enfant doit être une une Config ou une MetaConfig"
#: tiramisu/config.py:1242 #: tiramisu/config.py:1253
msgid "all config in metaconfig must have the same optiondescription" msgid "all config in metaconfig must have the same optiondescription"
msgstr "" msgstr ""
"toutes les configs d'une metaconfig doivent avoir la même optiondescription" "toutes les configs d'une metaconfig doivent avoir la même optiondescription"
#: tiramisu/config.py:1290 #: tiramisu/config.py:1304
msgid "metaconfig must have the same optiondescription" msgid "metaconfig must have the same optiondescription"
msgstr "metaconfig doivent avoir la même optiondescription" msgstr "metaconfig doivent avoir la même optiondescription"
@ -378,11 +378,11 @@ msgstr "\"{}\" ({}) l'attribut de l'objet \"{}\" est en lecture seule"
msgid "\"{}\" not part of any Config" msgid "\"{}\" not part of any Config"
msgstr "\"{}\" ne fait pas parti d'une Config" msgstr "\"{}\" ne fait pas parti d'une Config"
#: tiramisu/option/baseoption.py:453 #: tiramisu/option/baseoption.py:459
msgid "malformed requirements must be an option in option {0}" msgid "malformed requirements must be an option in option {0}"
msgstr "requirements mal formés doit être une option dans l'option {0}" msgstr "requirements mal formés doit être une option dans l'option {0}"
#: tiramisu/option/baseoption.py:456 #: tiramisu/option/baseoption.py:462
msgid "" msgid ""
"malformed requirements multi option must not set as requires of non multi " "malformed requirements multi option must not set as requires of non multi "
"option {0}" "option {0}"
@ -390,59 +390,59 @@ msgstr ""
"requirements mal formés une option multiple ne doit pas être spécifié comme " "requirements mal formés une option multiple ne doit pas être spécifié comme "
"pré-requis à l'option non multiple {0}" "pré-requis à l'option non multiple {0}"
#: tiramisu/option/baseoption.py:495 #: tiramisu/option/baseoption.py:501
msgid "" msgid ""
"malformed requirements expected must have option and value for option {0}" "malformed requirements expected must have option and value for option {0}"
msgstr "" msgstr ""
"expected mal formés pour le requirements, doit avoir une option et une " "expected mal formés pour le requirements, doit avoir une option et une "
"valeur pour l'option {0}" "valeur pour l'option {0}"
#: tiramisu/option/baseoption.py:502 tiramisu/option/baseoption.py:518 #: tiramisu/option/baseoption.py:508 tiramisu/option/baseoption.py:524
msgid "malformed requirements expected value must be valid for option {0}: {1}" msgid "malformed requirements expected value must be valid for option {0}: {1}"
msgstr "" msgstr ""
"valeur de \"expected\" malformé, doit être valide pour l'option {0} : {1}" "valeur de \"expected\" malformé, doit être valide pour l'option {0} : {1}"
#: tiramisu/option/baseoption.py:532 #: tiramisu/option/baseoption.py:538
msgid "" msgid ""
"malformed requirements for option: {0} action cannot be force_store_value" "malformed requirements for option: {0} action cannot be force_store_value"
msgstr "" msgstr ""
"requirements mal formés pour l'option : {0} action ne peut pas être " "requirements mal formés pour l'option : {0} action ne peut pas être "
"force_store_value" "force_store_value"
#: tiramisu/option/baseoption.py:540 #: tiramisu/option/baseoption.py:546
msgid "malformed requirements for option: {0} inverse must be boolean" msgid "malformed requirements for option: {0} inverse must be boolean"
msgstr "" msgstr ""
"requirements mal formés pour l'option : {0} inverse doit être un booléen" "requirements mal formés pour l'option : {0} inverse doit être un booléen"
#: tiramisu/option/baseoption.py:547 #: tiramisu/option/baseoption.py:553
msgid "malformed requirements for option: {0} transitive must be boolean" msgid "malformed requirements for option: {0} transitive must be boolean"
msgstr "" msgstr ""
"requirements mal formés pour l'option : {0} transitive doit être booléen" "requirements mal formés pour l'option : {0} transitive doit être booléen"
#: tiramisu/option/baseoption.py:554 #: tiramisu/option/baseoption.py:560
msgid "malformed requirements for option: {0} same_action must be boolean" msgid "malformed requirements for option: {0} same_action must be boolean"
msgstr "" msgstr ""
"requirements mal formés pour l'option : {0} same_action doit être un booléen" "requirements mal formés pour l'option : {0} same_action doit être un booléen"
#: tiramisu/option/baseoption.py:561 #: tiramisu/option/baseoption.py:567
msgid "" msgid ""
"malformed requirements for option: \"{0}\" operator must be \"or\" or \"and\"" "malformed requirements for option: \"{0}\" operator must be \"or\" or \"and\""
msgstr "" msgstr ""
"requirements mal formés pour l'option : \"{0}\" l'opérateur doit être \"or\" " "requirements mal formés pour l'option : \"{0}\" l'opérateur doit être \"or\" "
"ou \"and\"" "ou \"and\""
#: tiramisu/option/baseoption.py:574 #: tiramisu/option/baseoption.py:580
msgid "malformed requirements type for option: {0}, must be a dict" msgid "malformed requirements type for option: {0}, must be a dict"
msgstr "" msgstr ""
"type requirements malformé pour l'option : {0}, doit être un dictionnaire" "type requirements malformé pour l'option : {0}, doit être un dictionnaire"
#: tiramisu/option/baseoption.py:580 #: tiramisu/option/baseoption.py:586
msgid "malformed requirements for option: {0} unknown keys {1}, must only {2}" msgid "malformed requirements for option: {0} unknown keys {1}, must only {2}"
msgstr "" msgstr ""
"requirements mal formés pour l'option : {0} clefs inconnues {1}, doit " "requirements mal formés pour l'option : {0} clefs inconnues {1}, doit "
"seulement avoir {2}" "seulement avoir {2}"
#: tiramisu/option/baseoption.py:592 #: tiramisu/option/baseoption.py:598
msgid "" msgid ""
"malformed requirements for option: {0} require must have option, expected " "malformed requirements for option: {0} require must have option, expected "
"and action keys" "and action keys"
@ -459,7 +459,7 @@ msgid "broadcast address"
msgstr "adresse de broadcast" msgstr "adresse de broadcast"
#: tiramisu/option/broadcastoption.py:39 tiramisu/option/dateoption.py:38 #: tiramisu/option/broadcastoption.py:39 tiramisu/option/dateoption.py:38
#: tiramisu/option/domainnameoption.py:118 tiramisu/option/ipoption.py:83 #: tiramisu/option/domainnameoption.py:126 tiramisu/option/ipoption.py:83
#: tiramisu/option/netmaskoption.py:42 tiramisu/option/networkoption.py:68 #: tiramisu/option/netmaskoption.py:42 tiramisu/option/networkoption.py:68
#: tiramisu/option/passwordoption.py:39 tiramisu/option/portoption.py:107 #: tiramisu/option/passwordoption.py:39 tiramisu/option/portoption.py:107
#: tiramisu/option/urloption.py:41 #: tiramisu/option/urloption.py:41
@ -520,34 +520,55 @@ msgstr "allow_ip doit être un booléen"
msgid "allow_without_dot must be a boolean" msgid "allow_without_dot must be a boolean"
msgstr "allow_without_dot doit être un booléen" msgstr "allow_without_dot doit être un booléen"
#: tiramisu/option/domainnameoption.py:112 #: tiramisu/option/domainnameoption.py:73
msgid "only lowercase, number, \"-\" and \".\" are characters are allowed"
msgstr ""
"seuls les caractères en minuscule, les nombres, \"-\" et \".\" sont autorisés"
#: tiramisu/option/domainnameoption.py:74
msgid "only lowercase, number, \"-\" and \".\" are characters are recommanded"
msgstr ""
"seuls les caractères en minuscule, les nombres, \"-\" et \".\" sont "
"recommandés"
#: tiramisu/option/domainnameoption.py:77
msgid "only lowercase, number and - are characters are allowed"
msgstr "seuls les caractères en minuscule, les nombres et \"-\" sont autorisés"
#: tiramisu/option/domainnameoption.py:78
msgid "only lowercase, number and \"-\" are characters are recommanded"
msgstr ""
"seuls les caractères en minuscule, les nombres et \"-\" sont recommandés"
#: tiramisu/option/domainnameoption.py:80
#: tiramisu/option/domainnameoption.py:81
msgid "could be a IP, otherwise {}"
msgstr "peut être une IP, autrement {}"
#: tiramisu/option/domainnameoption.py:120
msgid "invalid length (min 1)" msgid "invalid length (min 1)"
msgstr "longueur invalide (min 1)" msgstr "longueur invalide (min 1)"
#: tiramisu/option/domainnameoption.py:114 #: tiramisu/option/domainnameoption.py:122
msgid "invalid length (max {0})" msgid "invalid length (max {0})"
msgstr "longueur invalide (max {0})" msgstr "longueur invalide (max {0})"
#: tiramisu/option/domainnameoption.py:125 #: tiramisu/option/domainnameoption.py:133
msgid "must not be an IP" msgid "must not be an IP"
msgstr "ne doit pas être une IP" msgstr "ne doit pas être une IP"
#: tiramisu/option/domainnameoption.py:131 #: tiramisu/option/domainnameoption.py:139
msgid "must have dot" msgid "must have dot"
msgstr "doit avec un point" msgstr "doit avec un point"
#: tiramisu/option/domainnameoption.py:133 #: tiramisu/option/domainnameoption.py:141
msgid "invalid length (max 255)" msgid "invalid length (max 255)"
msgstr "longueur invalide (max 255)" msgstr "longueur invalide (max 255)"
#: tiramisu/option/domainnameoption.py:141 #: tiramisu/option/domainnameoption.py:149
msgid "some characters are uppercase" msgid "some characters are uppercase"
msgstr "des caractères sont en majuscule" msgstr "des caractères sont en majuscule"
#: tiramisu/option/domainnameoption.py:144
msgid "some characters may cause problems"
msgstr "des caractères peuvent poser problèmes"
#: tiramisu/option/dynoptiondescription.py:56 #: tiramisu/option/dynoptiondescription.py:56
msgid "cannot set optiondescription in a dynoptiondescription" msgid "cannot set optiondescription in a dynoptiondescription"
msgstr "ne peut mettre une optiondescription dans une dynoptiondescription" msgstr "ne peut mettre une optiondescription dans une dynoptiondescription"
@ -625,16 +646,32 @@ msgid "must be private IP"
msgstr "doit être une IP privée" msgstr "doit être une IP privée"
#: tiramisu/option/ipoption.py:147 #: tiramisu/option/ipoption.py:147
msgid "\"{0}\" is not in network \"{1}\" (\"{2}\")" msgid "IP not in network \"{0}\" (\"{1}\")"
msgstr "\"{0}\" n'est pas dans le réseau \"{1}\" (\"{2}\")" msgstr "l'IP n'est pas dans le réseau \"{0}\" (\"{1}\")"
#: tiramisu/option/ipoption.py:163 #: tiramisu/option/ipoption.py:162
msgid "ip_network needs an IP, a network and a netmask" msgid "ip_network needs an IP, a network and a netmask"
msgstr "ip_network nécessite une IP, un réseau et un masque de réseau" msgstr "ip_network nécessite une IP, un réseau et un masque de réseau"
#: tiramisu/option/ipoption.py:169 #: tiramisu/option/ipoption.py:169
msgid "\"{4}\" is not in network \"{0}\"/\"{1}\" (\"{2}\"/\"{3}\")" msgid "IP not in network \"{2}\"/\"{4}\" (\"{3}\"/\"{5}\")"
msgstr "\"{4}\" n'est pas dans le réseau \"{0}\"/\"{1}\" (\"{2}\"/\"{3}\")" msgstr "l'IP n'est pas dans le réseau \"{2}\"/\"{4}\" (\"{3}\"/\"{5}\")"
#: tiramisu/option/ipoption.py:171
msgid ""
"the network doest not match with IP \"{0}\" (\"{1}\") and network "
"\"{4}\" (\"{5}\")"
msgstr ""
"le réseau ne correspond pas à l'IP \"{0}\" (\"{1}\") et au réseau "
"\"{4}\" (\"{5}\")"
#: tiramisu/option/ipoption.py:173
msgid ""
"the netmask does not match with IP \"{0}\" (\"{1}\") and broadcast "
"\"{2}\" (\"{3}\")"
msgstr ""
"le masque de réseau ne correspond pas à l'IP \"{0}\" (\"{1}\") et au "
"broadcast \"{2}\" (\"{3}\")"
#: tiramisu/option/leadership.py:57 #: tiramisu/option/leadership.py:57
msgid "a leader and a follower are mandatories in leadership \"{}\"" msgid "a leader and a follower are mandatories in leadership \"{}\""
@ -692,12 +729,12 @@ msgid "network_netmask needs a network and a netmask"
msgstr "network_netmask nécessite un réseau et un masque de réseau" msgstr "network_netmask nécessite un réseau et un masque de réseau"
#: tiramisu/option/netmaskoption.py:69 #: tiramisu/option/netmaskoption.py:69
msgid "with netmask \"{0}\" (\"{1}\")" msgid "the netmask \"{0}\" (\"{1}\") does not match"
msgstr "avec le masque \"{0}\" (\"{1}\")" msgstr "le masque \"{0}\" (\"{1}\") ne correspond pas"
#: tiramisu/option/netmaskoption.py:72 #: tiramisu/option/netmaskoption.py:72
msgid "with network \"{0}\" (\"{1}\")" msgid "the network \"{0}\" (\"{1}\") does not match"
msgstr "avec le réseau \"{0}\" (\"{1}\")" msgstr "le réseau \"{0}\" (\"{1}\") ne correspond pas"
#: tiramisu/option/netmaskoption.py:83 #: tiramisu/option/netmaskoption.py:83
msgid "ip_netmask needs an IP and a netmask" msgid "ip_netmask needs an IP and a netmask"
@ -846,22 +883,22 @@ msgstr "valeur pour {} devrait être différent"
msgid "value for {} must be different" msgid "value for {} must be different"
msgstr "valeur pour {} doit être différent" msgstr "valeur pour {} doit être différent"
#: tiramisu/option/optiondescription.py:62 #: tiramisu/option/optiondescription.py:63
#: tiramisu/option/optiondescription.py:177 #: tiramisu/option/optiondescription.py:181
msgid "option description seems to be part of an other config" msgid "option description seems to be part of an other config"
msgstr "l'option description semble faire parti d'une autre config" msgstr "l'option description semble faire parti d'une autre config"
#: tiramisu/option/optiondescription.py:85 #: tiramisu/option/optiondescription.py:87
msgid "the follower \"{0}\" cannot have \"force_store_value\" property" msgid "the follower \"{0}\" cannot have \"force_store_value\" property"
msgstr "" msgstr ""
"l'option suiveuse \"{0}\" ne doit pas avoir la propriété \"force_store_value" "l'option suiveuse \"{0}\" ne doit pas avoir la propriété \"force_store_value"
"\"" "\""
#: tiramisu/option/optiondescription.py:89 #: tiramisu/option/optiondescription.py:91
msgid "the dynoption \"{0}\" cannot have \"force_store_value\" property" msgid "the dynoption \"{0}\" cannot have \"force_store_value\" property"
msgstr "la dynoption \"{0}\" ne peut avoir la propriété \"force_store_value\"" msgstr "la dynoption \"{0}\" ne peut avoir la propriété \"force_store_value\""
#: tiramisu/option/optiondescription.py:97 tiramisu/setting.py:687 #: tiramisu/option/optiondescription.py:99 tiramisu/setting.py:687
msgid "" msgid ""
"a leader ({0}) cannot have \"force_default_on_freeze\" or " "a leader ({0}) cannot have \"force_default_on_freeze\" or "
"\"force_metaconfig_on_freeze\" property without \"frozen\"" "\"force_metaconfig_on_freeze\" property without \"frozen\""
@ -869,70 +906,70 @@ msgstr ""
"une option leader ({0}) ne peut avoir de propriété \"force_default_on_freeze" "une option leader ({0}) ne peut avoir de propriété \"force_default_on_freeze"
"\" sans \"frozen\"" "\" sans \"frozen\""
#: tiramisu/option/optiondescription.py:106 #: tiramisu/option/optiondescription.py:108
msgid "malformed consistency option \"{0}\" must be in same leadership" msgid "malformed consistency option \"{0}\" must be in same leadership"
msgstr "" msgstr ""
"test de consistance mal formé pour l'option \"{0}\" doit être dans la même " "test de consistance mal formé pour l'option \"{0}\" doit être dans la même "
"option leadership" "option leadership"
#: tiramisu/option/optiondescription.py:114 #: tiramisu/option/optiondescription.py:116
msgid "malformed consistency option \"{0}\" must not be a multi for \"{1}\"" msgid "malformed consistency option \"{0}\" must not be a multi for \"{1}\""
msgstr "" msgstr ""
"test de consistence mal formé pour l'option \"{0}\" ne doit doit pas être " "test de consistence mal formé pour l'option \"{0}\" ne doit doit pas être "
"une liste pour \"{1}\"" "une liste pour \"{1}\""
#: tiramisu/option/optiondescription.py:118 #: tiramisu/option/optiondescription.py:120
msgid "" msgid ""
"malformed consistency option \"{0}\" must be in same leadership as \"{1}\"" "malformed consistency option \"{0}\" must be in same leadership as \"{1}\""
msgstr "" msgstr ""
"test de consistance mal formé pour l'option \"{0}\" doit être dans la même " "test de consistance mal formé pour l'option \"{0}\" doit être dans la même "
"option leadership que \"{1}\"" "option leadership que \"{1}\""
#: tiramisu/option/optiondescription.py:149 #: tiramisu/option/optiondescription.py:151
msgid "" msgid ""
"malformed requirements option \"{0}\" must be in same leadership for \"{1}\"" "malformed requirements option \"{0}\" must be in same leadership for \"{1}\""
msgstr "" msgstr ""
"requirements mal formé pour l'option \"{0}\" doit être dans la même option " "requirements mal formé pour l'option \"{0}\" doit être dans la même option "
"leadership que \"{1}\"" "leadership que \"{1}\""
#: tiramisu/option/optiondescription.py:153 #: tiramisu/option/optiondescription.py:155
msgid "malformed requirements option \"{0}\" must not be a multi for \"{1}\"" msgid "malformed requirements option \"{0}\" must not be a multi for \"{1}\""
msgstr "" msgstr ""
"requirement mal formés pour l'option \"{0}\" ne doit pas être une valeur " "requirement mal formés pour l'option \"{0}\" ne doit pas être une valeur "
"multiple pour \"{1}\"" "multiple pour \"{1}\""
#: tiramisu/option/optiondescription.py:157 #: tiramisu/option/optiondescription.py:159
msgid "duplicate option: {0}" msgid "duplicate option: {0}"
msgstr "option dupliquée : {0}" msgstr "option dupliquée : {0}"
#: tiramisu/option/optiondescription.py:166 #: tiramisu/option/optiondescription.py:170
msgid "consistency with option {0} which is not in Config" msgid "consistency with option {0} which is not in Config"
msgstr "consistency avec l'option {0} qui n'est pas dans une Config" msgstr "consistency avec l'option {0} qui n'est pas dans une Config"
#: tiramisu/option/optiondescription.py:221 #: tiramisu/option/optiondescription.py:225
msgid "unknown option \"{0}\" in optiondescription \"{1}\"" msgid "unknown option \"{0}\" in optiondescription \"{1}\""
msgstr "option \"{0}\" inconnue dans l'optiondescription \"{1}\"" msgstr "option \"{0}\" inconnue dans l'optiondescription \"{1}\""
#: tiramisu/option/optiondescription.py:275 #: tiramisu/option/optiondescription.py:279
msgid "children in optiondescription \"{}\" must be a list" msgid "children in optiondescription \"{}\" must be a list"
msgstr "les enfants d'une optiondescription \"{}\" doit être une liste" msgstr "les enfants d'une optiondescription \"{}\" doit être une liste"
#: tiramisu/option/optiondescription.py:299 #: tiramisu/option/optiondescription.py:303
msgid "duplicate option name: \"{0}\"" msgid "duplicate option name: \"{0}\""
msgstr "nom de l'option dupliqué : \"{0}\"" msgstr "nom de l'option dupliqué : \"{0}\""
#: tiramisu/option/optiondescription.py:304 #: tiramisu/option/optiondescription.py:308
msgid "" msgid ""
"the option's name \"{}\" start as the dynoptiondescription's name \"{}\"" "the option's name \"{}\" start as the dynoptiondescription's name \"{}\""
msgstr "" msgstr ""
"le nom de l'option \"{}\" commence comme le nom du dynoptiondescription " "le nom de l'option \"{}\" commence comme le nom du dynoptiondescription "
"\"{}\"" "\"{}\""
#: tiramisu/option/optiondescription.py:329 #: tiramisu/option/optiondescription.py:333
msgid "cannot change group_type if already set (old {0}, new {1})" msgid "cannot change group_type if already set (old {0}, new {1})"
msgstr "ne peut changer group_type si déjà spécifié (ancien {0}, nouveau {1})" msgstr "ne peut changer group_type si déjà spécifié (ancien {0}, nouveau {1})"
#: tiramisu/option/optiondescription.py:333 #: tiramisu/option/optiondescription.py:337
msgid "group_type: {0} not allowed" msgid "group_type: {0} not allowed"
msgstr "group_type : {0} non autorisé" msgstr "group_type : {0} non autorisé"
@ -1095,51 +1132,57 @@ msgstr "ne peut supprimer une session non persistante"
msgid "cannot change setting when connexion is already opened" msgid "cannot change setting when connexion is already opened"
msgstr "ne peut changer les paramètres quand une connexion est déjà ouverte" msgstr "ne peut changer les paramètres quand une connexion est déjà ouverte"
#: tiramisu/todict.py:66 tiramisu/todict.py:562 #: tiramisu/todict.py:67 tiramisu/todict.py:563
msgid "context is not supported from now for {}" msgid "context is not supported from now for {}"
msgstr "context n'est pas supporté maintenant pour {}" msgstr "context n'est pas supporté maintenant pour {}"
#: tiramisu/todict.py:344 #: tiramisu/todict.py:345
msgid "option {} only works when remotable is not \"none\"" msgid "option {} only works when remotable is not \"none\""
msgstr "l'option {} ne fonctionne que si remotable n'est pas \"none\"" msgstr "l'option {} ne fonctionne que si remotable n'est pas \"none\""
#: tiramisu/todict.py:488 #: tiramisu/todict.py:489
msgid "unable to transform tiramisu object to dict: {}" msgid "unable to transform tiramisu object to dict: {}"
msgstr "impossible de transformer l'objet tiramisu en dict : {}" msgstr "impossible de transformer l'objet tiramisu en dict : {}"
#: tiramisu/todict.py:785 tiramisu/todict.py:917 #: tiramisu/todict.py:794 tiramisu/todict.py:926
msgid "unknown form {}" msgid "unknown form {}"
msgstr "form {} inconnu" msgstr "form {} inconnu"
#: tiramisu/todict.py:830 #: tiramisu/todict.py:839
msgid "not in current area" msgid "not in current area"
msgstr "n'est pas dans l'espace courant" msgstr "n'est pas dans l'espace courant"
#: tiramisu/todict.py:850 #: tiramisu/todict.py:859
msgid "only multi option can have action \"add\", but \"{}\" is not a multi" msgid "only multi option can have action \"add\", but \"{}\" is not a multi"
msgstr "" msgstr ""
"seules des options multiples peuvent avoir l'action \"add\", mais \"{}\" " "seules des options multiples peuvent avoir l'action \"add\", mais \"{}\" "
"n'est pas une valeur multiple" "n'est pas une valeur multiple"
#: tiramisu/todict.py:852 #: tiramisu/todict.py:861
msgid "unknown action" msgid "unknown action"
msgstr "action inconnue" msgstr "action inconnue"
#: tiramisu/value.py:427 #: tiramisu/value.py:428
msgid "can't set owner for the symlinkoption \"{}\"" msgid "can't set owner for the symlinkoption \"{}\""
msgstr "ne peut spécifier d'utilisateur à la symlinkoption \"{}\"" msgstr "ne peut spécifier d'utilisateur à la symlinkoption \"{}\""
#: tiramisu/value.py:430 tiramisu/value.py:644 #: tiramisu/value.py:431 tiramisu/value.py:641
msgid "set owner \"{0}\" is forbidden" msgid "set owner \"{0}\" is forbidden"
msgstr "assigner l'utilisateur \"{0}\" est interdit" msgstr "assigner l'utilisateur \"{0}\" est interdit"
#: tiramisu/value.py:433 #: tiramisu/value.py:434
msgid "no value for {0} cannot change owner to {1}" msgid "no value for {0} cannot change owner to {1}"
msgstr "pas de valeur pour {0} ne peut changer d'utilisateur pour {1}" msgstr "pas de valeur pour {0} ne peut changer d'utilisateur pour {1}"
#: tiramisu/value.py:511 #: tiramisu/value.py:512
msgid "index {} is greater than the length {} for option \"{}\"" msgid "index {} is greater than the length {} for option \"{}\""
msgstr "l'index {} est supérieur à la longueur \"{}\" pour l'option \"{}\"" msgstr "l'index {} est supérieur à la longueur \"{}\" pour l'option \"{}\""
#~ msgid "some characters may cause problems"
#~ msgstr "des caractères peuvent poser problèmes"
#~ msgid "\"{0}\" is not in network \"{1}\" (\"{2}\")"
#~ msgstr "\"{0}\" n'est pas dans le réseau \"{1}\" (\"{2}\")"
#~ msgid "invalid len for vals" #~ msgid "invalid len for vals"
#~ msgstr "longueur invalide pour vals" #~ msgstr "longueur invalide pour vals"

View file

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2019-07-06 11:27+CEST\n" "POT-Creation-Date: 2019-07-26 09:35+CEST\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -55,39 +55,39 @@ msgstr ""
msgid "cannot add this property: \"{0}\"" msgid "cannot add this property: \"{0}\""
msgstr "" msgstr ""
#: tiramisu/api.py:538 tiramisu/config.py:252 #: tiramisu/api.py:549 tiramisu/config.py:252
msgid "can't delete a SymLinkOption" msgid "can't delete a SymLinkOption"
msgstr "" msgstr ""
#: tiramisu/api.py:698 tiramisu/api.py:1470 #: tiramisu/api.py:709 tiramisu/api.py:1487
msgid "please specify a valid sub function ({})" msgid "please specify a valid sub function ({})"
msgstr "" msgstr ""
#: tiramisu/api.py:761 tiramisu/api.py:1247 #: tiramisu/api.py:770 tiramisu/api.py:1264
msgid "unknown list type {}" msgid "unknown list type {}"
msgstr "" msgstr ""
#: tiramisu/api.py:763 tiramisu/api.py:1249 #: tiramisu/api.py:772 tiramisu/api.py:1266
msgid "unknown group_type: {0}" msgid "unknown group_type: {0}"
msgstr "" msgstr ""
#: tiramisu/api.py:812 tiramisu/api.py:1279 #: tiramisu/api.py:826 tiramisu/api.py:1296
msgid "please use .dict() before .updates()" msgid "please use .dict() before .updates()"
msgstr "" msgstr ""
#: tiramisu/api.py:860 #: tiramisu/api.py:878
msgid "unknown config type {}" msgid "unknown config type {}"
msgstr "" msgstr ""
#: tiramisu/api.py:1071 #: tiramisu/api.py:1089
msgid "properties must be a frozenset" msgid "properties must be a frozenset"
msgstr "" msgstr ""
#: tiramisu/api.py:1077 tiramisu/api.py:1099 #: tiramisu/api.py:1095 tiramisu/api.py:1117
msgid "unknown when {} (must be in append or remove)" msgid "unknown when {} (must be in append or remove)"
msgstr "" msgstr ""
#: tiramisu/api.py:1089 tiramisu/api.py:1111 tiramisu/config.py:1257 #: tiramisu/api.py:1107 tiramisu/api.py:1129 tiramisu/config.py:1268
msgid "unknown type {}" msgid "unknown type {}"
msgstr "" msgstr ""
@ -147,83 +147,83 @@ msgstr ""
msgid "unexpected path \"{0}\", should start with \"{1}\"" msgid "unexpected path \"{0}\", should start with \"{1}\""
msgstr "" msgstr ""
#: tiramisu/config.py:668 #: tiramisu/config.py:669
msgid "cannot duplicate {}" msgid "cannot duplicate {}"
msgstr "" msgstr ""
#: tiramisu/config.py:742 #: tiramisu/config.py:748
msgid "cannot set leadership object has root optiondescription" msgid "cannot set leadership object has root optiondescription"
msgstr "" msgstr ""
#: tiramisu/config.py:744 #: tiramisu/config.py:750
msgid "cannot set dynoptiondescription object has root optiondescription" msgid "cannot set dynoptiondescription object has root optiondescription"
msgstr "" msgstr ""
#: tiramisu/config.py:758 tiramisu/config.py:805 #: tiramisu/config.py:764 tiramisu/config.py:811
msgid "invalid session ID: {0} for config" msgid "invalid session ID: {0} for config"
msgstr "" msgstr ""
#: tiramisu/config.py:789 #: tiramisu/config.py:795
msgid "groupconfig's children must be a list" msgid "groupconfig's children must be a list"
msgstr "" msgstr ""
#: tiramisu/config.py:793 #: tiramisu/config.py:799
msgid "groupconfig's children must be Config, MetaConfig or GroupConfig" msgid "groupconfig's children must be Config, MetaConfig or GroupConfig"
msgstr "" msgstr ""
#: tiramisu/config.py:800 #: tiramisu/config.py:806
msgid "config name must be uniq in groupconfig for \"{0}\"" msgid "config name must be uniq in groupconfig for \"{0}\""
msgstr "" msgstr ""
#: tiramisu/config.py:970 #: tiramisu/config.py:976
msgid "unknown config \"{}\"" msgid "unknown config \"{}\""
msgstr "" msgstr ""
#: tiramisu/config.py:995 tiramisu/config.py:1232 #: tiramisu/config.py:1003 tiramisu/config.py:1243
msgid "{}config's children should be config, not {}" msgid "{}config's children should be config, not {}"
msgstr "" msgstr ""
#: tiramisu/config.py:1000 #: tiramisu/config.py:1008
msgid "child must be a Config, MixConfig or MetaConfig" msgid "child must be a Config, MixConfig or MetaConfig"
msgstr "" msgstr ""
#: tiramisu/config.py:1002 #: tiramisu/config.py:1010
msgid "child has already a {}config's" msgid "child has already a {}config's"
msgstr "" msgstr ""
#: tiramisu/config.py:1031 #: tiramisu/config.py:1039
msgid "force_default, force_default_if_same or force_dont_change_value cannot be set with only_config" msgid "force_default, force_default_if_same or force_dont_change_value cannot be set with only_config"
msgstr "" msgstr ""
#: tiramisu/config.py:1053 #: tiramisu/config.py:1061
msgid "force_default and force_dont_change_value cannot be set together" msgid "force_default and force_dont_change_value cannot be set together"
msgstr "" msgstr ""
#: tiramisu/config.py:1184 #: tiramisu/config.py:1192
msgid "config is already in a metaconfig" msgid "config is already in a metaconfig"
msgstr "" msgstr ""
#: tiramisu/config.py:1186 tiramisu/config.py:1255 #: tiramisu/config.py:1194 tiramisu/config.py:1266
msgid "config name must be uniq in groupconfig for {0}" msgid "config name must be uniq in groupconfig for {0}"
msgstr "" msgstr ""
#: tiramisu/config.py:1200 #: tiramisu/config.py:1208
msgid "cannot find the config {}" msgid "cannot find the config {}"
msgstr "" msgstr ""
#: tiramisu/config.py:1219 #: tiramisu/config.py:1229
msgid "MetaConfig with optiondescription must have string has child, not {}" msgid "MetaConfig with optiondescription must have string has child, not {}"
msgstr "" msgstr ""
#: tiramisu/config.py:1238 #: tiramisu/config.py:1249
msgid "child must be a Config or MetaConfig" msgid "child must be a Config or MetaConfig"
msgstr "" msgstr ""
#: tiramisu/config.py:1242 #: tiramisu/config.py:1253
msgid "all config in metaconfig must have the same optiondescription" msgid "all config in metaconfig must have the same optiondescription"
msgstr "" msgstr ""
#: tiramisu/config.py:1290 #: tiramisu/config.py:1304
msgid "metaconfig must have the same optiondescription" msgid "metaconfig must have the same optiondescription"
msgstr "" msgstr ""
@ -340,51 +340,51 @@ msgstr ""
msgid "\"{}\" not part of any Config" msgid "\"{}\" not part of any Config"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:453 #: tiramisu/option/baseoption.py:459
msgid "malformed requirements must be an option in option {0}" msgid "malformed requirements must be an option in option {0}"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:456 #: tiramisu/option/baseoption.py:462
msgid "malformed requirements multi option must not set as requires of non multi option {0}" msgid "malformed requirements multi option must not set as requires of non multi option {0}"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:495 #: tiramisu/option/baseoption.py:501
msgid "malformed requirements expected must have option and value for option {0}" msgid "malformed requirements expected must have option and value for option {0}"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:502 tiramisu/option/baseoption.py:518 #: tiramisu/option/baseoption.py:508 tiramisu/option/baseoption.py:524
msgid "malformed requirements expected value must be valid for option {0}: {1}" msgid "malformed requirements expected value must be valid for option {0}: {1}"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:532 #: tiramisu/option/baseoption.py:538
msgid "malformed requirements for option: {0} action cannot be force_store_value" msgid "malformed requirements for option: {0} action cannot be force_store_value"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:540 #: tiramisu/option/baseoption.py:546
msgid "malformed requirements for option: {0} inverse must be boolean" msgid "malformed requirements for option: {0} inverse must be boolean"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:547 #: tiramisu/option/baseoption.py:553
msgid "malformed requirements for option: {0} transitive must be boolean" msgid "malformed requirements for option: {0} transitive must be boolean"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:554 #: tiramisu/option/baseoption.py:560
msgid "malformed requirements for option: {0} same_action must be boolean" msgid "malformed requirements for option: {0} same_action must be boolean"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:561 #: tiramisu/option/baseoption.py:567
msgid "malformed requirements for option: \"{0}\" operator must be \"or\" or \"and\"" msgid "malformed requirements for option: \"{0}\" operator must be \"or\" or \"and\""
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:574 #: tiramisu/option/baseoption.py:580
msgid "malformed requirements type for option: {0}, must be a dict" msgid "malformed requirements type for option: {0}, must be a dict"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:580 #: tiramisu/option/baseoption.py:586
msgid "malformed requirements for option: {0} unknown keys {1}, must only {2}" msgid "malformed requirements for option: {0} unknown keys {1}, must only {2}"
msgstr "" msgstr ""
#: tiramisu/option/baseoption.py:592 #: tiramisu/option/baseoption.py:598
msgid "malformed requirements for option: {0} require must have option, expected and action keys" msgid "malformed requirements for option: {0} require must have option, expected and action keys"
msgstr "" msgstr ""
@ -397,7 +397,7 @@ msgid "broadcast address"
msgstr "" msgstr ""
#: tiramisu/option/broadcastoption.py:39 tiramisu/option/dateoption.py:38 #: tiramisu/option/broadcastoption.py:39 tiramisu/option/dateoption.py:38
#: tiramisu/option/domainnameoption.py:118 tiramisu/option/ipoption.py:83 #: tiramisu/option/domainnameoption.py:126 tiramisu/option/ipoption.py:83
#: tiramisu/option/netmaskoption.py:42 tiramisu/option/networkoption.py:68 #: tiramisu/option/netmaskoption.py:42 tiramisu/option/networkoption.py:68
#: tiramisu/option/passwordoption.py:39 tiramisu/option/portoption.py:107 #: tiramisu/option/passwordoption.py:39 tiramisu/option/portoption.py:107
#: tiramisu/option/urloption.py:41 #: tiramisu/option/urloption.py:41
@ -456,34 +456,51 @@ msgstr ""
msgid "allow_without_dot must be a boolean" msgid "allow_without_dot must be a boolean"
msgstr "" msgstr ""
#: tiramisu/option/domainnameoption.py:112 #: tiramisu/option/domainnameoption.py:73
msgid "only lowercase, number, \"-\" and \".\" are characters are allowed"
msgstr ""
#: tiramisu/option/domainnameoption.py:74
msgid "only lowercase, number, \"-\" and \".\" are characters are recommanded"
msgstr ""
#: tiramisu/option/domainnameoption.py:77
msgid "only lowercase, number and - are characters are allowed"
msgstr ""
#: tiramisu/option/domainnameoption.py:78
msgid "only lowercase, number and \"-\" are characters are recommanded"
msgstr ""
#: tiramisu/option/domainnameoption.py:80
#: tiramisu/option/domainnameoption.py:81
msgid "could be a IP, otherwise {}"
msgstr ""
#: tiramisu/option/domainnameoption.py:120
msgid "invalid length (min 1)" msgid "invalid length (min 1)"
msgstr "" msgstr ""
#: tiramisu/option/domainnameoption.py:114 #: tiramisu/option/domainnameoption.py:122
msgid "invalid length (max {0})" msgid "invalid length (max {0})"
msgstr "" msgstr ""
#: tiramisu/option/domainnameoption.py:125 #: tiramisu/option/domainnameoption.py:133
msgid "must not be an IP" msgid "must not be an IP"
msgstr "" msgstr ""
#: tiramisu/option/domainnameoption.py:131 #: tiramisu/option/domainnameoption.py:139
msgid "must have dot" msgid "must have dot"
msgstr "" msgstr ""
#: tiramisu/option/domainnameoption.py:133 #: tiramisu/option/domainnameoption.py:141
msgid "invalid length (max 255)" msgid "invalid length (max 255)"
msgstr "" msgstr ""
#: tiramisu/option/domainnameoption.py:141 #: tiramisu/option/domainnameoption.py:149
msgid "some characters are uppercase" msgid "some characters are uppercase"
msgstr "" msgstr ""
#: tiramisu/option/domainnameoption.py:144
msgid "some characters may cause problems"
msgstr ""
#: tiramisu/option/dynoptiondescription.py:56 #: tiramisu/option/dynoptiondescription.py:56
msgid "cannot set optiondescription in a dynoptiondescription" msgid "cannot set optiondescription in a dynoptiondescription"
msgstr "" msgstr ""
@ -557,15 +574,23 @@ msgid "must be private IP"
msgstr "" msgstr ""
#: tiramisu/option/ipoption.py:147 #: tiramisu/option/ipoption.py:147
msgid "\"{0}\" is not in network \"{1}\" (\"{2}\")" msgid "IP not in network \"{0}\" (\"{1}\")"
msgstr "" msgstr ""
#: tiramisu/option/ipoption.py:163 #: tiramisu/option/ipoption.py:162
msgid "ip_network needs an IP, a network and a netmask" msgid "ip_network needs an IP, a network and a netmask"
msgstr "" msgstr ""
#: tiramisu/option/ipoption.py:169 #: tiramisu/option/ipoption.py:169
msgid "\"{4}\" is not in network \"{0}\"/\"{1}\" (\"{2}\"/\"{3}\")" msgid "IP not in network \"{2}\"/\"{4}\" (\"{3}\"/\"{5}\")"
msgstr ""
#: tiramisu/option/ipoption.py:171
msgid "the network doest not match with IP \"{0}\" (\"{1}\") and network \"{4}\" (\"{5}\")"
msgstr ""
#: tiramisu/option/ipoption.py:173
msgid "the netmask does not match with IP \"{0}\" (\"{1}\") and broadcast \"{2}\" (\"{3}\")"
msgstr "" msgstr ""
#: tiramisu/option/leadership.py:57 #: tiramisu/option/leadership.py:57
@ -609,11 +634,11 @@ msgid "network_netmask needs a network and a netmask"
msgstr "" msgstr ""
#: tiramisu/option/netmaskoption.py:69 #: tiramisu/option/netmaskoption.py:69
msgid "with netmask \"{0}\" (\"{1}\")" msgid "the netmask \"{0}\" (\"{1}\") does not match"
msgstr "" msgstr ""
#: tiramisu/option/netmaskoption.py:72 #: tiramisu/option/netmaskoption.py:72
msgid "with network \"{0}\" (\"{1}\")" msgid "the network \"{0}\" (\"{1}\") does not match"
msgstr "" msgstr ""
#: tiramisu/option/netmaskoption.py:83 #: tiramisu/option/netmaskoption.py:83
@ -748,72 +773,72 @@ msgstr ""
msgid "value for {} must be different" msgid "value for {} must be different"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:62 #: tiramisu/option/optiondescription.py:63
#: tiramisu/option/optiondescription.py:177 #: tiramisu/option/optiondescription.py:181
msgid "option description seems to be part of an other config" msgid "option description seems to be part of an other config"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:85 #: tiramisu/option/optiondescription.py:87
msgid "the follower \"{0}\" cannot have \"force_store_value\" property" msgid "the follower \"{0}\" cannot have \"force_store_value\" property"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:89 #: tiramisu/option/optiondescription.py:91
msgid "the dynoption \"{0}\" cannot have \"force_store_value\" property" msgid "the dynoption \"{0}\" cannot have \"force_store_value\" property"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:97 tiramisu/setting.py:687 #: tiramisu/option/optiondescription.py:99 tiramisu/setting.py:687
msgid "a leader ({0}) cannot have \"force_default_on_freeze\" or \"force_metaconfig_on_freeze\" property without \"frozen\"" msgid "a leader ({0}) cannot have \"force_default_on_freeze\" or \"force_metaconfig_on_freeze\" property without \"frozen\""
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:106 #: tiramisu/option/optiondescription.py:108
msgid "malformed consistency option \"{0}\" must be in same leadership" msgid "malformed consistency option \"{0}\" must be in same leadership"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:114 #: tiramisu/option/optiondescription.py:116
msgid "malformed consistency option \"{0}\" must not be a multi for \"{1}\"" msgid "malformed consistency option \"{0}\" must not be a multi for \"{1}\""
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:118 #: tiramisu/option/optiondescription.py:120
msgid "malformed consistency option \"{0}\" must be in same leadership as \"{1}\"" msgid "malformed consistency option \"{0}\" must be in same leadership as \"{1}\""
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:149 #: tiramisu/option/optiondescription.py:151
msgid "malformed requirements option \"{0}\" must be in same leadership for \"{1}\"" msgid "malformed requirements option \"{0}\" must be in same leadership for \"{1}\""
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:153 #: tiramisu/option/optiondescription.py:155
msgid "malformed requirements option \"{0}\" must not be a multi for \"{1}\"" msgid "malformed requirements option \"{0}\" must not be a multi for \"{1}\""
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:157 #: tiramisu/option/optiondescription.py:159
msgid "duplicate option: {0}" msgid "duplicate option: {0}"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:166 #: tiramisu/option/optiondescription.py:170
msgid "consistency with option {0} which is not in Config" msgid "consistency with option {0} which is not in Config"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:221 #: tiramisu/option/optiondescription.py:225
msgid "unknown option \"{0}\" in optiondescription \"{1}\"" msgid "unknown option \"{0}\" in optiondescription \"{1}\""
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:275 #: tiramisu/option/optiondescription.py:279
msgid "children in optiondescription \"{}\" must be a list" msgid "children in optiondescription \"{}\" must be a list"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:299 #: tiramisu/option/optiondescription.py:303
msgid "duplicate option name: \"{0}\"" msgid "duplicate option name: \"{0}\""
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:304 #: tiramisu/option/optiondescription.py:308
msgid "the option's name \"{}\" start as the dynoptiondescription's name \"{}\"" msgid "the option's name \"{}\" start as the dynoptiondescription's name \"{}\""
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:329 #: tiramisu/option/optiondescription.py:333
msgid "cannot change group_type if already set (old {0}, new {1})" msgid "cannot change group_type if already set (old {0}, new {1})"
msgstr "" msgstr ""
#: tiramisu/option/optiondescription.py:333 #: tiramisu/option/optiondescription.py:337
msgid "group_type: {0} not allowed" msgid "group_type: {0} not allowed"
msgstr "" msgstr ""
@ -967,47 +992,47 @@ msgstr ""
msgid "cannot change setting when connexion is already opened" msgid "cannot change setting when connexion is already opened"
msgstr "" msgstr ""
#: tiramisu/todict.py:66 tiramisu/todict.py:562 #: tiramisu/todict.py:67 tiramisu/todict.py:563
msgid "context is not supported from now for {}" msgid "context is not supported from now for {}"
msgstr "" msgstr ""
#: tiramisu/todict.py:344 #: tiramisu/todict.py:345
msgid "option {} only works when remotable is not \"none\"" msgid "option {} only works when remotable is not \"none\""
msgstr "" msgstr ""
#: tiramisu/todict.py:488 #: tiramisu/todict.py:489
msgid "unable to transform tiramisu object to dict: {}" msgid "unable to transform tiramisu object to dict: {}"
msgstr "" msgstr ""
#: tiramisu/todict.py:785 tiramisu/todict.py:917 #: tiramisu/todict.py:794 tiramisu/todict.py:926
msgid "unknown form {}" msgid "unknown form {}"
msgstr "" msgstr ""
#: tiramisu/todict.py:830 #: tiramisu/todict.py:839
msgid "not in current area" msgid "not in current area"
msgstr "" msgstr ""
#: tiramisu/todict.py:850 #: tiramisu/todict.py:859
msgid "only multi option can have action \"add\", but \"{}\" is not a multi" msgid "only multi option can have action \"add\", but \"{}\" is not a multi"
msgstr "" msgstr ""
#: tiramisu/todict.py:852 #: tiramisu/todict.py:861
msgid "unknown action" msgid "unknown action"
msgstr "" msgstr ""
#: tiramisu/value.py:427 #: tiramisu/value.py:428
msgid "can't set owner for the symlinkoption \"{}\"" msgid "can't set owner for the symlinkoption \"{}\""
msgstr "" msgstr ""
#: tiramisu/value.py:430 tiramisu/value.py:644 #: tiramisu/value.py:431 tiramisu/value.py:641
msgid "set owner \"{0}\" is forbidden" msgid "set owner \"{0}\" is forbidden"
msgstr "" msgstr ""
#: tiramisu/value.py:433 #: tiramisu/value.py:434
msgid "no value for {0} cannot change owner to {1}" msgid "no value for {0} cannot change owner to {1}"
msgstr "" msgstr ""
#: tiramisu/value.py:511 #: tiramisu/value.py:512
msgid "index {} is greater than the length {} for option \"{}\"" msgid "index {} is greater than the length {} for option \"{}\""
msgstr "" msgstr ""