extract-python 0.10.4__tar.gz → 0.11.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {extract_python-0.10.4 → extract_python-0.11.0}/PKG-INFO +3 -1
- {extract_python-0.10.4 → extract_python-0.11.0}/extract_python/__init__.py +3 -3
- extract_python-0.11.0/extract_python/__main__.py +9 -0
- extract_python-0.11.0/extract_python/cli/__init__.py +50 -0
- extract_python-0.11.0/extract_python/cli/doc.py +78 -0
- extract_python-0.11.0/extract_python/cli/utils.py +25 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/extract_python/docling_.py +1 -2
- {extract_python-0.10.4 → extract_python-0.11.0}/pyproject.toml +7 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/uv.lock +27 -23
- {extract_python-0.10.4 → extract_python-0.11.0}/.gitignore +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/.python-version +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/README.md +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/benches/__init__.py +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/benches/compare.ipynb +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/benches/compare.py +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/benches/constants.py +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/data/.gitignore +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/extract_python/constants.py +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/extract_python/marker_.py +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/extract_python/miner_u.py +0 -0
- {extract_python-0.10.4 → extract_python-0.11.0}/extract_python/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: extract-python
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.11.0
|
|
4
4
|
Summary: Structured content extraction
|
|
5
5
|
Project-URL: Homepage, https://github.com/ICIJ/extract-python
|
|
6
6
|
Project-URL: Repository, https://github.com/ICIJ/extract-python
|
|
@@ -15,6 +15,8 @@ Requires-Dist: html2image~=2.0.7; extra == 'benches'
|
|
|
15
15
|
Requires-Dist: markdown2>=2.5.4; extra == 'benches'
|
|
16
16
|
Requires-Dist: notebook>=7.4.5; extra == 'benches'
|
|
17
17
|
Requires-Dist: pypdfium2>=4.30.0; extra == 'benches'
|
|
18
|
+
Provides-Extra: cli
|
|
19
|
+
Requires-Dist: typer~=0.21.2; extra == 'cli'
|
|
18
20
|
Provides-Extra: docling
|
|
19
21
|
Requires-Dist: docling-slim[feat-ocr-easyocr,feat-ocr-mac,feat-ocr-rapidocr,feat-ocr-tesserocr,standard]~=2.127; extra == 'docling'
|
|
20
22
|
Provides-Extra: docling-gpu
|
|
@@ -5,20 +5,20 @@ logger = logging.getLogger(__name__)
|
|
|
5
5
|
try:
|
|
6
6
|
from .docling_ import DOCLING_DEFAULT_ARTIFACTS_PATH, DoclingPipeline
|
|
7
7
|
except ModuleNotFoundError:
|
|
8
|
-
logger.
|
|
8
|
+
logger.warning("docling is not available, might be optional...")
|
|
9
9
|
DOCKING_DEFAULT_ARTIFACTS_PATH, DoclingPipeline = None, None
|
|
10
10
|
|
|
11
11
|
try:
|
|
12
12
|
from .marker_ import MarkerPipeline
|
|
13
13
|
except ModuleNotFoundError:
|
|
14
|
-
logger.
|
|
14
|
+
logger.warning("marker is not available, might be optional...")
|
|
15
15
|
MarkerPipeline = None
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
try:
|
|
19
19
|
from .miner_u import MinerUPipeline
|
|
20
20
|
except ModuleNotFoundError:
|
|
21
|
-
logger.
|
|
21
|
+
logger.warning("mineru is not available, might be optional...")
|
|
22
22
|
MinerUPipeline = None
|
|
23
23
|
|
|
24
24
|
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import importlib
|
|
2
|
+
import logging
|
|
3
|
+
import os
|
|
4
|
+
from typing import Annotated
|
|
5
|
+
|
|
6
|
+
import typer
|
|
7
|
+
from icij_common.logging_utils import setup_loggers
|
|
8
|
+
|
|
9
|
+
import extract_python
|
|
10
|
+
|
|
11
|
+
from .doc import configs_app
|
|
12
|
+
from .utils import AsyncTyper
|
|
13
|
+
|
|
14
|
+
cli_app = AsyncTyper(
|
|
15
|
+
context_settings={"help_option_names": ["-h", "--help"]},
|
|
16
|
+
pretty_exceptions_enable=False,
|
|
17
|
+
)
|
|
18
|
+
cli_app.add_typer(configs_app)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def version_callback(value: bool) -> None: # noqa: FBT001
|
|
22
|
+
if value:
|
|
23
|
+
package_version = importlib.metadata.version(extract_python.__name__)
|
|
24
|
+
print(package_version)
|
|
25
|
+
raise typer.Exit()
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def pretty_exc_callback(value: bool) -> None: # noqa: FBT001
|
|
29
|
+
if not value:
|
|
30
|
+
os.environ["TYPER_STANDARD_TRACEBACK"] = "1"
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
@cli_app.callback()
|
|
34
|
+
def main(
|
|
35
|
+
version: Annotated[ # noqa: ARG001
|
|
36
|
+
bool | None,
|
|
37
|
+
typer.Option("--version", callback=version_callback, is_eager=True),
|
|
38
|
+
] = None,
|
|
39
|
+
*,
|
|
40
|
+
pretty_exceptions: Annotated[ # noqa: ARG001
|
|
41
|
+
bool,
|
|
42
|
+
typer.Option(
|
|
43
|
+
"--pretty-exceptions", callback=pretty_exc_callback, is_eager=True
|
|
44
|
+
),
|
|
45
|
+
] = False,
|
|
46
|
+
) -> None:
|
|
47
|
+
setup_loggers(
|
|
48
|
+
["__main__", extract_python.__name__, "docling", "mineru", "marker"],
|
|
49
|
+
level=logging.DEBUG,
|
|
50
|
+
)
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
import os
|
|
3
|
+
from pathlib import Path
|
|
4
|
+
from typing import Annotated, Never
|
|
5
|
+
|
|
6
|
+
import typer
|
|
7
|
+
from extract_core import (
|
|
8
|
+
Device,
|
|
9
|
+
InputDoc,
|
|
10
|
+
OutputFormat,
|
|
11
|
+
Pipeline,
|
|
12
|
+
PipelineConfig,
|
|
13
|
+
PipelineSize,
|
|
14
|
+
PipelineType,
|
|
15
|
+
)
|
|
16
|
+
from extract_core.default_config import default_config
|
|
17
|
+
from pydantic import TypeAdapter
|
|
18
|
+
|
|
19
|
+
from .utils import AsyncTyper
|
|
20
|
+
|
|
21
|
+
logger = logging.getLogger(__name__)
|
|
22
|
+
|
|
23
|
+
_DOC = "doc"
|
|
24
|
+
|
|
25
|
+
_DOC_CONVERT_HELP = "Converts documents to the provided output format"
|
|
26
|
+
_DOC_CONVERT_DOCS_HELP = "input documents (can be file or directories)"
|
|
27
|
+
_DOC_CONVERT_OUTPUT_PATH_HELP = "directory where the converted documents will be saved"
|
|
28
|
+
_DOC_CONVERT_DEVICE_HELP = "device used to run inference"
|
|
29
|
+
_DOC_CONVERT_OUTPUT_FMT_HELP = "output format"
|
|
30
|
+
_DOC_CONVERT_PIPELINE_CONFIG = "path to a JSON pipeline configuration"
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
configs_app = AsyncTyper(name=_DOC)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
@configs_app.async_command(help=_DOC_CONVERT_HELP)
|
|
37
|
+
async def convert(
|
|
38
|
+
docs: Annotated[list[Path], typer.Argument(help=_DOC_CONVERT_DOCS_HELP)],
|
|
39
|
+
output_path: Annotated[Path, typer.Argument(help=_DOC_CONVERT_OUTPUT_PATH_HELP)],
|
|
40
|
+
output_format: Annotated[
|
|
41
|
+
OutputFormat, typer.Option(help=_DOC_CONVERT_OUTPUT_FMT_HELP)
|
|
42
|
+
] = OutputFormat.MARKDOWN,
|
|
43
|
+
config: Annotated[
|
|
44
|
+
Path | None,
|
|
45
|
+
typer.Option("-c", "--config", help=_DOC_CONVERT_PIPELINE_CONFIG),
|
|
46
|
+
] = None,
|
|
47
|
+
) -> None:
|
|
48
|
+
if config is not None:
|
|
49
|
+
config = TypeAdapter(PipelineConfig).validate_json(config.read_text())
|
|
50
|
+
else:
|
|
51
|
+
config = default_config(
|
|
52
|
+
pipeline_type=PipelineType.DOCLING,
|
|
53
|
+
device=Device.CPU,
|
|
54
|
+
size=PipelineSize.SMALL,
|
|
55
|
+
)
|
|
56
|
+
config = config.to_device()
|
|
57
|
+
docs = [InputDoc.from_path(d, n_pages=1) for p in docs for d in _walkdir(p)]
|
|
58
|
+
pipeline = Pipeline.from_config(config)
|
|
59
|
+
output_paths = []
|
|
60
|
+
async for res in pipeline.extract_content(docs, output_format, output_path):
|
|
61
|
+
output_path = res.output.path
|
|
62
|
+
logger.info("converted %s to %s", res.input.path, output_path / output_path)
|
|
63
|
+
output_paths.append(output_path / output_path)
|
|
64
|
+
print("\n".join(output_paths))
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def _raise(exc: OSError) -> Never:
|
|
68
|
+
raise exc
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def _walkdir(path: Path) -> list[Path]:
|
|
72
|
+
if path.is_file():
|
|
73
|
+
return [path]
|
|
74
|
+
paths = []
|
|
75
|
+
for root, _, files in os.walk(path, onerror=_raise):
|
|
76
|
+
root = Path(root) # noqa: PLW2901
|
|
77
|
+
paths.extend(root / f for f in files)
|
|
78
|
+
return paths
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import asyncio
|
|
2
|
+
import sys
|
|
3
|
+
from collections.abc import Callable
|
|
4
|
+
from functools import wraps
|
|
5
|
+
from typing import Any
|
|
6
|
+
|
|
7
|
+
import typer
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class AsyncTyper(typer.Typer):
|
|
11
|
+
def async_command(self, *args, **kwargs) -> Callable[[Callable], Callable]:
|
|
12
|
+
def decorator(async_func: Callable) -> Callable:
|
|
13
|
+
@wraps(async_func)
|
|
14
|
+
def sync_func(*_args, **_kwargs) -> Any:
|
|
15
|
+
res = asyncio.run(async_func(*_args, **_kwargs))
|
|
16
|
+
return res
|
|
17
|
+
|
|
18
|
+
self.command(*args, **kwargs)(sync_func)
|
|
19
|
+
return async_func
|
|
20
|
+
|
|
21
|
+
return decorator
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
def eprint(*args, **kwargs) -> None:
|
|
25
|
+
print(*args, file=sys.stderr, **kwargs)
|
|
@@ -59,8 +59,7 @@ class DoclingPipeline(Pipeline):
|
|
|
59
59
|
def __init__(self, config: DoclingPipelineConfig):
|
|
60
60
|
super().__init__(config)
|
|
61
61
|
format_options = {
|
|
62
|
-
k: v.to_docling(self.
|
|
63
|
-
for k, v in self._config.format_options.items()
|
|
62
|
+
k: v.to_docling() for k, v in self._config.format_options.items()
|
|
64
63
|
}
|
|
65
64
|
logger.info(
|
|
66
65
|
"resolved format options to: %s",
|
|
@@ -14,6 +14,10 @@ dependencies = [
|
|
|
14
14
|
]
|
|
15
15
|
|
|
16
16
|
[project.optional-dependencies]
|
|
17
|
+
cli = [
|
|
18
|
+
"typer~=0.21.2",
|
|
19
|
+
]
|
|
20
|
+
|
|
17
21
|
benches = [
|
|
18
22
|
"html2image~=2.0.7",
|
|
19
23
|
"markdown2>=2.5.4",
|
|
@@ -58,6 +62,9 @@ override-dependencies = [
|
|
|
58
62
|
"pillow==11.3.0",
|
|
59
63
|
]
|
|
60
64
|
|
|
65
|
+
[project.scripts]
|
|
66
|
+
extract_python = "extract_python.__main__:main"
|
|
67
|
+
|
|
61
68
|
[[tool.uv.index]]
|
|
62
69
|
name = "pytorch-cpu"
|
|
63
70
|
url = "https://download.pytorch.org/whl/cpu"
|
|
@@ -691,7 +691,7 @@ wheels = [
|
|
|
691
691
|
|
|
692
692
|
[[package]]
|
|
693
693
|
name = "docling-core"
|
|
694
|
-
version = "2.
|
|
694
|
+
version = "2.100.0"
|
|
695
695
|
source = { registry = "https://pypi.org/simple" }
|
|
696
696
|
dependencies = [
|
|
697
697
|
{ name = "defusedxml" },
|
|
@@ -709,9 +709,9 @@ dependencies = [
|
|
|
709
709
|
{ name = "typer" },
|
|
710
710
|
{ name = "typing-extensions" },
|
|
711
711
|
]
|
|
712
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
712
|
+
sdist = { url = "https://files.pythonhosted.org/packages/4d/f7/5fe0635e3a3251d08eb4a30dffd02414b6614986431a671c5a4352fcf90f/docling_core-2.100.0.tar.gz", hash = "sha256:87a4f7318d774194364a3ac6c1e6b1df0517f28c7ac395d92aa3535eb3e5c446", size = 404111, upload-time = "2026-10-06T12:14:49.988Z" }
|
|
713
713
|
wheels = [
|
|
714
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
714
|
+
{ url = "https://files.pythonhosted.org/packages/19/4c/9d319f71922af600271cb6e36b15bae0969444182d55361c39b566e29ab7/docling_core-2.100.0-py3-none-any.whl", hash = "sha256:4cb57c4ccb5740e83e5e63d2215201711125e3603115bc720b099bcc49d09029", size = 316004, upload-time = "2026-10-06T12:14:48.161Z" },
|
|
715
715
|
]
|
|
716
716
|
|
|
717
717
|
[package.optional-dependencies]
|
|
@@ -752,7 +752,7 @@ wheels = [
|
|
|
752
752
|
|
|
753
753
|
[[package]]
|
|
754
754
|
name = "docling-parse"
|
|
755
|
-
version = "7.
|
|
755
|
+
version = "7.22.2"
|
|
756
756
|
source = { registry = "https://pypi.org/simple" }
|
|
757
757
|
dependencies = [
|
|
758
758
|
{ name = "docling-core" },
|
|
@@ -760,23 +760,23 @@ dependencies = [
|
|
|
760
760
|
{ name = "pydantic" },
|
|
761
761
|
{ name = "pywin32", marker = "sys_platform == 'win32' or (extra == 'extra-14-extract-python-marker' and extra == 'extra-14-extract-python-mineru')" },
|
|
762
762
|
]
|
|
763
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
763
|
+
sdist = { url = "https://files.pythonhosted.org/packages/bc/19/4036a3e844a6385b720b40f9c44d6ab4b6733707dd698dcfec3beda0a48d/docling_parse-7.22.2.tar.gz", hash = "sha256:368d076d2b887fcb44a90c37c219a190b975f01b257b61bd83ba75dc06861536", size = 7045499, upload-time = "2026-10-05T07:23:55.9Z" }
|
|
764
764
|
wheels = [
|
|
765
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
766
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
767
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
768
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
769
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
770
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
771
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
772
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
773
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
774
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
765
|
+
{ url = "https://files.pythonhosted.org/packages/d2/61/05b5d2fbc5dcb3023aa980daaebfaa03dd2447e21271668cd6b3058552c2/docling_parse-7.22.2-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:53156ac7c1e389857f23b118f8cd59331d3a215be94f9f9ce9ae3145e4125759", size = 9878343, upload-time = "2026-10-05T07:23:28.238Z" },
|
|
766
|
+
{ url = "https://files.pythonhosted.org/packages/b9/d1/538efc18c43a0c6e678e6dea7c14d0599a14a0d6c8fc3b192bd6d6a92f6d/docling_parse-7.22.2-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f8eb209efd837d7ba055bc582ae0aa978e32b6fa9851fb39632a1c303f2b0693", size = 10437835, upload-time = "2026-10-05T07:23:30.77Z" },
|
|
767
|
+
{ url = "https://files.pythonhosted.org/packages/5a/3f/c004e1eef07e24059130e9fe97ac5870c11a187162f1f7eb93e9c20c3a75/docling_parse-7.22.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:73265a552c3f28bee591a8ca1e0dc38b51ee17f5051a626aef2fb625ee81f305", size = 10842974, upload-time = "2026-10-05T07:23:33.225Z" },
|
|
768
|
+
{ url = "https://files.pythonhosted.org/packages/65/a0/8943af36a45726fe5b59c0ed213ef260ed0111309547d5b01b9820dcd5bf/docling_parse-7.22.2-cp313-cp313-win_amd64.whl", hash = "sha256:5a1433aceca0b1be834a79b6a7bddd89681426b8c1b06725aebe7740583d38a3", size = 11886875, upload-time = "2026-10-05T07:23:35.722Z" },
|
|
769
|
+
{ url = "https://files.pythonhosted.org/packages/08/44/5d44f7ca3801fbcc5e0f6e51d92cb85a6952873203ecf56227503fb53f6a/docling_parse-7.22.2-cp313-cp313-win_arm64.whl", hash = "sha256:e23c55d856d0124634b42d8b63a879ecb1056769a3b38cb6ea186e03d20c0421", size = 9274980, upload-time = "2026-10-05T07:23:38.454Z" },
|
|
770
|
+
{ url = "https://files.pythonhosted.org/packages/1f/71/75b2492ea7de1dea7b23405d8afbbf6be44e194857fad328c400dbcc9ef4/docling_parse-7.22.2-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:9a003356d71578a56718abd343baf5c6d745ea7d7e988ca524b3af5bbd35760d", size = 9878449, upload-time = "2026-10-05T07:23:41.387Z" },
|
|
771
|
+
{ url = "https://files.pythonhosted.org/packages/65/e4/82e930b4f534f77dc70871d3b5f7cc4672fa6b89320d14bcad95a6ae3a72/docling_parse-7.22.2-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7699b216003ef5759ee4fa61bc7a403a6ce63afcbbf316cd17e4562d5b306e8b", size = 10439277, upload-time = "2026-10-05T07:23:44.53Z" },
|
|
772
|
+
{ url = "https://files.pythonhosted.org/packages/f1/b2/6161ee6ab8e519177451620976abd1a002dbe1bdc98d4f8cddd7c49f68f4/docling_parse-7.22.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a6a5aa4e0c0f62c4e0032c24117410d5773dbc303da5b4a282ff5abf9f491391", size = 10843921, upload-time = "2026-10-05T07:23:47.72Z" },
|
|
773
|
+
{ url = "https://files.pythonhosted.org/packages/28/52/3593b031a4319379f9850dd3e8bc76adbcc62d7533f0741e6e3257d77d9c/docling_parse-7.22.2-cp314-cp314-win_amd64.whl", hash = "sha256:4bca9aeefa92896a12eb96e8858adc6b3adbd34c457095e5be68db84c6bb8c56", size = 12324184, upload-time = "2026-10-05T07:23:50.939Z" },
|
|
774
|
+
{ url = "https://files.pythonhosted.org/packages/79/ec/c439cced7ed74407b0fd70d48e4de19b7a8e0da88f786b95bfb0af10c77f/docling_parse-7.22.2-cp314-cp314-win_arm64.whl", hash = "sha256:6bfff00d2577f288e037069bbf5087bcf01305f6b78b9432d599c6ffe03557a2", size = 9652594, upload-time = "2026-10-05T07:23:53.627Z" },
|
|
775
775
|
]
|
|
776
776
|
|
|
777
777
|
[[package]]
|
|
778
778
|
name = "docling-slim"
|
|
779
|
-
version = "2.
|
|
779
|
+
version = "2.134.0"
|
|
780
780
|
source = { registry = "https://pypi.org/simple" }
|
|
781
781
|
dependencies = [
|
|
782
782
|
{ name = "certifi" },
|
|
@@ -789,9 +789,9 @@ dependencies = [
|
|
|
789
789
|
{ name = "requests" },
|
|
790
790
|
{ name = "tqdm" },
|
|
791
791
|
]
|
|
792
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
792
|
+
sdist = { url = "https://files.pythonhosted.org/packages/7b/75/ee898b4b7a310c187d0d7ad89002b000efeead0af177f9e50f71554b194b/docling_slim-2.134.0.tar.gz", hash = "sha256:63f12c79bdd0bbe205f244f97f0a8640c590ea46de4d913d23e963ec57e531dd", size = 795345, upload-time = "2026-10-06T04:57:33.257Z" }
|
|
793
793
|
wheels = [
|
|
794
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
794
|
+
{ url = "https://files.pythonhosted.org/packages/cd/58/526bc8f7c7f46dc22afa6f548c67e0bd685cf5f97faf7ee3d96c26355732/docling_slim-2.134.0-py3-none-any.whl", hash = "sha256:818b350e1e9878c0d54bd4ff972bd1918cc9827f193257162cc6f3a797175c29", size = 974718, upload-time = "2026-10-06T04:57:31.022Z" },
|
|
795
795
|
]
|
|
796
796
|
|
|
797
797
|
[package.optional-dependencies]
|
|
@@ -964,7 +964,7 @@ dependencies = [
|
|
|
964
964
|
|
|
965
965
|
[package.metadata]
|
|
966
966
|
requires-dist = [
|
|
967
|
-
{ name = "docling-slim", specifier = "~=2.
|
|
967
|
+
{ name = "docling-slim", specifier = "~=2.134" },
|
|
968
968
|
{ name = "icij-common", specifier = "~=0.8.2" },
|
|
969
969
|
{ name = "pydantic", specifier = "~=2.13" },
|
|
970
970
|
{ name = "pydantic-extra-types", extras = ["pycountry"], specifier = "~=2.11.1" },
|
|
@@ -1003,6 +1003,9 @@ benches = [
|
|
|
1003
1003
|
{ name = "pypdfium2", version = "4.30.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-14-extract-python-marker'" },
|
|
1004
1004
|
{ name = "pypdfium2", version = "5.13.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-14-extract-python-mineru' or extra != 'extra-14-extract-python-marker'" },
|
|
1005
1005
|
]
|
|
1006
|
+
cli = [
|
|
1007
|
+
{ name = "typer" },
|
|
1008
|
+
]
|
|
1006
1009
|
docling = [
|
|
1007
1010
|
{ name = "docling-slim", extra = ["feat-ocr-easyocr", "feat-ocr-mac", "feat-ocr-rapidocr", "feat-ocr-tesserocr", "standard"] },
|
|
1008
1011
|
]
|
|
@@ -1046,8 +1049,9 @@ requires-dist = [
|
|
|
1046
1049
|
{ name = "pypdfium2", marker = "extra == 'benches'", specifier = ">=4.30.0" },
|
|
1047
1050
|
{ name = "python-pptx", marker = "extra == 'mineru'", specifier = "~=1.0" },
|
|
1048
1051
|
{ name = "six", marker = "extra == 'mineru'", specifier = "~=1.17" },
|
|
1052
|
+
{ name = "typer", marker = "extra == 'cli'", specifier = "~=0.21.2" },
|
|
1049
1053
|
]
|
|
1050
|
-
provides-extras = ["benches", "docling", "docling-gpu", "marker", "mineru"]
|
|
1054
|
+
provides-extras = ["benches", "cli", "docling", "docling-gpu", "marker", "mineru"]
|
|
1051
1055
|
|
|
1052
1056
|
[package.metadata.requires-dev]
|
|
1053
1057
|
dev = [
|
|
@@ -5186,7 +5190,7 @@ wheels = [
|
|
|
5186
5190
|
|
|
5187
5191
|
[[package]]
|
|
5188
5192
|
name = "typer"
|
|
5189
|
-
version = "0.
|
|
5193
|
+
version = "0.21.2"
|
|
5190
5194
|
source = { registry = "https://pypi.org/simple" }
|
|
5191
5195
|
dependencies = [
|
|
5192
5196
|
{ name = "annotated-doc" },
|
|
@@ -5194,9 +5198,9 @@ dependencies = [
|
|
|
5194
5198
|
{ name = "rich" },
|
|
5195
5199
|
{ name = "shellingham" },
|
|
5196
5200
|
]
|
|
5197
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
5201
|
+
sdist = { url = "https://files.pythonhosted.org/packages/f2/1e/a27cc02a0cd715118c71fa2aef2c687fdefc3c28d90fd0dd789c5118154c/typer-0.21.2.tar.gz", hash = "sha256:1abd95a3b675e17ff61b0838ac637fe9478d446d62ad17fa4bb81ea57cc54028", size = 120426, upload-time = "2026-02-10T19:33:46.182Z" }
|
|
5198
5202
|
wheels = [
|
|
5199
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
5203
|
+
{ url = "https://files.pythonhosted.org/packages/b8/cc/d59f893fbdfb5f58770c05febfc4086a46875f1084453621c35605cec946/typer-0.21.2-py3-none-any.whl", hash = "sha256:c3d8de54d00347ef90b82131ca946274f017cffb46683ae3883c360fa958f55c", size = 56728, upload-time = "2026-02-10T19:33:48.01Z" },
|
|
5200
5204
|
]
|
|
5201
5205
|
|
|
5202
5206
|
[[package]]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|