-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathpyproject.toml
More file actions
119 lines (104 loc) · 3.03 KB
/
pyproject.toml
File metadata and controls
119 lines (104 loc) · 3.03 KB
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
[build-system]
requires = ["setuptools>=61.0", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
[project]
name = "satchip"
readme = "README.md"
requires-python = ">=3.11"
authors = [
{name="forrestfwilliams", email="ffwilliams2@alaska.edu"},
]
description = "A package for satellite image AI data prep"
license = {text = "BSD-3-Clause"}
classifiers=[
"Intended Audience :: Science/Research",
"License :: OSI Approved :: BSD License",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
dependencies = [
"gdal",
"numpy",
"shapely",
"pyproj",
"pystac-client",
"rasterio",
"zarr>=3",
"xarray",
"rioxarray",
"pandas",
"geopandas",
"asf_search",
"earthaccess",
"hyp3_sdk",
"tqdm",
"matplotlib",
]
dynamic = ["version"]
[project.optional-dependencies]
develop = [
"mypy",
"ruff",
"pytest",
"pytest-console-scripts",
"pytest-cov",
]
[project.urls]
Homepage = "https://github.com/forrestfwilliams/satchip"
Documentation = "https://github.com/forrestfwilliams/satchip"
[project.scripts]
chiplabel = "satchip.chip_label:main"
chipdata = "satchip.chip_data:main"
chipview = "satchip.chip_view:main"
[tool.pytest.ini_options]
testpaths = ["tests"]
script_launch_mode = "subprocess"
addopts = '-ra -q -m "not integration"'
markers = ["integration"]
[tool.setuptools]
include-package-data = true
zip-safe = false
[tool.setuptools.packages.find]
where = ["src"]
[tool.setuptools_scm]
# Please keep the following ruff options up-to-date with https://github.com/ASFHyP3/actions/#reusable-ruffyml
[tool.ruff]
line-length = 120
# The directories to consider when resolving first- vs. third-party imports.
# See: https://docs.astral.sh/ruff/settings/#src
src = ["src", "tests"]
[tool.ruff.format]
indent-style = "space"
quote-style = "single"
[tool.ruff.lint]
extend-select = [
"I", # isort: https://docs.astral.sh/ruff/rules/#isort-i
"UP", # pyupgrade: https://docs.astral.sh/ruff/rules/#pyupgrade-up
# "D", # pydocstyle: https://docs.astral.sh/ruff/rules/#pydocstyle-d
"ANN", # annotations: https://docs.astral.sh/ruff/rules/#flake8-annotations-ann
"PTH", # use-pathlib-pth: https://docs.astral.sh/ruff/rules/#flake8-use-pathlib-pth
]
# [tool.ruff.lint.pydocstyle]
# convention = "google"
[tool.ruff.lint.isort]
case-sensitive = true
lines-after-imports = 2
[tool.ruff.lint.extend-per-file-ignores]
"tests/*" = ["D100", "D103", "ANN"]
# Please keep the following mypy options up-to-date with https://github.com/ASFHyP3/actions/#reusable-mypyyml
[tool.mypy]
python_version = "3.10"
warn_redundant_casts = true
warn_unused_ignores = true
warn_unreachable = true
strict_equality = true
check_untyped_defs = true
install_types = true
non_interactive = true
pretty = true
disable_error_code = ["import-untyped"]