Skip to content

Commit

Permalink
squash
Browse files Browse the repository at this point in the history
  • Loading branch information
alanking committed Apr 1, 2024
1 parent dde5e4e commit 4fc616b
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion docs/developers/deprecation.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ We will now describe the steps which should be taken to deprecate various types
The following things need to be done whenever a feature is being declared as deprecated:

1. Update documentation to include alternative, supported way(s) of accomplishing what is now deprecated. If no alternative is available, include a note indicating that use of the deprecated API should be avoided. Updating the documentation includes adding a `\deprecated` tag with the aforementioned notes to the Doxygen for any public declarations associated with the feature.
2. Add a "deprecated" attribute specifier (`[[deprecated]]` for C++ or `__attribute__(deprecated)` for C) to the C/C++ public declarations specific to this API and include a message that is similar if not identical to the message used in (1). This includes any functions, structs, classes, and typedefs. If a struct, class, or typedef is being used by other APIs which are not being deprecated and the usage is not related to the feature which is being deprecated, do not deprecate these. For example, `DataObjInp` could be used by an API which is being deprecated, but `DataObjInp` is not specific to that API. Therefore, `DataObjInp` would not be a candidate for deprecation.
2. Add a "deprecated" attribute specifier (`[[deprecated]]` for C++ or `__attribute__(deprecated)` for C) to the C/C++ public declarations specific to this API and include a message that is similar if not identical to the message used in (1). This includes any functions, structs, classes, and type aliases. If a struct, class, or type alias is being used by other APIs which are not being deprecated and the usage is not related to the feature which is being deprecated, do not deprecate these. For example, `DataObjInp` could be used by an API which is being deprecated, but `DataObjInp` is not specific to that API. Therefore, `DataObjInp` would not be a candidate for deprecation.
3. Add comments to any macros directly related to the API indicating that the feature has been deprecated. This will not have any effect on compilation or usage, but will give the developer pause as they consider whether to use it in an application.
4. If the feature is used by a client such as the iCommands and has user-facing help text, a note about the feature being deprecated should be included in the help text anywhere the feature is mentioned. If the feature being deprecated *is* an iCommand, a note about its deprecation can be included near the top of the help text.

Expand Down

0 comments on commit 4fc616b

Please sign in to comment.