chore(api): deprecate last plugin webhook endpoints#107296
Conversation
Add deprecation decorator to GitHub and Bitbucket plugin webhook endpoints (sentry-plugins-github-webhook and sentry-plugins-bitbucket-webhook) for cell API deprecation. Co-authored-by: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.
|
|
||
| return super().dispatch(request, *args, **kwargs) | ||
|
|
||
| @deprecated(CELL_API_DEPRECATION_DATE, url_names=["sentry-plugins-bitbucket-webhook"]) |
There was a problem hiding this comment.
DRF Response incompatible with plain Django View
High Severity
The @deprecated decorator is being applied to plain Django View subclasses, but during brownout periods it returns a DRF Response object. DRF's Response requires accepted_renderer to be set (normally done by DRF's APIView content negotiation), but plain Django Views don't have this machinery. After the deprecation date, brownouts will cause an AssertionError: .accepted_renderer not set on Response crash instead of returning a 410 Gone response. Both BitbucketPluginWebhookEndpoint and GithubPluginWebhookEndpoint inherit from Django's View, not DRF's APIView.
Additional Locations (1)
Deprecate `sentry-plugins-github-webhook` and `sentry-plugins-bitbucket-webhook`. Similar to #106601. Refs https://www.notion.so/sentry/Cell-safe-API-endpoints-2a38b10e4b5d8036931fd6781e01eb23?source=copy_link Co-authored-by: Claude <noreply@anthropic.com>
Deprecate `sentry-plugins-github-webhook` and `sentry-plugins-bitbucket-webhook`. Similar to #106601. Refs https://www.notion.so/sentry/Cell-safe-API-endpoints-2a38b10e4b5d8036931fd6781e01eb23?source=copy_link Co-authored-by: Claude <noreply@anthropic.com>


Deprecate
sentry-plugins-github-webhookandsentry-plugins-bitbucket-webhook. Similar to #106601.Refs https://www.notion.so/sentry/Cell-safe-API-endpoints-2a38b10e4b5d8036931fd6781e01eb23?source=copy_link