rugged 0.27.7 → 0.27.10

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.
Files changed (409) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rugged/version.rb +1 -1
  3. data/vendor/libgit2/AUTHORS +1 -0
  4. data/vendor/libgit2/CMakeLists.txt +99 -51
  5. data/vendor/libgit2/COPYING +28 -0
  6. data/vendor/libgit2/cmake/Modules/AddCFlagIfSupported.cmake +15 -1
  7. data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.c.in +29 -0
  8. data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.cmake +96 -0
  9. data/vendor/libgit2/cmake/Modules/EnableWarnings.cmake +9 -8
  10. data/vendor/libgit2/cmake/Modules/FindCoreFoundation.cmake +2 -2
  11. data/vendor/libgit2/cmake/Modules/FindGSSAPI.cmake +1 -1
  12. data/vendor/libgit2/cmake/Modules/FindGSSFramework.cmake +28 -0
  13. data/vendor/libgit2/cmake/Modules/FindIconv.cmake +11 -6
  14. data/vendor/libgit2/cmake/Modules/FindPCRE.cmake +38 -0
  15. data/vendor/libgit2/cmake/Modules/FindPCRE2.cmake +37 -0
  16. data/vendor/libgit2/cmake/Modules/FindSecurity.cmake +2 -2
  17. data/vendor/libgit2/cmake/Modules/FindStatNsec.cmake +6 -0
  18. data/vendor/libgit2/cmake/Modules/PkgBuildConfig.cmake +110 -0
  19. data/vendor/libgit2/cmake/Modules/SelectGSSAPI.cmake +53 -0
  20. data/vendor/libgit2/cmake/Modules/SelectHTTPSBackend.cmake +124 -0
  21. data/vendor/libgit2/cmake/Modules/SelectHashes.cmake +66 -0
  22. data/vendor/libgit2/deps/http-parser/http_parser.c +11 -6
  23. data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +21 -0
  24. data/vendor/libgit2/deps/ntlmclient/compat.h +33 -0
  25. data/vendor/libgit2/deps/ntlmclient/crypt.h +64 -0
  26. data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.c +120 -0
  27. data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.h +18 -0
  28. data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.c +145 -0
  29. data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.h +18 -0
  30. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +130 -0
  31. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.h +21 -0
  32. data/vendor/libgit2/deps/ntlmclient/ntlm.c +1420 -0
  33. data/vendor/libgit2/deps/ntlmclient/ntlm.h +174 -0
  34. data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +320 -0
  35. data/vendor/libgit2/deps/ntlmclient/unicode.h +36 -0
  36. data/vendor/libgit2/deps/ntlmclient/unicode_builtin.c +445 -0
  37. data/vendor/libgit2/deps/ntlmclient/unicode_iconv.c +201 -0
  38. data/vendor/libgit2/deps/ntlmclient/utf8.h +1257 -0
  39. data/vendor/libgit2/deps/ntlmclient/util.c +21 -0
  40. data/vendor/libgit2/deps/ntlmclient/util.h +14 -0
  41. data/vendor/libgit2/deps/pcre/CMakeLists.txt +140 -0
  42. data/vendor/libgit2/deps/pcre/COPYING +5 -0
  43. data/vendor/libgit2/deps/pcre/cmake/COPYING-CMAKE-SCRIPTS +22 -0
  44. data/vendor/libgit2/deps/pcre/cmake/FindEditline.cmake +17 -0
  45. data/vendor/libgit2/deps/pcre/cmake/FindPackageHandleStandardArgs.cmake +58 -0
  46. data/vendor/libgit2/deps/pcre/cmake/FindReadline.cmake +29 -0
  47. data/vendor/libgit2/deps/pcre/config.h.in +57 -0
  48. data/vendor/libgit2/deps/pcre/pcre.h +641 -0
  49. data/vendor/libgit2/deps/pcre/pcre_byte_order.c +319 -0
  50. data/vendor/libgit2/deps/pcre/pcre_chartables.c +198 -0
  51. data/vendor/libgit2/deps/pcre/pcre_compile.c +9800 -0
  52. data/vendor/libgit2/deps/pcre/pcre_config.c +190 -0
  53. data/vendor/libgit2/deps/pcre/pcre_dfa_exec.c +3676 -0
  54. data/vendor/libgit2/deps/pcre/pcre_exec.c +7173 -0
  55. data/vendor/libgit2/deps/pcre/pcre_fullinfo.c +245 -0
  56. data/vendor/libgit2/deps/pcre/pcre_get.c +669 -0
  57. data/vendor/libgit2/deps/pcre/pcre_globals.c +86 -0
  58. data/vendor/libgit2/deps/pcre/pcre_internal.h +2787 -0
  59. data/vendor/libgit2/deps/pcre/pcre_jit_compile.c +11913 -0
  60. data/vendor/libgit2/deps/pcre/pcre_maketables.c +156 -0
  61. data/vendor/libgit2/deps/pcre/pcre_newline.c +210 -0
  62. data/vendor/libgit2/deps/pcre/pcre_ord2utf8.c +94 -0
  63. data/vendor/libgit2/deps/pcre/pcre_printint.c +834 -0
  64. data/vendor/libgit2/deps/pcre/pcre_refcount.c +92 -0
  65. data/vendor/libgit2/deps/pcre/pcre_string_utils.c +211 -0
  66. data/vendor/libgit2/deps/pcre/pcre_study.c +1686 -0
  67. data/vendor/libgit2/deps/pcre/pcre_tables.c +727 -0
  68. data/vendor/libgit2/deps/pcre/pcre_ucd.c +3644 -0
  69. data/vendor/libgit2/deps/pcre/pcre_valid_utf8.c +301 -0
  70. data/vendor/libgit2/deps/pcre/pcre_version.c +98 -0
  71. data/vendor/libgit2/deps/pcre/pcre_xclass.c +268 -0
  72. data/vendor/libgit2/deps/pcre/pcreposix.c +421 -0
  73. data/vendor/libgit2/deps/pcre/pcreposix.h +117 -0
  74. data/vendor/libgit2/deps/pcre/ucp.h +224 -0
  75. data/vendor/libgit2/deps/winhttp/COPYING.GPL +993 -0
  76. data/vendor/libgit2/deps/winhttp/COPYING.LGPL +502 -0
  77. data/vendor/libgit2/deps/zlib/CMakeLists.txt +1 -0
  78. data/vendor/libgit2/deps/zlib/COPYING +27 -0
  79. data/vendor/libgit2/deps/zlib/adler32.c +0 -7
  80. data/vendor/libgit2/deps/zlib/crc32.c +0 -7
  81. data/vendor/libgit2/include/git2/annotated_commit.h +9 -0
  82. data/vendor/libgit2/include/git2/apply.h +149 -0
  83. data/vendor/libgit2/include/git2/attr.h +20 -13
  84. data/vendor/libgit2/include/git2/blame.h +4 -4
  85. data/vendor/libgit2/include/git2/blob.h +44 -12
  86. data/vendor/libgit2/include/git2/buffer.h +20 -26
  87. data/vendor/libgit2/include/git2/cert.h +135 -0
  88. data/vendor/libgit2/include/git2/checkout.h +53 -21
  89. data/vendor/libgit2/include/git2/cherrypick.h +3 -3
  90. data/vendor/libgit2/include/git2/clone.h +5 -5
  91. data/vendor/libgit2/include/git2/commit.h +25 -3
  92. data/vendor/libgit2/include/git2/common.h +35 -10
  93. data/vendor/libgit2/include/git2/config.h +29 -19
  94. data/vendor/libgit2/include/git2/cred.h +308 -0
  95. data/vendor/libgit2/include/git2/deprecated.h +493 -0
  96. data/vendor/libgit2/include/git2/describe.h +4 -4
  97. data/vendor/libgit2/include/git2/diff.h +177 -135
  98. data/vendor/libgit2/include/git2/errors.h +53 -46
  99. data/vendor/libgit2/include/git2/filter.h +8 -0
  100. data/vendor/libgit2/include/git2/index.h +74 -52
  101. data/vendor/libgit2/include/git2/indexer.h +76 -6
  102. data/vendor/libgit2/include/git2/merge.h +25 -10
  103. data/vendor/libgit2/include/git2/net.h +0 -5
  104. data/vendor/libgit2/include/git2/notes.h +1 -1
  105. data/vendor/libgit2/include/git2/object.h +17 -29
  106. data/vendor/libgit2/include/git2/odb.h +12 -11
  107. data/vendor/libgit2/include/git2/odb_backend.h +10 -9
  108. data/vendor/libgit2/include/git2/oid.h +2 -2
  109. data/vendor/libgit2/include/git2/pack.h +14 -3
  110. data/vendor/libgit2/include/git2/proxy.h +5 -3
  111. data/vendor/libgit2/include/git2/rebase.h +46 -2
  112. data/vendor/libgit2/include/git2/refs.h +34 -16
  113. data/vendor/libgit2/include/git2/remote.h +111 -14
  114. data/vendor/libgit2/include/git2/repository.h +69 -34
  115. data/vendor/libgit2/include/git2/revert.h +1 -1
  116. data/vendor/libgit2/include/git2/revwalk.h +7 -7
  117. data/vendor/libgit2/include/git2/signature.h +2 -2
  118. data/vendor/libgit2/include/git2/stash.h +5 -5
  119. data/vendor/libgit2/include/git2/status.h +26 -17
  120. data/vendor/libgit2/include/git2/submodule.h +23 -6
  121. data/vendor/libgit2/include/git2/sys/alloc.h +18 -18
  122. data/vendor/libgit2/include/git2/sys/commit.h +1 -1
  123. data/vendor/libgit2/include/git2/sys/config.h +13 -13
  124. data/vendor/libgit2/include/git2/sys/cred.h +90 -0
  125. data/vendor/libgit2/include/git2/sys/filter.h +6 -6
  126. data/vendor/libgit2/include/git2/sys/merge.h +3 -3
  127. data/vendor/libgit2/include/git2/sys/odb_backend.h +66 -22
  128. data/vendor/libgit2/include/git2/sys/path.h +14 -5
  129. data/vendor/libgit2/include/git2/sys/refdb_backend.h +76 -40
  130. data/vendor/libgit2/include/git2/sys/repository.h +5 -1
  131. data/vendor/libgit2/include/git2/sys/stream.h +92 -12
  132. data/vendor/libgit2/include/git2/sys/transport.h +129 -83
  133. data/vendor/libgit2/include/git2/tag.h +13 -4
  134. data/vendor/libgit2/include/git2/trace.h +2 -2
  135. data/vendor/libgit2/include/git2/transport.h +11 -311
  136. data/vendor/libgit2/include/git2/tree.h +4 -4
  137. data/vendor/libgit2/include/git2/types.h +25 -106
  138. data/vendor/libgit2/include/git2/version.h +3 -3
  139. data/vendor/libgit2/include/git2/worktree.h +5 -5
  140. data/vendor/libgit2/include/git2.h +4 -0
  141. data/vendor/libgit2/src/CMakeLists.txt +104 -235
  142. data/vendor/libgit2/src/alloc.c +14 -18
  143. data/vendor/libgit2/src/{stdalloc.c → allocators/stdalloc.c} +7 -8
  144. data/vendor/libgit2/src/{stdalloc.h → allocators/stdalloc.h} +4 -4
  145. data/vendor/libgit2/src/allocators/win32_crtdbg.c +118 -0
  146. data/vendor/libgit2/src/{transports/cred.h → allocators/win32_crtdbg.h} +5 -4
  147. data/vendor/libgit2/src/annotated_commit.c +18 -11
  148. data/vendor/libgit2/src/apply.c +535 -28
  149. data/vendor/libgit2/src/apply.h +3 -1
  150. data/vendor/libgit2/src/array.h +2 -2
  151. data/vendor/libgit2/src/attr.c +77 -71
  152. data/vendor/libgit2/src/attr_file.c +203 -117
  153. data/vendor/libgit2/src/attr_file.h +9 -9
  154. data/vendor/libgit2/src/attrcache.c +49 -51
  155. data/vendor/libgit2/src/attrcache.h +2 -1
  156. data/vendor/libgit2/src/blame.c +38 -18
  157. data/vendor/libgit2/src/blame.h +1 -1
  158. data/vendor/libgit2/src/blame_git.c +29 -15
  159. data/vendor/libgit2/src/blob.c +123 -37
  160. data/vendor/libgit2/src/blob.h +19 -2
  161. data/vendor/libgit2/src/branch.c +47 -23
  162. data/vendor/libgit2/src/buf_text.c +7 -6
  163. data/vendor/libgit2/src/buffer.c +60 -53
  164. data/vendor/libgit2/src/cache.c +38 -45
  165. data/vendor/libgit2/src/cache.h +3 -3
  166. data/vendor/libgit2/src/cc-compat.h +20 -3
  167. data/vendor/libgit2/src/checkout.c +77 -67
  168. data/vendor/libgit2/src/cherrypick.c +12 -6
  169. data/vendor/libgit2/src/clone.c +36 -14
  170. data/vendor/libgit2/src/clone.h +4 -0
  171. data/vendor/libgit2/src/commit.c +103 -48
  172. data/vendor/libgit2/src/commit.h +7 -0
  173. data/vendor/libgit2/src/commit_list.c +36 -78
  174. data/vendor/libgit2/src/commit_list.h +2 -2
  175. data/vendor/libgit2/src/common.h +24 -90
  176. data/vendor/libgit2/src/config.c +203 -176
  177. data/vendor/libgit2/src/config.h +8 -20
  178. data/vendor/libgit2/src/config_backend.h +96 -0
  179. data/vendor/libgit2/src/config_cache.c +41 -35
  180. data/vendor/libgit2/src/config_entries.c +229 -0
  181. data/vendor/libgit2/src/config_entries.h +24 -0
  182. data/vendor/libgit2/src/config_file.c +422 -680
  183. data/vendor/libgit2/src/config_mem.c +220 -0
  184. data/vendor/libgit2/src/config_parse.c +96 -68
  185. data/vendor/libgit2/src/config_parse.h +15 -14
  186. data/vendor/libgit2/src/config_snapshot.c +206 -0
  187. data/vendor/libgit2/src/crlf.c +219 -196
  188. data/vendor/libgit2/src/delta.c +25 -18
  189. data/vendor/libgit2/src/describe.c +42 -41
  190. data/vendor/libgit2/src/diff.c +52 -67
  191. data/vendor/libgit2/src/diff.h +2 -1
  192. data/vendor/libgit2/src/diff_driver.c +44 -46
  193. data/vendor/libgit2/src/diff_file.c +16 -14
  194. data/vendor/libgit2/src/diff_file.h +1 -1
  195. data/vendor/libgit2/src/diff_generate.c +158 -103
  196. data/vendor/libgit2/src/diff_generate.h +3 -3
  197. data/vendor/libgit2/src/diff_parse.c +4 -4
  198. data/vendor/libgit2/src/diff_print.c +34 -22
  199. data/vendor/libgit2/src/diff_stats.c +22 -7
  200. data/vendor/libgit2/src/diff_tform.c +18 -16
  201. data/vendor/libgit2/src/diff_xdiff.c +3 -3
  202. data/vendor/libgit2/src/errors.c +51 -39
  203. data/vendor/libgit2/src/errors.h +81 -0
  204. data/vendor/libgit2/src/features.h.in +9 -3
  205. data/vendor/libgit2/src/fetch.c +8 -3
  206. data/vendor/libgit2/src/fetchhead.c +12 -12
  207. data/vendor/libgit2/src/filebuf.c +28 -32
  208. data/vendor/libgit2/src/filebuf.h +2 -2
  209. data/vendor/libgit2/src/filter.c +47 -33
  210. data/vendor/libgit2/src/filter.h +0 -10
  211. data/vendor/libgit2/src/{fileops.c → futils.c} +70 -63
  212. data/vendor/libgit2/src/{fileops.h → futils.h} +6 -6
  213. data/vendor/libgit2/src/global.c +35 -55
  214. data/vendor/libgit2/src/global.h +0 -2
  215. data/vendor/libgit2/src/hash/sha1/collisiondetect.c +48 -0
  216. data/vendor/libgit2/src/hash/sha1/collisiondetect.h +19 -0
  217. data/vendor/libgit2/src/hash/{hash_common_crypto.h → sha1/common_crypto.c} +17 -17
  218. data/vendor/libgit2/src/hash/sha1/common_crypto.h +19 -0
  219. data/vendor/libgit2/src/hash/{hash_generic.c → sha1/generic.c} +22 -10
  220. data/vendor/libgit2/src/hash/{hash_generic.h → sha1/generic.h} +4 -10
  221. data/vendor/libgit2/src/hash/{hash_mbedtls.c → sha1/mbedtls.c} +15 -7
  222. data/vendor/libgit2/src/hash/{hash_mbedtls.h → sha1/mbedtls.h} +6 -7
  223. data/vendor/libgit2/src/hash/sha1/openssl.c +59 -0
  224. data/vendor/libgit2/src/hash/sha1/openssl.h +19 -0
  225. data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/sha1.c +14 -3
  226. data/vendor/libgit2/src/hash/{hash_win32.c → sha1/win32.c} +47 -37
  227. data/vendor/libgit2/src/hash/{hash_win32.h → sha1/win32.h} +6 -19
  228. data/vendor/libgit2/src/hash/sha1.h +38 -0
  229. data/vendor/libgit2/src/hash.c +61 -0
  230. data/vendor/libgit2/src/hash.h +20 -21
  231. data/vendor/libgit2/src/hashsig.c +5 -5
  232. data/vendor/libgit2/src/idxmap.c +107 -61
  233. data/vendor/libgit2/src/idxmap.h +153 -31
  234. data/vendor/libgit2/src/ignore.c +38 -42
  235. data/vendor/libgit2/src/index.c +264 -199
  236. data/vendor/libgit2/src/index.h +7 -1
  237. data/vendor/libgit2/src/indexer.c +338 -167
  238. data/vendor/libgit2/src/integer.h +71 -26
  239. data/vendor/libgit2/src/iterator.c +134 -62
  240. data/vendor/libgit2/src/iterator.h +15 -0
  241. data/vendor/libgit2/src/mailmap.c +8 -8
  242. data/vendor/libgit2/src/map.h +1 -1
  243. data/vendor/libgit2/src/merge.c +137 -93
  244. data/vendor/libgit2/src/merge_driver.c +11 -11
  245. data/vendor/libgit2/src/merge_file.c +2 -2
  246. data/vendor/libgit2/src/mwindow.c +24 -29
  247. data/vendor/libgit2/src/mwindow.h +4 -4
  248. data/vendor/libgit2/src/net.c +184 -0
  249. data/vendor/libgit2/src/net.h +36 -0
  250. data/vendor/libgit2/src/netops.c +55 -156
  251. data/vendor/libgit2/src/netops.h +3 -23
  252. data/vendor/libgit2/src/notes.c +14 -9
  253. data/vendor/libgit2/src/object.c +120 -69
  254. data/vendor/libgit2/src/object.h +22 -9
  255. data/vendor/libgit2/src/object_api.c +8 -8
  256. data/vendor/libgit2/src/odb.c +111 -88
  257. data/vendor/libgit2/src/odb.h +8 -7
  258. data/vendor/libgit2/src/odb_loose.c +58 -47
  259. data/vendor/libgit2/src/odb_mempack.c +21 -34
  260. data/vendor/libgit2/src/odb_pack.c +17 -13
  261. data/vendor/libgit2/src/offmap.c +53 -35
  262. data/vendor/libgit2/src/offmap.h +108 -21
  263. data/vendor/libgit2/src/oid.c +12 -7
  264. data/vendor/libgit2/src/oidmap.c +49 -47
  265. data/vendor/libgit2/src/oidmap.h +101 -24
  266. data/vendor/libgit2/src/pack-objects.c +87 -86
  267. data/vendor/libgit2/src/pack-objects.h +2 -8
  268. data/vendor/libgit2/src/pack.c +94 -96
  269. data/vendor/libgit2/src/pack.h +16 -18
  270. data/vendor/libgit2/src/parse.c +17 -4
  271. data/vendor/libgit2/src/parse.h +3 -3
  272. data/vendor/libgit2/src/patch.c +3 -3
  273. data/vendor/libgit2/src/patch_generate.c +18 -18
  274. data/vendor/libgit2/src/patch_parse.c +147 -79
  275. data/vendor/libgit2/src/path.c +207 -62
  276. data/vendor/libgit2/src/path.h +14 -0
  277. data/vendor/libgit2/src/pathspec.c +18 -18
  278. data/vendor/libgit2/src/pool.c +26 -22
  279. data/vendor/libgit2/src/pool.h +7 -7
  280. data/vendor/libgit2/src/posix.c +10 -10
  281. data/vendor/libgit2/src/posix.h +12 -1
  282. data/vendor/libgit2/src/proxy.c +8 -3
  283. data/vendor/libgit2/src/push.c +35 -29
  284. data/vendor/libgit2/src/push.h +2 -1
  285. data/vendor/libgit2/src/reader.c +265 -0
  286. data/vendor/libgit2/src/reader.h +107 -0
  287. data/vendor/libgit2/src/rebase.c +97 -38
  288. data/vendor/libgit2/src/refdb.c +15 -3
  289. data/vendor/libgit2/src/refdb_fs.c +318 -222
  290. data/vendor/libgit2/src/reflog.c +13 -15
  291. data/vendor/libgit2/src/refs.c +122 -89
  292. data/vendor/libgit2/src/refs.h +5 -3
  293. data/vendor/libgit2/src/refspec.c +27 -33
  294. data/vendor/libgit2/src/regexp.c +221 -0
  295. data/vendor/libgit2/src/regexp.h +97 -0
  296. data/vendor/libgit2/src/remote.c +229 -178
  297. data/vendor/libgit2/src/remote.h +11 -2
  298. data/vendor/libgit2/src/repository.c +227 -172
  299. data/vendor/libgit2/src/repository.h +52 -40
  300. data/vendor/libgit2/src/reset.c +7 -7
  301. data/vendor/libgit2/src/revert.c +11 -6
  302. data/vendor/libgit2/src/revparse.c +46 -46
  303. data/vendor/libgit2/src/revwalk.c +89 -54
  304. data/vendor/libgit2/src/revwalk.h +20 -0
  305. data/vendor/libgit2/src/settings.c +22 -9
  306. data/vendor/libgit2/src/signature.c +15 -13
  307. data/vendor/libgit2/src/sortedcache.c +22 -36
  308. data/vendor/libgit2/src/sortedcache.h +1 -1
  309. data/vendor/libgit2/src/stash.c +56 -76
  310. data/vendor/libgit2/src/status.c +27 -21
  311. data/vendor/libgit2/src/stream.h +17 -2
  312. data/vendor/libgit2/src/streams/mbedtls.c +100 -80
  313. data/vendor/libgit2/src/streams/mbedtls.h +5 -2
  314. data/vendor/libgit2/src/streams/openssl.c +93 -81
  315. data/vendor/libgit2/src/streams/openssl.h +5 -2
  316. data/vendor/libgit2/src/streams/registry.c +118 -0
  317. data/vendor/libgit2/src/streams/registry.h +19 -0
  318. data/vendor/libgit2/src/streams/socket.c +55 -30
  319. data/vendor/libgit2/src/streams/stransport.c +57 -32
  320. data/vendor/libgit2/src/streams/stransport.h +5 -0
  321. data/vendor/libgit2/src/streams/tls.c +48 -20
  322. data/vendor/libgit2/src/streams/tls.h +12 -4
  323. data/vendor/libgit2/src/strmap.c +47 -74
  324. data/vendor/libgit2/src/strmap.h +108 -33
  325. data/vendor/libgit2/src/submodule.c +190 -169
  326. data/vendor/libgit2/src/submodule.h +1 -1
  327. data/vendor/libgit2/src/sysdir.c +25 -15
  328. data/vendor/libgit2/src/tag.c +39 -26
  329. data/vendor/libgit2/src/tag.h +2 -1
  330. data/vendor/libgit2/src/trace.c +2 -2
  331. data/vendor/libgit2/src/trace.h +2 -2
  332. data/vendor/libgit2/src/trailer.c +46 -32
  333. data/vendor/libgit2/src/transaction.c +30 -29
  334. data/vendor/libgit2/src/transport.c +3 -3
  335. data/vendor/libgit2/src/transports/auth.c +14 -10
  336. data/vendor/libgit2/src/transports/auth.h +10 -3
  337. data/vendor/libgit2/src/transports/auth_negotiate.c +31 -16
  338. data/vendor/libgit2/src/transports/auth_negotiate.h +2 -2
  339. data/vendor/libgit2/src/transports/auth_ntlm.c +223 -0
  340. data/vendor/libgit2/src/transports/auth_ntlm.h +35 -0
  341. data/vendor/libgit2/src/transports/cred.c +24 -24
  342. data/vendor/libgit2/src/transports/git.c +25 -30
  343. data/vendor/libgit2/src/transports/http.c +871 -335
  344. data/vendor/libgit2/src/transports/http.h +2 -0
  345. data/vendor/libgit2/src/transports/local.c +28 -28
  346. data/vendor/libgit2/src/transports/smart.c +64 -46
  347. data/vendor/libgit2/src/transports/smart.h +5 -6
  348. data/vendor/libgit2/src/transports/smart_pkt.c +162 -151
  349. data/vendor/libgit2/src/transports/smart_protocol.c +64 -94
  350. data/vendor/libgit2/src/transports/ssh.c +76 -65
  351. data/vendor/libgit2/src/transports/winhttp.c +328 -319
  352. data/vendor/libgit2/src/tree-cache.c +21 -14
  353. data/vendor/libgit2/src/tree.c +119 -112
  354. data/vendor/libgit2/src/tree.h +1 -0
  355. data/vendor/libgit2/src/unix/map.c +3 -3
  356. data/vendor/libgit2/src/unix/posix.h +1 -11
  357. data/vendor/libgit2/src/userdiff.h +3 -1
  358. data/vendor/libgit2/src/util.c +154 -93
  359. data/vendor/libgit2/src/util.h +19 -23
  360. data/vendor/libgit2/src/vector.c +15 -10
  361. data/vendor/libgit2/src/wildmatch.c +320 -0
  362. data/vendor/libgit2/src/wildmatch.h +23 -0
  363. data/vendor/libgit2/src/win32/dir.c +3 -3
  364. data/vendor/libgit2/src/win32/findfile.c +1 -1
  365. data/vendor/libgit2/src/win32/map.c +9 -11
  366. data/vendor/libgit2/src/win32/msvc-compat.h +6 -0
  367. data/vendor/libgit2/src/win32/path_w32.c +113 -9
  368. data/vendor/libgit2/src/win32/path_w32.h +18 -29
  369. data/vendor/libgit2/src/win32/posix.h +1 -4
  370. data/vendor/libgit2/src/win32/posix_w32.c +69 -44
  371. data/vendor/libgit2/src/win32/precompiled.h +0 -2
  372. data/vendor/libgit2/src/win32/thread.c +5 -10
  373. data/vendor/libgit2/src/win32/w32_buffer.c +9 -5
  374. data/vendor/libgit2/src/win32/w32_common.h +39 -0
  375. data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.c +2 -95
  376. data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.h +0 -2
  377. data/vendor/libgit2/src/win32/w32_stack.c +6 -11
  378. data/vendor/libgit2/src/win32/w32_stack.h +3 -3
  379. data/vendor/libgit2/src/win32/w32_util.c +27 -64
  380. data/vendor/libgit2/src/win32/w32_util.h +5 -49
  381. data/vendor/libgit2/src/worktree.c +44 -30
  382. data/vendor/libgit2/src/xdiff/xdiffi.c +5 -5
  383. data/vendor/libgit2/src/xdiff/xhistogram.c +1 -1
  384. data/vendor/libgit2/src/xdiff/xmerge.c +27 -15
  385. data/vendor/libgit2/src/xdiff/xpatience.c +3 -0
  386. data/vendor/libgit2/src/zstream.c +4 -4
  387. metadata +115 -38
  388. data/vendor/libgit2/deps/regex/CMakeLists.txt +0 -2
  389. data/vendor/libgit2/deps/regex/config.h +0 -7
  390. data/vendor/libgit2/deps/regex/regcomp.c +0 -3857
  391. data/vendor/libgit2/deps/regex/regex.c +0 -92
  392. data/vendor/libgit2/deps/regex/regex.h +0 -582
  393. data/vendor/libgit2/deps/regex/regex_internal.c +0 -1744
  394. data/vendor/libgit2/deps/regex/regex_internal.h +0 -819
  395. data/vendor/libgit2/deps/regex/regexec.c +0 -4369
  396. data/vendor/libgit2/include/git2/inttypes.h +0 -309
  397. data/vendor/libgit2/include/git2/sys/time.h +0 -31
  398. data/vendor/libgit2/libgit2.pc.in +0 -13
  399. data/vendor/libgit2/src/config_file.h +0 -73
  400. data/vendor/libgit2/src/fnmatch.c +0 -248
  401. data/vendor/libgit2/src/fnmatch.h +0 -48
  402. data/vendor/libgit2/src/hash/hash_collisiondetect.h +0 -47
  403. data/vendor/libgit2/src/hash/hash_openssl.h +0 -59
  404. data/vendor/libgit2/src/streams/curl.c +0 -385
  405. data/vendor/libgit2/src/streams/curl.h +0 -17
  406. /data/vendor/libgit2/deps/http-parser/{LICENSE-MIT → COPYING} +0 -0
  407. /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/sha1.h +0 -0
  408. /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/ubc_check.c +0 -0
  409. /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/ubc_check.h +0 -0
