git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [ANNOUNCE] GIT 1.4.3
@ 2006-10-18 23:53 Junio C Hamano
  2006-10-20 12:31 ` Horst H. von Brand
                   ` (2 more replies)
  0 siblings, 3 replies; 24+ messages in thread
From: Junio C Hamano @ 2006-10-18 23:53 UTC (permalink / raw)
  To: git; +Cc: linux-kernel

The latest feature release GIT 1.4.3 is available at the usual
places:

  http://www.kernel.org/pub/software/scm/git/

  git-1.4.3.tar.{gz,bz2}			(tarball)
  git-htmldocs-1.4.3.tar.{gz,bz2}		(preformatted docs)
  git-manpages-1.4.3.tar.{gz,bz2}		(preformatted docs)
  RPMS/$arch/git-*-1.4.3-1.$arch.rpm	(RPM)

Please holler if i386 RPMs are broken, since they are not cut on
the machine I am used to use (I ended up burning half a day
installing and futzing with FC5 on my older laptop resurrected
from the boneyard).

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
   https://

 - 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.

----------------------------------------------------------------

 .gitignore                                         |   10 +-
 Documentation/Makefile                             |    4 +-
 Documentation/asciidoc.conf                        |    1 +
 Documentation/config.txt                           |   34 +
 Documentation/core-tutorial.txt                    |    2 +-
 Documentation/cvs-migration.txt                    |    2 +-
 Documentation/diff-options.txt                     |   10 +-
 Documentation/git-apply.txt                        |   69 +-
 .../{git-tar-tree.txt => git-archive.txt}          |   93 +-
 Documentation/git-blame.txt                        |   29 +-
 Documentation/git-cherry-pick.txt                  |   23 +-
 Documentation/git-daemon.txt                       |  135 +-
 Documentation/git-grep.txt                         |   15 +-
 Documentation/git-http-push.txt                    |    2 +-
 Documentation/git-init-db.txt                      |    4 +
 Documentation/git-ls-remote.txt                    |   18 +-
 Documentation/git-pack-objects.txt                 |   26 +-
 Documentation/git-receive-pack.txt                 |    2 +
 Documentation/git-repack.txt                       |   13 +-
 Documentation/git-repo-config.txt                  |    3 +-
 Documentation/git-rev-list.txt                     |  428 ++-
 Documentation/git-rev-parse.txt                    |    2 +-
 Documentation/git-send-pack.txt                    |    2 +-
 Documentation/git-shortlog.txt                     |   17 +-
 Documentation/git-svn.txt                          |  399 ++-
 Documentation/git-tar-tree.txt                     |    3 +
 Documentation/git-unpack-objects.txt               |    8 +-
 Documentation/git-update-index.txt                 |    4 +-
 .../{git-upload-tar.txt => git-upload-archive.txt} |   24 +-
 Documentation/git.txt                              |   37 +-
 Documentation/gitk.txt                             |  151 +-
 Documentation/glossary.txt                         |    4 +-
 Documentation/hooks.txt                            |   56 +-
 Documentation/technical/racy-git.txt               |  193 +
 Documentation/tutorial-2.txt                       |    2 +-
 GIT-VERSION-GEN                                    |    2 +-
 INSTALL                                            |   15 +-
 Makefile                                           |  297 +-
 builtin-tar-tree.c => archive-tar.c                |  229 +-
 archive-zip.c                                      |  333 ++
 archive.h                                          |   47 +
 blame.c                                            |   19 +-
 builtin-apply.c                                    |  708 +++-
 builtin-archive.c                                  |  263 ++
 builtin-cat-file.c                                 |   40 +-
 checkout-index.c => builtin-checkout-index.c       |   29 +-
 builtin-commit-tree.c                              |    2 +-
 builtin-count.c => builtin-count-objects.c         |    2 +-
 builtin-diff-files.c                               |    7 -
 builtin-diff-stages.c                              |    2 +-
 builtin-diff.c                                     |   16 +-
 builtin-fmt-merge-msg.c                            |   39 +-
 builtin-grep.c                                     |  650 +---
 builtin-init-db.c                                  |    1 +
 builtin-log.c                                      |    7 +-
 builtin-ls-files.c                                 |   27 +-
 builtin-ls-tree.c                                  |    6 +-
 builtin-mailinfo.c                                 |   17 +-
 builtin-mv.c                                       |   12 +-
 name-rev.c => builtin-name-rev.c                   |    8 +-
 pack-objects.c => builtin-pack-objects.c           |  439 ++-
 builtin-prune-packed.c                             |    2 +-
 builtin-prune.c                                    |    4 +-
 builtin-push.c                                     |   32 +-
 builtin-read-tree.c                                |  865 +----
 builtin-repo-config.c                              |   34 +-
 builtin-rev-list.c                                 |  171 +-
 builtin-rev-parse.c                                |   10 +-
 builtin-rm.c                                       |    2 +-
 builtin-runstatus.c                                |   36 +
 builtin-show-branch.c                              |   18 +-
 symbolic-ref.c => builtin-symbolic-ref.c           |    8 +-
 builtin-tar-tree.c                                 |  439 +--
 unpack-objects.c => builtin-unpack-objects.c       |   78 +-
 builtin-update-index.c                             |   18 +-
 builtin-update-ref.c                               |    2 +-
 builtin-upload-archive.c                           |  175 +
 builtin-upload-tar.c                               |   74 -
 verify-pack.c => builtin-verify-pack.c             |   15 +-
 builtin-write-tree.c                               |    4 +-
 builtin.h                                          |   86 +-
 cache-tree.c                                       |   14 +-
 cache.h                                            |   68 +-
 check-racy.c                                       |   28 +
 color.c                                            |  176 +
 color.h                                            |   12 +
 combine-diff.c                                     |   41 +-
 commit.c                                           |   51 +-
 commit.h                                           |    2 +-
 compat/inet_pton.c                                 |  220 +
 config.c                                           |   18 +-
 config.mak.in                                      |   18 +
 configure.ac                                       |  561 ++-
 connect.c                                          |   50 +-
 contrib/completion/git-completion.bash             |  324 ++
 contrib/emacs/git.el                               |    4 +-
 contrib/emacs/vc-git.el                            |    6 +-
 contrib/gitview/gitview.txt                        |   56 +-
 contrib/vim/README                                 |    8 +
 contrib/vim/syntax/gitcommit.vim                   |   18 +
 convert-objects.c                                  |    8 +-
 csum-file.c                                        |    6 +-
 daemon.c                                           |  431 ++-
 date.c                                             |  132 +-
 describe.c                                         |   14 +-
 diff-delta.c                                       |    4 +-
 diff-lib.c                                         |   32 +-
 diff.c                                             |  666 ++-
 diff.h                                             |   15 +-
 diffcore-break.c                                   |    2 +-
 diffcore-rename.c                                  |    2 +-
 dir.c                                              |   48 +-
 dir.h                                              |    1 +
 dump-cache-tree.c                                  |    2 +-
 entry.c                                            |    4 +-
 environment.c                                      |   20 +-
 exec_cmd.c                                         |   20 +-
 fetch-clone.c                                      |   33 +-
 fetch-pack.c                                       |   24 +-
 fetch.c                                            |    9 +-
 fsck-objects.c                                     |   44 +-
 generate-cmdlist.sh                                |    1 +
 git-branch.sh                                      |   10 +
 git-checkout.sh                                    |    9 +-
 git-cherry.sh                                      |    3 -
 git-clone.sh                                       |    8 +-
 git-commit.sh                                      |  582 +--
 git-compat-util.h                                  |   18 +-
 git-cvsexportcommit.perl                           |    2 +-
 git-cvsserver.perl                                 |   65 +-
 git-fetch.sh                                       |   26 +-
 git-ls-remote.sh                                   |    6 +-
 ...erge-recursive.py => git-merge-recursive-old.py |    0 
 git-merge.sh                                       |    5 +-
 git-parse-remote.sh                                |   43 +-
 git-pull.sh                                        |    2 +-
 git-rebase.sh                                      |    6 +-
 git-repack.sh                                      |   25 +-
 git-reset.sh                                       |    3 -
 git-resolve.sh                                     |    4 +
 git-revert.sh                                      |   14 +-
 git-send-email.perl                                |   42 +-
 git-shortlog.perl                                  |   44 +-
 git-svn.perl                                       |  122 +-
 git-svnimport.perl                                 |   35 +-
 git.c                                              |  131 +-
 git.spec.in                                        |   23 +-
 gitk                                               |  682 +++-
 gitweb/README                                      |   61 +-
 gitweb/git-favicon.png                             |  Bin
 gitweb/git-logo.png                                |  Bin
 gitweb/gitweb.css                                  |   80 +-
 gitweb/{gitweb.cgi => gitweb.perl}                 | 4459 ++++++++++++--------
 grep.c                                             |  498 +++
 grep.h                                             |   79 +
 builtin-help.c => help.c                           |    4 +-
 http-fetch.c                                       |  303 +--
 http-push.c                                        |   95 +-
 http.c                                             |   12 +
 http.h                                             |    4 +
 imap-send.c                                        |   45 +-
 index-pack.c                                       |   16 +-
 interpolate.c                                      |  108 +
 interpolate.h                                      |   26 +
 builtin-prune.c => list-objects.c                  |  255 +-
 list-objects.h                                     |   12 +
 local-fetch.c                                      |    8 +-
 log-tree.c                                         |   82 +-
 merge-base.c                                       |    2 +-
 merge-file.c                                       |    2 +-
 merge-index.c                                      |    5 +-
 merge-recursive.c                                  | 1351 ++++++
 merge-tree.c                                       |   10 +-
 mktag.c                                            |    2 +-
 mktree.c                                           |    5 +-
 object-refs.c                                      |   11 +-
 object.c                                           |    6 +-
 object.h                                           |   11 -
 pack-check.c                                       |   25 +-
 pack-redundant.c                                   |   18 +-
 pager.c                                            |    4 +-
 patch-id.c                                         |    2 +-
 path-list.c                                        |    5 +-
 path.c                                             |   10 +-
 peek-remote.c                                      |    5 +-
 perl/.gitignore                                    |    4 +
 perl/Git.pm                                        |  837 ++++
 perl/Makefile.PL                                   |   28 +
 perl/private-Error.pm                              |  827 ++++
 quote.c                                            |   61 +
 quote.h                                            |    7 +
 read-cache.c                                       |   77 +-
 receive-pack.c                                     |   28 +-
 refs.c                                             |   26 +-
 revision.c                                         |  258 +-
 revision.h                                         |   14 +-
 rsh.c                                              |   31 +-
 run-command.c                                      |    8 +-
 send-pack.c                                        |  126 +-
 server-info.c                                      |    2 +-
 setup.c                                            |    2 +
 sha1_file.c                                        |  596 ++--
 sha1_name.c                                        |   60 +-
 sideband.c                                         |   78 +
 sideband.h                                         |   13 +
 ssh-fetch.c                                        |   10 +-
 ssh-upload.c                                       |    4 +-
 t/t1200-tutorial.sh                                |    2 +-
 t/t1400-update-ref.sh                              |   86 +-
 t/t3200-branch.sh                                  |   12 +
 t/t3403-rebase-skip.sh                             |    4 +-
 t/t3700-add.sh                                     |   22 +
 t/t4015-diff-whitespace.sh                         |  122 +
 t/t4103-apply-binary.sh                            |    4 +-
 t/t4104-apply-boundary.sh                          |  115 +
 t/t4116-apply-reverse.sh                           |   85 +
 t/t4117-apply-reject.sh                            |  157 +
 t/t5400-send-pack.sh                               |   14 +
 t/t5510-fetch.sh                                   |   69 +
 t/t5600-clone-fail-cleanup.sh                      |    6 +
 t/t5710-info-alternate.sh                          |    2 +
 t/t6001-rev-list-graft.sh                          |  113 +
 t/t7002-grep.sh                                    |   31 +-
 t/t7201-co.sh                                      |    9 +
 t/test-lib.sh                                      |   17 +-
 trace.c                                            |  150 +
 tree-diff.c                                        |   15 +-
 tree-walk.c                                        |    4 +-
 tree.c                                             |    5 +-
 builtin-read-tree.c => unpack-trees.c              |  474 +--
 unpack-trees.h                                     |   35 +
 upload-pack.c                                      |  190 +-
 write_or_die.c                                     |   45 +
 wt-status.c                                        |  276 ++
 wt-status.h                                        |   25 +
 xdiff-interface.c                                  |   12 +-
 xdiff/xutils.c                                     |   29 +-
 237 files changed, 16898 insertions(+), 8168 deletions(-)
 copy Documentation/{git-tar-tree.txt => git-archive.txt} (29%)
 rewrite Documentation/git-rev-list.txt (61%)
 rename Documentation/{git-upload-tar.txt => git-upload-archive.txt} (30%)
 rewrite Documentation/gitk.txt (37%)
 create mode 100644 Documentation/technical/racy-git.txt
 copy builtin-tar-tree.c => archive-tar.c (59%)
 create mode 100644 archive-zip.c
 create mode 100644 archive.h
 create mode 100644 builtin-archive.c
 rename builtin-cat-file.c => builtin-cat-file.c (0%)
 rename checkout-index.c => builtin-checkout-index.c (92%)
 rename builtin-count.c => builtin-count-objects.c (99%)
 rename name-rev.c => builtin-name-rev.c (97%)
 rename pack-objects.c => builtin-pack-objects.c (81%)
 create mode 100644 builtin-runstatus.c
 rename symbolic-ref.c => builtin-symbolic-ref.c (75%)
 rename unpack-objects.c => builtin-unpack-objects.c (82%)
 create mode 100644 builtin-upload-archive.c
 delete mode 100644 builtin-upload-tar.c
 rename verify-pack.c => builtin-verify-pack.c (83%)
 create mode 100644 check-racy.c
 create mode 100644 color.c
 create mode 100644 color.h
 create mode 100644 compat/inet_pton.c
 rewrite configure.ac (21%)
 create mode 100755 contrib/completion/git-completion.bash
 rename contrib/gitview/{gitview.txt => gitview.txt} (74%)
 create mode 100644 contrib/vim/README
 create mode 100644 contrib/vim/syntax/gitcommit.vim
 rename git-merge-recursive.py => git-merge-recursive-old.py (100%)
 create mode 100644 gitweb/git-favicon.png
 create mode 100644 gitweb/git-logo.png
 rename gitweb/{gitweb.cgi => gitweb.perl} (30%)
 create mode 100644 grep.c
 create mode 100644 grep.h
 rename builtin-help.c => help.c (99%)
 create mode 100644 interpolate.c
 create mode 100644 interpolate.h
 copy builtin-prune.c => list-objects.c (24%)
 create mode 100644 list-objects.h
 create mode 100644 merge-recursive.c
 create mode 100644 perl/.gitignore
 create mode 100644 perl/Git.pm
 create mode 100644 perl/Makefile.PL
 create mode 100644 perl/private-Error.pm
 create mode 100644 sideband.c
 create mode 100644 sideband.h
 create mode 100755 t/t4015-diff-whitespace.sh
 create mode 100755 t/t4104-apply-boundary.sh
 create mode 100755 t/t4116-apply-reverse.sh
 create mode 100755 t/t4117-apply-reject.sh
 create mode 100755 t/t5510-fetch.sh
 create mode 100755 t/t6001-rev-list-graft.sh
 create mode 100644 trace.c
 copy builtin-read-tree.c => unpack-trees.c (62%)
 create mode 100644 unpack-trees.h
 create mode 100644 write_or_die.c
 create mode 100644 wt-status.c
 create mode 100644 wt-status.h

