What's cooking (2018/06 #01)
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano committed
Jun 1, 2018 at 16:17 UTC
c497294dbf114501721f0e51e38ee7c991a2fee0
1 file changed
+374
-612
whats-cooking.txt
+374
-612
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (May 2018, #04; Wed, 30)
4
-X-master-at: f15a486ca1dd67757cb6a3c0545dc2c6ef992bc3
5
-X-next-at: e295dfb56eed062f935757b69da965cde0bc0927
3
+Subject: What's cooking in git.git (Jun 2018, #01; Fri, 1)
4
+X-master-at: c2c7d17b030646b40e6764ba34a5ebf66aee77af
5
+X-next-at: fd7c087b0d85b48ffb998ee0349e5bb8945e292a
6
7
-What's cooking in git.git (May 2018, #04; Wed, 30)
7
+What's cooking in git.git (Jun 2018, #01; Fri, 1)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,345 +12,204 @@ 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
-The recent fixes in v2.17.1 and downward have been merged to these
16
-integration branches 'master' and above.
17
-
15
You can find the changes described here in the integration branches
16
of the repositories listed at
17
18
http://git-blame.blogspot.com/p/git-public-repositories.html
19
20
--------------------------------------------------
24
-[Graduated to "master"]
25
-
26
-* ab/get-short-oid (2018-05-11) 5 commits
27
- (merged to 'next' on 2018-05-23 at 07e1908439)
28
- + get_short_oid: sort ambiguous objects by type, then SHA-1
29
- + sha1-name.c: move around the collect_ambiguous() function
30
- + git-p4: change "commitish" typo to "committish"
31
- + sha1-array.h: align function arguments
32
- + sha1-name.c: remove stray newline
33
-
34
- When a short hexadecimal string is used to name an object but there
35
- are multiple objects that share the string as the prefix of their
36
- names, the code lists these ambiguous candidates in a help message.
37
- These object names are now sorted according to their types for
38
- easier eyeballing.
39
-
40
-
41
-* bc/object-id (2018-05-02) 42 commits
42
- (merged to 'next' on 2018-05-23 at 916bcce829)
43
- + merge-one-file: compute empty blob object ID
44
- + add--interactive: compute the empty tree value
45
- + Update shell scripts to compute empty tree object ID
46
- + sha1_file: only expose empty object constants through git_hash_algo
47
- + dir: use the_hash_algo for empty blob object ID
48
- + sequencer: use the_hash_algo for empty tree object ID
49
- + cache-tree: use is_empty_tree_oid
50
- + sha1_file: convert cached object code to struct object_id
51
- + builtin/reset: convert use of EMPTY_TREE_SHA1_BIN
52
- + builtin/receive-pack: convert one use of EMPTY_TREE_SHA1_HEX
53
- + wt-status: convert two uses of EMPTY_TREE_SHA1_HEX
54
- + submodule: convert several uses of EMPTY_TREE_SHA1_HEX
55
- + sequencer: convert one use of EMPTY_TREE_SHA1_HEX
56
- + merge: convert empty tree constant to the_hash_algo
57
- + builtin/merge: switch tree functions to use object_id
58
- + builtin/am: convert uses of EMPTY_TREE_SHA1_BIN to the_hash_algo
59
- + sha1-file: add functions for hex empty tree and blob OIDs
60
- + builtin/receive-pack: avoid hard-coded constants for push certs
61
- + diff: specify abbreviation size in terms of the_hash_algo
62
- + upload-pack: replace use of several hard-coded constants
63
- + revision: replace use of hard-coded constants
64
- + http: eliminate hard-coded constants
65
- + dir: convert struct untracked_cache_dir to object_id
66
- + commit: convert uses of get_sha1_hex to get_oid_hex
67
- + index-pack: abstract away hash function constant
68
- + pack-redundant: convert linked lists to use struct object_id
69
- + Update struct index_state to use struct object_id
70
- + split-index: convert struct split_index to object_id
71
- + submodule-config: convert structures to object_id
72
- + fsck: convert static functions to struct object_id
73
- + tree-walk: convert get_tree_entry_follow_symlinks to object_id
74
- + tree-walk: avoid hard-coded 20 constant
75
- + pack-redundant: abstract away hash algorithm
76
- + pack-objects: abstract away hash algorithm
77
- + packfile: abstract away hash constant values
78
- + packfile: convert find_pack_entry to object_id
79
- + sha1-file: convert freshen functions to object_id
80
- + packfile: convert has_sha1_pack to object_id
81
- + packfile: remove unused member from struct pack_entry
82
- + Remove unused member in struct object_context
83
- + server-info: remove unused members from struct pack_info
84
- + cache: add a function to read an object ID from a buffer
85
-
86
- Conversion from uchar[20] to struct object_id continues.
87
-
88
-
89
-* bp/merge-rename-config (2018-05-08) 3 commits
90
- (merged to 'next' on 2018-05-22 at 911440a742)
91
- + merge: pass aggressive when rename detection is turned off
92
- + merge: add merge.renames config setting
93
- + merge: update documentation for {merge,diff}.renameLimit
94
- (this branch is used by ma/unpack-trees-free-msgs.)
95
-
96
- With merge.renames configuration set to false, the recursive merge
97
- strategy can be told not to spend cycles trying to find renamed
98
- paths and merge them accordingly.
99
-
100
-
101
-* bp/status-rename-config (2018-05-13) 1 commit
102
- (merged to 'next' on 2018-05-22 at ffcb0a7aa7)
103
- + add status config and command line options for rename detection
104
-
105
- "git status" learned to honor a new status.renames configuration to
106
- skip rename detection, which could be useful for those who want to
107
- do so without disabling the default rename detection done by the
108
- "git diff" command.
109
-
110
-
111
-* cf/submodule-progress-dissociate (2018-05-22) 3 commits
112
- (merged to 'next' on 2018-05-22 at 9b3b96c54b)
113
- + submodule: add --dissociate option to add/update commands
114
- + submodule: add --progress option to add command
115
- + submodule: clean up substitutions in script
116
-
117
- "git submodule update" and "git submodule add" supported the
118
- "--reference" option to borrow objects from a neighbouring local
119
- repository like "git clone" does, but lacked the more recent
120
- invention "--dissociate". Also "git submodule add" has been taught
121
- to take the "--progress" option.
122
-
123
-
124
-* dd/send-email-reedit (2018-05-06) 1 commit
125
- (merged to 'next' on 2018-05-22 at 1f4c98324f)
126
- + git-send-email: allow re-editing of message
127
-
128
- "git send-email" can sometimes offer confirmation dialog "Send this
129
- email?" with choices 'Yes', 'No', 'Quit', and 'All'. A new action
130
- 'Edit' has been added to this dialog's choice.
131
-
132
-
133
-* jk/unavailable-can-be-missing (2018-05-13) 4 commits
134
- (merged to 'next' on 2018-05-22 at 91980c5d1e)
135
- + mark_parents_uninteresting(): avoid most allocation
136
- + mark_parents_uninteresting(): replace list with stack
137
- + mark_parents_uninteresting(): drop missing object check
138
- + mark_tree_contents_uninteresting(): drop missing object check
139
-
140
- Code clean-up to turn history traversal more robust in a
141
- semi-corrupt repository.
142
-
143
-
144
-* js/sequencer-and-root-commits (2018-05-06) 6 commits
145
- (merged to 'next' on 2018-05-22 at c1a62f5bc9)
146
- + rebase --rebase-merges: root commits can be cousins, too
147
- + rebase --rebase-merges: a "merge" into a new root is a fast-forward
148
- + sequencer: allow introducing new root commits
149
- + rebase -i --root: let the sequencer handle even the initial part
150
- + sequencer: learn about the special "fake root commit" handling
151
- + sequencer: extract helper to update active_cache_tree
152
-
153
- The implementation of "git rebase -i --root" has been updated to use
154
- the sequencer machinery more.
155
-
156
-
157
-* js/use-bug-macro (2018-05-10) 5 commits
158
- (merged to 'next' on 2018-05-22 at fd848c39ae)
159
- + BUG_exit_code: fix sparse "symbol not declared" warning
160
- + Convert remaining die*(BUG) messages
161
- + Replace all die("BUG: ...") calls by BUG() ones
162
- + run-command: use BUG() to report bugs, not die()
163
- + test-tool: help verifying BUG() code paths
164
-
165
- Developer support update, by using BUG() macro instead of die() to
166
- mark codepaths that should not happen more clearly.
167
- Further updates can come on top later.
168
- cf. <20180507090109.GA367@sigill.intra.peff.net>
169
-
170
-
171
-* jt/partial-clone-proto-v2 (2018-05-06) 4 commits
172
- (merged to 'next' on 2018-05-23 at f8b3692e8e)
173
- + {fetch,upload}-pack: support filter in protocol v2
174
- + upload-pack: read config when serving protocol v2
175
- + upload-pack: fix error message typo
176
- + Merge branch 'bw/protocol-v2' into jt/partial-clone-proto-v2
177
-
178
- Transfer protocol v2 learned to support the partial clone.
179
-
180
-
181
-* lm/credential-netrc (2018-05-14) 2 commits
182
- (merged to 'next' on 2018-05-23 at c3a0417715)
183
- + git-credential-netrc: accept gpg option
184
- + git-credential-netrc: adapt to test framework for git
185
-
186
- Update credential-netrc helper (in contrib/) to allow customizing
187
- the GPG used to decrypt the encrypted .netrc file.
188
-
21
+[New Topics]
22
190
-* ma/create-pseudoref-with-null-old-oid (2018-05-13) 3 commits
191
- (merged to 'next' on 2018-05-22 at c751a19b67)
192
- + refs: handle zero oid for pseudorefs
193
- + t1400: add tests around adding/deleting pseudorefs
194
- + refs.c: refer to "object ID", not "sha1", in error messages
23
+* ag/rebase-p (2018-06-01) 4 commits
24
+ - rebase: remove -p code from git-rebase--interactive.sh
25
+ - rebase: use the new git-rebase--preserve-merges.sh
26
+ - rebase: strip unused code in git-rebase--preserve-merges.sh
27
+ - rebase: introduce a dedicated backend for --preserve-merges
28
196
- "git update-ref A B" is supposed to ensure that ref A does not yet
197
- exist when B is a NULL OID, but this check was not done correctly
198
- for pseudo-refs outside refs/ hierarchy, e.g. MERGE_HEAD.
29
+ Separate "rebase -p" codepath out of "rebase -i" implementation to
30
+ slim down the latter and make it easier to manage.
31
32
201
-* ma/lockfile-cleanup (2018-05-10) 5 commits
202
- (merged to 'next' on 2018-05-22 at e2efbf0b90)
203
- + lock_file: move static locks into functions
204
- + lock_file: make function-local locks non-static
205
- + refs.c: do not die if locking fails in `delete_pseudoref()`
206
- + refs.c: do not die if locking fails in `write_pseudoref()`
207
- + t/helper/test-write-cache: clean up lock-handling
33
+* jk/index-pack-maint (2018-06-01) 2 commits
34
+ - index-pack: handle --strict checks of non-repo packs
35
+ - prepare_commit_graft: treat non-repository as a noop
36
209
- Code clean-up to adjust to a more recent lockfile API convention that
210
- allows lockfile instances kept on the stack.
37
+ "index-pack --strict" has been taught to make sure that it runs the
38
+ final object integrity checks after making the freshly indexed
39
+ packfile available to itself.
40
41
+ Will merge to 'next' and then to 'master'.
42
213
-* nd/pack-struct-commit (2018-05-13) 1 commit
214
- (merged to 'next' on 2018-05-22 at 38d8a651f0)
215
- + commit.h: rearrange 'index' to shrink struct commit
43
217
- Memory optimization.
44
+* ls/complete-remote-update-names (2018-06-01) 1 commit
45
+ - completion: complete remote names too
46
47
+ "git remote update" can take both a single remote nickname and a
48
+ nickname for remote groups, and the completion script (in contrib/)
49
+ has been taught about it.
50
220
-* nd/repo-clear-keep-the-index (2018-05-10) 1 commit
221
- (merged to 'next' on 2018-05-22 at 398c7ac4e9)
222
- + repository: fix free problem with repo_clear(the_repository)
51
+ Will merge to and cook in 'next'.
52
224
- the_repository->index is not a allocated piece of memory but
225
- repo_clear() indiscriminately attempted to free(3) it, which has
226
- been corrected.
53
54
+* nd/remote-update-doc (2018-06-01) 1 commit
55
+ - remote.txt: update documentation for 'update' command
56
229
-* nd/travis-gcc-8 (2018-05-21) 1 commit
230
- (merged to 'next' on 2018-05-22 at d5d54efa72)
231
- + travis-ci: run gcc-8 on linux-gcc jobs
57
+ "git remote update" can take both a single remote nickname and a
58
+ nickname for remote groups, but only one of them was documented.
59
233
- Developer support. Use newer GCC on one of the builds done at
234
- TravisCI.org to get more warnings and errors diagnosed.
60
+ Will merge to 'next' and then to 'master'.
61
62
237
-* rs/no-null-ptr-arith-in-fast-export (2018-05-10) 1 commit
238
- (merged to 'next' on 2018-05-22 at db60f06bba)
239
- + fast-export: avoid NULL pointer arithmetic
63
+* rd/p4-doc-markup-env (2018-06-01) 1 commit
64
+ - p4.txt: Use backquotes for variable names
65
241
- Code clean-up to avoid non-standard-conformant pointer arithmetic.
66
+ Doc markup update.
67
68
+ Will merge to 'next' and then to 'master'.
69
244
-* sb/blame-color (2018-04-24) 3 commits
245
- (merged to 'next' on 2018-05-23 at 2e9c0daf0b)
246
- + builtin/blame: add new coloring scheme config
247
- + builtin/blame: highlight recently changed lines
248
- + builtin/blame: dim uninteresting metadata lines
70
250
- "git blame" learns to unhighlight uninteresting metadata from the
251
- originating commit on lines that are the same as the previous one,
252
- and also paint lines in different colors depending on the age of
253
- the commit.
71
+* sb/plug-misc-leaks (2018-06-01) 2 commits
72
+ - submodule--helper: plug mem leak in print_default_remote
73
+ - refs/packed-backend.c: close fd of empty file
74
75
+ Misc leak plugging.
76
256
-* sb/submodule-update-try-harder (2018-05-16) 1 commit
257
- (merged to 'next' on 2018-05-23 at 698e6707d7)
258
- + git-submodule.sh: try harder to fetch a submodule
77
+ Will merge to 'next' and then to 'master'.
78
260
- "git submodule update" attempts two different kinds of "git fetch"
261
- against the upstream repository to grab a commit bound at the
262
- submodule's path, but it incorrectly gave up if the first kind
263
- (i.e. a normal fetch) failed, making the second "last resort" one
264
- (i.e. fetching an exact commit object by object name) ineffective.
265
- This has been corrected.
79
80
+* tg/doc-sec-list (2018-06-01) 2 commits
81
+ - note git-security@googlegroups.com in more places
82
+ - SubmittingPatches: replace numbered attributes with names
83
268
-* sg/complete-paths (2018-05-21) 13 commits
269
- (merged to 'next' on 2018-05-22 at a00b992aec)
270
- + t9902-completion: exercise __git_complete_index_file() directly
271
- + completion: don't return with error from __gitcomp_file_direct()
272
- (merged to 'next' on 2018-05-08 at 2a11444f90)
273
- + completion: fill COMPREPLY directly when completing paths
274
- + completion: improve handling quoted paths in 'git ls-files's output
275
- + completion: remove repeated dirnames with 'awk' during path completion
276
- + t9902-completion: ignore COMPREPLY element order in some tests
277
- + completion: use 'awk' to strip trailing path components
278
- + completion: let 'ls-files' and 'diff-index' filter matching paths
279
- + completion: improve handling quoted paths on the command line
280
- + completion: support completing non-ASCII pathnames
281
- + completion: simplify prefix path component handling during path completion
282
- + completion: move __git_complete_index_file() next to its helpers
283
- + t9902-completion: add tests demonstrating issues with quoted pathnames
84
+ Doc update.
85
285
- Command line completion (in contrib/) learned to complete pathnames
286
- for various commands better.
86
+ Will merge to 'next' and then to 'master'.
87
88
+* bw/refspec-api (2018-06-01) 1 commit
89
+ - refspec-api: avoid uninitialized field in refspec item
90
289
-* sg/t6500-no-redirect-of-stdin (2018-05-09) 1 commit
290
- (merged to 'next' on 2018-05-22 at 7019b3a1d5)
291
- + t6050-replace: don't disable stdin for the whole test script
91
+ Hotfix.
92
293
- Test cleanup.
93
+ Will merge to 'next' and then to 'master'.
94
95
--------------------------------------------------
296
-[New Topics]
96
+[Graduated to "master"]
97
298
-* pa/import-tars-long-names (2018-05-24) 1 commit
299
- (merged to 'next' on 2018-05-30 at 5e043b2fca)
300
- + import-tars: read overlong names from pax extended header
98
+* bw/refspec-api (2018-05-18) 36 commits
99
+ (merged to 'next' on 2018-05-24 at 83d361419e)
100
+ + submodule: convert push_unpushed_submodules to take a struct refspec
101
+ + remote: convert check_push_refs to take a struct refspec
102
+ + remote: convert match_push_refs to take a struct refspec
103
+ + http-push: store refspecs in a struct refspec
104
+ + transport: remove transport_verify_remote_names
105
+ + send-pack: store refspecs in a struct refspec
106
+ + transport: convert transport_push to take a struct refspec
107
+ + push: convert to use struct refspec
108
+ + push: check for errors earlier
109
+ + remote: convert match_explicit_refs to take a struct refspec
110
+ + remote: convert get_ref_match to take a struct refspec
111
+ + remote: convert query_refspecs to take a struct refspec
112
+ + remote: convert apply_refspecs to take a struct refspec
113
+ + remote: convert get_stale_heads to take a struct refspec
114
+ + fetch: convert prune_refs to take a struct refspec
115
+ + fetch: convert get_ref_map to take a struct refspec
116
+ + fetch: convert do_fetch to take a struct refspec
117
+ + refspec: remove the deprecated functions
118
+ + fetch: convert refmap to use struct refspec
119
+ + fetch: convert fetch_one to use struct refspec
120
+ + transport-helper: convert to use struct refspec
121
+ + remote: remove add_prune_tags_to_fetch_refspec
122
+ + remote: convert fetch refspecs to struct refspec
123
+ + remote: convert push refspecs to struct refspec
124
+ + fast-export: convert to use struct refspec
125
+ + clone: convert cmd_clone to use refspec_item_init
126
+ + remote: convert match_push_refs to use struct refspec
127
+ + remote: convert check_push_refs to use struct refspec
128
+ + transport: convert transport_push to use struct refspec
129
+ + pull: convert get_tracking_branch to use refspec_item_init
130
+ + submodule--helper: convert push_check to use struct refspec
131
+ + refspec: convert valid_fetch_refspec to use parse_refspec
132
+ + refspec: introduce struct refspec
133
+ + refspec: factor out parsing a single refspec
134
+ + refspec: rename struct refspec to struct refspec_item
135
+ + refspec: move refspec parsing logic into its own file
136
+ (this branch is used by bw/ref-prefix-for-configured-refspec.)
137
302
- The import-tars script (in contrib/) has been taught to handle
303
- tarballs with overly long paths that use PAX extended headers.
138
+ An API update for handling of refspecs used by fetch & push
139
+ codepath.
140
305
- Will merge to 'master'.
141
142
+* bc/hash-independent-tests (2018-05-21) 28 commits
143
+ (merged to 'next' on 2018-05-24 at 40fb709f7c)
144
+ + t5300: abstract away SHA-1-specific constants
145
+ + t4208: abstract away SHA-1-specific constants
146
+ + t4045: abstract away SHA-1-specific constants
147
+ + t4042: abstract away SHA-1-specific constants
148
+ + t4205: sort log output in a hash-independent way
149
+ + t/lib-diff-alternative: abstract away SHA-1-specific constants
150
+ + t4030: abstract away SHA-1-specific constants
151
+ + t4029: abstract away SHA-1-specific constants
152
+ + t4029: fix test indentation
153
+ + t4022: abstract away SHA-1-specific constants
154
+ + t4020: abstract away SHA-1-specific constants
155
+ + t4014: abstract away SHA-1-specific constants
156
+ + t4008: abstract away SHA-1-specific constants
157
+ + t4007: abstract away SHA-1-specific constants
158
+ + t3905: abstract away SHA-1-specific constants
159
+ + t3702: abstract away SHA-1-specific constants
160
+ + t3103: abstract away SHA-1-specific constants
161
+ + t2203: abstract away SHA-1-specific constants
162
+ + t: skip pack tests if not using SHA-1
163
+ + t4044: skip test if not using SHA-1
164
+ + t1512: skip test if not using SHA-1
165
+ + t1007: annotate with SHA1 prerequisite
166
+ + t0000: annotate with SHA1 prerequisite
167
+ + t: switch $_x40 to $OID_REGEX
168
+ + t/test-lib: introduce OID_REGEX
169
+ + t: switch $_z40 to $ZERO_OID
170
+ + t/test-lib: introduce ZERO_OID
171
+ + t/test-lib: add an SHA1 prerequisite
172
308
-* nd/use-opt-int-set-f (2018-05-24) 1 commit
309
- (merged to 'next' on 2018-05-30 at f8f5d612ed)
310
- + Use OPT_SET_INT_F() for cmdline option specification
173
+ Many tests hardcode the raw object names, which would change once
174
+ we migrate away from SHA-1. While some of them must test against
175
+ exact object names, most of them do not have to use hardcoded
176
+ constants in the test. The latter kind of tests have been updated
177
+ to test the moral equivalent of the original without hardcoding the
178
+ actual object names.
179
312
- Code simplification.
180
314
- Will merge to 'master'.
181
+* bw/ref-prefix-for-configured-refspec (2018-05-18) 2 commits
182
+ (merged to 'next' on 2018-05-24 at a0d4af6180)
183
+ + fetch: generate ref-prefixes when using a configured refspec
184
+ + refspec: consolidate ref-prefix generation logic
185
+ (this branch uses bw/refspec-api.)
186
187
+ "git fetch $there $refspec" that talks over protocol v2 can take
188
+ advantage of server-side ref filtering; the code has been extended
189
+ so that this mechanism triggers also when fetching with configured
190
+ refspec.
191
317
-* ds/commit-graph-fsck (2018-05-29) 20 commits
318
- - commit-graph: update design document
319
- - gc: automatically write commit-graph files
320
- - commit-graph: add '--reachable' option
321
- - fsck: verify commit-graph
322
- - commit-graph: verify contents match checksum
323
- - commit-graph: test for corrupted octopus edge
324
- - commit-graph: verify commit date
325
- - commit-graph: verify generation number
326
- - commit-graph: verify parent list
327
- - commit-graph: verify root tree OIDs
328
- - commit-graph: verify objects exist
329
- - commit-graph: verify corrupt OID fanout and lookup
330
- - commit-graph: verify required chunks are present
331
- - commit-graph: verify catches corrupt signature
332
- - commit-graph: add 'verify' subcommand
333
- - commit-graph: load a root tree from specific graph
334
- - commit: force commit to parse from object database
335
- - commit-graph: parse commit from chosen graph
336
- - commit-graph: fix GRAPH_MIN_SIZE
337
- - commit-graph: UNLEAK before die()
338
- (this branch uses ds/commit-graph-lockfile-fix and ds/generation-numbers.)
192
340
- Expecting a reroll.
341
- cf. <ba3b8e06-b5e1-99a1-0fe4-ff97d6da8f15@gmail.com>
193
+* bw/remote-curl-compressed-responses (2018-05-23) 2 commits
194
+ (merged to 'next' on 2018-05-24 at 98ee4308dc)
195
+ + remote-curl: accept compressed responses with protocol v2
196
+ + remote-curl: accept all encodings supported by curl
197
198
+ Our HTTP client code used to advertise that we accept gzip encoding
199
+ from the other side; instead, just let cURL library to advertise
200
+ and negotiate the best one.
201
344
-* en/merge-recursive-tests (2018-05-28) 5 commits
345
- - t6036: prefer test_when_finished to manual cleanup in following test
346
- - t6036, t6042: prefer test_cmp to sequences of test
347
- - t6036, t6042: prefer test_path_is_file, test_path_is_missing
348
- - t6036, t6042: use test_line_count instead of wc -l
349
- - t6036, t6042: use test_create_repo to keep tests independent
202
351
- Clean up tests in t6xxx series about 'merge' command.
203
+* cc/tests-without-assuming-ref-files-backend (2018-05-30) 2 commits
204
+ (merged to 'next' on 2018-05-30 at e9605bacf0)
205
+ + t990X: use '.git/objects' as 'deep inside .git' path
206
+ (merged to 'next' on 2018-05-24 at 19138b162f)
207
+ + t: make many tests depend less on the refs being files
208
353
- Will merge to 'next'.
209
+ Quite a many tests assumed that newly created refs are made as
210
+ loose refs using the files backend, which have been updated to use
211
+ proper plumbing like rev-parse and update-ref, to avoid breakage
212
+ once we start using different ref backends.
213
214
215
* en/rev-parse-invalid-range (2018-05-25) 1 commit
@@ -360,16 +219,30 @@ of the repositories listed at
219
"git rev-parse Y..." etc. misbehaved when given endpoints were
220
not committishes.
221
363
- Will merge to 'master'.
222
223
+* jk/config-blob-sans-repo (2018-05-21) 1 commit
224
+ (merged to 'next' on 2018-05-24 at 3426d9508c)
225
+ + config: die when --blob is used outside a repository
226
366
-* jk/show-index (2018-05-29) 2 commits
367
- - show-index: update documentation for index v2
368
- - make show-index a builtin
227
+ Error codepath fix.
228
370
- Modernize a less often used command.
229
372
- Will merge to 'next'.
230
+* jk/snprintf-truncation (2018-05-21) 5 commits
231
+ (merged to 'next' on 2018-05-24 at 4b78e15f66)
232
+ + fmt_with_err: add a comment that truncation is OK
233
+ + shorten_unambiguous_ref: use xsnprintf
234
+ + fsmonitor: use internal argv_array of struct child_process
235
+ + log_write_email_headers: use strbufs
236
+ + http: use strbufs instead of fixed buffers
237
+
238
+ Avoid unchecked snprintf() to make future code auditing easier.
239
+
240
+
241
+* js/empty-config-section-fix (2018-05-18) 1 commit
242
+ (merged to 'next' on 2018-05-24 at 3d0875c7b4)
243
+ + config: a user-provided invalid section is not a BUG
244
+
245
+ Error codepath fix.
246
247
248
* js/rebase-recreate-merge (2018-05-30) 2 commits
@@ -379,62 +252,80 @@ of the repositories listed at
252
253
Hotfixes.
254
382
- Will merge to 'master'.
255
256
+* ld/p4-unshelve (2018-05-24) 1 commit
257
+ (merged to 'next' on 2018-05-30 at 7367508399)
258
+ + git-p4: add unshelve command
259
385
-* jt/submodule-pull-recurse-rebase (2018-05-25) 1 commit
386
- - submodule: do not pass null OID to setup_revisions
260
+ "git p4" learned to "unshelve" shelved commit from P4.
261
388
- "git pull -recurse-submodules --rebase", when the submodule
389
- repository's history did not have anything common between ours and
390
- the upstream's, failed to execute. We need to fetch from them to
391
- continue even in such a case.
262
393
- Will merge to 'next'.
263
+* ma/config-store-data-clear (2018-05-21) 3 commits
264
+ (merged to 'next' on 2018-05-24 at cc6e4b9371)
265
+ + config: let `config_store_data_clear()` handle `key`
266
+ + config: let `config_store_data_clear()` handle `value_regex`
267
+ + config: free resources of `struct config_store_data`
268
269
+ Leak plugging.
270
396
-* ma/wrapped-info (2018-05-28) 2 commits
397
- - usage: prefix all lines in `vreportf()`, not just the first
398
- - usage: extract `prefix_suffix_lines()` from `advise()`
271
400
- An attempt to help making multi-line messages fed to warning(),
401
- error(), and friends more easily translatable.
272
+* ma/regex-no-regfree-after-comp-fail (2018-05-21) 1 commit
273
+ (merged to 'next' on 2018-05-24 at 3e473da1b5)
274
+ + regex: do not call `regfree()` if compilation fails
275
403
- Wait for discussion to settle.
404
- cf. <20180529213957.GF7964@sigill.intra.peff.net>
276
+ We used to call regfree() after regcomp() failed in some codepaths,
277
+ which have been corrected.
278
279
407
-* nd/complete-config-vars (2018-05-29) 13 commits
408
- - completion: complete general config vars in two steps
409
- - log-tree: allow to customize 'grafted' color
410
- - completion: support case-insensitive config vars
411
- - completion: keep other config var completion in camelCase
412
- - completion: drop the hard coded list of config vars
413
- - am: move advice.amWorkDir parsing back to advice.c
414
- - advice: keep config name in camelCase in advice_config[]
415
- - fsck: produce camelCase config key names
416
- - help: add --config to list all available config
417
- - fsck: factor out msg_id_info[] lazy initialization code
418
- - grep: keep all colors in an array
419
- - Add and use generic name->id mapping code for color slot parsing
420
- - Merge branch 'nd/command-list' into nd/complete-config-vars
421
- (this branch uses nd/command-list.)
280
+* ma/unpack-trees-free-msgs (2018-05-22) 4 commits
281
+ (merged to 'next' on 2018-05-24 at 84cbd459f7)
282
+ + unpack_trees_options: free messages when done
283
+ + argv-array: return the pushed string from argv_push*()
284
+ + merge-recursive: provide pair of `unpack_trees_{start,finish}()`
285
+ + merge: setup `opts` later in `checkout_fast_forward()`
286
423
- Continuing with the idea to programatically enumerate various
424
- pieces of data required for command line completion, teach the
425
- codebase to report the list of configuration variables
426
- subcommands care about to help complete them.
287
+ Leak plugging.
288
289
429
-* nd/completion-negation (2018-05-29) 3 commits
430
- - completion: collapse extra --no-.. options
431
- - completion: suppress some -no- options
432
- - parse-options: option to let --git-completion-helper show negative form
290
+* nd/command-list (2018-05-21) 17 commits
291
+ (merged to 'next' on 2018-05-24 at 093e983b05)
292
+ + completion: allow to customize the completable command list
293
+ + completion: add and use --list-cmds=alias
294
+ + completion: add and use --list-cmds=nohelpers
295
+ + Move declaration for alias.c to alias.h
296
+ + completion: reduce completable command list
297
+ + completion: let git provide the completable command list
298
+ + command-list.txt: documentation and guide line
299
+ + help: use command-list.txt for the source of guides
300
+ + help: add "-a --verbose" to list all commands with synopsis
301
+ + git: support --list-cmds=list-<category>
302
+ + completion: implement and use --list-cmds=main,others
303
+ + git --list-cmds: collect command list in a string_list
304
+ + git.c: convert --list-* to --list-cmds=*
305
+ + Remove common-cmds.h
306
+ + help: use command-list.h for common command list
307
+ + generate-cmds.sh: export all commands to command-list.h
308
+ + generate-cmds.sh: factor out synopsis extract code
309
+ (this branch is used by nd/complete-config-vars.)
310
434
- Continuing with the idea to programatically enumerate various
435
- pieces of data required for command line completion, the codebase
436
- has been taught to enumerate options prefixed with "--no-" to
437
- negate them.
311
+ The list of commands with their various attributes were spread
312
+ across a few places in the build procedure, but it now is getting a
313
+ bit more consolidated to allow more automation.
314
+
315
+
316
+* nd/use-opt-int-set-f (2018-05-24) 1 commit
317
+ (merged to 'next' on 2018-05-30 at f8f5d612ed)
318
+ + Use OPT_SET_INT_F() for cmdline option specification
319
+
320
+ Code simplification.
321
+
322
+
323
+* pa/import-tars-long-names (2018-05-24) 1 commit
324
+ (merged to 'next' on 2018-05-30 at 5e043b2fca)
325
+ + import-tars: read overlong names from pax extended header
326
+
327
+ The import-tars script (in contrib/) has been taught to handle
328
+ tarballs with overly long paths that use PAX extended headers.
329
330
331
* rd/doc-options-placeholder (2018-05-25) 1 commit
@@ -443,7 +334,12 @@ of the repositories listed at
334
335
Docfix.
336
446
- Will merge to 'master'.
337
+
338
+* rd/init-typo (2018-05-30) 1 commit
339
+ (merged to 'next' on 2018-05-30 at 8813a649eb)
340
+ + init: fix grammar in "templates not found" msg
341
+
342
+ Message fix.
343
344
345
* rd/tag-doc-lightweight (2018-05-29) 1 commit
@@ -452,16 +348,28 @@ of the repositories listed at
348
349
Docfix.
350
455
- Will merge to 'master'.
351
352
+* sb/grep-die-on-unreadable-index (2018-05-16) 1 commit
353
+ (merged to 'next' on 2018-05-24 at 6d78916503)
354
+ + grep: handle corrupt index files early
355
458
-* rd/init-typo (2018-05-30) 1 commit
459
- (merged to 'next' on 2018-05-30 at 8813a649eb)
460
- + init: fix grammar in "templates not found" msg
356
+ Error behaviour of "git grep" when it cannot read the index was
357
+ inconsistent with other commands that uses the index, which has
358
+ been corrected to error out early.
359
462
- Message fix.
360
464
- Will merge to 'master'.
361
+* sb/submodule-merge-in-merge-recursive (2018-05-18) 3 commits
362
+ (merged to 'next' on 2018-05-24 at 6228d22182)
363
+ + merge-recursive: give notice when submodule commit gets fast-forwarded
364
+ + merge-recursive: i18n submodule merge output and respect verbosity
365
+ + submodule.c: move submodule merging to merge-recursive.c
366
+
367
+ By code restructuring of submodule merge in merge-recursive,
368
+ informational messages from the codepath are now given using the
369
+ same mechanism as other output, and honor the merge.verbosity
370
+ configuration. The code also learned to give a few new messages
371
+ when a submodule three-way merge resolves cleanly when one side
372
+ records a descendant of the commit chosen by the other side.
373
374
--------------------------------------------------
375
[Stalled]
@@ -520,14 +428,14 @@ of the repositories listed at
428
before too long.
429
430
523
-* is/parsing-line-range (2018-04-27) 2 commits
431
+* is/parsing-line-range (2018-06-01) 2 commits
432
. log: prevent error if line range ends past end of file
433
. blame: prevent error if range ends past end of file
434
435
Parsing of -L[<N>][,[<M>]] parameters "git blame" and "git log"
436
take has been tweaked.
437
530
- Seems to break a few tests.
438
+ Updated. Still seems to break a few tests.
439
440
441
* av/fsmonitor-updates (2018-01-04) 6 commits
@@ -603,217 +511,135 @@ of the repositories listed at
511
--------------------------------------------------
512
[Cooking]
513
606
-* jm/cache-entry-from-mem-pool (2018-05-24) 7 commits
607
- - block alloc: add validations around cache_entry lifecyle
608
- - block alloc: allocate cache entries from mem_pool
609
- - mem-pool: fill out functionality
610
- - mem-pool: add lifecycle management functions
611
- - mem-pool: only search head block for available space
612
- - block alloc: add lifecycle APIs for cache_entry structs
613
- - read-cache: teach refresh_cache_entry() to take istate
614
-
615
- For a large tree, the index needs to hold many cache entries
616
- allocated on heap. These cache entries are now allocated out of a
617
- dedicated memory pool to amortize malloc(3) overhead.
618
-
619
- Is this ready for 'next'?
620
-
621
-
622
-* bw/ref-prefix-for-configured-refspec (2018-05-18) 2 commits
623
- (merged to 'next' on 2018-05-24 at a0d4af6180)
624
- + fetch: generate ref-prefixes when using a configured refspec
625
- + refspec: consolidate ref-prefix generation logic
626
- (this branch uses bw/refspec-api.)
627
-
628
- "git fetch $there $refspec" that talks over protocol v2 can take
629
- advantage of server-side ref filtering; the code has been extended
630
- so that this mechanism triggers also when fetching with configured
631
- refspec.
632
-
633
- Will merge to 'master'.
634
-
635
-
636
-* jk/config-blob-sans-repo (2018-05-21) 1 commit
637
- (merged to 'next' on 2018-05-24 at 3426d9508c)
638
- + config: die when --blob is used outside a repository
639
-
640
- Error codepath fix.
641
-
642
- Will merge to 'master'.
643
-
644
-
645
-* jk/snprintf-truncation (2018-05-21) 5 commits
646
- (merged to 'next' on 2018-05-24 at 4b78e15f66)
647
- + fmt_with_err: add a comment that truncation is OK
648
- + shorten_unambiguous_ref: use xsnprintf
649
- + fsmonitor: use internal argv_array of struct child_process
650
- + log_write_email_headers: use strbufs
651
- + http: use strbufs instead of fixed buffers
652
-
653
- Avoid unchecked snprintf() to make future code auditing easier.
654
-
655
- Will merge to 'master'.
656
-
657
-
658
-* js/empty-config-section-fix (2018-05-18) 1 commit
659
- (merged to 'next' on 2018-05-24 at 3d0875c7b4)
660
- + config: a user-provided invalid section is not a BUG
661
-
662
- Error codepath fix.
663
-
664
- Will merge to 'master'.
665
-
514
+* ds/commit-graph-fsck (2018-05-29) 20 commits
515
+ - commit-graph: update design document
516
+ - gc: automatically write commit-graph files
517
+ - commit-graph: add '--reachable' option
518
+ - fsck: verify commit-graph
519
+ - commit-graph: verify contents match checksum
520
+ - commit-graph: test for corrupted octopus edge
521
+ - commit-graph: verify commit date
522
+ - commit-graph: verify generation number
523
+ - commit-graph: verify parent list
524
+ - commit-graph: verify root tree OIDs
525
+ - commit-graph: verify objects exist
526
+ - commit-graph: verify corrupt OID fanout and lookup
527
+ - commit-graph: verify required chunks are present
528
+ - commit-graph: verify catches corrupt signature
529
+ - commit-graph: add 'verify' subcommand
530
+ - commit-graph: load a root tree from specific graph
531
+ - commit: force commit to parse from object database
532
+ - commit-graph: parse commit from chosen graph
533
+ - commit-graph: fix GRAPH_MIN_SIZE
534
+ - commit-graph: UNLEAK before die()
535
+ (this branch uses ds/commit-graph-lockfile-fix and ds/generation-numbers.)
536
667
-* ma/config-store-data-clear (2018-05-21) 3 commits
668
- (merged to 'next' on 2018-05-24 at cc6e4b9371)
669
- + config: let `config_store_data_clear()` handle `key`
670
- + config: let `config_store_data_clear()` handle `value_regex`
671
- + config: free resources of `struct config_store_data`
537
+ Expecting a reroll.
538
+ cf. <ba3b8e06-b5e1-99a1-0fe4-ff97d6da8f15@gmail.com>
539
673
- Leak plugging.
540
675
- Will merge to 'master'.
541
+* en/merge-recursive-tests (2018-05-28) 5 commits
542
+ (merged to 'next' on 2018-06-01 at 8490b560b4)
543
+ + t6036: prefer test_when_finished to manual cleanup in following test
544
+ + t6036, t6042: prefer test_cmp to sequences of test
545
+ + t6036, t6042: prefer test_path_is_file, test_path_is_missing
546
+ + t6036, t6042: use test_line_count instead of wc -l
547
+ + t6036, t6042: use test_create_repo to keep tests independent
548
549
+ Clean up tests in t6xxx series about 'merge' command.
550
678
-* ma/regex-no-regfree-after-comp-fail (2018-05-21) 1 commit
679
- (merged to 'next' on 2018-05-24 at 3e473da1b5)
680
- + regex: do not call `regfree()` if compilation fails
551
+ Will cook in 'next'.
552
682
- We used to call regfree() after regcomp() failed in some codepaths,
683
- which have been corrected.
553
685
- Will merge to 'master'.
554
+* jk/show-index (2018-05-29) 2 commits
555
+ (merged to 'next' on 2018-06-01 at 4b3382d994)
556
+ + show-index: update documentation for index v2
557
+ + make show-index a builtin
558
559
+ Modernize a less often used command.
560
688
-* ma/unpack-trees-free-msgs (2018-05-22) 4 commits
689
- (merged to 'next' on 2018-05-24 at 84cbd459f7)
690
- + unpack_trees_options: free messages when done
691
- + argv-array: return the pushed string from argv_push*()
692
- + merge-recursive: provide pair of `unpack_trees_{start,finish}()`
693
- + merge: setup `opts` later in `checkout_fast_forward()`
561
+ Will cook in 'next'.
562
695
- Leak plugging.
563
+
564
+* jt/submodule-pull-recurse-rebase (2018-05-25) 1 commit
565
+ (merged to 'next' on 2018-06-01 at cd3e2a1008)
566
+ + submodule: do not pass null OID to setup_revisions
567
+
568
+ "git pull -recurse-submodules --rebase", when the submodule
569
+ repository's history did not have anything common between ours and
570
+ the upstream's, failed to execute. We need to fetch from them to
571
+ continue even in such a case.
572
573
Will merge to 'master'.
574
575
700
-* rm/p4-submit-with-commit-option (2018-05-21) 1 commit
701
- - git-p4: add options --commit and --disable-rebase
576
+* ma/wrapped-info (2018-05-28) 2 commits
577
+ - usage: prefix all lines in `vreportf()`, not just the first
578
+ - usage: extract `prefix_suffix_lines()` from `advise()`
579
703
- Needs sign-off.
580
+ An attempt to help making multi-line messages fed to warning(),
581
+ error(), and friends more easily translatable.
582
583
+ Wait for discussion to settle.
584
+ cf. <20180529213957.GF7964@sigill.intra.peff.net>
585
706
-* bw/remote-curl-compressed-responses (2018-05-23) 2 commits
707
- (merged to 'next' on 2018-05-24 at 98ee4308dc)
708
- + remote-curl: accept compressed responses with protocol v2
709
- + remote-curl: accept all encodings supported by curl
586
711
- Our HTTP client code used to advertise that we accept gzip encoding
712
- from the other side; instead, just let cURL library to advertise
713
- and negotiate the best one.
587
+* nd/complete-config-vars (2018-05-29) 13 commits
588
+ - completion: complete general config vars in two steps
589
+ - log-tree: allow to customize 'grafted' color
590
+ - completion: support case-insensitive config vars
591
+ - completion: keep other config var completion in camelCase
592
+ - completion: drop the hard coded list of config vars
593
+ - am: move advice.amWorkDir parsing back to advice.c
594
+ - advice: keep config name in camelCase in advice_config[]
595
+ - fsck: produce camelCase config key names
596
+ - help: add --config to list all available config
597
+ - fsck: factor out msg_id_info[] lazy initialization code
598
+ - grep: keep all colors in an array
599
+ - Add and use generic name->id mapping code for color slot parsing
600
+ - Merge branch 'nd/command-list' into nd/complete-config-vars
601
715
- Will merge to 'master'.
602
+ Continuing with the idea to programatically enumerate various
603
+ pieces of data required for command line completion, teach the
604
+ codebase to report the list of configuration variables
605
+ subcommands care about to help complete them.
606
607
+ Will merge to and cook in 'next'.
608
718
-* cc/tests-without-assuming-ref-files-backend (2018-05-30) 2 commits
719
- (merged to 'next' on 2018-05-30 at e9605bacf0)
720
- + t990X: use '.git/objects' as 'deep inside .git' path
721
- (merged to 'next' on 2018-05-24 at 19138b162f)
722
- + t: make many tests depend less on the refs being files
609
724
- Quite a many tests assumed that newly created refs are made as
725
- loose refs using the files backend, which have been updated to use
726
- proper plumbing like rev-parse and update-ref, to avoid breakage
727
- once we start using different ref backends.
610
+* nd/completion-negation (2018-05-29) 3 commits
611
+ - completion: collapse extra --no-.. options
612
+ - completion: suppress some -no- options
613
+ - parse-options: option to let --git-completion-helper show negative form
614
729
- Will merge to 'master'.
615
+ Continuing with the idea to programatically enumerate various
616
+ pieces of data required for command line completion, the codebase
617
+ has been taught to enumerate options prefixed with "--no-" to
618
+ negate them.
619
620
+ Will merge to and cook in 'next'.
621
732
-* bc/hash-independent-tests (2018-05-21) 28 commits
733
- (merged to 'next' on 2018-05-24 at 40fb709f7c)
734
- + t5300: abstract away SHA-1-specific constants
735
- + t4208: abstract away SHA-1-specific constants
736
- + t4045: abstract away SHA-1-specific constants
737
- + t4042: abstract away SHA-1-specific constants
738
- + t4205: sort log output in a hash-independent way
739
- + t/lib-diff-alternative: abstract away SHA-1-specific constants
740
- + t4030: abstract away SHA-1-specific constants
741
- + t4029: abstract away SHA-1-specific constants
742
- + t4029: fix test indentation
743
- + t4022: abstract away SHA-1-specific constants
744
- + t4020: abstract away SHA-1-specific constants
745
- + t4014: abstract away SHA-1-specific constants
746
- + t4008: abstract away SHA-1-specific constants
747
- + t4007: abstract away SHA-1-specific constants
748
- + t3905: abstract away SHA-1-specific constants
749
- + t3702: abstract away SHA-1-specific constants
750
- + t3103: abstract away SHA-1-specific constants
751
- + t2203: abstract away SHA-1-specific constants
752
- + t: skip pack tests if not using SHA-1
753
- + t4044: skip test if not using SHA-1
754
- + t1512: skip test if not using SHA-1
755
- + t1007: annotate with SHA1 prerequisite
756
- + t0000: annotate with SHA1 prerequisite
757
- + t: switch $_x40 to $OID_REGEX
758
- + t/test-lib: introduce OID_REGEX
759
- + t: switch $_z40 to $ZERO_OID
760
- + t/test-lib: introduce ZERO_OID
761
- + t/test-lib: add an SHA1 prerequisite
622
763
- Many tests hardcode the raw object names, which would change once
764
- we migrate away from SHA-1. While some of them must test against
765
- exact object names, most of them do not have to use hardcoded
766
- constants in the test. The latter kind of tests have been updated
767
- to test the moral equivalent of the original without hardcoding the
768
- actual object names.
623
+* jm/cache-entry-from-mem-pool (2018-05-24) 7 commits
624
+ - block alloc: add validations around cache_entry lifecyle
625
+ - block alloc: allocate cache entries from mem_pool
626
+ - mem-pool: fill out functionality
627
+ - mem-pool: add lifecycle management functions
628
+ - mem-pool: only search head block for available space
629
+ - block alloc: add lifecycle APIs for cache_entry structs
630
+ - read-cache: teach refresh_cache_entry() to take istate
631
770
- Will merge to 'master'.
632
+ For a large tree, the index needs to hold many cache entries
633
+ allocated on heap. These cache entries are now allocated out of a
634
+ dedicated memory pool to amortize malloc(3) overhead.
635
636
+ Is this ready for 'next'?
637
773
-* bw/refspec-api (2018-05-18) 36 commits
774
- (merged to 'next' on 2018-05-24 at 83d361419e)
775
- + submodule: convert push_unpushed_submodules to take a struct refspec
776
- + remote: convert check_push_refs to take a struct refspec
777
- + remote: convert match_push_refs to take a struct refspec
778
- + http-push: store refspecs in a struct refspec
779
- + transport: remove transport_verify_remote_names
780
- + send-pack: store refspecs in a struct refspec
781
- + transport: convert transport_push to take a struct refspec
782
- + push: convert to use struct refspec
783
- + push: check for errors earlier
784
- + remote: convert match_explicit_refs to take a struct refspec
785
- + remote: convert get_ref_match to take a struct refspec
786
- + remote: convert query_refspecs to take a struct refspec
787
- + remote: convert apply_refspecs to take a struct refspec
788
- + remote: convert get_stale_heads to take a struct refspec
789
- + fetch: convert prune_refs to take a struct refspec
790
- + fetch: convert get_ref_map to take a struct refspec
791
- + fetch: convert do_fetch to take a struct refspec
792
- + refspec: remove the deprecated functions
793
- + fetch: convert refmap to use struct refspec
794
- + fetch: convert fetch_one to use struct refspec
795
- + transport-helper: convert to use struct refspec
796
- + remote: remove add_prune_tags_to_fetch_refspec
797
- + remote: convert fetch refspecs to struct refspec
798
- + remote: convert push refspecs to struct refspec
799
- + fast-export: convert to use struct refspec
800
- + clone: convert cmd_clone to use refspec_item_init
801
- + remote: convert match_push_refs to use struct refspec
802
- + remote: convert check_push_refs to use struct refspec
803
- + transport: convert transport_push to use struct refspec
804
- + pull: convert get_tracking_branch to use refspec_item_init
805
- + submodule--helper: convert push_check to use struct refspec
806
- + refspec: convert valid_fetch_refspec to use parse_refspec
807
- + refspec: introduce struct refspec
808
- + refspec: factor out parsing a single refspec
809
- + refspec: rename struct refspec to struct refspec_item
810
- + refspec: move refspec parsing logic into its own file
811
- (this branch is used by bw/ref-prefix-for-configured-refspec.)
638
813
- An API update for handling of refspecs used by fetch & push
814
- codepath.
639
+* rm/p4-submit-with-commit-option (2018-05-21) 1 commit
640
+ - git-p4: add options --commit and --disable-rebase
641
816
- Will merge to 'master'.
642
+ Needs sign-off.
643
644
645
* ds/commit-graph-lockfile-fix (2018-05-22) 1 commit
@@ -823,7 +649,7 @@ of the repositories listed at
649
650
Update to ds/generation-numbers topic.
651
826
- Will merge to 'master'.
652
+ Wait for ds/generation-numbers
653
654
655
* nd/commit-util-to-slab (2018-05-21) 15 commits
@@ -849,7 +675,7 @@ of the repositories listed at
675
code. All of the existing uses of the field has been migrated to a
676
more dedicated "commit-slab" mechanism and the field is eliminated.
677
852
- Will merge to 'master'.
678
+ Will cook in 'next'.
679
680
681
* nd/diff-apply-ita (2018-05-29) 4 commits
@@ -868,19 +694,7 @@ of the repositories listed at
694
otherwise working-tree-only application of a patch will add new
695
paths to the index marked with the "intent-to-add" bit.
696
871
- Kicked back to 'pu'.
872
- cf. <20180526120846.23663-1-pclouds@gmail.com>
873
-
874
-
875
-* sb/grep-die-on-unreadable-index (2018-05-16) 1 commit
876
- (merged to 'next' on 2018-05-24 at 6d78916503)
877
- + grep: handle corrupt index files early
878
-
879
- Error behaviour of "git grep" when it cannot read the index was
880
- inconsistent with other commands that uses the index, which has
881
- been corrected to error out early.
882
-
883
- Will merge to 'master'.
697
+ Will cook in 'next'.
698
699
700
* sb/object-store-grafts (2018-05-18) 19 commits
@@ -908,32 +722,7 @@ of the repositories listed at
722
The conversion to pass "the_repository" and then "a_repository"
723
throughout the object access API continues.
724
911
- Is this ready for 'next'?
912
-
913
-
914
-* sb/submodule-merge-in-merge-recursive (2018-05-18) 3 commits
915
- (merged to 'next' on 2018-05-24 at 6228d22182)
916
- + merge-recursive: give notice when submodule commit gets fast-forwarded
917
- + merge-recursive: i18n submodule merge output and respect verbosity
918
- + submodule.c: move submodule merging to merge-recursive.c
919
-
920
- By code restructuring of submodule merge in merge-recursive,
921
- informational messages from the codepath are now given using the
922
- same mechanism as other output, and honor the merge.verbosity
923
- configuration. The code also learned to give a few new messages
924
- when a submodule three-way merge resolves cleanly when one side
925
- records a descendant of the commit chosen by the other side.
926
-
927
- Will merge to 'master'.
928
-
929
-
930
-* ld/p4-unshelve (2018-05-24) 1 commit
931
- (merged to 'next' on 2018-05-30 at 7367508399)
932
- + git-p4: add unshelve command
933
-
934
- "git p4" learned to "unshelve" shelved commit from P4.
935
-
936
- Will merge to 'master'.
725
+ Will merge to and cook in 'next'.
726
727
728
* pc/submodule-helper-foreach (2018-05-11) 4 commits
@@ -945,7 +734,7 @@ of the repositories listed at
734
735
The bulk of "git submodule foreach" has been rewritten in C.
736
948
- Will merge to and cook in 'next'.
737
+ Will cook in 'next'.
738
739
740
* js/branch-diff (2018-05-16) 19 commits
@@ -996,31 +785,32 @@ of the repositories listed at
785
The conversion to pass "the_repository" and then "a_repository"
786
throughout the object access API continues.
787
999
- Is this ready for 'next'?
788
+ Will merge to and cook in 'next'.
789
790
791
* tb/grep-column (2018-05-14) 7 commits
1003
- - contrib/git-jump/git-jump: jump to match column in addition to line
1004
- - grep.c: add configuration variables to show matched option
1005
- - builtin/grep.c: add '--column' option to 'git-grep(1)'
1006
- - grep.c: display column number of first match
1007
- - grep.[ch]: extend grep_opt to allow showing matched column
1008
- - grep.c: expose matched column in match_line()
1009
- - Documentation/config.txt: camel-case lineNumber for consistency
792
+ . contrib/git-jump/git-jump: jump to match column in addition to line
793
+ . grep.c: add configuration variables to show matched option
794
+ . builtin/grep.c: add '--column' option to 'git-grep(1)'
795
+ . grep.c: display column number of first match
796
+ . grep.[ch]: extend grep_opt to allow showing matched column
797
+ . grep.c: expose matched column in match_line()
798
+ . Documentation/config.txt: camel-case lineNumber for consistency
799
(this branch is used by tb/grep-only-matching.)
800
801
"git grep" learned the "--column" option that gives not just the
802
line number but the column number of the hit.
803
1015
- What's the doneness of this topic?
804
+ Expecting a reroll.
805
+ cf. <20180530160908.GA8340@D-10-19-29-76.dhcp4.washington.edu>
806
807
808
* tb/grep-only-matching (2018-05-14) 2 commits
1019
- - builtin/grep.c: teach '-o', '--only-matching' to 'git-grep'
1020
- - grep.c: extract show_line_header()
809
+ . builtin/grep.c: teach '-o', '--only-matching' to 'git-grep'
810
+ . grep.c: extract show_line_header()
811
(this branch uses tb/grep-column.)
812
1023
- What's the doneness of this topic?
813
+ Waiting on tb/grep-column
814
815
816
* sb/diff-color-move-more (2018-05-21) 8 commits
@@ -1059,35 +849,7 @@ of the repositories listed at
849
pre-computed generation numbers to speed up the decisions to stop
850
history traversal.
851
1062
- Will merge to 'master'.
1063
-
1064
-
1065
-* nd/command-list (2018-05-21) 17 commits
1066
- (merged to 'next' on 2018-05-24 at 093e983b05)
1067
- + completion: allow to customize the completable command list
1068
- + completion: add and use --list-cmds=alias
1069
- + completion: add and use --list-cmds=nohelpers
1070
- + Move declaration for alias.c to alias.h
1071
- + completion: reduce completable command list
1072
- + completion: let git provide the completable command list
1073
- + command-list.txt: documentation and guide line
1074
- + help: use command-list.txt for the source of guides
1075
- + help: add "-a --verbose" to list all commands with synopsis
1076
- + git: support --list-cmds=list-<category>
1077
- + completion: implement and use --list-cmds=main,others
1078
- + git --list-cmds: collect command list in a string_list
1079
- + git.c: convert --list-* to --list-cmds=*
1080
- + Remove common-cmds.h
1081
- + help: use command-list.h for common command list
1082
- + generate-cmds.sh: export all commands to command-list.h
1083
- + generate-cmds.sh: factor out synopsis extract code
1084
- (this branch is used by nd/complete-config-vars.)
1085
-
1086
- The list of commands with their various attributes were spread
1087
- across a few places in the build procedure, but it now is getting a
1088
- bit more consolidated to allow more automation.
1089
-
1090
- Will merge to 'master'.
852
+ Will cook in 'next'.
853
854
855
* jk/branch-l-0-deprecation (2018-05-25) 5 commits