Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ansible-lint for openSUSE:Factory 
checked in at 2025-04-04 17:31:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ansible-lint (Old)
 and      /work/SRC/openSUSE:Factory/.ansible-lint.new.1907 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ansible-lint"

Fri Apr  4 17:31:03 2025 rev:61 rq:1266998 version:25.2.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/ansible-lint/ansible-lint.changes        
2025-04-03 16:50:56.013543204 +0200
+++ /work/SRC/openSUSE:Factory/.ansible-lint.new.1907/ansible-lint.changes      
2025-04-04 17:31:17.897472150 +0200
@@ -1,0 +2,8 @@
+Thu Apr  3 13:18:14 UTC 2025 - Johannes Kastl 
<opensuse_buildserv...@ojkastl.de>
+
+- update to 25.2.1:
+  * Bugfixes
+     - Finish support for data tagging from ansible 2.19 (#4571)
+       @ssbarnea
+
+-------------------------------------------------------------------

Old:
----
  ansible-lint-25.2.0.tar.gz

New:
----
  ansible-lint-25.2.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ansible-lint.spec ++++++
--- /var/tmp/diff_new_pack.WhreeC/_old  2025-04-04 17:31:18.401493150 +0200
+++ /var/tmp/diff_new_pack.WhreeC/_new  2025-04-04 17:31:18.401493150 +0200
@@ -40,7 +40,7 @@
 %global lib_name ansiblelint
 %{?python_enable_dependency_generator}
 Name:           ansible-lint
-Version:        25.2.0
+Version:        25.2.1
 Release:        0%{?dist}
 Summary:        Best practices checker for Ansible
 License:        MIT

++++++ ansible-lint-25.2.0.tar.gz -> ansible-lint-25.2.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/.config/constraints.txt 
new/ansible-lint-25.2.1/.config/constraints.txt
--- old/ansible-lint-25.2.0/.config/constraints.txt     2025-04-01 
18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/.config/constraints.txt     2025-04-03 
13:56:32.000000000 +0200
@@ -1,6 +1,6 @@
 # This file was autogenerated by uv via the following command:
 #    tox run -e deps
-ansible-compat==25.1.4    # via ansible-lint (pyproject.toml)
+ansible-compat==25.1.5    # via ansible-lint (pyproject.toml)
 astroid==3.3.9            # via pylint
 asttokens==3.0.0          # via stack-data
 attrs==25.3.0             # via jsonschema, referencing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/.config/requirements-lock.txt 
new/ansible-lint-25.2.1/.config/requirements-lock.txt
--- old/ansible-lint-25.2.0/.config/requirements-lock.txt       2025-04-01 
18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/.config/requirements-lock.txt       2025-04-03 
13:56:32.000000000 +0200
@@ -1,6 +1,6 @@
 # This file was autogenerated by uv via the following command:
 #    tox run -e deps
-ansible-compat==25.1.4    # via ansible-lint (pyproject.toml)
+ansible-compat==25.1.5    # via ansible-lint (pyproject.toml)
 attrs==25.3.0             # via jsonschema, referencing
 black==25.1.0             # via ansible-lint (pyproject.toml)
 bracex==2.5.post1         # via wcmatch
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/.config/requirements.in 
new/ansible-lint-25.2.1/.config/requirements.in
--- old/ansible-lint-25.2.0/.config/requirements.in     2025-04-01 
18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/.config/requirements.in     2025-04-03 
13:56:32.000000000 +0200
@@ -1,6 +1,6 @@
 # Special order section for helping pip:
 ansible-core>=2.16.11 # GPLv3
-ansible-compat>=25.1.3 # GPLv3
+ansible-compat>=25.1.5 # GPLv3
 # alphabetically sorted:
 black>=24.3.0 # MIT (security)
 filelock>=3.8.2 # The Unlicense
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/.git_archival.txt 
new/ansible-lint-25.2.1/.git_archival.txt
--- old/ansible-lint-25.2.0/.git_archival.txt   2025-04-01 18:41:08.000000000 
+0200
+++ new/ansible-lint-25.2.1/.git_archival.txt   2025-04-03 13:56:32.000000000 
+0200
@@ -1,4 +1,4 @@
-node: 6a4fcdb135dd2be6e8ee5ddb5bf59d3d78cbe7b0
-node-date: 2025-04-01T16:41:08Z
+node: c16f018b1bdfdea6717f4b5b1b141a78b86021cd
+node-date: 2025-04-03T11:56:32Z
 describe-name: v25
-ref-names: HEAD -> main, tag: v25.2.0, tag: v25
+ref-names: HEAD -> main, tag: v25.2.1, tag: v25
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/.github/lower-constraints.txt 
new/ansible-lint-25.2.1/.github/lower-constraints.txt
--- old/ansible-lint-25.2.0/.github/lower-constraints.txt       2025-04-01 
18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/.github/lower-constraints.txt       2025-04-03 
13:56:32.000000000 +0200
@@ -2,7 +2,7 @@
 # automatically updated by dependabot. This should be kept in sync with
 # minimal requirements configured inside .config/requirements.in
 ansible-core==2.16.11
-ansible-compat==25.1.4 # GPLv3
+ansible-compat==25.1.5 # GPLv3
 black==24.3.0 # MIT (security)
 filelock==3.16.1 # The Unlicense # due to tox-uv
 jsonschema==4.10.0 # MIT, version needed for improved errors
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/.pre-commit-config.yaml 
new/ansible-lint-25.2.1/.pre-commit-config.yaml
--- old/ansible-lint-25.2.0/.pre-commit-config.yaml     2025-04-01 
18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/.pre-commit-config.yaml     2025-04-03 
13:56:32.000000000 +0200
@@ -161,7 +161,7 @@
         args: ["."]
         pass_filenames: false
         additional_dependencies: &deps
-          - ansible-compat>=25.1.3
+          - ansible-compat>=25.1.5
           - black>=22.10.0
           - cryptography>=39.0.1
           - filelock>=3.12.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/src/ansiblelint/rules/jinja.py 
new/ansible-lint-25.2.1/src/ansiblelint/rules/jinja.py
--- old/ansible-lint-25.2.0/src/ansiblelint/rules/jinja.py      2025-04-01 
18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/src/ansiblelint/rules/jinja.py      2025-04-03 
13:56:32.000000000 +0200
@@ -188,11 +188,15 @@
                         elif re.match(r"^lookup plugin (.*) not found$", 
exc.message):
                             # lookup plugin 'template' not found
                             bypass = True
-                        elif isinstance(
-                            orig_exc, AnsibleTemplateSyntaxError
-                        ) and re.match(
-                            r"^Syntax error in template: No filter named 
'.*'.",
-                            exc.message,
+                        elif (
+                            exc.message == "A template was resolved to an Omit 
scalar."
+                            or (
+                                isinstance(orig_exc, 
AnsibleTemplateSyntaxError)
+                                and re.match(
+                                    r"^Syntax error in template: No filter 
named '.*'.",
+                                    exc.message,
+                                )
+                            )
                         ):
                             bypass = True
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ansible-lint-25.2.0/src/ansiblelint/rules/syntax_check.py 
new/ansible-lint-25.2.1/src/ansiblelint/rules/syntax_check.py
--- old/ansible-lint-25.2.0/src/ansiblelint/rules/syntax_check.py       
2025-04-01 18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/src/ansiblelint/rules/syntax_check.py       
2025-04-03 13:56:32.000000000 +0200
@@ -57,7 +57,7 @@
     KnownError(
         tag="malformed",
         regex=re.compile(
-            r"^(statically imported: (?P<filename>[\w\/\.\-]+)\n)?ERROR! 
(?P<title>A malformed block was encountered while loading a block[^\n]*)",
+            rf"^(statically imported: 
(?P<filename>[\w\/\.\-]+)\n)?{_ansible_error_prefix}(?P<title>A malformed block 
was encountered while loading a block[^\n]*)",
             re.MULTILINE | re.DOTALL | re.DOTALL,
         ),
     ),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/src/ansiblelint/types.py 
new/ansible-lint-25.2.1/src/ansiblelint/types.py
--- old/ansible-lint-25.2.0/src/ansiblelint/types.py    2025-04-01 
18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/src/ansiblelint/types.py    2025-04-03 
13:56:32.000000000 +0200
@@ -40,13 +40,7 @@
     )
 
     AnsibleBaseYAMLObject: TypeAlias = (  # type: ignore[no-redef] # pyright: 
ignore[reportRedeclaration]
-        AnsibleSequence
-        | AnsibleMapping
-        | AnsibleUnicode
-        | str
-        | Mapping
-        | Sequence
-        | None
+        Sequence | Mapping | str | None
     )
     ansible_error_format = 2
 # temporary ignoring the type parameters for Sequence and Mapping because once
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/src/ansiblelint/utils.py 
new/ansible-lint-25.2.1/src/ansiblelint/utils.py
--- old/ansible-lint-25.2.0/src/ansiblelint/utils.py    2025-04-01 
18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/src/ansiblelint/utils.py    2025-04-03 
13:56:32.000000000 +0200
@@ -704,11 +704,12 @@
     return result
 
 
