1 /*
2  * Copyright (C) the libgit2 contributors. All rights reserved.
3  *
4  * This file is part of libgit2, distributed under the GNU GPL v2 with
5  * a Linking Exception. For full terms see the included COPYING file.
6  */
7 module libgit2_d.deprecated_;
8 
9 
10 private static import libgit2_d.attr;
11 private static import libgit2_d.blame;
12 private static import libgit2_d.buffer;
13 private static import libgit2_d.checkout;
14 private static import libgit2_d.cherrypick;
15 private static import libgit2_d.clone;
16 private static import libgit2_d.config;
17 private static import libgit2_d.credential;
18 private static import libgit2_d.credential_helpers;
19 private static import libgit2_d.describe;
20 private static import libgit2_d.diff;
21 private static import libgit2_d.errors;
22 private static import libgit2_d.index;
23 private static import libgit2_d.indexer;
24 private static import libgit2_d.merge;
25 private static import libgit2_d.oid;
26 private static import libgit2_d.proxy;
27 private static import libgit2_d.rebase;
28 private static import libgit2_d.refs;
29 private static import libgit2_d.remote;
30 private static import libgit2_d.repository;
31 private static import libgit2_d.revert;
32 private static import libgit2_d.stash;
33 private static import libgit2_d.status;
34 private static import libgit2_d.submodule;
35 private static import libgit2_d.trace;
36 private static import libgit2_d.types;
37 private static import libgit2_d.worktree;
38 
39 extern (C):
40 nothrow @nogc:
41 public:
42 deprecated:
43 
44 /*
45  * Users can avoid deprecated functions by defining `GIT_DEPRECATE_HARD`.
46  */
47 version (GIT_DEPRECATE_HARD) {
48 } else {
49 	/**
50 	 * @file git2/deprecated.h
51 	 * @brief libgit2 deprecated functions and values
52 	 * @ingroup Git
53 	 * @{
54 	 */
55 
56 	/** @name Deprecated Attribute Constants
57 	 *
58 	 * These enumeration values are retained for backward compatibility.
59 	 * The newer versions of these functions should be preferred in all
60 	 * new code.
61 	 *
62 	 * There is no plan to remove these backward compatibility values at
63 	 * this time.
64 	 */
65 	/**@{*/
66 
67 	enum GIT_ATTR_UNSPECIFIED_T = libgit2_d.attr.git_attr_value_t.GIT_ATTR_VALUE_UNSPECIFIED;
68 	enum GIT_ATTR_TRUE_T = libgit2_d.attr.git_attr_value_t.GIT_ATTR_VALUE_TRUE;
69 	enum GIT_ATTR_FALSE_T = libgit2_d.attr.git_attr_value_t.GIT_ATTR_VALUE_FALSE;
70 	enum GIT_ATTR_VALUE_T = libgit2_d.attr.git_attr_value_t.GIT_ATTR_VALUE_STRING;
71 
72 	version (none) {
73 		alias GIT_ATTR_TRUE = GIT_ATTR_IS_TRUE;
74 		alias GIT_ATTR_FALSE = GIT_ATTR_IS_FALSE;
75 		alias GIT_ATTR_UNSPECIFIED = GIT_ATTR_IS_UNSPECIFIED;
76 	}
77 
78 	alias git_attr_t = libgit2_d.attr.git_attr_value_t;
79 
80 	/**@}*/
81 
82 	/** @name Deprecated Blob Functions
83 	 *
84 	 * These functions are retained for backward compatibility.  The newer
85 	 * versions of these functions should be preferred in all new code.
86 	 *
87 	 * There is no plan to remove these backward compatibility values at
88 	 * this time.
89 	 */
90 	/**@{*/
91 
92 	//GIT_EXTERN
93 	int git_blob_create_fromworkdir(libgit2_d.oid.git_oid* id, libgit2_d.types.git_repository* repo, const (char)* relative_path);
94 
95 	//GIT_EXTERN
96 	int git_blob_create_fromdisk(libgit2_d.oid.git_oid* id, libgit2_d.types.git_repository* repo, const (char)* path);
97 
98 	//GIT_EXTERN
99 	int git_blob_create_fromstream(libgit2_d.types.git_writestream** out_, libgit2_d.types.git_repository* repo, const (char)* hintpath);
100 
101 	//GIT_EXTERN
102 	int git_blob_create_fromstream_commit(libgit2_d.oid.git_oid* out_, libgit2_d.types.git_writestream* stream);
103 
104 	//GIT_EXTERN
105 	int git_blob_create_frombuffer(libgit2_d.oid.git_oid* id, libgit2_d.types.git_repository* repo, const (void)* buffer, size_t len);
106 
107 	/**
108 	 * Deprecated in favor of @see git_blob_filter
109 	 */
110 	//GIT_EXTERN
111 	int git_blob_filtered_content(libgit2_d.buffer.git_buf* out_, libgit2_d.types.git_blob* blob, const (char)* as_path, int check_for_binary_data);
112 
113 	/**@}*/
114 
115 	/** @name Deprecated Buffer Functions
116 	 *
117 	 * These functions and enumeration values are retained for backward
118 	 * compatibility.  The newer versions of these functions should be
119 	 * preferred in all new code.
120 	 *
121 	 * There is no plan to remove these backward compatibility values at
122 	 * this time.
123 	 */
124 	/**@{*/
125 
126 	/**
127 	 * Free the memory referred to by the git_buf.  This is an alias of
128 	 * `git_buf_dispose` and is preserved for backward compatibility.
129 	 *
130 	 * This function is deprecated, but there is no plan to remove this
131 	 * function at this time.
132 	 *
133 	 * @deprecated Use git_buf_dispose
134 	 * @see git_buf_dispose
135 	 */
136 	//GIT_EXTERN
137 	void git_buf_free(libgit2_d.buffer.git_buf* buffer);
138 
139 	/**@}*/
140 
141 	/** @name Deprecated Config Functions and Constants
142 	 */
143 	/**@{*/
144 
145 	enum GIT_CVAR_FALSE = libgit2_d.config.git_configmap_t.GIT_CONFIGMAP_FALSE;
146 	enum GIT_CVAR_TRUE = libgit2_d.config.git_configmap_t.GIT_CONFIGMAP_TRUE;
147 	enum GIT_CVAR_INT32 = libgit2_d.config.git_configmap_t.GIT_CONFIGMAP_INT32;
148 	enum GIT_CVAR_STRING = libgit2_d.config.git_configmap_t.GIT_CONFIGMAP_STRING;
149 
150 	alias git_cvar_map = libgit2_d.config.git_configmap;
151 
152 	/**@}*/
153 
154 	/** @name Deprecated Error Functions and Constants
155 	 *
156 	 * These functions and enumeration values are retained for backward
157 	 * compatibility.  The newer versions of these functions and values
158 	 * should be preferred in all new code.
159 	 *
160 	 * There is no plan to remove these backward compatibility values at
161 	 * this time.
162 	 */
163 	/**@{*/
164 
165 	enum GITERR_NONE = libgit2_d.errors.git_error_t.GIT_ERROR_NONE;
166 	enum GITERR_NOMEMORY = libgit2_d.errors.git_error_t.GIT_ERROR_NOMEMORY;
167 	enum GITERR_OS = libgit2_d.errors.git_error_t.GIT_ERROR_OS;
168 	enum GITERR_INVALID = libgit2_d.errors.git_error_t.GIT_ERROR_INVALID;
169 	enum GITERR_REFERENCE = libgit2_d.errors.git_error_t.GIT_ERROR_REFERENCE;
170 	enum GITERR_ZLIB = libgit2_d.errors.git_error_t.GIT_ERROR_ZLIB;
171 	enum GITERR_REPOSITORY = libgit2_d.errors.git_error_t.GIT_ERROR_REPOSITORY;
172 	enum GITERR_CONFIG = libgit2_d.errors.git_error_t.GIT_ERROR_CONFIG;
173 	enum GITERR_REGEX = libgit2_d.errors.git_error_t.GIT_ERROR_REGEX;
174 	enum GITERR_ODB = libgit2_d.errors.git_error_t.GIT_ERROR_ODB;
175 	enum GITERR_INDEX = libgit2_d.errors.git_error_t.GIT_ERROR_INDEX;
176 	enum GITERR_OBJECT = libgit2_d.errors.git_error_t.GIT_ERROR_OBJECT;
177 	enum GITERR_NET = libgit2_d.errors.git_error_t.GIT_ERROR_NET;
178 	enum GITERR_TAG = libgit2_d.errors.git_error_t.GIT_ERROR_TAG;
179 	enum GITERR_TREE = libgit2_d.errors.git_error_t.GIT_ERROR_TREE;
180 	enum GITERR_INDEXER = libgit2_d.errors.git_error_t.GIT_ERROR_INDEXER;
181 	enum GITERR_SSL = libgit2_d.errors.git_error_t.GIT_ERROR_SSL;
182 	enum GITERR_SUBMODULE = libgit2_d.errors.git_error_t.GIT_ERROR_SUBMODULE;
183 	enum GITERR_THREAD = libgit2_d.errors.git_error_t.GIT_ERROR_THREAD;
184 	enum GITERR_STASH = libgit2_d.errors.git_error_t.GIT_ERROR_STASH;
185 	enum GITERR_CHECKOUT = libgit2_d.errors.git_error_t.GIT_ERROR_CHECKOUT;
186 	enum GITERR_FETCHHEAD = libgit2_d.errors.git_error_t.GIT_ERROR_FETCHHEAD;
187 	enum GITERR_MERGE = libgit2_d.errors.git_error_t.GIT_ERROR_MERGE;
188 	enum GITERR_SSH = libgit2_d.errors.git_error_t.GIT_ERROR_SSH;
189 	enum GITERR_FILTER = libgit2_d.errors.git_error_t.GIT_ERROR_FILTER;
190 	enum GITERR_REVERT = libgit2_d.errors.git_error_t.GIT_ERROR_REVERT;
191 	enum GITERR_CALLBACK = libgit2_d.errors.git_error_t.GIT_ERROR_CALLBACK;
192 	enum GITERR_CHERRYPICK = libgit2_d.errors.git_error_t.GIT_ERROR_CHERRYPICK;
193 	enum GITERR_DESCRIBE = libgit2_d.errors.git_error_t.GIT_ERROR_DESCRIBE;
194 	enum GITERR_REBASE = libgit2_d.errors.git_error_t.GIT_ERROR_REBASE;
195 	enum GITERR_FILESYSTEM = libgit2_d.errors.git_error_t.GIT_ERROR_FILESYSTEM;
196 	enum GITERR_PATCH = libgit2_d.errors.git_error_t.GIT_ERROR_PATCH;
197 	enum GITERR_WORKTREE = libgit2_d.errors.git_error_t.GIT_ERROR_WORKTREE;
198 	enum GITERR_SHA1 = libgit2_d.errors.git_error_t.GIT_ERROR_SHA1;
199 
200 	/**
201 	 * Return the last `git_error` object that was generated for the
202 	 * current thread.  This is an alias of `git_error_last` and is
203 	 * preserved for backward compatibility.
204 	 *
205 	 * This function is deprecated, but there is no plan to remove this
206 	 * function at this time.
207 	 *
208 	 * @deprecated Use git_error_last
209 	 * @see git_error_last
210 	 */
211 	//GIT_EXTERN
212 	const (libgit2_d.errors.git_error)* giterr_last();
213 
214 	/**
215 	 * Clear the last error.  This is an alias of `git_error_last` and is
216 	 * preserved for backward compatibility.
217 	 *
218 	 * This function is deprecated, but there is no plan to remove this
219 	 * function at this time.
220 	 *
221 	 * @deprecated Use git_error_clear
222 	 * @see git_error_clear
223 	 */
224 	//GIT_EXTERN
225 	void giterr_clear();
226 
227 	/**
228 	 * Sets the error message to the given string.  This is an alias of
229 	 * `git_error_set_str` and is preserved for backward compatibility.
230 	 *
231 	 * This function is deprecated, but there is no plan to remove this
232 	 * function at this time.
233 	 *
234 	 * @deprecated Use git_error_set_str
235 	 * @see git_error_set_str
236 	 */
237 	//GIT_EXTERN
238 	void giterr_set_str(int error_class, const (char)* string_);
239 
240 	/**
241 	 * Indicates that an out-of-memory situation occured.  This is an alias
242 	 * of `git_error_set_oom` and is preserved for backward compatibility.
243 	 *
244 	 * This function is deprecated, but there is no plan to remove this
245 	 * function at this time.
246 	 *
247 	 * @deprecated Use git_error_set_oom
248 	 * @see git_error_set_oom
249 	 */
250 	//GIT_EXTERN
251 	void giterr_set_oom();
252 
253 	/**@}*/
254 
255 	/** @name Deprecated Index Functions and Constants
256 	 *
257 	 * These functions and enumeration values are retained for backward
258 	 * compatibility.  The newer versions of these values should be
259 	 * preferred in all new code.
260 	 *
261 	 * There is no plan to remove these backward compatibility values at
262 	 * this time.
263 	 */
264 	/**@{*/
265 
266 	enum GIT_IDXENTRY_NAMEMASK = libgit2_d.index.GIT_INDEX_ENTRY_NAMEMASK;
267 	enum GIT_IDXENTRY_STAGEMASK = libgit2_d.index.GIT_INDEX_ENTRY_STAGEMASK;
268 	enum GIT_IDXENTRY_STAGESHIFT = libgit2_d.index.GIT_INDEX_ENTRY_STAGESHIFT;
269 
270 	/* The git_indxentry_flag_t enum */
271 	enum GIT_IDXENTRY_EXTENDED = libgit2_d.index.git_index_entry_flag_t.GIT_INDEX_ENTRY_EXTENDED;
272 	enum GIT_IDXENTRY_VALID = libgit2_d.index.git_index_entry_flag_t.GIT_INDEX_ENTRY_VALID;
273 
274 	alias GIT_IDXENTRY_STAGE = libgit2_d.index.GIT_INDEX_ENTRY_STAGE;
275 	alias GIT_IDXENTRY_STAGE_SET = libgit2_d.index.GIT_INDEX_ENTRY_STAGE_SET;
276 
277 	/* The git_idxentry_extended_flag_t enum */
278 	enum GIT_IDXENTRY_INTENT_TO_ADD = libgit2_d.index.git_index_entry_extended_flag_t.GIT_INDEX_ENTRY_INTENT_TO_ADD;
279 	enum GIT_IDXENTRY_SKIP_WORKTREE = libgit2_d.index.git_index_entry_extended_flag_t.GIT_INDEX_ENTRY_SKIP_WORKTREE;
280 	enum GIT_IDXENTRY_EXTENDED_FLAGS = libgit2_d.index.git_index_entry_extended_flag_t.GIT_INDEX_ENTRY_INTENT_TO_ADD | libgit2_d.index.git_index_entry_extended_flag_t.GIT_INDEX_ENTRY_SKIP_WORKTREE;
281 	enum GIT_IDXENTRY_EXTENDED2 = 1 << 15;
282 	enum GIT_IDXENTRY_UPDATE = 1 << 0;
283 	enum GIT_IDXENTRY_REMOVE = 1 << 1;
284 	enum GIT_IDXENTRY_UPTODATE = 1 << 2;
285 	enum GIT_IDXENTRY_ADDED = 1 << 3;
286 	enum GIT_IDXENTRY_HASHED = 1 << 4;
287 	enum GIT_IDXENTRY_UNHASHED = 1 << 5;
288 	enum GIT_IDXENTRY_WT_REMOVE = 1 << 6;
289 	enum GIT_IDXENTRY_CONFLICTED = 1 << 7;
290 	enum GIT_IDXENTRY_UNPACKED = 1 << 8;
291 	enum GIT_IDXENTRY_NEW_SKIP_WORKTREE = 1 << 9;
292 
293 	/* The git_index_capability_t enum */
294 	enum GIT_INDEXCAP_IGNORE_CASE = libgit2_d.index.git_index_capability_t.GIT_INDEX_CAPABILITY_IGNORE_CASE;
295 	enum GIT_INDEXCAP_NO_FILEMODE = libgit2_d.index.git_index_capability_t.GIT_INDEX_CAPABILITY_NO_FILEMODE;
296 	enum GIT_INDEXCAP_NO_SYMLINKS = libgit2_d.index.git_index_capability_t.GIT_INDEX_CAPABILITY_NO_SYMLINKS;
297 	enum GIT_INDEXCAP_FROM_OWNER = libgit2_d.index.git_index_capability_t.GIT_INDEX_CAPABILITY_FROM_OWNER;
298 
299 	//GIT_EXTERN
300 	int git_index_add_frombuffer(libgit2_d.types.git_index* index, const (libgit2_d.index.git_index_entry)* entry, const (void)* buffer, size_t len);
301 
302 	/**@}*/
303 
304 	/** @name Deprecated Object Constants
305 	 *
306 	 * These enumeration values are retained for backward compatibility.  The
307 	 * newer versions of these values should be preferred in all new code.
308 	 *
309 	 * There is no plan to remove these backward compatibility values at
310 	 * this time.
311 	 */
312 	/**@{*/
313 
314 	alias git_otype = libgit2_d.types.git_object_t;
315 
316 	enum GIT_OBJ_ANY = libgit2_d.types.git_object_t.GIT_OBJECT_ANY;
317 	enum GIT_OBJ_BAD = libgit2_d.types.git_object_t.GIT_OBJECT_INVALID;
318 	enum GIT_OBJ__EXT1 = 0;
319 	enum GIT_OBJ_COMMIT = libgit2_d.types.git_object_t.GIT_OBJECT_COMMIT;
320 	enum GIT_OBJ_TREE = libgit2_d.types.git_object_t.GIT_OBJECT_TREE;
321 	enum GIT_OBJ_BLOB = libgit2_d.types.git_object_t.GIT_OBJECT_BLOB;
322 	enum GIT_OBJ_TAG = libgit2_d.types.git_object_t.GIT_OBJECT_TAG;
323 	enum GIT_OBJ__EXT2 = 5;
324 	enum GIT_OBJ_OFS_DELTA = libgit2_d.types.git_object_t.GIT_OBJECT_OFS_DELTA;
325 	enum GIT_OBJ_REF_DELTA = libgit2_d.types.git_object_t.GIT_OBJECT_REF_DELTA;
326 
327 	/**
328 	 * Get the size in bytes for the structure which
329 	 * acts as an in-memory representation of any given
330 	 * object type.
331 	 *
332 	 * For all the core types, this would the equivalent
333 	 * of calling `sizeof(git_commit)` if the core types
334 	 * were not opaque on the external API.
335 	 *
336 	 * Params:
337 	 *      type = object type to get its size
338 	 *
339 	 * Returns: size in bytes of the object
340 	 */
341 	//GIT_EXTERN
342 	size_t git_object__size(libgit2_d.types.git_object_t type);
343 
344 	/**@}*/
345 
346 	/** @name Deprecated Reference Constants
347 	 *
348 	 * These enumeration values are retained for backward compatibility.  The
349 	 * newer versions of these values should be preferred in all new code.
350 	 *
351 	 * There is no plan to remove these backward compatibility values at
352 	 * this time.
353 	 */
354 	/**@{*/
355 
356 	/** Basic type of any Git reference. */
357 	alias git_ref_t = libgit2_d.types.git_reference_t;
358 	alias git_reference_normalize_t = libgit2_d.refs.git_reference_format_t;
359 
360 	enum GIT_REF_INVALID = libgit2_d.types.git_reference_t.GIT_REFERENCE_INVALID;
361 	enum GIT_REF_OID = libgit2_d.types.git_reference_t.GIT_REFERENCE_DIRECT;
362 	enum GIT_REF_SYMBOLIC = libgit2_d.types.git_reference_t.GIT_REFERENCE_SYMBOLIC;
363 	enum GIT_REF_LISTALL = libgit2_d.types.git_reference_t.GIT_REFERENCE_ALL;
364 
365 	enum GIT_REF_FORMAT_NORMAL = libgit2_d.refs.git_reference_format_t.GIT_REFERENCE_FORMAT_NORMAL;
366 	enum GIT_REF_FORMAT_ALLOW_ONELEVEL = libgit2_d.refs.git_reference_format_t.GIT_REFERENCE_FORMAT_ALLOW_ONELEVEL;
367 	enum GIT_REF_FORMAT_REFSPEC_PATTERN = libgit2_d.refs.git_reference_format_t.GIT_REFERENCE_FORMAT_REFSPEC_PATTERN;
368 	enum GIT_REF_FORMAT_REFSPEC_SHORTHAND = libgit2_d.refs.git_reference_format_t.GIT_REFERENCE_FORMAT_REFSPEC_SHORTHAND;
369 
370 	//GIT_EXTERN
371 	int git_tag_create_frombuffer(libgit2_d.oid.git_oid* oid, libgit2_d.types.git_repository* repo, const (char)* buffer, int force);
372 
373 	/**@}*/
374 
375 	/** @name Deprecated Credential Types
376 	 *
377 	 * These types are retained for backward compatibility.  The newer
378 	 * versions of these values should be preferred in all new code.
379 	 *
380 	 * There is no plan to remove these backward compatibility values at
381 	 * this time.
382 	 */
383 
384 	alias git_cred = libgit2_d.credential.git_credential;
385 	alias git_cred_userpass_plaintext = libgit2_d.credential.git_credential_userpass_plaintext;
386 	alias git_cred_username = libgit2_d.credential.git_credential_username;
387 	alias git_cred_default = libgit2_d.credential.git_credential_default;
388 	alias git_cred_ssh_key = libgit2_d.credential.git_credential_ssh_key;
389 	alias git_cred_ssh_interactive = libgit2_d.credential.git_credential_ssh_interactive;
390 	alias git_cred_ssh_custom = libgit2_d.credential.git_credential_ssh_custom;
391 
392 	alias git_cred_acquire_cb = libgit2_d.credential.git_credential_acquire_cb;
393 	alias git_cred_sign_callback = libgit2_d.credential.git_credential_sign_cb;
394 	alias git_cred_sign_cb = libgit2_d.credential.git_credential_sign_cb;
395 	alias git_cred_ssh_interactive_callback = libgit2_d.credential.git_credential_ssh_interactive_cb;
396 	alias git_cred_ssh_interactive_cb = libgit2_d.credential.git_credential_ssh_interactive_cb;
397 
398 	alias git_credtype_t = libgit2_d.credential.git_credential_t;
399 
400 	alias GIT_CREDTYPE_USERPASS_PLAINTEXT = libgit2_d.credential.git_credential_t.GIT_CREDENTIAL_USERPASS_PLAINTEXT;
401 	alias GIT_CREDTYPE_SSH_KEY = libgit2_d.credential.git_credential_t.GIT_CREDENTIAL_SSH_KEY;
402 	alias GIT_CREDTYPE_SSH_CUSTOM = libgit2_d.credential.git_credential_t.GIT_CREDENTIAL_SSH_CUSTOM;
403 	alias GIT_CREDTYPE_DEFAULT = libgit2_d.credential.git_credential_t.GIT_CREDENTIAL_DEFAULT;
404 	alias GIT_CREDTYPE_SSH_INTERACTIVE = libgit2_d.credential.git_credential_t.GIT_CREDENTIAL_SSH_INTERACTIVE;
405 	alias GIT_CREDTYPE_USERNAME = libgit2_d.credential.git_credential_t.GIT_CREDENTIAL_USERNAME;
406 	alias GIT_CREDTYPE_SSH_MEMORY = libgit2_d.credential.git_credential_t.GIT_CREDENTIAL_SSH_MEMORY;
407 
408 	//GIT_EXTERN
409 	void git_cred_free(libgit2_d.credential.git_credential* cred);
410 
411 	//GIT_EXTERN
412 	int git_cred_has_username(libgit2_d.credential.git_credential* cred);
413 
414 	//GIT_EXTERN
415 	const (char)* git_cred_get_username(libgit2_d.credential.git_credential* cred);
416 
417 	//GIT_EXTERN
418 	int git_cred_userpass_plaintext_new(libgit2_d.credential.git_credential** out_, const (char)* username, const (char)* password);
419 
420 	//GIT_EXTERN
421 	int git_cred_default_new(libgit2_d.credential.git_credential** out_);
422 
423 	//GIT_EXTERN
424 	int git_cred_username_new(libgit2_d.credential.git_credential** out_, const (char)* username);
425 
426 	//GIT_EXTERN
427 	int git_cred_ssh_key_new(libgit2_d.credential.git_credential** out_, const (char)* username, const (char)* publickey, const (char)* privatekey, const (char)* passphrase);
428 
429 	//GIT_EXTERN
430 	int git_cred_ssh_key_memory_new(libgit2_d.credential.git_credential** out_, const (char)* username, const (char)* publickey, const (char)* privatekey, const (char)* passphrase);
431 
432 	//GIT_EXTERN
433 	int git_cred_ssh_interactive_new(libgit2_d.credential.git_credential** out_, const (char)* username, libgit2_d.credential.git_credential_ssh_interactive_cb prompt_callback, void* payload);
434 
435 	//GIT_EXTERN
436 	int git_cred_ssh_key_from_agent(libgit2_d.credential.git_credential** out_, const (char)* username);
437 
438 	//GIT_EXTERN
439 	int git_cred_ssh_custom_new(libgit2_d.credential.git_credential** out_, const (char)* username, const (char)* publickey, size_t publickey_len, libgit2_d.credential.git_credential_sign_cb sign_callback, void* payload);
440 
441 	/* Deprecated Credential Helper Types */
442 
443 	alias git_cred_userpass_payload = libgit2_d.credential_helpers.git_credential_userpass_payload;
444 
445 	//GIT_EXTERN
446 	int git_cred_userpass(libgit2_d.credential.git_credential** out_, const (char)* url, const (char)* user_from_url, uint allowed_types, void* payload);
447 
448 	/**@}*/
449 
450 	/** @name Deprecated Trace Callback Types
451 	 *
452 	 * These types are retained for backward compatibility.  The newer
453 	 * versions of these values should be preferred in all new code.
454 	 *
455 	 * There is no plan to remove these backward compatibility values at
456 	 * this time.
457 	 */
458 	/**@{*/
459 
460 	alias git_trace_callback = libgit2_d.trace.git_trace_cb;
461 
462 	/**@}*/
463 
464 	/** @name Deprecated Object ID Types
465 	 *
466 	 * These types are retained for backward compatibility.  The newer
467 	 * versions of these values should be preferred in all new code.
468 	 *
469 	 * There is no plan to remove these backward compatibility values at
470 	 * this time.
471 	 */
472 	/**@{*/
473 
474 	//GIT_EXTERN
475 	int git_oid_iszero(const (libgit2_d.oid.git_oid)* id);
476 
477 	/**@}*/
478 
479 	/** @name Deprecated Transfer Progress Types
480 	 *
481 	 * These types are retained for backward compatibility.  The newer
482 	 * versions of these values should be preferred in all new code.
483 	 *
484 	 * There is no plan to remove these backward compatibility values at
485 	 * this time.
486 	 */
487 	/**@{*/
488 
489 	/**
490 	 * This structure is used to provide callers information about the
491 	 * progress of indexing a packfile.
492 	 *
493 	 * This type is deprecated, but there is no plan to remove this
494 	 * type definition at this time.
495 	 */
496 	alias git_transfer_progress = libgit2_d.indexer.git_indexer_progress;
497 
498 	/**
499 	 * Type definition for progress callbacks during indexing.
500 	 *
501 	 * This type is deprecated, but there is no plan to remove this
502 	 * type definition at this time.
503 	 */
504 	alias git_transfer_progress_cb = libgit2_d.indexer.git_indexer_progress_cb;
505 
506 	/**
507 	 * Type definition for push transfer progress callbacks.
508 	 *
509 	 * This type is deprecated, but there is no plan to remove this
510 	 * type definition at this time.
511 	 */
512 	alias git_push_transfer_progress = libgit2_d.remote.git_push_transfer_progress_cb;
513 
514 	/**
515 	 * The type of a remote completion event
516 	 */
517 	alias git_remote_completion_type = libgit2_d.remote.git_remote_completion_t;
518 
519 	/**
520 	 * Callback for listing the remote heads
521 	 */
522 	alias git_headlist_cb = int function(libgit2_d.types.git_remote_head* rhead, void* payload);
523 
524 	/**@}*/
525 
526 	/** @name Deprecated Options Initialization Functions
527 	 *
528 	 * These functions are retained for backward compatibility.  The newer
529 	 * versions of these functions should be preferred in all new code.
530 	 *
531 	 * There is no plan to remove these backward compatibility functions at
532 	 * this time.
533 	 */
534 	/**@{*/
535 
536 	//GIT_EXTERN
537 	int git_blame_init_options(libgit2_d.blame.git_blame_options* opts, uint version_);
538 
539 	//GIT_EXTERN
540 	int git_checkout_init_options(libgit2_d.checkout.git_checkout_options* opts, uint version_);
541 
542 	//GIT_EXTERN
543 	int git_cherrypick_init_options(libgit2_d.cherrypick.git_cherrypick_options* opts, uint version_);
544 
545 	//GIT_EXTERN
546 	int git_clone_init_options(libgit2_d.clone.git_clone_options* opts, uint version_);
547 
548 	//GIT_EXTERN
549 	int git_describe_init_options(libgit2_d.describe.git_describe_options* opts, uint version_);
550 
551 	//GIT_EXTERN
552 	int git_describe_init_format_options(libgit2_d.describe.git_describe_format_options* opts, uint version_);
553 
554 	//GIT_EXTERN
555 	int git_diff_init_options(libgit2_d.diff.git_diff_options* opts, uint version_);
556 
557 	//GIT_EXTERN
558 	int git_diff_find_init_options(libgit2_d.diff.git_diff_find_options* opts, uint version_);
559 
560 	//GIT_EXTERN
561 	int git_diff_format_email_init_options(libgit2_d.diff.git_diff_format_email_options* opts, uint version_);
562 
563 	//GIT_EXTERN
564 	int git_diff_patchid_init_options(libgit2_d.diff.git_diff_patchid_options* opts, uint version_);
565 
566 	//GIT_EXTERN
567 	int git_fetch_init_options(libgit2_d.remote.git_fetch_options* opts, uint version_);
568 
569 	//GIT_EXTERN
570 	int git_indexer_init_options(libgit2_d.indexer.git_indexer_options* opts, uint version_);
571 
572 	//GIT_EXTERN
573 	int git_merge_init_options(libgit2_d.merge.git_merge_options* opts, uint version_);
574 
575 	//GIT_EXTERN
576 	int git_merge_file_init_input(libgit2_d.merge.git_merge_file_input* input, uint version_);
577 
578 	//GIT_EXTERN
579 	int git_merge_file_init_options(libgit2_d.merge.git_merge_file_options* opts, uint version_);
580 
581 	//GIT_EXTERN
582 	int git_proxy_init_options(libgit2_d.proxy.git_proxy_options* opts, uint version_);
583 
584 	//GIT_EXTERN
585 	int git_push_init_options(libgit2_d.remote.git_push_options* opts, uint version_);
586 
587 	//GIT_EXTERN
588 	int git_rebase_init_options(libgit2_d.rebase.git_rebase_options* opts, uint version_);
589 
590 	//GIT_EXTERN
591 	int git_remote_create_init_options(libgit2_d.remote.git_remote_create_options* opts, uint version_);
592 
593 	//GIT_EXTERN
594 	int git_repository_init_init_options(libgit2_d.repository.git_repository_init_options* opts, uint version_);
595 
596 	//GIT_EXTERN
597 	int git_revert_init_options(libgit2_d.revert.git_revert_options* opts, uint version_);
598 
599 	//GIT_EXTERN
600 	int git_stash_apply_init_options(libgit2_d.stash.git_stash_apply_options* opts, uint version_);
601 
602 	//GIT_EXTERN
603 	int git_status_init_options(libgit2_d.status.git_status_options* opts, uint version_);
604 
605 	//GIT_EXTERN
606 	int git_submodule_update_init_options(libgit2_d.submodule.git_submodule_update_options* opts, uint version_);
607 
608 	//GIT_EXTERN
609 	int git_worktree_add_init_options(libgit2_d.worktree.git_worktree_add_options* opts, uint version_);
610 
611 	//GIT_EXTERN
612 	int git_worktree_prune_init_options(libgit2_d.worktree.git_worktree_prune_options* opts, uint version_);
613 
614 	/**@}*/
615 
616 	/** @} */
617 }