pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel



Module Name:    pkgsrc
Committed By:   bjs
Date:           Thu Jul 24 23:22:54 UTC 2008

Modified Files:
        pkgsrc/devel/scmgit: Makefile.common Makefile.version
        pkgsrc/devel/scmgit-base: Makefile distinfo
Added Files:
        pkgsrc/devel/scmgit-base/patches: patch-ak

Log Message:
Update to version 1.5.6.4.  The base package now depends on devel/p5-Error;
this ensures that git never has to install its own copy, thereby
avoiding future conflicts with devel/p5-Error.  Plus, the pkgsrc
version is newer.

While here, set PKG_SYSCONFSUBDIR=git and explicitly specify sysconfdir
in CONFIGURE_ARGS.  Remove trailing slash from GITCOREDIR.

Long list of changes since 1.5.6:

Fixes since v1.5.6.3
--------------------

* Various commands could overflow its internal buffer on a platform
  with small PATH_MAX value in a repository that has contents with
  long pathnames.

* There wasn't a way to make --pretty=format:%<> specifiers to honor
  .mailmap name rewriting for authors and committers.  Now you can with
  %aN and %cN.

* Bash completion wasted too many cycles; this has been optimized to be
  usable again.

* Bash completion lost ref part when completing something like "git show
  pu:Makefile".

* "git-cvsserver" did not clean up its temporary working area after
  annotate request.

* "git-daemon" called syslog() from its signal handler, which was a
  no-no.

* "git-fetch" into an empty repository used to remind that the fetch will
   be huge by saying "no common commits", but this was an unnecessary
   noise; it is already known by the user anyway.

* "git-http-fetch" would have segfaulted when pack idx file retrieved
  from the other side was corrupt.

* "git-index-pack" used too much memory when dealing with a deep delta
  chain.

* "git-mailinfo" (hence "git-am") did not correctly handle in-body [PATCH]
  line to override the commit title taken from the mail Subject header.

* "git-rebase -i -p" lost parents that are not involved in the history
  being rewritten.

* "git-rm" lost track of where the index file was when GIT_DIR was
  specified as a relative path.

* "git-rev-list --quiet" was not quiet as advertised.

Contains other various documentation fixes.

Fixes since v1.5.6.2
--------------------

* Setting core.sharerepository to traditional "true" value was supposed
  to make the repository group writable but should not affect permission
  for others.  However, since 1.5.6, it was broken to drop permission
  for others when umask is 022, making the repository unreadable by others.

* Setting GIT_TRACE will report spawning of external process via
  run_command().

* Using an object with very deep delta chain pinned memory needed for
  extracting intermediate base objects unnecessarily long,
  leading to excess memory usage.

* Bash completion script did not notice '--' marker on the command
  line and tried the relatively slow "ref completion" even when
  completing arguments after one.

* Registering a non-empty blob racily and then truncating the working
  tree file for it confused "racy-git avoidance" logic into thinking
  that the path is now unchanged.

* The section that describes attributes related to git-archive were placed
  in a wrong place in the gitattributes(5) manual page.

* "git am" was not helpful to the users when it detected that the committer
  information is not set up properly yet.

* "git clone" had a leftover debugging fprintf().

* "git clone -q" was not quiet enough as it used to and gave object count
  and progress reports.

* "git clone" marked downloaded packfile with .keep; this could be a
  good thing if the remote side is well packed but otherwise not,
  especially for a project that is not really big.

* "git daemon" used to call syslog() from a signal handler, which
  could raise signals of its own but generally is not reentrant.  This
  was fixed by restructuring the code to report syslog() after the handler
  returns.

* When "git push" tries to remove a remote ref, and corresponding
  tracking ref is missing, we used to report error (i.e. failure to
  remove something that does not exist).

* "git mailinfo" (hence "git am") did not handle commit log messages in a
  MIME multipart mail correctly.

Futureproof
-----------

 * "git-shell" accepts requests without a dash between "git" and
   subcommand name (e.g. "git upload-pack") which the newer client will
   start to make sometime in the future.

Fixes since v1.5.6.1
--------------------

* "git clone" from a remote that is named with url.insteadOf setting in
  $HOME/.gitconfig did not work well.

* "git describe --long --tags" segfaulted when the described revision was
  tagged with a lightweight tag.

* "git diff --check" did not report the result via its exit status
  reliably.

* When remote side used to have branch 'foo' and git-fetch finds that now
  it has branch 'foo/bar', it refuses to lose the existing remote tracking
  branch and its reflog.  The error message has been improved to suggest
  pruning the remote if the user wants to proceed and get the latest set
  of branches from the remote, including such 'foo/bar'.

* "git reset file" should mean the same thing as "git reset HEAD file",
  but we required disambiguating -- even when "file" is not ambiguous.

* "git show" segfaulted when an annotated tag that points at another
  annotated tag was given to it.

* Optimization for a large import via "git-svn" introduced in v1.5.6 had a
  serious memory and temporary file leak, which made it unusable for
  moderately large import.

* "git-svn" mangled remote nickname used in the configuration file
  unnecessarily.

Fixes since v1.5.6
------------------

* Last minute change broke loose object creation on AIX.

* (performance fix) We used to make $GIT_DIR absolute path early in the
  programs but keeping it relative to the current directory internally
  gives 1-3 per-cent performance boost.

* bash completion knows the new --graph option to git-log family.

* git-diff -c/--cc showed unnecessary "deletion" lines at the context
  boundary.

* git-for-each-ref ignored %(object) and %(type) requests for tag
  objects.

* git-merge usage had a typo.

* Rebuilding of git-svn metainfo database did not take rewriteRoot
  option into account.

* Running "git-rebase --continue/--skip/--abort" before starting a
  rebase gave nonsense error messages.


To generate a diff of this commit:
cvs rdiff -r1.11 -r1.12 pkgsrc/devel/scmgit/Makefile.common
cvs rdiff -r1.2 -r1.3 pkgsrc/devel/scmgit/Makefile.version
cvs rdiff -r1.7 -r1.8 pkgsrc/devel/scmgit-base/Makefile
cvs rdiff -r1.9 -r1.10 pkgsrc/devel/scmgit-base/distinfo
cvs rdiff -r0 -r1.1 pkgsrc/devel/scmgit-base/patches/patch-ak

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Home | Main Index | Thread Index | Old Index