Also check for proper versionchanged versions

Refs #59083
This commit is contained in:
Pedro Algarvio 2020-12-04 05:24:24 +00:00 committed by Megan Wilhite
parent d77f3ef36b
commit f61c19a6f6

View file

@ -72,6 +72,15 @@ def check(ctx, files, check_proper_formatting=False):
path.relative_to(CODE_DIR),
error,
)
error = _check_valid_versionchanged(docstring)
if error:
errors += 1
exitcode = 1
utils.error(
"The module '{}' does not provide a proper `versionchanged` version: {!r} is not valid.",
path.relative_to(CODE_DIR),
error,
)
if not str(path).startswith(SALT_INTERNAL_LOADERS_PATHS):
# No further docstrings checks are needed
@ -150,6 +159,17 @@ def _check_valid_versionadded(docstring):
return False
def _check_valid_versionchanged(docstring):
versionadded_regex = re.compile("versionchanged::(?P<version>.*)")
for match in versionadded_regex.finditer(docstring):
version = match.group("version")
try:
parsed = SaltStackVersion.parse(version.strip())
except ValueError:
return version.strip()
return False
def _check_cli_example_present(docstring):
cli_example_regex = re.compile(r"CLI Example(?:s)?:")
return cli_example_regex.search(docstring) is not None