-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enforce deprecation process #14983
Comments
Example # To be deprecated
* lua_v1 v0.52 The lua transform v1 mode is obsolete and needs to be removed
* foobar v0.26 Foobar needs to die a slow and painful death
# To be migrated
* barbaz v0.28 We are moving users to the Babar instead
# To be removed
* thatthing v0.29 That thing is obsolete and has been migrated |
I'm a fan of the Not even sure if the automated script is really needed, I think just having a document with the deprecations and the version numbers will get us 90% of the improvement here |
One thing to note is that I had planned, in part, to utilize some of the Configuration Schema work to drive deprecation automation. To wit, I've been unofficially adding My plan was/is to generate a schema document every time we cut an official, versioned release. These might live in this repository, or in another repository. Every time we cut an official, versioned release from then on, we would check which parts of the schema had changed, and for fields that had been changed/removed, we would check the previous version's schema to see if they were already marked as deprecated... the idea being that then we could detect when we were about to make user-visible changes that were not properly communicated as being deprecated. I also believe this data, in the configuration schema, could potentially be used to power generating the above DEPRECATIONS file as well, even. Additionally, we could potentially change the As an example, we might deprecate a field and mark it as deprecated in version 0.25. Once the project bumps to version 0.26 -- even when not released yet -- the compiler could potentially start emitting a non-blocking warning that the code still exists, even though it should theoretically be removed as of the current 0.26 version. |
Add a file to track deprecations through their lifecycle and remind us to come back to take any deprecation actions as part of each release. See #14983 for the process proposal. The intent is to make sure we follow through on deprecations, migrations, and removals. Closes: #14983 Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com>
* chore(dev): Add DEPRECATIONS.md file to track deprecations Add a file to track deprecations through their lifecycle and remind us to come back to take any deprecation actions as part of each release. See #14983 for the process proposal. The intent is to make sure we follow through on deprecations, migrations, and removals. Closes: #14983 Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> * Update process in DEPRECATION.md too Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> * Remove from "to be removed" Will instead be added once the migration step is complete Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> * Fix markdown headers and add link to process Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> --------- Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com>
The format of this file was originally described in #14983 Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com>
* chore(dev): Detail the format of DEPRECATIONS.md file The format of this file was originally described in #14983 Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> * Add example Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> * markdown linting Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> --------- Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com>
…9016) * chore(dev): Detail the format of DEPRECATIONS.md file The format of this file was originally described in vectordotdev#14983 Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> * Add example Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> * markdown linting Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com> --------- Signed-off-by: Jesse Szwedko <jesse.szwedko@datadoghq.com>
This is a mini-RFC proposal for a new deprecation process.
While Vector has a deprecation policy, we don't have any process for actually ensuring the policy is followed in a timely and visible manner. This has showed up in areas like the Lua transform version 2 mode being introduced in March 2020 with an indication that version 1 would be deprecated, but the actual deprecation not actually being announced for over two years.
docs/DEPRECATIONS.md
, with three sections, each corresponding to one of the stages, consolidating references to all the affected facets in one location:Examples:
lua
transformv1
mode is obsolete and needs to be removedTasks:
Future work:
Example:
// DEPRECATION: lua_v1 Remove everything under this module
Together this will help ensure that all deprecations are tracked, and that the removal process checks all the locations where a deprecation is noted.
The text was updated successfully, but these errors were encountered: