What's cooking (2016/09 #04)
Junio C Hamano committed
Sep 14, 2016 at 15:59 UTC
7d97326461cff3da63436b22ac814b74aad343b8
1 file changed
+481
-417
whats-cooking.txt
+481
-417
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Sep 2016, #03; Fri, 9)
4
-X-master-at: cda1bbd474805e653dda8a71d4ea3790e2a66cbb
5
-X-next-at: 1e96ab9c6aed24fcda3720972963c6f1bc62496f
3
+Subject: What's cooking in git.git (Sep 2016, #04; Wed, 14)
4
+X-master-at: 35f6318d44379452d8d33e880d8df0267b4a0cd0
5
+X-next-at: 15890ea0079e968c44f020c9f65b29f823b3f4cd
6
7
-What's cooking in git.git (Sep 2016, #03; Fri, 9)
7
+What's cooking in git.git (Sep 2016, #04; Wed, 14)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,14 +12,6 @@ Here are the topics that have been cooking. Commits prefixed with
12
'+' are in 'next'. The ones marked with '.' do not appear in any of
13
the integration branches, but I am still holding onto them.
14
15
-I've started merging topics that have been cooking in 'next' to
16
-'master', and the next step will be to rewind and rebuild 'next',
17
-and merge those that have been waiting in 'pu' to 'next'. There are
18
-a few more topics in flight that may be ready to be picked up but I
19
-haven't, and other topics in flight that may not be quite ready.
20
-They will be picked up after topics that have already been in-tree
21
-starts quieting down.
22
-
15
You can find the changes described here in the integration branches
16
of the repositories listed at
17
@@ -28,152 +20,321 @@ of the repositories listed at
20
--------------------------------------------------
21
[Graduated to "master"]
22
31
-* bh/diff-highlight-graph (2016-08-31) 6 commits
32
- (merged to 'next' on 2016-08-31 at 523a15f)
33
- + diff-highlight: avoid highlighting combined diffs
34
- + diff-highlight: add multi-byte tests
35
- + diff-highlight: ignore test cruft
36
- + diff-highlight: add support for --graph output
37
- + diff-highlight: add failing test for handling --graph output
38
- + diff-highlight: add some tests
39
-
40
- "diff-highlight" script (in contrib/) learned to work better with
41
- "git log -p --graph" output.
42
-
43
-
44
-* cc/receive-pack-limit (2016-08-24) 3 commits
45
- (merged to 'next' on 2016-08-25 at bc74b5b)
46
- + receive-pack: allow a maximum input size to be specified
47
- + unpack-objects: add --max-input-size=<size> option
48
- + index-pack: add --max-input-size=<size> option
49
-
50
- An incoming "git push" that attempts to push too many bytes can now
51
- be rejected by setting a new configuration variable at the receiving
52
- end.
53
-
54
-
55
-* hv/doc-commit-reference-style (2016-08-26) 1 commit
56
- (merged to 'next' on 2016-08-31 at 68fb778)
57
- + SubmittingPatches: use gitk's "Copy commit summary" format
58
-
59
- A small doc update.
60
-
61
-
62
-* jh/status-v2-porcelain (2016-08-12) 9 commits
63
- (merged to 'next' on 2016-08-31 at e71f595)
64
- + status: unit tests for --porcelain=v2
65
- + test-lib-functions.sh: add lf_to_nul helper
66
- + git-status.txt: describe --porcelain=v2 format
67
- + status: print branch info with --porcelain=v2 --branch
68
- + status: print per-file porcelain v2 status data
69
- + status: collect per-file data for --porcelain=v2
70
- + status: support --porcelain[=<version>]
71
- + status: cleanup API to wt_status_print
72
- + status: rename long-format print routines
73
-
74
- Enhance "git status --porcelain" output by collecting more data on
75
- the state of the index and the working tree files, which may
76
- further be used to teach git-prompt (in contrib/) to make fewer
77
- calls to git.
78
-
79
-
80
-* jk/delta-base-cache (2016-08-23) 7 commits
81
- (merged to 'next' on 2016-08-25 at f1c141a)
82
- + t/perf: add basic perf tests for delta base cache
83
- + delta_base_cache: use hashmap.h
84
- + delta_base_cache: drop special treatment of blobs
85
- + delta_base_cache: use list.h for LRU
86
- + release_delta_base_cache: reuse existing detach function
87
- + clear_delta_base_cache_entry: use a more descriptive name
88
- + cache_or_unpack_entry: drop keep_cache parameter
89
-
90
- The delta-base-cache mechanism has been a key to the performance in
91
- a repository with a tightly packed packfile, but it did not scale
92
- well even with a larger value of core.deltaBaseCacheLimit.
93
-
94
-
95
-* jk/format-patch-number-singleton-patch-with-cover (2016-08-23) 1 commit
96
- (merged to 'next' on 2016-08-25 at a4737fb)
97
- + format-patch: show 0/1 and 1/1 for singleton patch with cover letter
98
-
99
- "git format-patch --cover-letter HEAD^" to format a single patch
100
- with a separate cover letter now numbers the output as [PATCH 0/1]
101
- and [PATCH 1/1] by default.
102
-
103
-
104
-* po/range-doc (2016-08-13) 12 commits
105
- (merged to 'next' on 2016-08-31 at d29870b)
106
- + doc: revisions: sort examples and fix alignment of the unchanged
107
- + doc: revisions: show revision expansion in examples
108
- + doc: revisions - clarify reachability examples
109
- + doc: revisions - define `reachable`
110
- + doc: gitrevisions - clarify 'latter case' is revision walk
111
- + doc: gitrevisions - use 'reachable' in page description
112
- + doc: revisions: single vs multi-parent notation comparison
113
- + doc: revisions: extra clarification of <rev>^! notation effects
114
- + doc: revisions: give headings for the two and three dot notations
115
- + doc: show the actual left, right, and boundary marks
116
- + doc: revisions - name the left and right sides
117
- + doc: use 'symmetric difference' consistently
118
-
119
- Clarify various ways to specify the "revision ranges" in the
120
- documentation.
121
-
122
-
123
-* rt/help-unknown (2016-08-30) 3 commits
124
- (merged to 'next' on 2016-08-30 at db2a5b0)
125
- + help: make option --help open man pages only for Git commands
126
- + help: introduce option --exclude-guides
127
- + Merge branch 'js/no-html-bypass-on-windows' into rt/help-unknown
128
-
129
- "git nosuchcommand --help" said "No manual entry for gitnosuchcommand",
130
- which was not intuitive, given that "git nosuchcommand" said "git:
131
- 'nosuchcommand' is not a git command".
132
-
133
-
134
-* sb/submodule-clone-rr (2016-08-17) 8 commits
135
- (merged to 'next' on 2016-08-31 at 08b4b7d)
136
- + clone: recursive and reference option triggers submodule alternates
137
- + clone: implement optional references
138
- + clone: clarify option_reference as required
139
- + clone: factor out checking for an alternate path
140
- + submodule--helper update-clone: allow multiple references
141
- + submodule--helper module-clone: allow multiple references
142
- + t7408: merge short tests, factor out testing method
143
- + t7408: modernize style
144
-
145
- "git clone --resurse-submodules --reference $path $URL" is a way to
146
- reduce network transfer cost by borrowing objects in an existing
147
- $path repository when cloning the superproject from $URL; it
148
- learned to also peek into $path for presense of corresponding
149
- repositories of submodules and borrow objects from there when able.
23
+* ep/use-git-trace-curl-in-tests (2016-09-07) 4 commits
24
+ (merged to 'next' on 2016-09-08 at 04372de)
25
+ + t5551-http-fetch-smart.sh: use the GIT_TRACE_CURL environment var
26
+ + t5550-http-fetch-dumb.sh: use the GIT_TRACE_CURL environment var
27
+ + test-lib.sh: preserve GIT_TRACE_CURL from the environment
28
+ + t5541-http-push-smart.sh: use the GIT_TRACE_CURL environment var
29
+
30
+ Update a few tests that used to use GIT_CURL_VERBOSE to use the
31
+ newer GIT_TRACE_CURL.
32
+
33
+
34
+* jc/am-read-author-file (2016-08-30) 1 commit
35
+ (merged to 'next' on 2016-09-08 at d2db42f)
36
+ + am: refactor read_author_script()
37
+
38
+ Extract a small helper out of the function that reads the authors
39
+ script file "git am" internally uses.
40
+ This by itself is not useful until a second caller appears in the
41
+ future for "rebase -i" helper.
42
+
43
+
44
+* jc/forbid-symbolic-ref-d-HEAD (2016-09-02) 1 commit
45
+ (merged to 'next' on 2016-09-08 at cd8c1b3)
46
+ + symbolic-ref -d: do not allow removal of HEAD
47
+
48
+ "git symbolic-ref -d HEAD" happily removes the symbolic ref, but
49
+ the resulting repository becomes an invalid one. Teach the command
50
+ to forbid removal of HEAD.
51
+
52
+
53
+* jc/submodule-anchor-git-dir (2016-09-01) 1 commit
54
+ (merged to 'next' on 2016-09-08 at b6f20cf)
55
+ + submodule: avoid auto-discovery in prepare_submodule_repo_env()
56
+
57
+ Having a submodule whose ".git" repository is somehow corrupt
58
+ caused a few commands that recurse into submodules loop forever.
59
+
60
+
61
+* jk/diff-submodule-diff-inline (2016-08-31) 8 commits
62
+ (merged to 'next' on 2016-09-02 at 734e42c)
63
+ + diff: teach diff to display submodule difference with an inline diff
64
+ + submodule: refactor show_submodule_summary with helper function
65
+ + submodule: convert show_submodule_summary to use struct object_id *
66
+ + allow do_submodule_path to work even if submodule isn't checked out
67
+ + diff: prepare for additional submodule formats
68
+ + graph: add support for --line-prefix on all graph-aware output
69
+ + diff.c: remove output_prefix_length field
70
+ + cache: add empty_tree_oid object and helper function
71
+
72
+ The "git diff --submodule={short,log}" mechanism has been enhanced
73
+ to allow "--submodule=diff" to show the patch between the submodule
74
+ commits bound to the superproject.
75
+
76
+
77
+* jk/squelch-false-warning-from-gcc-o3 (2016-08-31) 2 commits
78
+ (merged to 'next' on 2016-09-08 at c9a2af6)
79
+ + color_parse_mem: initialize "struct color" temporary
80
+ + error_errno: use constant return similar to error()
81
+
82
+ Compilation fix.
83
+
84
+
85
+* jk/test-lib-drop-pid-from-results (2016-08-30) 1 commit
86
+ (merged to 'next' on 2016-09-08 at 0967b0b)
87
+ + test-lib: drop PID from test-results/*.count
88
+
89
+ The test framework left the number of tests and success/failure
90
+ count in the t/test-results directory, keyed by the name of the
91
+ test script plus the process ID. The latter however turned out not
92
+ to serve any useful purpose. The process ID part of the filename
93
+ has been removed.
94
+
95
+
96
+* js/t6026-clean-up (2016-09-07) 1 commit
97
+ (merged to 'next' on 2016-09-08 at 5ad2fc1)
98
+ + t6026-merge-attr: clean up background process at end of test case
99
+
100
+ A test spawned a short-lived background process, which sometimes
101
+ prevented the test directory from getting removed at the end of the
102
+ script on some platforms.
103
+
104
+
105
+* js/t9903-chaining (2016-09-07) 1 commit
106
+ (merged to 'next' on 2016-09-08 at 162a3c9)
107
+ + t9903: fix broken && chain
108
+
109
+ Test fix.
110
+
111
+
112
+* rs/compat-strdup (2016-09-07) 1 commit
113
+ (merged to 'next' on 2016-09-08 at 46acfdf)
114
+ + compat: move strdup(3) replacement to its own file
115
+
116
+ Code cleanup.
117
+
118
+
119
+* rs/hex2chr (2016-09-07) 1 commit
120
+ (merged to 'next' on 2016-09-08 at 7266d5b)
121
+ + introduce hex2chr() for converting two hexadecimal digits to a character
122
+
123
+ Code cleanup.
124
+
125
+
126
+* sb/transport-report-missing-submodule-on-stderr (2016-09-08) 1 commit
127
+ (merged to 'next' on 2016-09-08 at 3550831)
128
+ + transport: report missing submodule pushes consistently on stderr
129
+
130
+ Message cleanup.
131
+
132
+
133
+* sb/xdiff-remove-unused-static-decl (2016-09-07) 1 commit
134
+ (merged to 'next' on 2016-09-08 at 39e41dd)
135
+ + xdiff: remove unneeded declarations
136
+
137
+ Code cleanup.
138
139
--------------------------------------------------
140
[New Topics]
141
154
-* jk/patch-ids-no-merges (2016-09-09) 2 commits
155
- - patch-ids: define patch-id of merge commits as "null"
156
- - patch-ids: turn off rename detection
142
+* et/add-chmod-x (2016-09-12) 1 commit
143
+ - add: document the chmod option
144
+ (this branch is used by tg/add-chmod+x-fix.)
145
158
- "git log --cherry-pick" used to include merge commits as candidates
159
- to be matched up with other commits, resulting a lot of wasted time.
160
- The patch-id generation logic has been updated to ignore merges to
161
- avoid the wastage.
146
+ "git add --chmod=+x" added recently lacked documentation, which has
147
+ been corrected.
148
149
Will merge to 'next'.
150
151
166
-* js/git-gui-commit-gpgsign (2016-09-09) 2 commits
167
- - Merge branch 'js/commit-gpgsign' of ../git-gui into js/git-gui-commit-gpgsign
168
- - git-gui: respect commit.gpgsign again
152
+* js/libify-require-clean-work-tree (2016-09-12) 5 commits
153
+ - wt-status: teach has_{unstaged,uncommitted}_changes() about submodules
154
+ - Export also the has_un{staged,committed}_changed() functions
155
+ - Make the require_clean_work_tree() function truly reusable
156
+ - pull: make code more similar to the shell script again
157
+ - pull: drop confusing prefix parameter of die_on_unclean_work_tree()
158
+
159
+ The require_clean_work_tree() helper was recreated in C when "git
160
+ pull" was rewritten from shell; the helper is now made available to
161
+ other callers in preparation for upcoming "rebase -i" work.
162
+
163
+ Waiting for comments.
164
+ Modulo a few minor nits, this looked almost ready.
165
+ cf. <xmqqtwdl2bhm.fsf@gitster.mtv.corp.google.com>
166
+ cf. <xmqqpoo92bdr.fsf@gitster.mtv.corp.google.com>
167
+
168
+
169
+* ks/perf-build-with-autoconf (2016-09-13) 1 commit
170
+ - t/perf/run: Don't forget to copy config.mak.autogen & friends
171
+
172
+ Performance tests done via "t/perf" did not use the same set of
173
+ build configuration if the user relied on autoconf generated
174
+ configuration.
175
+
176
+ Will merge to 'next'.
177
+
178
+
179
+* tg/add-chmod+x-fix (2016-09-14) 5 commits
180
+ - SQUASH???
181
+ - add: modify already added files when --chmod is given
182
+ - read-cache: introduce chmod_index_entry
183
+ - update-index: add test for chmod flags
184
+ - Merge branch 'ib/t3700-add-chmod-x-updates' into tg/add-chmod+x-fix
185
+ (this branch uses et/add-chmod-x.)
186
+
187
+ "git add --chmod=+x <pathspec>" added recently only toggled the
188
+ executable bit for paths that are either new or modified. This has
189
+ been corrected to flip the executable bit for all paths that match
190
+ the given pathspec.
191
+
192
+ Waiting for an ack for SQUASH???
193
+
194
+
195
+* bw/ls-files-recurse-submodules (2016-09-13) 3 commits
196
+ - SQUASH??? Undecided
197
+ - SQUASH???
198
+ - ls-files: adding support for submodules
199
+
200
+ "git ls-files" learned "--recurse-submodules" option that can be
201
+ used to get a listing of tracked files across submodules (i.e. this
202
+ only works with "--cached" option, not for listing untracked or
203
+ ignored files). This would be a useful tool to sit on the upstream
204
+ side of a pipe that is read with xargs to work on all working tree
205
+ files from the top-level superproject.
206
+
207
+ Waiting for the discussion to conclude.
208
+
209
+
210
+* bw/pathspec-remove-unused-extern-decl (2016-09-13) 1 commit
211
+ - pathspec: remove unnecessary function prototypes
212
+
213
+ Code cleanup.
214
+
215
+ Will merge to 'next'.
216
+
217
+
218
+* ew/http-do-not-forget-to-call-curl-multi-remove-handle (2016-09-13) 3 commits
219
+ - http: always remove curl easy from curlm session on release
220
+ - http: consolidate #ifdefs for curl_multi_remove_handle
221
+ - http: warn on curl_multi_add_handle failures
222
+
223
+ The http transport (with curl-multi option, which is the default
224
+ these days) failed to remove curl-easy handle from a curlm session,
225
+ which led to unnecessary API failures.
226
+
227
+ Will merge to 'next'.
228
+
229
+
230
+* jk/delta-base-cache (2016-09-12) 1 commit
231
+ - add_delta_base_cache: use list_for_each_safe
232
+
233
+ Recently we updated the code to manage the in-core cache that holds
234
+ objects that have recently been used to reconstitute other objects
235
+ that are stored as deltas against them, but the update used an
236
+ incorrect API function to manage the list of these objects. This
237
+ has been fixed.
238
+
239
+ Will merge to 'next'.
240
+ This is a last-minute fix to a topic that graduated to 'master'
241
+ post 2.10 release.
242
+
243
+
244
+* jk/setup-sequence-update (2016-09-13) 16 commits
245
+ - t1007: factor out repeated setup
246
+ - init: reset cached config when entering new repo
247
+ - init: expand comments explaining config trickery
248
+ - config: only read .git/config from configured repos
249
+ - test-config: setup git directory
250
+ - t1302: use "git -C"
251
+ - pager: handle early config
252
+ - pager: use callbacks instead of configset
253
+ - pager: make pager_program a file-local static
254
+ - pager: stop loading git_default_config()
255
+ - pager: remove obsolete comment
256
+ - diff: always try to set up the repository
257
+ - diff: handle --no-index prefixes consistently
258
+ - diff: skip implicit no-index check when given --no-index
259
+ - patch-id: use RUN_SETUP_GENTLY
260
+ - hash-object: always try to set up the git repository
261
+
262
+ There were numerous corner cases in which the configuration files
263
+ are read and used or not read at all depending on the directory a
264
+ Git command was run, leading to inconsistent behaviour. The code
265
+ to set-up repository access at the beginning of a Git process has
266
+ been updated to fix them.
267
+
268
+ Will merge to 'next'.
269
+
270
+
271
+* ls/filter-process (2016-09-13) 10 commits
272
+ - convert: add filter.<driver>.process option
273
+ - convert: make apply_filter() adhere to standard Git error handling
274
+ - convert: modernize tests
275
+ - convert: quote filter names in error messages
276
+ - pkt-line: add functions to read/write flush terminated packet streams
277
+ - pkt-line: add packet_write_gently()
278
+ - pkt-line: add packet_flush_gently()
279
+ - pkt-line: add packet_write_fmt_gently()
280
+ - pkt-line: extract set_packet_header()
281
+ - pkt-line: rename packet_write() to packet_write_fmt()
282
+
283
+ The smudge/clean filter API expect an external process is spawned
284
+ to filter the contents for each path that has a filter defined. A
285
+ new type of "process" filter API has been added to allow the first
286
+ request to run the filter for a path to spawn a single process, and
287
+ all filtering need is served by this single process for multiple
288
+ paths, reducing the process creation overhead.
289
+
290
+ Waiting for the discussion to conclude.
291
+ cf. <20160910062919.GB11001@tb-raspi> etc.
292
+
293
+
294
+* rs/checkout-some-states-are-const (2016-09-13) 1 commit
295
+ - checkout: constify parameters of checkout_stage() and checkout_merged()
296
+
297
+ Code cleanup.
298
+
299
+ Will merge to 'next'.
300
+
301
+
302
+* rs/pack-sort-with-llist-mergesort (2016-09-13) 1 commit
303
+ - sha1_file: use llist_mergesort() for sorting packs
304
+
305
+ Code cleanup.
306
+
307
+ Will merge to 'next'.
308
+
309
+
310
+* rs/strbuf-remove-fix (2016-09-13) 1 commit
311
+ - strbuf: use valid pointer in strbuf_remove()
312
+
313
+ Code cleanup.
314
+
315
+ Will merge to 'next'.
316
170
- "git commit-tree" stopped reading commit.gpgsign configuration
171
- variable that was meant for Porcelain "git commit" in Git 2.9; we
172
- forgot to update "git gui" to look at the configuration to match
173
- this change.
317
+
318
+* rs/unpack-trees-reduce-file-scope-global (2016-09-13) 1 commit
319
+ - unpack-trees: pass checkout state explicitly to check_updates()
320
+
321
+ Code cleanup.
322
+
323
+ Will merge to 'next'.
324
+
325
+
326
+* mr/vcs-svn-printf-ulong (2016-09-14) 1 commit
327
+ - vcs-svn/fast_export: fix timestamp fmt specifiers
328
+
329
+ Code cleanup.
330
331
Will merge to 'next'.
332
333
+
334
+* hv/submodule-not-yet-pushed-fix (2016-09-14) 2 commits
335
+ - serialize collection of refs that contain submodule changes
336
+ - serialize collection of changed submodules
337
+
338
--------------------------------------------------
339
[Stalled]
340
@@ -427,6 +588,31 @@ of the repositories listed at
588
--------------------------------------------------
589
[Cooking]
590
591
+* jk/patch-ids-no-merges (2016-09-12) 2 commits
592
+ - patch-ids: refuse to compute patch-id for merge commit
593
+ - patch-ids: turn off rename detection
594
+
595
+ "git log --cherry-pick" used to include merge commits as candidates
596
+ to be matched up with other commits, resulting a lot of wasted time.
597
+ The patch-id generation logic has been updated to ignore merges to
598
+ avoid the wastage.
599
+
600
+ Will merge to 'next'.
601
+
602
+
603
+* js/git-gui-commit-gpgsign (2016-09-11) 2 commits
604
+ (merged to 'next' on 2016-09-12 at 05350ab)
605
+ + Merge branch 'js/commit-gpgsign' of ../git-gui into js/git-gui-commit-gpgsign
606
+ + git-gui: respect commit.gpgsign again
607
+
608
+ "git commit-tree" stopped reading commit.gpgsign configuration
609
+ variable that was meant for Porcelain "git commit" in Git 2.9; we
610
+ forgot to update "git gui" to look at the configuration to match
611
+ this change.
612
+
613
+ Will merge to 'master'.
614
+
615
+
616
* bc/object-id (2016-09-07) 20 commits
617
- builtin/reset: convert to use struct object_id
618
- builtin/commit-tree: convert to struct object_id
@@ -459,50 +645,22 @@ of the repositories listed at
645
"status --porcelain-v2"). Extra sets of eyes double-checking for
646
mismerges are highly appreciated.
647
462
-
463
-* ep/use-git-trace-curl-in-tests (2016-09-07) 4 commits
464
- (merged to 'next' on 2016-09-08 at 04372de)
465
- + t5551-http-fetch-smart.sh: use the GIT_TRACE_CURL environment var
466
- + t5550-http-fetch-dumb.sh: use the GIT_TRACE_CURL environment var
467
- + test-lib.sh: preserve GIT_TRACE_CURL from the environment
468
- + t5541-http-push-smart.sh: use the GIT_TRACE_CURL environment var
469
-
470
- Update a few tests that used to use GIT_CURL_VERBOSE to use the
471
- newer GIT_TRACE_CURL.
472
-
473
- Will merge to 'master'.
648
+ Will merge to 'next'.
649
650
651
* jk/pack-tag-of-tag (2016-09-07) 5 commits
477
- - pack-objects: walk tag chains for --include-tag
478
- - t5305: simplify packname handling
479
- - t5305: use "git -C"
480
- - t5305: drop "dry-run" of unpack-objects
481
- - t5305: move cleanup into test block
652
+ (merged to 'next' on 2016-09-12 at 62c62c0)
653
+ + pack-objects: walk tag chains for --include-tag
654
+ + t5305: simplify packname handling
655
+ + t5305: use "git -C"
656
+ + t5305: drop "dry-run" of unpack-objects
657
+ + t5305: move cleanup into test block
658
659
"git pack-objects --include-tag" was taught that when we know that
660
we are sending an object C, we want a tag B that directly points at
661
C but also a tag A that points at the tag B. We used to miss the
662
intermediate tag B in some cases.
663
488
- Will merge to 'next'.
489
-
490
-
491
-* js/t6026-clean-up (2016-09-07) 1 commit
492
- (merged to 'next' on 2016-09-08 at 5ad2fc1)
493
- + t6026-merge-attr: clean up background process at end of test case
494
-
495
- A test spawned a short-lived background process, which sometimes
496
- prevented the test directory from getting removed at the end of the
497
- script on some platforms.
498
-
499
- Will merge to 'master'.
500
-
501
-
502
-* js/t9903-chaining (2016-09-07) 1 commit
503
- (merged to 'next' on 2016-09-08 at 162a3c9)
504
- + t9903: fix broken && chain
505
-
664
Will merge to 'master'.
665
666
@@ -523,20 +681,6 @@ of the repositories listed at
681
Will merge to 'next'.
682
683
526
-* rs/compat-strdup (2016-09-07) 1 commit
527
- (merged to 'next' on 2016-09-08 at 46acfdf)
528
- + compat: move strdup(3) replacement to its own file
529
-
530
- Will merge to 'master'.
531
-
532
-
533
-* rs/hex2chr (2016-09-07) 1 commit
534
- (merged to 'next' on 2016-09-08 at 7266d5b)
535
- + introduce hex2chr() for converting two hexadecimal digits to a character
536
-
537
- Will merge to 'master'.
538
-
539
-
684
* rt/rebase-i-broken-insn-advise (2016-09-07) 1 commit
685
- rebase -i: improve advice on bad instruction lines
686
@@ -550,51 +694,46 @@ of the repositories listed at
694
queued merely as a reminder.
695
696
553
-* sb/xdiff-remove-unused-static-decl (2016-09-07) 1 commit
554
- (merged to 'next' on 2016-09-08 at 39e41dd)
555
- + xdiff: remove unneeded declarations
556
-
557
- Code cleanup.
558
-
559
- Will merge to 'master'.
560
-
561
-
697
* sy/git-gui-i18n-ja (2016-09-07) 7 commits
563
- - Merge branch 'sy/i18n' of git-gui
564
- - git-gui: update Japanese information
565
- - git-gui: update Japanese translation
566
- - git-gui: add Japanese language code
567
- - git-gui: apply po template to Japanese translation
568
- - git-gui: consistently use the same word for "blame" in Japanese
569
- - git-gui: consistently use the same word for "remote" in Japanese
698
+ (merged to 'next' on 2016-09-12 at 4a701c2)
699
+ + Merge branch 'sy/i18n' of git-gui
700
+ + git-gui: update Japanese information
701
+ + git-gui: update Japanese translation
702
+ + git-gui: add Japanese language code
703
+ + git-gui: apply po template to Japanese translation
704
+ + git-gui: consistently use the same word for "blame" in Japanese
705
+ + git-gui: consistently use the same word for "remote" in Japanese
706
707
Update Japanese translation for "git-gui".
708
573
- Will merge to 'next'.
709
+ Will merge to 'master'.
710
711
712
* ah/misc-message-fixes (2016-09-08) 5 commits
577
- - unpack-trees: do not capitalize "working"
578
- - git-merge-octopus: do not capitalize "octopus"
579
- - git-rebase--interactive: fix English grammar
580
- - cat-file: put spaces around pipes in usage string
581
- - am: put spaces around pipe in usage string
713
+ (merged to 'next' on 2016-09-12 at a113aea)
714
+ + unpack-trees: do not capitalize "working"
715
+ + git-merge-octopus: do not capitalize "octopus"
716
+ + git-rebase--interactive: fix English grammar
717
+ + cat-file: put spaces around pipes in usage string
718
+ + am: put spaces around pipe in usage string
719
720
Message cleanup.
721
585
- Will merge to 'next'.
722
+ Will merge to 'master'.
723
724
725
* jk/fix-remote-curl-url-wo-proto (2016-09-08) 1 commit
589
- - remote-curl: handle URLs without protocol
726
+ (merged to 'next' on 2016-09-12 at 7845867)
727
+ + remote-curl: handle URLs without protocol
728
729
"git fetch http::/site/path" did not die correctly and segfaulted
730
instead.
731
594
- Will merge to 'next'.
732
+ Will merge to 'master'.
733
734
597
-* jt/format-patch-base-info-above-sig (2016-09-09) 1 commit
735
+* jt/format-patch-base-info-above-sig (2016-09-14) 2 commits
736
+ - SQUASH???
737
- format-patch: show base info before email signature
738
739
"git format-patch --base=..." feature that was recently added
@@ -602,7 +741,7 @@ of the repositories listed at
741
line, which turned out to be inconvenient. The base information
742
has been moved above the signature line.
743
605
- Needs an extra blank line before the baseinfo.
744
+ Waiting for an ack for SQUASH???
745
746
747
* nd/checkout-disambiguation (2016-09-09) 4 commits
@@ -622,21 +761,13 @@ of the repositories listed at
761
762
763
* sb/diff-cleanup (2016-09-08) 3 commits
625
- - diff: remove dead code
626
- - diff: omit found pointer from emit_callback
627
- - diff.c: use diff_options directly
764
+ (merged to 'next' on 2016-09-12 at 5d16b28)
765
+ + diff: remove dead code
766
+ + diff: omit found pointer from emit_callback
767
+ + diff.c: use diff_options directly
768
769
Code cleanup.
770
631
- Will merge to 'next'.
632
-
633
-
634
-* sb/transport-report-missing-submodule-on-stderr (2016-09-08) 1 commit
635
- (merged to 'next' on 2016-09-08 at 3550831)
636
- + transport: report missing submodule pushes consistently on stderr
637
-
638
- Message cleanup.
639
-
771
Will merge to 'master'.
772
773
@@ -656,7 +787,7 @@ of the repositories listed at
787
cf. <20160908223727.Horde.jVOOJ278ssZ3qkyjkmyqZD-@webmail.informatik.kit.edu>
788
789
659
-* va/i18n (2016-09-09) 10 commits
790
+* va/i18n (2016-09-11) 11 commits
791
- i18n: update-index: mark warning for translation
792
- i18n: show-branch: mark error messages for translation
793
- i18n: receive-pack: mark messages for translation
@@ -666,90 +797,41 @@ of the repositories listed at
797
- i18n: merge-recursive: mark error messages for translation
798
- i18n: config: mark error message for translation
799
- i18n: branch: mark option description for translation
800
+ - SQUASH???
801
- i18n: blame: mark error messages for translation
802
803
More i18n.
804
673
- Will merge to 'next'.
674
-
675
-
676
-* jc/submodule-anchor-git-dir (2016-09-01) 1 commit
677
- (merged to 'next' on 2016-09-08 at b6f20cf)
678
- + submodule: avoid auto-discovery in prepare_submodule_repo_env()
679
-
680
- Having a submodule whose ".git" repository is somehow corrupt
681
- caused a few commands that recurse into submodules loop forever.
682
-
683
- Will merge to 'master'.
684
-
685
-
686
-* jc/forbid-symbolic-ref-d-HEAD (2016-09-02) 1 commit
687
- (merged to 'next' on 2016-09-08 at cd8c1b3)
688
- + symbolic-ref -d: do not allow removal of HEAD
689
-
690
- "git symbolic-ref -d HEAD" happily removes the symbolic ref, but
691
- the resulting repository becomes an invalid one. Teach the command
692
- to forbid removal of HEAD.
693
-
694
- Will merge to 'master'.
695
-
696
-
697
-* jc/am-read-author-file (2016-08-30) 1 commit
698
- (merged to 'next' on 2016-09-08 at d2db42f)
699
- + am: refactor read_author_script()
700
-
701
- Extract a small helper out of the function that reads the authors
702
- script file "git am" internally uses.
703
-
704
- Will merge to 'master'.
705
- This by itself is not useful until a second caller appears in the
706
- future for "rebase -i" helper.
707
-
708
-
709
-* jk/test-lib-drop-pid-from-results (2016-08-30) 1 commit
710
- (merged to 'next' on 2016-09-08 at 0967b0b)
711
- + test-lib: drop PID from test-results/*.count
712
-
713
- The test framework left the number of tests and success/failure
714
- count in the t/test-results directory, keyed by the name of the
715
- test script plus the process ID. The latter however turned out not
716
- to serve any useful purpose. The process ID part of the filename
717
- has been removed.
718
-
719
- Will merge to 'master'.
805
+ Waiting for a reroll.
806
+ Some of them need to use Q_(); even when they always show numbers
807
+ that are greater than 1, some languages have different plural forms.
808
+ cf. <17140652.xHVhzLXte8@cayenne> etc.
809
810
811
* js/sequencer-wo-die (2016-09-09) 17 commits
723
- - sequencer: ensure to release the lock when we could not read the index
724
- - sequencer: lib'ify checkout_fast_forward()
725
- - sequencer: lib'ify fast_forward_to()
726
- - sequencer: lib'ify save_opts()
727
- - sequencer: lib'ify save_todo()
728
- - sequencer: lib'ify save_head()
729
- - sequencer: lib'ify create_seq_dir()
730
- - sequencer: lib'ify read_populate_opts()
731
- - sequencer: lib'ify read_populate_todo()
732
- - sequencer: lib'ify read_and_refresh_cache()
733
- - sequencer: lib'ify prepare_revs()
734
- - sequencer: lib'ify walk_revs_populate_todo()
735
- - sequencer: lib'ify do_pick_commit()
736
- - sequencer: lib'ify do_recursive_merge()
737
- - sequencer: lib'ify write_message()
738
- - sequencer: do not die() in do_pick_commit()
739
- - sequencer: lib'ify sequencer_pick_revisions()
812
+ (merged to 'next' on 2016-09-12 at d2154ea)
813
+ + sequencer: ensure to release the lock when we could not read the index
814
+ + sequencer: lib'ify checkout_fast_forward()
815
+ + sequencer: lib'ify fast_forward_to()
816
+ + sequencer: lib'ify save_opts()
817
+ + sequencer: lib'ify save_todo()
818
+ + sequencer: lib'ify save_head()
819
+ + sequencer: lib'ify create_seq_dir()
820
+ + sequencer: lib'ify read_populate_opts()
821
+ + sequencer: lib'ify read_populate_todo()
822
+ + sequencer: lib'ify read_and_refresh_cache()
823
+ + sequencer: lib'ify prepare_revs()
824
+ + sequencer: lib'ify walk_revs_populate_todo()
825
+ + sequencer: lib'ify do_pick_commit()
826
+ + sequencer: lib'ify do_recursive_merge()
827
+ + sequencer: lib'ify write_message()
828
+ + sequencer: do not die() in do_pick_commit()
829
+ + sequencer: lib'ify sequencer_pick_revisions()
830
831
Lifts calls to exit(2) and die() higher in the callchain in
832
sequencer.c files so that more helper functions in it can be used
833
by callers that want to handle error conditions themselves.
834
745
- Will merge to 'next' after waiting for a few days for further comments.
746
-
747
-
748
-* jk/squelch-false-warning-from-gcc-o3 (2016-08-31) 2 commits
749
- (merged to 'next' on 2016-09-08 at c9a2af6)
750
- + color_parse_mem: initialize "struct color" temporary
751
- + error_errno: use constant return similar to error()
752
-
835
Will merge to 'master'.
836
837
@@ -760,11 +842,10 @@ of the repositories listed at
842
complete "git cmd ^mas<HT>" to complete the negative end of
843
reference to "git cmd ^master".
844
763
- Waiting for a review.
845
+ Needs review.
846
847
766
-* js/cat-file-filters (2016-09-09) 5 commits
767
- - SQUASH??? "cat-file --filters" passes data as-is by default
848
+* js/cat-file-filters (2016-09-11) 4 commits
849
- cat-file: support --textconv/--filters in batch mode
850
- cat-file --textconv/--filters: allow specifying the path separately
851
- cat-file: introduce the --filters option
@@ -780,7 +861,7 @@ of the repositories listed at
861
lacked an equivalent mechanism to run the "Git-to-outside-world"
862
conversion. The command learned the "--filters" option to do so.
863
783
- Waiting for an ack to SQUASH???
864
+ Will merge to 'next'.
865
866
867
* sb/push-make-submodule-check-the-default (2016-08-24) 1 commit
@@ -804,24 +885,6 @@ of the repositories listed at
885
Needs review and testing.
886
887
807
-* jk/diff-submodule-diff-inline (2016-08-31) 8 commits
808
- (merged to 'next' on 2016-09-02 at 734e42c)
809
- + diff: teach diff to display submodule difference with an inline diff
810
- + submodule: refactor show_submodule_summary with helper function
811
- + submodule: convert show_submodule_summary to use struct object_id *
812
- + allow do_submodule_path to work even if submodule isn't checked out
813
- + diff: prepare for additional submodule formats
814
- + graph: add support for --line-prefix on all graph-aware output
815
- + diff.c: remove output_prefix_length field
816
- + cache: add empty_tree_oid object and helper function
817
-
818
- The "git diff --submodule={short,log}" mechanism has been enhanced
819
- to allow "--submodule=diff" to show the patch between the submodule
820
- commits bound to the superproject.
821
-
822
- Will merge to 'master'.
823
-
824
-
888
* jk/reduce-gc-aggressive-depth (2016-08-11) 1 commit
889
(merged to 'next' on 2016-08-11 at 6810c6f)
890
+ gc: default aggressive depth to 50
@@ -834,14 +897,15 @@ of the repositories listed at
897
Will hold to see if people scream.
898
899
837
-* ks/pack-objects-bitmap (2016-08-09) 2 commits
900
+* ks/pack-objects-bitmap (2016-09-12) 2 commits
901
- pack-objects: use reachability bitmap index when generating non-stdout pack
902
- pack-objects: respect --local/--honor-pack-keep/--incremental when bitmap is in use
903
841
- What is the state of this thing?
842
- Waiting for the review discussion to settle.
843
- cf. <20160818175222.bmm3ivjheokf2qzl@sigill.intra.peff.net>
844
- cf. <20160818180615.q25p57v35m2xxtww@sigill.intra.peff.net>
904
+ Some codepaths in "git pack-objects" were not ready to use an
905
+ existing pack bitmap; now they are and as the result they have
906
+ become faster.
907
+
908
+ Will merge to 'next'.
909
910
911
* mh/diff-indent-heuristic (2016-09-07) 9 commits
@@ -861,57 +925,57 @@ of the repositories listed at
925
are the same. A command line option is added to help with the
926
experiment to find a good heuristics.
927
864
- Needs adjustment of test numbers. Otherwise looked OK.
865
- Waiting for an ack to SQUASH???
928
+ Waiting for an ack to SQUASH??? Otherwise looked OK.
929
930
931
* cc/apply-am (2016-09-07) 41 commits
869
- - builtin/am: use apply API in run_apply()
870
- - apply: learn to use a different index file
871
- - apply: pass apply state to build_fake_ancestor()
872
- - apply: refactor `git apply` option parsing
873
- - apply: change error_routine when silent
874
- - usage: add get_error_routine() and get_warn_routine()
875
- - usage: add set_warn_routine()
876
- - apply: don't print on stdout in verbosity_silent mode
877
- - apply: make it possible to silently apply
878
- - apply: use error_errno() where possible
879
- - apply: make some parsing functions static again
880
- - apply: move libified code from builtin/apply.c to apply.{c,h}
881
- - apply: rename and move opt constants to apply.h
882
- - builtin/apply: rename option parsing functions
883
- - builtin/apply: make create_one_file() return -1 on error
884
- - builtin/apply: make try_create_file() return -1 on error
885
- - builtin/apply: make write_out_results() return -1 on error
886
- - builtin/apply: make write_out_one_result() return -1 on error
887
- - builtin/apply: make create_file() return -1 on error
888
- - builtin/apply: make add_index_file() return -1 on error
889
- - builtin/apply: make add_conflicted_stages_file() return -1 on error
890
- - builtin/apply: make remove_file() return -1 on error
891
- - builtin/apply: make build_fake_ancestor() return -1 on error
892
- - builtin/apply: change die_on_unsafe_path() to check_unsafe_path()
893
- - builtin/apply: make gitdiff_*() return -1 on error
894
- - builtin/apply: make gitdiff_*() return 1 at end of header
895
- - builtin/apply: make parse_traditional_patch() return -1 on error
896
- - builtin/apply: make apply_all_patches() return 128 or 1 on error
897
- - builtin/apply: move check_apply_state() to apply.c
898
- - builtin/apply: make check_apply_state() return -1 instead of die()ing
899
- - apply: make init_apply_state() return -1 instead of exit()ing
900
- - builtin/apply: move init_apply_state() to apply.c
901
- - builtin/apply: make parse_ignorewhitespace_option() return -1 instead of die()ing
902
- - builtin/apply: make parse_whitespace_option() return -1 instead of die()ing
903
- - builtin/apply: make parse_single_patch() return -1 on error
904
- - builtin/apply: make parse_chunk() return a negative integer on error
905
- - builtin/apply: make find_header() return -128 instead of die()ing
906
- - builtin/apply: read_patch_file() return -1 instead of die()ing
907
- - builtin/apply: make apply_patch() return -1 or -128 instead of die()ing
908
- - apply: move 'struct apply_state' to apply.h
909
- - apply: make some names more specific
932
+ (merged to 'next' on 2016-09-12 at 854edde)
933
+ + builtin/am: use apply API in run_apply()
934
+ + apply: learn to use a different index file
935
+ + apply: pass apply state to build_fake_ancestor()
936
+ + apply: refactor `git apply` option parsing
937
+ + apply: change error_routine when silent
938
+ + usage: add get_error_routine() and get_warn_routine()
939
+ + usage: add set_warn_routine()
940
+ + apply: don't print on stdout in verbosity_silent mode
941
+ + apply: make it possible to silently apply
942
+ + apply: use error_errno() where possible
943
+ + apply: make some parsing functions static again
944
+ + apply: move libified code from builtin/apply.c to apply.{c,h}
945
+ + apply: rename and move opt constants to apply.h
946
+ + builtin/apply: rename option parsing functions
947
+ + builtin/apply: make create_one_file() return -1 on error
948
+ + builtin/apply: make try_create_file() return -1 on error
949
+ + builtin/apply: make write_out_results() return -1 on error
950
+ + builtin/apply: make write_out_one_result() return -1 on error
951
+ + builtin/apply: make create_file() return -1 on error
952
+ + builtin/apply: make add_index_file() return -1 on error
953
+ + builtin/apply: make add_conflicted_stages_file() return -1 on error
954
+ + builtin/apply: make remove_file() return -1 on error
955
+ + builtin/apply: make build_fake_ancestor() return -1 on error
956
+ + builtin/apply: change die_on_unsafe_path() to check_unsafe_path()
957
+ + builtin/apply: make gitdiff_*() return -1 on error
958
+ + builtin/apply: make gitdiff_*() return 1 at end of header
959
+ + builtin/apply: make parse_traditional_patch() return -1 on error
960
+ + builtin/apply: make apply_all_patches() return 128 or 1 on error
961
+ + builtin/apply: move check_apply_state() to apply.c
962
+ + builtin/apply: make check_apply_state() return -1 instead of die()ing
963
+ + apply: make init_apply_state() return -1 instead of exit()ing
964
+ + builtin/apply: move init_apply_state() to apply.c
965
+ + builtin/apply: make parse_ignorewhitespace_option() return -1 instead of die()ing
966
+ + builtin/apply: make parse_whitespace_option() return -1 instead of die()ing
967
+ + builtin/apply: make parse_single_patch() return -1 on error
968
+ + builtin/apply: make parse_chunk() return a negative integer on error
969
+ + builtin/apply: make find_header() return -128 instead of die()ing
970
+ + builtin/apply: read_patch_file() return -1 instead of die()ing
971
+ + builtin/apply: make apply_patch() return -1 or -128 instead of die()ing
972
+ + apply: move 'struct apply_state' to apply.h
973
+ + apply: make some names more specific
974
975
"git am" has been taught to make an internal call to "git apply"'s
976
innards without spawning the latter as a separate process.
977
914
- Will merge to 'next' after waiting for a few days for further comments.
978
+ Will merge to 'master'.
979
980
981
* jk/pack-objects-optim-mru (2016-08-11) 4 commits
@@ -983,50 +1047,50 @@ of the repositories listed at
1047
1048
1049
* mh/ref-store (2016-09-09) 38 commits
986
- - refs: implement iteration over only per-worktree refs
987
- - refs: make lock generic
988
- - refs: add method to rename refs
989
- - refs: add methods to init refs db
990
- - refs: make delete_refs() virtual
991
- - refs: add method for initial ref transaction commit
992
- - refs: add methods for reflog
993
- - refs: add method iterator_begin
994
- - files_ref_iterator_begin(): take a ref_store argument
995
- - split_symref_update(): add a files_ref_store argument
996
- - lock_ref_sha1_basic(): add a files_ref_store argument
997
- - lock_ref_for_update(): add a files_ref_store argument
998
- - commit_ref_update(): add a files_ref_store argument
999
- - lock_raw_ref(): add a files_ref_store argument
1000
- - repack_without_refs(): add a files_ref_store argument
1001
- - refs: make peel_ref() virtual
1002
- - refs: make create_symref() virtual
1003
- - refs: make pack_refs() virtual
1004
- - refs: make verify_refname_available() virtual
1005
- - refs: make read_raw_ref() virtual
1006
- - resolve_gitlink_ref(): rename path parameter to submodule
1007
- - resolve_gitlink_ref(): avoid memory allocation in many cases
1008
- - resolve_gitlink_ref(): implement using resolve_ref_recursively()
1009
- - resolve_ref_recursively(): new function
1010
- - read_raw_ref(): take a (struct ref_store *) argument
1011
- - resolve_gitlink_packed_ref(): remove function
1012
- - resolve_packed_ref(): rename function from resolve_missing_loose_ref()
1013
- - refs: reorder definitions
1014
- - refs: add a transaction_commit() method
1015
- - {lock,commit,rollback}_packed_refs(): add files_ref_store arguments
1016
- - resolve_missing_loose_ref(): add a files_ref_store argument
1017
- - get_packed_ref(): add a files_ref_store argument
1018
- - add_packed_ref(): add a files_ref_store argument
1019
- - refs: create a base class "ref_store" for files_ref_store
1020
- - refs: add a backend method structure
1021
- - refs: rename struct ref_cache to files_ref_store
1022
- - rename_ref_available(): add docstring
1023
- - resolve_gitlink_ref(): eliminate temporary variable
1050
+ (merged to 'next' on 2016-09-12 at 1b0bd3c)
1051
+ + refs: implement iteration over only per-worktree refs
1052
+ + refs: make lock generic
1053
+ + refs: add method to rename refs
1054
+ + refs: add methods to init refs db
1055
+ + refs: make delete_refs() virtual
1056
+ + refs: add method for initial ref transaction commit
1057
+ + refs: add methods for reflog
1058
+ + refs: add method iterator_begin
1059
+ + files_ref_iterator_begin(): take a ref_store argument
1060
+ + split_symref_update(): add a files_ref_store argument
1061
+ + lock_ref_sha1_basic(): add a files_ref_store argument
1062
+ + lock_ref_for_update(): add a files_ref_store argument
1063
+ + commit_ref_update(): add a files_ref_store argument
1064
+ + lock_raw_ref(): add a files_ref_store argument
1065
+ + repack_without_refs(): add a files_ref_store argument
1066
+ + refs: make peel_ref() virtual
1067
+ + refs: make create_symref() virtual
1068
+ + refs: make pack_refs() virtual
1069
+ + refs: make verify_refname_available() virtual
1070
+ + refs: make read_raw_ref() virtual
1071
+ + resolve_gitlink_ref(): rename path parameter to submodule
1072
+ + resolve_gitlink_ref(): avoid memory allocation in many cases
1073
+ + resolve_gitlink_ref(): implement using resolve_ref_recursively()
1074
+ + resolve_ref_recursively(): new function
1075
+ + read_raw_ref(): take a (struct ref_store *) argument
1076
+ + resolve_gitlink_packed_ref(): remove function
1077
+ + resolve_packed_ref(): rename function from resolve_missing_loose_ref()
1078
+ + refs: reorder definitions
1079
+ + refs: add a transaction_commit() method
1080
+ + {lock,commit,rollback}_packed_refs(): add files_ref_store arguments
1081
+ + resolve_missing_loose_ref(): add a files_ref_store argument
1082
+ + get_packed_ref(): add a files_ref_store argument
1083
+ + add_packed_ref(): add a files_ref_store argument
1084
+ + refs: create a base class "ref_store" for files_ref_store
1085
+ + refs: add a backend method structure
1086
+ + refs: rename struct ref_cache to files_ref_store
1087
+ + rename_ref_available(): add docstring
1088
+ + resolve_gitlink_ref(): eliminate temporary variable
1089
1090
The ref-store abstraction was introduced to the refs API so that we
1091
can plug in different backends to store references.
1092
1028
- Will merge to 'next' after waiting for a few days for further comments.
1029
-
1093
+ Will merge to 'master'.
1094
1095
1096
* nd/shallow-deepen (2016-06-13) 27 commits