Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-ansible-compat for openSUSE:Factory checked in at 2022-11-04 17:34:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-ansible-compat (Old) and /work/SRC/openSUSE:Factory/.python-ansible-compat.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-ansible-compat" Fri Nov 4 17:34:38 2022 rev:7 rq:1033159 version:2.2.3 Changes: -------- --- /work/SRC/openSUSE:Factory/python-ansible-compat/python-ansible-compat.changes 2022-10-08 01:23:16.469961242 +0200 +++ /work/SRC/openSUSE:Factory/.python-ansible-compat.new.2275/python-ansible-compat.changes 2022-11-04 17:36:51.765405324 +0100 @@ -1,0 +2,15 @@ +Mon Oct 31 13:04:54 UTC 2022 - Johannes Kastl <ka...@b1-systems.de> + +- update to 2.2.3: + * Bugfixes + - Correct offline cli arg support check (#178) @ssbarnea + +------------------------------------------------------------------- +Mon Oct 31 11:52:08 UTC 2022 - Johannes Kastl <ka...@b1-systems.de> + +- update to 2.2.2: + * Bugfixes + - Add packaging to dependencies (#173) @ssbarnea + - Pass offline argument to galaxy command when needed (#172) @ssbarnea + +------------------------------------------------------------------- Old: ---- ansible-compat-2.2.1.tar.gz New: ---- _service ansible-compat-2.2.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-ansible-compat.spec ++++++ --- /var/tmp/diff_new_pack.TVUkI1/_old 2022-11-04 17:36:52.369408479 +0100 +++ /var/tmp/diff_new_pack.TVUkI1/_new 2022-11-04 17:36:52.373408500 +0100 @@ -19,7 +19,7 @@ # only works with the python version which the package 'ansible' uses %define pythons python3 Name: python-ansible-compat -Version: 2.2.1 +Version: 2.2.3 Release: 0 Summary: Compatibility shim for Ansible 2.9 and newer License: MIT ++++++ _service ++++++ <services> <service name="download_files" mode="disabled"> </service> </services> ++++++ ansible-compat-2.2.1.tar.gz -> ansible-compat-2.2.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/.flake8 new/ansible-compat-2.2.3/.flake8 --- old/ansible-compat-2.2.1/.flake8 2022-09-23 16:37:12.000000000 +0200 +++ new/ansible-compat-2.2.3/.flake8 2022-10-31 13:16:24.000000000 +0100 @@ -46,7 +46,12 @@ # The only allowed ignores are related to black and isort # https://black.readthedocs.io/en/stable/the_black_code_style.html#line-length # "H" are generated by hacking plugin, which is not black compatible -ignore = E203,E501,W503,H +ignore = + C901, + E203, + E501, + W503, + H # Allow certain violations in certain files: # per-file-ignores = diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/.github/dependabot.yml new/ansible-compat-2.2.3/.github/dependabot.yml --- old/ansible-compat-2.2.1/.github/dependabot.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/ansible-compat-2.2.3/.github/dependabot.yml 2022-10-31 13:16:24.000000000 +0100 @@ -0,0 +1,23 @@ +--- +# Until bug below is sorted we will not allow dependabot to run by itself +# https://github.com/dependabot/dependabot-core/issues/369 +version: 2 +updates: + - package-ecosystem: pip + directory: / + schedule: + day: sunday + interval: weekly + labels: + - dependabot-deps-updates + - skip-changelog + versioning-strategy: lockfile-only + open-pull-requests-limit: 0 # neutered + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: weekly + open-pull-requests-limit: 3 + labels: + - "dependencies" + - "skip-changelog" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/.github/workflows/tox.yml new/ansible-compat-2.2.3/.github/workflows/tox.yml --- old/ansible-compat-2.2.1/.github/workflows/tox.yml 2022-09-23 16:37:12.000000000 +0200 +++ new/ansible-compat-2.2.3/.github/workflows/tox.yml 2022-10-31 13:16:24.000000000 +0100 @@ -72,7 +72,7 @@ env: ${{ matrix.env }} - name: Archive logs - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: logs.zip path: .tox/**/log/ @@ -172,14 +172,16 @@ run: coverage combine .tox/.coverage.* - name: Upload coverage data - uses: codecov/codecov-action@v1 + if: "runner.os == 'Linux'" + uses: codecov/codecov-action@v3 with: name: ${{ matrix.tox_env }} - fail_ci_if_error: true # optional (default = false) + fail_ci_if_error: false # see https://github.com/codecov/codecov-action/issues/598 + token: ${{ secrets.CODECOV_TOKEN }} verbose: true # optional (default = false) - name: Archive logs - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: logs.zip path: .tox/**/log/ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/.pre-commit-config.yaml new/ansible-compat-2.2.3/.pre-commit-config.yaml --- old/ansible-compat-2.2.1/.pre-commit-config.yaml 2022-09-23 16:37:12.000000000 +0200 +++ new/ansible-compat-2.2.3/.pre-commit-config.yaml 2022-10-31 13:16:24.000000000 +0100 @@ -77,7 +77,7 @@ - flake8-rst-docstrings>=0.2.3 - flake8-rst>=0.8.0 - repo: https://github.com/pre-commit/mirrors-mypy - rev: v0.971 + rev: v0.981 hooks: - id: mypy # empty args needed in order to match mypy cli behavior diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/PKG-INFO new/ansible-compat-2.2.3/PKG-INFO --- old/ansible-compat-2.2.1/PKG-INFO 2022-09-23 16:37:33.406576200 +0200 +++ new/ansible-compat-2.2.3/PKG-INFO 2022-10-31 13:16:42.089235000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: ansible-compat -Version: 2.2.1 +Version: 2.2.3 Summary: Ansible compatibility goodies Home-page: https://github.com/ansible-community/ansible-compat Author: Sorin Sbarnea diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/requirements.txt new/ansible-compat-2.2.3/requirements.txt --- old/ansible-compat-2.2.1/requirements.txt 2022-09-23 16:37:12.000000000 +0200 +++ new/ansible-compat-2.2.3/requirements.txt 2022-10-31 13:16:24.000000000 +0100 @@ -16,9 +16,9 @@ # pytest babel==2.10.3 # via sphinx -build==0.8.0 +build==0.9.0 # via pip-tools -certifi==2022.9.14 +certifi==2022.9.24 # via requests charset-normalizer==2.1.1 # via requests @@ -26,7 +26,7 @@ # via pip-tools commonmark==0.9.1 # via pytest-markdown -coverage==6.4.4 +coverage==6.5.0 # via ansible-compat (setup.cfg) docutils==0.17.1 # via @@ -39,7 +39,7 @@ # via requests imagesize==1.4.1 # via sphinx -importlib-metadata==4.12.0 +importlib-metadata==5.0.0 # via sphinx iniconfig==1.1.1 # via pytest @@ -57,16 +57,17 @@ # myst-parser markupsafe==2.1.1 # via jinja2 -mdit-py-plugins==0.3.0 +mdit-py-plugins==0.3.1 # via myst-parser mdurl==0.1.2 # via markdown-it-py -more-itertools==8.14.0 +more-itertools==9.0.0 # via pytest-plus -myst-parser==0.18.0 +myst-parser==0.18.1 # via ansible-compat (setup.cfg) packaging==21.3 # via + # ansible-compat (setup.cfg) # build # pytest # sphinx @@ -74,7 +75,7 @@ # via sphinx-autobuild pep517==0.13.0 # via build -pip-tools==6.8.0 +pip-tools==6.9.0 # via ansible-compat (setup.cfg) pluggy==1.0.0 # via pytest @@ -88,7 +89,7 @@ # sphinx pyparsing==3.0.9 # via packaging -pyrsistent==0.18.1 +pyrsistent==0.19.1 # via jsonschema pytest==6.2.5 # via @@ -98,11 +99,11 @@ # pytest-plus pytest-markdown==1.0.2 # via ansible-compat (setup.cfg) -pytest-mock==3.8.2 +pytest-mock==3.10.0 # via ansible-compat (setup.cfg) pytest-plus==0.2 # via ansible-compat (setup.cfg) -pytz==2022.2.1 +pytz==2022.5 # via babel pyyaml==6.0 # via @@ -151,7 +152,7 @@ # via # livereload # sphinx-autobuild -typing-extensions==4.3.0 +typing-extensions==4.4.0 # via myst-parser urllib3==1.26.12 # via requests @@ -159,7 +160,7 @@ # via sphinx-autobuild wheel==0.37.1 # via pip-tools -zipp==3.8.1 +zipp==3.10.0 # via importlib-metadata # The following packages are considered to be unsafe in a requirements file: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/setup.cfg new/ansible-compat-2.2.3/setup.cfg --- old/ansible-compat-2.2.1/setup.cfg 2022-09-23 16:37:33.406576200 +0200 +++ new/ansible-compat-2.2.3/setup.cfg 2022-10-31 13:16:42.093235000 +0100 @@ -55,6 +55,7 @@ packages = find: zip_safe = False install_requires = + packaging PyYAML subprocess-tee >= 0.3.5 jsonschema >= 4.6.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/src/ansible_compat/runtime.py new/ansible-compat-2.2.3/src/ansible_compat/runtime.py --- old/ansible-compat-2.2.1/src/ansible_compat/runtime.py 2022-09-23 16:37:12.000000000 +0200 +++ new/ansible-compat-2.2.3/src/ansible_compat/runtime.py 2022-10-31 13:16:24.000000000 +0100 @@ -269,7 +269,9 @@ force=True, ) - def install_requirements(self, requirement: str, retry: bool = False) -> None: + def install_requirements( + self, requirement: str, retry: bool = False, offline: bool = False + ) -> None: """Install dependencies from a requirements.yml.""" if not os.path.exists(requirement): return @@ -290,11 +292,15 @@ if self.cache_dir: cmd.extend(["--roles-path", f"{self.cache_dir}/roles"]) + if offline: + _logger.warning( + "Offline mode ignored because `ansible-galaxy role install` command does not support it." + ) _logger.info("Running %s", " ".join(cmd)) - run = self.exec(cmd, retry=retry) - if run.returncode != 0: - _logger.error(run.stdout) - raise AnsibleCommandError(run) + result = self.exec(cmd, retry=retry) + if result.returncode != 0: + _logger.error(result.stdout) + raise AnsibleCommandError(result) # Run galaxy collection install works on v2 requirements.yml if "collections" in reqs_yaml: @@ -303,17 +309,24 @@ "ansible-galaxy", "collection", "install", - "-vr", - f"{requirement}", + "-v", ] + if offline: + if self.version_in_range(upper="2.14"): + _logger.warning( + "Offline mode ignored because it is not supported by ansible versions before 2.14." + ) + else: + cmd.append("--offline") + cmd.extend(["-r", requirement]) if self.cache_dir: cmd.extend(["-p", f"{self.cache_dir}/collections"]) - _logger.info("Running %s", " ".join(cmd)) - run = self.exec(cmd, retry=retry) - if run.returncode != 0: - _logger.error(run.stdout) - raise AnsibleCommandError(run) + result = self.exec(cmd, retry=retry) + if result.returncode != 0: + _logger.error(result.stdout) + _logger.error(result.stderr) + raise AnsibleCommandError(result) def prepare_environment( # noqa: C901 self, @@ -327,17 +340,16 @@ if required_collections is None: required_collections = {} - if not offline: - # first one is standard for collection layout repos and the last two - # are part of Tower specification - # https://docs.ansible.com/ansible-tower/latest/html/userguide/projects.html#ansible-galaxy-support - # https://docs.ansible.com/ansible-tower/latest/html/userguide/projects.html#collections-support - for req_file in [ - "requirements.yml", - "roles/requirements.yml", - "collections/requirements.yml", - ]: - self.install_requirements(req_file, retry=retry) + # first one is standard for collection layout repos and the last two + # are part of Tower specification + # https://docs.ansible.com/ansible-tower/latest/html/userguide/projects.html#ansible-galaxy-support + # https://docs.ansible.com/ansible-tower/latest/html/userguide/projects.html#collections-support + for req_file in [ + "requirements.yml", + "roles/requirements.yml", + "collections/requirements.yml", + ]: + self.install_requirements(req_file, retry=retry, offline=offline) destination = f"{self.cache_dir}/collections" if self.cache_dir else None for name, min_version in required_collections.items(): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/src/ansible_compat.egg-info/PKG-INFO new/ansible-compat-2.2.3/src/ansible_compat.egg-info/PKG-INFO --- old/ansible-compat-2.2.1/src/ansible_compat.egg-info/PKG-INFO 2022-09-23 16:37:33.000000000 +0200 +++ new/ansible-compat-2.2.3/src/ansible_compat.egg-info/PKG-INFO 2022-10-31 13:16:42.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: ansible-compat -Version: 2.2.1 +Version: 2.2.3 Summary: Ansible compatibility goodies Home-page: https://github.com/ansible-community/ansible-compat Author: Sorin Sbarnea diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/src/ansible_compat.egg-info/SOURCES.txt new/ansible-compat-2.2.3/src/ansible_compat.egg-info/SOURCES.txt --- old/ansible-compat-2.2.1/src/ansible_compat.egg-info/SOURCES.txt 2022-09-23 16:37:33.000000000 +0200 +++ new/ansible-compat-2.2.3/src/ansible_compat.egg-info/SOURCES.txt 2022-10-31 13:16:42.000000000 +0100 @@ -14,6 +14,7 @@ tox.ini .github/CODEOWNERS .github/CODE_OF_CONDUCT.md +.github/dependabot.yml .github/release-drafter.yml .github/workflows/ack.yml .github/workflows/push.yml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/src/ansible_compat.egg-info/requires.txt new/ansible-compat-2.2.3/src/ansible_compat.egg-info/requires.txt --- old/ansible-compat-2.2.1/src/ansible_compat.egg-info/requires.txt 2022-09-23 16:37:33.000000000 +0200 +++ new/ansible-compat-2.2.3/src/ansible_compat.egg-info/requires.txt 2022-10-31 13:16:42.000000000 +0100 @@ -1,3 +1,4 @@ +packaging PyYAML subprocess-tee>=0.3.5 jsonschema>=4.6.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ansible-compat-2.2.1/test/test_runtime.py new/ansible-compat-2.2.3/test/test_runtime.py --- old/ansible-compat-2.2.1/test/test_runtime.py 2022-09-23 16:37:12.000000000 +0200 +++ new/ansible-compat-2.2.3/test/test_runtime.py 2022-10-31 13:16:24.000000000 +0100 @@ -662,7 +662,8 @@ """Ensure that we can make use of offline roles.""" with remember_cwd("test/roles/acme.missing_deps"): runtime = Runtime(isolated=True) - runtime.prepare_environment(install_local=True, offline=True) + with pytest.raises(AnsibleCommandError): + runtime.prepare_environment(install_local=True, offline=True) def test_runtime_run(runtime: Runtime) -> None: