tree 63a2ce0c3ad7d5027a66885e732b1741864af9d0
parent 984ed6b6bef18ca514f8f0a0b74ed76d9d8b26a3
author Vicent Marti <tanoku@gmail.com> 1308424495 +0200
committer Vicent Marti <tanoku@gmail.com> 1308480669 +0200

libgit2 v0.13.0 "Watermelon Wheat"

On this rascalicious minor release of libgit2:

- We've dropped support for Waf. All the build process is now managed
through CMake for all platforms.

- We've removed the custom backends from the repository. You can now
find a collection of Custom backends on their own repo, under the
libgit2 org. Including MySQL and Memcache backends, courtesy of the
beardful Brian Lopez.

- We are rocking a new documentation system, Docurium, courtesy of the
insightful Scott Chacon. Check out the details for each single method
in our external API and the way they've evolved through the history
of the library:

	http://libgit2.github.com/libgit2/

This will certainly come in handy if you are developing bindings for
the library.

- You can now check the linked version of the library from your
application or bindings, using `git_libgit2_version`.

- We have a gazillion new features, courtesy of our invaluable
collaborators, including:

	* Support for Config files!
	* Support for prefix-only reads on the ODB
	* Repository discovery
	* Support for the Unmerged Entries index extension
	* Better Windows support
	* 30.000 bug fixes (actual number may be lower)

Thanks as always to everyone who makes this project possible.

Here's the full list of all external API changes:

- git_index_open_bare
- git_index_open_inrepo
- git_odb_backend_sqlite
- git_oid_mkraw
- git_oid_mkstr
- git_reference_listcb
- git_repository_workdir

= git_index_get
= git_repository_path
= git_tree_entry_byindex

+ git_blob_lookup_prefix
+ git_commit_lookup_prefix
+ git_config_add_file
+ git_config_add_file_ondisk
+ git_config_file__ondisk
+ git_config_find_global
+ git_config_foreach
+ git_config_free
+ git_config_get_bool
+ git_config_get_int
+ git_config_get_long
+ git_config_get_string
+ git_config_new
+ git_config_open_global
+ git_config_open_ondisk
+ git_config_set_bool
+ git_config_set_int
+ git_config_set_long
+ git_config_set_string
+ git_index_entry_stage
+ git_index_entrycount_unmerged
+ git_index_get_unmerged_byindex
+ git_index_get_unmerged_bypath
+ git_index_open
+ git_object_lookup_prefix
+ git_odb_read_prefix
+ git_oid_fromraw
+ git_oid_fromstr
+ git_oid_ncmp
+ git_reference_foreach
+ git_repository_config
+ git_repository_discover
+ git_repository_is_bare
+ git_tag_lookup_prefix
+ git_tree_entry_type
+ git_tree_lookup_prefix
