16323 Commits

Author SHA1 Message Date
Edward Thomson
8ae0a22bf9 Documentation: don't resort versions
Array.sort() mutates the array _and_ returns it; don't mutate the
version array.
2024-12-09 17:02:37 +00:00
Edward Thomson
cd8f2730f1 Merge pull request #6953 from libgit2/ethomson/docs-search
Add search functionality to our docs generator
2024-12-09 13:13:15 +00:00
Edward Thomson
5efc00612c Generate search page in documentation generation 2024-12-09 12:39:21 +00:00
Edward Thomson
6297b6195c Add search capabilities to docs
Include "minisearch" which is a straightforward client-side search tool;
and a script to generate the search index for minisearch for each
version of libgit2.
2024-12-09 12:39:21 +00:00
Edward Thomson
1da67ef096 Allow documentation (re)generation in CI build
Provide a mechanism to allow the documentation to be force rebuilt.
2024-12-09 12:39:21 +00:00
Ryan Pham
2adb7bc3f5 refs: Handle normalizing negative refspecs
Negative refspecs were added in Git v2.29.0 which allows refspecs to be
prefixed with `^`[^1]. Currently, the library is unable to normalize
negative refspecs which causes errors in different tools that rely on
`libgit2`. Specifically, when the library attempts to parse and
normalize a negative refspec, it returns a `GIT_EINVALIDSPEC` code.

Add the ability to correctly normalize negative refspecs. While this PR
will not update the behavior of `fetch`, or other actions that rely on
negative refspecs, this allows us to be able to successfully parse and
normalize them. A future change will handle updating the individual
actions.

[^1]: c0192df630
2024-11-28 13:11:40 +09:00
Edward Thomson
c86842f0a5 Merge pull request #6938 from mathworks/lrm29-ssh-hostkey-check
ssh: Include rsa-sha2-256 and rsa-sha2-512 in the list of hostkey types
2024-11-26 22:32:07 +00:00
Edward Thomson
b8ad17faf5 Merge pull request #6949 from libgit2/ethomson/docs
Improve documentation and validate during CI
2024-11-26 22:14:51 +00:00
Edward Thomson
338ceb93b6 Improve documentation 2024-11-26 21:44:09 +00:00
Edward Thomson
5353a2cc20 reflog: remove unused sys functions
The `git_reflog_entry__alloc` function is not actually defined, nor
used. Remove references to it in the headers. It is not clear why the
corresponding `__free` is, or should be, exported. Make it internal to
the library.
2024-11-26 21:22:10 +00:00
Edward Thomson
8e516778ce Add CI step to validate documentation changes
Run our documentation generator in "validate only" mode to ensure that
new changes coming in to the repository have documented our changes
fully.
2024-11-26 21:22:10 +00:00
Edward Thomson
0bd5e479b2 Introduce a "validate only" mode for docs generation
The API documentation generation is useful (in `--strict` mode) to
determine whether all our APIs have sufficient documentation. Add a
`--validate-only` mode that will run the validation without emitting the
API JSON. This is useful for ensuring that the documentation is
complete.
2024-11-26 21:22:10 +00:00
Edward Thomson
e74b9c64a1 Merge pull request #6948 from libgit2/ethomson/docs-ci
Update documentation generation workflow
2024-11-26 20:24:01 +00:00
Edward Thomson
9321800612 Update documentation generation workflow
Ensure that workflows where the main branch exists (eg, anything except
PR workflows) don't try to recreate the main branch. Add a concurrency
token so that we don't have conflicts generating documentation.
2024-11-26 20:00:15 +00:00
Edward Thomson
07c77d497b Merge pull request #6945 from libgit2/ethomson/docs-ci
Include documentation generator
2024-11-25 23:00:49 +00:00
Edward Thomson
89cc5ef8e8 Include documentation generator
libgit2 has a new documentation generator that generates API schema from
our headers, then produces reference documentation that is included into
the website directly.
2024-11-25 23:00:07 +00:00
lmcglash
eb84531575 Clear data after negotiation 2024-11-25 21:55:43 +00:00
Edward Thomson
0a6051c624 Merge pull request #6927 from Caleb-T-Owens/merge-base-many-docs
Update documentation of `merge_base_many`
2024-11-24 22:30:22 +00:00
lmcglash
98fee5212f Cast size_t to int 2024-11-20 21:46:20 +00:00
lmcglash
6ee06ca737 Remove unnecessary comment. 2024-11-20 21:32:24 +00:00
lmcglash
27549bdcce object: core.abbrev accepts string values 2024-11-20 21:27:45 +00:00
Laurence McGlashan
728e63f092 ssh: Include rsa-sha2-256 and rsa-sha2-512 in the list of preferred hostkey types 2024-11-15 09:30:09 +00:00
Bruno S Marques
17a9aae732 Merge branch 'libgit2:main' into main 2024-11-06 15:10:48 -03:00
Edward Thomson
c6111ec06c Merge pull request #6929 from lrm29/util_win32_rmdir_access_denied
util/win32: Continue if access is denied when deleting a folder.
2024-10-29 15:54:07 -04:00
Edward Thomson
b363ea4b9e Merge pull request #6932 from ajacoutot/openbsd-realpath 2024-10-27 10:40:33 +00:00
Antoine Jacoutot
d1f1e17404 realpath: unbreak build on OpenBSD 2024-10-27 09:47:31 +01:00
Laurence McGlashan
57ae4b11b6 util/win32: Continue if access is denied when deleting a folder. 2024-10-25 20:29:55 +01:00
Caleb Owens
d2f5ce220c Update documentation of merge_base_many 2024-10-23 19:10:39 +01:00
Edward Thomson
a6ee48d4e3 Merge pull request #6926 from libgit2/ethomson/ci
ci: port latest fixes to nightlies
2024-10-23 16:18:04 +01:00
Edward Thomson
73ac58fb72 ci: port latest fixes to nightlies
We've made some changes to our CI builds; move them to nightlies.
2024-10-23 13:42:10 +01:00
Edward Thomson
8691f1ee16 Merge pull request #6925 from libgit2/ethomson/ossf_best_practices
readme: add OpenSSF best practices badge
2024-10-23 10:31:47 +01:00
Edward Thomson
95149d2c77 readme: add OpenSSF best practices badge 2024-10-23 10:30:20 +01:00
Edward Thomson
e3467ddb9d Merge pull request #6924 from libgit2/ethomson/cmake_deps
Improve dependency selection in CMake
2024-10-22 14:53:17 +01:00
Vladyslav Yeremeichuk
b190162f3e Add the ability to get the number of objects in mempack
Implement git_mempack_object_count, which returns the number of
objects in mempack and -1 on error.
2024-10-22 13:58:10 +03:00
Edward Thomson
95f47a3458 ci: update noble build
Ubuntu noble clang is now `clang-18`; update that, and update valgrind
to v3.23.0 so that clang compiles it properly.
2024-10-22 11:45:58 +01:00
Edward Thomson
13a326f4c1 ci: build and test with system http-parser 2024-10-22 11:45:58 +01:00
Edward Thomson
22ee5a59a2 docs: update README for dependency selection 2024-10-22 11:45:58 +01:00
Edward Thomson
d37d6a9f03 cmake: better document dependency options 2024-10-22 11:45:58 +01:00
Edward Thomson
e536b2c50c cmake: enforce USE_SHA1 and USE_SHA256 validity 2024-10-22 11:45:58 +01:00
Edward Thomson
d1d65787b4 cmake: enforce USE_HTTPS validity 2024-10-22 11:45:58 +01:00
Edward Thomson
2125e3c64d cmake: enforce USE_SSH validity
Validate the USE_SSH option fits into our valid options; don't
assume a default.
2024-10-22 11:13:43 +01:00
Edward Thomson
0c675b8c84 cmake: enforce USE_HTTP_PARSER validity
When `-DUSE_HTTP_PARSER=...` is specified, ensure that the specified
HTTP Parser is valid, do not fallback to builtin.

