Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
git2
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
git2
Commits
6e17bfda
Unverified
Commit
6e17bfda
authored
Jan 17, 2019
by
Edward Thomson
Committed by
GitHub
Jan 17, 2019
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #4932 from libgit2/ethomson/changelog
changelog: document changes since 0.27
parents
abe23675
6a0e9457
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
94 additions
and
0 deletions
+94
-0
docs/changelog.md
+94
-0
No files found.
docs/changelog.md
View file @
6e17bfda
...
@@ -3,16 +3,83 @@ v0.27 + 1
...
@@ -3,16 +3,83 @@ v0.27 + 1
### Changes or improvements
### Changes or improvements
*
Reference log creation now honors
`core.logallrefupdates=always`
.
*
Fix some issues with the error-reporting in the OpenSSL backend.
*
HTTP proxy support is now builtin; libcurl is no longer used to support
proxies and is removed as a dependency.
*
Certificate and credential callbacks can now return
`GIT_PASSTHROUGH`
to decline to act; libgit2 will behave as if there was no callback set
in the first place.
*
The line-ending filtering logic - when checking out files - has been
*
The line-ending filtering logic - when checking out files - has been
updated to match newer git (>= git 2.9) for proper interoperability.
updated to match newer git (>= git 2.9) for proper interoperability.
*
Symbolic links are now supported on Windows when
`core.symlinks`
is set
to
`true`
.
*
Submodules with names which attempt to perform path traversal now have their
*
Submodules with names which attempt to perform path traversal now have their
configuration ignored. Such names were blindly appended to the
configuration ignored. Such names were blindly appended to the
`$GIT_DIR/modules`
and a malicious name could lead to an attacker writing to
`$GIT_DIR/modules`
and a malicious name could lead to an attacker writing to
an arbitrary location. This matches git's handling of CVE-2018-11235.
an arbitrary location. This matches git's handling of CVE-2018-11235.
*
Object validation is now performed during tree creation in the
`git_index_write_tree_to`
API.
*
Configuration variable may now be specified on the same line as a section
header; previously this was erroneously a parser error.
*
When an HTTP server supports both NTLM and Negotiate authentication
mechanisms, we would previously fail to authenticate with any mechanism.
*
The
`GIT_OPT_SET_PACK_MAX_OBJECTS`
option can now set the maximum
number of objects allowed in a packfile being downloaded; this can help
limit the maximum memory used when fetching from an untrusted remote.
*
Line numbers in diffs loaded from patch files were not being populated;
they are now included in the results.
*
The repository's index is reloaded from disk at the beginning of
`git_merge`
operations to ensure that it is up-to-date.
*
Mailmap handling APIs have been introduced, and the new commit APIs
`git_commit_committer_with_mailmap`
and
`git_commit_author_with_mailmap`
will use the mailmap to resolve the committer and author information.
In addition, blame will use the mailmap given when the
`GIT_BLAME_USE_MAILMAP`
option.
*
Ignore handling for files in ignored folders would be ignored.
*
Worktrees can now be backed by bare repositories.
*
Trailing spaces are supported in
`.gitignore`
files, these spaces were
previously (and erroneously) treated as part of the pattern.
*
The library can now be built with mbedTLS support for HTTPS.
*
The diff status character 'T' will now be presented by the
`git_diff_status_char`
API for diff entries that change type.
*
Revision walks previously would sometimes include commits that should
have been ignored; this is corrected.
*
Revision walks are now more efficient when the output is unsorted;
we now avoid walking all the way to the beginning of history unnecessarily.
### API additions
### API additions
*
The index may now be iterated atomically using
`git_index_iterator`
.
*
Remote objects can now be created with extended options using the
`git_remote_create_with_opts`
API.
*
Diff objects can now be applied as changes to the working directory,
index or both, emulating the
`git apply`
command. Additionally,
`git_apply_to_tree`
can apply those changes to a tree object as a
fully in-memory operation.
*
You can now swap out memory allocators via the
*
You can now swap out memory allocators via the
`GIT_OPT_SET_ALLOCATOR`
option with
`git_libgit2_opts()`
.
`GIT_OPT_SET_ALLOCATOR`
option with
`git_libgit2_opts()`
.
...
@@ -28,10 +95,37 @@ v0.27 + 1
...
@@ -28,10 +95,37 @@ v0.27 + 1
examine your code to ensure that you are not relying on the current
examine your code to ensure that you are not relying on the current
behavior that implicitly removes staged changes.
behavior that implicitly removes staged changes.
*
Reference specifications can be parsed from an arbitrary string with
the
`git_refspec_parse`
API.
*
You can now get the name and path of worktrees using the
`git_worktree_name`
and
`git_worktree_path`
APIs, respectively.
*
The
`ref`
field has been added to
`git_worktree_add_options`
to enable
the creation of a worktree from a pre-existing branch.
*
It's now possible to analyze merge relationships between any two
references, not just against
`HEAD`
, using
`git_merge_analysis_for_ref`
.
### API removals
### API removals
### Breaking API changes
### Breaking API changes
*
The
`git_buf_free`
API is deprecated; it has been renamed to
`git_buf_dispose`
for consistency. The
`git_buf_free`
API will be
removed in a future release.
*
The
`git_otype`
enumeration and its members are deprecated and have
been renamed for consistency. The
`GIT_OBJ_`
enumeration values are
now prefixed with
`GIT_OBJECT_`
. The
`git_otype`
enumeration will
be removed in a future release.
*
Several index-related APIs have been renamed for consistency. The
`GIT_IDXENTRY_`
enumeration values and macros have been renamed to
be prefixed with
`GIT_INDEX_ENTRY_`
. The
`GIT_INDEXCAP`
enumeration
values are now prefixed with
`GIT_INDEX_CAPABILITY_`
. The old
enumerations and macros will be removed in a future release.
*
The default checkout strategy changed from
`DRY_RUN`
to
`SAFE`
(#4531).
*
The default checkout strategy changed from
`DRY_RUN`
to
`SAFE`
(#4531).
*
Adding a symlink as .gitmodules into the index from the workdir or checking
*
Adding a symlink as .gitmodules into the index from the workdir or checking
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment