tablassert 7.0.0__tar.gz → 7.0.1__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.
Files changed (48) hide show
  1. {tablassert-7.0.0 → tablassert-7.0.1}/CHANGELOG.md +5 -0
  2. {tablassert-7.0.0 → tablassert-7.0.1}/PKG-INFO +29 -4
  3. {tablassert-7.0.0 → tablassert-7.0.1}/README.md +17 -2
  4. {tablassert-7.0.0 → tablassert-7.0.1}/docs/index.md +10 -0
  5. {tablassert-7.0.0 → tablassert-7.0.1}/docs/installation.md +20 -0
  6. {tablassert-7.0.0 → tablassert-7.0.1}/pyproject.toml +31 -2
  7. {tablassert-7.0.0 → tablassert-7.0.1}/uv.lock +29 -1
  8. {tablassert-7.0.0 → tablassert-7.0.1}/.github/workflows/docs.yml +0 -0
  9. {tablassert-7.0.0 → tablassert-7.0.1}/.github/workflows/pipy.yml +0 -0
  10. {tablassert-7.0.0 → tablassert-7.0.1}/.gitignore +0 -0
  11. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/PROJECT.md +0 -0
  12. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/REQUIREMENTS.md +0 -0
  13. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/ROADMAP.md +0 -0
  14. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/STATE.md +0 -0
  15. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/config.json +0 -0
  16. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/quick/1-please-add-a-github-action-that-runs-uv-/1-PLAN.md +0 -0
  17. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/quick/1-please-add-a-github-action-that-runs-uv-/1-SUMMARY.md +0 -0
  18. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/research/ARCHITECTURE.md +0 -0
  19. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/research/FEATURES.md +0 -0
  20. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/research/PITFALLS.md +0 -0
  21. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/research/STACK.md +0 -0
  22. {tablassert-7.0.0 → tablassert-7.0.1}/.planning/research/SUMMARY.md +0 -0
  23. {tablassert-7.0.0 → tablassert-7.0.1}/.pre-commit-config.yaml +0 -0
  24. {tablassert-7.0.0 → tablassert-7.0.1}/.python-version +0 -0
  25. {tablassert-7.0.0 → tablassert-7.0.1}/.vscode/settings.json +0 -0
  26. {tablassert-7.0.0 → tablassert-7.0.1}/LICENSE +0 -0
  27. {tablassert-7.0.0 → tablassert-7.0.1}/docs/api/fullmap.md +0 -0
  28. {tablassert-7.0.0 → tablassert-7.0.1}/docs/api/qc.md +0 -0
  29. {tablassert-7.0.0 → tablassert-7.0.1}/docs/api/utils.md +0 -0
  30. {tablassert-7.0.0 → tablassert-7.0.1}/docs/cli.md +0 -0
  31. {tablassert-7.0.0 → tablassert-7.0.1}/docs/configuration/advanced-example.md +0 -0
  32. {tablassert-7.0.0 → tablassert-7.0.1}/docs/configuration/graph.md +0 -0
  33. {tablassert-7.0.0 → tablassert-7.0.1}/docs/configuration/table.md +0 -0
  34. {tablassert-7.0.0 → tablassert-7.0.1}/docs/examples/tutorial-data.csv +0 -0
  35. {tablassert-7.0.0 → tablassert-7.0.1}/docs/examples/tutorial-graph.yaml +0 -0
  36. {tablassert-7.0.0 → tablassert-7.0.1}/docs/examples/tutorial-table.yaml +0 -0
  37. {tablassert-7.0.0 → tablassert-7.0.1}/docs/tutorial.md +0 -0
  38. {tablassert-7.0.0 → tablassert-7.0.1}/mkdocs.yml +0 -0
  39. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/__init__.py +0 -0
  40. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/downloader.py +0 -0
  41. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/enums.py +0 -0
  42. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/fullmap.py +0 -0
  43. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/ingests.py +0 -0
  44. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/lib.py +0 -0
  45. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/log.py +0 -0
  46. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/models.py +0 -0
  47. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/qc.py +0 -0
  48. {tablassert-7.0.0 → tablassert-7.0.1}/src/tablassert/utils.py +0 -0
@@ -2,6 +2,11 @@
2
2
 
3
3
  All notable changes to this project are documented in this file.
4
4
 
