Releases: 200sc/bebop
Releases · 200sc/bebop
bebop v0.0.8
This release
- Fixes a bug where streamed messages had incorrect size bytes written.
- Fixes a bug where streamed messages did not respect opcodes.
- Updates formatting to include spacing ahead of opcode declarations.
- Removes support for
readonly
messages, per the bebop spec. - Adds constructors for
readonly
structs. - Fixes parsing bugs that allowed
readonly
to precede enums and comments.
bebop v0.0.7
This release:
- Adds support for optional semicolons, controlled via a currently private variable in the codebase. This is mostly a theoretical demonstration that it would be easy to remove the need for semicolons from the original
- Adds additional validation checks at Go code generation time that detect files with overlapping field names or indices.
- Adds line and column numbers to tokenization and parsing errors.
- Adds fuzz tests (which revealed no bugs (so far)).
bebop v0.0.6
This release:
- Introduces bebopfmt, a binary formatter tool that can rewrite valid bebop files with standardized formatting.
- Corrects a bug in message generation where written lengths included opcode and size bytes.
bebop and beboc-go v0.0.5
bebop.Marshal
andbebop.Unmarshal
have been replaced withbebop.Record.MarshalBebop
andbebop.Record.UnmarshalBebop
.- These new methods, in limited benchmarks, outperform protobuf by ~2.5x.
bebop.Record.UnmarshalBebop
includes regular size checks and can return an error. In benchmarks, this does not change performance over removing these checks. If, however, you would prefer to panic on an out of bounds error, you may passGenerateUnsafeMethods
to the generator and use the resultingMustUnmarshalBebop
method.
bebop and beboc-go v0.0.4
- Complete refactor of generated code structure, targeted at performance (primarly) and legibility (secondarily)
bebop and beboc-go v0.0.3
- Reduces API surface, removing some helper methods only used in tests
- Fixes bugs in logic for generation of map fields on messages.
bebop and beboc-go v0.0.2
- Adds a License file
- Adds support for escaped quotes in deprecated strings
- Adds support for transferring multi line header comments on records to .go files
- Adds error checking to encoding/decoding read/write operations
- Adds invalid recursive type detection
- Corrects GUID wire format byte order
bebop and beboc-go v0.0.1
This is an initial release, with significant but incomplete test coverage for success paths in parsing and generating.
Currently suitable for use in non-critical environments.