<feed xmlns='http://www.w3.org/2005/Atom'>
<title>jcarr/git2go/packbuilder.go, branch v0.1.5</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>http://cgit.wit.com/jcarr/git2go/atom?h=v0.1.5</id>
<link rel='self' href='http://cgit.wit.com/jcarr/git2go/atom?h=v0.1.5'/>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/'/>
<updated>2021-09-05T20:59:36Z</updated>
<entry>
<title>Make all non-user-creatable structures non-comparable (#802)</title>
<updated>2021-09-05T20:59:36Z</updated>
<author>
<name>lhchavez</name>
<email>lhchavez@lhchavez.com</email>
</author>
<published>2021-09-05T20:59:36Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=dbe032c347b1a1308a4b880e7c5a06d8dfb4d507'/>
<id>urn:sha1:dbe032c347b1a1308a4b880e7c5a06d8dfb4d507</id>
<content type='text'>
This change makes all non-user-creatable structures non-comparable. This
makes it easier to add changes later that don't introduce breaking
changes from the go compatibility guarantees perspective.

This, of course, implies that this change _is_ a breaking change, but since
these structures are not intended to be created by users (or de-referenced),
it should be okay.</content>
</entry>
<entry>
<title>Refactor all callbacks (#700)</title>
<updated>2020-12-05T21:13:59Z</updated>
<author>
<name>lhchavez</name>
<email>lhchavez@lhchavez.com</email>
</author>
<published>2020-12-05T21:13:59Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=5d8eaf7e65c404a0d10d3705697dd99369630dda'/>
<id>urn:sha1:5d8eaf7e65c404a0d10d3705697dd99369630dda</id>
<content type='text'>
This change is a preparation for another change that makes all callback
types return a Go error instead of an error code / an integer. That is
going to make make things a lot more idiomatic.

The reason this change is split is threefold:

a) This change is mostly mechanical and should contain no semantic
   changes.
b) This change is backwards-compatible (in the Go API compatibility
   sense of the word), and thus can be backported to all other releases.
c) It makes the other change a bit smaller and more focused on just one
   thing.

Concretely, this change makes all callbacks populate a Go error when
they fail. If the callback is invoked from the same stack as the
function to which it was passed (e.g. for `Tree.Walk`), it will preserve
the error object directly into a struct that also holds the callback
function. Otherwise if the callback is pased to one func and will be
invoked when run from another one (e.g. for `Repository.InitRebase`),
the error string is saved into the libgit2 thread-local storage and then
re-created as a `GitError`.</content>
</entry>
<entry>
<title>Add support for Packbuilder.InsertFromWalk()</title>
<updated>2018-11-15T03:20:51Z</updated>
<author>
<name>lhchavez</name>
<email>lhchavez@lhchavez.com</email>
</author>
<published>2018-11-15T02:27:03Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=8d27336e8a158dccc55c966f57ff7e90acce1614'/>
<id>urn:sha1:8d27336e8a158dccc55c966f57ff7e90acce1614</id>
<content type='text'>
This change adds support for Packbuilder.InsertFromWalk() from libgit2.
</content>
</entry>
<entry>
<title>Third round of keep-alive aditions</title>
<updated>2017-07-08T14:07:51Z</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>carlosmn@github.com</email>
</author>
<published>2017-07-08T14:07:51Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=55a1096141519a1f380d0702671cfe9bf90ec435'/>
<id>urn:sha1:55a1096141519a1f380d0702671cfe9bf90ec435</id>
<content type='text'>
</content>
</entry>
<entry>
<title>packbuilder: use HandleList for C function callbacks.</title>
<updated>2015-05-22T07:02:24Z</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2015-04-24T08:16:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=a843b7247f24a2125c30c865f9d8ea706ce3d768'/>
<id>urn:sha1:a843b7247f24a2125c30c865f9d8ea706ce3d768</id>
<content type='text'>
</content>
</entry>
<entry>
<title>go fmt</title>
<updated>2015-03-04T23:52:59Z</updated>
<author>
<name>Mark Probst</name>
<email>mark.probst@gmail.com</email>
</author>
<published>2015-03-04T19:40:26Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=45d88ca5f4e69c9a07b867ec73da27f29bd77388'/>
<id>urn:sha1:45d88ca5f4e69c9a07b867ec73da27f29bd77388</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove useless includes</title>
<updated>2014-12-11T01:59:07Z</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-12-11T01:59:07Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=a9d993f3d1400970bfba572747edbee1b57fd221'/>
<id>urn:sha1:a9d993f3d1400970bfba572747edbee1b57fd221</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add missing thread locking</title>
<updated>2014-12-06T01:45:26Z</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-12-06T01:44:57Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=8c631b0c25c8de616afa2fd89378299c9d9a1439'/>
<id>urn:sha1:8c631b0c25c8de616afa2fd89378299c9d9a1439</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Packbuilder: use a callback for ForEach instead of a channel</title>
<updated>2014-05-06T12:43:38Z</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-05-06T12:43:38Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=7e3c361ac4c97f48d80d7ca63358e92ea464a087'/>
<id>urn:sha1:7e3c361ac4c97f48d80d7ca63358e92ea464a087</id>
<content type='text'>
Channels provide no means to report an error. Closing a channel could
mean anything.

This is particularly important when dealing with IO, which we do quite
often in the pack builder. Use ForEach which returns an error instead.
</content>
</entry>
<entry>
<title>Added git error code to the error object.</title>
<updated>2014-02-26T15:10:00Z</updated>
<author>
<name>Jesper Hansen</name>
<email>jesper@jesperhansen.net</email>
</author>
<published>2013-07-07T14:43:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.wit.com/jcarr/git2go/commit/?id=499f52a3549503604f30663211361e2fbd3cf202'/>
<id>urn:sha1:499f52a3549503604f30663211361e2fbd3cf202</id>
<content type='text'>
</content>
</entry>
</feed>
