Skip to content

Commit c874c42

Browse files
authored
Merge pull request #112 from paulo-ferraz-oliveira/feature/ex_doc
Move to ex_doc -style documentation
2 parents 1512481 + 828b981 commit c874c42

38 files changed

+279
-2590
lines changed

.github/workflows/main.yml

+3
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,6 @@ jobs:
7070
with:
7171
files: _build/test/covertool/elli.covertool.xml
7272
env_vars: OTP_VERSION
73+
74+
- name: Generate doc
75+
run: rebar3 ex_doc

.gitignore

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
.rebar3
2-
doc/*.html
3-
!doc/tpl.html
42
_build
53
.dialyzer.plt
64
.rebar
75
rebar3.crashdump
6+
doc

CHANGELOG.md

+86-88
Original file line numberDiff line numberDiff line change
@@ -2,189 +2,187 @@
22

33
## pre-v4.0.0
44

5-
* Headers are now properly treated as case-insensitive
6-
* Original headers that have not had `string:casefold/1` run on each header
7-
name are still available in the request through `elli_request:original_headers`
5+
* Headers are now properly treated as case-insensitive
6+
* Original headers that have not had `string:casefold/1` run on each header
7+
name are still available in the request through `elli_request:original_headers`
88

99
## v3.3.0
1010

11-
* Do not use x-forwarded-for for peer #75
12-
* Handle arguments with no value in (post|get)_arg_decoded #82
13-
* Fix compile-time warnings on missing record info. from aleppo #81
11+
* Do not use x-forwarded-for for peer #75
12+
* Handle arguments with no value in (post|get)_arg_decoded #82
13+
* Fix compile-time warnings on missing record info. from aleppo #81
1414

1515
## v3.2.0
1616

17-
* Quell warnings on OTP-21: https://github.com/elli-lib/elli/pull/61
17+
* Quell warnings on OTP-21: <https://github.com/elli-lib/elli/pull/61>
1818

19-
* Generate HTML docs: https://github.com/elli-lib/elli/pull/58
19+
* Generate HTML docs: <https://github.com/elli-lib/elli/pull/58>
2020

21-
* Add OTP-21 to Travis build matrix: https://github.com/elli-lib/elli/pull/62
21+
* Add OTP-21 to Travis build matrix: <https://github.com/elli-lib/elli/pull/62>
2222

23-
* Remove unnecessary `stacktrace_compat` dependency: https://github.com/elli-lib/elli/pull/63
23+
* Remove unnecessary `stacktrace_compat` dependency: <https://github.com/elli-lib/elli/pull/63>
2424

25-
* Export `elli_request/uri_decode/1` and improve performance: https://github.com/elli-lib/elli/pull/67
25+
* Export `elli_request:uri_decode/1` and improve performance: <https://github.com/elli-lib/elli/pull/67>
2626

27-
* Update Travis config: https://github.com/elli-lib/elli/pull/69
27+
* Update Travis config: <https://github.com/elli-lib/elli/pull/69>
2828

29-
* Drop support for OTP-16: https://github.com/elli-lib/elli/pull/71
29+
* Drop support for OTP-16: <https://github.com/elli-lib/elli/pull/71>
3030

31-
* Prefer `OTP_RELEASE` over `rebar_erl_vsn` plugin: https://github.com/elli-lib/elli/pull/73
31+
* Prefer `OTP_RELEASE` over `rebar_erl_vsn` plugin: <https://github.com/elli-lib/elli/pull/73>
3232

33-
* Remove old `maintainers` metadata: https://github.com/elli-lib/elli/pull/74
33+
* Remove old `maintainers` metadata: <https://github.com/elli-lib/elli/pull/74>
3434

3535
## v3.1.0
3636

37-
* Update docs: https://github.com/elli-lib/elli/pull/57
37+
* Update docs: <https://github.com/elli-lib/elli/pull/57>
3838

39-
* Logging and stacktrace OTP-21 support: https://github.com/elli-lib/elli/pull/55
39+
* Logging and stacktrace OTP-21 support: <https://github.com/elli-lib/elli/pull/55>
4040

41-
* Include req_body size in sizes list: https://github.com/elli-lib/elli/pull/52
41+
* Include req_body size in sizes list: <https://github.com/elli-lib/elli/pull/52>
4242

43-
* Update CHANGELOG.md for 3.0.0: https://github.com/elli-lib/elli/pull/49
43+
* Update CHANGELOG.md for 3.0.0: <https://github.com/elli-lib/elli/pull/49>
4444

4545
## v3.0.0
4646

47-
* `scheme`, `host`, and `port` added to the `#req{}` record. Corresponding
48-
helper functions added to the `elli_request` module.
47+
* `scheme`, `host`, and `port` added to the `#req{}` record. Corresponding
48+
helper functions added to the `elli_request` module.
4949

5050
## v2.1.2
5151

52-
* Update dependencies and re-enable linting
52+
* Update dependencies and re-enable linting
5353

54-
* Increase test coverage
54+
* Increase test coverage
5555

56-
* Declare optional callbacks to elli_handler
56+
* Declare optional callbacks to elli_handler
5757

58-
* Add TLS sendfile implementation by James Fish (from Andrew Thompson)
58+
* Add TLS sendfile implementation by James Fish (from Andrew Thompson)
5959

60-
* Use hackney instead of httpc in tests, due to httpc bug
60+
* Use hackney instead of httpc in tests, due to httpc bug
6161

6262
## v2.0.2
6363

64-
* Adapt [knutin/elli#108](https://github.com/knutin/elli/pull/108) by Michael Zazaian
64+
* Adapt [knutin/elli#108](https://github.com/knutin/elli/pull/108) by Michael Zazaian
6565

66-
* Incomplete request regression fix by Evan Vigil-McClanahan
66+
* Incomplete request regression fix by Evan Vigil-McClanahan
6767

68-
* Handle binary URIs on OTP >=20
68+
* Handle binary URIs on OTP >=20
6969

70-
* Bespoke uri_decode/1 to obviate inets dependency by Christoffer Vikström
70+
* Bespoke uri_decode/1 to obviate inets dependency by Christoffer Vikström
7171

7272
## v2.0.1
7373

74-
* Miscellaneous tooling, test, and type spec tweaks
74+
* Miscellaneous tooling, test, and type spec tweaks
7575

76-
* Helper functions to reduce redundancy
76+
* Helper functions to reduce redundancy
7777

78-
* Request start timing fix
78+
* Request start timing fix
7979

8080
## v2.0.0
8181

82-
* Code and documentation cleanup
82+
* Code and documentation cleanup
8383

84-
* Instrumentation facilities
84+
* Instrumentation facilities
8585

86-
* RFC 2616 section 8.2.3 implementation by Martin Karlsson
86+
* RFC 2616 section 8.2.3 implementation by Martin Karlsson
8787

88-
* Send 500 and close connection if file operations fail
88+
* Send 500 and close connection if file operations fail
8989

9090
## v1.0.5
9191

92-
* Optimization of SSL accept by Tristan Sloughter
92+
* Optimization of SSL accept by Tristan Sloughter
9393

94-
* Dependency cleanup by Adam Lindberg
94+
* Dependency cleanup by Adam Lindberg
9595

9696
## v1.0.4
9797

98-
* OTP 18.0 compatibility, contributed by Florian Odronitz.
98+
* OTP 18.0 compatibility, contributed by Florian Odronitz.
9999

100100
## v1.0.3
101101

102-
* Various internal cleanup fixes from Andreas Stenius (github.com/kaos)
102+
* Various internal cleanup fixes from Andreas Stenius (github.com/kaos)
103103

104104
## v1.0.2
105105

106-
* Added `elli_request:get_args_decoded/1` which returns the list of
107-
query args decoded each time it's called.
108-
106+
* Added `elli_request:get_args_decoded/1` which returns the list of
107+
query args decoded each time it's called.
109108

110109
## v1.0.1
111110

112-
* Fix bug in SSL acceptor pool where due to failed handshakes, Elli
113-
runs out of acceptors. Thanks to Stefan Grundmann.
111+
* Fix bug in SSL acceptor pool where due to failed handshakes, Elli
112+
runs out of acceptors. Thanks to Stefan Grundmann.
114113

115-
* In case a handler (or middleware) returns a response Elli does not
116-
understand, Elli will now respond with a 500 error. Thanks to
117-
Johannes Huning.
114+
* In case a handler (or middleware) returns a response Elli does not
115+
understand, Elli will now respond with a 500 error. Thanks to
116+
Johannes Huning.
118117

119-
* Added `elli_request:get_arg_decoded/2,3` which HTTP URI decodes the
120-
value passed in the request. Thanks to Mariano Valles.
118+
* Added `elli_request:get_arg_decoded/2,3` which HTTP URI decodes the
119+
value passed in the request. Thanks to Mariano Valles.
121120

122121
## v1.0
123122

124-
* SSL using built-in ssl from Erlang/OTP. Thanks to Maas-Maarten Zeeman.
123+
* SSL using built-in ssl from Erlang/OTP. Thanks to Maas-Maarten Zeeman.
125124

126-
* "Handover" a socket to user code, making it possible to implement
127-
WebSockets(https://github.com/mmzeeman/elli_websocket
125+
* "Handover" a socket to user code, making it possible to implement
126+
WebSockets(<https://github.com/mmzeeman/elli_websocket>).
128127

129-
* Type fixes from Ingo Struck and Andreas Hasselberg.
128+
* Type fixes from Ingo Struck and Andreas Hasselberg.
130129

131130
## v0.4.1
132131

133-
* Fix from Christian Lundgren for browsers that include spaces in the
134-
value of the Content-Length header.
132+
* Fix from Christian Lundgren for browsers that include spaces in the
133+
value of the Content-Length header.
135134

136135
## v0.4
137136

138-
* Added support for sending ranges of a file with sendfile by
139-
returning `{Code, Headers, {file, Filename, {Offset, Length}}}`. If
140-
no offset and length is specified, the entire file is sent. The
141-
user must provide an appropriate "Content-Length" and
142-
"Content-Range" header, see the example in
143-
`elli_example_callback.erl`
144-
(https://github.com/knutin/elli/blob/master/src/elli_example_callback.erl#L99). Thanks
145-
Vincent Siliakus (zambal).
146-
137+
* Added support for sending ranges of a file with sendfile by
138+
returning `{Code, Headers, {file, Filename, {Offset, Length}}}`. If
139+
no offset and length is specified, the entire file is sent. The
140+
user must provide an appropriate "Content-Length" and
141+
"Content-Range" header, see the example in
142+
`elli_example_callback.erl`
143+
(<https://github.com/knutin/elli/blob/master/src/elli_example_callback.erl#L99>).
144+
Thanks Vincent Siliakus (zambal).
147145

148146
## v0.3
149147

150-
* Breaking change: Timeouts used in the HTTP protocol are now
151-
configurable. To implement this, changing a record and some
152-
callbacks was necessary. To upgrade, a restart of Elli is needed.
148+
* Breaking change: Timeouts used in the HTTP protocol are now
149+
configurable. To implement this, changing a record and some
150+
callbacks was necessary. To upgrade, a restart of Elli is needed.
153151

154-
* Elli now supports pipelining of any type of request. Some proxies
155-
or special clients (like ibrowse) will pipeline requests to reduce
156-
latency.
152+
* Elli now supports pipelining of any type of request. Some proxies
153+
or special clients (like ibrowse) will pipeline requests to reduce
154+
latency.
157155

158-
* If there are no more file descriptors, Elli will shut down. This
159-
mimics the behaviour found in Yaws.
156+
* If there are no more file descriptors, Elli will shut down. This
157+
mimics the behaviour found in Yaws.
160158

161-
* Chunked transfer responses will now exit the Elli process when the
162-
client closes the connection. Sending a synchronous chunk will
163-
return `{error, closed}` if client has closed the connection and
164-
the `chunk_complete` event is sent to your callback including which
165-
end closed the connection.
159+
* Chunked transfer responses will now exit the Elli process when the
160+
client closes the connection. Sending a synchronous chunk will
161+
return `{error, closed}` if client has closed the connection and
162+
the `chunk_complete` event is sent to your callback including which
163+
end closed the connection.
166164

167165
## v0.2.0
168166

169-
* Breaking change: moved elli_access_log into a separate repository
170-
at github.com/wooga/elli_access_log. Thanks martinrehfeld.
167+
* Breaking change: moved elli_access_log into a separate repository
168+
at github.com/wooga/elli_access_log. Thanks martinrehfeld.
171169

172170
## v0.1.3
173171

174-
* Added elli_test which makes it easy to write unit tests for your
175-
callbacks. Thanks anha0825.
172+
* Added elli_test which makes it easy to write unit tests for your
173+
callbacks. Thanks anha0825.
176174

177-
* Added sendfile support. Thanks chrisavl.
175+
* Added sendfile support. Thanks chrisavl.
178176

179177
## v0.1.2
180178

181-
* Added option to specify listen IP address. Thanks hukl.
179+
* Added option to specify listen IP address. Thanks hukl.
182180

183181
## v0.1.1
184182

185-
* Don't look up the peer ip address on every request anymore, do it
186-
on demand using elli_request:peer/1.
183+
* Don't look up the peer ip address on every request anymore, do it
184+
on demand using elli_request:peer/1.
187185

188186
## v0.1
189187

190-
* Initial release.
188+
* Initial release.

0 commit comments

Comments
 (0)