Compare commits

...

No commits in common. "c8" and "c10s" have entirely different histories.
c8 ... c10s

27 changed files with 1519 additions and 2618 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

View File

@ -1,2 +0,0 @@
7577a22e233e892dba5cf19a3a57cef2062d01e6 SOURCES/git-2.43.5.tar.sign
31decef72034ae36c8098a9e6bb13a7dd4859fd9 SOURCES/git-2.43.5.tar.xz

10
.gitignore vendored
View File

@ -1,2 +1,8 @@
SOURCES/git-2.43.5.tar.sign
SOURCES/git-2.43.5.tar.xz
*~
*.gpg
*.rpm
*.sign
*.tar.xz
/.build*.log
/git-*/
/results_git/

18
.mailmap Normal file
View File

@ -0,0 +1,18 @@
<atkac@redhat.com> <atkac@fedoraproject.org>
<atkac@redhat.com> <vonsch@gmail.com>
<bernie@codewiz.org> <bernie@fedoraproject.org>
<Christian.Iseli@licr.org> <c4chris@fedoraproject.org>
<dennis@ausil.us> <ausil@fedoraproject.org>
<dwmw2@infradead.org> <David.Woodhouse@intel.com>
James Bowes <jbowes@redhat.com> <jbowes@fedoraproject.org>
<jkeating@redhat.com> <jkeating@fedoraproject.org>
Josh Boyer <jwboyer@gmail.com> <jwboyer@fedoraproject.org>
<katzj@redhat.com> <katzj@fedoraproject.org>
<lkundrak@redhat.com> <lkundrak@fedoraproject.org>
<mmaslano@redhat.com> <mmaslano@fedoraproject.org>
<releng@fedoraproject.org> <rel-eng@lists.fedoraproject.org>
<skasal@redhat.com> <kasal@fedoraproject.org>
<tmraz@redhat.com> <tmraz@fedoraproject.org>
<tmz@pobox.com> <tmz@fedoraproject.org>
<ville.skytta@iki.fi> <scop@fedoraproject.org>
<xavier@bachelot.org> <xavierb@fedoraproject.org>

View File

