Subject: PR/35125 CVS commit: pkgsrc/devel/scmgit
To: None <,,>
From: Thomas Klausner <>
List: pkgsrc-bugs
Date: 11/26/2006 22:35:02
The following reply was made to PR pkg/35125; it has been noted by GNATS.

From: Thomas Klausner <>
Subject: PR/35125 CVS commit: pkgsrc/devel/scmgit
Date: Sun, 26 Nov 2006 22:34:31 +0000 (UTC)

 Module Name:	pkgsrc
 Committed By:	wiz
 Date:		Sun Nov 26 22:34:30 UTC 2006
 Modified Files:
 	pkgsrc/devel/scmgit: Makefile PLIST distinfo
 	pkgsrc/devel/scmgit/patches: patch-aa
 Log Message:
 Update to, fixing PR 35125 by Brad Harder.
 Changes from the announce mails:
 Subject:    [5][ANNOUNCE] GIT
 The primary purpose of this release is to fix the breakage
 people reported while cloning large quantity of data via git
 protocol, and the server side incorrectly timing out.  I am very
 sorry for the breakage.
 A big thanks goes to Matthias Lederhofer who fixed the breakage
 for us.  The fix was cherry-picked from the "master" branch.
 Subject:    [5][ANNOUNCE] GIT
 This release is primarily for these two fixes:
  * git-mv was broken.  Notably, this did not work:
         git-mv foo foo-renamed
  * git-http-fetch failed to follow objects/info/alternates on
    the remote side.  This broke a fetch from Paul's powerpc.git
 Subject:    [5][ANNOUNCE] GIT
 This is strictly a bugfix release.  While we will soon be in
 stabilization slow-down for 1.4.3, one of the bugs this release
 contains fixes for actually has bitten people who use the kernel
 commits mailing list, so this is to push the fixes out early.
 Subject:    [5][ANNOUNCE] GIT
 Sorry to be doing two maintenance releases in rapid succession,
 but git-mv breakage causes random tree corruption and is rather
 Subject:    [5][ANNOUNCE] GIT
 We are close to 1.4.3, so this update could become moot very
 soon, but just in case we have to delay it, I am pushing this
 out for a rather important performance fix.  Without it, "git
 diff" on 64-bit machines can run 100x times slower than it
 should be on unfortunate input.
 Many thanks go to Jim Mayering for giving an easy to reproduce
 initial problem report, and Linus and Davide Libenzi to quickly
 come up with a fix.
 Subject:    [5][ANNOUNCE] GIT 1.4.2
 Changes since v1.4.1.1 are as follows:
 A Large Angry SCM:
       Additional merge-base tests (revised)
 Alex Riesen:
       Do not use perl in
       Trivial path optimization test
 Alexandre Julliard:
       git.el: Run git-rerere on commits if the rr-cache directory exists.
       git.el: Prepend a slash to the file name when adding to .gitignore.
       git.el: Try to reuse an existing buffer when running git-status.
       git.el: Put the git customize group in the 'tools' parent group.
       show-branch: Fix another performance problem.
 Alp Toker:
       Fix some doubled word typos
       Fix some doubled word typos
       Fix typos involving the word 'commit'
       typofix (git-name-rev documentation)
       git-send-email: Remove redundant Reply-To header
       gitweb: Send XHTML as 'application/xhtml+xml' where possible
       gitweb: Include a site name in page titles
       gitweb: Make command invocations go through the git wrapper
       documentation (urls.txt) typofix
 Daniel Drake:
       gitweb: escape tag comments
 Dennis Stosberg:
       gitweb: Declare global variables with "our"
       gitweb: Declare global variables with "our"
 Eric Wong:
       Add git-instaweb, instantly browse the working repo with gitweb
       instaweb: fix unportable ';' usage in sed
       t8001-annotate: fix a bash-ism in this test
       git-svn: avoid fetching files outside of the URL we're tracking
       git-svn: migrate out of contrib
       builtin-log: respect diff configuration options
       diff.c: respect diff.renames config option
       templates/hooks--update: replace diffstat calls with git diff --stat
       git-svn: fix --file/-F option in commit-diff
       tests: Set EDITOR=: and VISUAL=: globally
       git-fetch: fix a bashism (==)
       git-svn: don't check for migrations/upgrades on commit-diff
       typechange tests for git apply (currently failing)
       git-svn: fix fetching new directories copies when using SVN:: libs
       git-svn: correctly kill keyword expansion without munging EOLs
       git-svn: bugfix: allow SVN:: lib users to track the root of the repositor
       git-svn: split the path from the url correctly with limited perms
 Gerrit Pape:
       Build on Debian GNU/kFreeBSD
 Jakub Narebski:
       Allow INSTALL, bindir, mandir to be set in main Makefile
       Rename man1 and man7 variables to man1dir and man7dir
       autoconf: Use autoconf to write installation directories to
       send-email: format 2822 datestring ourselves.
       Teach make clean about configure and autoconf
       Copy description of build configuration variables to
       autoconf: Preparing the way for autodetection
       autoconf: Checks for typedefs, structures, and compiler characteristics.
       autoconf: Checks for some library functions.
       autoconf: Checks for libraries
       autoconf: Checks for some programs vertical whitespace usage cleanup
       Wrap long lines in docstrings in contrib/emacs/git.el
       Display help for Git mode after pressing `h' or `?' in *git-status*
 Jeff King:
       pack-objects: check pack.window for default window size
       Colorize 'commit' lines in log ui
       git-push: allow -f as an alias for --force
       git-push: remove obsolete
       Documentation: convert uses of git-link macro to gitlink
       git-annotate: remove extraneous debugging line
       git-push: allow pushing from subdirectories
 Joachim B Haga:
       Make zlib compression level configurable, and change default.
 Joachim Berdal Haga:
       core.compression documentation formatting fix.
 Johannes Schindelin:
       refactor merge_bases() as preparation to libify merge-base
       move get_merge_bases() to core lib.
       Makefile: replace ugly and unportable sed invocation
       Make git-fmt-merge-msg a builtin
       Makefile: export NO_SVN_TESTS
       Close the index file between writing and committing
       Fix linking for not-so-clever linkers.
       Fix t4114 on cygwin
       Always reset the color _before_ printing out the newline
       cvsserver: suppress warnings
       cvsserver: avoid warning about active db handles
       Allow an alias to start with "-p"
       git wrapper: add --git-dir=<path> and --bare options
       git-instaweb: some Apache have mod_cgi builtin
       git-instaweb: respect bindir from Makefile
       gitweb: fix two warnings
       t7001: add test for git-mv dir1 dir2/
       git-cvsserver: support multiline commit messages
       Extract helper bits from c-merge-recursive work
       Make git-mv a builtin
       builtin git-mv: support moving directories
       instaweb: Be more clear if httpd or the browser fail
       cvsserver: imitate git-update-ref when committing
       Makefile: ssh-pull.o depends on ssh-fetch.c
       Teach git-apply about '-R'
       Fix http-fetch
       tar-tree: illustrate an obscure feature better
       Fix crash when GIT_DIR is invalid
 Jonas Fonseca:
       Documentation/urls.txt: Use substitution to escape square brackets
       Update git-init-db(1) and documentation of core.sharedRepository
 Josef Weidendorfer:
       Extend testing git-mv for renaming of subdirectories
 Josh Triplett:
       git-format-patch: Make the second and subsequent mails replies to the fir
       Add option to enable threading headers
       Add option to set initial In-Reply-To/References
 Junio C Hamano:
       Makefile: add framework to verify and bench sha1 implementations.
       test-sha1: test hashing large buffer
       t4013: add tests for diff/log family output options.
       t4013: add more tests around -c and --cc
       Fix some more diff options changes.
       t4013 test updates for new output code.
       combine-diff.c: type sanity.
       format-patch: fix diff format option implementation
       t4013: add format-patch tests.
       t4013: note improvements brought by the new output code.
       gitweb: optimize per-file history generation
       gitweb: optimize per-file history generation
       t4013: add "diff" UI program tests.
       builtin-diff: turn recursive on when defaulting to --patch format.
       commit.c: do not redefine UNINTERESTING bit.
       get_merge_bases: clean up even when there is no common commit.
       revert clear-commit-marks for now.
       boolean: accept yes and no as well
       send-email: do not barf when Term::ReadLine does not like your terminal
       t6200: fmt-merge-msg test.
       git-grep: fix parsing of pathspec separator '--'
       git-grep: fix exit code when we use external grep.
       git-grep: use a bit more specific error messages.
       Re-fix clear_commit_marks().
       git-grep: boolean expression on pattern matching.
       git-reset: complain and exit upon seeing an unknown parameter.
       mailinfo: assume input is latin-1 on the header as we do for the body
       diffcore-rename: try matching up renames without populating filespec firs
       builtin-rev-parse.c: constness tightening
       show-branch: match documentation and usage
       rev-parse documentation: talk about range notation.
       git-svn: migrate out of contrib (follow-up)
       diff.c: --no-color to defeat diff.color configuration.
       Update diff-options and config documentation.
       git log -p --merge [[--] paths...]
       colored diff: diff.color = auto fix
       diff: do not use configuration magic at the core-level
       "git -p cmd" to page anywhere
       merge-base: update the clean-up postprocessing
       fmt-merge-msg fix
       Fix grammatical error in git-revert
       git-repack: avoid redirecting stderr into git-pack-objects
       test-lib: unset GIT_TRACE
       t4013 diff format tests update
       Adjust t4013 tests to corrected format-patch.
       Documentation: Fix ssh://[user@]host.xz URL
       fetch/clone: check return status from ls-remote
       builtin-prune.c: forgot TYPE => OBJ changes.
       Documentation/Makefile: product depends on asciidoc.conf
       builtin-log: typefix for recent format-patch changes.
       show-branch: fix performance problem.
       checkout -f failed to check out a file if an existing directory interfere
       apply: check D/F conflicts more carefully.
       apply: split out removal and creation into different phases.
       apply: handle type-changing patch correctly.
       git-diff A...B to (usually) mean "git-diff `git-merge-base A B` B"
       git-fetch: fix --keep vs --thin
       unpack-objects: remove stale and confusing comment
       t4112: simplify the test and remove unneeded working tree file.
       lost-found: use fsck-objects --full
       git-reset: detect update-ref error and report it.
       log and diff family: honor config even from subdirectories
       git-apply -R: binary patches are irreversible for now.
       t4103: fix binary patch application test.
       git-checkout: allow "checkout HEAD -- path"
       Builtins: control the use of pager from the command table.
       fetch/clone: mark messages from remote side stand out.
       Cygwin needs NO_C99_FORMAT???
       Fix "git diff blob1 blob2" showing the diff in reverse.
       read-tree: shadowed variable fix.
       Add a couple of subdirectory tests.
       diff.c: do not use pathname comparison to tell renames
       Show both blob names from "git diff blob1 blob2"
       sideband: do not use color, just say "remote:"
       Documentation/git.txt: link git-svn and git-instaweb from the main page.
       GIT 1.4.2-rc3
       Further clean-up: usage() vs die()
       Makefile: Cygwin does not seem to need NO_STRLCPY
       Fix "grep -w"
       debugging: XMALLOC_POISON
       builtin-mv: fix use of uninitialized memory.
       GIT-VERSION-GEN: adjust for ancient git
       Documentation: git-status takes the same options as git-commit
       Fix tutorial-2.html
       check return value from diff_setup_done()
       find_unique_abbrev() with len=0 should not abbreviate
       make --find-copies-harder imply -C
       allow diff.renamelimit to be set regardless of -M/-C
       git-apply: applying a patch to make a symlink shorter.
       combine-diff: use color
       Fix git-diff A...B
       builtin-apply: remove unused increment
       git-sh-setup: do not use repo-config to test the git directory
       git-am: give better diagnostics when the patch does not apply during --3w
       Better error message when we are unable to lock the index file
       t/t4013: fix futzing with the version string.
 Linus Torvalds:
       xdiff: generate "anti-diffs" aka what is common to two files
       Prepare "git-merge-tree" for future work
       Improved three-way blob merging code
       Improve git-peek-remote
       builtin "git prune"
       Make the unpacked object header functions static to sha1_file.c
       Remove TYPE_* constant macros and use object_type enums consistently.
       sha1_file: add the ability to parse objects in "pack file format"
       Call setup_git_directory() early
       Call setup_git_directory() much earlier
       Fix double "close()" in ce_compare_data
       Fix up some fallout from "setup_git_directory()" cleanups
 Luben Tuikov:
       gitweb: Enable tree (directory) history display
       gitweb: Enable tree (directory) history display
       Add "raw" output option to blobs in "tree" view format
       gitweb.cgi: Create $git_temp if it doesn't exist
       gitweb.cgi: Teach "a=blob" action to know the blob/file mime type
       gitweb.css: Use monospace fonts for commits and tree-diff.
       gitweb.cgi: Teach git_history() to read hash from $hash_base
       gitweb.cgi: Include direct link to "raw" files from "history"
       gitweb.cgi: git_blame2: an alternative simple working git blame
       gitweb.cgi: git_blame2: Allow back-trekking through commits
       gitweb.cgi: Show "raw" head of project link even when $hash is not define
       gitweb.cgi: git_blame2: Revision blocks now have alternating colors
       gitweb.cgi: Centralize printing of the page path
       gitweb.cgi: git_blame2: slight optimization reading the blame lines
 Lukas Sandström:
       git-am: Don't accept an mbox on stdin of we already have a .dotest direct
 Martin Langhoff:
       cvsexportcommit - add -a (add author line) flag, cleanup warnings
 Matthias Kestenholz:
       Make git-prune-packed a builtin
       Make git-repo-config a builtin
       use declarations from builtin.h for builtin commands
 Matthias Lederhofer:
       GIT_TRACE: show which built-in/external commands are executed
       change ent to tree in git-diff documentation
       git-rev-list: add documentation for --parents, --no-merges
       daemon: use a custom die routine with syslog
       daemon: if one of the standard fds is missing open it to /dev/null
       upload-pack: ignore write errors to stderr
       daemon: new option --pid-file=<path> to store the pid
       daemon: new option --detach to run git-daemon in background
       Documentation about exclude/ignore files
       argv created by handle_alias should be NULL terminated
       upload-pack: fix timeout in create_pack_file
       daemon: documentation for --reuseaddr, --detach and --pid-file
       setup_git_directory_gently: do not barf when GIT_DIR is given.
       git.c: allow alias expansion without a git directory
       pager: config variable pager.color
       git-grep: document --and, --or, --not, ( and )
       fixed variable declaration in gitk
 Michael Krelin:
       handle https:// protocol in git-clone
 Michael S. Tsirkin:
       mailinfo: accept >From in message header
 Michal Rokos:
       sed -e '/RE/r rfile/' needs space in 'r rfile'
       Using 'perl' in *.sh
 Paul Mackerras:
       gitk: Allow the user to set some colors
       gitk: Show the currently checked-out head in bold font
 Pavel Roskin:
       Assorted typo fixes
       Typofix in Makefile comment.
       Typofix in comment.
       Fix more typos, primarily in the code
       Avoid C99 comments, use old-style C comments instead.
       Quote all calls to GIT_CONF_APPEND_LINE
       Set datarootdir in
 Peter Baumann:
       git-cvsexportcommit can't handle merge commits correctly
 Peter Eriksen:
       Substitute xmalloc()+memset(0) with xcalloc().
 Petr Baudis:
       Remove -d from *-fetch usage strings
       Make pull() take some implicit data as explicit arguments
       Make pull() support fetching multiple targets at once
       Teach git-local-fetch the --stdin switch
       Teach git-http-fetch the --stdin switch
 Ramsay Jones:
       Ensure git-clone exits with error if perl script fails.
       Fix annotate test script; notice when git-annotate fails.
       Fix installation of templates on ancient systems.
       New tests and en-passant modifications to mktag.
       Add NO_C99_FORMAT to support older compilers.
       Fix header breakage due to redefining PATH_MAX.
       Remove cmd_usage() routine and re-organize the help/usage code.
       Fix header breakage with _XOPEN_SOURCE.
       Fixup command names in some usage strings.
       Replace some calls to die(usage_str) with usage(usage_str).
       Allow config file to specify Signed-off-by identity in format-patch.
       commit walkers: setup_ident() to record correct committer in ref-log.
 Rene Scharfe:
       Add get_merge_bases_clean()
       Add '...' operator for revisions
       Make clear_commit_marks() clean harder
       Fold get_merge_bases_clean() into get_merge_bases()
       rev-list: free commit_list in ... handler
       git-tar-tree: fix minor memory leak
       Add has_extension()
       git-verify-pack: show usage when no pack was specified
       git-verify-pack: more careful path handling
       git-verify-pack: insist on .idx extension
       git-verify-pack: get rid of while loop
       git-verify-pack: free pack after use and a cleanup
       git-verify-pack: buffer overrun paranoia
       git-verify-pack: no need to count errors
       drop length argument of has_extension
 Robert Shearman:
       format-patch: Generate a newline between the subject header and the messa
 ge \
       rebase: Fix the detection of fast-forwarding of the current branch to ups
       rebase: Make the fast-fowarding message more user-friendly by using branc
 h \
 names instead of SHA1 IDs.
 Rutger Nijlunsing:
       http-push: Make WebDAV work with (broken?) default apache2 WebDAV module
       Add Documentation/howto/setup-git-server-over-http.txt
 Ryan Anderson:
       annotate: Support annotation of files on other revisions.
       annotate: Correct most merge following to annotate correctly.
       Disable color detection during format-patch
       log-tree: show_log() should respect the setting of diffopt->line_terminat
       annotate: Fix bug when parsing merges with differing real and logical par
 Santi Béjar:
       Teach rev-parse the ... syntax.
       Defaulting fetch to origin when set in the repo-config
 Sergey Vlasov:
       Fix "git-fetch --tags" exit status when nothing has been changed
 Shawn Pearce:
       Avoid C99 initializers
       Allow and to drive reflog entry.
       Record the type of commit operation in the reflog.
       Log ref changes made by git-fetch and git-pull.
       Log ref changes made by git-merge and git-pull.
       Log ref changes made by quiltimport.
       Log ref changes made by resolve.
       Make lazy mkdir more robust.
       Record rebase changes as 'rebase' in the reflog.
       Disable linking with Fink or DarwinPorts.
       Display an error from update-ref if target ref name is invalid.
 Stephan Feder:
       Do not drop data from '\0' until eol in patch output
       Teach --text option to diff
       Teach diff -a as shorthand for --text
       Add -a and --text to common diff options help
       diff-options: Explain --text and -a
 Timo Hirvonen:
       Merge with_raw, with_stat and summary variables to output_format
       Make --raw option available for all diff commands
       Set default diff output format after parsing command line
       DIFF_FORMAT_RAW is not default anymore
       Add msg_sep to diff_options
       Don't xcalloc() struct diffstat_t
       whatchanged: Default to DIFF_FORMAT_RAW
       Print empty line between raw, stat, summary and patch
       diff-tree: Use ---\n as a message separator
       log --raw: Don't descend into subdirectories by default
       Fix diff-tree -s
       GIT_TRACE: fix a mixed declarations and code warning
       diff: Support both attributes and colors
       diff: Support 256 colors
       A better-scheduled PPC SHA-1 implementation.
 Uwe Zeisberger:
       Document rev-list's option --merge
 Ville Skyttä:
       Fix print-log and diff compatibility with recent vc versions
 Willy Tarreau:
       tar-tree: add the "tar.umask" config option
 Yakov Lerner:
       Mention the [user@] part in documentation of ssh:// urls.
 Subject:    [5][ANNOUNCE] GIT
 This is primarily to work around changes in the recent GNU diff output
 format.  Also it contains irritation fix for "git diff" which now
 paginates its output by default.
 Subject:    [5][ANNOUNCE] GIT
 This is primarily to fix two rather embarrasing breakage
 discovered post release.
  - The pager change to default to LESS=FRS exposed problem with less
    that switches to alternate screen, shows its output and then switches
    back immediately from the alternate screen afterwards -- which means
    the user would not have a chance to see _anything_.
  - Older upload-pack protocol clients did not pass host= and recent
    git-daemon change to support virtual hosting did not handle this
    correctly (although it attempted to do so, the check was borked).
 Subject:    [5][ANNOUNCE] GIT
 Sorry to be doing three follow-up releases in a row.  This is
 primarily fix the partitioning of programs in generated RPM.  If
 you are installing all of git it does not matter, but by mistake
 we were placing git-archive into git-arch subpackage, which
 meant that you need to install tla only to use git-tar-tree and
 git-archive --format=zip.
 Thanks for Gerrit for noticing and reporting it, although he is
 from Debian camp ;-).
 Subject:    [5][ANNOUNCE] GIT
 Among many minor fixes and documentation updates, this contains these
  - revision traversal now treats --unpacked as commit filter,
    not traversal limiter.  If you have unpacked commits that are
    parents of packed ones which are in turn parents of commits
    that are unpacked, running rev-list starting at the latest
    unpacked commits used to _stop_ at the first packed commit
    and older unpacked commits were not shown.  With this update,
    the traversal does not stop at packed commits, and shows the
    older unpacked commits.  The updated semantics is easier to
    use with git-repack --unpacked.
  - In a repository configured for shared access, if the
    permission bits of existing directories are misconfigured
    (e.g. running repository commands as root by mistake), a
    codepath to create a new object failed with incorrect error
    message.  Fixed.
  - An earlier fix to cope with traditional-style patches that
    were generated with --unified=0 broke handling of creation
    and deletion diffs in git-apply.  Fixed.
 Subject:    [5][ANNOUNCE] GIT
 The 'master' front has been very quiet and it will hopefully
 soon produce 1.4.4 but in the meantime here is primarily to fix
 git-svn correctness issues.
 Subject:    [6][ANNOUNCE] GIT 1.4.3
 User visible changes, other than bugfixes, since v1.4.2.4 are:
  - upload-tar is deprecated but not removed; we now have
    upload-archive --format=tar and --format=zip instead.
  - ftp:// protocol is supported the same way as http:// and
  - git-diff paginates its output to the tty by default.  If this
    irritates you, using LESS=RF might help.
  - git-cherry-pick does not leave often useless "cherry-picked
    from" message.
  - git-merge-recursive was replaced by a rewritten implemention
    in C.  The original Python implementation is available as
    "recursive-old" strategy for now, but hopefully we can remove
    it in the next cycle.
  - git-daemon can do name based virtual hosting.
  - git-daemon can serve tar and zip snapshots.
  - many gitweb tweaks and cleanups.
  - git-apply --reverse, --reject.
  - git-diff --color highlights whitespace errors.
  - git-diff --stat can be taught to use non-default widths.
  - git-status can use colors.
  - many more commands are built-in.
 Subject:    [5][ANNOUNCE] GIT
 This contains mostly small post-release fixups.
 Subject:    [5][ANNOUNCE] GIT 1.4.4
 Quite a lot of changes during the last month.
  - pack-refs, along with a lot of internal clean-up of the code
    that deal with refs, is in.  A repository with many tags
    would benefit from packing and pruning them.  Currently dumb
    transports are not capable of fetching from a repository that
    has packed and pruned its refs, so please keep that in mind.
    Hopefully we will get an update for dumb transports shortly.
  - git native transport can now keep transferred packs without
    exploding it into loose objects.  Also "git repack" can be
    told to keep "historical" packs from getting repacked by
    marking them with .keep file.  Docmentation update is
    probably needed.
  - git-blame can now detect line movements across files.  No, it
    is not called git-pickaxe.
  - a lot of gitweb and git-svn updates.
 To generate a diff of this commit:
 cvs rdiff -r1.5 -r1.6 pkgsrc/devel/scmgit/Makefile
 cvs rdiff -r1.3 -r1.4 pkgsrc/devel/scmgit/PLIST
 cvs rdiff -r1.1.1.1 -r1.2 pkgsrc/devel/scmgit/distinfo
 cvs rdiff -r1.1.1.1 -r1.2 pkgsrc/devel/scmgit/patches/patch-aa
 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.