Data and AI releases

548 this month · 176 companies

Unstructured Release notes and new features

62 releases · 1 this month

Website RSS

Also onFunding(Funding rounds)·Paydays(Pay schedule)

Unstructured releases

November 2026 digest

unstructured 0.27.37

unstructured version 0.27.37 fixes text extraction for vector-heavy PDFs, preserves text in PPTX and DOCX elements, and resolves UTF-8 metrics evaluation issues.

Update
Source ↗

unstructured 0.27.36

Unstructured 0.27.36 includes several fixes for file partitioning, OCR, and table detection, improving the reliability of data processing for various file formats.

Update
Source ↗

unstructured 0.27.35

This release of the Unstructured library includes various fixes for document partitioning, metadata extraction, and performance improvements for PDF processing.

Update
Source ↗

unstructured 0.27.32

- fix: label numbered headings without making them list items, and skip section-break paragraphs - fix(partition): read spooled uploads in place instead of copying them - perf(pdf): bound OCR upload and rendered-page memory - perf(chunking): bound image payload and original-element serialization memory - feat(xlsx): expose a guarded worksheet-at-a-time...

Update
Source ↗

unstructured 0.27.28

- feat: opt-in langdetect-rs backend for partition language detection - fix(html): keep text inside unrecognized elements - fix(html): keep table captions in Table text and text_as_html - perf(docx): resolve each paragraph style once per document (5.3 s -> 1.0 s outside spaCy) - fix(xlsx): collapse empty-row runs instead of rejecting far-away cells -...

Update
Source ↗

unstructured 0.27.27

- fix(json): preserve rehydrated element identity - fix: keep overlap category names from element 100 on - fix: normalize None text to empty string in Text elements - fix: stop silently returning mojibake from encoding detection fix: partition_email raises KeyError on a multipart/ attachment - fix: preserve MathML content in HTML partitioning

Update
Source ↗

unstructured 0.27.25

- fix(pptx): no page break before the first slide when starting_page_number > 1 - fix(chunking): reject a negative overlap instead of corrupting text - feat(image): partition WEBP images like PNG and JPEG

Update
Source ↗

unstructured 0.27.22

This release rolls up all changes since 0.27.16. Fixes - Faster chunk serialization with stable source-element IDs. Avoid copying orig_elements twice during serialization. IDs minted during serialization now remain stable across calls, including inside orig_elements; explicit and hash-derived IDs are unchanged.

Update
Source ↗

unstructured 0.27.16

This release rolls up all changes since 0.27.10; versions 0.27.11–0.27.15 were not published to PyPI individually. Fixes Reject images whose frames decode to too many pixels instead of exhausting memory.

Update
Source ↗

unstructured 0.27.8

- fix: partition multi-section DOCX files in linear time - fix: ignore processing instructions in HTML partitioning - ci: remove release version alert - fix: tolerate non-UTF-8 soffice output in doc/ppt conversion - fix: recognize single-block list items as ListItem - perf(nlp): run the spaCy pipeline once per distinct text - fix(html): preserve table...

Update
Source ↗

unstructured 0.27.5

- chore(deps): bump claude-code-action to v1 - Added Sign up link for Transform and removed pricing - fix: stop treating every hyphen as a bullet delimiter in text partitioning - fix: preserve attachment elements' own filetype in auto.partition() - chore: make a release

Update
Source ↗

unstructured

- test: stop GLOBAL_WORKING_DIR tests from disturbing other xdist workers - chore: restore telemetry by default - fix(security): bound quadratic array-stream decoding in is_pdf_too_complex (SEC-146) - fix: linear-time inline element merging in HTML partitioning (ML-1713) - fix: fallback character-set detection for file-like objects - feat: add partition...

Update

unstructured 0.25.0

Enhancements - Partition arbitrary JSON and NDJSON: partition_json() and partition_ndjson() now handle any valid JSON/NDJSON payload, not just serialized Unstructured output.

Update
Source ↗

unstructured 0.24.0

- feat: derive category_depth from heading level in the v2 (ontology) HTML parser - fix(ci): stabilize partition benchmark with a rolling-median baseline - refactor: centralize URL fetching with host validation and default timeouts

Update
Source ↗

unstructured 0.23.0

- fix: stop decimating embedded text on dense PDF pages - fix: keep extracted text aligned with rotated PDF page images in hi_res - feat: add enrichment origins metadata field

Update
Source ↗

unstructured 0.22.6

- Reject oversized PDF renders before bitmap allocation - feat(cli): add unstructured doctor diagnostics command - feat: Track the table extraction method

Update
Source ↗

unstructured 0.22.22

Security - Replace PyPI opencv wheels with ffmpeg-free builds in Docker image: After uv sync, the Dockerfile now substitutes all PyPI opencv-python variants with a source-built opencv-contrib-python-headless wheel compiled with WITH_FFMPEG=OFF, eliminating 14 bundled ffmpeg CVEs.

