Packages
hackney
1.0.2
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
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
Makefile
REBAR?=rebar
DIALYZER?=dialyzer
PLT=.hackney.plt
ERLANG_APPS=asn1 compiler crypto edoc erts inets kernel mnesia public_key ssl stdlib syntax_tools tools xmerl
DEPS=$(notdir $(wildcard deps/*))
DIALYZER_DEPS=$(foreach dep,$(DEPS),deps/$(dep)/ebin)
all: build
dev: devbuild
doc: dev
$(REBAR) -C rebar_dev.config doc
clean:
$(REBAR) clean
distclean: clean
@rm -rf deps
build: deps
$(REBAR) compile
deps:
$(REBAR) get-deps
test:
$(REBAR) skip_deps=true eunit
# development
#
devclean:
$(REBAR) -C rebar_dev.config clean
devbuild: devdeps
$(REBAR) -C rebar_dev.config compile
devdeps:
$(REBAR) -C rebar_dev.config get-deps
dialyzer: $(PLT) devbuild
$(DIALYZER) --plts $(PLT) -r ebin
$(PLT):
$(DIALYZER) --build_plt $(DIALYZER_DEPS) --apps $(ERLANG_APPS) --output_plt $(PLT)
# CA generation
#
CA_BUNDLE_BIN=./mk-ca-bundle.pl
CA_BUNDLE=ca-bundle.crt
mkcert:
$(CA_BUNDLE_BIN) -p ALL:ALL -l -u
mv $(CA_BUNDLE) priv/
# Mimetypes module generator.
GEN_URL = http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types
GEN_FILE = mime.types
GEN_SRC = src/hackney_lib/hackney_mimetypes.erl.src
GEN_OUT = src/hackney_lib/hackney_mimetypes.erl
gen:
@wget -qO $(GEN_FILE) $(GEN_URL)
@cat $(GEN_SRC) \
| head -n `grep -n "%% GENERATED" $(GEN_SRC) | cut -d : -f 1` \
> $(GEN_OUT)
@cat $(GEN_FILE) \
| grep -v ^# \
| awk '{for (i=2; i<=NF; i++) if ($$i != "") { \
print "extensions(<<\"" $$i "\">>) -> <<\"" $$1 "\">>;"}}' \
| sort \
| uniq -w 25 \
>> $(GEN_OUT)
@echo "extensions(_) -> <<\"application/octet-stream\">>." >> $(GEN_OUT)
@echo "" >> $(GEN_OUT)
@cat $(GEN_FILE) \
| grep -v ^# \
| awk '{\
printf("mimetypes(<<\"%s\">>) -> [", $$1); \
for (i=2; i<=NF; i++) \
if ($$i != "") { \
if (i >= 3){printf(",")} \
printf("<<\"%s\">>", $$i) \
}\
print "];" \
}' \
| sort \
>> $(GEN_OUT)
@echo "mimetypes(_) -> [<<>>]." >> $(GEN_OUT)
@cat $(GEN_SRC) \
| tail -n +`grep -n "%% GENERATED" $(GEN_SRC) | cut -d : -f 1` \
>> $(GEN_OUT)
.PHONY: doc deps test