5
+ ## 7.0.1 - 2026-03-17
6
+
7
+ ### Documentation
8
+ - Updated installation docs to reflect `pyproject.toml` extras and added `tablassert[rtcompat]` guidance for systems without required default Polars CPU instructions.
9
+
5
10
  ## 7.0.0 - 2026-03-17
6
11
 
7
12
  ### New Features
@@ -1,8 +1,16 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tablassert
3
- Version: 7.0.0
4
- Summary: Add your description here
3
+ Version: 7.0.1
4
+ Summary: Tablassert is a highly performant declarative knowledge graph backend designed to extract knowledge assertions from tabular data while exporting NCATS Translator-compliant Knowledge Graph Exchange (KGX) NDJSON.
5
+ Project-URL: Homepage, https://github.com/SkyeAv/Tablassert
6
+ Project-URL: Source, https://github.com/SkyeAv/Tablassert
7
+ Project-URL: Documentation, https://skyeav.github.io/Tablassert/
8
+ Author: Jared C. Roach
9
+ Author-email: Skye Lane Goetz <sgoetz@isbscience.org>, Gwennen Glusman <gglusman@isbscience.org>
10
+ License-Expression: Apache-2.0
5
11
  License-File: LICENSE
12
+ Keywords: declarative pipeline,knowledge graph,natural language processing,ncats translator,ner,tablassert,table mining,yaml configuration
13
+ Classifier: License :: OSI Approved :: Apache Software License
6
14
  Requires-Python: >=3.13
7
15
  Requires-Dist: diskcache>=5.6.3
8
16
  Requires-Dist: duckdb>=1.5.0
@@ -24,6 +32,8 @@ Requires-Dist: sentence-transformers>=5.3.0
24
32
  Requires-Dist: sqlite-utils>=3.39
25
33
  Requires-Dist: typer>=0.24.1
26
34
  Requires-Dist: xxhash>=3.6.0
35
+ Provides-Extra: rtcompat
36
+ Requires-Dist: polars[rtcompat]>=1.39.0; extra == 'rtcompat'
27
37
  Description-Content-Type: text/markdown
28
38
 
29
39
  # Tablassert
@@ -61,6 +71,12 @@ uv tool install tablassert
61
71
  # Option B: pip install
62
72
  pip install tablassert
63
73
 
74
+ # Option C: runtime-compatible Polars build
75
+ # (for CPUs without the required Polars instructions)
76
+ uv tool install "tablassert[rtcompat]"
77
+ # or
78
+ pip install "tablassert[rtcompat]"
79
+
64
80
  tablassert --help
65
81
  ```
66
82
 
@@ -90,12 +106,18 @@ uv run tablassert build-knowledge-graph /path/to/graph-config.yaml
90
106
  Recommended for most users.
91
107
 
92
108
  ```bash
93
- # Option A: UV tool install
109
+ # Option A: standard install (UV)
94
110
  uv tool install tablassert
95
111
 
96
- # Option B: pip install
112
+ # Option B: standard install (pip)
97
113
  pip install tablassert
98
114
 
115
+ # Option C: runtime-compatible Polars build
116
+ # (for CPUs without the required Polars instructions)
117
+ uv tool install "tablassert[rtcompat]"
118
+ # or
119
+ pip install "tablassert[rtcompat]"
120
+
99
121
  tablassert build-knowledge-graph /path/to/graph-config.yaml
100
122
  ```
101
123
 
@@ -108,6 +130,9 @@ uv tool install git+https://github.com/SkyeAv/Tablassert.git@main
108
130
  tablassert build-knowledge-graph /path/to/graph-config.yaml
109
131
  ```
110
132
 
133
+ If your CPU does not support the instructions required by default Polars builds,
134
+ use **Method 2** with `tablassert[rtcompat]`.
135
+
111
136
  ### Method 4: Local source install
112
137
 
113
138
  For contributors testing local changes.
@@ -33,6 +33,12 @@ uv tool install tablassert
33
33
  # Option B: pip install
34
34
  pip install tablassert
35
35
 
36
+ # Option C: runtime-compatible Polars build
37
+ # (for CPUs without the required Polars instructions)
38
+ uv tool install "tablassert[rtcompat]"
39
+ # or
40
+ pip install "tablassert[rtcompat]"
41
+
36
42
  tablassert --help
37
43
  ```
38
44
 
@@ -62,12 +68,18 @@ uv run tablassert build-knowledge-graph /path/to/graph-config.yaml
62
68
  Recommended for most users.
63
69
 
64
70
  ```bash
