From 84ebc57de68e09b532bc33126ade5d52fcc6c738 Mon Sep 17 00:00:00 2001 From: Austin Sanders <arsanders@usgs.gov> Date: Wed, 15 May 2024 12:59:16 -0600 Subject: [PATCH] Added deprecation guidelines (#70) --- docs/how-to-guides/software-management/deprecation.md | 11 +++++++++++ mkdocs.yml | 1 + 2 files changed, 12 insertions(+) create mode 100644 docs/how-to-guides/software-management/deprecation.md diff --git a/docs/how-to-guides/software-management/deprecation.md b/docs/how-to-guides/software-management/deprecation.md new file mode 100644 index 0000000..d39b777 --- /dev/null +++ b/docs/how-to-guides/software-management/deprecation.md @@ -0,0 +1,11 @@ +# Deprecation +This document is intended to provide guidelines for the deprecation process. + +## 1. Deprecation Proposal +Those who wish to deprecate functionality should propose the deprecation via an issue on the software's repository of record. This allows for discussion among the developers and the user community. If a consensus is met that the functionality should be deprecated, then a deprecation warning should be written. + +## 2. Deprecation Warning +A deprecation warning should be presented to the user whenever the deprecated functionality is used. Though no standard has yet been agreed upon by the developers or the ASC software user base, previous deprecation warnings have taken the form of a simple message printed via `cout`. In addition to creating the deprecation warning message, the deprecated functionality should also be noted in the repository's changelog. This warning should include a link to the issue that proposed the deprecation. + +## 3. Removal of Deprecated Functionality +No less than 6 months after the release that includes the deprecation notice, a commit containing the removal of the deprecated functionality should be PR'd into the development branch. This change should also be captured in the changelog. \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index 65af266..d3d4eab 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -62,6 +62,7 @@ nav: - General Utility with FX: how-to-guides/image-processing/general-utility-with-fx.md - Bundle Adjustment in ISIS: how-to-guides/image-processing/bundle-adjustment-in-isis.md - Software Management: + - Deprecation: how-to-guides/software-management/deprecation.md - Public Release Process: how-to-guides/software-management/public-release-process.md - Software Support: how-to-guides/software-management/software-support.md - Guidelines for Reporting Issues: how-to-guides/software-management/guidelines-for-reporting-issues.md -- GitLab