- Dropped support for GHC 8.2.x.
-
Dropped support for GHC 8.0 and 7.10.
-
Added Template Haskell
Lift
instance for theURI
type and its sub-components.
- Allow superfluous
&
right after question sign in query parameters.
- Uses Megaparsec 7. Visible API changes amount to an adjustment in
definition of the
ParseException
type.
-
Removed a potentially overlapping instance
Arbitrary (NonEmpty (RText 'PathPiece))
. -
Fixed a bug that made it impossible to have empty host names. This allows us to parse URIs like
file:///etc/hosts
.
- Added
emptyURI
—URI
value representing the empty URI.
-
Changed the type of
uriPath
field of theURI
record from[RText 'PathPiece]
toMaybe (Bool, NonEmpty (RText 'PathPiece))
. This allows us to store whether there is a trailing slash in the path or not. See the updated documentation for more information. -
Added the
relativeTo
function. -
Added the
uriTrailingSlash
0-1 traversal inText.URI.Lens
.
- Allow Megaparsec 6.4.0.
- Fixed handling of
+
in query strings. Now+
is parsed as space and serialized as%2b
as per RFC 1866 (paragraph 8.2.1). White space in query parameters is serialized as+
.
- Fixed implementation of
Text.URI.Lens.queryParam
traversal.
-
Derived
NFData
forParseException
. -
Adjusted percent-encoding in renders so it's only used when absolutely necessary. Previously we percent-escaped a bit too much, which, strictly speaking, did not make the renders incorrect, but that didn't look nice either.
- Updated the readme to include “Quick start” instructions and some examples.
-
Changed the type of
uriAuthority
fromMaybe Authority
toEither Bool Authority
. This allows to know if URI path is absolute or not without duplication of information, i.e. when theAuthority
component is present the path is necessarily absolute, otherwise theBool
value tells if it's absolute (True
) or relative (False
). -
Added
isPathAbsolute
inText.URI
and the corresponding getter inText.URI.Lens
.
-
Added the
renderStr
andrenderStr'
functions for efficient rendering toString
andShowS
. -
Added the
parserBs
that can consume strictByteString
streams.
- Initial release.