threads / announce / 11598

[ANNOUNCE] GIT 1.5.4-rc3

Subject: [ANNOUNCE] GIT 1.5.4-rc3

## tl;dr

29 messages between Jan 12, 2008 and Jan 29, 2008.

replies: 28people: 10as markdown or json

Junio C Hamano· Jan 12, 2008, 07:11 UTC · lore

The third rc for the next feature release GIT 1.5.4 is available at the usual places:

  http://www.kernel.org/pub/software/scm/git/
  git-1.5.4.rc3.tar.{gz,bz2}			(tarball)
  git-htmldocs-1.5.4.rc3.tar.{gz,bz2}		(preformatted docs)
  git-manpages-1.5.4.rc3.tar.{gz,bz2}		(preformatted docs)
  testing/git-*-1.5.4.rc3-1.$arch.rpm	(RPM)

Sorry, this is a few days late than I promised. Partly due to day-job pressure, partly because I am not familiar with RPM spec file and ended up failing to get the spec file into a reasonable shape after gitk i18n merge more than twice, and partly because I involved myself to discussion on the list I should not have been deeply involved in during the rc freeze.

In any case, we managed to keep the changes only to fixes (both code and documentation) this round, aside from the promised gitk i18n enhancements. This should be pretty much the same as what we will have in final, hopefully due by the end of the month.

Please give it a good beating. Especially if you care about the final RPM, and you are familiar with RPM generation, I would appreciate extra set of eyeballs to see if dependencies and other metainformation is set up correctly, as I do not think many people have tested it.

----------------------------------------------------------------
Changes since v1.5.4-rc2 are as follows:
Alexandre Julliard (6):
      git.el: Support for getting diffs from inside the log-edit buffer.
      git.el: Retrieve the permissions for up-to-date files.
      git.el: Display file types and type changes.
      git.el: Make sure we never insert the same file twice.
      git.el: Refresh files from their real state upon commit.
      git.el: Make status refresh faster.
Bernt Hansen (1):
      git-gui: Make commit log messages end with a newline
Brandon Casey (1):
      git-relink.txt: describe more clearly how hard linking occurs
Charles Bailey (1):
      gitk: Fix the Makefile to cope with systems lacking msgfmt
Christian Couder (1):
      Documentation: config: add 'help.*' and 'instaweb.*' variables.
Christian Stimming (10):
      gitk i18n: Add Makefile with rules for po file creation and installation
      gitk i18n: Import msgcat for message string translation; load translation catalogs
      gitk i18n: Markup several strings for translation
      gitk i18n: Initial German translation
      gitk i18n: More markup -- various options menus
      gitk i18n: Recode gitk from latin1 to utf8 so that the (c) copyright character is valid utf8.
      gitk: Update and fix Makefile
      gitk: Update German translation
      gitk: Fix typo in user message.
      gitk: Update German translation.
Dan McGee (1):
      Documentation: rename gitlink macro to linkgit
Eric Wong (4):
      git-svn: allow dcommit --no-rebase to commit multiple, dependent changes
      git-svn: unlink index files that were globbed, too
      git-svn: support for funky branch and project names over HTTP(S)
      git-svn: clarify the "Ignoring error from SVN" piece
Florian La Roche (1):
      Change git-gc documentation to reflect gc.packrefs implementation.
Gerrit Pape (1):
      gitk: use user-configured background in view definition dialog
Grégoire Barbier (1):
      Fix double-free() in http-push.c:remote_exists()
Gustaf Hendeby (1):
      Documentation/user-manual.txt: fix typo
J. Bruce Fields (1):
      Documentation: fix remote.<name>.skipDefaultUpdate description
James Bowes (1):
      Make the git metapackage require the same version of the subpackages.
Jeff King (8):
      config: handle lack of newline at end of file better
      git-reset: refuse to do hard reset in a bare repository
      add a "basic" diff config callback
      diff: load funcname patterns in "basic" config
      diff: remove lazy config loading
      add--interactive: remove unused diff colors
      add--interactive: allow diff colors without interactive colors
      Document the color.interactive semantics
Jim Meyering (3):
      Fix grammar nits in documentation and in code comments.
      Don't access line[-1] for a zero-length "line" from fgets.
      bundle, fast-import: detect write failure
Johannes Schindelin (2):
      Optimize prefixcmp()
      shortlog: mention the "-e" option in the usage
Johannes Sixt (2):
      git-gui: Move frequently used commands to the top of the context menu.
      recv_sideband: Do not use ANSI escape sequence on dumb terminals.
Junio C Hamano (27):
      Documentation/git-submodule.txt: typofix
      "git pull --tags": error out with a better message.
      git-rebase -i behaves better on commits with incomplete messages
      git-rebase -i: clean-up error check codepath.
      lock_any_ref_for_update(): reject wildcard return from check_ref_format
      Update callers of check_ref_format()
      Uninline prefixcmp()
      git-clean: make "Would remove ..." path relative to cwd again
      t/t7600: avoid GNUism in grep
      t/t{3600,3800,5401}: do not use egrep when grep would do
      t/t3800: do not use a temporary file to hold expected result.
      Update draft release notes for 1.5.4
      git-stash clear: refuse to work with extra parameter for now
      git-rev-parse --symbolic-full-name
      filter-branch: work correctly with ambiguous refnames
      custom pretty format: tolerate empty e-mail address
      Documentation: remove gitman.info with "make clean"
      Documentation: fix "gitlink::foobar[s]"
      utf8: pick_one_utf8_char()
      utf8_width(): allow non NUL-terminated input
      diff: do not chomp hunk-header in the middle of a character
      Update draft release notes for 1.5.4
      GIT 1.5.3.8
      "git-apply --check" should not report "fixed"
      pack-objects: remove redundant and wrong call to deflateEnd()
      RPM spec: include gitk message files.
      GIT 1.5.4-rc3
Kevin Ballard (1):
      Trim leading / off of paths in git-svn prop_walk
Marco Costalba (2):
      Document git-reset defaults to HEAD if no commit is given
      git-stash: use stdout instead of stderr for non error messages
Mark Levedahl (2):
      git-gui: Unconditionally use absolute paths with Cygwin
      Documentation/Makefile - honor $DESTDIR for quick-install target
Martin Koegler (4):
      receive-pack: check object type of sha1 before using them as commits
      receive-pack: reject invalid refnames
      parse_tag_buffer: don't parse invalid tags
      tree-walk: don't parse incorrect entries
Michael Stefaniuc (1):
      git-am: Run git gc only once and not for every patch.
Michele Ballabio (1):
      Document some default values in config.txt
Miklos Vajna (2):
      git-sh-setup: document git_editor() and get_author_ident_from_commit()
      t/t7001: avoid unnecessary ERE when using grep
Nicolas Pitre (1):
      slightly better auto gc message
Paul Mackerras (2):
      gitk: Recode de.po to UTF-8
      gitk: Restore some widget options whose defaults changed in Tk 8.5
