package vif

  1. Overview
  2. Docs

v0.0.1~beta4 (2026-07-31)

  • Handle Host fields and be able to dispatch requests with our Vif.Uri DSL (spotted by @theAlexes, fixed by @dinosaure, !63, #35)
  • Update to caqti.3.0.0 (@dinosaure, !64)
  • Add statistics (@hannesm, @dinosaure, @reynir, !69)
  • Fix & improve documentation (@hannesm, @mneumann, #37, !68)
  • Use mirage-crytpo-rng.unix instead of mirage-crypto-rng-miou-unix (@dinosaure, @hannesm, !71)
  • Use waitport instead of waitfile (@dinosaure, !72)
  • Export Vif.Request.tags to get tags from a request (@reynir, !66)

v0.0.1~beta3 (2026-05-06)

  • Delete mirage-crypto-rng-miou-unix dependency for vif.core (@dinosaure, 3fb86c5)
  • Improve performances, when we handle requests without body, we executed them directly instead of transferring the handler into a new domain (@dinosaure, #25, !51)
  • Catch exceptions raised by jsont (@dinosaure, !52)
  • Use jws instead of jwto (@dinosaure, !53)
  • Handle TLS flow with vifu (@dinosaure, !54)
  • Expose Vifu.Uri.{execp,extract} (@swrup, #26)
  • Use Flux.Source.with_buffered_formatter (instead of with_formatter) (@reynir, !55)
  • Fix the compilation with caqti.2.3.0 (@dinosaure, !57)
  • Get ride of rresult (@reynir, !58)
  • Depends on flux.0.0.1~beta5 (@reynir, !59)
  • Be able to stop a Vif server (as we do for httpcats) (@theAlexes, @dinosaure, #29)
  • Be able to specify a UNIX domain socket as our listener for our webserver (@theAlexes, @dinosaure, @reynir, #30, #31)
  • Use httpcats.0.3.0 and shutdown our connection at the end (@dinosaure, !60)
  • Add OPTIONS method for our routes (@voodoos, #33)
  • Revert !60 and fix unexpected closed connection (see #32) and when we would like to transmit big file (!61, spotted by @voodoos, @dinosaure, @theAlexes)
  • Don't emit application/octet-stream for unrecognized files (spotted by @n-osborne, @dinosaure, #27, #28)

v0.0.1~beta2 (2026-02-23)

  • Add Vif.Queries.all (@reynir, !5)
  • Improve examples and README.md (@dinosaure, @reynir, !7, !9)
  • Rename Vif.Uri.path to Vif.Uri.path (@dinosaure, @reynir, !8)
  • Fix errors when we parse multipart/form-data (@dinosaure, spotted by @yomimono, !14, !22)
  • Catch exceptions from URI converters (@reynir, @dinosaure, !12)
  • Add ?etag argument for files (@reynir, !16)
  • Be able to have a regular expression per HTTP methods (@reynir, !18)
  • Add Vif.Uri.execp and Vif.Uri.extract (@reynir, !20)
  • Exclude ? from Vif.Uri.string `Path (@reynir, !23)
  • Add Vif.Response.with_text (@dinosaure, !24, !37)
  • Fix the support of MacOS (@vvvvv, @dinosaure, spotted by @voodoos, !25)
  • Introduce vifu, a unikernel compatible version of vif (@dinosaure, !28)
  • Fix Vif.Response.with_file (@dinosaure, !29)
  • Fix a double-close on Vif.Response.with_json and how the function is exposed (@dinosaure, !30, !37)
  • Let the user to define a log reporter (@voodoos, @dinosaure, !32)
  • Fix the support of h2 protocol and which field we should generate (@dinosaure, !33)
  • Use flux (@dinosaure, !34)
  • Fix memory leak with logs (@dinosaure, !38, !39)
  • Update to tyre.1.0.0 (@dinosaure, @EmileTrotignon, !40)
  • Remove the usage of ppx in our tests (@dinosaure, !42)
  • Verify the TLS configuration given (and its ALPN protocols) (@dinosaure, spotted by @voodoos, !41)
  • Provide Vif.Response.with_stream (@dinosaure, !43)
  • Remove deprecated jsonm dependency (@dinosaure, !45)
  • Give the possibility for the user to initialize RNG (@dinosaure, requested by @voodoos, !46)
  • Remove pin-depends (@hannesm, @dinosaure, !48)

v0.0.1~beta1 (2025-08-14)

  • First release of Vif