Packages
An Erlang DNS message library that supports most common record types, TSIG authenticated messages, EDNS0 and DNSSEC.
Current section
Files
Jump to
Current section
Files
dns_erlang
rebar.config
rebar.config
{erl_opts, [
debug_info,
inline,
inline_list_funcs,
warnings_as_errors,
warn_export_all,
warn_shadow_vars,
warn_unused_import,
warn_unused_function,
warn_bif_clash,
warn_unused_record,
warn_deprecated_function,
warn_obsolete_guard,
warn_export_vars,
warn_exported_vars,
% warn_unused_vars, warn_untyped_record, warn_missing_spec, warn_missing_doc,
% %% Disabled because of ASN1 generated code
{feature, maybe_expr, enable}
]}.
{project_plugins, [
{rebar3_depup, "~> 0.4"},
{rebar3_hex, "~> 7.0"},
{rebar3_ex_doc, "~> 0.2"},
{rebar3_lint, "~> 4.1"},
{erlfmt, "~> 1.7"},
{covertool, "~> 2.0"}
]}.
{deps, [{base32, "~> 1.0"}]}.
{plugins, [{provider_asn1, "~> 0.4"}]}.
{profiles, [
{test, [
{erl_opts, [nowarn_export_all, nowarn_missing_spec, nowarn_missing_doc]},
{eunit_opts, [verbose]},
{covertool, [{coverdata_files, ["eunit.coverdata", "ct.coverdata"]}]},
{cover_opts, [verbose, {min_coverage, 75}]},
{cover_enabled, true},
{cover_export_enabled, true}
]}
]}.
{provider_hooks, [
{pre, [{compile, {asn, compile}}]},
{post, [{clean, {asn, clean}}]}
]}.
{dialyzer, [
{warnings, [
no_return,
unmatched_returns,
error_handling,
unknown
]},
{plt_extra_apps, [asn1]}
]}.
{xref_checks, [
locals_not_used,
undefined_functions,
undefined_function_calls,
{deprecated_function_calls, next_major_release},
{deprecated_functions, next_major_release}
]}.
{hex, [{doc, #{provider => ex_doc}}]}.
{ex_doc, [
{source_url, <<"https://github.com/dnsimple/dns_erlang">>},
{main, <<"readme">>},
{extras, [<<"README.md">>, <<"LICENSE">>]}
]}.
{erlfmt, [
write,
{exclude_files, ["include/DNS-ASN1.hrl", "src/DNS-ASN1.erl"]}
]}.
{elvis, [
#{
dirs => ["src"],
filter => "*.erl",
rules => [
%% TODO: fix
{elvis_style, dont_repeat_yourself, #{min_complexity => 12}},
%% NOTE: keep
{elvis_style, private_data_types, #{ignore => [dns]}},
{elvis_style, no_throw, disable}
],
ruleset => erl_files,
ignore => ['DNS-ASN1']
},
#{
dirs => ["include"],
filter => "*.hrl",
ruleset => hrl_files,
ignore => ["DNS-ASN1.hrl"]
},
#{
dirs => ["."],
filter => "rebar.config",
ruleset => rebar_config
}
]}.