rugged 1.7.2 → 1.9.4
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/ext/rugged/extconf.rb +4 -4
- data/ext/rugged/rugged.c +12 -1
- data/ext/rugged/rugged_blame.c +22 -6
- data/ext/rugged/rugged_blob.c +24 -9
- data/ext/rugged/rugged_branch.c +10 -7
- data/ext/rugged/rugged_branch_collection.c +8 -6
- data/ext/rugged/rugged_commit.c +7 -6
- data/ext/rugged/rugged_config.c +20 -11
- data/ext/rugged/rugged_diff.c +26 -12
- data/ext/rugged/rugged_diff_hunk.c +2 -1
- data/ext/rugged/rugged_index.c +39 -29
- data/ext/rugged/rugged_note.c +7 -6
- data/ext/rugged/rugged_object.c +3 -2
- data/ext/rugged/rugged_patch.c +23 -9
- data/ext/rugged/rugged_rebase.c +22 -10
- data/ext/rugged/rugged_reference.c +22 -13
- data/ext/rugged/rugged_reference_collection.c +9 -7
- data/ext/rugged/rugged_remote.c +23 -12
- data/ext/rugged/rugged_remote_collection.c +11 -9
- data/ext/rugged/rugged_repo.c +60 -45
- data/ext/rugged/rugged_revwalk.c +22 -12
- data/ext/rugged/rugged_submodule.c +23 -20
- data/ext/rugged/rugged_submodule_collection.c +20 -9
- data/ext/rugged/rugged_tag.c +6 -4
- data/ext/rugged/rugged_tag_collection.c +7 -5
- data/ext/rugged/rugged_tree.c +27 -15
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/AUTHORS +3 -0
- data/vendor/libgit2/CMakeLists.txt +23 -10
- data/vendor/libgit2/COPYING +195 -1
- data/vendor/libgit2/cmake/DefaultCFlags.cmake +4 -1
- data/vendor/libgit2/cmake/{FindIconv.cmake → FindIntlIconv.cmake} +6 -0
- data/vendor/libgit2/cmake/FindLLHTTP.cmake +39 -0
- data/vendor/libgit2/cmake/SelectGSSAPI.cmake +1 -1
- data/vendor/libgit2/cmake/SelectHTTPParser.cmake +23 -8
- data/vendor/libgit2/cmake/SelectHTTPSBackend.cmake +17 -8
- data/vendor/libgit2/cmake/SelectHashes.cmake +28 -11
- data/vendor/libgit2/cmake/SelectRegex.cmake +6 -1
- data/vendor/libgit2/cmake/SelectSSH.cmake +30 -19
- data/vendor/libgit2/cmake/SelectZlib.cmake +4 -0
- 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 +1 -1
- 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 +4 -4
- data/vendor/libgit2/deps/ntlmclient/ntlm.c +21 -21
- 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 +3 -3
- data/vendor/libgit2/deps/xdiff/CMakeLists.txt +1 -1
- data/vendor/libgit2/deps/xdiff/xmerge.c +16 -12
- data/vendor/libgit2/deps/zlib/CMakeLists.txt +6 -1
- data/vendor/libgit2/deps/zlib/LICENSE +22 -0
- data/vendor/libgit2/deps/zlib/adler32.c +5 -27
- data/vendor/libgit2/deps/zlib/crc32.c +94 -167
- data/vendor/libgit2/deps/zlib/deflate.c +358 -435
- data/vendor/libgit2/deps/zlib/deflate.h +41 -10
- data/vendor/libgit2/deps/zlib/gzguts.h +13 -18
- data/vendor/libgit2/deps/zlib/infback.c +17 -30
- data/vendor/libgit2/deps/zlib/inffast.c +1 -4
- data/vendor/libgit2/deps/zlib/inffast.h +1 -1
- data/vendor/libgit2/deps/zlib/inflate.c +36 -102
- 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 +287 -352
- data/vendor/libgit2/deps/zlib/zconf.h +23 -14
- data/vendor/libgit2/deps/zlib/zlib.h +202 -202
- data/vendor/libgit2/deps/zlib/zutil.c +18 -44
- data/vendor/libgit2/deps/zlib/zutil.h +13 -33
- data/vendor/libgit2/include/git2/annotated_commit.h +12 -5
- data/vendor/libgit2/include/git2/apply.h +27 -6
- data/vendor/libgit2/include/git2/attr.h +17 -4
- data/vendor/libgit2/include/git2/blame.h +133 -28
- data/vendor/libgit2/include/git2/blob.h +71 -28
- data/vendor/libgit2/include/git2/branch.h +22 -15
- data/vendor/libgit2/include/git2/buffer.h +6 -4
- data/vendor/libgit2/include/git2/cert.h +2 -1
- data/vendor/libgit2/include/git2/checkout.h +83 -32
- data/vendor/libgit2/include/git2/cherrypick.h +10 -3
- data/vendor/libgit2/include/git2/clone.h +25 -9
- data/vendor/libgit2/include/git2/commit.h +132 -3
- data/vendor/libgit2/include/git2/common.h +120 -63
- data/vendor/libgit2/include/git2/config.h +93 -23
- data/vendor/libgit2/include/git2/credential.h +30 -2
- data/vendor/libgit2/include/git2/credential_helpers.h +1 -0
- data/vendor/libgit2/include/git2/deprecated.h +134 -4
- data/vendor/libgit2/include/git2/describe.h +13 -1
- data/vendor/libgit2/include/git2/diff.h +38 -8
- data/vendor/libgit2/include/git2/email.h +9 -29
- data/vendor/libgit2/include/git2/errors.h +46 -73
- data/vendor/libgit2/include/git2/filter.h +14 -7
- data/vendor/libgit2/include/git2/global.h +8 -1
- data/vendor/libgit2/include/git2/graph.h +3 -2
- data/vendor/libgit2/include/git2/ignore.h +10 -0
- data/vendor/libgit2/include/git2/index.h +100 -15
- data/vendor/libgit2/include/git2/indexer.h +21 -4
- data/vendor/libgit2/include/git2/mailmap.h +7 -1
- data/vendor/libgit2/include/git2/merge.h +50 -3
- data/vendor/libgit2/include/git2/message.h +2 -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 +9 -8
- data/vendor/libgit2/include/git2/odb.h +91 -49
- data/vendor/libgit2/include/git2/odb_backend.h +80 -52
- data/vendor/libgit2/include/git2/oid.h +23 -25
- data/vendor/libgit2/include/git2/oidarray.h +7 -1
- data/vendor/libgit2/include/git2/pack.h +13 -1
- data/vendor/libgit2/include/git2/patch.h +2 -3
- data/vendor/libgit2/include/git2/pathspec.h +9 -0
- data/vendor/libgit2/include/git2/proxy.h +12 -3
- data/vendor/libgit2/include/git2/rebase.h +9 -6
- data/vendor/libgit2/include/git2/refdb.h +2 -2
- data/vendor/libgit2/include/git2/reflog.h +3 -2
- data/vendor/libgit2/include/git2/refs.h +9 -6
- data/vendor/libgit2/include/git2/refspec.h +14 -4
- data/vendor/libgit2/include/git2/remote.h +113 -25
- data/vendor/libgit2/include/git2/repository.h +57 -21
- data/vendor/libgit2/include/git2/reset.h +16 -3
- data/vendor/libgit2/include/git2/revert.h +9 -4
- data/vendor/libgit2/include/git2/revparse.h +3 -3
- data/vendor/libgit2/include/git2/revwalk.h +3 -2
- data/vendor/libgit2/include/git2/signature.h +46 -1
- data/vendor/libgit2/include/git2/stash.h +17 -3
- data/vendor/libgit2/include/git2/status.h +10 -6
- data/vendor/libgit2/include/git2/stdint.h +87 -85
- data/vendor/libgit2/include/git2/strarray.h +2 -3
- data/vendor/libgit2/include/git2/submodule.h +20 -9
- data/vendor/libgit2/include/git2/sys/alloc.h +12 -0
- data/vendor/libgit2/include/git2/sys/commit.h +77 -3
- data/vendor/libgit2/include/git2/sys/commit_graph.h +103 -62
- 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 +43 -4
- data/vendor/libgit2/include/git2/sys/odb_backend.h +7 -3
- 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 +8 -1
- data/vendor/libgit2/include/git2/sys/repository.h +63 -3
- data/vendor/libgit2/include/git2/sys/stream.h +11 -2
- data/vendor/libgit2/include/git2/sys/transport.h +25 -4
- data/vendor/libgit2/include/git2/tag.h +3 -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 +16 -5
- data/vendor/libgit2/include/git2/types.h +19 -3
- data/vendor/libgit2/include/git2/version.h +46 -8
- data/vendor/libgit2/include/git2/worktree.h +16 -6
- data/vendor/libgit2/src/CMakeLists.txt +6 -4
- data/vendor/libgit2/src/cli/CMakeLists.txt +3 -4
- data/vendor/libgit2/src/cli/cmd.c +1 -1
- data/vendor/libgit2/src/cli/cmd.h +4 -0
- data/vendor/libgit2/src/cli/cmd_blame.c +287 -0
- data/vendor/libgit2/src/cli/cmd_cat_file.c +6 -8
- data/vendor/libgit2/src/cli/cmd_clone.c +5 -7
- data/vendor/libgit2/src/cli/cmd_config.c +241 -0
- data/vendor/libgit2/src/cli/cmd_hash_object.c +6 -8
- data/vendor/libgit2/src/cli/cmd_help.c +6 -7
- 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 +1 -1
- data/vendor/libgit2/src/cli/main.c +52 -24
- data/vendor/libgit2/src/cli/opt.c +31 -5
- data/vendor/libgit2/src/cli/opt.h +21 -3
- data/vendor/libgit2/src/cli/opt_usage.c +102 -33
- data/vendor/libgit2/src/cli/opt_usage.h +6 -1
- data/vendor/libgit2/src/cli/progress.c +51 -2
- data/vendor/libgit2/src/cli/progress.h +12 -0
- data/vendor/libgit2/src/cli/unix/sighandler.c +2 -1
- data/vendor/libgit2/src/cli/win32/precompiled.h +1 -1
- data/vendor/libgit2/src/cli/win32/sighandler.c +1 -1
- data/vendor/libgit2/src/libgit2/CMakeLists.txt +55 -21
- data/vendor/libgit2/src/libgit2/apply.c +10 -13
- data/vendor/libgit2/src/libgit2/attr.c +30 -13
- data/vendor/libgit2/src/libgit2/attr_file.c +17 -5
- data/vendor/libgit2/src/libgit2/attr_file.h +2 -0
- data/vendor/libgit2/src/libgit2/attrcache.c +69 -33
- data/vendor/libgit2/src/libgit2/attrcache.h +5 -9
- data/vendor/libgit2/src/libgit2/blame.c +130 -44
- data/vendor/libgit2/src/libgit2/blame.h +1 -0
- data/vendor/libgit2/src/libgit2/cache.c +22 -17
- data/vendor/libgit2/src/libgit2/cache.h +7 -9
- data/vendor/libgit2/src/libgit2/checkout.c +34 -24
- data/vendor/libgit2/src/libgit2/checkout.h +0 -2
- data/vendor/libgit2/src/libgit2/cherrypick.c +1 -2
- data/vendor/libgit2/src/libgit2/clone.c +192 -166
- data/vendor/libgit2/src/libgit2/clone.h +4 -1
- data/vendor/libgit2/src/libgit2/commit.c +93 -1
- data/vendor/libgit2/src/libgit2/commit_graph.c +68 -58
- data/vendor/libgit2/src/libgit2/commit_graph.h +1 -2
- data/vendor/libgit2/src/libgit2/config.c +390 -299
- data/vendor/libgit2/src/libgit2/config.cmake.in +3 -0
- data/vendor/libgit2/src/libgit2/config.h +9 -4
- data/vendor/libgit2/src/libgit2/config_backend.h +8 -10
- data/vendor/libgit2/src/libgit2/config_cache.c +4 -5
- data/vendor/libgit2/src/libgit2/config_file.c +101 -89
- 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 +195 -40
- data/vendor/libgit2/src/libgit2/config_parse.c +12 -10
- data/vendor/libgit2/src/libgit2/config_snapshot.c +24 -31
- data/vendor/libgit2/src/libgit2/delta.c +5 -1
- data/vendor/libgit2/src/libgit2/describe.c +24 -24
- data/vendor/libgit2/src/libgit2/diff.c +1 -1
- data/vendor/libgit2/src/libgit2/diff_driver.c +13 -20
- data/vendor/libgit2/src/libgit2/diff_driver.h +2 -2
- data/vendor/libgit2/src/libgit2/diff_generate.c +3 -3
- data/vendor/libgit2/src/libgit2/diff_parse.c +2 -2
- data/vendor/libgit2/src/libgit2/diff_print.c +65 -9
- data/vendor/libgit2/src/libgit2/diff_stats.c +19 -12
- data/vendor/libgit2/src/libgit2/diff_tform.c +36 -8
- data/vendor/libgit2/src/libgit2/email.c +1 -0
- data/vendor/libgit2/src/libgit2/fetch.c +5 -3
- data/vendor/libgit2/src/libgit2/fetchhead.c +1 -1
- data/vendor/libgit2/src/libgit2/filter.c +5 -5
- data/vendor/libgit2/src/libgit2/git2.rc +3 -3
- data/vendor/libgit2/src/libgit2/grafts.c +18 -20
- data/vendor/libgit2/src/libgit2/grafts.h +0 -1
- data/vendor/libgit2/src/libgit2/graph.c +1 -1
- data/vendor/libgit2/src/libgit2/hashmap_oid.h +30 -0
- data/vendor/libgit2/src/libgit2/ignore.c +9 -5
- data/vendor/libgit2/src/libgit2/index.c +76 -98
- data/vendor/libgit2/src/libgit2/index.h +5 -2
- data/vendor/libgit2/src/libgit2/index_map.c +95 -0
- data/vendor/libgit2/src/libgit2/index_map.h +28 -0
- data/vendor/libgit2/src/libgit2/indexer.c +36 -40
- data/vendor/libgit2/src/libgit2/iterator.c +14 -8
- data/vendor/libgit2/src/libgit2/libgit2.c +153 -368
- data/vendor/libgit2/src/libgit2/mailmap.c +1 -1
- data/vendor/libgit2/src/libgit2/merge.c +43 -38
- data/vendor/libgit2/src/libgit2/merge.h +4 -0
- data/vendor/libgit2/src/libgit2/merge_driver.c +2 -2
- data/vendor/libgit2/src/libgit2/merge_file.c +43 -30
- data/vendor/libgit2/src/libgit2/message.c +1 -1
- data/vendor/libgit2/src/libgit2/midx.c +30 -18
- data/vendor/libgit2/src/libgit2/mwindow.c +38 -45
- data/vendor/libgit2/src/libgit2/mwindow.h +4 -0
- data/vendor/libgit2/src/libgit2/object.c +6 -5
- data/vendor/libgit2/src/libgit2/odb.c +7 -10
- data/vendor/libgit2/src/libgit2/odb_loose.c +24 -14
- data/vendor/libgit2/src/libgit2/odb_mempack.c +49 -17
- data/vendor/libgit2/src/libgit2/odb_pack.c +13 -5
- data/vendor/libgit2/src/libgit2/oid.c +36 -10
- data/vendor/libgit2/src/libgit2/oid.h +11 -0
- data/vendor/libgit2/src/libgit2/pack-objects.c +59 -34
- data/vendor/libgit2/src/libgit2/pack-objects.h +12 -4
- data/vendor/libgit2/src/libgit2/pack.c +33 -24
- data/vendor/libgit2/src/libgit2/pack.h +15 -10
- data/vendor/libgit2/src/libgit2/patch_parse.c +2 -2
- data/vendor/libgit2/src/libgit2/path.c +1 -1
- data/vendor/libgit2/src/libgit2/pathspec.c +1 -1
- data/vendor/libgit2/src/libgit2/push.c +79 -28
- data/vendor/libgit2/src/libgit2/push.h +1 -0
- data/vendor/libgit2/src/libgit2/refdb_fs.c +128 -61
- data/vendor/libgit2/src/libgit2/reflog.c +1 -2
- data/vendor/libgit2/src/libgit2/reflog.h +2 -0
- data/vendor/libgit2/src/libgit2/refs.c +41 -13
- data/vendor/libgit2/src/libgit2/refs.h +6 -1
- data/vendor/libgit2/src/libgit2/refspec.c +28 -1
- data/vendor/libgit2/src/libgit2/refspec.h +8 -0
- data/vendor/libgit2/src/libgit2/remote.c +125 -62
- data/vendor/libgit2/src/libgit2/remote.h +0 -1
- data/vendor/libgit2/src/libgit2/repository.c +235 -54
- data/vendor/libgit2/src/libgit2/repository.h +10 -6
- data/vendor/libgit2/src/libgit2/revert.c +1 -2
- data/vendor/libgit2/src/libgit2/revparse.c +2 -2
- data/vendor/libgit2/src/libgit2/revwalk.c +13 -10
- data/vendor/libgit2/src/libgit2/revwalk.h +3 -3
- data/vendor/libgit2/src/libgit2/settings.c +468 -0
- data/vendor/libgit2/src/libgit2/settings.h +6 -2
- data/vendor/libgit2/src/libgit2/signature.c +132 -15
- data/vendor/libgit2/src/libgit2/signature.h +0 -1
- data/vendor/libgit2/src/libgit2/status.c +1 -1
- data/vendor/libgit2/src/libgit2/streams/mbedtls.c +54 -60
- data/vendor/libgit2/src/libgit2/streams/openssl.c +32 -7
- data/vendor/libgit2/src/libgit2/streams/openssl.h +2 -0
- data/vendor/libgit2/src/libgit2/streams/openssl_dynamic.c +4 -0
- data/vendor/libgit2/src/libgit2/streams/openssl_dynamic.h +3 -0
- data/vendor/libgit2/src/libgit2/streams/socket.c +30 -0
- data/vendor/libgit2/src/libgit2/streams/stransport.c +39 -7
- data/vendor/libgit2/src/libgit2/submodule.c +118 -68
- data/vendor/libgit2/src/libgit2/submodule.h +6 -7
- data/vendor/libgit2/src/libgit2/tag.c +4 -2
- data/vendor/libgit2/src/libgit2/trailer.c +6 -6
- data/vendor/libgit2/src/libgit2/transaction.c +26 -20
- data/vendor/libgit2/src/libgit2/transaction.h +4 -1
- data/vendor/libgit2/src/libgit2/transport.c +4 -1
- data/vendor/libgit2/src/libgit2/transports/auth_sspi.c +2 -0
- data/vendor/libgit2/src/libgit2/transports/credential.c +2 -2
- data/vendor/libgit2/src/libgit2/transports/git.c +1 -1
- data/vendor/libgit2/src/libgit2/transports/http.c +1 -2
- data/vendor/libgit2/src/libgit2/transports/http.h +0 -10
- data/vendor/libgit2/src/libgit2/transports/httpclient.c +124 -81
- data/vendor/libgit2/src/libgit2/transports/httpparser.c +128 -0
- data/vendor/libgit2/src/libgit2/transports/httpparser.h +99 -0
- data/vendor/libgit2/src/libgit2/transports/local.c +16 -8
- data/vendor/libgit2/src/libgit2/transports/smart.c +25 -13
- data/vendor/libgit2/src/libgit2/transports/smart.h +4 -2
- data/vendor/libgit2/src/libgit2/transports/smart_pkt.c +5 -5
- data/vendor/libgit2/src/libgit2/transports/smart_protocol.c +55 -10
- data/vendor/libgit2/src/libgit2/transports/ssh.c +41 -1103
- data/vendor/libgit2/src/libgit2/transports/ssh_exec.c +386 -0
- data/vendor/libgit2/src/libgit2/transports/ssh_exec.h +26 -0
- data/vendor/libgit2/src/libgit2/transports/ssh_libssh2.c +1126 -0
- data/vendor/libgit2/src/libgit2/transports/ssh_libssh2.h +28 -0
- data/vendor/libgit2/src/libgit2/transports/winhttp.c +35 -7
- data/vendor/libgit2/src/libgit2/tree.c +34 -26
- data/vendor/libgit2/src/libgit2/tree.h +3 -2
- data/vendor/libgit2/src/libgit2/worktree.c +14 -17
- data/vendor/libgit2/src/util/CMakeLists.txt +7 -10
- data/vendor/libgit2/src/util/alloc.c +4 -1
- data/vendor/libgit2/src/util/allocators/debugalloc.c +73 -0
- data/vendor/libgit2/src/{cli/cli.h → util/allocators/debugalloc.h} +6 -9
- data/vendor/libgit2/src/util/allocators/stdalloc.c +0 -10
- data/vendor/libgit2/src/util/array.h +18 -17
- data/vendor/libgit2/src/util/cc-compat.h +2 -0
- data/vendor/libgit2/src/util/ctype_compat.h +70 -0
- data/vendor/libgit2/src/util/date.c +22 -14
- data/vendor/libgit2/src/util/date.h +12 -0
- data/vendor/libgit2/src/util/errors.c +401 -0
- data/vendor/libgit2/src/{libgit2 → util}/errors.h +21 -17
- data/vendor/libgit2/src/util/fs_path.c +81 -10
- data/vendor/libgit2/src/util/fs_path.h +29 -0
- data/vendor/libgit2/src/util/futils.c +6 -5
- data/vendor/libgit2/src/util/futils.h +24 -7
- data/vendor/libgit2/src/util/git2_features.h.in +12 -1
- data/vendor/libgit2/src/util/git2_util.h +6 -0
- data/vendor/libgit2/src/util/hash/builtin.c +14 -4
- data/vendor/libgit2/src/util/hash/openssl.c +148 -0
- data/vendor/libgit2/src/util/hash/openssl.h +17 -1
- data/vendor/libgit2/src/util/hash/rfc6234/sha224-256.c +8 -6
- data/vendor/libgit2/src/util/hash/sha.h +4 -1
- data/vendor/libgit2/src/util/hashmap.h +425 -0
- data/vendor/libgit2/src/util/hashmap_str.h +43 -0
- data/vendor/libgit2/src/util/integer.h +3 -1
- data/vendor/libgit2/src/util/net.c +17 -11
- data/vendor/libgit2/src/util/net.h +2 -0
- data/vendor/libgit2/src/util/pool.c +1 -1
- data/vendor/libgit2/src/util/pool.h +5 -0
- data/vendor/libgit2/src/util/pqueue.h +1 -1
- data/vendor/libgit2/src/util/process.h +223 -0
- data/vendor/libgit2/src/util/rand.c +1 -7
- data/vendor/libgit2/src/util/regexp.c +1 -1
- data/vendor/libgit2/src/util/runtime.c +2 -2
- data/vendor/libgit2/src/util/sortedcache.c +14 -13
- data/vendor/libgit2/src/util/sortedcache.h +3 -3
- data/vendor/libgit2/src/util/str.c +20 -8
- data/vendor/libgit2/src/util/str.h +5 -3
- data/vendor/libgit2/src/util/strlist.c +108 -0
- data/vendor/libgit2/src/util/strlist.h +36 -0
- data/vendor/libgit2/src/util/unix/posix.h +0 -2
- data/vendor/libgit2/src/util/unix/process.c +706 -0
- data/vendor/libgit2/src/util/unix/realpath.c +23 -5
- data/vendor/libgit2/src/util/util.c +18 -5
- data/vendor/libgit2/src/util/util.h +5 -38
- data/vendor/libgit2/src/util/vector.c +3 -3
- data/vendor/libgit2/src/util/vector.h +2 -2
- data/vendor/libgit2/src/util/win32/path_w32.c +81 -5
- data/vendor/libgit2/src/util/win32/posix_w32.c +29 -6
- data/vendor/libgit2/src/util/win32/process.c +522 -0
- metadata +60 -32
- 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/libgit2/config_entries.c +0 -237
- data/vendor/libgit2/src/libgit2/config_entries.h +0 -24
- data/vendor/libgit2/src/libgit2/errors.c +0 -293
- data/vendor/libgit2/src/libgit2/idxmap.c +0 -157
- data/vendor/libgit2/src/libgit2/idxmap.h +0 -177
- data/vendor/libgit2/src/libgit2/libgit2.h +0 -15
- data/vendor/libgit2/src/libgit2/offmap.c +0 -101
- data/vendor/libgit2/src/libgit2/offmap.h +0 -133
- data/vendor/libgit2/src/libgit2/oidmap.c +0 -107
- data/vendor/libgit2/src/libgit2/oidmap.h +0 -128
- data/vendor/libgit2/src/libgit2/threadstate.c +0 -97
- data/vendor/libgit2/src/libgit2/threadstate.h +0 -22
- data/vendor/libgit2/src/libgit2/transports/ssh.h +0 -14
- data/vendor/libgit2/src/util/khash.h +0 -615
- data/vendor/libgit2/src/util/strmap.c +0 -100
- data/vendor/libgit2/src/util/strmap.h +0 -131
- /data/vendor/libgit2/cmake/{FindHTTPParser.cmake → FindHTTP_Parser.cmake} +0 -0
|
@@ -13,7 +13,6 @@
|
|
|
13
13
|
#include "futils.h"
|
|
14
14
|
#include "hash.h"
|
|
15
15
|
#include "oidarray.h"
|
|
16
|
-
#include "oidmap.h"
|
|
17
16
|
#include "pack.h"
|
|
18
17
|
#include "repository.h"
|
|
19
18
|
#include "revwalk.h"
|
|
@@ -25,6 +24,7 @@
|
|
|
25
24
|
#define COMMIT_GRAPH_SIGNATURE 0x43475048 /* "CGPH" */
|
|
26
25
|
#define COMMIT_GRAPH_VERSION 1
|
|
27
26
|
#define COMMIT_GRAPH_OBJECT_ID_VERSION 1
|
|
27
|
+
|
|
28
28
|
struct git_commit_graph_header {
|
|
29
29
|
uint32_t signature;
|
|
30
30
|
uint8_t version;
|
|
@@ -365,15 +365,24 @@ int git_commit_graph_open(
|
|
|
365
365
|
git_commit_graph **cgraph_out,
|
|
366
366
|
const char *objects_dir
|
|
367
367
|
#ifdef GIT_EXPERIMENTAL_SHA256
|
|
368
|
-
,
|
|
368
|
+
, const git_commit_graph_open_options *opts
|
|
369
369
|
#endif
|
|
370
370
|
)
|
|
371
371
|
{
|
|
372
|
-
|
|
373
|
-
git_oid_t oid_type = GIT_OID_SHA1;
|
|
374
|
-
#endif
|
|
372
|
+
git_oid_t oid_type;
|
|
375
373
|
int error;
|
|
376
374
|
|
|
375
|
+
#ifdef GIT_EXPERIMENTAL_SHA256
|
|
376
|
+
GIT_ERROR_CHECK_VERSION(opts,
|
|
377
|
+
GIT_COMMIT_GRAPH_OPEN_OPTIONS_VERSION,
|
|
378
|
+
"git_commit_graph_open_options");
|
|
379
|
+
|
|
380
|
+
oid_type = opts && opts->oid_type ? opts->oid_type : GIT_OID_DEFAULT;
|
|
381
|
+
GIT_ASSERT_ARG(git_oid_type_is_valid(oid_type));
|
|
382
|
+
#else
|
|
383
|
+
oid_type = GIT_OID_SHA1;
|
|
384
|
+
#endif
|
|
385
|
+
|
|
377
386
|
error = git_commit_graph_new(cgraph_out, objects_dir, true,
|
|
378
387
|
oid_type);
|
|
379
388
|
|
|
@@ -684,21 +693,40 @@ static int packed_commit__cmp(const void *a_, const void *b_)
|
|
|
684
693
|
return git_oid_cmp(&a->sha1, &b->sha1);
|
|
685
694
|
}
|
|
686
695
|
|
|
696
|
+
int git_commit_graph_writer_options_init(
|
|
697
|
+
git_commit_graph_writer_options *opts,
|
|
698
|
+
unsigned int version)
|
|
699
|
+
{
|
|
700
|
+
GIT_INIT_STRUCTURE_FROM_TEMPLATE(
|
|
701
|
+
opts,
|
|
702
|
+
version,
|
|
703
|
+
git_commit_graph_writer_options,
|
|
704
|
+
GIT_COMMIT_GRAPH_WRITER_OPTIONS_INIT);
|
|
705
|
+
return 0;
|
|
706
|
+
}
|
|
707
|
+
|
|
687
708
|
int git_commit_graph_writer_new(
|
|
688
709
|
git_commit_graph_writer **out,
|
|
689
|
-
const char *objects_info_dir
|
|
690
|
-
|
|
691
|
-
, git_oid_t oid_type
|
|
692
|
-
#endif
|
|
710
|
+
const char *objects_info_dir,
|
|
711
|
+
const git_commit_graph_writer_options *opts
|
|
693
712
|
)
|
|
694
713
|
{
|
|
695
714
|
git_commit_graph_writer *w;
|
|
715
|
+
git_oid_t oid_type;
|
|
696
716
|
|
|
697
|
-
#
|
|
698
|
-
|
|
717
|
+
#ifdef GIT_EXPERIMENTAL_SHA256
|
|
718
|
+
GIT_ERROR_CHECK_VERSION(opts,
|
|
719
|
+
GIT_COMMIT_GRAPH_WRITER_OPTIONS_VERSION,
|
|
720
|
+
"git_commit_graph_writer_options");
|
|
721
|
+
|
|
722
|
+
oid_type = opts && opts->oid_type ? opts->oid_type : GIT_OID_DEFAULT;
|
|
723
|
+
GIT_ASSERT_ARG(git_oid_type_is_valid(oid_type));
|
|
724
|
+
#else
|
|
725
|
+
GIT_UNUSED(opts);
|
|
726
|
+
oid_type = GIT_OID_SHA1;
|
|
699
727
|
#endif
|
|
700
728
|
|
|
701
|
-
GIT_ASSERT_ARG(out && objects_info_dir
|
|
729
|
+
GIT_ASSERT_ARG(out && objects_info_dir);
|
|
702
730
|
|
|
703
731
|
w = git__calloc(1, sizeof(git_commit_graph_writer));
|
|
704
732
|
GIT_ERROR_CHECK_ALLOC(w);
|
|
@@ -730,7 +758,7 @@ void git_commit_graph_writer_free(git_commit_graph_writer *w)
|
|
|
730
758
|
|
|
731
759
|
git_vector_foreach (&w->commits, i, packed_commit)
|
|
732
760
|
packed_commit_free(packed_commit);
|
|
733
|
-
|
|
761
|
+
git_vector_dispose(&w->commits);
|
|
734
762
|
git_str_dispose(&w->objects_info_dir);
|
|
735
763
|
git__free(w);
|
|
736
764
|
}
|
|
@@ -775,9 +803,9 @@ static int object_entry__cb(const git_oid *id, void *data)
|
|
|
775
803
|
}
|
|
776
804
|
|
|
777
805
|
int git_commit_graph_writer_add_index_file(
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
806
|
+
git_commit_graph_writer *w,
|
|
807
|
+
git_repository *repo,
|
|
808
|
+
const char *idx_path)
|
|
781
809
|
{
|
|
782
810
|
int error;
|
|
783
811
|
struct git_pack_file *p = NULL;
|
|
@@ -789,8 +817,7 @@ int git_commit_graph_writer_add_index_file(
|
|
|
789
817
|
if (error < 0)
|
|
790
818
|
goto cleanup;
|
|
791
819
|
|
|
792
|
-
|
|
793
|
-
error = git_mwindow_get_pack(&p, idx_path, 0);
|
|
820
|
+
error = git_mwindow_get_pack(&p, idx_path, repo->oid_type);
|
|
794
821
|
if (error < 0)
|
|
795
822
|
goto cleanup;
|
|
796
823
|
|
|
@@ -839,6 +866,8 @@ enum generation_number_commit_state {
|
|
|
839
866
|
GENERATION_NUMBER_COMMIT_STATE_VISITED = 3
|
|
840
867
|
};
|
|
841
868
|
|
|
869
|
+
GIT_HASHMAP_OID_SETUP(git_commit_graph_oidmap, struct packed_commit *);
|
|
870
|
+
|
|
842
871
|
static int compute_generation_numbers(git_vector *commits)
|
|
843
872
|
{
|
|
844
873
|
git_array_t(size_t) index_stack = GIT_ARRAY_INIT;
|
|
@@ -846,17 +875,14 @@ static int compute_generation_numbers(git_vector *commits)
|
|
|
846
875
|
size_t *parent_idx;
|
|
847
876
|
enum generation_number_commit_state *commit_states = NULL;
|
|
848
877
|
struct packed_commit *child_packed_commit;
|
|
849
|
-
|
|
878
|
+
git_commit_graph_oidmap packed_commit_map = GIT_HASHMAP_INIT;
|
|
850
879
|
int error = 0;
|
|
851
880
|
|
|
852
881
|
/* First populate the parent indices fields */
|
|
853
|
-
error = git_oidmap_new(&packed_commit_map);
|
|
854
|
-
if (error < 0)
|
|
855
|
-
goto cleanup;
|
|
856
882
|
git_vector_foreach (commits, i, child_packed_commit) {
|
|
857
883
|
child_packed_commit->index = i;
|
|
858
|
-
error =
|
|
859
|
-
|
|
884
|
+
error = git_commit_graph_oidmap_put(&packed_commit_map,
|
|
885
|
+
&child_packed_commit->sha1, child_packed_commit);
|
|
860
886
|
if (error < 0)
|
|
861
887
|
goto cleanup;
|
|
862
888
|
}
|
|
@@ -874,8 +900,7 @@ static int compute_generation_numbers(git_vector *commits)
|
|
|
874
900
|
goto cleanup;
|
|
875
901
|
}
|
|
876
902
|
git_array_foreach (child_packed_commit->parents, parent_i, parent_id) {
|
|
877
|
-
parent_packed_commit
|
|
878
|
-
if (!parent_packed_commit) {
|
|
903
|
+
if (git_commit_graph_oidmap_get(&parent_packed_commit, &packed_commit_map, parent_id) != 0) {
|
|
879
904
|
git_error_set(GIT_ERROR_ODB,
|
|
880
905
|
"parent commit %s not found in commit graph",
|
|
881
906
|
git_oid_tostr_s(parent_id));
|
|
@@ -975,7 +1000,7 @@ static int compute_generation_numbers(git_vector *commits)
|
|
|
975
1000
|
}
|
|
976
1001
|
|
|
977
1002
|
cleanup:
|
|
978
|
-
|
|
1003
|
+
git_commit_graph_oidmap_dispose(&packed_commit_map);
|
|
979
1004
|
git__free(commit_states);
|
|
980
1005
|
git_array_clear(index_stack);
|
|
981
1006
|
|
|
@@ -1029,9 +1054,12 @@ static int commit_graph_write_hash(const char *buf, size_t size, void *data)
|
|
|
1029
1054
|
struct commit_graph_write_hash_context *ctx = data;
|
|
1030
1055
|
int error;
|
|
1031
1056
|
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1057
|
+
if (ctx->ctx) {
|
|
1058
|
+
error = git_hash_update(ctx->ctx, buf, size);
|
|
1059
|
+
|
|
1060
|
+
if (error < 0)
|
|
1061
|
+
return error;
|
|
1062
|
+
}
|
|
1035
1063
|
|
|
1036
1064
|
return ctx->write_cb(buf, size, ctx->cb_data);
|
|
1037
1065
|
}
|
|
@@ -1042,9 +1070,9 @@ static void packed_commit_free_dup(void *packed_commit)
|
|
|
1042
1070
|
}
|
|
1043
1071
|
|
|
1044
1072
|
static int commit_graph_write(
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1073
|
+
git_commit_graph_writer *w,
|
|
1074
|
+
commit_graph_write_cb write_cb,
|
|
1075
|
+
void *cb_data)
|
|
1048
1076
|
{
|
|
1049
1077
|
int error = 0;
|
|
1050
1078
|
size_t i;
|
|
@@ -1227,6 +1255,9 @@ static int commit_graph_write(
|
|
|
1227
1255
|
error = git_hash_final(checksum, &ctx);
|
|
1228
1256
|
if (error < 0)
|
|
1229
1257
|
goto cleanup;
|
|
1258
|
+
|
|
1259
|
+
hash_cb_data.ctx = NULL;
|
|
1260
|
+
|
|
1230
1261
|
error = write_cb((char *)checksum, checksum_size, cb_data);
|
|
1231
1262
|
if (error < 0)
|
|
1232
1263
|
goto cleanup;
|
|
@@ -1245,30 +1276,13 @@ static int commit_graph_write_filebuf(const char *buf, size_t size, void *data)
|
|
|
1245
1276
|
return git_filebuf_write(f, buf, size);
|
|
1246
1277
|
}
|
|
1247
1278
|
|
|
1248
|
-
int
|
|
1249
|
-
git_commit_graph_writer_options *opts,
|
|
1250
|
-
unsigned int version)
|
|
1251
|
-
{
|
|
1252
|
-
GIT_INIT_STRUCTURE_FROM_TEMPLATE(
|
|
1253
|
-
opts,
|
|
1254
|
-
version,
|
|
1255
|
-
git_commit_graph_writer_options,
|
|
1256
|
-
GIT_COMMIT_GRAPH_WRITER_OPTIONS_INIT);
|
|
1257
|
-
return 0;
|
|
1258
|
-
}
|
|
1259
|
-
|
|
1260
|
-
int git_commit_graph_writer_commit(
|
|
1261
|
-
git_commit_graph_writer *w,
|
|
1262
|
-
git_commit_graph_writer_options *opts)
|
|
1279
|
+
int git_commit_graph_writer_commit(git_commit_graph_writer *w)
|
|
1263
1280
|
{
|
|
1264
1281
|
int error;
|
|
1265
1282
|
int filebuf_flags = GIT_FILEBUF_DO_NOT_BUFFER;
|
|
1266
1283
|
git_str commit_graph_path = GIT_STR_INIT;
|
|
1267
1284
|
git_filebuf output = GIT_FILEBUF_INIT;
|
|
1268
1285
|
|
|
1269
|
-
/* TODO: support options and fill in defaults. */
|
|
1270
|
-
GIT_UNUSED(opts);
|
|
1271
|
-
|
|
1272
1286
|
error = git_str_joinpath(
|
|
1273
1287
|
&commit_graph_path, git_str_cstr(&w->objects_info_dir), "commit-graph");
|
|
1274
1288
|
if (error < 0)
|
|
@@ -1292,18 +1306,14 @@ int git_commit_graph_writer_commit(
|
|
|
1292
1306
|
|
|
1293
1307
|
int git_commit_graph_writer_dump(
|
|
1294
1308
|
git_buf *cgraph,
|
|
1295
|
-
git_commit_graph_writer *w
|
|
1296
|
-
git_commit_graph_writer_options *opts)
|
|
1309
|
+
git_commit_graph_writer *w)
|
|
1297
1310
|
{
|
|
1298
|
-
GIT_BUF_WRAP_PRIVATE(cgraph, git_commit_graph__writer_dump, w
|
|
1311
|
+
GIT_BUF_WRAP_PRIVATE(cgraph, git_commit_graph__writer_dump, w);
|
|
1299
1312
|
}
|
|
1300
1313
|
|
|
1301
1314
|
int git_commit_graph__writer_dump(
|
|
1302
1315
|
git_str *cgraph,
|
|
1303
|
-
git_commit_graph_writer *w
|
|
1304
|
-
git_commit_graph_writer_options *opts)
|
|
1316
|
+
git_commit_graph_writer *w)
|
|
1305
1317
|
{
|
|
1306
|
-
/* TODO: support options. */
|
|
1307
|
-
GIT_UNUSED(opts);
|
|
1308
1318
|
return commit_graph_write(w, commit_graph_write_buf, cgraph);
|
|
1309
1319
|
}
|
|
@@ -156,8 +156,7 @@ struct git_commit_graph_writer {
|
|
|
156
156
|
|
|
157
157
|
int git_commit_graph__writer_dump(
|
|
158
158
|
git_str *cgraph,
|
|
159
|
-
git_commit_graph_writer *w
|
|
160
|
-
git_commit_graph_writer_options *opts);
|
|
159
|
+
git_commit_graph_writer *w);
|
|
161
160
|
|
|
162
161
|
/*
|
|
163
162
|
* Returns whether the git_commit_graph_file needs to be reloaded since the
|