Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ansible-core for openSUSE:Factory checked in at 2026-02-27 17:12:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ansible-core (Old) and /work/SRC/openSUSE:Factory/.ansible-core.new.29461 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ansible-core" Fri Feb 27 17:12:11 2026 rev:53 rq:1335402 version:2.20.3 Changes: -------- --- /work/SRC/openSUSE:Factory/ansible-core/ansible-core.changes 2026-02-03 21:29:47.296322512 +0100 +++ /work/SRC/openSUSE:Factory/.ansible-core.new.29461/ansible-core.changes 2026-02-27 17:13:19.224597752 +0100 @@ -1,0 +2,18 @@ +Fri Feb 27 07:28:30 UTC 2026 - Johannes Kastl <[email protected]> + +- update to 2.20.3: + https://github.com/ansible/ansible/blob/v2.20.3/changelogs/CHANGELOG-v2.20.rst + * Minor Changes + - ansible-test - Update URL used to download FreeBSD wheels for + managed remotes. + - ansible-test - Use the new API endpoint for the Ansible Core + CI service. + * Bugfixes + - Fix interpreter discovery on delegated async tasks (#86491) + - Fix up the Action plugin '_make_tmp_path' error to only + include the command run rather than the shell's dataclass + repr from mkdtemp. + - local connection - Pass correct type to become plugins when + checking password (#86458) + +------------------------------------------------------------------- Old: ---- ansible_core-2.20.2.tar.gz ansible_core-2.20.2.tar.gz.sha256 New: ---- ansible_core-2.20.3.tar.gz ansible_core-2.20.3.tar.gz.sha256 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ansible-core.spec ++++++ --- /var/tmp/diff_new_pack.xpfCNG/_old 2026-02-27 17:13:20.400646424 +0100 +++ /var/tmp/diff_new_pack.xpfCNG/_new 2026-02-27 17:13:20.404646590 +0100 @@ -43,7 +43,7 @@ %endif Name: ansible-core -Version: 2.20.2 +Version: 2.20.3 Release: 0 Summary: Radically simple IT automation License: GPL-3.0-or-later ++++++ ansible_core-2.20.2.tar.gz -> ansible_core-2.20.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/PKG-INFO new/ansible_core-2.20.3/PKG-INFO --- old/ansible_core-2.20.2/PKG-INFO 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/PKG-INFO 2026-02-24 00:08:01.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: ansible-core -Version: 2.20.2 +Version: 2.20.3 Summary: Radically simple IT automation Author: Ansible Project Project-URL: Homepage, https://ansible.com/ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/ansible_core.egg-info/PKG-INFO new/ansible_core-2.20.3/ansible_core.egg-info/PKG-INFO --- old/ansible_core-2.20.2/ansible_core.egg-info/PKG-INFO 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/ansible_core.egg-info/PKG-INFO 2026-02-24 00:08:01.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: ansible-core -Version: 2.20.2 +Version: 2.20.3 Summary: Radically simple IT automation Author: Ansible Project Project-URL: Homepage, https://ansible.com/ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/ansible_core.egg-info/SOURCES.txt new/ansible_core-2.20.3/ansible_core.egg-info/SOURCES.txt --- old/ansible_core-2.20.2/ansible_core.egg-info/SOURCES.txt 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/ansible_core.egg-info/SOURCES.txt 2026-02-24 00:08:01.000000000 +0100 @@ -2031,6 +2031,8 @@ test/integration/targets/delegate_to/test_delegate_to_lookup_context.yml test/integration/targets/delegate_to/test_delegate_to_loop_caching.yml test/integration/targets/delegate_to/test_delegate_to_loop_randomness.yml +test/integration/targets/delegate_to/test_delegated_async.yml +test/integration/targets/delegate_to/test_delegated_async_inner.yml test/integration/targets/delegate_to/test_loop_control.yml test/integration/targets/delegate_to/test_random_delegate_to_with_loop.yml test/integration/targets/delegate_to/test_random_delegate_to_without_loop.yml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/changelogs/CHANGELOG-v2.20.rst new/ansible_core-2.20.3/changelogs/CHANGELOG-v2.20.rst --- old/ansible_core-2.20.2/changelogs/CHANGELOG-v2.20.rst 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/changelogs/CHANGELOG-v2.20.rst 2026-02-24 00:08:01.000000000 +0100 @@ -4,6 +4,28 @@ .. contents:: Topics +v2.20.3 +======= + +Release Summary +--------------- + +| Release Date: 2026-02-23 +| `Porting Guide <https://docs.ansible.com/ansible-core/2.20/porting_guides/porting_guide_core_2.20.html>`__ + +Minor Changes +------------- + +- ansible-test - Update URL used to download FreeBSD wheels for managed remotes. +- ansible-test - Use the new API endpoint for the Ansible Core CI service. + +Bugfixes +-------- + +- Fix interpreter discovery on delegated ``async`` tasks (https://github.com/ansible/ansible/issues/86491) +- Fix up the Action plugin ``_make_tmp_path`` error to only include the command run rather than the shell's dataclass repr from ``mkdtemp``. +- local connection - Pass correct type to become plugins when checking password (https://github.com/ansible/ansible/issues/86458) + v2.20.2 ======= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/changelogs/changelog.yaml new/ansible_core-2.20.3/changelogs/changelog.yaml --- old/ansible_core-2.20.2/changelogs/changelog.yaml 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/changelogs/changelog.yaml 2026-02-24 00:08:01.000000000 +0100 @@ -494,3 +494,39 @@ - module_defaults-action-plugin-templating.yml - winrm-kerberos.yml release_date: '2026-01-22' + 2.20.3: + changes: + release_summary: '| Release Date: 2026-02-23 + + | `Porting Guide <https://docs.ansible.com/ansible-core/2.20/porting_guides/porting_guide_core_2.20.html>`__ + + ' + codename: Good Times Bad Times + fragments: + - 2.20.3_summary.yaml + release_date: '2026-02-23' + 2.20.3rc1: + changes: + bugfixes: + - Fix interpreter discovery on delegated ``async`` tasks (https://github.com/ansible/ansible/issues/86491) + - Fix up the Action plugin ``_make_tmp_path`` error to only include the command + run rather than the shell's dataclass repr from ``mkdtemp``. + - local connection - Pass correct type to become plugins when checking password + (https://github.com/ansible/ansible/issues/86458) + minor_changes: + - ansible-test - Update URL used to download FreeBSD wheels for managed remotes. + - ansible-test - Use the new API endpoint for the Ansible Core CI service. + release_summary: '| Release Date: 2026-02-17 + + | `Porting Guide <https://docs.ansible.com/ansible-core/2.20/porting_guides/porting_guide_core_2.20.html>`__ + + ' + codename: Good Times Bad Times + fragments: + - 2.20.3rc1_summary.yaml + - 86473_su_become_local.yml + - 86491-fix-interpreter-delegated_async.yml + - ansible-test-api-endpoint.yml + - ansible-test-spare-tire.yml + - make-tmp-path-msg.yml + release_date: '2026-02-17' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/lib/ansible/config/base.yml new/ansible_core-2.20.3/lib/ansible/config/base.yml --- old/ansible_core-2.20.2/lib/ansible/config/base.yml 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/lib/ansible/config/base.yml 2026-02-24 00:08:01.000000000 +0100 @@ -291,7 +291,7 @@ Collections must be in nested *subdirectories*, not directly in these directories. For example, if ``COLLECTIONS_PATHS`` includes ``'{{ ANSIBLE_HOME ~ "/collections" }}'``, and you want to add ``my.collection`` to that directory, it must be saved as - ``'{{ ANSIBLE_HOME} ~ "/collections/ansible_collections/my/collection" }}'``. + ``'{{ ANSIBLE_HOME ~ "/collections/ansible_collections/my/collection" }}'``. default: '{{ ANSIBLE_HOME ~ "/collections:/usr/share/ansible/collections" }}' type: pathspec env: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/lib/ansible/executor/task_executor.py new/ansible_core-2.20.3/lib/ansible/executor/task_executor.py --- old/ansible_core-2.20.2/lib/ansible/executor/task_executor.py 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/lib/ansible/executor/task_executor.py 2026-02-24 00:08:01.000000000 +0100 @@ -864,6 +864,7 @@ args={'jid': async_jid}, check_mode=self._task.check_mode, environment=self._task.environment, + delegate_to=self._task.delegate_to, )) # FIXME: this is no longer the case, normal takes care of all, see if this can just be generalized @@ -938,6 +939,7 @@ }, 'check_mode': self._task.check_mode, 'environment': self._task.environment, + 'delegate_to': self._task.delegate_to, } ) cleanup_handler = self._shared_loader_obj.action_loader.get( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/lib/ansible/module_utils/ansible_release.py new/ansible_core-2.20.3/lib/ansible/module_utils/ansible_release.py --- old/ansible_core-2.20.2/lib/ansible/module_utils/ansible_release.py 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/lib/ansible/module_utils/ansible_release.py 2026-02-24 00:08:01.000000000 +0100 @@ -17,6 +17,6 @@ from __future__ import annotations -__version__ = '2.20.2' +__version__ = '2.20.3' __author__ = 'Ansible, Inc.' __codename__ = "Good Times Bad Times" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/lib/ansible/plugins/action/__init__.py new/ansible_core-2.20.3/lib/ansible/plugins/action/__init__.py --- old/ansible_core-2.20.2/lib/ansible/plugins/action/__init__.py 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/lib/ansible/plugins/action/__init__.py 2026-02-24 00:08:01.000000000 +0100 @@ -447,7 +447,7 @@ become_user = self.get_become_option('become_user') return bool(become_user and become_user not in admin_users + [remote_user]) - def _make_tmp_path(self, remote_user=None): + def _make_tmp_path(self, remote_user: str | None = None) -> str: """ Create and return a temporary path on a remote box. """ @@ -485,7 +485,7 @@ output = ('Failed to create temporary directory. ' 'In some cases, you may have been able to authenticate and did not have permissions on the target directory. ' 'Consider changing the remote tmp path in ansible.cfg to a path rooted in "/tmp", for more error information use -vvv. ' - 'Failed command was: %s, exited with result %d' % (cmd, result['rc'])) + 'Failed command was: %s, exited with result %d' % (cmd.command, result['rc'])) if 'stdout' in result and result['stdout'] != u'': output = output + u", stdout output: %s" % result['stdout'] if display.verbosity > 3 and 'stderr' in result and result['stderr'] != u'': diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/lib/ansible/plugins/become/__init__.py new/ansible_core-2.20.3/lib/ansible/plugins/become/__init__.py --- old/ansible_core-2.20.2/lib/ansible/plugins/become/__init__.py 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/lib/ansible/plugins/become/__init__.py 2026-02-24 00:08:01.000000000 +0100 @@ -105,7 +105,7 @@ b_success = to_bytes(self.success) return any(b_success in l.rstrip() for l in b_output.splitlines(True)) - def check_password_prompt(self, b_output): + def check_password_prompt(self, b_output: bytes) -> bool: """ checks if the expected password prompt exists in b_output """ if self.prompt: b_prompt = to_bytes(self.prompt).strip() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/lib/ansible/plugins/connection/local.py new/ansible_core-2.20.3/lib/ansible/plugins/connection/local.py --- old/ansible_core-2.20.2/lib/ansible/plugins/connection/local.py 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/lib/ansible/plugins/connection/local.py 2026-02-24 00:08:01.000000000 +0100 @@ -201,8 +201,8 @@ raise AnsibleError(become_error_msg('Premature end of stream')) if expect_password_prompt and ( - self.become.check_password_prompt(become_stdout[last_stdout_prompt_offset:]) or - self.become.check_password_prompt(become_stderr[last_stderr_prompt_offset:]) + self.become.check_password_prompt(bytes(become_stdout[last_stdout_prompt_offset:])) or + self.become.check_password_prompt(bytes(become_stderr[last_stderr_prompt_offset:])) ): if sent_password: raise AnsibleError(become_error_msg('Duplicate become password prompt encountered')) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/lib/ansible/release.py new/ansible_core-2.20.3/lib/ansible/release.py --- old/ansible_core-2.20.2/lib/ansible/release.py 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/lib/ansible/release.py 2026-02-24 00:08:01.000000000 +0100 @@ -17,6 +17,6 @@ from __future__ import annotations -__version__ = '2.20.2' +__version__ = '2.20.3' __author__ = 'Ansible, Inc.' __codename__ = "Good Times Bad Times" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/pyproject.toml new/ansible_core-2.20.3/pyproject.toml --- old/ansible_core-2.20.2/pyproject.toml 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/pyproject.toml 2026-02-24 00:08:01.000000000 +0100 @@ -1,5 +1,5 @@ [build-system] -requires = ["setuptools >= 66.1.0, <= 80.10.2", "wheel == 0.45.1"] # lower bound to support controller Python versions, upper bound for latest version tested at release +requires = ["setuptools >= 66.1.0, <= 82.0.0", "wheel == 0.45.1"] # lower bound to support controller Python versions, upper bound for latest version tested at release build-backend = "setuptools.build_meta" [project] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/test/integration/targets/become_su/aliases new/ansible_core-2.20.3/test/integration/targets/become_su/aliases --- old/ansible_core-2.20.2/test/integration/targets/become_su/aliases 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/test/integration/targets/become_su/aliases 2026-02-24 00:08:01.000000000 +0100 @@ -5,6 +5,7 @@ needs/root needs/target/setup_become_user_pair needs/target/setup_test_user +needs/target/setup_pexpect setup/always/setup_passlib_controller # required for setup_test_user skip/macos # requires a TTY skip/freebsd # appears to require a TTY (ignores password input from stdin) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/test/integration/targets/become_su/tasks/main.yml new/ansible_core-2.20.3/test/integration/targets/become_su/tasks/main.yml --- old/ansible_core-2.20.2/test/integration/targets/become_su/tasks/main.yml 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/test/integration/targets/become_su/tasks/main.yml 2026-02-24 00:08:01.000000000 +0100 @@ -61,3 +61,46 @@ - wrong_su_prompt is unreachable - ansible_connection != "local" or wrong_su_prompt.msg is contains "Timed out waiting for become success or become password prompt" - ansible_connection != "ssh" or wrong_su_prompt.msg is contains "waiting for privilege escalation prompt" + +# The bug from issue https://github.com/ansible/ansible/issues/86458 presents itself only on local connections +# and only when the password is entered interactively using -K/--ask-become-pass. +- name: Test different locale + when: ansible_os_family == 'RedHat' and ansible_connection == 'local' + block: + - import_role: + name: setup_pexpect + + - name: install language pack and pexpect + dnf: + name: + - langpacks-uk + - glibc-langpack-uk + state: present + + - name: verify language pack is enabled + command: locale -a + register: installed_languages + + - assert: + that: "'uk_UA.utf8' in installed_languages.stdout" + + - name: test su prompt basic success with alternate language on local connection + expect: + command: "ansible -m command -a whoami localhost -b --become-method su -K" + responses: + BECOME password: + - "{{ target_user_password }}" + environment: + LC_ALL: uk_UA.utf8 + ANSIBLE_BECOME_USER: "{{ target_user_name }}" + ANSIBLE_BECOME_EXE: /tmp/sushim.sh + ANSIBLE_BECOME_FLAGS: --intermediate-user {{ intermediate_user_name | quote }} + # protect our target user password + no_log: true + always: + - name: remove language pack + dnf: + name: + - langpacks-uk + - glibc-langpack-uk + state: absent diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/test/integration/targets/delegate_to/runme.sh new/ansible_core-2.20.3/test/integration/targets/delegate_to/runme.sh --- old/ansible_core-2.20.2/test/integration/targets/delegate_to/runme.sh 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/test/integration/targets/delegate_to/runme.sh 2026-02-24 00:08:01.000000000 +0100 @@ -81,6 +81,7 @@ ansible-playbook delegate_with_fact_from_delegate_host.yml "$@" ansible-playbook delegate_facts_loop.yml -i inventory -v "$@" ansible-playbook test_random_delegate_to_with_loop.yml -i inventory -v "$@" +ansible-playbook test_delegated_async.yml -v "$@" # Run playbook multiple times to ensure there are no false-negatives for i in $(seq 0 10); do ansible-playbook test_random_delegate_to_without_loop.yml -i inventory -v "$@"; done; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/test/integration/targets/delegate_to/test_delegated_async.yml new/ansible_core-2.20.3/test/integration/targets/delegate_to/test_delegated_async.yml --- old/ansible_core-2.20.2/test/integration/targets/delegate_to/test_delegated_async.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/ansible_core-2.20.3/test/integration/targets/delegate_to/test_delegated_async.yml 2026-02-24 00:08:01.000000000 +0100 @@ -0,0 +1,11 @@ +- name: test delegated async + hosts: localhost + gather_facts: false + tasks: + - command: ansible-playbook test_delegated_async_inner.yml -i inventory_interpreters -vvv + register: r + + - assert: + that: + - r.stdout | regex_findall('firstpython') | length == 0 + - r.stdout | regex_findall('secondpython') | length >= 3 # tasks: wrapper, cleanup and at least one status diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/test/integration/targets/delegate_to/test_delegated_async_inner.yml new/ansible_core-2.20.3/test/integration/targets/delegate_to/test_delegated_async_inner.yml --- old/ansible_core-2.20.2/test/integration/targets/delegate_to/test_delegated_async_inner.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/ansible_core-2.20.3/test/integration/targets/delegate_to/test_delegated_async_inner.yml 2026-02-24 00:08:01.000000000 +0100 @@ -0,0 +1,8 @@ +- name: test delegated async + hosts: testhost + gather_facts: false + tasks: + - command: sleep 3 + delegate_to: testhost2 + async: 5 + poll: 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/test/lib/ansible_test/_internal/core_ci.py new/ansible_core-2.20.3/test/lib/ansible_test/_internal/core_ci.py --- old/ansible_core-2.20.2/test/lib/ansible_test/_internal/core_ci.py 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/test/lib/ansible_test/_internal/core_ci.py 2026-02-24 00:08:01.000000000 +0100 @@ -137,7 +137,7 @@ class AnsibleCoreCI: """Client for Ansible Core CI services.""" - DEFAULT_ENDPOINT = 'https://ansible-core-ci.testing.ansible.com' + DEFAULT_ENDPOINT = 'https://api.ci.core.ansible.com' def __init__( self, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/test/lib/ansible_test/_util/target/setup/bootstrap.sh new/ansible_core-2.20.3/test/lib/ansible_test/_util/target/setup/bootstrap.sh --- old/ansible_core-2.20.2/test/lib/ansible_test/_util/target/setup/bootstrap.sh 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/test/lib/ansible_test/_util/target/setup/bootstrap.sh 2026-02-24 00:08:01.000000000 +0100 @@ -237,7 +237,7 @@ # make additional wheels available for packages which lack them for this platform echo "# generated by ansible-test [global] -extra-index-url = https://spare-tire.testing.ansible.com/simple/ +extra-index-url = https://spare-tire.core.ansible.com/simple/ prefer-binary = yes " > /etc/pip.conf diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible_core-2.20.2/test/units/plugins/become/test_su.py new/ansible_core-2.20.3/test/units/plugins/become/test_su.py --- old/ansible_core-2.20.2/test/units/plugins/become/test_su.py 2026-01-29 20:20:02.000000000 +0100 +++ new/ansible_core-2.20.3/test/units/plugins/become/test_su.py 2026-02-24 00:08:01.000000000 +0100 @@ -70,4 +70,4 @@ mocker.patch.object(become, 'get_option', return_value=['(invalid regex']) - assert become.check_password_prompt('(invalid regex:') is True + assert become.check_password_prompt(b'(invalid regex:') is True ++++++ ansible_core-2.20.2.tar.gz.sha256 -> ansible_core-2.20.3.tar.gz.sha256 ++++++ --- /work/SRC/openSUSE:Factory/ansible-core/ansible_core-2.20.2.tar.gz.sha256 2026-02-03 21:29:47.548333090 +0100 +++ /work/SRC/openSUSE:Factory/.ansible-core.new.29461/ansible_core-2.20.3.tar.gz.sha256 2026-02-27 17:13:19.588612817 +0100 @@ -1 +1 @@ -75e19a3ad8cf659579ea182cdf948ee0900d700e564802e92876de53dbd9715d ansible_core-2.20.2.tar.gz +38670ab2d2ffd67ee7e9e562f7c94e0927c8b7b4b0eb69233bc008c29e32d591 ansible_core-2.20.3.tar.gz
