What's Changed
Breaking changes:
- The `start` property of `GlyphRange` items is now optional
([15](https://github.com/ricklupton/rmscene/pull/15/)).
- The representation of formatted text spans has changed. Rather than
using nested structures like `BoldSpan` and `ItalicSpan`, the
`CrdtStr` objects now have optional text properties like
`font-weight` and `font-style`. This simplifies the parsing code and
the resulting data structure.
New features:
- Improved error recovery. An error during parsing, or an unknown block type,
results in an `UnreadableBlock` containing the data that could not be read, so
that parsing of other blocks can continue.
- Compatible with new reMarkable software version 3.6 format for
highlighted text
([15](https://github.com/ricklupton/rmscene/pull/15/)).
- New methods `read_bool_optional` and similar of `TaggedBlockReader`
which return a default value if no matching tagged value is present
in the block.
Other changes and fixes:
- The `value` attribute of scene item blocks, which was not being used, has been
removed.
- Check more carefully for sub-blocks
([17](https://github.com/ricklupton/rmscene/issues/17#issuecomment-1701071477)).
- Type hints fixed for `expand_text_items`.
New Contributors
* Azeirah made their first contribution in https://github.com/ricklupton/rmscene/pull/15
**Full Changelog**: https://github.com/ricklupton/rmscene/compare/v0.4.0...v0.5.0