metrust 0.4.1__tar.gz → 0.4.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. {metrust-0.4.1 → metrust-0.4.2}/Cargo.lock +1 -1
  2. {metrust-0.4.1 → metrust-0.4.2}/Cargo.toml +1 -1
  3. {metrust-0.4.1 → metrust-0.4.2}/PKG-INFO +3 -3
  4. {metrust-0.4.1 → metrust-0.4.2}/README.md +2 -2
  5. {metrust-0.4.1 → metrust-0.4.2}/docs/compatibility.md +3 -3
  6. {metrust-0.4.1 → metrust-0.4.2}/docs/guides/migration.md +1 -1
  7. {metrust-0.4.1 → metrust-0.4.2}/docs/index.md +4 -4
  8. {metrust-0.4.1 → metrust-0.4.2}/pyproject.toml +1 -1
  9. {metrust-0.4.1 → metrust-0.4.2}/python/metrust/calc/__init__.py +2959 -949
  10. {metrust-0.4.1 → metrust-0.4.2}/tests/test_metpy_dropin_compat.py +2 -2
  11. metrust-0.4.2/tests/test_runtime_parity.py +442 -0
  12. metrust-0.4.2/tests/test_runtime_parity_interp_dataset.py +242 -0
  13. metrust-0.4.2/tests/test_runtime_parity_kinematics_extra.py +248 -0
  14. metrust-0.4.2/tests/test_runtime_parity_remaining.py +93 -0
  15. metrust-0.4.2/tests/test_runtime_parity_sounding_core.py +204 -0
  16. metrust-0.4.2/tests/test_runtime_parity_thermo_layers.py +251 -0
  17. metrust-0.4.2/tests/test_runtime_parity_utils_misc.py +226 -0
  18. metrust-0.4.2/tests/test_runtime_parity_wind_profiles.py +277 -0
  19. metrust-0.4.2/tests/test_signature_parity.py +53 -0
  20. {metrust-0.4.1 → metrust-0.4.2}/.github/workflows/ci.yml +0 -0
  21. {metrust-0.4.1 → metrust-0.4.2}/.github/workflows/docs.yml +0 -0
  22. {metrust-0.4.1 → metrust-0.4.2}/.github/workflows/release.yml +0 -0
  23. {metrust-0.4.1 → metrust-0.4.2}/.gitignore +0 -0
  24. {metrust-0.4.1 → metrust-0.4.2}/BENCHMARKS.md +0 -0
  25. {metrust-0.4.1 → metrust-0.4.2}/VERIFICATION.md +0 -0
  26. {metrust-0.4.1 → metrust-0.4.2}/benches/bench_hrrr.py +0 -0
  27. {metrust-0.4.1 → metrust-0.4.2}/benches/bench_hrrr_vs_metpy.py +0 -0
  28. {metrust-0.4.1 → metrust-0.4.2}/benches/bench_python.py +0 -0
  29. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/Cargo.toml +0 -0
  30. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/benches/calc_bench.rs +0 -0
  31. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/calc/atmo.rs +0 -0
  32. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/calc/kinematics.rs +0 -0
  33. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/calc/mod.rs +0 -0
  34. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/calc/severe.rs +0 -0
  35. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/calc/smooth.rs +0 -0
  36. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/calc/thermo.rs +0 -0
  37. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/calc/utils.rs +0 -0
  38. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/calc/wind.rs +0 -0
  39. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/constants.rs +0 -0
  40. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/interpolate/mod.rs +0 -0
  41. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/gempak.rs +0 -0
  42. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/gempak_dm.rs +0 -0
  43. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/gempak_sounding.rs +0 -0
  44. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/gempak_surface.rs +0 -0
  45. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/gini.rs +0 -0
  46. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/level3.rs +0 -0
  47. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/metar.rs +0 -0
  48. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/mod.rs +0 -0
  49. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/station.rs +0 -0
  50. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/io/wpc.rs +0 -0
  51. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/lib.rs +0 -0
  52. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/plots/mod.rs +0 -0
  53. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/projections.rs +0 -0
  54. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/src/units.rs +0 -0
  55. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/tests/test_gempak.rs +0 -0
  56. {metrust-0.4.1 → metrust-0.4.2}/crates/metrust/tests/test_new_functions.rs +0 -0
  57. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/Cargo.toml +0 -0
  58. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/composite.rs +0 -0
  59. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/download/cache.rs +0 -0
  60. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/download/catalog.rs +0 -0
  61. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/download/client.rs +0 -0
  62. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/download/fallback.rs +0 -0
  63. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/download/idx.rs +0 -0
  64. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/download/mod.rs +0 -0
  65. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/download/sources.rs +0 -0
  66. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/download/streaming.rs +0 -0
  67. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/dynamics.rs +0 -0
  68. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/error.rs +0 -0
  69. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/grid.rs +0 -0
  70. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/mod.rs +0 -0
  71. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/ops.rs +0 -0
  72. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/parser.rs +0 -0
  73. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/search.rs +0 -0
  74. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/streaming.rs +0 -0
  75. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/tables.rs +0 -0
  76. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/tests.rs +0 -0
  77. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/unpack.rs +0 -0
  78. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/grib2/writer.rs +0 -0
  79. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/gridmath.rs +0 -0
  80. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/lib.rs +0 -0
  81. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/metfuncs.rs +0 -0
  82. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/cfs.rs +0 -0
  83. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/ecmwf.rs +0 -0
  84. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/era5.rs +0 -0
  85. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/gefs.rs +0 -0
  86. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/gfs.rs +0 -0
  87. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/href.rs +0 -0
  88. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/hrrr.rs +0 -0
  89. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/hrrr_ak.rs +0 -0
  90. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/latest.rs +0 -0
  91. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/mod.rs +0 -0
  92. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/mrms.rs +0 -0
  93. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/nam.rs +0 -0
  94. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/nbm.rs +0 -0
  95. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/rap.rs +0 -0
  96. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/rrfs.rs +0 -0
  97. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/rtma.rs +0 -0
  98. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/sref.rs +0 -0
  99. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/urma.rs +0 -0
  100. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/models/wpc.rs +0 -0
  101. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/products.rs +0 -0
  102. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/projection.rs +0 -0
  103. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/regrid.rs +0 -0
  104. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/ansi.rs +0 -0
  105. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/colormap.rs +0 -0
  106. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/contour.rs +0 -0
  107. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/cross_section.rs +0 -0
  108. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/encode.rs +0 -0
  109. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/filled_contour.rs +0 -0
  110. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/hodograph.rs +0 -0
  111. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/mod.rs +0 -0
  112. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/overlay.rs +0 -0
  113. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/raster.rs +0 -0
  114. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/skewt.rs +0 -0
  115. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-core/src/render/station.rs +0 -0
  116. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/Cargo.toml +0 -0
  117. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/error.rs +0 -0
  118. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/field.rs +0 -0
  119. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/lib.rs +0 -0
  120. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/meta.rs +0 -0
  121. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/projection.rs +0 -0
  122. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/radial.rs +0 -0
  123. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/site.rs +0 -0
  124. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/sounding.rs +0 -0
  125. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-field/src/time.rs +0 -0
  126. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-math/Cargo.toml +0 -0
  127. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-math/src/composite.rs +0 -0
  128. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-math/src/dynamics.rs +0 -0
  129. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-math/src/gridmath.rs +0 -0
  130. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-math/src/interpolate.rs +0 -0
  131. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-math/src/lib.rs +0 -0
  132. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-math/src/regrid.rs +0 -0
  133. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-math/src/thermo.rs +0 -0
  134. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/Cargo.toml +0 -0
  135. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/cells.rs +0 -0
  136. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/color_table.rs +0 -0
  137. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/derived.rs +0 -0
  138. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/detection.rs +0 -0
  139. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/level2.rs +0 -0
  140. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/lib.rs +0 -0
  141. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/products.rs +0 -0
  142. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/render.rs +0 -0
  143. {metrust-0.4.1 → metrust-0.4.2}/crates/wx-radar/src/sites.rs +0 -0
  144. {metrust-0.4.1 → metrust-0.4.2}/demos/hrrr_diffusion_training.md +0 -0
  145. {metrust-0.4.1 → metrust-0.4.2}/docs/api/atmospheric.md +0 -0
  146. {metrust-0.4.1 → metrust-0.4.2}/docs/api/grid-composites.md +0 -0
  147. {metrust-0.4.1 → metrust-0.4.2}/docs/api/io.md +0 -0
  148. {metrust-0.4.1 → metrust-0.4.2}/docs/api/kinematics.md +0 -0
  149. {metrust-0.4.1 → metrust-0.4.2}/docs/api/moisture.md +0 -0
  150. {metrust-0.4.1 → metrust-0.4.2}/docs/api/severe.md +0 -0
  151. {metrust-0.4.1 → metrust-0.4.2}/docs/api/smoothing.md +0 -0
  152. {metrust-0.4.1 → metrust-0.4.2}/docs/api/thermodynamics.md +0 -0
  153. {metrust-0.4.1 → metrust-0.4.2}/docs/api/units.md +0 -0
  154. {metrust-0.4.1 → metrust-0.4.2}/docs/api/wind.md +0 -0
  155. {metrust-0.4.1 → metrust-0.4.2}/docs/guides/arrays.md +0 -0
  156. {metrust-0.4.1 → metrust-0.4.2}/docs/guides/installation.md +0 -0
  157. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/architecture.md +0 -0
  158. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/grid-kinematics.md +0 -0
  159. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/index.md +0 -0
  160. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/interpolation.md +0 -0
  161. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/io-formats.md +0 -0
  162. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/metpy-compatibility.md +0 -0
  163. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/moisture.md +0 -0
  164. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/parallelism.md +0 -0
  165. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/severe-weather.md +0 -0
  166. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/smoothing.md +0 -0
  167. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/thermodynamics.md +0 -0
  168. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/units-and-pint.md +0 -0
  169. {metrust-0.4.1 → metrust-0.4.2}/docs/methodology/wind.md +0 -0
  170. {metrust-0.4.1 → metrust-0.4.2}/docs/performance.md +0 -0
  171. {metrust-0.4.1 → metrust-0.4.2}/docs/tutorials/first-grid.md +0 -0
  172. {metrust-0.4.1 → metrust-0.4.2}/docs/tutorials/first-sounding.md +0 -0
  173. {metrust-0.4.1 → metrust-0.4.2}/docs/tutorials/reading-the-numbers.md +0 -0
  174. {metrust-0.4.1 → metrust-0.4.2}/docs/tutorials/recipes.md +0 -0
  175. {metrust-0.4.1 → metrust-0.4.2}/docs/tutorials/weather-101.md +0 -0
  176. {metrust-0.4.1 → metrust-0.4.2}/examples/cookbook_500hpa_grid.py +0 -0
  177. {metrust-0.4.1 → metrust-0.4.2}/examples/cookbook_sounding.py +0 -0
  178. {metrust-0.4.1 → metrust-0.4.2}/examples/sounderpy_dropin.py +0 -0
  179. {metrust-0.4.1 → metrust-0.4.2}/mkdocs.yml +0 -0
  180. {metrust-0.4.1 → metrust-0.4.2}/python/metrust/__init__.py +0 -0
  181. {metrust-0.4.1 → metrust-0.4.2}/python/metrust/constants/__init__.py +0 -0
  182. {metrust-0.4.1 → metrust-0.4.2}/python/metrust/interpolate/__init__.py +0 -0
  183. {metrust-0.4.1 → metrust-0.4.2}/python/metrust/io/__init__.py +0 -0
  184. {metrust-0.4.1 → metrust-0.4.2}/python/metrust/plots/__init__.py +0 -0
  185. {metrust-0.4.1 → metrust-0.4.2}/python/metrust/units.py +0 -0
  186. {metrust-0.4.1 → metrust-0.4.2}/python/metrust/xarray.py +0 -0
  187. {metrust-0.4.1 → metrust-0.4.2}/src/lib.rs +0 -0
  188. {metrust-0.4.1 → metrust-0.4.2}/src/py_atmo.rs +0 -0
  189. {metrust-0.4.1 → metrust-0.4.2}/src/py_constants.rs +0 -0
  190. {metrust-0.4.1 → metrust-0.4.2}/src/py_interpolate.rs +0 -0
  191. {metrust-0.4.1 → metrust-0.4.2}/src/py_io.rs +0 -0
  192. {metrust-0.4.1 → metrust-0.4.2}/src/py_kinematics.rs +0 -0
  193. {metrust-0.4.1 → metrust-0.4.2}/src/py_severe.rs +0 -0
  194. {metrust-0.4.1 → metrust-0.4.2}/src/py_smooth.rs +0 -0
  195. {metrust-0.4.1 → metrust-0.4.2}/src/py_thermo.rs +0 -0
  196. {metrust-0.4.1 → metrust-0.4.2}/src/py_utils.rs +0 -0
  197. {metrust-0.4.1 → metrust-0.4.2}/src/py_wind.rs +0 -0
  198. {metrust-0.4.1 → metrust-0.4.2}/tests/api_audit_calc.md +0 -0
  199. {metrust-0.4.1 → metrust-0.4.2}/tests/api_audit_other.md +0 -0
  200. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmark.py +0 -0
  201. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmark_gpu.py +0 -0
  202. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_01_hrrr_severe.py +0 -0
  203. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_02_gfs_upper_air.py +0 -0
  204. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_03_rap_warm_front.py +0 -0
  205. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_04_nam_winter.py +0 -0
  206. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_05_hrrr_supercell.py +0 -0
  207. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_06_gfs_jet.py +0 -0
  208. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_07_hrrr_fire.py +0 -0
  209. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_08_era5_tropical.py +0 -0
  210. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_09_rap_aviation.py +0 -0
  211. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_10_hrrr_squall.py +0 -0
  212. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_11_gfs_cold_air.py +0 -0
  213. {metrust-0.4.1 → metrust-0.4.2}/tests/benchmarks/bench_12_hrrr_pbl.py +0 -0
  214. {metrust-0.4.1 → metrust-0.4.2}/tests/sounding_3way.py +0 -0
  215. {metrust-0.4.1 → metrust-0.4.2}/tests/sounding_comparison.png +0 -0
  216. {metrust-0.4.1 → metrust-0.4.2}/tests/test_gpu_backend.py +0 -0
  217. {metrust-0.4.1 → metrust-0.4.2}/tests/test_python_compat.py +0 -0
  218. {metrust-0.4.1 → metrust-0.4.2}/tests/verify_constants.py +0 -0
  219. {metrust-0.4.1 → metrust-0.4.2}/tests/verify_edge_cases.py +0 -0
  220. {metrust-0.4.1 → metrust-0.4.2}/tests/verify_kinematics.py +0 -0
  221. {metrust-0.4.1 → metrust-0.4.2}/tests/verify_severe_atmo.py +0 -0
  222. {metrust-0.4.1 → metrust-0.4.2}/tests/verify_smooth_interp.py +0 -0
  223. {metrust-0.4.1 → metrust-0.4.2}/tests/verify_thermo.py +0 -0
  224. {metrust-0.4.1 → metrust-0.4.2}/tests/verify_units.py +0 -0
  225. {metrust-0.4.1 → metrust-0.4.2}/tests/verify_wind.py +0 -0
@@ -802,7 +802,7 @@ dependencies = [
802
802
 
803
803
  [[package]]
804
804
  name = "metrust-py"
805
- version = "0.4.1"
805
+ version = "0.4.2"
806
806
  dependencies = [
807
807
  "metrust",
808
808
  "numpy",
@@ -8,7 +8,7 @@ license = "MIT"
8
8
 
9
9
  [package]
10
10
  name = "metrust-py"
11
- version = "0.4.1"
11
+ version = "0.4.2"
12
12
  edition.workspace = true
13
13
  description = "Python bindings for metrust, a Rust-powered MetPy-compatible calculation layer"
14
14
  readme = "README.md"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: metrust
3
- Version: 0.4.1
3
+ Version: 0.4.2
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Intended Audience :: Science/Research
6
6
  Classifier: License :: OSI Approved :: MIT License
@@ -54,7 +54,7 @@ pip install metrust metpy
54
54
 
55
55
  ## What It Does
56
56
 
57
- metrust implements every function in `metpy.calc` with a Rust backend compiled via PyO3. The Python API is designed for MetPy-compatible units, return types, and common calling conventions, without claiming byte-for-byte parity with every historical MetPy wrapper signature:
57
+ metrust implements every function in `metpy.calc` with a Rust backend compiled via PyO3. The Python API now matches MetPy's public `metpy.calc` signatures and is designed for MetPy-compatible units, return types, and runtime behavior on the shared calculation surface:
58
58
 
59
59
  ```python
60
60
  import numpy as np
@@ -231,7 +231,7 @@ These forward to MetPy when installed:
231
231
  - `metrust.xarray` (xarray accessor)
232
232
  - `metrust.io.Level2File` (NEXRAD Level II)
233
233
 
234
- Core `metrust.calc` is native Rust by default with no MetPy dependency. The optional `met-cu` backend is an explicit accelerator, not a requirement.
234
+ Core `metrust.calc` stays native Rust by default with no required MetPy dependency. A small parity-sensitive subset may delegate to MetPy when it is installed; otherwise those paths still fall back to local metrust implementations. The optional `met-cu` backend is an explicit accelerator, not a requirement.
235
235
 
236
236
  ## Examples
237
237
 
@@ -30,7 +30,7 @@ pip install metrust metpy
30
30
 
31
31
  ## What It Does
32
32
 
33
- metrust implements every function in `metpy.calc` with a Rust backend compiled via PyO3. The Python API is designed for MetPy-compatible units, return types, and common calling conventions, without claiming byte-for-byte parity with every historical MetPy wrapper signature:
33
+ metrust implements every function in `metpy.calc` with a Rust backend compiled via PyO3. The Python API now matches MetPy's public `metpy.calc` signatures and is designed for MetPy-compatible units, return types, and runtime behavior on the shared calculation surface:
34
34
 
35
35
  ```python
36
36
  import numpy as np
@@ -207,7 +207,7 @@ These forward to MetPy when installed:
207
207
  - `metrust.xarray` (xarray accessor)
208
208
  - `metrust.io.Level2File` (NEXRAD Level II)
209
209
 
210
- Core `metrust.calc` is native Rust by default with no MetPy dependency. The optional `met-cu` backend is an explicit accelerator, not a requirement.
210
+ Core `metrust.calc` stays native Rust by default with no required MetPy dependency. A small parity-sensitive subset may delegate to MetPy when it is installed; otherwise those paths still fall back to local metrust implementations. The optional `met-cu` backend is an explicit accelerator, not a requirement.
211
211
 
212
212
  ## Examples
213
213
 
@@ -10,9 +10,9 @@ in Rust versus what it delegates to MetPy.
10
10
  metrust is a MetPy-compatible calculation layer for `metpy.calc`, backed by a compiled Rust
11
11
  engine (`_metrust`). The compatibility model has three tiers:
12
12
 
13
- Function coverage in the tables below is a functionality matrix, not a guarantee of byte-for-byte
14
- signature parity with every historical MetPy calling convention. The compatibility tests cover the
15
- most common wrapper forms and explicit regression cases.
13
+ Function coverage in the tables below is a functionality matrix. Public `metpy.calc` signatures now
14
+ match MetPy, and the compatibility tests cover explicit runtime regression cases on the shared
15
+ calculation surface.
16
16
 
17
17
  | Tier | Description |
18
18
  |------|-------------|
@@ -19,7 +19,7 @@ from metrust.units import units
19
19
 
20
20
  That is the entire change for most code. Every function in `metrust.calc`
21
21
  accepts the same Pint Quantity inputs and returns Pint Quantity outputs, using
22
- the same function names and the same positional/keyword signatures as MetPy.
22
+ the same function names and the same public positional/keyword signatures as MetPy.
23
23
 
24
24
  A project-wide find-and-replace from `metpy.` to `metrust.` is usually
25
25
  sufficient. The table below shows the namespace mapping:
@@ -53,7 +53,7 @@ The surface is identical. Under the hood, every calculation runs through compile
53
53
 
54
54
  ### 150/150 MetPy Calc Functions (Plus 36 Extras)
55
55
 
56
- Every function in `metpy.calc` has a metrust equivalent -- 100% API coverage. Plus 36 additional functions MetPy doesn't have (grid composites, fire weather indices, and more). The entire `metrust.calc` module is backed by Rust -- no MetPy dependency, no Python fallback.
56
+ Every function in `metpy.calc` has a metrust equivalent -- 100% API coverage. Plus 36 additional functions MetPy doesn't have (grid composites, fire weather indices, and more). The calculation layer is Rust-backed by default, with a small parity-sensitive subset optionally delegating to MetPy when it is installed.
57
57
  Coverage spans the core of operational meteorology:
58
58
 
59
59
  - **Thermodynamics** -- potential temperature, equivalent potential temperature, virtual temperature, wet-bulb temperature, LCL, LFC, EL, CAPE/CIN, parcel profiles, precipitable water, thickness hydrostatic, stability indices
@@ -149,8 +149,8 @@ All `metrust.calc` functions compile to native machine code through the Rust too
149
149
 
150
150
  ### No MetPy Dependency for Calculations
151
151
 
152
- `pip install metrust` pulls in **only** NumPy and Pint. The entire calculation layer is self-contained.
153
- MetPy is never imported, loaded, or called for any `metrust.calc` function.
152
+ `pip install metrust` pulls in **only** NumPy and Pint. The calculation layer stays self-contained by default.
153
+ A small parity-sensitive subset of `metrust.calc` can delegate to MetPy when MetPy is installed, but the default path remains the Rust backend.
154
154
 
155
155
  ### Optional MetPy for Plots, xarray, and Level 2
156
156
 
@@ -158,7 +158,7 @@ A handful of surfaces intentionally delegate to MetPy when it is installed:
158
158
 
159
159
  | Surface | Behavior |
160
160
  |---|---|
161
- | `metrust.calc` | 100% native Rust. No MetPy fallback. |
161
+ | `metrust.calc` | Native Rust by default, with limited optional MetPy delegation on a few parity-sensitive paths. |
162
162
  | `metrust.io.Level2File` | Forwards to MetPy's Level 2 reader when available. |
163
163
  | `metrust.plots` | Forwards to `metpy.plots`. |
164
164
  | `metrust.xarray` | Forwards to `metpy.xarray`. |
@@ -4,7 +4,7 @@ build-backend = "maturin"
4
4
 
5
5
  [project]
6
6
  name = "metrust"
7
- version = "0.4.1"
7
+ version = "0.4.2"
8
8
  description = "Rust-powered MetPy-compatible calculation layer with optional GPU acceleration"
9
9
  requires-python = ">=3.9"
10
10
  license = {text = "MIT"}