reasoner-validator 4.0.2__tar.gz → 4.0.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/PKG-INFO +17 -42
  2. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/README.md +15 -25
  3. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/pyproject.toml +23 -27
  4. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/LICENSE +0 -0
  5. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/.nojekyll +0 -0
  6. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/Makefile +0 -0
  7. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/conf.py +0 -0
  8. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/index.rst +0 -0
  9. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/make.bat +0 -0
  10. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/reasoner_validator.biolink.rst +0 -0
  11. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/reasoner_validator.report.rst +0 -0
  12. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/reasoner_validator.rst +0 -0
  13. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/reasoner_validator.trapi.mapping.rst +0 -0
  14. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/reasoner_validator.trapi.rst +0 -0
  15. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/reasoner_validator.validation_codes.rst +0 -0
  16. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/reasoner_validator.versioning.rst +0 -0
  17. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/docs/validation_codes_dictionary.md +0 -0
  18. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/__init__.py +0 -0
  19. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/biolink/__init__.py +0 -0
  20. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/codes.yaml +0 -0
  21. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/github.py +0 -0
  22. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/message.py +0 -0
  23. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/report.py +0 -0
  24. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/sri/__init__.py +0 -0
  25. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/sri/util.py +0 -0
  26. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/trapi/__init__.py +0 -0
  27. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/trapi/mapping.py +0 -0
  28. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/validation_codes.py +0 -0
  29. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/validator.py +0 -0
  30. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/versioning.py +0 -0
  31. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/reasoner_validator/versions.yaml +0 -0
  32. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/__init__.py +0 -0
  33. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/conftest.py +0 -0
  34. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/test_biolink_compliance_validation.py +0 -0
  35. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/test_data/patched_trapi_schema_v1.4.0-beta5.yaml +0 -0
  36. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/test_response_validator.py +0 -0
  37. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/test_semver.py +0 -0
  38. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/test_trapi_versioning.py +0 -0
  39. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/test_validate.py +0 -0
  40. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/test_validation_report.py +0 -0
  41. {reasoner_validator-4.0.2 → reasoner_validator-4.0.3}/tests/test_workflows.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: reasoner-validator
3
- Version: 4.0.2
3
+ Version: 4.0.3
4
4
  Summary: Validation tools for Reasoner API
5
5
  Home-page: https://github.com/NCATSTranslator
6
6
  License: MIT
@@ -9,37 +9,22 @@ Author: Richard Bruskiewich
9
9
  Author-email: richard.bruskiewich@delphinai.com
10
10
  Maintainer: Richard Bruskiewich
11
11
  Maintainer-email: richard.bruskiewich@delphinai.com
12
- Requires-Python: >=3.10,<4.0
12
+ Requires-Python: >=3.10,<3.12
13
13
  Classifier: Intended Audience :: Science/Research
14
14
  Classifier: License :: OSI Approved :: MIT License
15
15
  Classifier: Operating System :: OS Independent
16
16
  Classifier: Programming Language :: Python :: 3
17
17
  Classifier: Programming Language :: Python :: 3.10
18
18
  Classifier: Programming Language :: Python :: 3.11
19
- Classifier: Programming Language :: Python :: 3.12
20
19
  Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
21
- Provides-Extra: docs
22
- Provides-Extra: web
23
20
  Requires-Dist: PyYAML (>=6.0,<7.0)
24
21
  Requires-Dist: bioregistry (>=0.11.1,<0.12.0)
25
22
  Requires-Dist: bmt (>=1.4.0,<2.0.0)
26
23
  Requires-Dist: dictdiffer (>=0.9.0,<0.10.0)
27
- Requires-Dist: fastapi ; extra == "web"
28
- Requires-Dist: httpx (>=0.18.2,<0.19.0) ; extra == "web"
29
24
  Requires-Dist: jsonschema (>=4.17.3,<4.18.0)
