Update draft release notes to 2.2

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Junio C Hamano committed Sep 19, 2014 at 11:51 UTC 97b8860c071898d9e162678ea1035a8ced2f8b1f
1 file changed +51 -12
Documentation/RelNotes/2.2.0.txt
+51 -12
@@ -23,6 +23,24 @@ UI, Workflows & Features
23 the difference between the base commit version and the working tree
24 version, which is in line with what "git show" gives.
25
26 + * Sometimes users want to report a bug they experience on their
27 + repository, but they are not at liberty to share the contents of
28 + the repository. "fast-export" was taught an "--anonymize" option
29 + to replace blob contents, names of people and paths and log
30 + messages with bland and simple strings to help them.
31 +
32 + * "log --date=iso" uses a slight variant of ISO 8601 format that is
33 + made more human readable. A new "--date=iso-strict" option gives
34 + datetime output that is more strictly conformant.
35 +
36 + * A broken reimplementation of Git could write an invalid index that
37 + records both stage #0 and higher stage entries for the same path.
38 + We now notice and reject such an index, as there is no sensible
39 + fallback (we do not know if the broken tool wanted to resolve and
40 + forgot to remove higher stage entries, or if it wanted to unresolve
41 + and forgot to remove the stage#0 entry).
42 +
43 +
44 Performance, Internal Implementation, etc.
45
46 * The API to manipulate the "refs" is currently undergoing a revamp
@@ -65,6 +83,10 @@ Performance, Internal Implementation, etc.
83 "write-tree" (used in "commit") and "diff-index --cached" (used in
84 "status").
85
86 + * A common programming mistake to assign the same short option name
87 + to two separate options is detected by parse_options() API to help
88 + developers.
89 +
90
91 Also contains various documentation updates and code clean-ups.
92
@@ -79,7 +101,6 @@ notes for details).
101 * "git log --pretty/format=" with an empty format string did not
102 mean the more obvious "No output whatsoever" but "Use default
103 format", which was counterintuitive.
82 - (merge b9c7d6e jk/pretty-empty-format later to maint).
104
105 * Implementations of "tar" that do not understand an extended pax
106 header would extract the contents of it in a regular file; make
@@ -89,44 +110,62 @@ notes for details).
110 * "git -c section.var command" and "git -c section.var= command"
111 should pass the configuration differently (the former should be a
112 boolean true, the latter should be an empty string).
92 - (merge a789ca7 jk/command-line-config-empty-string later to maint).
113
114 * Applying a patch not generated by Git in a subdirectory used to
115 check the whitespace breakage using the attributes for incorrect
116 paths. Also whitespace checks were performed even for paths
117 excluded via "git apply --exclude=<path>" mechanism.
98 - (merge 477a08a jc/apply-ws-prefix later to maint).
118
119 * "git bundle create" with date-range specification were meant to
120 exclude tags outside the range, but it didn't.
102 - (merge 2c8544a lf/bundle-exclusion later to maint).
121
122 * "git add x" where x that used to be a directory has become a
123 symbolic link to a directory misbehaved.
106 - (merge ccad42d rs/refresh-beyond-symlink later to maint).
124
125 * The prompt script checked $GIT_DIR/ref/stash file to see if there
126 is a stash, which was a no-no.
110 - (merge 0fa7f01 jk/prompt-stash-could-be-packed later to maint).
127
128 * Pack-protocol documentation had a minor typo.
113 - (merge 5d146f7 sp/pack-protocol-doc-on-shallow later to maint).
129
130 * "git checkout -m" did not switch to another branch while carrying
131 the local changes forward when a path was deleted from the index.
117 - (merge 6a143aa jn/unpack-trees-checkout-m-carry-deletion later to maint).
132
133 * With sufficiently long refnames, "git fast-import" could have
134 overflown an on-stack buffer.
121 - (merge c252785 jk/fast-import-fixes later to maint).
135
136 * After "pack-refs --prune" packed refs at the top-level, it failed
137 to prune them.
125 - (merge afd11d3 jk/prune-top-level-refs-after-packing later to maint).
138
139 * Progress output from "git gc --auto" was visible in "git fetch -q".
128 - (merge 6fceed3 nd/fetch-pass-quiet-to-gc-child-process later to maint).
140
141 * We used to pass -1000 to poll(2), expecting it to also mean "no
142 timeout", which should be spelled as -1.
132 - (merge 6c71f8b et/spell-poll-infinite-with-minus-one-only later to maint).
143 +
144 + * "git rebase" documentation was unclear that it is required to
145 + specify on what <upstream> the rebase is to be done when telling it
146 + to first check out <branch>.
147 + (merge 95c6826 so/rebase-doc later to maint).
148 +
149 + * "git push" over HTTP transport had an artificial limit on number of
150 + refs that can be pushed imposed by the command line length.
151 + (merge 26be19b jk/send-pack-many-refspecs later to maint).
152 +
153 + * When receiving an invalid pack stream that records the same object
154 + twice, multiple threads got confused due to a race.
155 + (merge ab791dd jk/index-pack-threading-races later to maint).
156 +
157 + * An attempt to remove the entire tree in the "git fast-import" input
158 + stream caused it to misbehave.
159 + (merge 2668d69 mb/fast-import-delete-root later to maint).
160 +
161 + * Reachability check (used in "git prune" and friends) did not add a
162 + detached HEAD as a starting point to traverse objects still in use.
163 + (merge c40fdd0 mk/reachable-protect-detached-head later to maint).
164 +
165 + * "git config --add section.var val" used to lose existing
166 + section.var whose value was an empty string.
167 + (merge c1063be ta/config-add-to-empty-or-true-fix later to maint).
168 +
169 + * "git fsck" failed to report that it found corrupt objects via its
170 + exit status in some cases.
171 + (merge 30d1038 jk/fsck-exit-code-fix later to maint).