Repository navigation
v1.0.0
v1.0.0 — Major Release
Full modernization of the project with a new typed API, performance improvements, and modern tooling.
Breaking Changes
- Requires Python >=3.11
- New typed API throughout (StrEnum, frozen dataclasses)
- Removed:
setup.py,requirements.txt,.flake8,pytest.ini,environment.yml,ModelWrapper
Highlights
- Build: migrated to
pyproject.toml(hatchling),uv,ruff,mkdocs-material - Types:
StrEnum(Axis,ModelType,DownsamplingStatistic), frozen dataclasses (NormalizationParams,StandardizationParams,PreprocessingParams,GridResolution,InterpolationResult) - Core:
GridAxisfrozen dataclass,GridDataSpecs.from_dataframe(),Grid3Dproper ABC,IrregularGrid3Dwith hull filtering,create_grid()factory - Models:
BaseModelABC,KrigingModel, vectorizedIDWModel(~1000x speedup),SklearnModel, model registry withget_model() - Pipeline: typed
Preprocessor,ModelertakesBaseModel,interpolate()returnsModeler, all mutable defaults fixed - Plotting: split into
plot_3d,plot_2d,downsampling,utilsmodules - Tests: 72 pass (was 29+9 skipped), deterministic seeds, full coverage
- CI:
uv+ruffworkflows, Python 3.11–3.13 matrix
What's Changed
- Modernize project to v1.0.0 with new API and performance improvements by @giocaizzi in #57
Full Changelog: v0.4.4...v1.0.0