ppx_js_style

Code style checker for Jane Street Packages
README

ppx_js_style is an identity ppx rewriter that enforces Jane Street
coding styles.

Coding rules

The following rules are enforced by ppx_js_style:

  • Enabled by -dated-deprecation:
    [@@deprecated] attributes must contain the date of deprecation,
    using the format "[since MM-YYYY] ..."
    N.B. this check, on by default at janestreet, but off by default externally,
    can also be disabled with the flag -no-dated-deprecation

  • Enabled by -annotated-ignores:
    Ignored expressions must come with a type annotation, such as:
    ignore (expr : typ)
    let _ : type = expr
    Note that aliases need not be annotated:
    let _ = Foo.bar in

  • Enabled by -check-doc-comments:
    Comments in mli must either be documentation comments or explicitely
    "ignored":
    (** documentation comment *)
    (*_ ignored comment *)
    Normal (* comment *) comments are disallowed.

    This flag additionally enables warning 50, which checks the placement
    of documentation comments.

    Finally, doc comments are checked to be syntactically valid.

  • Enabled by -compat-32:
    Checks that calling ocamlc on the input would produce bytecode that
    works on 32 bits architectures (including js_of_ocaml), ie that
    all constant are representable on 32 bits architectures. Compared to
    the compiler flag by the same name, it allows to perform this check
    without building any bytecode.

Install
Published
15 Dec 2017
Sources
ppx_js_style-v0.10.0.tar.gz
md5=c705aeb1aef70acd8ff0a91108dedd31
Dependencies
ocaml-migrate-parsetree
>= "0.4" & < "2.0.0"
jbuilder
>= "1.0+beta12"
ppx_metaquot
>= "v0.10" & < "v0.11"
ppx_driver
>= "v0.10" & < "v0.11"
ppx_core
>= "v0.10" & < "v0.11"
ocaml
>= "4.04.1"
Reverse Dependencies
parsexp
= "v0.10.0"
parsexp_io
= "v0.10.0"
ppx_base
= "v0.10.0"