<feed xmlns='http://www.w3.org/2005/Atom'>
<title>go-schwift/largeobject_test.go, branch main</title>
<subtitle>Go client library for Swift (OpenStack object storage) aka Rackspace Cloud Files aka Memset Memstore
</subtitle>
<link rel='alternate' type='text/html' href='http://git.xyrillian.de/go-schwift/'/>
<entry>
<title>Fix gophercloud lint complains</title>
<updated>2024-07-01T11:05:35+00:00</updated>
<author>
<name>Sandro Jäckel</name>
<email>sandro.jaeckel@gmail.com</email>
</author>
<published>2024-07-01T11:05:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.xyrillian.de/go-schwift/commit/?id=bd23c64a1283835f5991444bb47ec3da1895ff42'/>
<id>bd23c64a1283835f5991444bb47ec3da1895ff42</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix linting errors</title>
<updated>2022-10-28T10:55:16+00:00</updated>
<author>
<name>Sandro Jäckel</name>
<email>sandro.jaeckel@sap.com</email>
</author>
<published>2022-10-26T13:23:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.xyrillian.de/go-schwift/commit/?id=8b38a040830109f19550e7329b82ec5caf76b321'/>
<id>8b38a040830109f19550e7329b82ec5caf76b321</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>revamp the LargeObject API</title>
<updated>2018-05-02T17:33:46+00:00</updated>
<author>
<name>Stefan Majewsky</name>
<email>majewsky@gmx.net</email>
</author>
<published>2018-04-30T12:14:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.xyrillian.de/go-schwift/commit/?id=f9749638e3393f471d7e28362795689bf37cc023'/>
<id>f9749638e3393f471d7e28362795689bf37cc023</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>initial support for large objects</title>
<updated>2018-04-30T08:04:36+00:00</updated>
<author>
<name>Stefan Majewsky</name>
<email>majewsky@gmx.net</email>
</author>
<published>2018-04-29T19:19:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.xyrillian.de/go-schwift/commit/?id=0df55a731aa3330f82d22b010a7a2a4d66521972'/>
<id>0df55a731aa3330f82d22b010a7a2a4d66521972</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
</feed>