65
- # Option A: UV tool install
71
+ # Option A: standard install (UV)
66
72
  uv tool install tablassert
67
73
 
68
- # Option B: pip install
74
+ # Option B: standard install (pip)
69
75
  pip install tablassert
70
76
 
77
+ # Option C: runtime-compatible Polars build
78
+ # (for CPUs without the required Polars instructions)
79
+ uv tool install "tablassert[rtcompat]"
80
+ # or
81
+ pip install "tablassert[rtcompat]"
82
+
71
83
  tablassert build-knowledge-graph /path/to/graph-config.yaml
72
84
  ```
73
85
 
@@ -80,6 +92,9 @@ uv tool install git+https://github.com/SkyeAv/Tablassert.git@main
80
92
  tablassert build-knowledge-graph /path/to/graph-config.yaml
81
93
  ```
82
94
 
95
+ If your CPU does not support the instructions required by default Polars builds,
96
+ use **Method 2** with `tablassert[rtcompat]`.
97
+
83
98
  ### Method 4: Local source install
84
99
 
85
100
  For contributors testing local changes.
@@ -30,11 +30,21 @@ tablassert --help
30
30
  pip install tablassert
31
31
  tablassert --help
32
32
 
33
+ # Install runtime-compatible Polars build
34
+ # (for CPUs without the required Polars instructions)
35
+ uv tool install "tablassert[rtcompat]"
36
+ # or
37
+ pip install "tablassert[rtcompat]"
38
+ tablassert --help
39
+
33
40
  # Or install latest from GitHub main
34
41
  uv tool install git+https://github.com/SkyeAv/Tablassert.git@main
35
42
  tablassert --help
36
43
  ```
37
44
 
45
+ `tablassert[rtcompat]` is defined in `pyproject.toml` and installs a runtime-compatible
46
+ Polars dependency for systems without the default Polars CPU instruction support.
47
+
38
48
  For development from source:
39
49
 
40
50
  ```bash
@@ -45,6 +45,8 @@ This creates a virtual environment in `.venv/` and installs all dependencies. Th
45
45
  ### Method 2: Install from PyPI
46
46
 
47
47
  Recommended for most users who just need the CLI.
48
+ `pyproject.toml` also defines `tablassert[rtcompat]`, which installs runtime-compatible
49
+ Polars for systems without the required default Polars CPU instructions.
48
50
 
49
51
  ```bash
50
52
  # Option A: Install from PyPI with UV
@@ -53,6 +55,12 @@ uv tool install tablassert
53
55
  # Option B: Install from PyPI with pip
54
56
  pip install tablassert
55
57
 
58
+ # Option C: Install runtime-compatible Polars build
59
+ # (for CPUs without the required Polars instructions)
60
+ uv tool install "tablassert[rtcompat]"
61
+ # or
62
+ pip install "tablassert[rtcompat]"
63
+
56
64
  # Tablassert CLI is now available
57
65
  tablassert --help
58
66
  ```
@@ -156,3 +164,15 @@ If you encounter dependency installation issues, try:
156
164
  uv cache clean
157
165
  uv sync --reinstall
