v0.18.0
API Changes
- All callbacks that go to libgit2 now have an optional
waitForResult
flag that can betrue
/false
. Defaults to false. When true it will not stop libgit2 from continuing on before the JS code is fully executed and resolved (in cases of a Promise). This is useful for progress callbacks (like fetching) where the bubbling up of the progress to JS doesn't really need the C/C++ code to wait for the JS code to fully handle the event before continuing. This can have serious performance implications for many callbacks that can be fired quite frequently. given_opts
inRevert.revert
are now optionalcheckout_opts
inReset.fromAnnotated
andReset.reset
are now optionalReset.fromAnnotated
is now asyncmessage
onStash.save
is now optional- Added
processMergeMessageCallback
onRepository#mergeBranches
to allow for custom merge messages - Add
beforeFinishFn
toRepository#rebaseBranches
andRepository#continueRebase
. This is called before the invocation offinish()
. If the callback returns a promise,finish()
will be called when the promise resolves. ThebeforeFinishFn
will be called with an object that has on it:ontoName
The name of the branch that we rebased ontoontoSha
The sha that we rebased ontooriginalHeadName
The name of the branch that we rebasedoriginalHeadSha
The sha of the branch that was rebasedrewitten
which is an array of sha pairs that contain which contain what the commit sha was before the rebase and what the commit sha is after the rebase
Summary of Changes from bumping libgit2 to 43275f5
PR #1123 bumped libgit2 which brought in many changes and bug fixes.
Included merged libgit2 PRs:
- Use a shared buffer in calls of git_treebuilder_write to avoid heap contention #3892
- WinHTTP: set proper error messages when SSL fails #4050
- Clang analyzer run #4051
- Extend packfile in increments of page_size. #4053
- Fix general example memory leaks #4078
- WIP: some coverity & compiler warning fixes #4086
- Fix a few recent warnings #4087
- Fix uninitialized variable warning #4095
- Update docs for git_oid_fromstrn and p #4096
- Fix digest credentials for proxy in windows #4104
- Vector reverse overflow #4105
- Flag given_opts in git_revert as optional #4108
- Flag checkout_opts in git_reset as optional #4109
- dirname with DOS prefixes #4111
- Add support for lowercase proxy environment variables #4112
- Flag options in git_stash_apply and git_stash_pop as being optional #4117
- rename detection: don't try to detect submodule renames #4119
- tests: fix permissions on testrepo.git index file #4121
Included non-merged libgit2 PRs:
Summary of Changes to NodeGit outside of libgit2 bump
- Don't overwrite C++ files for things that haven't changed PR #1091
- Add the option to "fire and forget" callbacks so libgit2 doesn't wait for JS to finish before proceeding PR #1208
- Send back the error code from libgit2 when a call fails PR #1209
- Initialize pointers to null PR #1210
- Replace Gitter with Slack PR #1212
- Make
given_opts
inRevert.revert
optional PR #1213 - Make
Reset.fromAnnotated
async andcheckout_opts
optional PR #1214 - Make
message
onStash.save
optional PR #1215 - Add
Remote.ls
to NodeGit PR #1218 - Add
processMergeMessageCallback
toRepository#mergeBranches
to allow for custom merge messages PR #1219 - Bump libgit2 to 43275f5 PR #1223 from srajko/bump-libgit
- Provide rebase details on finish PR #1224
- Use wider int to calculate throttle window PR #1232
- Update comment to reflect the correct path for generated code output PR #1236
- Remove nwjs example from the docs PR #1238
- Remove
sudo
requirement from linux 32-bit builds PR #1241