@@ -38,7 +38,13 @@ struct tree_walk_context {
38
38
 
39
39
  struct pack_write_context {
40
40
  git_indexer *indexer;
41
- git_transfer_progress *stats;
41
+ git_indexer_progress *stats;
42
+ };
43
+
44
+ struct walk_object {
45
+ git_oid id;
46
+ unsigned int uninteresting:1,
47
+ seen:1;
42
48
  };
43
49
 
44
50
  #ifdef GIT_THREADS
@@ -99,7 +105,7 @@ static int packbuilder_config(git_packbuilder *pb)
99
105
  ret = git_config_get_int64(&val, config, KEY); \
100
106
  if (!ret) { \
101
107
  if (!git__is_sizet(val)) { \
102
- giterr_set(GITERR_CONFIG, \
108
+ git_error_set(GIT_ERROR_CONFIG, \
103
109
  "configuration value '%s' is too large", KEY); \
104
110
  ret = -1; \
105
111
  goto out; \
@@ -133,17 +139,15 @@ int git_packbuilder_new(git_packbuilder **out, git_repository *repo)
133
139
  *out = NULL;
134
140
 
135
141
  pb = git__calloc(1, sizeof(*pb));
136
- GITERR_CHECK_ALLOC(pb);
142
+ GIT_ERROR_CHECK_ALLOC(pb);
137
143
 
138
- pb->object_ix = git_oidmap_alloc();
139
- if (!pb->object_ix)
144
+ if (git_oidmap_new(&pb->object_ix) < 0)
140
145
  goto on_error;
141
146
 
142
- pb->walk_objects = git_oidmap_alloc();
143
- if (!pb->walk_objects)
147
+ if (git_oidmap_new(&pb->walk_objects) < 0)
144
148
  goto on_error;
145
149
 
146
- git_pool_init(&pb->object_pool, sizeof(git_walk_object));
150
+ git_pool_init(&pb->object_pool, sizeof(struct walk_object));
147
151
 
148
152
  pb->repo = repo;
149
153
  pb->nr_threads = 1; /* do not spawn any thread by default */
@@ -160,7 +164,7 @@ int git_packbuilder_new(git_packbuilder **out, git_repository *repo)
160
164
  git_mutex_init(&pb->progress_mutex) ||
161
165
  git_cond_init(&pb->progress_cond))
162
166
  {
163
- giterr_set(GITERR_OS, "failed to initialize packbuilder mutex");
167
+ git_error_set(GIT_ERROR_OS, "failed to initialize packbuilder mutex");
164
168
  goto on_error;
165
169
  }
166
170
 
@@ -188,25 +192,25 @@ unsigned int git_packbuilder_set_threads(git_packbuilder *pb, unsigned int n)
188
192
  return pb->nr_threads;
189
193
  }
190
194
 
191
- static void rehash(git_packbuilder *pb)
195
+ static int rehash(git_packbuilder *pb)
192
196
  {
193
197
  git_pobject *po;
194
- khiter_t pos;
195
198
  size_t i;
196
- int ret;
197
199
 
198
200
  git_oidmap_clear(pb->object_ix);
201
+
199
202
  for (i = 0, po = pb->object_list; i < pb->nr_objects; i++, po++) {
200
- pos = git_oidmap_put(pb->object_ix, &po->id, &ret);
201
- git_oidmap_set_value_at(pb->object_ix, pos, po);
203
+ if (git_oidmap_set(pb->object_ix, &po->id, po) < 0)
204
+ return -1;
202
205
  }
206
+
207
+ return 0;
203
208
  }
204
209
 
205
210
  int git_packbuilder_insert(git_packbuilder *pb, const git_oid *oid,
206
211
  const char *name)
207
212
  {
208
213
  git_pobject *po;
209
- khiter_t pos;
210
214
  size_t newsize;
211
215
  int ret;
212
216
 
@@ -218,11 +222,11 @@ int git_packbuilder_insert(git_packbuilder *pb, const git_oid *oid,
218
222
  return 0;
219
223
 
220
224
  if (pb->nr_objects >= pb->nr_alloc) {
221
- GITERR_CHECK_ALLOC_ADD(&newsize, pb->nr_alloc, 1024);
222
- GITERR_CHECK_ALLOC_MULTIPLY(&newsize, newsize, 3 / 2);
225
+ GIT_ERROR_CHECK_ALLOC_ADD(&newsize, pb->nr_alloc, 1024);
226
+ GIT_ERROR_CHECK_ALLOC_MULTIPLY(&newsize, newsize / 2, 3);
223
227
 
224
228
  if (!git__is_uint32(newsize)) {
225
- giterr_set(GITERR_NOMEMORY, "packfile too large to fit in memory.");
229
+ git_error_set(GIT_ERROR_NOMEMORY, "packfile too large to fit in memory.");
226
230
  return -1;
227
231
  }
228
232
 
@@ -230,8 +234,10 @@ int git_packbuilder_insert(git_packbuilder *pb, const git_oid *oid,
230
234
 
231
235
  pb->object_list = git__reallocarray(pb->object_list,
232
236
  pb->nr_alloc, sizeof(*po));
233
- GITERR_CHECK_ALLOC(pb->object_list);
234
- rehash(pb);
237
+ GIT_ERROR_CHECK_ALLOC(pb->object_list);
238
+
239
+ if (rehash(pb) < 0)
240
+ return -1;
235
241
  }
236
242
 
237
243
  po = pb->object_list + pb->nr_objects;
@@ -244,13 +250,10 @@ int git_packbuilder_insert(git_packbuilder *pb, const git_oid *oid,
244
250
  git_oid_cpy(&po->id, oid);
245
251
  po->hash = name_hash(name);
246
252
 
247
- pos = git_oidmap_put(pb->object_ix, &po->id, &ret);
248
- if (ret < 0) {
249
- giterr_set_oom();
250
- return ret;
253
+ if (git_oidmap_set(pb->object_ix, &po->id, po) < 0) {
254
+ git_error_set_oom();
255
+ return -1;
251
256
  }
252
- assert(ret != 0);
253
- git_oidmap_set_value_at(pb->object_ix, pos, po);
254
257
 
255
258
  pb->done = false;
256
259
 
@@ -266,7 +269,7 @@ int git_packbuilder_insert(git_packbuilder *pb, const git_oid *oid,
266
269
  pb->nr_objects, 0, pb->progress_cb_payload);
267
270
 
268
271
  if (ret)
269
- return giterr_set_after_callback(ret);
272
+ return git_error_set_after_callback(ret);
270
273
  }
271
274
  }
272
275
 
@@ -295,7 +298,7 @@ static int get_delta(void **out, git_odb *odb, git_pobject *po)
295
298
  goto on_error;
296
299
 
297
300
  if (error == GIT_EBUFS || delta_size != po->delta_size) {
298
- giterr_set(GITERR_INVALID, "delta size changed");
301
+ git_error_set(GIT_ERROR_INVALID, "delta size changed");
299
302
  goto on_error;
300
303
  }
301
304
 
@@ -318,7 +321,7 @@ static int write_object(
318
321
  void *cb_data)
319
322
  {
320
323
  git_odb_object *obj = NULL;
321
- git_otype type;
324
+ git_object_t type;
322
325
  unsigned char hdr[10], *zbuf = NULL;
323
326
  void *data = NULL;
324
327
  size_t hdr_len, zbuf_len = COMPRESS_BUFLEN, data_len;
@@ -336,7 +339,7 @@ static int write_object(
336
339
  goto done;
337
340
 
338
341
  data_len = po->delta_size;
339
- type = GIT_OBJ_REF_DELTA;
342
+ type = GIT_OBJECT_REF_DELTA;
340
343
  } else {
341
344
  if ((error = git_odb_read(&obj, pb->odb, &po->id)) < 0)
342
345
  goto done;
@@ -353,7 +356,7 @@ static int write_object(
353
356
  (error = git_hash_update(&pb->ctx, hdr, hdr_len)) < 0)
354
357
  goto done;
355
358
 
356
- if (type == GIT_OBJ_REF_DELTA) {
359
+ if (type == GIT_OBJECT_REF_DELTA) {
357
360
  if ((error = write_cb(po->delta->id.id, GIT_OID_RAWSZ, cb_data)) < 0 ||
358
361
  (error = git_hash_update(&pb->ctx, po->delta->id.id, GIT_OID_RAWSZ)) < 0)
359
362
  goto done;
@@ -368,7 +371,7 @@ static int write_object(
368
371
  goto done;
369
372
  } else {
370
373
  zbuf = git__malloc(zbuf_len);
371
- GITERR_CHECK_ALLOC(zbuf);
374
+ GIT_ERROR_CHECK_ALLOC(zbuf);
372
375
 
373
376
  git_zstream_reset(&pb->zstream);
374
377
  git_zstream_set_input(&pb->zstream, data, data_len);
@@ -510,15 +513,12 @@ static int cb_tag_foreach(const char *name, git_oid *oid, void *data)
510
513
  {
511
514
  git_packbuilder *pb = data;
512
515
  git_pobject *po;
513
- khiter_t pos;
514
516
 
515
517
  GIT_UNUSED(name);
516
518
 
517
- pos = git_oidmap_lookup_index(pb->object_ix, oid);
518
- if (!git_oidmap_valid_index(pb->object_ix, pos))
519
+ if ((po = git_oidmap_get(pb->object_ix, oid)) == NULL)
519
520
  return 0;
520
521
 
521
- po = git_oidmap_value_at(pb->object_ix, pos);
522
522
  po->tagged = 1;
523
523
 
524
524
  /* TODO: peel objects */
@@ -590,8 +590,8 @@ static git_pobject **compute_write_order(git_packbuilder *pb)
590
590
  */
591
591
  for (i = last_untagged; i < pb->nr_objects; i++) {
592
592
  git_pobject *po = pb->object_list + i;
593
- if (po->type != GIT_OBJ_COMMIT &&
594
- po->type != GIT_OBJ_TAG)
593
+ if (po->type != GIT_OBJECT_COMMIT &&
594
+ po->type != GIT_OBJECT_TAG)
595
595
  continue;
596
596
  add_to_write_order(wo, &wo_end, po);
597
597
  }
@@ -601,7 +601,7 @@ static git_pobject **compute_write_order(git_packbuilder *pb)
601
601
  */
602
602
  for (i = last_untagged; i < pb->nr_objects; i++) {
603
603
  git_pobject *po = pb->object_list + i;
604
- if (po->type != GIT_OBJ_TREE)
604
+ if (po->type != GIT_OBJECT_TREE)
605
605
  continue;
606
606
  add_to_write_order(wo, &wo_end, po);
607
607
  }
@@ -617,7 +617,7 @@ static git_pobject **compute_write_order(git_packbuilder *pb)
617
617
 
618
618
  if (wo_end != pb->nr_objects) {
619
619
  git__free(wo);
620
- giterr_set(GITERR_INVALID, "invalid write order");
620
+ git_error_set(GIT_ERROR_INVALID, "invalid write order");
621
621
  return NULL;
622
622
  }
623
623
 
@@ -641,7 +641,7 @@ static int write_pack(git_packbuilder *pb,
641
641
  return -1;
642
642
 
643
643
  if (!git__is_uint32(pb->nr_objects)) {
644
- giterr_set(GITERR_INVALID, "too many objects");
644
+ git_error_set(GIT_ERROR_INVALID, "too many objects");
645
645
  return -1;
646
646
  }
647
647
 
@@ -798,13 +798,13 @@ static int try_delta(git_packbuilder *pb, struct unpacked *trg,
798
798
 
799
799
  sz = git_odb_object_size(obj);
800
800
  trg->data = git__malloc(sz);
801
- GITERR_CHECK_ALLOC(trg->data);
801
+ GIT_ERROR_CHECK_ALLOC(trg->data);
802
802
  memcpy(trg->data, git_odb_object_data(obj), sz);
803
803
 
804
804
  git_odb_object_free(obj);
805
805
 
806
806
  if (sz != trg_size) {
807
- giterr_set(GITERR_INVALID,
807
+ git_error_set(GIT_ERROR_INVALID,
808
808
  "inconsistent target object length");
809
809
  return -1;
810
810
  }
@@ -820,13 +820,13 @@ static int try_delta(git_packbuilder *pb, struct unpacked *trg,
820
820
 
821
821
  sz = obj_sz;
822
822
  src->data = git__malloc(sz);
823
- GITERR_CHECK_ALLOC(src->data);
823
+ GIT_ERROR_CHECK_ALLOC(src->data);
824
824
  memcpy(src->data, git_odb_object_data(obj), sz);
825
825
 
826
826
  git_odb_object_free(obj);
827
827
 
828
828
  if (sz != src_size) {
829
- giterr_set(GITERR_INVALID,
829
+ git_error_set(GIT_ERROR_INVALID,
830
830
  "inconsistent source object length");
831
831
  return -1;
832
832
  }
@@ -872,7 +872,7 @@ static int try_delta(git_packbuilder *pb, struct unpacked *trg,
872
872
  }
873
873
 
874
874
  trg_object->delta_data = git__realloc(delta_buf, delta_size);
875
- GITERR_CHECK_ALLOC(trg_object->delta_data);
875
+ GIT_ERROR_CHECK_ALLOC(trg_object->delta_data);
876
876
  } else {
877
877
  /* create delta when writing the pack */
878
878
  git_packbuilder__cache_unlock(pb);
@@ -938,7 +938,7 @@ static int report_delta_progress(
938
938
  count, pb->nr_objects, pb->progress_cb_payload);
939
939
 
940
940
  if (ret)
941
- return giterr_set_after_callback(ret);
941
+ return git_error_set_after_callback(ret);
942
942
  }
943
943
  }
944
944
 
@@ -957,7 +957,7 @@ static int find_deltas(git_packbuilder *pb, git_pobject **list,
957
957
  int error = -1;
958
958
 
959
959
  array = git__calloc(window, sizeof(struct unpacked));
960
- GITERR_CHECK_ALLOC(array);
960
+ GIT_ERROR_CHECK_ALLOC(array);
961
961
 
962
962
  for (;;) {
963
963
  struct unpacked *n = array + idx;
@@ -1043,7 +1043,7 @@ static int find_deltas(git_packbuilder *pb, git_pobject **list,
1043
1043
 
1044
1044
  git__free(po->delta_data);
1045
1045
  po->delta_data = git__malloc(zbuf.size);
1046
- GITERR_CHECK_ALLOC(po->delta_data);
1046
+ GIT_ERROR_CHECK_ALLOC(po->delta_data);
1047
1047
 
1048
1048
  memcpy(po->delta_data, zbuf.ptr, zbuf.size);
1049
1049
  po->z_delta_size = zbuf.size;
@@ -1136,7 +1136,7 @@ static void *threaded_find_deltas(void *arg)
1136
1136
  git_packbuilder__progress_unlock(me->pb);
1137
1137
 
1138
1138
  if (git_mutex_lock(&me->mutex)) {
1139
- giterr_set(GITERR_THREAD, "unable to lock packfile condition mutex");
1139
+ git_error_set(GIT_ERROR_THREAD, "unable to lock packfile condition mutex");
1140
1140
  return NULL;
1141
1141
  }
1142
1142
 
@@ -1174,7 +1174,7 @@ static int ll_find_deltas(git_packbuilder *pb, git_pobject **list,
1174
1174
  }
1175
1175
 
1176
1176
  p = git__mallocarray(pb->nr_threads, sizeof(*p));
1177
- GITERR_CHECK_ALLOC(p);
1177
+ GIT_ERROR_CHECK_ALLOC(p);
1178
1178
 
1179
1179
  /* Partition the work among the threads */
1180
1180
  for (i = 0; i < pb->nr_threads; ++i) {
@@ -1215,7 +1215,7 @@ static int ll_find_deltas(git_packbuilder *pb, git_pobject **list,
1215
1215
  ret = git_thread_create(&p[i].thread,
1216
1216
  threaded_find_deltas, &p[i]);
1217
1217
  if (ret) {
1218
- giterr_set(GITERR_THREAD, "unable to create thread");
1218
+ git_error_set(GIT_ERROR_THREAD, "unable to create thread");
1219
1219
  return -1;
1220
1220
  }
1221
1221
  active_threads++;
@@ -1284,7 +1284,7 @@ static int ll_find_deltas(git_packbuilder *pb, git_pobject **list,
1284
1284
  git_packbuilder__progress_unlock(pb);
1285
1285
 
1286
1286
  if (git_mutex_lock(&target->mutex)) {
1287
- giterr_set(GITERR_THREAD, "unable to lock packfile condition mutex");
1287
+ git_error_set(GIT_ERROR_THREAD, "unable to lock packfile condition mutex");
1288
1288
  git__free(p);
1289
1289
  return -1;
1290
1290
  }
@@ -1325,7 +1325,7 @@ static int prepare_pack(git_packbuilder *pb)
1325
1325
  pb->progress_cb(GIT_PACKBUILDER_DELTAFICATION, 0, pb->nr_objects, pb->progress_cb_payload);
1326
1326
 
1327
1327
  delta_list = git__mallocarray(pb->nr_objects, sizeof(*delta_list));
1328
- GITERR_CHECK_ALLOC(delta_list);
1328
+ GIT_ERROR_CHECK_ALLOC(delta_list);
1329
1329
 
1330
1330
  for (i = 0; i < pb->nr_objects; ++i) {
1331
1331
  git_pobject *po = pb->object_list + i;
@@ -1379,21 +1379,25 @@ int git_packbuilder_write(
1379
1379
  git_packbuilder *pb,
1380
1380
  const char *path,
1381
1381
  unsigned int mode,
1382
- git_transfer_progress_cb progress_cb,
1382
+ git_indexer_progress_cb progress_cb,
1383
1383
  void *progress_cb_payload)
1384
1384
  {
1385
+ git_indexer_options opts = GIT_INDEXER_OPTIONS_INIT;
1385
1386
  git_indexer *indexer;
1386
- git_transfer_progress stats;
1387
+ git_indexer_progress stats;
1387
1388
  struct pack_write_context ctx;
1388
1389
  int t;
1389
1390
 
1390
1391
  PREPARE_PACK;
1391
1392
 
1393
+ opts.progress_cb = progress_cb;
1394
+ opts.progress_cb_payload = progress_cb_payload;
1395
+
1392
1396
  if (git_indexer_new(
1393
- &indexer, path, mode, pb->odb, progress_cb, progress_cb_payload) < 0)
1397
+ &indexer, path, mode, pb->odb, &opts) < 0)
1394
1398
  return -1;
1395
1399
 
1396
- if (!git_repository__cvar(&t, pb->repo, GIT_CVAR_FSYNCOBJECTFILES) && t)
1400
+ if (!git_repository__configmap_lookup(&t, pb->repo, GIT_CONFIGMAP_FSYNCOBJECTFILES) && t)
1397
1401
  git_indexer__set_fsync(indexer, 1);
1398
1402
 
1399
1403
  ctx.indexer = indexer;
@@ -1426,7 +1430,7 @@ static int cb_tree_walk(
1426
1430
  struct tree_walk_context *ctx = payload;
1427
1431
 
1428
1432
  /* A commit inside a tree represents a submodule commit and should be skipped. */
1429
- if (git_tree_entry_type(entry) == GIT_OBJ_COMMIT)
1433
+ if (git_tree_entry_type(entry) == GIT_OBJECT_COMMIT)
1430
1434
  return 0;
1431
1435
 
1432
1436
  if (!(error = git_buf_sets(&ctx->buf, root)) &&
@@ -1474,27 +1478,27 @@ int git_packbuilder_insert_recur(git_packbuilder *pb, const git_oid *id, const c
1474
1478
 
1475
1479
  assert(pb && id);
1476
1480
 
1477
- if ((error = git_object_lookup(&obj, pb->repo, id, GIT_OBJ_ANY)) < 0)
1481
+ if ((error = git_object_lookup(&obj, pb->repo, id, GIT_OBJECT_ANY)) < 0)
1478
1482
  return error;
1479
1483
 
1480
1484
  switch (git_object_type(obj)) {
1481
- case GIT_OBJ_BLOB:
1485
+ case GIT_OBJECT_BLOB:
1482
1486
  error = git_packbuilder_insert(pb, id, name);
1483
1487
  break;
1484
- case GIT_OBJ_TREE:
1488
+ case GIT_OBJECT_TREE:
1485
1489
  error = git_packbuilder_insert_tree(pb, id);
1486
1490
  break;
1487
- case GIT_OBJ_COMMIT:
1491
+ case GIT_OBJECT_COMMIT:
1488
1492
  error = git_packbuilder_insert_commit(pb, id);
1489
1493
  break;
1490
- case GIT_OBJ_TAG:
1494
+ case GIT_OBJECT_TAG:
1491
1495
  if ((error = git_packbuilder_insert(pb, id, name)) < 0)
1492
1496
  goto cleanup;
1493
1497
  error = git_packbuilder_insert_recur(pb, git_tag_target_id((git_tag *) obj), NULL);
1494
1498
  break;
1495
1499
 
1496
1500
  default:
1497
- giterr_set(GITERR_INVALID, "unknown object type");
1501
+ git_error_set(GIT_ERROR_INVALID, "unknown object type");
1498
1502
  error = -1;
1499
1503
  }
1500
1504
 
@@ -1513,13 +1517,13 @@ size_t git_packbuilder_written(git_packbuilder *pb)
1513
1517
  return pb->nr_written;
1514
1518
  }
1515
1519
 
1516
- int lookup_walk_object(git_walk_object **out, git_packbuilder *pb, const git_oid *id)
1520
+ static int lookup_walk_object(struct walk_object **out, git_packbuilder *pb, const git_oid *id)
1517
1521
  {
1518
- git_walk_object *obj;
1522
+ struct walk_object *obj;
1519
1523
 
1520
1524
  obj = git_pool_mallocz(&pb->object_pool, 1);
1521
1525
  if (!obj) {
1522
- giterr_set_oom();
1526
+ git_error_set_oom();
1523
1527
  return -1;
1524
1528
  }
1525
1529
 
@@ -1529,20 +1533,17 @@ int lookup_walk_object(git_walk_object **out, git_packbuilder *pb, const git_oid
1529
1533
  return 0;
1530
1534
  }
1531
1535
 
1532
- static int retrieve_object(git_walk_object **out, git_packbuilder *pb, const git_oid *id)
1536
+ static int retrieve_object(struct walk_object **out, git_packbuilder *pb, const git_oid *id)
1533
1537
  {
1538
+ struct walk_object *obj;
1534
1539
  int error;
1535
- khiter_t pos;
1536
- git_walk_object *obj;
1537
1540
 
1538
- pos = git_oidmap_lookup_index(pb->walk_objects, id);
1539
- if (git_oidmap_valid_index(pb->walk_objects, pos)) {
1540
- obj = git_oidmap_value_at(pb->walk_objects, pos);
1541
- } else {
1541
+ if ((obj = git_oidmap_get(pb->walk_objects, id)) == NULL) {
1542
1542
  if ((error = lookup_walk_object(&obj, pb, id)) < 0)
1543
1543
  return error;
1544
1544
 
1545
- git_oidmap_insert(pb->walk_objects, &obj->id, obj, &error);
1545
+ if ((error = git_oidmap_set(pb->walk_objects, &obj->id, obj)) < 0)
1546
+ return error;
1546
1547
  }
1547
1548
 
1548
1549
  *out = obj;
@@ -1552,7 +1553,7 @@ static int retrieve_object(git_walk_object **out, git_packbuilder *pb, const git
1552
1553
  static int mark_blob_uninteresting(git_packbuilder *pb, const git_oid *id)
1553
1554
  {
1554
1555
  int error;
1555
- git_walk_object *obj;
1556
+ struct walk_object *obj;
1556
1557
 
1557
1558
  if ((error = retrieve_object(&obj, pb, id)) < 0)
1558
1559
  return error;
@@ -1564,7 +1565,7 @@ static int mark_blob_uninteresting(git_packbuilder *pb, const git_oid *id)
1564
1565
 
1565
1566
  static int mark_tree_uninteresting(git_packbuilder *pb, const git_oid *id)
1566
1567
  {
1567
- git_walk_object *obj;
1568
+ struct walk_object *obj;
1568
1569
  git_tree *tree;
1569
1570
  int error;
1570
1571
  size_t i;
@@ -1584,11 +1585,11 @@ static int mark_tree_uninteresting(git_packbuilder *pb, const git_oid *id)
1584
1585
  const git_tree_entry *entry = git_tree_entry_byindex(tree, i);
1585
1586
  const git_oid *entry_id = git_tree_entry_id(entry);
1586
1587
  switch (git_tree_entry_type(entry)) {
1587
- case GIT_OBJ_TREE:
1588
+ case GIT_OBJECT_TREE:
1588
1589
  if ((error = mark_tree_uninteresting(pb, entry_id)) < 0)
1589
1590
  goto cleanup;
1590
1591
  break;
1591
- case GIT_OBJ_BLOB:
1592
+ case GIT_OBJECT_BLOB:
1592
1593
  if ((error = mark_blob_uninteresting(pb, entry_id)) < 0)
1593
1594
  goto cleanup;
1594
1595
  break;
@@ -1636,7 +1637,7 @@ int insert_tree(git_packbuilder *pb, git_tree *tree)
1636
1637
  size_t i;
1637
1638
  int error;
1638
1639
  git_tree *subtree;
1639
- git_walk_object *obj;
1640
+ struct walk_object *obj;
1640
1641
  const char *name;
1641
1642
 
1642
1643
  if ((error = retrieve_object(&obj, pb, git_tree_id(tree))) < 0)
@@ -1654,7 +1655,7 @@ int insert_tree(git_packbuilder *pb, git_tree *tree)
1654
1655
  const git_tree_entry *entry = git_tree_entry_byindex(tree, i);
1655
1656
  const git_oid *entry_id = git_tree_entry_id(entry);
1656
1657
  switch (git_tree_entry_type(entry)) {
1657
- case GIT_OBJ_TREE:
1658
+ case GIT_OBJECT_TREE:
1658
1659
  if ((error = git_tree_lookup(&subtree, pb->repo, entry_id)) < 0)
1659
1660
  return error;
1660
1661
 
@@ -1665,8 +1666,8 @@ int insert_tree(git_packbuilder *pb, git_tree *tree)
1665
1666
  return error;
1666
1667
 
1667
1668
  break;
1668
- case GIT_OBJ_BLOB:
1669
- if ((error = retrieve_object(&obj, pb, git_tree_id(tree))) < 0)
1669
+ case GIT_OBJECT_BLOB:
1670
+ if ((error = retrieve_object(&obj, pb, entry_id)) < 0)
1670
1671
  return error;
1671
1672
  if (obj->uninteresting)
1672
1673
  continue;
@@ -1684,7 +1685,7 @@ int insert_tree(git_packbuilder *pb, git_tree *tree)
1684
1685
  return error;
1685
1686
  }
1686
1687
 
1687
- int insert_commit(git_packbuilder *pb, git_walk_object *obj)
1688
+ int insert_commit(git_packbuilder *pb, struct walk_object *obj)
1688
1689
  {
1689
1690
  int error;
1690
1691
  git_commit *commit = NULL;
@@ -1714,7 +1715,7 @@ int git_packbuilder_insert_walk(git_packbuilder *pb, git_revwalk *walk)
1714
1715
  {
1715
1716
  int error;
1716
1717
  git_oid id;
1717
- git_walk_object *obj;
1718
+ struct walk_object *obj;
1718
1719
 
1719
1720
  assert(pb && walk);
1720
1721
 
@@ -29,8 +29,8 @@
29
29
 
30
30
  typedef struct git_pobject {
31
31
  git_oid id;
32
- git_otype type;
33
- git_off_t offset;
32
+ git_object_t type;
33
+ off64_t offset;
34
34
 
35
35
  size_t size;
36
36
 
@@ -52,12 +52,6 @@ typedef struct git_pobject {
52
52
  filled:1;
53
53
  } git_pobject;
54
54
 
55
- typedef struct {
56
- git_oid id;
57
- unsigned int uninteresting:1,
58
- seen:1;
59
- } git_walk_object;
60
-
61
55
  struct git_packbuilder {
62
56
  git_repository *repo; /* associated repository */
63
57
  git_odb *odb; /* associated object database */