158
166
  ```
167
+
168
+ ### Polars CPU Instruction Issues
169
+
170
+ If your machine does not support the CPU instructions required by default Polars
171
+ builds, install Tablassert with the runtime-compat package extra from
172
+ `pyproject.toml`:
173
+
174
+ ```bash
175
+ uv tool install "tablassert[rtcompat]"
176
+ # or
177
+ pip install "tablassert[rtcompat]"
178
+ ```
@@ -1,8 +1,27 @@
1
1
  [project]
2
2
  name = "tablassert"
3
- version = "7.0.0"
4
- description = "Add your description here"
3
+ version = "7.0.1"
4
+ description = "Tablassert is a highly performant declarative knowledge graph backend designed to extract knowledge assertions from tabular data while exporting NCATS Translator-compliant Knowledge Graph Exchange (KGX) NDJSON."
5
+ authors = [
6
+ { name = "Skye Lane Goetz", email = "sgoetz@isbscience.org" },
7
+ { name = "Gwennen Glusman", email = "gglusman@isbscience.org" },
8
+ { name = "Jared C. Roach" },
9
+ ]
10
+ keywords = [
11
+ "knowledge graph",
12
+ "natural language processing",
13
+ "ner",
14
+ "ncats translator",
15
+ "yaml configuration",
16
+ "table mining",
17
+ "declarative pipeline",
18
+ "tablassert"
19
+ ]
5
20
  readme = "README.md"
21
+ license = "Apache-2.0"
22
+ classifiers = [
23
+ "License :: OSI Approved :: Apache Software License",
24
+ ]
6
25
  requires-python = ">=3.13"
7
26
  dependencies = [
8
27
  "diskcache>=5.6.3",
@@ -27,6 +46,11 @@ dependencies = [
27
46
  "xxhash>=3.6.0",
28
47
  ]
29
48
 
49
+ [project.urls]
50
+ Homepage = "https://github.com/SkyeAv/Tablassert"
51
+ Source = "https://github.com/SkyeAv/Tablassert"
52
+ Documentation = "https://skyeav.github.io/Tablassert/"
53
+
30
54
  [build-system]
31
55
  requires = ["hatchling"]
32
56
  build-backend = "hatchling.build"
@@ -37,6 +61,11 @@ packages = ["./src/tablassert"]
37
61
  [project.scripts]
38
62
  tablassert = "tablassert.lib:CLI"
39
63
 
64
+ [project.optional-dependencies]
65
+ rtcompat = [
66
+ "polars[rtcompat]>=1.39.0",
67
+ ]
68
+
40
69
  [dependency-groups]
41
70
  dev = [
42
71
  "mkdocs>=1.6.1",
@@ -953,6 +953,11 @@ wheels = [
953
953
  { url = "https://files.pythonhosted.org/packages/a7/f8/fad8470d9701c1b208cc24919a661efdf565373e77e7d06400642a759285/polars-1.39.0-py3-none-any.whl", hash = "sha256:4d1198b41bc47561673d9f54d0f595125202a3f53e3502821802958d3e60efe9", size = 823938, upload-time = "2026-03-12T14:22:37.78Z" },
954
954
  ]
955
955
 
956
+ [package.optional-dependencies]
957
+ rtcompat = [
958
+ { name = "polars-runtime-compat" },
959
+ ]
960
+
956
961
  [[package]]
957
962
  name = "polars-runtime-32"
958
963
  version = "1.39.0"
@@ -969,6 +974,22 @@ wheels = [
969
974
  { url = "https://files.pythonhosted.org/packages/b3/eb/936f5eeae196e8c8aaabe5f7d98891be8a5bbc741d50ce5c60f55575ad29/polars_runtime_32-1.39.0-cp310-abi3-win_arm64.whl", hash = "sha256:d69abde5f148566860bbe910010847bd7791e72f7c8063a4d2c462246a33a72a", size = 41885761, upload-time = "2026-03-12T14:23:16.773Z" },
970
975
  ]
971
976
 
977
+ [[package]]
978
+ name = "polars-runtime-compat"
979
+ version = "1.39.0"
980
+ source = { registry = "https://pypi.org/simple" }
981
+ sdist = { url = "https://files.pythonhosted.org/packages/14/d8/c0a9f7e5e01ad12282b9b4b283ea7c6a9424557c18f96ab12b3a9a45c85f/polars_runtime_compat-1.39.0.tar.gz", hash = "sha256:4b6cadd2f54c1b2dc4617a4fe7fbe9cf589edcc2c8a3bd735d6ddeae8e9f6d86", size = 2872757, upload-time = "2026-03-12T14:24:53.444Z" }
982
+ wheels = [
983
+ { url = "https://files.pythonhosted.org/packages/a1/0a/ca8386033d6ddc9c3f483407a3d91d856884aa685526c9059b3dd1ada1af/polars_runtime_compat-1.39.0-cp310-abi3-macosx_10_12_x86_64.whl", hash = "sha256:9d09044a25d5b772bc8700246edccecc13b5b81b96b863de61d689eb8c1033da", size = 45004269, upload-time = "2026-03-12T14:24:05.604Z" },
984
+ { url = "https://files.pythonhosted.org/packages/c7/b1/a3c00784ffff388794e62f76594ff97b86f9ec8c3865289b8a848f2ab5a2/polars_runtime_compat-1.39.0-cp310-abi3-macosx_11_0_arm64.whl", hash = "sha256:a805846ecd0a04835f7077976867c599180c17f4a3ab7ce5166b7c19948d6d61", size = 40722555, upload-time = "2026-03-12T14:24:11.608Z" },
985
+ { url = "https://files.pythonhosted.org/packages/72/a7/0a7cc36bd71b32af413f5bb4b0c4ca0f461a837af5a99b3b14fa21ce5ea2/polars_runtime_compat-1.39.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:86ae3c841145cb0d1edb5deee06ee0f197fa208bfed5da95973851f4b8ca7157", size = 43130553, upload-time = "2026-03-12T14:24:17.587Z" },
986
+ { url = "https://files.pythonhosted.org/packages/e4/19/effb53ece561d22aabfe3d4c52eac6e8ee45543e8e95519e4f088fff9079/polars_runtime_compat-1.39.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a7d1960644d5e8de302fb5bd226ab527d1ff1f8128bee2f1b7c2aa921f2f16a6", size = 46631738, upload-time = "2026-03-12T14:24:23.909Z" },
987
+ { url = "https://files.pythonhosted.org/packages/3f/87/6ad389e9fc5fd9dafedb10230d67de88524aac18ef4007e1da47acabb34d/polars_runtime_compat-1.39.0-cp310-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:942e4454c0a4489f7d6170b1465c1736c3dc1a640055bc6e1301affe237ca33d", size = 43295531, upload-time = "2026-03-12T14:24:29.358Z" },
988
+ { url = "https://files.pythonhosted.org/packages/ed/8f/6c7086e3303de1b9c9d60b475ddd143383bfcbf535ba151de348ad8d3fc8/polars_runtime_compat-1.39.0-cp310-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:c36a2209a8f0eb3e823141c83418873ec82c170d8cf686f379e7918fc090b5c3", size = 46254001, upload-time = "2026-03-12T14:24:34.855Z" },
989
+ { url = "https://files.pythonhosted.org/packages/75/71/68a9aa095cc7759de34b8faa7fa67cdde8eae9d3741226a47022bfffabc0/polars_runtime_compat-1.39.0-cp310-abi3-win_amd64.whl", hash = "sha256:f56fab0304ad498a44b8d1541996a3494413bf18c198d933750de9533baf802d", size = 46845576, upload-time = "2026-03-12T14:24:39.857Z" },
990
+ { url = "https://files.pythonhosted.org/packages/30/d5/cb7c9fd42b8b6501b984f4f800d69448abb9c177810c78bed2dfbea1119e/polars_runtime_compat-1.39.0-cp310-abi3-win_arm64.whl", hash = "sha256:77efbc2921b62eb00bc952d6ce29e135f8c4b8a559279dcfc77a544c0dfc17cf", size = 41804211, upload-time = "2026-03-12T14:24:44.883Z" },
991
+ ]
992
+
972
993
  [[package]]
973
994
  name = "pre-commit"
974
995
  version = "4.5.1"
@@ -1628,7 +1649,7 @@ wheels = [
1628
1649
 
1629
1650
  [[package]]
1630
1651
  name = "tablassert"
1631
- version = "7.0.0"
1652
+ version = "7.0.1"
1632
1653
  source = { editable = "." }
1633
1654
  dependencies = [
1634
1655
  { name = "diskcache" },
@@ -1653,6 +1674,11 @@ dependencies = [
1653
1674
  { name = "xxhash" },
1654
1675
  ]
1655
1676
 
1677
+ [package.optional-dependencies]
1678
+ rtcompat = [
1679
+ { name = "polars", extra = ["rtcompat"] },
1680
+ ]
1681
+
1656
1682
  [package.dev-dependencies]
1657
1683
  dev = [
1658
1684
  { name = "mkdocs" },
@@ -1674,6 +1700,7 @@ requires-dist = [
1674
1700
  { name = "orjson", specifier = ">=3.11.7" },
1675
1701
  { name = "playwright", specifier = ">=1.58.0" },
1676
1702
  { name = "polars", specifier = ">=1.39.0" },
1703
+ { name = "polars", extras = ["rtcompat"], marker = "extra == 'rtcompat'", specifier = ">=1.39.0" },
1677
1704
  { name = "pyarrow", specifier = ">=23.0.1" },
1678
1705
  { name = "pydantic", specifier = ">=2.12.5" },
1679
1706
  { name = "pyexcel", specifier = ">=0.7.4" },
@@ -1685,6 +1712,7 @@ requires-dist = [
1685
1712
  { name = "typer", specifier = ">=0.24.1" },
1686
1713
  { name = "xxhash", specifier = ">=3.6.0" },
1687
1714
  ]
1715
+ provides-extras = ["rtcompat"]
1688
1716
 
1689
1717
  [package.metadata.requires-dev]
1690
1718
  dev = [
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes