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

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


Branch: CURRENT, Version: 1.8.0, Package name: libgit2-1.8.0, 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:
[lang/python27]

Master sites:

Filesize: 7412.232 KB

Version history: (Expand)


CVS history: (Expand)


   2014-08-10 13:27:44 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
Update to 0.21.1:

The following (critical) fixes have been backported to this
maintenance release. All users of the library are encouraged to
update.

    b4d00c1 array: mark the array to grow as volatile
    f3f9dc0 revwalk: remove preallocation of the uninteresting commits
    440a87a Add unit test to test add section without lf at EOF
    190fe07 Make sure \n is at the end of config file before a new section is written
    ace6567 Properly report failure when expanding a packfile
    f8b4093 refspec: support asterisks in the middle of a pattern
    0aa6b7e refspec: short-circuit non-pattern refspecs on transform
    18cf389 Include libssh2.h before git2.h (transport.h)
    dbcb751 Fix git_cred_ssh_interactive_callback signature
    0e59463 netops: error out on url without a path
    12dcc6e ssh: libssh2_channel_write() behaves like send()
    38ddf22 Round up pool alloc sizes for alignment
    63ee946 ssh: always declare the libssh2 types
    aa1b62b ssh: create the right callback signature based on build options
    1d43005 ssl: init only once without threads
    5838338 Merge pull request #2494 from libgit2/cmn/treebuilder-set-attribute
    b692568 treebuilder: set the attributes before sorting and inserting

0.21.0:

Final release of 0.21.0 after two release candidates. Go get it.

Changed since last version:

    Top-level Improvements
	We've dropped support for Windows XP. We're evil like that.
	Added a new config snapshotting API to fix race issues when
	different applications (e.g. Git and a libgit2 client)
	access the same repository simultaneously.
	Added reflog support to all APIs that could alter a reference.
	These APIs gained two new parameters: const git_signature
	*signature and const char *log_message to control what is
	written to the reflog. Passing NULL for these values will
	use defaults from the user's configuration.
	Avoided race conditions when updating references. Any
	function that alters a reference will check if the underlying
	reference data has been changed since libgit2 looked up
	the data and cancel the operation with error GIT_EMODIFIED
	if the reference has been changed.
	Converted all APIs that output string data to use git_buf
	objects for the return value. Previously these would
	typically take a pointer to an output buffer and a size,
	and generate an error if the output buffer was not large
	enough.
	Added standard git_<object>_init_options functions to
	initialize options structures when static initialization
	is not possible, and renamed options structures to standard
	git_<object>_options (replacing _opts suffix used in some
	places)
	Improved use of const on pointers in many APIs (which may
	affect some bindings).
	Replaced use of oid with simply id for references to git_oid
	value.s
	Previously, when a callback function returned an error
	value (i.e. non-zero), libgit2 converted it to GIT_EUSER
	for the parent function's return value. Now, libgit2 tries
	to pass through the callback's return value all the way
	back to the caller. To disambiguate between an error
	generated by the callback vs. an error generated internally
	by libgit2, a callback can still explicitly return the
	GIT_EUSER value -- libgit2 will never use that error code
	for errors that it raises.
	All inline functions were eliminated from the public libgit2
	API
	Removed all Apache licensed code from library
	CRLF handling is much improved in the platforms where it
	matters (Windows)
   2014-02-03 11:04:24 by othyro | Files touched by this commit (3)
Log message:
Updated to latest release, 0.20.0. EXTRACT_USING=gtar. Release changelog:

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