Merge branch 'th/git-diffall'
[gitweb.git] / Documentation / RelNotes / 1.7.10.txt
index be3001afe239121328b9d949332e4bf96698ec67..70d76b5dc0bd79647d78d37cab1367ad1700d62e 100644 (file)
@@ -8,11 +8,24 @@ UI, Workflows & Features
 
  * Improved handling of views, labels and branches in git-p4 (in contrib).
 
- * Updated command line arguments completion script for zsh (in contrib).
+ * "git-p4" (in contrib) suffered from unnecessary merge conflicts when
+   p4 expanded the embedded $RCS$-like keywords; it can be now told to
+   unexpand them.
+
+ * Some "git-svn" updates.
 
  * "vcs-svn"/"svn-fe" learned to read dumps with svn-deltas and
    support incremental imports.
 
+ * The configuration mechanism learned an "include" facility; an
+   assignment to the include.path pseudo-variable causes the named
+   file to be included in-place when Git looks up configuration
+   variables.
+
+ * A content filter (clean/smudge) used to be just a way to make the
+   recorded contents "more useful", and allowed to fail; a filter can
+   new optionally be marked as "required".
+
  * "git am" learned to pass "-b" option to underlying "git mailinfo", so
    that bracketed string other than "PATCH" at the beginning can be kept.
 
@@ -22,40 +35,56 @@ UI, Workflows & Features
  * "git clone" learned to detach the HEAD in the resulting repository
    when the source repository's HEAD does not point to a branch.
 
- * The commands in the "git diff" family and "git apply --stat" that
-   count the number of files changed and the number of lines
-   inserted/deleted have been updated to match the output from
-   "diffstat".  This also opens the door to i18n this line.
-
  * When showing a patch while ignoring whitespace changes, the context
    lines are taken from the postimage, in order to make it easier to
    view the output.
 
+ * "diff-highlight" filter (in contrib/) was updated to produce more
+   aesthetically pleasing output.
+
  * "git merge" in an interactive session learned to spawn the editor
    by default to let the user edit the auto-generated merge message,
    to encourage people to explain their merges better. Legacy scripts
-   can export MERGE_AUTOEDIT=no to retain the historical behaviour.
+   can export GIT_MERGE_AUTOEDIT=no to retain the historical behavior.
+   Both "git merge" and "git pull" can be given --no-edit from the
+   command line to accept the auto-generated merge message.
+
+ * "git push" learned the "--prune" option, similar to "git fetch".
+
+ * "git tag --list" can be given "--points-at <object>" to limit its
+   output to those that point at the given object.
 
  * "gitweb" allows intermediate entries in the directory hierarchy
    that leads to a projects to be clicked, which in turn shows the
    list of projects inside that directory.
 
+ * "gitweb" learned to read various pieces of information for the
+   repositories lazily, instead of reading everything that could be
+   needed (including the ones that are not necessary for a specific
+   task).
+
 Performance
 
- * During "git upload-pack" in respose to "git fetch", unnecessary calls
+ * During "git upload-pack" in response to "git fetch", unnecessary calls
    to parse_object() have been eliminated, to help performance in
    repositories with excessive number of refs.
 
-Internal Implementation
+Internal Implementation (please report possible regressions)
 
  * Recursive call chains in "git index-pack" to deal with long delta
    chains have been flattened, to reduce the stack footprint.
 
- * Use of add_extra_ref() API is slowly getting removed, to make it
-   possible to cleanly restructure the overall refs API.
+ * Use of add_extra_ref() API is now gone, to make it possible to
+   cleanly restructure the overall refs API.
+
+ * The command line parser of "git pack-objects" now uses parse-options
+   API.
 
  * The test suite supports the new "test_pause" helper function.
 
+ * Parallel to the test suite, there is a beginning of performance
+   benchmarking framework.
+
  * t/Makefile is adjusted to prevent newer versions of GNU make from
    running tests in seemingly random order.
 
@@ -69,35 +98,35 @@ Unless otherwise noted, all the fixes since v1.7.9 in the maintenance
 releases are contained in this release (see release notes to them for
 details).
 
- * The error message emitted when we see an empty loose object was
-   not phrased correctly.
-   (merge 33e42de mm/empty-loose-error-message later to maint).
-
- * "git commit" refused to create a commit when entries added with
-   "add -N" remained in the index, without telling Git what their content
-   in the next commit should be. We should have created the commit without
-   these paths.
-   (merge 3f6d56d jc/maint-commit-ignore-i-t-a later to maint).
+ * The bulk check-in codepath streamed contents that needs
+   smudge/clean filters without running them, instead of punting and
+   delegating to the codepath to run filters after slurping everything
+   to core.
+   (merge 4f22b10 jk/maint-avoid-streaming-filtered-contents later to maint).
 
- * Search box in "gitweb" did not accept non-ASCII characters correctly.
-   (merge 84d9e2d jn/gitweb-search-utf-8 later to maint).
+ * When the filter driver exits before reading the content before the
+   main git process writes the contents to be filtered to the pipe to
+   it, the latter could be killed with SIGPIPE instead of ignoring
+   such an event as an error.
+   (merge 6424c2a jb/filter-ignore-sigpipe later to maint).
 
- * The code to ask for password did not fall back to the terminal
-   input when GIT_ASKPASS is set but does not work (e.g. lack of X
-   with GUI askpass helper).
-   (merge 84d7273 jk/prompt-fallback-to-tty later to maint).
+ * When a remote helper exits before reading the blank line from the
+   main git process to signal the end of commands, the latter could be
+   killed with SIGPIPE. Instead we should ignore such event as a
+   non-error.
+   (merge c34fe63 sp/smart-http-failure-to-push later to maint).
 
- * map_user() was not rewriting its output correctly, which resulted
-   in the user visible symptom that "git blame -e" sometimes showed
-   excess '>' at the end of email addresses.
-   (merge f026358 jc/maint-mailmap-output later to maint).
+ * "git bundle create" produced a corrupt bundle file upon seeing
+   commits with excessively long subject line.
+   (merge 8a557bb tr/maint-bundle-long-subject later to maint).
 
- * "checkout -b" did not allow switching out of an unborn branch.
-   (merge abe1998 jc/checkout-out-of-unborn later to maint).
+ * "gitweb" used to drop warnings in the log file when "heads" view is
+   accessed in a repository whose HEAD does not point at a valid
+   branch.
 
 ---
 exec >/var/tmp/1
-O=v1.7.9-249-gaa47ec9
+O=v1.7.9.2-322-g472fdee
 echo O=$(git describe)
 git log --first-parent --oneline ^maint $O..
 echo