Commit Graph

14783 Commits

Author SHA1 Message Date
Edward Thomson
d63f1fe245 cmake: support older cmakes 2023-02-13 10:27:10 +00:00
Edward Thomson
f72707872b ci: actually build sha256 support on linux 2023-02-12 22:02:00 +00:00
Edward Thomson
6cb7966d5a clone: free connect opts 2023-02-12 22:02:00 +00:00
Edward Thomson
8eadeedee4 repo: take an oid_type when initializing 2023-02-12 22:02:00 +00:00
Edward Thomson
af20d13b18 repo: dump backends on oid type change 2023-02-12 22:02:00 +00:00
Edward Thomson
53fcd5b8f5 transport: teach transports about oid types and SHA256 2023-02-12 22:02:00 +00:00
Edward Thomson
0006ff6335 clone: support sha256 2023-02-12 22:02:00 +00:00
Edward Thomson
7186d7baad revparse: don't assume SHA1 2023-02-12 22:02:00 +00:00
Edward Thomson
e56f35076e refdb: teach filesystem refdb about sha256 2023-02-12 22:02:00 +00:00
Edward Thomson
fe2ee3a018 object: lookup sha256 objects
This is much of the plumbing for the object database to support SHA256,
and for objects to be able to parse SHA256 versions of themselves.
2023-02-12 22:02:00 +00:00
Edward Thomson
6204499242 odb: test sha256 pack backend 2023-02-12 21:26:12 +00:00
Edward Thomson
479c8c8c14 packfile: handle sha256 packfiles
Teach the packfile machinery to cope with SHA256.
2023-02-12 21:26:12 +00:00
Edward Thomson
e89e2e0102 odb: rename test file to avoid underscore
In clar, an underscore is meaningful; avoid using it incorrectly /
unnecessarily.
2023-02-12 21:26:11 +00:00
Edward Thomson
23df884ea7 tests: add a sha256 repository
This is a conversion of the testrepo.git to SHA256 support.
2023-02-12 21:26:11 +00:00
Edward Thomson
1bde753db4 ci: run sha256 builds during our nightly runs 2023-02-12 21:26:11 +00:00
Edward Thomson
f6dbf9c594 tests: helpers for getting ints from configuration 2023-02-12 21:26:11 +00:00
Edward Thomson
366973f378 repo: don't overwrite repo format version on reinit
Ensure that we maintain the `core.repositoryFormatVersion` value instead
of always overwriting it with the default.
2023-02-12 21:26:11 +00:00
Edward Thomson
3dfc12d5e2 repo: internal setter for objectformat
Provide an internal function to set the repository's `objectformat`,
both in the internal object and in the configuration.
2023-02-12 21:26:11 +00:00
Edward Thomson
acb00e4eae repo: understand the objectformat extension
Teach the repository about the `objectformat` extension, supporting
`sha1` always and `sha256` when the experimental sha256 support is
active.
2023-02-12 21:26:10 +00:00
Edward Thomson
4083e46f47 oid: provide type lookups by enum value or name 2023-02-09 12:31:16 +00:00
Edward Thomson
f02bcf7211 Merge pull request #6464 from libgit2/ethomson/openssl3
Support OpenSSL3: add OpenSSL deprection warning compatibility flag
2023-02-03 09:35:40 +00:00
Edward Thomson
655158fa7a Add OpenSSL deprection warning
Add `OPENSSL_API_COMPAT=0x10100000L` since we use the now-deprecated
low-level hash functions.
2023-02-02 07:54:16 -05:00
Edward Thomson
c438d0bb83 Merge pull request #6444 from abizjak/main 2023-01-26 08:57:18 +00:00
Edward Thomson
0384a4024e Merge pull request #6460 from libgit2/ethomson/clar_update
ci: always create test summaries, even on failure
2023-01-25 11:32:15 +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
14c11568c4 Merge pull request #6459 from libgit2/ethomson/clar_update
tests: update clar test runner
2023-01-25 10:26:01 +00:00
Edward Thomson
ed26a908fe clar: cross-platform elapsed time counter
Abstract time counter for tests; use gettimeofday on Unix and
GetTickCount on Windows.
2023-01-25 09:37:22 +00:00
Edward Thomson
4e15c9c87f tests: fix clar declarations 2023-01-25 09:36:48 +00:00
Edward Thomson
6bf0459a42 tests: update clar test runner
Update to the latest main version of clar, which includes improved xml
summary output.
2023-01-25 09:36:07 +00:00
Edward Thomson
6374c4d115 Merge pull request #6458 from 0-wiz-0/netbsd
src: hide unused hmac() prototype
2023-01-24 19:47:09 +00:00
Edward Thomson
d5aafe13f9 hash: drop all declarations from hmac
The builtin hash uses the code verbatim from rfc6234, including
prototypes for functions that we don't use (like hmac). Remove all
unused prototypes to avoid collisions with things that an operating
system might provide (like hmac).
2023-01-24 16:45:05 +00:00
Thomas Klausner
a6774403da src: hide unused hmac() prototype
It conflicts with NetBSD's in its libc.

