WIP: Expand the developer documentation #27

Draft
gremond wants to merge 62 commits from develop into developer_docs
6 changed files with 28 additions and 16 deletions
Showing only changes of commit 5f9c79664f - Show all commits

View file

@ -259,5 +259,9 @@ class Annotator(Walk): # pylint: disable=R0903
if value not in choices: if value not in choices:
msg = _( msg = _(
'the variable "{0}" has an unvalid default value "{1}" should be in {2}' 'the variable "{0}" has an unvalid default value "{1}" should be in {2}'
).format(variable.path, value, display_list(choices, separator="or", add_quote=True)) ).format(
variable.path,
value,
display_list(choices, separator="or", add_quote=True),
)
raise DictConsistencyError(msg, 26, variable.xmlfiles) raise DictConsistencyError(msg, 26, variable.xmlfiles)

View file

@ -403,7 +403,7 @@ suffix:
disabled: disabled:
variable: upgrade""" variable: upgrade"""
for process in processes: for process in processes:
if processes[process] or process == 'output': if processes[process] or process == "output":
objects = processes[process] objects = processes[process]
rougail_process += """ rougail_process += """
{NAME}: {NAME}:
@ -435,7 +435,9 @@ suffix:
rougail_process += """ {% if _.output == 'NAME' %} rougail_process += """ {% if _.output == 'NAME' %}
Cannot load user data for NAME output Cannot load user data for NAME output
{% endif %} {% endif %}
""".replace("NAME", hidden_output) """.replace(
"NAME", hidden_output
)
elif objects: elif objects:
rougail_process += " default: {DEFAULT}".format( rougail_process += " default: {DEFAULT}".format(
DEFAULT=objects[0]["name"] DEFAULT=objects[0]["name"]

View file

@ -467,11 +467,15 @@ class ParserVariable:
extra_keys = set(obj) - self.variable_attrs extra_keys = set(obj) - self.variable_attrs
if not extra_keys: if not extra_keys:
for key, value in obj.items(): for key, value in obj.items():
if isinstance(value, dict) and key != 'params' and not self.is_calculation( if (
isinstance(value, dict)
and key != "params"
and not self.is_calculation(
key, key,
value, value,
self.variable_calculations, self.variable_calculations,
False, False,
)
): ):
break break
else: else:

View file

@ -27,6 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
from gettext import translation from gettext import translation
from pathlib import Path from pathlib import Path
t = translation('rougail', str(Path(__file__).parent / 'locale'), fallback=True) t = translation("rougail", str(Path(__file__).parent / "locale"), fallback=True)
_ = t.gettext _ = t.gettext

View file

@ -64,12 +64,14 @@ class Annotator(Walk):
for letter in alternative_name: for letter in alternative_name:
all_letters += letter all_letters += letter
if all_letters == "h": if all_letters == "h":
msg = _('alternative_name "{0}" conflict with "--help"').format(alternative_name) msg = _('alternative_name "{0}" conflict with "--help"').format(
alternative_name
)
raise DictConsistencyError(msg, 202, variable.xmlfiles) raise DictConsistencyError(msg, 202, variable.xmlfiles)
if all_letters in self.alternative_names: if all_letters in self.alternative_names:
msg = _( msg = _('conflict alternative_name "{0}": "{1}" and "{2}"').format(
'conflict alternative_name "{0}": "{1}" and "{2}"' alternative_name, variable_path, self.alternative_names[all_letters]
).format(alternative_name, variable_path, self.alternative_names[all_letters]) )
raise DictConsistencyError(msg, 202, variable.xmlfiles) raise DictConsistencyError(msg, 202, variable.xmlfiles)
self.alternative_names[alternative_name] = variable_path self.alternative_names[alternative_name] = variable_path

View file

@ -114,9 +114,9 @@ def get_jinja_variable_to_param(
for g in parsed_content.find_all(Getattr): for g in parsed_content.find_all(Getattr):
variables.add(recurse_getattr(g)) variables.add(recurse_getattr(g))
except TemplateSyntaxError as err: except TemplateSyntaxError as err:
msg = _( msg = _('error in jinja "{0}" for the variable "{1}": {2}').format(
'error in jinja "{0}" for the variable "{1}": {2}' jinja_text, current_path, err
).format(jinja_text, current_path, err) )
raise DictConsistencyError(msg, 39, xmlfiles) from err raise DictConsistencyError(msg, 39, xmlfiles) from err
variables = list(variables) variables = list(variables)
variables.sort(reverse=True) variables.sort(reverse=True)