gouroboros
gouroboros copied to clipboard
Go implementation of the Cardano Ouroboros family of protocols
The issue #331 was originally scoped before Conway. Add the Conway certificates.
``` ================== WARNING: DATA RACE Write at 0x00c0001f2268 by goroutine 181: runtime.racewrite() :1 +0x1e github.com/blinklabs-io/gouroboros/muxer.New.func1() /Users/rakshasa/projects/cardano/gouroboros/gouroboros/muxer/muxer.go:92 +0x7c Previous read at 0x00c0001f2268 by goroutine 173: runtime.raceread() :1 +0x1e github.com/blinklabs-io/gouroboros/muxer.(*Muxer).RegisterProtocol() /Users/rakshasa/projects/cardano/gouroboros/gouroboros/muxer/muxer.go:157 +0x327...
We originally created a mock Ouroboros conversation test framework as part of #262, but it doesn't support testing negative cases. It needs the ability to specify an expected error, which...
When attempting to `c.JSON(200, genesisConfig)` with a GenesisConfigResult object, I get a `json: unsupported type: map[interface {}]interface {}` error.
We used a mish-mash of interfaces based on the logger classes used in the various consumers, but we should standardize on the new `log/slog` interface.
We currently expose individual messages and handler functions for each protocol, but this requires the user to know more about the way that the mini-protocol works than they really need...
We are doing unchecked type assertions and accessing array elements without bounds checking. Add better parsing of the 3 different refusal reasons and create specific error types that capture and...
This is trickier than the simple types since there are multiple ranges of tag numbers that map to constructor indexes. We can probably get rid of `cbor.Value` all together after...
They have a totally different format from the Shelley addresses. ``` ; Addresses addrdistr = [1] / [0, stakeholderid] addrtype = &("PubKey" : 0, "Script" : 1, "Redeem" : 2)...