packages feed

cookie-tray-0.0.0.0: readme.md

The `cookie-tray` package aims to make it easy to set cookies from your web
server, even if you are not intimately familiar with the details of the
`Set-Cookie` HTTP field.

One example of a higher-level abstraction provided by this library is the idea
of cookie deletion. The low-level specification gives no way to explicitly
instruct a client to unset a cookie. This library provides a `Delete` action
that does the right thing (sets the cookie with an expiration date in the past)
to achieve removal.

---

Currently the best way to see how the library is used is to look at the test
suite.

---

I currently consider the API to be "experimental" because I don't think its
chief goals of being convenient and instructive have been satisfied confidently
enough to consider the library "finished." I am open to accepting improvements
to make the library more convenient to use.

---

This package works nicely in conjunction with [wai] and [warp]. See
[mapResponseHeaders] in WAI for how to apply fields to the response header.

I am not sure how one would use this with [scotty], as you may be thwarted by
Scotty's use of `Text` instead of `ByteString` to represent HTTP fields.

  [scotty]: https://hackage.haskell.org/package/scotty
  [mapResponseHeaders]: https://hackage.haskell.org/package/wai-3.2.3/docs/Network-Wai.html#v:mapResponseHeaders
  [wai]: https://hackage.haskell.org/package/wai
  [warp]: https://hackage.haskell.org/package/warp

---

Reference documentation on cookies:

* [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie)
* [IETF specification](https://datatracker.ietf.org/doc/html/rfc6265)