Alan Chandler (2):
      Update the gitweb/README file to include setting the GITWEB_CONFIG environment
      Fix usage string to match that given in the man page

Alex Riesen (3):
      Use const for interpolate arguments
      fix daemon.c compilation for NO_IPV6=1
      do not discard constness in interp_set_entry value argument

Alexandre Julliard (2):
      git.el: Fixed inverted "renamed from/to" message.
      vc-git.el: Switch to using git-blame instead of git-annotate.

Andy Whitcroft (4):
      send-pack: remove remote reference limit
      send-pack: switch to using git-rev-list --stdin
      svnimport: add support for parsing From: lines for author
      add proper dependancies on the xdiff source

Aneesh Kumar K.V (4):
      gitweb: Support for snapshot
      gitweb: fix snapshot support
      gitweb: Make blame and snapshot a feature.
      gitweb: Fix git_blame

Art Haas (1):
      Patch for http-fetch.c and older curl releases

Christian Couder (9):
      Trace into open fd and refactor tracing code.
      Trace into a file or an open fd and refactor tracing code.
      Update GIT_TRACE documentation.
      Fix memory leak in prepend_to_path (git.c).
      Move add_to_string to "quote.c" and make it extern.
      Fix a memory leak in "connect.c" and die if command too long.
      Fix space in string " false" problem in "trace.c".
      Remove empty ref directories that prevent creating a ref.
      Fix tracing when GIT_TRACE is set to an empty string.

David Rientjes (18):
      blame.c return cleanup
      builtin-grep.c cleanup
      builtin-push.c cleanup
      diff.c cleanup
      http-push.c cleanup
      read-cache.c cleanup
      Make pprint_tag void and cleans up call in cmd_cat_file.
      Make show_entry void
      Make checkout_all void.
      Make fsck_dir void.
      Make pack_objects void.
      Make track_tree_refs void.
      Make upload_pack void and remove conditional return.
      Make sha1flush void and remove conditional return.
      make inline is_null_sha1 global
      use appropriate typedefs
      remove unnecessary initializations
      Do not use memcmp(sha1_1, sha1_2, 20) with hardcoded length.

Dennis Stosberg (12):
      "test" in Solaris' /bin/sh does not support -e
      Makefile fix for Solaris
      Add possibility to pass CFLAGS and LDFLAGS specific to the perl subdir
      Solaris has strlcpy() at least since version 8
      Look for sockaddr_storage in sys/socket.h
      Fix detection of ipv6 on Solaris
      Fix compilation with Sun CC
      gitweb: Use --git-dir parameter instead of setting $ENV{'GIT_DIR'}
      gitweb: Remove forgotten call to git_to_hash
      use do() instead of require() to include configuration
      lock_ref_sha1_basic does not remove empty directories on BSD
      Add default values for --window and --depth to the docs

Dmitry V. Levin (3):
      Make count-objects, describe and merge-tree work in subdirectory
      Documentation: Fix broken links
      Handle invalid argc gently

Eric Wong (13):
      pass DESTDIR to the generated perl/Makefile
      git-svn: establish new connections on commit after fork
      git-svn: recommend rebase for syncing against an SVN repo
      git-svn: add the 'dcommit' command
      git-svn: stop repeatedly reusing the first commit message with dcommit
      git-svn: multi-init saves and reuses --tags and --branches arguments
      git-svn: log command fixes
      Documentation/git-svn: document some of the newer features
      git-svn: -h(elp) message formatting fixes
      commit: fix a segfault when displaying a commit with unreachable parents
      git-svn: add a message encouraging use of SVN::* libraries
      git-svn: fix commits over svn+ssh://
      git-svn: reduce memory usage for large commits

Franck Bui-Huu (11):
      Add a newline before appending "Signed-off-by: " line
      log-tree.c: cleanup a bit append_signoff()
      Add git-archive
      git-archive: wire up TAR format.
      git-archive: wire up ZIP format.
      Add git-upload-archive
      connect.c: finish_connect(): allow null pid parameter
      Test return value of finish_connect()
      upload-archive: monitor child communication even more carefully.
      git-archive: update documentation
      Add git-upload-archive to the main git man page

Haavard Skinnemoen (1):
      git-send-email: Don't set author_not_sender from Cc: lines