Restore `-DUSE_HTTP_PARSER=system` for backcompatibility.
2024-10-22 10:07:12 +01:00
Edward Thomson
533ec839bd Merge pull request #6920 from libgit2/ethomson/blame_benchmarks
Add benchmarks for blame
2024-10-21 22:22:41 +01:00
Vladyslav Yeremeichuk
d1be60bbe8 Add the ability to check if a mempack is empty
Implement git_mempack_empty, which returns 1 if the mempack is empty
and 0 otherwise.
2024-10-21 22:42:56 +03:00
Edward Thomson
e68d0b4b95 benchmark: skip (don't fail) needs_repo tests
If a test needs a repo that isn't provide it, mark it as skipped and
avoid failing the execution.
2024-10-21 17:29:52 +01:00
Edward Thomson
d4222f8321 ci: don't run blame on torvalds/linux (yet)
blame on torvalds/linux is too punishing for our current implementation;
don't run it (yet).
2024-10-21 16:28:35 +01:00
Edward Thomson
df3d8a6799 ci: allow inputs to benchmark 2024-10-21 15:15:41 +01:00
Edward Thomson
229181bf9b Merge pull request #6919 from libgit2/ethomson/sha256_ci
ci: don't run Windows SHA256 gitdaemon tests
2024-10-21 15:06:37 +01:00
Edward Thomson
90e659d0b9 ci: only publish benchmarks nightly
Allow for workflow_dispatch jobs to run, but don't publish their test
results; this is useful for testing workflows themselves.
2024-10-21 15:03:14 +01:00
Edward Thomson
4f40bd9f09 benchmark: show helpful errors w/o local repo
When running without a local test repository, show a helpful error
message.
2024-10-21 15:03:14 +01:00