Changelog History
Page 2
-
v0.24 Changes
June 21, 2017๐ This is the last release before a moving to .NET Core compatible library.
๐ It will be the last supported release with the prior architecture; as a result, this release is primarily bugfixes and does not include major new APIs.
-
v0.23.1 Changes
January 09, 2017๐ This is a security release fixing two issues. The first one performs extra sanitization for some edge cases in the Git Smart Protocol which can lead to attempting to parse outside of the buffer.
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 this fix 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.
๐ A list of commits since the last release follows
82d621c Merge pull request #1402 from libgit2/ethomson/0_23_1 097036d Update change log for 0.23.1 7f259c8 Update version number to 0.23.1 595938e Update LibGit2Sharp.NativeBinaries to 1.0.164
-
v0.23 Changes
โ Additions
- Add
CherryPickCommit
andRevertCommit
toObjectDatabase
. - Add
IncludeIgnored
field toSatusOptions
. - Add
Commit.CreateBuffer
to write a commit object to a buffer andObjectDatabase.CreateCommitWithSignature
to create commits which include a signature. - Add
Commit.ExtractSignature
to get a commit's signature. - Add
ObjectDatabase.Write<T>
to write arbitrary objects to the object db. - Add
Commit.PrettifyMessage
๐ Changes
- The native libraries are now expected to be in the
lib
directory, instead ofNativeBinaries
for improved mono compatibility. In addition, the names of platform architectures now better reflect the vendor naming (eg,x86_64
instead ofamd64
on Linux). - Deprecate the config paths in RepositoryOptions
- Deprecate the
QueryBy
overload withFollowFilter
. - Deprecate
Branch.Remote
in favour ofBranch.RemoteName
Remote
no longer implement the equality operator.Remote.Update
takes a remote name instead of an instance.Fetch
,Pull
,Move
,Remove
,Stage
are now in a commands namespace to indicate what they represent.
- Add
-
v0.22 Changes
โ Additions
- Add CustomHeaders in the push options (#1217)
- Expose the minimal diff algorithm (#1229)
- Expose Reset() with checkout options (#1219)
- Add a prettify option to history rewrite options (#1185)
- Add option to describe to only follow the first parent (#1190)
- Allow setting the config search path (#1123)
- Provide access to the remote's host HTTPS certificate (#1134)
- Add support for rebase (#964)
- ListReferences() now accepts a credentials provider (#1099)
- Introduce FileStatus.Conflicted and introduce staging of conflicts (#1062)
- Support streaming filters written in C# (#1030)
- Add support for the pre-push callback (#1061)
- Add support for listing remote references without a Repository instance (#1065)
- Add StashCollection.Apply() and .Pop() (#1068)
- Support retrieving a configuration for a repository without instantiating it (#1042)
- Implement 'log --follow'-like functionality (#963)
- Introduce in-memory merging via Repository.MergeCommits() (#990)
- Allow setting whether to prune during a fetch (#1258)
๐ Changes
- Deprecate MergeConflictException in a backwards-compatible way (#1243)
- Improve type safety in the generic type for Diff.Compare() (#1180)
- Obsolete Repository.Commit(), NoteCollection.Add() and NoteCollection.Remove() overloads which do not require a signature (#1173)
- BuildSignature() no longer tries to build a signature from the environment if there is none configured (#1171)
- Rename the commit walker's Since to IncludeReachableFrom and Until to ExcludeReachableFrom (#1069)
- Rename MergeConflictException to CheckoutConflictException to more accurately reflect what it means (#1059)
- Specify the diff algorithm instead of setting a boolean to use patience (#1043)
- Remove optional parameters (#1031)
- Move Repository.Reset(paths) into Index (#959)
- Move FindMergeBase() overloads to ObjectDatabase (#957)
๐ Fixes
- ListReferences() is now able to handle symbolic references (#1132)
- Repository.IsValid() returns false on empty paths (#1156)
- The included version of libgit2 includes racy-git support
- Fix a racy NRE in the filters (#1113)
-
v0.21.1 Changes
๐ Changes
- ๐ Fix Fetch() related tests to cope with recent GitHub policy change regarding include-tag handling (#995, #1001)
-
v0.21 Changes
โ Additions
- Introduce repo.Index.Add() and repo.Index.Remove() (#907)
- Introduce repo.Describe() (#848)
- Teach Repository.Clone to accept a specific branch to checkout (#650, #882)
- Expose IndexEntry.AssumeUnchanged (#928, #929)
- Introduce GlobalSettings.Version.InformationalVersion (#921)
๐ Changes
- Deprecate Branch.Checkout() (#937)
- Deprecate GlobalSettings.Version.MajorMinorPatch (#921)
- Change Blob.Size output to a long (#892)
- Update libgit2 binaries to libgit2/libgit2@e0902fb
๐ Fixes
- Fix Network.Fetch() tags retrieval (#927)
- Fix repo.Stage("*") behavior (#907)
- Plug some memory leaks (#883, #910)
- Protect Repository.Clone() from null parameters (#891)
-
v0.20.2 Changes
๐ Fixes
- Update libgit2 to prevent issues around symbolic links to ".git" folders in trees on Mac
-
v0.20.1 Changes
๐ Fixes
- Update libgit2 to prevent issues around ".git" folders in trees on Windows and Mac
-
v0.20 Changes
โ Additions
- Teach RemoteUpdater to update the remote url (#803)
- Introduce ObjectDatabase.CreateTree(Index) and Index.Reset(Tree) (#788, #799)
- Add process wide logging feature (#832)
- Add process wide SmartSubtransport registration/unregistration (#528)
- Expose Index.Clear() (#814)
๐ Changes
- Require Mono 3.6+ on non Windows platform (#800)
- Require NuGet 2.7+ to install the package (#836)
- Throw MergeFetchHeadNotFoundException when Pull cannot find ref to merge (#841)
- Drop Remote.IsSupportedUrl() (#857)
- Deprecate repo.Version in favor of GlobalSettings.Version (#726, #820)
- Remove optional parameters from IRepository (#779, #815)
- Move higher level Index operations to IRepository (#822, #851)
- Deprecate repo.Refs.Move() in favor of repo.Refs.Rename() (#752, #819)
- Update libgit2 binaries to libgit2/libgit2@3f8d005
๐ Fixes
- Fix compareOptions handling in Diff.Compare (#827, #828)
- Honor MSBuild Publish mechanism (#597, #821)
- Make Configuration.BuildSignature() throw a more descriptive message (#831, #858)
- Prevent Branch.Remote property from throwing when the remote is unresolvable (#823)
- Teach Revert() to clean up repository state when there is nothing to revert (#816)
-
v0.19 Changes
โ Additions
- Introduce repo.Network.Remotes.Rename() (#730, #741)
- Introduce repo.ObjectDatabase.ShortenObjectId() (#677)
- Introduce Remote.IsSupportedUrl() (#754)
- Introduce repo.CherryPick() (#755, #756)
- Expose advanced conflict data (REUC, renames) (#748)
๐ Changes
- Make Patch expose a richer PatchEntryChanges type (#686, #702)
- Make network operations accept Credentials through a callback (#759, #761, #767)
- Make repo.Index.Stage() respect ignored files by default (#777)
- Make OdbBackend IDisposable (#713)
- Update libgit2 binaries to libgit2/libgit2@d28b2b7
๐ Fixes
- Don't require specific rights to the parent hierarchy of a repository (#795)
- Prevent Clone() from choking on empty packets (#794)
- Ensure Tags can be created in detached Head state (#791)
- Properly determine object size when calculating its CRC (#783)
- Prevent blind fast forwards merges when there are checkout conflicts (#781)
- Make repo.Reset() and repo.Index.Unstage() cope with renamed entries (#777)
- Do not throw when parsing annotated tags without a Signature (#775, #776)
- Remove conflicts upon repo.Index.Remove() call (#768)
- Honor the merge.ff configuration entry (#709)
- Make Clone() properly throws when passed an invalid url (#701)