Update
Source ↗

unstructured

- Fix fixtures update CI to regenerate markdown - fix(deps): upgrade vulnerable transitive dependencies [security] - feat: add GHA workflow to build opencv wheels without ffmpeg - Enable vertical text detection for rotated images

Update

unstructured 0.22.16

0.22.16 Enhancements - Formula markdown export (element_to_md / elements_to_md): New keyword-only formula_markdown_style ("auto", "display_math", "plain"; default "auto"). In "auto", display math ($ ... $) is used only when the text looks like notation (heuristic score) and contains no $/$ (avoids breaking Markdown and noisy OCR captions).

Update
Source ↗

unstructured 0.22.10

- fix(chunking): preserve nested table structure in reconstruction - Replace lazyproperty with functools.cached_property - mem: reduce PaddleOCR rec_batch_num from 6 to 1 - fix: isolate Table elements in pre-chunks - feat(chunking): repeat table headers on continuation chunks

Update
Source ↗

unstructured

- feat: add create_file_from_elements() to re-create document files from elements - Bump dependencies - fix: avoid O(N²) re-scanning in _patch_current_chars_with_render_mode - add check if libmagic fails - Adds Form Element - feat: audio speech to text partition - Add a check for complex pdfs - chore: disable fail-build on Anchore container scan - feat...

Update

unstructured

0.21.0 Fixes - Replace NLTK with spaCy to remediate CVE-2025-14009: NLTK's downloader uses zipfile.extractall() without path validation, enabling RCE via malicious packages (CVSS 10.0, no patch available). spaCy models install as pip packages, eliminating the vulnerable downloader entirely.

Update

unstructured 0.20.6

- Automate pypi publishing - fix: remove duplicate characters caused by fake bold rendering in PDFs - Improve fast partition cold start - fix: gracefully handle invalide html string during chunking - fix: remap parent id after hashing

Update
Source ↗

unstructured 0.19.3

- feat: add group_elements_by_parent_id utility function - Preserve newlines in Table and TableChunk elements during PDF partitioning - Fix: make pdf image dpi consistent - chore: bump dependencies for 0.18.34 - feat: increase PIL's max image pixel value for pdf partition - Migrate to uv - Fix ARM64 paddlepaddle image builder bug - Fix Docker ARM64 image...

Update
Source ↗

unstructured 0.18.31

- Feat: patch pdfminer and use rendermode to detect invisible text - fix: add EN DASH to UNICODE_BULLETS for clean_bullets - fix: fix version number - enhancement: render pdfs with pdfium - feat: consider rotated text as low fidelityfeat: consider rotated text - fix: address jaraco CVE - fix: hange default for languages parameter from ["auto"] to None - ⚡️...

Update
Source ↗

unstructured 0.18.28

Enhancement - Optimize clean_extra_whitespace_with_index_run (codeflash) - Optimize recursive_xy_cut_swapped (codeflash) - Optimize _DocxPartitioner._parse_category_depth_by_style_name (codeflash) - Optimize VertexAIEmbeddingEncoder._add_embeddings_to_elements (codeflash) - Optimize ngrams (codeflash) - Optimize stage_for_datasaur (codeflash)

Update
Source ↗

unstructured 0.18.27

0.18.27 Fixes - Comment no-ops in zoom_image (codeflash) - Fix an issue where elements with partially filled extracted text are marked as extracted Enhancement - Optimize sentence_count (codeflash) - Optimize _PartitionerLoader._load_partitioner (codeflash) - Optimize detect_languages (codeflash) - Optimize contains_verb (codeflash) - Optimize...

Update
Source ↗

unstructured 0.18.26

0.18.26 Fixes - Pin deltalake<1.3.0 to fix ARM64 Docker builds (1.3.0 missing Linux ARM64 wheels) 0.18.25 Fixes - Security update: Removed pdfminer.six version constraint and bumped pdfminer.six and urllib3 to address high severity CVEs

Update
Source ↗

unstructured 0.18.24

Enhancement - Optimize OCRAgentTesseract.extract_word_from_hocr (codeflash) Fixes - Security update: Bumped dependencies to address security vulnerabilities

Update
Source ↗

unstructured 0.18.21

0.18.21 Enhancement - Update save_elements unit test to check crop box padding behavior Features Fixes - Update unstructured-inference to 1.1.2 to address CVEs

Update
Source ↗

unstructured 0.18.20

0.18.20 Enhancement - Improve the VoyageAI integration - Add voyage-context-3 support - Flag extracted elements as such in the metadata for downstream use Features Fixes

Update
Source ↗

unstructured 0.18.18

0.18.18 Fixes - Prevent path traversal in email MSG attachment filenames Fixed a security vulnerability (GHSA-gm8q-m8mv-jj5m) where malicious attachment filenames containing path traversal sequences could write files outside the intended directory.

Update
Source ↗
About and activity

Ships unstructured as open source on GitHub.

Releases per month