Aantron Dream Versions Save

Tidy, feature-complete Web framework

1.0.0-alpha5

1 year ago

Additions

  • Compatibility with OCaml 5 and latest versions of upstream packages mirage-crypto, gluten, http/af, h2, websocket/af, Caqti, graphql-server.
  • Internal renaming of all vendored libraries (gluten, http/af, h2, websocket/af, paf) to avoid conflicts with their instances installed by opam (#250).

Miscellaneous

  • Fixes to the examples (#213, #223, #232, #239, Alexander Skvorstov, Patrick Kilgore, Davi William Moraes Suga, @laaksonel).
  • Duplicate rows in .ocamlformat (#225, Thomas Coopman).

1.0.0-alpha4

2 years ago

Additions

Bugs fixed

  • Dream.form should accept all Content-Types that have the right prefix (#203, Yawar Amin).
  • Dream.set_cookie should use SameSite=Lax by default (#190, reported by Chas Emerick, Andrey Popp).
  • Depend on camlp-streams for OCaml 5.00.0 compatibility (#210, Patrick Ferris).

Changes

  • Improve Content-Length and Transfer-Encoding handling (2621045).

Removals

  • Dream.content_length middleware (2621045).
  • Dream.lowercase_headers middleware (5f50acf).
  • Dream.version accessor (2162ec7).

Docs

  • Catch up routers in some of the examples with Dream alpha3 (#205, Thomas Haessle).
  • Update docs for Dream.form_result constructor `Expired (#206, Yawar Amin).
  • Fix remaining mentions of ~secret (#207, reported by Tuomas Lukka).

1.0.0-alpha3

2 years ago

Major

  • Complete rework of the internal I/O model, now supporting flow control, pipe-like programming, stream transformers, low-level WebSocket events, efficient WebSocket I/O, exception passing, trivial composition with client library (2075347 to ed1c949, 5cd57e1, others).
  • Convert from immutable to mutable requests and conversion of the API to t-first style (#21).
  • Factor out Dream core into opam package dream-pure, to also be used in the client (2f40d67 to e106e6e, 037645f to 8652178, dd41df9, others).
  • Factor out the http/af stack and helpers directly tied to it that need to be shared with the client into opam package dream-httpaf (110575d, acc2efc).
  • Remove "global" (per-server) variables (d81b198).
  • Rename "local" (per-message) variables to "fields" (5a54d5c).
  • Use a middleware to set secrets (2529b9a).
  • Use a middleware to set site prefix (3da5e23).
  • Replace ?debug by just using a different error handler (640a1b2).
  • Rename ?https to ?tls (7320f87).
  • Miscellaneous renamings. Most old values are still temporarily present with attached deprecation attributes to help migrate.

Additions

  • Flash message support (#62, #137, #173, Joe Thomas).
  • Warning about using sqlite: scheme instead of sqlite3: (#92, Anton Outkine).
  • Pass the entire error object to error template calls (#162, reported by Jean-Michel Bea).
  • ?csrf to skip the CSRF check in Dream.form, Dream.multipart (#167, José Eduardo Monteiro).
  • Per-source log level configuration (#171, Joe Thomas).
  • Dream.drop_cookie (#169, Shawn McGinty).
  • Simplification: assign request IDs lazily and implicitly (bb2924d).
  • Dream.csrf_tag, a less obtrustive replacement for Dream.form_tag (#201, Yawar Amin).

Bugs fixed

  • Dream.static was setting Content-Type: headers for non-existent files (#88, reported by Khoa Nguyen).
  • Use bigstringaf instead of Lwt_bytes to minimize Unix dependencies (#107, Calascibetta Romain).
  • Limit Dream.redirect ~status to only redirections (#130, Khoa Nguyen).
  • Dream.redirect: don't write Location to the response body (b0f64df).
  • Restore terminal settings upon exit by SIGINT (#151, Anton Outkine).
  • Don't try to ignore SIGPIPE on Windows (#158, Manas Jayanth).

Examples

Documentation

  • Fix sqlite3 URI in SQL snippet (#80, Khoa Nguyen).

1.0.0-alpha2

3 years ago

Changes

Additions

Fixes

  • Work around paurkedal/ocaml-caqti#68 (385fa45, reported by Konstantin Olkhovskiy).
  • Require Cstruct 6.0.0 (#60, reported by Edwin Török).

1.0.0-alpha1

3 years ago

Initial release.