All Projects → nektro → ziglint

nektro / ziglint

Licence: MIT License
A linting suite for Zig

Programming Languages

Zig
133 projects

ziglint

loc license

A linting suite for Zig.

Usage

$ ./ziglint

This will search the current directory for .zig files and lint them against the various tests in the suite. See the bad/ folder for examples of the caught lints.

Installation

This requires having Zig and Zigmod installed.

$ zigmod aq install 1/nektro/ziglint

Built With

Available Rules

  • dupe_import: warn against duplicate @import calls with the same value
  • todo: list all // TODO comments
  • file_as_struct: checks for file name capitalization in the presence of top level fields
  • unused_decl: checks for unused container level const/vars

Want to propose more? Open an issue here on Github.

Using in Github Actions

jobs:
  lint:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2

      - name: Setup Zig
        uses: goto-bus-stop/setup-zig@v1
        with:
          version: "0.9.0"

      - uses: nektro/actions-setup-zigmod@v1
      - run: zigmod aq install 1/nektro/ziglint
      - run: ~/.zigmod/bin/ziglint -skip todo

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].