summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* rebase: deprecate signing_cbethomson/commit_create_cbEdward Thomson2021-08-295-34/+63
| | | | | The signing callback should not be used; instead, callers should provide a commit_create_cb, perform the signing and commit creation themselves.
* rebase: introduce git_commit_create_cbEdward Thomson2021-08-294-35/+349
| | | | | | | Introduce a new mechanism for `git_rebase_commit` for callers to customize the experience. Instead of assuming that we produce the commit for them, provide a commit creation callback that allows callers to produce the commit themselves and return the resulting commit id.
* Merge pull request #6015 from boretrk/c89-commentsEdward Thomson2021-08-292-9/+9
|\
| * tests: change comments to c89 stylePeter Pettersson2021-08-292-9/+9
|/
* Merge pull request #5508 from libgit2/ethomson/devcontainerEdward Thomson2021-08-284-0/+66
|\ | | | | WIP: .devcontainer: settings for a codespace workflow
| * VSCode: build in parallelethomson/devcontainerEdward Thomson2021-08-021-1/+1
| |
| * Update VSCode / Github Codespaces workflowEdward Thomson2021-08-024-1/+64
| |
| * .devcontainer: settings for a codespace workflowEdward Thomson2021-08-021-0/+3
| | | | | | | | Add devcontainer settings for running within a codespace.
* | Merge pull request #6013 from lolgear/cmake_hash_sha_missing_headerEdward Thomson2021-08-281-0/+1
|\ \ | | | | | | CMake. hash sha1 header has been added.
| * | cmake: select hashes umbrella variable has been removed.Dmitry Lobanov2021-08-281-2/+1
| | | | | | | | | Co-authored-by: Edward Thomson <ethomson@github.com>
| * | cmake: select hashes missing umbrella header has been added.Dmitry Lobanov2021-08-281-0/+2
|/ /
* | Merge pull request #6008 from boretrk/arrayEdward Thomson2021-08-271-8/+8
|\ \ | | | | | | git_array_alloc: return objects of correct type
| * | git_array_alloc: return objects of correct typePeter Pettersson2021-08-251-8/+8
| | |
* | | Merge pull request #5747 from lhchavez/atomic-testsEdward Thomson2021-08-275-52/+234
|\ \ \ | | | | | | | | Homogenize semantics for atomic-related functions
| * | | Homogenize semantics for atomic-related functionslhchavez2021-08-265-52/+234
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were some subtle semantic differences between the various implementations of atomic functions. Now they behave the same, have tests and are better documented to avoid this from happening again in the future. Of note: * The semantics chosen for `git_atomic_compare_and_swap` match `InterlockedCompareExchangePointer`/`__sync_cal_compare_and_swap` now. * The semantics chosen for `git_atomic_add` match `InterlockedAdd`/`__atomic_add_fetch`. * `git_atomic_swap` and `git_atomic_load` still have a bit of semantic difference with the gcc builtins / msvc interlocked operations, since they require an l-value (not a pointer). If desired, this can be homogenized.
* | | | Merge pull request #6010 from A-Ovchinnikov-mx/a-ovchin/remote-head-branch-cloneEdward Thomson2021-08-262-44/+33
|\ \ \ \ | |/ / / |/| | | Set refs/remotes/origin/HEAD to default branch when branch is specified
| * | | Check if default branch matches refspecAlexander Ovchinnikov2021-08-261-0/+3
| | | |
| * | | clone: set refs/remotes/origin/HEAD to default branch when branch is ↵Alexander Ovchinnikov2021-08-262-7/+22
| | | | | | | | | | | | | | | | specified, attempt 2
| * | | Revert "Merge pull request #5775 from libgit2/ethomson/clone_branch"Alexander Ovchinnikov2021-08-262-50/+21
|/ / / | | | | | | | | | | | | This reverts commit 487f2a8287c4d1d41d39e05ac53d0e50c679d7e9, reversing changes made to c6cf7f0e6927f1b264a7dda2467d70b9f744a01f.
* | | Merge pull request #6007 from boretrk/arrayEdward Thomson2021-08-253-8/+9
|\ \ \ | |/ / | | | array: check dereference from void * type
| * | array: fix dereference from void * typePeter Pettersson2021-08-252-4/+5
| | |
| * | array: make gcc keep the type of the NULL return valuePeter Pettersson2021-08-251-4/+4
| | |
* | | Merge pull request #6006 from boretrk/c11-warningsEdward Thomson2021-08-254-15/+16
|\ \ \ | |/ / |/| | GCC C11 warnings
| * | win32: name the dummy union in GIT_REPARSE_DATA_BUFFERPeter Pettersson2021-08-253-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | Instead of buf->"typeofbuffer"ReparseBuffer the members will be referenced with buf->ReparseBuffer."typeofbuffer" https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/ntifs/ns-ntifs-_reparse_data_buffer?redirectedfrom=MSDN calls the union DUMMYUNIONNAME but that looks a bit cluttered.
| * | enable gcc warnings for C11 specific extensionsPeter Pettersson2021-08-251-0/+1
| | |
* | | Merge pull request #5802 from lhchavez/git-warn-unused-resultEdward Thomson2021-08-2514-35/+65
|\ \ \ | | | | | | | | Introduce GIT_WARN_UNUSED_RESULT
| * | | formattinglhchavez2021-08-081-4/+4
| | | |
| * | | Get Win32 builds to buildlhchavez2021-08-082-19/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the location of `GIT_WARN_UNUSED_RESULT` was causing it to be included _after_ a bunch of other headers (namely `src/vector.h`), which broke the build. This change does two things: * Moves the `GIT_WARN_UNUSED_RESULT` above most of the `$include`s in `src/common.h`. * Stops including `vector.h` from `src/win32/path_w32.c` since the header itself does not use it.
| * | | Move GIT_WARN_UNUSED_RESULT from the public to the private APIlhchavez2021-08-082-18/+18
| | | |
| * | | Handle one more unused variable introduced since the PR startedlhchavez2021-08-081-1/+7
| | | |
| * | | Add guidelines for the GIT_WARN_UNUSED_RESULT annotationlhchavez2021-08-081-1/+12
| | | |
| * | | Be a little bit less aggressive GIT_WARN_UNUSED_RESULTlhchavez2021-08-081-9/+6
| | | | | | | | | | | | | | | | | | | | Now we're limiting ourselves to only functions that allocate or acquire locks.
| * | | Proof-of-concept for a more aggressive GIT_UNUSED()lhchavez2021-08-088-18/+22
| | | | | | | | | | | | | | | | | | | | | | | | This adds a `-Wunused-result`-proof `GIT_UNUSED()`, just to demonstrate that it works. With this, sortedcache.h is now completely `GIT_WARN_UNUSED_RESULT`-annotated!
| * | | Introduce GIT_WARN_UNUSED_RESULTlhchavez2021-08-085-21/+34
| | |/ | |/| | | | | | | | | | This change adds the GIT_WARN_UNUSED_RESULT annotation, which makes the compiler warn when a return result is not used. This avoids bugs.
* | | Merge pull request #5950 from boretrk/posixtestEdward Thomson2021-08-2513-21/+44
|\ \ \ | |_|/ |/| | open: input validation for empty segments in path
| * | bugfix: don't generate paths with empty segmentsPeter Pettersson2021-08-082-5/+6
| | |
| * | tests: don't generate false positives on empty path segmentsPeter Pettersson2021-08-085-15/+16
| | |
| * | tests: optional test for p_open() with empty path segmentsPeter Pettersson2021-08-086-1/+22
| |/
* | Merge pull request #6005 from boretrk/c11-warningsEdward Thomson2021-08-253-6/+7
|\ \ | | | | | | C11 warnings
| * | c90/c99: name the unnamed union in git_hash_ctxPeter Pettersson2021-08-252-6/+6
| | |
| * | enable warnings for C11 specific extensionsPeter Pettersson2021-08-251-0/+1
|/ /
* | Merge pull request #5974 from libgit2/ethomson/dlopen_sslEdward Thomson2021-08-2431-546/+1852
|\ \ | | | | | | Dynamically load OpenSSL (optionally)
| * | ci: run dynamically loaded openssl workflows nightlyethomson/dlopen_sslEdward Thomson2021-08-241-0/+35
| | | | | | | | | | | | | | | Add Xenial, Bionic, CentOS 7 and 8 workflows with OpenSSL-Dynamic builds nightly.
| * | openssl: lazily load libraries when dynamically loadingEdward Thomson2021-08-241-6/+53
| | | | | | | | | | | | | | | Defer dlopen until it's needed when dynamically loading OpenSSL libraries.
| * | openssl: dynamically load on macOSEdward Thomson2021-08-241-0/+2
| | |
| * | tests: show errors when libgit2_init failsEdward Thomson2021-08-241-1/+3
| | |
| * | ntlmclient: update to ntlmclient 0.9.1Edward Thomson2021-08-2417-346/+623
| | | | | | | | | | | | The ntlmclient dependency can now dynamically load OpenSSL.
| * | valgrind: suppress leaks in dlopen and newer librariesEdward Thomson2021-08-241-0/+64
| | | | | | | | | | | | | | | | | | dlopen sets up some thread-local state that isn't cleaned up by `dlclose`. Additionally, now that we're linking against different versions of libssh2 and OpenSSL, we're seeing different leak signatures.
| * | openssl: dynamically load libssl and symbols (optionally)Edward Thomson2021-08-2411-84/+902
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide an interface around OpenSSL to dynamically load the libraries and symbols, so that users can distribute a libgit2 library that is not linked directly against OpenSSL. This enables users to target multiple distributions with a single binary. This mechanism is optional and disabled by default. Configure cmake with -DUSE_HTTPS=OpenSSL-Dynamic to use it.
| * | openssl: separate legacy apiEdward Thomson2021-08-243-188/+249
|/ / | | | | | | | | Refactor the OpenSSL stream implementation so that the legacy code is better abstracted. This will enable future development.