Skip to content

Io

Pre-release
Pre-release
Compare
Choose a tag to compare
@matthiasgeihs matthiasgeihs released this 25 Feb 14:40
· 121 commits to main since this release
5441eed

Injectable wire encoding and a protobuf wire encoder.

Added

  • ✨ Injectable wire encoding #233: The encoding used for messages that are sent across the network is now injectable.
    • Add binary marshalling: #272, #284, #298.
    • Add serializer interface: #297, #325.
    • Change the mechanism for generating ProposalID: #300, #307.
    • Rename message types #305.
    • Extend and refactor message serialization tests: #316, #317.
  • ✨ Protobuf wire encoder #311: A wire encoder based on protobuf has been added #318.
  • Minor additions: Introduce Asset.Equal #279, export proposer index #313.

Changed

  • πŸ’₯ Rename Address.Equals to Address.Equal #264.
  • πŸ’₯ Revise Channel.Update and Channel.ForceUpdate: #289, #291, #306.
  • 🚚 pkg/io migration: #256, #271, #285, #287.
  • πŸ“ Update README to include references to existing backends #314.
  • 🚸 Minor usability improvements: #268, #278, #315.
  • πŸ‘· CI updates: #260, #274, #276, #277.
  • ⬆️ Use LatestSigner in Ethereum contract backend and don't set GasLimit by default, so that EIP1559 TXs are sent #322.

Fixed

  • πŸ› Fix a bug causing Channel.Watch to not work correctly for sub-channels and virtual channels #251.
  • πŸ› Fix bugs causing ContractBackend.confirmNTimes to block indefintely or fail in some rare cases: #254, #309.
  • βœ… Improve test stability: #310, #319.

Security

  • πŸ”’ It is now checked that assets are not changed during a state update, which could otherwise cause a channel to become unfunded #304.