Contributing to geoscales
Source:CONTRIBUTING.md
Thanks for your interest! geoscales is part of the optimal2050 modeling stack and is developed alongside its time-domain companion timescales.
Note: this repository is private during pre-release. Until the first public pre-release, contributions are limited to invited collaborators.
Languages and phases
- Phase 1 (current) — pure R implementation.
-
Phase 2 — C++17 core under
cpp/; R bindings via Rcpp insrc/. -
Phase 3 — Python bindings under
python/via nanobind + scikit-build-core.
A single semantic version (in VERSION) drives all language artifacts.
Cross-language consistency
Language-agnostic input/output pairs live under specs/golden/. Each language implementation must reproduce them identically. When you change observable behaviour, update both the spec and the per-language tests in the same PR.