30
- Requires-Dist: myst-parser (>=2.0.0,<3.0.0) ; extra == "docs"
31
- Requires-Dist: numpydoc (>=1.5.0,<2.0.0) ; extra == "docs"
32
- Requires-Dist: opentelemetry-exporter-otlp-proto-http ; extra == "web"
33
- Requires-Dist: opentelemetry-instrumentation-fastapi ; extra == "web"
34
- Requires-Dist: opentelemetry-instrumentation-httpx ; extra == "web"
35
25
  Requires-Dist: pydantic (>=2,<3)
36
- Requires-Dist: pytest (>=7.2.2,<8.0.0)
37
- Requires-Dist: pytest-cov (>=4.0.0,<5.0.0)
38
26
  Requires-Dist: requests (>=2.28.1,<3.0.0)
39
- Requires-Dist: sphinx (>=6.2.1,<7.0.0) ; extra == "docs"
40
- Requires-Dist: sphinx-rtd-theme (>=1.2.2,<2.0.0) ; extra == "docs"
41
27
  Requires-Dist: urllib3 (>=1.26.15,<2.0.0)
42
- Requires-Dist: uvicorn ; extra == "web"
43
28
  Project-URL: Bug Tracker, https://github.com/NCATSTranslator/reasoner-validator/issues
44
29
  Project-URL: Change Log, https://github.com/NCATSTranslator/reasoner-validator/blob/master/CHANGELOG.md
45
30
  Project-URL: Documentation, https://translator-reasoner-validator.readthedocs.io/en/latest/
@@ -73,28 +58,32 @@ The module may be installed directly from pypi.org using (Python 3) `pip` or `pi
73
58
  pip install reasoner-validator
74
59
  ```
75
60
 
76
- If you want to install it with the extra dependencies for using it as a web service, you can use:
77
-
78
- ```bash
79
- pip install "reasoner-validator[web]"
80
- ```
81
-
82
61
  ## Installing and working with the module locally from source
83
62
 
