Packages
hackney
4.0.1
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
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 dependencies (quic)
{xref_ignores, [
%% quic / quic_h3 (HTTP/3 support)
{quic_h3, connect, 3},
{quic_h3, request, 2},
{quic_h3, send_data, 4},
{quic_h3, cancel, 3},
{quic_h3, close, 1},
{quic_h3, get_quic_conn, 1},
{quic, peername, 1},
{quic, sockname, 1},
{quic, peercert, 1},
%% hackney_h3 functions called by hackney_conn
{hackney_h3, connect, 4},
{hackney_h3, close, 2},
{hackney_h3, process, 1},
{hackney_h3, send_request, 3},
{hackney_h3, send_request, 6},
{hackney_h3, send_request_headers, 5},
{hackney_h3, send_data, 4},
{hackney_h3, send_body_chunk, 4},
{hackney_h3, finish_send_body, 3},
{hackney_h3, parse_response_headers, 1},
{hackney_h3, peername, 1},
{hackney_h3, sockname, 1},
{hackney_h3, peercert, 1}
]}.
{cover_enabled, true}.
{eunit_opts, [verbose]}.
{pre_hooks, [{clean, "rm -rf *~ */*~ */*.xfm test/*.beam"}]}.
{deps, [
%% Pure Erlang QUIC + HTTP/3 stack
{quic, "1.4.3"},
%% Pure Erlang HTTP/2 stack
{h2, "0.6.0"},
{idna, "~>7.1.0"},
{mimerl, "~>1.4"},
{certifi, "~>2.16.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/middleware.md", #{title => "Middleware 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"},
%% Historical release notes reference functions that have since been
%% removed; suppress those auto-link warnings.
{skip_undefined_reference_warnings_on, ["NEWS.md", "guides/MIGRATION.md"]}
]}.
%% == Dialyzer ==
%%
{dialyzer, [
{warnings, [
% race_conditions,
no_return,
unmatched_returns,
error_handling%,
%unknown
]},
{base_plt_apps, [erts, stdlib, kernel, crypto, runtime_tools]},
{plt_apps, top_level_deps},
{plt_extra_apps, [quic, h2]},
{plt_location, local},
{plt_prefix, "hackney"},
{base_plt_location, "."},
{base_plt_prefix, "hackney"}
]}.