IntersectMBO / IntersectMBO/ouroboros-network
Add newtype wrappers for some low level network primitives
Open
maintenance
- Dominant language
- Haskell
- Stars
- 296
- Forks
- 104
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 4
Description
We should reconsider the lack of newtype wrappers for things like DNS.Domain, Socket.PortNumber, Socket.SockAddr. If we have them, then:
we are in control of instances (it's not only about orphans, but also about stability);
it's easier to deal with when we'd switch to a different dns / network library.
Ad 1. It becomes a concern because of the ToJSON, and ToCBOR instances - but there's a trap with using instances for version codecs; at some point, one need extra newtype wrappers for new versions of encoding...;
Ad 2. isn't since the libraries we use are pretty stable - but who knows...
Contributor guide
Assessment
This issue has not been assessed yet.