Jakub Narebski (139):
      gitweb: whitespace cleanup
      gitweb: Use list for of open for running git commands, thorougly.
      gitweb: simplify git_get_hash_by_path
      gitweb: More explicit error messages for open "-|"
      gitweb: Cleanup - chomp $line in consistent style
      gitweb: Cleanup - chomp @lines in consistent style
      gitweb: Add git_page_nav for later use
      gitweb: Navbar refactoring - use git_page_nav to generate navigation bar
      gitweb: Replace form-feed character by ^L
      gitweb: Show project descriptions with utf-8 characters in project list correctly
      gitweb: Add "\n" after <br/> in git_page_nav
      gitweb: Pager refactoring - use git_get_paging_nav for pagination
      gitweb: Remove $project from git_get_paging_nav arguments
      gitweb: Headers refactoring - use git_header_div for header divs
      gitweb: Remove characters entities entirely when shortening string
      gitweb: Ref refactoring - use git_get_referencing for marking tagged/head commits
      gitweb: Refactor generation of shortlog, tags and heads body
      gitweb: do not quote path for list version of open "-|"
      gitweb: Remove characters entities entirely when shortening string -- correction
      gitweb: Reordering code and dividing it into categories
      gitweb: Refactoring git_project_list
      autoconf: Add support for setting SHELL_PATH and PERL_PATH
      autoconf: Move site configuration section earlier in configure.ac
      autoconf: Add support for setting PYTHON_PATH or NO_PYTHON
      autoconf: Check for ll hh j z t size specifiers introduced by C99
      autoconf: Typo cleanup, reordering etc.
      Copy description of new build configuration variables to configure.ac
      autoconf: Set NEEDS_LIBICONV unconditionally if there is no iconv in libc
      gitweb: Separate input validation and dispatch, add comment about opml action
      gitweb: die_error first (optional) parameter is HTTP status
      gitweb: Use undef for die_error to use default first (status) parameter value
      gitweb: Don't undefine query parameter related variables before die_error
      gitweb: Cleanup and uniquify error messages
      gitweb: No periods for error messages
      gitweb: No error messages with unescaped/unprotected user input
      gitweb: PATH_INFO=/ means no project
      gitweb: Inline $rss_link
      gitweb: Refactor untabifying - converting tabs to spaces
      gitweb: fix commitdiff for root commits
      gitweb: Skip nonmatching lines in difftree output, consistently
      autoconf: Unset NO_STH and NEED_STH when it is detected not needed
      gitweb: Remove unused variables in git_shortlog_body and git_heads
      autoconf: Add configure target to main Makefile
      autoconf: Error out on --without-shell and --without-perl
      autoconf: Improvements in NO_PYTHON/PYTHON_PATH handling
      autoconf: Move variables which we always set to config.mak.in
      autoconf: It is --without-python, not --no-python
      autoconf: Add support for setting CURLDIR, OPENSSLDIR, EXPATDIR
      gitweb: Whitespace cleanup - tabs are for indent, spaces are for align
      gitweb: Great subroutines renaming
      gitweb: Separate ref parsing in git_get_refs_list into parse_ref
      gitweb: Refactor printing shortened title in git_shortlog_body and git_tags_body
      gitweb: Separate main part of git_history into git_history_body
      gitweb: Separate finding project owner into git_get_project_owner
      gitweb: Change appereance of marker of refs pointing to given object
      gitweb: Skip comments in mime.types like file
      gitweb: True fix: Support for the standard mime.types map in gitweb
      gitweb: Separate printing difftree in git_commit into git_difftree_body
      gitweb: Show project's git URL on summary page
      gitweb: Add support for per project git URLs
      gitweb: Uniquify version info output, add meta generator in page header
      gitweb: Refactor printing commit message
      gitweb: Added parse_difftree_raw_line function for later use
      gitweb: Use parse_difftree_raw_line in git_difftree_body
      gitweb: bugfix: a.list formatting regression
      gitweb: Replace some presentational HTML by CSS
      gitweb: Whitespace cleanup: realign, reindent
      gitweb: Use underscore instead of hyphen to separate words in HTTP headers names
      gitweb: Route rest of action subroutines through %actions
      gitweb: Use here-doc
      gitweb: Drop the href() params which keys are not in %mapping
      gitweb: Sort CGI parameters returned by href()
      gitweb: Use git-diff-tree patch output for commitdiff
      gitweb: Show information about incomplete lines in commitdiff
      gitweb: Remove invalid comment in format_diff_line
      gitweb: Streamify patch output in git_commitdiff
      gitweb: Add git_get_{following,preceding}_references functions
      gitweb: Faster return from git_get_preceding_references if possible
      gitweb: Add git_get_rev_name_tags function
      gitweb: Use git_get_name_rev_tags for commitdiff_plain X-Git-Tag: header
      gitweb: Add support for hash_parent_base parameter for blobdiffs
      gitweb: Allow for pre-parsed difftree info in git_patchset_body
      gitweb: Parse two-line from-file/to-file diff header in git_patchset_body
      gitweb: Add invisible hyperlink to from-file/to-file diff header
      gitweb: Always display link to blobdiff_plain in git_blobdiff
      gitweb: Change here-doc back for style consistency in git_blobdiff
      gitweb: Use git-diff-tree or git-diff patch output for blobdiff
      gitweb: git_blobdiff_plain is git_blobdiff('plain')
      gitweb: Remove git_diff_print subroutine
      gitweb: Remove creating directory for temporary files
      gitweb: git_annotate didn't expect negative numeric timezone
      gitweb: Remove workaround for git-diff bug fixed in f82cd3c
      gitweb: Improve comments about gitweb features configuration
      gitweb: blobs defined by non-textual hash ids can be cached
      gitweb: Fix typo in git_difftree_body
      gitweb: Fix typo in git_patchset_body
      gitweb: Remove unused git_get_{preceding,following}_references
      gitweb: Remove git_to_hash function
      gitweb: Use @diff_opts, default ('M'), as git-diff and git-diff-tree paramete
      gitweb: Make git_print_log generic; git_print_simplified_log uses it
      gitweb: Do not remove signoff lines in git_print_simplified_log
      gitweb: Add author information to commitdiff view
      gitweb: git_print_log: signoff line is non-empty line
      gitweb: Add diff tree, with links to patches, to commitdiff view
      gitweb: Add local time and timezone to git_print_authorship
      gitweb: Move git-ls-tree output parsing to parse_ls_tree_line
      gitweb: Separate printing of git_tree row into git_print_tree_entry
      gitweb: Extend parse_difftree_raw_line to save commit info
      gitweb: Change the name of diff to parent link in "commit" view to "diff
      gitweb: Add GIT favicon, assuming image/png type
      gitweb: Correct typo: '==' instead of 'eq' in git_difftree_body
      gitweb: Divide page path into directories -- path's "breadcrumbs"
      autoconf: Add -liconv to LIBS when NEEDS_LIBICONV
      autoconf: Check for subprocess.py
      autoconf: Quote AC_CACHE_CHECK arguments
      autoconf: Fix copy'n'paste error
      autoconf: Set NO_ICONV if iconv is found neither in libc, nor in libiconv
      autoconf: Add support for setting NO_ICONV and ICONVDIR
      autoconf: Add config.cache to .gitignore
      gitweb: Make pickaxe search a feature
      gitweb: Paginate history output
      gitweb: Use File::Find::find in git_get_projects_list
      gitweb: Do not parse refs by hand, use git-peek-remote instead
      gitweb: Add git_project_index for generating index.aux
      gitweb: Allow for href() to be used for links without project param
      gitweb: Add link to "project_index" view to "project_list" page
      gitweb: Fix mimetype_guess_file for files with multiple extensions
      gitweb: Even more support for PATH_INFO based URLs
      gitweb: Require project for almost all actions
      gitweb: Always use git-peek-remote in git_get_references
      gitweb: Make git_get_refs_list do work of git_get_references
      gitweb: Fix thinko in git_tags and git_heads
      gitweb: Make git_get_hash_by_path check type if provided
      gitweb: Strip trailing slashes from $path in git_get_hash_by_path
      gitweb: Use "return" instead of "return undef" for some subs
      gitweb: Split validate_input into validate_pathname and validate_refname
      gitweb: Add git_url subroutine, and use it to quote full URLs
      gitweb: Quote filename in HTTP Content-Disposition: header
      gitweb: Cleanup Git logo and Git logo target generation

Jeff King (9):
      gitweb: optionally read config from GITWEB_CONFIG
      diff: support custom callbacks for output
      Move color option parsing out of diff.c and into color.[ch]
      git-commit.sh: convert run_status to a C builtin
      git-status: document colorization config options
      contrib/vim: add syntax highlighting file for commits
      wt-status: remove extraneous newline from 'deleted:' output
      rev-list: fix segfault with --{author,committer,grep}
      git-repack: allow git-repack to run in subdirectory

Johannes Schindelin (38):
      Git.xs: older perl do not know const char *
      Status update on merge-recursive in C
      Cumulative update of merge-recursive in C
      merge-recur: Convert variable names to lower_case
      merge-recur: Get rid of debug code
      merge-recur: Remove dead code
      merge-recur: Fix compiler warning with -pedantic
      merge-recur: Cleanup last mixedCase variables...
      merge-recur: Explain why sha_eq() and struct stage_data cannot go
      merge-recur: fix thinko in unique_path()
      read-trees: refactor the unpack_trees() part
      read-tree: move merge functions to the library
      merge-recur: use the unpack_trees() interface instead of exec()ing read-tree
      merge-recur: virtual commits shall never be parsed
      merge-recursive: fix rename handling
      http-push: avoid fork() by calling merge_bases() directly
      merge-recur: do not call git-write-tree
      merge-recur: do not setenv("GIT_INDEX_FILE")
      merge-recur: if there is no common ancestor, fake empty one
      merge-recur: try to merge older merge bases first
      merge-recur: do not die unnecessarily
      discard_cache(): discard index, even if no file was mmap()ed
      Add the --color-words option to the diff options family
      builtin-mv: readability patch
      unpack-objects: remove unused variable "eof"
      Makefile: fix typo
      Remove uneeded #include
      fmt-merge-msg: fix off-by-one bug
      Teach runstatus about --untracked
      add receive.denyNonFastforwards config variable
      receive-pack: plug memory leak in fast-forward checking code.
      Document receive.denyNonFastforwards
      runstatus: do not recurse into subdirectories if not needed
      daemon: default to 256 for HOST_NAME_MAX if it is not defined
      diff --stat: ensure at least one '-' for deletions, and one '+' for additions
      diff: fix 2 whitespace issues
      cvsserver: Show correct letters for modified, removed and added files
      cvsserver: fix "cvs diff" in a subdirectory

Jon Loeliger (3):
      Add virtualization support to git-daemon
      Cleaned up git-daemon virtual hosting support.
      Removed memory leaks from interpolation table uses.

