Skip to content
  • Ethan Reesor's avatar
    Refactor message passing [#3159] · e69c3c33
    Ethan Reesor authored
    - Closes #3159.
    - Moves `protocol.Envelope` to `pkg/types/messaging`.
      - The protocol package is a monster and I want to avoid adding more, hence messaging being its own package.
      - To support message types other than user transaction and user signature, an envelope needs to contain arbitrary messages.
      - Thus Envelope has Message and UserTransaction has Transaction, leading to a circular dependency between the packages. The simplest way to resolve this (and not add to the protocol package bloat) is moving Envelope to messaging.
    - Eliminates NormalizeLegacy and LegacyMessage, instead always normalizing an envelope to UserTransaction and UserSignature messages, then leaving it up to the executor to reconstruct deliveries from those messages.
    
    Changelog: refactor
    e69c3c33