Fri Nov 17 20:07:33 2023 UTC ()
ansible-core: updated to 2.16.0

v2.16.0
=======

Minor Changes
-------------

- Add Python type hints to the Display class (https://github.com/ansible/ansible/issues/80841)
- Add ``GALAXY_COLLECTIONS_PATH_WARNING`` option to disable the warning given by ``ansible-galaxy collection install`` when installing a collection to a path that isn't in the configured collection paths.
- Add ``python3.12`` to the default ``INTERPRETER_PYTHON_FALLBACK`` list.
- Add ``utcfromtimestamp`` and ``utcnow`` to ``ansible.module_utils.compat.datetime`` to return fixed offset datetime objects.
- Add a general ``GALAXY_SERVER_TIMEOUT`` config option for distribution servers (https://github.com/ansible/ansible/issues/79833).
- Added Python type annotation to connection plugins
- CLI argument parsing - Automatically prepend to the help of CLI arguments that support being specified multiple times. (https://github.com/ansible/ansible/issues/22396)
- DEFAULT_TRANSPORT now defaults to 'ssh', the old 'smart' option is being deprecated as versions of OpenSSH without control persist are basically not present anymore.
- Documentation for set filters ``intersect``, ``difference``, ``symmetric_difference`` and ``union`` now states that the returned list items are in arbitrary order.
- Record ``removal_date`` in runtime metadata as a string instead of a date.
- Remove the ``CleansingNodeVisitor`` class and its usage due to the templating changes that made it superfluous. Also simplify the ``Conditional`` class.
- Removed ``exclude`` and ``recursive-exclude`` commands for generated files from the ``MANIFEST.in`` file. These excludes were unnecessary since releases are expected to be built with a clean worktree.
- Removed ``exclude`` commands for sanity test files from the ``MANIFEST.in`` file. These tests were previously excluded because they did not pass when run from an sdist. However, sanity tests are not expected to pass from an sdist, so excluding some (but not all) of the failing tests makes little sense.
- Removed redundant ``include`` commands from the ``MANIFEST.in`` file. These includes either duplicated default behavior or another command.
- The ``ansible-core`` sdist no longer contains pre-generated man pages. Instead, a ``packaging/cli-doc/build.py`` script is included in the sdist. This script can generate man pages and standalone RST documentation for ``ansible-core`` CLI programs.
- The ``docs`` and ``examples`` directories are no longer included in the ``ansible-core`` sdist. These directories have been moved to the https://github.com/ansible/ansible-documentation repository.
- The minimum required ``setuptools`` version is now 66.1.0, as it is the oldest version to support Python 3.12.
- Update ``ansible_service_mgr`` fact to include init system for SMGL OS family
- Use ``ansible.module_utils.common.text.converters`` instead of ``ansible.module_utils._text``.
- Use ``importlib.resources.abc.TraversableResources`` instead of deprecated ``importlib.abc.TraversableResources`` where available (https:/github.com/ansible/ansible/pull/81082).
- Use ``include`` where ``recursive-include`` is unnecessary in the ``MANIFEST.in`` file.
- Use ``package_data`` instead of ``include_package_data`` for ``setup.cfg`` to avoid ``setuptools`` warnings.
- Utilize gpg check provided internally by the ``transaction.run`` method as oppose to calling it manually.
- ``Templar`` - do not add the ``dict`` constructor to ``globals`` as all required Jinja2 versions already do so
- ansible-doc - allow to filter listing of collections and metadata dump by more than one collection (https://github.com/ansible/ansible/pull/81450).
- ansible-galaxy - Add a plural option to improve ignoring multiple signature error status codes when installing or verifying collections. A space-separated list of error codes can follow --ignore-signature-status-codes in addition to specifying --ignore-signature-status-code multiple times (for example, ``--ignore-signature-status-codes NO_PUBKEY UNEXPECTED``).
- ansible-galaxy - Remove internal configuration argument ``v3`` (https://github.com/ansible/ansible/pull/80721)
- ansible-galaxy - add note to the collection dependency resolver error message about pre-releases if ``--pre`` was not provided (https://github.com/ansible/ansible/issues/80048).
- ansible-galaxy - used to crash out with a "Errno 20 Not a directory" error when extracting files from a role when hitting a file with an illegal name (https://github.com/ansible/ansible/pull/81553). Now it gives a warning identifying the culprit file and the rule violation (e.g., ``my$class.jar`` has a ``$`` in the name) before crashing out, giving the user a chance to remove the invalid file and try again. (https://github.com/ansible/ansible/pull/81555).
- ansible-test - Add Alpine 3.18 to remotes
- ansible-test - Add Fedora 38 container.
- ansible-test - Add Fedora 38 remote.
- ansible-test - Add FreeBSD 13.2 remote.
- ansible-test - Add new pylint checker for new ``# deprecated:`` comments within code to trigger errors when time to remove code that has no user facing deprecation message. Only supported in ansible-core, not collections.
- ansible-test - Add support for RHEL 8.8 remotes.
- ansible-test - Add support for RHEL 9.2 remotes.
- ansible-test - Add support for testing with Python 3.12.
- ansible-test - Allow float values for the ``--timeout`` option to the ``env`` command. This simplifies testing.
- ansible-test - Enable ``thread`` code coverage in addition to the existing ``multiprocessing`` coverage.
- ansible-test - Make Python 3.12 the default version used in the ``base`` and ``default`` containers.
- ansible-test - RHEL 8.8 provisioning can now be used with the ``--python 3.11`` option.
- ansible-test - RHEL 9.2 provisioning can now be used with the ``--python 3.11`` option.
- ansible-test - Refactored ``env`` command logic and timeout handling.
- ansible-test - Remove Fedora 37 remote support.
- ansible-test - Remove Fedora 37 test container.
- ansible-test - Remove Python 3.8 and 3.9 from RHEL 8.8.
- ansible-test - Remove obsolete embedded script for configuring WinRM on Windows remotes.
- ansible-test - Removed Ubuntu 20.04 LTS image from the `--remote` option.
- ansible-test - Removed `freebsd/12.4` remote.
- ansible-test - Removed `freebsd/13.1` remote.
- ansible-test - Removed test remotes: rhel/8.7, rhel/9.1
- ansible-test - Removed the deprecated ``--docker-no-pull`` option.
- ansible-test - Removed the deprecated ``--no-pip-check`` option.
- ansible-test - Removed the deprecated ``foreman`` test plugin.
- ansible-test - Removed the deprecated ``govcsim`` support from the ``vcenter`` test plugin.
- ansible-test - Replace the ``pytest-forked`` pytest plugin with a custom plugin.
- ansible-test - The ``no-get-exception`` sanity test is now limited to plugins in collections. Previously any Python file in a collection was checked for ``get_exception`` usage.
- ansible-test - The ``replace-urlopen`` sanity test is now limited to plugins in collections. Previously any Python file in a collection was checked for ``urlopen`` usage.
- ansible-test - The ``use-compat-six`` sanity test is now limited to plugins in collections. Previously any Python file in a collection was checked for ``six`` usage.
- ansible-test - The openSUSE test container has been updated to openSUSE Leap 15.5.
- ansible-test - Update pip to ``23.1.2`` and setuptools to ``67.7.2``.
- ansible-test - Update the ``default`` containers.
- ansible-test - Update the ``nios-test-container`` to version 2.0.0, which supports API version 2.9.
- ansible-test - Update the logic used to detect when ``ansible-test`` is running from source.
- ansible-test - Updated the CloudStack test container to version 1.6.1.
- ansible-test - Updated the distro test containers to version 6.3.0 to include coverage 7.3.2 for Python 3.8+. The alpine3 container is now based on 3.18 instead of 3.17 and includes Python 3.11 instead of Python 3.10.
- ansible-test - Use ``datetime.datetime.now`` with ``tz`` specified instead of ``datetime.datetime.utcnow``.
- ansible-test - Use a context manager to perform cleanup at exit instead of using the built-in ``atexit`` module.
- ansible-test - When invoking ``sleep`` in containers during container setup, the ``env`` command is used to avoid invoking the shell builtin, if present.
- ansible-test - remove Alpine 3.17 from remotes
- ansible-test — Python 3.8–3.12 will use ``coverage`` v7.3.2.
- ansible-test — ``coverage`` v6.5.0 is to be used only under Python 3.7.
- ansible-vault create: Now raises an error when opening the editor without tty. The flag --skip-tty-check restores previous behaviour.
- ansible_user_module - tweaked macos user defaults to reflect expected defaults (https://github.com/ansible/ansible/issues/44316)
- apt - return calculated diff while running apt clean operation.
- blockinfile - add append_newline and prepend_newline options (https://github.com/ansible/ansible/issues/80835).
- cli - Added short option '-J' for asking for vault password (https://github.com/ansible/ansible/issues/80523).
- command - Add option ``expand_argument_vars`` to disable argument expansion and use literal values - https://github.com/ansible/ansible/issues/54162
- config lookup new option show_origin to also return the origin of a configuration value.
- display methods for warning and deprecation are now proxied to main process when issued from a fork. This allows for the deduplication of warnings and deprecations to work globally.
- dnf5 - enable environment groups installation testing in CI as its support was added.
- dnf5 - enable now implemented ``cacheonly`` functionality
- executor now skips persistent connection when it detects an action that does not require a connection.
- find module - Add ability to filter based on modes
- gather_facts now will use gather_timeout setting to limit parallel execution of modules that do not themselves use gather_timeout.
- group - remove extraneous warning shown when user does not exist (https://github.com/ansible/ansible/issues/77049).
- include_vars - os.walk now follows symbolic links when traversing directories (https://github.com/ansible/ansible/pull/80460)
- module compression is now sourced directly via config, bypassing play_context possibly stale values.
- reboot - show last error message in verbose logs (https://github.com/ansible/ansible/issues/81574).
- service_facts now returns more info for rcctl managed systesm (OpenBSD).
- tasks - the ``retries`` keyword can be specified without ``until`` in which case the task is retried until it succeeds but at most ``retries`` times (https://github.com/ansible/ansible/issues/20802)
- user - add new option ``password_expire_warn`` (supported on Linux only) to set the number of days of warning before a password change is required (https://github.com/ansible/ansible/issues/79882).
- yum_repository - Align module documentation with parameters

Breaking Changes / Porting Guide
--------------------------------

- Any plugin using the config system and the `cli` entry to use the `timeout` from the command line, will see the value change if the use had configured it in any of the lower precedence methods. If relying on this behaviour to consume the global/generic timeout from the DEFAULT_TIMEOUT constant, please consult the documentation on plugin configuration to add the overlaping entries.
- ansible-test - Test plugins that rely on containers no longer support reusing running containers. The previous behavior was an undocumented, untested feature.
- service module will not permanently configure variables/flags for openbsd when doing enable/disable operation anymore, this module was never meant to do this type of work, just to manage the service state itself. A rcctl_config or similar module should be created and used instead.

Deprecated Features
-------------------

- Deprecated ini config option ``collections_paths``, use the singular form ``collections_path`` instead
- Deprecated the env var ``ANSIBLE_COLLECTIONS_PATHS``, use the singular form ``ANSIBLE_COLLECTIONS_PATH`` instead
- Old style vars plugins which use the entrypoints `get_host_vars` or `get_group_vars` are deprecated. The plugin should be updated to inherit from `BaseVarsPlugin` and define a `get_vars` method as the entrypoint.
- Support for Windows Server 2012 and 2012 R2 has been removed as the support end of life from Microsoft is October 10th 2023. These versions of Windows will no longer be tested in this Ansible release and it cannot be guaranteed that they will continue to work going forward.
- ``STRING_CONVERSION_ACTION`` config option is deprecated as it is no longer used in the Ansible Core code base.
- the 'smart' option for setting a connection plugin is being removed as it's main purpose (choosing between ssh and paramiko) is now irrelevant.
- vault and unfault filters - the undocumented ``vaultid`` parameter is deprecated and will be removed in ansible-core 2.20. Use ``vault_id`` instead.
- yum_repository - deprecated parameter 'keepcache' (https://github.com/ansible/ansible/issues/78693).

Removed Features (previously deprecated)
----------------------------------------

- ActionBase - remove deprecated ``_remote_checksum`` method
- PlayIterator - remove deprecated ``cache_block_tasks`` and ``get_original_task`` methods
- Remove deprecated ``FileLock`` class
- Removed Python 3.9 as a supported version on the controller. Python 3.10 or newer is required.
- Removed ``include`` which has been deprecated in Ansible 2.12. Use ``include_tasks`` or ``import_tasks`` instead.
- ``Templar`` - remove deprecated ``shared_loader_obj`` parameter of ``__init__``
- ``fetch_url`` - remove auto disabling ``decompress`` when gzip is not available
- ``get_action_args_with_defaults`` - remove deprecated ``redirected_names`` method parameter
- ansible-test - Removed support for the remote Windows targets 2012 and 2012-R2
- inventory_cache - remove deprecated ``default.fact_caching_prefix`` ini configuration option, use ``defaults.fact_caching_prefix`` instead.
- module_utils/basic.py - Removed Python 3.5 as a supported remote version. Python 2.7 or Python 3.6+ is now required.
- stat - removed unused `get_md5` parameter.

Security Fixes
--------------

- ansible-galaxy - Prevent roles from using symlinks to overwrite files outside of the installation directory (CVE-2023-5115)

Bugfixes
--------

- Allow for searching handler subdir for included task via include_role (https://github.com/ansible/ansible/issues/81722)
- AnsibleModule.run_command - Only use selectors when needed, and rely on Python stdlib subprocess for the simple task of collecting stdout/stderr when prompt matching is not required.
- Cache host_group_vars after instantiating it once and limit the amount of repetitive work it needs to do every time it runs.
- Call PluginLoader.all() once for vars plugins, and load vars plugins that run automatically or are enabled specifically by name subsequently.
- Display - Defensively configure writing to stdout and stderr with a custom encoding error handler that will replace invalid characters while providing a deprecation warning that non-utf8 text will result in an error in a future version.
- Exclude internal options from man pages and docs.
- Fix ``ansible-config init`` man page option indentation.
- Fix ``ast`` deprecation warnings for ``Str`` and ``value.s`` when using Python 3.12.
- Fix ``run_once`` being incorrectly interpreted on handlers (https://github.com/ansible/ansible/issues/81666)
- Fix exceptions caused by various inputs when performing arg splitting or parsing key/value pairs. Resolves issue https://github.com/ansible/ansible/issues/46379 and issue https://github.com/ansible/ansible/issues/61497
- Fix incorrect parsing of multi-line Jinja2 blocks when performing arg splitting or parsing key/value pairs.
- Fix post-validating looped task fields so the strategy uses the correct values after task execution.
- Fixed `pip` module failure in case of usage quotes for `virtualenv_command` option for the venv command. (https://github.com/ansible/ansible/issues/76372)
- From issue https://github.com/ansible/ansible/issues/80880, when notifying a handler from another handler, handler notifications must be registered immediately as the flush_handler call is not recursive.
- Import ``FILE_ATTRIBUTES`` from ``ansible.module_utils.common.file`` in ``ansible.module_utils.basic`` instead of defining it twice.
- Inventory scripts parser not treat exception when getting hostsvar (https://github.com/ansible/ansible/issues/81103)
- On Python 3 use datetime methods ``fromtimestamp`` and ``now`` with UTC timezone instead of ``utcfromtimestamp`` and ``utcnow``, which are deprecated in Python 3.12.
- PluginLoader - fix Jinja plugin performance issues (https://github.com/ansible/ansible/issues/79652)
- PowerShell - Remove some code which is no longer valid for dotnet 5+
- Prevent running same handler multiple times when included via ``include_role`` (https://github.com/ansible/ansible/issues/73643)
- Prompting - add a short sleep between polling for user input to reduce CPU consumption (https://github.com/ansible/ansible/issues/81516).
- Properly disable ``jinja2_native`` in the template module when jinja2 override is used in the template (https://github.com/ansible/ansible/issues/80605)
- Properly template tags in parent blocks (https://github.com/ansible/ansible/issues/81053)
- Remove unreachable parser error for removed ``static`` parameter of ``include_role``
- Replace uses of ``configparser.ConfigParser.readfp()`` which was removed in Python 3.12 with ``configparser.ConfigParser.read_file()`` (https://github.com/ansible/ansible/issues/81656)
- Set filters ``intersect``, ``difference``, ``symmetric_difference`` and ``union`` now always return a ``list``, never a ``set``. Previously, a ``set`` would be returned if the inputs were a hashable type such as ``str``, instead of a collection, such as a ``list`` or ``tuple``.
- Set filters ``intersect``, ``difference``, ``symmetric_difference`` and ``union`` now use set operations when the given items are hashable. Previously, list operations were performed unless the inputs were a hashable type such as ``str``, instead of a collection, such as a ``list`` or ``tuple``.
- Switch result queue from a ``multiprocessing.queues.Queue` to ``multiprocessing.queues.SimpleQueue``, primarily to allow properly handling pickling errors, to prevent an infinite hang waiting for task results
- The ``ansible-config init`` command now has a documentation description.
- The ``ansible-galaxy collection download`` command now has a documentation description.
- The ``ansible-galaxy collection install`` command documentation is now visible (previously hidden by a decorator).
- The ``ansible-galaxy collection verify`` command now has a documentation description.
- The ``ansible-galaxy role install`` command documentation is now visible (previously hidden by a decorator).
- The ``ansible-inventory`` command command now has a documentation description (previously used as the epilog).
- The ``hostname`` module now also updates both current and permanent hostname on OpenBSD. Before it only updated the permanent hostname (https://github.com/ansible/ansible/issues/80520).
- Update module_utils.urls unit test to work with cryptography >= 41.0.0.
- When generating man pages, use ``func`` to find the command function instead of looking it up by the command name.
- ``StrategyBase._process_pending_results`` - create a ``Templar`` on demand for templating ``changed_when``/``failed_when``.
- ``ansible-galaxy`` now considers all collection paths when identifying which collection requirements are already installed. Use the ``COLLECTIONS_PATHS`` and ``COLLECTIONS_SCAN_SYS_PATHS`` config options to modify these. Previously only the install path was considered when resolving the candidates. The install path will remain the only one potentially modified. (https://github.com/ansible/ansible/issues/79767, https://github.com/ansible/ansible/issues/81163)
- ``ansible.module_utils.service`` - ensure binary data transmission in ``daemonize()``
- ``ansible.module_utils.service`` - fix inter-process communication in ``daemonize()``
- ``import_role`` reverts to previous behavior of exporting vars at compile time.
- ``pkg_mgr`` - fix the default dnf version detection
- ansiballz - Prevent issue where the time on the control host could change part way through building the ansiballz file, potentially causing a pre-1980 date to be used during ansiballz unpacking leading to a zip file error (https://github.com/ansible/ansible/issues/80089)
- ansible terminal color settings were incorrectly limited to 16 options via 'choices', removing so all 256 can be accessed.
- ansible-console - fix filtering by collection names when a collection search path was set (https://github.com/ansible/ansible/pull/81450).
- ansible-galaxy - Enabled the ``data`` tarfile filter during role installation for Python versions that support it. A probing mechanism is used to avoid Python versions with a broken implementation.
- ansible-galaxy - Fix issue installing collections containing directories with more than 100 characters on python versions before 3.10.6
- ansible-galaxy - Fix variable type error when installing subdir collections (https://github.com/ansible/ansible/issues/80943)
- ansible-galaxy - Provide a better error message when using a requirements file with an invalid format - https://github.com/ansible/ansible/issues/81901
- ansible-galaxy - fix installing collections from directories that have a trailing path separator (https://github.com/ansible/ansible/issues/77803).
- ansible-galaxy - fix installing signed collections (https://github.com/ansible/ansible/issues/80648).
- ansible-galaxy - reduce API calls to servers by fetching signatures only for final candidates.
- ansible-galaxy - started allowing the use of pre-releases for collections that do not have any stable versions published. (https://github.com/ansible/ansible/pull/81606)
- ansible-galaxy - started allowing the use of pre-releases for dependencies on any level of the dependency tree that specifically demand exact pre-release versions of collections and not version ranges. (https://github.com/ansible/ansible/pull/81606)
- ansible-galaxy collection verify - fix verifying signed collections when the keyring is not configured.
- ansible-galaxy info - fix reporting no role found when lookup_role_by_name returns None.
- ansible-inventory - index available_hosts for major performance boost when dumping large inventories
- ansible-test - Add a ``pylint`` plugin to work around a known issue on Python 3.12.
- ansible-test - Add support for ``argcomplete`` version 3.
- ansible-test - All containers created by ansible-test now include the current test session ID in their name. This avoids conflicts between concurrent ansible-test invocations using the same container host.
- ansible-test - Always use ansible-test managed entry points for ansible-core CLI tools when not running from source. This fixes issues where CLI entry points created during install are not compatible with ansible-test.
- ansible-test - Fix a traceback that occurs when attempting to test Ansible source using a different ansible-test. A clear error message is now given when this scenario occurs.
- ansible-test - Fix handling of timeouts exceeding one day.
- ansible-test - Fix parsing of cgroup entries which contain a ``:`` in the path (https://github.com/ansible/ansible/issues/81977).
- ansible-test - Fix several possible tracebacks when using the ``-e`` option with sanity tests.
- ansible-test - Fix various cases where the test timeout could expire without terminating the tests.
- ansible-test - Include missing ``pylint`` requirements for Python 3.10.
- ansible-test - Pre-build a PyYAML wheel before installing requirements to avoid a potential Cython build failure.
- ansible-test - Remove redundant warning about missing programs before attempting to execute them.
- ansible-test - The ``import`` sanity test now checks the collection loader for remote-only Python support when testing ansible-core.
- ansible-test - Unit tests now report warnings generated during test runs. Previously only warnings generated during test collection were reported.
- ansible-test - Update ``pylint`` to 2.17.2 to resolve several possible false positives.
- ansible-test - Update ``pylint`` to 2.17.3 to resolve several possible false positives.
- ansible-test - Update ``pylint`` to version 3.0.1.
- ansible-test - Use ``raise ... from ...`` when raising exceptions from within an exception handler.
- ansible-test - When bootstrapping remote FreeBSD instances, use the OS packaged ``setuptools`` instead of installing the latest version from PyPI.
- ansible-test local change detection - use ``git merge-base <branch> HEAD`` instead of ``git merge-base --fork-point <branch>`` (https://github.com/ansible/ansible/pull/79734).
- ansible-vault - fail when the destination file location is not writable before performing encryption (https://github.com/ansible/ansible/issues/81455).
- apt - ignore fail_on_autoremove and allow_downgrade parameters when using aptitude (https://github.com/ansible/ansible/issues/77868).
- blockinfile - avoid crash with Python 3 if creating the directory fails when ``create=true`` (https://github.com/ansible/ansible/pull/81662).
- connection timeouts defined in ansible.cfg will now be properly used, the --timeout cli option was obscuring them by always being set.
- copy - print correct destination filename when using `content` and `--diff` (https://github.com/ansible/ansible/issues/79749).
- copy unit tests - Fixing "dir all perms" documentation and formatting for easier reading.
- core will now also look at the connection plugin to force 'local' interpreter for networking path compatibility as just ansible_network_os could be misleading.
- deb822_repository - use http-agent for receiving content (https://github.com/ansible/ansible/issues/80809).
- debconf - idempotency in questions with type 'password' (https://github.com/ansible/ansible/issues/47676).
- distribution facts - fix Source Mage family mapping
- dnf - fix a failure when a package from URI was specified and ``update_only`` was set (https://github.com/ansible/ansible/issues/81376).
- dnf5 - Update dnf5 module to handle API change for setting the download directory (https://github.com/ansible/ansible/issues/80887)
- dnf5 - Use ``transaction.check_gpg_signatures`` API call to check package signatures AND possibly to recover from when keys are missing.
- dnf5 - fix module and package names in the message following failed module respawn attempt
- dnf5 - use the logs API to determine transaction problems
- dpkg_selections - check if the package exists before performing the selection operation (https://github.com/ansible/ansible/issues/81404).
- encrypt - deprecate passlib_or_crypt API (https://github.com/ansible/ansible/issues/55839).
- fetch - Handle unreachable errors properly (https://github.com/ansible/ansible/issues/27816)
- file modules - Make symbolic modes with X use the computed permission, not original file (https://github.com/ansible/ansible/issues/80128)
- file modules - fix validating invalid symbolic modes.
- first found lookup has been updated to use the normalized argument parsing (pythonic) matching the documented examples.
- first found lookup, fixed an issue with subsequent items clobbering information from previous ones.
- first_found lookup now gets 'untemplated' loop entries and handles templating itself as task_executor was removing even 'templatable' entries and breaking functionality. https://github.com/ansible/ansible/issues/70772
- galaxy - check if the target for symlink exists (https://github.com/ansible/ansible/pull/81586).
- galaxy - cross check the collection type and collection source (https://github.com/ansible/ansible/issues/79463).
- gather_facts parallel option was doing the reverse of what was stated, now it does run modules in parallel when True and serially when False.
- handlers - fix ``v2_playbook_on_notify`` callback not being called when notifying handlers
- handlers - the ``listen`` keyword can affect only one handler with the same name, the last one defined as it is a case with the ``notify`` keyword (https://github.com/ansible/ansible/issues/81013)
- include_role - expose variables from parent roles to role's handlers (https://github.com/ansible/ansible/issues/80459)
- inventory_ini - handle SyntaxWarning while parsing ini file in inventory (https://github.com/ansible/ansible/issues/81457).
- iptables - remove default rule creation when creating iptables chain to be more similar to the command line utility (https://github.com/ansible/ansible/issues/80256).
- lib/ansible/utils/encrypt.py - remove unused private ``_LOCK`` (https://github.com/ansible/ansible/issues/81613)
- lookup/url.py - Fix incorrect var/env/ini entry for `force_basic_auth`
- man page build - Remove the dependency on the ``docs`` directory for building man pages.
- man page build - Sub commands of ``ansible-galaxy role`` and ``ansible-galaxy collection`` are now documented.
- module responses - Ensure that module responses are utf-8 adhereing to JSON RFC and expectations of the core code.
- module/role argument spec - validate the type for options that are None when the option is required or has a non-None default (https://github.com/ansible/ansible/issues/79656).
- modules/user.py - Add check for valid directory when creating new user homedir (allows /dev/null as skeleton) (https://github.com/ansible/ansible/issues/75063)
- paramiko_ssh, psrp, and ssh connection plugins - ensure that all values for options that should be strings are actually converted to strings (https://github.com/ansible/ansible/pull/81029).
- password_hash - fix salt format for ``crypt``  (only used if ``passlib`` is not installed) for the ``bcrypt`` algorithm.
- pep517 build backend - Copy symlinks when copying the source tree. This avoids tracebacks in various scenarios, such as when a venv is present in the source tree.
- pep517 build backend - Use the documented ``import_module`` import from ``importlib``.
- pip module - Update module to prefer use of the python ``packaging`` and ``importlib.metadata`` modules due to ``pkg_resources`` being deprecated (https://github.com/ansible/ansible/issues/80488)
- pkg_mgr.py - Fix `ansible_pkg_mgr` incorrect in TencentOS Server Linux
- pkg_mgr.py - Fix `ansible_pkg_mgr` is unknown in Kylin Linux (https://github.com/ansible/ansible/issues/81332)
- powershell modules - Only set an rc of 1 if the PowerShell pipeline signaled an error occurred AND there are error records present. Previously it would do so only if the error signal was present without checking the error count.
- replace - handle exception when bad escape character is provided in replace (https://github.com/ansible/ansible/issues/79364).
- role deduplication - don't deduplicate before a role has had a task run for that particular host (https://github.com/ansible/ansible/issues/81486).
- service module, does not permanently configure flags flags on Openbsd when enabling/disabling a service.
- service module, enable/disable is not a exclusive action in checkmode anymore.
- setup gather_timeout - Fix timeout in get_mounts_facts for linux.
- setup module (fact gathering) will now try to be smarter about different versions of facter emitting error when --puppet flag is used w/o puppet.
- syntax check - Limit ``--syntax-check`` to ``ansible-playbook`` only, as that is the only CLI affected by this argument (https://github.com/ansible/ansible/issues/80506)
- tarfile - handle data filter deprecation warning message for extract and extractall (https://github.com/ansible/ansible/issues/80832).
- template - Fix for formatting issues when a template path contains valid jinja/strftime pattern (especially line break one) and using the template path in ansible_managed (https://github.com/ansible/ansible/pull/79129)
- templating - In the template action and lookup, use local jinja2 environment overlay overrides instead of mutating the templars environment
- templating - prevent setting arbitrary attributes on Jinja2 environments via Jinja2 overrides in templates
- templating escape and single var optimization now use correct delimiters when custom ones are provided either via task or template header.
- unarchive - fix unarchiving sources that are copied to the remote node using a relative temporory directory path (https://github.com/ansible/ansible/issues/80710).
- uri - fix search for JSON type to include complex strings containing '+'
- uri/urls - Add compat function to handle the ability to parse the filename from a Content-Disposition header (https://github.com/ansible/ansible/issues/81806)
- urls.py - fixed cert_file and key_file parameters when running on Python 3.12 - https://github.com/ansible/ansible/issues/80490
- user - set expiration value correctly when unable to retrieve the current value from the system (https://github.com/ansible/ansible/issues/71916)
- validate-modules sanity test - replace semantic markup parsing and validating code with the code from `antsibull-docs-parser 0.2.0 <https://github.com/ansible-community/antsibull-docs-parser/releases/tag/0.2.0>`__ (https://github.com/ansible/ansible/pull/80406).
- vars_prompt - internally convert the ``unsafe`` value to ``bool``
- vault and unvault filters now properly take ``vault_id`` parameter.
- win_fetch - Add support for using file with wildcards in file name. (https://github.com/ansible/ansible/issues/73128)
- winrm - Better handle send input failures when communicating with hosts under load


(adam)
diff -r1.24 -r1.25 pkgsrc/sysutils/ansible-core/Makefile
diff -r1.7 -r1.8 pkgsrc/sysutils/ansible-core/PLIST
diff -r1.20 -r1.21 pkgsrc/sysutils/ansible-core/distinfo

cvs diff -r1.24 -r1.25 pkgsrc/sysutils/ansible-core/Makefile (expand / switch to unified diff)

--- pkgsrc/sysutils/ansible-core/Makefile 2023/10/11 08:25:32 1.24
+++ pkgsrc/sysutils/ansible-core/Makefile 2023/11/17 20:07:33 1.25
@@ -1,26 +1,28 @@ @@ -1,26 +1,28 @@
1# $NetBSD: Makefile,v 1.24 2023/10/11 08:25:32 adam Exp $ 1# $NetBSD: Makefile,v 1.25 2023/11/17 20:07:33 adam Exp $
2 2
3DISTNAME= ansible-core-2.15.5 3DISTNAME= ansible-core-2.16.0
4CATEGORIES= sysutils python 4CATEGORIES= sysutils python
5MASTER_SITES= ${MASTER_SITE_PYPI:=a/ansible-core/} 5MASTER_SITES= ${MASTER_SITE_PYPI:=a/ansible-core/}
6 6
7MAINTAINER= pkgsrc-users@NetBSD.org 7MAINTAINER= pkgsrc-users@NetBSD.org
8HOMEPAGE= https://ansible.com/ 8HOMEPAGE= https://ansible.com/
9COMMENT= SSH-based configuration management, deployment, and task execution 9COMMENT= SSH-based configuration management, deployment, and task execution
10LICENSE= gnu-gpl-v3 10LICENSE= gnu-gpl-v3
11 11
12CONFLICTS+= ansible<2.10 12CONFLICTS+= ansible<2.10
13 13
 14TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools>=66.1.0:../../devel/py-setuptools
 15TOOL_DEPENDS+= ${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
14DEPENDS+= ${PYPKGPREFIX}-jinja2>=3.0.0:../../textproc/py-jinja2 16DEPENDS+= ${PYPKGPREFIX}-jinja2>=3.0.0:../../textproc/py-jinja2
15DEPENDS+= ${PYPKGPREFIX}-packaging-[0-9]*:../../devel/py-packaging 17DEPENDS+= ${PYPKGPREFIX}-packaging-[0-9]*:../../devel/py-packaging
16DEPENDS+= ${PYPKGPREFIX}-paramiko-[0-9]*:../../security/py-paramiko 18DEPENDS+= ${PYPKGPREFIX}-paramiko-[0-9]*:../../security/py-paramiko
17DEPENDS+= ${PYPKGPREFIX}-resolvelib>=0.5.3:../../devel/py-resolvelib 19DEPENDS+= ${PYPKGPREFIX}-resolvelib>=0.5.3:../../devel/py-resolvelib
18DEPENDS+= ${PYPKGPREFIX}-yaml>=5.1:../../textproc/py-yaml 20DEPENDS+= ${PYPKGPREFIX}-yaml>=5.1:../../textproc/py-yaml
19 21
20USE_TOOLS+= gmake 22USE_TOOLS+= gmake
21 23
22PYTHON_VERSIONS_INCOMPATIBLE= 27 38 24PYTHON_VERSIONS_INCOMPATIBLE= 27 38
23 25
24.include "../../lang/python/pyversion.mk" 26.include "../../lang/python/pyversion.mk"
25.if ${PYTHON_VERSION} < 310 27.if ${PYTHON_VERSION} < 310
26DEPENDS+= ${PYPKGPREFIX}-importlib-resources>=5.0:../../devel/py-importlib-resources 28DEPENDS+= ${PYPKGPREFIX}-importlib-resources>=5.0:../../devel/py-importlib-resources
@@ -40,18 +42,18 @@ SUBST_STAGE.paths= pre-configure @@ -40,18 +42,18 @@ SUBST_STAGE.paths= pre-configure
40SUBST_FILES.paths+= lib/ansible/config/base.yml 42SUBST_FILES.paths+= lib/ansible/config/base.yml
41SUBST_FILES.paths+= lib/ansible/module_utils/urls.py 43SUBST_FILES.paths+= lib/ansible/module_utils/urls.py
42SUBST_MESSAGE.paths= Fixing hardcoded paths. 44SUBST_MESSAGE.paths= Fixing hardcoded paths.
43SUBST_SED.paths= -e "s,/usr/share/ansible,${PREFIX}/share/ansible,g" 45SUBST_SED.paths= -e "s,/usr/share/ansible,${PREFIX}/share/ansible,g"
44SUBST_SED.paths+= -e "s,/etc/ansible,${PKG_SYSCONFDIR},g" 46SUBST_SED.paths+= -e "s,/etc/ansible,${PKG_SYSCONFDIR},g"
45 47
46INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 ${EGDIR} 48INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 ${EGDIR}
47OWN_DIRS= ${PREFIX}/share/ansible 49OWN_DIRS= ${PREFIX}/share/ansible
48 50
49# Contains hardcoded paths to expected locations of package managers. 51# Contains hardcoded paths to expected locations of package managers.
50CHECK_WRKREF_SKIP+= */ansible/module_utils/facts/system/pkg_mgr.py 52CHECK_WRKREF_SKIP+= */ansible/module_utils/facts/system/pkg_mgr.py
51 53
52.include "../../lang/python/application.mk" 54.include "../../lang/python/application.mk"
53.include "../../lang/python/egg.mk" 55.include "../../lang/python/wheel.mk"
54.include "../../lang/python/tool.mk" 56.include "../../lang/python/tool.mk"
55PYTHON_VERSIONED_DEPENDENCIES+= cryptography 57PYTHON_VERSIONED_DEPENDENCIES+= cryptography
56.include "../../lang/python/versioned_dependencies.mk" 58.include "../../lang/python/versioned_dependencies.mk"
57.include "../../mk/bsd.pkg.mk" 59.include "../../mk/bsd.pkg.mk"

cvs diff -r1.7 -r1.8 pkgsrc/sysutils/ansible-core/PLIST (expand / switch to unified diff)

--- pkgsrc/sysutils/ansible-core/PLIST 2023/08/23 07:22:06 1.7
+++ pkgsrc/sysutils/ansible-core/PLIST 2023/11/17 20:07:33 1.8
@@ -1,33 +1,32 @@ @@ -1,33 +1,32 @@
1@comment $NetBSD: PLIST,v 1.7 2023/08/23 07:22:06 adam Exp $ 1@comment $NetBSD: PLIST,v 1.8 2023/11/17 20:07:33 adam Exp $
2bin/ansible 2bin/ansible
3bin/ansible-config 3bin/ansible-config
4bin/ansible-connection 4bin/ansible-connection
5bin/ansible-console 5bin/ansible-console
6bin/ansible-doc 6bin/ansible-doc
7bin/ansible-galaxy 7bin/ansible-galaxy
8bin/ansible-inventory 8bin/ansible-inventory
9bin/ansible-playbook 9bin/ansible-playbook
10bin/ansible-pull 10bin/ansible-pull
11bin/ansible-test 11bin/ansible-test
12bin/ansible-vault 12bin/ansible-vault
13@pkgdir etc/ansible 13@pkgdir etc/ansible
14${PYSITELIB}/${EGG_INFODIR}/PKG-INFO 14${PYSITELIB}/${WHEEL_INFODIR}/COPYING
15${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt 15${PYSITELIB}/${WHEEL_INFODIR}/METADATA
16${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt 16${PYSITELIB}/${WHEEL_INFODIR}/RECORD
17${PYSITELIB}/${EGG_INFODIR}/entry_points.txt 17${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
18${PYSITELIB}/${EGG_INFODIR}/not-zip-safe 18${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
19${PYSITELIB}/${EGG_INFODIR}/requires.txt 19${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
20${PYSITELIB}/${EGG_INFODIR}/top_level.txt 
21${PYSITELIB}/ansible/__init__.py 20${PYSITELIB}/ansible/__init__.py
22${PYSITELIB}/ansible/__init__.pyc 21${PYSITELIB}/ansible/__init__.pyc
23${PYSITELIB}/ansible/__init__.pyo 22${PYSITELIB}/ansible/__init__.pyo
24${PYSITELIB}/ansible/__main__.py 23${PYSITELIB}/ansible/__main__.py
25${PYSITELIB}/ansible/__main__.pyc 24${PYSITELIB}/ansible/__main__.pyc
26${PYSITELIB}/ansible/__main__.pyo 25${PYSITELIB}/ansible/__main__.pyo
27${PYSITELIB}/ansible/_vendor/__init__.py 26${PYSITELIB}/ansible/_vendor/__init__.py
28${PYSITELIB}/ansible/_vendor/__init__.pyc 27${PYSITELIB}/ansible/_vendor/__init__.pyc
29${PYSITELIB}/ansible/_vendor/__init__.pyo 28${PYSITELIB}/ansible/_vendor/__init__.pyo
30${PYSITELIB}/ansible/cli/__init__.py 29${PYSITELIB}/ansible/cli/__init__.py
31${PYSITELIB}/ansible/cli/__init__.pyc 30${PYSITELIB}/ansible/cli/__init__.pyc
32${PYSITELIB}/ansible/cli/__init__.pyo 31${PYSITELIB}/ansible/cli/__init__.pyo
33${PYSITELIB}/ansible/cli/adhoc.py 32${PYSITELIB}/ansible/cli/adhoc.py
@@ -363,26 +362,29 @@ ${PYSITELIB}/ansible/module_utils/common @@ -363,26 +362,29 @@ ${PYSITELIB}/ansible/module_utils/common
363${PYSITELIB}/ansible/module_utils/common/validation.pyo 362${PYSITELIB}/ansible/module_utils/common/validation.pyo
364${PYSITELIB}/ansible/module_utils/common/warnings.py 363${PYSITELIB}/ansible/module_utils/common/warnings.py
365${PYSITELIB}/ansible/module_utils/common/warnings.pyc 364${PYSITELIB}/ansible/module_utils/common/warnings.pyc
366${PYSITELIB}/ansible/module_utils/common/warnings.pyo 365${PYSITELIB}/ansible/module_utils/common/warnings.pyo
367${PYSITELIB}/ansible/module_utils/common/yaml.py 366${PYSITELIB}/ansible/module_utils/common/yaml.py
368${PYSITELIB}/ansible/module_utils/common/yaml.pyc 367${PYSITELIB}/ansible/module_utils/common/yaml.pyc
369${PYSITELIB}/ansible/module_utils/common/yaml.pyo 368${PYSITELIB}/ansible/module_utils/common/yaml.pyo
370${PYSITELIB}/ansible/module_utils/compat/__init__.py 369${PYSITELIB}/ansible/module_utils/compat/__init__.py
371${PYSITELIB}/ansible/module_utils/compat/__init__.pyc 370${PYSITELIB}/ansible/module_utils/compat/__init__.pyc
372${PYSITELIB}/ansible/module_utils/compat/__init__.pyo 371${PYSITELIB}/ansible/module_utils/compat/__init__.pyo
373${PYSITELIB}/ansible/module_utils/compat/_selectors2.py 372${PYSITELIB}/ansible/module_utils/compat/_selectors2.py
374${PYSITELIB}/ansible/module_utils/compat/_selectors2.pyc 373${PYSITELIB}/ansible/module_utils/compat/_selectors2.pyc
375${PYSITELIB}/ansible/module_utils/compat/_selectors2.pyo 374${PYSITELIB}/ansible/module_utils/compat/_selectors2.pyo
 375${PYSITELIB}/ansible/module_utils/compat/datetime.py
 376${PYSITELIB}/ansible/module_utils/compat/datetime.pyc
 377${PYSITELIB}/ansible/module_utils/compat/datetime.pyo
376${PYSITELIB}/ansible/module_utils/compat/importlib.py 378${PYSITELIB}/ansible/module_utils/compat/importlib.py
377${PYSITELIB}/ansible/module_utils/compat/importlib.pyc 379${PYSITELIB}/ansible/module_utils/compat/importlib.pyc
378${PYSITELIB}/ansible/module_utils/compat/importlib.pyo 380${PYSITELIB}/ansible/module_utils/compat/importlib.pyo
379${PYSITELIB}/ansible/module_utils/compat/paramiko.py 381${PYSITELIB}/ansible/module_utils/compat/paramiko.py
380${PYSITELIB}/ansible/module_utils/compat/paramiko.pyc 382${PYSITELIB}/ansible/module_utils/compat/paramiko.pyc
381${PYSITELIB}/ansible/module_utils/compat/paramiko.pyo 383${PYSITELIB}/ansible/module_utils/compat/paramiko.pyo
382${PYSITELIB}/ansible/module_utils/compat/selectors.py 384${PYSITELIB}/ansible/module_utils/compat/selectors.py
383${PYSITELIB}/ansible/module_utils/compat/selectors.pyc 385${PYSITELIB}/ansible/module_utils/compat/selectors.pyc
384${PYSITELIB}/ansible/module_utils/compat/selectors.pyo 386${PYSITELIB}/ansible/module_utils/compat/selectors.pyo
385${PYSITELIB}/ansible/module_utils/compat/selinux.py 387${PYSITELIB}/ansible/module_utils/compat/selinux.py
386${PYSITELIB}/ansible/module_utils/compat/selinux.pyc 388${PYSITELIB}/ansible/module_utils/compat/selinux.pyc
387${PYSITELIB}/ansible/module_utils/compat/selinux.pyo 389${PYSITELIB}/ansible/module_utils/compat/selinux.pyo
388${PYSITELIB}/ansible/module_utils/compat/typing.py 390${PYSITELIB}/ansible/module_utils/compat/typing.py
@@ -658,29 +660,26 @@ ${PYSITELIB}/ansible/module_utils/six/__ @@ -658,29 +660,26 @@ ${PYSITELIB}/ansible/module_utils/six/__
658${PYSITELIB}/ansible/module_utils/six/__init__.pyo 660${PYSITELIB}/ansible/module_utils/six/__init__.pyo
659${PYSITELIB}/ansible/module_utils/splitter.py 661${PYSITELIB}/ansible/module_utils/splitter.py
660${PYSITELIB}/ansible/module_utils/splitter.pyc 662${PYSITELIB}/ansible/module_utils/splitter.pyc
661${PYSITELIB}/ansible/module_utils/splitter.pyo 663${PYSITELIB}/ansible/module_utils/splitter.pyo
662${PYSITELIB}/ansible/module_utils/urls.py 664${PYSITELIB}/ansible/module_utils/urls.py
663${PYSITELIB}/ansible/module_utils/urls.pyc 665${PYSITELIB}/ansible/module_utils/urls.pyc
664${PYSITELIB}/ansible/module_utils/urls.pyo 666${PYSITELIB}/ansible/module_utils/urls.pyo
665${PYSITELIB}/ansible/module_utils/yumdnf.py 667${PYSITELIB}/ansible/module_utils/yumdnf.py
666${PYSITELIB}/ansible/module_utils/yumdnf.pyc 668${PYSITELIB}/ansible/module_utils/yumdnf.pyc
667${PYSITELIB}/ansible/module_utils/yumdnf.pyo 669${PYSITELIB}/ansible/module_utils/yumdnf.pyo
668${PYSITELIB}/ansible/modules/__init__.py 670${PYSITELIB}/ansible/modules/__init__.py
669${PYSITELIB}/ansible/modules/__init__.pyc 671${PYSITELIB}/ansible/modules/__init__.pyc
670${PYSITELIB}/ansible/modules/__init__.pyo 672${PYSITELIB}/ansible/modules/__init__.pyo
671${PYSITELIB}/ansible/modules/_include.py 
672${PYSITELIB}/ansible/modules/_include.pyc 
673${PYSITELIB}/ansible/modules/_include.pyo 
674${PYSITELIB}/ansible/modules/add_host.py 673${PYSITELIB}/ansible/modules/add_host.py
675${PYSITELIB}/ansible/modules/add_host.pyc 674${PYSITELIB}/ansible/modules/add_host.pyc
676${PYSITELIB}/ansible/modules/add_host.pyo 675${PYSITELIB}/ansible/modules/add_host.pyo
677${PYSITELIB}/ansible/modules/apt.py 676${PYSITELIB}/ansible/modules/apt.py
678${PYSITELIB}/ansible/modules/apt.pyc 677${PYSITELIB}/ansible/modules/apt.pyc
679${PYSITELIB}/ansible/modules/apt.pyo 678${PYSITELIB}/ansible/modules/apt.pyo
680${PYSITELIB}/ansible/modules/apt_key.py 679${PYSITELIB}/ansible/modules/apt_key.py
681${PYSITELIB}/ansible/modules/apt_key.pyc 680${PYSITELIB}/ansible/modules/apt_key.pyc
682${PYSITELIB}/ansible/modules/apt_key.pyo 681${PYSITELIB}/ansible/modules/apt_key.pyo
683${PYSITELIB}/ansible/modules/apt_repository.py 682${PYSITELIB}/ansible/modules/apt_repository.py
684${PYSITELIB}/ansible/modules/apt_repository.pyc 683${PYSITELIB}/ansible/modules/apt_repository.pyc
685${PYSITELIB}/ansible/modules/apt_repository.pyo 684${PYSITELIB}/ansible/modules/apt_repository.pyo
686${PYSITELIB}/ansible/modules/assemble.py 685${PYSITELIB}/ansible/modules/assemble.py
@@ -1929,29 +1928,26 @@ ${PYSITELIB}/ansible_test/_internal/comm @@ -1929,29 +1928,26 @@ ${PYSITELIB}/ansible_test/_internal/comm
1929${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/aws.pyo 1928${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/aws.pyo
1930${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/azure.py 1929${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/azure.py
1931${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/azure.pyc 1930${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/azure.pyc
1932${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/azure.pyo 1931${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/azure.pyo
1933${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cloudscale.py 1932${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cloudscale.py
1934${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cloudscale.pyc 1933${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cloudscale.pyc
1935${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cloudscale.pyo 1934${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cloudscale.pyo
1936${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cs.py 1935${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cs.py
1937${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cs.pyc 1936${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cs.pyc
1938${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cs.pyo 1937${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/cs.pyo
1939${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/digitalocean.py 1938${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/digitalocean.py
1940${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/digitalocean.pyc 1939${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/digitalocean.pyc
1941${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/digitalocean.pyo 1940${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/digitalocean.pyo
1942${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/foreman.py 
1943${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/foreman.pyc 
1944${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/foreman.pyo 
1945${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/galaxy.py 1941${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/galaxy.py
1946${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/galaxy.pyc 1942${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/galaxy.pyc
1947${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/galaxy.pyo 1943${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/galaxy.pyo
1948${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/gcp.py 1944${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/gcp.py
1949${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/gcp.pyc 1945${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/gcp.pyc
1950${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/gcp.pyo 1946${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/gcp.pyo
1951${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/hcloud.py 1947${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/hcloud.py
1952${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/hcloud.pyc 1948${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/hcloud.pyc
1953${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/hcloud.pyo 1949${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/hcloud.pyo
1954${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/httptester.py 1950${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/httptester.py
1955${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/httptester.pyc 1951${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/httptester.pyc
1956${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/httptester.pyo 1952${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/httptester.pyo
1957${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/nios.py 1953${PYSITELIB}/ansible_test/_internal/commands/integration/cloud/nios.py
@@ -2290,26 +2286,29 @@ ${PYSITELIB}/ansible_test/_util/controll @@ -2290,26 +2286,29 @@ ${PYSITELIB}/ansible_test/_util/controll
2290${PYSITELIB}/ansible_test/_util/controller/sanity/mypy/modules.ini 2286${PYSITELIB}/ansible_test/_util/controller/sanity/mypy/modules.ini
2291${PYSITELIB}/ansible_test/_util/controller/sanity/mypy/packaging.ini 2287${PYSITELIB}/ansible_test/_util/controller/sanity/mypy/packaging.ini
2292${PYSITELIB}/ansible_test/_util/controller/sanity/pep8/current-ignore.txt 2288${PYSITELIB}/ansible_test/_util/controller/sanity/pep8/current-ignore.txt
2293${PYSITELIB}/ansible_test/_util/controller/sanity/pslint/pslint.ps1 2289${PYSITELIB}/ansible_test/_util/controller/sanity/pslint/pslint.ps1
2294${PYSITELIB}/ansible_test/_util/controller/sanity/pslint/settings.psd1 2290${PYSITELIB}/ansible_test/_util/controller/sanity/pslint/settings.psd1
2295${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/ansible-test-target.cfg 2291${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/ansible-test-target.cfg
2296${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/ansible-test.cfg 2292${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/ansible-test.cfg
2297${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/code-smell.cfg 2293${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/code-smell.cfg
2298${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/collection.cfg 2294${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/collection.cfg
2299${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/default.cfg 2295${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/config/default.cfg
2300${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/deprecated.py 2296${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/deprecated.py
2301${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/deprecated.pyc 2297${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/deprecated.pyc
2302${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/deprecated.pyo 2298${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/deprecated.pyo
 2299${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/hide_unraisable.py
 2300${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/hide_unraisable.pyc
 2301${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/hide_unraisable.pyo
2303${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/string_format.py 2302${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/string_format.py
2304${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/string_format.pyc 2303${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/string_format.pyc
2305${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/string_format.pyo 2304${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/string_format.pyo
2306${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/unwanted.py 2305${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/unwanted.py
2307${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/unwanted.pyc 2306${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/unwanted.pyc
2308${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/unwanted.pyo 2307${PYSITELIB}/ansible_test/_util/controller/sanity/pylint/plugins/unwanted.pyo
2309${PYSITELIB}/ansible_test/_util/controller/sanity/shellcheck/exclude.txt 2308${PYSITELIB}/ansible_test/_util/controller/sanity/shellcheck/exclude.txt
2310${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate.py 2309${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate.py
2311${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate.pyc 2310${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate.pyc
2312${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate.pyo 2311${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate.pyo
2313${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate_modules/__init__.py 2312${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate_modules/__init__.py
2314${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate_modules/__init__.pyc 2313${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate_modules/__init__.pyc
2315${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate_modules/__init__.pyo 2314${PYSITELIB}/ansible_test/_util/controller/sanity/validate-modules/validate_modules/__init__.pyo
@@ -2348,39 +2347,41 @@ ${PYSITELIB}/ansible_test/_util/target/_ @@ -2348,39 +2347,41 @@ ${PYSITELIB}/ansible_test/_util/target/_
2348${PYSITELIB}/ansible_test/_util/target/cli/ansible_test_cli_stub.py 2347${PYSITELIB}/ansible_test/_util/target/cli/ansible_test_cli_stub.py
2349${PYSITELIB}/ansible_test/_util/target/cli/ansible_test_cli_stub.pyc 2348${PYSITELIB}/ansible_test/_util/target/cli/ansible_test_cli_stub.pyc
2350${PYSITELIB}/ansible_test/_util/target/cli/ansible_test_cli_stub.pyo 2349${PYSITELIB}/ansible_test/_util/target/cli/ansible_test_cli_stub.pyo
2351${PYSITELIB}/ansible_test/_util/target/common/__init__.py 2350${PYSITELIB}/ansible_test/_util/target/common/__init__.py
2352${PYSITELIB}/ansible_test/_util/target/common/__init__.pyc 2351${PYSITELIB}/ansible_test/_util/target/common/__init__.pyc
2353${PYSITELIB}/ansible_test/_util/target/common/__init__.pyo 2352${PYSITELIB}/ansible_test/_util/target/common/__init__.pyo
2354${PYSITELIB}/ansible_test/_util/target/common/constants.py 2353${PYSITELIB}/ansible_test/_util/target/common/constants.py
2355${PYSITELIB}/ansible_test/_util/target/common/constants.pyc 2354${PYSITELIB}/ansible_test/_util/target/common/constants.pyc
2356${PYSITELIB}/ansible_test/_util/target/common/constants.pyo 2355${PYSITELIB}/ansible_test/_util/target/common/constants.pyo
2357${PYSITELIB}/ansible_test/_util/target/injector/python.py 2356${PYSITELIB}/ansible_test/_util/target/injector/python.py
2358${PYSITELIB}/ansible_test/_util/target/injector/python.pyc 2357${PYSITELIB}/ansible_test/_util/target/injector/python.pyc
2359${PYSITELIB}/ansible_test/_util/target/injector/python.pyo 2358${PYSITELIB}/ansible_test/_util/target/injector/python.pyo
2360${PYSITELIB}/ansible_test/_util/target/injector/virtualenv.sh 2359${PYSITELIB}/ansible_test/_util/target/injector/virtualenv.sh
 2360${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_forked.py
 2361${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_forked.pyc
 2362${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_forked.pyo
2361${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py 2363${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py
2362${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.pyc 2364${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.pyc
2363${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.pyo 2365${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.pyo
2364${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_coverage.py 2366${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_coverage.py
2365${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_coverage.pyc 2367${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_coverage.pyc
2366${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_coverage.pyo 2368${PYSITELIB}/ansible_test/_util/target/pytest/plugins/ansible_pytest_coverage.pyo
2367${PYSITELIB}/ansible_test/_util/target/sanity/compile/compile.py 2369${PYSITELIB}/ansible_test/_util/target/sanity/compile/compile.py
2368${PYSITELIB}/ansible_test/_util/target/sanity/compile/compile.pyc 2370${PYSITELIB}/ansible_test/_util/target/sanity/compile/compile.pyc
2369${PYSITELIB}/ansible_test/_util/target/sanity/compile/compile.pyo 2371${PYSITELIB}/ansible_test/_util/target/sanity/compile/compile.pyo
2370${PYSITELIB}/ansible_test/_util/target/sanity/import/importer.py 2372${PYSITELIB}/ansible_test/_util/target/sanity/import/importer.py
2371${PYSITELIB}/ansible_test/_util/target/sanity/import/importer.pyc 2373${PYSITELIB}/ansible_test/_util/target/sanity/import/importer.pyc
2372${PYSITELIB}/ansible_test/_util/target/sanity/import/importer.pyo 2374${PYSITELIB}/ansible_test/_util/target/sanity/import/importer.pyo
2373${PYSITELIB}/ansible_test/_util/target/setup/ConfigureRemotingForAnsible.ps1 
2374${PYSITELIB}/ansible_test/_util/target/setup/bootstrap.sh 2375${PYSITELIB}/ansible_test/_util/target/setup/bootstrap.sh
2375${PYSITELIB}/ansible_test/_util/target/setup/check_systemd_cgroup_v1.sh 2376${PYSITELIB}/ansible_test/_util/target/setup/check_systemd_cgroup_v1.sh
2376${PYSITELIB}/ansible_test/_util/target/setup/probe_cgroups.py 2377${PYSITELIB}/ansible_test/_util/target/setup/probe_cgroups.py
2377${PYSITELIB}/ansible_test/_util/target/setup/probe_cgroups.pyc 2378${PYSITELIB}/ansible_test/_util/target/setup/probe_cgroups.pyc
2378${PYSITELIB}/ansible_test/_util/target/setup/probe_cgroups.pyo 2379${PYSITELIB}/ansible_test/_util/target/setup/probe_cgroups.pyo
2379${PYSITELIB}/ansible_test/_util/target/setup/quiet_pip.py 2380${PYSITELIB}/ansible_test/_util/target/setup/quiet_pip.py
2380${PYSITELIB}/ansible_test/_util/target/setup/quiet_pip.pyc 2381${PYSITELIB}/ansible_test/_util/target/setup/quiet_pip.pyc
2381${PYSITELIB}/ansible_test/_util/target/setup/quiet_pip.pyo 2382${PYSITELIB}/ansible_test/_util/target/setup/quiet_pip.pyo
2382${PYSITELIB}/ansible_test/_util/target/setup/requirements.py 2383${PYSITELIB}/ansible_test/_util/target/setup/requirements.py
2383${PYSITELIB}/ansible_test/_util/target/setup/requirements.pyc 2384${PYSITELIB}/ansible_test/_util/target/setup/requirements.pyc
2384${PYSITELIB}/ansible_test/_util/target/setup/requirements.pyo 2385${PYSITELIB}/ansible_test/_util/target/setup/requirements.pyo
2385${PYSITELIB}/ansible_test/_util/target/tools/virtualenvcheck.py 2386${PYSITELIB}/ansible_test/_util/target/tools/virtualenvcheck.py
2386${PYSITELIB}/ansible_test/_util/target/tools/virtualenvcheck.pyc 2387${PYSITELIB}/ansible_test/_util/target/tools/virtualenvcheck.pyc

cvs diff -r1.20 -r1.21 pkgsrc/sysutils/ansible-core/distinfo (expand / switch to unified diff)

--- pkgsrc/sysutils/ansible-core/distinfo 2023/10/11 08:25:32 1.20
+++ pkgsrc/sysutils/ansible-core/distinfo 2023/11/17 20:07:33 1.21
@@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
1$NetBSD: distinfo,v 1.20 2023/10/11 08:25:32 adam Exp $ 1$NetBSD: distinfo,v 1.21 2023/11/17 20:07:33 adam Exp $
2 2
3BLAKE2s (ansible-core-2.15.5.tar.gz) = 6293ecd2ec68b6c22ca44e65d5c27b4d9324818455748222b75a1eb69e053b8c 3BLAKE2s (ansible-core-2.16.0.tar.gz) = b7f49ceb4b7f7c1852ef0c6df973dd12749cc948c5b2b4fabf018eb8acf5554b
4SHA512 (ansible-core-2.15.5.tar.gz) = 820c455d4e9703fc0edebdc917325b7dc5a47c29fbaaac701e3b4d975cd17ebcdffefeec178c57b15f11ccdc57cbd649cd070031fd927c1f35819d4955e19cc0 4SHA512 (ansible-core-2.16.0.tar.gz) = 1a94d958423f8a6b3f74f3c88157c21cced9c5332db2e3f601aa54360a0d9434082f61c2d5c3356beb19cd17b876f27d5c8f6b12e17360334a41ce25cf7fd5c0
5Size (ansible-core-2.15.5.tar.gz) = 3154868 bytes 5Size (ansible-core-2.16.0.tar.gz) = 3155083 bytes
6SHA1 (patch-lib_ansible_module__utils_facts_hardware_netbsd.py) = cdc41b104bffab7badd00446a9d0cdecba32cca2 6SHA1 (patch-lib_ansible_module__utils_facts_hardware_netbsd.py) = cdc41b104bffab7badd00446a9d0cdecba32cca2