forked from queens-py/queens
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpyproject.toml
94 lines (82 loc) · 3.2 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"
# Basic project data
[project]
name = "queens"
authors = [{ name = "QUEENS developers" }]
dynamic = ["version", "dependencies", "optional-dependencies"]
description = "A general purpose framework for Uncertainty Quantification, Physics-Informed Machine Learning, Bayesian Optimization, Inverse Problems and Simulation Analytics"
readme = "README.md"
requires-python = ">=3.10"
keywords = [
"gaussian processes",
"uncertainty quantification",
"inverse analysis",
"optimization",
"sensitivity analysis",
"multi-fidelity",
"bayesian inference",
]
[tool.setuptools.packages.find]
include = ["queens.*", "queens"]
[tool.setuptools.dynamic]
version = { attr = "queens.__VERSION__" }
dependencies = { file = ["requirements.txt"] }
optional-dependencies = { develop = { file = ["dev-requirements.txt"] } }
# cli utils
[project.scripts]
queens = "queens.main:main"
queens-inject-template = "queens.utils.cli_utils:inject_template_cli"
queens-print-pickle = "queens.utils.cli_utils:print_pickle_data_cli"
queens-input-to-script = "queens.utils.cli_utils:input_to_script_cli"
queens-build-html-coverage-report = "queens.utils.cli_utils:build_html_coverage_report"
queens-remove-html-coverage-report = "queens.utils.cli_utils:remove_html_coverage_report"
queens-export-metadata = "queens.utils.cli_utils:gather_metadata_and_write_to_csv"
# urls
[project.urls]
Homepage = "https://www.queens-py.org"
Documentation = "https://queens-py.github.io/queens"
Repository = "https://github.com/queens-py/queens.git"
Issues = "https://github.com/queens-py/queens/issues"
Changelog = "https://github.com/queens-py/queens/blob/main/CHANGELOG.md"
# Tools section
[tool.black]
line-length = 100
[tool.isort]
profile = "black"
line_length = 100
use_parentheses = true
force_grid_wrap = 0
multi_line_output = 3
include_trailing_comma = true
[tool.pydocstyle]
convention = "google"
match-dir = '(?!tests).*'
match = '(?!__init__).*\.py'
[tool.pytest.ini_options]
addopts = '-m "not benchmark and not lnm_cluster and not imcs_cluster" --doctest-modules --doctest-continue-on-failure --doctest-ignore-import-errors'
testpaths = ["tests"]
pythonpath = ["test_utils"]
markers = [
"benchmark: Benchmark tests, involving full QUEENS-iterator runs for performance benchmarks (excluded from the main pipeline)",
"integration_tests: Integration tests with Python interface",
"unit_tests: Unit tests",
"integration_tests_fourc: Integration tests with fourc",
"lnm_cluster: Integration tests with LNM clusters (require access to LNM network)",
"imcs_cluster: Integration tests with LNM clusters (require access to IMCS network)",
"max_time_for_test(time_in_seconds): Maximum time this test should take (if exceeded and used with '--test-timing' an error is raised)",
]
[tool.coverage.run]
source = ["queens"]
parallel = true
branch = true
[tool.coverage.report]
# Regexes for lines to exclude from consideration
exclude_lines = [
"pragma: no cover", # Have to re-enable the standard pragma
"if __name__ == .__main__.:", # Don't complain if non-runnable code isn't run
]
show_missing = false
[tool.coverage.html]
directory = "html_coverage_report"