-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
128 lines (113 loc) · 3.85 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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
[tool.poetry]
name = "onemodel"
version = "1.0.0"
description = "OneModel: an open-source SBML modeling tool"
authors = ["Fernando N. Santos-Navarro <fersann1@upv.es>"]
license = "Apache-2.0"
readme = "README.md"
repository = "https://github.com/sb2cl/onemodel"
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Topic :: Scientific/Engineering :: Bio-Informatics",
]
include = ["NOTICE"]
[tool.poetry.dependencies]
python = "^3.7"
# tatsu = "5.6.1"
tatsu = "4.4.0"
# PyQt5 = "*"
# click = "^8.0.0"
importlib-resources = "*"
# python-libsbml = "5.19.5"
python-libsbml = "5.19.2"
tomli = "*"
GitPython = "^3.1.20"
tabulate = "^0.9.0"
[tool.poetry.dev-dependencies]
nox-poetry = "*"
# Testing.
pytest = "*"
pytest-cov = "*"
# Type Checking.
mypy = "*"
# As of mypy 0.900, mypy no longer bundles the stubs for third-party libraries that reside
# in the typeshed project. Add these "types-" packages here if you depend on them in
# requirements.in (e.g. types-requests).
# See: http://mypy-lang.blogspot.com/2021/06/mypy-0900-released.html
# https://github.com/python/typeshed/tree/master/stubs
# Linting.
flake8 = "*"
flake8-bugbear = "*"
flake8-broken-line = "*"
flake8-comprehensions = "*"
pep8-naming = "*"
# TODO: Remove this when flake8 adds native support for pyproject.toml.
pyproject-flake8 = "*"
# Formatting.
black = "*"
isort = "*"
# Docs.
Sphinx = { version = "4.2.0", optional = true }
jupyter = "^1.0.0"
libroadrunner = "2.1.0"
numpy = "1.21.0"
matplotlib = "3.5.0"
sbml2dae = "^0.1.7"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.poetry.scripts]
onemodel = "onemodel.__main__:main"
[tool.mypy]
ignore_missing_imports = true
strict = false
# If certain strict config options are too pedantic for a project,
# disable them selectively here by setting to false.
# Note: This configuration is suppported by pyproject-flake8.
[tool.flake8]
# Use the more relaxed max line length permitted in PEP 8.
max-line-length = 99
# This ignore is required by black.
extend-ignore = ["E203"]
# flake8-bugbear config.
# This argument is not needed if not using Typer as a dependency.
extend-immutable-calls = ["Argument"]
# TODO: Remove this once flake8 > 4.0.1 is released as this has been fixed
# upstream: https://github.com/PyCQA/flake8/pull/1443
extend-exclude = [".nox"]
[tool.black]
line-length = 99
target-version = ["py37" ,"py38", "py39", "py310"]
# black will automatically exclude all files listed in .gitignore
# If you need to exclude additional folders, consider using extend-exclude to avoid disabling the
# default .gitignore behaviour.
[tool.isort]
profile = "black"
line_length = 99
force_sort_within_sections = true
# Inform isort of paths to import names that should be considered part of the "First Party" group.
src_paths = ["src/fact"]
skip_gitignore = true
# If you need to skip/exclude folders, consider using skip_glob as that will allow the
# isort defaults for skip to remain without the need to duplicate them.
[tool.pytest.ini_options]
filterwarnings = [
# When running tests, treat warnings as errors (e.g. -Werror).
# See: https://docs.pytest.org/en/latest/reference/reference.html#confval-filterwarnings
"error",
# Add additional warning supressions as needed here. For example, if a third-party library
# is throwing a deprecation warning that needs to be fixed upstream:
# "ignore::DeprecationWarning:typer",
]
[tool.coverage.run]
branch = true