# Changelog
## 0.7.10 (2021-10-27)
Fixed a bug around starting pools. Thanks,
[@reisub](https://github.com/reisub)!
Marked compatibility with Telemetry 1.0. Thanks,
[@jchristgit](https://github.com/jchristgit)!
## 0.7.9 (2021-07-20)
Improved docs. Thanks, [@kianmeng](https://github.com/kianmeng)!
## 0.7.8 (2021-07-16)
Fixed a few bugs around connection handling and chunk sizing. Thanks to
[@reisub](https://github.com/reisub), [@fahchen](https://github.com/fahchen),
[@bmteller](https://github.com/bmteller).
## 0.7.7 (2021-02-04)
Added Mojito.Telemetry. Thanks,
[@andyleclair](https://github.com/andyleclair)! And thanks to the
[Finch](https://github.com/keathley/finch) team, whose telemetry
implementation informed this one.
## 0.7.6 (2020-12-10)
Fixed a bug around HTTP/2 responses larger than 64kB. Thanks for the
reports, [@dch](https://github.com/dch) and
[@jayjun](https://github.com/jayjun)!
Reduced memory footprint of idle Mojito pools by forcing GC after
requests complete. Thanks for the reports,
[@axelson](https://github.com/axelson) and
[@hubertlepicki](https://github.com/hubertlepicki)!
## 0.7.5 (2020-11-06)
Fixed packaging bug in 0.7.4.
## 0.7.4 (2020-11-02)
Fixed handling of Mint error responses.
Thanks, [@alexandremcosta](https://github.com/alexandremcosta)!
Fixed a Dialyzer warning around keyword lists.
Thanks, [@Vaysman](https://github.com/Vaysman)!
## 0.7.3 (2020-06-22)
Moved core Mojito functions into separate `Mojito.Base` module for
easier interoperation with mocking libraries like Mox. Thanks,
[@bcardarella](https://github.com/bcardarella)!
## 0.7.2 (2020-06-19)
Fixed typespecs.
## 0.7.1 (2020-06-17)
Fixed bug where Mojito failed to correctly handle responses with
a `connection: close` header. Thanks,
[@bmteller](https://github.com/bmteller)!
## 0.7.0 (2020-06-17)
Added the `:max_body_size` option, to prevent a response body from
growing too large. Thanks, [@rozap](https://github.com/rozap)!
## 0.6.4 (2020-05-20)
Fixed bug where sending an empty string request body would hang certain
HTTP/2 requests. Thanks for the report,
[@Overbryd](https://github.com/Overbryd)!
## 0.6.3 (2020-03-17)
`gzip`ped or `deflate`d responses are automatically expanded by
Mojito. Thanks, [@mogorman](https://github.com/mogorman)!
The Freedom Formatter has been removed. `mix format` is now applied.
## 0.6.2 (2020-03-11)
Header values are now stringified on their way to Mint. Thanks,
[@egze](https://github.com/egze)!
Timeouts of `:infinity` are now supported. Thanks,
[@t8rsalad](https://github.com/t8rsalad)!
## 0.6.1 (2019-12-20)
Internal refactor to support different pool implementations. No features
were added or changed.
Code formatting improvements in docs. Thanks,
[@sotojuan](https://github.com/sotojuan)!
## 0.6.0 (2019-11-02)
Upgraded to Mint 1.0. Thanks, [@esvinson](https://github.com/esvinson)!
Fixed typo in CHANGELOG. Thanks, [@alappe](https://github.com/alappe)!
## 0.5.0 (2019-08-21)
Fixed bug where timed-out responses could arrive in connection with
the next request from that caller. Thanks for the report and the
test case, [@seanedwards](https://github.com/seanedwards)!
Refactored to use `%Mojito.Request{}` structs more consistently across
internal Mojito functions.
## 0.4.0 (2019-08-13)
Upgraded to Mint 0.4.0.
Requests are automatically retried when we attempt to reuse a closed
connection.
Added `Mojito.Headers.auth_header/2` helper for formintg HTTP Basic
`Authorization` header.
Don't pass the URL fragment to Mint when making requests.
Thanks [@alappe](https://github.com/alappe)!
Improved examples and docs around making POST requests.
Thanks [@hubertlepicki](https://github.com/hubertlepicki)!
Removed noisy debug output.
Thanks for the report, [@bcardarella](https://github.com/bcardarella)!
## 0.3.0 (2019-05-08)
Major refactor.
All end-user requests pass through `Mojito.request/1`, which now
accepts keyword list input as well. `Mojito.request/5` remains
as an alias, and convenience methods for `get/3`, `post/4`, `put/4`,
`patch/4`, `delete/3`, `head/3`, and `options/3` have been added
(thanks, [@danhuynhdev](https://github.com/danhuynhdev)!).
Connection pools are handled automatically, sorting requests to the
correct pools, starting pools when necessary, and maintaining
multiple redundant pools for GenServer efficiency.
## 0.2.2 (2019-04-26)
Fixed a bug where long requests could exceed the given timeout without
failing (#17). Thanks for the report,
[@mischov](https://github.com/mischov)!
Improved documentation about receiving `:tcp` and `:ssl` messages.
Thanks for the report,
[@axelson](https://github.com/axelson)!
Removed an extra `Task` process creation in `Mojito.Pool.request/2`.
## 0.2.1 (2019-04-23)
Refactored `Mojito.request/5` so it doesn't spawn a process. Now all
TCP messages are handled within the caller process.
Added `Mojito.request/1` and `Mojito.Pool.request/2`, which accept a
`%Mojito.Request{}` struct as input.
Removed dependency on Fuzzyurl in favor of built-in URI module.
## 0.2.0 (2019-04-19)
Messages sent by Mojito now contain a `:mojito_response` prefix, to allow
processes to select or ignore these messages with `receive`.
Thanks [@AnilRedshift](https://github.com/AnilRedshift)!
Upgraded to Mint 0.2.0.
## 0.1.1 (2019-03-28)
`request/5` emits better error messages when confronted with nil or blank
method or url. Thanks [@AnilRedshift](https://github.com/AnilRedshift)!
## 0.1.0 (2019-02-25)
Initial release, based on [Mint](https://github.com/ericmj/mint) 0.1.0.