84
63
  As of release 3.1.6, this project uses the [poetry dependency management](https://python-poetry.org) tool to orchestrate its installation and dependencies.
85
64
 
86
- After [installing poetry](https://python-poetry.org/docs/#installation) and cloning the project, the poetry installation may be run:
65
+ After [installing poetry](https://python-poetry.org/docs/#installation) and cloning the project, the poetry installation may be run (within the available poetry shell):
87
66
 
88
67
  ```bash
89
68
  git clone https://github.com/NCATSTranslator/reasoner-validator.git
90
69
  cd reasoner-validator
70
+ poetry use 3.10
71
+ poetry shell
91
72
  poetry install
92
73
  ```
93
74
 
94
- To develop this package, install with all extras dependencies using:
75
+ Note that the **`poetry env`** can be set to either Python 3.10 or 3.11 at the present time.
76
+
77
+ This installation also installs testing dependencies (in the poetry 'dev' group in the pyproject.toml) and documentation dependencies (in the corresponding poetry 'docs' group). If you don't want the overhead of these dependencies, then the installation of these poetry group dependencies may be excluded:
78
+
79
+ ```bash
80
+ poetry install --without dev,docs
81
+ ```
82
+
83
+ If you plan to run the web service API, then install it with the optional web group:
95
84
 
96
85
  ```bash
97
- poetry install --all-extras
86
+ poetry install reasoner-validator --with web
98
87
  ```
99
88
 
100
89
  ## Running Validation against an ARS UUID Result(*) or using a Local TRAPI Request Query
@@ -115,13 +104,7 @@ For script usage, type:
115
104
 
116
105
  ## Running tests
117
106
 
118
- To run the test locally install with the `dev` dependencies, if not already done (e.g. by **`--all-extras`** above):
119
-
120
- ```bash
121
- poetry install --extras dev
122
- ```
123
-
124
- Run the tests with coverage report:
107
+ Run the available unit tests with coverage report:
125
108
 
126
109
  ```bash
127
110
  poetry run pytest --cov
@@ -156,15 +139,7 @@ python -m http.server 3000 --directory ./htmlcov
156
139
 
157
140
  ## Building the Documentation Locally
158
141
 
159
- All paths here are relative to the root project directory.
160
-
161
- First install the documentation-specific dependencies, if not already done (e.g. by **`--all-extras`** above):
162
-
163
- ```bash
164
- poetry install --extras docs # or poetry install --all-extras
165
- ```
166
-
167
- The validation codes MarkDown file should first be regenerated if needed (i.e. if it was revised):
142
+ All paths here are relative to the root project directory. The validation codes MarkDown file should first be regenerated if needed (i.e. if the **`codes.yaml`** was revised):
168
143
 
169
144
  ```bash
170
145
  cd reasoner_validator
@@ -25,28 +25,32 @@ The module may be installed directly from pypi.org using (Python 3) `pip` or `pi
25
25
  pip install reasoner-validator
26
26
  ```
27
27
 
28
- If you want to install it with the extra dependencies for using it as a web service, you can use:
29
-
30
- ```bash
31
- pip install "reasoner-validator[web]"
32
- ```
33
-
34
28
  ## Installing and working with the module locally from source
35
29
 
36
30
  As of release 3.1.6, this project uses the [poetry dependency management](https://python-poetry.org) tool to orchestrate its installation and dependencies.
37
31
 
38
- After [installing poetry](https://python-poetry.org/docs/#installation) and cloning the project, the poetry installation may be run:
32
+ After [installing poetry](https://python-poetry.org/docs/#installation) and cloning the project, the poetry installation may be run (within the available poetry shell):
39
33
 
40
34
  ```bash
41
35
  git clone https://github.com/NCATSTranslator/reasoner-validator.git
42
36
  cd reasoner-validator
37
+ poetry use 3.10
38
+ poetry shell
43
39
  poetry install
44
40
  ```
45
41
 
46
- To develop this package, install with all extras dependencies using:
42
+ Note that the **`poetry env`** can be set to either Python 3.10 or 3.11 at the present time.
43
+
44
+ This installation also installs testing dependencies (in the poetry 'dev' group in the pyproject.toml) and documentation dependencies (in the corresponding poetry 'docs' group). If you don't want the overhead of these dependencies, then the installation of these poetry group dependencies may be excluded:
45
+
46
+ ```bash
47
+ poetry install --without dev,docs
48
+ ```
49
+
50
+ If you plan to run the web service API, then install it with the optional web group:
47
51
 
48
52
  ```bash
49
- poetry install --all-extras
53
+ poetry install reasoner-validator --with web
50
54
  ```
51
55
 
52
56
  ## Running Validation against an ARS UUID Result(*) or using a Local TRAPI Request Query
@@ -67,13 +71,7 @@ For script usage, type:
67
71
 
68
72
  ## Running tests
69
73
 
70
- To run the test locally install with the `dev` dependencies, if not already done (e.g. by **`--all-extras`** above):
71
-
72
- ```bash
73
- poetry install --extras dev
74
- ```
75
-
76
- Run the tests with coverage report:
74
+ Run the available unit tests with coverage report:
77
75
 
78
76
  ```bash
79
77
  poetry run pytest --cov
@@ -108,15 +106,7 @@ python -m http.server 3000 --directory ./htmlcov
108
106
 
109
107
  ## Building the Documentation Locally
110
108
 
111
- All paths here are relative to the root project directory.
112
-
113
- First install the documentation-specific dependencies, if not already done (e.g. by **`--all-extras`** above):
114
-
115
- ```bash
116
- poetry install --extras docs # or poetry install --all-extras
117
- ```
118
-
119
- The validation codes MarkDown file should first be regenerated if needed (i.e. if it was revised):
109
+ All paths here are relative to the root project directory. The validation codes MarkDown file should first be regenerated if needed (i.e. if the **`codes.yaml`** was revised):
120
110
 
121
111
  ```bash
122
112
  cd reasoner_validator
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "reasoner-validator"
3
- version = "4.0.2"
3
+ version = "4.0.3"
4
4
  description = "Validation tools for Reasoner API"
5
5
  authors = [
6
6
  "Richard Bruskiewich <richard.bruskiewich@delphinai.com>",
@@ -40,9 +40,8 @@ include = [
40
40
  ]
41
41
 
42
42
  [tool.poetry.dependencies]
43
- python = "^3.10"
43
+ python = ">=3.10,<3.12"
44
44
  bmt = "^1.4.0"
45
- #bmt = { git = "https://github.com/biolink/biolink-model-toolkit.git" }
46
45
  bioregistry = "^0.11.1"
47
46
 
48
47
  # jsonschema needs to be pinned to <= 4.18.0 for now,
@@ -54,37 +53,34 @@ PyYAML = "^6.0"
54
53
  requests = "^2.28.1"
55
54
  pydantic = "^2"
56
55
  urllib3 = "^1.26.15"
57
- numpydoc = {version = "^1.5.0", optional = true}
58
- sphinx = {version = "^6.2.1", optional = true}
59
- myst-parser = {version = "^2.0.0", optional = true}
60
- fastapi = {version = "*", optional = true}
61
- uvicorn = {version = "*", optional = true}
62
- pytest-cov = {version = "^4.0.0"}
63
- pytest = {version = "^7.2.2"}
64
- sphinx-rtd-theme = {version = "^1.2.2", optional = true}
65
-
66
- # for more pre-implemented OpenTelemetry instrumentations:
67
- # https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/instrumentation
68
- httpx = {version = "^0.18.2", optional = true}
69
-
70
- # exporting traces for jaeger
71
- opentelemetry-exporter-otlp-proto-http = {version = "*", optional = true}
72
-
73
- # instrumentation for fast api and httpx
74
- opentelemetry-instrumentation-fastapi = {version = "*", optional = true}
75
- opentelemetry-instrumentation-httpx = {version = "*", optional = true}
76
-
77
56
 
78
57
  [tool.poetry.urls]
79
58
  "Change Log" = "https://github.com/NCATSTranslator/reasoner-validator/blob/master/CHANGELOG.md"
80
59
  "Bug Tracker" = "https://github.com/NCATSTranslator/reasoner-validator/issues"
81
60
 
82
- [tool.poetry.extras]
83
- docs = ["numpydoc", "sphinx", "myst-parser", "sphinx-rtd-theme"]
84
- web = ["fastapi", "uvicorn", "httpx", "opentelemetry-exporter-otlp-proto-http", "opentelemetry-instrumentation-fastapi", "opentelemetry-instrumentation-httpx"]
85
-
86
61
  [tool.poetry.group.dev.dependencies]
87
62
  setuptools = "^69.5.1"
63
+ pytest = "^7.4.2"
64
+ pytest-cov = "^4.0.0"
65
+
66
+ [tool.poetry.group.docs.dependencies]
67
+ numpydoc = "^1.5.0"
68
+ sphinx = "^6.2.1"
69
+ myst-parser = "^2.0.0"
70
+ sphinx-rtd-theme = "^1.2.2"
71
+
72
+ [tool.poetry.group.web]
73
+ optional = true
74
+
75
+ [tool.poetry.group.web.dependencies]
76
+ fastapi = "*"
77
+ uvicorn = "*"
78
+ httpx = "^0.18.2"
79
+ # exporting traces for jaeger
80
+ opentelemetry-exporter-otlp-proto-http = "*"
81
+ # instrumentation for fast api and httpx
82
+ opentelemetry-instrumentation-fastapi = "*"
83
+ opentelemetry-instrumentation-httpx = "*"
88
84
 
89
85
  [tool.coverage.run]
90
86
  source = ["reasoner_validator"]