Skip to content

v0.3.20 (Apr 20, 2026)

Choose a tag to compare

@QianyeSu QianyeSu released this 20 Apr 08:10
· 723 commits to main since this release

Skyborn 0.3.20

This release expands Mann-Kendall trend analysis, adds modern interpolation kernels and diagnostics, modernizes several regridding and interpolation backends, and improves scatter stippling plus cross-section handling.

New Features

  • Expanded Mann-Kendall trend analysis to support the same core test families as pymannkendall, while extending them to multidimensional NumPy and xarray workflows.
  • Added public support for grouped multivariate, regional, correlated multivariate, seasonal, correlated seasonal, pre-whitening, trend-free pre-whitening, Hamed-Rao, Yue-Wang, and partial Mann-Kendall workflows.
  • Added standalone partial-Mann-Kendall APIs for one-dimensional, multidimensional, and xarray inputs.
  • Added modern Fortran kernels for hybrid-to-pressure and sigma-to-hybrid interpolation in skyborn.interp.
  • Added public hybrid-level diagnostics: skyborn.interp.pressure_at_hybrid_levels and skyborn.interp.delta_pressure_hybrid.

Improvements

  • Modernized the compiled rcm2rgrid, rcm2points, triple2grid, grid2triple, and shared linint2 sources to free-form Fortran .f90 while keeping the public entry points unchanged.
  • Improved interpolation performance and build behavior by reducing eager-wrapper overhead, trimming temporary-array use, splitting duplicated support-library compilation in src/skyborn/interp/meson.build, and renaming the internal vinth2p acceleration module from vinth2p_backend to vinth2p_kernels.
  • Improved skyborn.plot.scatter so cell-interior stippling now works better for masked rectilinear grids and also supports inferred curvilinear cell geometry.

Bug Fixes

  • Extended skyborn.calc.troposphere WMO tropopause workflows to handle time-varying single-axis isobaric cross-sections such as (time, level, lat) and (time, level, lon) while preserving the correct output dimensions.
  • Dropped incompatible 2D auxiliary source-grid coordinates such as TLAT and TLONG after rcm2rgrid remapping instead of raising coordinate-size conflicts.
  • Restored legacy exact-hit missing-value behavior in rcm2points and rgrid2rcm so unresolved fields can still fall through to the historical interpolation logic when appropriate.
  • Added focused tests for the updated Mann-Kendall, troposphere, and interpolation dispatch and wrapper paths.