IntersectMBO / IntersectMBO/ouroboros-network

Add newtype wrappers for some low level network primitives

Open
#5,039 0 comments 0 reactions 1 assignee Claimed by @crocodile-dentist View on GitHub
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.