Hello community,
here is the log from the commit of package git for openSUSE:Factory checked in at 2015-04-28 20:47:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/git (Old)
and /work/SRC/openSUSE:Factory/.git.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "git"
Changes:
--------
--- /work/SRC/openSUSE:Factory/git/git.changes 2015-04-10 09:46:45.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.git.new/git.changes 2015-04-28 20:47:57.000000000 +0200
@@ -1,0 +2,6 @@
+Sun Apr 26 18:09:29 UTC 2015 - astieger@suse.com
+
+- git 2.3.6:
+ * "diff-highlight" (in contrib/) multibyte character support
+
+-------------------------------------------------------------------
Old:
----
git-2.3.5.tar.xz
New:
----
git-2.3.6.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ git.spec ++++++
--- /var/tmp/diff_new_pack.mqNaCw/_old 2015-04-28 20:47:58.000000000 +0200
+++ /var/tmp/diff_new_pack.mqNaCw/_new 2015-04-28 20:47:58.000000000 +0200
@@ -26,7 +26,7 @@
%endif
Name: git
-Version: 2.3.5
+Version: 2.3.6
Release: 0
Summary: Fast, scalable, distributed revision control system
License: GPL-2.0
++++++ git-2.3.5.tar.xz -> git-2.3.6.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/Documentation/CodingGuidelines new/git-2.3.6/Documentation/CodingGuidelines
--- old/git-2.3.5/Documentation/CodingGuidelines 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/Documentation/CodingGuidelines 2015-04-21 23:09:37.000000000 +0200
@@ -1,5 +1,5 @@
Like other projects, we also have some guidelines to keep to the
-code. For Git in general, three rough rules are:
+code. For Git in general, a few rough rules are:
- Most importantly, we never say "It's in POSIX; we'll happily
ignore your needs should your system not conform to it."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/Documentation/RelNotes/2.3.6.txt new/git-2.3.6/Documentation/RelNotes/2.3.6.txt
--- old/git-2.3.5/Documentation/RelNotes/2.3.6.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/git-2.3.6/Documentation/RelNotes/2.3.6.txt 2015-04-21 23:09:37.000000000 +0200
@@ -0,0 +1,13 @@
+Git v2.3.6 Release Notes
+========================
+
+Fixes since v2.3.5
+------------------
+
+ * "diff-highlight" (in contrib/) used to show byte-by-byte
+ differences, which meant that multi-byte characters can be chopped
+ in the middle. It learned to pay attention to character boundaries
+ (assuming the UTF-8 payload).
+
+Also contains typofixes, documentation updates and trivial code
+clean-ups.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/Documentation/git-cherry-pick.txt new/git-2.3.6/Documentation/git-cherry-pick.txt
--- old/git-2.3.5/Documentation/git-cherry-pick.txt 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/Documentation/git-cherry-pick.txt 2015-04-21 23:09:37.000000000 +0200
@@ -131,7 +131,8 @@
--keep-redundant-commits::
If a commit being cherry picked duplicates a commit already in the
current history, it will become empty. By default these
- redundant commits are ignored. This option overrides that behavior and
+ redundant commits cause `cherry-pick` to stop so the user can
+ examine the commit. This option overrides that behavior and
creates an empty commit object. Implies `--allow-empty`.
--strategy=<strategy>::
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/Documentation/git-fast-import.txt new/git-2.3.6/Documentation/git-fast-import.txt
--- old/git-2.3.5/Documentation/git-fast-import.txt 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/Documentation/git-fast-import.txt 2015-04-21 23:09:37.000000000 +0200
@@ -507,10 +507,6 @@
the first ancestor of the current commit, and the branch will start
out with no files. An unlimited number of `merge` commands per
commit are permitted by fast-import, thereby establishing an n-way merge.
-However Git's other tools never create commits with more than 15
-additional ancestors (forming a 16-way merge). For this reason
-it is suggested that frontends do not use more than 15 `merge`
-commands per commit; 16, if starting a new, empty branch.
Here `<commit-ish>` is any of the commit specification expressions
also accepted by `from` (see above).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/Documentation/git.txt new/git-2.3.6/Documentation/git.txt
--- old/git-2.3.5/Documentation/git.txt 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/Documentation/git.txt 2015-04-21 23:09:37.000000000 +0200
@@ -43,9 +43,10 @@
branch of the `git.git` repository.
Documentation for older releases are available here:
-* link:v2.3.5/git.html[documentation for release 2.3.5]
+* link:v2.3.6/git.html[documentation for release 2.3.6]
* release notes for
+ link:RelNotes/2.3.6.txt[2.3.6],
link:RelNotes/2.3.5.txt[2.3.5],
link:RelNotes/2.3.4.txt[2.3.4],
link:RelNotes/2.3.3.txt[2.3.3],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/Documentation/gitweb.conf.txt new/git-2.3.6/Documentation/gitweb.conf.txt
--- old/git-2.3.5/Documentation/gitweb.conf.txt 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/Documentation/gitweb.conf.txt 2015-04-21 23:09:37.000000000 +0200
@@ -482,7 +482,7 @@
composed from `@git_base_url_list` elements and project name.
+
You can setup one single value (single entry/item in this list) at build
-time by setting the `GITWEB_BASE_URL` built-time configuration variable.
+time by setting the `GITWEB_BASE_URL` build-time configuration variable.
By default it is set to (), i.e. an empty list. This means that gitweb
would not try to create project URL (to fetch) from project name.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/Documentation/howto/recover-corrupted-object-harder.txt new/git-2.3.6/Documentation/howto/recover-corrupted-object-harder.txt
--- old/git-2.3.5/Documentation/howto/recover-corrupted-object-harder.txt 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/Documentation/howto/recover-corrupted-object-harder.txt 2015-04-21 23:09:37.000000000 +0200
@@ -240,3 +240,240 @@
that easily could have gone undetected in another system. The result
still compiled, but would have caused an interesting bug (that would
have been blamed on some random commit).
+
+
+The adventure continues...
+--------------------------
+
+I ended up doing this again! Same entity, new hardware. The assumption
+at this point is that the old disk corrupted the packfile, and then the
+corruption was migrated to the new hardware (because it was done by
+rsync or similar, and no fsck was done at the time of migration).
+
+This time, the affected blob was over 20 megabytes, which was far too
+large to do a brute-force on. I followed the instructions above to
+create the `zlib` file. I then used the `inflate` program below to pull
+the corrupted data from that. Examining that output gave me a hint about
+where in the file the corruption was. But now I was working with the
+file itself, not the zlib contents. So knowing the sha1 of the object
+and the approximate area of the corruption, I used the `sha1-munge`
+program below to brute-force the correct byte.
+
+Here's the inflate program (it's essentially `gunzip` but without the
+`.gz` header processing):
+
+--------------------------
+#include
+#include
+#include
+#include
+
+int main(int argc, char **argv)
+{
+ /*
+ * oversized so we can read the whole buffer in;
+ * this could actually be switched to streaming
+ * to avoid any memory limitations
+ */
+ static unsigned char buf[25 * 1024 * 1024];
+ static unsigned char out[25 * 1024 * 1024];
+ int len;
+ z_stream z;
+ int ret;
+
+ len = read(0, buf, sizeof(buf));
+ memset(&z, 0, sizeof(z));
+ inflateInit(&z);
+
+ z.next_in = buf;
+ z.avail_in = len;
+ z.next_out = out;
+ z.avail_out = sizeof(out);
+
+ ret = inflate(&z, 0);
+ if (ret != Z_OK && ret != Z_STREAM_END)
+ fprintf(stderr, "initial inflate failed (%d)\n", ret);
+
+ fprintf(stderr, "outputting %lu bytes", z.total_out);
+ fwrite(out, 1, z.total_out, stdout);
+ return 0;
+}
+--------------------------
+
+And here is the `sha1-munge` program:
+
+--------------------------
+#include
+#include
+#include
+#include
+#include
+#include
+
+/* eye candy */
+static int counter = 0;
+static void progress(int sig)
+{
+ fprintf(stderr, "\r%d", counter);
+ alarm(1);
+}
+
+static const signed char hexval_table[256] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 00-07 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 08-0f */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 10-17 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 18-1f */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 20-27 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 28-2f */
+ 0, 1, 2, 3, 4, 5, 6, 7, /* 30-37 */
+ 8, 9, -1, -1, -1, -1, -1, -1, /* 38-3f */
+ -1, 10, 11, 12, 13, 14, 15, -1, /* 40-47 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 48-4f */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 50-57 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 58-5f */
+ -1, 10, 11, 12, 13, 14, 15, -1, /* 60-67 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 68-67 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 70-77 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 78-7f */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 80-87 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 88-8f */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 90-97 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* 98-9f */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* a0-a7 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* a8-af */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* b0-b7 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* b8-bf */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* c0-c7 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* c8-cf */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* d0-d7 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* d8-df */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* e0-e7 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* e8-ef */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* f0-f7 */
+ -1, -1, -1, -1, -1, -1, -1, -1, /* f8-ff */
+};
+
+static inline unsigned int hexval(unsigned char c)
+{
+return hexval_table[c];
+}
+
+static int get_sha1_hex(const char *hex, unsigned char *sha1)
+{
+ int i;
+ for (i = 0; i < 20; i++) {
+ unsigned int val;
+ /*
+ * hex[1]=='\0' is caught when val is checked below,
+ * but if hex[0] is NUL we have to avoid reading
+ * past the end of the string:
+ */
+ if (!hex[0])
+ return -1;
+ val = (hexval(hex[0]) << 4) | hexval(hex[1]);
+ if (val & ~0xff)
+ return -1;
+ *sha1++ = val;
+ hex += 2;
+ }
+ return 0;
+}
+
+int main(int argc, char **argv)
+{
+ /* oversized so we can read the whole buffer in */
+ static unsigned char buf[25 * 1024 * 1024];
+ char header[32];
+ int header_len;
+ unsigned char have[20], want[20];
+ int start, len;
+ SHA_CTX orig;
+ unsigned i, j;
+
+ if (!argv[1] || get_sha1_hex(argv[1], want)) {
+ fprintf(stderr, "usage: sha1-munge <sha1> [start] .
#
@@ -580,8 +580,8 @@
# Identity of this package.
PACKAGE_NAME='git'
PACKAGE_TARNAME='git'
-PACKAGE_VERSION='2.3.5'
-PACKAGE_STRING='git 2.3.5'
+PACKAGE_VERSION='2.3.6'
+PACKAGE_STRING='git 2.3.6'
PACKAGE_BUGREPORT='git@vger.kernel.org'
PACKAGE_URL=''
@@ -1251,7 +1251,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures git 2.3.5 to adapt to many kinds of systems.
+\`configure' configures git 2.3.6 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1312,7 +1312,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of git 2.3.5:";;
+ short | recursive ) echo "Configuration of git 2.3.6:";;
esac
cat <<\_ACEOF
@@ -1451,7 +1451,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-git configure 2.3.5
+git configure 2.3.6
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1931,7 +1931,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by git $as_me 2.3.5, which was
+It was created by git $as_me 2.3.6, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -8044,7 +8044,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by git $as_me 2.3.5, which was
+This file was extended by git $as_me 2.3.6, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -8101,7 +8101,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-git config.status 2.3.5
+git config.status 2.3.6
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/contrib/diff-highlight/diff-highlight new/git-2.3.6/contrib/diff-highlight/diff-highlight
--- old/git-2.3.5/contrib/diff-highlight/diff-highlight 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/contrib/diff-highlight/diff-highlight 2015-04-21 23:09:37.000000000 +0200
@@ -1,5 +1,6 @@
#!/usr/bin/perl
+use 5.008;
use warnings FATAL => 'all';
use strict;
@@ -164,8 +165,12 @@
sub split_line {
local $_ = shift;
- return map { /$COLOR/ ? $_ : (split //) }
- split /($COLOR*)/;
+ return utf8::decode($_) ?
+ map { utf8::encode($_); $_ }
+ map { /$COLOR/ ? $_ : (split //) }
+ split /($COLOR+)/ :
+ map { /$COLOR/ ? $_ : (split //) }
+ split /($COLOR+)/;
}
sub highlight_line {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/git.spec new/git-2.3.6/git.spec
--- old/git-2.3.5/git.spec 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/git.spec 2015-04-21 23:09:38.000000000 +0200
@@ -1,7 +1,7 @@
# Pass --without docs to rpmbuild if you don't want the documentation
Name: git
-Version: 2.3.5
+Version: 2.3.6
Release: 1%{?dist}
Summary: Core git tools
License: GPL
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/parse-options.h new/git-2.3.6/parse-options.h
--- old/git-2.3.5/parse-options.h 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/parse-options.h 2015-04-21 23:09:37.000000000 +0200
@@ -95,8 +95,7 @@
*
* `defval`::
* default value to fill (*->value) with for PARSE_OPT_OPTARG.
- * OPTION_{BIT,SET_INT} store the {mask,integer,pointer} to put in
- * the value when met.
+ * OPTION_{BIT,SET_INT} store the {mask,integer} to put in the value when met.
* CALLBACKS can use it like they want.
*/
struct option {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/path.c new/git-2.3.6/path.c
--- old/git-2.3.5/path.c 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/path.c 2015-04-21 23:09:37.000000000 +0200
@@ -303,14 +303,9 @@
* (3) "relative/path" to mean cwd relative directory; or
* (4) "/absolute/path" to mean absolute directory.
*
- * Unless "strict" is given, we try access() for existence of "%s.git/.git",
- * "%s/.git", "%s.git", "%s" in this order. The first one that exists is
- * what we try.
- *
- * Second, we try chdir() to that. Upon failure, we return NULL.
- *
- * Then, we try if the current directory is a valid git repository.
- * Upon failure, we return NULL.
+ * Unless "strict" is given, we check "%s/.git", "%s", "%s.git/.git", "%s.git"
+ * in this order. We select the first one that is a valid git repository, and
+ * chdir() to it. If none match, or we fail to chdir, we return NULL.
*
* If all goes well, we return the directory we used to chdir() (but
* before ~user is expanded), avoiding getcwd() resolving symbolic
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/t/lib-httpd/apache.conf new/git-2.3.6/t/lib-httpd/apache.conf
--- old/git-2.3.5/t/lib-httpd/apache.conf 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/t/lib-httpd/apache.conf 2015-04-21 23:09:37.000000000 +0200
@@ -70,6 +70,7 @@
PassEnv GIT_VALGRIND_OPTIONS
PassEnv GNUPGHOME
PassEnv ASAN_OPTIONS
+PassEnv GIT_TRACE
Alias /dumb/ www/
Alias /auth/dumb/ www/auth/dumb/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/t/lib-httpd.sh new/git-2.3.6/t/lib-httpd.sh
--- old/git-2.3.5/t/lib-httpd.sh 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/t/lib-httpd.sh 2015-04-21 23:09:37.000000000 +0200
@@ -79,6 +79,7 @@
# hack to suppress apache PassEnv warnings
GIT_VALGRIND=$GIT_VALGRIND; export GIT_VALGRIND
GIT_VALGRIND_OPTIONS=$GIT_VALGRIND_OPTIONS; export GIT_VALGRIND_OPTIONS
+GIT_TRACE=$GIT_TRACE; export GIT_TRACE
if ! test -x "$LIB_HTTPD_PATH"
then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/t/t5541-http-push-smart.sh new/git-2.3.6/t/t5541-http-push-smart.sh
--- old/git-2.3.5/t/t5541-http-push-smart.sh 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/t/t5541-http-push-smart.sh 2015-04-21 23:09:37.000000000 +0200
@@ -324,12 +324,6 @@
test_cmp expect actual
'
-run_with_limited_cmdline () {
- (ulimit -s 128 && "$@")
-}
-
-test_lazy_prereq CMDLINE_LIMIT 'run_with_limited_cmdline true'
-
test_expect_success CMDLINE_LIMIT 'push 2000 tags over http' '
sha1=$(git rev-parse HEAD) &&
test_seq 2000 |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/t/t5551-http-fetch-smart.sh new/git-2.3.6/t/t5551-http-fetch-smart.sh
--- old/git-2.3.5/t/t5551-http-fetch-smart.sh 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/t/t5551-http-fetch-smart.sh 2015-04-21 23:09:37.000000000 +0200
@@ -224,10 +224,10 @@
git -C hidden.git rev-parse --verify b
'
-test_expect_success EXPENSIVE 'create 50,000 tags in the repo' '
+test_expect_success 'create 2,000 tags in the repo' '
(
cd "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" &&
- for i in `test_seq 50000`
+ for i in $(test_seq 2000)
do
echo "commit refs/heads/too-many-refs"
echo "mark :$i"
@@ -248,13 +248,22 @@
)
'
-test_expect_success EXPENSIVE 'clone the 50,000 tag repo to check OS command line overflow' '
- git clone $HTTPD_URL/smart/repo.git too-many-refs &&
+test_expect_success CMDLINE_LIMIT \
+ 'clone the 2,000 tag repo to check OS command line overflow' '
+ run_with_limited_cmdline git clone $HTTPD_URL/smart/repo.git too-many-refs &&
(
cd too-many-refs &&
- test $(git for-each-ref refs/tags | wc -l) = 50000
+ git for-each-ref refs/tags >actual &&
+ test_line_count = 2000 actual
)
'
+test_expect_success 'large fetch-pack requests can be split across POSTs' '
+ GIT_CURL_VERBOSE=1 git -c http.postbuffer=65536 \
+ clone --bare "$HTTPD_URL/smart/repo.git" split.git 2>err &&
+ grep "^> POST" err >posts &&
+ test_line_count = 2 posts
+'
+
stop_httpd
test_done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/t/test-lib.sh new/git-2.3.6/t/test-lib.sh
--- old/git-2.3.5/t/test-lib.sh 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/t/test-lib.sh 2015-04-21 23:09:37.000000000 +0200
@@ -152,10 +152,7 @@
case $(echo $GIT_TRACE |tr "[A-Z]" "[a-z]") in
1|2|true)
- echo "* warning: Some tests will not work if GIT_TRACE" \
- "is set as to trace on STDERR ! *"
- echo "* warning: Please set GIT_TRACE to something" \
- "other than 1, 2 or true ! *"
+ GIT_TRACE=4
;;
esac
@@ -299,6 +296,7 @@
GIT_EXIT_OK=
trap 'die' EXIT
+trap 'exit $?' INT
# The user-facing functions are loaded from a separate file so that
# test_perf subshells can have them too
@@ -1064,3 +1062,9 @@
"$GIT_UNZIP" -v
test $? -ne 127
'
+
+run_with_limited_cmdline () {
+ (ulimit -s 128 && "$@")
+}
+
+test_lazy_prereq CMDLINE_LIMIT 'run_with_limited_cmdline true'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/git-2.3.5/version new/git-2.3.6/version
--- old/git-2.3.5/version 2015-04-01 00:14:52.000000000 +0200
+++ new/git-2.3.6/version 2015-04-21 23:09:38.000000000 +0200
@@ -1 +1 @@
-2.3.5
+2.3.6