Release and Upgrade Rules
This directory collects release-policy and upgrade-safety rules consolidated
from the former doc/developer.md and the developer wiki. Use it when a patch
changes SQL API, C API, extension upgrade behavior, dependency requirements, or
supported PostgreSQL versions.
- API compatibility indexes SQL/C API compatibility rules.
- Versioning policy explains version terminology, library naming, and release-line compatibility constraints.
- Deprecating and removing API explains SQL-visible object
removals and C API stubs for
pg_upgrade. - SQL upgrade and deprecation explains
Availability:,Changed:,Replaces, before/after upgrade hooks, and parser-sensitive SQL style. - Dependency and support guards explains dependency-version guards and the checklist for dropping PostgreSQL support.
- Testing and debugging explains sandboxed regression roles used by CI and downstream builders.
- Do not add SQL API functions in a patch release.
- Do not remove SQL API or C API functions except in a major release unless the old signatures are safely stubbed or migrated.
- Do not require newer dependency-library versions in a micro release.
- Treat
pg_upgradeas the design constraint for legacy SQL and C signatures. - Keep upgrade metadata comments current and minimal.