Top-level deprecation of plugin did not get collection_name added when deprecating by version (#70344)

* Top-level deprecation of plugin did not get collection_name added when deprecating by version.

* Add changelog fragment.
This commit is contained in:
Felix Fontein 2020-06-29 20:58:54 +02:00 committed by GitHub
parent 83f6e4850b
commit 689cfd1983
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 4 deletions

View file

@ -0,0 +1,2 @@
bugfixes:
- "ansible-doc - collection name for plugin top-level deprecation was not inserted when deprecating by version (https://github.com/ansible/ansible/pull/70344)."

View file

@ -41,14 +41,14 @@ def merge_fragment(target, source):
def _process_versions_and_dates(fragment, is_module, return_docs, callback): def _process_versions_and_dates(fragment, is_module, return_docs, callback):
def process_deprecation(deprecation): def process_deprecation(deprecation, top_level=False):
if not isinstance(deprecation, MutableMapping): if not isinstance(deprecation, MutableMapping):
return return
if is_module and 'removed_in' in deprecation: # used in module deprecations if (is_module or top_level) and 'removed_in' in deprecation: # used in module deprecations
callback(deprecation, 'removed_in', 'removed_from_collection') callback(deprecation, 'removed_in', 'removed_from_collection')
if 'removed_at_date' in deprecation: if 'removed_at_date' in deprecation:
callback(deprecation, 'removed_at_date', 'removed_from_collection') callback(deprecation, 'removed_at_date', 'removed_from_collection')
if not is_module and 'version' in deprecation: # used in plugin option deprecations if not (is_module or top_level) and 'version' in deprecation: # used in plugin option deprecations
callback(deprecation, 'version', 'removed_from_collection') callback(deprecation, 'version', 'removed_from_collection')
def process_option_specifiers(specifiers): def process_option_specifiers(specifiers):
@ -95,7 +95,7 @@ def _process_versions_and_dates(fragment, is_module, return_docs, callback):
if 'version_added' in fragment: if 'version_added' in fragment:
callback(fragment, 'version_added', 'version_added_collection') callback(fragment, 'version_added', 'version_added_collection')
if isinstance(fragment.get('deprecated'), MutableMapping): if isinstance(fragment.get('deprecated'), MutableMapping):
process_deprecation(fragment['deprecated']) process_deprecation(fragment['deprecated'], top_level=True)
if isinstance(fragment.get('options'), MutableMapping): if isinstance(fragment.get('options'), MutableMapping):
process_options(fragment['options']) process_options(fragment['options'])