<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/gitano/libgit2.git/src/tree.h, branch replace-luagit2</title>
<subtitle>git.gitano.org.uk: libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/'/>
<entry>
<title>Add cat-file example and increase const use in API</title>
<updated>2013-05-16T17:38:27+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2013-05-16T17:38:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=58206c9ae79af8ef675e30087e5430065b078bbb'/>
<id>58206c9ae79af8ef675e30087e5430065b078bbb</id>
<content type='text'>
This adds an example implementation that emulates git cat-file.
It is a convenient and relatively simple example of getting data
out of a repository.

Implementing this also revealed that there are a number of APIs
that are still not using const pointers to objects that really
ought to be.  The main cause of this is that `git_vector_bsearch`
may need to call `git_vector_sort` before doing the search, so a
const pointer to the vector is not allowed.  However, for tree
objects, with a little care, we can ensure that the vector of
tree entries is always sorted and allow lookups to take a const
pointer.  Also, the missing const in commit objects just looks
like an oversight.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds an example implementation that emulates git cat-file.
It is a convenient and relatively simple example of getting data
out of a repository.

Implementing this also revealed that there are a number of APIs
that are still not using const pointers to objects that really
ought to be.  The main cause of this is that `git_vector_bsearch`
may need to call `git_vector_sort` before doing the search, so a
const pointer to the vector is not allowed.  However, for tree
objects, with a little care, we can ensure that the vector of
tree entries is always sorted and allow lookups to take a const
pointer.  Also, the missing const in commit objects just looks
like an oversight.
</pre>
</div>
</content>
</entry>
<entry>
<title>Simplify object table parse functions</title>
<updated>2013-04-22T14:52:06+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2013-04-16T18:51:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=3f27127d15dfe69943d3c9ddf96d09a2300de3a9'/>
<id>3f27127d15dfe69943d3c9ddf96d09a2300de3a9</id>
<content type='text'>
This unifies the object parse functions into one signature that
takes an odb_object.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This unifies the object parse functions into one signature that
takes an odb_object.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add callback to git_objects_table</title>
<updated>2013-04-22T14:51:40+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2013-04-15T07:05:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=786062639f05e361da977f3f1f6286141fa12fca'/>
<id>786062639f05e361da977f3f1f6286141fa12fca</id>
<content type='text'>
This adds create and free callback to the git_objects_table so
that more of the creation and destruction of objects can be table
driven instead of using switch statements.  This also makes the
semantics of certain object creation functions consistent so that
we can make better use of function pointers.  This also fixes a
theoretical error case where an object allocation fails and we
end up storing NULL into the cache.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds create and free callback to the git_objects_table so
that more of the creation and destruction of objects can be table
driven instead of using switch statements.  This also makes the
semantics of certain object creation functions consistent so that
we can make better use of function pointers.  This also fixes a
theoretical error case where an object allocation fails and we
end up storing NULL into the cache.
</pre>
</div>
</content>
</entry>
<entry>
<title>object: Export git_object_dup</title>
<updated>2013-04-10T14:56:32+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>tanoku@gmail.com</email>
</author>
<published>2013-04-10T14:55:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=575a54db856947aeb4fc5cf1977844d22dfa1aab'/>
<id>575a54db856947aeb4fc5cf1977844d22dfa1aab</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Store treebuilder length separately from entries vec</title>
<updated>2013-02-20T18:50:01+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2013-02-20T18:50:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=93ab370b53f403ceebeabb7406c33024c3fb1243'/>
<id>93ab370b53f403ceebeabb7406c33024c3fb1243</id>
<content type='text'>
The treebuilder entries vector flags removed items which means
we can't rely on the entries vector length to accurately get the
number of entries.  This adds an entrycount value and maintains it
while updating the treebuilder entries.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The treebuilder entries vector flags removed items which means
we can't rely on the entries vector length to accurately get the
number of entries.  This adds an entrycount value and maintains it
while updating the treebuilder entries.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add git_tree_entry_cmp and git_tree_entry_icmp</title>
<updated>2013-01-15T17:51:35+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2013-01-10T00:03:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=98527b5b241ce9d240537f60e87aa9dd084c0f36'/>
<id>98527b5b241ce9d240537f60e87aa9dd084c0f36</id>
<content type='text'>
This adds a new external API git_tree_entry_cmp and a new internal
API git_tree_entry_icmp for sorting tree entries.  The case
insensitive one is internal only because general users should
never be seeing case-insensitively sorted trees.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds a new external API git_tree_entry_cmp and a new internal
API git_tree_entry_icmp for sorting tree entries.  The case
insensitive one is internal only because general users should
never be seeing case-insensitively sorted trees.
</pre>
</div>
</content>
</entry>
<entry>
<title>update copyrights</title>
<updated>2013-01-08T23:31:27+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2013-01-08T23:07:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=359fc2d241ac407bdf9bf0d28715705f01ca6360'/>
<id>359fc2d241ac407bdf9bf0d28715705f01ca6360</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix iterator reset and add reset ranges</title>
<updated>2012-12-10T23:38:41+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2012-12-10T23:29:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=91e7d26303b17c7ebc45ba565247e968aaa20848'/>
<id>91e7d26303b17c7ebc45ba565247e968aaa20848</id>
<content type='text'>
The `git_iterator_reset` command has not been working in all cases
particularly when there is a start and end range.  This fixes it
and adds tests for it, and also extends it with the ability to
update the start/end range strings when an iterator is reset.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The `git_iterator_reset` command has not been working in all cases
particularly when there is a start and end range.  This fixes it
and adds tests for it, and also extends it with the ability to
update the start/end range strings when an iterator is reset.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix up some missing consts in tree &amp; index</title>
<updated>2012-11-27T21:18:29+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2012-11-21T19:03:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=16248ee2d1d67bd386277bca67f04049afef875e'/>
<id>16248ee2d1d67bd386277bca67f04049afef875e</id>
<content type='text'>
This fixes some missed places where we can apply const-ness to
various public APIs.

There are still some index and tree APIs that cannot take const
pointers because we sort our `git_vectors` lazily and so we can't
reliably bsearch the index and tree content without applying a
`git_vector_sort()` first.

This also fixes some missed places where size_t can be used and
where const can be applied to a couple internal functions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes some missed places where we can apply const-ness to
various public APIs.

There are still some index and tree APIs that cannot take const
pointers because we sort our `git_vectors` lazily and so we can't
reliably bsearch the index and tree content without applying a
`git_vector_sort()` first.

This also fixes some missed places where size_t can be used and
where const can be applied to a couple internal functions.
</pre>
</div>
</content>
</entry>
<entry>
<title>index: Add git_index_write_tree</title>
<updated>2012-11-01T19:17:10+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>tanoku@gmail.com</email>
</author>
<published>2012-11-01T19:15:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitano/libgit2.git/commit/?id=276ea401b3a45c85e49182f39db00ca5447aa340'/>
<id>276ea401b3a45c85e49182f39db00ca5447aa340</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
