Changelog
View SourceAll notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.2.0] - 2026-01-03
Changed
- Renamed application from
erlang_bsontoebson - Renamed
bson_codecmodule toebson - Renamed
bson_itermodule toebson_iter
Added
- GitHub Actions CI for OTP 25, 26, 27
Fixed
- Binary copy test compatibility across OTP versions
[0.1.0] - 2026-01-03
Added
ebson_itermodule for zero-copy BSON binary traversalnew/1- Create iterator from BSON binary with validationnext/1- Iterate elements without decoding valuespeek/2- Find key at top level without iteration statefind_path/2- Navigate nested documents via pathdecode_value/2- Decode value refs to Erlang terms
ebsonmodule for map encode/decodeencode_map/1- Encode Erlang map to BSON binarydecode_map/1- Decode BSON binary to Erlang map
bson_types.hrlheader with BSON type constantsSupported BSON types:
- double (float)
- string (binary)
- document (map)
- array (list)
- binary with subtypes
- objectid
- boolean
- datetime
- null
- int32
- int64
- timestamp
- decimal128
- regex
- javascript
- minkey/maxkey
Memory safety via
binary:copy/1to prevent retention of large source binariesComprehensive test suite (101 tests)