git: d6e9f0283d7d - main - textproc/py-docling-core: update 2.101.1 → 2.105.0
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 02 Nov 2026 16:41:43 UTC
The branch main has been updated by yuri:
URL: https://cgit.FreeBSD.org/ports/commit/?id=d6e9f0283d7dea875ce02ed1ba741fd8957fb276
commit d6e9f0283d7dea875ce02ed1ba741fd8957fb276
Author: Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-11-01 18:46:34 +0000
Commit: Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-11-02 16:41:34 +0000
textproc/py-docling-core: update 2.101.1 → 2.105.0
---
textproc/py-docling-core/Makefile | 11 ++--
textproc/py-docling-core/distinfo | 6 +-
.../py-docling-core/files/patch-pyproject.toml | 4 +-
.../files/patch-tests_doclang__validation.py | 73 +---------------------
4 files changed, 13 insertions(+), 81 deletions(-)
diff --git a/textproc/py-docling-core/Makefile b/textproc/py-docling-core/Makefile
index 7b866accd1cc..4c4aefcf21d3 100644
--- a/textproc/py-docling-core/Makefile
+++ b/textproc/py-docling-core/Makefile
@@ -1,6 +1,6 @@
PORTNAME= docling-core
DISTVERSIONPREFIX= v
-DISTVERSION= 2.101.1
+DISTVERSION= 2.105.0
CATEGORIES= textproc python
#MASTER_SITES= PYPI # no tests
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}defusedxml>=0.7.1:devel/py-defusedxml@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}doclang>=0.7:textproc/py-doclang@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}doclang>=0.8:textproc/py-doclang@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}jsonref>=1.1.0:devel/py-jsonref@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}jsonschema>=4.16.0:devel/py-jsonschema@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}latex2mathml>=3.77.0:textproc/py-latex2mathml@${PY_FLAVOR} \
@@ -33,10 +33,9 @@ TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gitpython>=0:devel/py-gitpython@${PY_FLAVOR
# optional dependencies are used during normal use of this library
DCLQ_DEPENDS= \
- ${PYTHON_PKGNAMEPREFIX}click>=8.0.0:devel/py-click@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}doclang>=0.7:textproc/py-doclang@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}doclang>=0.8:textproc/py-doclang@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}lxml>=6.0.2:devel/py-lxml@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}typer>=0.15.1:devel/py-typer@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}typer>=0.26.0:devel/py-typer@${PY_FLAVOR}
CHUNKING_DEPENDS= \
${PYTHON_PKGNAMEPREFIX}semchunk>=2.2.0:textproc/py-semchunk@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}transformers>=4.42.0:misc/py-transformers@${PY_FLAVOR} \
@@ -76,6 +75,6 @@ TEST_ARGS= --disable-plugin-autoload --ignore=packages/dclq \
NO_ARCH= yes
-# tests as of 2.101.1: 553 passed, 30 skipped, 1 xfailed, 54 warnings in 17.09s
+# tests as of 2.105.0: 797 passed, 10 skipped, 1 xfailed, 1 warning in 36.82s
.include <bsd.port.mk>
diff --git a/textproc/py-docling-core/distinfo b/textproc/py-docling-core/distinfo
index 1c5ce318f328..f26594aaac38 100644
--- a/textproc/py-docling-core/distinfo
+++ b/textproc/py-docling-core/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1791629779
-SHA256 (docling-project-docling-core-v2.101.1_GH0.tar.gz) = e14d82791bfd7f51cde950929b96934d1a5e68032275c304ef5beb76ca59033a
-SIZE (docling-project-docling-core-v2.101.1_GH0.tar.gz) = 86216156
+TIMESTAMP = 1793412208
+SHA256 (docling-project-docling-core-v2.105.0_GH0.tar.gz) = a9cc6b081d0bb73dc8bcb8644ced61d83582a8a42ef9403d92dea176da8e0e9e
+SIZE (docling-project-docling-core-v2.105.0_GH0.tar.gz) = 86283963
diff --git a/textproc/py-docling-core/files/patch-pyproject.toml b/textproc/py-docling-core/files/patch-pyproject.toml
index 284b11a553a2..22bd03addf15 100644
--- a/textproc/py-docling-core/files/patch-pyproject.toml
+++ b/textproc/py-docling-core/files/patch-pyproject.toml
@@ -1,9 +1,9 @@
-- Fix license declaration format for PEP 621 compatibility and remove license-files path not present in distfile.
---- pyproject.toml.orig 2026-09-04 15:16:51 UTC
+--- pyproject.toml.orig 2026-10-27 16:21:15 UTC
+++ pyproject.toml
@@ -2,8 +2,7 @@ description = "A python library to define and validate
name = "docling-core"
- version = "2.95.0" # DO NOT EDIT, updated automatically
+ version = "2.105.0" # DO NOT EDIT, updated automatically
description = "A python library to define and validate data types in Docling."
-license = "MIT"
-license-files = ["LICENSE"]
diff --git a/textproc/py-docling-core/files/patch-tests_doclang__validation.py b/textproc/py-docling-core/files/patch-tests_doclang__validation.py
index b30ab853d398..6dfa43aaa736 100644
--- a/textproc/py-docling-core/files/patch-tests_doclang__validation.py
+++ b/textproc/py-docling-core/files/patch-tests_doclang__validation.py
@@ -1,49 +1,10 @@
-- Make DocLang XML validation a no-op/skip when the optional saxonche schematron
-- backend is not available. This backend is not packaged for FreeBSD yet.
---- tests/doclang_validation.py.orig 2026-10-01 04:16:39 UTC
+--- tests/doclang_validation.py.orig 2026-10-31 02:04:43 UTC
+++ tests/doclang_validation.py
-@@ -16,15 +16,25 @@ except ImportError:
- doclang_validate = None # type: ignore[assignment,misc]
- ValidationError = Exception # type: ignore[misc,assignment]
-
-+try:
-+ import saxonche
-+except ImportError:
-+ saxonche = None # type: ignore[assignment,misc]
-
-+try:
-+ from doclang.schematron import SchematronBackendNotFound
-+except ImportError:
-+ SchematronBackendNotFound = None # type: ignore[assignment,misc]
-+
-+
- def doclang_validator_available() -> bool:
-- """Return True when the reference ``doclang`` package is importable."""
-- return doclang_validate is not None
-+ """Return True when doclang and its schematron backend are available."""
-+ return doclang_validate is not None and saxonche is not None
-
-
- doclang_validator = pytest.mark.skipif(
- not doclang_validator_available(),
-- reason="reference doclang package not installed (uv sync --extra doclang-validation)",
-+ reason="doclang/schematron-saxon backend not installed (uv sync --extra doclang-validation)",
+@@ -76,6 +76,14 @@ xfail_invalid_dclg_xml = pytest.mark.xfail(
)
- xfail_invalid_dclg_xml = pytest.mark.xfail(
-@@ -52,18 +62,31 @@ def assert_valid_dclg_xml(
- path = tmp.name
- try:
- doclang_validate(path, allow_empty_namespace=allow_empty_namespace)
-+ except Exception as exc:
-+ if SchematronBackendNotFound is not None and isinstance(
-+ exc, SchematronBackendNotFound
-+ ):
-+ return
-+ raise
- finally:
- os.unlink(path)
-
+def _skip_if_backend_missing() -> None:
+ """Skip the current test when the doclang schematron backend is unavailable."""
@@ -53,34 +14,6 @@
+ pytest.skip("doclang/schematron-saxon backend not installed")
+
+
- def validate_dclg_xml(
+ def assert_valid_dclg_xml(
xml_text: str,
*,
- allow_empty_namespace: bool = True,
- ) -> None:
- """Validate DocLang XML text; raises on failure when validator is available."""
-- if doclang_validate is None:
-- pytest.skip("reference doclang package not installed")
-+ _skip_if_backend_missing()
-
- with tempfile.NamedTemporaryFile(
- mode="w",
-@@ -86,8 +109,7 @@ def validate_dclg_file(
- allow_empty_namespace: bool = True,
- ) -> None:
- """Validate a DocLang XML file path."""
-- if doclang_validate is None:
-- pytest.skip("reference doclang package not installed")
-+ _skip_if_backend_missing()
- doclang_validate(Path(path), allow_empty_namespace=allow_empty_namespace)
-
-
-@@ -97,7 +119,6 @@ def assert_invalid_dclg_xml(
- allow_empty_namespace: bool = True,
- ) -> None:
- """Assert DocLang XML is rejected by the reference validator (known bad output)."""
-- if doclang_validate is None:
-- pytest.skip("reference doclang package not installed")
-+ _skip_if_backend_missing()
- with pytest.raises(ValidationError):
- validate_dclg_xml(xml_text, allow_empty_namespace=allow_empty_namespace)