From aa1851fa80f5fdff7c52d4c315d387f52d4b6a54 Mon Sep 17 00:00:00 2001 From: Chris Mungall Date: Wed, 10 Apr 2024 19:07:31 -0700 Subject: [PATCH] rename --- .github/workflows/deploy_documentation.yml | 2 +- .github/workflows/main.yaml | 2 +- Makefile | 4 +- about.yaml | 4 +- poetry.lock | 349 ++++-------------- project.Makefile | 2 +- pyproject.toml | 4 +- src/linkml_map/__init__.py | 6 + .../cli/__init__.py | 0 .../cli/cli.py | 10 +- .../compiler/__init__.py | 0 .../compiler/awk_compiler.py | 4 +- .../compiler/compiler.py | 4 +- .../compiler/graphviz_compiler.py | 4 +- .../compiler/j2_based_compiler.py | 6 +- .../compiler/markdown_compiler.py | 2 +- .../compiler/python_compiler.py | 6 +- .../compiler/r2rml_compiler.py | 4 +- .../compiler/sparql_compiler.py | 4 +- .../compiler/sql_compiler.py | 4 +- .../compiler/sssom_compiler.py | 4 +- .../compiler/templates/__init__.py | 0 .../compiler/templates/markdown.j2 | 0 .../compiler/tr/__init__.py | 0 .../tr/transformer_to_mapping_tables.tr.yaml | 0 .../datamodel/__init__.py | 0 .../datamodel/sssom.map.yaml | 0 .../datamodel/transformer_model.py | 0 .../datamodel/transformer_model.yaml | 0 .../functions/__init__.py | 0 .../functions/unit_conversion.py | 0 .../importer/__init__.py | 0 .../importer/importer.py | 2 +- .../inference/__init__.py | 0 .../inference/inference.py | 2 +- .../inference/inverter.py | 2 +- .../inference/schema_mapper.py | 4 +- .../session.py | 14 +- .../transformer/__init__.py | 0 .../transformer/duckdb_transformer.py | 4 +- .../transformer/object_transformer.py | 10 +- .../transformer/transformer.py | 8 +- .../utils/__init__.py | 0 .../utils/dynamic_object.py | 0 .../utils/eval_utils.py | 0 .../utils/loaders.py | 4 +- .../utils/multi_file_transformer.py | 4 +- src/linkml_transformer/__init__.py | 6 - tests/test_cli/test_cli.py | 2 +- tests/test_compiler/test_duckdb_compiler.py | 4 +- tests/test_compiler/test_graphviz_compiler.py | 4 +- tests/test_compiler/test_markdown_compiler.py | 4 +- tests/test_compiler/test_python_compiler.py | 4 +- .../test_compliance/test_compliance_suite.py | 14 +- tests/test_datamodel.py | 2 +- .../test_schema_mapper/test_schema_mapper.py | 6 +- .../test_duckdb_transformer.py | 4 +- .../test_object_transformer.py | 12 +- .../test_transformer_examples.py | 2 +- tests/test_utils/test_dynamic_object.py | 2 +- 60 files changed, 180 insertions(+), 365 deletions(-) create mode 100644 src/linkml_map/__init__.py rename src/{linkml_transformer => linkml_map}/cli/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/cli/cli.py (93%) rename src/{linkml_transformer => linkml_map}/compiler/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/compiler/awk_compiler.py (63%) rename src/{linkml_transformer => linkml_map}/compiler/compiler.py (94%) rename src/{linkml_transformer => linkml_map}/compiler/graphviz_compiler.py (95%) rename src/{linkml_transformer => linkml_map}/compiler/j2_based_compiler.py (82%) rename src/{linkml_transformer => linkml_map}/compiler/markdown_compiler.py (73%) rename src/{linkml_transformer => linkml_map}/compiler/python_compiler.py (94%) rename src/{linkml_transformer => linkml_map}/compiler/r2rml_compiler.py (57%) rename src/{linkml_transformer => linkml_map}/compiler/sparql_compiler.py (59%) rename src/{linkml_transformer => linkml_map}/compiler/sql_compiler.py (96%) rename src/{linkml_transformer => linkml_map}/compiler/sssom_compiler.py (64%) rename src/{linkml_transformer => linkml_map}/compiler/templates/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/compiler/templates/markdown.j2 (100%) rename src/{linkml_transformer => linkml_map}/compiler/tr/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/compiler/tr/transformer_to_mapping_tables.tr.yaml (100%) rename src/{linkml_transformer => linkml_map}/datamodel/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/datamodel/sssom.map.yaml (100%) rename src/{linkml_transformer => linkml_map}/datamodel/transformer_model.py (100%) rename src/{linkml_transformer => linkml_map}/datamodel/transformer_model.yaml (100%) rename src/{linkml_transformer => linkml_map}/functions/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/functions/unit_conversion.py (100%) rename src/{linkml_transformer => linkml_map}/importer/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/importer/importer.py (90%) rename src/{linkml_transformer => linkml_map}/inference/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/inference/inference.py (94%) rename src/{linkml_transformer => linkml_map}/inference/inverter.py (99%) rename src/{linkml_transformer => linkml_map}/inference/schema_mapper.py (98%) rename src/{linkml_transformer => linkml_map}/session.py (92%) rename src/{linkml_transformer => linkml_map}/transformer/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/transformer/duckdb_transformer.py (93%) rename src/{linkml_transformer => linkml_map}/transformer/object_transformer.py (97%) rename src/{linkml_transformer => linkml_map}/transformer/transformer.py (96%) rename src/{linkml_transformer => linkml_map}/utils/__init__.py (100%) rename src/{linkml_transformer => linkml_map}/utils/dynamic_object.py (100%) rename src/{linkml_transformer => linkml_map}/utils/eval_utils.py (100%) rename src/{linkml_transformer => linkml_map}/utils/loaders.py (78%) rename src/{linkml_transformer => linkml_map}/utils/multi_file_transformer.py (98%) delete mode 100644 src/linkml_transformer/__init__.py diff --git a/.github/workflows/deploy_documentation.yml b/.github/workflows/deploy_documentation.yml index b5c9cfb..dabf1ff 100644 --- a/.github/workflows/deploy_documentation.yml +++ b/.github/workflows/deploy_documentation.yml @@ -7,7 +7,7 @@ on: branches: [ main ] paths: - - 'src/linkml_transformer/datamodel.yaml' + - 'src/linkml_map/datamodel.yaml' # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 905e22c..b298ee6 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -86,7 +86,7 @@ jobs: # run tests and generate coverage report #---------------------------------------------- - name: Run tests - run: poetry run pytest --cov=src/linkml_transformer --cov-report=xml -rP tests/ + run: poetry run pytest --cov=src/linkml_map --cov-report=xml -rP tests/ #---------------------------------------------- # upload coverage results diff --git a/Makefile b/Makefile index c88f588..2b609ca 100644 --- a/Makefile +++ b/Makefile @@ -45,12 +45,12 @@ all: gen-project gendoc deploy: all mkd-gh-deploy # TODO: make this default -src/linkml_transformer/datamodel/transformer_model.py: src/linkml_transformer/datamodel/transformer_model.yaml +src/linkml_map/datamodel/transformer_model.py: src/linkml_map/datamodel/transformer_model.yaml $(RUN) gen-pydantic --pydantic-version 2 $< > $@.tmp && mv $@.tmp $@ # generates all project files # TODO: combine pydantic into this step -gen-project: $(PYMODEL) src/linkml_transformer/datamodel/transformer_model.py +gen-project: $(PYMODEL) src/linkml_map/datamodel/transformer_model.py $(RUN) gen-project -d $(DEST) $(SOURCE_SCHEMA_PATH) test: test-python doctest diff --git a/about.yaml b/about.yaml index 62d3ee1..c0b6dcc 100644 --- a/about.yaml +++ b/about.yaml @@ -1,3 +1,3 @@ -name: linkml_transformer +name: linkml_map description: Datamodel for schema transformations -source_schema_path: src/linkml_transformer/datamodel/transformer_model.yaml +source_schema_path: src/linkml_map/datamodel/transformer_model.yaml diff --git a/poetry.lock b/poetry.lock index 4d4c034..0f23bbc 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,10 +1,9 @@ -# This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. [[package]] name = "annotated-types" version = "0.6.0" description = "Reusable constraint types to use with typing.Annotated" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -16,7 +15,6 @@ files = [ name = "antlr4-python3-runtime" version = "4.9.3" description = "ANTLR 4.9.3 runtime for Python 3.7" -category = "dev" optional = false python-versions = "*" files = [ @@ -27,7 +25,6 @@ files = [ name = "anyio" version = "4.3.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -50,7 +47,6 @@ trio = ["trio (>=0.23)"] name = "appnope" version = "0.1.4" description = "Disable App Nap on macOS >= 10.9" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -62,7 +58,6 @@ files = [ name = "argon2-cffi" version = "23.1.0" description = "Argon2 for Python" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -83,7 +78,6 @@ typing = ["mypy"] name = "argon2-cffi-bindings" version = "21.2.0" description = "Low-level CFFI bindings for Argon2" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -121,7 +115,6 @@ tests = ["pytest"] name = "arrow" version = "1.3.0" description = "Better dates & times for Python" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -135,13 +128,12 @@ types-python-dateutil = ">=2.8.10" [package.extras] doc = ["doc8", "sphinx (>=7.0.0)", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx_rtd_theme (>=1.3.0)"] -test = ["dateparser (>=1.0.0,<2.0.0)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (>=3.0.0,<4.0.0)"] +test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (==3.*)"] [[package]] name = "asteval" version = "0.9.32" description = "Safe, minimalistic evaluator of python expression using ast module" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -159,7 +151,6 @@ test = ["coverage", "pytest", "pytest-cov"] name = "asttokens" version = "2.4.1" description = "Annotate AST trees with source code positions" -category = "dev" optional = false python-versions = "*" files = [ @@ -178,7 +169,6 @@ test = ["astroid (>=1,<2)", "astroid (>=2,<4)", "pytest"] name = "async-lru" version = "2.0.4" description = "Simple LRU cache for asyncio" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -193,7 +183,6 @@ typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} name = "attrs" version = "23.2.0" description = "Classes Without Boilerplate" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -213,7 +202,6 @@ tests-no-zope = ["attrs[tests-mypy]", "cloudpickle", "hypothesis", "pympler", "p name = "babel" version = "2.14.0" description = "Internationalization utilities" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -228,7 +216,6 @@ dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] name = "beautifulsoup4" version = "4.12.3" description = "Screen-scraping library" -category = "dev" optional = false python-versions = ">=3.6.0" files = [ @@ -250,7 +237,6 @@ lxml = ["lxml"] name = "bleach" version = "6.1.0" description = "An easy safelist-based HTML-sanitizing tool." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -269,7 +255,6 @@ css = ["tinycss2 (>=1.1.0,<1.3)"] name = "cachetools" version = "5.3.3" description = "Extensible memoizing collections and decorators" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -281,7 +266,6 @@ files = [ name = "certifi" version = "2024.2.2" description = "Python package for providing Mozilla's CA Bundle." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -293,7 +277,6 @@ files = [ name = "cffi" version = "1.16.0" description = "Foreign Function Interface for Python calling C code." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -358,7 +341,6 @@ pycparser = "*" name = "cfgraph" version = "0.2.1" description = "rdflib collections flattening graph" -category = "dev" optional = false python-versions = "*" files = [ @@ -372,7 +354,6 @@ rdflib = ">=0.4.2" name = "chardet" version = "5.2.0" description = "Universal encoding detector for Python 3" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -384,7 +365,6 @@ files = [ name = "charset-normalizer" version = "3.3.2" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." -category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -484,7 +464,6 @@ files = [ name = "click" version = "8.1.7" description = "Composable command line interface toolkit" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -499,7 +478,6 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} name = "colorama" version = "0.4.6" description = "Cross-platform colored terminal text." -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" files = [ @@ -511,7 +489,6 @@ files = [ name = "comm" version = "0.2.2" description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -529,7 +506,6 @@ test = ["pytest"] name = "coverage" version = "7.4.4" description = "Code coverage measurement for Python" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -595,14 +571,13 @@ toml = ["tomli"] [[package]] name = "curies" -version = "0.7.8" +version = "0.7.9" description = "Idiomatic conversion between URIs and compact URIs (CURIEs)." -category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "curies-0.7.8-py3-none-any.whl", hash = "sha256:a60b2559f08557176b0a3df1f7c47ec7cd8ae4e0695f23fc6574825d2ccd17eb"}, - {file = "curies-0.7.8.tar.gz", hash = "sha256:d208ad40b5e40b532285c917f116001f9e887a48dda54e6eedd10e514ea6aa1a"}, + {file = "curies-0.7.9-py3-none-any.whl", hash = "sha256:e4c5beb91642376953c94db0ee2fb5d2b011c3b16749516436114ba61442f260"}, + {file = "curies-0.7.9.tar.gz", hash = "sha256:3b63c5fea7b0e967629a3a384b1a8c59b56c503487c1dcbacddeab59e25db4d8"}, ] [package.dependencies] @@ -622,7 +597,6 @@ tests = ["coverage", "pytest"] name = "debugpy" version = "1.8.1" description = "An implementation of the Debug Adapter Protocol for Python" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -654,7 +628,6 @@ files = [ name = "decorator" version = "5.1.1" description = "Decorators for Humans" -category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -666,7 +639,6 @@ files = [ name = "deepdiff" version = "6.7.1" description = "Deep Difference and Search of any Python object/data. Recreate objects by adding adding deltas to each other." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -685,7 +657,6 @@ optimize = ["orjson"] name = "defusedxml" version = "0.7.1" description = "XML bomb protection for Python stdlib modules" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -697,7 +668,6 @@ files = [ name = "deprecated" version = "1.2.14" description = "Python @deprecated decorator to deprecate old python classes, functions or methods." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -715,7 +685,6 @@ dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "sphinx (<2)", "tox"] name = "distlib" version = "0.3.8" description = "Distribution utilities" -category = "dev" optional = false python-versions = "*" files = [ @@ -727,7 +696,6 @@ files = [ name = "duckdb" version = "0.10.1" description = "DuckDB in-process database" -category = "dev" optional = false python-versions = ">=3.7.0" files = [ @@ -784,7 +752,6 @@ files = [ name = "editorconfig" version = "0.12.4" description = "EditorConfig File Locator and Interpreter for Python" -category = "dev" optional = false python-versions = "*" files = [ @@ -795,7 +762,6 @@ files = [ name = "et-xmlfile" version = "1.1.0" description = "An implementation of lxml.xmlfile for the standard library" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -807,7 +773,6 @@ files = [ name = "exceptiongroup" version = "1.2.0" description = "Backport of PEP 654 (exception groups)" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -822,7 +787,6 @@ test = ["pytest (>=6)"] name = "executing" version = "2.0.1" description = "Get the currently executing AST node of a frame, and other information" -category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -837,7 +801,6 @@ tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipyth name = "fastjsonschema" version = "2.19.1" description = "Fastest Python implementation of JSON schema" -category = "dev" optional = false python-versions = "*" files = [ @@ -850,26 +813,24 @@ devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benc [[package]] name = "filelock" -version = "3.13.1" +version = "3.13.4" description = "A platform independent file lock." -category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "filelock-3.13.1-py3-none-any.whl", hash = "sha256:57dbda9b35157b05fb3e58ee91448612eb674172fab98ee235ccb0b5bee19a1c"}, - {file = "filelock-3.13.1.tar.gz", hash = "sha256:521f5f56c50f8426f5e03ad3b281b490a87ef15bc6c526f168290f0c7148d44e"}, + {file = "filelock-3.13.4-py3-none-any.whl", hash = "sha256:404e5e9253aa60ad457cae1be07c0f0ca90a63931200a47d9b6a6af84fd7b45f"}, + {file = "filelock-3.13.4.tar.gz", hash = "sha256:d13f466618bfde72bd2c18255e269f72542c6e70e7bac83a0232d6b1cc5c8cf4"}, ] [package.extras] -docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.24)"] -testing = ["covdefaults (>=2.3)", "coverage (>=7.3.2)", "diff-cover (>=8)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-timeout (>=2.2)"] +docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.25.2)"] +testing = ["covdefaults (>=2.3)", "coverage (>=7.3.2)", "diff-cover (>=8.0.1)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-timeout (>=2.2)"] typing = ["typing-extensions (>=4.8)"] [[package]] name = "fqdn" version = "1.5.1" description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" -category = "dev" optional = false python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" files = [ @@ -881,7 +842,6 @@ files = [ name = "ghp-import" version = "2.1.0" description = "Copy your docs directly to the gh-pages branch." -category = "dev" optional = false python-versions = "*" files = [ @@ -899,7 +859,6 @@ dev = ["flake8", "markdown", "twine", "wheel"] name = "gitdb" version = "4.0.11" description = "Git Object Database" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -912,27 +871,26 @@ smmap = ">=3.0.1,<6" [[package]] name = "gitpython" -version = "3.1.42" +version = "3.1.43" description = "GitPython is a Python library used to interact with Git repositories" -category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "GitPython-3.1.42-py3-none-any.whl", hash = "sha256:1bf9cd7c9e7255f77778ea54359e54ac22a72a5b51288c457c881057b7bb9ecd"}, - {file = "GitPython-3.1.42.tar.gz", hash = "sha256:2d99869e0fef71a73cbd242528105af1d6c1b108c60dfabd994bf292f76c3ceb"}, + {file = "GitPython-3.1.43-py3-none-any.whl", hash = "sha256:eec7ec56b92aad751f9912a73404bc02ba212a23adb2c7098ee668417051a1ff"}, + {file = "GitPython-3.1.43.tar.gz", hash = "sha256:35f314a9f878467f5453cc1fee295c3e18e52f1b99f10f6cf5b1682e968a9e7c"}, ] [package.dependencies] gitdb = ">=4.0.1,<5" [package.extras] -test = ["black", "coverage[toml]", "ddt (>=1.1.1,!=1.4.3)", "mock", "mypy", "pre-commit", "pytest (>=7.3.1)", "pytest-cov", "pytest-instafail", "pytest-mock", "pytest-sugar"] +doc = ["sphinx (==4.3.2)", "sphinx-autodoc-typehints", "sphinx-rtd-theme", "sphinxcontrib-applehelp (>=1.0.2,<=1.0.4)", "sphinxcontrib-devhelp (==1.0.2)", "sphinxcontrib-htmlhelp (>=2.0.0,<=2.0.1)", "sphinxcontrib-qthelp (==1.0.3)", "sphinxcontrib-serializinghtml (==1.1.5)"] +test = ["coverage[toml]", "ddt (>=1.1.1,!=1.4.3)", "mock", "mypy", "pre-commit", "pytest (>=7.3.1)", "pytest-cov", "pytest-instafail", "pytest-mock", "pytest-sugar", "typing-extensions"] [[package]] name = "graphviz" version = "0.20.3" description = "Simple Python interface for Graphviz" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -949,7 +907,6 @@ test = ["coverage", "pytest (>=7,<8.1)", "pytest-cov", "pytest-mock (>=3)"] name = "greenlet" version = "3.0.3" description = "Lightweight in-process concurrent programming" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1021,7 +978,6 @@ test = ["objgraph", "psutil"] name = "h11" version = "0.14.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1033,7 +989,6 @@ files = [ name = "hbreader" version = "0.9.1" description = "Honey Badger reader - a generic file/url/string open and read tool" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1043,14 +998,13 @@ files = [ [[package]] name = "httpcore" -version = "1.0.4" +version = "1.0.5" description = "A minimal low-level HTTP client." -category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "httpcore-1.0.4-py3-none-any.whl", hash = "sha256:ac418c1db41bade2ad53ae2f3834a3a0f5ae76b56cf5aa497d2d033384fc7d73"}, - {file = "httpcore-1.0.4.tar.gz", hash = "sha256:cb2839ccfcba0d2d3c1131d3c3e26dfc327326fbe7a5dc0dbfe9f6c9151bb022"}, + {file = "httpcore-1.0.5-py3-none-any.whl", hash = "sha256:421f18bac248b25d310f3cacd198d55b8e6125c107797b609ff9b7a6ba7991b5"}, + {file = "httpcore-1.0.5.tar.gz", hash = "sha256:34a38e2f9291467ee3b44e89dd52615370e152954ba21721378a87b2960f7a61"}, ] [package.dependencies] @@ -1060,14 +1014,13 @@ h11 = ">=0.13,<0.15" [package.extras] asyncio = ["anyio (>=4.0,<5.0)"] http2 = ["h2 (>=3,<5)"] -socks = ["socksio (>=1.0.0,<2.0.0)"] -trio = ["trio (>=0.22.0,<0.25.0)"] +socks = ["socksio (==1.*)"] +trio = ["trio (>=0.22.0,<0.26.0)"] [[package]] name = "httpx" version = "0.27.0" description = "The next generation HTTP client." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1078,21 +1031,20 @@ files = [ [package.dependencies] anyio = "*" certifi = "*" -httpcore = ">=1.0.0,<2.0.0" +httpcore = "==1.*" idna = "*" sniffio = "*" [package.extras] brotli = ["brotli", "brotlicffi"] -cli = ["click (>=8.0.0,<9.0.0)", "pygments (>=2.0.0,<3.0.0)", "rich (>=10,<14)"] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] http2 = ["h2 (>=3,<5)"] -socks = ["socksio (>=1.0.0,<2.0.0)"] +socks = ["socksio (==1.*)"] [[package]] name = "idna" version = "3.6" description = "Internationalized Domain Names in Applications (IDNA)" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1104,7 +1056,6 @@ files = [ name = "importlib-metadata" version = "7.1.0" description = "Read metadata from Python packages" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1124,7 +1075,6 @@ testing = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", name = "iniconfig" version = "2.0.0" description = "brain-dead simple config-ini parsing" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1134,14 +1084,13 @@ files = [ [[package]] name = "ipykernel" -version = "6.29.3" +version = "6.29.4" description = "IPython Kernel for Jupyter" -category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "ipykernel-6.29.3-py3-none-any.whl", hash = "sha256:5aa086a4175b0229d4eca211e181fb473ea78ffd9869af36ba7694c947302a21"}, - {file = "ipykernel-6.29.3.tar.gz", hash = "sha256:e14c250d1f9ea3989490225cc1a542781b095a18a19447fcf2b5eaf7d0ac5bd2"}, + {file = "ipykernel-6.29.4-py3-none-any.whl", hash = "sha256:1181e653d95c6808039c509ef8e67c4126b3b3af7781496c7cbfb5ed938a27da"}, + {file = "ipykernel-6.29.4.tar.gz", hash = "sha256:3d44070060f9475ac2092b760123fadf105d2e2493c24848b6691a7c4f42af5c"}, ] [package.dependencies] @@ -1150,7 +1099,7 @@ comm = ">=0.1.1" debugpy = ">=1.6.5" ipython = ">=7.23.1" jupyter-client = ">=6.1.12" -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" matplotlib-inline = ">=0.1" nest-asyncio = "*" packaging = "*" @@ -1170,7 +1119,6 @@ test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio name = "ipython" version = "8.18.1" description = "IPython: Productive Interactive Computing" -category = "dev" optional = false python-versions = ">=3.9" files = [ @@ -1208,7 +1156,6 @@ test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.22)", "pa name = "ipywidgets" version = "8.1.2" description = "Jupyter interactive widgets" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1230,7 +1177,6 @@ test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] name = "isodate" version = "0.6.1" description = "An ISO 8601 date/time/duration parser and formatter" -category = "main" optional = false python-versions = "*" files = [ @@ -1245,7 +1191,6 @@ six = "*" name = "isoduration" version = "20.11.0" description = "Operations with ISO 8601 durations" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1260,7 +1205,6 @@ arrow = ">=0.15.0" name = "jedi" version = "0.19.1" description = "An autocompletion tool for Python that can be used for text editors." -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1280,7 +1224,6 @@ testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] name = "jinja2" version = "3.1.3" description = "A very fast and expressive template engine." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1298,7 +1241,6 @@ i18n = ["Babel (>=2.7)"] name = "jsbeautifier" version = "1.15.1" description = "JavaScript unobfuscator and beautifier." -category = "dev" optional = false python-versions = "*" files = [ @@ -1313,7 +1255,6 @@ six = ">=1.13.0" name = "json-flattener" version = "0.1.9" description = "Python library for denormalizing nested dicts or json objects to tables and back" -category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -1329,7 +1270,6 @@ pyyaml = "*" name = "json5" version = "0.9.24" description = "A Python implementation of the JSON5 data format." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1341,7 +1281,6 @@ files = [ name = "jsonasobj" version = "1.3.1" description = "JSON as python objects" -category = "dev" optional = false python-versions = "*" files = [ @@ -1353,7 +1292,6 @@ files = [ name = "jsonasobj2" version = "1.0.4" description = "JSON as python objects - version 2" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1368,7 +1306,6 @@ hbreader = "*" name = "jsonpatch" version = "1.33" description = "Apply JSON-Patches (RFC 6902)" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" files = [ @@ -1383,7 +1320,6 @@ jsonpointer = ">=1.9" name = "jsonpath-ng" version = "1.6.1" description = "A final implementation of JSONPath for Python that aims to be standard compliant, including arithmetic and binary comparison operators and providing clear AST for metaprogramming." -category = "dev" optional = false python-versions = "*" files = [ @@ -1398,7 +1334,6 @@ ply = "*" name = "jsonpointer" version = "2.4" description = "Identify specific nodes in a JSON document (RFC 6901)" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" files = [ @@ -1410,7 +1345,6 @@ files = [ name = "jsonschema" version = "4.21.1" description = "An implementation of JSON Schema validation for Python" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1441,7 +1375,6 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339- name = "jsonschema-specifications" version = "2023.12.1" description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1456,7 +1389,6 @@ referencing = ">=0.31.0" name = "jupyter" version = "1.0.0" description = "Jupyter metapackage. Install all the Jupyter components in one go." -category = "dev" optional = false python-versions = "*" files = [ @@ -1477,7 +1409,6 @@ qtconsole = "*" name = "jupyter-client" version = "8.6.1" description = "Jupyter protocol implementation and client libraries" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1487,7 +1418,7 @@ files = [ [package.dependencies] importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" python-dateutil = ">=2.8.2" pyzmq = ">=23.0" tornado = ">=6.2" @@ -1501,7 +1432,6 @@ test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pyt name = "jupyter-console" version = "6.6.3" description = "Jupyter terminal console" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1513,7 +1443,7 @@ files = [ ipykernel = ">=6.14" ipython = "*" jupyter-client = ">=7.0.0" -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" prompt-toolkit = ">=3.0.30" pygments = "*" pyzmq = ">=17" @@ -1526,7 +1456,6 @@ test = ["flaky", "pexpect", "pytest"] name = "jupyter-core" version = "5.7.2" description = "Jupyter core package. A base package on which Jupyter projects rely." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1547,7 +1476,6 @@ test = ["ipykernel", "pre-commit", "pytest (<8)", "pytest-cov", "pytest-timeout" name = "jupyter-events" version = "0.10.0" description = "Jupyter Event System library" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1571,14 +1499,13 @@ test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "p [[package]] name = "jupyter-lsp" -version = "2.2.4" +version = "2.2.5" description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server" -category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "jupyter-lsp-2.2.4.tar.gz", hash = "sha256:5e50033149344065348e688608f3c6d654ef06d9856b67655bd7b6bac9ee2d59"}, - {file = "jupyter_lsp-2.2.4-py3-none-any.whl", hash = "sha256:da61cb63a16b6dff5eac55c2699cc36eac975645adee02c41bdfc03bf4802e77"}, + {file = "jupyter-lsp-2.2.5.tar.gz", hash = "sha256:793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001"}, + {file = "jupyter_lsp-2.2.5-py3-none-any.whl", hash = "sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da"}, ] [package.dependencies] @@ -1589,7 +1516,6 @@ jupyter-server = ">=1.1.2" name = "jupyter-server" version = "2.13.0" description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1602,7 +1528,7 @@ anyio = ">=3.1.0" argon2-cffi = "*" jinja2 = "*" jupyter-client = ">=7.4.4" -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" jupyter-events = ">=0.9.0" jupyter-server-terminals = "*" nbconvert = ">=6.4.4" @@ -1626,7 +1552,6 @@ test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0)", "pytest-console-sc name = "jupyter-server-terminals" version = "0.5.3" description = "A Jupyter Server Extension Providing Terminals." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1644,21 +1569,20 @@ test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (> [[package]] name = "jupyterlab" -version = "4.1.5" +version = "4.1.6" description = "JupyterLab computational environment" -category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "jupyterlab-4.1.5-py3-none-any.whl", hash = "sha256:3bc843382a25e1ab7bc31d9e39295a9f0463626692b7995597709c0ab236ab2c"}, - {file = "jupyterlab-4.1.5.tar.gz", hash = "sha256:c9ad75290cb10bfaff3624bf3fbb852319b4cce4c456613f8ebbaa98d03524db"}, + {file = "jupyterlab-4.1.6-py3-none-any.whl", hash = "sha256:cf3e862bc10dbf4331e4eb37438634f813c238cfc62c71c640b3b3b2caa089a8"}, + {file = "jupyterlab-4.1.6.tar.gz", hash = "sha256:7935f36ba26eb615183a4f5c2bbca5791b5108ce2a00b5505f8cfd100d53648e"}, ] [package.dependencies] async-lru = ">=1.0.0" httpx = ">=0.25.0" importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} -ipykernel = "*" +ipykernel = ">=6.5.0" jinja2 = ">=3.0.3" jupyter-core = "*" jupyter-lsp = ">=2.0.0" @@ -1666,7 +1590,7 @@ jupyter-server = ">=2.4.0,<3" jupyterlab-server = ">=2.19.0,<3" notebook-shim = ">=0.2" packaging = "*" -tomli = {version = "*", markers = "python_version < \"3.11\""} +tomli = {version = ">=1.2.2", markers = "python_version < \"3.11\""} tornado = ">=6.2.0" traitlets = "*" @@ -1675,12 +1599,12 @@ dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-jupyter", "sphinx (>=1.8,<7.3.0)", "sphinx-copybutton"] docs-screenshots = ["altair (==5.2.0)", "ipython (==8.16.1)", "ipywidgets (==8.1.1)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.0.post6)", "matplotlib (==3.8.2)", "nbconvert (>=7.0.0)", "pandas (==2.2.0)", "scipy (==1.12.0)", "vega-datasets (==0.9.0)"] test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "requests", "requests-cache", "virtualenv"] +upgrade-extension = ["copier (>=8.0,<9.0)", "jinja2-time (<0.3)", "pydantic (<2.0)", "pyyaml-include (<2.0)", "tomli-w (<2.0)"] [[package]] name = "jupyterlab-pygments" version = "0.3.0" description = "Pygments theme using JupyterLab CSS variables" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1690,14 +1614,13 @@ files = [ [[package]] name = "jupyterlab-server" -version = "2.25.4" +version = "2.26.0" description = "A set of server components for JupyterLab and JupyterLab like applications." -category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "jupyterlab_server-2.25.4-py3-none-any.whl", hash = "sha256:eb645ecc8f9b24bac5decc7803b6d5363250e16ec5af814e516bc2c54dd88081"}, - {file = "jupyterlab_server-2.25.4.tar.gz", hash = "sha256:2098198e1e82e0db982440f9b5136175d73bea2cd42a6480aa6fd502cb23c4f9"}, + {file = "jupyterlab_server-2.26.0-py3-none-any.whl", hash = "sha256:54622cbd330526a385ee0c1fdccdff3a1e7219bf3e864a335284a1270a1973df"}, + {file = "jupyterlab_server-2.26.0.tar.gz", hash = "sha256:9b3ba91cf2837f7f124fca36d63f3ca80ace2bed4898a63dd47e6598c1ab006f"}, ] [package.dependencies] @@ -1719,7 +1642,6 @@ test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-v name = "jupyterlab-widgets" version = "3.0.10" description = "Jupyter interactive widgets for JupyterLab" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1731,7 +1653,6 @@ files = [ name = "lark" version = "1.1.9" description = "a modern parsing library" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1747,14 +1668,13 @@ regex = ["regex"] [[package]] name = "linkml" -version = "1.7.6" +version = "1.7.8" description = "Linked Open Data Modeling Language" -category = "dev" optional = false python-versions = "<4.0.0,>=3.8.1" files = [ - {file = "linkml-1.7.6-py3-none-any.whl", hash = "sha256:034ead225b3aab46f8bd55fd6cafa8afec135d56238312c9e5da30065319553b"}, - {file = "linkml-1.7.6.tar.gz", hash = "sha256:4638166c8c4dcb2a892a14df9d2e8799d66205b570f3888cbb984efc89aaab09"}, + {file = "linkml-1.7.8-py3-none-any.whl", hash = "sha256:4b8ebe33b422517b08ca01802dc2899ac133c502a71d811c58fa6f4263130709"}, + {file = "linkml-1.7.8.tar.gz", hash = "sha256:af48ee1ad6751c8d20de2832dbeefe225da9be5f39a7f8ea7821a691cf7c0148"}, ] [package.dependencies] @@ -1767,11 +1687,11 @@ jinja2 = ">=3.1.0" jsonasobj2 = ">=1.0.3,<2.0.0" jsonschema = {version = ">=4.0.0", extras = ["format"]} linkml-dataops = "*" -linkml-runtime = ">=1.7.0" +linkml-runtime = ">=1.7.4" openpyxl = "*" parse = "*" prefixcommons = ">=0.1.7" -prefixmaps = ">=0.1.3" +prefixmaps = ">=0.2.2" pydantic = ">=1.0.0,<3.0.0" pyjsg = ">=0.11.6" pyshex = ">=0.7.20" @@ -1784,14 +1704,14 @@ sqlalchemy = ">=1.4.31" watchdog = ">=0.9.0" [package.extras] +black = ["black (>=24.0.0)"] shacl = ["pyshacl (>=0.25.0,<0.26.0)"] -tests = ["pyshacl (>=0.25.0,<0.26.0)"] +tests = ["black (>=24.0.0)", "pyshacl (>=0.25.0,<0.26.0)"] [[package]] name = "linkml-dataops" version = "0.1.0" description = "LinkML Data Operations API" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1808,14 +1728,13 @@ linkml-runtime = ">=1.1.6" [[package]] name = "linkml-runtime" -version = "1.7.4" +version = "1.7.5" description = "Runtime environment for LinkML, the Linked open data modeling language" -category = "main" optional = false python-versions = "<4.0,>=3.8" files = [ - {file = "linkml_runtime-1.7.4-py3-none-any.whl", hash = "sha256:6808e752a95b709b0fbc66841df7707bb0011b09286fe71b4169d4b885ee27a7"}, - {file = "linkml_runtime-1.7.4.tar.gz", hash = "sha256:b5578c3b82b08d50d45f4a6b858004839dbb5c81150f9057a54e79ef78f3d04e"}, + {file = "linkml_runtime-1.7.5-py3-none-any.whl", hash = "sha256:c58000c7c68fa97b7d76c50421a85a64e25f07eec5bcac464bc00c4cd79007a6"}, + {file = "linkml_runtime-1.7.5.tar.gz", hash = "sha256:b31197a5398359441ae1ed43470c54377a1d08db961366dda670300dddcd71d7"}, ] [package.dependencies] @@ -1837,7 +1756,6 @@ requests = "*" name = "markdown" version = "3.6" description = "Python implementation of John Gruber's Markdown." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1856,7 +1774,6 @@ testing = ["coverage", "pyyaml"] name = "markupsafe" version = "2.1.5" description = "Safely add untrusted strings to HTML/XML markup." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1926,7 +1843,6 @@ files = [ name = "matplotlib-inline" version = "0.1.6" description = "Inline Matplotlib backend for Jupyter" -category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -1941,7 +1857,6 @@ traitlets = "*" name = "mergedeep" version = "1.3.4" description = "A deep merge function for 🐍." -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1953,7 +1868,6 @@ files = [ name = "mistune" version = "3.0.2" description = "A sane and fast Markdown parser with useful plugins and renderers" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1965,7 +1879,6 @@ files = [ name = "mkdocs" version = "1.5.3" description = "Project documentation with Markdown." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1995,14 +1908,13 @@ min-versions = ["babel (==2.9.0)", "click (==7.0)", "colorama (==0.4)", "ghp-imp [[package]] name = "mkdocs-material" -version = "9.5.15" +version = "9.5.17" description = "Documentation that simply works" -category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "mkdocs_material-9.5.15-py3-none-any.whl", hash = "sha256:e5c96dec3d19491de49ca643fc1dbb92b278e43cdb816c775bc47db77d9b62fb"}, - {file = "mkdocs_material-9.5.15.tar.gz", hash = "sha256:39f03cca45e82bf54eb7456b5a18bd252eabfdd67f237a229471484a0a4d4635"}, + {file = "mkdocs_material-9.5.17-py3-none-any.whl", hash = "sha256:14a2a60119a785e70e765dd033e6211367aca9fc70230e577c1cf6a326949571"}, + {file = "mkdocs_material-9.5.17.tar.gz", hash = "sha256:06ae1275a72db1989cf6209de9e9ecdfbcfdbc24c58353877b2bb927dbe413e4"}, ] [package.dependencies] @@ -2027,7 +1939,6 @@ recommended = ["mkdocs-minify-plugin (>=0.7,<1.0)", "mkdocs-redirects (>=1.2,<2. name = "mkdocs-material-extensions" version = "1.3.1" description = "Extension pack for Python Markdown and MkDocs Material." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2039,7 +1950,6 @@ files = [ name = "mkdocs-mermaid2-plugin" version = "0.6.0" description = "A MkDocs plugin for including mermaid graphs in markdown sources" -category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -2061,7 +1971,6 @@ setuptools = ">=18.5" name = "mkdocs-windmill" version = "1.0.5" description = "MkDocs theme focused on navigation and usability" -category = "dev" optional = false python-versions = "*" files = [ @@ -2076,7 +1985,6 @@ mkdocs = "*" name = "mknotebooks" version = "0.8.0" description = "Plugin for mkdocs to generate markdown documents from jupyter notebooks." -category = "dev" optional = false python-versions = "*" files = [ @@ -2094,7 +2002,6 @@ nbconvert = ">=6.0.0" name = "nbclient" version = "0.10.0" description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." -category = "dev" optional = false python-versions = ">=3.8.0" files = [ @@ -2104,7 +2011,7 @@ files = [ [package.dependencies] jupyter-client = ">=6.1.12" -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" nbformat = ">=5.1" traitlets = ">=5.4" @@ -2117,7 +2024,6 @@ test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>= name = "nbconvert" version = "7.16.3" description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2154,20 +2060,19 @@ webpdf = ["playwright"] [[package]] name = "nbformat" -version = "5.10.3" +version = "5.10.4" description = "The Jupyter Notebook format" -category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "nbformat-5.10.3-py3-none-any.whl", hash = "sha256:d9476ca28676799af85385f409b49d95e199951477a159a576ef2a675151e5e8"}, - {file = "nbformat-5.10.3.tar.gz", hash = "sha256:60ed5e910ef7c6264b87d644f276b1b49e24011930deef54605188ddeb211685"}, + {file = "nbformat-5.10.4-py3-none-any.whl", hash = "sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b"}, + {file = "nbformat-5.10.4.tar.gz", hash = "sha256:322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a"}, ] [package.dependencies] -fastjsonschema = "*" +fastjsonschema = ">=2.15" jsonschema = ">=2.6" -jupyter-core = "*" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" traitlets = ">=5.1" [package.extras] @@ -2178,7 +2083,6 @@ test = ["pep440", "pre-commit", "pytest", "testpath"] name = "nest-asyncio" version = "1.6.0" description = "Patch asyncio to allow nested event loops" -category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -2190,7 +2094,6 @@ files = [ name = "notebook" version = "7.1.2" description = "Jupyter Notebook - A web-based notebook environment for interactive computing" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2214,7 +2117,6 @@ test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4 name = "notebook-shim" version = "0.2.4" description = "A shim layer for notebook traits and config" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2232,7 +2134,6 @@ test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync" name = "openpyxl" version = "3.1.2" description = "A Python library to read/write Excel 2010 xlsx/xlsm files" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -2247,7 +2148,6 @@ et-xmlfile = "*" name = "ordered-set" version = "4.1.0" description = "An OrderedSet is a custom MutableSet that remembers its order, so that every" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2262,7 +2162,6 @@ dev = ["black", "mypy", "pytest"] name = "overrides" version = "7.7.0" description = "A decorator to automatically detect mismatch when overriding a method." -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -2274,7 +2173,6 @@ files = [ name = "packaging" version = "24.0" description = "Core utilities for Python packages" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2286,7 +2184,6 @@ files = [ name = "paginate" version = "0.5.6" description = "Divides large result sets into pages for easier browsing" -category = "dev" optional = false python-versions = "*" files = [ @@ -2297,7 +2194,6 @@ files = [ name = "pandocfilters" version = "1.5.1" description = "Utilities for writing pandoc filters in python" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -2309,7 +2205,6 @@ files = [ name = "parse" version = "1.20.1" description = "parse() is the opposite of format()" -category = "dev" optional = false python-versions = "*" files = [ @@ -2319,25 +2214,23 @@ files = [ [[package]] name = "parso" -version = "0.8.3" +version = "0.8.4" description = "A Python Parser" -category = "dev" optional = false python-versions = ">=3.6" files = [ - {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"}, - {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"}, + {file = "parso-0.8.4-py2.py3-none-any.whl", hash = "sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18"}, + {file = "parso-0.8.4.tar.gz", hash = "sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d"}, ] [package.extras] -qa = ["flake8 (==3.8.3)", "mypy (==0.782)"] -testing = ["docopt", "pytest (<6.0.0)"] +qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] +testing = ["docopt", "pytest"] [[package]] name = "pathspec" version = "0.12.1" description = "Utility library for gitignore style pattern matching of file paths." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2349,7 +2242,6 @@ files = [ name = "pexpect" version = "4.9.0" description = "Pexpect allows easy control of interactive console applications." -category = "dev" optional = false python-versions = "*" files = [ @@ -2364,7 +2256,6 @@ ptyprocess = ">=0.5" name = "pint" version = "0.23" description = "Physical quantities module" -category = "main" optional = false python-versions = ">=3.9" files = [ @@ -2391,7 +2282,6 @@ xarray = ["xarray"] name = "platformdirs" version = "4.2.0" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2407,7 +2297,6 @@ test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4.3)", "pytest- name = "pluggy" version = "1.4.0" description = "plugin and hook calling mechanisms for python" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2423,7 +2312,6 @@ testing = ["pytest", "pytest-benchmark"] name = "ply" version = "3.11" description = "Python Lex & Yacc" -category = "dev" optional = false python-versions = "*" files = [ @@ -2435,7 +2323,6 @@ files = [ name = "prefixcommons" version = "0.1.12" description = "A python API for working with ID prefixes" -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -2451,14 +2338,13 @@ requests = ">=2.28.1,<3.0.0" [[package]] name = "prefixmaps" -version = "0.2.2" +version = "0.2.3" description = "A python library for retrieving semantic prefix maps" -category = "main" optional = false -python-versions = ">=3.8,<4.0" +python-versions = "<4.0,>=3.8" files = [ - {file = "prefixmaps-0.2.2-py3-none-any.whl", hash = "sha256:4ac2bf3ddb9b27c40c978cf937e9bedb160050d24e8c679b94c9c885e1d73c72"}, - {file = "prefixmaps-0.2.2.tar.gz", hash = "sha256:a36b1554154ef465271bde82dc91cd671e2d31dc1f50c2fd08ccb0d7d5791c33"}, + {file = "prefixmaps-0.2.3-py3-none-any.whl", hash = "sha256:342f13b74c056f5b99bcd55e79710a7cb53a2908a2a424c68d830d8d68bb9491"}, + {file = "prefixmaps-0.2.3.tar.gz", hash = "sha256:b63df4428672e89dc39a7f02816e47b1e8d74653dd3308a69465d6694fad7618"}, ] [package.dependencies] @@ -2469,7 +2355,6 @@ pyyaml = ">=5.3.1" name = "prometheus-client" version = "0.20.0" description = "Python client for the Prometheus monitoring system." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2484,7 +2369,6 @@ twisted = ["twisted"] name = "prompt-toolkit" version = "3.0.43" description = "Library for building powerful interactive command lines in Python" -category = "dev" optional = false python-versions = ">=3.7.0" files = [ @@ -2499,7 +2383,6 @@ wcwidth = "*" name = "psutil" version = "5.9.8" description = "Cross-platform lib for process and system monitoring in Python." -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" files = [ @@ -2528,7 +2411,6 @@ test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] name = "ptyprocess" version = "0.7.0" description = "Run a subprocess in a pseudo terminal" -category = "dev" optional = false python-versions = "*" files = [ @@ -2540,7 +2422,6 @@ files = [ name = "pure-eval" version = "0.2.2" description = "Safely evaluate AST nodes without side effects" -category = "dev" optional = false python-versions = "*" files = [ @@ -2553,21 +2434,19 @@ tests = ["pytest"] [[package]] name = "pycparser" -version = "2.21" +version = "2.22" description = "C parser in Python" -category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.8" files = [ - {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, - {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, + {file = "pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"}, + {file = "pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"}, ] [[package]] name = "pydantic" version = "2.6.4" description = "Data validation using Python type hints" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2587,7 +2466,6 @@ email = ["email-validator (>=2.0.0)"] name = "pydantic-core" version = "2.16.3" description = "" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2679,7 +2557,6 @@ typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" name = "pygments" version = "2.17.2" description = "Pygments is a syntax highlighting package written in Python." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2695,7 +2572,6 @@ windows-terminal = ["colorama (>=0.4.6)"] name = "pyjsg" version = "0.11.10" description = "Python JSON Schema Grammar interpreter" -category = "dev" optional = false python-versions = "*" files = [ @@ -2711,7 +2587,6 @@ jsonasobj = ">=1.2.1" name = "pymdown-extensions" version = "10.7.1" description = "Extension pack for Python Markdown." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2730,7 +2605,6 @@ extra = ["pygments (>=2.12)"] name = "pyparsing" version = "3.1.2" description = "pyparsing module - Classes and methods to define and execute parsing grammars" -category = "main" optional = false python-versions = ">=3.6.8" files = [ @@ -2745,7 +2619,6 @@ diagrams = ["jinja2", "railroad-diagrams"] name = "pyproject-api" version = "1.6.1" description = "API to interact with the python pyproject.toml based projects" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2765,7 +2638,6 @@ testing = ["covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytes name = "pyshex" version = "0.8.1" description = "Python ShEx Implementation" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -2788,7 +2660,6 @@ urllib3 = "*" name = "pyshexc" version = "0.9.1" description = "PyShExC - Python ShEx compiler" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2808,7 +2679,6 @@ shexjsg = ">=0.8.1" name = "pytest" version = "7.4.4" description = "pytest: simple powerful testing with Python" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2831,7 +2701,6 @@ testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "no name = "pytest-cov" version = "4.1.0" description = "Pytest plugin for measuring coverage." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2850,7 +2719,6 @@ testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtuale name = "pytest-logging" version = "2015.11.4" description = "Configures logging and allows tweaking the log level with a py.test flag" -category = "main" optional = false python-versions = "*" files = [ @@ -2864,7 +2732,6 @@ pytest = ">=2.8.1" name = "python-dateutil" version = "2.9.0.post0" description = "Extensions to the standard Python datetime module" -category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ @@ -2879,7 +2746,6 @@ six = ">=1.5" name = "python-json-logger" version = "2.0.7" description = "A python library adding a json log formatter" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -2891,10 +2757,10 @@ files = [ name = "pytrie" version = "0.4.0" description = "A pure Python implementation of the trie data structure." -category = "main" optional = false python-versions = "*" files = [ + {file = "PyTrie-0.4.0-py3-none-any.whl", hash = "sha256:f687c224ee8c66cda8e8628a903011b692635ffbb08d4b39c5f92b18eb78c950"}, {file = "PyTrie-0.4.0.tar.gz", hash = "sha256:8f4488f402d3465993fb6b6efa09866849ed8cda7903b50647b7d0342b805379"}, ] @@ -2905,7 +2771,6 @@ sortedcontainers = "*" name = "pywin32" version = "306" description = "Python for Window Extensions" -category = "dev" optional = false python-versions = "*" files = [ @@ -2929,7 +2794,6 @@ files = [ name = "pywinpty" version = "2.0.13" description = "Pseudo terminal support for Windows from Python." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2945,7 +2809,6 @@ files = [ name = "pyyaml" version = "6.0.1" description = "YAML parser and emitter for Python" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -3006,7 +2869,6 @@ files = [ name = "pyyaml-env-tag" version = "0.1" description = "A custom YAML tag for referencing environment variables in YAML files. " -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -3021,7 +2883,6 @@ pyyaml = "*" name = "pyzmq" version = "25.1.2" description = "Python bindings for 0MQ" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -3127,7 +2988,6 @@ cffi = {version = "*", markers = "implementation_name == \"pypy\""} name = "qtconsole" version = "5.5.1" description = "Jupyter Qt console" -category = "dev" optional = false python-versions = ">= 3.8" files = [ @@ -3153,7 +3013,6 @@ test = ["flaky", "pytest", "pytest-qt"] name = "qtpy" version = "2.4.1" description = "Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6)." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3171,7 +3030,6 @@ test = ["pytest (>=6,!=7.0.0,!=7.0.1)", "pytest-cov (>=3.0.0)", "pytest-qt"] name = "rdflib" version = "7.0.0" description = "RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information." -category = "main" optional = false python-versions = ">=3.8.1,<4.0.0" files = [ @@ -3193,7 +3051,6 @@ networkx = ["networkx (>=2.0.0,<3.0.0)"] name = "rdflib-jsonld" version = "0.6.1" description = "rdflib extension adding JSON-LD parser and serializer" -category = "dev" optional = false python-versions = "*" files = [ @@ -3208,7 +3065,6 @@ rdflib = ">=5.0.0" name = "rdflib-shim" version = "1.0.3" description = "Shim for rdflib 5 and 6 incompatibilities" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3224,7 +3080,6 @@ rdflib-jsonld = "0.6.1" name = "referencing" version = "0.34.0" description = "JSON Referencing + Python" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3240,7 +3095,6 @@ rpds-py = ">=0.7.0" name = "regex" version = "2023.12.25" description = "Alternative regular expression module, to replace re." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3343,7 +3197,6 @@ files = [ name = "requests" version = "2.31.0" description = "Python HTTP for Humans." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3365,7 +3218,6 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] name = "rfc3339-validator" version = "0.1.4" description = "A pure python RFC3339 validator" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -3380,7 +3232,6 @@ six = "*" name = "rfc3986-validator" version = "0.1.1" description = "Pure python rfc3986 validator" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -3392,7 +3243,6 @@ files = [ name = "rfc3987" version = "1.3.8" description = "Parsing and validation of URIs (RFC 3986) and IRIs (RFC 3987)" -category = "dev" optional = false python-versions = "*" files = [ @@ -3404,7 +3254,6 @@ files = [ name = "rpds-py" version = "0.18.0" description = "Python bindings to Rust's persistent data structures (rpds)" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3513,7 +3362,6 @@ files = [ name = "ruamel-yaml" version = "0.18.6" description = "ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3532,7 +3380,6 @@ jinja2 = ["ruamel.yaml.jinja2 (>=0.2)"] name = "ruamel-yaml-clib" version = "0.2.8" description = "C version of reader, parser and emitter for ruamel.yaml derived from libyaml" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -3590,14 +3437,13 @@ files = [ [[package]] name = "send2trash" -version = "1.8.2" +version = "1.8.3" description = "Send file to trash natively under Mac OS X, Windows and Linux" -category = "dev" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" files = [ - {file = "Send2Trash-1.8.2-py3-none-any.whl", hash = "sha256:a384719d99c07ce1eefd6905d2decb6f8b7ed054025bb0e618919f945de4f679"}, - {file = "Send2Trash-1.8.2.tar.gz", hash = "sha256:c132d59fa44b9ca2b1699af5c86f57ce9f4c5eb56629d5d55fbb7a35f84e2312"}, + {file = "Send2Trash-1.8.3-py3-none-any.whl", hash = "sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9"}, + {file = "Send2Trash-1.8.3.tar.gz", hash = "sha256:b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf"}, ] [package.extras] @@ -3609,7 +3455,6 @@ win32 = ["pywin32"] name = "setuptools" version = "69.2.0" description = "Easily download, build, install, upgrade, and uninstall Python packages" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -3626,7 +3471,6 @@ testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jar name = "shexjsg" version = "0.8.2" description = "ShExJSG - Astract Syntax Tree for the ShEx 2.0 language" -category = "dev" optional = false python-versions = "*" files = [ @@ -3641,7 +3485,6 @@ pyjsg = ">=0.11.10" name = "six" version = "1.16.0" description = "Python 2 and 3 compatibility utilities" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -3653,7 +3496,6 @@ files = [ name = "smmap" version = "5.0.1" description = "A pure Python implementation of a sliding window memory map manager" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3665,7 +3507,6 @@ files = [ name = "sniffio" version = "1.3.1" description = "Sniff out which async library your code is running under" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3677,7 +3518,6 @@ files = [ name = "sortedcontainers" version = "2.4.0" description = "Sorted Containers -- Sorted List, Sorted Dict, Sorted Set" -category = "main" optional = false python-versions = "*" files = [ @@ -3689,7 +3529,6 @@ files = [ name = "soupsieve" version = "2.5" description = "A modern CSS selector implementation for Beautiful Soup." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -3701,7 +3540,6 @@ files = [ name = "sparqlslurper" version = "0.5.1" description = "SPARQL Slurper for rdflib" -category = "dev" optional = false python-versions = ">=3.7.4" files = [ @@ -3718,7 +3556,6 @@ sparqlwrapper = ">=1.8.2" name = "sparqlwrapper" version = "2.0.0" description = "SPARQL Endpoint interface to Python" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3739,7 +3576,6 @@ pandas = ["pandas (>=1.3.5)"] name = "sqlalchemy" version = "2.0.29" description = "Database Abstraction Library" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3827,7 +3663,6 @@ sqlcipher = ["sqlcipher3_binary"] name = "stack-data" version = "0.6.3" description = "Extract data from python stack frames and tracebacks for informative displays" -category = "dev" optional = false python-versions = "*" files = [ @@ -3847,7 +3682,6 @@ tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] name = "terminado" version = "0.18.1" description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -3869,7 +3703,6 @@ typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] name = "tinycss2" version = "1.2.1" description = "A tiny CSS parser" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3888,7 +3721,6 @@ test = ["flake8", "isort", "pytest"] name = "tomli" version = "2.0.1" description = "A lil' TOML parser" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3900,7 +3732,6 @@ files = [ name = "tornado" version = "6.4" description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." -category = "dev" optional = false python-versions = ">= 3.8" files = [ @@ -3921,7 +3752,6 @@ files = [ name = "tox" version = "4.14.2" description = "tox is a generic virtualenv management and test command line tool" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -3949,7 +3779,6 @@ testing = ["build[virtualenv] (>=1.0.3)", "covdefaults (>=2.3)", "detect-test-po name = "traitlets" version = "5.14.2" description = "Traitlets Python configuration system" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -3965,7 +3794,6 @@ test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0, name = "types-python-dateutil" version = "2.9.0.20240316" description = "Typing stubs for python-dateutil" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -3975,21 +3803,19 @@ files = [ [[package]] name = "typing-extensions" -version = "4.10.0" +version = "4.11.0" description = "Backported and Experimental Type Hints for Python 3.8+" -category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "typing_extensions-4.10.0-py3-none-any.whl", hash = "sha256:69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"}, - {file = "typing_extensions-4.10.0.tar.gz", hash = "sha256:b0abd7c89e8fb96f98db18d86106ff1d90ab692004eb746cf6eda2682f91b3cb"}, + {file = "typing_extensions-4.11.0-py3-none-any.whl", hash = "sha256:c1f94d72897edaf4ce775bb7558d5b79d8126906a14ea5ed1635921406c0387a"}, + {file = "typing_extensions-4.11.0.tar.gz", hash = "sha256:83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0"}, ] [[package]] name = "ucumvert" version = "0.1.2" description = "Python parser & interface for UCUM (Unified Code for Units of Measure)." -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4010,7 +3836,6 @@ tests = ["coverage", "pytest"] name = "uri-template" version = "1.3.0" description = "RFC 6570 URI Template Processor" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -4025,7 +3850,6 @@ dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake name = "urllib3" version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4043,7 +3867,6 @@ zstd = ["zstandard (>=0.18.0)"] name = "virtualenv" version = "20.25.1" description = "Virtual Python Environment builder" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -4064,7 +3887,6 @@ test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess name = "watchdog" version = "4.0.0" description = "Filesystem events monitoring" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -4106,7 +3928,6 @@ watchmedo = ["PyYAML (>=3.10)"] name = "wcwidth" version = "0.2.13" description = "Measures the displayed width of unicode strings in a terminal" -category = "dev" optional = false python-versions = "*" files = [ @@ -4118,7 +3939,6 @@ files = [ name = "webcolors" version = "1.13" description = "A library for working with the color formats defined by HTML and CSS." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -4134,7 +3954,6 @@ tests = ["pytest", "pytest-cov"] name = "webencodings" version = "0.5.1" description = "Character encoding aliases for legacy web content" -category = "dev" optional = false python-versions = "*" files = [ @@ -4146,7 +3965,6 @@ files = [ name = "websocket-client" version = "1.7.0" description = "WebSocket client for Python with low level API options" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -4163,7 +3981,6 @@ test = ["websockets"] name = "widgetsnbextension" version = "4.0.10" description = "Jupyter interactive widgets for Jupyter Notebook" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -4175,7 +3992,6 @@ files = [ name = "wrapt" version = "1.16.0" description = "Module for decorators, wrappers and monkey patching." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -4255,7 +4071,6 @@ files = [ name = "zipp" version = "3.18.1" description = "Backport of pathlib-compatible object wrapper for zip files" -category = "dev" optional = false python-versions = ">=3.8" files = [ diff --git a/project.Makefile b/project.Makefile index bec5499..fb04f8f 100644 --- a/project.Makefile +++ b/project.Makefile @@ -11,5 +11,5 @@ src/docs/specification/compliance.md: tests/test_compliance/test_compliance_suit $(RUN) python -m doctest --option ELLIPSIS --option NORMALIZE_WHITESPACE $< doctest: - $(RUN) python -m doctest --option ELLIPSIS --option NORMALIZE_WHITESPACE src/linkml_transformer/*.py src/linkml_transformer/*/*.py + $(RUN) python -m doctest --option ELLIPSIS --option NORMALIZE_WHITESPACE src/linkml_map/*.py src/linkml_map/*/*.py diff --git a/pyproject.toml b/pyproject.toml index 4b63f9e..d19f714 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [tool.poetry] -name = "linkml-transformer" +name = "linkml-map" version = "0.1.0" description = "" authors = ["cmungall "] @@ -23,7 +23,7 @@ mkdocs-windmill = "*" tox = "*" [tool.poetry.scripts] -linkml-tr = "linkml_transformer.cli.cli:main" +linkml-map = "linkml_map.cli.cli:main" [tool.poetry.group.dev.dependencies] jupyter = "^1.0.0" diff --git a/src/linkml_map/__init__.py b/src/linkml_map/__init__.py new file mode 100644 index 0000000..f0f786a --- /dev/null +++ b/src/linkml_map/__init__.py @@ -0,0 +1,6 @@ +from linkml_map.transformer.object_transformer import ObjectTransformer + +__all__ = [ + "Session", + "ObjectTransformer", +] diff --git a/src/linkml_transformer/cli/__init__.py b/src/linkml_map/cli/__init__.py similarity index 100% rename from src/linkml_transformer/cli/__init__.py rename to src/linkml_map/cli/__init__.py diff --git a/src/linkml_transformer/cli/cli.py b/src/linkml_map/cli/cli.py similarity index 93% rename from src/linkml_transformer/cli/cli.py rename to src/linkml_map/cli/cli.py index 394d2e0..382d8c1 100644 --- a/src/linkml_transformer/cli/cli.py +++ b/src/linkml_map/cli/cli.py @@ -13,11 +13,11 @@ from linkml_runtime import SchemaView from linkml_runtime.dumpers import yaml_dumper -from linkml_transformer.compiler.markdown_compiler import MarkdownCompiler -from linkml_transformer.compiler.python_compiler import PythonCompiler -from linkml_transformer.inference.inverter import TransformationSpecificationInverter -from linkml_transformer.inference.schema_mapper import SchemaMapper -from linkml_transformer.transformer.object_transformer import ObjectTransformer +from linkml_map.compiler.markdown_compiler import MarkdownCompiler +from linkml_map.compiler.python_compiler import PythonCompiler +from linkml_map.inference.inverter import TransformationSpecificationInverter +from linkml_map.inference.schema_mapper import SchemaMapper +from linkml_map.transformer.object_transformer import ObjectTransformer schema_option = click.option("-s", "--schema", help="Path to source schema.") transformer_specification_option = click.option( diff --git a/src/linkml_transformer/compiler/__init__.py b/src/linkml_map/compiler/__init__.py similarity index 100% rename from src/linkml_transformer/compiler/__init__.py rename to src/linkml_map/compiler/__init__.py diff --git a/src/linkml_transformer/compiler/awk_compiler.py b/src/linkml_map/compiler/awk_compiler.py similarity index 63% rename from src/linkml_transformer/compiler/awk_compiler.py rename to src/linkml_map/compiler/awk_compiler.py index 3cc6864..f68aedb 100644 --- a/src/linkml_transformer/compiler/awk_compiler.py +++ b/src/linkml_map/compiler/awk_compiler.py @@ -1,5 +1,5 @@ -from linkml_transformer.compiler.compiler import CompiledSpecification, Compiler -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.compiler.compiler import CompiledSpecification, Compiler +from linkml_map.datamodel.transformer_model import TransformationSpecification class AWKCompiler(Compiler): diff --git a/src/linkml_transformer/compiler/compiler.py b/src/linkml_map/compiler/compiler.py similarity index 94% rename from src/linkml_transformer/compiler/compiler.py rename to src/linkml_map/compiler/compiler.py index 2a09c47..582af1b 100644 --- a/src/linkml_transformer/compiler/compiler.py +++ b/src/linkml_map/compiler/compiler.py @@ -22,8 +22,8 @@ from linkml_runtime.dumpers import yaml_dumper from linkml_runtime.utils.compile_python import compile_python -from linkml_transformer.datamodel.transformer_model import TransformationSpecification -from linkml_transformer.inference.schema_mapper import SchemaMapper +from linkml_map.datamodel.transformer_model import TransformationSpecification +from linkml_map.inference.schema_mapper import SchemaMapper @dataclass diff --git a/src/linkml_transformer/compiler/graphviz_compiler.py b/src/linkml_map/compiler/graphviz_compiler.py similarity index 95% rename from src/linkml_transformer/compiler/graphviz_compiler.py rename to src/linkml_map/compiler/graphviz_compiler.py index 94aa355..f8c0160 100644 --- a/src/linkml_transformer/compiler/graphviz_compiler.py +++ b/src/linkml_map/compiler/graphviz_compiler.py @@ -6,8 +6,8 @@ from linkml_runtime import SchemaView from pydantic import BaseModel -from linkml_transformer.compiler.compiler import CompiledSpecification, Compiler -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.compiler.compiler import CompiledSpecification, Compiler +from linkml_map.datamodel.transformer_model import TransformationSpecification class Record(BaseModel): diff --git a/src/linkml_transformer/compiler/j2_based_compiler.py b/src/linkml_map/compiler/j2_based_compiler.py similarity index 82% rename from src/linkml_transformer/compiler/j2_based_compiler.py rename to src/linkml_map/compiler/j2_based_compiler.py index 56d98ab..573f347 100644 --- a/src/linkml_transformer/compiler/j2_based_compiler.py +++ b/src/linkml_map/compiler/j2_based_compiler.py @@ -2,9 +2,9 @@ from jinja2 import Environment, FileSystemLoader -from linkml_transformer.compiler.compiler import CompiledSpecification, Compiler -from linkml_transformer.compiler.templates import TEMPLATE_DIR -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.compiler.compiler import CompiledSpecification, Compiler +from linkml_map.compiler.templates import TEMPLATE_DIR +from linkml_map.datamodel.transformer_model import TransformationSpecification @dataclass diff --git a/src/linkml_transformer/compiler/markdown_compiler.py b/src/linkml_map/compiler/markdown_compiler.py similarity index 73% rename from src/linkml_transformer/compiler/markdown_compiler.py rename to src/linkml_map/compiler/markdown_compiler.py index 2535eda..552d835 100644 --- a/src/linkml_transformer/compiler/markdown_compiler.py +++ b/src/linkml_map/compiler/markdown_compiler.py @@ -1,6 +1,6 @@ from dataclasses import dataclass -from linkml_transformer.compiler.j2_based_compiler import J2BasedCompiler +from linkml_map.compiler.j2_based_compiler import J2BasedCompiler @dataclass diff --git a/src/linkml_transformer/compiler/python_compiler.py b/src/linkml_map/compiler/python_compiler.py similarity index 94% rename from src/linkml_transformer/compiler/python_compiler.py rename to src/linkml_map/compiler/python_compiler.py index 71406d6..b4264bd 100644 --- a/src/linkml_transformer/compiler/python_compiler.py +++ b/src/linkml_map/compiler/python_compiler.py @@ -4,12 +4,12 @@ from jinja2 import Template -from linkml_transformer.compiler.compiler import Compiler -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.compiler.compiler import Compiler +from linkml_map.datamodel.transformer_model import ( ClassDerivation, TransformationSpecification, ) -from linkml_transformer.inference.inference import induce_missing_values +from linkml_map.inference.inference import induce_missing_values CD_TEMPLATE = """ {% macro gen_slot_derivation_value(sd, var) -%} diff --git a/src/linkml_transformer/compiler/r2rml_compiler.py b/src/linkml_map/compiler/r2rml_compiler.py similarity index 57% rename from src/linkml_transformer/compiler/r2rml_compiler.py rename to src/linkml_map/compiler/r2rml_compiler.py index b78b70a..0669d8f 100644 --- a/src/linkml_transformer/compiler/r2rml_compiler.py +++ b/src/linkml_map/compiler/r2rml_compiler.py @@ -1,5 +1,5 @@ -from linkml_transformer.compiler.compiler import CompiledSpecification, Compiler -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.compiler.compiler import CompiledSpecification, Compiler +from linkml_map.datamodel.transformer_model import TransformationSpecification class R2RMLCompiler(Compiler): diff --git a/src/linkml_transformer/compiler/sparql_compiler.py b/src/linkml_map/compiler/sparql_compiler.py similarity index 59% rename from src/linkml_transformer/compiler/sparql_compiler.py rename to src/linkml_map/compiler/sparql_compiler.py index 7ac5b89..3ec78df 100644 --- a/src/linkml_transformer/compiler/sparql_compiler.py +++ b/src/linkml_map/compiler/sparql_compiler.py @@ -1,5 +1,5 @@ -from linkml_transformer.compiler.compiler import CompiledSpecification, Compiler -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.compiler.compiler import CompiledSpecification, Compiler +from linkml_map.datamodel.transformer_model import TransformationSpecification class SPARQLCompiler(Compiler): diff --git a/src/linkml_transformer/compiler/sql_compiler.py b/src/linkml_map/compiler/sql_compiler.py similarity index 96% rename from src/linkml_transformer/compiler/sql_compiler.py rename to src/linkml_map/compiler/sql_compiler.py index 80d44e5..e842de1 100644 --- a/src/linkml_transformer/compiler/sql_compiler.py +++ b/src/linkml_map/compiler/sql_compiler.py @@ -1,8 +1,8 @@ from linkml_runtime import SchemaView from linkml_runtime.linkml_model import SlotDefinition -from linkml_transformer.compiler.compiler import CompiledSpecification, Compiler -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.compiler.compiler import CompiledSpecification, Compiler +from linkml_map.datamodel.transformer_model import ( ClassDerivation, SerializationSyntaxType, TransformationSpecification, diff --git a/src/linkml_transformer/compiler/sssom_compiler.py b/src/linkml_map/compiler/sssom_compiler.py similarity index 64% rename from src/linkml_transformer/compiler/sssom_compiler.py rename to src/linkml_map/compiler/sssom_compiler.py index d94bc7b..6bed9f2 100644 --- a/src/linkml_transformer/compiler/sssom_compiler.py +++ b/src/linkml_map/compiler/sssom_compiler.py @@ -1,5 +1,5 @@ -from linkml_transformer.compiler.compiler import CompiledSpecification, Compiler -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.compiler.compiler import CompiledSpecification, Compiler +from linkml_map.datamodel.transformer_model import TransformationSpecification class SSSOMCompiler(Compiler): diff --git a/src/linkml_transformer/compiler/templates/__init__.py b/src/linkml_map/compiler/templates/__init__.py similarity index 100% rename from src/linkml_transformer/compiler/templates/__init__.py rename to src/linkml_map/compiler/templates/__init__.py diff --git a/src/linkml_transformer/compiler/templates/markdown.j2 b/src/linkml_map/compiler/templates/markdown.j2 similarity index 100% rename from src/linkml_transformer/compiler/templates/markdown.j2 rename to src/linkml_map/compiler/templates/markdown.j2 diff --git a/src/linkml_transformer/compiler/tr/__init__.py b/src/linkml_map/compiler/tr/__init__.py similarity index 100% rename from src/linkml_transformer/compiler/tr/__init__.py rename to src/linkml_map/compiler/tr/__init__.py diff --git a/src/linkml_transformer/compiler/tr/transformer_to_mapping_tables.tr.yaml b/src/linkml_map/compiler/tr/transformer_to_mapping_tables.tr.yaml similarity index 100% rename from src/linkml_transformer/compiler/tr/transformer_to_mapping_tables.tr.yaml rename to src/linkml_map/compiler/tr/transformer_to_mapping_tables.tr.yaml diff --git a/src/linkml_transformer/datamodel/__init__.py b/src/linkml_map/datamodel/__init__.py similarity index 100% rename from src/linkml_transformer/datamodel/__init__.py rename to src/linkml_map/datamodel/__init__.py diff --git a/src/linkml_transformer/datamodel/sssom.map.yaml b/src/linkml_map/datamodel/sssom.map.yaml similarity index 100% rename from src/linkml_transformer/datamodel/sssom.map.yaml rename to src/linkml_map/datamodel/sssom.map.yaml diff --git a/src/linkml_transformer/datamodel/transformer_model.py b/src/linkml_map/datamodel/transformer_model.py similarity index 100% rename from src/linkml_transformer/datamodel/transformer_model.py rename to src/linkml_map/datamodel/transformer_model.py diff --git a/src/linkml_transformer/datamodel/transformer_model.yaml b/src/linkml_map/datamodel/transformer_model.yaml similarity index 100% rename from src/linkml_transformer/datamodel/transformer_model.yaml rename to src/linkml_map/datamodel/transformer_model.yaml diff --git a/src/linkml_transformer/functions/__init__.py b/src/linkml_map/functions/__init__.py similarity index 100% rename from src/linkml_transformer/functions/__init__.py rename to src/linkml_map/functions/__init__.py diff --git a/src/linkml_transformer/functions/unit_conversion.py b/src/linkml_map/functions/unit_conversion.py similarity index 100% rename from src/linkml_transformer/functions/unit_conversion.py rename to src/linkml_map/functions/unit_conversion.py diff --git a/src/linkml_transformer/importer/__init__.py b/src/linkml_map/importer/__init__.py similarity index 100% rename from src/linkml_transformer/importer/__init__.py rename to src/linkml_map/importer/__init__.py diff --git a/src/linkml_transformer/importer/importer.py b/src/linkml_map/importer/importer.py similarity index 90% rename from src/linkml_transformer/importer/importer.py rename to src/linkml_map/importer/importer.py index 9fe989f..dd23ced 100644 --- a/src/linkml_transformer/importer/importer.py +++ b/src/linkml_map/importer/importer.py @@ -11,7 +11,7 @@ from dataclasses import dataclass from typing import Any -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.datamodel.transformer_model import TransformationSpecification @dataclass diff --git a/src/linkml_transformer/inference/__init__.py b/src/linkml_map/inference/__init__.py similarity index 100% rename from src/linkml_transformer/inference/__init__.py rename to src/linkml_map/inference/__init__.py diff --git a/src/linkml_transformer/inference/inference.py b/src/linkml_map/inference/inference.py similarity index 94% rename from src/linkml_transformer/inference/inference.py rename to src/linkml_map/inference/inference.py index 58c817e..17238fd 100644 --- a/src/linkml_transformer/inference/inference.py +++ b/src/linkml_map/inference/inference.py @@ -1,6 +1,6 @@ from linkml_runtime import SchemaView -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.datamodel.transformer_model import TransformationSpecification def induce_missing_values( diff --git a/src/linkml_transformer/inference/inverter.py b/src/linkml_map/inference/inverter.py similarity index 99% rename from src/linkml_transformer/inference/inverter.py rename to src/linkml_map/inference/inverter.py index d964d39..1121c03 100644 --- a/src/linkml_transformer/inference/inverter.py +++ b/src/linkml_map/inference/inverter.py @@ -6,7 +6,7 @@ from linkml_runtime import SchemaView -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.datamodel.transformer_model import ( ClassDerivation, CollectionType, EnumDerivation, diff --git a/src/linkml_transformer/inference/schema_mapper.py b/src/linkml_map/inference/schema_mapper.py similarity index 98% rename from src/linkml_transformer/inference/schema_mapper.py rename to src/linkml_map/inference/schema_mapper.py index 37713d7..e554d97 100644 --- a/src/linkml_transformer/inference/schema_mapper.py +++ b/src/linkml_map/inference/schema_mapper.py @@ -23,14 +23,14 @@ ) from linkml_runtime.linkml_model.units import UnitOfMeasure -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.datamodel.transformer_model import ( ClassDerivation, CollectionType, CopyDirective, EnumDerivation, TransformationSpecification, ) -from linkml_transformer.transformer.transformer import Transformer +from linkml_map.transformer.transformer import Transformer logger = logging.getLogger(__name__) diff --git a/src/linkml_transformer/session.py b/src/linkml_map/session.py similarity index 92% rename from src/linkml_transformer/session.py rename to src/linkml_map/session.py index f7aa8cf..e37e015 100644 --- a/src/linkml_transformer/session.py +++ b/src/linkml_map/session.py @@ -10,11 +10,11 @@ from linkml_runtime.processing.referencevalidator import ReferenceValidator from linkml_runtime.utils.introspection import package_schemaview -from linkml_transformer import ObjectTransformer -from linkml_transformer.datamodel.transformer_model import TransformationSpecification -from linkml_transformer.inference.inverter import TransformationSpecificationInverter -from linkml_transformer.inference.schema_mapper import SchemaMapper -from linkml_transformer.transformer.transformer import Transformer +from linkml_map import ObjectTransformer +from linkml_map.datamodel.transformer_model import TransformationSpecification +from linkml_map.inference.inverter import TransformationSpecificationInverter +from linkml_map.inference.schema_mapper import SchemaMapper +from linkml_map.transformer.transformer import Transformer logger = logging.getLogger(__name__) @@ -51,7 +51,7 @@ def set_transformer_specification( elif isinstance(specification, dict): # TODO: centralize this code normalizer = ReferenceValidator( - package_schemaview("linkml_transformer.datamodel.transformer_model") + package_schemaview("linkml_map.datamodel.transformer_model") ) normalizer.expand_all = True specification = normalizer.normalize(specification) @@ -160,7 +160,7 @@ def graphviz(self, **kwargs) -> Any: """ Return a graphviz representation of the schema. """ - from linkml_transformer.compiler.graphviz_compiler import GraphvizCompiler + from linkml_map.compiler.graphviz_compiler import GraphvizCompiler gc = GraphvizCompiler(source_schemaview=self.source_schemaview) compiled = gc.compile(self.transformer_specification) diff --git a/src/linkml_transformer/transformer/__init__.py b/src/linkml_map/transformer/__init__.py similarity index 100% rename from src/linkml_transformer/transformer/__init__.py rename to src/linkml_map/transformer/__init__.py diff --git a/src/linkml_transformer/transformer/duckdb_transformer.py b/src/linkml_map/transformer/duckdb_transformer.py similarity index 93% rename from src/linkml_transformer/transformer/duckdb_transformer.py rename to src/linkml_map/transformer/duckdb_transformer.py index f156e09..097c552 100644 --- a/src/linkml_transformer/transformer/duckdb_transformer.py +++ b/src/linkml_map/transformer/duckdb_transformer.py @@ -4,8 +4,8 @@ from duckdb import DuckDBPyConnection -from linkml_transformer.compiler.sql_compiler import SQLCompiler -from linkml_transformer.transformer.transformer import OBJECT_TYPE, Transformer +from linkml_map.compiler.sql_compiler import SQLCompiler +from linkml_map.transformer.transformer import OBJECT_TYPE, Transformer DICT_OBJ = Dict[str, Any] DATABASE = Union[str, DuckDBPyConnection] diff --git a/src/linkml_transformer/transformer/object_transformer.py b/src/linkml_map/transformer/object_transformer.py similarity index 97% rename from src/linkml_transformer/transformer/object_transformer.py rename to src/linkml_map/transformer/object_transformer.py index 63068be..0d80e9b 100644 --- a/src/linkml_transformer/transformer/object_transformer.py +++ b/src/linkml_map/transformer/object_transformer.py @@ -10,15 +10,15 @@ from linkml_runtime.utils.yamlutils import YAMLRoot from pydantic import BaseModel -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.datamodel.transformer_model import ( CollectionType, SerializationSyntaxType, SlotDerivation, ) -from linkml_transformer.functions.unit_conversion import UnitSystem, convert_units -from linkml_transformer.transformer.transformer import OBJECT_TYPE, Transformer -from linkml_transformer.utils.dynamic_object import dynamic_object -from linkml_transformer.utils.eval_utils import eval_expr +from linkml_map.functions.unit_conversion import UnitSystem, convert_units +from linkml_map.transformer.transformer import OBJECT_TYPE, Transformer +from linkml_map.utils.dynamic_object import dynamic_object +from linkml_map.utils.eval_utils import eval_expr DICT_OBJ = Dict[str, Any] diff --git a/src/linkml_transformer/transformer/transformer.py b/src/linkml_map/transformer/transformer.py similarity index 96% rename from src/linkml_transformer/transformer/transformer.py rename to src/linkml_map/transformer/transformer.py index d2fb35e..696dbb7 100644 --- a/src/linkml_transformer/transformer/transformer.py +++ b/src/linkml_map/transformer/transformer.py @@ -18,14 +18,14 @@ from linkml_runtime.utils.yamlutils import YAMLRoot from pydantic import BaseModel -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.datamodel.transformer_model import ( ClassDerivation, CollectionType, EnumDerivation, SlotDerivation, TransformationSpecification, ) -from linkml_transformer.inference.inference import induce_missing_values +from linkml_map.inference.inference import induce_missing_values logger = logging.getLogger(__name__) @@ -109,7 +109,7 @@ def load_transformer_specification(self, path: Union[str, Path]): obj = yaml.safe_load(f) # necessary to expand first normalizer = ReferenceValidator( - package_schemaview("linkml_transformer.datamodel.transformer_model") + package_schemaview("linkml_map.datamodel.transformer_model") ) normalizer.expand_all = True obj = normalizer.normalize(obj) @@ -125,7 +125,7 @@ def create_transformer_specification(self, obj: Dict[str, Any]): :return: """ normalizer = ReferenceValidator( - package_schemaview("linkml_transformer.datamodel.transformer_model") + package_schemaview("linkml_map.datamodel.transformer_model") ) normalizer.expand_all = True obj = normalizer.normalize(obj) diff --git a/src/linkml_transformer/utils/__init__.py b/src/linkml_map/utils/__init__.py similarity index 100% rename from src/linkml_transformer/utils/__init__.py rename to src/linkml_map/utils/__init__.py diff --git a/src/linkml_transformer/utils/dynamic_object.py b/src/linkml_map/utils/dynamic_object.py similarity index 100% rename from src/linkml_transformer/utils/dynamic_object.py rename to src/linkml_map/utils/dynamic_object.py diff --git a/src/linkml_transformer/utils/eval_utils.py b/src/linkml_map/utils/eval_utils.py similarity index 100% rename from src/linkml_transformer/utils/eval_utils.py rename to src/linkml_map/utils/eval_utils.py diff --git a/src/linkml_transformer/utils/loaders.py b/src/linkml_map/utils/loaders.py similarity index 78% rename from src/linkml_transformer/utils/loaders.py rename to src/linkml_map/utils/loaders.py index d126189..2d89439 100644 --- a/src/linkml_transformer/utils/loaders.py +++ b/src/linkml_map/utils/loaders.py @@ -5,7 +5,7 @@ from linkml_runtime.processing.referencevalidator import ReferenceValidator from linkml_runtime.utils.introspection import package_schemaview -from linkml_transformer.datamodel.transformer_model import TransformationSpecification +from linkml_map.datamodel.transformer_model import TransformationSpecification def load_specification(path: Union[Path, str]) -> TransformationSpecification: @@ -15,7 +15,7 @@ def load_specification(path: Union[Path, str]) -> TransformationSpecification: obj = yaml.safe_load(f) # necessary to expand first normalizer = ReferenceValidator( - package_schemaview("linkml_transformer.datamodel.transformer_model") + package_schemaview("linkml_map.datamodel.transformer_model") ) normalizer.expand_all = True obj = normalizer.normalize(obj) diff --git a/src/linkml_transformer/utils/multi_file_transformer.py b/src/linkml_map/utils/multi_file_transformer.py similarity index 98% rename from src/linkml_transformer/utils/multi_file_transformer.py rename to src/linkml_map/utils/multi_file_transformer.py index 2c1dda6..54f7dcd 100644 --- a/src/linkml_transformer/utils/multi_file_transformer.py +++ b/src/linkml_map/utils/multi_file_transformer.py @@ -15,8 +15,8 @@ from linkml_runtime.dumpers import yaml_dumper from pydantic import BaseModel -from linkml_transformer.inference.schema_mapper import SchemaMapper -from linkml_transformer.transformer.object_transformer import ObjectTransformer +from linkml_map.inference.schema_mapper import SchemaMapper +from linkml_map.transformer.object_transformer import ObjectTransformer class Step(BaseModel): diff --git a/src/linkml_transformer/__init__.py b/src/linkml_transformer/__init__.py deleted file mode 100644 index 3ba6fc9..0000000 --- a/src/linkml_transformer/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -from linkml_transformer.transformer.object_transformer import ObjectTransformer - -__all__ = [ - "Session", - "ObjectTransformer", -] diff --git a/tests/test_cli/test_cli.py b/tests/test_cli/test_cli.py index 782d8f6..0b0acf2 100644 --- a/tests/test_cli/test_cli.py +++ b/tests/test_cli/test_cli.py @@ -5,7 +5,7 @@ from linkml_runtime import SchemaView from linkml_runtime.linkml_model import SchemaDefinition -from linkml_transformer.cli.cli import main +from linkml_map.cli.cli import main from tests import ( DENORM_SPECIFICATION, FLATTENING_DATA, diff --git a/tests/test_compiler/test_duckdb_compiler.py b/tests/test_compiler/test_duckdb_compiler.py index 4174a41..9047a0d 100644 --- a/tests/test_compiler/test_duckdb_compiler.py +++ b/tests/test_compiler/test_duckdb_compiler.py @@ -6,8 +6,8 @@ from linkml_runtime import SchemaView from linkml_runtime.dumpers import yaml_dumper -from linkml_transformer.compiler.sql_compiler import SQLCompiler -from linkml_transformer.session import Session +from linkml_map.compiler.sql_compiler import SQLCompiler +from linkml_map.session import Session from tests import SCHEMA1, SPECIFICATION diff --git a/tests/test_compiler/test_graphviz_compiler.py b/tests/test_compiler/test_graphviz_compiler.py index 14ef715..da2a9ff 100644 --- a/tests/test_compiler/test_graphviz_compiler.py +++ b/tests/test_compiler/test_graphviz_compiler.py @@ -5,8 +5,8 @@ import pytest from linkml_runtime import SchemaView -from linkml_transformer.compiler.graphviz_compiler import GraphvizCompiler -from linkml_transformer.utils.loaders import load_specification +from linkml_map.compiler.graphviz_compiler import GraphvizCompiler +from linkml_map.utils.loaders import load_specification from tests import OUTPUT_DIR, SCHEMA1, SPECIFICATION diff --git a/tests/test_compiler/test_markdown_compiler.py b/tests/test_compiler/test_markdown_compiler.py index 7da9263..40aee09 100644 --- a/tests/test_compiler/test_markdown_compiler.py +++ b/tests/test_compiler/test_markdown_compiler.py @@ -5,8 +5,8 @@ import pytest from linkml_runtime import SchemaView -from linkml_transformer.compiler.markdown_compiler import MarkdownCompiler -from linkml_transformer.utils.loaders import load_specification +from linkml_map.compiler.markdown_compiler import MarkdownCompiler +from linkml_map.utils.loaders import load_specification from tests import SCHEMA1, SPECIFICATION diff --git a/tests/test_compiler/test_python_compiler.py b/tests/test_compiler/test_python_compiler.py index 2767d45..2e734d4 100644 --- a/tests/test_compiler/test_python_compiler.py +++ b/tests/test_compiler/test_python_compiler.py @@ -7,8 +7,8 @@ from linkml_runtime.utils.compile_python import compile_python import tests.input.examples.personinfo_basic.model.personinfo_model as src -from linkml_transformer.compiler.python_compiler import PythonCompiler -from linkml_transformer.utils.loaders import load_specification +from linkml_map.compiler.python_compiler import PythonCompiler +from linkml_map.utils.loaders import load_specification from tests import SCHEMA1, SPECIFICATION diff --git a/tests/test_compliance/test_compliance_suite.py b/tests/test_compliance/test_compliance_suite.py index 4a63c31..1f1efa7 100644 --- a/tests/test_compliance/test_compliance_suite.py +++ b/tests/test_compliance/test_compliance_suite.py @@ -30,20 +30,20 @@ from linkml_runtime.dumpers import yaml_dumper from linkml_runtime.linkml_model import Prefix, SchemaDefinition -from linkml_transformer.compiler.python_compiler import PythonCompiler -from linkml_transformer.compiler.sql_compiler import SQLCompiler -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.compiler.python_compiler import PythonCompiler +from linkml_map.compiler.sql_compiler import SQLCompiler +from linkml_map.datamodel.transformer_model import ( CollectionType, SerializationSyntaxType, TransformationSpecification, ) -from linkml_transformer.functions.unit_conversion import ( +from linkml_map.functions.unit_conversion import ( DimensionalityError, UndefinedUnitError, ) -from linkml_transformer.inference.inverter import TransformationSpecificationInverter -from linkml_transformer.inference.schema_mapper import SchemaMapper -from linkml_transformer.transformer.object_transformer import ObjectTransformer +from linkml_map.inference.inverter import TransformationSpecificationInverter +from linkml_map.inference.schema_mapper import SchemaMapper +from linkml_map.transformer.object_transformer import ObjectTransformer logger = logging.getLogger(__name__) diff --git a/tests/test_datamodel.py b/tests/test_datamodel.py index ff2ca0a..ccc592a 100644 --- a/tests/test_datamodel.py +++ b/tests/test_datamodel.py @@ -1,6 +1,6 @@ import unittest -from linkml_transformer.transformer.object_transformer import ObjectTransformer +from linkml_map.transformer.object_transformer import ObjectTransformer from tests import PERSONINFO_TR diff --git a/tests/test_schema_mapper/test_schema_mapper.py b/tests/test_schema_mapper/test_schema_mapper.py index c0d556a..adc8beb 100644 --- a/tests/test_schema_mapper/test_schema_mapper.py +++ b/tests/test_schema_mapper/test_schema_mapper.py @@ -3,12 +3,12 @@ from linkml_runtime import SchemaView from linkml_runtime.dumpers import yaml_dumper -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.datamodel.transformer_model import ( ClassDerivation, TransformationSpecification, ) -from linkml_transformer.inference.schema_mapper import SchemaMapper -from linkml_transformer.transformer.object_transformer import ObjectTransformer +from linkml_map.inference.schema_mapper import SchemaMapper +from linkml_map.transformer.object_transformer import ObjectTransformer from tests import SCHEMA1, SPECIFICATION diff --git a/tests/test_transformer/test_duckdb_transformer.py b/tests/test_transformer/test_duckdb_transformer.py index b48b7c8..2af9dfe 100644 --- a/tests/test_transformer/test_duckdb_transformer.py +++ b/tests/test_transformer/test_duckdb_transformer.py @@ -5,8 +5,8 @@ import pytest from linkml_runtime import SchemaView -from linkml_transformer.session import Session -from linkml_transformer.transformer.duckdb_transformer import DuckDBTransformer +from linkml_map.session import Session +from linkml_map.transformer.duckdb_transformer import DuckDBTransformer from tests import PERSONINFO_SRC_SCHEMA, PERSONINFO_TGT_SCHEMA, PERSONINFO_TR diff --git a/tests/test_transformer/test_object_transformer.py b/tests/test_transformer/test_object_transformer.py index 942932b..7e400b6 100644 --- a/tests/test_transformer/test_object_transformer.py +++ b/tests/test_transformer/test_object_transformer.py @@ -17,16 +17,16 @@ import tests.input.examples.flattening.model.normalized_model as sssom_src_dm import tests.input.examples.personinfo_basic.model.agent_model as tgt_dm import tests.input.examples.personinfo_basic.model.personinfo_model as src_dm -from linkml_transformer.compiler.tr import TR_TO_MAPPING_TABLES -from linkml_transformer.datamodel import TR_SCHEMA -from linkml_transformer.datamodel.transformer_model import ( +from linkml_map.compiler.tr import TR_TO_MAPPING_TABLES +from linkml_map.datamodel import TR_SCHEMA +from linkml_map.datamodel.transformer_model import ( ClassDerivation, CollectionType, SlotDerivation, TransformationSpecification, ) -from linkml_transformer.transformer.object_transformer import ObjectTransformer -from linkml_transformer.utils.dynamic_object import dynamic_object +from linkml_map.transformer.object_transformer import ObjectTransformer +from linkml_map.utils.dynamic_object import dynamic_object from tests import ( DENORM_SCHEMA, DENORM_SPECIFICATION, @@ -400,7 +400,7 @@ def test_self_transform(self): tr.load_transformer_specification(TR_TO_MAPPING_TABLES) source_object = yaml.safe_load(open(str(PERSONINFO_TR))) normalizer = ReferenceValidator( - package_schemaview("linkml_transformer.datamodel.transformer_model") + package_schemaview("linkml_map.datamodel.transformer_model") ) normalizer.expand_all = True source_object = normalizer.normalize(source_object) diff --git a/tests/test_transformer/test_transformer_examples.py b/tests/test_transformer/test_transformer_examples.py index cf831c7..cce4c9d 100644 --- a/tests/test_transformer/test_transformer_examples.py +++ b/tests/test_transformer/test_transformer_examples.py @@ -1,6 +1,6 @@ import unittest -from linkml_transformer.utils.multi_file_transformer import MultiFileTransformer +from linkml_map.utils.multi_file_transformer import MultiFileTransformer from tests import EXAMPLE_DIR EXAMPLE_PROJECTS = [ diff --git a/tests/test_utils/test_dynamic_object.py b/tests/test_utils/test_dynamic_object.py index 3ddc277..95db14b 100644 --- a/tests/test_utils/test_dynamic_object.py +++ b/tests/test_utils/test_dynamic_object.py @@ -3,7 +3,7 @@ import yaml from linkml_runtime import SchemaView -from linkml_transformer.utils.dynamic_object import dynamic_object +from linkml_map.utils.dynamic_object import dynamic_object from tests import FLATTENING_DATA, NORM_SCHEMA