While working on empty services I encountered a bug where empty service messages could not be received. The culprit was in Binary.hs: get = getUnit *> pure ", name' (see diff). This tries to read some amount of data, but empty service messages have no data. While testing to see if subscribing to empty messages works, I discovered that singleton messages don't derive Typeable, and thus cannot be roshask Topics.
While working on empty services I encountered a bug where empty service messages could not be received. The culprit was in Binary.hs:
get = getUnit *> pure ", name'
(see diff). This tries to read some amount of data, but empty service messages have no data. While testing to see if subscribing to empty messages works, I discovered that singleton messages don't derive Typeable, and thus cannot be roshask Topics.