-def normalize_task_v2(task: Task) -> dict[str, Any]:
+def normalize_task_v2(task: Task) -> MutableMapping[str, Any]:
     """Ensure tasks have a normalized action key and strings are converted to 
python objects."""
     raw_task = task.raw_task
-    result: dict[str, Any] = {}
+    result: MutableMapping[str, Any] = {}
     ansible_parsed_keys = ("action", "local_action", "args", "delegate_to")
+    arguments = {}
 
     if is_nested_task(raw_task):
         _extract_ansible_parsed_keys_from_task(result, raw_task, 
ansible_parsed_keys)
@@ -728,19 +729,32 @@
             skip_action_validation=options.skip_action_validation,
         )
     except AnsibleParserError as exc:  # pragma: no cover
-        line = 0
-        column = 0
-        regex = LINE_COLUMN_REGEX.search(exc.message)
-        if regex:
-            line = int(regex.group("line"))
-            column = int(regex.group("column"))
-        raise MatchError(
-            rule=AnsibleParserErrorRule(),
-            message=exc.message,
-            lintable=Lintable(task.filename or ""),
-            lineno=line or raw_task.get(LINE_NUMBER_KEY, 1),
-            column=column or None,
-        ) from exc
+        if "get_line_column" not in globals():
+            from ansiblelint.yaml_utils import get_line_column
+        # pylint: disable=possibly-used-before-assignment
+        line, column = get_line_column(raw_task, 0)
+        if not line:
+            line = 0
+            column = 0
+            regex = LINE_COLUMN_REGEX.search(exc.message)
+            if regex:
+                line = int(regex.group("line"))
+                column = int(regex.group("column"))
+        if not exc.message.startswith(
+            "Complex args containing variables cannot use bare variables"
+        ):
+            raise MatchError(
+                rule=AnsibleParserErrorRule(),
+                message=exc.message,
+                lintable=Lintable(task.filename or ""),
+                lineno=line or 1,
+                column=column or None,
+            ) from exc
+        result = sanitized_task
+        if "action" not in result:
+            msg = "Unable to normalize task"
+            raise NotImplementedError(msg) from exc
+        action = result["action"]
 
     # denormalize shell -> command conversion
     if "_uses_shell" in arguments:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/test/test_utils.py 
