Skip to content

Update oxsecurity/megalinter action to v9#24

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/oxsecurity-megalinter-9.x
Open

Update oxsecurity/megalinter action to v9#24
renovate[bot] wants to merge 1 commit intomainfrom
renovate/oxsecurity-megalinter-9.x

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Sep 20, 2025

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change
oxsecurity/megalinter action major v8.3.0v9.4.0

Release Notes

oxsecurity/megalinter (oxsecurity/megalinter)

v9.4.0

Compare Source

  • Core

    • Improve files browsing performances (2 PRs)
    • Optimize parallel linter processing and improve grouping logic
    • Improve performance of listing .gitignored files by sending excluded directories to git ls-files
    • If there are more than 500 .gitignored files, advise to add more excluded directories using variable ADDITIONAL_EXCLUDED_DIRECTORIES, to improve performances
    • Reduce redundant config lookups, environment copies, and dict rebuilds across config, linter, and utils modules
    • Cache subprocess environment per linter run and excluded directories per request
    • Optimize parallel linter result update from O(n²) to O(n)
    • Add support in the build of Docker images for linux/arm64 in compatible linters
  • New linters

  • Disabled linters

  • Linters enhancements

    • Use the official checkmake image by @​bdovaz
    • Spectral: Add sarif support to spectral by @​bdovaz
    • Spectral: Change cli_lint_mode to list_of_files to improve performances
  • Fixes

    • Add support for SSH remote origins when building custom flavors (fixes: #​6511)
    • Fix issue with plugins ignored when FLAVOR_SUGGESTIONS=false
    • Fix wrong tagging apply_fixes=True when linter has no fix options configured
    • Python mypy: Remove .ipynb from file extensions (mypy doesn't support notebooks directly) - fixes #​6904
    • Fix operator precedence bug in pre_post_factory pre/post command logic
    • Fix file handle leak in GitleaksLinter
    • Fix variable name bug in utils.get_git_context_info
    • Minor fixes in logger, SqlFluffLinter, PowershellLinter, TrivyLinter
  • Reporters

    • Add a link inviting to star MegaLinter
    • Display in the console reporter the working directory from which the commands are executed by @​bdovaz
    • Update WebHook reporter so it can send more events for a better integration with UI
    • When truncating long comments in markdown reports, keep the end of the text instead of the beginning (which usually contains less useful information)
    • In case GitHub Api returns 500, do not make the whole MegaLinter fail, display a warning instead
    • Azure Reporter: Use Azure DevOps Services REST API instead of unmaintained python wrapper lib
  • Flavors

    • Custom flavor builder:
      • Add support for SSH remotes
      • Allow selection of platforms to build the custom flavor on (ex: linux/amd64, linux/arm64) and build compatible linters on these platforms
      • Build & release custom flavor builder image for linux/arm64
  • Doc

    • JSON Schema: Add default values for file extensions and file names variables + improve descriptions
    • Update default secured env variables documentation
    • Fix banner img in json_prettier and yaml_prettier docs
    • Explain better how to run tests locally
    • Vale: Mention community style packages in linter description
  • CI

    • Free more space on GitHub Actions runners to avoid build failures
    • Ignore .isorted files in secretlint to avoid scanning transient files created by other linters
    • Avoid duplicate jobs "Mirror docker image"
    • Allow to skip linters build using skip linters in latest commit text
    • Allow to disable build & push of standalone linters docker images using variable BETA_LINTERS_ENABLED=false
    • Improve performances of formatting markdown tables during build
    • Improve test classes performances and fix race conditions
    • Fix plugin test to work with forks and feature branches
    • Update .devcontainer image to trixie
  • mega-linter-runner

    • If variables are defined in a local .env file, send their values to docker/podman run command (can be useful for secret variables)
    • Never send .env file to the docker run for security reasons, instead create an empty one if needed
    • Use npm trusted publishers (OIDC) to publish mega-linter-runner
  • Linter versions upgrades (59)

v9.3.0

Compare Source

v9.2.0

Compare Source

v9.1.0

Compare Source

  • New linters

  • Linters enhancements

    • Python Linting: Added more file type supports for various linters. Full description here
  • Doc

    • Add OLLAMA_BASE_URL is MegaLinter config Json schema
  • Flavors

    • Custom flavors: Add workflow to automate detection of new MegaLinter versions and generation of new Custom Flavor
  • CI

    • Fix v9 release issue + mark hardcoded versions to upgrade at each new major release.
  • Linter versions upgrades (22)

v9.0.1

Compare Source

  • Fix v9 release issue

v9.0.0

Compare Source

  • Core

    • Create your own Megalinter Custom Flavors to dramatically improve your performances
      • See documentation for usage
      • Use npx mega-linter-runner@beta --custom-flavor-setup to initialize repo
      • Suggest new flavors in reporters with a mega-linter-runner including the list of linters
    • New LLM Advisor: call external LLMs to get hints to solve linter errors, available in:
      • Console Reporter
      • Text Reporter
      • Git platforms PR/MR comments Reporter
    • Use ghcr.io docker images by default because of rate limits on docker.io
    • Use uv to create the venv folder for pip-installed linters
    • Add copilot instructions for GitHub Copilot
    • Update base image to python:3.13-alpine3.21 (also embeds go 1.24)
  • Disabled linters

  • Removed linters

    • markdown-link-check has been removed because lychee can be used instead, and has much better performances
  • Linters enhancements

    • PHP-CS-Fixer is able to run on PHP 8.4 without error (change default configuration) by @​llaville
    • cspell: Filter output lines that do not contain found issues
    • hadolint: Extend DOCKERFILE_HADOLINT_FILE_NAMES_REGEX to include the purpose.Dockerfile convention eg service.Dockerfile.
    • sqlfluff: Handle fixing of issues
  • Fixes

    • When linter is docker based, force --platform=linux/amd64 so it works when running locally on Mac
    • Added checking of *.pyi and *.ipynb files to the ruff and ruff-format linters
  • Reporters

    • New default display for Pull Request comments, with expandable sections containing the first 1000 lines of the output log. Former display remains available by defining REPORTERS_MARKDOWN_SUMMARY_TYPE=table
    • Markdown summary reporter:
      • Write a file for Github integration if GITHUB_STEP_SUMMARY is set
      • Truncate less linter output lines
    • Text reporter: Change the output file names to put the linter name first, then the status
    • Enhance display of markdown summary
  • Doc

    • Update documentation in all megalinter descriptor files to improve accuracy and consistency
    • Fix incorrect information in linters documentation and descriptors
    • Remove dead links
    • Add linter description (linter_text) in all linter descriptor, to generate a more exhaustive documentation.
    • Update contributing guide to explain how to manage python dependencies in the codebase
  • Flavors

    • Do not suggest flavors that have more linters than the current one
  • CI

    • Update default MegaLinter CI/CD workflows to disable LLM_ADVISOR in case of bot pull requests
  • mega-linter-runner

    • Add all CI/CD providers in the --install command
    • Use ghcr.io docker images by default
    • New parameter --container-engine allowing to use podman as runner
    • mega-linter-runner --upgrade: Handle upgrade of github actions to their latest version
    • mega-linter-runner --upgrade: Upgrades MegaLinter actions and images to v9
  • Linter versions upgrades (68)

v8.8.0

Compare Source

v8.7.0

Compare Source

v8.6.0

Compare Source

v8.5.0

Compare Source

  • Core

    • Addition of warnings to reporters and logic changes to surface warnings even when there are no errors. Addition of cli_lint_warning_count / cli_lint_warning_regex variables to the JSON schema. #​4476, by @​bdovaz in #​4556
  • Linters enhancements

  • Fixes

    • Use npm to install pyright
    • Undowngrade npm-groovy-lint as there is a new release with issue fix
    • jscpd: remove forced --exitCode 1 to fix #​4631
    • Use --with-all-dependencies to install phpcs-fixer, by @​nvuillam in #​4672
    • Remove Composer config PHP 8.3 compatibility platform for PSALM 6.0, by @​llaville in #​4930
    • Fix lychee upgrade issue (lycheeignore upgrade), by @​wesley-dean in #​4964
  • Doc

  • Flavors

    • Add syft in all flavors
  • CI

    • Update .devcontainer configuration, by @​bdovaz in #​4843
    • Configure Renovate for gem, cargo, pip and npm dependencies, by @​bdovaz in #​4673
    • Configure Renovate for composer dependencies, by [@​bd

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@github-actions
Copy link

github-actions bot commented Sep 20, 2025

⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ ACTION actionlint 3 0 0 0.02s
✅ COPYPASTE jscpd yes no no 1.52s
✅ JSON jsonlint 1 0 0 0.07s
⚠️ JSON prettier 1 1 0 0.33s
✅ JSON v8r 1 0 0 2.43s
✅ MARKDOWN markdownlint 1 0 0 0.47s
✅ MARKDOWN markdown-table-formatter 1 0 0 0.28s
⚠️ REPOSITORY checkov yes 3 no 18.18s
✅ REPOSITORY gitleaks yes no no 0.14s
✅ REPOSITORY git_diff yes no no 0.01s
✅ REPOSITORY grype yes no no 35.29s
✅ REPOSITORY kics yes no no 1.95s
✅ REPOSITORY secretlint yes no no 1.03s
✅ REPOSITORY syft yes no no 2.04s
✅ REPOSITORY trivy yes no no 10.66s
✅ REPOSITORY trivy-sbom yes no no 0.3s
✅ REPOSITORY trufflehog yes no no 3.61s
⚠️ SPELL cspell 8 16 0 4.4s
✅ SPELL lychee 5 0 0 0.16s
⚠️ YAML prettier 3 1 4 0.33s
✅ YAML v8r 3 0 0 2.84s
✅ YAML yamllint 3 0 0 0.92s

Detailed Issues

⚠️ REPOSITORY / checkov - 3 errors
github_actions scan results:

Passed checks: 97, Failed checks: 3, Skipped checks: 0

Check: CKV2_GHA_1: "Ensure top-level permissions are not set to write-all"
	FAILED for resource: on(Pre-merge)
	File: /.github/workflows/pre-merge.yml:0-1
Check: CKV2_GHA_1: "Ensure top-level permissions are not set to write-all"
	FAILED for resource: on(Pull Request)
	File: /.github/workflows/lint.yml:0-1
Check: CKV2_GHA_1: "Ensure top-level permissions are not set to write-all"
	FAILED for resource: on(Post-merge)
	File: /.github/workflows/post-merge.yml:0-1
⚠️ SPELL / cspell - 16 errors
.github/workflows/post-merge.yml:84:46     - Unknown word (kyhule)     -- githubPackagesUsername: kyhule
	 Suggestions: [kyle, keyhole, Kyle, yule, Yule]
.github/workflows/post-merge.yml:114:13    - Unknown word (gradlew)    -- ./gradlew
	 Suggestions: [gradle, gradely, grade, grable, graded]
.github/workflows/post-merge.yml:117:12    - Unknown word (Preckon)    -- -Preckon.scope=${{ inputs.version
	 Suggestions: [Precox, Precook, Precool, preston, Preston]
.github/workflows/post-merge.yml:118:12    - Unknown word (Preckon)    -- -Preckon.stage=${{ inputs.version
	 Suggestions: [Precox, Precook, Precool, preston, Preston]
.github/workflows/post-merge.yml:121:15    - Unknown word (dorny)      -- uses: dorny/test-reporter@31a54ee
	 Suggestions: [dory, donny, dorky, dormy, dorty]
.github/workflows/post-merge.yml:147:13    - Unknown word (gradlew)    -- ./gradlew
	 Suggestions: [gradle, gradely, grade, grable, graded]
.github/workflows/post-merge.yml:150:12    - Unknown word (Preckon)    -- -Preckon.scope=${{ inputs.version
	 Suggestions: [Precox, Precook, Precool, preston, Preston]
.github/workflows/post-merge.yml:151:12    - Unknown word (Preckon)    -- -Preckon.stage=${{ inputs.version
	 Suggestions: [Precox, Precook, Precool, preston, Preston]
.github/workflows/post-merge.yml:158:13    - Unknown word (gradlew)    -- ./gradlew
	 Suggestions: [gradle, gradely, grade, grable, graded]
.github/workflows/post-merge.yml:161:12    - Unknown word (Preckon)    -- -Preckon.scope=${{ inputs.version
	 Suggestions: [Precox, Precook, Precool, preston, Preston]
.github/workflows/pre-merge.yml:49:46     - Unknown word (kyhule)     -- githubPackagesUsername: kyhule
	 Suggestions: [kyle, keyhole, Kyle, yule, Yule]
.github/workflows/pre-merge.yml:79:13     - Unknown word (gradlew)    -- ./gradlew
	 Suggestions: [gradle, gradely, grade, grable, graded]
.github/workflows/pre-merge.yml:84:15     - Unknown word (dorny)      -- uses: dorny/test-reporter@31a54ee
	 Suggestions: [dory, donny, dorky, dormy, dorty]
.gitignore:33:3      - Unknown word (hprof)      -- *.hprof
	 Suggestions: [prof, pprof, Prof, hero, hoof]
README.md:1:3       - Unknown word (polyworld)  -- # polyworld-workflows
	 Suggestions: [plywood, polypod, poleward, polypoid, polymorph]
README.md:2:50      - Unknown word (Polyworld)  -- workflows for building the Polyworld App
	 Suggestions: [Plywood, Polypod, Poleward, Polypoid, Polymorph]
CSpell: Files checked: 8, Issues found: 16 in 4 files.


You can skip this misspellings by defining the following .cspell.json file at the root of your repository
Of course, please correct real typos before :)

{
    "version": "0.2",
    "language": "en",
    "ignorePaths": [
        "**/node_modules/**",
        "**/vscode-extension/**",
        "**/.git/**",
        "**/.pnpm-lock.json",
        ".vscode",
        "package-lock.json",
        "megalinter-reports"
    ],
    "words": [
        "Polyworld",
        "Preckon",
        "dorny",
        "gradlew",
        "hprof",
        "kyhule",
        "polyworld"
    ]
}


You can also copy-paste megalinter-reports/.cspell.json at the root of your repository
⚠️ JSON / prettier - 1 error
Checking formatting...
[warn] renovate.json
[warn] Code style issues found in the above file. Run Prettier with --write to fix.
⚠️ YAML / prettier - 1 error
Checking formatting...
[warn] .github/workflows/lint.yml
[warn] .github/workflows/post-merge.yml
[warn] .github/workflows/pre-merge.yml
[warn] Code style issues found in 3 files. Run Prettier with --write to fix.

See detailed reports in MegaLinter artifacts

You could have the same capabilities but better runtime performances if you use a MegaLinter flavor:

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@9.4.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,COPYPASTE_JSCPD,JSON_JSONLINT,JSON_V8R,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_GITLEAKS,REPOSITORY_GRYPE,REPOSITORY_KICS,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,SPELL_CSPELL,SPELL_LYCHEE,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

MegaLinter is graciously provided by OX Security
Show us your support by starring ⭐ the repository

@renovate renovate bot force-pushed the renovate/oxsecurity-megalinter-9.x branch from 8c00fa1 to bb86b01 Compare September 21, 2025 01:31
@renovate renovate bot force-pushed the renovate/oxsecurity-megalinter-9.x branch from bb86b01 to a05f9e0 Compare October 8, 2025 03:15
@renovate renovate bot force-pushed the renovate/oxsecurity-megalinter-9.x branch from a05f9e0 to 82aeba1 Compare November 29, 2025 19:48
@renovate renovate bot force-pushed the renovate/oxsecurity-megalinter-9.x branch from 82aeba1 to bf04509 Compare January 4, 2026 12:29
@renovate renovate bot force-pushed the renovate/oxsecurity-megalinter-9.x branch from bf04509 to c438992 Compare February 28, 2026 13:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants