V0.9 Release Readiness#
Release Target#
package version:
0.9.0git tag:
v0.9.0package-index publication: deferred until
v1.0or later
v0.9.0 is a Git-tag-only release.
Do not run TestPyPI or PyPI publishing for v0.9.
Done#
M0 is complete:
v0.9was frozen as the stable normalized periodic KdV strong-path releaseexact derivative, generator, residual, vertical-slice, and imported-parity scope was documented
M1 is complete:
compute_spectral_fd_derivatives(..., max_spatial_order=3)addsu_xxxdefault
max_spatial_order=2behavior remains compatible withv0.8
M2 is complete:
pdelie.data.generate_kdv_1d_field_batch(...)is implementedgenerated data is canonical scalar 1D uniform periodic
FieldBatchdata
M3 is complete:
pdelie.residuals.KdVResidualEvaluatoris implementednormalized residual form is
u_t + 6*u*u_x + u_xxx = 0
M4 is complete:
KdV translation fitting and held-out verification pass the frozen vertical slice
python -m pdelie.examples.kdv_vertical_sliceis available as a runtime smoke
M5 is complete:
mandatory
from_numpyKdV imported parity passesoptional
from_xarrayKdV parity skips cleanly when xarray is unavailableweak KdV, root KdV exports, and broad adapter expansion remain absent
M6 is complete:
compact
v0_9-release-gateis implementedCI visibility includes
v0_9-release-gatepackage metadata and release-facing docs are aligned with
0.9.0wheel smoke includes a tiny KdV strong-path check
Observed KdV Release Fixture#
Frozen fixture:
generator seed:
9001batch_size = 5train_size = 2split seed:
9002all other generator settings default
Observed values:
max absolute residual:
0.0029755398453998883RMS residual:
0.0005530662104030956mass drift:
1.529348589458863e-16relative L2 drift:
4.353026792731057e-14translation span distance:
0.007441277120177836first-epsilon held-out verification error:
3.7632323492784305e-06verification classification:
approximatefit mode:
svdreference fallback used:
False
The release gate requires non-failed verification, not exact classification.
The observed approximate classification is acceptable under the frozen v0.9 criteria.
Explicitly Deferred#
weak KdV APIs
weak derivative APIs or broader weak-form expansion
root
pdelieexports for KdV runtime APIscustom KdV initial conditions
configurable KdV coefficients
general KdV stability guarantees outside the frozen short-horizon release fixtures
multidimensional, multivariable, nonuniform-grid, operator, or broad adapter expansion
PyPI and TestPyPI publication; package-index publishing is deferred to
v1.0or later
Final Release View#
The current repository is ready for the final 0.9.0 Git tag for the frozen v0.9 normalized periodic KdV strong path, subject to release-path checks passing on the release branch and CI passing on the release PR.
There are no known scientific-scope blockers inside the frozen v0.9 slice.
The stable v0.9 claim remains narrow:
normalized periodic short-horizon KdV generator
spectral_fdthird spatial derivative supportnormalized KdV strong-form residual evaluator
KdV translation fitting and held-out verification on the frozen fixture
mandatory
from_numpyimported parity for representative KdV datano weak KdV
no general KdV support
Packaging And Public API Notes#
pdelie.derivatives.compute_spectral_fd_derivatives(..., max_spatial_order=3)is stable foru_xxxpdelie.data.generate_kdv_1d_field_batchis stable under the frozen v0.9 normalized periodic short-horizon regimepdelie.residuals.KdVResidualEvaluatoris stable for the normalized strong-form KdV residualpdelie.examples.run_kdv_vertical_slice_exampleis a runtime smoke example, not a canonical report schemaKdV runtime APIs are exposed from submodules only, not root
pdeliepdelie.residuals.evaluate_weak_heat_residualandpdelie.residuals.evaluate_weak_burgers_residualremain stable runtime APIs fromv0.8pdelie.data.from_numpyandpdelie.data.from_xarrayremain stable runtime public APIs fromv0.7the
v0_4-release-gate,v0_5-release-gate,v0_6-release-gate,v0_7-release-gate,v0_8-release-gate, andv0_9-release-gateCI jobs are explicit visibility checkspost-
v0.9CI consolidation is a follow-up item and is not part of this release
Direct Final Tag Checklist#
Before tagging v0.9.0:
inspect consistency across:
pyproject.tomlREADME.mdCHANGELOG.mddocs/releases/V0_9_RELEASE_READINESS.mddocs/releases/PUBLISHING.mddocs/specs/API_STABILITY.md
run
python -m pytestfrom the repo rootrun
python -m build --sdist --wheelinstall the built wheel into a clean environment and verify:
stable root imports
weak residual runtime imports under
pdelie.residualsone tiny weak Heat report smoke
one tiny KdV strong-path smoke
run
python -m pdelie.examples.heat_vertical_slicerun
python -m pdelie.examples.kdv_vertical_sliceconfirm GitHub Actions jobs
v0_4-release-gate,v0_5-release-gate,v0_6-release-gate,v0_7-release-gate,v0_8-release-gate,v0_9-release-gate,editable-tests, andpackage-smokepass on the release PR commitmerge the release PR into
maintag the merged
maincommit asv0.9.0do not publish to TestPyPI
do not publish to PyPI
record package-index publishing as deferred until
v1.0or later