Packages
hackney
3.0.0
4.7.2
4.7.1
4.7.0
4.6.1
4.6.0
4.5.2
4.5.1
4.5.0
4.4.5
4.4.3
4.4.2
4.4.1
4.4.0
4.3.0
4.2.3
4.2.2
4.2.1
4.2.0
4.1.0
4.0.3
4.0.2
4.0.1
4.0.0
3.2.1
3.2.0
3.1.2
3.1.1
3.1.0
3.0.3
3.0.2
3.0.1
3.0.0
retired
2.0.1
2.0.0
2.0.0-beta.1
1.25.0
1.24.1
1.24.0
1.23.0
1.22.0
1.21.0
1.20.1
1.20.0
1.19.1
1.19.0
1.18.2
1.18.1
1.18.0
1.17.4
1.17.3
1.17.2
1.17.1
1.17.0
1.16.0
1.15.2
1.15.1
1.15.0
1.14.3
1.14.2
1.14.0
1.13.0
1.12.1
1.12.0
1.11.0
1.10.1
1.10.0
1.9.0
1.8.6
1.8.5
1.8.4
1.8.3
1.8.2
1.8.0
1.7.1
1.7.0
1.6.6
retired
1.6.5
1.6.4
retired
1.6.3
1.6.2
1.6.1
1.6.0
1.5.7
1.5.6
1.5.5
1.5.4
1.5.3
1.5.2
1.5.1
1.5.0
1.4.10
1.4.8
1.4.7
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.2
1.3.1
1.3.0
1.2.0
1.1.0
1.0.6
1.0.5
1.0.2
1.0.1
0.15.2
0.15.0
0.14.3
0.14.2
0.14.1
0.14.0
0.13.1
Simple HTTP client with HTTP/1.1, HTTP/2, and HTTP/3 support
Retired package: Release invalid - Use 3.0.1 instead
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
rebar.config
%% -*- tab-width: 4;erlang-indent-level: 4;indent-tabs-mode: nil -*-
%% ex: ft=erlang ts=4 sw=4 et
{erl_opts, [debug_info,
{platform_define, "R14", no_callback_support},
{platform_define, "^[0-9]+", namespaced_types},
{platform_define, "^R", no_proxy_sni_support},
{platform_define, "^(1|(20))", no_customize_hostname_check},
{platform_define, "^20\.3", buggy_chacha_ciphers}
]}.
{erl_first_files,
["src/hackney_ssl_certificate.erl" % required by `hackney_ssl' at compile time
]}.
{xref_checks, [undefined_function_calls]}.
%% Ignore xref warnings for optional prometheus dependency
{xref_ignores, [
{prometheus_counter, inc, 3},
{prometheus_counter, declare, 1},
{prometheus_gauge, set, 3},
{prometheus_gauge, inc, 2},
{prometheus_gauge, dec, 2},
{prometheus_gauge, declare, 1},
{prometheus_histogram, observe, 3},
{prometheus_histogram, declare, 1}
]}.
{cover_enabled, true}.
{eunit_opts, [verbose]}.
%% QUIC NIF build hooks (lsquic + BoringSSL vendored in c_src/)
%% Use HACKNEY_QUIC_OPTS for cmake options, HACKNEY_QUIC_BUILDOPTS for build options
{pre_hooks, [{clean, "rm -f priv/*.so priv/*.dll"},
{clean, "rm -rf _build/cmake"},
{"(linux|darwin|solaris)", compile, "./do_cmake.sh $HACKNEY_QUIC_OPTS"},
{"(freebsd|netbsd|openbsd)", compile, "./do_cmake.sh $HACKNEY_QUIC_OPTS"},
{"win32", compile, "if exist c_src\\lsquic (mkdir _build\\cmake 2>nul & cd _build\\cmake & cmake -DCMAKE_GENERATOR_PLATFORM=x64 ..\\..\\c_src)"}
]}.
{post_hooks, [{clean, "rm -rf *~ */*~ */*.xfm test/*.beam"},
{"(linux|darwin|solaris)", compile, "./do_quic.sh $HACKNEY_QUIC_BUILDOPTS"},
{"(freebsd|netbsd|openbsd)", compile, "./do_quic.sh $HACKNEY_QUIC_BUILDOPTS"},
{"win32", compile, "if exist c_src\\lsquic cmake --build _build\\cmake --config Release --parallel"}
]}.
{deps, [
{idna, "~>7.1.0"},
{mimerl, "~>1.4"},
{certifi, "~>2.15.0"},
{parse_trans, "3.4.1"},
{ssl_verify_fun, "~>1.1.0"}
]}.
{profiles, [{test, [
{deps, [{cowboy, "2.12.0"}, {jsx, "3.1.0"}]}
]}
]}.
{hex, [
{doc, #{provider => ex_doc}}
]}.
{project_plugins, [rebar3_ex_doc]}.
{ex_doc, [
{extras, [
{"README.md", #{title => "Overview"}},
{"GETTING_STARTED.md", #{title => "Getting Started"}},
{"guides/http_guide.md", #{title => "HTTP Guide"}},
{"guides/http2_guide.md", #{title => "HTTP/2 Guide"}},
{"guides/http3_guide.md", #{title => "HTTP/3 Guide"}},
{"guides/websocket_guide.md", #{title => "WebSocket Guide"}},
{"guides/design.md", #{title => "Design Guide"}},
{"guides/MIGRATION.md", #{title => "Migration Guide"}},
{"NEWS.md", #{title => "Changelog"}},
{"CONTRIBUTING.md", #{title => "Contributing"}},
{"DEVELOPMENT.md", #{title => "Development"}},
{"LICENSE", #{title => "License"}},
{"NOTICE", #{title => "Notice"}}
]},
{main, "README.md"},
{source_url, "https://github.com/benoitc/hackney"},
{source_ref, <<"master">>}
]}.
%% == Dialyzer ==
%%
{dialyzer, [
{warnings, [
% race_conditions,
no_return,
unmatched_returns,
error_handling%,
%unknown
]},
%% Exclude prometheus backend - prometheus is an optional dependency
{exclude_mods, [hackney_metrics_prometheus]},
{base_plt_apps, [erts, stdlib, kernel, crypto, runtime_tools]},
{plt_apps, top_level_deps},
{plt_extra_apps, []},
{plt_location, local},
{plt_prefix, "hackney"},
{base_plt_location, "."},
{base_plt_prefix, "hackney"}
]}.