Closes #6457
2023-01-24 16:36:23 +01:00
Edward Thomson
036fe1afba Merge pull request #6452 from libgit2/ethomson/oid_warning
push: use resolved oid as the source
2023-01-20 23:16:44 +00:00
Edward Thomson
667c353048 push: use resolved oid as the source
211c97195e attempts to use the parsed OID
but inverted the arguments to `git_oid_cpy`.
2023-01-20 22:53:32 +00:00
Edward Thomson
2347eb3263 Merge pull request #6362 from sven-of-cord/main
push: revparse refspec source, so you can push things that are not refs
2023-01-20 22:33:36 +00:00
Edward Thomson
4d47ad6fc5 Merge pull request #6432 from libgit2/ethomson/noop_args
thread: avoid warnings when building without threads
2023-01-20 22:31:22 +00:00
Edward Thomson
d3f554fd67 Merge pull request #6435 from russell/capabilities-typo
transport: fix capabilities calculation
2023-01-20 22:30:57 +00:00
Edward Thomson
1845eac67c Merge pull request #6448 from libgit2/ethomson/action_versions
ci: update version numbers of actions
2023-01-20 22:29:54 +00:00
Edward Thomson
3ee86a3329 Merge commit 'e33d7c068' into ssh_key_checking 2023-01-20 22:13:14 +00:00
Edward Thomson
2d251184cc ci: update version numbers of actions 2023-01-20 21:35:15 +00:00
Edward Thomson
747af663fe README: show v1.5 and v1.4 branch builds 2023-01-20 21:32:18 +00:00
Aleš Bizjak
ae7a0a6365 Use git_clone__submodule to avoid file checks in workdir
`git_clone` checks for existence of (non-empty) directories that would clash with what is about to be cloned.

This is problematic when cloning submodules since they make sense in the context of a parent module, so they should not use the current working dir.

Since in `git_submodule_update` we clone the submodule only when it is not yet initialized we do not need to perform directory checks.
2023-01-05 21:00:40 +01:00
Edward Thomson
936b184e74 Merge pull request #6434 from tagesuhu/main
Fixes #6433: git_submodule_update fails to update configured but missing submodule
2022-11-28 13:16:58 +00:00
Russell Sim
be7356d0c6 transport: fix capabilities calculation
This looks like a typo to me, from what i can see these lines were
added at the same time and because of how capabilities are calculated,
it's likely that this code will work in situations where these
capabilities were the last ones.
2022-11-25 19:11:54 +01:00
tagesuhu
3f4b91b29d submodule: Do not try to update a missing submodule
If a submodule has been configured but not yet added, do not try to update it.

Issue #6433: git_submodule_update fails to update configured but missing submodule
2022-11-25 16:38:58 +00:00
tagesuhu
b57b7628d4 tests: Add new test to submodule::update
Verify that trying to update submodule which has been configured but not added does return an error.

Issue #6433: git_submodule_update fails to update configured but missing submodule
2022-11-25 16:32:39 +00:00
Edward Thomson
48850882d7 thread: avoid warnings when building without threads
`git__noop` takes no arguments, so a simple `#define func(a) git__noop`
will produce warnings about the unused `a`. Introduce `git__noop_args`
to swallow arguments and avoid that warning.
2022-11-23 14:19:06 +00:00
Edward Thomson
12832bab73 Merge pull request #6326 from libgit2/ethomson/url_parse
URL parsing for google-compatible URLs
2022-11-23 13:57:07 +00:00