docs(readme): one file-type table, not two
`### Binary extraction` carried its own six-row Format/Reader/Evidence table over the same rows the pinned table now holds. It was true when written and reachable by exactly the failure this module exists for: three evidence classes copied into prose no test reads. That section now points at the pinned table and keeps its prose about the extra. A fifth assertion in `tests/test_docs_promises.py` holds the duplicate gone. Known-positive: the same query finds 8 table lines in that section on the previous commit, so it can go red. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
2d3c2707c7
commit
d310dbb34e
3 changed files with 26 additions and 11 deletions
10
CHANGELOG.md
10
CHANGELOG.md
|
|
@ -21,9 +21,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
is absent (`.doc`, `.epub`, `.eml`/`.msg`, image files, source files,
|
||||
`.one`/`.vsd`) as facts rather than as a queue. Four new assertions in
|
||||
`tests/test_docs_promises.py` pin the table's row set, its evidence cells and
|
||||
its core/extra split to the registry, and the opening to the table. No change
|
||||
to `extract.py`: nothing about what is read moved, only what the README says
|
||||
about it.
|
||||
its core/extra split to the registry, and the opening to the table. The
|
||||
six-row Format/Reader/Evidence table that `### Binary extraction` carried is
|
||||
gone with them: it duplicated three evidence classes in prose no test read,
|
||||
and that section now points at the pinned table. A fifth assertion holds it
|
||||
gone -- the same query finds 8 table lines in that section before the change.
|
||||
No change to `extract.py`: nothing about what is read moved, only what the
|
||||
README says about it.
|
||||
|
||||
## [0.8.5] — 2026-09-12
|
||||
|
||||
|
|
|
|||
13
README.md
13
README.md
|
|
@ -1057,14 +1057,11 @@ rather than found on `PATH`, with its version asserted against a pin. A host
|
|||
carrying a different converter is refused, not silently used: extraction is
|
||||
deterministic within a converter version and not across one.
|
||||
|
||||
| Format | Reader | Evidence |
|
||||
|---|---|---|
|
||||
| `pdf` | `pdfplumber` | measured |
|
||||
| `docx` | converter | measured |
|
||||
| `xlsx` | converter | measured |
|
||||
| `pptx` | converter | **constructed** |
|
||||
| `odt` | converter | **constructed** |
|
||||
| `rtf` | converter | **constructed** |
|
||||
These six rows have their reader and their evidence class in the one table
|
||||
this README carries: [Supported file types](#supported-file-types), which is
|
||||
pinned to the extraction registry cell by cell. A second table here would be a
|
||||
copy nothing checks, and a copy of an evidence class is exactly the thing that
|
||||
goes false quietly.
|
||||
|
||||
**`constructed` means what it says, and it is a weaker word than `measured`
|
||||
on purpose.** The corpus this work was measured on contains **zero** `pptx`,
|
||||
|
|
|
|||
|
|
@ -193,3 +193,17 @@ def test_the_readme_opening_does_not_name_five_of_thirteen() -> None:
|
|||
every = set(_CORE_EXTRACTORS) | set(_OPTIONAL_EXTRACTORS)
|
||||
named = {s for s in every if re.search(rf"\b{s.lstrip('.')}\b", intro, re.IGNORECASE)}
|
||||
assert named == every, f"the opening names {sorted(named)}, not all of {sorted(every)}"
|
||||
|
||||
|
||||
def test_the_readme_carries_only_one_file_type_table() -> None:
|
||||
"""A second table over the same rows is a copy nothing checks.
|
||||
|
||||
`### Binary extraction` carried its own six-row Format/Reader/Evidence
|
||||
table until 2026-09-12. It was true when written, and it was reachable by
|
||||
exactly the failure this module exists for: an evidence class copied into
|
||||
prose that no test reads. Its rows now live in the pinned table alone.
|
||||
"""
|
||||
text = README.read_text(encoding="utf-8")
|
||||
section = text.split("### Binary extraction", 1)[1].split("\n## ", 1)[0]
|
||||
rows = [line for line in section.splitlines() if line.strip().startswith("|")]
|
||||
assert not rows, f"a second file-type table is back under Binary extraction: {rows}"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue