Skip to content

Cherry-pick #40520: Deprecate URLs with "team" and "query" terminology#40616

Merged
iansltx merged 1 commit intorc-minor-fleet-v4.82.0from
cherry-pick-40520
Feb 26, 2026
Merged

Cherry-pick #40520: Deprecate URLs with "team" and "query" terminology#40616
iansltx merged 1 commit intorc-minor-fleet-v4.82.0from
cherry-pick-40520

Conversation

@sgress454
Copy link
Copy Markdown
Contributor

Cherry-pick of #40520 into rc-minor-fleet-v4.82.0.

<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #40519

# Details

This PR adds a new system for registering deprecated URLs separately
from the main URLs (i.e. not clogging up `handler.go` with a bunch of
`.WithAltPaths()` or similar. It uses a registry that's shared between
all the different endpointer, which is then iterated over and a new
handler is created for the deprecated endpoint which stores info about
the deprecation (the old and new URLs) in the context. A new middleware
looks for that context info and, if found, logs a deprecation warning
(if the topic is enabled).

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [ ] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files)
for more information.
no need for a changelog as we are not logging the warnings by default

## Testing

- [X] Added/updated automated tests
- [X] QA'd all new/changed functionality manually

* Verified that going to `/teams` with
`--logging_enable_topics=deprecated-field-names` got me this log:
```
deprecated_path=/api/_version_/fleet/teams deprecation_warning="API `/api/_version_/fleet/teams` is deprecated, use `/api/_version_/fleet/fleets` instead
```
* Going to `/fleets` with that flag enabled resulted in no deprecation
log
* Going to `/teams` _without_ the flag enabled resulted in no
deprecation log
@sgress454 sgress454 requested a review from a team as a code owner February 26, 2026 17:19
@codecov
Copy link
Copy Markdown

codecov Bot commented Feb 26, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (rc-minor-fleet-v4.82.0@b67ac38). Learn more about missing BASE report.

Additional details and impacted files
@@                    Coverage Diff                    @@
##             rc-minor-fleet-v4.82.0   #40616   +/-   ##
=========================================================
  Coverage                          ?   66.40%           
=========================================================
  Files                             ?     2456           
  Lines                             ?   197006           
  Branches                          ?     8556           
=========================================================
  Hits                              ?   130820           
  Misses                            ?    54348           
  Partials                          ?    11838           
Flag Coverage Δ
backend 68.16% <100.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@iansltx iansltx merged commit d5197a2 into rc-minor-fleet-v4.82.0 Feb 26, 2026
45 checks passed
@iansltx iansltx deleted the cherry-pick-40520 branch February 26, 2026 18:14
@georgekarrv georgekarrv mentioned this pull request Mar 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants