Commit Graph

584 Commits

Author SHA1 Message Date
Todd Zullinger
da087ee719 update to 2.24.1
Per the upstream release announcement¹, this release fixes "various
security flaws, which allowed an attacker to overwrite arbitrary paths,
remotely execute code, and/or overwrite files in the .git/ directory
etc.  See the release notes attached for the list for their descriptions
and CVE identifiers."

Refer to the 2.14.6 release notes² for details on these vulnerabilities.

¹ https://lore.kernel.org/git/xmqqr21cqcn9.fsf@gitster-ct.c.googlers.com/
² https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.14.6.txt
2019-12-10 13:23:30 -05:00
Todd Zullinger
39a7618fa8 restore jgit BR for use in tests
This effectively reverts 8faf622 (drop jgit BR on Fedora > 30,
2019-07-29).  The jgit package is available once again; use it to allow
some compatibility tests to be run.

Resolves: https://bugzilla.redhat.com/1766626
2019-12-03 22:14:32 -05:00
Todd Zullinger
763ae19326 update to 2.24.0
Include the new "Git Code of Conduct" document in git-core-doc.

Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.24.0.txt
2019-11-04 01:34:25 -05:00
Todd Zullinger
deddf05031 update to 2.24.0-rc2
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.24.0.txt
2019-10-30 23:22:01 -04:00
Todd Zullinger
185a1896d7 disable linkcheck test on all EL releases
The linkchecker package is not available for any EL release, including
EL-8.
2019-10-27 15:29:23 -04:00
Todd Zullinger
16e19ee356 gitk: add Requires: git-gui (#1765113)
While this could arguably be a Recommends: rather than Requires:, we
chose the latter for a few reasons.  The user experience when running
gitk and selecting "Start git gui" from the menu is quite poor.  No
indication is shown to the user graphically.  The only hint as to why
git gui did not start is output to stdout (and is not terribly helpful
for users who may be using gitk and git-gui because they are unfamiliar
with the command-line).

There are no additional dependencies pulled in by git-gui which are not
already dependencies of gitk.  And the git-gui package is relatively
small.

Lastly, the default behavior of Recommends: is the same as Requires: at
this time.

If/when any of these things change, we may revisit whether moving to
Recommends: makes more sense.

Thanks to Vasiliy Glazov and Pavel Cahyna for reporting the issue and
helping to determine the proper resolution.
2019-10-24 15:14:03 -04:00
Todd Zullinger
33ecb7860b skip failing test in t7812-grep-icase-non-ascii on s390x
The "PCRE v2: grep non-ASCII from invalid UTF-8 data" test fails on
big-endian arches.  This is known upstream and will hopefully be
resolved soon.

Reference:
https://public-inbox.org/git/20191020002648.GZ10893@pobox.com/
2019-10-24 15:14:03 -04:00
Todd Zullinger
8b2d34ca4f update to 2.24.0-rc1
Adjust skipped test number in t5541-http-push-smart.sh (skipped on
aarch64, %{arm}, and %{power64}).  A new test was added in upstream
6f1194246a ("remote-curl: pass on atomic capability to remote side",
2019-10-16), resulting in the "push 2000 tags over http" test number
changing.

Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.24.0.txt
2019-10-24 15:11:56 -04:00
Todd Zullinger
61b7079c2f fix t0500-progress-display on big-endian arches
Thanks to SZEDER Gábor <szeder.dev@gmail.com> for a quick patch.
2019-10-19 19:57:53 -04:00
Todd Zullinger
8040cda919 update to 2.24.0-rc0
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.24.0.txt
2019-10-18 23:14:21 -04:00
Todd Zullinger
20f4fd7268 Update to 2.23.0
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.23.0.txt
2019-08-16 17:05:49 -04:00
Todd Zullinger
300a3d79f2 Update to 2.23.0-rc2
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.23.0.txt
2019-08-11 20:08:04 -04:00
Todd Zullinger
eb2423a5cb Update to 2.23.0-rc1
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.23.0.txt
2019-08-02 20:02:30 -04:00
Todd Zullinger
f4c8506a97 Update to 2.23.0-rc0
Adjust the test to skip in t5541-http-push-smart as another test was
added before the failing test.

Apply a patch from Jeff King which fixes a failure in the newly-added
t0016-oidmap on big endian systems like s390x¹.

Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.23.0.txt

¹ https://public-inbox.org/git/20190731012336.GA13880@sigill.intra.peff.net/
2019-07-31 19:04:09 -04:00
Todd Zullinger
8faf6223ea drop jgit BR on Fedora > 30
With the move of java packages to modules, jgit looks likely to become
unavailable as a BuildRequires in Fedora soon. Avoid it on Fedora > 30
for now.

This affects 3 tests, 2 for packfile format (t5310-pack-bitmaps) and
1 of ls-remote (t5512-ls-remote).
2019-07-29 11:58:31 -04:00
Todd Zullinger
b52ad890ac avoid trailing comments in spec file
Spec file comments are only officially supported at the start of a line.
Trailing comments only worked unintentionally and rpm >= 4.15 warns
about such comments.

Reference:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/CKQCK5MDN6PFGAD4YOMXTO3SDAUKTCUT/
2019-07-25 21:07:38 -04:00
Todd Zullinger
e733d5d898 completion: do not cache if --git-completion-helper fails
"git <cmd> --git-completion-helper" could fail if the command checks for
a repo before parse_options(). If the result is cached, later on when
the user moves to a worktree with repo, tab completion will still fail.

Avoid this by detecting errors and not cache the completion output.
2019-07-25 21:07:38 -04:00
Fedora Release Engineering
edc147ffe0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-25 03:26:35 +00:00
Todd Zullinger
b5ef6c9e8b Update to 2.22.0
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.22.0.txt
2019-06-07 17:48:29 -04:00
Todd Zullinger
666aaebbc9 Add changelog entry for 2.22.0-0.6.rc3
I failed to add this entry in 21cae1e ("Update to 2.22.0-rc3",
2019-06-03).
2019-06-04 11:30:03 -04:00
Jitka Plesnikova
910a5f7151 Perl 5.30 re-rebuild updated packages 2019-06-04 14:49:05 +02:00
Todd Zullinger
21cae1e2e4 Update to 2.22.0-rc3
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.22.0.txt
2019-06-03 19:20:50 -04:00
Jitka Plesnikova
9528c261f5 Perl 5.30 re-rebuild of bootstrapped packages 2019-06-02 22:59:52 +02:00
Jitka Plesnikova
2fb7861861 Perl 5.30 rebuild 2019-06-01 20:21:17 +02:00
Todd Zullinger
763b9e71e9 Update to 2.22.0-rc2
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.22.0.txt
2019-05-30 21:01:49 -04:00
Todd Zullinger
9524a99a05 Apply upstream fixes for diff-parseopt issues on s390x
References:
https://public-inbox.org/git/20190523150416.GL3654@pobox.com/#t
https://public-inbox.org/git/20190524092442.701-1-pclouds@gmail.com/T/
2019-05-25 12:42:51 -04:00
Todd Zullinger
554467c649 Update changelog for 2.22.0-rc1 2019-05-25 12:42:38 -04:00
Todd Zullinger
ba20d6b2a2 Update to 2.22.0-rc1
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.22.0.txt
2019-05-19 16:40:01 -04:00
Todd Zullinger
40e1625e1a Add perl(JSON::PP) BuildRequires for trace2 tests
The JSON::PP perl module is used by t0212-trace2-event.  It is available
on all supported Fedora and EPEL releases.
2019-05-14 02:01:22 -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
8d801b24a1 Ensure a consistent format for test output
When run with or without a controlling terminal, keep the test output
the same.
2019-05-13 15:19:34 -04:00
Todd Zullinger
03148fb477 Update to 2.22.0-rc0
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.22.0.txt
2019-05-13 15:17:46 -04:00
Todd Zullinger
e17874a9b1 Link git-citool to git-gui
The git-gui Makefile does not follow the INSTALL_SYMLINKS setting.
Until it does, manually symlink git-citool to git-gui.

Test that the files are identical before linking, to avoid issues if
they begin to differ in the future.
2019-02-24 13:31:22 -05:00
Todd Zullinger
530061ce99 Move gitweb manpages to gitweb package
The gitweb manpages should be installed with the gitweb package.  This
discrepancy was noted by Robert P. J. Day on the git list¹.

¹ https://public-inbox.org/git/alpine.LFD.2.21.1902230756280.24879@localhost.localdomain/
2019-02-24 13:31:08 -05:00
Todd Zullinger
050797604f Update to 2.21.0
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.21.0.txt
2019-02-24 13:30:39 -05:00
Todd Zullinger
42b4954b73 Update to 2.21.0.rc2
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.21.0.txt
2019-02-19 18:51:40 -05:00
Todd Zullinger
233359ed66 Set SOURCE_DATE_EPOCH and TZ to improve build reproducibility
The documentation tools respect these variables when generating dates in
the man and html docs.  This is a small step toward making the package
builds reproducible.

An alternate method to set SOURCE_DATE_EPOCH would be to set the rpm
%source_date_epoch_from_changelog macro.  Using the version file from
the tarball is a little nicer as the date is printed in the man pages.
We'd still need to set TZ anyway, as the html documentation sets the
'last updated' footer entry based on the timestamp of the corresponding
txt file.

[Note: It is possible to avoid the 'last updated' footer entirely by
setting the asciidoc footer-style attribute to none.  This would need to
be done via sed or a patch, as there's not currently a way to set this
in config.mak -- but perhaps there should be.]

Reference: https://reproducible-builds.org/specs/source-date-epoch/
2019-02-16 14:22:24 -05:00
Todd Zullinger
f506af1ff5 Update to 2.21.0.rc1
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.21.0.txt
2019-02-14 03:32:30 -05:00
Todd Zullinger
aefb419775 Remove %changelog entries prior to 2017
The git history serves as the repository for the old entries.  The
changelog was roughly 40% of the total lines in the spec file.
2019-02-13 22:43:32 -05:00
Todd Zullinger
74154edcfe Update to 2.21.0.rc0
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.21.0.txt
2019-02-13 22:41:10 -05:00
Todd Zullinger
a643ff944c Drop unneeded TEST_SHELL_PATH make variable
TEST_SHELL_PATH was added in 62f562d ("Use 'prove' as test harness,
enable shell tracing", 2018-01-18).  Shortly afterward, upstream commit
a5bf824f3b ("t: prevent '-x' tracing from interfering with test helpers'
stderr", 2018-02-25)¹ removed the need to use bash to get the benefits of
running the test suite with '-x' tracing.

¹ https://github.com/git/git/commit/a5bf824f3b
2019-02-11 22:59:50 -05:00
Todd Zullinger
95fc1fa70e Use build_cflags/build_ldflags instead of optflags/__global_ldflags
The build_cflags and build_ldflags macros replace the deprecated
optflags and __global_ldflags macros, per buildflags.md in
redhat-rpm-config¹.

Note: EPEL provides these macros for compatibility.

¹ https://src.fedoraproject.org/rpms/redhat-rpm-config/blob/master/f/buildflags.md
2019-02-11 22:59:50 -05:00
Todd Zullinger
10da171608 Fix formatting of contrib/{contacts,subtree} docs
The Makefiles for contrib/{contacts,subtree} don't include various
asciidoc, docbook, and xmlto options which are added to docs built from
the Documentation dir.  Without these options the man page generated
for git-contacts has formatting issues.

Move the contrib/{contacts,subtree} docs to the Documentation dir to be
built along with the other doc files.
2019-02-11 22:59:49 -05: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
Todd Zullinger
fcdcff43cd Drop gnupg BuildRequires on fedora >= 30
Now that Fedora 30 defaults to gnupg2 as /bin/gpg we don't need to
install gnupg for the test suite.  We already require gnupg2 to verify
the source files.
2019-02-11 22:59:49 -05:00
Todd Zullinger
37cec08b20 Print config.mak to aid confirmation/verification of settings
Having the output of the config.mak file in the build output is very
convenient, particularly when building in koji or copr where it is not
possible to directly access the buildroot.
2019-02-11 22:59:49 -05:00
Todd Zullinger
c9d5e18948 Work around gpg-agent issues in the test suite
GnuPG2 requires gpg-agent and tries to start it on demand.  The agent
uses a socket for communication and the path to this socket must be
shorter than sun_path [108 characters, per unix(7)].

Adjust the location of the temporary directories used by the test suite
by passing the --root option via GIT_TEST_OPTS.

One potential downside to this is that we use mktemp to create the
directory and this will differ between builds.  If/when we want to make
our builds entirely reproducible we will need to revisit this.  With
luck, gnupg will be better behaved by that time¹.

An alternate solution I tested was to rename the two problematic tests
(t5573 and t7612).  This is a brittle solution as new tests may be added
which cause the same path length issue for gpg-agent.

Also drop the redundant killing of gpg-agent.  This doesn't break
anything but it can only slow the test suite (however slightly).

¹ A ticket was filed to improve gpg-agent's handling of long paths in
  GNUPGHOME (but it's nearly 2 years old): https://dev.gnupg.org/T2964.
2019-02-11 22:59:49 -05:00
Todd Zullinger
a74fadafe7 Add gnupg2-smime and perl JSON BuildRequires for tests
In addition to the gnupg2-smime BR, patch an issue which prevents the
gpgsm tests from running.  Only include gpgsm on Fedora and RHEL > 8.
On RHEL < 8 the gnupg2-smime package is too old to run the tests.
2019-02-11 22:59:49 -05:00
Todd Zullinger
a245ca5676 print-failed-test-output: minor improvements
Drop the subshell used to create the string of dashes (and rename the
variable to "sep" at the same time).  Replace $(cat file) with the
equivalent but faster $(< file).
2019-02-11 22:47:30 -05:00
Todd Zullinger
bb15dc829e Replace gitweb home-link with inline sed
One less patch to manage.
2019-02-11 22:47:10 -05:00