mirror of
https://github.com/fsouza/fake-gcs-server.git
synced 2026-04-25 13:45:52 +03:00
[PR #60] [MERGED] Initial object versioning support - retention of old generations if version is enabled, and getObject by generation #304
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#304
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?
📋 Pull Request Information
Original PR: https://github.com/fsouza/fake-gcs-server/pull/60
Author: @dcaba
Created: 8/13/2019
Status: ✅ Merged
Merged: 12/12/2019
Merged by: @fsouza
Base:
master← Head:BasicVersioningSupport📝 Commits (10+)
1cf1190Object supporting updated/created/deleted date, as first step to support versionsc3f7ce0Dockerfile reproducing with stages what drone is doing the CI, so we can reproduce locally. fmt-ed the files to pass the tests7049962rebase conflict issue - back to main golang image to run tests9f2196crebase conflict issue - back to main golang image to run testsa53df2fattr related tests refactor4b186aecreation and modification dates should be generated and returned if not provided as inputs. Generation now also part of the output, following the same policycb1e0c7some IaC state/config files we dont want to commit or embed in docker imagesdba2d10this allows us to create a bucket, for some extra manual tests79a7c6cfmt, so docker build now passes76b75b4unifing gitignore. renaming some functions📊 Changes
16 files changed (+980 additions, -340 deletions)
View changed files
📝
.dockerignore(+1 -0)📝
Dockerfile(+19 -3)📝
fakestorage/bucket.go(+37 -10)📝
fakestorage/bucket_test.go(+71 -34)📝
fakestorage/object.go(+74 -2)📝
fakestorage/object_test.go(+354 -133)📝
fakestorage/response.go(+27 -13)📝
fakestorage/upload.go(+1 -1)📝
fakestorage/upload_test.go(+5 -5)📝
internal/backend/backend_test.go(+169 -76)➕
internal/backend/bucket.go(+7 -0)📝
internal/backend/fs.go(+18 -6)📝
internal/backend/memory.go(+150 -51)📝
internal/backend/object.go(+42 -2)📝
internal/backend/storage.go(+4 -3)📝
main.go(+1 -1)📄 Description
Finally the first version of the versioning support is ready for review. First I will describe what has been covered, a functionality I want to add really soon (object listing that considers archived versions) and the ones I dont expect to cover in short term (I don't need them yet, and I think is not critical functionality to enjoy versioning), and I will add inline comments to highlight some decisions I've made that probably are worth to bear in mind during the review.
What we have covered:
In the next PR we expect to cover:
Things we expect not cover under this PR neither short term (if the previous implementation does not require to proceed in the end)
Thanks for your patience, thanks so much for your project and hope this does not generate a big headache.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.