./devel/libgit2, Portable, pure C implementation of the Git core methods

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 0.26.0nb2, Package name: libgit2-0.26.0nb2, Maintainer: pkgsrc-users

libgit2 is a portable, pure C implementation of the Git core methods provided as
a re-entrant linkable library with a solid API, allowing you to write native
speed custom Git applications in any language which supports C bindings.

Required to run:
[www/curl] [security/libssh2] [lang/python27] [www/http-parser]

Required to build:

Master sites:

SHA1: 7e9792e3d2ee88719f0d7cb59737256bfc1cddbb
RMD160: f2c7a593ffeed7cfd25593d35f585a2e2a7eb2cc
Filesize: 4587.06 KB

Version history: (Expand)

CVS history: (Expand)

   2018-01-01 22:18:57 by Adam Ciarcinski | Files touched by this commit (629) | Package updated
Log message:
Revbump after boost update
   2017-11-21 00:04:05 by Thomas Klausner | Files touched by this commit (2)
Log message:
libgit2: remove python from bl3.mk

cmake says it's only needed for tests
   2017-08-24 22:03:43 by Adam Ciarcinski | Files touched by this commit (621) | Package updated
Log message:
Revbump for boost update
   2017-07-31 16:18:20 by Takahiro Kambe | Files touched by this commit (4) | Package updated
Log message:
Update libgit2 to 0.26.0.

libgit2 2017/6/19

This is the first release of the v0.26 series, "Aufschub". The \ 
changelog follows.

Changes or improvements

Support for opening, creating and modifying worktrees.

We can now detect SHA1 collisions resulting from the SHAttered attack. These
checks can be enabled at build time via -DUSE_SHA1DC.

Fix for missing implementation of git_merge_driver_source getters.

Fix for installed pkg-config file being broken when the prefix contains

We now detect when the hashsum of on-disk objects does not match their
expected hashsum.

We now support open-ended ranges (e.g. "master..", \ 
"...master") in our
revision range parsing code.

We now correctly compute ignores with leading "/" in subdirectories.

We now optionally call fsync on loose objects, packfiles and their indexes,
loose references and packed reference files.

We can now build against OpenSSL v1.1 and against LibreSSL.

GIT_MERGE_OPTIONS_INIT now includes a setting to perform rename detection.
This aligns this structure with the default by git_merge and
git_merge_trees when NULL was provided for the options.

Improvements for reading index v4 files.

Perform additional retries for filesystem operations on Windows when files
are temporarily locked by other processes.

API additions

New family of functions to handle worktrees:

git_worktree_list() lets you look up worktrees for a repository.
git_worktree_lookup() lets you get a specific worktree.
git_worktree_open_from_repository() lets you get the associated worktree of a \ 
git_worktree_add lets you create new worktrees.
git_worktree_prune lets you remove worktrees from disk.
git_worktree_lock() and git_worktree_unlock() let you lock and unlock a \ 
worktree, respectively.
git_repository_open_from_worktree() lets you open a repository via
git_repository_head_for_worktree() lets you get the current HEAD for a
linked worktree.
git_repository_head_detached_for_worktree() lets you check whether a
linked worktree is in detached HEAD mode.
git_repository_item_path() lets you retrieve paths for various repository

git_repository_commondir() lets you retrieve the common directory of a

git_branch_is_checked_out() allows you to check whether a branch is checked
out in a repository or any of its worktrees.

git_repository_submodule_cache_all() and
git_repository_submodule_cache_clear() functions allow you to prime or clear
the submodule cache of a repository.

You can disable strict hash verifications via the
GIT_OPT_ENABLE_STRICT_HASH_VERIFICATION option with git_libgit2_opts().

You can enable us calling fsync for various files inside the ".git"
directory by setting the GIT_OPT_ENABLE_FSYNC_GITDIR option with

You can now enable "offset deltas" when creating packfiles and negotiating
packfiles with a remote server by setting GIT_OPT_ENABLE_OFS_DELTA option
with GIT_libgit2_opts().

You can now set the default share mode on Windows for opening files using
GIT_OPT_SET_WINDOWS_SHAREMODE option with git_libgit2_opts().
You can query the current share mode with GIT_OPT_GET_WINDOWS_SHAREMODE.

git_transport_smart_proxy_options() enables you to get the proxy options for
smart transports.

The GIT_FILTER_INIT macro and the git_filter_init function are provided
to initialize a git_filter structure.

Breaking API changes

clone_checkout_strategy has been removed from
git_submodule_update_option. The checkout strategy used to clone will
be the same strategy specified in checkout_opts.
   2017-04-30 03:22:04 by Ryo ONODERA | Files touched by this commit (612) | Package updated
Log message:
Recursive revbump from boost update
   2017-02-18 14:17:23 by Takahiro Kambe | Files touched by this commit (1)
Log message:
API has changed with 0.25.0.
   2017-01-11 15:25:42 by Thomas Klausner | Files touched by this commit (1)
Log message:
Add test target.

Allow all python versions.
   2017-01-11 01:11:24 by Takahiro Kambe | Files touched by this commit (3) | Package updated
Log message:
Update libgit2 to 0.25.1, it includes security problem.

For full changes, please refer CHANGESLOG.md file.

* libgit2 v0.24.6 and libgit2 v0.25.1, January 9th, 2017

Includes two fixes, one performs extra sanitization for some edge cases in
the Git Smart Protocol which can lead to attempting to parse outside of the

The second fix affects the certificate check callback. It provides a valid
parameter to indicate whether the native cryptographic library considered
the certificate to be correct. This parameter is always 1/true before these
releases leading to a possible MITM.

This does not affect you if you do not use the custom certificate callback
or if you do not take this value into account. This does affect you if you
use pygit2 or git2go regardless of whether you specify a certificate check