Peter Karlsson (1):
      Added Swedish translation.
Ralf Wildenhues (1):
      Documentation: typofix
Rogan Dawes (1):
      Allow git-mergetool to handle paths with a leading space
Shawn O. Pearce (1):
      git-gui: Handle file mode changes (644->755) in diff viewer
Ismail Dönmez· Jan 12, 2008, 07:26 UTC · re: Junio C Hamano · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

Saturday 12 January 2008 09:11:23 tarihinde Junio C Hamano şunları yazmıştı:
Show 9 quoted lines
> The third rc for the next feature release GIT 1.5.4 is available
> at the usual places:
>
>   http://www.kernel.org/pub/software/scm/git/
>
>   git-1.5.4.rc3.tar.{gz,bz2}			(tarball)
>   git-htmldocs-1.5.4.rc3.tar.{gz,bz2}		(preformatted docs)
>   git-manpages-1.5.4.rc3.tar.{gz,bz2}		(preformatted docs)
>   testing/git-*-1.5.4.rc3-1.$arch.rpm	(RPM)
I am seeing new failures compared to rc2 :
*** t9200-git-cvsexportcommit.sh ***
* FAIL 1: New file
        mkdir A B C D E F &&
             echo hello1 >A/newfile1.txt &&
             echo hello2 >B/newfile2.txt &&
             cp ../test9200a.png C/newfile3.png &&
             cp ../test9200a.png D/newfile4.png &&
             git add A/newfile1.txt &&
             git add B/newfile2.txt &&
             git add C/newfile3.png &&
             git add D/newfile4.png &&
             git commit -a -m "Test: New file" &&
             id=$(git rev-list --max-count=1 HEAD) &&
             (cd "$CVSWORK" &&
             git cvsexportcommit -c $id &&
             check_entries A "newfile1.txt/1.1/" &&
             check_entries B "newfile2.txt/1.1/" &&
             check_entries C "newfile3.png/1.1/-kb" &&
             check_entries D "newfile4.png/1.1/-kb" &&
             diff A/newfile1.txt ../A/newfile1.txt &&
             diff B/newfile2.txt ../B/newfile2.txt &&
             diff C/newfile3.png ../C/newfile3.png &&
             diff D/newfile4.png ../D/newfile4.png
             )
* FAIL 2: Remove two files, add two and update two
        echo Hello1 >>A/newfile1.txt &&
             rm -f B/newfile2.txt &&
             rm -f C/newfile3.png &&
             echo Hello5  >E/newfile5.txt &&
             cp ../test9200b.png D/newfile4.png &&
             cp ../test9200a.png F/newfile6.png &&
             git add E/newfile5.txt &&
             git add F/newfile6.png &&
             git commit -a -m "Test: Remove, add and update" &&
             id=$(git rev-list --max-count=1 HEAD) &&
             (cd "$CVSWORK" &&
             git cvsexportcommit -c $id &&
             check_entries A "newfile1.txt/1.2/" &&
             check_entries B "" &&
             check_entries C "" &&
             check_entries D "newfile4.png/1.2/-kb" &&
             check_entries E "newfile5.txt/1.1/" &&
             check_entries F "newfile6.png/1.1/-kb" &&
             diff A/newfile1.txt ../A/newfile1.txt &&
             diff D/newfile4.png ../D/newfile4.png &&
             diff E/newfile5.txt ../E/newfile5.txt &&
             diff F/newfile6.png ../F/newfile6.png
             )
* FAIL 4: Remove only binary files
        git reset --hard HEAD^^ &&
             rm -f D/newfile4.png &&
             git commit -a -m "test: remove only a binary file" &&
             id=$(git rev-list --max-count=1 HEAD) &&
             (cd "$CVSWORK" &&
             git cvsexportcommit -c $id &&
             check_entries A "newfile1.txt/1.2/" &&
             check_entries B "" &&
             check_entries C "" &&
             check_entries D "" &&
             check_entries E "newfile5.txt/1.1/" &&
             check_entries F "newfile6.png/1.1/-kb" &&
             diff A/newfile1.txt ../A/newfile1.txt &&
             diff E/newfile5.txt ../E/newfile5.txt &&
             diff F/newfile6.png ../F/newfile6.png
             )
* FAIL 5: Remove only a text file
        rm -f A/newfile1.txt &&
             git commit -a -m "test: remove only a binary file" &&
             id=$(git rev-list --max-count=1 HEAD) &&
             (cd "$CVSWORK" &&
             git cvsexportcommit -c $id &&
             check_entries A "" &&
             check_entries B "" &&
             check_entries C "" &&
             check_entries D "" &&
             check_entries E "newfile5.txt/1.1/" &&
             check_entries F "newfile6.png/1.1/-kb" &&
             diff E/newfile5.txt ../E/newfile5.txt &&
             diff F/newfile6.png ../F/newfile6.png
             )
* FAIL 6: New file with spaces in file name
        mkdir "G g" &&
              echo ok then >"G g/with spaces.txt" &&
              git add "G g/with spaces.txt" && \
              cp ../test9200a.png "G g/with spaces.png" && \
              git add "G g/with spaces.png" &&
              git commit -a -m "With spaces" &&
              id=$(git rev-list --max-count=1 HEAD) &&
              (cd "$CVSWORK" &&
              git-cvsexportcommit -c $id &&
              check_entries "G g" "with spaces.png/1.1/-kb|with 
spaces.txt/1.1/"
              )
* FAIL 7: Update file with spaces in file name
        echo Ok then >>"G g/with spaces.txt" &&
              cat ../test9200a.png >>"G g/with spaces.png" && \
              git add "G g/with spaces.png" &&
              git commit -a -m "Update with spaces" &&
              id=$(git rev-list --max-count=1 HEAD) &&
              (cd "$CVSWORK" &&
              git-cvsexportcommit -c $id
              check_entries "G g" "with spaces.png/1.2/-kb|with 
spaces.txt/1.2/"
              )
* FAIL 8: File with non-ascii file name
        mkdir -p 
Å/goo/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/å/ä/ö &&
              echo Foo 
>Å/goo/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/å/ä/ö/gårdetsågårdet.txt 
&&
              git add 
Å/goo/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/å/ä/ö/gårdetsågårdet.txt 
&&
              cp ../test9200a.png 
Å/goo/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/å/ä/ö/gårdetsågårdet.png 
&&
              git add 
Å/goo/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/å/ä/ö/gårdetsågårdet.png 
&&
              git commit -a -m "Går det så går det" && \
              id=$(git rev-list --max-count=1 HEAD) &&
              (cd "$CVSWORK" &&
              git-cvsexportcommit -v -c $id &&
              check_entries \
              "Å/goo/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/å/ä/ö" 
\
              "gårdetsågårdet.png/1.1/-kb|gårdetsågårdet.txt/1.1/"
              )
[...]
* failed 7 among 10 test(s)
Ideas appreciated.
/ismail
-- 
Never learn by your mistakes, if you do you may never dare to try again.
Junio C Hamano· Jan 12, 2008, 07:34 UTC · re: Ismail Dönmez · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

