diff options
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r-- | CHANGELOG.md | 65 |
1 files changed, 63 insertions, 2 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index dae86de4a..630736501 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,14 +17,37 @@ v0.24 + 1 * Improve the performance of the revwalk and bring us closer to git's code. +* The reference db has improved support for concurrency and returns `GIT_ELOCKED` + when an operation could not be performed due to locking. + +* Nanosecond resolution is now activated by default, following git's change to + do this. + +* We now restrict the set of ciphers we let OpenSSL use by default. + +* Users can now register their own merge drivers for use with `.gitattributes`. + The library also gained built-in support for the union merge driver. + +* The default for creating references is now to validate that the object does + exist. + +* Add `git_proxy_options` which is used by the different networking + implementations to let the caller specify the proxy settings instead of + relying on the environment variables. + ### API additions * You can now get the user-agent used by libgit2 using the `GIT_OPT_GET_USER_AGENT` option with `git_libgit2_opts()`. It is the counterpart to `GIT_OPT_SET_USER_AGENT`. +* The `GIT_OPT_SET_SSL_CIPHERS` option for `git_libgit2_opts()` lets you specify + a custom list of ciphers to use for OpenSSL. + * `git_commit_create_buffer()` creates a commit and writes it into a - user-provided buffer instead of writing it into the object db. + user-provided buffer instead of writing it into the object db. Combine it with + `git_commit_create_with_signature()` in order to create a commit with a + cryptographic signature. * `git_blob_create_fromstream()` and `git_blob_create_fromstream_commit()` allow you to create a blob by @@ -50,12 +73,48 @@ v0.24 + 1 `git_repository_open_ext` with this flag will error out if either `$GIT_WORK_TREE` or `$GIT_COMMON_DIR` is set. -* `git_diff_from_buffer` can create a `git_diff` object from the contents +* `git_diff_from_buffer()` can create a `git_diff` object from the contents of a git-style patch file. * `git_index_version()` and `git_index_set_version()` to get and set the index version +* `git_odb_expand_ids()` lets you check for the existence of multiple + objects at once. + +* The new `git_blob_dup()`, `git_commit_dup()`, `git_tag_dup()` and + `git_tree_dup()` functions provide type-specific wrappers for + `git_object_dup()` to reduce noise and increase type safety for callers. + +* `git_reference_dup()` lets you duplicate a reference to aid in ownership + management and cleanup. + +* `git_signature_from_buffer()` lets you create a signature from a string in the + format that appear in objects. + +* `git_tree_create_updated()` lets you create a tree based on another one + together with a list of updates. For the covered update cases, it's more + efficient than the `git_index` route. + +* `git_apply_patch()` applies hunks from a `git_patch` to a buffer. + +* `git_diff_to_buf()` lets you print an entire diff directory to a buffer, + similar to how `git_patch_to_buf()` works. + +* `git_proxy_init_options()` is added to initialize a `git_proxy_options` + structure at run-time. + +* `git_merge_driver_register()`, `git_merge_driver_unregister()` let you + register and unregister a custom merge driver to be used when `.gitattributes` + specifies it. + +* `git_merge_driver_lookup()` can be used to look up a merge driver by name. + +* `git_merge_driver_source_repo()`, `git_merge_driver_source_ancestor()`, + `git_merge_driver_source_ours()`, `git_merge_driver_source_theirs()`, + `git_merge_driver_source_file_options()` added as accessors to + `git_merge_driver_source`. + ### API removals * `git_blob_create_fromchunks()` has been removed in favour of @@ -80,6 +139,8 @@ v0.24 + 1 If this is `NULL`, then it will not be called and the `exists` function will be used instead. +* `git_remote_connect()` now accepts proxy options. + v0.24 ------- |