Jonas Fonseca (21):
      git-apply(1): document missing options and improve existing ones
      git-ls-remote(1): document --upload-pack
      git-blame(1): mention options in the synopsis and advertise pickaxe
      gitk(1): expand the manpage to look less like a template
      git(7): put the synopsis in a verse style paragraph
      gitview.txt: improve asciidoc markup
      git-svn(1): improve asciidoc markup
      describe: fix off-by-one error in --abbrev=40 handling
      Use PATH_MAX instead of MAXPATHLEN
      Use xrealloc instead of realloc
      Use fstat instead of fseek
      Use xcalloc instead of calloc
      Add --relative-date option to the revision interface
      git(7): move gitk(1) to the list of porcelain commands
      Use xmalloc instead of malloc
      Include config.mak.autogen in the doc Makefile
      git-rev-list(1): group options; reformat; document more options
      git-apply(1): document --unidiff-zero
      git-repack(1): document --window and --depth
      Fix trivial typos and inconsistencies in hooks documentation
      gitk(1): mention --all

Junio C Hamano (139):
      Perl interface: add build-time configuration to allow building with -fPIC
      Perl interface: make testsuite work again.
      perl: fix make clean
      Git.pm: tentative fix to test the freshly built Git.pm
      Perly Git: arrange include path settings properly.
      Makefile: Set USE_PIC on x86-64
      Perly git: work around buggy make implementations.
      Git.pm: clean generated files.
      Perly Git: make sure we do test the freshly built one.
      INSTALL: a tip for running after building but without installing.
      Work around sed and make interactions on the backslash at the end of line.
      upload-pack: use object pointer not copy of sha1 to keep track of has/needs.
      upload-pack: lift MAX_NEEDS and MAX_HAS limitation
      recur vs recursive: help testing without touching too many stuff.
      sha1_file.c: expose map_sha1_file() interface.
      pack-objects: reuse deflated data from new-style loose objects.
      unpack-objects: read configuration data upon startup.
      Makefile: git-merge-recur depends on xdiff libraries.
      gitweb: There can be more than two levels of subdirectories
      gitweb: an obvious cut and paste error.
      gitweb: fix use of uninitialized value.
      gitweb: when showing history of a tree, show tree link not blob
      gitweb: avoid undefined value warning in print_page_path
      gitweb/README: do not bug Kay with gitweb questions anymore
      Makefile: gitweb/gitweb.cgi is now generated.
      gitweb: do not use @@FOO@@ for replaced tokens
      .gitignore: git-merge-recur is a built file.
      Make git-checkout-index a builtin
      builtins: Makefile clean-up
      git.c: Rename NEEDS_PREFIX to RUN_SETUP
      autoconf: fix NEEDS_SSL_WITH_CRYPTO
      autoconf: NO_IPV6
      Racy git: avoid having to be always too careful
      read-cache: tweak racy-git delay logic
      autoconf: clean temporary file mak.append
      git-grep: show pathnames relative to the current directory
      upload-pack: minor clean-up in multi-ack logic
      Fix type of combine-diff.c::show_patch_diff()
      Remove combine-diff.c::uninteresting()
      t4116 apply --reverse test
      git-apply --reverse: simplify reverse option.
      git-apply --binary: clean up and prepare for --reverse
      avoid nanosleep(2)
      Documentation/technical/racy-git.txt
      Add check program "git-check-racy"
      Remove the "delay writing to avoid runtime penalty of racy-git avoidance"
      builtin-grep: remove unused debugging cruft.
      builtin-apply --reverse: two bugfixes.
      diff.c: make binary patch reversible.
      apply --reverse: tie it all together.
      git-apply --reject
      git-apply --reject: send rejects to .rej files.
      git-apply --verbose
      apply --reject: count hunks starting from 1, not 0
      Convert memset(hash,0,20) to hashclr(hash).
      hashcpy/hashcmp remaining bits.
      builtin-grep.c: remove unused debugging piece.
      update-index -g
      git-apply --reject: finishing touches.
      free(NULL) is perfectly valid.
      daemon: prepare for multiple services.
      daemon: add upload-tar service.
      multi-service daemon: documentation
      t5710: fix two thinkos.
      Constness tightening for move/link_temp_to_file()
      consolidate two copies of new style object header parsing code.
      pack-objects: re-validate data we copy from elsewhere.
      Revert "Convert git-annotate to use Git.pm"
      Revert "Git.pm: Introduce fast get_object() method"
      Revert "Make it possible to set up libgit directly (instead of from the environment)"
      pack-objects: fix thinko in revalidate code
      more lightweight revalidation while reusing deflated stream in packing
      unpack-objects desperately salvages objects from a corrupt pack
      revision.c: allow injecting revision parameters after setup_revisions().
      Teach rev-list an option to read revs from the standard input.
      Revert "daemon: add upload-tar service."
      Make apply --binary a no-op.
      diff --binary generates full index on binary files.
      Separate object listing routines out of rev-list
      pack-objects: run rev-list equivalent internally.
      pack-objects: further work on internal rev-list logic.
      pack-objects --unpacked=<existing pack> option.
      get_sha1_hex() micro-optimization
      archive: allow remote to have more formats than we understand.
      Move sideband client side support into reusable form.
      Move sideband server side support into reusable form.
      archive: force line buffered output to stderr
      Add --verbose to git-archive
      Teach --exec to git-archive --remote
      Prepare larger packet buffer for upload-pack protocol.
      Add sideband status report to git-archive protocol
      upload-archive: monitor child communication more carefully.
      builtin-archive.c: rename remote_request() to extract_remote_arg()
      pack-objects: document --revs, --unpacked and --all.
      http-fetch: fix alternates handling.
      unpack-objects -r: call it "recover".
      Document git-grep -[Hh]
      Define fallback PATH_MAX on systems that do not define one in <limits.h>
      Fix git-am safety checks
      http-fetch.c: consolidate code to detect missing fetch target
      Add ftp:// protocol support for git-http-fetch
      t1400: make test debuggable.
      apply --unidiff-zero: loosen sanity checks for --unidiff=0 patches
      builtin-grep: make pieces of it available as library.
      revision traversal: prepare for commit log match.
      revision traversal: --author, --committer, and --grep.
      repack: use only pack-objects, not rev-list.
      Update grep internal for grepping only in head/body
      git log: Unify header_filter and message_filter into one.
      Make hexval() available to others.
      sha1_name.c: understand "describe" output as a valid object name
      diff.c: second war on whitespace.
      git-apply: second war on whitespace.
      Add t5510 to test per branch configuration affecting git-fetch.
      Remove upload-tar and make git-tar-tree a thin wrapper to git-archive
      Deprecate merge-recursive.py
      diff --stat: allow custom diffstat output width.
      diff --stat: color output.
      An illustration of rev-list --parents --pretty=raw
      grep: free expressions and patterns when done.
      grep: fix --fixed-strings combined with expression.
      Contributed bash completion support for core Git tools.
      git-diff -B output fix.
      Remove -fPIC which was only needed for Git.xs
      GIT 1.4.3-rc1
      Makefile: install and clean merge-recur, still.
      escape tilde in Documentation/git-rev-parse.txt
      tar-tree deprecation: we eat our own dog food.
      gitweb: Make the Git logo link target to point to the homepage
      git-send-email: avoid uninitialized variable warning.
      cherry-pick: make -r the default
      Add WEBDAV timeout to http-fetch.
      Fix git-revert
      git-fetch --update-head-ok typofix
      git-pull: we say commit X, not X commit.
      git.spec.in: perl subpackage is installed in perl_vendorlib not vendorarch
      apply --numstat -z: line termination fix.
      t4015: work-around here document problem on Cygwin.
      Revert "move pack creation to version 3"

Linus Torvalds (10):
      Relative timestamps in git log
      git-fsck-objects: lacking default references should not be fatal
      Fix git-fsck-objects SIGSEGV/divide-by-zero
      Add "-h/-H" parsing to "git grep"
      Allow multiple "git_path()" uses
      git-log --author and --committer are not left-anchored by default
      Clean up approxidate() in preparation for fixes
      Fix approxidate() to understand more extended numbers
      diff --stat=width[,name-width]: allow custom diffstat output width.
      Fix approxidate() to understand 12:34 AM/PM are 00:34 and 12:34

Liu Yubao (1):
      Fix duplicate xmalloc in builtin-add

Luben Tuikov (22):
      gitweb: git_tree displays blame based on repository config
      gitweb: bugfix: git_commit and git_commitdiff parents
      gitweb: blame table row no highlight fix
      gitweb: bugfix: commitdiff regression
      gitweb: bugfix: git_print_page_path() needs the hash base
      gitweb: tree view: eliminate redundant "blob"
      gitweb: Remove redundant "tree" link
      gitweb: extend blame to show links to diff and previous
      Revert "gitweb: extend blame to show links to diff and previous"
      gitweb: Remove excessively redundant entries from git_difftree_body
      gitweb: Add history and blame to git_difftree_body()
      gitweb: "alternate" starts with shade (i.e. 1)
      gitweb: Remove redundant "commit" link from shortlog
      gitweb: Factor out gitweb_have_snapshot()
      gitweb: Add snapshot to shortlog
      gitweb: Don't use quotemeta on internally generated strings
      gitweb: Remove redundant "commit" from history
      gitweb: History: blob and tree are first, then commitdiff, etc
      gitweb: tree view: hash_base and hash are now context sensitive
      gitweb: Escape ESCAPE (\e) character
      gitweb: Do not print "log" and "shortlog" redundantly in commit view
      gitweb: blame: Minimize vertical table row padding

Markus Amsler (1):
      git-imap-send: Strip smtp From_ header from imap message.

Martin Langhoff (1):
      git-repack: create new packs inside $GIT_DIR, not cwd

Martin Waitz (16):
      gitweb: fill in gitweb configuration by Makefile
      gitweb: use out-of-line GIT logo.
      gitweb: provide function to format the URL for an action link.
      gitweb: consolidate action URL generation.
      gitweb: continue consolidation of URL generation.
      gitweb: support for "fp" parameter.
      gitweb: support for / as home_link.
      gitweb: fix project list if PATH_INFO=="/".
      gitweb: more support for PATH_INFO based URLs
      gitweb: fix uninitialized variable warning.
      gitweb: fix display of trees via PATH_INFO.
      gitweb: document webserver configuration for common gitweb/repo URLs.
      git-commit: cleanup unused function.
      git-commit: fix coding style.
      test-lib: separate individual test better in verbose mode.
      paginate git-diff by default

