nektos / act

Run your GitHub Actions locally 🚀
https://nektosact.com
MIT License
51.87k stars 1.3k forks source link

build(deps): bump github.com/rhysd/actionlint from 1.6.27 to 1.7.0 #2326

Closed dependabot[bot] closed 1 month ago

dependabot[bot] commented 1 month ago

Bumps github.com/rhysd/actionlint from 1.6.27 to 1.7.0.

Release notes

Sourced from github.com/rhysd/actionlint's releases.

v1.7.0

  • From this version, actionlint starts to check action metadata file action.yml (or action.yaml). At this point, only very basic checks are implemented and contents of steps: are not checked yet.
    • It checks properties under runs: section (e.g. main: can be specified when it is a JavaScript action), branding: properties, and so on.
      name: 'My action'
      author: '...'
      # ERROR: 'description' section is missing
      

      branding:

      ERROR: Invalid icon name

      icon: dog

      runs:

      ERROR: Node.js runtime version is too old

      using: 'node12'

      ERROR: The source file being run by this action does not exist

      main: 'this-file-does-not-exist.js'

      ERROR: 'env' configuration is only allowed for Docker actions

      env: SOME_VAR: SOME_VALUE

    • actionlint still focuses on checking workflow files. So there is no way to directly specify action.yml as an argument of actionlint command. actionlint checks all local actions which are used by given workflows. If you want to use actionlint for your action development, prepare a test/example workflow which uses your action, and check it with actionlint instead.
    • Checks for steps: contents are planned to be implemented. Since several differences are expected between steps: in workflow file and steps: in action metadata file (e.g. available contexts), the implementation is delayed to later version. And the current implementation of action metadata parser is ad hoc. I'm planning a large refactorying and breaking changes Go API around it are expected.
  • Add runner.environment property. (#412)
    - run: echo 'Run by GitHub-hosted runner'
      if: runner.environment == 'github-hosted'
    
  • Using outdated popular actions is now detected at error. See the document for more details.
    • Here 'outdated' means actions which use runtimes no longer supported by GitHub-hosted runners such as node12.
      # ERROR: actions/checkout@v2 is using the outdated runner 'node12'
      - uses: actions/checkout@v2
      
  • Support attestations permission which was recently added to GitHub Actions as beta. (#418, thanks @​bdehamer)
    permissions:
      id-token: write
      contents: read
      attestations: write
    
  • Check comparison expressions more strictly. Arbitrary types of operands can be compared as the official document explains. However, comparisons between some types are actually meaningless because the values are converted to numbers implicitly. actionlint catches such meaningless comparisons as errors. Please see the check document for more details.
    on:
      workflow_call:
        inputs:
          timeout:
            type: boolean
    

    jobs:

... (truncated)

Changelog

Sourced from github.com/rhysd/actionlint's changelog.

v1.7.0 - 08 May 2024

  • From this version, actionlint starts to check action metadata file action.yml (or action.yaml). At this point, only very basic checks are implemented and contents of steps: are not checked yet.
    • It checks properties under runs: section (e.g. main: can be specified when it is a JavaScript action), branding: properties, and so on.
      name: 'My action'
      author: '...'
      # ERROR: 'description' section is missing
      

      branding:

      ERROR: Invalid icon name

      icon: dog

      runs:

      ERROR: Node.js runtime version is too old

      using: 'node12'

      ERROR: The source file being run by this action does not exist

      main: 'this-file-does-not-exist.js'

      ERROR: 'env' configuration is only allowed for Docker actions

      env: SOME_VAR: SOME_VALUE

    • actionlint still focuses on checking workflow files. So there is no way to directly specify action.yml as an argument of actionlint command. actionlint checks all local actions which are used by given workflows. If you want to use actionlint for your action development, prepare a test/example workflow which uses your action, and check it with actionlint instead.
    • Checks for steps: contents are planned to be implemented. Since several differences are expected between steps: in workflow file and steps: in action metadata file (e.g. available contexts), the implementation is delayed to later version. And the current implementation of action metadata parser is ad hoc. I'm planning a large refactorying and breaking changes Go API around it are expected.
  • Add runner.environment property. (#412)
    - run: echo 'Run by GitHub-hosted runner'
      if: runner.environment == 'github-hosted'
    
  • Using outdated popular actions is now detected at error. See the document for more details.
    • Here 'outdated' means actions which use runtimes no longer supported by GitHub-hosted runners such as node12.
      # ERROR: actions/checkout@v2 is using the outdated runner 'node12'
      - uses: actions/checkout@v2
      
  • Support attestations permission which was recently added to GitHub Actions as beta. (#418, thanks @​bdehamer)
    permissions:
      id-token: write
      contents: read
      attestations: write
    
  • Check comparison expressions more strictly. Arbitrary types of operands can be compared as the official document explains. However, comparisons between some types are actually meaningless because the values are converted to numbers implicitly. actionlint catches such meaningless comparisons as errors. Please see the check document for more details.
    on:
      workflow_call:
        inputs:
          timeout:
            type: boolean
    

... (truncated)

Commits
  • f970a14 bump up version to v1.7.0
  • 664e100 move dependencies for testing to dev-dependencies in playground
  • 3b1ec3b update golang.org/x/sys to v0.20
  • 04afd4f add golangci/golangci-lint-action@v6 to popular actions data set
  • 2ac37c7 add workaround for dorny/paths-filter@v3's predicate-quantifier input (#416)
  • d8e9b53 add octokit/graphql-action@v2.x to popular actions data set
  • b3c4e99 add actions/add-to-project@v1.0.1 to popular actions data set
  • 4b9b046 Merge branch 'strict-compare'
  • 1901992 add workflow tests for comparison checks
  • 489bf77 add unit tests for comparisons type check
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
codecov[bot] commented 1 month ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 76.49%. Comparing base (5a80a04) to head (0ffdc10). Report is 65 commits behind head on master.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #2326 +/- ## =========================================== + Coverage 61.56% 76.49% +14.93% =========================================== Files 53 59 +6 Lines 9002 7506 -1496 =========================================== + Hits 5542 5742 +200 + Misses 3020 1241 -1779 - Partials 440 523 +83 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

github-actions[bot] commented 1 month ago

🦙 MegaLinter status: ✅ SUCCESS

Descriptor Linter Files Fixed Errors Elapsed time
✅ EDITORCONFIG editorconfig-checker 2 0 0.01s
✅ REPOSITORY gitleaks yes no 2.32s
✅ REPOSITORY git_diff yes no 0.01s
✅ REPOSITORY grype yes no 8.87s
✅ REPOSITORY secretlint yes no 1.18s
✅ REPOSITORY trivy-sbom yes no 0.6s
✅ REPOSITORY trufflehog yes no 4.61s

See detailed report in MegaLinter reports _Set VALIDATE_ALL_CODEBASE: true in mega-linter.yml to validate all sources, not only the diff_

_MegaLinter is graciously provided by OX Security_