new/ansible-lint-25.2.1/test/test_utils.py
--- old/ansible-lint-25.2.0/test/test_utils.py  2025-04-01 18:41:08.000000000 
+0200
+++ new/ansible-lint-25.2.1/test/test_utils.py  2025-04-03 13:56:32.000000000 
+0200
@@ -250,11 +250,12 @@
     ("template", "output"),
     (
         pytest.param("{{ playbook_dir }}", "/a/b/c", id="simple"),
-        pytest.param(
-            "{{ 'hello' | doesnotexist }}",
-            "hello",  # newer implementation ignores unknown filters
-            id="unknown_filter",
-        ),
+        # Does not work the same with ansible 2.19 with data tagging
+        # pytest.param(
+        #     "{{ 'hello' | doesnotexist }}",
+        #     "hello",  # newer implementation ignores unknown filters
+        #     id="unknown_filter",
+        # ),
         pytest.param(
             "{{ hello | to_json }}",
             "{{ hello | to_json }}",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.2.0/tox.ini 
new/ansible-lint-25.2.1/tox.ini
--- old/ansible-lint-25.2.0/tox.ini     2025-04-01 18:41:08.000000000 +0200
+++ new/ansible-lint-25.2.1/tox.ini     2025-04-03 13:56:32.000000000 +0200
@@ -56,7 +56,7 @@
     PIP_CONSTRAINT = {tox_root}/.config/constraints.txt
     PIP_DISABLE_PIP_VERSION_CHECK = 1
     PRE_COMMIT_COLOR = always
-    PYTEST_REQPASS = 909
+    PYTEST_REQPASS = 908
     UV_CONSTRAINT = {tox_root}/.config/constraints.txt
     deps, devel, hook, lint, pkg, pre, py310, schemas: PIP_CONSTRAINT = 
/dev/null
     deps, devel, hook, lint, pkg, pre, py310, schemas: UV_CONSTRAINT = 
/dev/null

Reply via email to