Technical update: migrate from `poetry` build environment to `uv`, and reorganize tests.
Changed
- Migrate from `poetry` build environment to `uv` - Organize tests with more fixtures and sub directories.
3.13.8
Technical update: update `poetry` to version 2.1, reformat `pyproject.toml`, move source code in the `src` directory.
Changed
- The source code is now in the `src` sub directory. - Build of the library requires `poetry` version 2.0 or more.
3.13.7
Improved filter on allowed characters in a table name (for compatibility with allowed names in LibreOffice). Forbidden characters are now `\n` `\` `/` `*` `?` `:` `[` `]`, and `"'"` as first or last character. Previously forbidden characters were simply `\n` `/` `\` `"'"`.
Added `lxml` version 5.3.1 to the test suite.
Changed
- The regex for unauthised characters in table names is now: `r"^\'|[\n\\/\*\?:\][]|\'$"`.
Added
- Version 5.3.1 of `lxml` added to `tox.ini`.
3.13.6
Fix corrupted ODF file due to incoherent manifest files, especially in .odg files (issue 54).
Fixed
- Fixed `Document.save()` check for `manifest.rdf` listed in `manifest.xml`
3.13.5
Add the option `formatted` to script `odfdo-replace` and method `Element.replace()` to interpret the `<space>`, `<tab>` and `<CR>` of the replacement string.
- Fix a bug on `Document.insert_style()` and related methods that prevented the loading of styles from the family `number:*`, like `number:currency-style` (issue 53).
Fixed
- Fixed `Document.insert_style()` and `CONTEXT_MAPPING` in `styles.py` for a better detection of styles pseudo-families.