diff --git a/ChangeLog b/ChangeLog index b693655..f1ee976 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Fri Jul 26 09:43:03 2019 +0200 Emmanuel Garette + * 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 * version 3.0 rc7 * retrieve metaconfig/mixconfig/config by name in a metaconfig/mixconfig diff --git a/tiramisu/locale/fr/LC_MESSAGES/tiramisu.po b/tiramisu/locale/fr/LC_MESSAGES/tiramisu.po index 788a53c..f215ba8 100644 --- a/tiramisu/locale/fr/LC_MESSAGES/tiramisu.po +++ b/tiramisu/locale/fr/LC_MESSAGES/tiramisu.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Tiramisu\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" "Last-Translator: Emmanuel Garette \n" "Language-Team: Tiramisu's team \n" @@ -57,39 +57,39 @@ msgstr "méthode {} inconnue dans {}" msgid "cannot add this property: \"{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" 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 ({})" 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 {}" 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}" 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()" msgstr "faire .dict() avant .updates()" -#: tiramisu/api.py:860 +#: tiramisu/api.py:878 msgid "unknown config type {}" msgstr "type de config {} inconnue" -#: tiramisu/api.py:1071 +#: tiramisu/api.py:1089 msgid "properties must be a 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)" 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 {}" 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}\"" msgstr "chemin inconsistant \"{0}\", devrait commencé par \"{1}\"" -#: tiramisu/config.py:668 +#: tiramisu/config.py:669 msgid "cannot duplicate {}" msgstr "ne peut dupliquer : {0}" -#: tiramisu/config.py:742 +#: tiramisu/config.py:748 msgid "cannot set leadership object has root optiondescription" 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" msgstr "" "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" 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" 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" msgstr "" "les enfants d'un groupconfig doivent être des Config, MetaConfig ou " "GroupConfig" -#: tiramisu/config.py:800 +#: tiramisu/config.py:806 msgid "config name must be uniq in groupconfig for \"{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 \"{}\"" 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 {}" 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" 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" msgstr "enfant a déjà un {}config" -#: 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" @@ -224,38 +224,38 @@ msgstr "" "force_default, force_default_if_same ou force_dont_change_value ne peuvent " "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" msgstr "" "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" 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}" 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 {}" 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 {}" msgstr "" "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" 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" msgstr "" "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" 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" 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}" msgstr "requirements mal formés doit être une option dans l'option {0}" -#: 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}" @@ -390,59 +390,59 @@ msgstr "" "requirements mal formés une option multiple ne doit pas être spécifié comme " "pré-requis à l'option non multiple {0}" -#: tiramisu/option/baseoption.py:495 +#: tiramisu/option/baseoption.py:501 msgid "" "malformed requirements expected must have option and value for option {0}" msgstr "" "expected mal formés pour le requirements, doit avoir une option et une " "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}" msgstr "" "valeur de \"expected\" malformé, doit être valide pour l'option {0} : {1}" -#: tiramisu/option/baseoption.py:532 +#: tiramisu/option/baseoption.py:538 msgid "" "malformed requirements for option: {0} action cannot be force_store_value" msgstr "" "requirements mal formés pour l'option : {0} action ne peut pas être " "force_store_value" -#: tiramisu/option/baseoption.py:540 +#: tiramisu/option/baseoption.py:546 msgid "malformed requirements for option: {0} inverse must be boolean" msgstr "" "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" msgstr "" "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" msgstr "" "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 "" "malformed requirements for option: \"{0}\" operator must be \"or\" or \"and\"" msgstr "" "requirements mal formés pour l'option : \"{0}\" l'opérateur doit être \"or\" " "ou \"and\"" -#: tiramisu/option/baseoption.py:574 +#: tiramisu/option/baseoption.py:580 msgid "malformed requirements type for option: {0}, must be a dict" msgstr "" "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}" msgstr "" "requirements mal formés pour l'option : {0} clefs inconnues {1}, doit " "seulement avoir {2}" -#: tiramisu/option/baseoption.py:592 +#: tiramisu/option/baseoption.py:598 msgid "" "malformed requirements for option: {0} require must have option, expected " "and action keys" @@ -459,7 +459,7 @@ msgid "broadcast address" msgstr "adresse de broadcast" #: 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/passwordoption.py:39 tiramisu/option/portoption.py:107 #: 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" 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)" msgstr "longueur invalide (min 1)" -#: tiramisu/option/domainnameoption.py:114 +#: tiramisu/option/domainnameoption.py:122 msgid "invalid length (max {0})" msgstr "longueur invalide (max {0})" -#: tiramisu/option/domainnameoption.py:125 +#: tiramisu/option/domainnameoption.py:133 msgid "must not be an IP" msgstr "ne doit pas être une IP" -#: tiramisu/option/domainnameoption.py:131 +#: tiramisu/option/domainnameoption.py:139 msgid "must have dot" msgstr "doit avec un point" -#: tiramisu/option/domainnameoption.py:133 +#: tiramisu/option/domainnameoption.py:141 msgid "invalid length (max 255)" msgstr "longueur invalide (max 255)" -#: tiramisu/option/domainnameoption.py:141 +#: tiramisu/option/domainnameoption.py:149 msgid "some characters are uppercase" 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 msgid "cannot set optiondescription in a 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" #: tiramisu/option/ipoption.py:147 -msgid "\"{0}\" is not in network \"{1}\" (\"{2}\")" -msgstr "\"{0}\" n'est pas dans le réseau \"{1}\" (\"{2}\")" +msgid "IP not in network \"{0}\" (\"{1}\")" +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" msgstr "ip_network nécessite une IP, un réseau et un masque de réseau" #: tiramisu/option/ipoption.py:169 -msgid "\"{4}\" is not in network \"{0}\"/\"{1}\" (\"{2}\"/\"{3}\")" -msgstr "\"{4}\" n'est pas dans le réseau \"{0}\"/\"{1}\" (\"{2}\"/\"{3}\")" +msgid "IP not in network \"{2}\"/\"{4}\" (\"{3}\"/\"{5}\")" +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 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" #: tiramisu/option/netmaskoption.py:69 -msgid "with netmask \"{0}\" (\"{1}\")" -msgstr "avec le masque \"{0}\" (\"{1}\")" +msgid "the netmask \"{0}\" (\"{1}\") does not match" +msgstr "le masque \"{0}\" (\"{1}\") ne correspond pas" #: tiramisu/option/netmaskoption.py:72 -msgid "with network \"{0}\" (\"{1}\")" -msgstr "avec le réseau \"{0}\" (\"{1}\")" +msgid "the network \"{0}\" (\"{1}\") does not match" +msgstr "le réseau \"{0}\" (\"{1}\") ne correspond pas" #: tiramisu/option/netmaskoption.py:83 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" msgstr "valeur pour {} doit être différent" -#: tiramisu/option/optiondescription.py:62 -#: tiramisu/option/optiondescription.py:177 +#: tiramisu/option/optiondescription.py:63 +#: tiramisu/option/optiondescription.py:181 msgid "option description seems to be part of an other 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" msgstr "" "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" 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 "" "a leader ({0}) cannot have \"force_default_on_freeze\" or " "\"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" "\" sans \"frozen\"" -#: tiramisu/option/optiondescription.py:106 +#: tiramisu/option/optiondescription.py:108 msgid "malformed consistency option \"{0}\" must be in same leadership" msgstr "" "test de consistance mal formé pour l'option \"{0}\" doit être dans la même " "option leadership" -#: tiramisu/option/optiondescription.py:114 +#: tiramisu/option/optiondescription.py:116 msgid "malformed consistency option \"{0}\" must not be a multi for \"{1}\"" msgstr "" "test de consistence mal formé pour l'option \"{0}\" ne doit doit pas être " "une liste pour \"{1}\"" -#: tiramisu/option/optiondescription.py:118 +#: tiramisu/option/optiondescription.py:120 msgid "" "malformed consistency option \"{0}\" must be in same leadership as \"{1}\"" msgstr "" "test de consistance mal formé pour l'option \"{0}\" doit être dans la même " "option leadership que \"{1}\"" -#: tiramisu/option/optiondescription.py:149 +#: tiramisu/option/optiondescription.py:151 msgid "" "malformed requirements option \"{0}\" must be in same leadership for \"{1}\"" msgstr "" "requirements mal formé pour l'option \"{0}\" doit être dans la même option " "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}\"" msgstr "" "requirement mal formés pour l'option \"{0}\" ne doit pas être une valeur " "multiple pour \"{1}\"" -#: tiramisu/option/optiondescription.py:157 +#: tiramisu/option/optiondescription.py:159 msgid "duplicate option: {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" 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}\"" 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" 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}\"" msgstr "nom de l'option dupliqué : \"{0}\"" -#: tiramisu/option/optiondescription.py:304 +#: tiramisu/option/optiondescription.py:308 msgid "" "the option's name \"{}\" start as the dynoptiondescription's name \"{}\"" msgstr "" "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})" 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" 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" 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 {}" 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\"" 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: {}" 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 {}" msgstr "form {} inconnu" -#: tiramisu/todict.py:830 +#: tiramisu/todict.py:839 msgid "not in current area" 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" msgstr "" "seules des options multiples peuvent avoir l'action \"add\", mais \"{}\" " "n'est pas une valeur multiple" -#: tiramisu/todict.py:852 +#: tiramisu/todict.py:861 msgid "unknown action" msgstr "action inconnue" -#: tiramisu/value.py:427 +#: tiramisu/value.py:428 msgid "can't set owner for the 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" 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}" 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 \"{}\"" 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" #~ msgstr "longueur invalide pour vals" diff --git a/tiramisu/locale/tiramisu.pot b/tiramisu/locale/tiramisu.pot index c19c356..e1db416 100644 --- a/tiramisu/locale/tiramisu.pot +++ b/tiramisu/locale/tiramisu.pot @@ -5,7 +5,7 @@ msgid "" msgstr "" "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" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -55,39 +55,39 @@ msgstr "" msgid "cannot add this property: \"{0}\"" msgstr "" -#: tiramisu/api.py:538 tiramisu/config.py:252 +#: tiramisu/api.py:549 tiramisu/config.py:252 msgid "can't delete a SymLinkOption" msgstr "" -#: tiramisu/api.py:698 tiramisu/api.py:1470 +#: tiramisu/api.py:709 tiramisu/api.py:1487 msgid "please specify a valid sub function ({})" msgstr "" -#: tiramisu/api.py:761 tiramisu/api.py:1247 +#: tiramisu/api.py:770 tiramisu/api.py:1264 msgid "unknown list type {}" msgstr "" -#: tiramisu/api.py:763 tiramisu/api.py:1249 +#: tiramisu/api.py:772 tiramisu/api.py:1266 msgid "unknown group_type: {0}" msgstr "" -#: tiramisu/api.py:812 tiramisu/api.py:1279 +#: tiramisu/api.py:826 tiramisu/api.py:1296 msgid "please use .dict() before .updates()" msgstr "" -#: tiramisu/api.py:860 +#: tiramisu/api.py:878 msgid "unknown config type {}" msgstr "" -#: tiramisu/api.py:1071 +#: tiramisu/api.py:1089 msgid "properties must be a frozenset" 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)" 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 {}" msgstr "" @@ -147,83 +147,83 @@ msgstr "" msgid "unexpected path \"{0}\", should start with \"{1}\"" msgstr "" -#: tiramisu/config.py:668 +#: tiramisu/config.py:669 msgid "cannot duplicate {}" msgstr "" -#: tiramisu/config.py:742 +#: tiramisu/config.py:748 msgid "cannot set leadership object has root optiondescription" msgstr "" -#: tiramisu/config.py:744 +#: tiramisu/config.py:750 msgid "cannot set dynoptiondescription object has root optiondescription" msgstr "" -#: tiramisu/config.py:758 tiramisu/config.py:805 +#: tiramisu/config.py:764 tiramisu/config.py:811 msgid "invalid session ID: {0} for config" msgstr "" -#: tiramisu/config.py:789 +#: tiramisu/config.py:795 msgid "groupconfig's children must be a list" msgstr "" -#: tiramisu/config.py:793 +#: tiramisu/config.py:799 msgid "groupconfig's children must be Config, MetaConfig or GroupConfig" msgstr "" -#: tiramisu/config.py:800 +#: tiramisu/config.py:806 msgid "config name must be uniq in groupconfig for \"{0}\"" msgstr "" -#: tiramisu/config.py:970 +#: tiramisu/config.py:976 msgid "unknown config \"{}\"" 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 {}" msgstr "" -#: tiramisu/config.py:1000 +#: tiramisu/config.py:1008 msgid "child must be a Config, MixConfig or MetaConfig" msgstr "" -#: tiramisu/config.py:1002 +#: tiramisu/config.py:1010 msgid "child has already a {}config's" 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" msgstr "" -#: tiramisu/config.py:1053 +#: tiramisu/config.py:1061 msgid "force_default and force_dont_change_value cannot be set together" msgstr "" -#: tiramisu/config.py:1184 +#: tiramisu/config.py:1192 msgid "config is already in a metaconfig" 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}" msgstr "" -#: tiramisu/config.py:1200 +#: tiramisu/config.py:1208 msgid "cannot find the config {}" msgstr "" -#: tiramisu/config.py:1219 +#: tiramisu/config.py:1229 msgid "MetaConfig with optiondescription must have string has child, not {}" msgstr "" -#: tiramisu/config.py:1238 +#: tiramisu/config.py:1249 msgid "child must be a Config or MetaConfig" msgstr "" -#: tiramisu/config.py:1242 +#: tiramisu/config.py:1253 msgid "all config in metaconfig must have the same optiondescription" msgstr "" -#: tiramisu/config.py:1290 +#: tiramisu/config.py:1304 msgid "metaconfig must have the same optiondescription" msgstr "" @@ -340,51 +340,51 @@ msgstr "" msgid "\"{}\" not part of any Config" msgstr "" -#: tiramisu/option/baseoption.py:453 +#: tiramisu/option/baseoption.py:459 msgid "malformed requirements must be an option in option {0}" 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}" msgstr "" -#: tiramisu/option/baseoption.py:495 +#: tiramisu/option/baseoption.py:501 msgid "malformed requirements expected must have option and value for option {0}" 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}" msgstr "" -#: tiramisu/option/baseoption.py:532 +#: tiramisu/option/baseoption.py:538 msgid "malformed requirements for option: {0} action cannot be force_store_value" msgstr "" -#: tiramisu/option/baseoption.py:540 +#: tiramisu/option/baseoption.py:546 msgid "malformed requirements for option: {0} inverse must be boolean" msgstr "" -#: tiramisu/option/baseoption.py:547 +#: tiramisu/option/baseoption.py:553 msgid "malformed requirements for option: {0} transitive must be boolean" msgstr "" -#: tiramisu/option/baseoption.py:554 +#: tiramisu/option/baseoption.py:560 msgid "malformed requirements for option: {0} same_action must be boolean" msgstr "" -#: tiramisu/option/baseoption.py:561 +#: tiramisu/option/baseoption.py:567 msgid "malformed requirements for option: \"{0}\" operator must be \"or\" or \"and\"" msgstr "" -#: tiramisu/option/baseoption.py:574 +#: tiramisu/option/baseoption.py:580 msgid "malformed requirements type for option: {0}, must be a dict" msgstr "" -#: tiramisu/option/baseoption.py:580 +#: tiramisu/option/baseoption.py:586 msgid "malformed requirements for option: {0} unknown keys {1}, must only {2}" 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" msgstr "" @@ -397,7 +397,7 @@ msgid "broadcast address" msgstr "" #: 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/passwordoption.py:39 tiramisu/option/portoption.py:107 #: tiramisu/option/urloption.py:41 @@ -456,34 +456,51 @@ msgstr "" msgid "allow_without_dot must be a boolean" 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)" msgstr "" -#: tiramisu/option/domainnameoption.py:114 +#: tiramisu/option/domainnameoption.py:122 msgid "invalid length (max {0})" msgstr "" -#: tiramisu/option/domainnameoption.py:125 +#: tiramisu/option/domainnameoption.py:133 msgid "must not be an IP" msgstr "" -#: tiramisu/option/domainnameoption.py:131 +#: tiramisu/option/domainnameoption.py:139 msgid "must have dot" msgstr "" -#: tiramisu/option/domainnameoption.py:133 +#: tiramisu/option/domainnameoption.py:141 msgid "invalid length (max 255)" msgstr "" -#: tiramisu/option/domainnameoption.py:141 +#: tiramisu/option/domainnameoption.py:149 msgid "some characters are uppercase" msgstr "" -#: tiramisu/option/domainnameoption.py:144 -msgid "some characters may cause problems" -msgstr "" - #: tiramisu/option/dynoptiondescription.py:56 msgid "cannot set optiondescription in a dynoptiondescription" msgstr "" @@ -557,15 +574,23 @@ msgid "must be private IP" msgstr "" #: tiramisu/option/ipoption.py:147 -msgid "\"{0}\" is not in network \"{1}\" (\"{2}\")" +msgid "IP not in network \"{0}\" (\"{1}\")" msgstr "" -#: tiramisu/option/ipoption.py:163 +#: tiramisu/option/ipoption.py:162 msgid "ip_network needs an IP, a network and a netmask" msgstr "" #: 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 "" #: tiramisu/option/leadership.py:57 @@ -609,11 +634,11 @@ msgid "network_netmask needs a network and a netmask" msgstr "" #: tiramisu/option/netmaskoption.py:69 -msgid "with netmask \"{0}\" (\"{1}\")" +msgid "the netmask \"{0}\" (\"{1}\") does not match" msgstr "" #: tiramisu/option/netmaskoption.py:72 -msgid "with network \"{0}\" (\"{1}\")" +msgid "the network \"{0}\" (\"{1}\") does not match" msgstr "" #: tiramisu/option/netmaskoption.py:83 @@ -748,72 +773,72 @@ msgstr "" msgid "value for {} must be different" msgstr "" -#: tiramisu/option/optiondescription.py:62 -#: tiramisu/option/optiondescription.py:177 +#: tiramisu/option/optiondescription.py:63 +#: tiramisu/option/optiondescription.py:181 msgid "option description seems to be part of an other config" msgstr "" -#: tiramisu/option/optiondescription.py:85 +#: tiramisu/option/optiondescription.py:87 msgid "the follower \"{0}\" cannot have \"force_store_value\" property" msgstr "" -#: tiramisu/option/optiondescription.py:89 +#: tiramisu/option/optiondescription.py:91 msgid "the dynoption \"{0}\" cannot have \"force_store_value\" property" 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\"" msgstr "" -#: tiramisu/option/optiondescription.py:106 +#: tiramisu/option/optiondescription.py:108 msgid "malformed consistency option \"{0}\" must be in same leadership" msgstr "" -#: tiramisu/option/optiondescription.py:114 +#: tiramisu/option/optiondescription.py:116 msgid "malformed consistency option \"{0}\" must not be a multi for \"{1}\"" msgstr "" -#: tiramisu/option/optiondescription.py:118 +#: tiramisu/option/optiondescription.py:120 msgid "malformed consistency option \"{0}\" must be in same leadership as \"{1}\"" msgstr "" -#: tiramisu/option/optiondescription.py:149 +#: tiramisu/option/optiondescription.py:151 msgid "malformed requirements option \"{0}\" must be in same leadership for \"{1}\"" msgstr "" -#: tiramisu/option/optiondescription.py:153 +#: tiramisu/option/optiondescription.py:155 msgid "malformed requirements option \"{0}\" must not be a multi for \"{1}\"" msgstr "" -#: tiramisu/option/optiondescription.py:157 +#: tiramisu/option/optiondescription.py:159 msgid "duplicate option: {0}" msgstr "" -#: tiramisu/option/optiondescription.py:166 +#: tiramisu/option/optiondescription.py:170 msgid "consistency with option {0} which is not in Config" msgstr "" -#: tiramisu/option/optiondescription.py:221 +#: tiramisu/option/optiondescription.py:225 msgid "unknown option \"{0}\" in optiondescription \"{1}\"" msgstr "" -#: tiramisu/option/optiondescription.py:275 +#: tiramisu/option/optiondescription.py:279 msgid "children in optiondescription \"{}\" must be a list" msgstr "" -#: tiramisu/option/optiondescription.py:299 +#: tiramisu/option/optiondescription.py:303 msgid "duplicate option name: \"{0}\"" msgstr "" -#: tiramisu/option/optiondescription.py:304 +#: tiramisu/option/optiondescription.py:308 msgid "the option's name \"{}\" start as the dynoptiondescription's name \"{}\"" msgstr "" -#: tiramisu/option/optiondescription.py:329 +#: tiramisu/option/optiondescription.py:333 msgid "cannot change group_type if already set (old {0}, new {1})" msgstr "" -#: tiramisu/option/optiondescription.py:333 +#: tiramisu/option/optiondescription.py:337 msgid "group_type: {0} not allowed" msgstr "" @@ -967,47 +992,47 @@ msgstr "" msgid "cannot change setting when connexion is already opened" 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 {}" msgstr "" -#: tiramisu/todict.py:344 +#: tiramisu/todict.py:345 msgid "option {} only works when remotable is not \"none\"" msgstr "" -#: tiramisu/todict.py:488 +#: tiramisu/todict.py:489 msgid "unable to transform tiramisu object to dict: {}" msgstr "" -#: tiramisu/todict.py:785 tiramisu/todict.py:917 +#: tiramisu/todict.py:794 tiramisu/todict.py:926 msgid "unknown form {}" msgstr "" -#: tiramisu/todict.py:830 +#: tiramisu/todict.py:839 msgid "not in current area" msgstr "" -#: tiramisu/todict.py:850 +#: tiramisu/todict.py:859 msgid "only multi option can have action \"add\", but \"{}\" is not a multi" msgstr "" -#: tiramisu/todict.py:852 +#: tiramisu/todict.py:861 msgid "unknown action" msgstr "" -#: tiramisu/value.py:427 +#: tiramisu/value.py:428 msgid "can't set owner for the symlinkoption \"{}\"" msgstr "" -#: tiramisu/value.py:430 tiramisu/value.py:644 +#: tiramisu/value.py:431 tiramisu/value.py:641 msgid "set owner \"{0}\" is forbidden" msgstr "" -#: tiramisu/value.py:433 +#: tiramisu/value.py:434 msgid "no value for {0} cannot change owner to {1}" msgstr "" -#: tiramisu/value.py:511 +#: tiramisu/value.py:512 msgid "index {} is greater than the length {} for option \"{}\"" msgstr ""