Permalink
Commits on Mar 31, 2011
  1. Git 1.7.5-rc0

    gitster committed Mar 31, 2011
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. Merge branch 'maint'

    gitster committed Mar 31, 2011
    * maint:
      parse-remote: typofix
  3. parse-remote: typofix

    gitster committed Mar 31, 2011
    An earlier patch had a trivial typo that two people did not notice.
    Pointed out by Michael Schubert.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Mar 30, 2011
  1. Merge branch 'maint'

    gitster committed Mar 30, 2011
    * maint:
      contrib/thunderbird-patch-inline: do not require bash to run the script
      t8001: check the exit status of the command being tested
      strbuf.h: remove a tad stale docs-in-comment and reference api-doc instead
      Typos: t/README
      Documentation/config.txt: make truth value of numbers more explicit
      git-pack-objects.txt: fix grammatical errors
      parse-remote: replace unnecessary sed invocation
  2. contrib/thunderbird-patch-inline: do not require bash to run the script

    Maxin john committed with gitster Mar 30, 2011
    The script does not have to be run under bash, but any POSIX compliant
    shell would do, as it does not use any bash-isms.
    
    It may be written under a different style than what is recommended in
    Documentation/CodingGuidelines, but that is a different matter.
    
    While at it, fix obvious typos in the comment.
    
    Signed-off-by: Maxin B. John <maxin@maxinbjohn.info>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  3. t8001: check the exit status of the command being tested

    gitster committed Mar 30, 2011
    Avoid running the command being tested as an upstream of a pipe;
    doing so will lose its exit status.
    
    While at it, modernise the style of the script.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  4. strbuf.h: remove a tad stale docs-in-comment and reference api-doc in…

    mfwitten committed with gitster Feb 15, 2011
    …stead
    
    Signed-off-by: Michael Witten <mfwitten@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  5. Typos: t/README

    mfwitten committed with gitster Feb 22, 2011
    Signed-off-by: Michael Witten <mfwitten@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  6. Documentation/config.txt: make truth value of numbers more explicit

    carlosmn committed with gitster Mar 30, 2011
    Change the order to 1/0 to have the same true/false order as the rest
    of the possibilities for a boolean variable in order not not confuse
    users.
    
    Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  7. git-pack-objects.txt: fix grammatical errors

    bebarino committed with gitster Mar 30, 2011
    Signed-off-by: Stephen Boyd <bebarino@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  8. parse-remote: replace unnecessary sed invocation

    bebarino committed with gitster Mar 30, 2011
    Just use parameter expansion instead.
    
    Signed-off-by: Stephen Boyd <bebarino@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  9. Merge branch 'svn-fe' of git://repo.or.cz/git/jrn

    gitster committed Mar 30, 2011
    * 'svn-fe' of git://repo.or.cz/git/jrn:
      tests: kill backgrounded processes more robustly
      vcs-svn: a void function shouldn't try to return something
      tests: make sure input to sed is newline terminated
      vcs-svn: add missing cast to printf argument
  10. tests: kill backgrounded processes more robustly

    peff committed with jrn Mar 30, 2011
    t0081 creates several background processes that write to a fifo and
    then go to sleep for a while (so the reader of the fifo does not see
    EOF).
    
    Each background process is made in a curly-braced block in the shell,
    and after we are done reading from the fifo, we use "kill $!" to kill
    it off.
    
    For a simple, single-command process, this works reliably and kills
    the child sleep process. But for more complex commands like
    "make_some_output && sleep", the results are less predictable. When
    executing under bash, we end up with a subshell that gets killed by
    the $! but leaves the sleep process still alive.
    
    This is bad not only for process hygeine (we are leaving random sleep
    processes to expire after a while), but also interacts badly with the
    "prove" command. When prove executes a test, it does not realize the
    test is done when it sees SIGCHLD, but rather waits until the test's
    stdout pipe is closed. The orphaned sleep process may keep that pipe
    open via test-lib's file descriptor 5, causing prove to hang for 100
    seconds.
    
    The solution is to explicitly use a subshell and to exec the final
    sleep process, so that when we "kill $!" we get the process id of the
    sleep process.
    
    [jn: original patch by Jeff had some additional bits:
    
       1. Wrap the "kill" in a test_when_finished, since we want
          to clean up the process whether the test succeeds or not.
    
       2. The "kill" is part of our && chain for test success. It
          probably won't fail, but it can if the process has
          expired before we manage to kill it. So let's mark it
          as OK to fail.
    
     I'm postponing that for now.]
    
    Reported-by: Junio C Hamano <gitster@pobox.com>
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Commits on Mar 29, 2011
  1. Merge branch 'maint'

    gitster committed Mar 29, 2011
    * maint:
      HOME must be set before calling git-init when creating test repositories
  2. Merge branch 'jc/fetch-progressive-stride'

    gitster committed Mar 29, 2011
    * jc/fetch-progressive-stride:
      Fix potential local deadlock during fetch-pack
  3. Merge branches 'sp/maint-fetch-pack-stop-early' and 'sp/maint-upload-…

    gitster committed Mar 29, 2011
    …pack-stop-early'
    
    * sp/maint-fetch-pack-stop-early:
      enable "no-done" extension only when fetching over smart-http
    
    * sp/maint-upload-pack-stop-early:
      enable "no-done" extension only when serving over smart-http
  4. vcs-svn: a void function shouldn't try to return something

    mfwitten committed with jrn Mar 29, 2011
    As v1.7.4-rc0~184 (2010-10-04) and C99 §6.8.6.4.1 remind us, standard
    C does not permit returning an expression of type void, even for a
    tail call.
    
    Noticed with gcc -pedantic:
    
     vcs-svn/svndump.c: In function 'handle_node':
     vcs-svn/svndump.c:213:3: warning: ISO C forbids 'return' with expression,
      in function returning void [-pedantic]
    
    [jn: with simplified log message]
    
    Signed-off-by: Michael Witten <mfwitten@gmail.com>
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
  5. Revert two "no-done" reverts

    gitster committed Mar 29, 2011
    Last night I had to make these two emergency reverts, but now we have a
    better understanding of which part of the topic was broken, let's get rid
    of the revert to fix it correctly.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  6. enable "no-done" extension only when serving over smart-http

    gitster committed Mar 29, 2011
    Do not advertise no-done capability when upload-pack is not serving over
    smart-http, as there is no way for this server to know when it should stop
    reading in-flight data from the client, even though it is necessary to
    drain all the in-flight data in order to unblock the client.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    Acked-by: Shawn O. Pearce <spearce@spearce.org>
  7. Fix potential local deadlock during fetch-pack

    gitster committed Mar 29, 2011
    The fetch-pack/upload-pack protocol relies on the underlying transport
    (local pipe or TCP socket) to have enough slack to allow one window worth
    of data in flight without blocking the writer.  Traditionally we always
    relied on being able to have two windows of 32 "have"s in flight (roughly
    3k bytes) to stream.
    
    The recent "progressive-stride" change allows "fetch-pack" to send up to
    1024 "have"s without reading any response from "upload-pack".  The
    outgoing pipe of "upload-pack" can be clogged with many ACK and NAK that
    are unread, while "fetch-pack" is still stuffing its outgoing pipe with
    more "have"s, leading to a deadlock.
    
    Revert the change unless we are in stateless rpc (aka smart-http) mode, as
    using a large window full of "have"s is still a good way to help reduce
    the number of back-and-forth, and there is no buffering issue there (it is
    strictly "ping-pong" without an overlap).
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  8. enable "no-done" extension only when fetching over smart-http

    gitster committed Mar 29, 2011
    When 'no-done' protocol extension is used, the upload-pack (i.e. the
    server side) process stops listening to the fetch-pack after issuing the
    final NAK, and starts sending the generated pack data back, but there may
    be more "have" send by the latter in flight that the fetch-pack is
    expecting to be responded with ACK/NAK.  This will typically result in a
    deadlock (both will block on write that the other end never reads) or
    SIGPIPE on the fetch-pack end (upload-pack will finish writing a small
    pack and goes away).
    
    Disable it unless fetch-pack is running under smart-http, where there is
    no such streaming issue.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    Acked-by: Shawn O. Pearce <spearce@spearce.org>
  9. HOME must be set before calling git-init when creating test repositories

    raalkml committed with gitster Mar 26, 2011
    Otherwise the created test repositories will be affected by users ~/.gitconfig.
    For example, setting core.logAllrefupdates in users config will make all
    calls to "git config --unset core.logAllrefupdates" fail which will break
    the first test which uses the statement and expects it to succeed.
    
    Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
    Acked-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  10. tests: make sure input to sed is newline terminated

    jrn committed Mar 29, 2011
    POSIX only requires sed to work on text files and because it does
    not end with a newline, this commit's content is not a text file.
    Add a newline to fix it.  Without this change, OS X sed helpfully
    adds a newline to actual.message, causing t9010.13 to fail.
    
    Reported-by: Torsten Bögershausen <tboegi@web.de>
    Tested-by: Brian Gernhardt <benji@silverinsanity.com>
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
  11. Revert "fetch-pack: Implement no-done capability"

    gitster committed Mar 29, 2011
    This reverts commit 761ecf0.
  12. Revert "upload-pack: Implement no-done capability"

    gitster committed Mar 29, 2011
    This reverts 3e63b21 (upload-pack: Implement no-done capability,
    2011-03-14).  Together with 761ecf0 (fetch-pack: Implement no-done
    capability, 2011-03-14) it seems to make the fetch-pack process out of
    sync and makes it keep talking long after upload-pack stopped listening to
    it, terminating the process with SIGPIPE.
Commits on Mar 28, 2011
  1. Merge branch 'maint'

    gitster committed Mar 28, 2011
    * maint:
      git tag documentation grammar fixes and readability updates
      grep: Add the option '--line-number'
  2. git tag documentation grammar fixes and readability updates

    mfwitten committed with gitster Mar 28, 2011
    ... with help from Eric Raible.
    
    In addition, describe the use of GIT_COMMITTER_DATE more comprehensively
    by including "date-formats.txt"
    
    Signed-off-by: Michael Witten <mfwitten@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  3. tests: fix overeager scrubbing of environment variables

    jlehmann committed with gitster Mar 28, 2011
    In commit 95a1d12 ("tests: scrub environment of GIT_* variables") all
    environment variables starting with "GIT_" were unset for the tests using
    a perl script rather than unsetting them one by one. Only three exceptions
    were made to make them work as before: "GIT_TRACE*", "GIT_DEBUG*" and
    "GIT_USE_LOOKUP".
    
    Unfortunately some environment variables used by the test framework itself
    were not added to the exceptions and thus stopped working when given
    before the make command instead of after it. Those are:
    
    - GIT_NOTES_TIMING_TESTS
    - GIT_PATCHID_TIMING_TESTS
    - GIT_PROVE_OPTS
    - GIT_REMOTE_SVN_TEST_BIG_FILES
    - GIT_SKIP_TESTS
    - GIT_TEST*
    - GIT_VALGRIND_OPTIONS
    
    I noticed that when skipping a test the way I was used to suddenly failed:
    
    GIT_SKIP_TESTS='t1234' GIT_TEST_OPTS='--root=/dev/shm' make -j10 test
    
    This should work according to t/README, but didn't anymore, so let's fix
    that by adding them to the exception list. And to avoid having a long
    regexp put the exceptions in a separate variable using nicer formatting.
    
    Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
    Acked-by: Jonathan Nieder <jrnieder@gmail.com>
    Thanks-to: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  4. grep: Add the option '--line-number'

    Joe Ratterman committed with gitster Mar 28, 2011
    This is a synonym for the existing '-n' option, matching GNU grep.
    
    Signed-off-by: Joe Ratterman <jratt0@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  5. Improve test for pthreads flag

    Oblomov committed with gitster Mar 28, 2011
    When compiling with CC=clang using Clang 1.1 as shipped by Debian
    unstable (package version 2.7-3), the -mt flag is sufficient to compile
    during the `configure` test. However, building git would then fail at
    link time complaining about missing symbols such as `pthread_key_create'
    and `pthread_create'.
    
    Work around this issue by adding pthread key creation to the pthreads
    configure test source.
    
    Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  6. vcs-svn: add missing cast to printf argument

    jrn committed with gitster Mar 28, 2011
    gcc -m32 correctly warns:
    
     vcs-svn/fast_export.c: In function 'fast_export_commit':
     vcs-svn/fast_export.c:54:2: warning: format '%llu' expects
       argument of type 'long long unsigned int', but argument 2
       has type 'unsigned int' [-Wformat]
    
    Fix it.
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Mar 27, 2011
  1. vcs-svn: add missing cast to printf argument

    jrn committed Mar 27, 2011
    gcc -m32 correctly warns:
    
     vcs-svn/fast_export.c: In function 'fast_export_commit':
     vcs-svn/fast_export.c:54:2: warning: format '%llu' expects
       argument of type 'long long unsigned int', but argument 2
       has type 'unsigned int' [-Wformat]
    
    Fix it.
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
  2. Update draft release note to 1.7.5

    gitster committed Mar 27, 2011
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  3. Merge branch 'mg/rev-list-n-parents'

    gitster committed Mar 27, 2011
    * mg/rev-list-n-parents:
      tests: avoid nonportable {foo,bar} glob
      rev-list --min-parents,--max-parents: doc, test and completion
      revision.c: introduce --min-parents and --max-parents options
      t6009: use test_commit() from test-lib.sh
  4. Merge branch 'js/remove-unused-variables'

    gitster committed Mar 27, 2011
    * js/remove-unused-variables:
      Remove unused variables