| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | test coverage for bulk-delete fallback code path | Stefan Majewsky | 2018-05-02 | 3 | -33/+81 |
| | | |||||
| * | remove Object.MoveTo | Stefan Majewsky | 2018-05-02 | 2 | -19/+0 |
| | | | | | | It's trivially replicable by clients, and has an ugly API that I don't want to commit on at this point. | ||||
| * | test coverage for large object operations | Stefan Majewsky | 2018-05-02 | 3 | -4/+208 |
| | | |||||
| * | revamp the LargeObject API | Stefan Majewsky | 2018-05-02 | 8 | -354/+524 |
| | | | | | | | | | | | I thought about this some more, and I believe the Writer-based approach in the previous version of the LargeObject API does not scale: It makes it very hard to write code that uploads segments without resorting to a buffer the same size as the segments. I don't want gigabyte-scale buffers filling up my RAM, so this commit switches to a different API based on Readers. LargeObject.Append() now behaves very similar to Object.Upload(), which I find quite nice. | ||||
| * | exclude util/ from golint, govet | Stefan Majewsky | 2018-05-02 | 1 | -6/+6 |
| | | |||||
| * | add DeleteOptions to Object.Delete() | Stefan Majewsky | 2018-04-30 | 6 | -13/+129 |
| | | |||||
| * | initial support for large objects | Stefan Majewsky | 2018-04-30 | 16 | -10/+1522 |
| | | | | | | | | | | | | | This has gone through a lot of iterations on my branch, and I'm quite happy with the parts of the API that exist now. Test coverage can still be better, and will get better in the following commits. The API is not yet finished: I want to add Options arguments to Object.Upload(), Object.Copy(), Object.Move() and Object.Delete() that specify how each of these operations affect existing segments (and, later, also existing symlinks). For Upload(), uploading in segments shall become as easy as flipping a single switch. | ||||
| * | update documentation with new Gophercloud best practices | Stefan Majewsky | 2018-04-29 | 3 | -16/+65 |
| | | |||||
| * | tryCompute{ContentLength, Etag}: add special cases for strings.Reader, nil | Stefan Majewsky | 2018-04-27 | 2 | -10/+31 |
| | | |||||
| * | fix tests for Swift Queens | Stefan Majewsky | 2018-04-27 | 1 | -3/+5 |
| | | |||||
| * | add Account.isEqualTo, Container.isEqualTo | Stefan Majewsky | 2018-04-27 | 3 | -4/+10 |
| | | |||||
| * | s/project name/project ID/ | Stefan Majewsky | 2018-04-27 | 1 | -2/+2 |
| | | |||||
| * | revamp the Headers API | Stefan Majewsky | 2018-03-11 | 27 | -385/+335 |
| | | | | | | | | | | | | | | | | | | | 1. Move common methods of AccountHeaders, ContainerHeaders, ObjectHeaders into a base type Headers. 2. Fold Headers into RequestOptions to remove one of the two optional arguments on request methods. The new Headers.ToOpts() method offers a nice experience for users passing Headers to request methods. The Update() methods keep the explicit Headers argument since the Headers argument is not optional there. The only downside is that we lose a bit of type-safety because RequestOptions takes any Headers instance, so e.g. ContainerHeaders could be passed to Object.Upload(). I believe the benefits outweigh this problem. | ||||
| * | add Account.BulkDelete() | Stefan Majewsky | 2018-03-09 | 4 | -41/+330 |
| | | |||||
| * | generalize BulkUploadError into BulkError | Stefan Majewsky | 2018-03-08 | 4 | -23/+25 |
| | | | | | For use in Account.BulkDelete(). | ||||
| * | add Account.BulkUpload(), BulkUploadError, BulkObjectError | Stefan Majewsky | 2018-03-08 | 3 | -0/+337 |
| | | |||||
| * | fix URL computation in Account.Capabilties() | Stefan Majewsky | 2018-03-08 | 1 | -8/+1 |
| | | |||||
| * | fix a panic in the error case of Object.Download() | Stefan Majewsky | 2018-03-08 | 1 | -1/+3 |
| | | |||||
| * | add struct Capabilities, Account.{,Raw}Capabilities | Stefan Majewsky | 2018-02-26 | 2 | -0/+137 |
| | | |||||
| * | add Object.Copy() and Object.Move() | Stefan Majewsky | 2018-02-21 | 2 | -31/+105 |
| | | |||||
| * | reorganize code | Stefan Majewsky | 2018-02-19 | 20 | -221/+345 |
| | | | | | | | * Gophercloud dependencies move into subpackage gopherschwift. * Tests move into subpackage tests (to avoid import cycles). + Rename "Client" to "Backend". | ||||
| * | introduce Client interface | Stefan Majewsky | 2018-02-19 | 6 | -72/+124 |
| | | |||||
| * | test coverage for object upload, download, metadata update | Stefan Majewsky | 2018-02-19 | 5 | -12/+181 |
| | | |||||
| * | replace expectError by expectSuccess where possible | Stefan Majewsky | 2018-02-19 | 6 | -45/+42 |
| | | |||||
| * | add Object.Download(), DownloadedObject | Stefan Majewsky | 2018-02-19 | 2 | -1/+114 |
| | | |||||
| * | initialize .Headers on accounts/containers during GET requests | Stefan Majewsky | 2018-02-19 | 4 | -2/+47 |
| | | |||||
| * | remove old cruft | Stefan Majewsky | 2018-02-17 | 1 | -14/+0 |
| | | |||||
| * | add test for FieldHTTPTimeReadonly | Stefan Majewsky | 2018-02-17 | 2 | -2/+40 |
| | | |||||
| * | generalize cleanup phase of object test | Stefan Majewsky | 2018-02-17 | 2 | -10/+6 |
| | | |||||
| * | add Container.Objects(), type ObjectIterator | Stefan Majewsky | 2018-02-17 | 6 | -2/+426 |
| | | |||||
| * | Object.upload: generate, validate Content-Length and Etag | Stefan Majewsky | 2018-02-16 | 3 | -6/+91 |
| | | |||||
| * | make govet happy | Stefan Majewsky | 2018-02-16 | 1 | -7/+10 |
| | | |||||
| * | from the surprising-oversights dept. | Stefan Majewsky | 2018-02-16 | 1 | -3/+4 |
| | | |||||
| * | add object lifecycle testcase | Stefan Majewsky | 2018-02-16 | 3 | -6/+69 |
| | | |||||
| * | add useProxy() helper function for tests | Stefan Majewsky | 2018-02-16 | 1 | -0/+19 |
| | | |||||
| * | fix doc | Stefan Majewsky | 2018-02-16 | 2 | -16/+12 |
| | | |||||
| * | prepare ContainerIterator for sharing code with ObjectIterator | Stefan Majewsky | 2018-02-16 | 2 | -92/+163 |
| | | |||||
| * | ensure that response body is drained | Stefan Majewsky | 2018-02-11 | 4 | -1/+12 |
| | | |||||
| * | sketch out the initial Object API | Stefan Majewsky | 2018-02-10 | 4 | -5/+191 |
| | | |||||
| * | add tests for container iterator | Stefan Majewsky | 2018-02-10 | 4 | -27/+208 |
| | | |||||
| * | add ObjectHeaders | Stefan Majewsky | 2018-02-08 | 7 | -52/+287 |
| | | |||||
| * | adjust example for current API | Stefan Majewsky | 2018-02-07 | 1 | -7/+9 |
| | | |||||
| * | implement container listing | Stefan Majewsky | 2018-02-07 | 3 | -6/+305 |
| | | | | | Tests will follow sometime later this week. | ||||
| * | more detailed coverage reporting | Stefan Majewsky | 2018-02-07 | 1 | -1/+1 |
| | | |||||
| * | increase test coverage | Stefan Majewsky | 2018-02-07 | 7 | -63/+285 |
| | | |||||
| * | finish moving towards new auto-generated Headers implementation | Stefan Majewsky | 2018-02-07 | 12 | -578/+273 |
| | | | | | | Everything in one package once more. The bigger API in *this* package is worth it when we don't have to expose guts to cross package boundaries. | ||||
| * | switch from reflection to code generation | Stefan Majewsky | 2018-02-07 | 11 | -203/+625 |
| | | | | | | | This allows me to make the API much simpler. More simplification forthcoming in the following commit; I just want to make a cut since `make test` is happy right now. | ||||
| * | cleanup | Stefan Majewsky | 2018-02-06 | 1 | -2/+2 |
| | | |||||
| * | compactify readme examples | Stefan Majewsky | 2018-02-06 | 1 | -13/+1 |
| | | |||||
| * | rewrite the comparison part of the README to be more positive | Stefan Majewsky | 2018-02-05 | 1 | -27/+36 |
| | | |||||