Ismail Dönmez <ismail@pardus.org.tr> writes:
Show 38 quoted lines
> Saturday 12 January 2008 09:11:23 tarihinde Junio C Hamano şunları yazmıştı:
>> The third rc for the next feature release GIT 1.5.4 is available
>> at the usual places:
>>
>>   http://www.kernel.org/pub/software/scm/git/
>>
>>   git-1.5.4.rc3.tar.{gz,bz2}			(tarball)
>>   git-htmldocs-1.5.4.rc3.tar.{gz,bz2}		(preformatted docs)
>>   git-manpages-1.5.4.rc3.tar.{gz,bz2}		(preformatted docs)
>>   testing/git-*-1.5.4.rc3-1.$arch.rpm	(RPM)
>
> I am seeing new failures compared to rc2 :
>
> *** t9200-git-cvsexportcommit.sh ***
> * FAIL 1: New file
>         mkdir A B C D E F &&
>              echo hello1 >A/newfile1.txt &&
>              echo hello2 >B/newfile2.txt &&
>              cp ../test9200a.png C/newfile3.png &&
>              cp ../test9200a.png D/newfile4.png &&
>              git add A/newfile1.txt &&
>              git add B/newfile2.txt &&
>              git add C/newfile3.png &&
>              git add D/newfile4.png &&
>              git commit -a -m "Test: New file" &&
>              id=$(git rev-list --max-count=1 HEAD) &&
>              (cd "$CVSWORK" &&
>              git cvsexportcommit -c $id &&
>              check_entries A "newfile1.txt/1.1/" &&
>              check_entries B "newfile2.txt/1.1/" &&
>              check_entries C "newfile3.png/1.1/-kb" &&
>              check_entries D "newfile4.png/1.1/-kb" &&
>              diff A/newfile1.txt ../A/newfile1.txt &&
>              diff B/newfile2.txt ../B/newfile2.txt &&
>              diff C/newfile3.png ../C/newfile3.png &&
>              diff D/newfile4.png ../D/newfile4.png
>              )
> Ideas appreciated.

Often the first failure is the most interesting one. Running the test under sh -x like this:

	$ cd t
	$ sh t9200-git-cvsexportcommit.sh -i -v

and then looking at "trash" directory would tell you which one of the long sequence of commands failed, and further investigation can be made from there.

Thanks. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

Ismail Dönmez· Jan 12, 2008, 07:47 UTC · re: Junio C Hamano · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

Saturday 12 January 2008 09:34:34 tarihinde şunları yazmıştınız:
>  sh t9200-git-cvsexportcommit.sh -i -v
Thanks for the tip, I saw the following error :

cvs commit -F .msg 'A/newfile1.txt' 'B/newfile2.txt' 'C/newfile3.png' 'D/newfile4.png' cvs [commit aborted]: 'root' is not allowed to commit files

So looks like tests no longer work as root, so I run make test as normal user and I now see t7300-clean.sh fail, this time a real failure:

Removing part3.c
./test-lib.sh: line 193: 19413 Aborted                 git-clean
* FAIL 5: git-clean with prefix
                mkdir -p build docs &&
                touch a.out src/part3.c docs/manual.txt obj.o build/lib.so &&
                (cd src/ && git-clean) &&
                test -f Makefile &&
                test -f README &&
                test -f src/part1.c &&
                test -f src/part2.c &&
                test -f a.out &&
                test ! -f src/part3.c &&
                test -f docs/manual.txt &&
                test -f obj.o &&
                test -f build/lib.so

Regards, ismail

-- 
Never learn by your mistakes, if you do you may never dare to try again.
Jeff King· Jan 12, 2008, 09:04 UTC · re: Ismail Dönmez · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

On Sat, Jan 12, 2008 at 09:47:48AM +0200, Ismail Dönmez wrote:
Show 6 quoted lines
> So looks like tests no longer work as root, so I run make test as normal user 
> and I now see t7300-clean.sh fail, this time a real failure:
> 
> Removing part3.c
> ./test-lib.sh: line 193: 19413 Aborted                 git-clean
> * FAIL 5: git-clean with prefix

I couldn't reproduce this just running the test, but running it under valgrind showed a memory access error. Fix is below.

Junio, can you please sanity check this fix (it stops the valgrind error, but I want to make sure my assumptions about match_pathspec are right).

-- >8 -- git-clean: fix off-by-one memory access when given no arguments

The "seen" variable is used by match_pathspec, and must have as many elements as there are in the given pathspec. We create the pathspec either from the command line arguments _or_ from just the current prefix.

Thus allocating "seen" based upon just argc is wrong, since if argc == 0, then we still have one pathspec, the prefix, but we don't allocate any space in "seen".

Signed-off-by: Jeff King <peff@peff.net>
---
It might be more readable to actually set a variable pathspec_size and
use that.
 builtin-clean.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/builtin-clean.c b/builtin-clean.c
index 6cad8ea..eb853a3 100644
--- a/builtin-clean.c
+++ b/builtin-clean.c
@@ -90,7 +90,7 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
 	strbuf_init(&directory, 0);
 
 	if (pathspec)
-		seen = xmalloc(argc);
+		seen = xmalloc(argc > 0 ? argc : 1);
 
 	for (i = 0; i < dir.nr; i++) {
 		struct dir_entry *ent = dir.entries[i];
@@ -125,7 +125,7 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
 			continue;
 
 		if (pathspec) {
-			memset(seen, 0, argc);
+			memset(seen, 0, argc > 0 ? argc : 1);
 			matches = match_pathspec(pathspec, ent->name, ent->len,
 						 baselen, seen);
 		} else {
-- 
1.5.4.rc3-dirty
Jeff King· Jan 12, 2008, 09:05 UTC · re: Jeff King · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

On Sat, Jan 12, 2008 at 04:04:32AM -0500, Jeff King wrote:
Show 9 quoted lines
> On Sat, Jan 12, 2008 at 09:47:48AM +0200, Ismail Dönmez wrote:
> 
> > Removing part3.c
> > ./test-lib.sh: line 193: 19413 Aborted                 git-clean
> > * FAIL 5: git-clean with prefix
> 
> Junio, can you please sanity check this fix (it stops the valgrind
> error, but I want to make sure my assumptions about match_pathspec are
> right).

Oh, and Ismail, can you please confirm that this causes t7300 to pass for you?

-Peff
Jeff King· Jan 12, 2008, 11:10 UTC · re: Jeff King · lore

valgrind test script integration

On Sat, Jan 12, 2008 at 04:04:32AM -0500, Jeff King wrote:
> I couldn't reproduce this just running the test, but running it under
> valgrind showed a memory access error. Fix is below.

BTW, this could have been caught automagically if we had valgrind integration in the test scripts. Below is a rudimentary patch to do so. I'm not that familiar with valgrind, so input from those more knowledgeable is appreciated, and maybe we can get something official post-1.5.4.

You can use it like "./t7300-clean.sh -m"; each call to 'git' is run through valgrind, and returns an error if the original program had an error, or if valgrind turned up any errors.

It of course runs horribly slowly. I've just kicked off a
  make GIT_TEST_OPTS='-i -m'
now. A few caveats:
 - It barfs on _any_ valgrind error. On my Debian unstable system,
   anything that touches nss ends up with an error deep in the dlopen
   code.  Therefore to make this useful, I had to put
     {
       dl hack
       Memcheck:Addr4
       obj:/lib/ld-2.7.so
     }
   into /usr/lib/valgrind/default.supp
   We should maybe have a 'git.supp' error suppression file, but in this
   case, the error really seems to be platform-specific.
 - We only catch calls to 'git', not 'git-foo' (and in fact for that
   reason this doesn't catch the t7300 bug by itself, since that uses
   git-clean). A follow-on patch will deal with this.
---
 t/test-lib.sh |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 90b6844..415e918 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -84,6 +84,8 @@ do
 	--no-python)
 		# noop now...
 		shift ;;
+	-m|--m|--me|--mem|--memc|--memch|--memche|--memchec|--memcheck)
+		alias git='memcheck git'; shift ;;
 	*)
 		break ;;
 	esac
