Skip to content

Add ability to selectively remove middlewares from apiFetch #70506

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: trunk
Choose a base branch
from

Conversation

coderGtm
Copy link
Contributor

What?

Closes #16805

Added ability to selectively remove/unregister middleware(s) from apiFetch.

Why?

There exists no way to remove middlewares used in apiFetch and this was a blocker in many use cases as discussed in length in #16805

There was also an earlier PR (#16806) to fix this issue but was somehow closed without merging. The approach taken in this PR is slightly different.

How?

  • Added a getMiddleware() function that returns the middlewares used to users.
  • Added a removeMiddleware() function to remove middlewares using the middlewares returned from above.

Testing

I have added a couple of tests in the tests file for this feature.

@coderGtm coderGtm requested review from nerrad and mmtr as code owners June 24, 2025 09:04
Copy link

Warning: Type of PR label mismatch

To merge this PR, it requires exactly 1 label indicating the type of PR. Other labels are optional and not being checked here.

  • Type-related labels to choose from: [Type] Automated Testing, [Type] Breaking Change, [Type] Bug, [Type] Build Tooling, [Type] Code Quality, [Type] Copy, [Type] Developer Documentation, [Type] Enhancement, [Type] Experimental, [Type] Feature, [Type] New API, [Type] Task, [Type] Technical Prototype, [Type] Performance, [Type] Project Management, [Type] Regression, [Type] Security, [Type] WP Core Ticket, Backport from WordPress Core, Gutenberg Plugin.
  • Labels found: .

Read more about Type labels in Gutenberg. Don't worry if you don't have the required permissions to add labels; the PR reviewer should be able to help with the task.

Copy link

github-actions bot commented Jun 24, 2025

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: coderGtm <[email protected]>
Co-authored-by: youknowriad <[email protected]>
Co-authored-by: kadamwhite <[email protected]>
Co-authored-by: senadir <[email protected]>
Co-authored-by: mauricewijnia <[email protected]>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@github-actions github-actions bot added the First-time Contributor Pull request opened by a first-time contributor to Gutenberg repository label Jun 24, 2025
Copy link

👋 Thanks for your first Pull Request and for helping build the future of Gutenberg and WordPress, @coderGtm! In case you missed it, we'd love to have you join us in our Slack community.

If you want to learn more about WordPress development in general, check out the Core Handbook full of helpful information.

@Mamaduka Mamaduka added [Type] Enhancement A suggestion for improvement. [Package] API fetch /packages/api-fetch labels Jun 24, 2025
@coderGtm
Copy link
Contributor Author

coderGtm commented Jul 1, 2025

Is there anything else required to move this forward? I am fairly new to WordPress Contribution so would appreciate any guidance.

TIA

cc: @nerrad @mmtr

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
First-time Contributor Pull request opened by a first-time contributor to Gutenberg repository [Package] API fetch /packages/api-fetch [Type] Enhancement A suggestion for improvement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add the abillity to remove apiFetch middlewares
2 participants