rugged 1.3.1 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +34 -2
- data/ext/rugged/extconf.rb +6 -3
- data/ext/rugged/rugged.c +16 -0
- data/ext/rugged/rugged.h +4 -0
- data/ext/rugged/rugged_allocator.c +0 -54
- data/ext/rugged/rugged_blame.c +2 -0
- data/ext/rugged/rugged_blob.c +3 -0
- data/ext/rugged/rugged_commit.c +1 -0
- data/ext/rugged/rugged_config.c +9 -2
- data/ext/rugged/rugged_diff.c +1 -0
- data/ext/rugged/rugged_index.c +2 -0
- data/ext/rugged/rugged_patch.c +1 -0
- data/ext/rugged/rugged_rebase.c +1 -0
- data/ext/rugged/rugged_reference.c +1 -0
- data/ext/rugged/rugged_remote.c +28 -10
- data/ext/rugged/rugged_repo.c +7 -9
- data/ext/rugged/rugged_revwalk.c +5 -1
- data/ext/rugged/rugged_settings.c +5 -0
- data/ext/rugged/rugged_submodule.c +1 -0
- data/ext/rugged/rugged_tag.c +1 -0
- data/ext/rugged/rugged_tree.c +4 -0
- data/lib/rugged/index.rb +1 -1
- data/lib/rugged/tree.rb +5 -1
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/AUTHORS +1 -0
- data/vendor/libgit2/CMakeLists.txt +141 -289
- data/vendor/libgit2/COPYING +301 -20
- data/vendor/libgit2/cmake/AddCFlagIfSupported.cmake +21 -21
- data/vendor/libgit2/cmake/AddClarTest.cmake +7 -0
- data/vendor/libgit2/cmake/CheckPrototypeDefinitionSafe.cmake +16 -0
- data/vendor/libgit2/cmake/DefaultCFlags.cmake +154 -0
- data/vendor/libgit2/cmake/EnableWarnings.cmake +13 -13
- data/vendor/libgit2/cmake/ExperimentalFeatures.cmake +23 -0
- data/vendor/libgit2/cmake/FindCoreFoundation.cmake +13 -13
- data/vendor/libgit2/cmake/FindGSSAPI.cmake +171 -287
- data/vendor/libgit2/cmake/FindGSSFramework.cmake +13 -13
- data/vendor/libgit2/cmake/FindHTTP_Parser.cmake +17 -17
- data/vendor/libgit2/cmake/FindIntlIconv.cmake +51 -0
- data/vendor/libgit2/cmake/FindLLHTTP.cmake +39 -0
- data/vendor/libgit2/cmake/FindLibSSH2.cmake +5 -5
- data/vendor/libgit2/cmake/FindPCRE.cmake +12 -13
- data/vendor/libgit2/cmake/FindPCRE2.cmake +12 -12
- data/vendor/libgit2/cmake/FindPkgLibraries.cmake +19 -19
- data/vendor/libgit2/cmake/FindSecurity.cmake +14 -14
- data/vendor/libgit2/cmake/FindStatNsec.cmake +12 -18
- data/vendor/libgit2/cmake/Findfutimens.cmake +8 -8
- data/vendor/libgit2/cmake/FindmbedTLS.cmake +63 -70
- data/vendor/libgit2/cmake/IdeSplitSources.cmake +18 -18
- data/vendor/libgit2/cmake/PkgBuildConfig.cmake +60 -60
- data/vendor/libgit2/cmake/SanitizeBool.cmake +20 -20
- data/vendor/libgit2/cmake/SelectGSSAPI.cmake +37 -37
- data/vendor/libgit2/cmake/SelectHTTPParser.cmake +34 -0
- data/vendor/libgit2/cmake/SelectHTTPSBackend.cmake +129 -101
- data/vendor/libgit2/cmake/SelectHashes.cmake +113 -54
- data/vendor/libgit2/cmake/SelectRegex.cmake +56 -0
- data/vendor/libgit2/cmake/SelectSSH.cmake +46 -0
- data/vendor/libgit2/cmake/SelectXdiff.cmake +9 -0
- data/vendor/libgit2/cmake/SelectZlib.cmake +38 -0
- data/vendor/libgit2/deps/chromium-zlib/CMakeLists.txt +6 -6
- data/vendor/libgit2/deps/llhttp/CMakeLists.txt +8 -0
- data/vendor/libgit2/deps/llhttp/LICENSE-MIT +22 -0
- data/vendor/libgit2/deps/llhttp/api.c +510 -0
- data/vendor/libgit2/deps/llhttp/http.c +170 -0
- data/vendor/libgit2/deps/llhttp/llhttp.c +10168 -0
- data/vendor/libgit2/deps/llhttp/llhttp.h +897 -0
- data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +33 -31
- data/vendor/libgit2/deps/ntlmclient/crypt_builtin_md4.c +311 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.c +2 -1
- data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.c +0 -20
- data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +7 -5
- data/vendor/libgit2/deps/ntlmclient/ntlm.c +25 -25
- data/vendor/libgit2/deps/ntlmclient/ntlm.h +4 -4
- data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +2 -2
- data/vendor/libgit2/deps/ntlmclient/unicode_builtin.c +5 -4
- data/vendor/libgit2/deps/ntlmclient/unicode_iconv.c +2 -1
- data/vendor/libgit2/deps/ntlmclient/utf8.h +1176 -721
- data/vendor/libgit2/deps/ntlmclient/util.h +11 -0
- data/vendor/libgit2/deps/pcre/CMakeLists.txt +89 -88
- data/vendor/libgit2/deps/pcre/LICENCE +5 -5
- data/vendor/libgit2/deps/pcre/pcre.h +2 -2
- data/vendor/libgit2/deps/pcre/pcre_compile.c +6 -3
- data/vendor/libgit2/deps/pcre/pcre_exec.c +2 -2
- data/vendor/libgit2/deps/winhttp/CMakeLists.txt +14 -16
- data/vendor/libgit2/deps/xdiff/CMakeLists.txt +28 -0
- data/vendor/libgit2/deps/xdiff/git-xdiff.h +56 -0
- data/vendor/libgit2/{src → deps}/xdiff/xdiff.h +15 -15
- data/vendor/libgit2/{src → deps}/xdiff/xdiffi.c +152 -125
- data/vendor/libgit2/{src → deps}/xdiff/xdiffi.h +2 -4
- data/vendor/libgit2/{src → deps}/xdiff/xemit.c +26 -10
- data/vendor/libgit2/{src → deps}/xdiff/xhistogram.c +92 -94
- data/vendor/libgit2/{src → deps}/xdiff/xinclude.h +1 -12
- data/vendor/libgit2/{src → deps}/xdiff/xmacros.h +18 -1
- data/vendor/libgit2/{src → deps}/xdiff/xmerge.c +126 -137
- data/vendor/libgit2/{src → deps}/xdiff/xpatience.c +26 -46
- data/vendor/libgit2/{src → deps}/xdiff/xprepare.c +24 -46
- data/vendor/libgit2/{src → deps}/xdiff/xutils.c +36 -8
- data/vendor/libgit2/{src → deps}/xdiff/xutils.h +2 -1
- data/vendor/libgit2/deps/zlib/CMakeLists.txt +6 -1
- data/vendor/libgit2/deps/zlib/LICENSE +22 -0
- data/vendor/libgit2/deps/zlib/adler32.c +7 -22
- data/vendor/libgit2/deps/zlib/crc32.c +931 -317
- data/vendor/libgit2/deps/zlib/crc32.h +9441 -436
- data/vendor/libgit2/deps/zlib/deflate.c +428 -453
- data/vendor/libgit2/deps/zlib/deflate.h +51 -23
- data/vendor/libgit2/deps/zlib/gzguts.h +15 -19
- data/vendor/libgit2/deps/zlib/infback.c +19 -31
- data/vendor/libgit2/deps/zlib/inffast.c +15 -18
- data/vendor/libgit2/deps/zlib/inffast.h +1 -1
- data/vendor/libgit2/deps/zlib/inflate.c +75 -110
- data/vendor/libgit2/deps/zlib/inflate.h +3 -2
- data/vendor/libgit2/deps/zlib/inftrees.c +6 -11
- data/vendor/libgit2/deps/zlib/inftrees.h +6 -6
- data/vendor/libgit2/deps/zlib/trees.c +294 -380
- data/vendor/libgit2/deps/zlib/zconf.h +23 -14
- data/vendor/libgit2/deps/zlib/zlib.h +310 -284
- data/vendor/libgit2/deps/zlib/zutil.c +20 -46
- data/vendor/libgit2/deps/zlib/zutil.h +24 -41
- data/vendor/libgit2/include/git2/annotated_commit.h +12 -5
- data/vendor/libgit2/include/git2/apply.h +43 -8
- data/vendor/libgit2/include/git2/attr.h +28 -6
- data/vendor/libgit2/include/git2/blame.h +137 -29
- data/vendor/libgit2/include/git2/blob.h +85 -29
- data/vendor/libgit2/include/git2/branch.h +25 -16
- data/vendor/libgit2/include/git2/buffer.h +24 -82
- data/vendor/libgit2/include/git2/cert.h +4 -3
- data/vendor/libgit2/include/git2/checkout.h +88 -34
- data/vendor/libgit2/include/git2/cherrypick.h +10 -3
- data/vendor/libgit2/include/git2/clone.h +28 -12
- data/vendor/libgit2/include/git2/commit.h +134 -3
- data/vendor/libgit2/include/git2/common.h +172 -59
- data/vendor/libgit2/include/git2/config.h +118 -32
- data/vendor/libgit2/include/git2/credential.h +32 -3
- data/vendor/libgit2/include/git2/credential_helpers.h +2 -0
- data/vendor/libgit2/include/git2/deprecated.h +141 -3
- data/vendor/libgit2/include/git2/describe.h +20 -3
- data/vendor/libgit2/include/git2/diff.h +95 -19
- data/vendor/libgit2/include/git2/email.h +10 -30
- data/vendor/libgit2/include/git2/errors.h +51 -61
- data/vendor/libgit2/include/git2/experimental.h +20 -0
- data/vendor/libgit2/include/git2/filter.h +21 -9
- data/vendor/libgit2/include/git2/global.h +8 -1
- data/vendor/libgit2/include/git2/graph.h +4 -2
- data/vendor/libgit2/include/git2/ignore.h +11 -1
- data/vendor/libgit2/include/git2/index.h +111 -11
- data/vendor/libgit2/include/git2/indexer.h +67 -2
- data/vendor/libgit2/include/git2/mailmap.h +7 -1
- data/vendor/libgit2/include/git2/merge.h +70 -5
- data/vendor/libgit2/include/git2/message.h +4 -2
- data/vendor/libgit2/include/git2/net.h +3 -1
- data/vendor/libgit2/include/git2/notes.h +9 -6
- data/vendor/libgit2/include/git2/object.h +57 -7
- data/vendor/libgit2/include/git2/odb.h +156 -33
- data/vendor/libgit2/include/git2/odb_backend.h +132 -16
- data/vendor/libgit2/include/git2/oid.h +116 -17
- data/vendor/libgit2/include/git2/oidarray.h +7 -1
- data/vendor/libgit2/include/git2/pack.h +37 -9
- data/vendor/libgit2/include/git2/patch.h +10 -3
- data/vendor/libgit2/include/git2/pathspec.h +10 -1
- data/vendor/libgit2/include/git2/proxy.h +11 -1
- data/vendor/libgit2/include/git2/rebase.h +18 -7
- data/vendor/libgit2/include/git2/refdb.h +5 -2
- data/vendor/libgit2/include/git2/reflog.h +4 -3
- data/vendor/libgit2/include/git2/refs.h +11 -8
- data/vendor/libgit2/include/git2/refspec.h +14 -4
- data/vendor/libgit2/include/git2/remote.h +295 -54
- data/vendor/libgit2/include/git2/repository.h +95 -25
- data/vendor/libgit2/include/git2/reset.h +18 -5
- data/vendor/libgit2/include/git2/revert.h +9 -4
- data/vendor/libgit2/include/git2/revparse.h +4 -4
- data/vendor/libgit2/include/git2/revwalk.h +7 -3
- data/vendor/libgit2/include/git2/signature.h +47 -2
- data/vendor/libgit2/include/git2/stash.h +78 -10
- data/vendor/libgit2/include/git2/status.h +24 -11
- data/vendor/libgit2/include/git2/stdint.h +87 -85
- data/vendor/libgit2/include/git2/strarray.h +2 -16
- data/vendor/libgit2/include/git2/submodule.h +27 -11
- data/vendor/libgit2/include/git2/sys/alloc.h +12 -34
- data/vendor/libgit2/include/git2/sys/commit.h +77 -3
- data/vendor/libgit2/include/git2/sys/commit_graph.h +110 -59
- data/vendor/libgit2/include/git2/sys/config.h +80 -4
- data/vendor/libgit2/include/git2/sys/credential.h +4 -3
- data/vendor/libgit2/include/git2/sys/diff.h +21 -1
- data/vendor/libgit2/include/git2/sys/email.h +7 -0
- data/vendor/libgit2/include/git2/sys/errors.h +76 -0
- data/vendor/libgit2/include/git2/sys/filter.h +66 -3
- data/vendor/libgit2/include/git2/sys/hashsig.h +11 -0
- data/vendor/libgit2/include/git2/sys/index.h +3 -2
- data/vendor/libgit2/include/git2/sys/mempack.h +32 -2
- data/vendor/libgit2/include/git2/sys/merge.h +55 -7
- data/vendor/libgit2/include/git2/sys/midx.h +47 -4
- data/vendor/libgit2/include/git2/sys/odb_backend.h +10 -9
- data/vendor/libgit2/include/git2/sys/openssl.h +8 -1
- data/vendor/libgit2/include/git2/sys/path.h +12 -1
- data/vendor/libgit2/include/git2/sys/refdb_backend.h +40 -36
- data/vendor/libgit2/include/git2/sys/refs.h +3 -2
- data/vendor/libgit2/include/git2/sys/remote.h +53 -0
- data/vendor/libgit2/include/git2/sys/repository.h +63 -3
- data/vendor/libgit2/include/git2/sys/stream.h +26 -3
- data/vendor/libgit2/include/git2/sys/transport.h +87 -41
- data/vendor/libgit2/include/git2/tag.h +4 -1
- data/vendor/libgit2/include/git2/trace.h +9 -3
- data/vendor/libgit2/include/git2/transaction.h +3 -2
- data/vendor/libgit2/include/git2/transport.h +11 -3
- data/vendor/libgit2/include/git2/tree.h +20 -8
- data/vendor/libgit2/include/git2/types.h +26 -10
- data/vendor/libgit2/include/git2/version.h +63 -6
- data/vendor/libgit2/include/git2/worktree.h +30 -8
- data/vendor/libgit2/include/git2.h +1 -0
- data/vendor/libgit2/src/CMakeLists.txt +203 -420
- data/vendor/libgit2/src/README.md +12 -0
- data/vendor/libgit2/src/cli/CMakeLists.txt +56 -0
- data/vendor/libgit2/src/cli/README.md +26 -0
- data/vendor/libgit2/src/{branch.h → cli/cmd.c} +10 -8
- data/vendor/libgit2/src/cli/cmd.h +37 -0
- data/vendor/libgit2/src/cli/cmd_blame.c +287 -0
- data/vendor/libgit2/src/cli/cmd_cat_file.c +202 -0
- data/vendor/libgit2/src/cli/cmd_clone.c +190 -0
- data/vendor/libgit2/src/cli/cmd_config.c +241 -0
- data/vendor/libgit2/src/cli/cmd_hash_object.c +152 -0
- data/vendor/libgit2/src/cli/cmd_help.c +85 -0
- data/vendor/libgit2/src/cli/cmd_index_pack.c +114 -0
- data/vendor/libgit2/src/cli/cmd_init.c +102 -0
- data/vendor/libgit2/src/cli/common.c +168 -0
- data/vendor/libgit2/src/cli/common.h +63 -0
- data/vendor/libgit2/src/cli/error.h +51 -0
- data/vendor/libgit2/src/cli/main.c +134 -0
- data/vendor/libgit2/src/cli/opt.c +695 -0
- data/vendor/libgit2/src/cli/opt.h +367 -0
- data/vendor/libgit2/src/cli/opt_usage.c +263 -0
- data/vendor/libgit2/src/cli/opt_usage.h +40 -0
- data/vendor/libgit2/src/cli/progress.c +395 -0
- data/vendor/libgit2/src/cli/progress.h +129 -0
- data/vendor/libgit2/src/cli/sighandler.h +20 -0
- data/vendor/libgit2/src/cli/unix/sighandler.c +37 -0
- data/vendor/libgit2/src/cli/win32/precompiled.h +3 -0
- data/vendor/libgit2/src/cli/win32/sighandler.c +37 -0
- data/vendor/libgit2/src/libgit2/CMakeLists.txt +140 -0
- data/vendor/libgit2/src/{annotated_commit.c → libgit2/annotated_commit.c} +2 -2
- data/vendor/libgit2/src/{annotated_commit.h → libgit2/annotated_commit.h} +2 -2
- data/vendor/libgit2/src/{apply.c → libgit2/apply.c} +32 -34
- data/vendor/libgit2/src/{apply.h → libgit2/apply.h} +2 -2
- data/vendor/libgit2/src/{attr.c → libgit2/attr.c} +48 -31
- data/vendor/libgit2/src/{attr_file.c → libgit2/attr_file.c} +25 -20
- data/vendor/libgit2/src/{attr_file.h → libgit2/attr_file.h} +6 -4
- data/vendor/libgit2/src/{attrcache.c → libgit2/attrcache.c} +87 -46
- data/vendor/libgit2/src/{attrcache.h → libgit2/attrcache.h} +5 -9
- data/vendor/libgit2/src/{blame.c → libgit2/blame.c} +152 -57
- data/vendor/libgit2/src/{blame.h → libgit2/blame.h} +1 -0
- data/vendor/libgit2/src/{blame_git.c → libgit2/blame_git.c} +1 -2
- data/vendor/libgit2/src/{blob.c → libgit2/blob.c} +38 -29
- data/vendor/libgit2/src/{blob.h → libgit2/blob.h} +3 -3
- data/vendor/libgit2/src/{branch.c → libgit2/branch.c} +164 -118
- data/vendor/libgit2/src/libgit2/branch.h +31 -0
- data/vendor/libgit2/src/libgit2/buf.c +126 -0
- data/vendor/libgit2/src/libgit2/buf.h +50 -0
- data/vendor/libgit2/src/{cache.c → libgit2/cache.c} +22 -17
- data/vendor/libgit2/src/{cache.h → libgit2/cache.h} +7 -9
- data/vendor/libgit2/src/{checkout.c → libgit2/checkout.c} +107 -91
- data/vendor/libgit2/src/{checkout.h → libgit2/checkout.h} +0 -2
- data/vendor/libgit2/src/{cherrypick.c → libgit2/cherrypick.c} +14 -15
- data/vendor/libgit2/src/{clone.c → libgit2/clone.c} +254 -203
- data/vendor/libgit2/src/{clone.h → libgit2/clone.h} +4 -1
- data/vendor/libgit2/src/{commit.c → libgit2/commit.c} +296 -77
- data/vendor/libgit2/src/libgit2/commit.h +87 -0
- data/vendor/libgit2/src/{commit_graph.c → libgit2/commit_graph.c} +246 -135
- data/vendor/libgit2/src/{commit_graph.h → libgit2/commit_graph.h} +33 -8
- data/vendor/libgit2/src/{commit_list.c → libgit2/commit_list.c} +17 -7
- data/vendor/libgit2/src/{commit_list.h → libgit2/commit_list.h} +1 -0
- data/vendor/libgit2/src/libgit2/common.h +55 -0
- data/vendor/libgit2/src/{config.c → libgit2/config.c} +490 -360
- data/vendor/libgit2/src/libgit2/config.cmake.in +3 -0
- data/vendor/libgit2/src/{config.h → libgit2/config.h} +24 -6
- data/vendor/libgit2/src/{config_backend.h → libgit2/config_backend.h} +8 -10
- data/vendor/libgit2/src/{config_cache.c → libgit2/config_cache.c} +4 -5
- data/vendor/libgit2/src/{config_file.c → libgit2/config_file.c} +212 -183
- data/vendor/libgit2/src/libgit2/config_list.c +285 -0
- data/vendor/libgit2/src/libgit2/config_list.h +32 -0
- data/vendor/libgit2/src/libgit2/config_mem.c +374 -0
- data/vendor/libgit2/src/{config_parse.c → libgit2/config_parse.c} +37 -32
- data/vendor/libgit2/src/{config_snapshot.c → libgit2/config_snapshot.c} +24 -31
- data/vendor/libgit2/src/{crlf.c → libgit2/crlf.c} +24 -21
- data/vendor/libgit2/src/{describe.c → libgit2/describe.c} +62 -51
- data/vendor/libgit2/src/{diff.c → libgit2/diff.c} +44 -14
- data/vendor/libgit2/src/{diff.h → libgit2/diff.h} +8 -10
- data/vendor/libgit2/src/{diff_driver.c → libgit2/diff_driver.c} +46 -55
- data/vendor/libgit2/src/{diff_driver.h → libgit2/diff_driver.h} +5 -5
- data/vendor/libgit2/src/{diff_file.c → libgit2/diff_file.c} +45 -27
- data/vendor/libgit2/src/{diff_generate.c → libgit2/diff_generate.c} +70 -20
- data/vendor/libgit2/src/{diff_generate.h → libgit2/diff_generate.h} +5 -3
- data/vendor/libgit2/src/{diff_parse.c → libgit2/diff_parse.c} +22 -6
- data/vendor/libgit2/src/{diff_print.c → libgit2/diff_print.c} +192 -105
- data/vendor/libgit2/src/{diff_stats.c → libgit2/diff_stats.c} +40 -29
- data/vendor/libgit2/src/libgit2/diff_stats.h +18 -0
- data/vendor/libgit2/src/{diff_tform.c → libgit2/diff_tform.c} +49 -16
- data/vendor/libgit2/src/{diff_xdiff.c → libgit2/diff_xdiff.c} +4 -8
- data/vendor/libgit2/src/{diff_xdiff.h → libgit2/diff_xdiff.h} +1 -1
- data/vendor/libgit2/src/{email.c → libgit2/email.c} +58 -40
- data/vendor/libgit2/src/{email.h → libgit2/email.h} +1 -1
- data/vendor/libgit2/src/{transports/ssh.h → libgit2/experimental.h.in} +3 -4
- data/vendor/libgit2/src/{fetch.c → libgit2/fetch.c} +105 -30
- data/vendor/libgit2/src/{fetch.h → libgit2/fetch.h} +1 -3
- data/vendor/libgit2/src/{fetchhead.c → libgit2/fetchhead.c} +30 -28
- data/vendor/libgit2/src/{filter.c → libgit2/filter.c} +132 -58
- data/vendor/libgit2/src/{filter.h → libgit2/filter.h} +26 -5
- data/vendor/libgit2/src/{win32 → libgit2}/git2.rc +3 -3
- data/vendor/libgit2/src/libgit2/grafts.c +270 -0
- data/vendor/libgit2/src/libgit2/grafts.h +35 -0
- data/vendor/libgit2/src/{graph.c → libgit2/graph.c} +1 -1
- data/vendor/libgit2/src/libgit2/hashmap_oid.h +30 -0
- data/vendor/libgit2/src/{ident.c → libgit2/ident.c} +20 -20
- data/vendor/libgit2/src/{ignore.c → libgit2/ignore.c} +44 -39
- data/vendor/libgit2/src/{ignore.h → libgit2/ignore.h} +2 -2
- data/vendor/libgit2/src/{index.c → libgit2/index.c} +460 -276
- data/vendor/libgit2/src/{index.h → libgit2/index.h} +21 -5
- data/vendor/libgit2/src/libgit2/index_map.c +95 -0
- data/vendor/libgit2/src/libgit2/index_map.h +28 -0
- data/vendor/libgit2/src/{indexer.c → libgit2/indexer.c} +208 -124
- data/vendor/libgit2/src/{iterator.c → libgit2/iterator.c} +102 -71
- data/vendor/libgit2/src/{iterator.h → libgit2/iterator.h} +8 -5
- data/vendor/libgit2/src/libgit2/libgit2.c +268 -0
- data/vendor/libgit2/src/{mailmap.c → libgit2/mailmap.c} +39 -37
- data/vendor/libgit2/src/{merge.c → libgit2/merge.c} +83 -73
- data/vendor/libgit2/src/{merge.h → libgit2/merge.h} +1 -14
- data/vendor/libgit2/src/{merge_driver.c → libgit2/merge_driver.c} +4 -4
- data/vendor/libgit2/src/{merge_file.c → libgit2/merge_file.c} +13 -5
- data/vendor/libgit2/src/{message.c → libgit2/message.c} +21 -10
- data/vendor/libgit2/src/{midx.c → libgit2/midx.c} +174 -112
- data/vendor/libgit2/src/{midx.h → libgit2/midx.h} +17 -6
- data/vendor/libgit2/src/{mwindow.c → libgit2/mwindow.c} +53 -57
- data/vendor/libgit2/src/{mwindow.h → libgit2/mwindow.h} +9 -2
- data/vendor/libgit2/src/{notes.c → libgit2/notes.c} +29 -37
- data/vendor/libgit2/src/{object.c → libgit2/object.c} +166 -35
- data/vendor/libgit2/src/{object.h → libgit2/object.h} +17 -2
- data/vendor/libgit2/src/{odb.c → libgit2/odb.c} +261 -88
- data/vendor/libgit2/src/{odb.h → libgit2/odb.h} +44 -5
- data/vendor/libgit2/src/{odb_loose.c → libgit2/odb_loose.c} +192 -134
- data/vendor/libgit2/src/{odb_mempack.c → libgit2/odb_mempack.c} +67 -22
- data/vendor/libgit2/src/{odb_pack.c → libgit2/odb_pack.c} +162 -89
- data/vendor/libgit2/src/{oid.c → libgit2/oid.c} +171 -92
- data/vendor/libgit2/src/libgit2/oid.h +284 -0
- data/vendor/libgit2/src/libgit2/oidarray.c +89 -0
- data/vendor/libgit2/src/{oidarray.h → libgit2/oidarray.h} +5 -1
- data/vendor/libgit2/src/{pack-objects.c → libgit2/pack-objects.c} +126 -66
- data/vendor/libgit2/src/{pack-objects.h → libgit2/pack-objects.h} +28 -12
- data/vendor/libgit2/src/{pack.c → libgit2/pack.c} +146 -111
- data/vendor/libgit2/src/{pack.h → libgit2/pack.h} +45 -25
- data/vendor/libgit2/src/{parse.c → libgit2/parse.c} +8 -4
- data/vendor/libgit2/src/{parse.h → libgit2/parse.h} +1 -1
- data/vendor/libgit2/src/{patch.c → libgit2/patch.c} +3 -3
- data/vendor/libgit2/src/{patch.h → libgit2/patch.h} +8 -1
- data/vendor/libgit2/src/{patch_generate.c → libgit2/patch_generate.c} +51 -16
- data/vendor/libgit2/src/{patch_generate.h → libgit2/patch_generate.h} +5 -5
- data/vendor/libgit2/src/{patch_parse.c → libgit2/patch_parse.c} +42 -34
- data/vendor/libgit2/src/libgit2/path.c +375 -0
- data/vendor/libgit2/src/libgit2/path.h +68 -0
- data/vendor/libgit2/src/{pathspec.c → libgit2/pathspec.c} +7 -7
- data/vendor/libgit2/src/{pathspec.h → libgit2/pathspec.h} +2 -2
- data/vendor/libgit2/src/{proxy.c → libgit2/proxy.c} +4 -1
- data/vendor/libgit2/src/{proxy.h → libgit2/proxy.h} +1 -1
- data/vendor/libgit2/src/{push.c → libgit2/push.c} +116 -60
- data/vendor/libgit2/src/{push.h → libgit2/push.h} +5 -16
- data/vendor/libgit2/src/{reader.c → libgit2/reader.c} +9 -9
- data/vendor/libgit2/src/{reader.h → libgit2/reader.h} +2 -2
- data/vendor/libgit2/src/{rebase.c → libgit2/rebase.c} +147 -147
- data/vendor/libgit2/src/{refdb_fs.c → libgit2/refdb_fs.c} +639 -254
- data/vendor/libgit2/src/{reflog.c → libgit2/reflog.c} +8 -7
- data/vendor/libgit2/src/{reflog.h → libgit2/reflog.h} +3 -2
- data/vendor/libgit2/src/{refs.c → libgit2/refs.c} +67 -39
- data/vendor/libgit2/src/{refs.h → libgit2/refs.h} +8 -3
- data/vendor/libgit2/src/{refspec.c → libgit2/refspec.c} +60 -38
- data/vendor/libgit2/src/{refspec.h → libgit2/refspec.h} +13 -2
- data/vendor/libgit2/src/{remote.c → libgit2/remote.c} +821 -454
- data/vendor/libgit2/src/libgit2/remote.h +101 -0
- data/vendor/libgit2/src/{repository.c → libgit2/repository.c} +1377 -594
- data/vendor/libgit2/src/{repository.h → libgit2/repository.h} +43 -12
- data/vendor/libgit2/src/{reset.c → libgit2/reset.c} +8 -5
- data/vendor/libgit2/src/{revert.c → libgit2/revert.c} +18 -22
- data/vendor/libgit2/src/{revparse.c → libgit2/revparse.c} +76 -44
- data/vendor/libgit2/src/{revwalk.c → libgit2/revwalk.c} +48 -19
- data/vendor/libgit2/src/{revwalk.h → libgit2/revwalk.h} +3 -3
- data/vendor/libgit2/src/{libgit2.c → libgit2/settings.c} +162 -95
- data/vendor/libgit2/src/{settings.h → libgit2/settings.h} +6 -2
- data/vendor/libgit2/src/{signature.c → libgit2/signature.c} +144 -21
- data/vendor/libgit2/src/{signature.h → libgit2/signature.h} +1 -2
- data/vendor/libgit2/src/{stash.c → libgit2/stash.c} +243 -68
- data/vendor/libgit2/src/{status.c → libgit2/status.c} +5 -2
- data/vendor/libgit2/src/{strarray.c → libgit2/strarray.c} +1 -0
- data/vendor/libgit2/src/libgit2/strarray.h +25 -0
- data/vendor/libgit2/src/{streams → libgit2/streams}/mbedtls.c +62 -67
- data/vendor/libgit2/src/{streams → libgit2/streams}/openssl.c +41 -24
- data/vendor/libgit2/src/{streams → libgit2/streams}/openssl.h +2 -0
- data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_dynamic.c +11 -3
- data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_dynamic.h +6 -3
- data/vendor/libgit2/src/libgit2/streams/schannel.c +715 -0
- data/vendor/libgit2/src/libgit2/streams/schannel.h +28 -0
- data/vendor/libgit2/src/libgit2/streams/socket.c +428 -0
- data/vendor/libgit2/src/{streams → libgit2/streams}/socket.h +3 -1
- data/vendor/libgit2/src/{streams → libgit2/streams}/stransport.c +79 -19
- data/vendor/libgit2/src/{streams → libgit2/streams}/tls.c +5 -0
- data/vendor/libgit2/src/{submodule.c → libgit2/submodule.c} +279 -220
- data/vendor/libgit2/src/{submodule.h → libgit2/submodule.h} +10 -11
- data/vendor/libgit2/src/libgit2/sysdir.c +650 -0
- data/vendor/libgit2/src/{sysdir.h → libgit2/sysdir.h} +55 -18
- data/vendor/libgit2/src/{tag.c → libgit2/tag.c} +74 -43
- data/vendor/libgit2/src/{tag.h → libgit2/tag.h} +2 -2
- data/vendor/libgit2/src/{trace.c → libgit2/trace.c} +1 -14
- data/vendor/libgit2/src/{trace.h → libgit2/trace.h} +5 -22
- data/vendor/libgit2/src/{trailer.c → libgit2/trailer.c} +7 -7
- data/vendor/libgit2/src/{transaction.c → libgit2/transaction.c} +27 -21
- data/vendor/libgit2/src/{transaction.h → libgit2/transaction.h} +4 -1
- data/vendor/libgit2/src/{transport.c → libgit2/transport.c} +14 -11
- data/vendor/libgit2/src/{transports → libgit2/transports}/auth.c +7 -9
- data/vendor/libgit2/src/{transports → libgit2/transports}/auth.h +3 -5
- data/vendor/libgit2/src/{transports/auth_negotiate.c → libgit2/transports/auth_gssapi.c} +44 -45
- data/vendor/libgit2/src/{transports → libgit2/transports}/auth_negotiate.h +1 -1
- data/vendor/libgit2/src/{transports → libgit2/transports}/auth_ntlm.h +1 -2
- data/vendor/libgit2/src/{transports/auth_ntlm.c → libgit2/transports/auth_ntlmclient.c} +22 -22
- data/vendor/libgit2/src/libgit2/transports/auth_sspi.c +341 -0
- data/vendor/libgit2/src/{transports → libgit2/transports}/credential.c +1 -1
- data/vendor/libgit2/src/{transports → libgit2/transports}/git.c +16 -19
- data/vendor/libgit2/src/{transports → libgit2/transports}/http.c +49 -24
- data/vendor/libgit2/src/{transports → libgit2/transports}/http.h +0 -11
- data/vendor/libgit2/src/{transports → libgit2/transports}/httpclient.c +188 -134
- data/vendor/libgit2/src/{transports → libgit2/transports}/httpclient.h +10 -0
- data/vendor/libgit2/src/libgit2/transports/httpparser.c +128 -0
- data/vendor/libgit2/src/libgit2/transports/httpparser.h +99 -0
- data/vendor/libgit2/src/{transports → libgit2/transports}/local.c +159 -127
- data/vendor/libgit2/src/{transports → libgit2/transports}/smart.c +142 -165
- data/vendor/libgit2/src/{transports → libgit2/transports}/smart.h +56 -36
- data/vendor/libgit2/src/{transports → libgit2/transports}/smart_pkt.c +307 -74
- data/vendor/libgit2/src/{transports → libgit2/transports}/smart_protocol.c +297 -97
- data/vendor/libgit2/src/libgit2/transports/ssh.c +85 -0
- data/vendor/libgit2/src/libgit2/transports/ssh_exec.c +347 -0
- data/vendor/libgit2/src/libgit2/transports/ssh_exec.h +26 -0
- data/vendor/libgit2/src/{transports/ssh.c → libgit2/transports/ssh_libssh2.c} +414 -268
- data/vendor/libgit2/src/libgit2/transports/ssh_libssh2.h +28 -0
- data/vendor/libgit2/src/{transports → libgit2/transports}/winhttp.c +101 -75
- data/vendor/libgit2/src/{tree-cache.c → libgit2/tree-cache.c} +30 -20
- data/vendor/libgit2/src/{tree-cache.h → libgit2/tree-cache.h} +7 -5
- data/vendor/libgit2/src/{tree.c → libgit2/tree.c} +128 -110
- data/vendor/libgit2/src/{tree.h → libgit2/tree.h} +7 -6
- data/vendor/libgit2/src/{worktree.c → libgit2/worktree.c} +160 -121
- data/vendor/libgit2/src/{worktree.h → libgit2/worktree.h} +1 -1
- data/vendor/libgit2/src/util/CMakeLists.txt +77 -0
- data/vendor/libgit2/src/{alloc.c → util/alloc.c} +69 -7
- data/vendor/libgit2/src/util/alloc.h +65 -0
- data/vendor/libgit2/src/util/allocators/debugalloc.c +73 -0
- data/vendor/libgit2/src/util/allocators/debugalloc.h +17 -0
- data/vendor/libgit2/src/util/allocators/failalloc.c +32 -0
- data/vendor/libgit2/src/util/allocators/failalloc.h +17 -0
- data/vendor/libgit2/src/util/allocators/stdalloc.c +37 -0
- data/vendor/libgit2/src/{allocators → util/allocators}/stdalloc.h +1 -1
- data/vendor/libgit2/src/util/allocators/win32_leakcheck.c +50 -0
- data/vendor/libgit2/src/{allocators → util/allocators}/win32_leakcheck.h +1 -1
- data/vendor/libgit2/src/{array.h → util/array.h} +25 -19
- data/vendor/libgit2/src/{assert_safe.h → util/assert_safe.h} +16 -0
- data/vendor/libgit2/src/{cc-compat.h → util/cc-compat.h} +5 -1
- data/vendor/libgit2/src/util/ctype_compat.h +70 -0
- data/vendor/libgit2/src/{date.c → util/date.c} +35 -33
- data/vendor/libgit2/src/util/date.h +45 -0
- data/vendor/libgit2/src/util/errors.c +401 -0
- data/vendor/libgit2/src/{errors.h → util/errors.h} +22 -19
- data/vendor/libgit2/src/{filebuf.c → util/filebuf.c} +35 -30
- data/vendor/libgit2/src/{filebuf.h → util/filebuf.h} +21 -8
- data/vendor/libgit2/src/{path.c → util/fs_path.c} +591 -615
- data/vendor/libgit2/src/{path.h → util/fs_path.h} +257 -181
- data/vendor/libgit2/src/{futils.c → util/futils.c} +144 -95
- data/vendor/libgit2/src/{futils.h → util/futils.h} +40 -18
- data/vendor/libgit2/src/{features.h.in → util/git2_features.h.in} +33 -2
- data/vendor/libgit2/src/{common.h → util/git2_util.h} +26 -59
- data/vendor/libgit2/src/util/hash/builtin.c +53 -0
- data/vendor/libgit2/src/{hash/sha1/openssl.h → util/hash/builtin.h} +6 -6
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/collisiondetect.c +3 -3
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/collisiondetect.h +3 -3
- data/vendor/libgit2/src/util/hash/common_crypto.c +112 -0
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/common_crypto.h +11 -3
- data/vendor/libgit2/src/util/hash/mbedtls.c +92 -0
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/mbedtls.h +14 -4
- data/vendor/libgit2/src/util/hash/openssl.c +347 -0
- data/vendor/libgit2/src/util/hash/openssl.h +61 -0
- data/vendor/libgit2/src/util/hash/rfc6234/sha.h +243 -0
- data/vendor/libgit2/src/util/hash/rfc6234/sha224-256.c +601 -0
- data/vendor/libgit2/src/util/hash/sha.h +73 -0
- data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/sha1.c +1 -1
- data/vendor/libgit2/src/util/hash/win32.c +549 -0
- data/vendor/libgit2/src/util/hash/win32.h +60 -0
- data/vendor/libgit2/src/util/hash.c +158 -0
- data/vendor/libgit2/src/util/hash.h +61 -0
- data/vendor/libgit2/src/util/hashmap.h +424 -0
- data/vendor/libgit2/src/util/hashmap_str.h +43 -0
- data/vendor/libgit2/src/{integer.h → util/integer.h} +3 -1
- data/vendor/libgit2/src/{map.h → util/map.h} +1 -1
- data/vendor/libgit2/src/util/net.c +1160 -0
- data/vendor/libgit2/src/{net.h → util/net.h} +45 -4
- data/vendor/libgit2/src/{pool.c → util/pool.c} +1 -1
- data/vendor/libgit2/src/{pool.h → util/pool.h} +6 -1
- data/vendor/libgit2/src/{posix.c → util/posix.c} +57 -3
- data/vendor/libgit2/src/{posix.h → util/posix.h} +26 -1
- data/vendor/libgit2/src/{pqueue.h → util/pqueue.h} +3 -3
- data/vendor/libgit2/src/util/process.h +222 -0
- data/vendor/libgit2/src/util/rand.c +230 -0
- data/vendor/libgit2/src/util/rand.h +37 -0
- data/vendor/libgit2/src/{regexp.c → util/regexp.c} +5 -5
- data/vendor/libgit2/src/{regexp.h → util/regexp.h} +1 -1
- data/vendor/libgit2/src/{runtime.c → util/runtime.c} +1 -1
- data/vendor/libgit2/src/{runtime.h → util/runtime.h} +1 -1
- data/vendor/libgit2/src/{sortedcache.c → util/sortedcache.c} +15 -14
- data/vendor/libgit2/src/{sortedcache.h → util/sortedcache.h} +5 -5
- data/vendor/libgit2/src/util/staticstr.h +66 -0
- data/vendor/libgit2/src/{buffer.c → util/str.c} +159 -153
- data/vendor/libgit2/src/util/str.h +357 -0
- data/vendor/libgit2/src/util/strlist.c +108 -0
- data/vendor/libgit2/src/util/strlist.h +36 -0
- data/vendor/libgit2/src/{thread.c → util/thread.c} +1 -1
- data/vendor/libgit2/src/{thread.h → util/thread.h} +23 -22
- data/vendor/libgit2/src/{tsort.c → util/tsort.c} +1 -1
- data/vendor/libgit2/src/{unix → util/unix}/map.c +1 -3
- data/vendor/libgit2/src/{unix → util/unix}/posix.h +1 -6
- data/vendor/libgit2/src/util/unix/process.c +629 -0
- data/vendor/libgit2/src/{unix → util/unix}/realpath.c +24 -8
- data/vendor/libgit2/src/{utf8.c → util/utf8.c} +1 -1
- data/vendor/libgit2/src/{utf8.h → util/utf8.h} +1 -1
- data/vendor/libgit2/src/{util.c → util/util.c} +24 -19
- data/vendor/libgit2/src/{util.h → util/util.h} +30 -81
- data/vendor/libgit2/src/{varint.h → util/varint.h} +1 -1
- data/vendor/libgit2/src/{vector.c → util/vector.c} +3 -3
- data/vendor/libgit2/src/{vector.h → util/vector.h} +4 -4
- data/vendor/libgit2/src/{wildmatch.h → util/wildmatch.h} +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/dir.h +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/error.c +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/error.h +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/map.c +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/path_w32.c +148 -17
- data/vendor/libgit2/src/{win32 → util/win32}/path_w32.h +3 -1
- data/vendor/libgit2/src/{win32 → util/win32}/posix.h +1 -2
- data/vendor/libgit2/src/{win32 → util/win32}/posix_w32.c +42 -35
- data/vendor/libgit2/src/util/win32/precompiled.c +1 -0
- data/vendor/libgit2/src/{win32 → util/win32}/precompiled.h +1 -1
- data/vendor/libgit2/src/util/win32/process.c +506 -0
- data/vendor/libgit2/src/{win32 → util/win32}/thread.h +1 -1
- data/vendor/libgit2/src/util/win32/utf-conv.c +144 -0
- data/vendor/libgit2/src/util/win32/utf-conv.h +127 -0
- data/vendor/libgit2/src/{win32 → util/win32}/w32_buffer.c +2 -3
- data/vendor/libgit2/src/{win32 → util/win32}/w32_buffer.h +3 -4
- data/vendor/libgit2/src/{win32 → util/win32}/w32_leakcheck.c +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/w32_leakcheck.h +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/w32_util.c +1 -1
- data/vendor/libgit2/src/{win32 → util/win32}/w32_util.h +1 -1
- data/vendor/libgit2/src/{zstream.c → util/zstream.c} +5 -5
- data/vendor/libgit2/src/{zstream.h → util/zstream.h} +5 -5
- metadata +431 -362
- data/vendor/libgit2/cmake/FindIconv.cmake +0 -45
- data/vendor/libgit2/deps/http-parser/CMakeLists.txt +0 -6
- data/vendor/libgit2/deps/http-parser/COPYING +0 -23
- data/vendor/libgit2/deps/http-parser/http_parser.c +0 -2182
- data/vendor/libgit2/deps/http-parser/http_parser.h +0 -305
- data/vendor/libgit2/deps/zlib/COPYING +0 -27
- data/vendor/libgit2/include/git2/sys/reflog.h +0 -21
- data/vendor/libgit2/src/alloc.h +0 -40
- data/vendor/libgit2/src/allocators/failalloc.c +0 -92
- data/vendor/libgit2/src/allocators/failalloc.h +0 -23
- data/vendor/libgit2/src/allocators/stdalloc.c +0 -150
- data/vendor/libgit2/src/allocators/win32_leakcheck.c +0 -118
- data/vendor/libgit2/src/buffer.h +0 -374
- data/vendor/libgit2/src/commit.h +0 -46
- data/vendor/libgit2/src/config_entries.c +0 -237
- data/vendor/libgit2/src/config_entries.h +0 -24
- data/vendor/libgit2/src/config_mem.c +0 -220
- data/vendor/libgit2/src/errors.c +0 -238
- data/vendor/libgit2/src/hash/sha1/common_crypto.c +0 -57
- data/vendor/libgit2/src/hash/sha1/generic.c +0 -300
- data/vendor/libgit2/src/hash/sha1/generic.h +0 -19
- data/vendor/libgit2/src/hash/sha1/mbedtls.c +0 -46
- data/vendor/libgit2/src/hash/sha1/openssl.c +0 -59
- data/vendor/libgit2/src/hash/sha1/win32.c +0 -333
- data/vendor/libgit2/src/hash/sha1/win32.h +0 -128
- data/vendor/libgit2/src/hash/sha1.h +0 -38
- data/vendor/libgit2/src/hash.c +0 -110
- data/vendor/libgit2/src/hash.h +0 -46
- data/vendor/libgit2/src/idxmap.c +0 -157
- data/vendor/libgit2/src/idxmap.h +0 -177
- data/vendor/libgit2/src/khash.h +0 -615
- data/vendor/libgit2/src/libgit2.h +0 -15
- data/vendor/libgit2/src/message.h +0 -17
- data/vendor/libgit2/src/net.c +0 -540
- data/vendor/libgit2/src/netops.c +0 -125
- data/vendor/libgit2/src/netops.h +0 -68
- data/vendor/libgit2/src/offmap.c +0 -101
- data/vendor/libgit2/src/offmap.h +0 -133
- data/vendor/libgit2/src/oid.h +0 -51
- data/vendor/libgit2/src/oidarray.c +0 -43
- data/vendor/libgit2/src/oidmap.c +0 -107
- data/vendor/libgit2/src/oidmap.h +0 -128
- data/vendor/libgit2/src/remote.h +0 -55
- data/vendor/libgit2/src/streams/socket.c +0 -239
- data/vendor/libgit2/src/strmap.c +0 -100
- data/vendor/libgit2/src/strmap.h +0 -131
- data/vendor/libgit2/src/sysdir.c +0 -347
- data/vendor/libgit2/src/threadstate.c +0 -84
- data/vendor/libgit2/src/threadstate.h +0 -24
- data/vendor/libgit2/src/win32/findfile.c +0 -230
- data/vendor/libgit2/src/win32/findfile.h +0 -19
- data/vendor/libgit2/src/win32/utf-conv.c +0 -146
- data/vendor/libgit2/src/win32/utf-conv.h +0 -60
- /data/vendor/libgit2/{src → deps}/xdiff/xemit.h +0 -0
- /data/vendor/libgit2/{src → deps}/xdiff/xprepare.h +0 -0
- /data/vendor/libgit2/{src → deps}/xdiff/xtypes.h +0 -0
- /data/vendor/libgit2/src/{win32 → cli/win32}/precompiled.c +0 -0
- /data/vendor/libgit2/src/{attr.h → libgit2/attr.h} +0 -0
- /data/vendor/libgit2/src/{blame_git.h → libgit2/blame_git.h} +0 -0
- /data/vendor/libgit2/src/{config_parse.h → libgit2/config_parse.h} +0 -0
- /data/vendor/libgit2/src/{delta.c → libgit2/delta.c} +0 -0
- /data/vendor/libgit2/src/{delta.h → libgit2/delta.h} +0 -0
- /data/vendor/libgit2/src/{diff_file.h → libgit2/diff_file.h} +0 -0
- /data/vendor/libgit2/src/{diff_parse.h → libgit2/diff_parse.h} +0 -0
- /data/vendor/libgit2/src/{diff_tform.h → libgit2/diff_tform.h} +0 -0
- /data/vendor/libgit2/src/{fetchhead.h → libgit2/fetchhead.h} +0 -0
- /data/vendor/libgit2/src/{hashsig.c → libgit2/hashsig.c} +0 -0
- /data/vendor/libgit2/src/{indexer.h → libgit2/indexer.h} +0 -0
- /data/vendor/libgit2/src/{mailmap.h → libgit2/mailmap.h} +0 -0
- /data/vendor/libgit2/src/{merge_driver.h → libgit2/merge_driver.h} +0 -0
- /data/vendor/libgit2/src/{notes.h → libgit2/notes.h} +0 -0
- /data/vendor/libgit2/src/{object_api.c → libgit2/object_api.c} +0 -0
- /data/vendor/libgit2/src/{patch_parse.h → libgit2/patch_parse.h} +0 -0
- /data/vendor/libgit2/src/{refdb.c → libgit2/refdb.c} +0 -0
- /data/vendor/libgit2/src/{refdb.h → libgit2/refdb.h} +0 -0
- /data/vendor/libgit2/src/{repo_template.h → libgit2/repo_template.h} +0 -0
- /data/vendor/libgit2/src/{status.h → libgit2/status.h} +0 -0
- /data/vendor/libgit2/src/{stream.h → libgit2/stream.h} +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/mbedtls.h +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_legacy.c +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_legacy.h +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/registry.c +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/registry.h +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/stransport.h +0 -0
- /data/vendor/libgit2/src/{streams → libgit2/streams}/tls.h +0 -0
- /data/vendor/libgit2/src/{transports → libgit2/transports}/credential_helpers.c +0 -0
- /data/vendor/libgit2/src/{userdiff.h → libgit2/userdiff.h} +0 -0
- /data/vendor/libgit2/src/{bitvec.h → util/bitvec.h} +0 -0
- /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/sha1.h +0 -0
- /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/ubc_check.c +0 -0
- /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/ubc_check.h +0 -0
- /data/vendor/libgit2/src/{pqueue.c → util/pqueue.c} +0 -0
- /data/vendor/libgit2/src/{strnlen.h → util/strnlen.h} +0 -0
- /data/vendor/libgit2/src/{unix → util/unix}/pthread.h +0 -0
- /data/vendor/libgit2/src/{varint.c → util/varint.c} +0 -0
- /data/vendor/libgit2/src/{wildmatch.c → util/wildmatch.c} +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/dir.c +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/mingw-compat.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/msvc-compat.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/reparse.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/thread.c +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/version.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/w32_common.h +0 -0
- /data/vendor/libgit2/src/{win32 → util/win32}/win32-compat.h +0 -0
@@ -8,19 +8,20 @@
|
|
8
8
|
#include "common.h"
|
9
9
|
|
10
10
|
#include "git2/describe.h"
|
11
|
-
#include "git2/strarray.h"
|
12
11
|
#include "git2/diff.h"
|
13
12
|
#include "git2/status.h"
|
14
13
|
|
14
|
+
#include "buf.h"
|
15
15
|
#include "commit.h"
|
16
16
|
#include "commit_list.h"
|
17
|
-
#include "oidmap.h"
|
18
17
|
#include "refs.h"
|
19
18
|
#include "repository.h"
|
20
19
|
#include "revwalk.h"
|
20
|
+
#include "strarray.h"
|
21
21
|
#include "tag.h"
|
22
22
|
#include "vector.h"
|
23
23
|
#include "wildmatch.h"
|
24
|
+
#include "hashmap_oid.h"
|
24
25
|
|
25
26
|
/* Ported from https://github.com/git/git/blob/89dde7882f71f846ccd0359756d27bebc31108de/builtin/describe.c */
|
26
27
|
|
@@ -31,20 +32,22 @@ struct commit_name {
|
|
31
32
|
git_oid sha1;
|
32
33
|
char *path;
|
33
34
|
|
34
|
-
/*
|
35
|
+
/* The original key for the hashmap */
|
35
36
|
git_oid peeled;
|
36
37
|
};
|
37
38
|
|
38
|
-
|
39
|
-
{
|
40
|
-
return git_oidmap_get(map, key);
|
41
|
-
}
|
39
|
+
GIT_HASHMAP_OID_SETUP(git_describe_oidmap, struct commit_name *);
|
42
40
|
|
43
41
|
static struct commit_name *find_commit_name(
|
44
|
-
|
42
|
+
git_describe_oidmap *names,
|
45
43
|
const git_oid *peeled)
|
46
44
|
{
|
47
|
-
|
45
|
+
struct commit_name *result;
|
46
|
+
|
47
|
+
if (git_describe_oidmap_get(&result, names, peeled) == 0)
|
48
|
+
return result;
|
49
|
+
|
50
|
+
return NULL;
|
48
51
|
}
|
49
52
|
|
50
53
|
static int replace_name(
|
@@ -91,7 +94,7 @@ static int replace_name(
|
|
91
94
|
|
92
95
|
static int add_to_known_names(
|
93
96
|
git_repository *repo,
|
94
|
-
|
97
|
+
git_describe_oidmap *names,
|
95
98
|
const char *path,
|
96
99
|
const git_oid *peeled,
|
97
100
|
unsigned int prio,
|
@@ -120,7 +123,7 @@ static int add_to_known_names(
|
|
120
123
|
e->path = git__strdup(path);
|
121
124
|
git_oid_cpy(&e->peeled, peeled);
|
122
125
|
|
123
|
-
if (!found &&
|
126
|
+
if (!found && git_describe_oidmap_put(names, &e->peeled, e) < 0)
|
124
127
|
return -1;
|
125
128
|
}
|
126
129
|
else
|
@@ -173,7 +176,7 @@ struct get_name_data
|
|
173
176
|
{
|
174
177
|
git_describe_options *opts;
|
175
178
|
git_repository *repo;
|
176
|
-
|
179
|
+
git_describe_oidmap names;
|
177
180
|
git_describe_result *result;
|
178
181
|
};
|
179
182
|
|
@@ -239,7 +242,7 @@ static int get_name(const char *refname, void *payload)
|
|
239
242
|
else
|
240
243
|
prio = 0;
|
241
244
|
|
242
|
-
add_to_known_names(data->repo, data->names,
|
245
|
+
add_to_known_names(data->repo, &data->names,
|
243
246
|
all ? refname + strlen(GIT_REFS_DIR) : refname + strlen(GIT_REFS_TAGS_DIR),
|
244
247
|
&peeled, prio, &sha1);
|
245
248
|
return 0;
|
@@ -322,7 +325,7 @@ static unsigned long finish_depth_computation(
|
|
322
325
|
return seen_commits;
|
323
326
|
}
|
324
327
|
|
325
|
-
static int display_name(
|
328
|
+
static int display_name(git_str *buf, git_repository *repo, struct commit_name *n)
|
326
329
|
{
|
327
330
|
if (n->prio == 2 && !n->tag) {
|
328
331
|
if (git_tag_lookup(&n->tag, repo, &n->sha1) < 0) {
|
@@ -346,9 +349,9 @@ static int display_name(git_buf *buf, git_repository *repo, struct commit_name *
|
|
346
349
|
}
|
347
350
|
|
348
351
|
if (n->tag)
|
349
|
-
|
352
|
+
git_str_printf(buf, "%s", git_tag_name(n->tag));
|
350
353
|
else
|
351
|
-
|
354
|
+
git_str_printf(buf, "%s", n->path);
|
352
355
|
|
353
356
|
return 0;
|
354
357
|
}
|
@@ -362,12 +365,15 @@ static int find_unique_abbrev_size(
|
|
362
365
|
size_t size = abbreviated_size;
|
363
366
|
git_odb *odb;
|
364
367
|
git_oid dummy;
|
368
|
+
size_t hexsize;
|
365
369
|
int error;
|
366
370
|
|
367
371
|
if ((error = git_repository_odb__weakptr(&odb, repo)) < 0)
|
368
372
|
return error;
|
369
373
|
|
370
|
-
|
374
|
+
hexsize = git_oid_hexsize(repo->oid_type);
|
375
|
+
|
376
|
+
while (size < hexsize) {
|
371
377
|
if ((error = git_odb_exists_prefix(&dummy, odb, oid_in, size)) == 0) {
|
372
378
|
*out = (int) size;
|
373
379
|
return 0;
|
@@ -382,13 +388,13 @@ static int find_unique_abbrev_size(
|
|
382
388
|
}
|
383
389
|
|
384
390
|
/* If we didn't find any shorter prefix, we have to do the whole thing */
|
385
|
-
*out =
|
391
|
+
*out = (int)hexsize;
|
386
392
|
|
387
393
|
return 0;
|
388
394
|
}
|
389
395
|
|
390
396
|
static int show_suffix(
|
391
|
-
|
397
|
+
git_str *buf,
|
392
398
|
int depth,
|
393
399
|
git_repository *repo,
|
394
400
|
const git_oid *id,
|
@@ -396,24 +402,24 @@ static int show_suffix(
|
|
396
402
|
{
|
397
403
|
int error, size = 0;
|
398
404
|
|
399
|
-
char hex_oid[
|
405
|
+
char hex_oid[GIT_OID_MAX_HEXSIZE];
|
400
406
|
|
401
407
|
if ((error = find_unique_abbrev_size(&size, repo, id, abbrev_size)) < 0)
|
402
408
|
return error;
|
403
409
|
|
404
410
|
git_oid_fmt(hex_oid, id);
|
405
411
|
|
406
|
-
|
412
|
+
git_str_printf(buf, "-%d-g", depth);
|
407
413
|
|
408
|
-
|
414
|
+
git_str_put(buf, hex_oid, size);
|
409
415
|
|
410
|
-
return
|
416
|
+
return git_str_oom(buf) ? -1 : 0;
|
411
417
|
}
|
412
418
|
|
413
419
|
#define MAX_CANDIDATES_TAGS FLAG_BITS - 1
|
414
420
|
|
415
421
|
static int describe_not_found(const git_oid *oid, const char *message_format) {
|
416
|
-
char oid_str[
|
422
|
+
char oid_str[GIT_OID_MAX_HEXSIZE + 1];
|
417
423
|
git_oid_tostr(oid_str, sizeof(oid_str), oid);
|
418
424
|
|
419
425
|
git_error_set(GIT_ERROR_DESCRIBE, message_format, oid_str);
|
@@ -447,7 +453,7 @@ static int describe(
|
|
447
453
|
|
448
454
|
git_oid_cpy(&data->result->commit_id, git_commit_id(commit));
|
449
455
|
|
450
|
-
n = find_commit_name(data->names, git_commit_id(commit));
|
456
|
+
n = find_commit_name(&data->names, git_commit_id(commit));
|
451
457
|
if (n && (tags || all || n->prio == 2)) {
|
452
458
|
/*
|
453
459
|
* Exact match to an existing ref.
|
@@ -488,7 +494,7 @@ static int describe(
|
|
488
494
|
git_commit_list_node *c = (git_commit_list_node *)git_pqueue_pop(&list);
|
489
495
|
seen_commits++;
|
490
496
|
|
491
|
-
n = find_commit_name(data->names, &c->oid);
|
497
|
+
n = find_commit_name(&data->names, &c->oid);
|
492
498
|
|
493
499
|
if (n) {
|
494
500
|
if (!tags && !all && n->prio < 2) {
|
@@ -524,7 +530,7 @@ static int describe(
|
|
524
530
|
if (annotated_cnt && (git_pqueue_size(&list) == 0)) {
|
525
531
|
/*
|
526
532
|
if (debug) {
|
527
|
-
char oid_str[
|
533
|
+
char oid_str[GIT_OID_MAX_HEXSIZE + 1];
|
528
534
|
git_oid_tostr(oid_str, sizeof(oid_str), &c->oid);
|
529
535
|
|
530
536
|
fprintf(stderr, "finished search at %s\n", oid_str);
|
@@ -591,7 +597,7 @@ static int describe(
|
|
591
597
|
"head", "lightweight", "annotated",
|
592
598
|
};
|
593
599
|
|
594
|
-
char oid_str[
|
600
|
+
char oid_str[GIT_OID_MAX_HEXSIZE + 1];
|
595
601
|
|
596
602
|
if (debug) {
|
597
603
|
for (cur_match = 0; cur_match < match_cnt; cur_match++) {
|
@@ -623,7 +629,7 @@ cleanup:
|
|
623
629
|
git__free(match);
|
624
630
|
}
|
625
631
|
}
|
626
|
-
|
632
|
+
git_vector_dispose(&all_matches);
|
627
633
|
git_pqueue_free(&list);
|
628
634
|
git_revwalk_free(walk);
|
629
635
|
return error;
|
@@ -649,11 +655,12 @@ int git_describe_commit(
|
|
649
655
|
git_object *committish,
|
650
656
|
git_describe_options *opts)
|
651
657
|
{
|
652
|
-
struct get_name_data data;
|
658
|
+
struct get_name_data data = {0};
|
653
659
|
struct commit_name *name;
|
654
660
|
git_commit *commit;
|
655
|
-
int error = -1;
|
656
661
|
git_describe_options normalized;
|
662
|
+
git_hashmap_iter_t iter = GIT_HASHMAP_INIT;
|
663
|
+
int error = -1;
|
657
664
|
|
658
665
|
GIT_ASSERT_ARG(result);
|
659
666
|
GIT_ASSERT_ARG(committish);
|
@@ -673,9 +680,6 @@ int git_describe_commit(
|
|
673
680
|
"git_describe_options");
|
674
681
|
data.opts = &normalized;
|
675
682
|
|
676
|
-
if ((error = git_oidmap_new(&data.names)) < 0)
|
677
|
-
return error;
|
678
|
-
|
679
683
|
/** TODO: contains to be implemented */
|
680
684
|
|
681
685
|
if ((error = git_object_peel((git_object **)(&commit), committish, GIT_OBJECT_COMMIT)) < 0)
|
@@ -686,7 +690,7 @@ int git_describe_commit(
|
|
686
690
|
get_name, &data)) < 0)
|
687
691
|
goto cleanup;
|
688
692
|
|
689
|
-
if (
|
693
|
+
if (git_describe_oidmap_size(&data.names) == 0 && !normalized.show_commit_oid_as_fallback) {
|
690
694
|
git_error_set(GIT_ERROR_DESCRIBE, "cannot describe - "
|
691
695
|
"no reference found, cannot describe anything.");
|
692
696
|
error = -1;
|
@@ -699,13 +703,13 @@ int git_describe_commit(
|
|
699
703
|
cleanup:
|
700
704
|
git_commit_free(commit);
|
701
705
|
|
702
|
-
|
706
|
+
while (git_describe_oidmap_iterate(&iter, NULL, &name, &data.names) == 0) {
|
703
707
|
git_tag_free(name->tag);
|
704
708
|
git__free(name->path);
|
705
709
|
git__free(name);
|
706
|
-
}
|
710
|
+
}
|
707
711
|
|
708
|
-
|
712
|
+
git_describe_oidmap_dispose(&data.names);
|
709
713
|
|
710
714
|
if (error < 0)
|
711
715
|
git_describe_result_free(data.result);
|
@@ -769,7 +773,10 @@ static int normalize_format_options(
|
|
769
773
|
return 0;
|
770
774
|
}
|
771
775
|
|
772
|
-
int
|
776
|
+
static int git_describe__format(
|
777
|
+
git_str *out,
|
778
|
+
const git_describe_result *result,
|
779
|
+
const git_describe_format_options *given)
|
773
780
|
{
|
774
781
|
int error;
|
775
782
|
git_repository *repo;
|
@@ -782,10 +789,6 @@ int git_describe_format(git_buf *out, const git_describe_result *result, const g
|
|
782
789
|
GIT_ERROR_CHECK_VERSION(given, GIT_DESCRIBE_FORMAT_OPTIONS_VERSION, "git_describe_format_options");
|
783
790
|
normalize_format_options(&opts, given);
|
784
791
|
|
785
|
-
if ((error = git_buf_sanitize(out)) < 0)
|
786
|
-
return error;
|
787
|
-
|
788
|
-
|
789
792
|
if (opts.always_use_long_format && opts.abbreviated_size == 0) {
|
790
793
|
git_error_set(GIT_ERROR_DESCRIBE, "cannot describe - "
|
791
794
|
"'always_use_long_format' is incompatible with a zero"
|
@@ -809,14 +812,14 @@ int git_describe_format(git_buf *out, const git_describe_result *result, const g
|
|
809
812
|
}
|
810
813
|
|
811
814
|
if (result->dirty && opts.dirty_suffix)
|
812
|
-
|
815
|
+
git_str_puts(out, opts.dirty_suffix);
|
813
816
|
|
814
|
-
return
|
817
|
+
return git_str_oom(out) ? -1 : 0;
|
815
818
|
}
|
816
819
|
|
817
820
|
/* If we didn't find *any* tags, we fall back to the commit's id */
|
818
821
|
if (result->fallback_to_id) {
|
819
|
-
char hex_oid[
|
822
|
+
char hex_oid[GIT_OID_MAX_HEXSIZE + 1] = {0};
|
820
823
|
int size = 0;
|
821
824
|
|
822
825
|
if ((error = find_unique_abbrev_size(
|
@@ -824,12 +827,12 @@ int git_describe_format(git_buf *out, const git_describe_result *result, const g
|
|
824
827
|
return -1;
|
825
828
|
|
826
829
|
git_oid_fmt(hex_oid, &result->commit_id);
|
827
|
-
|
830
|
+
git_str_put(out, hex_oid, size);
|
828
831
|
|
829
832
|
if (result->dirty && opts.dirty_suffix)
|
830
|
-
|
833
|
+
git_str_puts(out, opts.dirty_suffix);
|
831
834
|
|
832
|
-
return
|
835
|
+
return git_str_oom(out) ? -1 : 0;
|
833
836
|
}
|
834
837
|
|
835
838
|
/* Lastly, if we found a matching tag, we show that */
|
@@ -845,10 +848,18 @@ int git_describe_format(git_buf *out, const git_describe_result *result, const g
|
|
845
848
|
}
|
846
849
|
|
847
850
|
if (result->dirty && opts.dirty_suffix) {
|
848
|
-
|
851
|
+
git_str_puts(out, opts.dirty_suffix);
|
849
852
|
}
|
850
853
|
|
851
|
-
return
|
854
|
+
return git_str_oom(out) ? -1 : 0;
|
855
|
+
}
|
856
|
+
|
857
|
+
int git_describe_format(
|
858
|
+
git_buf *out,
|
859
|
+
const git_describe_result *result,
|
860
|
+
const git_describe_format_options *given)
|
861
|
+
{
|
862
|
+
GIT_BUF_WRAP_PRIVATE(out, git_describe__format, result, given);
|
852
863
|
}
|
853
864
|
|
854
865
|
void git_describe_result_free(git_describe_result *result)
|
@@ -8,6 +8,7 @@
|
|
8
8
|
#include "diff.h"
|
9
9
|
|
10
10
|
#include "common.h"
|
11
|
+
#include "buf.h"
|
11
12
|
#include "patch.h"
|
12
13
|
#include "email.h"
|
13
14
|
#include "commit.h"
|
@@ -15,11 +16,13 @@
|
|
15
16
|
#include "diff_generate.h"
|
16
17
|
|
17
18
|
#include "git2/version.h"
|
18
|
-
#include "git2/email.h"
|
19
|
+
#include "git2/sys/email.h"
|
19
20
|
|
20
21
|
struct patch_id_args {
|
22
|
+
git_diff *diff;
|
21
23
|
git_hash_ctx ctx;
|
22
24
|
git_oid result;
|
25
|
+
git_oid_t oid_type;
|
23
26
|
int first_file;
|
24
27
|
};
|
25
28
|
|
@@ -162,6 +165,7 @@ int git_diff_format_email(
|
|
162
165
|
const git_diff_format_email_options *opts)
|
163
166
|
{
|
164
167
|
git_email_create_options email_create_opts = GIT_EMAIL_CREATE_OPTIONS_INIT;
|
168
|
+
git_str email = GIT_STR_INIT;
|
165
169
|
int error;
|
166
170
|
|
167
171
|
GIT_ASSERT_ARG(out);
|
@@ -172,14 +176,29 @@ int git_diff_format_email(
|
|
172
176
|
GIT_DIFF_FORMAT_EMAIL_OPTIONS_VERSION,
|
173
177
|
"git_format_email_options");
|
174
178
|
|
179
|
+
/* This is a `git_buf` special case; subsequent calls append. */
|
180
|
+
email.ptr = out->ptr;
|
181
|
+
email.asize = out->reserved;
|
182
|
+
email.size = out->size;
|
183
|
+
|
184
|
+
out->ptr = git_str__initstr;
|
185
|
+
out->reserved = 0;
|
186
|
+
out->size = 0;
|
187
|
+
|
175
188
|
if ((opts->flags & GIT_DIFF_FORMAT_EMAIL_EXCLUDE_SUBJECT_PATCH_MARKER) != 0)
|
176
189
|
email_create_opts.subject_prefix = "";
|
177
190
|
|
178
|
-
|
179
|
-
error = git_email__append_from_diff(out, diff, opts->patch_no,
|
191
|
+
error = git_email__append_from_diff(&email, diff, opts->patch_no,
|
180
192
|
opts->total_patches, opts->id, opts->summary, opts->body,
|
181
193
|
opts->author, &email_create_opts);
|
182
194
|
|
195
|
+
if (error < 0)
|
196
|
+
goto done;
|
197
|
+
|
198
|
+
error = git_buf_fromstr(out, &email);
|
199
|
+
|
200
|
+
done:
|
201
|
+
git_str_dispose(&email);
|
183
202
|
return error;
|
184
203
|
}
|
185
204
|
|
@@ -263,17 +282,19 @@ int git_diff_find_options_init(
|
|
263
282
|
return 0;
|
264
283
|
}
|
265
284
|
|
266
|
-
static int flush_hunk(git_oid *result,
|
285
|
+
static int flush_hunk(git_oid *result, struct patch_id_args *args)
|
267
286
|
{
|
287
|
+
git_hash_ctx *ctx = &args->ctx;
|
268
288
|
git_oid hash;
|
269
289
|
unsigned short carry = 0;
|
270
|
-
|
290
|
+
size_t i;
|
291
|
+
int error;
|
271
292
|
|
272
|
-
if ((error = git_hash_final(
|
293
|
+
if ((error = git_hash_final(hash.id, ctx)) < 0 ||
|
273
294
|
(error = git_hash_init(ctx)) < 0)
|
274
295
|
return error;
|
275
296
|
|
276
|
-
for (i = 0; i <
|
297
|
+
for (i = 0; i < git_oid_size(args->oid_type); i++) {
|
277
298
|
carry += result->id[i] + hash.id[i];
|
278
299
|
result->id[i] = (unsigned char)carry;
|
279
300
|
carry >>= 8;
|
@@ -282,7 +303,7 @@ static int flush_hunk(git_oid *result, git_hash_ctx *ctx)
|
|
282
303
|
return 0;
|
283
304
|
}
|
284
305
|
|
285
|
-
static void strip_spaces(
|
306
|
+
static void strip_spaces(git_str *buf)
|
286
307
|
{
|
287
308
|
char *src = buf->ptr, *dst = buf->ptr;
|
288
309
|
char c;
|
@@ -295,7 +316,7 @@ static void strip_spaces(git_buf *buf)
|
|
295
316
|
}
|
296
317
|
}
|
297
318
|
|
298
|
-
|
319
|
+
git_str_truncate(buf, len);
|
299
320
|
}
|
300
321
|
|
301
322
|
static int diff_patchid_print_callback_to_buf(
|
@@ -305,7 +326,7 @@ static int diff_patchid_print_callback_to_buf(
|
|
305
326
|
void *payload)
|
306
327
|
{
|
307
328
|
struct patch_id_args *args = (struct patch_id_args *) payload;
|
308
|
-
|
329
|
+
git_str buf = GIT_STR_INIT;
|
309
330
|
int error = 0;
|
310
331
|
|
311
332
|
if (line->origin == GIT_DIFF_LINE_CONTEXT_EOFNL ||
|
@@ -321,7 +342,7 @@ static int diff_patchid_print_callback_to_buf(
|
|
321
342
|
|
322
343
|
if (line->origin == GIT_DIFF_LINE_FILE_HDR &&
|
323
344
|
!args->first_file &&
|
324
|
-
(error = flush_hunk(&args->result,
|
345
|
+
(error = flush_hunk(&args->result, args) < 0))
|
325
346
|
goto out;
|
326
347
|
|
327
348
|
if ((error = git_hash_update(&args->ctx, buf.ptr, buf.size)) < 0)
|
@@ -331,7 +352,7 @@ static int diff_patchid_print_callback_to_buf(
|
|
331
352
|
args->first_file = 0;
|
332
353
|
|
333
354
|
out:
|
334
|
-
|
355
|
+
git_str_dispose(&buf);
|
335
356
|
return error;
|
336
357
|
}
|
337
358
|
|
@@ -345,14 +366,19 @@ int git_diff_patchid_options_init(git_diff_patchid_options *opts, unsigned int v
|
|
345
366
|
int git_diff_patchid(git_oid *out, git_diff *diff, git_diff_patchid_options *opts)
|
346
367
|
{
|
347
368
|
struct patch_id_args args;
|
369
|
+
git_hash_algorithm_t algorithm;
|
348
370
|
int error;
|
349
371
|
|
350
372
|
GIT_ERROR_CHECK_VERSION(
|
351
373
|
opts, GIT_DIFF_PATCHID_OPTIONS_VERSION, "git_diff_patchid_options");
|
352
374
|
|
375
|
+
algorithm = git_oid_algorithm(diff->opts.oid_type);
|
376
|
+
|
353
377
|
memset(&args, 0, sizeof(args));
|
378
|
+
args.diff = diff;
|
354
379
|
args.first_file = 1;
|
355
|
-
|
380
|
+
args.oid_type = diff->opts.oid_type;
|
381
|
+
if ((error = git_hash_ctx_init(&args.ctx, algorithm)) < 0)
|
356
382
|
goto out;
|
357
383
|
|
358
384
|
if ((error = git_diff_print(diff,
|
@@ -361,9 +387,13 @@ int git_diff_patchid(git_oid *out, git_diff *diff, git_diff_patchid_options *opt
|
|
361
387
|
&args)) < 0)
|
362
388
|
goto out;
|
363
389
|
|
364
|
-
if ((error = (flush_hunk(&args.result, &args
|
390
|
+
if ((error = (flush_hunk(&args.result, &args))) < 0)
|
365
391
|
goto out;
|
366
392
|
|
393
|
+
#ifdef GIT_EXPERIMENTAL_SHA256
|
394
|
+
args.result.type = diff->opts.oid_type;
|
395
|
+
#endif
|
396
|
+
|
367
397
|
git_oid_cpy(out, &args.result);
|
368
398
|
|
369
399
|
out:
|
@@ -14,9 +14,7 @@
|
|
14
14
|
#include "git2/sys/diff.h"
|
15
15
|
#include "git2/oid.h"
|
16
16
|
|
17
|
-
#include <stdio.h>
|
18
17
|
#include "vector.h"
|
19
|
-
#include "buffer.h"
|
20
18
|
#include "iterator.h"
|
21
19
|
#include "repository.h"
|
22
20
|
#include "pool.h"
|
@@ -28,19 +26,19 @@
|
|
28
26
|
typedef enum {
|
29
27
|
GIT_DIFF_TYPE_UNKNOWN = 0,
|
30
28
|
GIT_DIFF_TYPE_GENERATED = 1,
|
31
|
-
GIT_DIFF_TYPE_PARSED = 2
|
29
|
+
GIT_DIFF_TYPE_PARSED = 2
|
32
30
|
} git_diff_origin_t;
|
33
31
|
|
34
32
|
struct git_diff {
|
35
|
-
git_refcount
|
33
|
+
git_refcount rc;
|
36
34
|
git_repository *repo;
|
37
|
-
git_attr_session
|
35
|
+
git_attr_session attrsession;
|
38
36
|
git_diff_origin_t type;
|
39
|
-
git_diff_options
|
40
|
-
git_vector
|
37
|
+
git_diff_options opts;
|
38
|
+
git_vector deltas; /* vector of git_diff_delta */
|
41
39
|
git_pool pool;
|
42
|
-
git_iterator_t
|
43
|
-
git_iterator_t
|
40
|
+
git_iterator_t old_src;
|
41
|
+
git_iterator_t new_src;
|
44
42
|
git_diff_perfdata perf;
|
45
43
|
|
46
44
|
int (*strcomp)(const char *, const char *);
|
@@ -53,7 +51,7 @@ struct git_diff {
|
|
53
51
|
};
|
54
52
|
|
55
53
|
extern int git_diff_delta__format_file_header(
|
56
|
-
|
54
|
+
git_str *out,
|
57
55
|
const git_diff_delta *delta,
|
58
56
|
const char *oldpfx,
|
59
57
|
const char *newpfx,
|