What's cooking (2015/05 #07)
Junio C Hamano committed
May 26, 2015 at 14:33 UTC
63c40aeb0ebce0d1587a93a58470678118c81f23
1 file changed
+294
-482
whats-cooking.txt
+294
-482
@@ -1,23 +1,20 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (May 2015, #06; Fri, 22)
4
-X-master-at: 9532ead9875b7b92ff2007f9de61af5874e8839a
5
-X-next-at: b70f6470d4a42c2efce07be8bc1edac7c5743a77
3
+Subject: What's cooking in git.git (May 2015, #07; Tue, 26)
4
+X-master-at: fae46aa0ae5318bbb20f0ef871721bf49e292cea
5
+X-next-at: 37f085bb52bb507d786c36ae50951e460f4f15c7
6
7
-What's cooking in git.git (May 2015, #06; Fri, 22)
7
+What's cooking in git.git (May 2015, #07; Tue, 26)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
11
'-' are only in 'pu' (proposed updates) while commits prefixed with
12
'+' are in 'next'.
13
14
-The fourth batch of topics have been merged to 'master'.
15
-
16
-The "untracked cache" series is in 'next', to give it a wider
17
-exposure. I do not use it personally, but it is meant to make life
18
-easier for those with large amount of untracked cruft in their
19
-working trees. Please try it out and report successes (and of
20
-course breakages, too).
14
+The "untracked cache" series is in 'master' now. I do not use it
15
+personally, but it is meant to make life easier for those with large
16
+amount of untracked cruft in their working trees. Please try it out
17
+and report successes (and of course breakages, too).
18
19
You can find the changes described here in the integration branches
20
of the repositories listed at
@@ -27,381 +24,157 @@ of the repositories listed at
24
--------------------------------------------------
25
[Graduated to "master"]
26
30
-* dl/branch-error-message (2015-05-06) 1 commit
31
- (merged to 'next' on 2015-05-11 at ed947ab)
32
- + branch: do not call a "remote-tracking branch" a "remote branch"
33
-
34
- Error messages from "git branch" called remote-tracking branches as
35
- "remote branches".
36
-
37
-
38
-* dl/subtree-avoid-tricky-echo (2015-05-08) 1 commit
39
- (merged to 'next' on 2015-05-11 at 36d4f0e)
40
- + contrib/subtree: portability fix for string printing
41
-
42
- "git subtree" script (in contrib/) used "echo -n" to produce
43
- progress messages in a non-portable way.
44
-
45
-
46
-* dl/subtree-push-no-squash (2015-05-07) 1 commit
47
- (merged to 'next' on 2015-05-11 at 74d07ca)
48
- + contrib/subtree: there's no push --squash
49
-
50
- "git subtree" script (in contrib/) does not have --squash option
51
- when pushing, but the documentation and help text pretended as if
52
- it did.
53
-
54
-
55
-* ja/tutorial-asciidoctor-fix (2015-05-12) 1 commit
56
- (merged to 'next' on 2015-05-19 at f15d940)
57
- + doc: fix unmatched code fences
58
-
59
- A literal block in the tutorial had lines with unequal lengths to
60
- delimit it from the rest of the document, which choke GitHub's
61
- AsciiDoc renderer.
62
-
63
-
64
-* jc/ignore-epipe-in-filter (2015-05-20) 2 commits
65
- (merged to 'next' on 2015-05-20 at 2b14ed7)
66
- + filter_buffer_or_fd(): ignore EPIPE
67
- + copy.c: make copy_fd() report its status silently
68
-
69
- Filter scripts were run with SIGPIPE disabled on the Git side,
70
- expecting that they may not read what Git feeds them to filter.
71
- We however treated a filter that does not read its input fully
72
- before exiting as an error.
73
-
74
- This changes semantics, but arguably in a good way. If a filter
75
- can produce its output without consuming its input using whatever
76
- magic, we now let it do so, instead of diagnosing it as a
77
- programming error.
78
-
79
-
80
-* jk/add-e-kill-editor (2015-05-12) 1 commit
81
- (merged to 'next' on 2015-05-19 at 9e01174)
82
- + add: check return value of launch_editor
83
-
84
- "git add -e" did not allow the user to abort the operation by
85
- killing the editor.
86
-
87
-
88
-* jk/asciidoc-markup-fix (2015-05-14) 9 commits
89
- (merged to 'next' on 2015-05-19 at df0c63e)
90
- + doc: convert AsciiDoc {?foo} to ifdef::foo[]
91
- + doc: put example URLs and emails inside literal backticks
92
- + doc: drop backslash quoting of some curly braces
93
- + doc: convert \--option to --option
94
- + doc/add: reformat `--edit` option
95
- + doc: fix length of underlined section-title
96
- + doc: fix hanging "+"-continuation
97
- + doc: fix unquoted use of "{type}"
98
- + doc: fix misrendering due to `single quote'
99
-
100
- Various documentation mark-up fixes to make the output more
101
- consistent in general and also make AsciiDoctor (an alternative
102
- formatter) happier.
103
-
104
-
105
-* jk/skip-http-tests-under-no-curl (2015-05-07) 2 commits
106
- (merged to 'next' on 2015-05-11 at a52b711)
107
- + tests: skip dav http-push tests under NO_EXPAT=NoThanks
108
- + t/lib-httpd.sh: skip tests if NO_CURL is defined
109
-
110
- Test clean-up.
111
-
112
-
113
-* jk/stripspace-asciidoctor-fix (2015-05-12) 1 commit
114
- (merged to 'next' on 2015-05-19 at 12f9059)
115
- + doc: fix unmatched code fences in git-stripspace
116
-
117
- A literal block in the tutorial had lines with unequal lengths to
118
- delimit it from the rest of the document, which choke GitHub's
119
- AsciiDoc renderer.
120
-
121
-
122
-* lm/squelch-bg-progress (2015-05-19) 1 commit
123
- (merged to 'next' on 2015-05-20 at 60916e6)
124
- + progress: treat "no terminal" as being in the foreground
125
-
126
- The controlling tty-based heuristics to squelch progress output did
127
- not consider that the process may not be talking to a tty at all
128
- (e.g. sending the progress to sideband #2). This is a finishing
129
- touch to a topic that is already in 'master'.
130
-
131
-
132
-* ls/http-ssl-cipher-list (2015-05-08) 1 commit
133
- (merged to 'next' on 2015-05-11 at 55764ce)
134
- + http: add support for specifying an SSL cipher list
135
-
136
- Introduce http.<url>.SSLCipherList configuration variable to tweak
137
- the list of cipher suite to be used with libcURL when talking with
138
- https:// sites.
139
-
140
-
141
-* mg/log-decorate-HEAD (2015-05-13) 2 commits
142
- (merged to 'next' on 2015-05-19 at 009342b)
143
- + log: do not shorten decoration names too early
144
- + log: decorate HEAD with branch name under --decorate=full, too
145
-
146
- The "log --decorate" enhancement in Git 2.4 that shows the commit
147
- at the tip of the current branch e.g. "HEAD -> master", did not
148
- work with --decorate=full.
149
-
150
-
151
-* mh/clone-verbosity-fix (2015-05-19) 1 commit
152
- (merged to 'next' on 2015-05-20 at f613575)
153
- + clone: call transport_set_verbosity before anything else on the newly created transport
154
-
155
- Git 2.4 broke setting verbosity and progress levels on "git clone"
156
- with native transports.
157
-
158
-
159
-* mh/lockfile-retry (2015-05-14) 2 commits
160
- (merged to 'next' on 2015-05-20 at 7ad2e9d)
161
- + lock_packed_refs(): allow retries when acquiring the packed-refs lock
162
- + lockfile: allow file locking to be retried with a timeout
163
-
164
- Instead of dying immediately upon failing to obtain a lock, retry
165
- after a short while with backoff.
166
-
167
-
168
-* mh/ref-directory-file (2015-05-11) 18 commits
169
- (merged to 'next' on 2015-05-19 at 38eb122)
170
- + reflog_expire(): integrate lock_ref_sha1_basic() errors into ours
171
- + ref_transaction_commit(): delete extra "the" from error message
172
- + ref_transaction_commit(): provide better error messages
173
- + rename_ref(): integrate lock_ref_sha1_basic() errors into ours
174
- + lock_ref_sha1_basic(): improve diagnostics for ref D/F conflicts
175
- + lock_ref_sha1_basic(): report errors via a "struct strbuf *err"
176
- + verify_refname_available(): report errors via a "struct strbuf *err"
177
- + verify_refname_available(): rename function
178
- + refs: check for D/F conflicts among refs created in a transaction
179
- + ref_transaction_commit(): use a string_list for detecting duplicates
180
- + is_refname_available(): use dirname in first loop
181
- + struct nonmatching_ref_data: store a refname instead of a ref_entry
182
- + report_refname_conflict(): inline function
183
- + entry_matches(): inline function
184
- + is_refname_available(): convert local variable "dirname" to strbuf
185
- + is_refname_available(): avoid shadowing "dir" variable
186
- + is_refname_available(): revamp the comments
187
- + t1404: new tests of ref D/F conflicts within transactions
188
-
189
- The ref API did not handle cases where 'refs/heads/xyzzy/frotz' is
190
- removed at the same time as 'refs/heads/xyzzy' is added (or vice
191
- versa) very well.
192
-
193
-
194
-* mh/write-refs-sooner-2.2 (2015-05-12) 8 commits
195
- + ref_transaction_commit(): fix atomicity and avoid fd exhaustion
196
- + ref_transaction_commit(): remove the local flags variable
197
- + ref_transaction_commit(): inline call to write_ref_sha1()
198
- + rename_ref(): inline calls to write_ref_sha1() from this function
199
- + commit_ref_update(): new function, extracted from write_ref_sha1()
200
- + write_ref_to_lockfile(): new function, extracted from write_ref_sha1()
201
- + t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZE
202
- + update-ref: test handling large transactions properly
203
- (this branch is used by mh/write-refs-sooner-2.3 and mh/write-refs-sooner-2.4.)
204
-
205
- Multi-ref transaction support we merged a few releases ago
206
- unnecessarily kept many file descriptors open, risking to fail with
207
- resource exhaustion.
208
-
209
-
210
-* mh/write-refs-sooner-2.3 (2015-05-12) 1 commit
211
- + Merge branch 'mh/write-refs-sooner-2.2' into mh/write-refs-sooner-2.3
212
- (this branch is used by mh/write-refs-sooner-2.4; uses mh/write-refs-sooner-2.2.)
213
-
214
- Multi-ref transaction support we merged a few releases ago
215
- unnecessarily kept many file descriptors open, risking to fail with
216
- resource exhaustion. This is for 2.3.x track.
217
-
218
-
219
-* mh/write-refs-sooner-2.4 (2015-05-12) 9 commits
220
- (merged to 'next' on 2015-05-19 at f7be074)
221
- + Merge branch 'mh/write-refs-sooner-2.3' into mh/write-refs-sooner-2.4
222
- + ref_transaction_commit(): fix atomicity and avoid fd exhaustion
223
- + ref_transaction_commit(): remove the local flags variable
224
- + ref_transaction_commit(): inline call to write_ref_sha1()
225
- + rename_ref(): inline calls to write_ref_sha1() from this function
226
- + commit_ref_update(): new function, extracted from write_ref_sha1()
227
- + write_ref_to_lockfile(): new function, extracted from write_ref_sha1()
228
- + t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZE
229
- + update-ref: test handling large transactions properly
230
- (this branch uses mh/write-refs-sooner-2.2 and mh/write-refs-sooner-2.3.)
231
-
232
- Multi-ref transaction support we merged a few releases ago
233
- unnecessarily kept many file descriptors open, risking to fail with
234
- resource exhaustion. This is for 2.4.x track.
235
-
236
-
237
-* ps/bundle-verify-arg (2015-05-08) 1 commit
238
- (merged to 'next' on 2015-05-11 at 9f1b1ae)
239
- + bundle: verify arguments more strictly
240
-
241
- "git bundle verify" did not diagnose extra parameters on the
242
- command line.
243
-
244
-
245
-* ps/doc-packfile-vs-pack-file (2015-05-17) 3 commits
246
- (merged to 'next' on 2015-05-20 at 7302174)
247
- + pack-protocol.txt: fix insconsistent spelling of "packfile"
248
- + git-unpack-objects.txt: fix inconsistent spelling of "packfile"
249
- + git-verify-pack.txt: fix inconsistent spelling of "packfile"
250
-
251
- Doc consistency updates.
252
-
253
-
254
-* pt/pull-tags-error-diag (2015-05-14) 1 commit
255
- (merged to 'next' on 2015-05-20 at 6e1a5f1)
256
- + pull: remove --tags error in no merge candidates case
27
+* jk/rerere-forget-check-enabled (2015-05-14) 1 commit
28
+ (merged to 'next' on 2015-05-19 at bfe67dc)
29
+ + rerere: exit silently on "forget" when rerere is disabled
30
258
- There was a dead code that used to handle "git pull --tags" and
259
- show special-cased error message, which was made irrelevant when
260
- the semantics of the option changed back in Git 1.9 days.
31
+ "git rerere forget" in a repository without rerere enabled gave a
32
+ cryptic error message; it should be a silent no-op instead.
33
34
263
-* sb/t1020-cleanup (2015-05-18) 1 commit
264
- (merged to 'next' on 2015-05-20 at fa74b14)
265
- + subdirectory tests: code cleanup, uncomment test
35
+* nd/untracked-cache (2015-03-12) 24 commits
36
+ (merged to 'next' on 2015-05-19 at 26e619b)
37
+ + git-status.txt: advertisement for untracked cache
38
+ + untracked cache: guard and disable on system changes
39
+ + mingw32: add uname()
40
+ + t7063: tests for untracked cache
41
+ + update-index: test the system before enabling untracked cache
42
+ + update-index: manually enable or disable untracked cache
43
+ + status: enable untracked cache
44
+ + untracked-cache: temporarily disable with $GIT_DISABLE_UNTRACKED_CACHE
45
+ + untracked cache: mark index dirty if untracked cache is updated
46
+ + untracked cache: print stats with $GIT_TRACE_UNTRACKED_STATS
47
+ + untracked cache: avoid racy timestamps
48
+ + read-cache.c: split racy stat test to a separate function
49
+ + untracked cache: invalidate at index addition or removal
50
+ + untracked cache: load from UNTR index extension
51
+ + untracked cache: save to an index extension
52
+ + ewah: add convenient wrapper ewah_serialize_strbuf()
53
+ + untracked cache: don't open non-existent .gitignore
54
+ + untracked cache: mark what dirs should be recursed/saved
55
+ + untracked cache: record/validate dir mtime and reuse cached output
56
+ + untracked cache: make a wrapper around {open,read,close}dir()
57
+ + untracked cache: invalidate dirs recursively if .gitignore changes
58
+ + untracked cache: initial untracked cache validation
59
+ + untracked cache: record .gitignore information and dir hierarchy
60
+ + dir.c: optionally compute sha-1 of a .gitignore file
61
267
- There was a commented-out (instead of being marked to expect
268
- failure) test that documented a breakage that was fixed since the
269
- test was written; turn it into a proper test.
62
+ Teach the index to optionally remember already seen untracked files
63
+ to speed up "git status" in a working tree with tons of cruft.
64
65
272
-* sg/completion-config (2015-05-12) 2 commits
273
- (merged to 'next' on 2015-05-19 at c83fde1)
274
- + completion: simplify query for config variables
275
- + completion: add a helper function to get config variables
66
+* pt/pull-ff-vs-merge-ff (2015-05-18) 2 commits
67
+ (merged to 'next' on 2015-05-20 at 064a082)
68
+ + pull: parse pull.ff as a bool or string
69
+ + pull: make pull.ff=true override merge.ff
70
277
- Code clean-up for completion script (in contrib/).
71
+ The pull.ff configuration was supposed to override the merge.ff
72
+ configuration, but it didn't.
73
74
280
-* sg/completion-omit-credential-helpers (2015-05-06) 1 commit
281
- (merged to 'next' on 2015-05-11 at aa7e554)
282
- + completion: remove credential helpers from porcelain commands
75
+* pt/pull-log-n (2015-05-18) 1 commit
76
+ (merged to 'next' on 2015-05-20 at db6ce78)
77
+ + pull: handle --log=<n>
78
284
- The Git subcommand completion (in contrib/) listed credential
285
- helpers among candidates, which is not something the end user would
286
- invoke interatively.
79
+ "git pull --log" and "git pull --no-log" worked as expected, but
80
+ "git pull --log=20" did not.
81
82
289
-* sg/help-subcommands (2015-05-08) 1 commit
290
- (merged to 'next' on 2015-05-11 at 91e4f9e)
291
- + command-list.txt: fix whitespace inconsistency
292
- (this branch is used by sg/help-group.)
83
+* rs/plug-leak-in-pack-bitmaps (2015-05-19) 1 commit
84
+ (merged to 'next' on 2015-05-20 at b70f647)
85
+ + pack-bitmaps: plug memory leak, fix allocation size for recent_bitmaps
86
294
- A preparatory clean-up step.
87
+ The code to read pack-bitmap wanted to allocate a few hundred
88
+ pointers to a structure, but by mistake allocated and leaked memory
89
+ enough to hold that many actual structures. Correct the allocation
90
+ size and also have it on stack, as it is small enough.
91
92
--------------------------------------------------
93
[New Topics]
94
299
-* da/mergetool-winmerge (2015-05-20) 2 commits
300
- - mergetools: add winmerge as a builtin tool
301
- - mergetool--lib: set IFS for difftool and mergetool
302
-
303
- "git mergetool" learned to drive WinMerge as a backend.
304
-
305
- Will merge to 'next'.
306
-
307
-
308
-* jk/http-backend-deadlock-2.2 (2015-05-20) 3 commits
309
- - http-backend: spool ref negotiation requests to buffer
310
- - t5551: factor out tag creation
311
- - http-backend: fix die recursion with custom handler
312
- (this branch is used by jk/http-backend-deadlock and jk/http-backend-deadlock-2.3.)
313
-
314
- Communication between the HTTP server and http_backend process can
315
- lead to a dead-lock when relaying a large ref negotiation request.
316
- Diagnose the situation better, and mitigate it by reading such a
317
- request first into core (to a reasonable limit).
318
-
319
- This was wiggled back to apply to the 2.2 maintenance track
320
- (original was for 2.4).
321
-
322
- Will merge to 'next'.
323
-
324
-
325
-* jk/http-backend-deadlock-2.3 (2015-05-20) 1 commit
326
- - Merge branch 'jk/http-backend-deadlock-2.2' into jk/http-backend-deadlock-2.3
327
- (this branch is used by jk/http-backend-deadlock; uses jk/http-backend-deadlock-2.2.)
95
+* ah/send-email-sendmail-alias (2015-05-25) 2 commits
96
+ - t9001: write $HOME/, not ~/, to help shells without tilde expansion
97
+ - send-email: add sendmail email aliases format
98
+
99
+ "git send-email" learned the alias file format used by the sendmail
100
+ program (in an abbreviated form).
101
+
102
+ Reroll coming? What's queued is good enough?
103
+
104
+
105
+* bc/object-id (2015-05-25) 56 commits
106
+ (merged to 'next' on 2015-05-26 at 8d9f645)
107
+ + struct ref_lock: convert old_sha1 member to object_id
108
+ + warn_if_dangling_symref(): convert local variable "junk" to object_id
109
+ + each_ref_fn_adapter(): remove adapter
110
+ + rev_list_insert_ref(): remove unneeded arguments
111
+ + rev_list_insert_ref_oid(): new function, taking an object_oid
112
+ + mark_complete(): remove unneeded arguments
113
+ + mark_complete_oid(): new function, taking an object_oid
114
+ + clear_marks(): rewrite to take an object_id argument
115
+ + mark_complete(): rewrite to take an object_id argument
116
+ + send_ref(): convert local variable "peeled" to object_id
117
+ + upload-pack: rewrite functions to take object_id arguments
118
+ + find_symref(): convert local variable "unused" to object_id
119
+ + find_symref(): rewrite to take an object_id argument
120
+ + write_one_ref(): rewrite to take an object_id argument
121
+ + write_refs_to_temp_dir(): convert local variable sha1 to object_id
122
+ + submodule: rewrite to take an object_id argument
123
+ + shallow: rewrite functions to take object_id arguments
124
+ + handle_one_ref(): rewrite to take an object_id argument
125
+ + add_info_ref(): rewrite to take an object_id argument
126
+ + handle_one_reflog(): rewrite to take an object_id argument
127
+ + register_replace_ref(): rewrite to take an object_id argument
128
+ + remote: rewrite functions to take object_id arguments
129
+ + add_one_ref(): rewrite to take an object_id argument
130
+ + string_list_add_one_ref(): rewrite to take an object_id argument
131
+ + add_ref_decoration(): convert local variable original_sha1 to object_id
132
+ + add_ref_decoration(): rewrite to take an object_id argument
133
+ + show_head_ref(): convert local variable "unused" to object_id
134
+ + http-backend: rewrite to take an object_id argument
135
+ + append_similar_ref(): rewrite to take an object_id argument
136
+ + builtin/show-ref: rewrite to take an object_id argument
137
+ + show_ref(): convert local variable peeled to object_id
138
+ + builtin/show-ref: rewrite to use object_id
139
+ + fsck: change functions to use object_id
140
+ + cmd_show_branch(): fix error message
141
+ + builtin/show-branch: rewrite functions to work with object_id
142
+ + append_one_rev(): rewrite to work with object_id
143
+ + builtin/show-branch: rewrite functions to take object_id arguments
144
+ + append_matching_ref(): rewrite to take an object_id argument
145
+ + show_reference(): rewrite to take an object_id argument
146
+ + builtin/remote: rewrite functions to take object_id arguments
147
+ + add_branch_for_removal(): don't set "util" field of string_list entries
148
+ + add_branch_for_removal(): rewrite to take an object_id argument
149
+ + builtin/reflog: rewrite ref functions to take an object_id argument
150
+ + show_ref_cb(): rewrite to take an object_id argument
151
+ + builtin/pack-objects: rewrite to take an object_id argument
152
+ + name_ref(): rewrite to take an object_id argument
153
+ + grab_single_ref(): rewrite to take an object_id argument
154
+ + builtin/fetch: rewrite to take an object_id argument
155
+ + get_name(): rewrite to take an object_id argument
156
+ + add_pending_uninteresting_ref(): rewrite to take an object_id argument
157
+ + append_ref(): rewrite to take an object_id argument
158
+ + register_ref(): rewrite to take an object_id argument
159
+ + handle_one_ref(): rewrite to take an object_id argument
160
+ + builtin/rev-parse: rewrite to take an object_id argument
161
+ + each_ref_fn: change to take an object_id parameter
162
+ + refs: convert struct ref_entry to use struct object_id
163
+
164
+ for_each_ref() callback functions were taught to name the objects
165
+ not with "unsigned char sha1[20]" but with "struct object_id".
166
329
- Same for 2.3 maintenance track.
330
-
331
- Will merge to 'next'.
332
-
333
-
334
-* jk/stash-options (2015-05-20) 2 commits
335
- - stash: recognize "--help" for subcommands
336
- - stash: complain about unknown flags
337
-
338
- Make "git stash something --help" error out, so that users can
339
- safely say "git stash drop --help".
340
-
341
- Will merge to 'next'.
342
-
343
-
344
-* mc/commit-doc-grammofix (2015-05-19) 1 commit
345
- - Documentation/git-commit: grammofix
346
-
347
- Will merge to 'next'.
348
-
349
-
350
-* rs/janitorial (2015-05-20) 3 commits
351
- - dir: remove unused variable sb
352
- - clean: remove unused variable buf
353
- - use file_exists() to check if a file exists in the worktree
354
-
355
- Will merge to 'next'.
356
-
357
-
358
-* ah/send-email-postfix-alias (2015-05-21) 1 commit
359
- - git-send-email.perl: Add sendmail aliases support
360
-
361
-
362
-* fm/fetch-raw-sha1 (2015-05-21) 5 commits
363
- - SQUASH
364
- - upload-pack: optionally allow fetching reachable sha1
365
- - SQUASH
366
- - upload-pack: prepare to extend allow-tip-sha1-in-want
367
- - config.txt: clarify allowTipSHA1InWant with camelCase
368
-
369
- "git upload-pack" that serves "git fetch" can be told to serve
370
- commits that are not at the tip of any ref as long as they are
371
- reachable from a ref with uploadpack.allowReachableSHA1InWant
372
- configuration variable.
373
-
374
- Will squash the fixes in and then merge to 'next'.
375
-
376
-
377
-* jc/commit-slab (2015-05-22) 1 commit
378
- - commit-slab: introduce slabname##_peek() function
379
-
380
- Memory use reduction when commit-slab facility is used to annotate
381
- sparsely (which is not recommended in the first place).
382
-
383
-
384
-* mm/rebase-i-post-rewrite-exec (2015-05-22) 3 commits
385
- - t5407: use <<- to align the expected output
386
- - rebase -i: fix post-rewrite hook with failed exec command
387
- - rebase -i: demonstrate incorrect behavior of post-rewrite
388
-
389
- "git rebase -i" fired post-rewrite hook when it shouldn't (namely,
390
- when it was told to stop sequencing with 'exec' insn).
391
-
392
- Will merge to 'next'.
393
-
394
-
395
-* sb/submodule-doc-intro (2015-05-22) 1 commit
396
- - submodule documentation: reorder introductory paragraphs
397
-
398
- Will merge to 'next'.
167
+ Will merge to 'master'.
168
169
401
-* sb/test-bitmap-free-at-end (2015-05-22) 1 commit
402
- - test_bitmap_walk: free bitmap with bitmap_free
170
+* jc/diff-ws-check-deleted (2015-05-26) 4 commits
171
+ - diff.c: --ws-check-deleted option
172
+ - diff.c: add emit_del_line() and update callers of emit_line_0()
173
+ - t4015: separate common setup and per-test expectation
174
+ - t4015: modernise style
175
404
- Will merge to 'next'.
176
+ Allow whitespace breakages in 'deleted' lines to be also painted
177
+ in the output.
178
179
--------------------------------------------------
180
[Stalled]
@@ -619,32 +392,144 @@ of the repositories listed at
392
--------------------------------------------------
393
[Cooking]
394
395
+* da/mergetool-winmerge (2015-05-20) 2 commits
396
+ (merged to 'next' on 2015-05-26 at d6333e9)
397
+ + mergetools: add winmerge as a builtin tool
398
+ + mergetool--lib: set IFS for difftool and mergetool
399
+
400
+ "git mergetool" learned to drive WinMerge as a backend.
401
+
402
+ Will merge to 'master'.
403
+
404
+
405
+* jk/http-backend-deadlock-2.2 (2015-05-25) 3 commits
406
+ + http-backend: spool ref negotiation requests to buffer
407
+ + t5551: factor out tag creation
408
+ + http-backend: fix die recursion with custom handler
409
+ (this branch is used by jk/http-backend-deadlock and jk/http-backend-deadlock-2.3.)
410
+
411
+ Communication between the HTTP server and http_backend process can
412
+ lead to a dead-lock when relaying a large ref negotiation request.
413
+ Diagnose the situation better, and mitigate it by reading such a
414
+ request first into core (to a reasonable limit).
415
+
416
+ This was wiggled back to apply to the 2.2 maintenance track
417
+ (original was for 2.4).
418
+
419
+ Will merge to 'master'.
420
+
421
+
422
+* jk/http-backend-deadlock-2.3 (2015-05-25) 1 commit
423
+ + Merge branch 'jk/http-backend-deadlock-2.2' into jk/http-backend-deadlock-2.3
424
+ (this branch is used by jk/http-backend-deadlock; uses jk/http-backend-deadlock-2.2.)
425
+
426
+ Same for 2.3 maintenance track.
427
+
428
+ Will merge to 'master'.
429
+
430
+
431
+* jk/stash-options (2015-05-20) 2 commits
432
+ (merged to 'next' on 2015-05-26 at 5dcb026)
433
+ + stash: recognize "--help" for subcommands
434
+ + stash: complain about unknown flags
435
+
436
+ Make "git stash something --help" error out, so that users can
437
+ safely say "git stash drop --help".
438
+
439
+ Will merge to 'master'.
440
+
441
+
442
+* mc/commit-doc-grammofix (2015-05-19) 1 commit
443
+ (merged to 'next' on 2015-05-26 at 9d76e3b)
444
+ + Documentation/git-commit: grammofix
445
+
446
+ Will merge to 'master'.
447
+
448
+
449
+* rs/janitorial (2015-05-20) 3 commits
450
+ (merged to 'next' on 2015-05-26 at 9d5aee4)
451
+ + dir: remove unused variable sb
452
+ + clean: remove unused variable buf
453
+ + use file_exists() to check if a file exists in the worktree
454
+
455
+ Will merge to 'master'.
456
+
457
+
458
+* fm/fetch-raw-sha1 (2015-05-22) 3 commits
459
+ (merged to 'next' on 2015-05-26 at dc3f1b3)
460
+ + upload-pack: optionally allow fetching reachable sha1
461
+ + upload-pack: prepare to extend allow-tip-sha1-in-want
462
+ + config.txt: clarify allowTipSHA1InWant with camelCase
463
+
464
+ "git upload-pack" that serves "git fetch" can be told to serve
465
+ commits that are not at the tip of any ref as long as they are
466
+ reachable from a ref with uploadpack.allowReachableSHA1InWant
467
+ configuration variable.
468
+
469
+ Will merge to 'master'.
470
+
471
+
472
+* jc/commit-slab (2015-05-22) 1 commit
473
+ - commit-slab: introduce slabname##_peek() function
474
+
475
+ Memory use reduction when commit-slab facility is used to annotate
476
+ sparsely (which is not recommended in the first place).
477
+
478
+
479
+* mm/rebase-i-post-rewrite-exec (2015-05-22) 3 commits
480
+ (merged to 'next' on 2015-05-26 at 8ddaab1)
481
+ + t5407: use <<- to align the expected output
482
+ + rebase -i: fix post-rewrite hook with failed exec command
483
+ + rebase -i: demonstrate incorrect behavior of post-rewrite
484
+
485
+ "git rebase -i" fired post-rewrite hook when it shouldn't (namely,
486
+ when it was told to stop sequencing with 'exec' insn).
487
+
488
+ Will merge to 'master'.
489
+
490
+
491
+* sb/submodule-doc-intro (2015-05-22) 1 commit
492
+ - submodule documentation: reorder introductory paragraphs
493
+
494
+ What's the doneness of this one???
495
+
496
+
497
+* sb/test-bitmap-free-at-end (2015-05-22) 1 commit
498
+ (merged to 'next' on 2015-05-26 at 1014ebf)
499
+ + test_bitmap_walk: free bitmap with bitmap_free
500
+
501
+ Will merge to 'master'.
502
+
503
+
504
* dt/cat-file-follow-symlinks (2015-05-20) 3 commits
623
- - cat-file: add --follow-symlinks to --batch
624
- - sha1_name: get_sha1_with_context learns to follow symlinks
625
- - tree-walk: learn get_tree_entry_follow_symlinks
505
+ (merged to 'next' on 2015-05-26 at 7ae52d4)
506
+ + cat-file: add --follow-symlinks to --batch
507
+ + sha1_name: get_sha1_with_context learns to follow symlinks
508
+ + tree-walk: learn get_tree_entry_follow_symlinks
509
510
"git cat-file --batch(-check)" learned the "--follow-symlinks"
628
- option that follows an in-tree symblic links when asked about an
511
+ option that follows an in-tree symbolic links when asked about an
512
object via extended SHA-1 syntax, e.g. HEAD:RelNotes that points at
513
Documentation/RelNotes/2.5.0.txt. With the new option, the command
514
behaves as if HEAD:Documentation/RelNotes/2.5.0.txt was given as
515
input instead.
516
634
- Will merge to 'next'.
517
+ Will merge to 'master'.
518
519
520
* dt/clean-pathspec-filter-then-lstat (2015-05-18) 1 commit
638
- - clean: only lstat files in pathspec
521
+ (merged to 'next' on 2015-05-26 at 9b24d71)
522
+ + clean: only lstat files in pathspec
523
524
"git clean pathspec..." tried to lstat(2) and complain even for
525
paths outside the given pathspec.
526
643
- Will merge to 'next'.
527
+ Will merge to 'master'.
528
529
530
* jh/filter-empty-contents (2015-05-18) 1 commit
647
- - sha1_file: pass empty buffer to index empty file
531
+ (merged to 'next' on 2015-05-26 at 9cad398)
532
+ + sha1_file: pass empty buffer to index empty file
533
534
The clean/smudge interface did not work well when filtering an
535
empty contents (failed and then passed the empty input through).
@@ -652,11 +537,12 @@ of the repositories listed at
537
an empty input is nonsense, but if the user wants to do strange
538
things, then why not?
539
655
- Will merge to 'next'.
540
+ Will merge to 'master'.
541
542
658
-* jk/http-backend-deadlock (2015-05-20) 1 commit
659
- - Merge branch 'jk/http-backend-deadlock-2.3' into jk/http-backend-deadlock
543
+* jk/http-backend-deadlock (2015-05-25) 1 commit
544
+ (merged to 'next' on 2015-05-26 at 9f3bd8a)
545
+ + Merge branch 'jk/http-backend-deadlock-2.3' into jk/http-backend-deadlock
546
(this branch uses jk/http-backend-deadlock-2.2 and jk/http-backend-deadlock-2.3.)
547
548
Communication between the HTTP server and http_backend process can
@@ -664,114 +550,37 @@ of the repositories listed at
550
Diagnose the situation better, and mitigate it by reading such a
551
request first into core (to a reasonable limit).
552
667
- Will merge to 'next'.
668
-
669
-
670
-* jk/rerere-forget-check-enabled (2015-05-14) 1 commit
671
- (merged to 'next' on 2015-05-19 at bfe67dc)
672
- + rerere: exit silently on "forget" when rerere is disabled
673
-
674
- "git rerere forget" in a repository without rerere enabled gave a
675
- cryptic error message; it should be a silent no-op instead.
676
-
553
Will merge to 'master'.
554
555
556
* mm/log-format-raw-doc (2015-05-20) 2 commits
681
- - Documentation/log: clarify sha1 non-abbreviation in log --raw
682
- - Documentation/log: clarify what --raw means
557
+ (merged to 'next' on 2015-05-26 at 97e2c9d)
558
+ + Documentation/log: clarify sha1 non-abbreviation in log --raw
559
+ + Documentation/log: clarify what --raw means
560
561
Clarify that "log --raw" and "log --format=raw" are unrelated
562
concepts.
563
687
- Will merge to 'next'.
688
-
689
-
690
-* pt/pull-ff-vs-merge-ff (2015-05-18) 2 commits
691
- (merged to 'next' on 2015-05-20 at 064a082)
692
- + pull: parse pull.ff as a bool or string
693
- + pull: make pull.ff=true override merge.ff
694
-
695
- The pull.ff configuration was supposed to override the merge.ff
696
- configuration, but it didn't.
697
-
698
- Will merge to 'master'.
699
-
700
-
701
-* pt/pull-log-n (2015-05-18) 1 commit
702
- (merged to 'next' on 2015-05-20 at db6ce78)
703
- + pull: handle --log=<n>
704
-
705
- "git pull --log" and "git pull --no-log" worked as expected, but
706
- "git pull --log=20" did not.
707
-
708
- Will merge to 'master'.
709
-
710
-
711
-* rs/plug-leak-in-pack-bitmaps (2015-05-19) 1 commit
712
- (merged to 'next' on 2015-05-20 at b70f647)
713
- + pack-bitmaps: plug memory leak, fix allocation size for recent_bitmaps
714
-
715
- The code to read pack-bitmap wanted to allocate a few hundred
716
- pointers to a structure, but by mistake allocated and leaked memory
717
- enough to hold that many actual structures. Correct the allocation
718
- size and also have it on stack, as it is small enough.
719
-
564
Will merge to 'master'.
565
566
567
* sg/help-group (2015-05-21) 5 commits
724
- - help: respect new common command grouping
725
- - command-list.txt: drop the "common" tag
726
- - generate-cmdlist: parse common group commands
727
- - command-list.txt: add the common groups block
728
- - command-list: prepare machinery for upcoming "common groups" section
568
+ (merged to 'next' on 2015-05-26 at 2749912)
569
+ + help: respect new common command grouping
570
+ + command-list.txt: drop the "common" tag
571
+ + generate-cmdlist: parse common group commands
572
+ + command-list.txt: add the common groups block
573
+ + command-list: prepare machinery for upcoming "common groups" section
574
575
Group list of commands shown by "git help" along the workflow
576
elements to help early learners.
577
733
- Will merge to 'next'.
734
-
735
-
736
-* nd/untracked-cache (2015-03-12) 24 commits
737
- (merged to 'next' on 2015-05-19 at 26e619b)
738
- + git-status.txt: advertisement for untracked cache
739
- + untracked cache: guard and disable on system changes
740
- + mingw32: add uname()
741
- + t7063: tests for untracked cache
742
- + update-index: test the system before enabling untracked cache
743
- + update-index: manually enable or disable untracked cache
744
- + status: enable untracked cache
745
- + untracked-cache: temporarily disable with $GIT_DISABLE_UNTRACKED_CACHE
746
- + untracked cache: mark index dirty if untracked cache is updated
747
- + untracked cache: print stats with $GIT_TRACE_UNTRACKED_STATS
748
- + untracked cache: avoid racy timestamps
749
- + read-cache.c: split racy stat test to a separate function
750
- + untracked cache: invalidate at index addition or removal
751
- + untracked cache: load from UNTR index extension
752
- + untracked cache: save to an index extension
753
- + ewah: add convenient wrapper ewah_serialize_strbuf()
754
- + untracked cache: don't open non-existent .gitignore
755
- + untracked cache: mark what dirs should be recursed/saved
756
- + untracked cache: record/validate dir mtime and reuse cached output
757
- + untracked cache: make a wrapper around {open,read,close}dir()
758
- + untracked cache: invalidate dirs recursively if .gitignore changes
759
- + untracked cache: initial untracked cache validation
760
- + untracked cache: record .gitignore information and dir hierarchy
761
- + dir.c: optionally compute sha-1 of a .gitignore file
762
-
763
- Teach the index to optionally remember already seen untracked files
764
- to speed up "git status" in a working tree with tons of cruft.
765
-
766
- Will cook in 'next'.
578
+ Will merge to 'master'.
579
580
769
-* ld/p4-editor-multi-words (2015-05-20) 6 commits
770
- - SQUASH
581
+* ld/p4-editor-multi-words (2015-05-26) 3 commits
582
- git-p4: tests: use test-chmtime in place of touch
772
- - SQUASH
583
- git-p4: fix handling of multi-word P4EDITOR
774
- - SQUASH
584
- git-p4: add failing test for P4EDITOR handling
585
586
Unlike "$EDITOR" and "$GIT_EDITOR" that can hold the path to the
@@ -780,6 +589,8 @@ of the repositories listed at
589
variable that name the editor "$P4EDITOR" (and "$EDITOR", too).
590
Make it in line with the rest of Git, as well as with Perforce.
591
592
+ Will merge to 'next'.
593
+
594
595
* pt/pull-tests (2015-05-18) 8 commits
596
- t5520: check reflog action in fast-forward merge
@@ -801,28 +612,29 @@ of the repositories listed at
612
613
614
* jk/at-push-sha1 (2015-05-22) 16 commits
804
- - for-each-ref: accept "%(push)" format
805
- - for-each-ref: use skip_prefix instead of starts_with
806
- - sha1_name: implement @{push} shorthand
807
- - sha1_name: refactor interpret_upstream_mark
808
- - sha1_name: refactor upstream_mark
809
- - remote.c: add branch_get_push
810
- - remote.c: return upstream name from stat_tracking_info
811
- - remote.c: untangle error logic in branch_get_upstream
812
- - remote.c: report specific errors from branch_get_upstream
813
- - remote.c: introduce branch_get_upstream helper
814
- - remote.c: hoist read_config into remote_get_1
815
- - remote.c: provide per-branch pushremote name
816
- - remote.c: hoist branch.*.remote lookup out of remote_get_1
817
- - remote.c: drop "remote" pointer from "struct branch"
818
- - remote.c: refactor setup of branch->merge list
819
- - remote.c: drop default_remote_name variable
615
+ (merged to 'next' on 2015-05-26 at d9d342f)
616
+ + for-each-ref: accept "%(push)" format
617
+ + for-each-ref: use skip_prefix instead of starts_with
618
+ + sha1_name: implement @{push} shorthand
619
+ + sha1_name: refactor interpret_upstream_mark
620
+ + sha1_name: refactor upstream_mark
621
+ + remote.c: add branch_get_push
622
+ + remote.c: return upstream name from stat_tracking_info
623
+ + remote.c: untangle error logic in branch_get_upstream
624
+ + remote.c: report specific errors from branch_get_upstream
625
+ + remote.c: introduce branch_get_upstream helper
626
+ + remote.c: hoist read_config into remote_get_1
627
+ + remote.c: provide per-branch pushremote name
628
+ + remote.c: hoist branch.*.remote lookup out of remote_get_1
629
+ + remote.c: drop "remote" pointer from "struct branch"
630
+ + remote.c: refactor setup of branch->merge list
631
+ + remote.c: drop default_remote_name variable
632
633
Introduce <branch>@{push} short-hand to denote the remote-tracking
634
branch that tracks the branch at the remote the <branch> would be
635
pushed to.
636
825
- Will merge to 'next'.
637
+ Will merge to 'master'.
638
639
640
* ee/clean-remove-dirs (2015-04-26) 5 commits
@@ -842,7 +654,7 @@ of the repositories listed at
654
* jc/merge-drop-old-syntax (2015-04-29) 1 commit
655
- merge: drop 'git merge <message> HEAD <commit>' syntax
656
845
- Stop supporting "git merge <messsage> HEAD <commit>" syntax that
657
+ Stop supporting "git merge <message> HEAD <commit>" syntax that
658
has been deprecated since October 2007.
659
660
Will merge to 'next' and keep there during the 2.5 cycle.