Title: Document the workflow for deprecating something in CPython. · Issue #1419 · python/devguide · GitHub
Open Graph Title: Document the workflow for deprecating something in CPython. · Issue #1419 · python/devguide
X Title: Document the workflow for deprecating something in CPython. · Issue #1419 · python/devguide
Description: Describe the enhancement or feature you'd like Document the workflow on how to deprecate something in CPython. Deprecating something in Python involves raising deprecation warning and then actually removing the code some time later (at l...
Open Graph Description: Describe the enhancement or feature you'd like Document the workflow on how to deprecate something in CPython. Deprecating something in Python involves raising deprecation warning and then actually...
X Description: Describe the enhancement or feature you'd like Document the workflow on how to deprecate something in CPython. Deprecating something in Python involves raising deprecation warning and then actu...
Opengraph URL: https://github.com/python/devguide/issues/1419
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Document the workflow for deprecating something in CPython.","articleBody":"**Describe the enhancement or feature you'd like**\r\nDocument the workflow on how to deprecate something in CPython.\r\nDeprecating something in Python involves raising deprecation warning and then actually removing the code some time later (at least 2 release cycles). We don't have this process documented clearly.\r\n\r\n**Describe alternatives you've considered**\r\nCurrently this is undocumented process, and each of us has to just figure it out somehow.\r\n\r\n**Additional context**\r\nDiscussed on Discord core-workflow-and-bots channel, and now opening a ticket based on the discussions.\r\n\r\n\r\nBasic process:\r\n- An issue was opened calling for deprecation of something\r\n- We deprecate the code by adding warnings.deprecated (or warnings._deprecated)\r\n- Document the deprecation. Needs a Porting doc (how?)\r\n- The issue can be closed after the code for adding deprecation has been merged. It doesn't need to stay open for 2+ more years.\r\n- Add the deprecation to the `pending-removal-in....rst` file\r\n- At the scheduled removal year, open a new issue for the removal\r\n- Finally remove the code\r\n\r\nOther info:\r\n\r\n- Some deprecations don't have set removal date.\r\n- There are also deprecated-removed Sphinx role to help advertise the removal dates.\r\n- How to decide whether Removal/Deprecation is the right solution?\r\n - search the usage, search on GitHub, grep, check PyPI projects to get an idea of the widespread usage\r\n - when searching, look not just if people are using it, but how they're using it. Document the use case for the porting notes\r\n- Is there a template for deprecation warning message?\r\n- Should have documentation about how to port/replace it (porting notes)\r\n- Users are encouraged to give feedback about deprecation by filing an issue\r\n- \r\nNote there is an open proposal for extending the removal of deprecated code to 5 years instead of 2.","author":{"url":"https://github.com/Mariatta","@type":"Person","name":"Mariatta"},"datePublished":"2024-09-27T22:54:36.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":8},"url":"https://github.com/1419/devguide/issues/1419"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:89e0ec14-3490-2a97-db41-2d5f2066ad3c |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 8A2C:CADE5:18D88D7:213365A:6969BE9D |
| html-safe-nonce | 9f615f9dd8c787cf6d6469646360c4c1b1fc7a3494d70d29656c44368a32158e |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI4QTJDOkNBREU1OjE4RDg4RDc6MjEzMzY1QTo2OTY5QkU5RCIsInZpc2l0b3JfaWQiOiIxMTUxNTczNjIxMDgzODQ4MzQ5IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | dd1d331fdd1d40ad94add4978846ae9a5e616d325c261a43f74e4cd54a9f043b |
| hovercard-subject-tag | issue:2553852116 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/devguide/1419/issue_layout |
| twitter:image | https://opengraph.githubassets.com/21fbe573b7f7aae4c6c5ccad8f0f6cf1e786b380490f7c30c45d0f1108bc8be4/python/devguide/issues/1419 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/21fbe573b7f7aae4c6c5ccad8f0f6cf1e786b380490f7c30c45d0f1108bc8be4/python/devguide/issues/1419 |
| og:image:alt | Describe the enhancement or feature you'd like Document the workflow on how to deprecate something in CPython. Deprecating something in Python involves raising deprecation warning and then actually... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | Mariatta |
| hostname | github.com |
| expected-hostname | github.com |
| None | acedec8b5f975d9e3d494ddd8f949b0b8a0de59d393901e26f73df9dcba80056 |
| turbo-cache-control | no-preview |
| go-import | github.com/python/devguide git https://github.com/python/devguide.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 63972479 |
| octolytics-dimension-repository_nwo | python/devguide |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 63972479 |
| octolytics-dimension-repository_network_root_nwo | python/devguide |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 83c08c21cdda978090dc44364b71aa5bc6dcea79 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width