tag:github.com,2008:https://github.com/jamill/libgit2/releases Release notes from libgit2 2012-05-18T23:46:11Z tag:github.com,2008:Repository/5985560/v0.17.0 2012-05-18T23:46:11Z v0.17.0: Merge branch 'development' <p>Conflicts:<br> .travis.yml</p> jamill tag:github.com,2008:Repository/5985560/v0.16.0 2012-02-05T16:15:21Z v0.16.0 <p>libgit2 v0.16.0</p> jamill tag:github.com,2008:Repository/5985560/v0.15.0 2011-10-05T20:48:36Z libgit2 v0.15.0 "Das Wunderbar Release" <p>I am aware the codename is not gramatically correct in any language.</p> <p>Check the COPYING file for the detailed terms on libgit2's license. Check<br> the AUTHORS file for the full list of guilty parties.</p> <p>As we slowly stabilize the API, we've dropped 1 function from the library,<br> and changed the signature of only 5 of them. There's of course a good<br> chunk of new functionality, and a thousand bug fixes.</p> <p>In this release of libgit2:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="- Changed `git_blob_rawsize`: Now returns `size_t` instead of int, allowing files &gt;4GB in 64 bit systems. - Removed `git_commit_message_short`: Please use `git_commit_message` to get the full message and decide which is the &quot;short view&quot; according to your needs (first line, first 80 chars...) - Added `git_commit_message_encoding`: Returns the encoding field of a commit message, if it exists. - Changed `git_commit_create`, `git_commit_create_v`: New argument `encoding`, which adds a encoding field to the generated commit object. - Added `git_config_find_system`: Returns the path to the system's global config file (according to the Core Git standards). - Changed `git_config_get_XX`, `git_config_set_XX`: the `long` and `int` types have been replaced by `int64` and `int32` respectively, to make their meaning more obvious. - Added `git_indexer`: An interface to index Git Packfiles has been added in the `git2/indexer.h` header. - Changed `git_reflog_entry_XX`: Reflog entries are now returned as `git_oid *` objects instead of hexadecimal OIDs. - Added `git_remote`: More fetch functionality has been added to the `git2/remote.h` functionality. Local, Smart HTTP and Git protocols are now supported. - Added `git_repository_head`: Returns the HEAD of the repository. - Added `git_repository_config_autoload`: Opens the configuration file of a repository, including the user's and the system's global config files, if they can be found. - Changed `git_signature_now`: Now returns an error code; the signature is stored by reference."><pre class="notranslate"><code>- Changed `git_blob_rawsize`: Now returns `size_t` instead of int, allowing files &gt;4GB in 64 bit systems. - Removed `git_commit_message_short`: Please use `git_commit_message` to get the full message and decide which is the "short view" according to your needs (first line, first 80 chars...) - Added `git_commit_message_encoding`: Returns the encoding field of a commit message, if it exists. - Changed `git_commit_create`, `git_commit_create_v`: New argument `encoding`, which adds a encoding field to the generated commit object. - Added `git_config_find_system`: Returns the path to the system's global config file (according to the Core Git standards). - Changed `git_config_get_XX`, `git_config_set_XX`: the `long` and `int` types have been replaced by `int64` and `int32` respectively, to make their meaning more obvious. - Added `git_indexer`: An interface to index Git Packfiles has been added in the `git2/indexer.h` header. - Changed `git_reflog_entry_XX`: Reflog entries are now returned as `git_oid *` objects instead of hexadecimal OIDs. - Added `git_remote`: More fetch functionality has been added to the `git2/remote.h` functionality. Local, Smart HTTP and Git protocols are now supported. - Added `git_repository_head`: Returns the HEAD of the repository. - Added `git_repository_config_autoload`: Opens the configuration file of a repository, including the user's and the system's global config files, if they can be found. - Changed `git_signature_now`: Now returns an error code; the signature is stored by reference. </code></pre></div> jamill tag:github.com,2008:Repository/5985560/v0.14.0 2011-07-14T01:26:08Z libgit2 v0.14.0, "watermelon wheat" <p>This a very packed minor release. The usual guilty parties have been<br> working harder than usual during the holidays -- thanks to everyone<br> involved!</p> <p>As always, the updated API docs can be found at:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="http://libgit2.github.com/libgit2/"><pre class="notranslate"><code>http://libgit2.github.com/libgit2/ </code></pre></div> <p>NEW FEATURES:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="- New OS abstraction layer. This should make all POSIX calls much more reliable under Windows. - Much faster writes of simple objects (commits, tags, trees) to the ODB via in-memory buffering and direct writes, instead of streaming. - Unified &amp; simplified API for object creation. All the `create` methods now take Objects instead of OIDs to ensure that corrupted (dangling) objects cannot be created on the repository. - Fully Git-compilant reference renaming (finally!), with the already existing `git_reference_rename`. - Deletion of config keys with `git_config_delete` - Greatly improved index performance when adding new entries - Reflog support with the `git_reflog` API - Remotes support with the `git_remote` API - First parts of the Networking API, including refspecs and the transport abstraction layer. (Note that there are no actual transports implemented yet) - Status support with the `git_status_foreach` and `git_status_file` functions. - Tons of bugfixes, including the outstanding bug #127 (wrong sort ordering when querying tree entries)."><pre class="notranslate"><code>- New OS abstraction layer. This should make all POSIX calls much more reliable under Windows. - Much faster writes of simple objects (commits, tags, trees) to the ODB via in-memory buffering and direct writes, instead of streaming. - Unified &amp; simplified API for object creation. All the `create` methods now take Objects instead of OIDs to ensure that corrupted (dangling) objects cannot be created on the repository. - Fully Git-compilant reference renaming (finally!), with the already existing `git_reference_rename`. - Deletion of config keys with `git_config_delete` - Greatly improved index performance when adding new entries - Reflog support with the `git_reflog` API - Remotes support with the `git_remote` API - First parts of the Networking API, including refspecs and the transport abstraction layer. (Note that there are no actual transports implemented yet) - Status support with the `git_status_foreach` and `git_status_file` functions. - Tons of bugfixes, including the outstanding bug #127 (wrong sort ordering when querying tree entries). </code></pre></div> <p>KNOWN ISSUES:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="- The reference renaming code leaks memory. This is being worked on as part of a reference handling overhaul. - The tree-from-index builder has abysmal performance because it doesn't handle the Treecache extension yet. This is also being worked on."><pre class="notranslate"><code>- The reference renaming code leaks memory. This is being worked on as part of a reference handling overhaul. - The tree-from-index builder has abysmal performance because it doesn't handle the Treecache extension yet. This is also being worked on. </code></pre></div> <p>FULL API CHANGELOG:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="- removed, * modified, + added - git_commit_create_o - git_commit_create_ov - git_reference_create_oid_f - git_reference_create_symbolic_f - git_reference_rename_f - git_tag_create_f - git_tag_create_fo - git_tag_create_o * git_commit_create * git_commit_create_v * git_config_foreach * git_reference_create_oid * git_reference_create_symbolic * git_reference_rename * git_tag_create * git_tag_create_frombuffer + git_clearerror + git_config_delete + git_index_uniq + git_odb_hashfile + git_oid_fromstrn + git_reflog_entry_byindex + git_reflog_entry_committer + git_reflog_entry_msg + git_reflog_entry_oidnew + git_reflog_entry_oidold + git_reflog_entrycount + git_reflog_free + git_reflog_read + git_reflog_write + git_refspec_src_match + git_refspec_transform + git_remote_connect + git_remote_fetchspec + git_remote_free + git_remote_get + git_remote_ls + git_remote_name + git_remote_url + git_repository_head_detached + git_repository_head_orphan + git_status_file + git_status_foreach + git_tag_create_lightweight + git_tag_list_match + git_transport_new"><pre class="notranslate"><code>- removed, * modified, + added - git_commit_create_o - git_commit_create_ov - git_reference_create_oid_f - git_reference_create_symbolic_f - git_reference_rename_f - git_tag_create_f - git_tag_create_fo - git_tag_create_o * git_commit_create * git_commit_create_v * git_config_foreach * git_reference_create_oid * git_reference_create_symbolic * git_reference_rename * git_tag_create * git_tag_create_frombuffer + git_clearerror + git_config_delete + git_index_uniq + git_odb_hashfile + git_oid_fromstrn + git_reflog_entry_byindex + git_reflog_entry_committer + git_reflog_entry_msg + git_reflog_entry_oidnew + git_reflog_entry_oidold + git_reflog_entrycount + git_reflog_free + git_reflog_read + git_reflog_write + git_refspec_src_match + git_refspec_transform + git_remote_connect + git_remote_fetchspec + git_remote_free + git_remote_get + git_remote_ls + git_remote_name + git_remote_url + git_repository_head_detached + git_repository_head_orphan + git_status_file + git_status_foreach + git_tag_create_lightweight + git_tag_list_match + git_transport_new </code></pre></div> jamill tag:github.com,2008:Repository/5985560/v0.13.0 2011-06-19T10:51:09Z libgit2 v0.13.0 "Watermelon Wheat" <p>On this rascalicious minor release of libgit2:</p> <ul> <li> <p>We've dropped support for Waf. All the build process is now managed<br> through CMake for all platforms.</p> </li> <li> <p>We've removed the custom backends from the repository. You can now<br> find a collection of Custom backends on their own repo, under the<br> libgit2 org. Including MySQL and Memcache backends, courtesy of the<br> beardful Brian Lopez.</p> </li> <li> <p>We are rocking a new documentation system, Docurium, courtesy of the<br> insightful Scott Chacon. Check out the details for each single method<br> in our external API and the way they've evolved through the history<br> of the library:</p> <p><a href="http://libgit2.github.com/libgit2/">http://libgit2.github.com/libgit2/</a></p> </li> </ul> <p>This will certainly come in handy if you are developing bindings for<br> the library.</p> <ul> <li> <p>You can now check the linked version of the library from your<br> application or bindings, using <code>git_libgit2_version</code>.</p> </li> <li> <p>We have a gazillion new features, courtesy of our invaluable<br> collaborators, including:</p> <ul> <li>Support for Config files!</li> <li>Support for prefix-only reads on the ODB</li> <li>Repository discovery</li> <li>Support for the Unmerged Entries index extension</li> <li>Better Windows support</li> <li>30.000 bug fixes (actual number may be lower)</li> </ul> </li> </ul> <p>Thanks as always to everyone who makes this project possible.</p> <p>Here's the full list of all external API changes:</p> <ul> <li>git_index_open_bare</li> <li>git_index_open_inrepo</li> <li>git_odb_backend_sqlite</li> <li>git_oid_mkraw</li> <li>git_oid_mkstr</li> <li>git_reference_listcb</li> <li>git_repository_workdir</li> </ul> <p>= git_index_get<br> = git_repository_path<br> = git_tree_entry_byindex</p> <ul> <li>git_blob_lookup_prefix</li> <li>git_commit_lookup_prefix</li> <li>git_config_add_file</li> <li>git_config_add_file_ondisk</li> <li>git_config_file__ondisk</li> <li>git_config_find_global</li> <li>git_config_foreach</li> <li>git_config_free</li> <li>git_config_get_bool</li> <li>git_config_get_int</li> <li>git_config_get_long</li> <li>git_config_get_string</li> <li>git_config_new</li> <li>git_config_open_global</li> <li>git_config_open_ondisk</li> <li>git_config_set_bool</li> <li>git_config_set_int</li> <li>git_config_set_long</li> <li>git_config_set_string</li> <li>git_index_entry_stage</li> <li>git_index_entrycount_unmerged</li> <li>git_index_get_unmerged_byindex</li> <li>git_index_get_unmerged_bypath</li> <li>git_index_open</li> <li>git_object_lookup_prefix</li> <li>git_odb_read_prefix</li> <li>git_oid_fromraw</li> <li>git_oid_fromstr</li> <li>git_oid_ncmp</li> <li>git_reference_foreach</li> <li>git_repository_config</li> <li>git_repository_discover</li> <li>git_repository_is_bare</li> <li>git_tag_lookup_prefix</li> <li>git_tree_entry_type</li> <li>git_tree_lookup_prefix</li> </ul> jamill tag:github.com,2008:Repository/5985560/v0.12.0 2011-05-10T21:47:51Z libgit2 v0.12.0 "absolutely no reason" <p>Hey, welcome to yet another minor libgit2 release. Sorry for the delay from<br> the last one. As you'll see the changelog is quite extensive -- hopefully from<br> now on we'll stick to more frequent minor releases.</p> <p>Together with the usual bugfixes, here's a list of the new key features:</p> <ul> <li> <p>Distfiles</p> <p>This version comes with proper distfiles as requested in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="758981" data-permission-text="Title is private" data-url="https://github.com/libgit2/libgit2/issues/131" data-hovercard-type="issue" data-hovercard-url="/libgit2/libgit2/issues/131/hovercard" href="https://github.com/libgit2/libgit2/issues/131">libgit2#131</a>. These are<br> available in the Downloads section of the GitHub project.</p> </li> <li> <p>Error handling</p> <p>A new error handling API has been implemented that allows the library to<br> return detailed error messages together with the generic error codes. We<br> hope this will be a great when wrapping and integrating the library</p> <p>New external method to get the last detailed error message:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_lasterror(void)"><pre class="notranslate"><code> + git_lasterror(void) </code></pre></div> <p>The old <code>git_strerror</code> still exists, but will be deprecated in the future<br> as soon as every method in the library returns a valid error message.</p> <p>The task of writing error messages for every method is quite daunting.<br> We appreciate pull requests with more error messages. Check the new error<br> handling documentation in the following commit:</p> <p><a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/libgit2/libgit2/commit/fa59f18d0ddbbb98d45e33934fb0efc3e2bf1557/hovercard" href="https://github.com/libgit2/libgit2/commit/fa59f18d0ddbbb98d45e33934fb0efc3e2bf1557">libgit2@<tt>fa59f18</tt></a></p> </li> <li> <p>Redis backend</p> <p>We now have a Redis backend courtesy of Dmitry Kovega. Just like the<br> SQLite backend, this allows the library to store Git objects in a Redis<br> key-value store.</p> <p>The backend requires the <code>hiredis</code> library. Use <code>--with-redis</code> when<br> building libgit2 to enable building the backend if <code>hiredis</code> is available.</p> </li> <li> <p>Commits</p> <p>New methods to access tree and parent data as a raw OID value<br> instead of forcing a repository lookup</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_commit_tree_oid(git_commit *commit) + git_commit_parent_oid(git_commit *commit, unsigned int n)"><pre class="notranslate"><code> + git_commit_tree_oid(git_commit *commit) + git_commit_parent_oid(git_commit *commit, unsigned int n) </code></pre></div> </li> <li> <p>Index</p> <p>The <code>git_index_add</code> method has been split into 4 different calls<br> which allow for appending and replacing in-memory entries and on-disk<br> files to the index.</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_index_add(git_index *index, const char *path, int stage) + git_index_add2(git_index *index, const git_index_entry *source_entry) + git_index_append(git_index *index, const char *path, int stage) + git_index_append2(git_index *index, const git_index_entry *source_entry)"><pre class="notranslate"><code> + git_index_add(git_index *index, const char *path, int stage) + git_index_add2(git_index *index, const git_index_entry *source_entry) + git_index_append(git_index *index, const char *path, int stage) + git_index_append2(git_index *index, const git_index_entry *source_entry) </code></pre></div> <p>Index entries can now also be efficiently removed from the index:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_index_remove(git_index *index, int position)"><pre class="notranslate"><code> + git_index_remove(git_index *index, int position) </code></pre></div> </li> <li> <p>References</p> <p>Methods to force the creation and renaming of references, even if those already<br> exist on the repository.</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_reference_create_symbolic_f(git_reference **ref_out, git_repository *repo, const char *name, const char *target) + git_reference_create_oid_f(git_reference **ref_out, git_repository *repo, const char *name, const git_oid *id) + git_reference_rename_f(git_reference *ref, const char *new_name)"><pre class="notranslate"><code> + git_reference_create_symbolic_f(git_reference **ref_out, git_repository *repo, const char *name, const char *target) + git_reference_create_oid_f(git_reference **ref_out, git_repository *repo, const char *name, const git_oid *id) + git_reference_rename_f(git_reference *ref, const char *new_name) </code></pre></div> </li> <li> <p>Repository</p> <p>New auxiliary methods with repository information</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_repository_is_empty(git_repository *repo) + git_repository_path(git_repository *repo) + git_repository_workdir(git_repository *repo)"><pre class="notranslate"><code> + git_repository_is_empty(git_repository *repo) + git_repository_path(git_repository *repo) + git_repository_workdir(git_repository *repo) </code></pre></div> </li> <li> <p>Signatures</p> <p>New method to create a signature with the current date/time</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_signature_now(const char *name, const char *email)"><pre class="notranslate"><code> + git_signature_now(const char *name, const char *email) </code></pre></div> </li> <li> <p>Tags</p> <p>Several wrappers to automate tag creation.</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_tag_create_frombuffer(git_oid *oid, git_repository *repo, const char *buffer) + git_tag_create_f(git_oid *oid, git_repository *repo, const char *tag_name, const git_oid *target, git_otype target_type, const git_signature *tagger, const char *message); + git_tag_create_fo(git_oid *oid, git_repository *repo, const char *tag_name, const git_object *target, const git_signature *tagger, const char *message)"><pre class="notranslate"><code> + git_tag_create_frombuffer(git_oid *oid, git_repository *repo, const char *buffer) + git_tag_create_f(git_oid *oid, git_repository *repo, const char *tag_name, const git_oid *target, git_otype target_type, const git_signature *tagger, const char *message); + git_tag_create_fo(git_oid *oid, git_repository *repo, const char *tag_name, const git_object *target, const git_signature *tagger, const char *message) </code></pre></div> <p>New functionality to delete and list tags in a repository without<br> having to resort to the <code>references</code> API.</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_tag_delete(git_repository *repo, const char *tag_name) + git_tag_list(git_strarray *tag_names, git_repository *repo)"><pre class="notranslate"><code> + git_tag_delete(git_repository *repo, const char *tag_name) + git_tag_list(git_strarray *tag_names, git_repository *repo) </code></pre></div> </li> <li> <p>Trees</p> <p>All instances of <code>git_tree_entry</code> are now returned and handled<br> as constant, to remind the user that these opaque types are not<br> supposed to be manually free'd.</p> <p>The <code>git_tree_entry_2object</code> method now takes a <code>git_repository</code><br> argument which defines in which repository the resolved object<br> should be looked up. (It is expected to be the same repository<br> that contains the parent <code>git_tree</code> for the entry).</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_tree_entry_2object(git_object **object_out, git_repository *repo, const git_tree_entry *entry)"><pre class="notranslate"><code> + git_tree_entry_2object(git_object **object_out, git_repository *repo, const git_tree_entry *entry) </code></pre></div> <p>New opaque type <code>git_treebuilder</code> with functionality to create and<br> write trees on memory</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_treebuilder_create(git_treebuilder **builder_p, const git_tree *source) + git_treebuilder_clear(git_treebuilder *bld) + git_treebuilder_free(git_treebuilder *bld) + git_treebuilder_get(git_treebuilder *bld, const char *filename) + git_treebuilder_insert(git_tree_entry **entry_out, git_treebuilder *bld, const char *filename, const git_oid *id, unsigned int attributes) + git_treebuilder_remove(git_treebuilder *bld, const char *filename) + git_treebuilder_filter(git_treebuilder *bld, int (*filter)(const git_tree_entry *, void *), void *payload) + git_treebuilder_write(git_oid *oid, git_repository *repo, git_treebuilder *bld)"><pre class="notranslate"><code> + git_treebuilder_create(git_treebuilder **builder_p, const git_tree *source) + git_treebuilder_clear(git_treebuilder *bld) + git_treebuilder_free(git_treebuilder *bld) + git_treebuilder_get(git_treebuilder *bld, const char *filename) + git_treebuilder_insert(git_tree_entry **entry_out, git_treebuilder *bld, const char *filename, const git_oid *id, unsigned int attributes) + git_treebuilder_remove(git_treebuilder *bld, const char *filename) + git_treebuilder_filter(git_treebuilder *bld, int (*filter)(const git_tree_entry *, void *), void *payload) + git_treebuilder_write(git_oid *oid, git_repository *repo, git_treebuilder *bld) </code></pre></div> <p>New method to write an index file as a tree to the ODB.</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" + git_tree_create_fromindex(git_oid *oid, git_index *index)"><pre class="notranslate"><code> + git_tree_create_fromindex(git_oid *oid, git_index *index) </code></pre></div> </li> </ul> <p>Thanks to the usual guility parties that make this this happen, to<br> all the new contributors who are starting to submit pull requests, and<br> to the bindings developers who have to keep up with our shit.</p> <p>Feedback and questions welcome on <a href="mailto:libgit2@librelist.org">libgit2@librelist.org</a></p> <p>Signed-off-by: Vicent Marti <a href="mailto:tanoku@gmail.com">tanoku@gmail.com</a></p> jamill tag:github.com,2008:Repository/5985560/v0.11.0 2011-03-28T19:35:27Z v0.11.0: libgit2 version 0.11.0, "McSwifty" <p>Apologies for the massive changes in the external API (that's my fault),<br> and for the terrible codename for this release (that's <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tclem/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tclem">@tclem</a>'s fault).</p> <p>The detailed overview for the major API changes can be found in the<br> commit at <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/jamill/libgit2/commit/72a3fe42fb7208712bbe8f0981f4c6274c05e9c3/hovercard" href="https://github.com/jamill/libgit2/commit/72a3fe42fb7208712bbe8f0981f4c6274c05e9c3"><tt>72a3fe4</tt></a>.</p> <p>Major new features in this release:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="- Real caching and refcounting on parsed objects - Real caching and refcounting on objects read from the ODB - Streaming writes &amp; reads from the ODB - Single-method writes for all object types - The external API is now partially thread-safe - Improved reference handling - New method to list references - ZLib is now built-in - Improvements to the Revision Walker - Tons of bug fixes"><pre class="notranslate"><code>- Real caching and refcounting on parsed objects - Real caching and refcounting on objects read from the ODB - Streaming writes &amp; reads from the ODB - Single-method writes for all object types - The external API is now partially thread-safe - Improved reference handling - New method to list references - ZLib is now built-in - Improvements to the Revision Walker - Tons of bug fixes </code></pre></div> <p>Thanks to all the contributors who make this possible.</p> <p>Signed-off-by: Vicent Marti <a href="mailto:tanoku@gmail.com">tanoku@gmail.com</a></p> jamill tag:github.com,2008:Repository/5985560/v0.10.0 2011-03-14T22:02:29Z v0.10.0: libgit2 version 0.10.0, "very disco" <p>A version <em>so</em> awesome that needs 2 version bumps AND a codename.</p> <p>Major features:</p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="- New internal garbage collection (harder) - Pack backend rewritten from scratch (better) - Revision walker rewritten from scratch (faster) - New object interdependency system (stronger) - Unique OID shortener - Reference listing"><pre class="notranslate"><code>- New internal garbage collection (harder) - Pack backend rewritten from scratch (better) - Revision walker rewritten from scratch (faster) - New object interdependency system (stronger) - Unique OID shortener - Reference listing </code></pre></div> <p>In honor of one heck of a music album, released ten years ago,<br> yesterday.</p> jamill tag:github.com,2008:Repository/5985560/v0.8.0 2011-03-03T18:23:53Z v0.8.0: Bump the version number to 0.8.0 <p>Yes, these are some seriously massive changes to the external API. We<br> are breaking stuff.</p> <p>Signed-off-by: Vicent Marti <a href="mailto:tanoku@gmail.com">tanoku@gmail.com</a></p> jamill tag:github.com,2008:Repository/5985560/v0.3.0 2011-02-07T08:35:58Z v0.3.0: Add proper version management <p>We now have proper sonames in Mac OS X and Linux, proper versioning on<br> the pkg-config file and proper DLL naming in Windows.</p> <p>The version of the library is defined exclusively in 'src/git2.h'; the build scripts<br> read it from there automatically.</p> <p>Signed-off-by: Vicent Marti <a href="mailto:tanoku@gmail.com">tanoku@gmail.com</a></p> jamill