Skip to main content

rebar.config

{minimum_otp_vsn, "27"}.

{erl_opts, [
    debug_info,
    warn_missing_spec,
    warnings_as_errors
]}.

{deps, [{nquic, "1.0.2"}]}.

{project_plugins, [
    erlfmt,
    rebar3_hank,
    rebar3_ex_doc,
    rebar3_hex
]}.

{erlfmt, [write]}.

{hank, [
    {ignore, [
        %% Test files use CT callbacks with unused args
        "test/**"
    ]}
]}.

{profiles, [
    {test, [
        {deps, [{triq, {git, "https://github.com/nomasystems/triq.git", {branch, "master"}}}]},
        {erl_opts, [nowarn_missing_spec]}
    ]}
]}.

{dialyzer, [
    {plt_extra_apps, [ssl, crypto, public_key]}
]}.

{xref_checks, [
    undefined_function_calls,
    undefined_functions,
    locals_not_used,
    deprecated_function_calls,
    deprecated_functions
]}.

{ct_opts, [
    {verbose, true},
    {dir, ["test", "test/compliance"]}
]}.
{cover_enabled, true}.
{cover_opts, [verbose, {min_coverage, 85}]}.

{alias, [
    {check, [compile, {fmt, "--check"}, xref, dialyzer, hank]},
    {test, [ct, cover]}
]}.

{ex_doc, [
    {source_url, <<"https://github.com/nomasystems/nhttp_lib">>},
    {extras, [<<"README.md">>, <<"LICENSE">>]},
    {main, <<"readme">>},
    {groups_for_modules, [
        {<<"Public API">>, [
            nhttp_lib,
            nhttp_sock,
            nhttp_error,
            nhttp_compress,
            nhttp_cookie,
            nhttp_ws
        ]},
        {<<"Protocol State Machines">>, [
            nhttp_h1,
            nhttp_h2,
            nhttp_h3
        ]},
        {<<"Framing and compression">>, [
            nhttp_h2_frame,
            nhttp_h3_frame,
            nhttp_ws_frame,
            nhttp_hpack,
            nhttp_qpack,
            nhttp_qpack_encoder,
            nhttp_qpack_decoder,
            nhttp_huffman
        ]},
        {<<"QPACK internals">>, [
            nhttp_qpack_static_table,
            nhttp_qpack_dynamic_table,
            nhttp_qpack_encoder_instruction,
            nhttp_qpack_decoder_instruction,
            nhttp_qpack_field_line,
            nhttp_qpack_interop
        ]},
        {<<"Shared internals">>, [
            nhttp_int,
            nhttp_str,
            nhttp_headers,
            nhttp_msg,
            nhttp_proxy_protocol
        ]}
    ]}
]}.

{hex, [{doc, ex_doc}]}.