0d96718724
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) |
||
---|---|---|
.. | ||
buildlink3.mk | ||
DESCR | ||
distinfo | ||
Makefile | ||
PLIST |