Visitar URL original
Releases · weblyzard/inscriptis · GitHub
Skip to content

Releases: weblyzard/inscriptis

Improvements and Bug Fixes

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 23 Oct 19:53

This release includes improvements to HTML fragment handling, fixes a memory growth issue when processing tables, and adds support for Python 3.15.

Fixes

  • Fixed excessive memory growth when processing HTML containing multiple sibling <table> elements. See GHSA-q87h-c5m7-659j for details.
  • Fixed HTML fragment handling to prevent synthetic wrapper elements from introducing unwanted spaces or indentation into extracted text.
  • Fixed test failures on Windows by explicitly specifying file encodings.

Compatibility

  • Added support for Python 3.15.
  • Deprecated Python 3.10.

Maintenance

  • Updated the GitHub CodeQL Actions dependency.

Credits

Many thanks to @gistrec for identifying and fixing the table-related memory growth issue, and to @OsamaAnsar for improving HTML fragment handling and reporting the Windows-related test issue.

Users of inscriptis 2.0.0–2.7.5 are encouraged to upgrade to benefit from the table-processing fix.

Prevent unbounded allocation from CSS lengths

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 29 Sep 17:53

Fixes a denial-of-service issue where excessively large CSS length values in HTML style attributes could cause get_text() or get_annotated_text() to perform an unbounded string allocation (GHSA-4wxf-43cv-cfxx).

Thanks to @NotAFlightRisk for reporting this issue.

Table annotation fixes, performance improvements and CLI enhancements

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 10 Aug 16:40
  • Integrate a bufix contributed by @jimbofreedman that fixes #121 (Annotations in vertically padded table cells are misplaced, or raise IndexError)
  • improved performance of Table.get_annotation.
  • enhanced TableCell class semantics.
  • set default HTTP user-agent in the inscript CLI client and support custom user-agent strings via the --user-agent option.
  • improved reporting of benchmark results.

Minor bugfixes and typchecking improvements

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 23 Jul 09:06
  • Integrated the following bugfixes contributed by @santhreal
    • Fix: Single-line table cell annotations ignore center/right align (#117)
    • Fix: HtmlExtractor trailing newlines emit broken (#118)
  • Improved typechecking via ty
  • Use python:3.14-slim in docker images.
  • Updated CI-Pipeline

Improved inscriptis compatibility, docker image and CI pipeline

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 18 Jun 08:55
  • Removed upper bound on the Python version in accordance with the corresponding Python Packaging Guidelines (Fixes #112)
  • Relaxed lxml upper version to < 6.2.0 (Fixes #111)
  • Upgrade docker image to python 3.13-slim-bullseye (#110)
  • Updated CI pipeline (#106, #107, #108, #109)
  • Removed redundant COM rule in pyproject.toml.

Support for lxml 6.0.x and improved CI

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 27 Feb 19:36
  • fixed dependencies to support python-lxml 6.0.x #102
  • added Python 3.14 to the CI workflow (i.e., all inscriptis versions are now also tested with Python 3.14)
  • minor code style improvement for ruff 0.15.x

Support for list "value" attributes, Python 3.14 and modernized CI/CD pipeline

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 18 Nov 12:29
  • Added support for the value attribute in enumerations (fixes #98)
  • Python 3.14 support
  • modernized CI/CD pipeline
    • replace tox with ruff for faster static code analysis
    • added additional checks
    • updated development dependencies
  • removed Python 3.9 support due to EOL
  • optimizations, improved code formatting, and enhanced consistency across the codebase.

Improved Annotation Postprocessors

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 22 Mar 18:50
2ef7e3b
  • Improved both the HTML and XML Annotation postprocessors.
  • Fixed #94 (XML tags are now closed in the correct order).
  • Breaking change:
    • the XmlAnnotationProcessor now uses a mandatory root element to ensure that the create XML is valid.
    • Impact:
      1. The created XML will contain a <content> root element, which contains all annotations.
      2. The name of the root element can be overwritten, if the optional root_element parameter is provided to the annotation processor call.
  • Documentation fixes.
  • Updated dependencies and added pytest as a build dependency.

Allow for newer requests versions.

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 16 Jan 13:14

This is a maintenance release which fixes a regression in the package dependencies introduced in 2.5.1.

  • merged #91 to allow for newer requests versions.

Python 3.13 support

Choose a tag to compare

@AlbertWeichselbraun AlbertWeichselbraun released this 07 Jan 15:15
2b30c70
  • added Python 3.13 to the build pipeline.
  • deprecated Python 3.8.
  • updated dependencies.
  • minor optimizations in the attribute handling.