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