From 9710790a39e2c075eeef06ed529d568385a4f445 Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 12 Jun 2020 08:55:47 -0400 Subject: Help/dev: Add maintainer guide step for initial post-release development Document steps for deprecating old policy settings and future-proofing export files generated by `install(EXPORT)`. --- Help/dev/maint.rst | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/Help/dev/maint.rst b/Help/dev/maint.rst index a1c1a6f..9b6774b 100644 --- a/Help/dev/maint.rst +++ b/Help/dev/maint.rst @@ -299,3 +299,28 @@ announcing that post-release development is open:: before staging or merging. .. _`CMake Discourse Forum Development Category`: https://discourse.cmake.org/c/development + +Initial Post-Release Development +-------------------------------- + +Deprecate policies more than 8 release series old by updating the +policy range check in ``cmMakefile::SetPolicy``. +Commit with a message such as:: + + Add deprecation warnings for policies CMP#### and below + + The OLD behaviors of all policies are deprecated, but only by + documentation. Add an explicit deprecation diagnostic for policies + introduced in CMake $OLDVER and below to encourage projects to port + away from setting policies to OLD. + +Update the ``cmake_policy`` version range generated by ``install(EXPORT)`` +in ``cmExportFileGenerator::GeneratePolicyHeaderCode`` to end at the +previous release. We use one release back since we now know all the +policies added for that version. Commit with a message such as:: + + export: Increase maximum policy version in exported files to $prev + + The files generatd by `install(EXPORT)` and `export()` commands + are known to work with policies as of CMake $prev, so enable them + in sufficiently new CMake versions. -- cgit v0.12