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-08-21 16:57:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ansible-lint (Old)
 and      /work/SRC/openSUSE:Factory/.ansible-lint.new.29662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ansible-lint"

Thu Aug 21 16:57:03 2025 rev:66 rq:1300525 version:25.8.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/ansible-lint/ansible-lint.changes        
2025-08-02 00:45:16.427325480 +0200
+++ /work/SRC/openSUSE:Factory/.ansible-lint.new.29662/ansible-lint.changes     
2025-08-21 16:57:04.952330480 +0200
@@ -1,0 +2,18 @@
+Wed Aug 20 11:17:07 UTC 2025 - Johannes Kastl 
<opensuse_buildserv...@ojkastl.de>
+
+- update to 25.8.1:
+  * Bugfixes
+    - Fix first-run collection discovery by enabling plugin loader
+      after prepare_environment (#4722) @cidrblock
+  * Maintenance
+    - Fix mypy and pyright type checking errors (#4724) @cidrblock
+
+-------------------------------------------------------------------
+Wed Aug 20 11:14:17 UTC 2025 - Johannes Kastl 
<opensuse_buildserv...@ojkastl.de>
+
+- update to 25.8.0:
+  * Bugfixes
+    - Lint failure in ansible.utils: src must be an absolute path fix
+      (#4712) @anusshukla
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ ansible-lint.spec ++++++
--- /var/tmp/diff_new_pack.EKe2s2/_old  2025-08-21 16:57:05.624358478 +0200
+++ /var/tmp/diff_new_pack.EKe2s2/_new  2025-08-21 16:57:05.624358478 +0200
@@ -40,7 +40,7 @@
 %global lib_name ansiblelint
 %{?python_enable_dependency_generator}
 Name:           ansible-lint
-Version:        25.7.0
+Version:        25.8.1
 Release:        0%{?dist}
 Summary:        Best practices checker for Ansible
 License:        MIT
@@ -69,7 +69,7 @@
 # to make sure this only builds if they are present
 # https://github.com/ansible/ansible-lint/blob/main/.config/requirements.in
 BuildRequires:  ansible-core >= 2.16.11
-BuildRequires:  %{ansible_python}-ansible-compat >= 25.6.0
+BuildRequires:  %{ansible_python}-ansible-compat >= 25.8.0
 BuildRequires:  %{ansible_python}-black >= 23.10.1
 BuildRequires:  %{ansible_python}-bracex >= 2.5.post1
 BuildRequires:  %{ansible_python}-enrich >= 1.2.7
@@ -89,7 +89,7 @@
 #
 # https://github.com/ansible/ansible-lint/blob/main/.config/requirements.in
 Requires:       ansible-core >= 2.16.11
-Requires:       %{ansible_python}-ansible-compat >= 25.6.0
+Requires:       %{ansible_python}-ansible-compat >= 25.8.0
 Requires:       %{ansible_python}-black >= 23.10.1
 Requires:       %{ansible_python}-bracex >= 2.5.post1
 Requires:       %{ansible_python}-enrich >= 1.2.7

++++++ ansible-lint-25.7.0.tar.gz -> ansible-lint-25.8.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/.config/constraints.txt 
new/ansible-lint-25.8.1/.config/constraints.txt
--- old/ansible-lint-25.7.0/.config/constraints.txt     2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/.config/constraints.txt     2025-08-14 
02:42:08.000000000 +0200
@@ -1,8 +1,8 @@
 # This file was autogenerated by uv via the following command:
 #    tox run -e deps
-ansible-compat==25.6.0    # via ansible-lint (pyproject.toml)
-ansible-creator==25.6.0   # via ansible-lint (pyproject.toml)
-astroid==3.3.10           # via pylint
+ansible-compat==25.8.0    # via ansible-lint (pyproject.toml)
+ansible-creator==25.7.1   # via ansible-lint (pyproject.toml)
+astroid==3.3.11           # via pylint
 asttokens==3.0.0          # via stack-data
 attrs==25.3.0             # via jsonschema, referencing, ansible-lint 
(pyproject.toml)
 babel==2.17.0             # via mkdocs-material
@@ -15,15 +15,15 @@
 cachetools==6.1.0         # via tox
 cairocffi==1.7.1          # via cairosvg
 cairosvg==2.7.1           # via mkdocs-ansible
-certifi==2025.7.14        # via requests
+certifi==2025.8.3         # via requests
 cffi==1.17.1              # via cairocffi, cryptography, ansible-lint 
(pyproject.toml)
 chardet==5.2.0            # via tox
-charset-normalizer==3.4.2  # via requests
+charset-normalizer==3.4.3  # via requests
 click==8.2.1              # via black, mkdocs, ansible-lint (pyproject.toml)
 colorama==0.4.6           # via griffe, mkdocs-material, tox
-coverage==7.10.0          # via coverage-enable-subprocess, ansible-lint 
(pyproject.toml)
+coverage==7.10.3          # via coverage-enable-subprocess, ansible-lint 
(pyproject.toml)
 coverage-enable-subprocess==1.0  # via ansible-lint (pyproject.toml)
-cryptography==45.0.5      # via ansible-core, ansible-lint (pyproject.toml)
+cryptography==45.0.6      # via ansible-core, ansible-lint (pyproject.toml)
 csscompressor==0.9.5      # via mkdocs-minify-plugin
 cssselect2==0.8.0         # via cairosvg
 decorator==5.2.1          # via ipdb, ipython
@@ -38,24 +38,24 @@
 ghp-import==2.1.0         # via mkdocs
 gitdb==4.0.12             # via gitpython
 gitpython==3.1.45         # via tox-extra
-griffe==1.8.0             # via mkdocstrings-python
+griffe==1.11.1            # via mkdocstrings-python
 hjson==3.1.0              # via mkdocs-macros-plugin, super-collections
 htmlmin2==0.1.13          # via mkdocs-minify-plugin
 idna==3.10                # via requests
 importlib-metadata==8.7.0  # via ansible-lint (pyproject.toml)
 iniconfig==2.1.0          # via pytest
 ipdb==0.13.13             # via ansible-lint (pyproject.toml)
-ipython==8.36.0           # via ipdb, ansible-lint (pyproject.toml)
+ipython==8.37.0           # via ipdb, ansible-lint (pyproject.toml)
 isort==6.0.1              # via pylint
 jedi==0.19.2              # via ipython
 jinja2==3.1.6             # via ansible-core, ansible-creator, mkdocs, 
mkdocs-macros-plugin, mkdocs-material, mkdocstrings, ansible-lint 
(pyproject.toml)
 jmespath==1.0.1           # via ansible-lint (pyproject.toml)
 jsmin==3.0.1              # via mkdocs-minify-plugin
-jsonschema==4.24.0        # via ansible-compat, ansible-lint (pyproject.toml)
+jsonschema==4.25.0        # via ansible-compat, ansible-lint (pyproject.toml)
 jsonschema-specifications==2025.4.1  # via jsonschema, ansible-lint 
(pyproject.toml)
-license-expression==30.4.3  # via ansible-lint (pyproject.toml)
-linkchecker==10.5.0       # via mkdocs-ansible
-markdown==3.8             # via markdown-include, mkdocs, mkdocs-autorefs, 
mkdocs-htmlproofer-plugin, mkdocs-material, mkdocstrings, pymdown-extensions
+license-expression==30.4.4  # via ansible-lint (pyproject.toml)
+linkchecker==10.6.0       # via mkdocs-ansible
+markdown==3.8.2           # via markdown-include, mkdocs, mkdocs-autorefs, 
mkdocs-htmlproofer-plugin, mkdocs-material, mkdocstrings, pymdown-extensions
 markdown-exec==1.11.0     # via mkdocs-ansible
 markdown-include==0.8.1   # via mkdocs-ansible
 markupsafe==3.0.2         # via jinja2, mkdocs, mkdocs-autorefs, mkdocstrings, 
ansible-lint (pyproject.toml)
@@ -68,13 +68,13 @@
 mkdocs-gen-files==0.5.0   # via mkdocs-ansible
 mkdocs-get-deps==0.2.0    # via mkdocs
 mkdocs-htmlproofer-plugin==1.3.0  # via mkdocs-ansible
-mkdocs-macros-plugin==1.3.7  # via mkdocs-ansible
+mkdocs-macros-plugin==1.3.9  # via mkdocs-ansible
 mkdocs-material==9.6.16   # via mkdocs-ansible
 mkdocs-material-extensions==1.3.1  # via mkdocs-ansible, mkdocs-material
 mkdocs-minify-plugin==0.8.0  # via mkdocs-ansible
 mkdocstrings==0.30.0      # via mkdocs-ansible, mkdocstrings-python
 mkdocstrings-python==1.16.12  # via mkdocs-ansible
-mypy==1.16.1              # via ansible-lint (pyproject.toml)
+mypy==1.17.1              # via ansible-lint (pyproject.toml)
 mypy-extensions==1.1.0    # via black, mypy, ansible-lint (pyproject.toml)
 netaddr==1.3.0            # via ansible-lint (pyproject.toml)
 packaging==25.0           # via ansible-compat, ansible-core, bindep, black, 
mkdocs, mkdocs-macros-plugin, pyproject-api, pytest, pytest-sugar, tox, 
tox-extra, tox-uv, ansible-lint (pyproject.toml)
@@ -82,7 +82,7 @@
 parsley==1.3              # via bindep
 parso==0.8.4              # via jedi
 pathspec==0.12.1          # via black, mkdocs, mkdocs-macros-plugin, mypy, 
yamllint, ansible-lint (pyproject.toml)
-pbr==6.1.1                # via bindep
+pbr==7.0.0                # via bindep
 pexpect==4.9.0            # via ipython
 pillow==11.3.0            # via cairosvg, mkdocs-ansible
 platformdirs==4.3.8       # via black, mkdocs-get-deps, pylint, tox, 
virtualenv, ansible-lint (pyproject.toml)
@@ -93,8 +93,8 @@
 pure-eval==0.2.3          # via stack-data
 pycparser==2.22           # via cffi, ansible-lint (pyproject.toml)
 pygments==2.19.2          # via ipython, mkdocs-material, pytest
-pylint==3.3.7             # via ansible-lint (pyproject.toml)
-pymdown-extensions==10.16  # via markdown-exec, mkdocs-ansible, 
mkdocs-material, mkdocstrings
+pylint==3.3.8             # via ansible-lint (pyproject.toml)
+pymdown-extensions==10.16.1  # via markdown-exec, mkdocs-ansible, 
mkdocs-material, mkdocstrings
 pyproject-api==1.9.1      # via tox
 pytest==8.4.1             # via pytest-instafail, pytest-mock, pytest-plus, 
pytest-sugar, pytest-xdist, ansible-lint (pyproject.toml)
 pytest-instafail==0.5.0   # via ansible-lint (pyproject.toml)
@@ -107,7 +107,7 @@
 pyyaml-env-tag==1.1       # via mkdocs
 referencing==0.36.2       # via jsonschema, jsonschema-specifications, 
types-jsonschema, ansible-lint (pyproject.toml)
 requests==2.32.4          # via linkchecker, mkdocs-htmlproofer-plugin, 
mkdocs-material
-rpds-py==0.26.0           # via jsonschema, referencing, ansible-lint 
(pyproject.toml)
+rpds-py==0.27.0           # via jsonschema, referencing, ansible-lint 
(pyproject.toml)
 ruamel-yaml==0.18.14      # via ansible-lint (pyproject.toml)
 setproctitle==1.3.6       # via pytest-xdist
 setuptools==80.9.0        # via pbr
@@ -120,14 +120,14 @@
 termcolor==3.1.0          # via mkdocs-macros-plugin, pytest-sugar
 tinycss2==1.4.0           # via cairosvg, cssselect2
 tomlkit==0.13.3           # via pylint
-tox==4.27.0               # via tox-extra, tox-uv, ansible-lint 
(pyproject.toml)
+tox==4.28.4               # via tox-extra, tox-uv, ansible-lint 
(pyproject.toml)
 tox-extra==2.2.0          # via ansible-lint (pyproject.toml)
-tox-uv==1.26.1            # via tox-extra, ansible-lint (pyproject.toml)
+tox-uv==1.27.0            # via tox-extra, ansible-lint (pyproject.toml)
 traitlets==5.14.3         # via ipython, matplotlib-inline
-types-jsonschema==4.24.0.20250528  # via ansible-lint (pyproject.toml)
-types-pyyaml==6.0.12.20250516  # via ansible-lint (pyproject.toml)
+types-jsonschema==4.25.0.20250809  # via ansible-lint (pyproject.toml)
+types-pyyaml==6.0.12.20250809  # via ansible-lint (pyproject.toml)
 urllib3==2.5.0            # via requests
-virtualenv==20.32.0       # via tox
+virtualenv==20.34.0       # via tox
 watchdog==6.0.0           # via mkdocs
 wcmatch==10.1             # via ansible-lint (pyproject.toml)
 wcwidth==0.2.13           # via prompt-toolkit
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/.config/requirements-lock.txt 
new/ansible-lint-25.8.1/.config/requirements-lock.txt
--- old/ansible-lint-25.7.0/.config/requirements-lock.txt       2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/.config/requirements-lock.txt       2025-08-14 
02:42:08.000000000 +0200
@@ -1,16 +1,16 @@
 # This file was autogenerated by uv via the following command:
 #    tox run -e deps
-ansible-compat==25.6.0    # via ansible-lint (pyproject.toml)
+ansible-compat==25.8.0    # via ansible-lint (pyproject.toml)
 attrs==25.3.0             # via jsonschema, referencing
 black==25.1.0             # via ansible-lint (pyproject.toml)
 bracex==2.6               # via wcmatch
 cffi==1.17.1              # via cryptography
 click==8.2.1              # via black
-cryptography==45.0.5      # via ansible-core
+cryptography==45.0.6      # via ansible-core
 filelock==3.18.0          # via ansible-lint (pyproject.toml)
 importlib-metadata==8.7.0  # via ansible-lint (pyproject.toml)
 jinja2==3.1.6             # via ansible-core
-jsonschema==4.24.0        # via ansible-compat, ansible-lint (pyproject.toml)
+jsonschema==4.25.0        # via ansible-compat, ansible-lint (pyproject.toml)
 jsonschema-specifications==2025.4.1  # via jsonschema
 markupsafe==3.0.2         # via jinja2
 mypy-extensions==1.1.0    # via black
@@ -20,7 +20,7 @@
 pycparser==2.22           # via cffi
 pyyaml==6.0.2             # via ansible-compat, ansible-core, yamllint, 
ansible-lint (pyproject.toml)
 referencing==0.36.2       # via jsonschema, jsonschema-specifications, 
ansible-lint (pyproject.toml)
-rpds-py==0.26.0           # via jsonschema, referencing
+rpds-py==0.27.0           # via jsonschema, referencing
 ruamel-yaml==0.18.14      # via ansible-lint (pyproject.toml)
 subprocess-tee==0.4.2     # via ansible-compat, ansible-lint (pyproject.toml)
 wcmatch==10.1             # via ansible-lint (pyproject.toml)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/.config/requirements.in 
new/ansible-lint-25.8.1/.config/requirements.in
--- old/ansible-lint-25.7.0/.config/requirements.in     2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/.config/requirements.in     2025-08-14 
02:42:08.000000000 +0200
@@ -1,6 +1,6 @@
 # Special order section for helping pip:
 ansible-core>=2.16.11 # GPLv3
-ansible-compat>=25.1.5 # GPLv3
+ansible-compat>=25.8.0 # 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.7.0/.git_archival.txt 
new/ansible-lint-25.8.1/.git_archival.txt
--- old/ansible-lint-25.7.0/.git_archival.txt   2025-07-29 21:54:51.000000000 
+0200
+++ new/ansible-lint-25.8.1/.git_archival.txt   2025-08-14 02:42:08.000000000 
+0200
@@ -1,4 +1,4 @@
-node: 9765b8704b2c3f4ab782815b528e0393662e1c04
-node-date: 2025-07-29T15:54:51-04:00
+node: 1080d91d521d909ad79b868131e7ed7c6c708c77
+node-date: 2025-08-13T17:42:08-07:00
 describe-name: v25
-ref-names: HEAD -> main, tag: v25.7.0, tag: v25
+ref-names: tag: v25.8.1, tag: v25
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/.github/lower-constraints.txt 
new/ansible-lint-25.8.1/.github/lower-constraints.txt
--- old/ansible-lint-25.7.0/.github/lower-constraints.txt       2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/.github/lower-constraints.txt       2025-08-14 
02:42:08.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.5 # GPLv3
+ansible-compat==25.8.0 # 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.7.0/.github/workflows/tox.yml 
new/ansible-lint-25.8.1/.github/workflows/tox.yml
--- old/ansible-lint-25.7.0/.github/workflows/tox.yml   2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/.github/workflows/tox.yml   2025-08-14 
02:42:08.000000000 +0200
@@ -40,7 +40,7 @@
             hook
             docs
             pre
-            py311-devel
+            py312-devel
             py310-lower
             py312-lower
             py313-devel
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/.pre-commit-config.yaml 
new/ansible-lint-25.8.1/.pre-commit-config.yaml
--- old/ansible-lint-25.7.0/.pre-commit-config.yaml     2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/.pre-commit-config.yaml     2025-08-14 
02:42:08.000000000 +0200
@@ -61,7 +61,7 @@
           - prettier@3.2.4
           - prettier-plugin-sort-json@3.1.0
   - repo: https://github.com/streetsidesoftware/cspell-cli
-    rev: v9.0.1
+    rev: v9.2.0
     hooks:
       - id: cspell
         entry: bash
@@ -79,7 +79,7 @@
     hooks:
       - id: check-github-workflows
   - repo: https://github.com/pre-commit/pre-commit-hooks.git
-    rev: v5.0.0
+    rev: v6.0.0
     hooks:
       - id: check-added-large-files
       - id: check-merge-conflict
@@ -147,26 +147,26 @@
         alias: toml
 
   - repo: https://github.com/tox-dev/tox-ini-fmt
-    rev: 1.5.0
+    rev: 1.6.0
     hooks:
       - id: tox-ini-fmt
 
   - repo: https://github.com/astral-sh/ruff-pre-commit
-    rev: v0.12.2
+    rev: v0.12.8
     hooks:
       - id: ruff-format
         alias: ruff
       - id: ruff-check
         alias: ruff
   - repo: https://github.com/pre-commit/mirrors-mypy
-    rev: v1.16.1
+    rev: v1.17.1
     hooks:
       - id: mypy
         # "." and pass_files are used to make pre-commit mypy behave the same 
as standalone mypy
         args: ["."]
         pass_filenames: false
         additional_dependencies: &deps
-          - ansible-compat>=25.1.5
+          - ansible-compat>=25.8.0
           - black>=22.10.0
           - cryptography>=39.0.1
           - filelock>=3.12.2
@@ -185,12 +185,12 @@
           - wcmatch
           - yamllint>=1.34.0
   - repo: https://github.com/RobertCraigie/pyright-python
-    rev: v1.1.402
+    rev: v1.1.403
     hooks:
       - id: pyright
         additional_dependencies: *deps
   - repo: https://github.com/pycqa/pylint
-    rev: v3.3.7
+    rev: v3.3.8
     hooks:
       - id: pylint
         args:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/pyproject.toml 
new/ansible-lint-25.8.1/pyproject.toml
--- old/ansible-lint-25.7.0/pyproject.toml      2025-07-29 21:54:51.000000000 
+0200
+++ new/ansible-lint-25.8.1/pyproject.toml      2025-08-14 02:42:08.000000000 
+0200
@@ -104,6 +104,7 @@
 ignore_errors = true
 ignore_missing_imports = true
 module = [
+  "ansible.parsing.yaml.constructor",
   "ansiblelint._version", # generated
   "license_expression",
   "ruamel.yaml"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/src/ansiblelint/app.py 
new/ansible-lint-25.8.1/src/ansiblelint/app.py
--- old/ansible-lint-25.7.0/src/ansiblelint/app.py      2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/app.py      2025-08-14 
02:42:08.000000000 +0200
@@ -428,4 +428,7 @@
         role_name_check=role_name_check,
     )
 
+    # Enable plugin loader now that collections are installed
+    app.runtime.enable_plugin_loader()
+
     return app
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/src/ansiblelint/rules/jinja.py 
new/ansible-lint-25.8.1/src/ansiblelint/rules/jinja.py
--- old/ansible-lint-25.7.0/src/ansiblelint/rules/jinja.py      2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/rules/jinja.py      2025-08-14 
02:42:08.000000000 +0200
@@ -149,7 +149,7 @@
                     # ValueError RepresenterError
                     except (AnsibleError, ImportError) as exc:
                         bypass = False
-                        orig_exc = exc
+                        orig_exc: BaseException = exc
                         if (
                             isinstance(exc, AnsibleError)
                             and hasattr(exc, "orig_exc")
@@ -927,10 +927,10 @@
             data = args[1]
 
             if data != "{{ 12 | random(seed=inventory_hostname) }}":
-                return do_template(*args, **kwargs)  # type: 
ignore[no-untyped-call]
+                return do_template(*args, **kwargs)
 
             msg = "Unexpected templating type error occurred on (foo): bar"
-            raise AnsibleError(str(msg))  # type: ignore[no-untyped-call]
+            raise AnsibleError(str(msg))
 
         do_template = Templar.do_template
         collection = RulesCollection()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/src/ansiblelint/runner.py 
new/ansible-lint-25.8.1/src/ansiblelint/runner.py
--- old/ansible-lint-25.7.0/src/ansiblelint/runner.py   2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/runner.py   2025-08-14 
02:42:08.000000000 +0200
@@ -40,7 +40,10 @@
 from ansiblelint.logger import timed_info
 from ansiblelint.rules.syntax_check import OUTPUT_PATTERNS
 from ansiblelint.text import strip_ansi_escape
-from ansiblelint.types import AnsibleJSON, AnsibleMapping
+from ansiblelint.types import (  # pyright: ignore[reportAttributeAccessIssue]
+    AnsibleJSON,
+    AnsibleMapping,  # pyright: ignore[reportAttributeAccessIssue]
+)
 from ansiblelint.utils import (
     PLAYBOOK_DIR,
     HandleChildren,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ansible-lint-25.7.0/src/ansiblelint/schemas/__store__.json 
new/ansible-lint-25.8.1/src/ansiblelint/schemas/__store__.json
--- old/ansible-lint-25.7.0/src/ansiblelint/schemas/__store__.json      
2025-07-29 21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/schemas/__store__.json      
2025-08-14 02:42:08.000000000 +0200
@@ -36,7 +36,7 @@
     "url": 
"https://raw.githubusercontent.com/ansible/ansible-lint/main/src/ansiblelint/schemas/molecule.json";
   },
   "pattern": {
-    "etag": "610494e0d08e20f6869475f3b479dcae3d90e92d632d825fa934e2beb5f931c0",
+    "etag": "9f427c883b1e069c1d9cb938f5c2d6d9d6412250ba781880cce3ae7b523bf035",
     "url": 
"https://raw.githubusercontent.com/ansible/ansible-lint/main/src/ansiblelint/schemas/pattern.json";
   },
   "play-argspec": {
@@ -56,7 +56,7 @@
     "url": 
"https://raw.githubusercontent.com/ansible/ansible-lint/main/src/ansiblelint/schemas/role-arg-spec.json";
   },
   "rulebook": {
-    "etag": "8113782a066a9a7aba1f3f42aeb7f8315fa49b5bf0b158a61e44a3eba22dd22f",
+    "etag": "97220101562e188be347041e762472ff339975c5d3336f6c210336bae5ed7128",
     "url": 
"https://raw.githubusercontent.com/ansible/ansible-rulebook/main/ansible_rulebook/schema/ruleset_schema.json";
   },
   "tasks": {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ansible-lint-25.7.0/src/ansiblelint/schemas/galaxy.json 
new/ansible-lint-25.8.1/src/ansiblelint/schemas/galaxy.json
--- old/ansible-lint-25.7.0/src/ansiblelint/schemas/galaxy.json 2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/schemas/galaxy.json 2025-08-14 
02:42:08.000000000 +0200
@@ -58,6 +58,8 @@
         "Artistic-1.0-Perl",
         "Artistic-1.0-cl8",
         "Artistic-2.0",
+        "Artistic-dist",
+        "Aspell-RU",
         "Asterisk-exception",
         "Asterisk-linking-protocols-exception",
         "Autoconf-exception-2.0",
@@ -71,6 +73,7 @@
         "BSD-2-Clause-Patent",
         "BSD-2-Clause-Views",
         "BSD-2-Clause-first-lines",
+        "BSD-2-Clause-pkgconf-disclaimer",
         "BSD-3-Clause",
         "BSD-3-Clause-Attribution",
         "BSD-3-Clause-Clear",
@@ -217,6 +220,7 @@
         "Cornell-Lossless-JPEG",
         "Cronyx",
         "Crossword",
+        "CryptoSwift",
         "CrystalStacker",
         "Cube",
         "D-FSL-1.0",
@@ -228,6 +232,8 @@
         "DRL-1.1",
         "DSDP",
         "DigiRule-FOSS-exception",
+        "Digia-Qt-LGPL-exception-1.1",
+        "DocBook-DTD",
         "DocBook-Schema",
         "DocBook-Stylesheet",
         "DocBook-XML",
@@ -254,7 +260,10 @@
         "FSFAP-no-warranty-disclaimer",
         "FSFUL",
         "FSFULLR",
+        "FSFULLRSD",
         "FSFULLRWD",
+        "FSL-1.1-ALv2",
+        "FSL-1.1-MIT",
         "FTL",
         "Fair",
         "Fawkes-Runtime-exception",
@@ -305,12 +314,14 @@
         "GPL-CC-1.0",
         "GStreamer-exception-2005",
         "GStreamer-exception-2008",
+        "Game-Programming-Gems",
         "Giftware",
         "Glide",
         "Glulxe",
         "Gmsh-exception",
         "Graphics-Gems",
         "Gutmann",
+        "HDF5",
         "HIDAPI",
         "HP-1986",
         "HP-1989",
@@ -464,6 +475,7 @@
         "NPL-1.1",
         "NPOSL-3.0",
         "NRL",
+        "NTIA-PD",
         "NTP",
         "NTP-0",
         "Naumen",
@@ -579,11 +591,13 @@
         "SMLNJ",
         "SMPPL",
         "SNIA",
+        "SOFA",
         "SPL-1.0",
         "SSH-OpenSSH",
         "SSH-short",
         "SSLeay-standalone",
         "SSPL-1.0",
+        "SUL-1.0",
         "SWI-exception",
         "SWL",
         "Saxpath",
@@ -634,6 +648,8 @@
         "Universal-FOSS-exception-1.0",
         "UnixCrypt",
         "Unlicense",
+        "Unlicense-libtelnet",
+        "Unlicense-libwhirlpool",
         "VOSTROM",
         "VSL-1.0",
         "Vim",
@@ -696,6 +712,8 @@
         "hdparm",
         "i2p-gpl-java-exception",
         "iMatix",
+        "jove",
+        "libpng-1.6.35",
         "libpng-2.0",
         "libpri-OpenH323-exception",
         "libselinux-1.0",
@@ -704,15 +722,18 @@
         "lsof",
         "magaz",
         "mailprio",
+        "man2html",
         "metamail",
         "mif-exception",
         "mpi-permissive",
         "mpich2",
         "mplus",
         "mxml-exception",
+        "ngrep",
         "openvpn-openssl-exception",
         "pkgconf",
         "pnmstitch",
+        "polyparse-exception",
         "psfrag",
         "psutils",
         "python-ldap",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ansible-lint-25.7.0/src/ansiblelint/schemas/rulebook.json 
new/ansible-lint-25.8.1/src/ansiblelint/schemas/rulebook.json
--- old/ansible-lint-25.7.0/src/ansiblelint/schemas/rulebook.json       
2025-07-29 21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/schemas/rulebook.json       
2025-08-14 02:42:08.000000000 +0200
@@ -101,6 +101,13 @@
                         "once_after",
                         "group_by_attributes"
                     ]
+                },
+                {
+                    "required": [
+                        "accumulate_within",
+                        "threshold",
+                        "group_by_attributes"
+                    ]
                 }
             ],
             "properties": {
@@ -112,6 +119,14 @@
                     "type": "string",
                     "pattern": 
"^\\d+\\s(milliseconds?|seconds?|minutes?|hours?|days?)$"
                 },
+                "accumulate_within": {
+                    "type": "string",
+                    "pattern": 
"^\\d+\\s(milliseconds?|seconds?|minutes?|hours?|days?)$"
+                },
+                "threshold": {
+                    "type": "integer",
+                    "minimum": 1
+                },
                 "group_by_attributes": {
                     "type": "array",
                     "items": {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/src/ansiblelint/skip_utils.py 
new/ansible-lint-25.8.1/src/ansiblelint/skip_utils.py
--- old/ansible-lint-25.7.0/src/ansiblelint/skip_utils.py       2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/skip_utils.py       2025-08-14 
02:42:08.000000000 +0200
@@ -50,7 +50,9 @@
     from collections.abc import Generator
 
     from ansiblelint.file_utils import Lintable
-    from ansiblelint.types import AnsibleBaseYAMLObject
+    from ansiblelint.types import (
+        AnsibleBaseYAMLObject,  # pyright: ignore[reportAttributeAccessIssue]
+    )
 
 
 _logger = logging.getLogger(__name__)
@@ -95,7 +97,7 @@
     return result
 
 
-def append_skipped_rules(
+def append_skipped_rules(  # type: ignore[no-any-unimported]
     pyyaml_data: AnsibleBaseYAMLObject,
     lintable: Lintable,
 ) -> AnsibleBaseYAMLObject:
@@ -143,7 +145,7 @@
         return yaml.load_all(file_text)
 
 
-def _append_skipped_rules(
+def _append_skipped_rules(  # type: ignore[no-any-unimported]
     pyyaml_data: AnsibleBaseYAMLObject,
     lintable: Lintable,
 ) -> AnsibleBaseYAMLObject | None:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/src/ansiblelint/types.py 
new/ansible-lint-25.8.1/src/ansiblelint/types.py
--- old/ansible-lint-25.7.0/src/ansiblelint/types.py    2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/types.py    2025-08-14 
02:42:08.000000000 +0200
@@ -5,7 +5,7 @@
 from collections.abc import Mapping, Sequence
 from typing import TypeAlias
 
-from ansible.parsing.yaml.objects import (  # pyright: 
ignore[reportMissingImports]
+from ansible.parsing.yaml.objects import (  # pyright: 
ignore[reportMissingImports] #pylint: disable=no-name-in-module
     AnsibleMapping,
     AnsibleSequence,
     AnsibleUnicode,
@@ -13,7 +13,7 @@
 )
 
 try:
-    from ansible.parsing.yaml.constructor import (  # pyright: 
ignore[reportMissingImports]
+    from ansible.parsing.yaml.constructor import (  # pyright: 
ignore[reportMissingImports] # type: ignore[import-not-found]
         AnsibleConstructor,
     )
     from ansible.parsing.yaml.objects import (  # pyright: 
ignore[reportMissingImports]
@@ -29,14 +29,14 @@
 # core 2.19 + data tagging:
 except ImportError:  # pragma: no cover
     # cspell: ignore datatag
-    from ansible._internal._datatag._tags import (  # type: 
ignore[import-not-found,no-redef]
+    from ansible._internal._datatag._tags import (  # type: ignore[assignment]
         TrustedAsTemplate,
     )
-    from ansible._internal._yaml._constructor import (  # type: 
ignore[import-not-found,no-redef] # pyright: ignore[reportMissingImports] # 
pylint: disable=import-error,no-name-in-module
+    from ansible._internal._yaml._constructor import (  # pyright: 
ignore[reportMissingImports] # pylint: disable=import-error,no-name-in-module
         AnsibleConstructor,
     )
-    from ansible.errors import (  # type: 
ignore[no-redef,attr-defined,unused-ignore]
-        AnsibleTemplateSyntaxError,  # pyright: 
ignore[reportAttributeAccessIssue]
+    from ansible.errors import (  # type: 
ignore[assignment,no-redef,attr-defined,unused-ignore]
+        AnsibleTemplateSyntaxError,  # pyright: 
ignore[reportAttributeAccessIssue,reportAssignmentType]
     )
 
     AnsibleBaseYAMLObject: TypeAlias = (  # type: ignore[no-redef] # pyright: 
ignore[reportRedeclaration]
@@ -46,7 +46,7 @@
 # temporary ignoring the type parameters for Sequence and Mapping because once
 # add them we can no longer use isinstance() to check for them and we will
 # need to implement a more complex runtime type checking.
-AnsibleJSON: TypeAlias = Sequence | Mapping | AnsibleUnicode | str | None  # 
type: ignore[type-arg]
+AnsibleJSON: TypeAlias = Sequence | Mapping | AnsibleUnicode | str | None  # 
type: ignore[no-any-unimported,type-arg]
 
 __all__ = [
     "AnsibleBaseYAMLObject",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/src/ansiblelint/utils.py 
new/ansible-lint-25.8.1/src/ansiblelint/utils.py
--- old/ansible-lint-25.7.0/src/ansiblelint/utils.py    2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/utils.py    2025-08-14 
02:42:08.000000000 +0200
@@ -89,11 +89,11 @@
 from ansiblelint.skip_utils import is_nested_task
 from ansiblelint.text import has_jinja, is_fqcn, removeprefix
 from ansiblelint.types import (
-    AnsibleBaseYAMLObject,
+    AnsibleBaseYAMLObject,  # pyright: ignore[reportAttributeAccessIssue]
     AnsibleConstructor,  # pyright: ignore[reportAttributeAccessIssue]
     AnsibleJSON,
-    AnsibleMapping,
-    AnsibleSequence,
+    AnsibleMapping,  # pyright: ignore[reportAttributeAccessIssue]
+    AnsibleSequence,  # pyright: ignore[reportAttributeAccessIssue]
     TrustedAsTemplate,
 )
 
@@ -149,7 +149,7 @@
 
     dataloader = DataLoader()  # type: ignore[no-untyped-call]
     dataloader.set_basedir(str(basedir))
-    templar = Templar(dataloader, variables=templatevars)  # type: 
ignore[no-untyped-call]
+    templar = Templar(dataloader, variables=templatevars)
     return templar
 
 
@@ -239,7 +239,7 @@
         try:
             if TrustedAsTemplate and not isinstance(varname, 
TrustedAsTemplate):
                 varname = TrustedAsTemplate().tag(varname)
-            templated = templar.template(varname, **kwargs)  # type: 
ignore[no-untyped-call]
+            templated = templar.template(varname, **kwargs)
         except AnsibleError as exc:
             if lookup_error in exc.message:
                 return varname
@@ -264,7 +264,7 @@
                 v = templar.environment.filters
                 if not hasattr(v, "_delegatee"):  # pragma: no cover
                     raise
-                v._delegatee[missing_filter] = mock_filter  # fmt: skip # 
noqa: SLF001
+                v._delegatee[missing_filter] = mock_filter  # fmt: skip # 
noqa: SLF001 # pyright: ignore[reportAttributeAccessIssue]
                 # Record the mocked filter so we can warn the user
                 if missing_filter not in options.mock_filters:
                     _logger.debug("Mocking missing filter %s", missing_filter)
@@ -329,7 +329,7 @@
     # produce weird errors if we use a relative one.
     # https://github.com/psf/black/issues/4519
     # fmt: off
-    AnsibleCollectionConfig.playbook_paths = (  # type: ignore[attr-defined] # 
pyright: ignore[reportAttributeAccessIssue]
+    AnsibleCollectionConfig.playbook_paths = (  # pyright: 
ignore[reportAttributeAccessIssue]
         str(basedir.resolve()))
     # fmt: on
 
@@ -833,7 +833,7 @@
 
 
 # pylint: disable=too-many-nested-blocks
-def extract_from_list(
+def extract_from_list(  # type: ignore[no-any-unimported]
     blocks: AnsibleBaseYAMLObject,
     candidates: list[str],
     *,
@@ -1061,7 +1061,7 @@
         return line
 
 
-def task_in_list(
+def task_in_list(  # type: ignore[no-any-unimported]
     data: AnsibleBaseYAMLObject,
     file: Lintable,
     kind: str,
@@ -1069,7 +1069,7 @@
 ) -> Iterator[Task]:
     """Get action tasks from block structures."""
 
-    def each_entry(
+    def each_entry(  # type: ignore[no-any-unimported]
         data: Sequence[Any] | AnsibleMapping, file: Lintable, kind: str, 
position: str
     ) -> Iterator[Task]:
         if not data or not isinstance(data, Iterable):
@@ -1118,7 +1118,7 @@
         yield from each_entry(data, file=file, position=position, kind=kind)
 
 
-def add_action_type(
+def add_action_type(  # type: ignore[no-any-unimported]
     actions: AnsibleBaseYAMLObject, action_type: str
 ) -> AnsibleSequence:
     """Add action markers to task objects."""
@@ -1136,14 +1136,14 @@
 
 
 @cache
-def parse_yaml_linenumbers(
+def parse_yaml_linenumbers(  # type: ignore[no-any-unimported]
     lintable: Lintable,
 ) -> AnsibleBaseYAMLObject | None:
     """Parse yaml as ansible.utils.parse_yaml but with linenumbers.
 
     The line numbers are stored in each node's LINE_NUMBER_KEY key.
     """
-    loader: AnsibleLoader
+    loader: AnsibleLoader  # type: ignore[valid-type]
     result = AnsibleSequence()
 
     # signature of Composer.compose_node
@@ -1154,19 +1154,19 @@
             msg = "Unexpected yaml data."
             raise TypeError(msg)
         if hasattr(loader, "line"):  # pragma: no cover
-            line = loader.line
+            line = loader.line  # type: ignore[attr-defined]
             node.__line__ = line + 1  # type: ignore[attr-defined]
         return node
 
     # signature of AnsibleConstructor.construct_mapping
-    def construct_mapping(
+    def construct_mapping(  # type: ignore[no-any-unimported]
         node: yaml.MappingNode,
         deep: bool = False,  # noqa: FBT002
     ) -> AnsibleMapping:
         # pyright: ignore[reportArgumentType]
-        mapping: AnsibleMapping = AnsibleConstructor.construct_mapping(
+        mapping: AnsibleMapping = AnsibleConstructor.construct_mapping(  # 
type: ignore[no-any-unimported]
             loader, node, deep=deep
-        )  # type: ignore[no-untyped-call]
+        )
         if hasattr(node, LINE_NUMBER_KEY):
             mapping[LINE_NUMBER_KEY] = getattr(node, LINE_NUMBER_KEY)
         else:
@@ -1181,16 +1181,16 @@
             kwargs["vault_password"] = DEFAULT_VAULT_PASSWORD
         # WARNING: 'unused-ignore' is needed below in order to allow mypy to
         # be passing with both pre-2.19 and post-2.19 versions of Ansible core.
-        loader = AnsibleLoader(lintable.content, **kwargs)  # type: 
ignore[no-untyped-call]
+        loader = AnsibleLoader(lintable.content, **kwargs)
         # redefine Composer.compose_node
         loader.compose_node = compose_node  # type: 
ignore[attr-defined,unused-ignore]
         # redefine AnsibleConstructor.construct_mapping
-        loader.construct_mapping = construct_mapping  # type: 
ignore[method-assign]
+        loader.construct_mapping = construct_mapping  # type: 
ignore[attr-defined]
         # while Ansible only accepts single documents, we also need to load
         # multi-documents, as we attempt to load any YAML file, not only
         # Ansible managed ones.
         while True:
-            data = loader.get_data()  # type: ignore[no-untyped-call]
+            data = loader.get_data()  # type: ignore[attr-defined]
             if data is None:
                 break
             result.append(data)
@@ -1344,7 +1344,7 @@
                 offset = child.lineno - 1
                 break
 
-    docs = read_docstring(str(lintable.path))  # type: ignore[no-untyped-call]
+    docs = read_docstring(str(lintable.path.resolve(strict=False)))  # type: 
ignore[no-untyped-call]
     examples = docs["plainexamples"]
 
     # Ignore the leading newline and lack of document start
@@ -1355,13 +1355,13 @@
 @lru_cache
 def load_plugin(name: str) -> PluginLoadContext:
     """Return loaded ansible plugin/module."""
-    loaded_module = action_loader.find_plugin_with_context(  # type: 
ignore[no-untyped-call]
+    loaded_module = action_loader.find_plugin_with_context(
         name,
         ignore_deprecated=True,
         check_aliases=True,
     )
     if not loaded_module.resolved:
-        loaded_module = module_loader.find_plugin_with_context(  # type: 
ignore[no-untyped-call]
+        loaded_module = module_loader.find_plugin_with_context(
             name,
             ignore_deprecated=True,
             check_aliases=True,
@@ -1370,7 +1370,7 @@
         "ansible.builtin."
     ):  # pragma: no cover
         # fallback to core behavior of using legacy
-        loaded_module = module_loader.find_plugin_with_context(  # type: 
ignore[no-untyped-call]
+        loaded_module = module_loader.find_plugin_with_context(
             name.replace("ansible.builtin.", "ansible.legacy."),
             ignore_deprecated=True,
             check_aliases=True,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/src/ansiblelint/yaml_utils.py 
new/ansible-lint-25.8.1/src/ansiblelint/yaml_utils.py
--- old/ansible-lint-25.7.0/src/ansiblelint/yaml_utils.py       2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/src/ansiblelint/yaml_utils.py       2025-08-14 
02:42:08.000000000 +0200
@@ -38,11 +38,11 @@
 
 try:  # ansible 2.19 + data tagging
     # cspell: ignore datatag
-    from ansible._internal._datatag._tags import (  # type: 
ignore[import-not-found] # pyright: ignore[reportMissingImports]
+    from ansible._internal._datatag._tags import (  # pyright: 
ignore[reportMissingImports]
         Origin,
     )
 except ImportError:  # pragma: no cover
-    Origin = None
+    Origin = None  # type: ignore[misc,assignment]
 
 if TYPE_CHECKING:
     # noinspection PyProtectedMember
@@ -1306,10 +1306,10 @@
         line = int(data[LINE_NUMBER_KEY])
     if not line:
         # ansible 2.19+
-        if Origin:  # pragma: no cover
+        if Origin:  # type: ignore[truthy-function]  # pragma: no cover
             tag = Origin.get_tag(data)
-            line = tag.line_num
-            column = tag.col_num
+            line = tag.line_num  # type: ignore[union-attr,assignment]
+            column = tag.col_num  # type: ignore[union-attr]
         else:  # pre-ansible 2.19
             if hasattr(data, "ansible_pos"):  # AnsibleUnicode object
                 _, line, column = data.ansible_pos  # pyright: 
ignore[reportAttributeAccessIssue]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ansible-lint-25.7.0/test/schemas/negative_test/changelogs/invalid-date/changelogs/changelog.yaml.md
 
new/ansible-lint-25.8.1/test/schemas/negative_test/changelogs/invalid-date/changelogs/changelog.yaml.md
--- 
old/ansible-lint-25.7.0/test/schemas/negative_test/changelogs/invalid-date/changelogs/changelog.yaml.md
     2025-07-29 21:54:51.000000000 +0200
+++ 
new/ansible-lint-25.8.1/test/schemas/negative_test/changelogs/invalid-date/changelogs/changelog.yaml.md
     2025-08-14 02:42:08.000000000 +0200
@@ -25,13 +25,13 @@
   "errors": [
     {
       "filename": 
"negative_test/changelogs/invalid-date/changelogs/changelog.yaml",
-      "path": "$.releases.1.0.0.release_date",
+      "path": "$.releases['1.0.0'].release_date",
       "message": "'01-01-2020' is not a 'date'",
       "has_sub_errors": false
     },
     {
       "filename": 
"negative_test/changelogs/invalid-date/changelogs/changelog.yaml",
-      "path": "$.releases.1.0.0.release_date",
+      "path": "$.releases['1.0.0'].release_date",
       "message": "'01-01-2020' does not match 
'\\\\d\\\\d\\\\d\\\\d-\\\\d\\\\d-\\\\d\\\\d'",
       "has_sub_errors": false
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ansible-lint-25.7.0/test/schemas/negative_test/changelogs/invalid-plugin-namespace/changelogs/changelog.yaml.md
 
new/ansible-lint-25.8.1/test/schemas/negative_test/changelogs/invalid-plugin-namespace/changelogs/changelog.yaml.md
--- 
old/ansible-lint-25.7.0/test/schemas/negative_test/changelogs/invalid-plugin-namespace/changelogs/changelog.yaml.md
 2025-07-29 21:54:51.000000000 +0200
+++ 
new/ansible-lint-25.8.1/test/schemas/negative_test/changelogs/invalid-plugin-namespace/changelogs/changelog.yaml.md
 2025-08-14 02:42:08.000000000 +0200
@@ -25,7 +25,7 @@
   "errors": [
     {
       "filename": 
"negative_test/changelogs/invalid-plugin-namespace/changelogs/changelog.yaml",
-      "path": "$.releases.1.0.0.plugins.lookup[0].namespace",
+      "path": "$.releases['1.0.0'].plugins.lookup[0].namespace",
       "message": "'foo' is not of type 'null'",
       "has_sub_errors": false
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ansible-lint-25.7.0/test/schemas/negative_test/playbooks/import_playbook.yml.md
 
new/ansible-lint-25.8.1/test/schemas/negative_test/playbooks/import_playbook.yml.md
--- 
old/ansible-lint-25.7.0/test/schemas/negative_test/playbooks/import_playbook.yml.md
 2025-07-29 21:54:51.000000000 +0200
+++ 
new/ansible-lint-25.8.1/test/schemas/negative_test/playbooks/import_playbook.yml.md
 2025-08-14 02:42:08.000000000 +0200
@@ -67,13 +67,13 @@
         "message": "{'ansible.builtin.import_playbook': {}} should not be 
valid under {'required': ['ansible.builtin.import_playbook']}"
       },
       "best_deep_match": {
-        "path": "$[0].ansible.builtin.import_playbook",
+        "path": "$[0]['ansible.builtin.import_playbook']",
         "message": "{} is not of type 'string'"
       },
       "num_sub_errors": 3,
       "sub_errors": [
         {
-          "path": "$[0].ansible.builtin.import_playbook",
+          "path": "$[0]['ansible.builtin.import_playbook']",
           "message": "{} is not of type 'string'"
         },
         {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/test/schemas/package-lock.json 
new/ansible-lint-25.8.1/test/schemas/package-lock.json
--- old/ansible-lint-25.7.0/test/schemas/package-lock.json      2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/test/schemas/package-lock.json      2025-08-14 
02:42:08.000000000 +0200
@@ -9,18 +9,18 @@
         "js-yaml": "^4.1.0",
         "safe-stable-stringify": "^2.5.0",
         "ts-node": "^10.9.2",
-        "vscode-json-languageservice": "^5.5.0"
+        "vscode-json-languageservice": "^5.6.1"
       },
       "devDependencies": {
         "@types/chai": "^5.2.2",
         "@types/js-yaml": "^4.0.9",
-        "@types/minimatch": "^5.1.2",
+        "@types/minimatch": "^6.0.0",
         "@types/mocha": "^10.0.10",
-        "@types/node": "^22.15.25",
-        "chai": "^5.2.0",
-        "minimatch": "^10.0.1",
-        "mocha": "^11.5.0",
-        "typescript": "^5.8.3"
+        "@types/node": "^24.2.1",
+        "chai": "^5.2.1",
+        "minimatch": "^10.0.3",
+        "mocha": "^11.7.1",
+        "typescript": "^5.9.2"
       }
     },
     "node_modules/@cspotcode/source-map-support": {
@@ -34,6 +34,27 @@
         "node": ">=12"
       }
     },
+    "node_modules/@isaacs/balanced-match": {
+      "version": "4.0.1",
+      "resolved": 
"https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz";,
+      "integrity": 
"sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==",
+      "dev": true,
+      "engines": {
+        "node": "20 || >=22"
+      }
+    },
+    "node_modules/@isaacs/brace-expansion": {
+      "version": "5.0.0",
+      "resolved": 
"https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz";,
+      "integrity": 
"sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==",
+      "dev": true,
+      "dependencies": {
+        "@isaacs/balanced-match": "^4.0.1"
+      },
+      "engines": {
+        "node": "20 || >=22"
+      }
+    },
     "node_modules/@isaacs/cliui": {
       "version": "8.0.2",
       "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz";,
@@ -214,10 +235,14 @@
       "dev": true
     },
     "node_modules/@types/minimatch": {
-      "version": "5.1.2",
-      "resolved": 
"https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz";,
-      "integrity": 
"sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==",
-      "dev": true
+      "version": "6.0.0",
+      "resolved": 
"https://registry.npmjs.org/@types/minimatch/-/minimatch-6.0.0.tgz";,
+      "integrity": 
"sha512-zmPitbQ8+6zNutpwgcQuLcsEpn/Cj54Kbn7L5pX0Os5kdWplB7xPgEh/g+SWOB/qmows2gpuCaPyduq8ZZRnxA==",
+      "deprecated": "This is a stub types definition. minimatch provides its 
own type definitions, so you do not need this installed.",
+      "dev": true,
+      "dependencies": {
+        "minimatch": "*"
+      }
     },
     "node_modules/@types/mocha": {
       "version": "10.0.10",
@@ -227,12 +252,11 @@
       "license": "MIT"
     },
     "node_modules/@types/node": {
-      "version": "22.15.25",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.25.tgz";,
-      "integrity": 
"sha512-RJCAZ1E7JgMDJRnyVwIvlnKnNa0oHXrgSeq5aoXdhxCOSuwCe9sccKnngOJq8GuukzSf45u4VeD0JxUXfC3Dwg==",
-      "license": "MIT",
+      "version": "24.2.1",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-24.2.1.tgz";,
+      "integrity": 
"sha512-DRh5K+ka5eJic8CjH7td8QpYEV6Zo10gfRkjHCO3weqZHWDtAaSTFtl4+VMqOJ4N5jcuhZ9/l+yy8rVgw7BQeQ==",
       "dependencies": {
-        "undici-types": "~6.21.0"
+        "undici-types": "~7.10.0"
       }
     },
     "node_modules/@vscode/l10n": {
@@ -367,11 +391,10 @@
       }
     },
     "node_modules/chai": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.0.tgz";,
-      "integrity": 
"sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==",
+      "version": "5.2.1",
+      "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.1.tgz";,
+      "integrity": 
"sha512-5nFxhUrX0PqtyogoYOA8IPswy5sZFTOsBFl/9bNsmDLgsxYTzSZQJDPppDnZPTQbzSEm0hqGjWPzRemQCYbD6A==",
       "dev": true,
-      "license": "MIT",
       "dependencies": {
         "assertion-error": "^2.0.1",
         "check-error": "^2.1.1",
@@ -380,7 +403,7 @@
         "pathval": "^2.0.0"
       },
       "engines": {
-        "node": ">=12"
+        "node": ">=18"
       }
     },
     "node_modules/chalk": {
@@ -823,12 +846,12 @@
       "integrity": 
"sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw=="
     },
     "node_modules/minimatch": {
-      "version": "10.0.1",
-      "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz";,
-      "integrity": 
"sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==",
+      "version": "10.0.3",
+      "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz";,
+      "integrity": 
"sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==",
       "dev": true,
       "dependencies": {
-        "brace-expansion": "^2.0.1"
+        "@isaacs/brace-expansion": "^5.0.0"
       },
       "engines": {
         "node": "20 || >=22"
@@ -848,11 +871,10 @@
       }
     },
     "node_modules/mocha": {
-      "version": "11.5.0",
-      "resolved": "https://registry.npmjs.org/mocha/-/mocha-11.5.0.tgz";,
-      "integrity": 
"sha512-VKDjhy6LMTKm0WgNEdlY77YVsD49LZnPSXJAaPNL9NRYQADxvORsyG1DIQY6v53BKTnlNbEE2MbVCDbnxr4K3w==",
+      "version": "11.7.1",
+      "resolved": "https://registry.npmjs.org/mocha/-/mocha-11.7.1.tgz";,
+      "integrity": 
"sha512-5EK+Cty6KheMS/YLPPMJC64g5V61gIR25KsRItHw6x4hEKT6Njp1n9LOlH4gpevuwMVS66SXaBBpg+RWZkza4A==",
       "dev": true,
-      "license": "MIT",
       "dependencies": {
         "browser-stdout": "^1.3.1",
         "chokidar": "^4.0.1",
@@ -870,7 +892,7 @@
         "serialize-javascript": "^6.0.2",
         "strip-json-comments": "^3.1.1",
         "supports-color": "^8.1.1",
-        "workerpool": "^6.5.1",
+        "workerpool": "^9.2.0",
         "yargs": "^17.7.2",
         "yargs-parser": "^21.1.1",
         "yargs-unparser": "^2.0.0"
@@ -1250,10 +1272,9 @@
       }
     },
     "node_modules/typescript": {
-      "version": "5.8.3",
-      "resolved": 
"https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz";,
-      "integrity": 
"sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==",
-      "license": "Apache-2.0",
+      "version": "5.9.2",
+      "resolved": 
"https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz";,
+      "integrity": 
"sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==",
       "bin": {
         "tsc": "bin/tsc",
         "tsserver": "bin/tsserver"
@@ -1263,10 +1284,9 @@
       }
     },
     "node_modules/undici-types": {
-      "version": "6.21.0",
-      "resolved": 
"https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz";,
-      "integrity": 
"sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
-      "license": "MIT"
+      "version": "7.10.0",
+      "resolved": 
"https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz";,
+      "integrity": 
"sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag=="
     },
     "node_modules/uri-js": {
       "version": "4.4.1",
@@ -1282,10 +1302,9 @@
       "integrity": 
"sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg=="
     },
     "node_modules/vscode-json-languageservice": {
-      "version": "5.5.0",
-      "resolved": 
"https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-5.5.0.tgz";,
-      "integrity": 
"sha512-JchBzp8ArzhCVpRS/LT4wzEEvwHXIUEdZD064cGTI4RVs34rNCZXPUguIYSfGBcHH1GV79ufPcfy3Pd8+ukbKw==",
-      "license": "MIT",
+      "version": "5.6.1",
+      "resolved": 
"https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-5.6.1.tgz";,
+      "integrity": 
"sha512-IQIURBF2VMKBdWcMunbHSI3G2WmJ9H7613E1hRxIXX7YsAPSdBxnEiIUrTnsSW/3fk+QW1kfsvSigqgAFYIYtg==",
       "dependencies": {
         "@vscode/l10n": "^0.0.18",
         "jsonc-parser": "^3.3.1",
@@ -1328,9 +1347,9 @@
       }
     },
     "node_modules/workerpool": {
-      "version": "6.5.1",
-      "resolved": 
"https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz";,
-      "integrity": 
"sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==",
+      "version": "9.3.3",
+      "resolved": 
"https://registry.npmjs.org/workerpool/-/workerpool-9.3.3.tgz";,
+      "integrity": 
"sha512-slxCaKbYjEdFT/o2rH9xS1hf4uRDch1w7Uo+apxhZ+sf/1d9e0ZVkn42kPNGP2dgjIx6YFvSevj0zHvbWe2jdw==",
       "dev": true
     },
     "node_modules/wrap-ansi": {
@@ -1450,6 +1469,21 @@
         "@jridgewell/trace-mapping": "0.3.9"
       }
     },
+    "@isaacs/balanced-match": {
+      "version": "4.0.1",
+      "resolved": 
"https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz";,
+      "integrity": 
"sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==",
+      "dev": true
+    },
+    "@isaacs/brace-expansion": {
+      "version": "5.0.0",
+      "resolved": 
"https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz";,
+      "integrity": 
"sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==",
+      "dev": true,
+      "requires": {
+        "@isaacs/balanced-match": "^4.0.1"
+      }
+    },
     "@isaacs/cliui": {
       "version": "8.0.2",
       "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz";,
@@ -1583,10 +1617,13 @@
       "dev": true
     },
     "@types/minimatch": {
-      "version": "5.1.2",
-      "resolved": 
"https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz";,
-      "integrity": 
"sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==",
-      "dev": true
+      "version": "6.0.0",
+      "resolved": 
"https://registry.npmjs.org/@types/minimatch/-/minimatch-6.0.0.tgz";,
+      "integrity": 
"sha512-zmPitbQ8+6zNutpwgcQuLcsEpn/Cj54Kbn7L5pX0Os5kdWplB7xPgEh/g+SWOB/qmows2gpuCaPyduq8ZZRnxA==",
+      "dev": true,
+      "requires": {
+        "minimatch": "*"
+      }
     },
     "@types/mocha": {
       "version": "10.0.10",
@@ -1595,11 +1632,11 @@
       "dev": true
     },
     "@types/node": {
-      "version": "22.15.25",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.25.tgz";,
-      "integrity": 
"sha512-RJCAZ1E7JgMDJRnyVwIvlnKnNa0oHXrgSeq5aoXdhxCOSuwCe9sccKnngOJq8GuukzSf45u4VeD0JxUXfC3Dwg==",
+      "version": "24.2.1",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-24.2.1.tgz";,
+      "integrity": 
"sha512-DRh5K+ka5eJic8CjH7td8QpYEV6Zo10gfRkjHCO3weqZHWDtAaSTFtl4+VMqOJ4N5jcuhZ9/l+yy8rVgw7BQeQ==",
       "requires": {
-        "undici-types": "~6.21.0"
+        "undici-types": "~7.10.0"
       }
     },
     "@vscode/l10n": {
@@ -1695,9 +1732,9 @@
       "dev": true
     },
     "chai": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.0.tgz";,
-      "integrity": 
"sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==",
+      "version": "5.2.1",
+      "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.1.tgz";,
+      "integrity": 
"sha512-5nFxhUrX0PqtyogoYOA8IPswy5sZFTOsBFl/9bNsmDLgsxYTzSZQJDPppDnZPTQbzSEm0hqGjWPzRemQCYbD6A==",
       "dev": true,
       "requires": {
         "assertion-error": "^2.0.1",
@@ -2016,12 +2053,12 @@
       "integrity": 
"sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw=="
     },
     "minimatch": {
-      "version": "10.0.1",
-      "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz";,
-      "integrity": 
"sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==",
+      "version": "10.0.3",
+      "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz";,
+      "integrity": 
"sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==",
       "dev": true,
       "requires": {
-        "brace-expansion": "^2.0.1"
+        "@isaacs/brace-expansion": "^5.0.0"
       }
     },
     "minipass": {
@@ -2031,9 +2068,9 @@
       "dev": true
     },
     "mocha": {
-      "version": "11.5.0",
-      "resolved": "https://registry.npmjs.org/mocha/-/mocha-11.5.0.tgz";,
-      "integrity": 
"sha512-VKDjhy6LMTKm0WgNEdlY77YVsD49LZnPSXJAaPNL9NRYQADxvORsyG1DIQY6v53BKTnlNbEE2MbVCDbnxr4K3w==",
+      "version": "11.7.1",
+      "resolved": "https://registry.npmjs.org/mocha/-/mocha-11.7.1.tgz";,
+      "integrity": 
"sha512-5EK+Cty6KheMS/YLPPMJC64g5V61gIR25KsRItHw6x4hEKT6Njp1n9LOlH4gpevuwMVS66SXaBBpg+RWZkza4A==",
       "dev": true,
       "requires": {
         "browser-stdout": "^1.3.1",
@@ -2052,7 +2089,7 @@
         "serialize-javascript": "^6.0.2",
         "strip-json-comments": "^3.1.1",
         "supports-color": "^8.1.1",
-        "workerpool": "^6.5.1",
+        "workerpool": "^9.2.0",
         "yargs": "^17.7.2",
         "yargs-parser": "^21.1.1",
         "yargs-unparser": "^2.0.0"
@@ -2288,14 +2325,14 @@
       }
     },
     "typescript": {
-      "version": "5.8.3",
-      "resolved": 
"https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz";,
-      "integrity": 
"sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ=="
+      "version": "5.9.2",
+      "resolved": 
"https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz";,
+      "integrity": 
"sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A=="
     },
     "undici-types": {
-      "version": "6.21.0",
-      "resolved": 
"https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz";,
-      "integrity": 
"sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ=="
+      "version": "7.10.0",
+      "resolved": 
"https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz";,
+      "integrity": 
"sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag=="
     },
     "uri-js": {
       "version": "4.4.1",
@@ -2311,9 +2348,9 @@
       "integrity": 
"sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg=="
     },
     "vscode-json-languageservice": {
-      "version": "5.5.0",
-      "resolved": 
"https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-5.5.0.tgz";,
-      "integrity": 
"sha512-JchBzp8ArzhCVpRS/LT4wzEEvwHXIUEdZD064cGTI4RVs34rNCZXPUguIYSfGBcHH1GV79ufPcfy3Pd8+ukbKw==",
+      "version": "5.6.1",
+      "resolved": 
"https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-5.6.1.tgz";,
+      "integrity": 
"sha512-IQIURBF2VMKBdWcMunbHSI3G2WmJ9H7613E1hRxIXX7YsAPSdBxnEiIUrTnsSW/3fk+QW1kfsvSigqgAFYIYtg==",
       "requires": {
         "@vscode/l10n": "^0.0.18",
         "jsonc-parser": "^3.3.1",
@@ -2347,9 +2384,9 @@
       }
     },
     "workerpool": {
-      "version": "6.5.1",
-      "resolved": 
"https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz";,
-      "integrity": 
"sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==",
+      "version": "9.3.3",
+      "resolved": 
"https://registry.npmjs.org/workerpool/-/workerpool-9.3.3.tgz";,
+      "integrity": 
"sha512-slxCaKbYjEdFT/o2rH9xS1hf4uRDch1w7Uo+apxhZ+sf/1d9e0ZVkn42kPNGP2dgjIx6YFvSevj0zHvbWe2jdw==",
       "dev": true
     },
     "wrap-ansi": {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/test/schemas/package.json 
new/ansible-lint-25.8.1/test/schemas/package.json
--- old/ansible-lint-25.7.0/test/schemas/package.json   2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/test/schemas/package.json   2025-08-14 
02:42:08.000000000 +0200
@@ -4,7 +4,7 @@
     "js-yaml": "^4.1.0",
     "safe-stable-stringify": "^2.5.0",
     "ts-node": "^10.9.2",
-    "vscode-json-languageservice": "^5.5.0"
+    "vscode-json-languageservice": "^5.6.1"
   },
   "scripts": {
     "compile": "tsc",
@@ -14,13 +14,13 @@
   "devDependencies": {
     "@types/chai": "^5.2.2",
     "@types/js-yaml": "^4.0.9",
-    "@types/minimatch": "^5.1.2",
+    "@types/minimatch": "^6.0.0",
     "@types/mocha": "^10.0.10",
-    "@types/node": "^22.15.25",
-    "chai": "^5.2.0",
-    "minimatch": "^10.0.1",
-    "mocha": "^11.5.0",
-    "typescript": "^5.8.3"
+    "@types/node": "^24.2.1",
+    "chai": "^5.2.1",
+    "minimatch": "^10.0.3",
+    "mocha": "^11.7.1",
+    "typescript": "^5.9.2"
   },
   "directories": {
     "test": "./src"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/test/test_skiputils.py 
new/ansible-lint-25.8.1/test/test_skiputils.py
--- old/ansible-lint-25.7.0/test/test_skiputils.py      2025-07-29 
21:54:51.000000000 +0200
+++ new/ansible-lint-25.8.1/test/test_skiputils.py      2025-08-14 
02:42:08.000000000 +0200
@@ -20,7 +20,9 @@
 if TYPE_CHECKING:
     from ansiblelint.rules import RulesCollection
     from ansiblelint.testing import RunFromText
-    from ansiblelint.types import AnsibleBaseYAMLObject
+    from ansiblelint.types import (
+        AnsibleBaseYAMLObject,  # pyright: ignore[reportAttributeAccessIssue]
+    )
 
 PLAYBOOK_WITH_NOQA = """\
 ---
@@ -196,7 +198,7 @@
         ),
     ),
 )
-def test_append_skipped_rules(
+def test_append_skipped_rules(  # type: ignore[no-any-unimported]
     lintable: Lintable,
     yaml: AnsibleBaseYAMLObject,
     expected_form: AnsibleBaseYAMLObject,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ansible-lint-25.7.0/test/test_utils.py 
new/ansible-lint-25.8.1/test/test_utils.py
--- old/ansible-lint-25.7.0/test/test_utils.py  2025-07-29 21:54:51.000000000 
+0200
+++ new/ansible-lint-25.8.1/test/test_utils.py  2025-08-14 02:42:08.000000000 
+0200
@@ -40,7 +40,10 @@
 from ansiblelint.file_utils import Lintable, cwd
 from ansiblelint.runner import Runner
 from ansiblelint.testing import run_ansible_lint
-from ansiblelint.types import AnsibleMapping, AnsibleSequence
+from ansiblelint.types import (  # pyright: ignore[reportAttributeAccessIssue]
+    AnsibleMapping,  # pyright: ignore[reportAttributeAccessIssue]
+    AnsibleSequence,  # pyright: ignore[reportAttributeAccessIssue]
+)
 
 if TYPE_CHECKING:
     from collections.abc import Sequence

Reply via email to