@@ -120,6 +122,12 @@ say () {
 	say_color info "$*"
 }
 
+memcheck() {
+	valgrind -q --error-exitcode=1 --leak-check=no "$@" && return 0
+	echo >&2 valgrind failure: "$@"
+	return 1
+}
+
 test "${test_description}" != "" ||
 error "Test script did not set test_description."
 
-- 
1.5.4.rc3.1.g027628-dirty
Jeff King· Jan 12, 2008, 11:36 UTC · re: Jeff King · lore

Re: valgrind test script integration

On Sat, Jan 12, 2008 at 06:10:44AM -0500, Jeff King wrote:
>  - We only catch calls to 'git', not 'git-foo' (and in fact for that
>    reason this doesn't catch the t7300 bug by itself, since that uses
>    git-clean). A follow-on patch will deal with this.
And here it is.

This replaces all usage of "git-foo" with "git foo" in the test scripts. The replacement was done semi-manually; a fully automatic replacement won't work because the pattern "git-" appears in several other contexts (e.g., "--git-dir=", ref names, filenames, etc).

Obviously another route would be intercepting git-* calls, as well, but my impression is that we are ultimately heading towards a "git foo is the right way" situation, in which case this cleanup is eventually necessary anyway.

[the original got eaten by the list since the patch is almost 150K;
 the diffstat is below, and I am making the patch available at
   git://repo.or.cz/git/peff.git master
]
 t/t1400-update-ref.sh                  |   10 +-
 t/t2005-checkout-index-symlinks.sh     |    4 +-
 t/t2050-git-dir-relative.sh            |    4 +-
 t/t2102-update-index-symlinks.sh       |    2 +-
 t/t2200-add-update.sh                  |   12 +-
 t/t3020-ls-files-error-unmatch.sh      |    2 +-
 t/t3030-merge-recursive.sh             |   14 +-
 t/t3200-branch.sh                      |   16 +-
 t/t3210-pack-refs.sh                   |    4 +-
 t/t3400-rebase.sh                      |    6 +-
 t/t3401-rebase-partial.sh              |   20 +-
 t/t3500-cherry.sh                      |   12 +-
 t/t3600-rm.sh                          |    4 +-
 t/t3800-mktag.sh                       |    8 +-
 t/t3900-i18n-commit.sh                 |    6 +-
 t/t3901-i18n-patch.sh                  |   16 +-
 t/t4012-diff-binary.sh                 |    2 +-
 t/t4103-apply-binary.sh                |   26 ++--
 t/t5300-pack-object.sh                 |   14 +-
 t/t5301-sliding-window.sh              |    4 +-
 t/t5302-pack-index.sh                  |   10 +-
 t/t5400-send-pack.sh                   |   30 ++--
 t/t5401-update-hooks.sh                |    4 +-
 t/t5402-post-merge-hook.sh             |    4 +-
 t/t5403-post-checkout-hook.sh          |    4 +-
 t/t5500-fetch-pack.sh                  |    4 +-
 t/t5510-fetch.sh                       |    2 +-
 t/t5530-upload-pack-error.sh           |    4 +-
 t/t5600-clone-fail-cleanup.sh          |    6 +-
 t/t6006-rev-list-format.sh             |    6 +-
 t/t6025-merge-symlinks.sh              |   32 ++--
 t/t6026-merge-attr.sh                  |   12 +-
 t/t6030-bisect-porcelain.sh            |    2 +-
 t/t6120-describe.sh                    |   30 ++--
 t/t6300-for-each-ref.sh                |   28 ++--
 t/t7001-mv.sh                          |   12 +-
 t/t7003-filter-branch.sh               |   18 +-
 t/t7004-tag.sh                         |  316 ++++++++++++++++----------------
 t/t7101-reset.sh                       |    6 +-
 t/t7300-clean.sh                       |   38 ++--
 t/t7400-submodule-basic.sh             |   46 +++---
 t/t7501-commit.sh                      |   44 +++---
 t/t9100-git-svn-basic.sh               |   44 +++---
 t/t9101-git-svn-props.sh               |   62 +++---
 t/t9102-git-svn-deep-rmdir.sh          |    6 +-
 t/t9104-git-svn-follow-parent.sh       |   36 ++--
 t/t9105-git-svn-commit-diff.sh         |    8 +-
 t/t9106-git-svn-commit-diff-clobber.sh |   12 +-
 t/t9107-git-svn-migrate.sh             |   16 +-
 t/t9108-git-svn-glob.sh                |    4 +-
 t/t9110-git-svn-use-svm-props.sh       |    8 +-
 t/t9111-git-svn-use-svnsync-props.sh   |    8 +-
 t/t9112-git-svn-md5less-file.sh        |    4 +-
 t/t9116-git-svn-log.sh                 |    4 +-
 t/t9119-git-svn-info.sh                |  120 ++++++------
 t/t9200-git-cvsexportcommit.sh         |   10 +-
 t/t9300-fast-import.sh                 |   64 ++++----
 t/t9400-git-cvsserver-server.sh        |   30 ++--
 58 files changed, 640 insertions(+), 640 deletions(-)
Johannes Schindelin· Jan 12, 2008, 17:10 UTC · re: Jeff King · lore

Re: valgrind test script integration

Hi,
On Sat, 12 Jan 2008, Jeff King wrote:
Show 14 quoted lines
> On Sat, Jan 12, 2008 at 06:10:44AM -0500, Jeff King wrote:
> 
> >  - We only catch calls to 'git', not 'git-foo' (and in fact for that
> >    reason this doesn't catch the t7300 bug by itself, since that uses
> >    git-clean). A follow-on patch will deal with this.
> 
> And here it is.
> 
> [...]
> 
> Obviously another route would be intercepting git-* calls, as well, but 
> my impression is that we are ultimately heading towards a "git foo is 
> the right way" situation, in which case this cleanup is eventually 
> necessary anyway.
Nevertheless, I think that would be better.

