chore(deps): update dependency ansible-lint to v24
This MR contains the following updates:
Package | Update | Change |
---|---|---|
ansible-lint (changelog) | major |
==3.4.13 -> ==24.10.0
|
Release Notes
ansible/ansible-lint (ansible-lint)
v24.10.0
Enhancements
- Add support for py313 (#4388) @abhikdps
Bugfixes
- Require ansible-compat>=24.10.0 (#4402)
- Update TaskHasTag example rule used in custom-rules.md (#4401) @cavcrosby
- Add Fedora 41 as a platform in the metadata schema (#4392) @jsf9k
- Fixing the issue "Unfinished sentence in docs/profiles.md #4358" (#4380) @binojmn
- Fix quotes converting free-form syntax to yaml (#4361) @cavcrosby
- Handle FQCN when using import_playbook (#4369) @cavcrosby
- Allow jinja in variable names (#4372) @ssbarnea
- Update rulebook schema (#4373) @ssbarnea
- Fix wonky writing to sarif_file (#4368) @Qalthos
- Fix to avoid spamming syslog with invoked messages (#4353) @tanwigeetika1618
- Pin codecov action to v4.5.0 and update dependabot.yml to ignore v4.6.0 (#4356) @tanwigeetika1618
- Update schema for missing
tags
property to builder v3options
(#4346) @audgirka
v24.9.2
Bugfixes
- Fix github action (#4342) @ssbarnea
v24.9.1
Bugfixes
- Fix missing MatchErrors due to hash collisions (#4307) @cavcrosby
- Remove requirement of options field in argument_specs.yaml (#4291) @MatthiasKunnen
- Correct use of working directory with ansible-lint github action (#4340) @ssbarnea
- Avoid running application initialization twice (#4335) @ssbarnea
- Handle bare exception case from nested jinja2 vars (#4315) @cavcrosby
- Require ansible-compat>=24.9.1 (#4336) @ssbarnea
- Update execution environment schema (#4334) @ssbarnea
- Add new OEL versions to meta JSON schema (#4312) @mpmurphy-aexp
- Fix for ignoring test / directories by fqcn[deep] rule (#4320) @tanwigeetika1618
Other
- Docs: remove IRC/ML/google.groups remnants (#4322) @Andersson007
v24.9.0
Enhancements
- Community comms (#4309) @oraNod
- feat: add
requirements_file
input to GitHub action (#4253) @dbrennand
Bugfixes
- fix: Adding missing EE option skip_pip_install (#4299) @sscheib
- Fix upload-artifact action to work with v4.4 and newer (#4314) @alisonlhart
- fix: Add reset-failed state in executable_options (#4301) @tanwigeetika1618
- Enable --offline to affect checking version online (#4283) @cavcrosby
- Fix long lines being wrapped with a trailing space (#4288) @cavcrosby
- Make galaxy[version-incorrect] rule opt-in (#4247) @cavcrosby
- Fix error for imported playbooks w/invalid syntax (#4289) @cavcrosby
- Fix indentation change to comments when using --fix (#4273) @cavcrosby
- Fix list of non-strings in args rule (#4279) @johnbyrneio
- Improve --version behavior to handle remote disconnect (#4276) @cavcrosby
- Ignore var-naming[pattern] to foreign role vars (#4230) @cavcrosby
- Remove leftover Sphinx command directives (#4243) @cavcrosby
- Fix custom-rules documentation examples (#4264) @Tompage1994
v24.7.0
Bugfixes
- Fix linting issues within command_instead_of* rules (ruff:D102) (#4252) @alisonlhart
v24.6.1
Bugfixes
- Fix working directory when used as an github action (#4213) @bkaraoren
- Fix relative imports in args rule (#4216) @corubba
- Fix cmd args with no-free-form transformer (#4215) @Qalthos
- Accept changlog.yml as a valid changelog (#4218) @cavcrosby
- Avoid using warn for command/shell actions (#4207) @ssbarnea
- Update Contributing docs and add tox as test optional-dependency (#4209) @hdub-tech
v24.6.0
Enhancements
- Adding logic for configuring supported ansible versions (#4203) @alisonlhart
Bugfixes
- Revert notify related checks, errors, transforms for listen and tests (#4205) @audgirka
- Improve logic of find_children (#4161) @ssbarnea
- Pickup correct path component w/ANSIBLE_ROLES_PATH (#4176) @cavcrosby
- Respect yamllint 'document_start' rule when autofixing yaml (#4184) @elara-leitstellentechnik
- Avoid displaying upgrade warning when installation is not pip (#4204) @ssbarnea
- Correctly recognize path with spaces with tokenize (#4198) @ssbarnea
- Fix false positive reports in is_handler function (#4170) @MalKeshar
- Avoid exception with conflicting action statements (#4195) @ssbarnea
- Don't raise name[casing] on handlers with special role syntax (#4196) @Qalthos
- Refactor tokenize function (#4191) @ssbarnea
- Avoid stacktrace with unsupported import_playbook syntax (#4190) @ssbarnea
- Support for 2.15...updating linter. (#4144) @epacific1
- Don't quote strings that start with 0 when running ansible-lint --fix. (#4167) @kousu
- Allow inventory to be used for playbook order key (#4182) @ssbarnea
v24.5.0
Enhancements
- Add subdirectories to be part of the task prefix (#4143) @cavcrosby
- Prevent execution with incompatible yamllint configuration (#4139) @ssbarnea
- Continue linting other files when one has syntax-check errors (#4133) @ssbarnea
Bugfixes
- Make linter aware of its own requirements (#4159) @ssbarnea
- Allow running with incompatible yamllint config (#4158) @ssbarnea
- Avoid key exception during transform (#4156) @ssbarnea
- Raise name[casing] violation for notify task param (#4149) @cavcrosby
- Allow tabs in win_lineinfile (#4147) @ssbarnea
- Improve feedback for
fix
, avoid a traceback with transform (#4148) @cidrblock - Allow tabs inside jinja strings (#4146) @ssbarnea
- Avoid reformatting hexadecimal integers (#4145) @ssbarnea
- Make import_playbook recognize playbooks from within collections (#4141) @ssbarnea
- Document valid locations for requirements.yml in the docs (#4134) @shatakshiiii
- Recognize adjacent plugins (#4131) @ssbarnea
- Support examples for role entrypoints (#4019) @felixfontein
- Add lower requirements and testing (#4130) @ssbarnea
v24.2.3
Bugfixes
- Make
ignore_unreachable
accept jinja templates (#4120) @audgirka - Make fix more resilient to syntax-check errors (#4125) @ssbarnea
- Don't inject CWD parent into PATH (#4108) @garymm
- Do not assume working_directory is github.workspace (#4103) @ajfabbri
- Fix yaml rules being included regardless of tags (#4107) @cavcrosby
- Allow jinja2 expression for choices field (#4117) @cavcrosby
- Update
order
schema to work with jinja template (#4121) @audgirka - Fix KeyError on
key-order
rule with blocks (#4116) @Qalthos - Avoid running get_app more than once (#4115) @ssbarnea
- Avoid NameError if there is no notify keyword to update (#4113) @Qalthos
- Add AstraLinux platform identification (#4111) @dentist128
v24.2.2
Bugfixes
- Raise exception while accessing rules by index (#4068) @audgirka
- Update spdx license list (#4097) @ssbarnea
- Bump minimal version of black being required (#4089) @ssbarnea
- Add systemctl get-default as acceptable command (#4087) @konstruktoid
- Adding EDA tag to the required galaxy.yml tags (#4077) @alisonlhart
v24.2.1
Bugfixes
- Fix error suppression when syntax is incorrect (#4026) @audgirka
- Set global
cache_dir_lock
(#4055) @guppy0130 - [role-name] Handle string role dependencies (#4054) @corubba
- Support for upcoming Ubuntu 24.04 and Fedora 40 (#4051) @mafalb
- Update documentation for syntax-check[unknown-module] (#4049) @ssbarnea
- Add OpenWRT 23.05 to valid versions (#4041) @jonkerj
- Update task name in
notify
for a task againstname[casing]
error (#4038) @audgirka - accept yum history and info as valid commands (#4025) @konstruktoid
- Add attributes for role argument specs (#4018) @felixfontein
v24.2.0
Minor Changes
- Drop support for Python 3.9 (#4009) @audgirka
Bugfixes
- Fix scenario when role has no
dependencies
section inmeta/main.yml
(#3993) @audgirka
v6.22.2
Bugfixes
- Fix key error for name[casing] rule (#3987) @ajinkyau
- Allow dashes in legacy role namespaces (#3962) @sur5r
- Use new ansible-compat verbosity levels (#3975) @ssbarnea
- Remove dependency on newer requests library (#3959) @ssbarnea
- Ignore set-property for systemd command (#3949) @alanbbr
- Correct requires_ansible error message (#3954) @ssbarnea
- Improve transformation for
no-free-form
rule (#3945) @ajinkyau - Documentation improvement (#3946) @ssbarnea
- docs: fix grammatical issue in philosophy Q&A section (#3934) @davidhulick
- Update supported versions of ansible (#3930) @ajinkyau
- Fix backward compatibility (#3929) @McSim85
- Fix auto capitalization for name[prefix] rule (#3922) @ajinkyau
- Fix role deps check for detecting path names (#3923) @cavcrosby
- Avoid warnings about PATH with pipx installations (#3920) @ssbarnea
v6.22.1
Bugfixes
- Look for ansible binary in the same path as we are (#3903) @FliegenKLATSCH
- Avoid stacktrace with broken ansible.cfg files (#3916) @ssbarnea
- Avoid jinja[invalid] with ansible.builtin.mandatory filter (#3917) @ssbarnea
- Remove support for deprecated include (#3722) @ssbarnea
- Fix use of versioned github action (#3762) @karl-johan-grahn
- Fix few URLs in README.md (#3915) @ssbarnea
- Correct some usage examples for
package_latest
(#3914) @pablomh - Add option to allow running with missing plugins and collection dependencies (#3913) @ssbarnea
- Avoid warnings from loading of deprecated modules (#3715) @ssbarnea
- Log ignored exception details to debug log (#3900) @bluecmd
- GitHub Action: properly respect the
working_directory
argument (#3905) @ptoscano - Allow to set
max_fail_percentage
as templated integer (#3901) @rebtoor - Fix setuptools-scm versioning (#3887) @ssbarnea
- Add Fedora 39 to
meta.json
(#3893) @jsf9k - Use python 3.10 as primary version target (#3886) @ssbarnea
v6.22.0
Minor Changes
- Enable YAML 1.2 support for non-ansible files (#3809) @ssbarnea
Bugfixes
- Require ruamel.yaml >= 0.18.5 (#3880) @ssbarnea
- Improve logging regarding to yaml loading and dumping (#3875) @ssbarnea
- Avoid creating new load method in our custom formatter (#3874) @ssbarnea
- Support
ruamel-yaml >= 0.18.2
(#3869) @hswong3i
v6.21.1
Bugfixes
- Avoid exception caused by accidental unloading of core rules (#3857) @ssbarnea
- Document pre-commit access to ansible community bundle (#3856) @ssbarnea
- Fix bug with auto-fix ending too soon (#3855) @ssbarnea
v6.21.0
Minor Changes
Bugfixes
- Add support for Rocky (#3843) @facorazza
- Update supported Ubuntu versions in
meta.json
(#3845) @mcdonnnj - Avoid false positives for handler in roles handlers directory (#3838) @ajinkyau
- Hide stacktrace when loading invalid yaml (#3844) @ajinkyau
- Add some platforms to
meta.json
(#3841) @mcdonnnj - Temporary avoid auto-fixing YAML files not owned by ansible (#3837) @ssbarnea
- Add environment variable for skipping schema update (#3835) @ajinkyau
- Avoid creating temporary YAML files inside source tree (#3819) @Qalthos
- Document environment variables (#3833) @ssbarnea
- Update schemas (#3832) @ssbarnea
- Support complex requirements in argument_specs.yml (#3823) @tapetersen
- Fix SARIF-formatter severity levels (#3824) @4ch1m
- Add play level autofix for key-order rule (#3815) @ajinkyau
- Add support for python 3.12 (#3813) @ssbarnea
- Update SPDX license list (#3814) @ssbarnea
- Use checkout action in install docs (#3810) @gma
- Fix actions-tagger arguments (#3808) @ssbarnea
v6.20.3
Bugfixes
- Fix wget command arguments in github action (#3806) @ssbarnea
- Update some platform versions in meta.json (#3800) @masoud-maghsoudi
v6.20.2
Bugfixes
- Do not use github action path for running ansible lint (#3798) @ReenigneArcher
- Correct listing of autofix rules in documentation (#3797) @ssbarnea
- Make the autofix rule list dynamic in documentation (#3785) @shatakshiiii
- Fix documentation links to autofix page (#3796) @ssbarnea
- Bump test dependencies (#3795) @ssbarnea
- Correct documentation regarding CLI argument precedence (#3792) @ssbarnea
- Document autofix ability for rules that supports it (#3791) @ssbarnea
- Accept underline prefix when checking var-naming (#3789) @ssbarnea
- Correct regression with use of --fix (#3783) @ssbarnea
v6.20.1
Bugfixes
- Fix detection of play roles vars missing prefix (#3765) @cavcrosby
- Prune reported errors after autofix (#3774) @cidrblock
-
--fix
will now default toall
(#3777) @ajinkyau - Avoid false error caused by TypeError with jinja rule (#3773) @ssbarnea
- Sanity Rule Ignore Additions and Updates (#3766) @alisonlhart
- Update rulebook schema (name is now required) (#3776) @ssbarnea
- Expose rules that have autofix capability in docs (#3770) @shatakshiiii
- List all the fixable rules in CLI via
--list-rules
(#3737) @shatakshiiii - Include level in SARIF results (#3758) @ssbarnea
- Meta runtime supported version update (#3755) @alisonlhart
v6.20.0
Minor Changes
- Respect cgroup CPU limits when running inside containers (#3749) @ssbarnea
- Rename --write option to --fix (#3748) @ssbarnea
- Add auto-fixing implementation for
no-free-form
rule (#3725) @ajinkyau - Add auto-fixing implementation for
partial-become
rule (#3692) @shatakshiiii - Add auto-fixing implementation for
no-jinja-when
rule (#3721) @shatakshiiii
Bugfixes
- Fix the detection of role vars missing role prefix (#3750) @cavcrosby
- Clarify auto-fix arguments use (#3751) @ssbarnea
- Avoid IndexError exception with jinja transform (#3747) @ssbarnea
- Fix docs typo (#3746) @ssbarnea
- Add /bin/bash executable to example correct code for pipefail rule (#3731) @Perdu
- Properly avoid
pipx
venv path to be included in altered path warning (#3730) @chrysle - Fix transform exception with local_action with old syntax (#3743) @ssbarnea
- Support only_upgrade (#3734) @soroshsabz
v6.19.0
Minor Changes
- Add auto transform for no-log-password rule (#3708) @ajinkyau
- Add auto-fixing implementation for key-order[task] rule (#3705) @ajinkyau
- Add auto-fixing implementation for
jinja[spacing]
rule (#3691) @ajinkyau - Make schema validation messages more explicit (#3701) @ssbarnea
- Transform for deprecated-local-action rule (#3689) @ajinkyau
Bugfixes
- Require ansible-compat>=4.1.10 (#3723) @ssbarnea
- Skip altered path warning for
ansible-lint
installed bypipx
(#3720) @chrysle - Update transform for
key-order
rule (#3719) @ajinkyau - Allow installation of pre-release collection version as dependencies (#3716) @ssbarnea
- Avoid deprecated-bare-vars false positive with file paths (#3709) @ssbarnea
- Limit sequence-of-sequence indents to a single space (#3671) @Qalthos
- Avoid no-handlers false positives (#3702) @ssbarnea
- Add missing word to risky-shell-pipe docs (#3704) @roock
- Avoid yamllint truthy violations with github workflows (#3698) @ssbarnea
- Avoid false positive with var-name rule on roles (#3697) @ssbarnea
- Include links to documentation for schema validation errors (#3684) @ssbarnea
- Schema update (#3693) @cidrblock
- Use yaml.load_all for multiple yaml document (#3679) @shatakshiiii
- Ignore user configured value for any_unparsed_is_failed (#3680) @ssbarnea
- Update rulebook schema (#3681) @ssbarnea
v6.18.0
Minor Changes
- Limit the maximum block depth (#3602) @Ruchip16
- Transform functionality for command_instead_of_shell (#3675) @ajinkyau
- Add rule to check the number of tasks (#3156) @Ruchip16
Bugfixes
- Clarify loop-var-prefix rule and code snippet (#3642) @schwarmco
- Update
version_added
for complexity rule (#3623) @ajinkyau - Ensure that single space between tasks is preserved when using --write (#3641) @shatakshiiii
- Update ansible-compat used for testing (#3664) @ssbarnea
- Document
yaml[line-length]
rule (#3653) @shatakshiiii - Prevent use of spdx-tools 0.8.0 due to breaking changes (#3649) @ssbarnea
- fixes dead marketplace link (#3631) @wookietreiber
- Improve profile information on summary line (#3637) @ziegenberg
- command-instead-of-module: allow
git rev-parse
(#3610) @JohnVillalovos - Include filepaths starting from $HOME in lintables (#3621) @shatakshiiii
- Update _mockings.py to fix bug created in #3390 (#3614) @karcaw
- Allow to set gather_facts as templated boolean (#3606) @noonedeadpunk
- Add dependency version check for collection metadata (#3601) @ajinkyau
- Fix installation of dependencies when run as an action (#3592) @ssbarnea
v6.17.2
Bugfixes
- Allow use as a reusable github action (#3513) @ssbarnea
- Add action and args properties to task class (#3576) @ssbarnea
- Fixed error when sarif file option is provided (#3587) @ajinkyau
- Add NetBSD as a recognized platform (#3586) @he32
- Display ansible-compat version alongwith with other deps (#3584) @ajinkyau
- Refactored syntax-checking (#3568) @ssbarnea
- Avoid app reinitialization during syntax-check (#3563) @ssbarnea
- Allow config file to have
.yaml
extension (#3559) @bdsoha - Allow lists of lists of strings for vars_files (#3561) @ajinkyau
v6.17.1
Bugfixes
- Update guess install method check (#3553) @ajinkyau
- Fix exclude logic bug that can cause cause partial linting (#3552) @ssbarnea
- Make profile information on summary line more clear (#3545) @ssbarnea
- Avoid adding pip related messages if installation method is different (#3551) @ajinkyau
- Avoid false positive with var-naming[no-role-prefix] (#3550) @ssbarnea
- Make refresh_schemas handle firewalls that cut the file transfer midway (#3546) @sverrehu
- Rename marketplace action (#3548) @ssbarnea
- Fix action name (#3536) @coaxial
- Handling of exclude paths with trailing slashs (#3527) @hille721
- Ensure that rules collections use Runtime in offline mode (#3526) @ssbarnea
- Avoid using get_app() from inside the rule (#3525) @ssbarnea
- Avoid dependency error from rich (#3517) @ssbarnea
v6.17.0
Minor Changes
- fqcn[deep]: detect deep plugins (#3502) @ssbarnea
Bugfixes
- Reimplement file exclusion logic (#3507) @ssbarnea
- Check validity of 'become_method' values from code (#3499) @ajinkyau
- Fix role_name_ prefix include_role var name error (#3500) @ajinkyau
- Hide pip error if not present (#3494) @Et7f3
- Update formatter to avoid reporting paths with .. (#3496) @ssbarnea
- Remove false positive on 'cacheable' property of set_fact (#3490) @ajinkyau
- Add missing become_method plugins to the schema (#3484) @ajinkyau
- Add support for ansible-builder v3 schema (#3480) @ajinkyau
- Add Github Marketplace Action (#3476) @ssbarnea
- Add oracle linux 8.8 (#3479) @facorazza
- Revert ansible-compat vendoring (#3478) @ssbarnea
- Updated file or dir not found message (#3474) @ajinkyau
- Check for included role prefix instead of current one (#3473) @ssbarnea
v6.16.2
Bugfixes
- Update test dependencies (#3470) @ssbarnea
- Fix and document installing of requirements.yml files (#3471) @ssbarnea
- Do not ever exclude files given as arguments (#3468) @ssbarnea
- Ensure we return error if argument gives are not present (#3467) @ssbarnea
- Allow rules to expose all tags they can produce (#3464) @ssbarnea
- Enable var-name rule to detect read-only variables (#3462) @ssbarnea
- Add Oracle Enterprise Linux 7.* (#3463) @Rylon
- Fix for var-naming rule to not break on include_tasks and vars (#3458) @ajinkyau
- var-naming now prevents use of Ansible reserved names (#3460) @ssbarnea
- Ensure that we also lint files from git submodules (#3431) @ssbarnea
- Adding 2.16 to the list of allowed ansible-core versions in meta-runtime rule (#3455) @alisonlhart
v6.16.1
Bugfixes
- Update lock file to use ansible-core 2.15.0 (#3449) @ssbarnea
- Install requirements from galaxy.yml and tests/requirements.yml (#3446) @ssbarnea
- Add Kali Linux as a supported platform (#3448) @mcdonnnj
- Do not trigger no_handler upon complex conditions (#3437) @klaus-tux
- Hide warning about unique filter originating from core (#3436) @ssbarnea
- Relax ruamel-yaml requirements (#3433) @ssbarnea
- Suggest correct alternative for
with_filetree
(#3432) @ErwinJanssen - Upgrade var-naming rule to include role name prefix (#3422) @ssbarnea
- Fix exception when using reformatting on scalars (#3423) @ssbarnea
- Find and lint imported playbooks (#3413) @ajinkyau
v6.16.0
Minor Changes
- Capture python warnings and report some of them as matches (#3324) @ssbarnea
- Capture and hide ansible core warnings by default (#3361) @ssbarnea
- Remove progressive mode (#3350) @ssbarnea
- Enforce use of lineno variable name inside the library (#3326) @ssbarnea
Bugfixes
- Add Amazon Linux 2023 as a supported platform (#3405) @artis3n
- Capture python warnings and report some of them as matches (#3324) @ssbarnea
- Fix missing required arguments issue from args rule (#3402) @ajinkyau
- Change matchtask to receive a Task instance (#3403) @ssbarnea
- Require ruamel.yaml>=0.17.24 (#3406) @ssbarnea
- Avoid exception when trying to load invalid text files (#3399) @ssbarnea
- Fix ansible collection path detection (#3398) @ssbarnea
- ruff: Address FBT002 (#3389) @shatakshiiii
- More pathlib adoption (#3390) @ssbarnea
- Avoid dropping comments on YAML transformation (#3392) @ssbarnea
- Correct docs on navigator schema location (#3394) @yajo
- Fix changelog schema for connection plugins (#3388) @Qalthos
- Migrate from os.path to pathlib (#3384) @ssbarnea
- Remove resolvelib from requirements lock (#3387) @ssbarnea
- Make cwd use pathlib (#3383) @ssbarnea
- ruff: Address PGH (#3380) @ssbarnea
- ruff: Address A (#3379) @ssbarnea
- ruff: Address B (#3377) @ssbarnea
- ruff: Address SLF (#3372) @ssbarnea
- ruff: Address
SIM
(#3373) @shatakshiiii - ruff: Address EXE (#3367) @ssbarnea
- ruff: Address BLE (#3368) @shatakshiiii
- ruff: Address INP and PLW (#3366) @ssbarnea
- Add initial handling of submodules to contribution docs (#3362) @klaus-tux
- ruff: Address T and RET (#3364) @ssbarnea
- Find "changed" not only in first "when" condition (#3358) @klaus-tux
- ruff: fix S rule (#3363) @ssbarnea
- Make MatchError a dataclass (#3345) @ssbarnea
- Remove
EM
from ruff ignores (#3356) @shatakshiiii - Mock jinja filters to prevent templating errors (#3355) @ssbarnea
- Update schema files (#3354) @ssbarnea
- Add Fedora 38 to meta.json schema file (#3353) @Marek-Mantaj-Mobica
- Remove
RUF
from ruff ignores (#3346) @ajinkyau - Remove
G
from ruff ignores (#3332) @shatakshiiii - Remove
ISC
from ruff ignores (#3342) @shatakshiiii - Remove
C
from ruff ignores (#3343) @ajinkyau - Make linter configuration a dataclass (#3334) @ssbarnea
- Remove
N
from ruff ignores (#3328) @shatakshiiii - Remove useless . from additional_dependencies in pre-commit hook (#3327) @trallnag
v6.15.0
Minor Changes
- Add ability to auto-fix fcqn rule violations (#3316) @MarkusTeufelberger
- Document how to avoid vault related errors (#3313) @ssbarnea
- Require at least one known subfolder for roles (#3303) @ssbarnea
Bugfixes
- Ensure that JSON output does not contain newlines (#3315) @ssbarnea
- Improve description of task names (#3314) @ssbarnea
- Fix config path detection logic (#3312) @ssbarnea
- Improve tests related to vault processing (#3306) @ssbarnea
- Avoid running args rule if we encounter a windows module (#3305) @ajinkyau
- Ensure non zero exit code when no files are linted (#3302) @ssbarnea
- Refactor exit codes to use an enum (#3300) @ssbarnea
- Ensure profile rules do not have experimental or opt-in tag (#3299) @ssbarnea
- Change logging to use rich output (#3297) @ssbarnea
- Refactor project root directory detection code (#3295) @ssbarnea
- Remove flake8 and pyupgrade (#3292) @ssbarnea
- Extend ruff checks (#3291) @ssbarnea
- Send GHA annotations to stderr (#3288) @ssbarnea
- Fix Schema validation for variables in tasks/vars directory (#3289) @ajinkyau
- Recognize ansible collections installed at system level (#3286) @ssbarnea
v6.14.6
Bugfixes
- Update schema to add some of the missing rules (#3274) @shatakshiiii
- Use temporary playbooks to check role syntax (#3280) @ssbarnea
- Enable ruff linter (#3276) @ssbarnea
- Use fqcn[canonical] in place of fqcn[action-redirect] (#3273) @shatakshiiii
- Refactor tests (#3271) @ssbarnea
- Refactor no-relative-paths tests (#3270) @ssbarnea
- Minor fixes for no-handler rule (#3269) @ssbarnea
- name[casing]: Add transform to automatically fix this during --write (#3268) @ssbarnea
- Remove meta-no-info rule due to being covered by schema[meta] (#3267) @ssbarnea
- Ignore unknown sections under changes key on changelogs (#3262) @ssbarnea
- Add current FreeBSD and OpenBSD versions (#3260) @rkrieger
- Ensure playbook path is absolute (#3250) @ssbarnea
- Updated 'kind' message if file kind is unknown (#3247) @ajinkyau
- Rename arg-spec schema file to clarify it applies to roles only (#3243) @ssbarnea
v6.14.5
: (yanked)
Bugfixes
- Use fqcn[canonical] in place of fqcn[action-redirect] (#3273) @shatakshiiii
- Refactor tests (#3271) @ssbarnea
- Refactor no-relative-paths tests (#3270) @ssbarnea
- Minor fixes for no-handler rule (#3269) @ssbarnea
- name[casing]: Add transform to automatically fix this during --write (#3268) @ssbarnea
- Remove meta-no-info rule due to being covered by schema[meta] (#3267) @ssbarnea
- Ignore unknown sections under changes key on changelogs (#3262) @ssbarnea
- Add current FreeBSD and OpenBSD versions (#3260) @rkrieger
- Ensure playbook path is absolute (#3250) @ssbarnea
- Updated 'kind' message if file kind is unknown (#3247) @ajinkyau
- Rename arg-spec schema file to clarify it applies to roles only (#3243) @ssbarnea
v6.14.4
Bugfixes
- Document that no-changed-when also applies to handlers (#3237) @ssbarnea
- Update navigator schema (#3236) @ssbarnea
- Update no-handler rule to accept 'not changed' (#3230) @jpopelka
- Fix link for usage.md (Linting playbooks and roles) (#3224) @ziegenberg
- Skip PATH checking when pyenv virtualenv is present (#3219) @ajinkyau
- Require yamllint 1.30.3 or newer (#3220) @ssbarnea
v6.14.3
Bugfixes
- Refactor task iterator (part 2) (#3212) @ssbarnea
- Document fix for literal_compare
== False
(#3207) @jemand771 - docs: Provide more information about the dangers of run_once (#3187) @bendem
- Fix sarif output to use 'match.details' in result object, instead of 'match.message' (#3163) @4ch1m
- Allow templated boolean for any_errors_fatal (#3205) @sathieu
- Refactor task iterator to return an object (#3195) @ssbarnea
- Update SPDX license list (#3193) @ssbarnea
- Fix tilde interpolation in PATH (#3185) @fclaerho
- Fix "helpUri" assignment for SARIF output (#3176) @4ch1m
- docs: fix link for rule galaxy[no-runtime] (#3175) @ziegenberg
v6.14.2
Bugfixes
- Ignore risky-shell-pipe with pwsh (#3166) @ssbarnea
- Implement galaxy[no-runtime] check for meta/runtime.yml file (#3162) @ssbarnea
- Fixed args rule error for synchronize module (#3158) @ajinkyau
- Avoid test ... require a dictionary error with jinja rule (#3157) @ssbarnea
v6.14.1
Bugfixes
- Avoid "unable to evaluate string as dictionary" with args rule (#3150) @ssbarnea
- Avoid 'Unrecognized type' errors with jinja rule (#3149) @ssbarnea
- Allow 'use' parameter with service module (args) (#3147) @ssbarnea
- Change schema $id to be a valid URL (#3146) @ssbarnea
- Document skip_ansible_lint does not work with yamllint rule (#3144) @ssbarnea
- Update schema '$id' (#3137) @dericcrago
- Ensure ignored matches are reports as minor in codeclimate output (#3131) @ssbarnea
- Remove unused rules_as_docs (#3130) @ssbarnea
- Remove deprecated nested_items (#3129) @ssbarnea
- Avoid undefined errors from jinja rule (#3127) @ssbarnea
- Refactor processing of module args (#3125) @ssbarnea
v6.14.0
Minor Changes
- Add rulebook schema (#3103) @ssbarnea
- Add sanity rule with check for bad and disallowed ignores (#3102) @alisonlhart
- Remove support for python 3.8 (#3051) @ssbarnea
Bugfixes
- Adding 2.9 ignore allow-list for sanity rule (#3118) @alisonlhart
- Generalize args rule exception handling (#3113) @ajinkyau
- Remove duplicate deprecated-command-syntax rule (#3119) @ssbarnea
- Allow schema refresh to run without installing app (#3117) @ssbarnea
- Removed unused code (#3116) @ajinkyau
- Allow custom rules specific configuration with ansible-lint-config JSON Schema (#3080) @ssato
- Ensure SPDX license list is in sync (#3111) @ssbarnea
- Added support for raw booleans when using complex_conditional (#3109) @ajinkyau
- Make git errors fatal when strict mode is active (#3064) @ssbarnea
- Fix for skipped rules key in yaml rule (#3097) @ajinkyau
- Allow manifest field on galaxy file schema (#3100) @ssbarnea
- Simplify logic for meta-runtime rule (#3089) @ajinkyau
- Removed lines not required for code coverage (meta-no-info rule) (#3094) @ajinkyau
- Remove "mode: preserve" from risky file perms doc, add copy example (#3078) @jamescooke
- Improved ignore file handling (#3075) @4ch1m
- fix exclude-path test (#3071) @4ch1m
- Avoid jinja rule triggering with mutually exclusive arguments (#3060) @ssbarnea
- Avoid reformatting of strings with line feeds and no jinja (#3059) @ssbarnea
- Change CodeClimate severity to expose error or warning levels (#3057) @ssbarnea
- Avoid 'not defined' with jinja rule (#3056) @ssbarnea
- Avoid 'is undefined' error with jinja rule (#3055) @ssbarnea
- Document output formats (#3054) @ssbarnea
- Allow /dev/null to be passed as config file (#3053) @ssbarnea
v6.13.1
Bugfixes
- Improve no-changed-when rule (#3050) @ssbarnea
- Fix ignore file generation (#3046) @jcgruenhage
v6.13.0
Minor Changes
- Removed experimental flag from multiple rules (#3037) @ssbarnea
- Allow only use of quoted octals (#3030) @ssbarnea
- Load rule ignores from external text file (#3004) @ssbarnea
Bugfixes
- Improve jinja error line number identification (#3044) @ssbarnea
- profiles: include all rules when listing all rules or tags (#3043) @ziegenberg
- Improve documentation on var-naming (#3042) @ssbarnea
- Improve loop-var-prefix checking (#3041) @ssbarnea
- Ignore known problematic modules from args rule (#3040) @ssbarnea
- Improve jinja2 rule error handling (#3039) @ssbarnea
- Enable syntax-check on roles (#3035) @ssbarnea
- Recognize role-name[path] also inside roles block (#3034) @ssbarnea
- Allow {% in schema full-jinja check (#3029) @ssbarnea
- Update ansible-compat (#3025) @ssbarnea
- Recognize systemctl kill as a valid command (#3024) @konstruktoid
- Mark syntax-check as unskippable (#3020) @ssbarnea
- Fixes no-tabs issue with fqcn actions (#3021) @ssbarnea
- Move empty-playbook to syntax-check (#3019) @ssbarnea
- Ensure that rule import failures are not ignored (#2983) @ssbarnea
- Increase the test coverage (#3014) @ssbarnea
v6.12.2
Bugfixes
- Use XDG_CACHE_HOME instead of XDG_CONFIG_CACHE (#3009) @gangefors
- Adding galaxy[tag] check for required tags (#3006) @alisonlhart
- Fix playbook/rulebook detection (#3005) @apatard
- Improved documentation building (#3007) @ssbarnea
- Rename meta-unsupported-ansible to meta-runtime and correct its logic (#3000) @alisonlhart
- Avoid stack trace caused by bad filename matching pattern (#3001) @ssbarnea
- Embed ansible_compat in linter (#2994) @ssbarnea
- Bump cryptography to 39.0.1 (#2996) @ssbarnea
- Keep jinja2 leading spaces (#2993) @ssbarnea
- Add schema[moves] messages for moved plugins (#2992) @ssbarnea
- Updated galaxy rule imports and improved code coverage (#2985) @ajinkyau
v6.12.1
Bugfixes
- Make no-jinja-when also detect list conditions (#2975) @ssbarnea
- Fix exception related to include_tasks (#2974) @ssbarnea
- Allow noqa comments without colons (#2971) @ssbarnea
v6.12.0
Minor Changes
- Extend fqcn rule to complain on
collections
keyword (#2825) @jcgruenhage - Determine if passed arguments are playbooks or not (#2912) @ssbarnea
Bugfixes
- Avoid caching on role_name regex (#2876) (#2876) @DanInProgress
- Change the way rules are listed from command line (#2940 (#2940) @ssbarnea
- Added example for skip list on command line (#2964) (#2964) @ajinkyau
- Do not install collection locally in offline mode (#2926) (#2926) @jensrudolf
- Improved coverage for empty string compare and galaxy rules (#2963) @ajinkyau
- Add support for Ansible 2.15 (#2960 (#2960) @ssbarnea
- Rename warning[raw-non-string] to no-free-form[raw-non-string] (#2956) @ssbarnea
- Correct run-once rule identifier and related examples (#2952) @ajinkyau
- Fix typo in doc site name (#2954) @utoddl
- Replace sphinx with mkdocs (#2942) @ssbarnea
- Remove rich markdown header override (#2938) @ssbarnea
- Fixing OpenWrt name; Adding OpenWrt 22.03 (#2928) @sscheib
- Ignore args rule finding if value for choice has jinja template (#2929) @klaus-tux
- Allow warnings to be skipped (#2925) @ssbarnea
- Fix spacing in option help strings (#2920) @thomwiggers
- Allow dumping of SARIF files (#2921) @ssbarnea
- Change treatment of files that fail to load structured data (#2919) @ssbarnea
- Fix github archives metadata (#2914) @ssbarnea
- Fix print leak with meta-unsupported-ansible (#2913) @ssbarnea
v6.11.0
Minor Changes
- Remove opt-in and experimental tags from metadata rule (#2906) @ssbarnea
- Remove opt-in and experimental tags from galaxy rule (#2905) @ssbarnea
- Add galaxy[no-changelog] check to galaxy rule (#2832) @alisonlhart
Bugfixes
- Fix typo in installing.md (#2901) @wgroenewold
- Fix 'location' attribute for CodeclimateJSONFormatter (#2897) @4ch1m
- Avoid dubious ownership errors with newer versions of git (#2890) @ssbarnea
- Clarify effects of --offline flag (#2896) @Andeye
- Fix infinite hang on schema refresh by adding timeout parameter (#2895) @Andeye
- schema: detect invalid space in meta runtime (#2873) @ssbarnea
- Docs: issue #2864 update urls (#2865) @oraNod
v6.10.2
Bugfixes
- Make git a runtime dependency (#2860) @ssbarnea
- Disable version check when running as a pre-commit hook (#2858) @ssbarnea
- Avoid checking var-names on non ansible files (#2856) @ssbarnea
v6.10.1
Bugfixes
- Avoid TypeError NoneType with lookups (#2852) @ssbarnea
- Add the missing github_branch meta field (#2847) @triplepoint
- name[template]: only trigger on word characters after the template (#2836) @evgeni
- Update documentation of
run_once
rule (#2823) @shatakshiiii - Fix line number on var-naming error for 'register' (#2840) @zigarn
- Add SLES15SP4 to schema (#2841) @johanneskastl
- src/ansiblelint/schemas/meta.json: add openSUSE 15.5 (#2842) @johanneskastl
- Complete schema for Antsibull changelogs (#2834) @shatakshiiii
v6.10.0
Minor Changes
- Add schema for Antsibull changelogs (#2814) @ssbarnea
- Add a rule to validate module options (#2749) @ganeshrn
- Add meta-unsupported-ansible rule for checking requires_ansible values (#2770) @alisonlhart
Bugfixes
- Avoid running lookup filters while evaluating jinja2 (#2821) @ssbarnea
- Update schema to accept a list for 'listen' (#2817) @zigarn
- Update changelog schema etag (#2818) @ssbarnea
- Fix args validation with setup module (#2813) @ssbarnea
- Adopt PEP-621 packaging (#2807) @ssbarnea
- Restore classic behavior of offline mode (#2806) @ssbarnea
- Avoid false positive with name[casing] (#2800) @ssbarnea
- Use JSON Schema to validate own config file (#2797) @ssbarnea
- Add has_jinja and has_glob to text module (#2794) @ssbarnea
- Update schema etags (#2791) @ssbarnea
- Fix redirected links (#2790) @ssbarnea
- Correct schema refresh logic (#2785) @ssbarnea
- Add OracleLinux to supported platforms and include version 8.7 and 9.1 (#2783) @facorazza
v6.9.1
Bugfixes
- Allow var_naming_pattern in linter config schema (#2776) @ssbarnea
- Fix multiline jinja pattern in schema (#2775) @ssbarnea
- schema: allow jinja in diff keyword (#2774) @ssbarnea
- Assimilate schemas project (#2769) @ssbarnea
- Allow a prefix in subtasks names (#2740) @shatakshiiii
- Refactor risky-octal and improve its messaging (#2759) @ssbarnea
- Deprecate running under py38 (#2760) @ssbarnea
- Restore offline mode functionality (#2761) @ssbarnea
- Fix badge linking to rules (#2746) @motlib
- Upgrade linters and fix reported issues (#2752) @ssbarnea
- Improve RPM Packaging (#2745) @gotmax23
- Refactor only-builtins to have less code duplication (#2739) @evgeni
- Treat ansible.legacy the same way ansible.builtin (#2727) @evgeni
- Allow additional modules in only-builtins (#2732) @evgeni
- Fix deannotate function (#2733) @ssbarnea
- Correct packaging metadata (#2734) @ssbarnea
v6.9.0
Minor Changes
- Enable dynamic schema refresh (#2703) @ssbarnea
- Allow additional collections in only-builtins (#2710) @evgeni
Bugfixes
- Avoid Object of type PosixPath is not JSON serializable with jinja2 (#2724) @ssbarnea
- Expand ~ in PATH and warn user (#2723) @ssbarnea
- Fix only builtins fail test (#2719) @evgeni
- Allow profile to be set in config file (#2720) @shatakshiiii
- Decouple profile listing from profile selecting on CLI (#2721) @ssbarnea
- Update url in docs (#2718) @ssbarnea
- Prevent installation on Windows (#2712) @ssbarnea
- Respect warn_list and skip_list (#2706) @rekup
- Avoid version checking when version info is absent (#2714) @ssbarnea
- Improve installation documentation (#2707) @oraNod
- Docs: usage content edits (#2682) @oraNod
- Sort dependencies (#2711) @ssbarnea
- Fix loop_var_prefix message list in the docs (#2709) @evgeni
- Clarify progressive mode documentation (#2708) @MarcinWieczorek
v6.8.7
Bugfixes
- Refactor get_app (#2656) @ssbarnea
- Bump minimal requirements (#2704) @ssbarnea
- Docs: configuration content edits (#2675) @oraNod
- Improve documentation on custom rules (#2685) @oraNod
- Docs: lint profiles (#2666) @oraNod
- Require ansible-compat>=2.2.5 (#2694) @ssbarnea
- Updated schemas (#2698) @ssbarnea
- Disable cspell allowCompoundWords (#2660) @shatakshiiii
- Print fatal matches first in GitHub Actions (#2689) @xfix
- Make SARIF output specification compliant (#2668) @atiterlea
- Perform mocking before installing dependencies (#2691) @ssbarnea
- Update schemas (#2692) @ssbarnea
- Fix broken test (#2676) @ssbarnea
v6.8.6
Bugfixes
- Fix offline mode (#2647) @ssbarnea
v6.8.5
Bugfixes
- Fix offline mode (#2643) @ssbarnea
- Delay app initialization (#2642) @ssbarnea
- Fix pip version check (#2641) @ssbarnea
- Fix progressive mode exit code (#2638) @ssbarnea
- role-name[path]: Now detects use of paths when including roles (#2532) @ssbarnea
- Avoid altering severity based on level on codeclimate output (#2637) @ssbarnea
- Do not emit fqcn[action-core] when ansible.legacy is used for builtin modules (#2634) @felixfontein
- Avoid upgrade recommendation for bleeding edge users (#2630) @ssbarnea
v6.8.4
Bugfixes
- Add experimental rule for run_once (#2626) @ajinkyau
- Fix package name in pip upgrade instructions (#2625) @davedittrich
- Docs: wrap loop var tag (#2610) @oraNod
- Prevent pip exception with version check (#2624) @ssbarnea
v6.8.3
Bugfixes
- Add warning message about outdated linter version (#2615) @ssbarnea
- Detect ScannerError while searching for skipped rules (#2619) @felixfontein
- Fix merging of command line options with configuration (#2616) @ssbarnea
- Refactor fqcn to recommend use of canonical names (#2604) @ssbarnea
- Allow toggling strict in the config file (#2603) @hemberger
v6.8.2
Bugfixes
- Fix strict mode (#2601) @ssbarnea
- Fix config file outside project_dir bug (#2600) @ssbarnea
- Add win_command/win_shell to no-free-form modules (#2596) @nre-ableton
- Docs: Add MD for var-naming (#2594) @oraNod
- Fix role-name correct code example (#2591) @branic
v6.8.1
Bugfixes
- Improve errors with invalid yaml files (#2589) @ssbarnea
- Avoid jinja[invalid] with vars on task (#2588) @ssbarnea
- Fix rules selection by profile (#2587) @ssbarnea
- Soften no-free-form occurences (#2586) @ssbarnea
- Ensure all rich tags are closed (#2585) @ssbarnea
- Docs: Add MD for role name rule (#2583) @oraNod
- Avoid warnings with empty role meta files (#2580) @ssbarnea
- Update schemas (#2582) @ssbarnea
- Docs: Add MD for risky shell pipe (#2577) @oraNod
- Include help url with JSON output format (#2578) @ssbarnea
- Docs: Add MD for risky-octal rule (#2574) @shatakshiiii
v6.8.0
Minor Changes
- Add no-shorthand rule as experimental (#2527) @ssbarnea
- Adds summary stats about found violations (#2495) @ssbarnea
- Upgrade fqcn-builtins rule into fqcn (#2505) @ssbarnea
- Changed success/failure message (#2567) @ssbarnea
Bugfixes
- Add extra documentation (#2503 #2511 #2546 #2551 #2552 #2554 #2555 #2559 #2560 #2561) @ssbarnea @oraNod
- Refactor the rendering of errors and warnings (#2566) @ssbarnea
- Fixed regex for pipefail rule (#2564) @ajinkyau
- Ensure we detect templating errors (#2558) @ssbarnea
- Remove enrich as a dependency (#2557) @ssbarnea
- Implement strict mode (#2533) @ssbarnea
- Avoid extra space when building task names (#2531) @ssbarnea
- Refactor parsing of ansible syntax check (#2529) @ssbarnea
- Allow var_files to be null, string and list of strings (#2528) @ssbarnea
- Fix bug which prevented run of rules on tasks doing imports (#2526) @ssbarnea
- Resolved documentation redirects (#2523) @ssbarnea
- Document lack of module_defaults support (#2519) @ssbarnea
- Allow file attribute with ansible.builtin.include_tasks (#2518) @ssbarnea
- Update schemas (#2517) @ssbarnea
- Replace template-instead-of-copy with avoid-implicit[copy-content] (#2512) @ssbarnea
- Fix path expansion when outside user home (#2515) @ssbarnea
- var-naming: also recognize vars with set_fact module (#2496) @nishipy
- Fix rich exception with tasks containing square brackets (#2510) @ssbarnea
- Fix exception with vars_prompt (#2500) @ssbarnea
- Fix project_dir detect with .config configs (#2499) @ssbarnea
- Avoid implicit templating if not play/task (#2498) @ssbarnea
- Fixed few profile rule name errors (#2497) @ssbarnea
- Rename no-shorthand to no-free-form (#2548) @ssbarnea
- Avoid reporting matches for files outside project_dir (#2547) @ssbarnea
- Allow fqcn with more than 2 dots (#2544) @ssbarnea
- no-shorthand: Avoid false positive with raw (#2541 #2542) @ssbarnea
- Fix project directory detection with config inside .config (#2540) @ssbarnea
v6.7.0
Minor Changes
- name[template]: recommend to use templating as suffix on names (#2483) @vineethreddykaturu
Bugfixes
- Refactor no-loop-var-prefix rule (#2470) @oraNod
- key-order: now sorts block/rescue/always to the bottom (#2454) @ssbarnea
- Ensure we do not return relative paths outside the project (#2492) @ssbarnea
- fix: use ansible-compat to install collections (#2466) @mnaser
- Change rich markdown theme/colors (#2486) @ssbarnea
- schema: allow listen key on handlers (#2484) @ssbarnea
- Ensure that symlinked arguments are resolved (#2476) @ssbarnea
- Document No hosts matched the subscripted pattern (#2481) @ssbarnea
- Use site.getuserbase() to detect ansible executable (#2477) @ssbarnea
v6.6.1
Bugfixes
- meta: allow empty meta schema files (#2472) @ssbarnea
- schema: correct documentation (#2471) @ssbarnea
- Fix jinja[invalid] false positive (#2465) @ssbarnea
- Update schemas (#2467) @ssbarnea
- Docs: yamllint rule (#2450) @oraNod
- Refactor: remove obsolete odict class alias (#2452) @ssbarnea
- Refactor some constants into specific module (#2451) @ssbarnea
- Docs: no handler rule doc update (#2446) @oraNod
- Fix bug with user action (#2448) @ssbarnea
- api: enable matchtask() to return list[MatchError] (#2445) @ssbarnea
v6.6.0
Minor Changes
- Replace no-jinja-nesting with jinja[invalid] (#2436) @ssbarnea
- Create template_instead_of_copy.py (#2346) @GhostLyrics
- Add rule to verify that galaxy.yml collection version is present and >= 1.0.0 (#2383) @KB-perByte
Bugfixes
- Mark galaxy rule as required only for shared profile (#2441) @ssbarnea
- Improve noqa comment detection (#2440) @ssbarnea
- Update schemas (#2439) @ssbarnea
- Fix bug parsing inline skips with tags: (#2438) @ssbarnea
- Fix bug in skip_list parsing with lists of integers (#2437) @ssbarnea
- Update meta schema to require standalone property (#2435) @ssbarnea
- Fix identification of inline noqa skips (#2300) @ssbarnea
- Docs: no handler rule (#2406) @oraNod
- Docs: updates to schema rule (#2431) @oraNod
- Make links to rule docs relative (#2432) @ssbarnea
- Fix include load in blocks (#2398) @kostyaplis
- Docs: Update the fqcn builtin rule docs for legacy shell (#2430) @oraNod
- Docs: literal compare rule (#2415) @oraNod
- Docs: inline env var rule (#2414) @oraNod
- docs: exclude_list => exclude_paths (#2428) @ltalirz
- Document metadata rules (#2416) @oraNod
- Clean-up documentation theme (#2425) @ssbarnea
- Change ansible-lint logo to bracket-dot from codicons (#2424) @ssbarnea
- Docs: empty string compare rule (#2400) @oraNod
- Docs: ignore errors rule (#2413) @oraNod
- no-changed-when: add documentation (#2417) @oraNod
- Docs: Minor edits to rule docs (#2418) @oraNod
- schema: add documentation (#2421) @ssbarnea
- fqcn-builtins: add documentation (#2412) @oraNod
- no-log-password: add documentation (#2409) @oraNod
- Update schemas (#2411) @ssbarnea
- no-jinja-when: add documentation (#2408) @oraNod
- Update schemas (#2410) @ssbarnea
- Suspend git output in progressive mode (#2369) @kostyaplis
- Do not parse excluded files (#2395) @sathieu
- docs: replace wrong occurrences of ignore_list with skip_list in rules (#2388) @karras
v6.5.2
Bugfixes
- Correct example of selecting profile from cli (#2380) @ssbarnea
- refactored runner.is_exclude and MatchError to use Lintable (#2379) @ssbarnea
- jinja[spacing]: use black for formatting (#2375) @ssbarnea
- deprecated-module: add documentation (#2377) @oraNod
- latest: include filename on rule match (#2378) @ssbarnea
- Correct documentation icons (#2373) @ssbarnea
- Avoid resource leak warning with multiprocessing Semaphore (#2365) @ssbarnea
- Use lockfile feature only when not in offline mode (#2371) @ssbarnea
- Replace git-latest and hg-latest with latest rule (#2366) @ssbarnea
- Increase lock timeout to 120s (#2370) @ssbarnea
- Move ansible-lint config schema inside our repo (#2367) @ssbarnea
- Added extra checks regarding rule listing (#2368) @ssbarnea
- Refactor rule loading so we can correctly load markdown help files (#2362) @ssbarnea
- Handle FileNotFoundError caused by processing new file in progressive mode (#2364) @kostyaplis
- name[play]: now also correctly works with import_playbook blocks (#2359) @apatard
- deprecated-local-action: add documentation (#2361) @ssbarnea
- deprecated-command: add documentation (#2360) @ssbarnea
- command-instead-of-module: improve documentation (#2356) @ssbarnea
- command-instead-of-module: improve documentation (#2355) @ssbarnea
- key-order: improve documentation (#2354) @ssbarnea
- Include links to documentation for default output (#2353) @ssbarnea
- Documentation refactoring (#2352) @ssbarnea
- Make use of libyaml when possible (#2350) @ssbarnea
- name[casing]: now applies only to scripts supporting uppercase (#2347) @ssbarnea
v6.5.1
Bugfixes
- jinja[spacing]: Include in default warn_list until it matures (#2336) @ssbarnea
- jinja[spacing]: Recognize keywords with implicit templating (#2334) @ssbarnea
- jinja[spacing]: Ensure ~ is correctly spaced (#2331) @ssbarnea
- jinja[spacing]: Avoid evaluating noqa comments (#2329) @ssbarnea
- jinja[spacing]: Fix negative numbers inside arrays (#2328) @ssbarnea
- command-instead-of-module: allow
systemctl --version
(#2327) @JohnVillalovos - Fix subprocess.run for progressive mode (#2319) @kostyaplis
- Raise name[play] for plays missing a name (#2295) @ssbarnea
v6.5.0
Minor Changes
- Add ability to process multi-document YAML files (#2290) @ssbarnea
- Standardize task MatchError enrichment (#2277) @cognifloyd
- Add name[casing] to identify wrongly capitalized task names (#2274) @ssbarnea
- Rename var-spacing rule to jinja[spacing] (#2259) @ssbarnea
Bugfixes
- Reimplement jinja[spacing] to avoid use of regex (#2306) @ssbarnea
- Allow use of jinja with no_log (#2311) @ssbarnea
- Avoid erroring with empty vars files (#2310) @ssbarnea
- Avoid early of splitting shorthand string (#2308) @ssbarnea
- Remove pytest from default dependencies (#2307) @ssbarnea
- Fix ansible-lint pre-commit hook (#2303) @ssbarnea
- Change meta rules to use matchyaml instead of matchplay (#2296) @ssbarnea
- Make ruamel.yaml annotation implicit for yaml (#2299) @ssbarnea
- Prevent other rules from running on invalid yaml files (#2287) @ssbarnea
- Prevent duplicate warnings about deprecated tags (#2293) @ssbarnea
- Allow single letter role names (#2292) @ssbarnea
- Prevent occasional FileNotFoundError when removing the .lock file (#2291) @ssbarnea
- Standardize task MatchError enrichment (#2277) @cognifloyd
- Ensure rules are checked in specific order (#2284) @ssbarnea
- Prevent finding playbooks inside tasks folders (#2278) @ssbarnea
- Replacing os.system with subprocess functions (#2273) @jpodivin
- Reimplement unamed-task rule as name[missing] (#2263) @ssbarnea
- Implement file locking on cache directory (#2270) @ssbarnea
- Improve errors with invalid galaxy.yml files (#2262) @ssbarnea
- Fix: Progressive mode has no effect (#2261) @kostyaplis
v6.4.0
Minor Changes
- Add initial support for rule profiles (#2245) @ssbarnea
- deprecated-local-action: refactor to use matchtask() (#2238) @nishipy
- Add support for Python 3.11 (#2239) @ssbarnea
Bugfixes
- Upgrade jsonschema to 4.8.0 (#2252) @ssbarnea
- Add ability to use use sub-rule matches on skip or warn lists (#2251) @ssbarnea
- Improve argument_specs matching pattern (#2249) @ssbarnea
- Update schemas (#2250) @ssbarnea
- deprecated-local-action: refactor to use matchtask() (#2238) @nishipy
- no-same-owner: refactor to use matchtask() (#2233) @nishipy
- Add cleanup step for empty mocked role folders (#2235) @zhan9san
- Allow yaml extension for inventory and requirements (#2225) @netsandbox
- no-loop-var-prefix: refactor to use matchtask() (#2218) @nishipy
- Update schemas (#2223) @jeefberkey
Deprecations
v6.3.0
Minor Changes
- Improve bare variable detection (#2203) @ssbarnea
- Modify VariableHasSpacesRule to check for spaces around filters (#2180) @nirmal-j-patel
Bugfixes
- Updated schemas (#2206) @ssbarnea
- Avoid load-failure with nested task imports (#2202) @ssbarnea
- Mark load-failure violation as unskippable (#2201) @ssbarnea
- Require jsonschema>=4.6.0 (#2200) @ssbarnea
- Ensure we require ansible-compat>=2.1.0 (#2199) @ssbarnea
- Update dependencies (#2193) @ssbarnea
- Don't yield only-builtins on nested tasks like block (#2187) @evgeni
- Update schemas (#2192) @ssbarnea
v6.2.2
Bugfixes
- Accept
shell
whenexecutable
is set (#2176) @nkakouros - Updated JSON Schemas (#2177) @ssbarnea
- Avoid runtime warnings from ansible-playbook --syntax-check (#2167) @ssbarnea
- Fix duplicated is_nested_task() (#2162) @nishipy
v6.2.1
Bugfixes
- Avoid using meta schema on ansible-test integration tests (#2156) @felixfontein
- Update schemas (#2158, #2160) @ssbarnea
v6.2.0
Minor Changes
- Add rule to check key order (#2108) @jeefberkey
- Improve yamllint messages and documentation (#2148) @ssbarnea
- Convert rules documentation to markdown (#2144) @ssbarnea
- schema: enable validation of playbook and tasks files (#2133) @ssbarnea
- schema: add validation of argument_specs.yml files (#2131) @ssbarnea
- schema: add support for ansible-navigator config files (#2128) @ssbarnea
- schema: add ability to recognize ansible-lint config files (#2127) @ssbarnea
- schema: add ability to recognize yaml inventory files (#2126) @ssbarnea
- schema: add ability to recognize meta/runtime.yml files (#2125) @ssbarnea
- schema: add support for execution-environments (#2124) @ssbarnea
Bugfixes
- Properly raise load-failure when utf-8 decoding fails (#2152) @ssbarnea
- Fix codeclimate description output (#2149) @ssbarnea
- Recognize tower requirements.txt files (#2147) @ssbarnea
- Bump test dependencies (#2145) @ssbarnea
- Update to append skipped rules for nested task (#2113) @nishipy
- Convert main README to markdown (#2141) @ssbarnea
- Include schemas inside the wheel (#2142) @ssbarnea
- Convert documentation to markdown (#2137) @ssbarnea
- Change custom yamllint config logging to debug (#2139) @ssbarnea
- Update JSON Schemas (#2138 #2146) @ssbarnea
- Avoid altering PATH when not needed (#2129) @ssbarnea
- Fix offline mode (#2115) @ssbarnea
- Allow use of empty files as valid config files (#2119) @ssbarnea
v6.1.0
Minor Changes
- Implement JSON Schema verification for several known file types (#2035) @ssbarnea
- Improve cli argument handling (#2099) @ziegenberg
- Add no-prompting rule as experimental (#2093) @ziegenberg
- Add only-builtins rule to check compatibility with core (#2060) @evgeni
- Add native SARIF output support (#2062) @yongyan-gh
- --write: Optionally pass rule names to --write in cli (#2051) @cognifloyd
- --write: Allow Transforms to mark MatchErrors as fixed (#2041) @cognifloyd
Bugfixes
- Fix support for block tasks in unnamed-task rule (#2107) @nishipy
- Make sure all tasks get evaluated by matchtask including block/always/rescue and nested tasks (#2031) @nishipy
- Ensure tags are escaped when printed (#2096) @ssbarnea
- Detect role argument_specs files as a lintable kind (#2091) @ziegenberg
- Fix var-naming rule to show line numbers and apply noqa (#2090) @notok
- --write: Do not rewrite zero 0 as octal 00 (#2092) @ziegenberg
- Relax the yamllint rules on spaces inside braces for flow mappings (#2077) @ziegenberg
- Update test and typing deps and remove special code paths for py < 3.8 (#2087) @ziegenberg
- Update package metadata for setuptools (#2086) @ziegenberg
- Apply var-spacing tests to vars files (#2063) @notok
- Add philosophy section to the documentation (#2017) @ssbarnea
- Propagate error message to user on systemexit (#2058) @wbh1
- Fix loading ansible-lint.yml in git projects (#2059) @evgeni
v6.0.2
Minor Changes
- --write: Add MatchError.yaml_path for transforms (#2025) @cognifloyd
- --write: Avoid line-wrapping YAML flow objects (#2022) @cognifloyd
- --write: Introduce TransformMixin for Rules (#2023) @cognifloyd
Bugfixes
- Recognize import_role and import_role when using fqcn (#2034) @ssbarnea
- Adds more yamllint configuration paths (#2032) @nkakouros
- Allow normpath accept empty strings (#2028) @ssbarnea
- Remove ref to archived toolbox image from docs (#2026) @erikgb
- Avoid processing files under templates (#2021) @ssbarnea
Note: we used 6.0.2 instead of 6.1.0 because all minor changes including are affecting only the experimental formatting feature and not other product features.
v6.0.1
Bugfixes
- Recognize import_tasks with file key (#2019) @ssbarnea
- Allow import_playbook from collections (#2018) @ssbarnea
- Use only ansible-compat cache directory (#2016) @ssbarnea
v6.0.0
Major Changes
- Remove support for ansible 2.9 (#1880) @ssbarnea
- Made ansible-core 2.12+ as a direct dependency (#1888) @ssbarnea
- Remove support for py36 and py37 (#1850) @ssbarnea
- Made fqcn-builtins rule implicit (#1908) @ssbarnea
- Add support for reformatting YAML files (#1943) @cognifloyd
- Removed --parseable-severity feature (#1898) @ssbarnea
- Clarify GPLv3 license of the distribution (#1882) @ssbarnea
- Made yamllint a direct dependency (#1881) @ssbarnea
- Rename prerun submodule to _mockings (#1972) @ssbarnea
- Remove unused code from prerun submodule (#1971) @ssbarnea
- Change invalid config return code to 3 (#2005) @ssbarnea
Minor Changes
- Add ability to load .config/ansible-lint.yml (#1822) @ssbarnea
- Add json alias for codeclimate formatter (#1942) @ssbarnea
- Use packit to produce rpms for fedora-35 (#1648) @ssbarnea
- Improve version handling (#1931) @ssbarnea
- Add
--write
option for upcoming reformat/transform features (#1926) @cognifloyd - Enable Lintables to be modified (#1884) @cognifloyd
- Improve description of tags (#1896) @ssbarnea
- Remove html extension from documentation (#1981) @ssbarnea
- Minor documentation improvements (#1995) @ssbarnea
- Changed rules to use docstring as shortdesc (#1994) @ssbarnea
- Load rule classes from any modules (#1978) @ssbarnea
Bugfixes
- Apply MissingFilePermissionsRule to get_url module (#1949) @nre-ableton
- Made empty-string-compare rule opt-in (#1953) @ssbarnea
- Prevent KeyError[0] exception with ansible.builtin.include_tasks (#1935) @ssbarnea
- Made no-same-owner recognize fully qualified modules (#1933) @ssbarnea
- Make FQCN import tasks include their relevant files for checking (#1854) @ryaner
- Fix test integration with IDEs (#1914) @ssbarnea
- Remove outdated ruamel-yaml version constraints (#1889) @ssbarnea
- Spellcheck fixes (#1883) @ssbarnea
- Start using ansible-compat (#1958) @ssbarnea
- Fix bug with detection of configured role paths (#2002) @ssbarnea
- Update var-naming to allow names containing jinja2 templates (#1988) @ssbarnea
v5.4.0
Minor Changes
- Neuter min space requirement for inline comments (#1821) @ssbarnea
- Allow rules to request original raw task data (#1834) @cognifloyd
- Add utils.nested_items_path and Deprecate utils.nested_items (#1824) @cognifloyd
- MatchError's should include the filename (#1806) @cognifloyd
Bugfixes
- Allow use without activation of virtualenv (#1860) @ssbarnea
- Avoid running code on ansiblelint.config import (#1870) @ssbarnea
- Avoid false positive with git lfs command (#1859) @ssbarnea
- Strip ./ from discover_lintables results (#1837) @sebix
- Correcting formatting of sample .ansible-lint config (#1841) @IronTooch
- Move ansiblelint.testing.RunFromText import into test code (#1827) @cognifloyd
- Allow noqa to be used in more lintable kinds (#1819) @SirUli
- Recursively extract tasks from blocks (#1809) @cognifloyd
v5.3.2
Bugfixes
- Allow rpm --nodeps command-instead-of-module (#1786) @bluikko
- Make code compatible with rich 11 (#1797) @rabi
- Make -q and -qq silence ANSIBLE_DEVEL_WARNING (#1785) @relrod
v5.3.1
Bugfixes
v5.3.0
Minor Changes
- Remove setup.py (#1762) @ssbarnea
- Add missing type and parameter in custom-rules docs (#1764) @SIPR-octo
- Set a logo in the Sphinx docs (#1760) @webknjaz
- Add HOME to safe env vars (#1759) @azuwis
Bugfixes
- Make exclude files work with progressive mode (#1767) @clementmartin
- Avoid errors processing symlinked files (#1770) @ssbarnea
- Fix mypy failures on file_utils.py (#1768) @clementmartin
- "internal-error" description text typo correction (#1752) @charltonstanley
v5.2.1
Bugfixes
- Accept yum clean as a valid command (#1747) @konstruktoid
- Actually ignore the 'fatal: not a git repository' error (#1738) @ubschmidt2
- Add support for py310 (#1734) @ssbarnea
Kudos goes to: @AleksaC, @konstruktoid, @pre-commit-ci, @pre-commit-ci[bot], @ssbarnea and @ubschmidt2
v5.2.0
Minor Changes
- Make core extra use ansible-core (#1720) @ssbarnea
Bugfixes
- Expand coverage of path globbing (#1709) @greg-hellings
- Prevent parseable option from changing JSON output format (#1730) @ssbarnea
- improve grammar (#1724) @ToBeFree
- no-changed-when: improve testing and documentation (#1706) @konstruktoid
- Minor fixes on documentation pages (#1719) @pabluk
Kudos goes to: @ToBeFree, @greg-hellings, @konstruktoid, @pabluk and @ssbarnea
v5.1.3
Bugfixes
- Use force for ansible-galaxy install commands (#1704) @ssbarnea
- Ensure hints are not displayed on quiet mode (#1684) @sbaudoin
- Rename master branch to main (#1683) @ssbarnea
- var-spacing: fix multiline nested JSON false positive (#1672) @simonkeyd
Kudos goes to: @Porkepix, @jslmorrison, @sbaudoin, @simonkeyd, @ssbarnea and @webknjaz
v5.1.2
Bugfixes
- Fix execution outside git repositories (#1675) @ssbarnea
Kudos goes to: @ssbarnea
v5.1.1
Bugfixes
- Assure variable naming rule always use a pattern (#1667) @ssbarnea
- fix: guess project root dir with git, config file and cwd (#1661) @xabinapal
- fix: improve git file discovery with untracked and removed files (#1650) @xabinapal
- Improve install_collection implementation (#1637) @ssbarnea
- Constrain inventory file location (#1635) @ssbarnea
Kudos goes to: @pre-commit-ci, @pre-commit-ci[bot], @ssbarnea and @xabinapal
v5.0.12
Changes
Bugfixes
- Document syntax-check as unskippable (#1606) @ssbarnea
- Fail NoLogPassword only when loops are used (#1590) @noonedeadpunk
- Allow use of ansible debug mode (#1604) @ssbarnea
- Fixed typo in .ansible-lint (#1600) @ssbarnea
- Remove include missing file rule (#1599) @ssbarnea
v5.0.11
Changes
Bugfixes
- Avoid false positive with no-handler (#1582) @konstruktoid
- Fixes false positive with deprecated-bare-vars (#1583) @ssbarnea
- Normalize action names using builtins (#1581) @ssbarnea
- Make command instead of shell rule recognize fqcn (#1580) @ssbarnea
- Fix 32 exclude paths limit (#1578) @ssbarnea
- Disable comments-indentation yamllint rule (#1572) @ssbarnea
v5.0.10
Changes
Minor Changes
- Add rule for variable naming (#1518) @ssbarnea
- Refactor MissingFilePermissionsRule testing (#1568) @konstruktoid
Bugfixes
- Fix exclude bug running outside git repos (#1570) @ssbarnea
- Make risky-file-permissions rule does not ignore FQCN (#1563) @ssato
- Switch cache to user cache folder (#1567) @ssbarnea
- Add metadata tag to the role-name rule (#1564) @noonedeadpunk
- NoLogPasswordsRule: catch password_lock false positives and migrate tests (#1562) @konstruktoid
v5.0.9
Changes
Minor Changes
- Add rule for checking no_log is set when passwords are used (#1558) @noonedeadpunk
- Rename get_yaml_files to discover_lintables (#1550) @ssbarnea
- Fix mypy issue with callable (#1553) @ssbarnea
Bugfixes
- Improve file detection outside git repositories (#1557) @ssbarnea
- Ensure line and column numbers start with 1 (#1556) @ssbarnea
- Ignore empty env variable values when updating them (#1552) @tadeboro
- Add Ansible check mode exception to IgnoreErrorsRule (#1548) @alessfg
v5.0.8
Changes
Minor Changes
- Add support for acceptable command options (#1544) @ssbarnea
- Allow user to make yamllint rule mandatory (#1543) @ssbarnea
- Add new rule that detects use of blind ignore_errors: true (#1540) @konstruktoid
- Validate rules objects loaded from plugin rule modules (#1542) @ssato
- Allow configurations for each rule stored in ansiblelint.config.options (#1534) @ssato
- Add a py.typed file (#1536) @h-hirokawa
- Utilize yamllint severity levels for rule severity (#1530) @FloSchwalm
- change: add file: Lintable argument to <rule_class>.match{,task} methods (#1535) @ssato
- Avoid duplicating molecule requirements.yml files (#1521) @apatard
- Mention pipx as alternative installer (#1520) @ssbarnea
Bugfixes
- Update installing.rst (#1529) @iomarcovalente
- Ignore files from inside templates/ (#1524) @ssbarnea
- Ensure that the role file is not a file (#1522) @apatard
- Fixed docs edit links (#1525) @ssbarnea
v5.0.7
Changes
Minor Changes
- Retry prepare environment three times before failing (#1517) @ssbarnea
Bugfixes
- Fix role name handling in prerun.py (#1490) @apatard
- Fix meta-incorrect rule to report correctly (#1515) @ssbarnea
v5.0.6
Changes
Bugfixes
- Add ability to ignore jinja2 templates (#1494) @ssbarnea
- Fix MetaMainHasInfoRule when running from meta dir (#1493) @Udyrfrykte
v5.0.5
Changes
Minor Changes
- Enable prepare_environment to be used without cli (#1488) @ssbarnea
- Make prerun module public (#1483) @ssbarnea
- Clarify that verbosity can be incremented (#1478) @ssbarnea
Bugfixes
- Fix prerun role-name message (#1486) @ssbarnea
- Fix install galaxy role warning message (#1484) @apatard
- Assure project_dir is always valid (#1482) @ssbarnea
- Add .cache folder to default exclude list (#1479) @ssbarnea
- Improve empty-string-compare rule (#1480) @ssbarnea
- Remove one false positive on pipe-fail rule (#1477) @ssbarnea
- Avoid warnings when not running inside git repos (#1475) @ssbarnea
- Asure matchtasks is runs on supported file kinds (#1474) @ssbarnea
v5.0.4
Changes
Minor Changes
- Add ability to recognize base file types (#1461) @ssbarnea
- Make use of newer sphinx programoutput extension (#1458) @ssbarnea
- Avoid pre-run errors when role-name is disabled (#1459) @ssbarnea
Bugfixes
- Allow user to extend kinds without overriding defaults (#1473) @ssbarnea
- fix: flake8 error on mocked modules (#1472) @chilicheech
- Fixed matching patterns used for mocking (#1470) @ssbarnea
- Updated docs on communication channels (#1469) @ssbarnea
- Fix typo in configuration filename (#1466) @stoned
- Avoid exception when git is missing (#1456) @ssbarnea
v5.0.3
Changes
Minor Changes
- Improve risky-shell-pipe rule matching (#1453) @ssbarnea
- Add optional rule that check for no-same-owner (#1450) @ssbarnea
- Allow user to specify namespace for standalone roles (#1451) @ssbarnea
- Add downstream testing pipeline (#1434) @ssbarnea
Bugfixes
- Undeprecate numeric rule tags (#1452) @ssbarnea
- Avoid reporting loading errors with vaulted files (#1443) @ssbarnea
v5.0.2
Changes
- Update links to Ansible docs for new site layout (#1382) @ripleymj
Minor Changes
- Add ability to install v1 requiremets.yml (#1385) @ssbarnea
Bugfixes
- Fix installation of standalone roles (#1397) @ssbarnea
- Rewrite ansible version checking (#1383) @ssbarnea
- Improve ansible version check (#1381) @ssbarnea
- Disable action validation with tasks by default (#1377) @ssbarnea
- Add ability to detect molecule base.yml configs (#1374) @ssbarnea
- Fix file config extra_vars options loading (#1372) @skarzi
- Avoid same false positives with no-tabs rule (#1373) @ssbarnea
- Recognize collections.yml files (#1371) @ssbarnea
- Avoid reporting runtime errors with unknown file types (#1370) @ssbarnea
v5.0.1
Changes
Minor Changes
- Remove obsolete changelog (#1362) @ssbarnea
- Adds experimental stdin support (#1355) @ssbarnea
- support extra_vars in syntax check rule (#1342) @skarzi
- Avoid duplicates when injecting extra ansible lookup paths (#1348) @joren485
- Fix sentence in usage.rst (#1347) @joren485
Bugfixes
- Recognize standalone galaxy roles (#1363) @ssbarnea
- Avoid overriding role paths defaults (#1361) @ssbarnea
- Fix patterns used to identify var files (#1360) @ssbarnea
- Fix environment variable name check in for loop (#1352) @joren485
- Ensure that yamllint config ignore entries are used (#1346) @felixfontein
- Fix parsing of unicode filenames reported by git ls-files (#1339) (#1340) @phihos
- Correct skip tag for yamllint (#1335) @ssbarnea
- Fix literal-compare test with when sequences (#1332) @ssbarnea
v5.0.0
Changes
This is a major new version that will surely break for users that have custom rules. It will also require most users to update the way they install the linter as they now need to mention which version of Ansible they want to use it with.
For guidance regarding upgrading please read the docs and consult https://github.com/ansible-community/ansible-lint/discussions/1150
Please note that the changes listed before do not contain those from the pre-releases made since last stable release, read all.
Minor Changes
- Allow mocking of galaxy roles (#1320) @ssbarnea
- Add ability to mock roles from within collections (#1318) @ssbarnea
- Add offline mode for skipping requirements installation (#1319) @ssbarnea
- Add ability to mock modules from collections (#1316) @ssbarnea
- Add codeclimate formatter (json) (#1308) @thushjandan
- Make all rule identifiers text based (#1306) @ssbarnea
- Drop E suffix when printing rule id (#1305) @ssbarnea
- Add optional rule to check for loop var prefix (#1303) @ssbarnea
- Add ability to mock roles (#1304) @ssbarnea
- Recurse inside given folders (#1302) @ssbarnea
Bugfixes
- Avoid role-name errors with galaxy roles (#1321) @ssbarnea
- Avoid false positives with literal-compare (#1315) @ssbarnea
- Fix exclude_paths regression (#1313) @ssbarnea
- Avoid exceptions post syntax errors (#1310) @ssbarnea
- E206: Avoid false positives with multilines (#1300) @ssbarnea
v4.3.7
Changes
Bugfixes
- Avoid crash with None tasks (#1048) @ssbarnea
- Avoid reporting main role task files as unknown (#1087) @ssbarnea
- Avoid 208 rule with unarchive module (#1089) @ssbarnea
v4.3.6
Changes
- Prevent rule 208 matche in nomaches example (#1068) @samueloph
- Enable progressive mode (#1065) @ssbarnea
Minor Changes
Bugfixes
- Ensure loading of collections and plugins (#1074) @felixfontein
v4.3.5
Changes
- Fix improper syntax highlighting in README (#1038) @andrewimeson
Minor Changes
- Document how to add a new rule (#1032) @ssbarnea
- Ignore experimental violations for final result (#1037) @ssbarnea
- Enable retries on IOErrors (#1039) @ssbarnea
- Document packaging of custom rules (#1036) @ssato
- Improve violation avoidance hints (#1034) @ssbarnea
Bugfixes
- E208: Corrected file mode checking (#1030) @ssbarnea
- E106: Don't use relative paths for meta/main.yml (#1044) @nre-ableton
v4.3.4
Changes
Bugfixes
- E208: Replace module should not trigger rule violation (#1024) @aston-r
- Handle empty meta/main.yml in RoleNames rule (#1022) @phihos
- Allow use of file key inside include_tasks (#1020) @phihos
- Avoid KeyError: 'skipped_rules' exception (#1014) @phihos
v4.3.3
Changes
Minor Changes
- Made console rule listing rich (#978) @ssbarnea
Bugfixes
v4.3.2
Changes
Minor Changes
- Add ability to only warn about some rules (#989) @ssbarnea
Bugfixes
- Avoid non parsable output on stdout (#992) @jbackman
- E208: Improve detection logic for mode (permissions) (#996) @greg-hellings
- E106: Avoid false positives with old roles (#980) @ssbarnea
- Fix broken links in README.md (#987) @ryuichi1208
- E208: Do not trigger on symlinks (#982) @robinmulder
v4.3.1
Changes
Minor Changes
- Indicate how to skip rules on failures (#971) @ssbarnea
- Allow custom rules which are loaded automatically (#935) @ssato
Bugfixes
- E106: Role name should be the parent dir of tasks (#972) @btravouillon
- #975: ensure to use expand user and vars in paths (#976) @ksmets
- Avoid exception with custom rule paths (#970) @ssbarnea
v4.3.0
Changes
Major Changes
- LRU Cache for frequently called functions (#891) @ragne
- Change documentation website to RTD (#875) @ssbarnea
- Require Python 3.6 or newer (#775) @ssbarnea
- Switch support to last two stable version of Ansible (#721) @ssbarnea
- Add rules for verifying the existence of imported and included files (#691) @jlusiardi
- Add a new rule for detecting nested jinja mustache syntax (#686) @europ
Minor Changes
- Refactored import_playbook tests (#951) @ssbarnea
- Added MissingFilePermissionsRule (#943) @ssbarnea
- Enable github actions parsable format (#926) @ssbarnea
- Add linter branding for docs (#914) @ssbarnea
- Assure we do not produce duplicated matches (#912) @ssbarnea
- Enable annotations on failed tests (#910) @ssbarnea
- Refactor
_taskshandlers_children
complexity (#903) @webknjaz - Make import sections consistent (#897) @ssbarnea
- Allow backticks in shell commands (#894) @turettn
- Add ansible210 testing (#888) @ssbarnea
- Enable isort (#887) @ssbarnea
- Combine MatchError into Match (#884) @ssbarnea
- Improve MatchError class (#881) @ssbarnea
- Expose package version (#867) @ssbarnea
- Replace custom theme with sphinx-ansible-theme (#856) @ssbarnea
- Improve unjinja function (#853) @ssbarnea
- Refactor MetaMainHasInfoRule (#846) @ssato
- Remove dependency on ansible.utils.color (#833) @ssbarnea
- Moved exit codes to constants (#821) @ssbarnea
- Document module dependencies (#817) @ssbarnea
- Refactor Runner out of init (#816) @ssbarnea
- Added reproducer for become in blocks (#793) @ssbarnea
- Convert failed to find required 'name' key in include_role into a match (#781) @ssbarnea
- Fix exclude_paths from get_playbooks_and_roles (#774) @ssbarnea
- Update ComparisonToEmptyStringRule.py (#770) @vbotka
- Remove bin/ansible-lint script (#762) @ssbarnea
- Fix logging configuration (#757) @ssbarnea
- Allow returning line number in matchplay (#756) @albinvass
- Update cli output on README (#754) @ssbarnea
- Migrate some test to pytest (#740) @cans
- Use python logging (#732) @ssbarnea
- Make config loading failures visible (#726) @ssbarnea
- Add a test that fails with
AttributeError
on malformedimport_tasks
file content (#720) @mdaniel - Consistent relative path display (#692) @cans
Bugfixes
- E501: Add become_user and become inheritance (#964) @Tompage1994
- Add missing hosts to test files (#952) @ssbarnea
- E208: Improve MissingFilePermissionsRule detection (#949) @ssbarnea
- Make pre-commit hook use auto-detect mode (#932) @ssbarnea
- Fix severity formatter wrong use of color (#919) @ssbarnea
- Avoid displaying Null with missing filenames (#918) @ssbarnea
- Include contributing inside docs (#905) @ssbarnea
- Fix spelling mistakes in documentation (#901) @MorganGeek
- Avoid failure with playbooks having tasks key a null value (#899) @ssbarnea
- Fix
MatchError
comparison fallback implementation (#896) @webknjaz - Avoid sorting failure with matches without an id (#879) @ssbarnea
- Fix broken always_run rule on Ansible 2.10 (#878) @ssbarnea
- Allow null config file (#814) @ssbarnea
- Fixed the search method when the file path not exists (#807) @cahlchang
- Restore playbook auto-detection (#767) @ssbarnea
- Gracefully process a missing git binary when falling-back to pure-python discovery (#738) @anryko
- Resurrect support for editable mode installs (#722) @webknjaz
- Avoid exception from 505 rule (#709) @ssbarnea
v4.2.0
v4.1.0
v4.0.1
v4.0.0
v3.5.1
v3.5.0
v3.4.23
v3.4.22
v3.4.21
v3.4.20
v3.4.19
v3.4.18
v3.4.17
v3.4.16
v3.4.15
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.