From 325e5af5f5e16bd92f18608cea39d96db8f8b67e Mon Sep 17 00:00:00 2001 From: Mike Gerber Date: Thu, 3 Aug 2023 17:29:28 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20Move=20source=20into=20src/=20to?= =?UTF-8?q?=20fix=20install?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Installing was broken since moving to pyproject.toml, which we didn't notice because of leftover files in build/. Fix this by using the convention of having the source files in src/ and adjusting pyproject.toml accordingly. Fixes gh-86. 🤞 --- ocrd-tool.json | 2 +- pyproject.toml | 3 +-- {dinglehopper => src/dinglehopper}/__init__.py | 0 {dinglehopper => src/dinglehopper}/align.py | 0 .../dinglehopper}/character_error_rate.py | 0 {dinglehopper => src/dinglehopper}/cli.py | 0 {dinglehopper => src/dinglehopper}/cli_extract.py | 0 {dinglehopper => src/dinglehopper}/cli_line_dirs.py | 0 {dinglehopper => src/dinglehopper}/cli_summarize.py | 0 {dinglehopper => src/dinglehopper}/config.py | 0 {dinglehopper => src/dinglehopper}/edit_distance.py | 0 .../dinglehopper}/extracted_text.py | 0 .../dinglehopper}/notebooks/Levenshtein.ipynb | 0 ...e normalization and Character segmentation.ipynb | 0 {dinglehopper => src/dinglehopper}/ocr_files.py | 0 {dinglehopper => src/dinglehopper}/ocrd-tool.json | 0 {dinglehopper => src/dinglehopper}/ocrd_cli.py | 0 .../dinglehopper}/templates/report.html.j2 | 0 .../dinglehopper}/templates/report.html.js | 0 .../dinglehopper}/templates/report.json.j2 | 0 .../dinglehopper}/templates/summary.html.j2 | 0 .../dinglehopper}/templates/summary.json.j2 | 0 .../dinglehopper}/tests/__init__.py | 0 .../dinglehopper}/tests/data/00000119.tif | Bin .../OCR-D-GT-PAGE/00000024.page.xml | 0 .../OCR-D-OCR-CALAMARI/OCR-D-OCR-CALAMARI_0001.xml | 0 .../OCR-D-OCR-TESS/OCR-D-OCR-TESS_0001.xml | 0 .../tests/data/actevedef_718448162/mets.xml | 0 .../00008228/00008228-00236534.gt4hist.xml | 0 .../data/bigger-texts/00008228/00008228.gt.xml | 0 .../data/brochrnx_73075507X/00000139.gt.page.xml | 0 .../00000139.ocrd-tess.ocr.page.xml | 0 .../tests/data/directory-test/gt/1.xml | 0 .../tests/data/directory-test/gt/2.xml | 0 .../tests/data/directory-test/ocr/1.xml | 0 .../tests/data/directory-test/ocr/2.xml | 0 .../tests/data/directory-test/ocr/3-has-no-gt.xml | 0 .../tests/data/levels-are-different.page.xml | 0 .../lorem-ipsum/lorem-ipsum-scan-bad.gt.page.xml | 0 .../lorem-ipsum-scan-bad.ocr.tesseract.alto.xml | 0 .../tests/data/lorem-ipsum/lorem-ipsum-scan-bad.pdf | Bin .../tests/data/lorem-ipsum/lorem-ipsum-scan-bad.tif | Bin .../data/lorem-ipsum/lorem-ipsum-scan.gt.page.xml | 0 .../lorem-ipsum-scan.ocr.tesseract.alto.xml | 0 .../tests/data/lorem-ipsum/lorem-ipsum-scan.pdf | Bin .../tests/data/lorem-ipsum/lorem-ipsum-scan.tif | Bin .../tests/data/lorem-ipsum/lorem-ipsum.odt | Bin .../dinglehopper}/tests/data/mixed-regions.page.xml | 0 .../dinglehopper}/tests/data/order.page.xml | 0 .../data/table-order/table-no-reading-order.xml | 0 .../tests/data/table-order/table-order-0001.xml | 0 .../tests/data/table-order/table-order-0002.xml | 0 .../tests/data/table-order/table-region.xml | 0 .../tests/data/table-order/table-unordered.xml | 0 .../tests/data/test-fake-ocr.page2018.xml | 0 .../dinglehopper}/tests/data/test-gt.page2018.xml | 0 .../dinglehopper}/tests/data/test.alto1.xml | 0 .../dinglehopper}/tests/data/test.alto2.xml | 0 .../dinglehopper}/tests/data/test.alto3.xml | 0 .../dinglehopper}/tests/data/test.page2018.xml | 0 .../dinglehopper}/tests/data/test.txt | 0 .../462875_0008.jpg | Bin .../OCR-D-GT_0008.xml | 0 .../OCR-D-OCR-TESS_0008.xml | 0 .../dinglehopper}/tests/extracted_text_test.py | 0 .../dinglehopper}/tests/test_align.py | 0 .../tests/test_character_error_rate.py | 0 .../dinglehopper}/tests/test_edit_distance.py | 0 .../dinglehopper}/tests/test_editops.py | 0 .../dinglehopper}/tests/test_integ_align.py | 0 .../dinglehopper}/tests/test_integ_bigger_texts.py | 0 .../tests/test_integ_character_error_rate_ocr.py | 0 .../dinglehopper}/tests/test_integ_cli_dir.py | 0 .../tests/test_integ_cli_valid_json.py | 0 .../dinglehopper}/tests/test_integ_differences.py | 0 .../tests/test_integ_edit_distance_ocr.py | 0 .../dinglehopper}/tests/test_integ_ocrd_cli.py | 0 .../dinglehopper}/tests/test_integ_summarize.py | 0 .../tests/test_integ_table_extraction.py | 0 .../tests/test_integ_word_error_rate_ocr.py | 0 .../dinglehopper}/tests/test_ocr_files.py | 0 .../dinglehopper}/tests/test_word_error_rate.py | 0 {dinglehopper => src/dinglehopper}/tests/util.py | 0 .../dinglehopper}/word_error_rate.py | 0 84 files changed, 2 insertions(+), 3 deletions(-) rename {dinglehopper => src/dinglehopper}/__init__.py (100%) rename {dinglehopper => src/dinglehopper}/align.py (100%) rename {dinglehopper => src/dinglehopper}/character_error_rate.py (100%) rename {dinglehopper => src/dinglehopper}/cli.py (100%) rename {dinglehopper => src/dinglehopper}/cli_extract.py (100%) rename {dinglehopper => src/dinglehopper}/cli_line_dirs.py (100%) rename {dinglehopper => src/dinglehopper}/cli_summarize.py (100%) rename {dinglehopper => src/dinglehopper}/config.py (100%) rename {dinglehopper => src/dinglehopper}/edit_distance.py (100%) rename {dinglehopper => src/dinglehopper}/extracted_text.py (100%) rename {dinglehopper => src/dinglehopper}/notebooks/Levenshtein.ipynb (100%) rename {dinglehopper => src/dinglehopper}/notebooks/Unicode normalization and Character segmentation.ipynb (100%) rename {dinglehopper => src/dinglehopper}/ocr_files.py (100%) rename {dinglehopper => src/dinglehopper}/ocrd-tool.json (100%) rename {dinglehopper => src/dinglehopper}/ocrd_cli.py (100%) rename {dinglehopper => src/dinglehopper}/templates/report.html.j2 (100%) rename {dinglehopper => src/dinglehopper}/templates/report.html.js (100%) rename {dinglehopper => src/dinglehopper}/templates/report.json.j2 (100%) rename {dinglehopper => src/dinglehopper}/templates/summary.html.j2 (100%) rename {dinglehopper => src/dinglehopper}/templates/summary.json.j2 (100%) rename {dinglehopper => src/dinglehopper}/tests/__init__.py (100%) rename {dinglehopper => src/dinglehopper}/tests/data/00000119.tif (100%) rename {dinglehopper => src/dinglehopper}/tests/data/actevedef_718448162/OCR-D-GT-PAGE/00000024.page.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/actevedef_718448162/OCR-D-OCR-CALAMARI/OCR-D-OCR-CALAMARI_0001.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/actevedef_718448162/OCR-D-OCR-TESS/OCR-D-OCR-TESS_0001.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/actevedef_718448162/mets.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/bigger-texts/00008228/00008228-00236534.gt4hist.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/bigger-texts/00008228/00008228.gt.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/brochrnx_73075507X/00000139.gt.page.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/brochrnx_73075507X/00000139.ocrd-tess.ocr.page.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/directory-test/gt/1.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/directory-test/gt/2.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/directory-test/ocr/1.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/directory-test/ocr/2.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/directory-test/ocr/3-has-no-gt.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/levels-are-different.page.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.gt.page.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.ocr.tesseract.alto.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.pdf (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.tif (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum-scan.gt.page.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum-scan.ocr.tesseract.alto.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum-scan.pdf (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum-scan.tif (100%) rename {dinglehopper => src/dinglehopper}/tests/data/lorem-ipsum/lorem-ipsum.odt (100%) rename {dinglehopper => src/dinglehopper}/tests/data/mixed-regions.page.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/order.page.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/table-order/table-no-reading-order.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/table-order/table-order-0001.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/table-order/table-order-0002.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/table-order/table-region.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/table-order/table-unordered.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/test-fake-ocr.page2018.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/test-gt.page2018.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/test.alto1.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/test.alto2.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/test.alto3.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/test.page2018.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/test.txt (100%) rename {dinglehopper => src/dinglehopper}/tests/data/unused-larex-indexed-textequiv-jkamlah/462875_0008.jpg (100%) rename {dinglehopper => src/dinglehopper}/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-GT_0008.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-OCR-TESS_0008.xml (100%) rename {dinglehopper => src/dinglehopper}/tests/extracted_text_test.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_align.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_character_error_rate.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_edit_distance.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_editops.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_align.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_bigger_texts.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_character_error_rate_ocr.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_cli_dir.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_cli_valid_json.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_differences.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_edit_distance_ocr.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_ocrd_cli.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_summarize.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_table_extraction.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_integ_word_error_rate_ocr.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_ocr_files.py (100%) rename {dinglehopper => src/dinglehopper}/tests/test_word_error_rate.py (100%) rename {dinglehopper => src/dinglehopper}/tests/util.py (100%) rename {dinglehopper => src/dinglehopper}/word_error_rate.py (100%) diff --git a/ocrd-tool.json b/ocrd-tool.json index f871ff0..9acddde 120000 --- a/ocrd-tool.json +++ b/ocrd-tool.json @@ -1 +1 @@ -dinglehopper/ocrd-tool.json \ No newline at end of file +src/dinglehopper/ocrd-tool.json \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 649a059..153e61a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -45,8 +45,7 @@ dependencies = {file = ["requirements.txt"]} optional-dependencies.dev = {file = ["requirements-dev.txt"]} [tool.setuptools.packages.find] -# This is not strictly necessary, just when junk lies around. -where = ["dinglehopper"] +where = ["src"] [tool.setuptools.package-data] dinglehopper = ["*.json", "templates/*"] diff --git a/dinglehopper/__init__.py b/src/dinglehopper/__init__.py similarity index 100% rename from dinglehopper/__init__.py rename to src/dinglehopper/__init__.py diff --git a/dinglehopper/align.py b/src/dinglehopper/align.py similarity index 100% rename from dinglehopper/align.py rename to src/dinglehopper/align.py diff --git a/dinglehopper/character_error_rate.py b/src/dinglehopper/character_error_rate.py similarity index 100% rename from dinglehopper/character_error_rate.py rename to src/dinglehopper/character_error_rate.py diff --git a/dinglehopper/cli.py b/src/dinglehopper/cli.py similarity index 100% rename from dinglehopper/cli.py rename to src/dinglehopper/cli.py diff --git a/dinglehopper/cli_extract.py b/src/dinglehopper/cli_extract.py similarity index 100% rename from dinglehopper/cli_extract.py rename to src/dinglehopper/cli_extract.py diff --git a/dinglehopper/cli_line_dirs.py b/src/dinglehopper/cli_line_dirs.py similarity index 100% rename from dinglehopper/cli_line_dirs.py rename to src/dinglehopper/cli_line_dirs.py diff --git a/dinglehopper/cli_summarize.py b/src/dinglehopper/cli_summarize.py similarity index 100% rename from dinglehopper/cli_summarize.py rename to src/dinglehopper/cli_summarize.py diff --git a/dinglehopper/config.py b/src/dinglehopper/config.py similarity index 100% rename from dinglehopper/config.py rename to src/dinglehopper/config.py diff --git a/dinglehopper/edit_distance.py b/src/dinglehopper/edit_distance.py similarity index 100% rename from dinglehopper/edit_distance.py rename to src/dinglehopper/edit_distance.py diff --git a/dinglehopper/extracted_text.py b/src/dinglehopper/extracted_text.py similarity index 100% rename from dinglehopper/extracted_text.py rename to src/dinglehopper/extracted_text.py diff --git a/dinglehopper/notebooks/Levenshtein.ipynb b/src/dinglehopper/notebooks/Levenshtein.ipynb similarity index 100% rename from dinglehopper/notebooks/Levenshtein.ipynb rename to src/dinglehopper/notebooks/Levenshtein.ipynb diff --git a/dinglehopper/notebooks/Unicode normalization and Character segmentation.ipynb b/src/dinglehopper/notebooks/Unicode normalization and Character segmentation.ipynb similarity index 100% rename from dinglehopper/notebooks/Unicode normalization and Character segmentation.ipynb rename to src/dinglehopper/notebooks/Unicode normalization and Character segmentation.ipynb diff --git a/dinglehopper/ocr_files.py b/src/dinglehopper/ocr_files.py similarity index 100% rename from dinglehopper/ocr_files.py rename to src/dinglehopper/ocr_files.py diff --git a/dinglehopper/ocrd-tool.json b/src/dinglehopper/ocrd-tool.json similarity index 100% rename from dinglehopper/ocrd-tool.json rename to src/dinglehopper/ocrd-tool.json diff --git a/dinglehopper/ocrd_cli.py b/src/dinglehopper/ocrd_cli.py similarity index 100% rename from dinglehopper/ocrd_cli.py rename to src/dinglehopper/ocrd_cli.py diff --git a/dinglehopper/templates/report.html.j2 b/src/dinglehopper/templates/report.html.j2 similarity index 100% rename from dinglehopper/templates/report.html.j2 rename to src/dinglehopper/templates/report.html.j2 diff --git a/dinglehopper/templates/report.html.js b/src/dinglehopper/templates/report.html.js similarity index 100% rename from dinglehopper/templates/report.html.js rename to src/dinglehopper/templates/report.html.js diff --git a/dinglehopper/templates/report.json.j2 b/src/dinglehopper/templates/report.json.j2 similarity index 100% rename from dinglehopper/templates/report.json.j2 rename to src/dinglehopper/templates/report.json.j2 diff --git a/dinglehopper/templates/summary.html.j2 b/src/dinglehopper/templates/summary.html.j2 similarity index 100% rename from dinglehopper/templates/summary.html.j2 rename to src/dinglehopper/templates/summary.html.j2 diff --git a/dinglehopper/templates/summary.json.j2 b/src/dinglehopper/templates/summary.json.j2 similarity index 100% rename from dinglehopper/templates/summary.json.j2 rename to src/dinglehopper/templates/summary.json.j2 diff --git a/dinglehopper/tests/__init__.py b/src/dinglehopper/tests/__init__.py similarity index 100% rename from dinglehopper/tests/__init__.py rename to src/dinglehopper/tests/__init__.py diff --git a/dinglehopper/tests/data/00000119.tif b/src/dinglehopper/tests/data/00000119.tif similarity index 100% rename from dinglehopper/tests/data/00000119.tif rename to src/dinglehopper/tests/data/00000119.tif diff --git a/dinglehopper/tests/data/actevedef_718448162/OCR-D-GT-PAGE/00000024.page.xml b/src/dinglehopper/tests/data/actevedef_718448162/OCR-D-GT-PAGE/00000024.page.xml similarity index 100% rename from dinglehopper/tests/data/actevedef_718448162/OCR-D-GT-PAGE/00000024.page.xml rename to src/dinglehopper/tests/data/actevedef_718448162/OCR-D-GT-PAGE/00000024.page.xml diff --git a/dinglehopper/tests/data/actevedef_718448162/OCR-D-OCR-CALAMARI/OCR-D-OCR-CALAMARI_0001.xml b/src/dinglehopper/tests/data/actevedef_718448162/OCR-D-OCR-CALAMARI/OCR-D-OCR-CALAMARI_0001.xml similarity index 100% rename from dinglehopper/tests/data/actevedef_718448162/OCR-D-OCR-CALAMARI/OCR-D-OCR-CALAMARI_0001.xml rename to src/dinglehopper/tests/data/actevedef_718448162/OCR-D-OCR-CALAMARI/OCR-D-OCR-CALAMARI_0001.xml diff --git a/dinglehopper/tests/data/actevedef_718448162/OCR-D-OCR-TESS/OCR-D-OCR-TESS_0001.xml b/src/dinglehopper/tests/data/actevedef_718448162/OCR-D-OCR-TESS/OCR-D-OCR-TESS_0001.xml similarity index 100% rename from dinglehopper/tests/data/actevedef_718448162/OCR-D-OCR-TESS/OCR-D-OCR-TESS_0001.xml rename to src/dinglehopper/tests/data/actevedef_718448162/OCR-D-OCR-TESS/OCR-D-OCR-TESS_0001.xml diff --git a/dinglehopper/tests/data/actevedef_718448162/mets.xml b/src/dinglehopper/tests/data/actevedef_718448162/mets.xml similarity index 100% rename from dinglehopper/tests/data/actevedef_718448162/mets.xml rename to src/dinglehopper/tests/data/actevedef_718448162/mets.xml diff --git a/dinglehopper/tests/data/bigger-texts/00008228/00008228-00236534.gt4hist.xml b/src/dinglehopper/tests/data/bigger-texts/00008228/00008228-00236534.gt4hist.xml similarity index 100% rename from dinglehopper/tests/data/bigger-texts/00008228/00008228-00236534.gt4hist.xml rename to src/dinglehopper/tests/data/bigger-texts/00008228/00008228-00236534.gt4hist.xml diff --git a/dinglehopper/tests/data/bigger-texts/00008228/00008228.gt.xml b/src/dinglehopper/tests/data/bigger-texts/00008228/00008228.gt.xml similarity index 100% rename from dinglehopper/tests/data/bigger-texts/00008228/00008228.gt.xml rename to src/dinglehopper/tests/data/bigger-texts/00008228/00008228.gt.xml diff --git a/dinglehopper/tests/data/brochrnx_73075507X/00000139.gt.page.xml b/src/dinglehopper/tests/data/brochrnx_73075507X/00000139.gt.page.xml similarity index 100% rename from dinglehopper/tests/data/brochrnx_73075507X/00000139.gt.page.xml rename to src/dinglehopper/tests/data/brochrnx_73075507X/00000139.gt.page.xml diff --git a/dinglehopper/tests/data/brochrnx_73075507X/00000139.ocrd-tess.ocr.page.xml b/src/dinglehopper/tests/data/brochrnx_73075507X/00000139.ocrd-tess.ocr.page.xml similarity index 100% rename from dinglehopper/tests/data/brochrnx_73075507X/00000139.ocrd-tess.ocr.page.xml rename to src/dinglehopper/tests/data/brochrnx_73075507X/00000139.ocrd-tess.ocr.page.xml diff --git a/dinglehopper/tests/data/directory-test/gt/1.xml b/src/dinglehopper/tests/data/directory-test/gt/1.xml similarity index 100% rename from dinglehopper/tests/data/directory-test/gt/1.xml rename to src/dinglehopper/tests/data/directory-test/gt/1.xml diff --git a/dinglehopper/tests/data/directory-test/gt/2.xml b/src/dinglehopper/tests/data/directory-test/gt/2.xml similarity index 100% rename from dinglehopper/tests/data/directory-test/gt/2.xml rename to src/dinglehopper/tests/data/directory-test/gt/2.xml diff --git a/dinglehopper/tests/data/directory-test/ocr/1.xml b/src/dinglehopper/tests/data/directory-test/ocr/1.xml similarity index 100% rename from dinglehopper/tests/data/directory-test/ocr/1.xml rename to src/dinglehopper/tests/data/directory-test/ocr/1.xml diff --git a/dinglehopper/tests/data/directory-test/ocr/2.xml b/src/dinglehopper/tests/data/directory-test/ocr/2.xml similarity index 100% rename from dinglehopper/tests/data/directory-test/ocr/2.xml rename to src/dinglehopper/tests/data/directory-test/ocr/2.xml diff --git a/dinglehopper/tests/data/directory-test/ocr/3-has-no-gt.xml b/src/dinglehopper/tests/data/directory-test/ocr/3-has-no-gt.xml similarity index 100% rename from dinglehopper/tests/data/directory-test/ocr/3-has-no-gt.xml rename to src/dinglehopper/tests/data/directory-test/ocr/3-has-no-gt.xml diff --git a/dinglehopper/tests/data/levels-are-different.page.xml b/src/dinglehopper/tests/data/levels-are-different.page.xml similarity index 100% rename from dinglehopper/tests/data/levels-are-different.page.xml rename to src/dinglehopper/tests/data/levels-are-different.page.xml diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.gt.page.xml b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.gt.page.xml similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.gt.page.xml rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.gt.page.xml diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.ocr.tesseract.alto.xml b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.ocr.tesseract.alto.xml similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.ocr.tesseract.alto.xml rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.ocr.tesseract.alto.xml diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.pdf b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.pdf similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.pdf rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.pdf diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.tif b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.tif similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.tif rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan-bad.tif diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.gt.page.xml b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.gt.page.xml similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.gt.page.xml rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.gt.page.xml diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.ocr.tesseract.alto.xml b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.ocr.tesseract.alto.xml similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.ocr.tesseract.alto.xml rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.ocr.tesseract.alto.xml diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.pdf b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.pdf similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.pdf rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.pdf diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.tif b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.tif similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.tif rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum-scan.tif diff --git a/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum.odt b/src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum.odt similarity index 100% rename from dinglehopper/tests/data/lorem-ipsum/lorem-ipsum.odt rename to src/dinglehopper/tests/data/lorem-ipsum/lorem-ipsum.odt diff --git a/dinglehopper/tests/data/mixed-regions.page.xml b/src/dinglehopper/tests/data/mixed-regions.page.xml similarity index 100% rename from dinglehopper/tests/data/mixed-regions.page.xml rename to src/dinglehopper/tests/data/mixed-regions.page.xml diff --git a/dinglehopper/tests/data/order.page.xml b/src/dinglehopper/tests/data/order.page.xml similarity index 100% rename from dinglehopper/tests/data/order.page.xml rename to src/dinglehopper/tests/data/order.page.xml diff --git a/dinglehopper/tests/data/table-order/table-no-reading-order.xml b/src/dinglehopper/tests/data/table-order/table-no-reading-order.xml similarity index 100% rename from dinglehopper/tests/data/table-order/table-no-reading-order.xml rename to src/dinglehopper/tests/data/table-order/table-no-reading-order.xml diff --git a/dinglehopper/tests/data/table-order/table-order-0001.xml b/src/dinglehopper/tests/data/table-order/table-order-0001.xml similarity index 100% rename from dinglehopper/tests/data/table-order/table-order-0001.xml rename to src/dinglehopper/tests/data/table-order/table-order-0001.xml diff --git a/dinglehopper/tests/data/table-order/table-order-0002.xml b/src/dinglehopper/tests/data/table-order/table-order-0002.xml similarity index 100% rename from dinglehopper/tests/data/table-order/table-order-0002.xml rename to src/dinglehopper/tests/data/table-order/table-order-0002.xml diff --git a/dinglehopper/tests/data/table-order/table-region.xml b/src/dinglehopper/tests/data/table-order/table-region.xml similarity index 100% rename from dinglehopper/tests/data/table-order/table-region.xml rename to src/dinglehopper/tests/data/table-order/table-region.xml diff --git a/dinglehopper/tests/data/table-order/table-unordered.xml b/src/dinglehopper/tests/data/table-order/table-unordered.xml similarity index 100% rename from dinglehopper/tests/data/table-order/table-unordered.xml rename to src/dinglehopper/tests/data/table-order/table-unordered.xml diff --git a/dinglehopper/tests/data/test-fake-ocr.page2018.xml b/src/dinglehopper/tests/data/test-fake-ocr.page2018.xml similarity index 100% rename from dinglehopper/tests/data/test-fake-ocr.page2018.xml rename to src/dinglehopper/tests/data/test-fake-ocr.page2018.xml diff --git a/dinglehopper/tests/data/test-gt.page2018.xml b/src/dinglehopper/tests/data/test-gt.page2018.xml similarity index 100% rename from dinglehopper/tests/data/test-gt.page2018.xml rename to src/dinglehopper/tests/data/test-gt.page2018.xml diff --git a/dinglehopper/tests/data/test.alto1.xml b/src/dinglehopper/tests/data/test.alto1.xml similarity index 100% rename from dinglehopper/tests/data/test.alto1.xml rename to src/dinglehopper/tests/data/test.alto1.xml diff --git a/dinglehopper/tests/data/test.alto2.xml b/src/dinglehopper/tests/data/test.alto2.xml similarity index 100% rename from dinglehopper/tests/data/test.alto2.xml rename to src/dinglehopper/tests/data/test.alto2.xml diff --git a/dinglehopper/tests/data/test.alto3.xml b/src/dinglehopper/tests/data/test.alto3.xml similarity index 100% rename from dinglehopper/tests/data/test.alto3.xml rename to src/dinglehopper/tests/data/test.alto3.xml diff --git a/dinglehopper/tests/data/test.page2018.xml b/src/dinglehopper/tests/data/test.page2018.xml similarity index 100% rename from dinglehopper/tests/data/test.page2018.xml rename to src/dinglehopper/tests/data/test.page2018.xml diff --git a/dinglehopper/tests/data/test.txt b/src/dinglehopper/tests/data/test.txt similarity index 100% rename from dinglehopper/tests/data/test.txt rename to src/dinglehopper/tests/data/test.txt diff --git a/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/462875_0008.jpg b/src/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/462875_0008.jpg similarity index 100% rename from dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/462875_0008.jpg rename to src/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/462875_0008.jpg diff --git a/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-GT_0008.xml b/src/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-GT_0008.xml similarity index 100% rename from dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-GT_0008.xml rename to src/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-GT_0008.xml diff --git a/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-OCR-TESS_0008.xml b/src/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-OCR-TESS_0008.xml similarity index 100% rename from dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-OCR-TESS_0008.xml rename to src/dinglehopper/tests/data/unused-larex-indexed-textequiv-jkamlah/OCR-D-OCR-TESS_0008.xml diff --git a/dinglehopper/tests/extracted_text_test.py b/src/dinglehopper/tests/extracted_text_test.py similarity index 100% rename from dinglehopper/tests/extracted_text_test.py rename to src/dinglehopper/tests/extracted_text_test.py diff --git a/dinglehopper/tests/test_align.py b/src/dinglehopper/tests/test_align.py similarity index 100% rename from dinglehopper/tests/test_align.py rename to src/dinglehopper/tests/test_align.py diff --git a/dinglehopper/tests/test_character_error_rate.py b/src/dinglehopper/tests/test_character_error_rate.py similarity index 100% rename from dinglehopper/tests/test_character_error_rate.py rename to src/dinglehopper/tests/test_character_error_rate.py diff --git a/dinglehopper/tests/test_edit_distance.py b/src/dinglehopper/tests/test_edit_distance.py similarity index 100% rename from dinglehopper/tests/test_edit_distance.py rename to src/dinglehopper/tests/test_edit_distance.py diff --git a/dinglehopper/tests/test_editops.py b/src/dinglehopper/tests/test_editops.py similarity index 100% rename from dinglehopper/tests/test_editops.py rename to src/dinglehopper/tests/test_editops.py diff --git a/dinglehopper/tests/test_integ_align.py b/src/dinglehopper/tests/test_integ_align.py similarity index 100% rename from dinglehopper/tests/test_integ_align.py rename to src/dinglehopper/tests/test_integ_align.py diff --git a/dinglehopper/tests/test_integ_bigger_texts.py b/src/dinglehopper/tests/test_integ_bigger_texts.py similarity index 100% rename from dinglehopper/tests/test_integ_bigger_texts.py rename to src/dinglehopper/tests/test_integ_bigger_texts.py diff --git a/dinglehopper/tests/test_integ_character_error_rate_ocr.py b/src/dinglehopper/tests/test_integ_character_error_rate_ocr.py similarity index 100% rename from dinglehopper/tests/test_integ_character_error_rate_ocr.py rename to src/dinglehopper/tests/test_integ_character_error_rate_ocr.py diff --git a/dinglehopper/tests/test_integ_cli_dir.py b/src/dinglehopper/tests/test_integ_cli_dir.py similarity index 100% rename from dinglehopper/tests/test_integ_cli_dir.py rename to src/dinglehopper/tests/test_integ_cli_dir.py diff --git a/dinglehopper/tests/test_integ_cli_valid_json.py b/src/dinglehopper/tests/test_integ_cli_valid_json.py similarity index 100% rename from dinglehopper/tests/test_integ_cli_valid_json.py rename to src/dinglehopper/tests/test_integ_cli_valid_json.py diff --git a/dinglehopper/tests/test_integ_differences.py b/src/dinglehopper/tests/test_integ_differences.py similarity index 100% rename from dinglehopper/tests/test_integ_differences.py rename to src/dinglehopper/tests/test_integ_differences.py diff --git a/dinglehopper/tests/test_integ_edit_distance_ocr.py b/src/dinglehopper/tests/test_integ_edit_distance_ocr.py similarity index 100% rename from dinglehopper/tests/test_integ_edit_distance_ocr.py rename to src/dinglehopper/tests/test_integ_edit_distance_ocr.py diff --git a/dinglehopper/tests/test_integ_ocrd_cli.py b/src/dinglehopper/tests/test_integ_ocrd_cli.py similarity index 100% rename from dinglehopper/tests/test_integ_ocrd_cli.py rename to src/dinglehopper/tests/test_integ_ocrd_cli.py diff --git a/dinglehopper/tests/test_integ_summarize.py b/src/dinglehopper/tests/test_integ_summarize.py similarity index 100% rename from dinglehopper/tests/test_integ_summarize.py rename to src/dinglehopper/tests/test_integ_summarize.py diff --git a/dinglehopper/tests/test_integ_table_extraction.py b/src/dinglehopper/tests/test_integ_table_extraction.py similarity index 100% rename from dinglehopper/tests/test_integ_table_extraction.py rename to src/dinglehopper/tests/test_integ_table_extraction.py diff --git a/dinglehopper/tests/test_integ_word_error_rate_ocr.py b/src/dinglehopper/tests/test_integ_word_error_rate_ocr.py similarity index 100% rename from dinglehopper/tests/test_integ_word_error_rate_ocr.py rename to src/dinglehopper/tests/test_integ_word_error_rate_ocr.py diff --git a/dinglehopper/tests/test_ocr_files.py b/src/dinglehopper/tests/test_ocr_files.py similarity index 100% rename from dinglehopper/tests/test_ocr_files.py rename to src/dinglehopper/tests/test_ocr_files.py diff --git a/dinglehopper/tests/test_word_error_rate.py b/src/dinglehopper/tests/test_word_error_rate.py similarity index 100% rename from dinglehopper/tests/test_word_error_rate.py rename to src/dinglehopper/tests/test_word_error_rate.py diff --git a/dinglehopper/tests/util.py b/src/dinglehopper/tests/util.py similarity index 100% rename from dinglehopper/tests/util.py rename to src/dinglehopper/tests/util.py diff --git a/dinglehopper/word_error_rate.py b/src/dinglehopper/word_error_rate.py similarity index 100% rename from dinglehopper/word_error_rate.py rename to src/dinglehopper/word_error_rate.py