haskell / haskell/network

network doesn't work with unicode hostname

Open
#126 1 comment 0 reactions 0 assignees View on GitHub
new feature
Dominant language
Haskell
Stars
366
Forks
210
Avg merge
22h 38m
Merged PRs (30d)
5

Description

As network doesn't encode to punycode it fail when trying to connect to a hostname that contains unicode character.

The main problem is using withCString which would truncate all unicode code point to 256 bits,
and peekCString when reading which would return a punycode encoded string to hostname. One crappy workaround is to encode/decode with a 3rd party library and have a Hostname -> Hostname function but we get no type safety, and it force everyone to know about the issue and deal with it in it own library.

Any opinion on the best way to fix this issue ? I would personally prefer Hostname to be a newtype and have everything available to be able to get the punycode decoder/encoder bytes available for libraries too.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.