Skip to content

Conversation

seanhess
Copy link

@seanhess seanhess commented Aug 4, 2025

Right now, the FromJSON instance for Network.URI.URI doesn't round-trip for relative URIs.

> import Network.URI
> import Data.Aeson 
> let mu :: Maybe URI = parseURIReference "/"
> print mu
Just /

> encode mu
"\"/\""

> decode @URI $ encode mu
Nothing

This PR switches the FromJSON instance to use URI.parseURIReference instead of URI.parseURI. The latter fails with Nothing for relative URIs.

Support round-trip reference (local) uris
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant