Commit Graph

567 Commits

Author SHA1 Message Date
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
Todd Zullinger
fece8d786b Add additional BuildRequires for i18n locales used in tests
The test suite uses is_IS.UTF-8 and is_IS.ISO8859-1 (via the
GETTEXT_LOCALE and GETTEXT_ISO_LOCALE prereq's.  Ensure these locales
are available.  Installing glibc-langpack-is is insufficient as it does
not provide is_IS.ISO8859-1, glibc-all-langpacks is also needed.

Now that we're installing additional langpacks, update the macro name
which was added in a6a24cf ("Add glibc-langpack-en BuildRequires for
en_US.UTF-8 locale", 2018-11-05).
2019-02-11 22:46:46 -05:00
Todd Zullinger
5aaf62d16f Remove extraneous pcre BuildRequires
The pcre BR was added in 6dc6285 ("Improve test suite coverage",
2017-11-10), which seems to have been an oversight.  The test suite
improvements were worked on over a long period of time.  It is quite
likely that the pcre BR was needed before 6dc6285 was finalized.
Regardless, we began building against pcre2 in 595b682 ("Use pcre2
library", 2017-07-22).

Note that pcre remains in the minimal buildroot due to dependencies in
glib2 and grep.
2019-02-11 22:46:22 -05:00
Fedora Release Engineering
6a5fa7acb3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-01-31 22:26:02 +00:00
Todd Zullinger
e38a5c222e Update to 2.20.1
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.20.1.txt
2018-12-15 00:53:32 -05:00
Todd Zullinger
4fe38417f1 Update to 2.20.0
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.20.0.txt
2018-12-09 10:18:20 -05:00
Todd Zullinger
c983514258 Update to 2.20.0.rc2
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.20.0.txt
2018-12-01 13:45:33 -05:00
Todd Zullinger
0b6f68c532 Update to 2.20.0.rc1
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.20.0.txt
2018-11-26 22:51:54 -05:00
Todd Zullinger
e46c99bb3b Update to 2.19.2
Release notes:
https://www.kernel.org/pub/software/scm/git/docs/RelNotes/2.19.2.txt
2018-11-21 23:44:18 -05:00
Todd Zullinger
a6a24cf421 Add glibc-langpack-en BuildRequires for en_US.UTF-8 locale
Fedora 30 will remove glibc-all-langpacks from the default buildroot¹.
Ensure en_US.UTF-8 locale is present for the test suite.  Avoid C.UTF-8
until it is more widely used and tested.

¹ https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot
2018-11-21 23:40:32 -05:00
Todd Zullinger
314daae243 Avoid 'unexpanded macro' warning in mock srpm builds
When preparing the srpm in mock or other minimal environments, the use
of %{_emacs_version} causes a spurious warning:

  Possible unexpanded macro in: Requires: emacs-filesystem >= %{_emacs_version}

Prevent the warning with a check that the macro is defined before use.

(There is another use of %{_emacs_version}, but it only applies to EL-6
where the warning is not present.  Just ignore it.)
2018-11-21 23:40:32 -05:00
Todd Zullinger
ac594c4ca5 Add comments to %endif statements
Make it easier to tell what %if conditions are being ended.  This is
particularly useful with nested conditions since we lack any indentation
to visually denote the conditional blocks.
2018-11-21 23:40:32 -05:00
Todd Zullinger
ba93b90998 Use %{without ...} macro consistently
The %{without ...} macro is easier to read than '! %{with ...}', use it
consistently.

(Note that using %without_* and %_without_* macros is still not
advised.)
2018-11-21 23:40:32 -05:00
Todd Zullinger
4e0f331329 Simplify gpg verification of Source0
The verification was simplified slightly in 903d8f3 ("Remove EL-5 and
old Fedora conditionals", 2017-07-22).

Further simplifications:

    - do away with unneeded variables
    - drop '--batch' and '>/dev/null' from gpg2 --dearmor
    - check tarball signature via stdin

The "noisy output from GnuPG 2.0" alluded to on EL <= 7 is no longer
present.  This has been tested in mock for el6, el7, and fedora
releases.
2018-11-21 23:40:32 -05:00
Todd Zullinger
a91c5fdb8a Skip test BuildRequires when --without tests is used
The chroot is a bit quicker to create and slightly smaller when building
'--without tests' if the BuildRequires needed to run the tests are
skipped.

Add pod2man dependency when documentation is enabled (the default).
Since git-2.17.0, pod2man is needed to build Git.3pm.  The pod2man
command is in perl-podlators on Fedora and EL >= 7, but in perl on EL-6.
Use %{_bindir}/pod2man to ensure the dependency is found regardless of
what package provides it.

The dependency is only missed when building without the test deps, as
the many perl requirements pulled in for the test suite bring in
pod2man.
2018-11-21 23:40:27 -05:00
Pavel Cahyna
79dbcc83dc Update condition for the t5540-http-push-webdav test for future RHEL 2018-10-22 11:43:21 +02:00
Todd Zullinger
32a31b7090 Update to 2.19.1 (CVE-2018-17456)
From the upstream release announcement:

  These releases fix a security flaw (CVE-2018-17456), which allowed an
  attacker to execute arbitrary code by crafting a malicious .gitmodules
  file in a project cloned with --recurse-submodules.

  When running "git clone --recurse-submodules", Git parses the supplied
  .gitmodules file for a URL field and blindly passes it as an argument
  to a "git clone" subprocess.  If the URL field is set to a string that
  begins with a dash, this "git clone" subprocess interprets the URL as
  an option.  This can lead to executing an arbitrary script shipped in
  the superproject as the user who ran "git clone".

  In addition to fixing the security issue for the user running "clone",
  the 2.17.2, 2.18.1 and 2.19.1 releases have an "fsck" check which can
  be used to detect such malicious repository content when fetching or
  accepting a push. See "transfer.fsckObjects" in git-config(1).

  Credit for finding and fixing this vulnerability goes to joernchen
  and Jeff King, respectively.

References:
https://public-inbox.org/git/xmqqy3bcuy3l.fsf@gitster-ct.c.googlers.com/
2018-10-05 15:18:02 -04:00
Todd Zullinger
1cb6673d8f Update t5551 w/curl-7.61.1 patch
Add a link to the upstream commit and use that patch.  The patch content
is the same -- only the metadata differs.
2018-10-01 23:26:58 -04:00