include


Log

Author Commit Date CI Message
lhchavez ce5400cd 2021-01-06T06:26:09 graph: Create `git_graph_reachable_from_any()` This change introduces a new API function `git_graph_reachable_from_any()`, that answers the question whether a commit is reachable from any of the provided commits through following parent edges. This function can take advantage of optimizations provided by the existence of a `commit-graph` file, since it makes it faster to know whether, given two commits X and Y, X cannot possibly be an reachable from Y. Part of: #5757
Edward Thomson 2370e491 2021-07-26T16:27:54 Merge pull request #5765 from lhchavez/cgraph-revwalks commit-graph: Use the commit-graph in revwalks
Edward Thomson 43b5075d 2021-07-22T17:07:56 Merge pull request #5890 from lolgear/git_submodule_dup [Submodule] Git submodule dup
Edward Thomson ed4a12ae 2021-07-02T18:27:14 Merge pull request #5917 from tiennou/fix/docurium-issues docs: fix some missing includes that cause Docurium to error out
Dmitry Lobanov 428f1acf 2021-06-15T17:33:03 submodule: git submodule dup out and source parameters have become mandatory.
Edward Thomson 0d0150d8 2021-06-15T07:42:20 Merge pull request #5910 from arxanas/patch-1
Waleed Khan 1bdd937d 2021-06-14T17:25:35 Update index.h
Waleed Khan 0b3f6da4 2021-06-13T16:42:00 Fix misleading doc for `git_index_find` In https://github.com/libgit2/libgit2/pull/5723/files/fc46dc06f52f854f74371682f911f13856c68edb#r540092847, I was confused by the semantics of `git_index_find`. The documentation says both that it returns the output value in `at_pos` and that it returns it directly as an `int`. This is incorrect; the return value is only returned via `at_pos`.
punkymaniac a2fa9a57 2021-06-02T14:49:33 Add some missing documentation about return value
punkymaniac eeacd234 2021-06-02T14:47:24 Fix struct indentation
punkymaniac 8b79a3f9 2021-06-02T14:46:12 Remove bad space in documentation
punkymaniac 75defb75 2021-05-18T10:51:20 Add documentation about GIT_OPT_GET_USER_AGENT
Dmitry Lobanov ca2ff5ab 2021-06-01T17:52:57 submodule: git submodule dup documentation has been fixed.
Etienne Samson 3e178547 2021-05-27T16:26:38 docs: fix some missing includes that cause Docurium to error out
Dmitry Lobanov 11aa20b0 2021-05-26T14:06:31 submodule: git submodule dup object dup has been added.
Edward Thomson 1ee3c37f 2021-05-19T09:31:30 Merge branch 'pr/5853'
Dmitry Lobanov 49f9941d 2021-05-16T23:54:25 submodule: git submodule dup has been added.
Edward Thomson 3532c5f4 2021-05-16T11:29:47 Merge pull request #5850 from punkymaniac/comment-format Fix documentation formatting
Edward Thomson 58944388 2021-05-16T11:11:56 Merge branch 'zero_oid_in_old' Manually merging #5842
Edward Thomson 68b9605a 2021-05-06T15:37:31 filter: deprecate git_filter_list_apply_to_data Deprecate `git_filter_list_apply_to_data` as it takes user input as a `git_buf`. Users should use `git_filter_list_apply_to_buffer` instead.
Edward Thomson 5309b465 2021-05-06T15:24:30 filter: introduce git_filter_list_apply_to_buffer Provide a filter application mechanism that takes a user-provided string and length, instead of a `git_buf`.
Edward Thomson 26846f4c 2021-05-06T15:19:58 filter: remove git_buf sharing in `git_filter_list_apply_to_data` The API `git_filter_list_apply_to_data` shares data between its out and in parameters to avoid unnecessarily copying it when there are no filters to apply. However, it does so in a manner that is potentially confusing, leaving both `git_buf`s populated with data. This is risky for end-users who have to know how to deal with this. Instead, we remove this optimization - users who want to avoid unnecessary copies can use the longstanding streaming API or check the filter status before invoking the filters.
Edward Thomson 9869f1e5 2021-05-06T02:19:49 filter: deprecate git_filter_list_stream_data `git_filter_list_stream_data` takes user input in a `git_buf`. `git_buf` should only be used when libgit2 itself needs to allocate data and returned to a user that they can free when they wish. Replace it with `git_filter_list_stream_buffer` that takes a data buffer and length.
yuuri ed94f549 2021-05-01T20:26:49 diff:add option to ignore blank line changes
punkymaniac 58697f6a 2021-04-21T15:44:39 Uniformise documentation return code separator
punkymaniac 330b24d7 2021-04-21T15:46:28 Fix typo
punkymaniac 51cb4390 2021-04-21T15:34:50 Fix documentation formatting The return code description use '-' char as list of return value. But with the generation of the documentation the char '-' create an ambiguous return code value who seem an negative value.
David Turner 95b7a639 2021-04-14T21:52:36 git_reference_create_matching: Treat all-zero OID as "must be absent" This is pretty useful in avoiding races: I want to create a ref only if it doesn't already exist. I can't check first because of TOCTOU -- by the time I finish the check, someone else might have already created the ref. And I can't take a lock because then I can't do the create, since the create expects to take the lock. The semantics are inspired by git update-ref, which allows an all-zero old value to mean that the ref must not exist.
Edward Thomson 9f295e21 2021-04-13T11:47:01 Merge pull request #5838 from mjsir911/msirabella/entrycount_typo_fix Fix diff_entrycount -> diff_num_deltas doc typo
Marco Sirabella 96585597 2021-04-12T23:52:03 Fix diff_entrycount -> diff_num_deltas doc typo This just fixes a typo in the documentation, actual rename change was done in 5f69a31f
lhchavez 25b75cd9 2021-03-10T07:06:15 commit-graph: Create `git_commit_graph` as an abstraction for the file This change does a medium-size refactor of the git_commit_graph_file and the interaction with the ODB. Now instead of the ODB owning a direct reference to the git_commit_graph_file, there will be an intermediate git_commit_graph. The main advantage of that is that now end users can explicitly set a git_commit_graph that is eagerly checked for errors, while still being able to lazily use the commit-graph in a regular ODB, if the file is present.
Edward Thomson 4f4b1139 2021-03-10T11:21:39 Merge pull request #5815 from libgit2/ethomson/treebuilder_write tree: deprecate `git_treebuilder_write_with_buffer`
Edward Thomson 7eb21516 2021-02-28T00:20:28 tree: deprecate `git_treebuilder_write_with_buffer` The function `git_treebuilder_write_with_buffer` is unnecessary; it is used internally as part of treebuilder writing, but it has little use to external callers. For callers that repeatedly write a treebuilder, we can supply them with a buffer in the treebuilder struct instead of recreating it. For ourselves, when we want a single buffer in our write loop, we can use an internal function.
Edward Thomson 922d73c6 2021-02-28T10:59:10 Merge pull request #5805 from tniessen/include-typos include: fix typos in comments
Tobias Nießen 25efbc4b 2021-02-22T22:57:16 include: fix typos in comments
punkymaniac 3bb5f297 2021-02-22T14:58:46 Fix documentation formating on repository.h The enum 'git_repository_init_flag_t', 'git_repository_init_mode_t' and the structure 'git_repository_init_options' does not follow the format used by docurium.
Edward Thomson 02eb1711 2021-02-01T10:07:00 Merge pull request #5731 from KOLANICH-libs/owner_accessor patch: add owner accessor
Edward Thomson 4732e030 2021-01-31T00:36:54 revspec: rename git_revparse_mode_t to git_revspec_t The information about the type of a revision spec is not information about the parser. Name it accordingly, so that `git_revparse_mode_t` is now `git_revspec_t`. Deprecate the old name.
Edward Thomson c31032a3 2021-01-07T10:15:25 Merge pull request #5760 from libgit2/ethomson/tttoo_many_ttts blob: fix name of `GIT_BLOB_FILTER_ATTRIBUTES_FROM_HEAD`
Josh Stockin ddafbafe 2021-01-05T17:26:50 Update documentation for git_blob_filter_options Adds info about initializing options with git_blob_filter_options_init
Edward Thomson 855f2998 2021-01-05T14:45:14 blob: fix name of `GIT_BLOB_FILTER_ATTRIBUTES_FROM_HEAD` `GIT_BLOB_FILTER_ATTTRIBUTES_FROM_HEAD` is misspelled, it should be `GIT_BLOB_FILTER_ATTRIBUTES_FROM_HEAD`, and it would be if it were not for the MacBook Pro keyboard and my inattentiveness.
Edward Thomson d9c15387 2021-01-05T14:29:58 blob: add git_blob_filter_options_init The `git_blob_filter_options_init` function should be included, to allow callers in FFI environments to let us initialize an options structure for them.
Josh Stockin f1151fb3 2021-01-04T16:29:10 Fix documentation for git_blob_filter_options
Josh Stockin 556e0747 2021-01-04T10:56:01 Move doc comment about `GIT_BLOB_FILTER_OPTIONS_VERSION` Removes doc comment on `git_blob_filter_options.version`, moves information to `git_blob_filter_options` doc comment to remain consistent with other options structures' documentation. `git_blob_filter_options_init` still needed; should be added in another commit/PR (it's out of the scope of this PR, #5759), update this documentation again.
Josh Stockin 0af0f7fd 2021-01-03T20:39:45 Add documentation for git_blob_filter_options.version Resolves #5756
Miguel Arroz ed7b20e7 2020-12-21T17:26:34 Add support for additional hostkey types. Specifically: ECDSA_256, ECDSA_384, ECDSA_521 and ED25519.
Jason Haslam 58d757b1 2016-11-14T16:52:33 patch: add owner accessor
lhchavez 29fe5f61 2020-11-22T18:25:00 Also add the raw hostkey to `git_cert_hostkey` `git_cert_x509` has the raw encoded certificate. Let's do the same for the SSH certificate for symmetry.
Edward Thomson abb7a7e4 2020-04-05T10:11:34 blob: use GIT_ASSERT
Sven Strickroth 0caa4655 2020-09-09T10:48:00 Add git_tag_name_is_valid Signed-off-by: Sven Strickroth <email@cs-ware.de>
Sven Strickroth fe11160c 2020-09-08T21:05:18 Add git_branch_name_is_valid Signed-off-by: Sven Strickroth <email@cs-ware.de>
Edward Thomson c7143d7c 2020-10-11T13:56:16 remote: deprecate git_remote_is_valid_name
Edward Thomson 023ebb9a 2020-10-11T13:48:07 refs: introduce git_remote_name_is_valid Provide a function that can check remote name validity but can also signal when an error occurs. Use the name "name_is_valid", which is more suggestive of checking a given name, rather than "is_valid_name", which suggests that the function checks the validity of the current remote's name.
Edward Thomson 63460fe4 2020-10-11T13:21:13 refs: deprecate git_reference_is_valid_name
Edward Thomson 29715d40 2020-10-11T12:50:52 refs: introduce git_reference_name_is_valid Provide a function that can check reference name validity but can also signal when an error occurs. Use the name "name_is_valid", which is more suggestive of checking a given name, rather than "is_valid_name", which suggests that the function checks the validity of the current reference's name.
Edward Thomson f10c8875 2020-10-11T23:04:08 Release v1.1
Ikko Ashimine 4b93f165 2020-10-04T12:45:26 Fixed typo in comment occured -> occurred
Sven Strickroth 090e7d85 2020-09-10T22:41:15 Fix deprecation links inside of documentation not working Signed-off-by: Sven Strickroth <email@cs-ware.de>
Sven e46ef5ee 2020-08-18T14:58:21 docs: fix typo
lhchavez eab2b044 2020-06-26T16:10:30 Review feedback * Change the default of the file limit to 0 (unlimited). * Changed the heuristic to close files to be the file that contains the least-recently-used window such that the window is the most-recently-used in the file, and the file does not have in-use windows. * Parameterized the filelimit test to check for a limit of 1 and 100 open windows.
lhchavez 9679df57 2020-02-08T20:47:24 mwindow: set limit on number of open files There are some cases in which repositories accrue a large number of packfiles. The existing mwindow limit applies only to the total size of mmap'd files, not on their number. This leads to a situation in which having lots of small packfiles could exhaust the allowed number of open files, particularly on macOS, where the default ulimit is very low (256). This change adds a new configuration parameter (GIT_OPT_SET_MWINDOW_FILE_LIMIT) that sets the maximum number of open packfiles, with a default of 128. This is low enough so that even macOS users should not hit it during normal use. Based on PR #5386, originally written by @josharian. Fixes: #2758
Patrick Steinhardt d43d490c 2020-06-17T17:51:19 Merge pull request #5419 from lhchavez/fix-git_index_add_from_buffer-docs index: Update the documentation for git_index_add_from_buffer()
Edward Thomson 6de8aa7f 2020-06-02T12:21:22 Merge pull request #5532 from joshtriplett/pack-default-path git_packbuilder_write: Allow setting path to NULL to use the default path
Edward Thomson 5eb48a14 2020-05-29T13:17:39 strarray: deprecate git_strarray_copy We should not be in the business of copying strings around for users. We either return a strarray that can be freed, or we take one (and do not mutate it).
Edward Thomson 51eff5a5 2020-05-29T13:13:19 strarray: we should `dispose` instead of `free` We _dispose_ the contents of objects; we _free_ objects (and their contents). Update `git_strarray_free` to be `git_strarray_dispose`. `git_strarray_free` remains as a deprecated proxy function.
Josh Triplett 5278a006 2020-05-23T16:07:54 git_packbuilder_write: Allow setting path to NULL to use the default path If given a NULL path, write to the object path of the repository. Add tests for the new behavior.
Edward Thomson abe2efe1 2019-12-09T12:37:34 Introduce GIT_ASSERT macros Provide macros to replace usages of `assert`. A true `assert` is punishing as a library. Instead we should do our best to not crash. GIT_ASSERT_ARG(x) will now assert that the given argument complies to some format and sets an error message and returns `-1` if it does not. GIT_ASSERT(x) is for internal usage, and available as an internal consistency check. It will set an error message and return `-1` in the event of failure.
Carl Schwan 9830ab3d 2020-01-29T02:00:04 blame: add option to ignore whitespace changes
Patrick Steinhardt 274b2a01 2020-03-28T10:29:13 version.h: bump version to v1.0.0
Patrick Steinhardt ca782c91 2020-03-26T13:57:31 Merge pull request #5464 from pks-t/pks/refdb-backend-docs refdb_backend: improve callback documentation
Edward Thomson fad840d7 2020-03-26T12:03:28 credentials: provide backcompat for opaque structs The credential structures are now opaque and defined in `sys/credential.h`. However, we should continue to provide them for backward compatibility, unless `GIT_DEPRECATED_HARD` is set.
Patrick Steinhardt 3bbbe95a 2020-03-26T09:41:09 refdb_backend: improve callback documentation The callbacks are currently sparsely documented, making it really hard to implement a new backend without taking a look at the existing refdb_fs backend. Add documentation to make this task hopefully easier to achieve.
Josh Bleecher Snyder a5886e9e 2020-03-07T16:04:04 repository: improve commondir docs Fixes #5428
lhchavez cff4ca26 2020-02-23T06:33:27 index: Update the documentation for git_index_add_from_buffer() This change makes the docs reflect reality. The id and size were never updated in the entry!
Edward Thomson 70062e28 2019-10-31T17:46:21 version: update the version number to v0.99 This commit also switches our SOVERSION to be "$MAJOR.$MINOR" instead of "$MINOR", only. This is in preparation of v1.0, where the previous scheme would've stopped working in an obvious way.
Patrick Steinhardt aa4cd778 2020-01-30T10:40:44 Merge pull request #5336 from libgit2/ethomson/credtype cred: change enum to git_credential_t and GIT_CREDENTIAL_*
Edward Thomson 3f54ba8b 2020-01-18T13:51:40 credential: change git_cred to git_credential We avoid abbreviations where possible; rename git_cred to git_credential. In addition, we have standardized on a trailing `_t` for enum types, instead of using "type" in the name. So `git_credtype_t` has become `git_credential_t` and its members have become `GIT_CREDENTIAL` instead of `GIT_CREDTYPE`. Finally, the source and header files have been renamed to `credential` instead of `cred`. Keep previous name and values as deprecated, and include the new header files from the previous ones.
Edward Thomson 4cae9e71 2020-01-18T18:02:08 git_libgit2_version: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson f78f6bd5 2020-01-18T18:00:39 error functions: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson 4b331f02 2020-01-18T17:56:05 revwalk functions: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson 82050fa1 2020-01-18T17:53:26 mempack functions: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson a3126a72 2020-01-18T17:50:38 repository functions: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson cb43274a 2020-01-18T17:42:52 index functions: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson 82154e58 2020-01-18T17:41:21 remote functions: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson 3351506a 2020-01-18T17:38:36 tree functions: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson 2e8c3b0b 2020-01-18T17:17:46 oid functions: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson 9893d376 2020-01-18T15:41:20 git_attr_cache_flush: return an int Stop returning a void for functions, future-proofing them to allow them to fail.
Edward Thomson e9cef7c4 2020-01-11T23:53:45 http: introduce GIT_ERROR_HTTP Disambiguate between general network problems and HTTP problems in error codes.
Edward Thomson 7372573b 2019-10-25T12:22:10 httpclient: support expect/continue Allow users to opt-in to expect/continue handling when sending a POST and we're authenticated with a "connection-based" authentication mechanism like NTLM or Negotiate. If the response is a 100, return to the caller (to allow them to post their body). If the response is *not* a 100, buffer the response for the caller. HTTP expect/continue is generally safe, but some legacy servers have not implemented it correctly. Require it to be opt-in.
Laurence McGlashan 1bddbd02 2020-01-15T10:30:00 merge: Return non-const git_repository from git_merge_driver_source_repo accessor.
Remy Suen 5930cf25 2020-01-02T14:57:55 Correct typo in name of referenced parameter Signed-off-by: Remy Suen <remy.suen@gmail.com>
Patrick Steinhardt 2f6f10bb 2019-12-13T13:35:40 Merge pull request #5300 from tiennou/fix/branch-documentation branch: clarify documentation around branches
Etienne Samson 97b8491b 2019-12-08T15:25:52 refs: rename git_reference__set_name to git_reference__realloc As git_reference__name will reallocate storage to account for longer names (it's actually allocator-dependent), it will cause all existing pointers to the old object to become dangling, as they now point to freed memory. Fix the issue by renaming to a more descriptive name, and pass a pointer to the actual reference that can safely be invalidated if the realloc succeeds.
Etienne Samson 39f78b0c 2019-12-07T10:31:27 branch: clarify documentation around branches
Josh Bleecher Snyder 64e6db5b 2019-12-04T14:37:26 stash: make comment match code There is no git_stash_apply_flags_t above.
Edward Thomson d298f9b2 2019-12-01T14:11:56 Merge pull request #5315 from kastiglione/dl/fix-copypaste-in-git_cherrypick_commit-docstring Fix copy&paste in git_cherrypick_commit docstring
Dave Lee b7cf4b9e 2019-11-29T14:16:04 Fix copy&paste in git_cherrypick_commit docstring
Patrick Steinhardt fb439c97 2019-11-28T14:41:58 Merge pull request #5306 from herrerog/patchid diff: complete support for git patchid
Patrick Steinhardt 0b5540b9 2019-11-28T13:56:54 Merge pull request #5307 from palmin/hash_sha256 ssh: include sha256 host key hash when supported
Patrick Steinhardt 0e5243b7 2019-11-28T12:42:36 Merge pull request #5123 from libgit2/ethomson/off_t Move `git_off_t` to `git_object_size_t`