143 lines
3.5 KiB
TOML
143 lines
3.5 KiB
TOML
|
|
[project]
|
|
name = "medax-pipeline"
|
|
version = "1.0.1"
|
|
description = "An ETL pipeline to transfer FHIR data into a graph database"
|
|
authors = [
|
|
"Ilya Mazien",
|
|
"Tom Gebhardt",
|
|
"Lea Michaelis",
|
|
"Ron Henkel",
|
|
"Benjamin Winter",
|
|
"Dagmar Waltemath",
|
|
"Judith Wodke"
|
|
]
|
|
|
|
license = "MIT"
|
|
readme = "README.md"
|
|
requires-python = ">=3.10"
|
|
classifiers = [
|
|
"Development Status :: 3 - Alpha",
|
|
"Intended Audience :: Developers",
|
|
"Intended Audience :: Science/Research",
|
|
"Operating System :: OS Independent",
|
|
"Programming Language :: Python",
|
|
"Natural Language :: English",
|
|
"Topic :: Scientific/Engineering :: Medical-Informatics",
|
|
]
|
|
dependencies = [
|
|
"pyyaml>=5.0",
|
|
"biocypher>=0.16.0,<1.0.0",
|
|
"more-itertools",
|
|
"appdirs",
|
|
"treelib==1.6.4",
|
|
"rdflib>=6.2.0,<7.0.0",
|
|
"networkx>=3.0,<4.0",
|
|
"stringcase>=1.2.0,<2.0.0",
|
|
"neo4j-utils==0.0.7",
|
|
"pandas>=2.0.1,<3.0.0",
|
|
"pooch>=1.7.0,<2.0.0",
|
|
"tqdm>=4.65.0,<5.0.0",
|
|
"requests>=2.31.0,<3.0.0",
|
|
"python-dotenv>=1.0.0,<2.0.0",
|
|
"beautifulsoup4>=4.12.3,<5.0.0",
|
|
"lxml>=5.1.0,<6.0.0",
|
|
]
|
|
|
|
[project.urls]
|
|
Homepage = "https://www.medizin.uni-greifswald.de/medizininformatik/research/current-projects/medax/"
|
|
Repository = "https://git.uni-greifswald.de/MILA_public/medax_pipeline"
|
|
|
|
# biocypher is pulled from a feature branch via uv's source override
|
|
[tool.uv.sources]
|
|
#biocypher = { git = "https://github.com/biocypher/biocypher.git", branch = "feat/dynamic-node-property-headers" } #enable this to test the feature branch again
|
|
|
|
|
|
[tool.uv]
|
|
package = false
|
|
|
|
# Dev dependencies (PEP 735 dependency groups, natively understood by uv)
|
|
[dependency-groups]
|
|
dev = [
|
|
"sphinx>=5.0.0",
|
|
"sphinx-design>=0.3.0,<0.4.0",
|
|
"sphinx-rtd-theme>=1.0.0",
|
|
"sphinx-last-updated-by-git>=0.3",
|
|
"sphinx-autodoc-typehints>=1.18.0",
|
|
"myst-parser>=0.18.0,<0.19.0",
|
|
"yapf>=0.32.0,<0.33.0",
|
|
"pytest>=6.0",
|
|
"tox>=3.20.1",
|
|
"pre-commit>=2.17.0",
|
|
"bump2version",
|
|
"coverage>=6.0",
|
|
"pytest-cov>=3.0.0,<4.0.0",
|
|
"hypothesis>=6.50.1,<7.0.0",
|
|
"isort>=5.10.1,<6.0.0",
|
|
"ipython>=8.7.0,<9.0.0",
|
|
"ipykernel>=6.23.1,<7.0.0",
|
|
"sphinxext-opengraph>=0.8.2,<0.9.0",
|
|
"coverage-badge>=1.1.0,<2.0.0",
|
|
"nbsphinx>=0.9.2,<0.10.0",
|
|
"black>=23.9.1,<24.0.0",
|
|
"flake8>=6.1.0,<7.0.0",
|
|
]
|
|
|
|
# --- Tool configs below are build-tool-agnostic and carried over unchanged ---
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
addopts = "--ignore=mdm2neo4j"
|
|
log_cli = true
|
|
log_level = "INFO"
|
|
markers = [
|
|
"requires_neo4j: Requires connection to a Neo4j server",
|
|
"requires_postgresql: Requires connection to a PostgreSQL server",
|
|
"inject_driver_args(driver_args): Arguments for the Driver",
|
|
]
|
|
|
|
[tool.black]
|
|
line-length = 80
|
|
target-version = ['py310']
|
|
include = '\.pyi?$'
|
|
exclude = '''
|
|
(
|
|
/(
|
|
\.eggs
|
|
| \.git
|
|
| \.hg
|
|
| \.mypy_cache
|
|
| \.tox
|
|
| \.venv
|
|
| _build
|
|
| buck-out
|
|
| build
|
|
| dist
|
|
)/
|
|
)
|
|
'''
|
|
|
|
[tool.isort]
|
|
from_first = true
|
|
line_length = 80
|
|
multi_line_output = 3
|
|
include_trailing_comma = true
|
|
use_parentheses = true
|
|
known_num = "numpy,pandas"
|
|
sections = "FUTURE,STDLIB,THIRDPARTY,NUM,FIRSTPARTY,LOCALFOLDER"
|
|
no_lines_before = "LOCALFOLDER"
|
|
balanced_wrapping = true
|
|
force_grid_wrap = 0
|
|
length_sort = "1"
|
|
indent = " "
|
|
profile = "black"
|
|
|
|
[tool.flake8]
|
|
ignore = ["E203", "D200", "D202", "D401", "D105", "W504"]
|
|
per-file-ignores = [
|
|
"docs/source/conf.py:D100",
|
|
"tests/*:D100,D101,D102",
|
|
"*/__init__.py:F401",
|
|
]
|
|
max-line-length = 80
|
|
count = true |