[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1110042: unblock: ansible-lint/25.6.1+really25.2.1-1



Package: release.debian.org
Severity: normal
X-Debbugs-Cc: ansible-lint@packages.debian.org, debian@rocketjump.eu
Control: affects -1 + src:ansible-lint
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package ansible-lint


[ Reason ]
This upload removes a 5 tests from the build and autopkgtest. One test that
fails due to a warning generated by ansible-core 2.19.0, and 4 more tests that
fail during build when the build path contains a "+". I have verified this
through A/B testing, and reported this upstream. (Debugging this took way longer
than I'd like to admit.)

[ Impact ]
There is no user-visible impact unblocking this change, it is purely a change in
python unit tests.

[ Tests ]
Test coverage is good, however there are 5 buggy tests that have been disabled.

[ Risks ]
Code change is trivial, only 5 tests have been disabled.

[ Checklist ]
  [x] all changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in testing

[ Other info ]
(Anything else the release team should know.)

unblock ansible-lint/25.6.1+really25.2.1-1
diffstat for ansible-lint-25.2.1 ansible-lint-25.6.1+really25.2.1

 changelog                                                      |   25 ++++
 patches/deb-testing.patch                                      |   10 -
 patches/disable-tests-failing-on-plus.patch                    |   62 ++++++++++
 patches/partially-disable-test_normalize_complex_command.patch |   48 +++++++
 patches/remove_version_check.patch                             |    8 -
 patches/series                                                 |    2 
 6 files changed, 142 insertions(+), 13 deletions(-)

diff -Nru ansible-lint-25.2.1/debian/changelog ansible-lint-25.6.1+really25.2.1/debian/changelog
--- ansible-lint-25.2.1/debian/changelog	2025-05-10 21:04:00.000000000 +0200
+++ ansible-lint-25.6.1+really25.2.1/debian/changelog	2025-07-28 00:32:42.000000000 +0200
@@ -1,3 +1,28 @@
+ansible-lint (25.6.1+really25.2.1-1) unstable; urgency=medium
+
+  * Revert to 25.2.1-3 during hard freeze
+    - Revert "Update upstream source from tag 'upstream/25.6.1'"
+    - Revert "minor patch in deb-testing.patch"
+    - Revert "Fix remove_importlib_metadata.patch"
+    - Revert "disable test_ro_venv because it uses "pip install" from third
+      parties"
+  * Disable build tests that fail when run in a path containing a `+`.
+  * Keep partially-disable-test_normalize_complex_command.patch from last
+    package release to allow ansible-core 2.19.0 to migrate.
+
+ -- Lee Garrett <debian@rocketjump.eu>  Mon, 28 Jul 2025 00:32:42 +0200
+
+ansible-lint (25.6.1-1) unstable; urgency=medium
+
+  * New upstream version 25.6.1
+  * Minor patch in deb-testing.patch
+  * Fix remove_importlib_metadata.patch
+  * Add disable-test_ro_venv.patch
+  * Add partially-disable-test_normalize_complex_command.patch
+    because Ansible 2.19 emits a deprecated warning
+
+ -- Gregory Colpart <reg@debian.org>  Fri, 11 Jul 2025 10:31:16 +0200
+
 ansible-lint (25.2.1-3) unstable; urgency=medium
 
   * Team upload.
diff -Nru ansible-lint-25.2.1/debian/patches/deb-testing.patch ansible-lint-25.6.1+really25.2.1/debian/patches/deb-testing.patch
--- ansible-lint-25.2.1/debian/patches/deb-testing.patch	2025-05-10 21:04:00.000000000 +0200
+++ ansible-lint-25.6.1+really25.2.1/debian/patches/deb-testing.patch	2025-07-28 00:04:37.000000000 +0200
@@ -9,11 +9,9 @@
  test/test_schemas.py |  3 ---
  2 files changed, 1 insertion(+), 21 deletions(-)
 
-diff --git a/conftest.py b/conftest.py
-index 1b6d60f..6a3bcea 100644
 --- a/conftest.py
 +++ b/conftest.py
-@@ -16,7 +16,7 @@ if Path.cwd() != Path(__file__).parent:
+@@ -16,7 +16,7 @@
  
  # checking if user is running pytest without installing test dependencies:
  missing = [
@@ -22,7 +20,7 @@
  ]
  if missing:
      pytest.exit(
-@@ -30,23 +30,6 @@ def pytest_configure(config: pytest.Config) -> None:
+@@ -30,23 +30,6 @@
      """Ensure we run preparation only on master thread when running in parallel."""
      if is_help_option_present(config):
          return
@@ -46,11 +44,9 @@
  
  
  def is_help_option_present(config: pytest.Config) -> bool:
-diff --git a/test/test_schemas.py b/test/test_schemas.py
-index e6dd373..76bdf67 100644
 --- a/test/test_schemas.py
 +++ b/test/test_schemas.py
-@@ -20,9 +20,6 @@ from ansiblelint.schemas.__main__ import refresh_schemas
+@@ -20,9 +20,6 @@
  from ansiblelint.schemas.main import validate_file_schema
  
  schema_path = Path(schema_module).parent
diff -Nru ansible-lint-25.2.1/debian/patches/disable-tests-failing-on-plus.patch ansible-lint-25.6.1+really25.2.1/debian/patches/disable-tests-failing-on-plus.patch
--- ansible-lint-25.2.1/debian/patches/disable-tests-failing-on-plus.patch	1970-01-01 01:00:00.000000000 +0100
+++ ansible-lint-25.6.1+really25.2.1/debian/patches/disable-tests-failing-on-plus.patch	2025-07-28 00:32:42.000000000 +0200
@@ -0,0 +1,62 @@
+Description: Skip tests that fail when path contains a `+`.
+Author: Lee Garrett <debian@rocketjump.eu>
+Bug: https://github.com/ansible/ansible-lint/issues/4700
+Last-Update: 2025-07-28
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/test/rules/test_syntax_check.py
++++ b/test/rules/test_syntax_check.py
+@@ -9,6 +9,7 @@
+ from ansiblelint.runner import Runner
+ 
+ 
++@pytest.mark.skip(reason="This test is broken when run from a dir containing a `+`.")
+ @pytest.mark.parametrize(
+     ("filename", "expected_results"),
+     (
+@@ -91,6 +92,7 @@
+     assert not result
+ 
+ 
++@pytest.mark.skip(reason="This test is broken when run from a dir containing a `+`.")
+ def test_syntax_check_role(default_rules_collection: RulesCollection) -> None:
+     """Validate syntax check of a broken role."""
+     lintable = Lintable("examples/playbooks/roles/invalid_due_syntax", kind="role")
+--- a/test/test_import_playbook.py
++++ b/test/test_import_playbook.py
+@@ -1,5 +1,7 @@
+ """Test ability to import playbooks."""
+ 
++import pytest
++
+ from ansiblelint.rules import RulesCollection
+ from ansiblelint.runner import Runner
+ 
+@@ -31,6 +33,7 @@
+     assert len(results) == 0
+ 
+ 
++@pytest.mark.skip(reason="This test is broken when run from a dir containing a `+`.")
+ def test_import_playbook_invalid(
+     default_rules_collection: RulesCollection,
+ ) -> None:
+--- a/test/test_runner.py
++++ b/test/test_runner.py
+@@ -178,6 +178,7 @@
+     assert len(run2) == 0
+ 
+ 
++@pytest.mark.skip(reason="This test is broken when run from a dir containing a `+`.")
+ @pytest.mark.parametrize(
+     ("filename", "failures", "checked_files_no"),
+     (
+--- a/test/test_import_tasks.py
++++ b/test/test_import_tasks.py
+@@ -6,6 +6,7 @@
+ from ansiblelint.runner import Runner
+ 
+ 
++@pytest.mark.skip(reason="This test is broken when run from a dir containing a `+`.")
+ @pytest.mark.parametrize(
+     ("playbook_path", "lintable_count", "match_count"),
+     (
diff -Nru ansible-lint-25.2.1/debian/patches/partially-disable-test_normalize_complex_command.patch ansible-lint-25.6.1+really25.2.1/debian/patches/partially-disable-test_normalize_complex_command.patch
--- ansible-lint-25.2.1/debian/patches/partially-disable-test_normalize_complex_command.patch	1970-01-01 01:00:00.000000000 +0100
+++ ansible-lint-25.6.1+really25.2.1/debian/patches/partially-disable-test_normalize_complex_command.patch	2025-07-28 00:27:24.000000000 +0200
@@ -0,0 +1,48 @@
+From: Gregory Colpart <gcolpart+git@evolix.fr>
+Date: Sat, 12 Jul 2025 22:54:32 +0200
+Subject: partially disable test_normalize_complex_command
+
+---
+ test/test_utils.py | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+--- a/test/test_utils.py
++++ b/test/test_utils.py
+@@ -132,13 +132,13 @@
+ 
+ def test_normalize_complex_command() -> None:
+     """Test that tasks specified differently are normalized same way."""
+-    task1 = utils.Task(
+-        {
+-            "name": "hello",
+-            "action": {"module": "pip", "name": "df", "editable": "false"},
+-        },
+-        filename="tasks.yml",
+-    )
++    #task1 = utils.Task(
++    #    {
++    #        "name": "hello",
++    #        "action": {"module": "pip", "name": "df", "editable": "false"},
++    #    },
++    #    filename="tasks.yml",
++    #)
+     task2 = utils.Task(
+         {"name": "hello", "pip": {"name": "df", "editable": "false"}},
+         filename="tasks.yml",
+@@ -151,7 +151,7 @@
+         {"name": "hello", "action": "pip name=df editable=false"},
+         filename="tasks.yml",
+     )
+-    assert task1._normalize_task() == task2._normalize_task()  # noqa: SLF001
++    #assert task1._normalize_task() == task2._normalize_task()  # noqa: SLF001
+     assert task2._normalize_task() == task3._normalize_task()  # noqa: SLF001
+     assert task3._normalize_task() == task4._normalize_task()  # noqa: SLF001
+ 
+@@ -497,6 +497,7 @@
+     assert children[0].role == "bug4095"
+ 
+ 
++@pytest.mark.skip(reason="This test is broken when run from a dir containing a `+`.")
+ def test_include_children_load_playbook_failed_syntax_check() -> None:
+     """Verify include_children() logs playbook failed to load due to syntax-check."""
+     result = run_ansible_lint(
diff -Nru ansible-lint-25.2.1/debian/patches/remove_version_check.patch ansible-lint-25.6.1+really25.2.1/debian/patches/remove_version_check.patch
--- ansible-lint-25.2.1/debian/patches/remove_version_check.patch	2025-05-10 21:04:00.000000000 +0200
+++ ansible-lint-25.6.1+really25.2.1/debian/patches/remove_version_check.patch	2025-07-28 00:04:37.000000000 +0200
@@ -8,11 +8,9 @@
  test/test_main.py         |  2 +-
  2 files changed, 3 insertions(+), 54 deletions(-)
 
-diff --git a/src/ansiblelint/config.py b/src/ansiblelint/config.py
-index 096c8e4..a94c8bc 100644
 --- a/src/ansiblelint/config.py
 +++ b/src/ansiblelint/config.py
-@@ -282,56 +282,5 @@ def get_deps_versions() -> dict[str, Version | None]:
+@@ -282,56 +282,5 @@
  
  
  def get_version_warning() -> str:
@@ -71,11 +69,9 @@
 -    return msg
 +    """Patched on Debian to not download release information from third parties"""
 +    return ""
-diff --git a/test/test_main.py b/test/test_main.py
-index 9603426..776bda6 100644
 --- a/test/test_main.py
 +++ b/test/test_main.py
-@@ -60,7 +60,7 @@ def test_call_from_outside_venv(in_path: bool) -> None:
+@@ -60,7 +60,7 @@
      warning_found = "PATH altered to include" in proc.stderr
      assert warning_found is in_path
  
diff -Nru ansible-lint-25.2.1/debian/patches/series ansible-lint-25.6.1+really25.2.1/debian/patches/series
--- ansible-lint-25.2.1/debian/patches/series	2025-05-10 21:04:00.000000000 +0200
+++ ansible-lint-25.6.1+really25.2.1/debian/patches/series	2025-07-27 23:53:19.000000000 +0200
@@ -2,3 +2,5 @@
 deb-testing.patch
 remove_disable_lookups_from_templating.patch
 remove_importlib_metadata.patch
+partially-disable-test_normalize_complex_command.patch
+disable-tests-failing-on-plus.patch

Reply to: