-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpixi.toml
More file actions
81 lines (64 loc) · 3.39 KB
/
Copy pathpixi.toml
File metadata and controls
81 lines (64 loc) · 3.39 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
[workspace]
name = "codameter"
version = "0.1.0"
description = "Operational six-phase workflow for interpreting seismic velocity changes (dv/v) as stress and strain meters"
channels = ["conda-forge"]
platforms = ["osx-arm64", "osx-64", "linux-64"]
# ── Core runtime deps (conda-forge) ─────────────────────────────────────────
[dependencies]
python = ">=3.10,<3.13"
numpy = ">=1.24"
scipy = ">=1.10"
pandas = ">=2.0"
pyarrow = ">=12.0"
matplotlib = ">=3.7"
pyyaml = ">=6.0"
xarray = ">=2023.6"
netcdf4 = ">=1.7.4,<2"
# codameter itself – editable install via pip
[pypi-dependencies]
codameter = { path = ".", editable = true }
disba = ">=0.7,<0.8"
# ── Features ────────────────────────────────────────────────────────────────
[feature.notebooks.dependencies]
jupyterlab = ">=4.0"
ipywidgets = ">=8.1"
ipykernel = ">=6.0"
nbformat = ">=5.9"
[feature.kernels.pypi-dependencies]
disba = ">=0.7,<0.8"
[feature.test.dependencies]
pytest = ">=7.4"
pytest-cov = ">=4.1"
hypothesis = ">=6.80"
[feature.test.pypi-dependencies]
nbval = ">=0.11" # for notebook-based pytest
codameter = { path = ".", editable = true }
disba = ">=0.7,<0.8"
[feature.dev.dependencies]
black = ">=23.10"
ruff = ">=0.1"
mypy = ">=1.6"
pre-commit = ">=3.5"
# ── Environments ─────────────────────────────────────────────────────────────
[environments]
# `pixi install` / `pixi run` uses this by default
default = { features = ["notebooks"], solve-group = "main" }
test = { features = ["test"], solve-group = "main" }
dev = { features = ["dev", "test", "notebooks", "kernels"], solve-group = "main" }
# ── Tasks ────────────────────────────────────────────────────────────────────
[tasks]
# Start JupyterLab
lab = { cmd = "jupyter lab", description = "Launch JupyterLab" }
# Run the full test suite
test = { cmd = "pytest -ra --cov=src/codameter --cov-report=term", description = "Run pytest" }
# Regenerate the golden synthetic-CCF manifest (recipes + expected metrics)
golden = { cmd = "python -m codameter.golden", description = "Regenerate tests/data/golden/manifest.json" }
# Export the golden dv/v datasets as FrugalMind-compatible JSONL + manifest
frugalmind-export = { cmd = "python -m codameter.frugalmind --out datasets", description = "Export dv/v benchmark rows as JSONL (FrugalMind format)" }
# Shardable config-sweep benchmark (plan / sweep / aggregate); scales to Fargate
bench = { cmd = "python -m codameter.bench", description = "Config-sweep benchmark over case x config grids" }
# Run only the Parkfield notebook-friendly example
parkfield = { cmd = "python examples/01_parkfield_synthetic.py", description = "Synthetic Parkfield demo" }
# Optional California CVM support via SCEC's Docker image.
install-ucvm-query = { cmd = "python scripts/install_ucvm_query_docker.py", description = "Create a local ucvm_query wrapper backed by Docker/SCEC UCVM" }