docling-project / docling-project/docling

Explicitly reexport all attributes meant as public

Open
#614 2 comments 0 reactions 0 assignees View on GitHub
enhancement triage/close-stale
Dominant language
Python
Stars
66.4k
Forks
4.8k
Avg merge
2d 21h
Merged PRs (30d)
84

Description

### Requested feature

Mypy configured strictly complains that some attributes, open for import by your users, [aren't explicitly exported](https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-no-implicit-reexport). This is a quality issue, since it muddies the boundary between public and non-public symbols/attributes.

```
src/app/data/unstructured/document/__init__.py:5: error: Module
"docling.datamodel.document" does not explicitly export attribute
"DoclingDocument" [attr-defined]
from docling.datamodel.document import DoclingDocument, SectionHeaderI...
^
src/app/data/unstructured/document/__init__.py:5: error: Module
"docling.datamodel.document" does not explicitly export attribute
"SectionHeaderItem" [attr-defined]
from docling.datamodel.document import DoclingDocument, SectionHeaderI...
^
src/app/data/unstructured/document/__init__.py:5: error: Module
"docling.datamodel.document" does not explicitly export attribute "TableItem"
[attr-defined]
from docling.datamodel.document import DoclingDocument, SectionHeaderI...
^
src/app/data/unstructured/document/__init__.py:5: error: Module
"docling.datamodel.document" does not explicitly export attribute "TextItem"
[attr-defined]
from docling.datamodel.document import DoclingDocument, SectionHeaderI...
^
src/app/data/unstructured/pipeline/documents/pipeline_documents.py:8: error:
Module "docling.datamodel.document" does not explicitly export attribute
"DoclingDocument" [attr-defined]
from docling.datamodel.document import ConversionResult, DoclingDocume...
```

### Alternatives

Configuring Mypy to be more lax, reducing the benefits of this check. Since the solution is inexpensive and has no downsides, I prefer for it to be solved directly.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.