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:   morr
Date:           Wed Apr 28 22:01:43 UTC 2010

Modified Files:
        pkgsrc/devel/scmgit: Makefile.version
        pkgsrc/devel/scmgit-base: Makefile PLIST distinfo options.mk
        pkgsrc/devel/scmgit-base/patches: patch-aa
Removed Files:
        pkgsrc/devel/scmgit-base/patches: patch-ab

Log Message:
Update to version 1.7.0.5.

ChangeLogs:

Updates since v1.6.6
--------------------

(subsystems)
 * "git fast-import" updates; adds "option" and "feature" to detect the
   mismatch between fast-import and the frontends that produce the input
   stream.
 * "git svn" support of subversion "merge tickets" and miscellaneous fixes.
 * "gitk" and "git gui" translation updates.
 * "gitweb" updates (code clean-up, load checking etc.)

(portability)
 * Some more MSVC portability patches for msysgit port.
 * Minimum Pthreads emulation for msysgit port.

(performance)
 * More performance improvement patches for msysgit port.

(usability, bells and whistles)
 * More commands learned "--quiet" and "--[no-]progress" options.
 * Various commands given by the end user (e.g. diff.type.textconv,
   and GIT_EDITOR) can be specified with command line arguments.  E.g. it
   is now possible to say "[diff "utf8doc"] textconv = nkf -w".
 * "sparse checkout" feature allows only part of the work tree to be
   checked out.
 * HTTP transfer can use authentication scheme other than basic
   (i.e./e.g. digest).
 * Switching from a version of superproject that used to have a submodule
   to another version of superproject that no longer has it did not remove
   the submodule directory when it should (namely, when you are not
   interested in the submodule at all and didn't clone/checkout).
 * A new attribute conflict-marker-size can be used to change the size of
   the conflict markers from the default 7; this is useful when tracked
   contents (e.g. git-merge documentation) have strings that resemble the
   conflict markers.
* A new syntax "<branch>@{upstream}" can be used on the command line to
   substitute the name of the "upstream" of the branch.  Missing branch
   defaults to the current branch, so "git fetch && git merge @{upstream}"
   will be equivalent to "git pull".
 * "git am --resolved" has a synonym "git am --continue".
 * "git branch --set-upstream" can be used to update the (surprise!) upstream,
   i.e. where the branch is supposed to pull and merge from (or rebase onto).
 * "git checkout A...B" is a way to detach HEAD at the merge base between
   A and B.
 * "git checkout -m path" to reset the work tree file back into the
   conflicted state works even when you already ran "git add path" and
   resolved the conflicts.
 * "git commit --date='<date>'" can be used to override the author date
   just like "git commit --author='<name> <email>'" can be used to
   override the author identity.
 * "git commit --no-status" can be used to omit the listing of the index
   and the work tree status in the editor used to prepare the log message.
 * "git commit" warns a bit more aggressively until you configure user.email,
   whose default value almost always is not (and fundamentally cannot be)
   what you want.
 * "git difftool" has been extended to make it easier to integrate it
   with gitk.
 * "git fetch --all" can now be used in place of "git remote update".
 * "git grep" does not rely on external grep anymore.  It can use more than
   one thread to accelerate the operation.
 * "git grep" learned "--quiet" option.
 * "git log" and friends learned "--glob=heads/*" syntax that is a more
   flexible way to complement "--branches/--tags/--remotes".
 * "git merge" learned to pass options specific to strategy-backends.  E.g.
    - "git merge -Xsubtree=path/to/directory" can be used to tell the subtree
      strategy how much to shift the trees explicitly.
    - "git merge -Xtheirs" can be used to auto-merge as much as possible,
      while discarding your own changes and taking merged version in
      conflicted regions.
 * "git push" learned "git push origin --delete branch", a syntactic sugar
   for "git push origin :branch".
 * "git push" learned "git push --set-upstream origin forker:forkee" that
   lets you configure your "forker" branch to later pull from "forkee"
   branch at "origin".
 * "git rebase --onto A...B" means the history is replayed on top of the
   merge base between A and B.
 * "git rebase -i" learned new action "fixup" that squashes the change
   but does not affect existing log message.
 * "git rebase -i" also learned --autosquash option that is useful
   together with the new "fixup" action.
 * "git remote" learned set-url subcommand that updates (surprise!) url
   for an existing remote nickname.
 * "git rerere" learned "forget path" subcommand.  Together with "git
   checkout -m path" it will be useful when you recorded a wrong
   resolution.
 * Use of "git reset --merge" has become easier when resetting away a
   conflicted mess left in the work tree.
 * "git rerere" had rerere.autoupdate configuration but there was no way
   to countermand it from the command line; --no-rerere-autoupdate option
   given to "merge", "revert", etc. fixes this.
 * "git status" learned "-s(hort)" output format.

(developers)
 * The infrastructure to build foreign SCM interface has been updated.
 * Many more commands are now built-in.
 * THREADED_DELTA_SEARCH is no more.  If you build with threads, delta
   compression will always take advantage of it.

Fixes since v1.6.6
------------------

 * "git branch -d branch" used to refuse deleting the branch even when
   the branch is fully merged to its upstream branch if it is not merged
   to the current branch.  It now deletes it in such a case.
 * "fiter-branch" command incorrectly said --prune-empty and --filter-commit
   were incompatible; the latter should be read as --commit-filter.
 * When using "git status" or asking "git diff" to compare the work tree
   with something, they used to consider that a checked-out submodule with
   uncommitted changes is not modified; this could cause people to forget
   committing these changes in the submodule before committing in the
   superproject. They now consider such a change as a modification and
   "git diff" will append a "-dirty" to the work tree side when generating
   patch output or when used with the --submodule option.

Fixes since v1.7.0
------------------

 * In a freshly created repository "rev-parse HEAD^0" complained that
   it is dangling symref, even though "rev-parse HEAD" didn't.
 * "git show :no-such-name" tried to access the index without bounds
   check, leading to a potential segfault.
 * Message from "git cherry-pick" was harder to read and use than necessary
   when it stopped due to conflicting changes.
 * We referred to ".git/refs/" throughout the documentation when we
   meant to talk about abstract notion of "ref namespace".  Because
   people's repositories often have packed refs these days, this was
   confusing.
 * "git diff --output=/path/that/cannot/be/written" did not correctly
   error out.
 * "git grep -e -pattern-that-begin-with-dash paths..." could not be
   spelled as "git grep -- -pattern-that-begin-with-dash paths..." which
   would be a GNU way to use "--" as "end of options".
 * "git grep" compiled with threading support tried to access an
   uninitialized mutex on boxes with a single CPU.
 * "git stash pop -q --index" failed because the unnecessary --index
   option was propagated to "git stash drop" that is internally run at the
   end.

Fixes since v1.7.0.1
--------------------

 * GIT_PAGER was not honored consistently by some scripted Porcelains, most
   notably "git am".
 * updating working tree files after telling git to add them to the
   index and while it is still working created garbage object files in
   the repository without diagnosing it as an error.
 * "git bisect -- pathspec..." did not diagnose an error condition properly when
   the simplification with given pathspec made the history empty.
 * "git rev-list --cherry-pick A...B" now has an obvious optimization when the
   histories haven't diverged (i.e. when one end is an ancestor of the other).
 * "git diff --quiet -w" did not work as expected.
 * "git fast-import" didn't work with a large input, as it lacked support
   for producing the pack index in v2 format.
 * "git imap-send" didn't use CRLF line endings over the imap protocol
   when storing its payload to the draft box, violating RFC 3501.
 * "git log --format='%w(x,y,z)%b'" and friends that rewrap message
   has been optimized for utf-8 payload.
 * Error messages generated on the receiving end did not come back to "git
   push".
 * "git status" in 1.7.0 lacked the optimization we used to have in 1.6.X
 * "gitweb" did not diagnose parsing errors properly while reading tis 
configuration
   file.

Fixes since v1.7.0.2
--------------------

 * Object files are created in a more ACL friendly way in repositories
   where group permission is ACL controlled.
 * "git add -i" didn't handle a deleted path very well.
 * "git blame" padded line numbers with one extra SP when the total number
   of lines was one less than multiple of ten due to an off-by-one error.
 * "git fetch --all/--multi" used to discard information for remotes that
   are fetched earlier.
 * "git log --author=me --grep=it" tried to find commits that have "it"
   or are written by "me", instead of the ones that have "it" _and_ are
   written by "me".
 * "git log -g branch" misbehaved when there was no entries in the reflog
   for the named branch.
 * "git mailinfo" (hence "git am") incorrectly removed initial indent from
   paragraphs.
 * "git prune" and "git reflog" (hence "git gc" as well) didn't honor
   an instruction never to expire by setting gc.reflogexpire to never.
 * "git push" misbehaved when branch.<name>.merge was configured without
   matching branch.<name>.remote.

Fixes since v1.7.0.3
--------------------

 * Optimized ntohl/htonl on big-endian machines were broken.
 * Color values given to "color.<cmd>.<slot>" configuration can now have
   more than one attributes (e.g. "bold ul").
 * "git add -u nonexistent-path" did not complain.
 * "git apply --whitespace=fix" didn't work well when an early patch in
   a patch series adds trailing blank lines and a later one depended on
   such a block of blank lines at the end.
 * "git fast-export" didn't check error status and stop when marks file
   cannot be opened.
 * "git format-patch --ignore-if-in-upstream" gave unwarranted errors
   when the range was empty, instead of silently finishing.
 * "git remote prune" did not detect remote tracking refs that became
   dangling correctly.

Fixes since v1.7.0.4
--------------------

 * "git daemon" failed to compile on platforms without sockaddr_storage type.
 * Output from "git rev-list --pretty=oneline" was unparsable when a
   commit did not have any message, which is abnormal but possible in a
   repository converted from foreign scm.
 * "git stash show <commit-that-is-not-a-stash>" gave an error message
   that was not so useful.  Reworded the message to "<it> is not a
   stash".
 * Python scripts in contrib/ area now start with "#!/usr/bin/env python"
   to honor user's PATH.
 * "git imap-send" used to mistake any line that begins with "From " as a
   message separator in format-patch output.
 * Smart http server backend failed to report an internal server error and
   infinitely looped instead after output pipe was closed.


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 pkgsrc/devel/scmgit/Makefile.version
cvs rdiff -u -r1.23 -r1.24 pkgsrc/devel/scmgit-base/Makefile
cvs rdiff -u -r1.17 -r1.18 pkgsrc/devel/scmgit-base/PLIST
cvs rdiff -u -r1.25 -r1.26 pkgsrc/devel/scmgit-base/distinfo
cvs rdiff -u -r1.2 -r1.3 pkgsrc/devel/scmgit-base/options.mk
cvs rdiff -u -r1.11 -r1.12 pkgsrc/devel/scmgit-base/patches/patch-aa
cvs rdiff -u -r1.7 -r0 pkgsrc/devel/scmgit-base/patches/patch-ab

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