Matthias Kestenholz (6):
      Make git-name-rev a builtin
      Make git-pack-objects a builtin
      Make git-unpack-objects a builtin
      Make git-symbolic-ref a builtin
      Add gitweb.cgi to .gitignore
      Check if pack directory exists prior to descending into it

Matthias Lederhofer (12):
      pager: environment variable GIT_PAGER to override PAGER
      gitweb: use a hash to lookup the sub for an action
      gitweb: require $ENV{'GITWEB_CONFIG'}
      gitweb: check if HTTP_ACCEPT is really set
      gitweb: fix commitdiff_plain for root commits
      gitweb: fix $project usage
      gitweb: do not use 'No such directory' error message
      gitweb: export options
      gitweb: fix warnings in PATH_INFO code and add export_ok/strict_export
      gitweb fix validating pg (page) parameter
      format-patch: use cwd as default output directory
      git-format-patch: fix bug using -o in subdirectories

Nicolas Pitre (4):
      move pack creation to version 3
      many cleanups to sha1_file.c
      add commit count options to git-shortlog
      atomic write for sideband remote messages

Paul Mackerras (10):
      gitk: Minor cleanups
      gitk: Recompute ancestor/descendent heads/tags when rereading refs
      gitk: Add a row context-menu item for creating a new branch
      gitk: Add a context menu for heads
      gitk: Fix a couple of buglets in the branch head menu items
      gitk: Add a menu item for cherry-picking commits
      gitk: Update preceding/following tag info when creating a tag
      gitk: Improve responsiveness while reading and layout out the graph
      gitk: Fix some bugs in the new cherry-picking code
      diff-index --cc shows a 3-way diff between HEAD, index and working tree.

Pavel Roskin (3):
      Fix probing for already installed Error.pm
      Delete manuals if compiling without docs
      Make perl interface a separate package

Petr Baudis (48):
      Introduce Git.pm (v4)
      Git.pm: Implement Git::exec_path()
      Git.pm: Call external commands using execv_git_cmd()
      Git.pm: Implement Git::version()
      Add Error.pm to the distribution
      Git.pm: Better error handling
      Git.pm: Handle failed commands' output
      Git.pm: Enhance the command_pipe() mechanism
      Git.pm: Implement options for the command interface
      Git.pm: Add support for subdirectories inside of working copies
      Convert git-mv to use Git.pm
      Git.pm: assorted build related fixes.
      Git.pm: Try to support ActiveState output pipe
      Git.pm: Swap hash_object() parameters
      Git.pm: Fix Git->repository("/somewhere/totally/elsewhere")
      Git.pm: Support for perl/ being built by a different compiler
      Git.pm: Remove PerlIO usage from Git.xs
      Git.pm: Avoid ppport.h
      Git.pm: Don't #define around die
      Use $GITPERLLIB instead of $RUNNING_GIT_TESTS and centralize @INC munging
      Git.pm: Add config() method
      Convert git-send-email to use Git.pm
      Git.pm: Introduce ident() and ident_person() methods
      Make it possible to set up libgit directly (instead of from the environment)
      Git.pm: Introduce fast get_object() method
      Convert git-annotate to use Git.pm
      Eliminate Scalar::Util usage from private-Error.pm
      Fix showing of path in tree view
      gitweb: Link (HEAD) tree for each project from projects list
      gitweb: More per-view navigation bar links
      gitweb: Link to tree instead of snapshot in shortlog
      gitweb: Link to latest tree from the head line in heads list
      gitweb: Link to associated tree from a particular log item in full log view
      gitweb: Rename "plain" labels to "raw"
      gitweb: Relabel "head" as "HEAD"
      Make path in tree view look nicer
      gitweb: Fix tree link associated with each commit log entry.
      gitweb: Fix @git_base_url_list usage
      Fix snapshot link in tree view
      Git.pm: Kill Git.xs for now
      Deprecate git-resolve.sh
      gitweb: Consolidate escaping/validation of query string
      gitweb: fix over-eager application of esc_html().
      Show snapshot link in shortlog only if have_snapsho
      gitweb: Separate (new) and (deleted) in commitdiff by a space
      gitweb: Handle commits with empty commit messages more reasonably
      gitweb: [commit view] Do not suppress commitdiff link in root commit
      svnimport: Fix broken tags being generated

Pierre Habouzit (7):
      Fix a comparison bug in diff-delta.c
      avoid to use error that shadows the function name, use err instead.
      git_dir holds pointers to local strings, hence MUST be const.
      missing 'static' keywords
      remove ugly shadowing of loop indexes in subloops.
      use name[len] in switch directly, instead of creating a shadowed variable.
      n is in fact unused, and is later shadowed.

Randal L. Schwartz (1):
      builtin-upload-archive.c broken on openbsd

Rene Scharfe (21):
      git-verify-pack: make builtin
      Axe the last ent
      Add write_or_die(), a helper function
      Add git-zip-tree
      git-cherry: remove unused variable
      git-reset: remove unused variable
      Add git-zip-tree to .gitignore
      git-archive: make compression level of ZIP archives configurable
      Use xstrdup instead of strdup in builtin-{tar,zip}-tree.c
      git-archive: inline default_parse_extra()
      git-tar-tree: devolve git-tar-tree into a wrapper for git-archive
      Remove git-zip-tree
      Rename builtin-zip-tree.c to archive-zip.c
      git-tar-tree: Remove duplicate git_config() call
      git-tar-tree: Move code for git-archive --format=tar to archive-tar.c
      git-tar-tree: don't RUN_SETUP
      Documentation: add missing second colons and remove a typo
      Add hash_sha1_file()
      Make write_sha1_file_prepare() static
      Make write_sha1_file_prepare() void
      Replace open-coded version of hash_sha1_file()

Robin Rosenberg (3):
      Quote arguments to tr in test-lib
      Make cvsexportcommit remove files.
      Error in test description of t1200-tutorial

Santi Béjar (4):
      Fetch: default remote repository from branch properties
      fetch: get the remote branches to merge from the branch properties
      Add test for the default merges in fetch.
      fetch: Reset remote refs list each time fetch_main is called

Sasha Khapyorsky (3):
      Trivial support for cloning and fetching via ftp://.
      git-svnimport: Parse log message for Signed-off-by: lines
      http/ftp: optionally ask curl to not use EPSV command

Sergey Vlasov (2):
      Documentation: Fix howto/revert-branch-rebase.html generation
      git-svn: Fix fetch --no-ignore-externals with GIT_SVN_NO_LIB=1

Shawn Pearce (15):
      Verify we know how to read a pack before trying to using it.
      Remove unnecessary forward declaration of unpack_entry.
      Convert memcpy(a,b,20) to hashcpy(a,b).
      Convert memcpy(a,b,20) to hashcpy(a,b).
      Reorganize/rename unpack_non_delta_entry to unpack_compressed_entry.
      Reuse compression code in unpack_compressed_entry.
      Cleanup unpack_entry_gently and friends to use type_name array.
      Cleanup unpack_object_header to use only offsets.
      Convert unpack_entry_gently and friends to use offsets.
      Replace uses of strdup with xstrdup.
      Allow 'svn fetch' on '(no date)' revisions in Subversion.
      Allow '(no author)' in git-svn's authors file.
      Ignore executable bit when adding files if filemode=0.
      Allow git-checkout when on a non-existant branch.
      Corrected copy-and-paste thinko in ignore executable bit test case.

Tilman Sauerbeck (2):
      Indentation fix.
      Added support for dropping privileges to git-daemon.

Timo Hirvonen (2):
      --name-only, --name-status, --check and -s are mutually exclusive
      Remove awkward compatibility warts

Ville Skyttä (1):
      Be nicer if git executable is not installed

Yasushi SHOJI (4):
      gitweb: configurable home link string
      gitweb: Decode long title for link tooltips
      gitweb: refactor decode() for utf8 conversion
      clone: the given repository dir should be relative to $PWD

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-18 23:53 [ANNOUNCE] GIT 1.4.3 Junio C Hamano
@ 2006-10-20 12:31 ` Horst H. von Brand
  2006-10-20 13:26 ` Peter Eriksen
  2006-10-20 23:35 ` Junio C Hamano
  2 siblings, 0 replies; 24+ messages in thread
From: Horst H. von Brand @ 2006-10-20 12:31 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, linux-kernel

Junio C Hamano <junkio@cox.net> wrote:
> The latest feature release GIT 1.4.3 is available at the usual
> places:

[...]

>  rename builtin-cat-file.c => builtin-cat-file.c (0%)

Huh?!
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                    Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria             +56 32 2654239
Casilla 110-V, Valparaiso, Chile               Fax:  +56 32 2797513

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-18 23:53 [ANNOUNCE] GIT 1.4.3 Junio C Hamano
  2006-10-20 12:31 ` Horst H. von Brand
@ 2006-10-20 13:26 ` Peter Eriksen
  2006-10-20 23:35 ` Junio C Hamano
  2 siblings, 0 replies; 24+ messages in thread
From: Peter Eriksen @ 2006-10-20 13:26 UTC (permalink / raw)
  To: git; +Cc: linux-kernel

Junio C Hamano <junkio@cox.net> writes:

> The latest feature release GIT 1.4.3 is available at the usual
> places:
...
> ----------------------------------------------------------------
> 
>  .gitignore                                         |   10 +-
>  Documentation/Makefile                             |    4 +-
>  Documentation/asciidoc.conf                        |    1 +
>  Documentation/config.txt                           |   34 +
...
>  rename contrib/gitview/{gitview.txt => gitview.txt} (74%)

How does it come to the result, that this is a rename?

Peter

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-18 23:53 [ANNOUNCE] GIT 1.4.3 Junio C Hamano
  2006-10-20 12:31 ` Horst H. von Brand
  2006-10-20 13:26 ` Peter Eriksen