@ -1,4 +1,4 @@
From aedeaaf788bd8a7fc5a1887196b6f6d8a5c31362 Mon Sep 17 00:00:00 2001
From 89ccbc15948db9ddbf74530e3fd66dd78ae897ae Mon Sep 17 00:00:00 2001
From: Todd Zullinger <tmz@pobox.com>
Date: Sun, 21 Aug 2022 13:49:57 -0400
Subject: [PATCH] t/lib-httpd: try harder to find a port for apache
@ -30,10 +30,10 @@ Signed-off-by: Todd Zullinger <tmz@pobox.com>
1 file changed, 18 insertions(+), 11 deletions(-)
diff --git a/t/lib-httpd.sh b/t/lib-httpd.sh
index 1f6b9b08d1..9279dcd659 100644
index 2fb1b2ae56..4afdf5a6aa 100644
--- a/t/lib-httpd.sh
+++ b/t/lib-httpd.sh
@@ -175,19 +175,26 @@ prepare_httpd() {
@@ -206,19 +206,26 @@ enable_cgipassauth () {
}
start_httpd() {

View File

@ -1,4 +1,4 @@
From 16750d024ce038b019ab2e9ee5639901e445af37 Mon Sep 17 00:00:00 2001
From e90e1068ddc9cfa3badd23b16a46c57ed6d8308a Mon Sep 17 00:00:00 2001
From: Todd Zullinger <tmz@pobox.com>
Date: Fri, 26 Aug 2022 18:28:44 -0400
Subject: [PATCH] t/lib-git-daemon: try harder to find a port

View File

@ -1,4 +1,4 @@
From aa5105dc115b43edc6c9c11714b092583f1221aa Mon Sep 17 00:00:00 2001
From 41423d666fd52eaa6aa2b44a0de1b81d0857ca06 Mon Sep 17 00:00:00 2001
From: Todd Zullinger <tmz@pobox.com>
Date: Fri, 26 Aug 2022 18:28:44 -0400
Subject: [PATCH] t/lib-git-svn: try harder to find a port

View File

@ -1,12 +0,0 @@
diff -ur a/git-instaweb.sh b/git-instaweb.sh
--- a/git-instaweb.sh 2020-04-20 17:52:30.000000000 +0200
+++ b/git-instaweb.sh 2020-05-27 12:36:20.725300334 +0200
@@ -36,7 +36,7 @@
# Defaults:
# if installed, it doesn't need further configuration (module_path)
-test -z "$httpd" && httpd='lighttpd -f'
+test -z "$httpd" && httpd='httpd -f'
# Default is @@GITWEBDIR@@
test -z "$root" && root='@@GITWEBDIR@@'

View File

@ -1,70 +0,0 @@
diff -ur b/builtin/receive-pack.c a/builtin/receive-pack.c
--- b/builtin/receive-pack.c 2023-11-20 03:07:41.000000000 +0100
+++ a/builtin/receive-pack.c 2023-12-06 15:34:28.294170714 +0100
@@ -40,6 +40,8 @@
#include "worktree.h"
#include "shallow.h"
#include "parse-options.h"
+#include <openssl/hmac.h>
+#include <openssl/evp.h>
static const char * const receive_pack_usage[] = {
N_("git receive-pack <git-dir>"),
@@ -538,43 +540,11 @@
return 0;
}
-static void hmac_hash(unsigned char *out,
+static inline void hmac_hash(unsigned char *out,
const char *key_in, size_t key_len,
const char *text, size_t text_len)
{
- unsigned char key[GIT_MAX_BLKSZ];
- unsigned char k_ipad[GIT_MAX_BLKSZ];
- unsigned char k_opad[GIT_MAX_BLKSZ];
- int i;
- git_hash_ctx ctx;
-
- /* RFC 2104 2. (1) */
- memset(key, '\0', GIT_MAX_BLKSZ);
- if (the_hash_algo->blksz < key_len) {
- the_hash_algo->init_fn(&ctx);
- the_hash_algo->update_fn(&ctx, key_in, key_len);
- the_hash_algo->final_fn(key, &ctx);
- } else {
- memcpy(key, key_in, key_len);
- }
-
- /* RFC 2104 2. (2) & (5) */
- for (i = 0; i < sizeof(key); i++) {
- k_ipad[i] = key[i] ^ 0x36;
- k_opad[i] = key[i] ^ 0x5c;
- }
-
- /* RFC 2104 2. (3) & (4) */
- the_hash_algo->init_fn(&ctx);
- the_hash_algo->update_fn(&ctx, k_ipad, sizeof(k_ipad));
- the_hash_algo->update_fn(&ctx, text, text_len);
- the_hash_algo->final_fn(out, &ctx);
-
- /* RFC 2104 2. (6) & (7) */
- the_hash_algo->init_fn(&ctx);
- the_hash_algo->update_fn(&ctx, k_opad, sizeof(k_opad));
- the_hash_algo->update_fn(&ctx, out, the_hash_algo->rawsz);
- the_hash_algo->final_fn(out, &ctx);
+ HMAC(EVP_sha1(), key_in, key_len, text, text_len, out, NULL);
}
static char *prepare_push_cert_nonce(const char *path, timestamp_t stamp)
diff -ur b/Makefile a/Makefile
--- b/Makefile 2023-11-20 03:07:41.000000000 +0100
+++ a/Makefile 2023-12-06 15:35:08.506316431 +0100
@@ -2123,6 +2123,8 @@
EXTLIBS += -lcrypto -lssl
endif
+EXTLIBS += -lcrypto
+
ifneq ($(PROCFS_EXECUTABLE_PATH),)
procfs_executable_path_SQ = $(subst ','\'',$(PROCFS_EXECUTABLE_PATH))
BASIC_CFLAGS += '-DPROCFS_EXECUTABLE_PATH="$(procfs_executable_path_SQ)"'

View File

@ -1,13 +0,0 @@
#!/bin/bash
shopt -s failglob
# Print output from failing tests
dashes=$(printf "%80s" '' | tr ' ' '-')
for exit_file in t/test-results/*.exit; do
[ "$(cat "$exit_file")" -eq 0 ] && continue
out_file="${exit_file%exit}out"
printf '\n%s\n%s\n%s\n' "$dashes" "$out_file" "$dashes"
cat "$out_file"
done
exit 1

File diff suppressed because it is too large Load Diff

6
gating.yaml Normal file
View File

@ -0,0 +1,6 @@
--- !Policy
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

View File

@ -0,0 +1,14 @@
diff -ur b/t/lib-httpd/apache.conf a/t/lib-httpd/apache.conf
--- b/t/lib-httpd/apache.conf 2024-01-09 11:06:46.660868023 +0100
+++ a/t/lib-httpd/apache.conf 2024-01-09 11:09:09.572713625 +0100
@@ -272,7 +272,9 @@
<IfDefine DAV>
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
-
+ <IfDirective DavLockDBType>
+ DavLockDBType sdbm
+ </IfDirective>
DAVLockDB DAVLock
<Location /dumb/>
Dav on

42
git.rpmlintrc Normal file
View File

@ -0,0 +1,42 @@
# the dictionary is a bit limited
addFilter("git.* spelling-error %description .* subpackages")
addFilter("git-subtree.* spelling-error %description .* (subdirectory|subproject|subtree)")
# git-core-doc requires git-core, which provides the symlink target
addFilter("git(-core-doc)?\..*: W: dangling-relative-symlink /usr/share/doc/git/contrib/hooks ../../../git-core/contrib/hooks")
# gitk requires git, which provides the symlink target
addFilter("gitk\.noarch: W: dangling-relative-symlink /usr/share/bash-completion/completions/gitk git")
# git-gui requires git, which provides the git binary
addFilter("git-gui.noarch: W: desktopfile-without-binary /usr/share/applications/git-gui.desktop git")
# ignore no binary warning for main git package; making it noarch isn't trivial
# since we have arch-specific subpackages
addFilter("git\..*: E: no-binary$")
# ignore no doc/manpage warnings where we don't expect any documentation
addFilter("git-(all|core|credential-libsecret)\..*: W: no-documentation")
addFilter("perl-Git-SVN.noarch: W: no-documentation")
addFilter("git-core\..*: W: no-manual-page-for-binary")
# nothing provides git-gnome-keyring, it's simply obsolete
# similarly ignore the warning when git-cvs and git-p4 are disabled
addFilter("git.* obsolete-not-provided git-(cvs|gnome-keyring|p4)")
# git-svn has both man and html docs and only a single command
addFilter('git-svn\..*: W: package-with-huge-docs')
# ignore potential "bashisms" in docs
addFilter('git-core-doc\.noarch: W: potential-bashisms /usr/share/doc/git/')
# ignore unused-direct-shlib-dependency for libpcre; while it probably could be
# removed from some binaries, the cost of doing so isn't worth the gain.
addFilter('git-(core|daemon)\..*: W: unused-direct-shlib-dependency .* /lib64/libpcre2-.*')
# ignore duplicate gvimdiff/nvimdiff files; they are only 29 bytes, sourcing the same base
# vimdiff mergetool
addFilter('git-core\..*: W: files-duplicate /usr/libexec/git-core/mergetools/[gn]vimdiff')
# ignore non-standard-dir-in-var for gitweb (#479613)
addFilter('gitweb.noarch: W: non-standard-dir-in-var www')

33
git.skip-test-patterns Normal file
View File

@ -0,0 +1,33 @@
^ok 1 # SKIP enable client-side http/2 \(missing HTTP2\)$
expensive 2GB clone test; enable with GIT_TEST_CLONE_2GB=true
filesystem does not corrupt utf-8
fsmonitor--daemon is not supported on this platform
GIT_SKIP_TESTS
missing AUTOIDENT
missing BUILTIN_TXT_
missing CASE_INSENSITIVE_FS
missing DONTHAVEIT
missing ([!]LONG_IS_64BIT,)?EXPENSIVE
missing FSMONITOR_DAEMON
missing JGIT
missing !?LAZY_(TRUE|FALSE)
missing MINGW
missing NATIVE_CRLF
missing !PCRE
missing !PTHREADS
missing !REFFILES
missing RFC1991
missing RUNTIME_PREFIX
missing SYMLINKS_WINDOWS
missing TAR_NEEDS_PAX_FALLBACK
missing UTF8_NFD_TO_NFC
missing WINDOWS
skipped: skip all tests in t5559
skipping case insensitive tests
skipping git p4 tests
skipping remote-svn tests, python not available
skipping svn-info test
skipping Windows-(only path|specific) tests
Test requiring writable / skipped
used to test external credential helpers
You must set env var GIT_TEST_ALLOW_SUDO=YES in order to run this test

1356
git.spec Normal file

File diff suppressed because it is too large Load Diff

8
plans/public.fmf Normal file
View File

@ -0,0 +1,8 @@
summary: Public beakerlib tests
discover:
- name: public
how: fmf
url: https://gitlab.com/redhat/centos-stream/tests/git.git
execute:
how: tmt

26
print-failed-test-output Normal file
View File

@ -0,0 +1,26 @@
#!/bin/bash
shopt -s failglob
# Print output from failing tests
printf -v sep "%0.s-" {1..80}
for exit_file in t/test-results/*.exit; do
[ "$(< "$exit_file")" -eq 0 ] && continue
out_file="${exit_file%exit}out"
printf '\n%s\n%s\n%s\n' "$sep" "$out_file" "$sep"
cat "$out_file"
done
# tar up test-results & $testdir, then print base64 encoded output
#
# copy $testdir contents to test-results to avoid absolute paths with tar
cp -a $testdir/* t/test-results/
begin='-----BEGIN BASE64 MESSAGE-----'
end='-----END BASE64 MESSAGE-----'
printf '\n%s\n' 'test-results and trash directory output follows; decode via:'
printf '%s\n' "sed -n '/^${begin}$/,/^${end}$/{/^${begin}$/!{/^${end}$/!p}}' build.log | base64 -d >output.tar.zst"
printf '%s\n' "$begin"
tar -C t -cf - test-results/ | zstdmt -17 | base64
printf '%s\n' "$end"
exit 1

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (git-2.45.2.tar.xz) = dce30d0d563f3f76ef49c8dc88105e0cf0941c8cd70303418d9d737f840ffba36bcc575c380c75080edf64af74487e1a680db146ec5f527a32104e887d4ceb73
SHA512 (git-2.45.2.tar.sign) = 331ba231f1d042ad41b30d81225fc31c47bc38dfb2995156353a97cd66f0a0c4d86d228e85dfca0926761b19d2e37e5f273b3bbddbca3e1c1ae3c999401fe7bd