Edward Thomson
9efdbe3834
cmake: standardize leak check option
...
The `GIT_WIN32_LEAKCHECK` option is a debugging option, so it should be
`GIT_DEBUG_LEAKCHECK_WIN32`
2025-01-02 12:36:11 +00:00
Edward Thomson
8bbd2f406e
cmake: use DEBUG_LEAK_CHECKER as option
...
The `USE_` prefix for inputs denotes a backend; the `DEBUG_` prefix
denotes a debugging option. Make `DEBUG_LEAK_CHECKER` the name of the
leak checking option.
2025-01-02 12:36:11 +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
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
Edward Thomson
13a326f4c1
ci: build and test with system http-parser
2024-10-22 11:45:58 +01:00
Edward Thomson
821d41a907
ci: set CMAKE_C_EXTENSIONS for msan builds
...
The memory sanitizer builds require c90 with extension _on_; enable
that.
2024-10-19 13:19:12 +01:00
Edward Thomson
4768d8a8ad
ci: don't use extensions on msan build
...
The memory sanitizer builds are special snowflakes; let them be c90 with
extensions.
2024-10-18 22:26:57 +01:00
Edward Thomson
12eecf0abc
ci: update to (mostly) latest images
...
Update to the latest CI images, except macOS - where there's a memory
leak in macos-14.
2024-09-29 23:32:19 +01:00
Edward Thomson
d50b501e7e
ci: update to download-artifact v4
2024-09-29 23:30:57 +01:00
Edward Thomson
9288436e38
ci: split SHA256 builds out into their own workflow
...
Split the SHA256 builds into their own workflow; since they're
experimental (and have proven to be flaky) they shouldn't be used as
signal that there's a problem with a PR.
2024-03-19 07:01:01 +00:00
Edward Thomson
58dfe647b7
build: update to latest actions versions
2024-03-16 18:17:16 +00:00
Edward Thomson
53978e6784
ci: reduce ASLR randomization for TSAN
...
Linux updated its ASLR randomization in a way that is incompatible with
TSAN. See https://github.com/google/sanitizers/issues/1716
Reducing the randomness for ASLR allows the sanitizers to cope.
2024-03-16 11:44:39 +00:00
Edward Thomson
cef060a4f2
fuzzer: run address sanitization during fuzzing
2024-02-06 16:56:30 +00:00
Edward Thomson
d15be592db
ci: move docker container creation to an action
2024-01-10 01:45:15 +00:00
Edward Thomson
ee1d9a065a
ci: actually push new build containers
...
When we update the build container, actually do a push. Remove the
broken build-containers.yml step and just do it in the workflow.
2024-01-10 01:45:15 +00:00
Edward Thomson
8329f7ace3
ci: upgrade focal builds to noble
...
Let's use the latest & greatest for building our sanitizer / fuzzing
builds.
2023-12-21 20:46:47 +00:00
Edward Thomson
90136cd427
ci: align nightly with main
...
Ensure that the main builds are all identical in nightly. Nightly should
only add new, specialized builds.
2023-12-19 14:12:30 +00:00
Edward Thomson
9d8fa925f2
ci: optional BUILD_WORKSPACE
...
Setup scripts can change BUILD_WORKSPACE, for instance, if they use a
different format for paths, they can replace with `cygpath` variants.
2023-12-19 11:27:17 +00:00
Edward Thomson
a79ef29e6a
ci: reorder some parameters for cleanliness
2023-12-19 11:27:17 +00:00
Edward Thomson
d0bb7eb7ea
ci: take an optional shell parameter
...
Allow the build matrix to specify its shell, in case we provide one in
the setup (eg, Cygwin).
2023-12-19 11:27:17 +00:00
Edward Thomson
0b10c3fb43
ci: allow workflows to push changes
...
Our workflows push documentation changes; ensure that they are allowed
to do so.
2023-12-16 14:39:29 +00:00
Edward Thomson
8f3e2d26d3
ci: allow workflows to read and write packages
...
Our CI workflows consume and will automatically generate their build
containers. Ensure that they can do so.
2023-12-16 14:03:46 +00:00
Edward Thomson
87b1bf80f3
Merge branch 'pr/6339' into actions
2023-12-14 21:29:45 +00:00
Edward Thomson
e002004686
ci: use Ninja on macOS
2023-12-08 16:22:44 +00:00
Edward Thomson
38b16b01e3
ci: split ssh into exec and libssh2
2023-08-30 20:46:22 +01:00
Edward Thomson
14fa2ad703
Update macOS build image to macos-12
2023-08-25 13:12:07 +01:00
Edward Thomson
3a4e08a78b
Merge pull request #6488 from libgit2/ethomson/workflow
...
actions: simplify execution with composite action
2023-05-13 13:45:19 +01:00
Edward Thomson
f68f542eb6
http: introduce schannel streams for windows
...
Provide a stream interface for Schannel - the native crypto APIs - on
Windows. This allows Windows to use the same HTTP transport that all the
other platforms use, with its own native crypto.
Ultimately this allows us to deprecate WinHTTP and we need not add
support for our socket changes in two places (our HTTP stack and the
WinHTTP stack).
2023-03-21 09:09:48 +00:00
Edward Thomson
7eb63188e5
reusable
2023-02-17 14:33:59 +00:00
Edward Thomson
45e95144f3
fixup! fixup! actions: simplify execution with composite action
2023-02-16 14:15:19 +00:00
Edward Thomson
14c86fc268
fixup! actions: simplify execution with composite action
2023-02-16 14:15:19 +00:00
Edward Thomson
f487b8478a
actions: simplify execution with composite action
2023-02-16 14:15:19 +00:00
Edward Thomson
80742e159c
Merge pull request #6456 from libgit2/ethomson/sha256_experimental
...
SHA256: more SHA256 support
2023-02-14 17:01:23 +00:00
Edward Thomson
f72707872b
ci: actually build sha256 support on linux
2023-02-12 22:02:00 +00:00
Edward Thomson
247474fdbd
tests: known_hosts manipulating ssh clone tests
...
Teach the clone tests how to clone from github.com, when given a keypair
with a passphrase and known_hosts data. This allows us to better
exercise our known_hosts checking and ensure that the lifecycle of the
certificate callback matches our expectations.
2023-02-09 12:10:40 +00:00
Edward Thomson
d1411ed856
ci: compile against libssh2 on windows
2023-02-09 12:10:40 +00:00
Edward Thomson
7742b1c0e2
ci: upgrade test-summary action
2023-01-25 11:01:51 +00:00
Edward Thomson
8863c4458f
ci: update upload-artifact dependency
2023-01-25 10:48:24 +00:00
Edward Thomson
548fc8c88b
ci: always create test summaries, even on failure
...
When the dependent jobs fail -- possibly due to test failures -- we
should still produce the job summary that shows those test failures.
2023-01-25 10:28:54 +00:00
Edward Thomson
2d251184cc
ci: update version numbers of actions
2023-01-20 21:35:15 +00:00
Edward Thomson
ec1aec36b3
ci: move to macos-11
...
GitHub has deprecated macOS 10.15; move to their new macOS 11 build
servers.
2022-09-16 10:24:35 -04:00
Edward Thomson
433a133402
Merge pull request #6191 from libgit2/ethomson/sha256_poc
...
RFC: SHA256 proof of concept
2022-07-13 21:08:04 -04:00
Edward Thomson
c70035dc09
actions: pass UID and GID to PR builds of dockerfiles
2022-07-06 13:10:33 -04:00
Edward Thomson
6013b6a0dc
ci: run sha256 builds in ci
2022-06-20 17:12:51 -04:00
Edward Thomson
3fada6695e
ci: show test results summary
2022-05-17 17:51:44 -04:00
Edward Thomson
8747c0041d
ci: upload test result data as artifacts
2022-05-17 16:27:24 -04:00
Edward Thomson
fd8d3673c8
ci: use uid/gid of actions runner
...
Avoid mismatches between the container uid/gid and the actions runner,
build the container with the actions runner's uid/gid
2022-05-17 16:24:43 -04:00
Edward Thomson
c6416100e8
ci: map the build folder in container builds
...
Now that the containers all set the user id of the libgit2 build user to
the user id of the host runner, we can write to a shared build output
volume.
2022-04-20 15:17:46 -04:00
Edward Thomson
926efbd296
ci: use the runner's uid/gid
...
Use the runner's uid/gid for the containers for sanity when sharing
files across volumes.
2022-04-20 14:45:52 -04:00
Edward Thomson
00612f7917
ci: move to ghcr.io instead of deprecated github packages urls
2022-04-19 12:09:00 -04:00