BTW does your first patch cope with scripts properly? (I.e. also valgrind the git programs called by the script)

Ciao, Dscho

Jeff King· Jan 12, 2008, 18:12 UTC · re: Johannes Schindelin · lore

Re: valgrind test script integration

On Sat, Jan 12, 2008 at 06:10:30PM +0100, Johannes Schindelin wrote:
> Nevertheless, I think that would be better.
> 
> BTW does your first patch cope with scripts properly? (I.e. also valgrind 
> the git programs called by the script)

No. To do that, you would need to set up an alternate directory at the head of the PATH with 'git' in it (and git-*, for everything we want to intercept, which I think would be all builtins, but probably not scripts (unless you want to run valgrind on perl or bash, which is probably not useful to us)).

I started down that route, but it was a little ugly. How do we make that directory? Where is it stored? Is it generated each time the test script is run, or part of the Makefile?

-Peff
René Scharfe· Jan 12, 2008, 13:01 UTC · re: Jeff King · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

Jeff King schrieb:
> Thus allocating "seen" based upon just argc is wrong, since
> if argc == 0, then we still have one pathspec, the prefix,
> but we don't allocate any space in "seen".

Yes, all the other callers count the number of elements in pathspec and allocate seen accordingly. We could do that. Or we could extend match_pathspec() to allow seen to be a NULL pointer, for those cases where this result isn't needed.

This patch is for discussion, only, because it touches central, non-buggy code and where in bugfix only mode. And I'm not really sure git-clean ignoring non-matching pathspecs (as it does now, even without this patch) is really what we want.

 builtin-clean.c |    8 +-------
 dir.c           |   26 ++++++++++++++++----------
 2 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/builtin-clean.c b/builtin-clean.c
index 6cad8ea..40d976c 100644
--- a/builtin-clean.c
+++ b/builtin-clean.c
@@ -35,7 +35,6 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
 	const char *path, *base;
 	static const char **pathspec;
 	int prefix_offset = 0;
-	char *seen = NULL;
 	struct option options[] = {
 		OPT__QUIET(&quiet),
 		OPT__DRY_RUN(&show_only),
@@ -89,9 +88,6 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
 	read_directory(&dir, path, base, baselen, pathspec);
 	strbuf_init(&directory, 0);
 
-	if (pathspec)
-		seen = xmalloc(argc);
-
 	for (i = 0; i < dir.nr; i++) {
 		struct dir_entry *ent = dir.entries[i];
 		int len, pos, matches;
@@ -125,9 +121,8 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
 			continue;
 
 		if (pathspec) {
-			memset(seen, 0, argc);
 			matches = match_pathspec(pathspec, ent->name, ent->len,
-						 baselen, seen);
+						 baselen, NULL);
 		} else {
 			matches = 0;
 		}
@@ -165,7 +160,6 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
 			unlink(ent->name);
 		}
 	}
-	free(seen);
 
 	strbuf_release(&directory);
 	return 0;
