Project:PostgreSQL/Slot Bump
When to Bump
Slot bumping happens in parallel with the beta release of a new major version. The new slot will match the major version of the next anticipated version beyond the current beta.
This document will walk through the changes required when upstream does the fictional beta release of version 11 -- this will probably be a reality some day, but not at the time of this writing -- and it anticipates the next major version will be 12.
What needs to be bumped
Everything that follows must be committed individually without pushing.
Copy postgresql-10.*.ebuild to postgresql-11_beta?.ebuild
Copy the highest versioned ebuild to be the beta ebuild. The live version (postgresql-9999.ebuild) is not suitable for this as it does not support building just the client programs and libraries.
You will most likely need to create a new no-server.patch file.
Beta and RC packages must be masked. Add the following to profiles/package.mask:
# Dev E. Loper <developer@gentoo.org> (09 Sep 2018)
# PostgreSQL beta and release candidate releases are pre-release testing
# versions, not meant for production use. They are feature-frozen, and are
# released to the public for testing before final release
#
# NOTE: Successive beta or candidate releases may not be backwards compatible,
# so it is important that you review the release notes before upgrading.
#
# For more information about beta and release candidate versions, see:
# https://www.postgresql.org/developer/beta/
dev-db/postgresql:11
dev-db/postgresql-9999
Bump slot to the next anticipated major version
-SLOT="11"
+SLOT="12"
profiles/base/make.defaults
Change the default POSTGRES_TARGETS to the highest slot with a stable version.
-POSTGRES_TARGETS="postgres9_5"
+POSTGRES_TARGETS="postgres10"
profiles/desc/postgres_targets.desc
Add to the new slot to the description file
postgres11 - Build against PostgreSQL 11
+postgres12 - Build against PostgreSQL 12
eclass/postgres.eclass
Add the new slot to the eclass so simple sorting can keep working. This change of the eclass does not require permission or checking in with anyone.
-_POSTGRES_ALL_VERSIONS=( 11 10 9.6 9.5 9.4 9.3 9.2 )
+_POSTGRES_ALL_VERSIONS=( 12 11 10 9.6 9.5 9.4 9.3 9.2 )
Push it!
Once you have completed all the changes, you can push the changes.