1.2.4 was tagged but never reached a package registry: its generated binding files still
named 1.2.3, so its publish run was cancelled. 1.2.5 is the first published release carrying
the 1.2.4 changes below in addition to its own.
Fixed
- (python): a config field holding a nested data-carrying enum is no longer dropped by
from_json/to_json. The Python DTOs marked every field whose type transitively held
a data enum as#[serde(skip)]--CaptioningConfig.llmandChunkingConfig's nested
options among them -- so a JSON payload round-tripped through such a config silently lost
those fields. Regenerated on alef 0.92.1, whose Python emitter no longer treats a
serializable enum wrapper as opaque. (alef#394) - (ppt): a legacy
.ppt's embedded OLE objects are extracted. A Word document or Excel
sheet inserted as an object -- the way PowerPoint 97-2003 decks routinely carry a table --
lives in the deck'sExOleObjStgrecords, which the extractor walked over as opaque bytes,
so the slide came out as its title and nothing else. The.pptxpath already recursed into
ppt/embeddings/; the legacy path now does the same: each embedded object's storage is
resolved through the persist chain (so a superseded save's copy is never read),
decompressed when the record says so, identified by its root stream (WordDocument,
Workbook/Book,PowerPoint Document, or an OPCPackage) and extracted into
childrenasslide<N>/oleObject<id>.binwith the slide whose shape displays it. The
decompressed size is bounded bymax_embedded_file_bytes(falling back to
max_archive_size), the object count bymax_files_in_archive, andmax_archive_depth = 0
disables the recursion, as for.pptx. Metafile presentation pictures (EMF/WMF) are still
not emitted as images. (GH#1660) - (pdf): a ruled table drawn one bar per cell no longer loses all but its last two rows.
Word draws cell borders as per-cell filled bars with a corner square at every crossing, so
every vertical rule terminates at every horizontal rule. The section-divider split, which
reads a full-width rule that no vertical rule runs through as the boundary between two
stacked form sections, therefore treated every internal rule of such a table as a divider,
cut the table into one-row pieces and discarded the pieces below the cell minimum -- a
12-row table came back as11 | 290,12 | 300. A rule that every vertical rule stops at
carries no section information when the same is true of every other rule on the table, so
a table whose internal rules all qualify is now left whole; a form whose sections' rules
stop at a minority of the rules still splits. (GH#1656)