-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
75 lines (66 loc) · 2.19 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
[tool.poetry]
name = "6s-bin"
version = "0.11.3"
description = "Compiled binaries for the 6S Radiative Transfer Model exposed as package resources."
license = "Apache-2.0"
authors = ["Brian Schubert <[email protected]>"]
readme = "README.md"
repository = "https://github.com/brianschubert/6s-bin"
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Science/Research",
"Programming Language :: Fortran", # Requires Fortran 77 compiler to build wheels.
"Topic :: Scientific/Engineering :: Atmospheric Science",
"Typing :: Typed",
]
packages = [
{ from = "src", include = "sixs_bin" }
]
include = [
# Only include compiled 6S binaries in (platform-specific) wheel distributions.
# We don't want them in included in source distributions, since those may be used on different platforms.
{ path = "src/sixs_bin/sixsV1.1", format = "wheel" },
{ path = "src/sixs_bin/sixsV2.1", format = "wheel" },
]
[tool.poetry.build]
# Note: custom build scripts are currently an undocummented feature of poetry.
# See https://github.com/python-poetry/poetry/issues/2740.
script = "build.py"
generate-setup-file = false
[tool.poetry.dependencies]
python = "^3.9"
typing-extensions = ">=3.10"
py6s = { version = "^1.9.2", optional = true }
# Undeclared dependency of Py6S
python-dateutil = { version = "^2.8.2", optional = true }
[tool.poetry.group.dev.dependencies]
black = "^23.7.0"
isort = "^5.12.0"
mypy = "^1.4.0"
pytest = "^7.4.0"
py6s = "^1.9.2"
[tool.poetry.extras]
wrapper = ["py6s", "python-dateutil"]
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
# Black config.
[tool.black]
# How many characters per line to allow.
# https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html#line-length
line-length = 88
# Don't skip skip temporary sanity checks.
safe = true
# Python versions that should be supported by Black's output.
target-version = ["py39"]
# Set to true to preview style changes that may be added in black's next major release.
preview = false
# isort config.
[tool.isort]
profile = "black"
# mypy config.
[tool.mypy]
strict = true
[[tool.mypy.overrides]]
module = "Py6S.*"
ignore_missing_imports = true