Commit Graph

11 Commits

Author SHA1 Message Date
Todd Zullinger
9e3c6109b5 git.skip-test-patterns: ignore 'skip all tests in t5559'
We added t5559-http-fetch-smart-http2 to GIT_SKIP_TESTS in 7d21254
(update to 2.39.0-rc0, 2022-11-23).  Update git.skip-test-patterns to
reflect this.
2023-05-24 21:26:16 -04:00
Todd Zullinger
7d21254b02 update to 2.39.0-rc0
Add mod_http2 BuildRequires for t5559-http-fetch-smart-http2; skip it on
EL7, which lacks it.  Ignore the expected 'missing HTTP2' output from
t5551-http-fetch-smart.  Use a strict pattern to avoid unintended
matches.

Sadly, we must also disable t5559 for now.  It fails very often across
all architectures.  The most common failure is "large fetch-pack
requests can be sent using chunked encoding" (t5559.30), but earlier
tests have also failed.  Until these failures are understood and
resolved, the entire test is disabled globally.  (It's also disabled for
EL-7, which is redundant now but won't be after we re-enable the test
globally in the near future.)

We can't simply skip the mod_http2 dependency here because we set
GIT_TEST_HTTPD=true.  Per upstream 73c49a4474 (t: run t5551 tests with
both HTTP and HTTP/2, 2022-11-11):

    If HTTP/2 isn't supported on a given platform, then t5559 should
    bail during the webserver setup, and gracefully skip all tests
    (unless GIT_TEST_HTTPD has been changed from "auto" to "yes", where
    the point is to complain when webserver setup fails).

Also ignore the 'missing BUILTIN_TXT_$builtin' output which comes from
upstream a0c3244796 (doc SYNOPSIS & -h: use "-" to separate words in
labels, not "_", 2022-10-13).  We may want to loosen this in the future,
but for now ignore it because it doesn't help us identify missing test
dependencies.

Release notes:
https://github.com/git/git/raw/v2.39.0-rc0/Documentation/RelNotes/2.39.0.txt
2022-12-01 15:22:49 -05:00
Todd Zullinger
7d205ab48d update to 2.37.0-rc1
Add 'missing FSMONITOR_DAEMON' and 'You must set env var
GIT_TEST_ALLOW_SUDO=YES in order to run this test' to
git.skip-test-patterns to cover new test prerequisites.

Release notes:
https://github.com/git/git/raw/v2.37.0-rc1/Documentation/RelNotes/2.37.0.txt
2022-06-18 01:59:06 -04:00
Todd Zullinger
0b5afcebda update to 2.36.0-rc0
The %_package_note_file definition added in 1dc07e7 (set path to linker
script in %_package_note_file, 2022-01-24) does not support release
candidates.  Fix it.

Add 'fsmonitor--daemon is not supported on this platform' and 'missing
!REFFILES' to  git.skip-test-patterns to match new test prerequisites
which are not relevant for our builds.

Adjust number of t5541 "push 2000 tags over http" test.  It was shifted
from 35 to 36 by upstream c36c62859a (tests: use "test_hook" for misc
"mkdir -p" and "chmod" cases, 2022-03-17).

Replace `%__make test` with `%__make -C t all` to avoid re-compiling in
%check.  This is an issue I have yet to fully diagnose.  I suspect that
it is related to the nice work Ævar Arnfjörð Bjarmason has done upstream
to improve the efficiency and correctness of the build process.  Work
around it for the moment.

Release notes:
https://github.com/git/git/raw/v2.36.0-rc0/Documentation/RelNotes/2.36.0.txt
2022-04-08 13:40:42 -04:00
Todd Zullinger
ef2bab7f59 update to 2.35.0-rc0
Add openssh-clients BuildRequires, for ssh-add.  Upstream 350a2518c8
(ssh signing: support non ssh-* keytypes, 2021-11-19), added `ssh-add`
as a requirement of t7528-signed-commit-ssh's "sign commits using
literal public keys with ssh-agent" test.

Replace the openssh BR added in e8896ce (update to 2.34.0, 2021-11-15)
with openssh-clients.  The latter requires the former.

Apply Taylor Blau's patch to fix a use-after-free bug in fmt-merge-msg¹.

Add `missing !LONG_IS_64BIT,EXPENSIVE` to git.skip-test-patterns.  It is
used in t1051-large-conversion after upstream 596b5e77c9 (clean/smudge:
allow clean filters to process extremely large files, 2021-11-02).

Release notes:
https://github.com/git/git/raw/v2.35.0-rc0/Documentation/RelNotes/2.35.0.txt

¹ https://lore.kernel.org/git/CAHk-=whXPxWL7z3GiPkaDt+yygrRmagrYUnib7Lx=Vvrqx2ufg@mail.gmail.com/
2022-01-10 22:14:13 -05:00
Todd Zullinger
e8896ce365 update to 2.34.0
Release notes:
https://github.com/git/git/raw/v2.34.0/Documentation/RelNotes/2.34.0.txt

Add `BuildRequires: openssh` for the `ssh-keygen` command; it is needed
to test the newly-added ssh signing support¹.  Refer to the `gpg.format`
and `gpg.ssh.*` variables in git-config(1) for details.

[Unfortunately, openssh-8.7 has a bug in the requisite `ssh-keygen -Y
find-principals` command, which will limit the usefulness of this
feature on Fedora 35/36 until openssh is either rebased to 8.8 or the
patch² is backported.  The git testsuite has been taught to skip the
tests when this bug is present, in upstream ca7a5bf4bd (t/lib-gpg: avoid
broken versions of ssh-keygen, 2021-11-10), but that won't help users
who try out this new feature.  Hopefully we can get openssh-8.7 in
Fedora 35 & 36 patched or updated before too long.]

We have `Requires: openssh-clients` in git-core already.  The
openssh-clients package requires openssh so we don't _need_ to add an
install-time requirement to ensure the `ssh-keygen` command is
available.

Ignore RUNTIME_PREFIX and SYMLINKS_WINDOWS test prerequisites when
looking for missing test suite BuildRequires³.

The RUNTIME_PREFIX prerequisite was added in b7d11a0f5d (tests: exercise
the RUNTIME_PREFIX feature, 2021-07-24)⁴.  It is used to build binaries
which can be easily relocated, which we don't need in our builds.

The SYMLINKS_WINDOWS prerequisite was added in 3e7d4888e5 (mingw: align
symlinks-related rmdir() behavior with Linux, 2021-08-02)⁵.  It is, as
the name implies, Windows-specific.

¹ https://github.com/git/git/commit/b5726a5d9c (ssh signing: preliminary
  refactoring and clean-up, 2021-09-10) and the commits which follow.
² https://github.com/openssh/openssh-portable/commit/ca0e455b93,
  https://github.com/openssh/openssh-portable/commit/4afe431da9, and
  https://www.mail-archive.com/source-changes@openbsd.org/msg127496.html
  (plus the replies, which point out the typo in the first patch)
³ fa92661 (Add grep patterns for checking skipped tests, 2019-02-02)
⁴ https://github.com/git/git/commit/b7d11a0f5dhttps://github.com/git/git/commit/3e7d4888e5
2021-11-24 23:23:19 -05:00
Todd Zullinger
3c9cdffa29 add 'missing WINDOWS' to git.skip-test-patterns
We're unlikely to provide the 'WINDOWS' prerequisite in our builds.  Nor
are we likely to care about the tests which are skipped as a result.

(Also, 'missing WINDOWS' is not a phrase I thought I'd ever write.)
2021-05-21 20:04:19 -04:00
Todd Zullinger
a085ac4d92 add 'missing UTF8_NFD_TO_NFC' to git.skip-test-patterns
The UTF8_NFD_TO_NFC prereq was added to t0021-conversion and
t2006-checkout-index-basic in upstream commit 684dd4c2b4 (checkout: fix
bug that makes checkout follow symlinks in leading path, 2020-12-10), to
test the fixes for CVE-2021-21300.

Fedora's supported systems do not appear to "convert decomposed utf-8
(nfd) to precomposed utf-8 (nfc)" which is what the prereq covers.

Ignore the skipped tests which use the UTF8_NFD_TO_NFC prereq when
looking for missing test dependencies and/or incorrectly skipped tests.
2021-03-09 15:59:32 -05:00
Todd Zullinger
a773853481 update to 2.28.0-rc0
Release notes:
https://github.com/git/git/raw/v2.28.0-rc0/Documentation/RelNotes/2.28.0.txt

Update git.skip-test-patterns to catch the 2GB clone test.  The output
of the skipped test was changed (for the better) in upstream commit
d63ae31962 (t5608: avoid say() and use "skip_all" instead for
consistency, 2020-05-22).
2020-07-19 19:01:55 -04:00
Todd Zullinger
51610991b8 Improve JGIT test prereq (jgit on Fedora >= 30 is broken)
Running jgit on Fedora >= 30 results in an immediate failure¹:

  $ jgit --version
  /usr/bin/build-classpath: Could not find xz-java Java extension for this JVM
  /usr/bin/build-classpath: error: Some specified jars were not found
  Error: Could not find or load main class org.springframework.boot.loader.JarLauncher

Skip the jgit tests if 'jgit --version' fails.  This way we'll begin
running them again once the issue is resolved -- without having to make
any further changes to the git package.

Also exclude jgit on i386 arch, as upstream eclipse has dropped support.
We could adjust the conditional to only exclude on Fedora >= 30 and
i386, but the added complexity is not worth the effort.

¹ jgit bug report: https://bugzilla.redhat.com/1709624
2019-05-14 02:01:22 -04:00
Todd Zullinger
fa926617fe Add grep patterns for checking skipped tests
It is useful to check the output of the test suite for skipped tests.
This reveals tests which may have missing BuildRequires or other issues.
Doing so can be tedious due to the many legitimate tests we skip.  Keep
a list of patterns matching tests we skip intentionally.

To use this list to process a build.log, run something like the
following:

    $ egrep '# SKIP|skipped:' build.log | egrep -v -f git.skip-test-patterns

There should be no output.  Any output should be checked and the tests
fixed or added to the skip patterns file.
2019-02-11 22:59:49 -05:00