You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Body paragraphs of Word, HWP and HWPX documents are separate Markdown paragraphs again. Since 0.59.3, consecutive
paragraphs arrived on adjacent lines with no blank line between them, so a Markdown renderer showed one run-on paragraph
and a paragraph-based chunker saw one block. Headings were not affected.
Extracted text changes for .docx, .doc, .hwp and .hwpx (every body paragraph now ends with a blank line),
and for .xlsx workbooks that come back without sheet structure. PDF, PPTX and the table text of workbooks do not
change. Documents extracted with 0.59.3 should be extracted again.
Cause: the readers asked the parsers for no paragraph spacing. Up to Undoc 0.19 / Unhwp 0.15 that option only
removed extra spacing; from Undoc 0.23 / Unhwp 0.19 it removes the blank line itself. Every reader now takes its
parser options from one definition, which keeps the blank line.
Removed
Breaking: the separate native Office reader is gone — AddNativeOfficeReader(), AddFileFluxWithNativeOffice(), OfficeNativeDocumentReader and the FileFlux.Core.Infrastructure.Interop types (UndocNativeLoader, UndocDocument, UndocMarkdownFlags and their companions), along with the FILEFLUX_NATIVE_AUTOUPDATE variable. The reader ran the same
native library the built-in DOCX/XLSX/PPTX readers already use through the Undoc package, but downloaded its own copy
from GitHub at run time instead of using the one that package ships, and that download no longer matched the release's
file names: on a machine without a cached copy, every Office document failed with «Could not find library asset». The
built-in readers also return tables as TableData, which this reader did not.
Migration: remove the call. AddFileFlux() serves .docx, .xlsx and .pptx with the built-in readers.
Documentation
The examples in docs/ARCHITECTURE.md match the library and are compiled by the tests. The custom reader example
implements every IDocumentReader member (the stream overloads were missing); the package-selection example gets a reader
from IDocumentReaderFactory and a processor from IDocumentProcessorFactory (it named a PdfDocumentReader that does not
exist and the old IDocumentProcessor.ProcessAsync(path) call); the LMSupply example uses the FileFlux.Providers.LMSupply registration extensions; the custom chunker names FluxCurator's DocumentChunk.