diff --git a/dir.c b/dir.c
index 3e345c2..6af70ac 100644
--- a/dir.c
+++ b/dir.c
@@ -88,32 +88,38 @@ static int match_one(const char *match, const char *name, int namelen)
 
 /*
  * Given a name and a list of pathspecs, see if the name matches
- * any of the pathspecs.  The caller is also interested in seeing
- * all pathspec matches some names it calls this function with
- * (otherwise the user could have mistyped the unmatched pathspec),
- * and a mark is left in seen[] array for pathspec element that
- * actually matched anything.
+ * any of the pathspecs.
+ * If the caller is interested in which of the pathspecs matched,
+ * seen needs to point to a char array with as many members as there
+ * are pathspecs.  A mark is left at the nth element of the nth
+ * pathspec matched the name.  The marks are not reset, so the
+ * caller can check, after matching a list of files, if there are
+ * any unmatched pathspecs (which might have been mistyped).
  */
 int match_pathspec(const char **pathspec, const char *name, int namelen, int prefix, char *seen)
 {
-	int retval;
-	const char *match;
+	int retval = 0;
 
 	name += prefix;
 	namelen -= prefix;
 
-	for (retval = 0; (match = *pathspec++) != NULL; seen++) {
+	while (*pathspec) {
+		const char *match = *pathspec++;
 		int how;
-		if (retval && *seen == MATCHED_EXACTLY)
+
+		if (retval && seen && *seen == MATCHED_EXACTLY)
 			continue;
+
 		match += prefix;
 		how = match_one(match, name, namelen);
 		if (how) {
 			if (retval < how)
 				retval = how;
-			if (*seen < how)
+			if (seen && *seen < how)
 				*seen = how;
 		}
+		if (seen)
+			seen++;
 	}
 	return retval;
 }
Ismail Dönmez· Jan 12, 2008, 13:10 UTC · re: Jeff King · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

Saturday 12 January 2008 11:04:32 tarihinde Jeff King şunları yazmıştı:
Show 28 quoted lines
> On Sat, Jan 12, 2008 at 09:47:48AM +0200, Ismail Dönmez wrote:
> > So looks like tests no longer work as root, so I run make test as normal
> > user and I now see t7300-clean.sh fail, this time a real failure:
> >
> > Removing part3.c
> > ./test-lib.sh: line 193: 19413 Aborted                 git-clean
> > * FAIL 5: git-clean with prefix
>
> I couldn't reproduce this just running the test, but running it under
> valgrind showed a memory access error. Fix is below.
>
> Junio, can you please sanity check this fix (it stops the valgrind
> error, but I want to make sure my assumptions about match_pathspec are
> right).
>
> -- >8 --
> git-clean: fix off-by-one memory access when given no arguments
>
> The "seen" variable is used by match_pathspec, and must have
> as many elements as there are in the given pathspec. We
> create the pathspec either from the command line arguments
> _or_ from just the current prefix.
>
> Thus allocating "seen" based upon just argc is wrong, since
> if argc == 0, then we still have one pathspec, the prefix,
> but we don't allocate any space in "seen".
>
> Signed-off-by: Jeff King <peff@peff.net>
Thanks Jefff, this fixes t7300-clean.sh for me.
Tested-by: İsmail Dönmez <ismail@pardus.org.tr>

Regards, ismail

-- 
Never learn by your mistakes, if you do you may never dare to try again.
Johannes Schindelin· Jan 12, 2008, 16:57 UTC · re: Jeff King · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

Hi,
On Sat, 12 Jan 2008, Jeff King wrote:
Show 22 quoted lines
> diff --git a/builtin-clean.c b/builtin-clean.c
> index 6cad8ea..eb853a3 100644
> --- a/builtin-clean.c
> +++ b/builtin-clean.c
> @@ -90,7 +90,7 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
>  	strbuf_init(&directory, 0);
>  
>  	if (pathspec)
> -		seen = xmalloc(argc);
> +		seen = xmalloc(argc > 0 ? argc : 1);
>  
>  	for (i = 0; i < dir.nr; i++) {
>  		struct dir_entry *ent = dir.entries[i];
> @@ -125,7 +125,7 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
>  			continue;
>  
>  		if (pathspec) {
> -			memset(seen, 0, argc);
> +			memset(seen, 0, argc > 0 ? argc : 1);
>  			matches = match_pathspec(pathspec, ent->name, ent->len,
>  						 baselen, seen);
>  		} else {

Would it not be better to guard the memset by an "if (argc)", and set "seen" to NULL by default?

Ciao, Dscho

Jeff King· Jan 12, 2008, 18:09 UTC · re: Johannes Schindelin · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

On Sat, Jan 12, 2008 at 05:57:49PM +0100, Johannes Schindelin wrote:
Show 9 quoted lines
> >  		if (pathspec) {
> > -			memset(seen, 0, argc);
> > +			memset(seen, 0, argc > 0 ? argc : 1);
> >  			matches = match_pathspec(pathspec, ent->name, ent->len,
> >  						 baselen, seen);
> >  		} else {
> 
> Would it not be better to guard the memset by an "if (argc)", and set 
> "seen" to NULL by default?

I am not sure what you mean by "guard with if (argc)"; it needs to be memset in either case (either with N slots, or with 1 if no argc). Seen could not be NULL previously, but Rene's patch makes that possible.

-Peff
Junio C Hamano· Jan 12, 2008, 19:09 UTC · re: Jeff King · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

Jeff King <peff@peff.net> writes:
> It might be more readable to actually set a variable pathspec_size and
> use that.
Ahh.

Yes, the "seen" thing as Réne suggests is moderately painful to get right and in the longer run I think we need an API clean-up around pathspec handling. In any case, the fix looks correct.

Thanks for catching this.
Roger C. Soares· Jan 12, 2008, 14:24 UTC · re: Junio C Hamano · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

Junio C Hamano escreveu:
Show 10 quoted lines
> The third rc for the next feature release GIT 1.5.4 is available
> at the usual places:
>
>   http://www.kernel.org/pub/software/scm/git/
>
>   git-1.5.4.rc3.tar.{gz,bz2}			(tarball)
>   git-htmldocs-1.5.4.rc3.tar.{gz,bz2}		(preformatted docs)
>   git-manpages-1.5.4.rc3.tar.{gz,bz2}		(preformatted docs)
>   testing/git-*-1.5.4.rc3-1.$arch.rpm	(RPM)
>   

Don't know if you already have some recomendation for RHEL5 users, so just reporting what I had to do to install the rpms.

To start, I already had git installed from EPEL. Downloaded perl-Error from http://dag.wieers.com/rpm/packages/perl-Error/ to satisfy dependencies. There was another dependacy for git-arch I think, but as I don't need it I just deleted this one. When trying to install perl-Error it conflicted with perl-Git from EPEL. I think they included perl-Error files inside their perl-Git rpm. So, after uninstalling all git rpms from EPEL, installing perl-Error from dag.wieers, the rc3 git rpms installed successfully.

[]s, Roger.

Junio C Hamano· Jan 12, 2008, 19:13 UTC · re: Roger C. Soares · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

"Roger C. Soares" <rogersoares@intelinet.com.br> writes:
Show 9 quoted lines
> To start, I already had git installed from EPEL.
> Downloaded perl-Error from
> http://dag.wieers.com/rpm/packages/perl-Error/ to satisfy
> dependencies. There was another dependacy for git-arch I think, but as
> I don't need it I just deleted this one.
> When trying to install perl-Error it conflicted with perl-Git from
> EPEL. I think they included perl-Error files inside their perl-Git rpm.
> So, after uninstalling all git rpms from EPEL, installing perl-Error
> from dag.wieers, the rc3 git rpms installed successfully.
Thanks for your report.

I do not know what EPEL is (sorry, I do not live in RPM land), but I think a package perl-Git that includes perl-Error is misbuilt. We are not the official source of where the users should get perl-Error from.

Junio C Hamano· Jan 21, 2008, 02:37 UTC · re: Junio C Hamano · lore

[ANNOUNCE] GIT 1.5.4-rc4

The fourth rc for the next feature release GIT 1.5.4 is available at the usual places:

  http://www.kernel.org/pub/software/scm/git/
  git-1.5.4.rc4.tar.{gz,bz2}			(tarball)
  git-htmldocs-1.5.4.rc4.tar.{gz,bz2}		(preformatted docs)
  git-manpages-1.5.4.rc4.tar.{gz,bz2}		(preformatted docs)
  RPMS/$arch/git-*-1.5.4.rc4-1.$arch.rpm	(RPM)

I was hoping that this would be the last rc before 1.5.4 final, and in fact the change between -rc3 and -rc4 is fairly small.

Notable fixes are:
 * http-push fixes (Grégoire Barbier);
 * fix to performance regression during partial commit (Linus);
 * ref/heads are now enforced to point at commit (Linus);
 * fix for fast-import reading some part of its own output (Shawn);
 * "diff --color-words" showed unchanged lines in metainfo color (Jeff King);
Also we have a handful gitk and git-gui updates.

This however still lacks two patches that I think we might want in the final (please see "What's not in 'master'" message). I asked for comments but I guess they were lost in the noise or something. It's not a very good sign that we had too many discussions on the list that are totally unrelated to 1.5.4, and I had to scroll back more than 1000 articles to skip them to find the announcement for the -rc3 X-<. So we will either have another rc to include those two fixes after getting feedbacks, or ship the final one with two known breakages. The former would be preferred, and it would be better if they can be done earlier.

Even though we had some RPM specfile changes that I cannot easily check myself, nobody reported breakages after -rc3. I am taking this as "no news is a good news", but it may turn out that nobody has been testing/double-checking, and it may come back and bite us when we do the final one. That's also something I cannot do much about.

But other than that, I think we are in good shape.
----------------------------------------------------------------
Changes since v1.5.4-rc3 are as follows:
Bill Lear (1):
      Correct spelling in diff.c comment
Brandon Casey (4):
      close_lock_file(): new function in the lockfile API
      Improve use of lockfile API
      refs.c: rework ref_locks by abstracting from underlying struct lock_file
      fast-import.c: don't try to commit marks file if write failed
Christian Couder (2):
      git-gui: Initial french translation
      git-gui: add french glossary: glossary/fr.po
Christian Stimming (4):
      git-gui: Update glossary: add term "hunk"
      git-gui: Update German translation
      git-gui: Fix broken revert confirmation.
      git-gui: Improve German translation.
Dan McGee (3):
      Remove usage of git- (dash) commands from email hook
      cvsimport: remove last use of repo-config from git standard tools
      Update git-completion for new 'remote rm' option
Dave Peticolas (1):
      Documentation: fix and clarify grammar in git-merge docs.
Dmitry Potapov (1):
      treat any file with NUL as binary
Eric Wong (1):
      git-svn: handle leading/trailing whitespace from svnsync revprops
Grégoire Barbier (4):
      http-push: disable http-push without USE_CURL_MULTI
      http-push: fix webdav lock leak.
      http-push: fail when info/refs exists and is already locked
      http-push and http-fetch: handle URLs without trailing /
Jakub Narebski (1):
      autoconf: Add checking for unsetenv function
Jean-Luc Herren (1):
      Make default pre-commit hook less noisy
Jeff King (5):
      git-clean: fix off-by-one memory access when given no arguments
      color unchanged lines as "plain" in "diff --color-words"
      send-email: detect invocation errors earlier
      send-email: validate patches before sending anything
      send-email: add no-validate option
Jim Meyering (2):
      fast-import: Don't use a maybe-clobbered errno value
      doc typo: s/prior committing/prior to committing/
Johannes Schindelin (1):
      gitk: make Ctrl "+" really increase the font size
Junio C Hamano (8):
      builtin-commit.c: remove useless check added by faulty cut and paste
      Revert "builtin-commit.c: remove useless check added by faulty cut and paste"
      Fix git-rerere documentation
      Squelch bogus progress output from git-rebase--interactive
      Document lockfile API
      Officially deprecate repo-config.
      http-push: clarify the reason of error from the initial PROPFIND request
      GIT 1.5.4-rc4
Kristian Høgsberg (1):
      git-commit: fix double close(2) that can close a wrong file descriptor
Lars Hjemli (1):
      Move sha1_file_to_archive into libgit
Linus Torvalds (4):
      Fix performance regression for partial commits
      Make builtin-commit.c more careful about parenthood
      Make 'git fsck' complain about non-commit branches
      Be more careful about updating refs
Mark Drago (1):
      hg-to-git: improve popen calls
Mark Levedahl (1):
      git-gui: Makefile - Handle $DESTDIR on Cygwin
Martin Koegler (1):
      parse_commit_buffer: tighten checks while parsing
Miklos Vajna (3):
      Add using merge subtree How-To
      ls-remote: add -t and -h options.
      Include rev-list options in git-log manpage.
Peter Karlsson (1):
      git-gui: Updated Swedish translation after mailing list review.
Shawn O. Pearce (3):
      git-gui: Allow 'Create New Repository' on existing directories
      git-gui: Refresh file status description after hunk application
      Fix random fast-import errors when compiled with NO_MMAP
Thomas Zander (1):
      core-tutorial typofix
Junio C Hamano· Jan 28, 2008, 10:56 UTC · re: Junio C Hamano · lore

[ANNOUNCE] GIT 1.5.4-rc5

The fifth and hopefully the last rc for the next feature release GIT 1.5.4 is available at the usual places:

  http://www.kernel.org/pub/software/scm/git/
  git-1.5.4.rc5.tar.{gz,bz2}			(tarball)
  git-htmldocs-1.5.4.rc5.tar.{gz,bz2}		(preformatted docs)
  git-manpages-1.5.4.rc5.tar.{gz,bz2}		(preformatted docs)
  RPMS/$arch/git-*-1.5.4.rc5-1.$arch.rpm	(RPM)

The changes since -rc4 are quite small, and except for git-gui updates they are all reasonably trivial fixes. Please give it a good testing.

----------------------------------------------------------------
Changes since v1.5.4-rc4 are as follows:
 Documentation/RelNotes-1.5.4.txt |   37 ++++++---
 Documentation/fetch-options.txt  |   12 ++-
 Documentation/git-clone.txt      |    8 ++
 Documentation/git-http-push.txt  |    3 +
 Documentation/git-pull.txt       |    7 ++-
 Documentation/git-send-email.txt |    2 +
 Documentation/git-submodule.txt  |    5 +-
 Documentation/git-svn.txt        |   11 ++-
 GIT-VERSION-GEN                  |    2 +-
 Makefile                         |   18 ++++-
 builtin-commit.c                 |   15 +++-
 builtin-pack-objects.c           |    3 +-
 config.mak.in                    |    1 +
 configure.ac                     |    6 ++
 fast-import.c                    |   65 ++++++++++++++-
 git-compat-util.h                |    2 +
 git-cvsserver.perl               |    9 ++-
 git-gui/Makefile                 |    5 +-
 git-gui/git-gui.sh               |   28 ++++++
 git-gui/lib/choose_rev.tcl       |    3 +-
 git-gui/lib/commit.tcl           |  149 +++++++++++++++++++++------------
 git-gui/lib/error.tcl            |   18 ++--
 git-gui/po/glossary/fr.po        |   26 +++---
 git-gui/po/po2msg.sh             |   25 +++++-
 git-pull.sh                      |   12 +++-
 git-send-email.perl              |    2 +-
 git-submodule.sh                 |  169 +++++++++++++++++++++++++++-----------
 git-svn.perl                     |   10 +--
 http.h                           |    8 ++
 parse-options.c                  |   30 ++++++-
 t/t0040-parse-options.sh         |   11 +++
 t/t5520-pull.sh                  |   17 ++++
 t/t5710-info-alternate.sh        |   12 ++-
 t/t7400-submodule-basic.sh       |   56 ++++++------
 t/t9400-git-cvsserver-server.sh  |   17 +++-
 test-parse-options.c             |    1 +
 36 files changed, 596 insertions(+), 209 deletions(-)
Alex Riesen (1):
      Make t5710 more strict when creating nested repos
Brandon Casey (1):
      git-commit: exit non-zero if we fail to commit the index
Eric Wong (1):
      git-svn: default to repacking every 1000 commits
Gustaf Hendeby (1):
      send-email, fix breakage in combination with --compose
Jakub Narebski (1):
      autoconf: define NO_SYS_SELECT_H on systems without <sys/select.h>.
Johannes Schindelin (1):
      pull --rebase: be cleverer with rebased upstream branches
Junio C Hamano (5):
      git-submodule: rename shell functions for consistency
      git-submodule: fix subcommand parser
      git-submodule: add test for the subcommand parser fix
      Clarify that http-push being temporarily disabled with older cURL
      GIT 1.5.4-rc5
Mike Hommey (2):
      Add a missing dependency on http.h
      Documentation: add a bit about sendemail.to configuration
Miklos Vajna (2):
      git-clone -s: document problems with git gc --prune
      git pull manpage: don't include -n from fetch-options.txt
Nicolas Pitre (1):
      pack-objects: Fix segfault when object count is less than thread count
Pierre Habouzit (1):
      parse-options: catch likely typo in presense of aggregated options.
Robert Schiele (2):
      pre-POSIX.1-2001 systems do not have <sys/select.h>
      Makefile: customization for supporting HP-UX
Sam Vilain (1):
      git-svn(1): update instructions for resuming a git-svn clone
Shawn O. Pearce (10):
      git-gui: Honor the standard commit-msg hook
      git-gui: Correct window title for hook failure dialogs
      git-gui: Consolidate hook execution code into a single function
      git-gui: Correct encoding of glossary/fr.po to UTF-8
      Teach fast-import to honor pack.compression and pack.depth
      Document the hairy gfi_unpack_entry part of fast-import
      git-gui: Work around random missing scrollbar in revision list
      git-gui: Fallback to Tcl based po2msg.sh if msgfmt isn't available
      git-gui: Make the statistics of po2msg match those of msgfmt
      git-gui: Correctly cleanup msgfmt '1 message untranslated' output
Steffen Prohaska (3):
      submodule: Document the details of the command line syntax
      t9400-git-cvsserver-server: Wrap setup into test case
      cvsserver: Fix for histories with multiple roots
Jeff King· Jan 28, 2008, 18:38 UTC · re: Junio C Hamano · lore

Re: [ANNOUNCE] GIT 1.5.4-rc5

On Mon, Jan 28, 2008 at 02:56:41AM -0800, Junio C Hamano wrote:
> Gustaf Hendeby (1):
>       send-email, fix breakage in combination with --compose

I submitted a followup test for this problem, but there was no response. Can I please get an ACK/NAK/"resend after 1.5.4"?

For reference, the original message-id was:
  <20080122032353.GB24758@coredump.intra.peff.net>
-Peff
Gustaf Hendeby· Jan 29, 2008, 00:36 UTC · re: Jeff King · lore

Re: [ANNOUNCE] GIT 1.5.4-rc5

On 01/28/2008 07:38 PM, Jeff King wrote:
Show 7 quoted lines
> On Mon, Jan 28, 2008 at 02:56:41AM -0800, Junio C Hamano wrote:
> 
>> Gustaf Hendeby (1):
>>       send-email, fix breakage in combination with --compose
> 
> I submitted a followup test for this problem, but there was no
> response. Can I please get an ACK/NAK/"resend after 1.5.4"?

FWIW, I think it looks like a good extension to the test suit, but the added option should probably put it post 1.5.4 just to play it safe? I also think it is the right thing to do not to document that new option.

The last patch also needs a trivial fix-up to apply nicely.
/Gustaf
> 
> For reference, the original message-id was:
> 
>   <20080122032353.GB24758@coredump.intra.peff.net>
Junio C Hamano· Jan 29, 2008, 01:25 UTC · re: Jeff King · lore

Re: [ANNOUNCE] GIT 1.5.4-rc5

Jeff King <peff@peff.net> writes:
Show 11 quoted lines
> On Mon, Jan 28, 2008 at 02:56:41AM -0800, Junio C Hamano wrote:
>
>> Gustaf Hendeby (1):
>>       send-email, fix breakage in combination with --compose
>
> I submitted a followup test for this problem, but there was no
> response. Can I please get an ACK/NAK/"resend after 1.5.4"?
>
> For reference, the original message-id was:
>
>   <20080122032353.GB24758@coredump.intra.peff.net>

Heh, that's aonly a week ago but already you need to dig almost 500 messages back to get there. That MacOSX thread really killed our human performance.

[1/3] is Ok, probably even for 1.5.4.

[2/3] The use of "test -e" slightly ticked my compatibility worry (instead use "test -f" or "test -d" when able) but non prehistoric POSIX systems should grok it just fine these days.

[3/3] as you said was questionable in its introduction of a flag that used primarily for testing. Since the whole point of [2/3] is to make [3/3] possible, I was inclined to put both on hold.

Jeff King· Jan 29, 2008, 01:29 UTC · re: Junio C Hamano · lore

Re: [ANNOUNCE] GIT 1.5.4-rc5

On Mon, Jan 28, 2008 at 05:25:31PM -0800, Junio C Hamano wrote:
Show 13 quoted lines
> Heh, that's aonly a week ago but already you need to dig almost
> 500 messages back to get there.  That MacOSX thread really
> killed our human performance.
> 
> [1/3] is Ok, probably even for 1.5.4.
> 
> [2/3] The use of "test -e" slightly ticked my compatibility
> worry (instead use "test -f" or "test -d" when able) but non
> prehistoric POSIX systems should grok it just fine these days.
> 
> [3/3] as you said was questionable in its introduction of a flag
> that used primarily for testing.  Since the whole point of [2/3]
> is to make [3/3] possible, I was inclined to put both on hold.

That all sounds reasonable. I will rebase and resubmit after 1.5.4, with 2/3 using "test -f" and 3/3 matching Gustaf's fix (and 1/3 included if you do not apply it beforehand).

Thanks for the response.
-Peff
Steffen Prohaska· Jan 29, 2008, 06:06 UTC · re: Junio C Hamano · lore

Re: [ANNOUNCE] GIT 1.5.4-rc5

On Jan 28, 2008, at 11:56 AM, Junio C Hamano wrote:
> The fifth and hopefully the last rc for the next feature release
> GIT 1.5.4 is available at the usual places:
msysgit's Windows setup is now available at
    http://code.google.com/p/msysgit/downloads
	Steffen
Steffen Prohaska· Jan 13, 2008, 14:41 UTC · lore

Re: [ANNOUNCE] GIT 1.5.4-rc3

On Jan 12, 2008, at 8:11 AM, Junio C Hamano wrote:
> The third rc for the next feature release GIT 1.5.4 is available
> at the usual places:
The msysgit setup is available at:
   http://code.google.com/p/msysgit/downloads/
	Steffen
Steffen Prohaska· Jan 21, 2008, 22:22 UTC · lore

Re: [ANNOUNCE] GIT 1.5.4-rc4

On Jan 21, 2008, at 3:37 AM, Junio C Hamano wrote:
> The fourth rc for the next feature release GIT 1.5.4 is available
> at the usual places:
The matching msysgit setup is available at
   http://code.google.com/p/msysgit/downloads/

Commands that are not yet supported on Windows are no longer included in the setup. If you find any commands that should not be included, please report this to the msysgit list.

I haven't pushed the branches because repo.or.cz seems to have problems.

	Steffen
Johannes Schindelin· Jan 22, 2008, 01:21 UTC · lore

Re: [ANNOUNCE] GIT 1.5.4-rc4

Hi,
On Mon, 21 Jan 2008, Steffen Prohaska wrote:
> I haven't pushed the branches because repo.or.cz seems to have problems.
Can you elaborate?  What kind of problems?

Ciao, Dscho

Steffen Prohaska· Jan 22, 2008, 05:50 UTC · lore

Re: [ANNOUNCE] GIT 1.5.4-rc4

On Jan 22, 2008, at 2:21 AM, Johannes Schindelin wrote:
Show 8 quoted lines
> Hi,
>
> On Mon, 21 Jan 2008, Steffen Prohaska wrote:
>
>> I haven't pushed the branches because repo.or.cz seems to have  
>> problems.
>
> Can you elaborate?  What kind of problems?

I got DNS lookup failures and could not connect. Now it works and I pushed.

	Steffen

← back to recent threads