packages feed

servant-multipart-0.13.0: CHANGELOG.md

0.13.0
------

- **Breaking:** under `Lenient`, the handler now receives
  `Either CheckError a` instead of `Either String a`. `CheckError`
  distinguishes `fromMultipart` failures (`ParseError`), invalid UTF-8
  (`DecodeError`) and exceeded body parsing limits (`LimitError`).
- **Breaking:** forms whose input names, input values, file names or file
  content types are not valid UTF-8 are rejected with a 400 response instead
  of throwing an exception
  [#84](https://github.com/haskell-servant/servant-multipart/pull/84).
- **Breaking:** forms that exceed a `generalOptions` limit are rejected with
  a 4xx response instead of a 500. Exceeding a size limit responds with 413,
  exceeding a part header limit responds with 431, and other limits respond
  through the `ErrorFormatters` in the context
  [#85](https://github.com/haskell-servant/servant-multipart/pull/85).
  Under Warp, size and part header limits already responded with 413 and
  431, but with Warp's plain-text body; the body now comes from the
  `ErrorFormatters`.
- **Breaking:** `defaultMultipartOptions` now limits each file to 25 MiB.
- **Breaking:** requests whose content type is not
  `application/x-www-form-urlencoded` or `multipart/form-data` with a
  boundary are rejected with 415 instead of 400, and the response is built
  by the `ErrorFormatters` in the context. The rejection is no longer
  fatal, so later alternatives of `:<|>` are tried, as with `ReqBody`.
- `lookupInput` and `lookupFile` moved to `servant-multipart-api`; they
  are still re-exported from `Servant.Multipart`.
- Re-export the new `lookupAllInputs`, `lookupAllFiles`, `lookupInputAs`
  and `lookupAllInputsAs` from `servant-multipart-api`
  [#75](https://github.com/haskell-servant/servant-multipart/pull/75).
- Export the `LookupContext` class.
- **Breaking:** the `HasDocs` and `HasForeign` instances now cover
  `MultipartForm'` with any modifiers, not only `MultipartForm`. Remove any
  instances you wrote for `MultipartForm' '[Lenient]`, since they now
  overlap.
- Drop the `string-conversions` dependency.
- Require GHC >= 9.4 and servant >= 0.20.3; support up to GHC 9.12
  [#81](https://github.com/haskell-servant/servant-multipart/pull/81).

0.12.1
------

- split package into api, server and client parts
  [#51](https://github.com/haskell-servant/servant-multipart/pull/51)

0.12
----

- support servant-0.18
- version bump for breaking change in
  [#36](https://github.com/haskell-servant/servant-multipart/pull/36)

0.11.6
------

- relax bounds for ghc810 #38
- update haskell-ci #37
- better parse errors #36

0.11.5
------

- Add `servant-client` support 
- Support servant-0.17

0.11.4
------

- Change `upload` to be test-suite
- Support servant-0.16

0.11.3
------

- Add `HasForeign (MultipartForm t a :> api)` instance.
  [#20](https://github.com/haskell-servant/servant-multipart/pull/20)

0.11.2
------

- Support `servant-0.14`

0.11.1
------

- Support `servant-0.13`
- Export MultipartBackend and TmpBackendOptions

0.11
----

- Support `servant-0.12`
- Add support for memory backend

0.10
----

- Initial release