All 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.
- Writing a packet whose size is perfectly divisible by 255 would make the second to last segment have a size of 0, rather than 255 (issue) (PR)
- When writing large packets, the size would slowly shift out of sync, causing the pages to be written incorrectly. (issue) (PR)
Packets::iter()
Packets::{len, is_empty}
Packets::write_to
will now return the number of pages written- Segment tables are now stored in
PageHeader
- Limit maximum written page size to ~8KB
Packets::read_count
will properly validate that the correct number of packets were read
- The reading of OGG files has switched to using packets opposed to pages, making it more spec-compliant and efficient.
- Most fields in
Page
have been separated out into the newPageHeader
struct. paginate
now works with a collection of packets. (PR)
- Removed
Page::new
, now pages can only be created throughogg_pager::paginate
orPackets::paginate
. (PR)
- Segment tables are written correctly with data spanning multiple pages (issue)