Skip to content

ref: Remove unmigratable repositories code path#115905

Merged
evanpurkhiser merged 1 commit into
masterfrom
evanpurkhiser/ref-remove-unmigratable-repositories-code-path
May 20, 2026
Merged

ref: Remove unmigratable repositories code path#115905
evanpurkhiser merged 1 commit into
masterfrom
evanpurkhiser/ref-remove-unmigratable-repositories-code-path

Conversation

@evanpurkhiser
Copy link
Copy Markdown
Member

The ?status=unmigratable branch on /api/0/organizations/<org>/repos/ has no frontend caller. The UI that drove it (migrationWarnings.tsx and the related "Upgrade" buttons in the org integrations directory) was deleted in #17823 back in March 2020, and nothing in static/ has passed status=unmigratable since. The backend has been zombie code for ~6 years.

This PR removes:

  • UNMIGRATABLE_PROVIDERS and the corresponding elif branch in OrganizationRepositoriesEndpoint.get()
  • get_unmigratable_repositories on the base RepositoryIntegration
  • the overrides on bitbucket, bitbucket_server, github, vsts, perforce
  • the example integration's no-op override
  • the four test_status_unmigratable* cases in tests/sentry/integrations/api/endpoints/test_organization_repositories.py

The plugin -> integration auto-migration on integration install (migrate_repo task + sentry.plugins.migrator.Migrator) is intentionally left alone. That's a separate mechanism from this dead query-param branch and still runs when an org installs a SCM integration with the legacy plugin enabled.

A one-line frontend follow-up to drop the now-dead 'unmigratable' literal from the status?: type unions in static/app/utils/repositories/repoQueryOptions.ts will ship as a separate PR (per the static/ vs src/ deploy split documented in AGENTS.md).

The `?status=unmigratable` branch on the org repositories endpoint has
no frontend caller. The UI that drove it (`migrationWarnings.tsx` and
the surrounding "Upgrade" buttons on the integrations directory) was
deleted in #17823 back in March 2020, and nothing in `static/` has
passed `status=unmigratable` since.

Removes:
- `UNMIGRATABLE_PROVIDERS` and the corresponding endpoint branch
- `get_unmigratable_repositories` on the base `RepositoryIntegration`
- overrides on bitbucket, bitbucket_server, github, vsts, perforce
- the example integration's no-op override
- the four `test_status_unmigratable*` test cases

The plugin -> integration auto-migration on integration install
(`migrate_repo` task + `sentry.plugins.migrator.Migrator`) is left
alone -- that's a separate mechanism from this dead query-parameter
branch and still runs for orgs that install a SCM integration while
the legacy plugin is enabled.

A small frontend follow-up to drop the now-dead `'unmigratable'`
literal from the `status?:` type unions in `repoQueryOptions.ts` will
ship as a separate PR (per `static/` vs `src/` deploy split).
@evanpurkhiser evanpurkhiser requested review from a team as code owners May 20, 2026 17:31
@evanpurkhiser evanpurkhiser requested a review from a team May 20, 2026 17:31
@evanpurkhiser evanpurkhiser requested review from a team as code owners May 20, 2026 17:31
@github-actions github-actions Bot added the Scope: Backend Automatically applied to PRs that change backend components label May 20, 2026
Copy link
Copy Markdown
Contributor

@saponifi3d saponifi3d left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🙏 thanks for cleaning up deadcode! lgtm!

@evanpurkhiser evanpurkhiser merged commit 4d38213 into master May 20, 2026
68 checks passed
@evanpurkhiser evanpurkhiser deleted the evanpurkhiser/ref-remove-unmigratable-repositories-code-path branch May 20, 2026 19:23
evanpurkhiser added a commit that referenced this pull request May 20, 2026
…115906)

Follow-up to #115905, which removed the backend `?status=unmigratable`
path on the org repositories endpoint.

The `'unmigratable'` literal in the two `status?:` type unions in
`static/app/utils/repositories/repoQueryOptions.ts` was the last
reference to that mode anywhere in `static/`, and nothing has passed it
since the migration UI was removed in #17823 (March 2020).
JonasBa pushed a commit that referenced this pull request May 21, 2026
The `?status=unmigratable` branch on `/api/0/organizations/<org>/repos/`
has no frontend caller. The UI that drove it (`migrationWarnings.tsx`
and the related "Upgrade" buttons in the org integrations directory) was
deleted in #17823 back in March 2020, and nothing in `static/` has
passed `status=unmigratable` since. The backend has been zombie code for
~6 years.

This PR removes:

- `UNMIGRATABLE_PROVIDERS` and the corresponding `elif` branch in
`OrganizationRepositoriesEndpoint.get()`
- `get_unmigratable_repositories` on the base `RepositoryIntegration`
- the overrides on bitbucket, bitbucket_server, github, vsts, perforce
- the example integration's no-op override
- the four `test_status_unmigratable*` cases in
`tests/sentry/integrations/api/endpoints/test_organization_repositories.py`

The plugin -> integration auto-migration on integration install
(`migrate_repo` task + `sentry.plugins.migrator.Migrator`) is
intentionally left alone. That's a separate mechanism from this dead
query-param branch and still runs when an org installs a SCM integration
with the legacy plugin enabled.

A one-line frontend follow-up to drop the now-dead `'unmigratable'`
literal from the `status?:` type unions in
`static/app/utils/repositories/repoQueryOptions.ts` will ship as a
separate PR (per the `static/` vs `src/` deploy split documented in
AGENTS.md).
JonasBa pushed a commit that referenced this pull request May 21, 2026
…115906)

Follow-up to #115905, which removed the backend `?status=unmigratable`
path on the org repositories endpoint.

The `'unmigratable'` literal in the two `status?:` type unions in
`static/app/utils/repositories/repoQueryOptions.ts` was the last
reference to that mode anywhere in `static/`, and nothing has passed it
since the migration UI was removed in #17823 (March 2020).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Backend Automatically applied to PRs that change backend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants