Update to 2.18.0-rc0

The USE_LIBPCRE setting now defaults to pcre2; use it.  It's still
valid to set USE_LIBPCRE2, but using the default should be cleaner in
the long-run.

The (long-unmaintained) emacs support has been dropped upstream in favor
of better alternatives.  From the upstream commit¹:

    The git-blame.el mode has been superseded by Emacs's own
    vc-annotate (invoked by C-x v g). Users of the git.el mode are now
    much better off using either Magit or the Git backend for Emacs's own
    VC mode.

    These modes were added over 10 years ago when Emacs's own Git support
    was much less mature, and there weren't other mature modes in the wild
    or shipped with Emacs itself.

    These days these modes have few if any users, and users of git aren't
    well served by us shipping these (some OS's install them alongside git
    by default, which is confusing and leads users astray).

¹ 6d5ed4836d ("git{,-blame}.el: remove old bitrotting Emacs code", 2018-04-11)
  https://git.kernel.org/pub/scm/git/git.git/commit/?id=6d5ed4836d
This commit is contained in:
Todd Zullinger 2018-05-30 19:08:11 -04:00
parent 3f3a0b6309
commit d3cc8ccead
5 changed files with 20 additions and 119 deletions

View File

@ -1,30 +0,0 @@
From e67d906d735166f2068f1e4cc393220483a97f30 Mon Sep 17 00:00:00 2001
From: Lucas Werkmeister <mail@lucaswerkmeister.de>
Date: Wed, 4 Apr 2018 00:13:07 +0200
Subject: [PATCH] daemon.c: fix condition for redirecting stderr
Since the --log-destination option was added in 0c591cacb ("daemon: add
--log-destination=(stderr|syslog|none)", 2018-02-04) with the explicit
goal of allowing logging to stderr when running in inetd mode, we should
not always redirect stderr to /dev/null in inetd mode, but rather only
when stderr is not being used for logging.
Signed-off-by: Lucas Werkmeister <mail@lucaswerkmeister.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
daemon.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/daemon.c b/daemon.c
index fb538e3678997..7857169055385 100644
--- a/daemon.c
+++ b/daemon.c
@@ -1462,7 +1462,7 @@ int cmd_main(int argc, const char **argv)
die("base-path '%s' does not exist or is not a directory",
base_path);
- if (inetd_mode) {
+ if (log_destination != LOG_DESTINATION_STDERR) {
if (!freopen("/dev/null", "w", stderr))
die_errno("failed to redirect stderr to /dev/null");
}

View File

@ -1,49 +0,0 @@
From 51db2715876580acdb28b17079c9f6cb784da849 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=86var=20Arnfj=C3=B6r=C3=B0=20Bjarmason?=
<avarab@gmail.com>
Date: Fri, 6 Apr 2018 13:15:14 +0000
Subject: [PATCH] git-svn: avoid warning on undef readline()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Change code in Git.pm that sometimes calls chomp() on undef to only do
so the value is defined.
This code has been chomping undef values ever since it was added in
b26098fc2f ("git-svn: reduce scope of input record separator change",
2016-10-14), but started warning due to the introduction of "use
warnings" to Git.pm in my f0e19cb7ce ("Git.pm: add the "use warnings"
pragma", 2018-02-25) released with 2.17.0.
Since this function will return undef in those cases it's still
possible that the code using it will warn if it does a chomp of its
own, as the code added in b26098fc2f ("git-svn: reduce scope of input
record separator change", 2016-10-14) might do, but since git-svn has
"use warnings" already that's clearly not a codepath that's going to
warn.
See https://public-inbox.org/git/86h8oobl36.fsf@phe.ftfl.ca/ for the
original report.
Reported-by: Joseph Mingrone <jrm@ftfl.ca>
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Improved-by: Eric Wong <e@80x24.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
perl/Git.pm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/perl/Git.pm b/perl/Git.pm
index d2c5a8d238b87..d453e4b83b827 100644
--- a/perl/Git.pm
+++ b/perl/Git.pm
@@ -549,7 +549,7 @@ sub get_record {
my ($fh, $rs) = @_;
local $/ = $rs;
my $rec = <$fh>;
- chomp $rec if defined $rs;
+ chomp $rec if defined $rec;
$rec;
}

View File

@ -1,5 +0,0 @@
;; Git VC backend
(add-to-list 'vc-handled-backends 'GIT t)
(autoload 'git-status "git" "GIT mode." t)
(autoload 'git-blame-mode "git-blame"
"Minor mode for incremental blame for Git." t)

View File

@ -79,11 +79,11 @@
%endif
# Define for release candidates
#global rcrev .rc0
%global rcrev .rc0
Name: git
Version: 2.17.1
Release: 3%{?rcrev}%{?dist}
Version: 2.18.0
Release: 0.0%{?rcrev}%{?dist}
Summary: Fast Version Control System
License: GPLv2
URL: https://git-scm.com/
@ -102,7 +102,6 @@ Source1: https://www.kernel.org/pub/software/scm/git/%{?rcrev:testing/}%{
Source9: gpgkey-junio.asc
# Local sources begin at 10 to allow for additional future upstream sources
Source10: git-init.el
Source11: git.xinetd.in
Source12: git-gui.desktop
Source13: gitweb-httpd.conf
@ -121,13 +120,9 @@ Source99: print-failed-test-output
Patch0: git-1.8-gitweb-home-link.patch
# https://bugzilla.redhat.com/490602
Patch1: git-cvsimport-Ignore-cvsps-2.2b1-Branches-output.patch
# https://github.com/gitster/git/commit/51db271.patch
Patch2: 0001-git-svn-avoid-warning-on-undef-readline.patch
# https://github.com/gitster/git/commit/e67d906.patch
Patch3: 0001-daemon.c-fix-condition-for-redirecting-stderr.patch
# https://bugzilla.redhat.com/1581678
# https://public-inbox.org/git/20180524062733.5412-1-newren@gmail.com/
Patch4: 0001-rev-parse-check-lookup-ed-commit-references-for-NULL.patch
Patch2: 0001-rev-parse-check-lookup-ed-commit-references-for-NULL.patch
%if %{with docs}
BuildRequires: asciidoc >= 8.4.1
@ -331,15 +326,10 @@ Summary: Git version control system support for Emacs
Requires: git = %{version}-%{release}
BuildArch: noarch
Requires: emacs(bin) >= %{_emacs_version}
Obsoletes: emacs-git-el < 2.18.0-0.0
Provides: emacs-git-el = %{version}-%{release}
%description -n emacs-git
%{summary}.
%package -n emacs-git-el
Summary: Elisp source files for git version control system support for Emacs
BuildArch: noarch
Requires: emacs-git = %{version}-%{release}
%description -n emacs-git-el
%{summary}.
%endif
%package -n gitk
@ -456,7 +446,7 @@ V = 1
CFLAGS = %{optflags}
LDFLAGS = %{__global_ldflags}
NEEDS_CRYPTO_WITH_SSL = 1
USE_LIBPCRE2 = 1
USE_LIBPCRE = 1
ETC_GITCONFIG = %{_sysconfdir}/gitconfig
GITWEB_PROJECTROOT = %{_localstatedir}/lib/git
GNU_ROFF = 1
@ -507,8 +497,6 @@ grep -rlZ '^use Git::LoadCPAN::' | xargs -r0 sed -i 's/Git::LoadCPAN:://g'
%build
%make_build all %{?with_docs:doc}
make -C contrib/emacs
%if %{libsecret}
%make_build -C contrib/credential/libsecret/
%endif
@ -547,14 +535,14 @@ for i in git git-shell git-upload-pack; do
done
%global elispdir %{_emacs_sitelispdir}/git
make -C contrib/emacs install \
emacsdir=%{buildroot}%{elispdir}
for elc in %{buildroot}%{elispdir}/*.elc ; do
install -pm 644 contrib/emacs/$(basename $elc .elc).el \
%{buildroot}%{elispdir}
pushd contrib/emacs >/dev/null
for el in *.el ; do
# Note: No byte-compiling is done. These .el files are one-line stubs
# which only serve to point users to better alternatives.
install -Dpm 644 $el %{buildroot}%{elispdir}/$el
rm -f $el # clean up to avoid cruft in git-core-doc
done
install -Dpm 644 %{SOURCE10} \
%{buildroot}%{_emacs_sitestartdir}/git-init.el
popd >/dev/null
%if %{libsecret}
install -pm 755 contrib/credential/libsecret/git-credential-libsecret \
@ -757,7 +745,6 @@ make test || ./print-failed-test-output
%files -f bin-man-doc-git-files
%if %{emacs_filesystem}
%{elispdir}
%{_emacs_sitestartdir}/git-init.el
%endif
%{_datadir}/git-core/contrib/diff-highlight
%{_datadir}/git-core/contrib/hooks/multimail
@ -826,12 +813,7 @@ make test || ./print-failed-test-output
%if ! %{emacs_filesystem}
%files -n emacs-git
%{_pkgdocdir}/contrib/emacs/README
%dir %{elispdir}
%{elispdir}/*.elc
%{_emacs_sitestartdir}/git-init.el
%files -n emacs-git-el
%{elispdir}/*.el
%{elispdir}
%endif
%files email
@ -895,6 +877,9 @@ make test || ./print-failed-test-output
%{?with_docs:%{_pkgdocdir}/git-svn.html}
%changelog
* Wed May 30 2018 Todd Zullinger <tmz@pobox.com> - 2.18.0-0.0.rc0
- Update to 2.18.0-rc0
* Wed May 30 2018 Todd Zullinger <tmz@pobox.com> - 2.17.1-3
- Use %%apply_patch for aarch64 zlib patch, return to %%autosetup
- Disable jgit tests on s390x, they're unreliable

View File

@ -1,2 +1,2 @@
SHA512 (git-2.17.1.tar.xz) = 77c27569d40fbae1842130baa0cdda674a02e384631bd8fb1f2ddf67ce372dd4903b2ce6b4283a4ae506cdedd5daa55baa2afe6a6689528511e24e4beb864960
SHA512 (git-2.17.1.tar.sign) = 90fd436a1df4a154afa36a4aaea8fa447db703ca42197f5f4507c81f96076d5f20006c265506326958f5e0b670b72b11bc37ae4bebbfee0f6ba9d9274cf71017
SHA512 (git-2.18.0.rc0.tar.xz) = 94ca43dfc2a9caa5d1a87d8f57558c7abc5ad4557705a0c3cf426f3720d09b9b45d2dc50f1238ddc69388238379addf3f59fd5fd21effd25376401263f0cdb7a
SHA512 (git-2.18.0.rc0.tar.sign) = c0537a5e29ccbbc21a08d0bae22898111fcde9f863e018825454e0aa7e2449bf8ecc20ea0690e0ddcecc9616c9ab9d61a71b758d2a5b5075b80835fadda12030