Edward Thomson
ed0d15e6f8
checkpoint
2025-02-23 14:42:52 +00:00
Edward Thomson
e88fbdb69a
checkpoint
2025-02-20 00:11:25 +00:00
Edward Thomson
07d0f7e028
checkpoint
2025-02-19 23:28:32 +00:00
Edward Thomson
31fa5617eb
str: introduce git_str_shellquote
...
Introduce a helper method to quote a string in a shellsafe manner. This
wraps the entire buffer in single quotes, escaping single-quotes and
exclamation points.
2025-02-18 14:15:34 +00:00
Edward Thomson
f327ee09f2
str: simple string replacement
2025-02-18 14:06:08 +00:00
Edward Thomson
b042e57406
Merge pull request #7038 from libgit2/ethomson/ci
...
ci: update download-artifact version
2025-02-07 22:02:10 +00:00
Edward Thomson
1b3598c0c6
ci: update download-artifact version
2025-02-07 20:59:56 +00:00
Edward Thomson
1cd6872e8f
Merge pull request #7008 from libgit2/ethomson/benchmark_version
...
benchmarks: report commit of build
2025-02-03 17:21:35 +00:00
Edward Thomson
3822833a7a
Merge pull request #7007 from libgit2/ethomson/buildinfo
...
Introduce git_libgit2_buildinfo
2025-02-03 17:20:55 +00:00
Edward Thomson
bad4a0785f
Merge pull request #7029 from libgit2/ethomson/clar-update
...
clar: update to latest version
2025-02-03 17:19:41 +00:00
Edward Thomson
d34d905d11
Merge pull request #7030 from libgit2/ethomson/version
...
Include common.h in version.h
2025-01-23 13:51:43 -08:00
Edward Thomson
72d49bb0de
clar: update to latest version
...
Update to the latest version (in HEAD) of clar. This affords us improved
test directory creation, and the `cl_invoke` helper macro.
2025-01-23 10:32:52 +00:00
Edward Thomson
24b5096712
Include common.h in version.h
...
Fixes #7027
2025-01-23 00:22:34 +00:00
Edward Thomson
1b348a3134
Merge pull request #7026 from emilazy/push-npwwprvzrmmr
...
conflict tests: check `core.ignorecase`
2025-01-21 13:42:07 -08:00
Emily
96bdc04fbb
conflict tests: check core.ignorecase
...
Not all filesystems on Apple and Windows platforms are
case‐insensitive; this test would previously fail on a
case‐sensitive APFS volume.
2025-01-21 21:19:32 +00:00
Edward Thomson
3eadce3d0b
Merge pull request #7019 from vapier/main
...
alternates: allow relative paths in all repositories
2025-01-21 13:04:10 -08:00
Edward Thomson
99dbff8d7c
Merge pull request #7025 from libgit2/ethomson/test_updates
...
Test updates
2025-01-21 05:10:01 -08:00
Edward Thomson
346930e280
Merge pull request #7018 from libgit2/ethomson/icase_filters
...
attr: honor ignorecase in attribute matching
2025-01-20 15:09:50 -08:00
Edward Thomson
c48364cd6a
filter: set a temporary sysdir in test
...
The filter tests mutate state, and should set a temporary sysdir to do
so.
2025-01-20 22:45:59 +00:00
Edward Thomson
21af9ec86c
test: set a temporary PROGRAMDATA directory
...
Like we set temporary system and global configuration directories, we
need to set a programdata directory for safe test handling.
2025-01-20 22:45:53 +00:00
Edward Thomson
90465353a5
Merge pull request #7022 from carlo-bramini/fix-cygwin-1
2025-01-20 11:04:04 -08:00
Carlo Bramini
63cffe3d21
cli: fix undefined alloca() on CYGWIN
...
I tried to build my libgit2-1.9.0 package for CYGWIN but I got an error. This message appears when compiling:
[199/671] Building C object src/cli/CMakeFiles/git2_cli.dir/opt.c.o
libgit2-1.9.0/src/cli/opt.c: In function ‘cli_opt_parse’:
libgit2-1.9.0/src/cli/opt.c:564:23: warning: implicit declaration of function ‘alloca’; did you mean ‘malloc’? [-Wimplicit-function-declaration]
564 | given_specs = alloca(sizeof(const cli_opt_spec *) * (args_len + 1));
| ^~~~~~
| malloc
and later the linker emits this error message:
[668/671] Linking C executable git2.exe
FAILED: git2.exe
/usr/x86_64-pc-cygwin/bin/ld: src/cli/CMakeFiles/git2_cli.dir/opt.c.o: in function `cli_opt_parse':
/usr/src/debug/libgit2-1.9.0-1/src/cli/opt.c:564:(.text+0xce3): undefined reference to `alloca'
collect2: error: ld returned 1 exit status
The error is fixed by adding alloca.h to included headers.
Hopefully, opt.c already allows to add alloca.h for some platforms, so I just added an additional test for the preprocessor for checking if the target is CYGWIN.
2025-01-20 12:34:50 +01:00
Mike Frysinger
17cbd2eae0
alternates: allow relative paths in all repositories
...
Git does not limit relative paths in alternates to the first
repository, so libgit2 shouldn't either.
2025-01-15 21:25:30 -05:00
Edward Thomson
906623b8f9
attr: honor ignorecase in attribute matching
...
`.gitattributes` is case-insensitive when `core.ignorecase=true`.
2025-01-15 22:44:51 +00:00
Edward Thomson
6330ca3c0f
version: add size information
...
Add `sizeof-long` and `sizeof-size_t` information to `version` command.
2025-01-15 09:28:28 +00:00
Edward Thomson
1509637751
Introduce git_libgit2_buildinfo
...
Track some information about the compilation at compile time, and allow
consumers to query it.
2025-01-15 09:28:26 +00:00
Edward Thomson
9692f45ca8
Merge pull request #7014 from libgit2/ethomson/index-bench
...
flamegraph: theme for libgit2 benchmarks site
2025-01-14 15:45:52 +00:00
Edward Thomson
f9e9ddd884
flamegraph: theme for libgit2 benchmarks site
2025-01-14 12:48:28 +00:00
Edward Thomson
7daaf6151a
Merge pull request #7010 from libgit2/ethomson/index-bench
...
Add profiling data to benchmarks
2025-01-13 23:19:48 +00:00
Edward Thomson
02435d7647
ci: benchmark workflow improvements
...
Publish the site as an artifact during workflow_dispatch events.
2025-01-13 21:23:04 +00:00
Edward Thomson
9c2b827cef
ci: disable perf_event_paranoid on linux CI
2025-01-13 21:23:04 +00:00
Edward Thomson
99ab224882
ci: produce flamegraphs during benchmark run
2025-01-13 21:23:04 +00:00
Edward Thomson
89f0dab789
ci: build benchmarks as release with debugging info
...
Our benchmarks need debugging information for (eg) profiling.
2025-01-13 21:23:04 +00:00
Edward Thomson
008c6f7984
benchmarks: optionally generate and publish flamegraphs
2025-01-13 21:23:02 +00:00
Edward Thomson
dfbdaa28a5
benchmark: introduce profiling support
...
Introduce `--profile` support to the benchmark helper script, which will
invoke `perf` on Linux. Additionally, add a `--flamegraph` output
option based on that.
2025-01-13 21:21:17 +00:00
Edward Thomson
6bc64fb56e
Merge pull request #7012 from lrm29/patch-1
...
Update SelectSSH.cmake
2025-01-13 20:48:50 +00:00
Laurence McGlashan
1d2bdab7f8
Update SelectSSH.cmake
2025-01-13 12:16:44 +00:00
Edward Thomson
6fedfd3237
Add benchmark for large-ish (250mb) index-pack
2025-01-11 21:58:19 +00:00
Edward Thomson
343c2cbae8
benchmarks: report commit of build
...
It can be useful to report the commit ID during benchmarks to track down
regressions; leverage the addition of that in `git version` during
benchmark runs.
2025-01-09 23:44:23 +00:00
Edward Thomson
1ec9d2c7c6
Merge pull request #7006 from libgit2/ethomson/benchmarks
...
benchmarks: update path to baseline cli
2025-01-09 23:33:48 +00:00
Edward Thomson
436f4e7d96
benchmarks: update path to baseline cli
...
The `fullpath` function takes the cli, but doesn't keep the cli.
2025-01-09 21:45:11 +00:00
Edward Thomson
e2dfceacc6
Merge pull request #7004 from kanavin/fix-cmake-files-install
...
src/libgit2/CMakeLists.txt: install cmake files into configured libdir
2025-01-07 22:27:56 +00:00
Edward Thomson
9305c345e8
Merge pull request #7005 from libgit2/ethomson/v19_changelog
...
docs: add `update_refs` as ABI breaking change
2025-01-07 20:58:20 +00:00
Edward Thomson
1c6d51142d
docs: add update_refs as ABI breaking change
...
In v1.9, we failed to document that `update_refs` was a breaking change.
Add information about this change to the ABI breaking changes section.
2025-01-07 20:29:44 +00:00
Alexander Kanavin
904c8f266d
src/libgit2/CMakeLists.txt: install cmake files into configured libdir
...
libdir can be something else than /usr/lib, e.g. /usr/lib64 or similar.
2025-01-07 19:01:49 +01:00
Edward Thomson
15d24af7bc
Merge pull request #6999 from libgit2/ethomson/remove_weird_bundled_deps
...
Remove strange bundled libssh2 and chromium
2025-01-07 16:10:13 +00:00
Edward Thomson
caa65e0e9f
Merge pull request #7000 from libgit2/ethomson/object_type
2025-01-03 14:01:24 +00:00
Edward Thomson
23da3a8f3c
object: remove OFS_DELTA and REF_DELTA values
...
Deltas are not objects, they're entries in a packfile. Remove them from
the object enum.
2025-01-03 13:28:19 +00:00
Edward Thomson
2d5942571c
object: introduce type_is_valid
...
There's no such thing as a "loose object type" or a "packed object
type". There are only object types. Introduce `type_is_valid` and
deprecate `typeisloose`.
2025-01-03 13:28:19 +00:00
Edward Thomson
666bbed4d4
Merge pull request #6998 from peter15914/fix_check_calloc
...
FIx potential null dereference
2025-01-03 09:00:00 +00:00