tablassert 7.4.9__tar.gz → 7.4.10__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.
- {tablassert-7.4.9 → tablassert-7.4.10}/CHANGELOG.md +5 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/PKG-INFO +1 -1
- tablassert-7.4.10/docs/changelog.md +11 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/pyproject.toml +1 -1
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/fullmap.py +4 -4
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/lib.py +2 -2
- {tablassert-7.4.9 → tablassert-7.4.10}/uv.lock +1 -1
- tablassert-7.4.9/docs/changelog.md +0 -11
- {tablassert-7.4.9 → tablassert-7.4.10}/.github/workflows/autotag.yml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/.github/workflows/docker.yml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/.github/workflows/docs.yml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/.github/workflows/pipy.yml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/.gitignore +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/.pre-commit-config.yaml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/AGENTS.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/CITATION.cff +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/CONTRIBUTING.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/Dockerfile +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/LICENSE +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/README.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/api/fullmap.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/api/lib.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/api/qc.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/api/utils.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/cli.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/configuration/advanced-example.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/configuration/graph.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/configuration/table.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/datassert.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/docker.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/examples/tutorial-data.csv +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/examples/tutorial-graph.yaml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/examples/tutorial-table.yaml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/examples.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/index.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/installation.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/docs/tutorial.md +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/llms.txt +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/mkdocs.yml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/__init__.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/cli.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/downloader.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/enums.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/ingests.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/log.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/models.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/nlp.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/progress.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/qc.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/src/tablassert/utils.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/__init__.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/conftest.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/fixtures/invalid_section_missing_source.yaml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/fixtures/minimal_section.yaml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/fixtures/minimal_section_with_sections.yaml +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_downloader.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_enums.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_fullmap.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_ingests.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_lib.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_models.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_nlp.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_qc.py +0 -0
- {tablassert-7.4.9 → tablassert-7.4.10}/tests/test_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.4.10 - 2026-05-29
|
|
6
|
+
|
|
7
|
+
### Changes
|
|
8
|
+
- Enforced explicit `biolink:` namespace prefix on predicates and qualifiers emitted by `compile_subgraph()` in `lib.py`. Both `self.statement.predicate` and `x.qualifier` (in the qualifier loop) are now prefixed via `add("biolink:", ...)`, ensuring all output edges carry fully-qualified Biolink CURIEs rather than bare predicate/qualifier names.
|
|
9
|
+
|
|
5
10
|
## 7.4.9 - 2026-05-26
|
|
6
11
|
|
|
7
12
|
### Bug Fixes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tablassert
|
|
3
|
-
Version: 7.4.
|
|
3
|
+
Version: 7.4.10
|
|
4
4
|
Summary: Extract knowledge assertions from tabular data into NCATS Translator-compliant KGX NDJSON — declaratively, with entity resolution and quality control built in.
|
|
5
5
|
Project-URL: Homepage, https://github.com/SkyeAv/Tablassert
|
|
6
6
|
Project-URL: Source, https://github.com/SkyeAv/Tablassert
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
The canonical release history lives in the repository root at [`CHANGELOG.md`](https://github.com/SkyeAv/Tablassert/blob/main/CHANGELOG.md).
|
|
4
|
+
|
|
5
|
+
## Current Release Notes
|
|
6
|
+
|
|
7
|
+
## 7.4.10 - 2026-05-29
|
|
8
|
+
|
|
9
|
+
### Changes
|
|
10
|
+
|
|
11
|
+
- Enforced explicit `biolink:` namespace prefix on predicates and qualifiers emitted by `compile_subgraph()` in `lib.py`. Both `self.statement.predicate` and `x.qualifier` (in the qualifier loop) are now prefixed via `add("biolink:", ...)`, ensuring all output edges carry fully-qualified Biolink CURIEs rather than bare predicate/qualifier names.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "tablassert"
|
|
3
|
-
version = "7.4.
|
|
3
|
+
version = "7.4.10"
|
|
4
4
|
description = "Extract knowledge assertions from tabular data into NCATS Translator-compliant KGX NDJSON — declaratively, with entity resolution and quality control built in."
|
|
5
5
|
authors = [
|
|
6
6
|
{ name = "Skye Lane Goetz", email = "sgoetz@isbscience.org" }
|
|
@@ -150,15 +150,15 @@ def log_unmatched(
|
|
|
150
150
|
) -> None:
|
|
151
151
|
# * Log Unmatched Entities
|
|
152
152
|
level_one: pl.LazyFrame = terms.filter(pl.col("nlp level") == 1)
|
|
153
|
-
antimatches: pl.LazyFrame = level_one.join(
|
|
153
|
+
antimatches: pl.LazyFrame = level_one.join(
|
|
154
|
+
matches.lazy().select("term"), left_on="term", right_on="term", how="anti"
|
|
155
|
+
)
|
|
154
156
|
|
|
155
157
|
# ! Collection Point: Requires Eager
|
|
156
158
|
unnmatched: pl.DataFrame = antimatches.select("term").unique().collect()
|
|
157
159
|
if unnmatched.height > 0:
|
|
158
160
|
for term in unnmatched.get_column("term").to_list():
|
|
159
|
-
logger.info(
|
|
160
|
-
f"FAILED | STORE: {section_hash} | CONFIG: {config_file} | COL: {col} | VALUE: {term!r}"
|
|
161
|
-
)
|
|
161
|
+
logger.info(f"FAILED | STORE: {section_hash} | CONFIG: {config_file} | COL: {col} | VALUE: {term!r}")
|
|
162
162
|
|
|
163
163
|
|
|
164
164
|
def resolve(
|
|
@@ -342,8 +342,8 @@ class Tcode(Section):
|
|
|
342
342
|
[op for x in self.annotations for op in self.encoding(x, x.annotation)] if self.annotations else None,
|
|
343
343
|
self.node(self.statement.subject, "subject", conns),
|
|
344
344
|
self.node(self.statement.object, "object", conns),
|
|
345
|
-
(value, ("predicate", self.statement.predicate)),
|
|
346
|
-
[op for x in self.statement.qualifiers for op in self.node(x, x.qualifier, conns)]
|
|
345
|
+
(value, ("predicate", add("biolink:", self.statement.predicate))),
|
|
346
|
+
[op for x in self.statement.qualifiers for op in self.node(x, add("biolink:", x.qualifier), conns)]
|
|
347
347
|
if self.statement.qualifiers
|
|
348
348
|
else None,
|
|
349
349
|
(value, ("syntax", self.syntax)),
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
The canonical release history lives in the repository root at [`CHANGELOG.md`](https://github.com/SkyeAv/Tablassert/blob/main/CHANGELOG.md).
|
|
4
|
-
|
|
5
|
-
## Current Release Notes
|
|
6
|
-
|
|
7
|
-
## 7.4.9 - 2026-05-26
|
|
8
|
-
|
|
9
|
-
### Bug Fixes
|
|
10
|
-
|
|
11
|
-
- Fixed `OSError: Too many open files` during subgraph build at large scales (700+ sections). `with_mesh()` and `with_captions()` in `lib.py` opened a `sqlite_utils.Database` per section but never closed the underlying SQLite connection, leaving FD release to GC. In the tight sequential `compile_subgraph` loop the leaked FDs accumulated past the OS soft limit, causing the next `to_store()` → `df.write_parquet()` (which polars 1.39 routes through `sink_parquet`) to fail opening its target `.storassert/*.parquet`. Both functions now wrap their query bodies in `try:` / `finally: db.conn.close()`.
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|