@ 2006-10-20 23:35 ` Junio C Hamano
  2006-10-21  0:14   ` Linus Torvalds
                     ` (2 more replies)
  2 siblings, 3 replies; 24+ messages in thread
From: Junio C Hamano @ 2006-10-20 23:35 UTC (permalink / raw)
  To: git; +Cc: linux-kernel

Junio C Hamano <junkio@cox.net> writes:

>  - git-diff paginates its output to the tty by default.  If this
>    irritates you, using LESS=RF might help.

I am considering the following to address irritation some people
(including me, actually) are experiencing with this change when
viewing a small (or no) diff.  Any objections?

diff --git a/pager.c b/pager.c
index dcb398d..8bd33a1 100644
--- a/pager.c
+++ b/pager.c
@@ -50,7 +50,7 @@ void setup_pager(void)
 	close(fd[0]);
 	close(fd[1]);
 
-	setenv("LESS", "-RS", 0);
+	setenv("LESS", "FRS", 0);
 	run_pager(pager);
 	die("unable to execute pager '%s'", pager);
 	exit(255);

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-20 23:35 ` Junio C Hamano
@ 2006-10-21  0:14   ` Linus Torvalds
  2006-10-21  0:22     ` Petr Baudis
  2006-10-21  2:12     ` Al Viro
  2006-10-21  0:47   ` Nicolas Pitre
  2006-10-23  0:53   ` prune/prune-packed J. Bruce Fields
  2 siblings, 2 replies; 24+ messages in thread
From: Linus Torvalds @ 2006-10-21  0:14 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, linux-kernel



On Fri, 20 Oct 2006, Junio C Hamano wrote:
> 
> I am considering the following to address irritation some people
> (including me, actually) are experiencing with this change when
> viewing a small (or no) diff.  Any objections?

Not from me. I use "git diff" just to check that the tree is empty, and 
the fact that it now throws me into an empty pager is irritating.

That said, "LESS=FRS" doesn't really help that much. It still clears the 
screen. Using "LESS=FRSX" fixes that, but the alternate display sequence 
is actually nice _if_ the pager is used.

Still, I think I'd prefer FRSX as the default.

		Linus

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-21  0:14   ` Linus Torvalds
@ 2006-10-21  0:22     ` Petr Baudis
  2006-10-21  0:31       ` Linus Torvalds
                         ` (2 more replies)
  2006-10-21  2:12     ` Al Viro
  1 sibling, 3 replies; 24+ messages in thread
From: Petr Baudis @ 2006-10-21  0:22 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Junio C Hamano, git, linux-kernel

> That said, "LESS=FRS" doesn't really help that much. It still clears the 
> screen. Using "LESS=FRSX" fixes that, but the alternate display sequence 
> is actually nice _if_ the pager is used.

Hmm, what terminal emulator do you use? The reasonable ones should
restore the original screen. At least xterm does, and I *think*
gnome-terminal does too (although I'm too lazy to boot up my notebook
and confirm).

(I personally consider alternate screen an abomination. It would be so
nice if the terminal emulators would just make it optional.)

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
#!/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj
$/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1
lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-21  0:22     ` Petr Baudis
@ 2006-10-21  0:31       ` Linus Torvalds
  2006-10-21  9:53       ` Andreas Schwab
  2006-10-22 21:09       ` Anders Larsen
  2 siblings, 0 replies; 24+ messages in thread
From: Linus Torvalds @ 2006-10-21  0:31 UTC (permalink / raw)
  To: Petr Baudis; +Cc: Junio C Hamano, git, linux-kernel



On Sat, 21 Oct 2006, Petr Baudis wrote:
>
> > That said, "LESS=FRS" doesn't really help that much. It still clears the 
> > screen. Using "LESS=FRSX" fixes that, but the alternate display sequence 
> > is actually nice _if_ the pager is used.
> 
> Hmm, what terminal emulator do you use? The reasonable ones should
> restore the original screen. At least xterm does, and I *think*
> gnome-terminal does too (although I'm too lazy to boot up my notebook
> and confirm).

Not xterm, at least.

Not gnome-terminal either, for that matter.

I just tried.

	LESS=FRS git diff

clears the screen and leaves the thing at the end.

	LESS=FRSX git diff

works fine, but for people who _like_ the alternate screens (and I do, 
once I really use a pager) it also disables the alternate screen.

It might depend on the termcap, of course. I'm running FC5.

		Linus

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-20 23:35 ` Junio C Hamano
  2006-10-21  0:14   ` Linus Torvalds
@ 2006-10-21  0:47   ` Nicolas Pitre
  2006-10-23  0:53   ` prune/prune-packed J. Bruce Fields
  2 siblings, 0 replies; 24+ messages in thread
From: Nicolas Pitre @ 2006-10-21  0:47 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, linux-kernel

On Fri, 20 Oct 2006, Junio C Hamano wrote:

> Junio C Hamano <junkio@cox.net> writes:
> 
> >  - git-diff paginates its output to the tty by default.  If this
> >    irritates you, using LESS=RF might help.
> 
> I am considering the following to address irritation some people
> (including me, actually) are experiencing with this change when
> viewing a small (or no) diff.  Any objections?

I think this is an excellent idea.


Nicolas

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-21  0:14   ` Linus Torvalds
  2006-10-21  0:22     ` Petr Baudis
@ 2006-10-21  2:12     ` Al Viro
  2006-10-21  5:29       ` Junio C Hamano
  2006-10-21 14:29       ` Rene Scharfe
  1 sibling, 2 replies; 24+ messages in thread
From: Al Viro @ 2006-10-21  2:12 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Junio C Hamano, git, linux-kernel

On Fri, Oct 20, 2006 at 05:14:39PM -0700, Linus Torvalds wrote:
> 
> 
> On Fri, 20 Oct 2006, Junio C Hamano wrote:
> > 
> > I am considering the following to address irritation some people
> > (including me, actually) are experiencing with this change when
> > viewing a small (or no) diff.  Any objections?
> 
> Not from me. I use "git diff" just to check that the tree is empty, and 
> the fact that it now throws me into an empty pager is irritating.

Speaking of irritations...  There is a major (and AFAICS fixable)
suckitude in git-cherry.  Basically, what it does is
	* use git-rev-list to find commits on our branches
	* do git-diff-tree -p for each commit
	* do git-patch-id on each delta
	* compare sets.
For one thing, there are better ways to do set comparison than creating
a file for each element in one set and going through another checking
if corresponding files exist (join(1) and sort(1) or just use perl hashes).
That one is annoying on journalling filesystems (a lot of files being
created, read and removed - fsckloads of disk traffic), but it's actually
not the worst problem.

Far more annoying is that we keep recalculating git-diff-tree -p | git-patch-id
again and again; try to do git cherry on a dozen short branches forked at
2.6.18 and you'll see the damn thing recalculated a dozen of times for
each commit from 2.6.18 to current.  It's not cheap, to put it mildly.

git-rev-list ^v2.6.18 HEAD|while read i; do git-diff-tree -p $i; done |git-patch-id >/dev/null

out of hot cache on 2GHz amd64 box (Athlon 64 3400+) takes 3 minutes of
wall time.  Repeat that for each branch and it's starting to get old very
fast.

Note that we are calculating a function of commit; it _never_ changes.
Even if we don't just calculate and memorize it at commit time, a cache
somewhere under .git would speed the things up a lot...

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-21  2:12     ` Al Viro
@ 2006-10-21  5:29       ` Junio C Hamano
  2006-10-21  5:40         ` Al Viro
  2006-10-21 14:29       ` Rene Scharfe
  1 sibling, 1 reply; 24+ messages in thread
From: Junio C Hamano @ 2006-10-21  5:29 UTC (permalink / raw)
  To: Al Viro; +Cc: git

Al Viro <viro@ftp.linux.org.uk> writes:

> Speaking of irritations...  There is a major (and AFAICS fixable)
> suckitude in git-cherry.  Basically, what it does is...

Yeah, that sucks big time.  I never realized there are people
who still are using it, though. git-format-patch used to use it,
but the version was retired exactly five months ago, and there
is no in-tree users anymore.

I guess we could separate out the revision filtering logic in
builtin-log.c:cmd_format_patch() and implement git-cherry as a
new built-in.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-21  5:29       ` Junio C Hamano
@ 2006-10-21  5:40         ` Al Viro
  0 siblings, 0 replies; 24+ messages in thread
From: Al Viro @ 2006-10-21  5:40 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

On Fri, Oct 20, 2006 at 10:29:37PM -0700, Junio C Hamano wrote:
> Al Viro <viro@ftp.linux.org.uk> writes:
> 
> > Speaking of irritations...  There is a major (and AFAICS fixable)
> > suckitude in git-cherry.  Basically, what it does is...
> 
> Yeah, that sucks big time.  I never realized there are people
> who still are using it, though. git-format-patch used to use it,
> but the version was retired exactly five months ago, and there
> is no in-tree users anymore.

Huh?  If you have a saner way to do reordering/changeset-by-changeset
rebasing of branches...  git-cherry followed by selective cherry-pick
works and is much more convenient than messing with implementing what
I need via git-am and shitloads of editing...

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-21  0:22     ` Petr Baudis
  2006-10-21  0:31       ` Linus Torvalds
@ 2006-10-21  9:53       ` Andreas Schwab
  2006-10-22 21:09       ` Anders Larsen
  2 siblings, 0 replies; 24+ messages in thread
From: Andreas Schwab @ 2006-10-21  9:53 UTC (permalink / raw)
  To: Petr Baudis; +Cc: Linus Torvalds, Junio C Hamano, git, linux-kernel

Petr Baudis <pasky@suse.cz> writes:

> (I personally consider alternate screen an abomination. It would be so
> nice if the terminal emulators would just make it optional.)

$ xterm -rm "*titeInhibit: true"

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-21  2:12     ` Al Viro
  2006-10-21  5:29       ` Junio C Hamano
@ 2006-10-21 14:29       ` Rene Scharfe
  1 sibling, 0 replies; 24+ messages in thread
From: Rene Scharfe @ 2006-10-21 14:29 UTC (permalink / raw)
  To: Al Viro; +Cc: Linus Torvalds, Junio C Hamano, git

Al Viro schrieb:
> Speaking of irritations...  There is a major (and AFAICS fixable)
> suckitude in git-cherry.

[...]

> For one thing, there are better ways to do set comparison than creating
> a file for each element in one set and going through another checking
> if corresponding files exist (join(1) and sort(1) or just use perl hashes).

[...]

