Tags: mackjoner/libgit2
Tags
Merge pull request libgit2#2801 from ethomson/changelog CHANGELOG: add missing 0.22 changes
Merge pull request libgit2#2425 from libgit2/cmn/clone-auth-change Don't use read-write accounts for the tests
Merge pull request libgit2#2407 from libgit2/cmn/remote-rename-more More remote rename fixes
libgit2 0.20.0 "anmeldung"
Apologies for the delay. This release is chunky,
but you're probably used to chunky releases by now.
Full changelog follows:
Internal changes
+ Added support for decomposed Unicode paths in Mac OS X
+ Added support for junctions in win32
+ Fixed issues with HTTP redirects in the network stack
+ Performance improvements (as always)
git2/blame.h
+ added full support for blame operations
git2/blob.h
+ added `git_blob_filtered_content` to load blobs in
memory with their corresponding filters applied
git2/branch.h
+ added branch iterators as an alternative to the
callback-based API
git2/buffer.h
+ exported the git_buf struct to allow binary buffers
to be passed from/to the library. This simplifies
several APIs
git2/checkout.h
+ implemented additional checkout options ('skip unmerged',
'use ours' and 'use theirs')
git2/clone.h
+ simplified the clone API
+ added new `git_clone_into` to clone into an existing
(empty) repository
git2/commit.h
+ added APIs to access the raw (uncleaned) text of a commit
message
git2/common.h
+ added global options to set the default paths to load
templates from
git2/config.h
+ added multivar iterators
+ added globbing iterator
+ added `git_config_foreach_match` to perform operations
on every single var in a config file
git2/diff.h
+ restructured and simplified the diff API
git2/filter.h
+ added external APIs to configure and apply custom filters
to checked out blobs
git2/index.h
+ `git_index_read` can now force a reload of the index file
even if it hasn't changed on-disk
git2/indexer.h
+ improved the streaming indexer APIs
git2/merge.h
+ added support for merge!
git2/object.h
+ added helper API to lookup a generic object by path
git2/pack.h
+ added progress callbacks to the packbuilder
git2/patch.h
+ added support for patch generation as part of the Diff
API revamp
git2/pathspec.h
+ added helper APIs to work with pathspecs and match files
in the workdir or diffs
git2/push.h
+ added progress callbacks to push
git2/reflog.h
+ changed reflog APIs to work on reference names instead of
the references themselves, so they become less racy
git2/remote.h
+ added support for setting refspecs on remotes, either at
creation or on existing ones
+ simplified the remotes API
git2/revwalk.h
+ add API to simplify parents during a walk
git2/signature.h
+ add helper to create a signature with the default values for
a repository (i.e. the set `user.name` and `user.email` values,
and the current time)
git2/submodules.h
+ improve the status detection for submodules
git2/sys/
+ exported many new internal APIs, such as pluggabe transport
APIs
-vmg, out
libgit2 v0.19.0 "gut merge" Minor point release! We got a lot of rather large features that we wanted to get settled in: - New (threadsafe) cache for objects - Iterator for Status - New Merge APIs - SSH support on *NIX - Function context on diff - Namespaces support - Index add/update/remove with wildcard support - Iterator for References - Fetch and push refspecs for Remotes - Rename support in Status - New 'sys/` namespace for external headers with low-level APIs As always, this comes with hundreds of bug fixes and performance improvements. We're faster and better than ever. And we haven't broken many APIs this time! Build stuff.