BSD-3-Clause licensed by Doug Beardsley, Michael Xavier
Maintained by Michael Xavier
This version can be pinned in stack with:uri-bytestring-,2748

Module documentation for


  • Loosen dependencies

  • Loosen upper bounds on template-haskell

  • Only depend on the fail package when it is needed due to GHC version.

  • Avoid using OverloadedStrings for Builder.

  • Fix normalization bug where certain combination of options would fail to add a trailing slash.

  • Add MonadFail instance.
  • Correct haddock spelling mistake.

  • Make buildable on GHC 8.2.1.

  • Broaden dep on base.

  • Add relativeRef quasi-quoter.

  • Add URI.ByteString.QQ and the uri quasiquoter to be able to express statically known to be valid URIs, e.g. example = [uri||]. Thanks to reactormonk.

  • Drop dependency on derive in tests.

  • Internally use attoparsec’s numeric parser. Raise lower bounds on attoparsec.
  • Allow blank fragments.

  • Fixed bug introduced at where RelativeRefs would fail to serialize their port numbers.

  • Add URI normalization features.

  • Widen dependency on base.

  • Introduce URIRef, a GADT representation of absolute and relative URIs.

  • Fix bug wher trailing ampersand in the query section would not parse.


  • Fix type bug in serializeRelativeRef’


  • Fix bug where uri-encoded paths would not decode when parsed.


  • Add bytestring serialization functions. This is a common use case and exporting these prevents the user from directly depending on blaze-builder and re-implementing these functions in every application.


  • Add Ord instances


  • Fix serialization bug where userinfo was not including the @ separator.


  • Bump attoparsec bounds


  • Include test modules in distribution


  • Add support for GHC 7.10


  • Switch to blaze-bytestring for less contentious dependencies


  • Add generic lenses (breaking field name changes).
  • Add support for relative refs.
  • Make Query instance of Generic, Typeable.


  • Initial release.