> Note that we are calculating a function of commit; it _never_ changes.
> Even if we don't just calculate and memorize it at commit time, a cache
> somewhere under .git would speed the things up a lot...

How about this patch?  It does away with using temporary files and instead
creates persistent cache files under .git/patch-ids/.  It is a very stupid
cache layout: file name = commit SHA1, file contents = patch ID.  Perhaps
it needs fan-out directories like .git/objects/ has before it can be
considered for merge.

The set compare is stupid, too, but at least it is in-shell now, using a
space separated list and the is_in function.

And the cache file creation is not safe for multiple parallel git-cherry's.

It survives "make test" and is otherwise untested.  Care to test drive
this prototype? :-D

Thanks,
René


diff --git a/git-cherry.sh b/git-cherry.sh
index 8832573..c88afc3 100755
--- a/git-cherry.sh
+++ b/git-cherry.sh
@@ -46,18 +46,29 @@ # not that the order in inup matters...
 inup=`git-rev-list ^$ours $upstream` &&
 ours=`git-rev-list $ours ^$limit` || exit
 
-tmp=.cherry-tmp$$
-patch=$tmp-patch
-mkdir $patch
-trap "rm -rf $tmp-*" 0 1 2 3 15
+is_in() {
+	what="$1"
+	while [ $# -gt 1 ]; do
+		shift
+		[ "$what" = "$1" ] && return 0
+	done
+	return 1
+}
 
+# prime patch-ID cache
+PATCH_ID_CACHE="$GIT_DIR/patch-ids"
+mkdir -p "$PATCH_ID_CACHE"
+for commit in $inup $ours; do
+	[ -f "$PATCH_ID_CACHE/$commit" ] && continue
+	set x `git-diff-tree -p $commit | git-patch-id`
+	echo "$2" >"$PATCH_ID_CACHE/$commit"
+done
+
+ids_inup=
 for c in $inup
 do
-	git-diff-tree -p $c
-done | git-patch-id |
-while read id name
-do
-	echo $name >>$patch/$id
+	read id <"$PATCH_ID_CACHE/$c"
+	ids_inup="$ids_inup $id"
 done
 
 LF='
@@ -66,10 +77,10 @@ LF='
 O=
 for c in $ours
 do
-	set x `git-diff-tree -p $c | git-patch-id`
-	if test "$2" != ""
+	read id <"$PATCH_ID_CACHE/$c"
+	if test "$id" != ""
 	then
-		if test -f "$patch/$2"
+		if is_in $id $ids_inup
 		then
 			sign=-
 		else

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* prune/prune-packed
@ 2006-10-22  3:59 J. Bruce Fields
  2006-10-22  4:59 ` prune/prune-packed Junio C Hamano
  0 siblings, 1 reply; 24+ messages in thread
From: J. Bruce Fields @ 2006-10-22  3:59 UTC (permalink / raw)
  To: git

Both "man prune" and everyday.txt say that git-prune also runs
git-prune-packed.  But that doesn't seem to be true.  Is the bug in the
documentation?

--b.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: prune/prune-packed
  2006-10-22  3:59 prune/prune-packed J. Bruce Fields
@ 2006-10-22  4:59 ` Junio C Hamano
  2006-10-22 23:14   ` prune/prune-packed J. Bruce Fields
  0 siblings, 1 reply; 24+ messages in thread
From: Junio C Hamano @ 2006-10-22  4:59 UTC (permalink / raw)
  To: J. Bruce Fields; +Cc: git

"J. Bruce Fields" <bfields@fieldses.org> writes:

> Both "man prune" and everyday.txt say that git-prune also runs
> git-prune-packed.  But that doesn't seem to be true.  Is the bug in the
> documentation?

I think it is a regression when prune was rewritten as a
built-in.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-21  0:22     ` Petr Baudis
  2006-10-21  0:31       ` Linus Torvalds
  2006-10-21  9:53       ` Andreas Schwab
@ 2006-10-22 21:09       ` Anders Larsen
  2 siblings, 0 replies; 24+ messages in thread
From: Anders Larsen @ 2006-10-22 21:09 UTC (permalink / raw)
  To: git; +Cc: linux-kernel

On Sat, 21 Oct 2006 02:22:51 +0200, Petr Baudis wrote:

>> That said, "LESS=FRS" doesn't really help that much. It still clears the 
>> screen. Using "LESS=FRSX" fixes that, but the alternate display sequence 
>> is actually nice _if_ the pager is used.
> 
> Hmm, what terminal emulator do you use? The reasonable ones should
> restore the original screen.

And indeed they do.
The problem is, when the original screen is restored, the diff output that
was paged through less -FRS goes poof as well.

Cheers
 Anders

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: prune/prune-packed
  2006-10-22  4:59 ` prune/prune-packed Junio C Hamano
@ 2006-10-22 23:14   ` J. Bruce Fields
  0 siblings, 0 replies; 24+ messages in thread
From: J. Bruce Fields @ 2006-10-22 23:14 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

On Sat, Oct 21, 2006 at 09:59:20PM -0700, Junio C Hamano wrote:
> "J. Bruce Fields" <bfields@fieldses.org> writes:
> 
> > Both "man prune" and everyday.txt say that git-prune also runs
> > git-prune-packed.  But that doesn't seem to be true.  Is the bug in the
> > documentation?
> 
> I think it is a regression when prune was rewritten as a
> built-in.

So would it be as simple as this?

--b.

>From d8a01cf8e2d4ccc02dc52fe5dd22b8462997c1ca Mon Sep 17 00:00:00 2001
From: J. Bruce Fields <bfields@citi.umich.edu>
Date: Sun, 22 Oct 2006 19:01:23 -0400
Subject: [PATCH] Make prune also run prune-packed

Both the git-prune manpage and everday.txt say that git-prune should also prune
unpacked objects that are also found in packs, by running git prune-packed.

Junio thought this was "a regression when prune was rewritten as a built-in."

So modify prune to call prune-packed again.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
---
 builtin-prune-packed.c |   11 +++++------
 builtin-prune.c        |    2 ++
 builtin.h              |    1 +
 3 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/builtin-prune-packed.c b/builtin-prune-packed.c
index 960db49..e12b6cf 100644
--- a/builtin-prune-packed.c
+++ b/builtin-prune-packed.c
@@ -4,9 +4,7 @@ #include "cache.h"
 static const char prune_packed_usage[] =
 "git-prune-packed [-n]";
 
-static int dryrun;
-
-static void prune_dir(int i, DIR *dir, char *pathname, int len)
+static void prune_dir(int i, DIR *dir, char *pathname, int len, int dryrun)
 {
 	struct dirent *de;
 	char hex[40];
@@ -31,7 +29,7 @@ static void prune_dir(int i, DIR *dir, c
 	rmdir(pathname);
 }
 
-static void prune_packed_objects(void)
+void prune_packed_objects(int dryrun)
 {
 	int i;
 	static char pathname[PATH_MAX];
@@ -50,7 +48,7 @@ static void prune_packed_objects(void)
 		d = opendir(pathname);
 		if (!d)
 			continue;
-		prune_dir(i, d, pathname, len + 3);
+		prune_dir(i, d, pathname, len + 3, dryrun);
 		closedir(d);
 	}
 }
@@ -58,6 +56,7 @@ static void prune_packed_objects(void)
 int cmd_prune_packed(int argc, const char **argv, const char *prefix)
 {
 	int i;
+	int dryrun;
 
 	for (i = 1; i < argc; i++) {
 		const char *arg = argv[i];
@@ -73,6 +72,6 @@ int cmd_prune_packed(int argc, const cha
 		usage(prune_packed_usage);
 	}
 	sync();
-	prune_packed_objects();
+	prune_packed_objects(dryrun);
 	return 0;
 }
diff --git a/builtin-prune.c b/builtin-prune.c
index 6228c79..7290e6d 100644
--- a/builtin-prune.c
+++ b/builtin-prune.c
@@ -255,5 +255,7 @@ int cmd_prune(int argc, const char **arg
 
 	prune_object_dir(get_object_directory());
 
+	sync();
+	prune_packed_objects(show_only);
 	return 0;
 }
diff --git a/builtin.h b/builtin.h
index f9fa9ff..f71b962 100644
--- a/builtin.h
+++ b/builtin.h
@@ -11,6 +11,7 @@ extern int mailinfo(FILE *in, FILE *out,
 extern int split_mbox(const char **mbox, const char *dir, int allow_bare, int nr_prec, int skip);
 extern void stripspace(FILE *in, FILE *out);
 extern int write_tree(unsigned char *sha1, int missing_ok, const char *prefix);
+extern void prune_packed_objects(int);
 
 extern int cmd_add(int argc, const char **argv, const char *prefix);
 extern int cmd_apply(int argc, const char **argv, const char *prefix);
-- 
1.4.3.1.g87b78

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* Re: prune/prune-packed
  2006-10-20 23:35 ` Junio C Hamano
  2006-10-21  0:14   ` Linus Torvalds
  2006-10-21  0:47   ` Nicolas Pitre
@ 2006-10-23  0:53   ` J. Bruce Fields
  2006-10-23  1:26     ` prune/prune-packed A Large Angry SCM
  2 siblings, 1 reply; 24+ messages in thread
From: J. Bruce Fields @ 2006-10-23  0:53 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

Junio C Hamano <junkio@cox.net> writes:
> I am considering the following to address irritation some people
> (including me, actually) are experiencing with this change when
> viewing a small (or no) diff.  Any objections?

So for me, if I run

	less -FRS file

where "file" is less than a page, I see nothing happen whatsoever.

At a guess, maybe it's clearing the screen, displaying the file, the
restoring, all before I see anything happen?

--b.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: prune/prune-packed
  2006-10-23  0:53   ` prune/prune-packed J. Bruce Fields
@ 2006-10-23  1:26     ` A Large Angry SCM
  2006-10-23  2:36       ` [ANNOUNCE] GIT 1.4.3 J. Bruce Fields
  2006-10-23  3:27       ` prune/prune-packed Junio C Hamano
  0 siblings, 2 replies; 24+ messages in thread
From: A Large Angry SCM @ 2006-10-23  1:26 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: J. Bruce Fields, git

J. Bruce Fields wrote:
> Junio C Hamano <junkio@cox.net> writes:
>> I am considering the following to address irritation some people
>> (including me, actually) are experiencing with this change when
>> viewing a small (or no) diff.  Any objections?
> 
> So for me, if I run
> 
> 	less -FRS file
> 
> where "file" is less than a page, I see nothing happen whatsoever.
> 
> At a guess, maybe it's clearing the screen, displaying the file, the
> restoring, all before I see anything happen?

Junio,

How about reverting this change? From the reports here, is causing 
problems on a number of different distributions.

These settings are probably something that is better set by the user in 
an environment variable. Or, make the default something that does work 
everywhere and have a config item for those that wish to customize their UI.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [ANNOUNCE] GIT 1.4.3
  2006-10-23  1:26     ` prune/prune-packed A Large Angry SCM
@ 2006-10-23  2:36       ` J. Bruce Fields
  2006-10-23  3:27       ` prune/prune-packed Junio C Hamano
  1 sibling, 0 replies; 24+ messages in thread
From: J. Bruce Fields @ 2006-10-23  2:36 UTC (permalink / raw)
  To: A Large Angry SCM; +Cc: Junio C Hamano, git

On Sun, Oct 22, 2006 at 06:26:13PM -0700, A Large Angry SCM wrote:
> J. Bruce Fields wrote:
> >So for me, if I run
> >
> >	less -FRS file
> >
> >where "file" is less than a page, I see nothing happen whatsoever.
> >
> >At a guess, maybe it's clearing the screen, displaying the file, the
> >restoring, all before I see anything happen?
...
> 
> How about reverting this change? From the reports here, is causing 
> problems on a number of different distributions.

I'm using gnome-terminal on Debian/Sid, by the way.

> These settings are probably something that is better set by the user in 
> an environment variable. Or, make the default something that does work 
> everywhere and have a config item for those that wish to customize their UI.

(Um, sorry for my mail screwups, by the way....)

--b.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: prune/prune-packed
  2006-10-23  1:26     ` prune/prune-packed A Large Angry SCM
  2006-10-23  2:36       ` [ANNOUNCE] GIT 1.4.3 J. Bruce Fields
@ 2006-10-23  3:27       ` Junio C Hamano
  2006-10-23 18:39         ` prune/prune-packed Petr Baudis
  2006-10-27 21:19         ` prune/prune-packed Jon Loeliger
  1 sibling, 2 replies; 24+ messages in thread
From: Junio C Hamano @ 2006-10-23  3:27 UTC (permalink / raw)
  To: gitzilla; +Cc: J. Bruce Fields, git

A Large Angry SCM <gitzilla@gmail.com> writes:

> J. Bruce Fields wrote:
>> Junio C Hamano <junkio@cox.net> writes:
>>> I am considering the following to address irritation some people
>>> (including me, actually) are experiencing with this change when
>>> viewing a small (or no) diff.  Any objections?
>>
>> So for me, if I run
>>
>> 	less -FRS file
>>
>> where "file" is less than a page, I see nothing happen whatsoever.
>>
>> At a guess, maybe it's clearing the screen, displaying the file, the
>> restoring, all before I see anything happen?
>
> Junio,
>
> How about reverting this change? From the reports here, is causing
> problems on a number of different distributions.

Hmmm.  I thought I was using gnome-terminal as well, but I
always work in screen and did not see this problem.

Sorry, but you are right and Linus is more right.  How about
doing FRSX.

diff --git a/pager.c b/pager.c
index 8bd33a1..4587fbb 100644
--- a/pager.c
+++ b/pager.c
@@ -50,7 +50,7 @@ void setup_pager(void)
 	close(fd[0]);
 	close(fd[1]);
 
-	setenv("LESS", "FRS", 0);
+	setenv("LESS", "FRSX", 0);
 	run_pager(pager);
 	die("unable to execute pager '%s'", pager);
 	exit(255);

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* Re: prune/prune-packed
  2006-10-23  3:27       ` prune/prune-packed Junio C Hamano
@ 2006-10-23 18:39         ` Petr Baudis
  2006-10-27 21:19         ` prune/prune-packed Jon Loeliger
  1 sibling, 0 replies; 24+ messages in thread
From: Petr Baudis @ 2006-10-23 18:39 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: gitzilla, J. Bruce Fields, git

Dear diary, on Mon, Oct 23, 2006 at 05:27:49AM CEST, I got a letter
where Junio C Hamano <junkio@cox.net> said that...
> A Large Angry SCM <gitzilla@gmail.com> writes:
> 
> > J. Bruce Fields wrote:
> >> Junio C Hamano <junkio@cox.net> writes:
> >>> I am considering the following to address irritation some people
> >>> (including me, actually) are experiencing with this change when
> >>> viewing a small (or no) diff.  Any objections?
> >>
> >> So for me, if I run
> >>
> >> 	less -FRS file
> >>
> >> where "file" is less than a page, I see nothing happen whatsoever.
> >>
> >> At a guess, maybe it's clearing the screen, displaying the file, the
> >> restoring, all before I see anything happen?
> >
> > Junio,
> >
> > How about reverting this change? From the reports here, is causing
> > problems on a number of different distributions.
> 
> Hmmm.  I thought I was using gnome-terminal as well, but I
> always work in screen and did not see this problem.
> 
> Sorry, but you are right and Linus is more right.  How about
> doing FRSX.

I should like that solution more since I hate the alternate screen, but
I actually don't, since it should be left at the user's will whether to
use the alternate screen or not, and Git shouldn't change the default on
whim. Git is trying to be too smart here, and I think it's more annoying
to override what the user is used to than having to by default press q.

Yes, the user can always override Git by setting own $LESS, but that
means another explicit action at the user's side is required and they
don't receive any further cool flags we might stick in there later.
(BTW, I don't think this is right either. In Cogito, I do

	LESS="$myflags$LESS"

unless $CG_LESS is set, in which case I do

	LESS="$CG_LESS".

So people like Jens who have LESS set still get sensible behaviour from
Cogito _and_ they don't loose the ability to override Cogito's less
flags.)

BTW, I think not seeing output of paged commands is a major problem,
this should probably warrant another bugfix release.

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
#!/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj
$/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1
lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: prune/prune-packed
  2006-10-23  3:27       ` prune/prune-packed Junio C Hamano
  2006-10-23 18:39         ` prune/prune-packed Petr Baudis
@ 2006-10-27 21:19         ` Jon Loeliger
  2006-10-27 21:55           ` prune/prune-packed Junio C Hamano
  1 sibling, 1 reply; 24+ messages in thread
From: Jon Loeliger @ 2006-10-27 21:19 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: gitzilla, J. Bruce Fields, Git List

On Sun, 2006-10-22 at 22:27, Junio C Hamano wrote:

> Sorry, but you are right and Linus is more right.  How about
> doing FRSX.
> 
> diff --git a/pager.c b/pager.c
> index 8bd33a1..4587fbb 100644
> --- a/pager.c
> +++ b/pager.c
> @@ -50,7 +50,7 @@ void setup_pager(void)
>  	close(fd[0]);
>  	close(fd[1]);
>  
> -	setenv("LESS", "FRS", 0);
> +	setenv("LESS", "FRSX", 0);
>  	run_pager(pager);
>  	die("unable to execute pager '%s'", pager);
>  	exit(255);

I'm a little confused by all this because I
set the LESS environment variable by myself
already.  And I use the value that I like.
Why change it or override the user's settings
like this?  Or did I miss something?

Thanks,
jdl


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: prune/prune-packed
  2006-10-27 21:19         ` prune/prune-packed Jon Loeliger
@ 2006-10-27 21:55           ` Junio C Hamano
  0 siblings, 0 replies; 24+ messages in thread
From: Junio C Hamano @ 2006-10-27 21:55 UTC (permalink / raw)
  To: Jon Loeliger; +Cc: git

Jon Loeliger <jdl@freescale.com> writes:

> On Sun, 2006-10-22 at 22:27, Junio C Hamano wrote:
>
>> Sorry, but you are right and Linus is more right.  How about
>> doing FRSX.
>> 
>> diff --git a/pager.c b/pager.c
>> index 8bd33a1..4587fbb 100644
>> --- a/pager.c
>> +++ b/pager.c
>> @@ -50,7 +50,7 @@ void setup_pager(void)
>>  	close(fd[0]);
>>  	close(fd[1]);
>>  
>> -	setenv("LESS", "FRS", 0);
>> +	setenv("LESS", "FRSX", 0);
>>  	run_pager(pager);
>>  	die("unable to execute pager '%s'", pager);
>>  	exit(255);
>
> I'm a little confused by all this because I
> set the LESS environment variable by myself
> already.  And I use the value that I like.
> Why change it or override the user's settings
> like this?  Or did I miss something?

This is about "if user does not set it, use this default".


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2006-10-27 21:55 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-22  3:59 prune/prune-packed J. Bruce Fields
2006-10-22  4:59 ` prune/prune-packed Junio C Hamano
2006-10-22 23:14   ` prune/prune-packed J. Bruce Fields
  -- strict thread matches above, loose matches on Subject: below --
2006-10-18 23:53 [ANNOUNCE] GIT 1.4.3 Junio C Hamano
2006-10-20 12:31 ` Horst H. von Brand
2006-10-20 13:26 ` Peter Eriksen
2006-10-20 23:35 ` Junio C Hamano
2006-10-21  0:14   ` Linus Torvalds
2006-10-21  0:22     ` Petr Baudis
2006-10-21  0:31       ` Linus Torvalds
2006-10-21  9:53       ` Andreas Schwab
2006-10-22 21:09       ` Anders Larsen
2006-10-21  2:12     ` Al Viro
2006-10-21  5:29       ` Junio C Hamano
2006-10-21  5:40         ` Al Viro
2006-10-21 14:29       ` Rene Scharfe
2006-10-21  0:47   ` Nicolas Pitre
2006-10-23  0:53   ` prune/prune-packed J. Bruce Fields
2006-10-23  1:26     ` prune/prune-packed A Large Angry SCM
2006-10-23  2:36       ` [ANNOUNCE] GIT 1.4.3 J. Bruce Fields
2006-10-23  3:27       ` prune/prune-packed Junio C Hamano
2006-10-23 18:39         ` prune/prune-packed Petr Baudis
2006-10-27 21:19         ` prune/prune-packed Jon Loeliger
2006-10-27 21:55           ` prune/prune-packed Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).