diff --git a/cmd/f3/msgdump/cbor_gen.go b/cmd/f3/msgdump/cbor_gen.go deleted file mode 100644 index a70c8a53..00000000 --- a/cmd/f3/msgdump/cbor_gen.go +++ /dev/null @@ -1,246 +0,0 @@ -// Code generated by github.com/whyrusleeping/cbor-gen. DO NOT EDIT. - -package msgdump - -import ( - "fmt" - "io" - "math" - "sort" - - cid "github.com/ipfs/go-cid" - cbg "github.com/whyrusleeping/cbor-gen" - xerrors "golang.org/x/xerrors" -) - -var _ = xerrors.Errorf -var _ = cid.Undef -var _ = math.E -var _ = sort.Sort - -var lengthBufGMessageEnvelope = []byte{131} - -func (t *GMessageEnvelope) MarshalCBOR(w io.Writer) error { - if t == nil { - _, err := w.Write(cbg.CborNull) - return err - } - - cw := cbg.NewCborWriter(w) - - if _, err := cw.Write(lengthBufGMessageEnvelope); err != nil { - return err - } - - // t.UnixMicroTime (int64) (int64) - if t.UnixMicroTime >= 0 { - if err := cw.WriteMajorTypeHeader(cbg.MajUnsignedInt, uint64(t.UnixMicroTime)); err != nil { - return err - } - } else { - if err := cw.WriteMajorTypeHeader(cbg.MajNegativeInt, uint64(-t.UnixMicroTime-1)); err != nil { - return err - } - } - - // t.NetworkName (string) (string) - if len(t.NetworkName) > 8192 { - return xerrors.Errorf("Value in field t.NetworkName was too long") - } - - if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.NetworkName))); err != nil { - return err - } - if _, err := cw.WriteString(string(t.NetworkName)); err != nil { - return err - } - - // t.Message (gpbft.GMessage) (struct) - if err := t.Message.MarshalCBOR(cw); err != nil { - return err - } - return nil -} - -func (t *GMessageEnvelope) UnmarshalCBOR(r io.Reader) (err error) { - *t = GMessageEnvelope{} - - cr := cbg.NewCborReader(r) - - maj, extra, err := cr.ReadHeader() - if err != nil { - return err - } - defer func() { - if err == io.EOF { - err = io.ErrUnexpectedEOF - } - }() - - if maj != cbg.MajArray { - return fmt.Errorf("cbor input should be of type array") - } - - if extra != 3 { - return fmt.Errorf("cbor input had wrong number of fields") - } - - // t.UnixMicroTime (int64) (int64) - { - maj, extra, err := cr.ReadHeader() - if err != nil { - return err - } - var extraI int64 - switch maj { - case cbg.MajUnsignedInt: - extraI = int64(extra) - if extraI < 0 { - return fmt.Errorf("int64 positive overflow") - } - case cbg.MajNegativeInt: - extraI = int64(extra) - if extraI < 0 { - return fmt.Errorf("int64 negative overflow") - } - extraI = -1 - extraI - default: - return fmt.Errorf("wrong type for int64 field: %d", maj) - } - - t.UnixMicroTime = int64(extraI) - } - // t.NetworkName (string) (string) - - { - sval, err := cbg.ReadStringWithMax(cr, 8192) - if err != nil { - return err - } - - t.NetworkName = string(sval) - } - // t.Message (gpbft.GMessage) (struct) - - { - - if err := t.Message.UnmarshalCBOR(cr); err != nil { - return xerrors.Errorf("unmarshaling t.Message: %w", err) - } - - } - return nil -} - -var lengthBufGMessageEnvelopeDeferred = []byte{131} - -func (t *GMessageEnvelopeDeferred) MarshalCBOR(w io.Writer) error { - if t == nil { - _, err := w.Write(cbg.CborNull) - return err - } - - cw := cbg.NewCborWriter(w) - - if _, err := cw.Write(lengthBufGMessageEnvelopeDeferred); err != nil { - return err - } - - // t.UnixMicroTime (int64) (int64) - if t.UnixMicroTime >= 0 { - if err := cw.WriteMajorTypeHeader(cbg.MajUnsignedInt, uint64(t.UnixMicroTime)); err != nil { - return err - } - } else { - if err := cw.WriteMajorTypeHeader(cbg.MajNegativeInt, uint64(-t.UnixMicroTime-1)); err != nil { - return err - } - } - - // t.NetworkName (string) (string) - if len(t.NetworkName) > 8192 { - return xerrors.Errorf("Value in field t.NetworkName was too long") - } - - if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.NetworkName))); err != nil { - return err - } - if _, err := cw.WriteString(string(t.NetworkName)); err != nil { - return err - } - - // t.Message (typegen.Deferred) (struct) - if err := t.Message.MarshalCBOR(cw); err != nil { - return err - } - return nil -} - -func (t *GMessageEnvelopeDeferred) UnmarshalCBOR(r io.Reader) (err error) { - *t = GMessageEnvelopeDeferred{} - - cr := cbg.NewCborReader(r) - - maj, extra, err := cr.ReadHeader() - if err != nil { - return err - } - defer func() { - if err == io.EOF { - err = io.ErrUnexpectedEOF - } - }() - - if maj != cbg.MajArray { - return fmt.Errorf("cbor input should be of type array") - } - - if extra != 3 { - return fmt.Errorf("cbor input had wrong number of fields") - } - - // t.UnixMicroTime (int64) (int64) - { - maj, extra, err := cr.ReadHeader() - if err != nil { - return err - } - var extraI int64 - switch maj { - case cbg.MajUnsignedInt: - extraI = int64(extra) - if extraI < 0 { - return fmt.Errorf("int64 positive overflow") - } - case cbg.MajNegativeInt: - extraI = int64(extra) - if extraI < 0 { - return fmt.Errorf("int64 negative overflow") - } - extraI = -1 - extraI - default: - return fmt.Errorf("wrong type for int64 field: %d", maj) - } - - t.UnixMicroTime = int64(extraI) - } - // t.NetworkName (string) (string) - - { - sval, err := cbg.ReadStringWithMax(cr, 8192) - if err != nil { - return err - } - - t.NetworkName = string(sval) - } - // t.Message (typegen.Deferred) (struct) - - { - - if err := t.Message.UnmarshalCBOR(cr); err != nil { - return xerrors.Errorf("failed to read deferred field: %w", err) - } - } - return nil -} diff --git a/cmd/f3/msgdump/envelope.go b/cmd/f3/msgdump/envelope.go index c9258b19..d67273ad 100644 --- a/cmd/f3/msgdump/envelope.go +++ b/cmd/f3/msgdump/envelope.go @@ -2,15 +2,8 @@ package msgdump import ( "github.com/filecoin-project/go-f3/gpbft" - cbg "github.com/whyrusleeping/cbor-gen" ) -type GMessageEnvelopeDeferred struct { - UnixMicroTime int64 - NetworkName string - Message cbg.Deferred -} - type GMessageEnvelope struct { UnixMicroTime int64 NetworkName string diff --git a/cmd/f3/msgdump/writer.go b/cmd/f3/msgdump/writer.go index f637876a..76cbc70f 100644 --- a/cmd/f3/msgdump/writer.go +++ b/cmd/f3/msgdump/writer.go @@ -2,25 +2,12 @@ package msgdump import ( "fmt" - "io" "path/filepath" "strings" "github.com/filecoin-project/go-f3/gpbft" - cbg "github.com/whyrusleeping/cbor-gen" ) -type Writer[T cbg.CBORMarshaler] struct { - underlying io.WriteSeeker -} - -func (w *Writer[T]) Write(item T) error { - // optimize it: - // keep cbg.Writer around - // write in for example 1MiB padded chunks to be able to read it in parallel - return item.MarshalCBOR(w.underlying) -} - func DirForNetwork(dir string, nn gpbft.NetworkName) string { basename := fmt.Sprintf("msgs-%s", strings.ReplaceAll(string(nn), "/", "-")) return filepath.Join(dir, basename) diff --git a/gen/main.go b/gen/main.go index 4513ec40..6d90aab0 100644 --- a/gen/main.go +++ b/gen/main.go @@ -6,7 +6,6 @@ import ( "github.com/filecoin-project/go-f3/certexchange" "github.com/filecoin-project/go-f3/certs" - "github.com/filecoin-project/go-f3/cmd/f3/msgdump" "github.com/filecoin-project/go-f3/gpbft" gen "github.com/whyrusleeping/cbor-gen" "golang.org/x/sync/errgroup" @@ -40,12 +39,6 @@ func main() { certexchange.ResponseHeader{}, ) }) - eg.Go(func() error { - return gen.WriteTupleEncodersToFile("../cmd/f3/msgdump/cbor_gen.go", "msgdump", - msgdump.GMessageEnvelope{}, - msgdump.GMessageEnvelopeDeferred{}, - ) - }) if err := eg.Wait(); err != nil { fmt.Printf("Failed to complete cborg_gen: %v\n", err) os.Exit(1)