rugged 0.23.0b2 → 0.23.0b4
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/rugged_blob.c +39 -0
- data/ext/rugged/rugged_diff.c +7 -3
- data/ext/rugged/rugged_index.c +2 -2
- data/ext/rugged/rugged_remote.c +27 -148
- data/ext/rugged/rugged_remote_collection.c +134 -12
- data/ext/rugged/rugged_repo.c +74 -5
- data/ext/rugged/rugged_submodule.c +18 -208
- data/ext/rugged/rugged_submodule_collection.c +148 -0
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/AUTHORS +1 -0
- data/vendor/libgit2/CMakeLists.txt +33 -25
- data/vendor/libgit2/deps/winhttp/winhttp.def +29 -29
- data/vendor/libgit2/include/git2.h +1 -1
- data/vendor/libgit2/include/git2/blob.h +4 -6
- data/vendor/libgit2/include/git2/checkout.h +10 -1
- data/vendor/libgit2/include/git2/clone.h +6 -7
- data/vendor/libgit2/include/git2/commit.h +11 -0
- data/vendor/libgit2/include/git2/cred_helpers.h +2 -2
- data/vendor/libgit2/include/git2/describe.h +1 -1
- data/vendor/libgit2/include/git2/diff.h +68 -11
- data/vendor/libgit2/include/git2/errors.h +4 -1
- data/vendor/libgit2/include/git2/filter.h +16 -0
- data/vendor/libgit2/include/git2/index.h +38 -11
- data/vendor/libgit2/include/git2/odb.h +1 -1
- data/vendor/libgit2/include/git2/odb_backend.h +2 -2
- data/vendor/libgit2/include/git2/remote.h +300 -207
- data/vendor/libgit2/include/git2/reset.h +1 -0
- data/vendor/libgit2/include/git2/stash.h +135 -4
- data/vendor/libgit2/include/git2/status.h +1 -0
- data/vendor/libgit2/include/git2/submodule.h +46 -75
- data/vendor/libgit2/include/git2/sys/odb_backend.h +1 -1
- data/vendor/libgit2/include/git2/sys/stream.h +2 -0
- data/vendor/libgit2/include/git2/sys/transport.h +1 -21
- data/vendor/libgit2/include/git2/transport.h +27 -0
- data/vendor/libgit2/include/git2/types.h +20 -10
- data/vendor/libgit2/include/git2/version.h +3 -3
- data/vendor/libgit2/libgit2.pc.in +4 -2
- data/vendor/libgit2/src/attr.c +2 -1
- data/vendor/libgit2/src/attr_file.c +18 -37
- data/vendor/libgit2/src/blame.c +2 -2
- data/vendor/libgit2/src/blob.c +4 -3
- data/vendor/libgit2/src/branch.c +6 -3
- data/vendor/libgit2/src/buf_text.c +4 -6
- data/vendor/libgit2/src/buf_text.h +1 -2
- data/vendor/libgit2/src/buffer.c +8 -6
- data/vendor/libgit2/src/buffer.h +1 -1
- data/vendor/libgit2/src/cache.c +1 -0
- data/vendor/libgit2/src/checkout.c +34 -20
- data/vendor/libgit2/src/clone.c +29 -29
- data/vendor/libgit2/src/commit.c +65 -0
- data/vendor/libgit2/src/common.h +5 -0
- data/vendor/libgit2/src/config.c +20 -0
- data/vendor/libgit2/src/config.h +6 -0
- data/vendor/libgit2/src/config_file.c +2 -2
- data/vendor/libgit2/src/crlf.c +39 -17
- data/vendor/libgit2/src/curl_stream.c +257 -0
- data/vendor/libgit2/src/curl_stream.h +14 -0
- data/vendor/libgit2/src/diff.c +223 -88
- data/vendor/libgit2/src/diff.h +21 -1
- data/vendor/libgit2/src/diff_file.c +23 -13
- data/vendor/libgit2/src/diff_file.h +4 -2
- data/vendor/libgit2/src/diff_patch.c +266 -71
- data/vendor/libgit2/src/diff_patch.h +36 -0
- data/vendor/libgit2/src/diff_print.c +156 -126
- data/vendor/libgit2/src/diff_tform.c +32 -54
- data/vendor/libgit2/src/fetch.c +27 -10
- data/vendor/libgit2/src/fetch.h +2 -2
- data/vendor/libgit2/src/filebuf.c +1 -1
- data/vendor/libgit2/src/fileops.c +6 -2
- data/vendor/libgit2/src/filter.c +28 -7
- data/vendor/libgit2/src/fnmatch.c +5 -5
- data/vendor/libgit2/src/global.c +16 -0
- data/vendor/libgit2/src/ident.c +2 -2
- data/vendor/libgit2/src/ignore.c +1 -0
- data/vendor/libgit2/src/index.c +338 -80
- data/vendor/libgit2/src/index.h +4 -1
- data/vendor/libgit2/src/indexer.c +19 -5
- data/vendor/libgit2/src/iterator.c +118 -11
- data/vendor/libgit2/src/iterator.h +25 -0
- data/vendor/libgit2/src/merge.c +96 -106
- data/vendor/libgit2/src/merge.h +14 -4
- data/vendor/libgit2/src/netops.c +3 -3
- data/vendor/libgit2/src/odb.c +17 -9
- data/vendor/libgit2/src/odb.h +1 -1
- data/vendor/libgit2/src/odb_loose.c +2 -2
- data/vendor/libgit2/src/odb_pack.c +1 -1
- data/vendor/libgit2/src/openssl_stream.c +118 -27
- data/vendor/libgit2/src/pack-objects.c +28 -0
- data/vendor/libgit2/src/pack-objects.h +1 -0
- data/vendor/libgit2/src/pack.c +18 -10
- data/vendor/libgit2/src/path.c +16 -11
- data/vendor/libgit2/src/path.h +1 -1
- data/vendor/libgit2/src/push.c +26 -42
- data/vendor/libgit2/src/push.h +2 -34
- data/vendor/libgit2/src/rebase.c +1 -1
- data/vendor/libgit2/src/refs.c +1 -1
- data/vendor/libgit2/src/refspec.c +6 -0
- data/vendor/libgit2/src/remote.c +381 -274
- data/vendor/libgit2/src/remote.h +0 -4
- data/vendor/libgit2/src/repository.c +33 -12
- data/vendor/libgit2/src/repository.h +0 -1
- data/vendor/libgit2/src/reset.c +1 -0
- data/vendor/libgit2/src/stash.c +439 -17
- data/vendor/libgit2/src/status.c +6 -0
- data/vendor/libgit2/src/stransport_stream.c +58 -21
- data/vendor/libgit2/src/stream.h +15 -0
- data/vendor/libgit2/src/submodule.c +410 -664
- data/vendor/libgit2/src/submodule.h +0 -24
- data/vendor/libgit2/src/transaction.c +1 -0
- data/vendor/libgit2/src/transports/cred.c +55 -1
- data/vendor/libgit2/src/transports/http.c +18 -2
- data/vendor/libgit2/src/transports/local.c +60 -59
- data/vendor/libgit2/src/transports/smart.h +1 -1
- data/vendor/libgit2/src/transports/smart_protocol.c +11 -11
- data/vendor/libgit2/src/transports/ssh.c +46 -7
- data/vendor/libgit2/src/unix/posix.h +4 -0
- data/vendor/libgit2/src/util.c +9 -9
- data/vendor/libgit2/src/util.h +9 -0
- data/vendor/libgit2/src/win32/posix.h +3 -0
- data/vendor/libgit2/src/win32/posix_w32.c +38 -0
- data/vendor/libgit2/src/win32/w32_util.h +10 -0
- metadata +4 -3
- data/vendor/libgit2/include/git2/push.h +0 -94
data/lib/rugged/version.rb
CHANGED
data/vendor/libgit2/AUTHORS
CHANGED
|
@@ -34,12 +34,11 @@ OPTION( PROFILE "Generate profiling information" OFF )
|
|
|
34
34
|
OPTION( ENABLE_TRACE "Enables tracing support" OFF )
|
|
35
35
|
OPTION( LIBGIT2_FILENAME "Name of the produced binary" OFF )
|
|
36
36
|
|
|
37
|
-
OPTION( ANDROID "Build for android NDK" OFF )
|
|
38
|
-
|
|
39
37
|
OPTION( USE_ICONV "Link with and use iconv library" OFF )
|
|
40
38
|
OPTION( USE_SSH "Link with libssh to enable SSH support" ON )
|
|
41
39
|
OPTION( USE_GSSAPI "Link with libgssapi for SPNEGO auth" OFF )
|
|
42
40
|
OPTION( VALGRIND "Configure build for valgrind" OFF )
|
|
41
|
+
OPTION( CURL "User curl for HTTP if available" ON)
|
|
43
42
|
|
|
44
43
|
IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|
45
44
|
SET( USE_ICONV ON )
|
|
@@ -60,10 +59,6 @@ IF(MSVC)
|
|
|
60
59
|
# are linking statically
|
|
61
60
|
OPTION( STATIC_CRT "Link the static CRT libraries" ON )
|
|
62
61
|
|
|
63
|
-
# If you want to embed a copy of libssh2 into libgit2, pass a
|
|
64
|
-
# path to libssh2
|
|
65
|
-
OPTION( EMBED_SSH_PATH "Path to libssh2 to embed (Windows)" OFF )
|
|
66
|
-
|
|
67
62
|
ADD_DEFINITIONS(-D_SCL_SECURE_NO_WARNINGS)
|
|
68
63
|
ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)
|
|
69
64
|
ADD_DEFINITIONS(-D_CRT_NONSTDC_NO_DEPRECATE)
|
|
@@ -105,12 +100,14 @@ FUNCTION(TARGET_OS_LIBRARIES target)
|
|
|
105
100
|
TARGET_LINK_LIBRARIES(${target} ws2_32)
|
|
106
101
|
ELSEIF(CMAKE_SYSTEM_NAME MATCHES "(Solaris|SunOS)")
|
|
107
102
|
TARGET_LINK_LIBRARIES(${target} socket nsl)
|
|
108
|
-
|
|
103
|
+
LIST(APPEND LIBGIT2_PC_LIBS "-lsocket" "-lnsl")
|
|
104
|
+
SET(LIBGIT2_PC_LIBS ${LIBGIT2_PC_LIBS} PARENT_SCOPE)
|
|
109
105
|
ENDIF()
|
|
110
106
|
CHECK_LIBRARY_EXISTS(rt clock_gettime "time.h" NEED_LIBRT)
|
|
111
107
|
IF(NEED_LIBRT)
|
|
112
108
|
TARGET_LINK_LIBRARIES(${target} rt)
|
|
113
|
-
|
|
109
|
+
LIST(APPEND LIBGIT2_PC_LIBS "-lrt")
|
|
110
|
+
SET(LIBGIT2_PC_LIBS ${LIBGIT2_PC_LIBS} PARENT_SCOPE)
|
|
114
111
|
ENDIF()
|
|
115
112
|
|
|
116
113
|
IF(THREADSAFE)
|
|
@@ -156,22 +153,15 @@ INCLUDE_DIRECTORIES(src include)
|
|
|
156
153
|
|
|
157
154
|
IF (SECURITY_FOUND)
|
|
158
155
|
MESSAGE("-- Found Security ${SECURITY_DIRS}")
|
|
159
|
-
|
|
156
|
+
LIST(APPEND LIBGIT2_PC_LIBS "-framework Security")
|
|
160
157
|
ENDIF()
|
|
161
158
|
|
|
162
159
|
IF (COREFOUNDATION_FOUND)
|
|
163
160
|
MESSAGE("-- Found CoreFoundation ${COREFOUNDATION_DIRS}")
|
|
164
|
-
|
|
161
|
+
LIST(APPEND LIBGIT2_PC_LIBS "-framework CoreFoundation")
|
|
165
162
|
ENDIF()
|
|
166
163
|
|
|
167
164
|
|
|
168
|
-
IF (WIN32 AND EMBED_SSH_PATH)
|
|
169
|
-
FILE(GLOB SRC_SSH "${EMBED_SSH_PATH}/src/*.c")
|
|
170
|
-
INCLUDE_DIRECTORIES("${EMBED_SSH_PATH}/include")
|
|
171
|
-
FILE(WRITE "${EMBED_SSH_PATH}/src/libssh2_config.h" "#define HAVE_WINCNG\n#define LIBSSH2_WINCNG\n#include \"../win32/libssh2_config.h\"")
|
|
172
|
-
ADD_DEFINITIONS(-DGIT_SSH)
|
|
173
|
-
ENDIF()
|
|
174
|
-
|
|
175
165
|
IF (WIN32 AND WINHTTP)
|
|
176
166
|
ADD_DEFINITIONS(-DGIT_WINHTTP)
|
|
177
167
|
INCLUDE_DIRECTORIES(deps/http-parser)
|
|
@@ -212,15 +202,26 @@ IF (WIN32 AND WINHTTP)
|
|
|
212
202
|
|
|
213
203
|
LINK_LIBRARIES(winhttp rpcrt4 crypt32)
|
|
214
204
|
ELSE ()
|
|
205
|
+
IF (CURL)
|
|
206
|
+
PKG_CHECK_MODULES(CURL libcurl)
|
|
207
|
+
ENDIF ()
|
|
208
|
+
|
|
215
209
|
IF (NOT AMIGA AND USE_OPENSSL)
|
|
216
210
|
FIND_PACKAGE(OpenSSL)
|
|
217
211
|
ENDIF ()
|
|
218
212
|
|
|
213
|
+
IF (CURL_FOUND)
|
|
214
|
+
ADD_DEFINITIONS(-DGIT_CURL)
|
|
215
|
+
INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIRS})
|
|
216
|
+
LINK_LIBRARIES(${CURL_LIBRARIES})
|
|
217
|
+
LIST(APPEND LIBGIT2_PC_LIBS ${CURL_LDFLAGS})
|
|
218
|
+
ENDIF()
|
|
219
|
+
|
|
219
220
|
FIND_PACKAGE(HTTP_Parser)
|
|
220
221
|
IF (HTTP_PARSER_FOUND AND HTTP_PARSER_VERSION_MAJOR EQUAL 2)
|
|
221
222
|
INCLUDE_DIRECTORIES(${HTTP_PARSER_INCLUDE_DIRS})
|
|
222
223
|
LINK_LIBRARIES(${HTTP_PARSER_LIBRARIES})
|
|
223
|
-
|
|
224
|
+
LIST(APPEND LIBGIT2_PC_LIBS "-lhttp_parser")
|
|
224
225
|
ELSE()
|
|
225
226
|
MESSAGE(STATUS "http-parser was not found or is too old; using bundled 3rd-party sources.")
|
|
226
227
|
INCLUDE_DIRECTORIES(deps/http-parser)
|
|
@@ -237,7 +238,7 @@ ELSEIF (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|
|
237
238
|
ELSEIF (OPENSSL_FOUND AND NOT SHA1_TYPE STREQUAL "builtin")
|
|
238
239
|
ADD_DEFINITIONS(-DOPENSSL_SHA1)
|
|
239
240
|
IF (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
|
|
240
|
-
|
|
241
|
+
LIST(APPEND LIBGIT2_PC_LIBS "-lssl")
|
|
241
242
|
ELSE()
|
|
242
243
|
SET(LIBGIT2_PC_REQUIRES "${LIBGIT2_PC_REQUIRES} openssl")
|
|
243
244
|
ENDIF ()
|
|
@@ -251,7 +252,7 @@ IF (ENABLE_TRACE STREQUAL "ON")
|
|
|
251
252
|
ENDIF()
|
|
252
253
|
|
|
253
254
|
# Include POSIX regex when it is required
|
|
254
|
-
IF(WIN32 OR AMIGA OR
|
|
255
|
+
IF(WIN32 OR AMIGA OR CMAKE_SYSTEM_NAME MATCHES "(Solaris|SunOS)")
|
|
255
256
|
INCLUDE_DIRECTORIES(deps/regex)
|
|
256
257
|
SET(SRC_REGEX deps/regex/regex.c)
|
|
257
258
|
ENDIF()
|
|
@@ -262,7 +263,7 @@ IF (ZLIB_FOUND)
|
|
|
262
263
|
INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIRS})
|
|
263
264
|
LINK_LIBRARIES(${ZLIB_LIBRARIES})
|
|
264
265
|
IF(APPLE OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
|
|
265
|
-
|
|
266
|
+
LIST(APPEND LIBGIT2_PC_LIBS "-lz")
|
|
266
267
|
ELSE()
|
|
267
268
|
SET(LIBGIT2_PC_REQUIRES "${LIBGIT2_PC_REQUIRES} zlib")
|
|
268
269
|
ENDIF()
|
|
@@ -281,8 +282,14 @@ IF (LIBSSH2_FOUND)
|
|
|
281
282
|
ADD_DEFINITIONS(-DGIT_SSH)
|
|
282
283
|
INCLUDE_DIRECTORIES(${LIBSSH2_INCLUDE_DIRS})
|
|
283
284
|
LINK_DIRECTORIES(${LIBSSH2_LIBRARY_DIRS})
|
|
284
|
-
|
|
285
|
+
LIST(APPEND LIBGIT2_PC_LIBS ${LIBSSH2_LDFLAGS})
|
|
286
|
+
#SET(LIBGIT2_PC_LIBS "${LIBGIT2_PC_LIBS} ${LIBSSH2_LDFLAGS}")
|
|
285
287
|
SET(SSH_LIBRARIES ${LIBSSH2_LIBRARIES})
|
|
288
|
+
|
|
289
|
+
CHECK_LIBRARY_EXISTS("${LIBSSH2_LIBRARIES}" libssh2_userauth_publickey_frommemory "" HAVE_LIBSSH2_MEMORY_CREDENTIALS)
|
|
290
|
+
IF (HAVE_LIBSSH2_MEMORY_CREDENTIALS)
|
|
291
|
+
ADD_DEFINITIONS(-DGIT_SSH_MEMORY_CREDENTIALS)
|
|
292
|
+
ENDIF()
|
|
286
293
|
ELSE()
|
|
287
294
|
MESSAGE(STATUS "LIBSSH2 not found. Set CMAKE_PREFIX_PATH if it is installed outside of the default search path.")
|
|
288
295
|
ENDIF()
|
|
@@ -302,7 +309,7 @@ ENDIF()
|
|
|
302
309
|
IF (ICONV_FOUND)
|
|
303
310
|
ADD_DEFINITIONS(-DGIT_USE_ICONV)
|
|
304
311
|
INCLUDE_DIRECTORIES(${ICONV_INCLUDE_DIR})
|
|
305
|
-
|
|
312
|
+
LIST(APPEND LIBGIT2_PC_LIBS ${ICONV_LIBRARIES})
|
|
306
313
|
ENDIF()
|
|
307
314
|
|
|
308
315
|
# Platform specific compilation flags
|
|
@@ -482,7 +489,7 @@ ELSE()
|
|
|
482
489
|
ENDIF()
|
|
483
490
|
|
|
484
491
|
# Compile and link libgit2
|
|
485
|
-
ADD_LIBRARY(git2 ${SRC_H} ${SRC_GIT2} ${SRC_OS} ${SRC_ZLIB} ${SRC_HTTP} ${SRC_REGEX} ${
|
|
492
|
+
ADD_LIBRARY(git2 ${SRC_H} ${SRC_GIT2} ${SRC_OS} ${SRC_ZLIB} ${SRC_HTTP} ${SRC_REGEX} ${SRC_SHA1} ${WIN_RC})
|
|
486
493
|
TARGET_LINK_LIBRARIES(git2 ${SECURITY_DIRS})
|
|
487
494
|
TARGET_LINK_LIBRARIES(git2 ${COREFOUNDATION_DIRS})
|
|
488
495
|
TARGET_LINK_LIBRARIES(git2 ${SSL_LIBRARIES})
|
|
@@ -507,6 +514,7 @@ IF (SONAME)
|
|
|
507
514
|
SET_TARGET_PROPERTIES(git2 PROPERTIES OUTPUT_NAME ${LIBGIT2_FILENAME})
|
|
508
515
|
ENDIF()
|
|
509
516
|
ENDIF()
|
|
517
|
+
STRING(REPLACE ";" " " LIBGIT2_PC_LIBS "${LIBGIT2_PC_LIBS}")
|
|
510
518
|
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/libgit2.pc.in ${CMAKE_CURRENT_BINARY_DIR}/libgit2.pc @ONLY)
|
|
511
519
|
|
|
512
520
|
IF (MSVC_IDE)
|
|
@@ -551,7 +559,7 @@ IF (BUILD_CLAR)
|
|
|
551
559
|
${CLAR_PATH}/clar.c
|
|
552
560
|
PROPERTIES OBJECT_DEPENDS ${CLAR_PATH}/clar.suite)
|
|
553
561
|
|
|
554
|
-
ADD_EXECUTABLE(libgit2_clar ${SRC_H} ${SRC_GIT2} ${SRC_OS} ${SRC_CLAR} ${SRC_TEST} ${SRC_ZLIB} ${SRC_HTTP} ${SRC_REGEX} ${
|
|
562
|
+
ADD_EXECUTABLE(libgit2_clar ${SRC_H} ${SRC_GIT2} ${SRC_OS} ${SRC_CLAR} ${SRC_TEST} ${SRC_ZLIB} ${SRC_HTTP} ${SRC_REGEX} ${SRC_SHA1})
|
|
555
563
|
|
|
556
564
|
TARGET_LINK_LIBRARIES(libgit2_clar ${COREFOUNDATION_DIRS})
|
|
557
565
|
TARGET_LINK_LIBRARIES(libgit2_clar ${SECURITY_DIRS})
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
LIBRARY WINHTTP
|
|
2
|
-
EXPORTS
|
|
3
|
-
WinHttpAddRequestHeaders@16
|
|
4
|
-
WinHttpCheckPlatform@0
|
|
5
|
-
WinHttpCloseHandle@4
|
|
6
|
-
WinHttpConnect@16
|
|
7
|
-
WinHttpCrackUrl@16
|
|
8
|
-
WinHttpCreateUrl@16
|
|
9
|
-
WinHttpDetectAutoProxyConfigUrl@8
|
|
10
|
-
WinHttpGetDefaultProxyConfiguration@4
|
|
11
|
-
WinHttpGetIEProxyConfigForCurrentUser@4
|
|
12
|
-
WinHttpGetProxyForUrl@16
|
|
13
|
-
WinHttpOpen@20
|
|
14
|
-
WinHttpOpenRequest@28
|
|
15
|
-
WinHttpQueryAuthSchemes@16
|
|
16
|
-
WinHttpQueryDataAvailable@8
|
|
17
|
-
WinHttpQueryHeaders@24
|
|
18
|
-
WinHttpQueryOption@16
|
|
19
|
-
WinHttpReadData@16
|
|
20
|
-
WinHttpReceiveResponse@8
|
|
21
|
-
WinHttpSendRequest@28
|
|
22
|
-
WinHttpSetCredentials@24
|
|
23
|
-
WinHttpSetDefaultProxyConfiguration@4
|
|
24
|
-
WinHttpSetOption@16
|
|
25
|
-
WinHttpSetStatusCallback@16
|
|
26
|
-
WinHttpSetTimeouts@20
|
|
27
|
-
WinHttpTimeFromSystemTime@8
|
|
28
|
-
WinHttpTimeToSystemTime@8
|
|
29
|
-
WinHttpWriteData@16
|
|
1
|
+
LIBRARY WINHTTP
|
|
2
|
+
EXPORTS
|
|
3
|
+
WinHttpAddRequestHeaders@16
|
|
4
|
+
WinHttpCheckPlatform@0
|
|
5
|
+
WinHttpCloseHandle@4
|
|
6
|
+
WinHttpConnect@16
|
|
7
|
+
WinHttpCrackUrl@16
|
|
8
|
+
WinHttpCreateUrl@16
|
|
9
|
+
WinHttpDetectAutoProxyConfigUrl@8
|
|
10
|
+
WinHttpGetDefaultProxyConfiguration@4
|
|
11
|
+
WinHttpGetIEProxyConfigForCurrentUser@4
|
|
12
|
+
WinHttpGetProxyForUrl@16
|
|
13
|
+
WinHttpOpen@20
|
|
14
|
+
WinHttpOpenRequest@28
|
|
15
|
+
WinHttpQueryAuthSchemes@16
|
|
16
|
+
WinHttpQueryDataAvailable@8
|
|
17
|
+
WinHttpQueryHeaders@24
|
|
18
|
+
WinHttpQueryOption@16
|
|
19
|
+
WinHttpReadData@16
|
|
20
|
+
WinHttpReceiveResponse@8
|
|
21
|
+
WinHttpSendRequest@28
|
|
22
|
+
WinHttpSetCredentials@24
|
|
23
|
+
WinHttpSetDefaultProxyConfiguration@4
|
|
24
|
+
WinHttpSetOption@16
|
|
25
|
+
WinHttpSetStatusCallback@16
|
|
26
|
+
WinHttpSetTimeouts@20
|
|
27
|
+
WinHttpTimeFromSystemTime@8
|
|
28
|
+
WinHttpTimeToSystemTime@8
|
|
29
|
+
WinHttpWriteData@16
|
|
@@ -40,7 +40,6 @@
|
|
|
40
40
|
#include "git2/pack.h"
|
|
41
41
|
#include "git2/patch.h"
|
|
42
42
|
#include "git2/pathspec.h"
|
|
43
|
-
#include "git2/push.h"
|
|
44
43
|
#include "git2/rebase.h"
|
|
45
44
|
#include "git2/refdb.h"
|
|
46
45
|
#include "git2/reflog.h"
|
|
@@ -58,6 +57,7 @@
|
|
|
58
57
|
#include "git2/submodule.h"
|
|
59
58
|
#include "git2/tag.h"
|
|
60
59
|
#include "git2/transport.h"
|
|
60
|
+
#include "git2/transaction.h"
|
|
61
61
|
#include "git2/tree.h"
|
|
62
62
|
#include "git2/types.h"
|
|
63
63
|
#include "git2/version.h"
|
|
@@ -107,12 +107,10 @@ GIT_EXTERN(git_off_t) git_blob_rawsize(const git_blob *blob);
|
|
|
107
107
|
* The output is written into a `git_buf` which the caller must free
|
|
108
108
|
* when done (via `git_buf_free`).
|
|
109
109
|
*
|
|
110
|
-
* If no filters need to be applied, then the `out` buffer will just
|
|
111
|
-
* populated with a pointer to the raw content of the blob. In
|
|
112
|
-
* be careful to *not* free the blob until done with the
|
|
113
|
-
*
|
|
114
|
-
* with a `want_size` of 0 and the buffer will be reallocated to be
|
|
115
|
-
* detached from the blob.
|
|
110
|
+
* If no filters need to be applied, then the `out` buffer will just
|
|
111
|
+
* be populated with a pointer to the raw content of the blob. In
|
|
112
|
+
* that case, be careful to *not* free the blob until done with the
|
|
113
|
+
* buffer or copy it into memory you own.
|
|
116
114
|
*
|
|
117
115
|
* @param out The git_buf to be filled in
|
|
118
116
|
* @param blob Pointer to the blob
|
|
@@ -272,7 +272,16 @@ typedef struct git_checkout_options {
|
|
|
272
272
|
*/
|
|
273
273
|
git_strarray paths;
|
|
274
274
|
|
|
275
|
-
|
|
275
|
+
/** The expected content of the working directory; defaults to HEAD.
|
|
276
|
+
* If the working directory does not match this baseline information,
|
|
277
|
+
* that will produce a checkout conflict.
|
|
278
|
+
*/
|
|
279
|
+
git_tree *baseline;
|
|
280
|
+
|
|
281
|
+
/** Like `baseline` above, though expressed as an index. This
|
|
282
|
+
* option overrides `baseline`.
|
|
283
|
+
*/
|
|
284
|
+
git_index *baseline_index; /**< expected content of workdir, expressed as an index. */
|
|
276
285
|
|
|
277
286
|
const char *target_directory; /**< alternative checkout path to workdir */
|
|
278
287
|
|
|
@@ -111,13 +111,12 @@ typedef struct git_clone_options {
|
|
|
111
111
|
git_checkout_options checkout_opts;
|
|
112
112
|
|
|
113
113
|
/**
|
|
114
|
-
*
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
*
|
|
118
|
-
* provided function.
|
|
114
|
+
* Options which control the fetch, including callbacks.
|
|
115
|
+
*
|
|
116
|
+
* The callbacks are used for reporting fetch progress, and for acquiring
|
|
117
|
+
* credentials in the event they are needed.
|
|
119
118
|
*/
|
|
120
|
-
|
|
119
|
+
git_fetch_options fetch_opts;
|
|
121
120
|
|
|
122
121
|
/**
|
|
123
122
|
* Set to zero (false) to create a standard repo, or non-zero
|
|
@@ -167,7 +166,7 @@ typedef struct git_clone_options {
|
|
|
167
166
|
#define GIT_CLONE_OPTIONS_VERSION 1
|
|
168
167
|
#define GIT_CLONE_OPTIONS_INIT { GIT_CLONE_OPTIONS_VERSION, \
|
|
169
168
|
{ GIT_CHECKOUT_OPTIONS_VERSION, GIT_CHECKOUT_SAFE }, \
|
|
170
|
-
|
|
169
|
+
GIT_FETCH_OPTIONS_INIT }
|
|
171
170
|
|
|
172
171
|
/**
|
|
173
172
|
* Initializes a `git_clone_options` with default values. Equivalent to
|
|
@@ -239,6 +239,17 @@ GIT_EXTERN(int) git_commit_nth_gen_ancestor(
|
|
|
239
239
|
const git_commit *commit,
|
|
240
240
|
unsigned int n);
|
|
241
241
|
|
|
242
|
+
/**
|
|
243
|
+
* Get an arbitrary header field
|
|
244
|
+
*
|
|
245
|
+
* @param out the buffer to fill
|
|
246
|
+
* @param commit the commit to look in
|
|
247
|
+
* @param field the header field to return
|
|
248
|
+
* @return 0 on succeess, GIT_ENOTFOUND if the field does not exist,
|
|
249
|
+
* or an error code
|
|
250
|
+
*/
|
|
251
|
+
GIT_EXTERN(int) git_commit_header_field(git_buf *out, const git_commit *commit, const char *field);
|
|
252
|
+
|
|
242
253
|
/**
|
|
243
254
|
* Create new commit in the repository from a list of `git_object` pointers
|
|
244
255
|
*
|
|
@@ -94,7 +94,7 @@ typedef struct {
|
|
|
94
94
|
* If the workdir is dirty and this is set, this string will
|
|
95
95
|
* be appended to the description string.
|
|
96
96
|
*/
|
|
97
|
-
char *dirty_suffix;
|
|
97
|
+
const char *dirty_suffix;
|
|
98
98
|
} git_describe_format_options;
|
|
99
99
|
|
|
100
100
|
#define GIT_DESCRIBE_FORMAT_OPTIONS_VERSION 1
|
|
@@ -226,6 +226,7 @@ typedef enum {
|
|
|
226
226
|
GIT_DIFF_FLAG_BINARY = (1u << 0), /**< file(s) treated as binary data */
|
|
227
227
|
GIT_DIFF_FLAG_NOT_BINARY = (1u << 1), /**< file(s) treated as text data */
|
|
228
228
|
GIT_DIFF_FLAG_VALID_ID = (1u << 2), /**< `id` value is known correct */
|
|
229
|
+
GIT_DIFF_FLAG_EXISTS = (1u << 3), /**< file exists at this side of the delta */
|
|
229
230
|
} git_diff_flag_t;
|
|
230
231
|
|
|
231
232
|
/**
|
|
@@ -239,16 +240,17 @@ typedef enum {
|
|
|
239
240
|
* DELETED pairs).
|
|
240
241
|
*/
|
|
241
242
|
typedef enum {
|
|
242
|
-
GIT_DELTA_UNMODIFIED = 0,
|
|
243
|
-
GIT_DELTA_ADDED = 1,
|
|
244
|
-
GIT_DELTA_DELETED = 2,
|
|
245
|
-
GIT_DELTA_MODIFIED = 3,
|
|
246
|
-
GIT_DELTA_RENAMED = 4,
|
|
247
|
-
GIT_DELTA_COPIED = 5,
|
|
248
|
-
GIT_DELTA_IGNORED = 6,
|
|
249
|
-
GIT_DELTA_UNTRACKED = 7,
|
|
250
|
-
GIT_DELTA_TYPECHANGE = 8,
|
|
251
|
-
GIT_DELTA_UNREADABLE = 9,
|
|
243
|
+
GIT_DELTA_UNMODIFIED = 0, /**< no changes */
|
|
244
|
+
GIT_DELTA_ADDED = 1, /**< entry does not exist in old version */
|
|
245
|
+
GIT_DELTA_DELETED = 2, /**< entry does not exist in new version */
|
|
246
|
+
GIT_DELTA_MODIFIED = 3, /**< entry content changed between old and new */
|
|
247
|
+
GIT_DELTA_RENAMED = 4, /**< entry was renamed between old and new */
|
|
248
|
+
GIT_DELTA_COPIED = 5, /**< entry was copied from another old entry */
|
|
249
|
+
GIT_DELTA_IGNORED = 6, /**< entry is ignored item in workdir */
|
|
250
|
+
GIT_DELTA_UNTRACKED = 7, /**< entry is untracked item in workdir */
|
|
251
|
+
GIT_DELTA_TYPECHANGE = 8, /**< type of entry changed between old and new */
|
|
252
|
+
GIT_DELTA_UNREADABLE = 9, /**< entry is unreadable */
|
|
253
|
+
GIT_DELTA_CONFLICTED = 10, /**< entry in the index is conflicted */
|
|
252
254
|
} git_delta_t;
|
|
253
255
|
|
|
254
256
|
/**
|
|
@@ -397,7 +399,7 @@ typedef struct {
|
|
|
397
399
|
* `git_diff_options_init` programmatic initialization.
|
|
398
400
|
*/
|
|
399
401
|
#define GIT_DIFF_OPTIONS_INIT \
|
|
400
|
-
{GIT_DIFF_OPTIONS_VERSION, 0,
|
|
402
|
+
{GIT_DIFF_OPTIONS_VERSION, 0, GIT_SUBMODULE_IGNORE_UNSPECIFIED, {NULL,0}, NULL, NULL, 3}
|
|
401
403
|
|
|
402
404
|
/**
|
|
403
405
|
* Initializes a `git_diff_options` with default values. Equivalent to
|
|
@@ -423,6 +425,53 @@ typedef int (*git_diff_file_cb)(
|
|
|
423
425
|
float progress,
|
|
424
426
|
void *payload);
|
|
425
427
|
|
|
428
|
+
/**
|
|
429
|
+
* When producing a binary diff, the binary data returned will be
|
|
430
|
+
* either the deflated full ("literal") contents of the file, or
|
|
431
|
+
* the deflated binary delta between the two sides (whichever is
|
|
432
|
+
* smaller).
|
|
433
|
+
*/
|
|
434
|
+
typedef enum {
|
|
435
|
+
/** There is no binary delta. */
|
|
436
|
+
GIT_DIFF_BINARY_NONE,
|
|
437
|
+
|
|
438
|
+
/** The binary data is the literal contents of the file. */
|
|
439
|
+
GIT_DIFF_BINARY_LITERAL,
|
|
440
|
+
|
|
441
|
+
/** The binary data is the delta from one side to the other. */
|
|
442
|
+
GIT_DIFF_BINARY_DELTA,
|
|
443
|
+
} git_diff_binary_t;
|
|
444
|
+
|
|
445
|
+
/** The contents of one of the files in a binary diff. */
|
|
446
|
+
typedef struct {
|
|
447
|
+
/** The type of binary data for this file. */
|
|
448
|
+
git_diff_binary_t type;
|
|
449
|
+
|
|
450
|
+
/** The binary data, deflated. */
|
|
451
|
+
const char *data;
|
|
452
|
+
|
|
453
|
+
/** The length of the binary data. */
|
|
454
|
+
size_t datalen;
|
|
455
|
+
|
|
456
|
+
/** The length of the binary data after inflation. */
|
|
457
|
+
size_t inflatedlen;
|
|
458
|
+
} git_diff_binary_file;
|
|
459
|
+
|
|
460
|
+
/** Structure describing the binary contents of a diff. */
|
|
461
|
+
typedef struct {
|
|
462
|
+
git_diff_binary_file old_file; /**< The contents of the old file. */
|
|
463
|
+
git_diff_binary_file new_file; /**< The contents of the new file. */
|
|
464
|
+
} git_diff_binary;
|
|
465
|
+
|
|
466
|
+
/**
|
|
467
|
+
* When iterating over a diff, callback that will be made for
|
|
468
|
+
* binary content within the diff.
|
|
469
|
+
*/
|
|
470
|
+
typedef int(*git_diff_binary_cb)(
|
|
471
|
+
const git_diff_delta *delta,
|
|
472
|
+
const git_diff_binary *binary,
|
|
473
|
+
void *payload);
|
|
474
|
+
|
|
426
475
|
/**
|
|
427
476
|
* Structure describing a hunk of a diff.
|
|
428
477
|
*/
|
|
@@ -895,6 +944,7 @@ GIT_EXTERN(int) git_diff_is_sorted_icase(const git_diff *diff);
|
|
|
895
944
|
*
|
|
896
945
|
* @param diff A git_diff generated by one of the above functions.
|
|
897
946
|
* @param file_cb Callback function to make per file in the diff.
|
|
947
|
+
* @param binary_cb Optional callback to make for binary files.
|
|
898
948
|
* @param hunk_cb Optional callback to make per hunk of text diff. This
|
|
899
949
|
* callback is called to describe a range of lines in the
|
|
900
950
|
* diff. It will not be issued for binary files.
|
|
@@ -907,6 +957,7 @@ GIT_EXTERN(int) git_diff_is_sorted_icase(const git_diff *diff);
|
|
|
907
957
|
GIT_EXTERN(int) git_diff_foreach(
|
|
908
958
|
git_diff *diff,
|
|
909
959
|
git_diff_file_cb file_cb,
|
|
960
|
+
git_diff_binary_cb binary_cb,
|
|
910
961
|
git_diff_hunk_cb hunk_cb,
|
|
911
962
|
git_diff_line_cb line_cb,
|
|
912
963
|
void *payload);
|
|
@@ -982,6 +1033,7 @@ GIT_EXTERN(int) git_diff_print(
|
|
|
982
1033
|
* @param new_as_path Treat new blob as if it had this filename; can be NULL
|
|
983
1034
|
* @param options Options for diff, or NULL for default options
|
|
984
1035
|
* @param file_cb Callback for "file"; made once if there is a diff; can be NULL
|
|
1036
|
+
* @param binary_cb Callback for binary files; can be NULL
|
|
985
1037
|
* @param hunk_cb Callback for each hunk in diff; can be NULL
|
|
986
1038
|
* @param line_cb Callback for each line in diff; can be NULL
|
|
987
1039
|
* @param payload Payload passed to each callback function
|
|
@@ -994,6 +1046,7 @@ GIT_EXTERN(int) git_diff_blobs(
|
|
|
994
1046
|
const char *new_as_path,
|
|
995
1047
|
const git_diff_options *options,
|
|
996
1048
|
git_diff_file_cb file_cb,
|
|
1049
|
+
git_diff_binary_cb binary_cb,
|
|
997
1050
|
git_diff_hunk_cb hunk_cb,
|
|
998
1051
|
git_diff_line_cb line_cb,
|
|
999
1052
|
void *payload);
|
|
@@ -1017,6 +1070,7 @@ GIT_EXTERN(int) git_diff_blobs(
|
|
|
1017
1070
|
* @param buffer_as_path Treat buffer as if it had this filename; can be NULL
|
|
1018
1071
|
* @param options Options for diff, or NULL for default options
|
|
1019
1072
|
* @param file_cb Callback for "file"; made once if there is a diff; can be NULL
|
|
1073
|
+
* @param binary_cb Callback for binary files; can be NULL
|
|
1020
1074
|
* @param hunk_cb Callback for each hunk in diff; can be NULL
|
|
1021
1075
|
* @param line_cb Callback for each line in diff; can be NULL
|
|
1022
1076
|
* @param payload Payload passed to each callback function
|
|
@@ -1030,6 +1084,7 @@ GIT_EXTERN(int) git_diff_blob_to_buffer(
|
|
|
1030
1084
|
const char *buffer_as_path,
|
|
1031
1085
|
const git_diff_options *options,
|
|
1032
1086
|
git_diff_file_cb file_cb,
|
|
1087
|
+
git_diff_binary_cb binary_cb,
|
|
1033
1088
|
git_diff_hunk_cb hunk_cb,
|
|
1034
1089
|
git_diff_line_cb line_cb,
|
|
1035
1090
|
void *payload);
|
|
@@ -1049,6 +1104,7 @@ GIT_EXTERN(int) git_diff_blob_to_buffer(
|
|
|
1049
1104
|
* @param new_as_path Treat buffer as if it had this filename; can be NULL
|
|
1050
1105
|
* @param options Options for diff, or NULL for default options
|
|
1051
1106
|
* @param file_cb Callback for "file"; made once if there is a diff; can be NULL
|
|
1107
|
+
* @param binary_cb Callback for binary files; can be NULL
|
|
1052
1108
|
* @param hunk_cb Callback for each hunk in diff; can be NULL
|
|
1053
1109
|
* @param line_cb Callback for each line in diff; can be NULL
|
|
1054
1110
|
* @param payload Payload passed to each callback function
|
|
@@ -1063,6 +1119,7 @@ GIT_EXTERN(int) git_diff_buffers(
|
|
|
1063
1119
|
const char *new_as_path,
|
|
1064
1120
|
const git_diff_options *options,
|
|
1065
1121
|
git_diff_file_cb file_cb,
|
|
1122
|
+
git_diff_binary_cb binary_cb,
|
|
1066
1123
|
git_diff_hunk_cb hunk_cb,
|
|
1067
1124
|
git_diff_line_cb line_cb,
|
|
1068
1125
|
void *payload);
|