mirror of
https://github.com/fsouza/fake-gcs-server.git
synced 2026-04-26 06:05:54 +03:00
[GH-ISSUE #2036] Object metadata update with POST and X-Http-Method-Override: PATCH is not processed as a PATCH #243
Labels
No labels
bug
compatibility-issue
docker
documentation
enhancement
help wanted
needs information
pull-request
question
stale
unfortunate
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/fake-gcs-server#243
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @BenWhitehead on GitHub (Sep 30, 2025).
Original GitHub issue: https://github.com/fsouza/fake-gcs-server/issues/2036
Issuing a PATCH object update as a
POSTwithX-Http-Method-Override: PATCHis not in fact processed as a patch. In the following reproducer if I change to using thePATCHverb everything works as expected.This issue was brought to my attention when I received a bug for my client https://github.com/googleapis/java-storage/issues/3301 claiming a regression even tough all tests pass against GCS itself. And later it being noted this server is being used in their tests https://github.com/googleapis/java-storage/issues/3301#issuecomment-3336967509.
Unfortunately it is not possible for me to change my client to use the PATCH verb, as we are calling code that is generated by a separate process which can't change their generator due to historical compatibility needs.
I see that
github.com/fsouza/fake-gcs-server@1e417de4a4/fakestorage/server.go (L275)has a route that should be handling this already, but I'm not sure why it isn't -- and I don't know enough go to dig deeper at this time.Reproducer
Start server
Start server by running (I wasn't able to test v1.50.3 due to some docker pull errors)
Run script
Then run the following reproducer script that uses
xhto issue requestsResults
full script output