-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
81 lines (72 loc) · 2.05 KB
/
Copy pathpyproject.toml
File metadata and controls
81 lines (72 loc) · 2.05 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
[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "tanager"
version = "0.1.0"
description = "Hyperspectral wildfire analysis pipeline for Planet Tanager-1 imagery"
readme = "README.md"
requires-python = ">=3.10"
license = { text = "MIT" }
authors = [
{ name = "gpriceless" },
]
dependencies = [
"hypercoast>=0.22.0,<1.0",
"spectral",
"rasterio>=1.3",
"rioxarray>=0.13",
"xarray",
"geopandas>=0.12",
"contextily",
"scikit-learn",
"pystac",
"requests",
"spyndex",
"h5py",
"scipy>=1.10",
"spectral-libraries>=1.1.3",
"joblib>=1.4",
]
[project.optional-dependencies]
dev = [
"pytest",
"ruff",
"mypy",
]
notebook = [
"jupyter",
"nbformat",
]
mesma = ["mesma>=1.0.8"]
# splib07-loader is not on PyPI; repo https://github.com/RobertSparworthy/splib07-loader.git
# returned "Repository not found" as of 2026-04-28. Install manually if the repo becomes
# available, or replace with an alternative USGS spectral loader.
# splib07 = ["splib07-loader @ git+https://github.com/RobertSparworthy/splib07-loader.git"]
[tool.setuptools.packages.find]
where = ["src"]
[tool.ruff]
line-length = 100
target-version = "py310"
[tool.ruff.lint]
select = ["E", "F", "W", "I"]
ignore = ["E501"]
[tool.ruff.lint.per-file-ignores]
# Standalone script inserts src/ on sys.path before importing tanager.
"scripts/run_aviris3_validation.py" = ["E402"]
[tool.pytest.ini_options]
pythonpath = ["."]
# Slow tests (full notebook execution) are opt-in: the default suite excludes
# them so it stays fast and data-independent. Run them with `pytest -m slow`.
addopts = "-m 'not slow'"
markers = [
"integration: tests that depend on bulk data assets (real Tanager HDF5 scenes)",
"smoke: end-to-end smoke tests exercising the public API as a user would",
"slow: long-running tests (e.g. full notebook execution); opt-in via '-m slow'",
]
[tool.mypy]
python_version = "3.10"
strict = false
warn_return_any = true
warn_unused_configs = true
ignore_missing_imports = true