Release notes
-
Core
- Upgrade base docker image from python:3.10.4-alpine3.16 to python:3.11.1-alpine3.17 in #2312
- Upgrade base docker image from python:3.11.1-alpine3.17 to python:3.12.1-alpine3.17, by @bdovaz in #2354
- Update editorconfig-checker to 2.7.0, by @rasa in #2349
- Build: remove folder contents before generating Dockerfile files for each linter in generate_linter_dockerfiles(), by @bdovaz in #2294
- Build: remove folder contents before generating test classes for each linter in generate_linter_test_classes(), by @bdovaz in #2294
- Build: automatically update the linter list used in the matrix of several of the workflows, by @bdovaz in #2294
- Test: create a testing architecture for format/autofix linters, by @bdovaz in #2294
- Test: create or adapt input files for format/autofix tests, by @bdovaz in #2294
- Test: created specific test folders for linters that need them because they cannot share them, by @bdovaz in #2294
- Added rubocop-rake RubyGem for linting Rake files with RuboCop, by @timgentry in #2366
-
Fixes
- Correctly generate class names and test class files for each linter when the linter descriptor defines the attribute "name", by @bdovaz in #2294
- Removed the default powershell templates TEMPLATES/.powershell-formatter.psd1 and TEMPLATES/.powershell-psscriptanalyzer.psd1. Having these templates caused all rules to be ignored as the settings are not incremental but absolute, by @bdovaz in #2294
- Added cli_lint_fix_arg_name parameter to dotnet format descriptor as without it, autofix does not work, by @bdovaz in #2294
- Created BicepLinter class to add DOTNET_SYSTEM_GLOBALIZATION_INVARIANT environment variable to avoid problems with ICU packages, by @bdovaz in #2294
- Modified npm-groovy-lint descriptor to add --failon parameter to only fail with error and not info which is the default value, by @bdovaz in #2294
- Added cli_lint_fix_arg_name parameter to powershell formatter descriptor as without it, autofix does not work, by @bdovaz in #2294
- Created ProtolintLinter class to fix the problem that returns exit code 1 when it encounters a problem to correct even though it corrects it correctly, by @bdovaz in #2294
- Concatenate --output parameter correctly to xmllint linter, by @bdovaz in #2294
- Modified the .pre-commit-hooks.yaml for megalinter-full so the containername argument is correctly split between two lines, by @drbothen #2411
- Avoid jscpd default config to detect copy pastes in image files in #2407.
- Move utilstest to megalinter folder to avoid import issues in #2417.
- Replace deprecated spectral package, by @bdovaz in by @bdovaz in #2340
- Generate correct urls for packages with fixed versions, by @bdovaz in #2339
-
Documentation
- Change swiftlint example that did not correctly reflect the --fix parameter, by @bdovaz in #2294
- Change in TSX eslint descriptor the urls as they were not correct, by @bdovaz in #2294
- Change in TYPESCRIPT eslint descriptor the urls as they were not correct, by @bdovaz in #2294
- Use mkdocs-glightbox to allow to click on images and display them in full screen in #2414
-
CI
- Use docker/build-push-action to build docker images and akhilerm/tag-push-action to release by retagging and pushing beta images instead of rebuilding them in #2342
- Authenticate to GitHub API during docker build to avoid reaching limits, by @bdovaz in #2299
- Remove apk go package install in images where possible to decrease image sizes, by @echoix in #2318
- Create a slash PR bot to run
./build.sh
command manually on PRs, by @echoix in #2353 and #2381 - Limit parallel execution of large job matrix in the workflows with max-parallel in order to keep runners available for other jobs, by @echoix in #2397
-
Linter versions upgrades
- ansible-lint from 6.12.1 to 6.14.0
- bash-exec from 5.1.16 to 5.2.15
- bicep_linter from 0.14.46 to 0.14.85
- cfn-lint from 0.72.10 to 0.74.0
- checkmake from 0.2.1 to 0.2.0
- checkov from 2.1.244 to 2.3.18
- checkstyle from 10.7.0 to 10.8.0
- clj-kondo from 2023.01.20 to 2023.02.17
- cspell from 6.21.0 to 6.28.0
- djlint from 1.19.13 to 1.19.16
- dotnet-format from 6.0.405 to 6.0.406
- dustilock from 0.0.0 to 1.2.0
- editorconfig-checker from 2.4.0 to 2.7.0
- eslint from 8.33.0 to 8.35.0
- git_diff from 2.36.4 to 2.38.4
- gitleaks from 8.15.3 to 8.16.0
- golangci-lint from 1.51.0 to 1.51.2
- jscpd from 3.3.26 to 3.5.3
- jsonlint from 11.7.0 to 13.0.1
- kics from 1.6.9 to 1.6.11
- mypy from 0.991 to 1.0.1
- perlcritic from 1.148 to 1.150
- phpcs from 3.7.1 to 3.7.2
- phpstan from 1.9.14 to 1.10.3
- powershell_formatter from 7.3.2 to 7.3.3
- powershell from 7.3.2 to 7.3.3
- prettier from 2.8.3 to 2.8.4
- protolint from 0.42.2 to 0.43.0
- psalm from Psalm.5.6.0@ to Psalm.5.7.7@
- puppet-lint from 3.0.1 to 3.2.0
- pylint from 2.16.1 to 2.16.3
- pyright from 1.1.270 to 1.1.296
- rubocop from 1.44.1 to 1.47.0
- secretlint from 6.2.0 to 6.2.3
- semgrep from 1.9.0 to 1.14.0
- sfdx-scanner-apex from 3.8.0 to 3.10.0
- sfdx-scanner-aura from 3.8.0 to 3.10.0
- sfdx-scanner-lwc from 3.8.0 to 3.10.0
- snakemake from 7.21.0 to 7.24.0
- spectral from 5.9.2 to 6.6.0
- syft from 0.70.0 to 0.74.0
- terraform-fmt from 1.3.7 to 1.3.9
- terragrunt from 0.43.2 to 0.44.4
- terrascan from 1.16.0 to 1.18.0
- tflint from 0.44.1 to 0.45.0
- trivy from 0.35.0 to 0.38.1
- xmllint from 20914 to 21003
New Contributors
- @timgentry made their first contribution in #2366
- @drbothen made their first contribution in #2411
MegaLinter is graciously provided by
Full Changelog: v6.19.0...v6.20.0