package zanuda

  1. Overview
  2. Docs
OCaml linter experiment

Install

Dune Dependency

Authors

Maintainers

Sources

1.0.0.tar.gz
md5=7f3594582be24f712c50f7968c3bce6e
sha512=d8a4ca63125e09aeab19b37fa3a23028da335a6e6dd88ca08e9398171a11ad461e05d915ac1cc4e4987d7371375bf815f5ea36237527d27812577209eda3c960

Description

Inspired by https://discuss.ocaml.org/t/how-possible-is-a-clippy-like-linter-for-ocaml

Published: 24 Mar 2023

README

README.md

An OCaml linter experiment

Mostly inspired by How possible is a clippy-like linter for OCaml?

Lints: https://kakadu.github.io/zanuda/lints/index.html

API: https://kakadu.github.io/mylinter/api/ is currently empty

Usage

Examples of 'zanuda' usage could be found in the 'tests' directory. But in short:

  • Compile your dune project and run this linter via

    dune build . @runtest -j3
    zanuda -dir .
    

    It will report found issues using OCaml's alerts

  • You could read the documentation about supported lints via zanuda -dump. CI runs regularly uploads information about available lints to Gihub Pages.

  • You could run linter and dump the results in short JSON form. They could be processed later, for example as review comment via GitHub API. (This reporting is not implemented yet.)

See also
Developping

Current dependecies:

opam install ppx_fields_conv ppx_blob base angstrom ppx_expect ppx_assert sexplib --yes

Running a single test:

dune build && dune build @ifbool --force

Running all tests:

dune build && dune runtest --force

Dependencies (10)

  1. ocamlformat >= "0.23.0"
  2. angstrom >= "0.15.0"
  3. stdune
  4. ppx_expect
  5. ppx_assert
  6. ppx_inline_test
  7. sexplib
  8. yojson >= "2.0.0"
  9. ocaml >= "4.14" & < "5.0"
  10. dune >= "3.4"

Dev Dependencies (5)

  1. odoc with-doc
  2. menhir with-test
  3. ppx_fields_conv with-test
  4. ppx_blob with-test
  5. base with-test

Used by

None

Conflicts

None

OCaml

Innovation. Community. Security.