Skip to content

haskell-actions/hlint-run

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date
Mar 18, 2025
Sep 17, 2023
Sep 17, 2023
Oct 10, 2023
Sep 17, 2023
Sep 17, 2023
Sep 17, 2023
Sep 17, 2023
Sep 17, 2023
Oct 8, 2023
Jan 25, 2024
Mar 24, 2025
Sep 17, 2023
Mar 24, 2025

Repository files navigation

hlint-run

GitHub Action: Run hlint

See also haskell-actions/hlint-setup, which will install (and cache) HLint.

Executes hlint and presents the output using actions/toolkit/commands/problem matcher, so hints are displayed as GitHub annotations.

Inputs

  • fail-on (optional, default: never): When to mark the check as failed. One of: never, status, warning, suggestion, or error.
  • path (required): The single file or directory name, or formatted JSON array containing multiple. Examples:
    • - path: src/
    • - path: '["src/", "test/"]'
    • - path: ${{ toJSON(steps.whatever.changed_dirs) }} (see: docs on toJSON)
  • hlint-bin (optional): The hlint binary path, if not already in PATH.

Outputs

The main purpose of this action currently is just to print out GitHub annotations, but it still provides an output.

  • ideas: The generated HLint ideas (warnings, errors, etc.) serialized to JSON.

Example

name: lint
on:
  pull_request:
  push:
    branches:
      - master
      - 'releases/*'

jobs:
  hlint:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4

    - name: 'Set up HLint'
      uses: haskell-actions/hlint-setup@v2
      with:
        version: '3.1.6'

    - name: 'Run HLint'
      uses: haskell-actions/hlint-run@v2
      with:
        path: src/
        fail-on: warning

About

Reusable GitHub Action to run hlint in a workflow. Use with haskell-actions/hlint-setup.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 22