What's cooking (2019/02 #01)
Junio C Hamano committed
Feb 5, 2019 at 15:34 UTC
8c6144425156039892134b282c7ead83637d4417
1 file changed
+507
-574
whats-cooking.txt
+507
-574
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Jan 2019, #05; Tue, 29)
4
-X-master-at: b5101f929789889c2e536d915698f58d5c5c6b7a
5
-X-next-at: fbb209baf1b5c34e4ec52fb4a5a73b00cfbecec1
3
+Subject: What's cooking in git.git (Feb 2019, #01; Tue, 5)
4
+X-master-at: 8feddda32cc50e928404788d7b9377c0b5f73f50
5
+X-next-at: b4d0f1c61aafd6cb5c3d9e6ee6bd99a036e3f21d
6
7
-What's cooking in git.git (Jan 2019, #05; Tue, 29)
7
+What's cooking in git.git (Feb 2019, #01; Tue, 5)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,265 +12,246 @@ 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
+A handful more topics have been merged to 'master' and 'next'
16
+respectively. I have been hoping to keep this cycle short compared
17
+to other recent cycles but there are a few smallish changes that we
18
+should have in the upcoming release but are still not in 'next'. We
19
+will see what happens.
20
+
21
You can find the changes described here in the integration branches
22
of the repositories listed at
23
24
http://git-blame.blogspot.com/p/git-public-repositories.html
25
26
--------------------------------------------------
21
-[New Topics]
22
-
23
-* ds/commit-graph-format-v2 (2019-01-29) 8 commits
24
- - SQUASH : misnamed variables and style fix
25
- - commit-graph: test verifying a corrupt v2 header
26
- - commit-graph: implement file format version 2
27
- - commit-graph: add --version=<n> option
28
- - commit-graph: create new version flags
29
- - commit-graph: collapse parameters into flags
30
- - commit-graph: return with errors during write
31
- - Merge branch 'bc/sha-256' into ds/commit-graph-format-v2
32
- (this branch uses ab/commit-graph-write-optim and ab/commit-graph-write-progress.)
33
-
34
- Introduce version 2 of the commit-graph format to correct
35
- deficiency in the initial version.
27
+[Graduated to "master"]
28
29
+* ab/commit-graph-write-optim (2019-01-22) 1 commit
30
+ (merged to 'next' on 2019-01-29 at 17c894dfec)
31
+ + commit-graph write: use pack order when finding commits
32
+ (this branch is used by ab/commit-graph-write-progress and ds/commit-graph-format-v2.)
33
38
-* ds/coverage-prove (2019-01-29) 1 commit
39
- - Makefile: add coverage-prove target
34
+ The codepath to write out commit-graph has been optimized by
35
+ following the usual pattern of visiting objects in in-pack order.
36
41
- A new target "coverage-prove" to run the coverage test under
42
- "prove" has been added.
37
44
- Will merge to 'next'.
38
+* ab/commit-graph-write-progress (2019-01-23) 9 commits
39
+ (merged to 'next' on 2019-01-29 at e086b1cba6)
40
+ + commit-graph write: emit a percentage for all progress
41
+ + commit-graph write: add itermediate progress
42
+ + commit-graph write: remove empty line for readability
43
+ + commit-graph write: add more descriptive progress output
44
+ + commit-graph write: show progress for object search
45
+ + commit-graph write: more descriptive "writing out" output
46
+ + commit-graph write: add "Writing out" progress output
47
+ + commit-graph: don't call write_graph_chunk_extra_edges() unnecessarily
48
+ + commit-graph: rename "large edges" to "extra edges"
49
+ (this branch is used by ds/commit-graph-format-v2; uses ab/commit-graph-write-optim.)
50
46
---------------------------------------------------
47
-[Graduated to "master"]
51
+ The codepath to show progress meter while writing out commit-graph
52
+ file has been improved.
53
49
-* md/list-objects-filter-by-depth (2019-01-15) 4 commits
50
- + tree:<depth>: skip some trees even when collecting omits
51
- + list-objects-filter: teach tree:# how to handle >0
52
- + Merge branch 'nd/the-index' into md/list-objects-filter-by-depth
53
- + Merge branch 'sb/more-repo-in-api' into md/list-objects-filter-by-depth
54
- (this branch is used by js/filter-options-should-use-plain-int; uses sb/more-repo-in-api; is tangled with jt/get-reference-with-commit-graph.)
54
56
- The objects-filter machinery learned "tree:<depth>" to filter
57
- objects up to a given depth; earlier it only supported depth=0,
58
- i.e. usable to create a commit-only lazy clone.
55
+* az/instaweb-py3-http-server (2019-01-28) 1 commit
56
+ (merged to 'next' on 2019-01-29 at 82f06b6774)
57
+ + git-instaweb: add Python builtin http.server support
58
60
- Will merge to 'next'.
59
+ "git instaweb" learned to drive http.server that comes with
60
+ "batteries included" Python installation (both Python2 & 3).
61
62
63
-* bc/sha-256 (2018-11-14) 12 commits
64
- (merged to 'next' on 2019-01-18 at 3f161d31bb)
65
- + hash: add an SHA-256 implementation using OpenSSL
66
- + sha256: add an SHA-256 implementation using libgcrypt
67
- + Add a base implementation of SHA-256 support
68
- + commit-graph: convert to using the_hash_algo
69
- + t/helper: add a test helper to compute hash speed
70
- + sha1-file: add a constant for hash block size
71
- + t: make the sha1 test-tool helper generic
72
- + t: add basic tests for our SHA-1 implementation
73
- + cache: make hashcmp and hasheq work with larger hashes
74
- + hex: introduce functions to print arbitrary hashes
75
- + sha1-file: provide functions to look up hash algorithms
76
- + sha1-file: rename algorithm to "sha1"
77
- (this branch is used by ds/commit-graph-format-v2.)
63
+* bp/checkout-new-branch-optim (2019-01-23) 2 commits
64
+ (merged to 'next' on 2019-01-29 at 89d690634d)
65
+ + checkout: fix regression in checkout -b on intitial checkout
66
+ + checkout: add test demonstrating regression with checkout -b on initial commit
67
79
- Add sha-256 hash and plug it through the code to allow building Git
80
- with the "NewHash".
68
+ "git checkout -b <new> [HEAD]" to create a new branch from the
69
+ current commit and check it out ought to be a no-op in the index
70
+ and the working tree in normal cases, but there are corner cases
71
+ that do require updates to the index and the working tree. Running
72
+ it immediately after "git clone --no-checkout" is one of these
73
+ cases that an earlier optimization kicked in incorrectly, which has
74
+ been fixed.
75
76
83
-* bc/tree-walk-oid (2019-01-15) 5 commits
84
- (merged to 'next' on 2019-01-18 at 60c38b9e4a)
85
- + cache: make oidcpy always copy GIT_MAX_RAWSZ bytes
86
- + tree-walk: store object_id in a separate member
87
- + match-trees: use hashcpy to splice trees
88
- + match-trees: compute buffer offset correctly when splicing
89
- + tree-walk: copy object ID before use
77
+* cc/test-ref-store-typofix (2019-01-17) 1 commit
78
+ (merged to 'next' on 2019-01-29 at 0cd264f864)
79
+ + helper/test-ref-store: fix "new-sha1" vs "old-sha1" typo
80
91
- The code to walk tree objects has been taught that we may be
92
- working with object names that are not computed with SHA-1.
81
+ An obvious typo in an assertion error message has been fixed.
82
83
95
-* cc/fetch-error-message-fix (2019-01-14) 1 commit
96
- (merged to 'next' on 2019-01-14 at 81078f86c0)
97
- + fetch: fix extensions.partialclone name in error message
84
+* ja/doc-style-fix (2019-01-23) 1 commit
85
+ (merged to 'next' on 2019-01-29 at 5b520a6fd3)
86
+ + doc: tidy asciidoc style
87
99
- Error message fix.
88
+ Doc typo/stylo fixes.
89
90
102
-* cc/partial-clone-doc-typofix (2019-01-14) 1 commit
103
- (merged to 'next' on 2019-01-14 at 0395de767e)
104
- + partial-clone: add missing 'is' in doc
91
+* jk/add-ignore-errors-bit-assignment-fix (2019-01-17) 1 commit
92
+ (merged to 'next' on 2019-01-29 at a4ac7ccd4f)
93
+ + add: use separate ADD_CACHE_RENORMALIZE flag
94
106
- Doc fix.
95
+ "git add --ignore-errors" did not work as advertised and instead
96
+ worked as an unintended synonym for "git add --renormalize", which
97
+ has been fixed.
98
99
109
-* it/log-format-source (2019-01-11) 1 commit
110
- (merged to 'next' on 2019-01-18 at d660044e93)
111
- + log: add %S option (like --source) to log --format
100
+* jk/attr-macro-fix (2019-01-22) 1 commit
101
+ (merged to 'next' on 2019-01-29 at 740df172e1)
102
+ + attr: do not mark queried macros as unset
103
113
- Custom userformat "log --format" learned %S atom that stands for
114
- the tip the traversal reached the commit from, i.e. --source.
104
+ Asking "git check-attr" about a macro (e.g. "binary") on a specific
105
+ path did not work correctly, even though "git check-attr -a" listed
106
+ such a macro correctly. This has been corrected.
107
108
117
-* ja/doc-build-l10n (2019-01-07) 1 commit
118
- (merged to 'next' on 2019-01-18 at 5dbe5ad3d7)
119
- + Documentation/Makefile add optional targets for l10n
109
+* jk/diff-cc-stat-fixes (2019-01-24) 6 commits
110
+ (merged to 'next' on 2019-01-29 at 8bd04f1749)
111
+ + combine-diff: treat --dirstat like --stat
112
+ + combine-diff: treat --summary like --stat
113
+ + combine-diff: treat --shortstat like --stat
114
+ + combine-diff: factor out stat-format mask
115
+ + diff: clear emitted_symbols flag after use
116
+ + t4006: resurrect commented-out tests
117
121
- Prepare Documentation/Makefile so that manpage localization can
122
- reuse it by overriding and tweaking the list of build products.
118
+ "git diff --color-moved --cc --stat -p" did not work well due to
119
+ funny interaction between a bug in color-moved and the rest, which
120
+ has been fixed.
121
122
125
-* jk/proto-v2-hidden-refs-fix (2019-01-10) 1 commit
126
- (merged to 'next' on 2019-01-18 at 875dbbc71f)
127
- + upload-pack: support hidden refs with protocol v2
123
+* js/abspath-part-inside-repo (2019-01-18) 1 commit
124
+ (merged to 'next' on 2019-01-29 at ac642158ec)
125
+ + abspath_part_inside_repo: respect core.ignoreCase
126
129
- The v2 upload-pack protocol implementation failed to honor
130
- hidden-ref configuration, which has been corrected.
131
- An earlier attempt reverted out of 'next'.
127
+ On a case-insensitive filesystem, we failed to compare the part of
128
+ the path that is above the worktree directory in an absolute
129
+ pathname, which has been corrected.
130
131
134
-* jk/remote-insteadof-cleanup (2019-01-11) 1 commit
135
- (merged to 'next' on 2019-01-18 at 112c93eef3)
136
- + remote: check config validity before creating rewrite struct
132
+* js/commit-graph-chunk-table-fix (2019-01-15) 3 commits
133
+ (merged to 'next' on 2019-01-29 at 65ea01d4f2)
134
+ + Makefile: correct example fuzz build
135
+ + commit-graph: fix buffer read-overflow
136
+ + commit-graph, fuzz: add fuzzer for commit-graph
137
138
- Code clean-up.
138
+ The codepath to read from the commit-graph file attempted to read
139
+ past the end of it when the file's table-of-contents was corrupt.
140
141
141
-* jk/save-getenv-result (2019-01-11) 6 commits
142
- (merged to 'next' on 2019-01-18 at 429c77402a)
143
- + builtin_diff(): read $GIT_DIFF_OPTS closer to use
144
- + merge-recursive: copy $GITHEAD strings
145
- + init: make a copy of $GIT_DIR string
146
- + config: make a copy of $GIT_CONFIG string
147
- + commit: copy saved getenv() result
148
- + get_super_prefix(): copy getenv() result
142
+* js/filter-options-should-use-plain-int (2019-01-15) 1 commit
143
+ (merged to 'next' on 2019-01-18 at 6714547e6d)
144
+ + filter-options: expand scaled numbers
145
+ (this branch uses md/list-objects-filter-by-depth and sb/more-repo-in-api; is tangled with jt/get-reference-with-commit-graph.)
146
150
- There were many places the code relied on the string returned from
151
- getenv() to be non-volatile, which is not true, that have been
152
- corrected.
147
+ Update the protocol message specification to allow only the limited
148
+ use of scaled quantities. This is ensure potential compatibility
149
+ issues will not go out of hand.
150
151
155
-* js/add-e-clear-patch-before-stating (2019-01-15) 1 commit
156
- (merged to 'next' on 2019-01-18 at 9ea7fc4b49)
157
- + add --edit: truncate the patch file
152
+* js/mingw-unc-path-w-backslashes (2019-01-18) 2 commits
153
+ (merged to 'next' on 2019-01-29 at 3adc177c1e)
154
+ + mingw: special-case arguments to `sh`
155
+ + mingw (t5580): document bug when cloning from backslashed UNC paths
156
159
- "git add -e" got confused when the change it wants to let the user
160
- edit is smaller than the previous change that was left over in a
161
- temporary file.
157
+ In Git for Windows, "git clone \\server\share\path" etc. that uses
158
+ UNC paths from command line had bad interaction with its shell
159
+ emulation.
160
161
164
-* js/rebase-i-redo-exec (2018-12-11) 3 commits
165
- (merged to 'next' on 2019-01-18 at 71be3fedb7)
166
- + rebase: introduce a shortcut for --reschedule-failed-exec
167
- + rebase: add a config option to default to --reschedule-failed-exec
168
- + rebase: introduce --reschedule-failed-exec
162
+* js/t6042-timing-fix (2019-01-17) 1 commit
163
+ (merged to 'next' on 2019-01-29 at 9543c96249)
164
+ + t6042: work around speed optimization on Windows
165
170
- "git rebase -i" learned to re-execute a command given with 'exec'
171
- to run after it failed the last time.
166
+ Test update.
167
168
174
-* jt/fetch-pack-v2 (2019-01-10) 1 commit
175
- (merged to 'next' on 2019-01-18 at 75ceb55ff8)
176
- + fetch-pack: support protocol version 2
169
+* js/test-git-installed (2019-01-22) 1 commit
170
+ (merged to 'next' on 2019-01-29 at bab6eabb20)
171
+ + tests: explicitly use `test-tool.exe` on Windows
172
178
- "git fetch-pack" now can talk the version 2 protocol.
173
+ Test fix for Windows.
174
175
181
-* jt/upload-pack-deepen-relative-proto-v2 (2019-01-10) 2 commits
182
- (merged to 'next' on 2019-01-18 at 1483ad21db)
183
- + upload-pack: teach deepen-relative in protocol v2
184
- + fetch-pack: do not take shallow lock unnecessarily
176
+* jt/fetch-v2-sideband (2019-01-17) 5 commits
177
+ (merged to 'next' on 2019-01-29 at c8c6f11f77)
178
+ + tests: define GIT_TEST_SIDEBAND_ALL
179
+ + {fetch,upload}-pack: sideband v2 fetch response
180
+ + sideband: reverse its dependency on pkt-line
181
+ + pkt-line: introduce struct packet_writer
182
+ + Merge branch 'ms/packet-err-check' into jt/fetch-v2-sideband
183
+ (this branch uses ms/packet-err-check.)
184
186
- "git fetch --deepen=<more>" has been corrected to work over v2
187
- protocol.
185
+ "git fetch" and "git upload-pack" learned to send all exchange over
186
+ the sideband channel while talking the v2 protocol.
187
188
190
-* kg/external-diff-save-env (2019-01-11) 1 commit
191
- (merged to 'next' on 2019-01-14 at 8281bbd48b)
192
- + diff: ensure correct lifetime of external_diff_cmd
189
+* jt/get-reference-with-commit-graph (2018-12-28) 1 commit
190
+ (merged to 'next' on 2019-01-18 at bfc4eb9411)
191
+ + revision: use commit graph in get_reference()
192
+ (this branch uses sb/more-repo-in-api; is tangled with js/filter-options-should-use-plain-int and md/list-objects-filter-by-depth.)
193
194
- The code to drive GIT_EXTERNAL_DIFF command relied on the string
195
- returned from getenv() to be non-volatile, which is not true, that
196
- has been corrected.
194
+ Micro-optimize the code that prepares commit objects to be walked
195
+ by "git rev-list" when the commit-graph is available.
196
197
199
-* ms/http-no-more-failonerror (2019-01-10) 5 commits
200
- (merged to 'next' on 2019-01-18 at 8938d70b6d)
201
- + test: test GIT_CURL_VERBOSE=1 shows an error
202
- + remote-curl: unset CURLOPT_FAILONERROR
203
- + remote-curl: define struct for CURLOPT_WRITEFUNCTION
204
- + http: enable keep_error for HTTP requests
205
- + http: support file handles for HTTP_KEEP_ERROR
198
+* jt/namespaced-ls-refs-fix (2019-01-18) 1 commit
199
+ (merged to 'next' on 2019-01-29 at 049530f499)
200
+ + ls-refs: filter refs using namespace-stripped name
201
207
- Debugging help for http transport.
202
+ Fix namespace support in protocol v2.
203
204
210
-* os/rebase-runs-post-checkout-hook (2019-01-02) 2 commits
211
- (merged to 'next' on 2019-01-18 at a03d536318)
212
- + rebase: run post-checkout hook on checkout
213
- + t5403: simplify by using a single repository
205
+* ld/git-p4-shelve-update-fix (2019-01-18) 2 commits
206
+ (merged to 'next' on 2019-01-29 at 02e8752ec8)
207
+ + git-p4: handle update of moved/copied files when updating a shelve
208
+ + git-p4: add failing test for shelved CL update involving move/copy
209
215
- "git rebase" internally runs "checkout" to switch between branches,
216
- and the command used to call the post-checkout hook, but the
217
- reimplementation stopped doing so, which is getting fixed.
210
+ "git p4" failed to update a shelved change when there were moved
211
+ files, which has been corrected.
212
213
220
-* pw/diff-color-moved-ws-fix (2019-01-10) 9 commits
221
- (merged to 'next' on 2019-01-18 at e19713c82f)
222
- + diff --color-moved-ws: handle blank lines
223
- + diff --color-moved-ws: modify allow-indentation-change
224
- + diff --color-moved-ws: optimize allow-indentation-change
225
- + diff --color-moved=zebra: be stricter with color alternation
226
- + diff --color-moved-ws: fix false positives
227
- + diff --color-moved-ws: demonstrate false positives
228
- + diff: allow --no-color-moved-ws
229
- + Use "whitespace" consistently
230
- + diff: document --no-color-moved
214
+* md/list-objects-filter-by-depth (2019-01-15) 4 commits
215
+ + tree:<depth>: skip some trees even when collecting omits
216
+ + list-objects-filter: teach tree:# how to handle >0
217
+ + Merge branch 'nd/the-index' into md/list-objects-filter-by-depth
218
+ + Merge branch 'sb/more-repo-in-api' into md/list-objects-filter-by-depth
219
+ (this branch is used by js/filter-options-should-use-plain-int; uses sb/more-repo-in-api; is tangled with jt/get-reference-with-commit-graph.)
220
232
- "git diff --color-moved-ws" updates.
221
222
+* ms/packet-err-check (2019-01-02) 2 commits
223
+ + pack-protocol.txt: accept error packets in any context
224
+ + Use packet_reader instead of packet_read_line
225
+ (this branch is used by jt/fetch-v2-sideband.)
226
235
-* sb/submodule-recursive-fetch-gets-the-tip (2018-12-09) 9 commits
236
- (merged to 'next' on 2019-01-18 at 79a2809fbc)
237
- + fetch: ensure submodule objects fetched
238
- + submodule.c: fetch in submodules git directory instead of in worktree
239
- + submodule: migrate get_next_submodule to use repository structs
240
- + repository: repo_submodule_init to take a submodule struct
241
- + submodule: store OIDs in changed_submodule_names
242
- + submodule.c: tighten scope of changed_submodule_names struct
243
- + submodule.c: sort changed_submodule_names before searching it
244
- + submodule.c: fix indentation
245
- + sha1-array: provide oid_array_filter
227
+ Error checking of data sent over the pack-protocol has been
228
+ revamped so that error packets are always diagnosed properly.
229
247
- "git fetch --recurse-submodules" may not fetch the necessary commit
248
- that is bound to the superproject, which is getting corrected.
230
250
---------------------------------------------------
251
-[Cooking]
231
+* nd/fetch-compact-update (2019-01-27) 1 commit
232
+ (merged to 'next' on 2019-01-29 at b78e8841b0)
233
+ + fetch: prefer suffix substitution in compact fetch.output
234
253
-* js/filter-options-should-use-plain-int (2019-01-15) 1 commit
254
- (merged to 'next' on 2019-01-18 at 6714547e6d)
255
- + filter-options: expand scaled numbers
256
- (this branch uses md/list-objects-filter-by-depth and sb/more-repo-in-api; is tangled with jt/get-reference-with-commit-graph.)
235
+ "git fetch" output cleanup.
236
258
- Update the protocol message specification to allow only the limited
259
- use of scaled quantities. This is ensure potential compatibility
260
- issues will not go out of hand.
237
262
- Will merge to 'master'.
238
+* ph/pack-objects-mutex-fix (2019-01-28) 2 commits
239
+ (merged to 'next' on 2019-01-29 at 7c886f6c33)
240
+ + pack-objects: merge read_lock and lock in packing_data struct
241
+ + pack-objects: move read mutex to packing_data struct
242
243
+ "git pack-objects" incorrectly used uninitialized mutex, which has
244
+ been corrected.
245
265
-* jt/get-reference-with-commit-graph (2018-12-28) 1 commit
266
- (merged to 'next' on 2019-01-18 at bfc4eb9411)
267
- + revision: use commit graph in get_reference()
268
- (this branch uses sb/more-repo-in-api; is tangled with js/filter-options-should-use-plain-int and md/list-objects-filter-by-depth.)
246
270
- Micro-optimize the code that prepares commit objects to be walked
271
- by "git rev-list" when the commit-graph is available.
247
+* pw/no-editor-in-rebase-i-implicit (2019-01-28) 1 commit
248
+ (merged to 'next' on 2019-01-29 at 9d06993725)
249
+ + implicit interactive rebase: don't run sequence editor
250
273
- Will merge to 'master'.
251
+ When GIT_SEQUENCE_EDITOR is set, the command was incorrectly
252
+ started when modes of "git rebase" that implicitly uses the
253
+ machinery for the interactive rebase are run, which has been
254
+ corrected.
255
256
257
* sb/more-repo-in-api (2018-12-28) 23 commits
@@ -301,324 +282,332 @@ of the repositories listed at
282
283
The in-core repository instances are passed through more codepaths.
284
304
- Will merge to 'master'.
285
286
+* sg/object-as-type-commit-graph-fix (2019-01-27) 1 commit
287
+ (merged to 'next' on 2019-01-29 at cc714a044a)
288
+ + object_as_type: initialize commit-graph-related fields of 'struct commit'
289
307
-* br/commit-tree-fully-spelled-gpg-sign-option (2019-01-22) 2 commits
308
- - commit-tree: add missing --gpg-sign flag
309
- - t7510: invoke git as part of &&-chain
290
+ The commit-graph facility did not work when in-core objects that
291
+ are promoted from unknown type to commit (e.g. a commit that is
292
+ accessed via a tag that refers to it) were involved, which has been
293
+ corrected.
294
311
- The documentation of "git commit-tree" said that the command
312
- understands "--gpg-sign" in addition to "-S", but the command line
313
- parser did not know about the longhand, which has been corrected.
295
315
- Will merge to 'next'.
296
+* sg/obstack-cast-function-type-fix (2019-01-17) 1 commit
297
+ (merged to 'next' on 2019-01-29 at 568cafa7f4)
298
+ + compat/obstack: fix -Wcast-function-type warnings
299
300
+ The compat/obstack code had casts that -Wcast-function-type
301
+ compilation option found questionable.
302
318
-* dt/cat-file-batch-ambiguous (2019-01-18) 2 commits
319
- - t1512: test ambiguous cat-file --batch and --batch-output
320
- - Do not print 'dangling' for cat-file in case of ambiguity
303
322
- Needswork on the tip commit.
323
- cf. <20190123111117.GS840@szeder.dev>
304
+* sg/strbuf-addbuf-cocci (2019-01-27) 1 commit
305
+ (merged to 'next' on 2019-01-29 at a9f7279d38)
306
+ + strbuf.cocci: suggest strbuf_addbuf() to add one strbuf to an other
307
308
+ Cocci rule update.
309
326
-* jk/attr-macro-fix (2019-01-22) 1 commit
327
- (merged to 'next' on 2019-01-29 at 740df172e1)
328
- + attr: do not mark queried macros as unset
310
+--------------------------------------------------
311
+[New Topics]
312
330
- Asking "git check-attr" about a macro (e.g. "binary") on a specific
331
- path did not work correctly, even though "git check-attr -a" listed
332
- such a macro correctly. This has been corrected.
313
+* ab/diff-tree-doc-fix (2019-02-04) 1 commit
314
+ (merged to 'next' on 2019-02-05 at 123f48fa2e)
315
+ + diff-tree doc: correct & remove wrong documentation
316
+
317
+ Doc fix.
318
319
Will merge to 'master'.
320
321
337
-* js/test-git-installed (2019-01-22) 1 commit
338
- (merged to 'next' on 2019-01-29 at bab6eabb20)
339
- + tests: explicitly use `test-tool.exe` on Windows
322
+* bc/fetch-pack-clear-alternate-shallow (2019-02-04) 1 commit
323
+ (merged to 'next' on 2019-02-05 at 14392fb6b2)
324
+ + fetch-pack: clear alternate shallow when complete
325
341
- Test fix for Windows.
326
+ "git fetch" over protocol v2 that needs to make a second connection
327
+ to backfill tags did not clear a variable that holds shallow
328
+ repository information correctly, leading to an access of freed
329
+ piece of memory.
330
331
Will merge to 'master'.
332
333
346
-* ph/pack-objects-mutex-fix (2019-01-28) 2 commits
347
- (merged to 'next' on 2019-01-29 at 7c886f6c33)
348
- + pack-objects: merge read_lock and lock in packing_data struct
349
- + pack-objects: move read mutex to packing_data struct
334
+* dm/some-stdio-functions-are-macro-on-freebsd (2019-02-01) 1 commit
335
+ - http: cast result to FILE *
336
351
- "git pack-objects" incorrectly used uninitialized mutex, which has
352
- been corrected.
337
+ Variants of BSD define fileno(fh) as a macro, breaking a program
338
+ that passes a "void *" to it.
339
354
- Will merge to 'master'.
340
+ Expecting a reroll.
341
+ cf. <49B9198C-53E5-42BD-8834-B1EDEB3332CB@usask.ca>
342
343
357
-* sb/submodule-abort-update-upon-config-failure (2019-01-18) 1 commit
358
- - git-submodule: abort if core.worktree could not be set correctly
344
+* en/combined-all-paths (2019-02-04) 1 commit
345
+ - log,diff-tree: add --combined-all-names option
346
360
- "git submodule update" learned to abort early when core.worktree
361
- for the submodule is not set correctly to prevent spreading damage.
347
+ Output from "diff --cc" did not show the original paths when the
348
+ merge involved renames. A new option adds the paths in the
349
+ original trees to the output.
350
363
- Will merge to 'next'.
351
+ Expecting a reroll.
352
+ cf. <CABPp-BGyL5BAejK-P-EdscFdH3C6uR7e6CbgNe-9doy-mkw-vg@mail.gmail.com>
353
354
366
-* tb/test-lint-sed-options (2019-01-28) 1 commit
367
- - test-lint: only use only sed [-n] [-e command] [-f command_file]
355
+* js/rebase-i-redo-exec-fix (2019-02-05) 1 commit
356
+ - Revert "rebase: introduce a shortcut for --reschedule-failed-exec"
357
369
- The test lint learned to catch non-portable "sed" options.
358
+ For "rebase -i --reschedule-failed-exec", we do not want the "-y"
359
+ shortcut after all.
360
371
- Will merge to 'next'.
361
+ Waiting for a clarification for the log message.
362
+ cf. <xmqqzhraru5x.fsf@gitster-ct.c.googlers.com>
363
364
374
-* tb/utf-16-le-with-explicit-bom (2019-01-22) 1 commit
375
- - Support working-tree-encoding "UTF-16LE-BOM"
365
377
- A new encoding UTF-16LE-BOM has been invented to force encoding to
378
- UTF-16 with BOM in little endian byte order, which cannot be directly
379
- generated by using iconv.
366
+* ma/doc-diff-usage-fix (2019-02-04) 1 commit
367
+ (merged to 'next' on 2019-02-05 at 18f3f4bc59)
368
+ + doc-diff: don't `cd_to_toplevel`
369
381
- Hold.
382
- cf. <20190129072228.dcyyjpcgqk7c44j4@tb-raspi4>
370
+ Running "Documentation/doc-diff x" from anywhere other than the
371
+ top-level of the working tree did not show the usage string
372
+ correctly, which has been fixed.
373
374
+ Will merge to 'master'.
375
385
-* ja/doc-style-fix (2019-01-23) 1 commit
386
- (merged to 'next' on 2019-01-29 at 5b520a6fd3)
387
- + doc: tidy asciidoc style
376
389
- Doc typo/stylo fixes.
377
+* nd/commit-doc (2019-02-04) 1 commit
378
+ (merged to 'next' on 2019-02-05 at 07b341767e)
379
+ + git-commit.txt: better description what it does
380
+
381
+ Doc update.
382
383
Will merge to 'master'.
384
385
394
-* az/instaweb-py3-http-server (2019-01-28) 1 commit
395
- (merged to 'next' on 2019-01-29 at 82f06b6774)
396
- + git-instaweb: add Python builtin http.server support
386
+* nd/help-align-command-desc (2019-01-31) 1 commit
387
+ (merged to 'next' on 2019-02-05 at 8339c1a46e)
388
+ + help: align the longest command in the command listing
389
398
- "git instaweb" learned to drive http.server that comes with
399
- "batteries included" Python installation (both Python2 & 3).
390
+ Output from "git help" was not correctly aligned, which has been
391
+ fixed.
392
393
Will merge to 'master'.
394
395
404
-* jh/trace2 (2019-01-28) 14 commits
405
- - trace2: t/helper/test-trace2, t0210.sh, t0211.sh, t0212.sh
406
- - trace2:data: add subverb for rebase
407
- - trace2:data: add subverb to reset command
408
- - trace2:data: add subverb to checkout command
409
- - pack-objects: add trace2 regions
410
- - trace2:data: add trace2 instrumentation to index read/write
411
- - trace2:data: add trace2 hook classification
412
- - trace2:data: add trace2 transport child classification
413
- - trace2:data: add trace2 sub-process classification
414
- - trace2:data: add editor/pager child classification
415
- - trace2:data: add trace2 regions to wt-status
416
- - trace2: collect platform-specific process information
417
- - trace2: create new combined trace facility
418
- - trace2: Documentation/technical/api-trace2.txt
396
+* rj/sparse-flags (2019-02-05) 2 commits
397
+ (merged to 'next' on 2019-02-05 at 7c9a7b7ee9)
398
+ + Makefile: improve SPARSE_FLAGS customisation
399
+ + config.mak.uname: remove obsolete SPARSE_FLAGS setting
400
420
- A more structured way to obtain execution trace has been added.
401
+ Use of the sparse tool got easier to customize from the command
402
+ line to help developers.
403
422
- Ready?
404
+ Will merge to 'master'.
405
406
425
-* jk/diff-cc-stat-fixes (2019-01-24) 6 commits
426
- (merged to 'next' on 2019-01-29 at 8bd04f1749)
427
- + combine-diff: treat --dirstat like --stat
428
- + combine-diff: treat --summary like --stat
429
- + combine-diff: treat --shortstat like --stat
430
- + combine-diff: factor out stat-format mask
431
- + diff: clear emitted_symbols flag after use
432
- + t4006: resurrect commented-out tests
407
+* sg/travis-osx-brew-breakage-workaround (2019-02-04) 1 commit
408
+ (merged to 'next' on 2019-02-05 at 6a1d957040)
409
+ + travis-ci: make the OSX build jobs' 'brew update' more quiet
410
434
- "git diff --color-moved --cc --stat -p" did not work well due to
435
- funny interaction between a bug in color-moved and the rest, which
436
- has been fixed.
411
+ The way the OSX build jobs updates its build environment used the
412
+ "--quiet" option to "brew update" command, but it wasn't all that
413
+ quiet to be useful. The use of the option has been replaced with
414
+ an explicit redirection to the /dev/null (which incidentally would
415
+ have worked around a breakage by recent updates to homebrew, which
416
+ has fixed itself already).
417
418
Will merge to 'master'.
419
420
441
-* jk/unused-parameter-cleanup (2019-01-24) 8 commits
442
- - convert: drop path parameter from actual conversion functions
443
- - convert: drop len parameter from conversion checks
444
- - config: drop unused parameter from maybe_remove_section()
445
- - show_date_relative(): drop unused "tz" parameter
446
- - column: drop unused "opts" parameter in item_length()
447
- - create_bundle(): drop unused "header" parameter
448
- - apply: drop unused "def" parameter from find_name_gnu()
449
- - match-trees: drop unused path parameter from score functions
450
-
451
- Code cleanup.
452
-
453
- Will merge to 'next'.
421
+* sh/submodule-summary-abbrev-fix (2019-02-04) 1 commit
422
+ (merged to 'next' on 2019-02-05 at b45b39c30b)
423
+ + git-submodule.sh: shorten submodule SHA-1s using rev-parse
424
425
+ The "git submodule summary" subcommand showed shortened commit
426
+ object names by mechanically truncating them at 7-hexdigit, which
427
+ has been improved to let "rev-parse --short" scale the length of
428
+ the abbreviation with the size of the repository.
429
456
-* nd/fetch-compact-update (2019-01-27) 1 commit
457
- (merged to 'next' on 2019-01-29 at b78e8841b0)
458
- + fetch: prefer suffix substitution in compact fetch.output
430
+ Will merge to 'master'.
431
460
- "git fetch" output cleanup.
432
+
433
+* sl/const (2019-02-04) 1 commit
434
+ (merged to 'next' on 2019-02-05 at a085045a37)
435
+ + various: tighten constness of some local variables
436
+
437
+ Code cleanup.
438
439
Will merge to 'master'.
440
441
465
-* sg/object-as-type-commit-graph-fix (2019-01-27) 1 commit
466
- (merged to 'next' on 2019-01-29 at cc714a044a)
467
- + object_as_type: initialize commit-graph-related fields of 'struct commit'
442
+* ss/describe-dirty-in-the-right-directory (2019-02-04) 2 commits
443
+ (merged to 'next' on 2019-02-05 at e4a3303e12)
444
+ + t6120: test for describe with a bare repository
445
+ + describe: setup working tree for --dirty
446
469
- The commit-graph facility did not work when in-core objects that
470
- are promoted from unknown type to commit (e.g. a commit that is
471
- accessed via a tag that refers to it) were involved, which has been
447
+ "git --work-tree=$there --git-dir=$here describe --dirty" did not
448
+ work correctly as it did not pay attention to the location of the
449
+ worktree specified by the user by mistake, which has been
450
corrected.
451
452
Will merge to 'master'.
453
454
+--------------------------------------------------
455
+[Cooking]
456
477
-* sg/strbuf-addbuf-cocci (2019-01-27) 1 commit
478
- (merged to 'next' on 2019-01-29 at a9f7279d38)
479
- + strbuf.cocci: suggest strbuf_addbuf() to add one strbuf to an other
457
+* km/init-doc-typofix (2019-01-31) 1 commit
458
+ (merged to 'next' on 2019-02-05 at ee90a62a1c)
459
+ + init docs: correct a punctuation typo
460
481
- Cocci rule update.
461
+ Docfix.
462
463
Will merge to 'master'.
464
465
486
-* sx/evolve (2019-01-27) 8 commits
487
- . evolve: add the 'git change list' command
488
- . evolve: implement the 'git change' command
489
- . evolve: add support for writing metacommits
490
- . evolve: add the change-table structure
491
- . evolve: add support for parsing metacommits
492
- . ref-filter: add the metas namespace to ref-filter
493
- . sha1-array: implement oid_array_readonly_contains()
494
- . technical doc: add a design doc for the evolve command
466
+* ds/commit-graph-format-v2 (2019-01-29) 8 commits
467
+ - SQUASH : misnamed variables and style fix
468
+ - commit-graph: test verifying a corrupt v2 header
469
+ - commit-graph: implement file format version 2
470
+ - commit-graph: add --version=<n> option
471
+ - commit-graph: create new version flags
472
+ - commit-graph: collapse parameters into flags
473
+ - commit-graph: return with errors during write
474
+ - Merge branch 'bc/sha-256' into ds/commit-graph-format-v2
475
496
- The beginning of "hg evolve" mimicry.
476
+ Introduce version 2 of the commit-graph format to correct
477
+ deficiency in the initial version.
478
479
499
-* jk/autocrlf-overrides-eol-doc (2019-01-29) 2 commits
500
- - docs/config: clarify "text property" in core.eol
501
- - doc/gitattributes: clarify "autocrlf overrides eol"
480
+* ds/coverage-prove (2019-01-29) 1 commit
481
+ - Makefile: add coverage-prove target
482
503
- Documentation around core.crlf has been updated.
483
+ A new target "coverage-prove" to run the coverage test under
484
+ "prove" has been added.
485
486
Will merge to 'next'.
487
488
508
-* pw/no-editor-in-rebase-i-implicit (2019-01-28) 1 commit
509
- (merged to 'next' on 2019-01-29 at 9d06993725)
510
- + implicit interactive rebase: don't run sequence editor
489
+* br/commit-tree-fully-spelled-gpg-sign-option (2019-01-22) 2 commits
490
+ (merged to 'next' on 2019-02-05 at a0a1e30471)
491
+ + commit-tree: add missing --gpg-sign flag
492
+ + t7510: invoke git as part of &&-chain
493
512
- When GIT_SEQUENCE_EDITOR is set, the command was incorrectly
513
- started when modes of "git rebase" that implicitly uses the
514
- machinery for the interactive rebase are run, which has been
515
- corrected.
494
+ The documentation of "git commit-tree" said that the command
495
+ understands "--gpg-sign" in addition to "-S", but the command line
496
+ parser did not know about the longhand, which has been corrected.
497
498
Will merge to 'master'.
499
500
520
-* pw/rebase-x-sanity-check (2019-01-29) 1 commit
521
- - rebase -x: sanity check command
501
+* dt/cat-file-batch-ambiguous (2019-01-31) 2 commits
502
+ (merged to 'next' on 2019-02-05 at 121d162945)
503
+ + t1512: test ambiguous cat-file --batch and --batch-output
504
+ + Do not print 'dangling' for cat-file in case of ambiguity
505
523
- "git rebase -x $cmd" did not reject multi-line command, even though
524
- the command is incapable of handling such a command. It now is
525
- rejected upfront.
506
+ "git cat-file --batch" reported a dangling symbolic link by
507
+ mistake, when it wanted to report that a given name is ambiguous.
508
527
- Will merge to 'next'.
509
+ Will merge to 'master'.
510
511
530
-* ab/commit-graph-write-optim (2019-01-22) 1 commit
531
- (merged to 'next' on 2019-01-29 at 17c894dfec)
532
- + commit-graph write: use pack order when finding commits
533
- (this branch is used by ab/commit-graph-write-progress and ds/commit-graph-format-v2.)
512
+* sb/submodule-abort-update-upon-config-failure (2019-01-18) 1 commit
513
+ (merged to 'next' on 2019-02-05 at 85da48a9a5)
514
+ + git-submodule: abort if core.worktree could not be set correctly
515
535
- The codepath to write out commit-graph has been optimized by
536
- following the usual pattern of visiting objects in in-pack order.
516
+ "git submodule update" learned to abort early when core.worktree
517
+ for the submodule is not set correctly to prevent spreading damage.
518
519
Will merge to 'master'.
520
521
541
-* ab/commit-graph-write-progress (2019-01-23) 9 commits
542
- (merged to 'next' on 2019-01-29 at e086b1cba6)
543
- + commit-graph write: emit a percentage for all progress
544
- + commit-graph write: add itermediate progress
545
- + commit-graph write: remove empty line for readability
546
- + commit-graph write: add more descriptive progress output
547
- + commit-graph write: show progress for object search
548
- + commit-graph write: more descriptive "writing out" output
549
- + commit-graph write: add "Writing out" progress output
550
- + commit-graph: don't call write_graph_chunk_extra_edges() unnecessarily
551
- + commit-graph: rename "large edges" to "extra edges"
552
- (this branch is used by ds/commit-graph-format-v2; uses ab/commit-graph-write-optim.)
522
+* tb/test-lint-sed-options (2019-01-28) 1 commit
523
+ (merged to 'next' on 2019-02-05 at dec383d823)
524
+ + test-lint: only use only sed [-n] [-e command] [-f command_file]
525
554
- The codepath to show progress meter while writing out commit-graph
555
- file has been improved.
526
+ The test lint learned to catch non-portable "sed" options.
527
528
Will merge to 'master'.
529
530
560
-* cc/test-ref-store-typofix (2019-01-17) 1 commit
561
- (merged to 'next' on 2019-01-29 at 0cd264f864)
562
- + helper/test-ref-store: fix "new-sha1" vs "old-sha1" typo
531
+* tb/utf-16-le-with-explicit-bom (2019-01-31) 1 commit
532
+ (merged to 'next' on 2019-02-05 at 43ac83e06e)
533
+ + Support working-tree-encoding "UTF-16LE-BOM"
534
564
- An obvious typo in an assertion error message has been fixed.
535
+ A new encoding UTF-16LE-BOM has been invented to force encoding to
536
+ UTF-16 with BOM in little endian byte order, which cannot be directly
537
+ generated by using iconv.
538
539
Will merge to 'master'.
540
541
569
-* jk/add-ignore-errors-bit-assignment-fix (2019-01-17) 1 commit
570
- (merged to 'next' on 2019-01-29 at a4ac7ccd4f)
571
- + add: use separate ADD_CACHE_RENORMALIZE flag
542
+* jh/trace2 (2019-02-01) 15 commits
543
+ - trace2: add for_each macros to clang-format
544
+ - trace2: t/helper/test-trace2, t0210.sh, t0211.sh, t0212.sh
545
+ - trace2:data: add subverb for rebase
546
+ - trace2:data: add subverb to reset command
547
+ - trace2:data: add subverb to checkout command
548
+ - trace2:data: pack-objects: add trace2 regions
549
+ - trace2:data: add trace2 instrumentation to index read/write
550
+ - trace2:data: add trace2 hook classification
551
+ - trace2:data: add trace2 transport child classification
552
+ - trace2:data: add trace2 sub-process classification
553
+ - trace2:data: add editor/pager child classification
554
+ - trace2:data: add trace2 regions to wt-status
555
+ - trace2: collect Windows-specific process information
556
+ - trace2: create new combined trace facility
557
+ - trace2: Documentation/technical/api-trace2.txt
558
573
- "git add --ignore-errors" did not work as advertised and instead
574
- worked as an unintended synonym for "git add --renormalize", which
575
- has been fixed.
559
+ A more structured way to obtain execution trace has been added.
560
577
- Will merge to 'master'.
561
+ Still needs some fix-ups.
562
+ cf. <d91d1d89-5759-2006-7b38-4211db5988af@jeffhostetler.com>
563
564
580
-* js/mingw-unc-path-w-backslashes (2019-01-18) 2 commits
581
- (merged to 'next' on 2019-01-29 at 3adc177c1e)
582
- + mingw: special-case arguments to `sh`
583
- + mingw (t5580): document bug when cloning from backslashed UNC paths
565
+* jk/unused-parameter-cleanup (2019-01-24) 8 commits
566
+ (merged to 'next' on 2019-02-05 at 213400362c)
567
+ + convert: drop path parameter from actual conversion functions
568
+ + convert: drop len parameter from conversion checks
569
+ + config: drop unused parameter from maybe_remove_section()
570
+ + show_date_relative(): drop unused "tz" parameter
571
+ + column: drop unused "opts" parameter in item_length()
572
+ + create_bundle(): drop unused "header" parameter
573
+ + apply: drop unused "def" parameter from find_name_gnu()
574
+ + match-trees: drop unused path parameter from score functions
575
585
- In Git for Windows, "git clone \\server\share\path" etc. that uses
586
- UNC paths from command line had bad interaction with its shell
587
- emulation.
576
+ Code cleanup.
577
578
Will merge to 'master'.
579
580
592
-* js/t6042-timing-fix (2019-01-17) 1 commit
593
- (merged to 'next' on 2019-01-29 at 9543c96249)
594
- + t6042: work around speed optimization on Windows
595
-
596
- Test update.
581
+* sx/evolve (2019-01-27) 8 commits
582
+ . evolve: add the 'git change list' command
583
+ . evolve: implement the 'git change' command
584
+ . evolve: add support for writing metacommits
585
+ . evolve: add the change-table structure
586
+ . evolve: add support for parsing metacommits
587
+ . ref-filter: add the metas namespace to ref-filter
588
+ . sha1-array: implement oid_array_readonly_contains()
589
+ . technical doc: add a design doc for the evolve command
590
598
- Will merge to 'master'.
591
+ The beginning of "hg evolve" mimicry.
592
593
601
-* jt/namespaced-ls-refs-fix (2019-01-18) 1 commit
602
- (merged to 'next' on 2019-01-29 at 049530f499)
603
- + ls-refs: filter refs using namespace-stripped name
594
+* jk/autocrlf-overrides-eol-doc (2019-01-29) 2 commits
595
+ (merged to 'next' on 2019-02-05 at 2b372ed6e9)
596
+ + docs/config: clarify "text property" in core.eol
597
+ + doc/gitattributes: clarify "autocrlf overrides eol"
598
605
- Fix namespace support in protocol v2.
599
+ Documentation around core.crlf has been updated.
600
601
Will merge to 'master'.
602
603
610
-* bp/checkout-new-branch-optim (2019-01-23) 2 commits
611
- (merged to 'next' on 2019-01-29 at 89d690634d)
612
- + checkout: fix regression in checkout -b on intitial checkout
613
- + checkout: add test demonstrating regression with checkout -b on initial commit
604
+* pw/rebase-x-sanity-check (2019-01-29) 1 commit
605
+ (merged to 'next' on 2019-02-05 at 9f087a617a)
606
+ + rebase -x: sanity check command
607
615
- "git checkout -b <new> [HEAD]" to create a new branch from the
616
- current commit and check it out ought to be a no-op in the index
617
- and the working tree in normal cases, but there are corner cases
618
- that do require updates to the index and the working tree. Running
619
- it immediately after "git clone --no-checkout" is one of these
620
- cases that an earlier optimization kicked in incorrectly, which has
621
- been fixed.
608
+ "git rebase -x $cmd" did not reject multi-line command, even though
609
+ the command is incapable of handling such a command. It now is
610
+ rejected upfront.
611
612
Will merge to 'master'.
613
@@ -634,54 +623,43 @@ of the repositories listed at
623
Is this ready for 'next'?
624
625
637
-* js/abspath-part-inside-repo (2019-01-18) 1 commit
638
- (merged to 'next' on 2019-01-29 at ac642158ec)
639
- + abspath_part_inside_repo: respect core.ignoreCase
640
-
641
- On a case-insensitive filesystem, we failed to compare the part of
642
- the path that is above the worktree directory in an absolute
643
- pathname, which has been corrected.
644
-
645
- Will merge to 'master'.
646
-
647
-
626
* nd/diff-parseopt (2019-01-27) 14 commits
649
- - diff.c: convert --raw
650
- - diff.c: convert -W|--[no-]function-context
651
- - diff.c: convert -U|--unified
652
- - diff.c: convert -u|-p|--patch
653
- - diff.c: prepare to use parse_options() for parsing
654
- - diff.h: avoid bit fields in struct diff_flags
655
- - diff.h: keep forward struct declarations sorted
656
- - parse-options: allow ll_callback with OPTION_CALLBACK
657
- - parse-options: avoid magic return codes
658
- - parse-options: stop abusing 'callback' for lowlevel callbacks
659
- - parse-options: add OPT_BITOP()
660
- - parse-options: disable option abbreviation with PARSE_OPT_KEEP_UNKNOWN
661
- - parse-options: add one-shot mode
662
- - parse-options.h: remove extern on function prototypes
627
+ (merged to 'next' on 2019-02-05 at 7c4b79aa79)
628
+ + diff.c: convert --raw
629
+ + diff.c: convert -W|--[no-]function-context
630
+ + diff.c: convert -U|--unified
631
+ + diff.c: convert -u|-p|--patch
632
+ + diff.c: prepare to use parse_options() for parsing
633
+ + diff.h: avoid bit fields in struct diff_flags
634
+ + diff.h: keep forward struct declarations sorted
635
+ + parse-options: allow ll_callback with OPTION_CALLBACK
636
+ + parse-options: avoid magic return codes
637
+ + parse-options: stop abusing 'callback' for lowlevel callbacks
638
+ + parse-options: add OPT_BITOP()
639
+ + parse-options: disable option abbreviation with PARSE_OPT_KEEP_UNKNOWN
640
+ + parse-options: add one-shot mode
641
+ + parse-options.h: remove extern on function prototypes
642
643
The diff machinery, one of the oldest parts of the system, which
644
long predates the parse-options API, uses fairly long and complex
645
handcrafted option parser. This is being rewritten to use the
646
parse-options API.
647
669
- Will merge to 'next'.
648
+ Will cook in 'next', waiting for the remainder.
649
Looking good.
650
651
673
-* sc/pack-redundant (2019-01-14) 5 commits
652
+* sc/pack-redundant (2019-02-04) 6 commits
653
- pack-redundant: consistent sort method
654
- pack-redundant: rename pack_list.all_objects
676
- - pack-redundant: remove unused functions
655
- pack-redundant: new algorithm to find min packs
656
+ - pack-redundant: delete redundant code
657
+ - pack-redundant: delay creation of unique_objects
658
- t5323: test cases for git-pack-redundant
659
660
Update the implementation of pack-redundant for performance in a
661
repository with many packfiles.
662
683
- Comments?
684
-
663
664
* nd/config-move-to (2019-01-14) 7 commits
665
- config.h: fix hdr-check warnings
@@ -696,50 +674,15 @@ of the repositories listed at
674
675
676
* sg/travis-specific-cc (2019-01-17) 4 commits
699
- - travis-ci: build with the right compiler
700
- - travis-ci: switch to Xcode 10.1 macOS image
701
- - travis-ci: don't be '--quiet' when running the tests
702
- - .gitignore: ignore external debug symbols from GCC on macOS
677
+ (merged to 'next' on 2019-02-05 at 3ecb3b6755)
678
+ + travis-ci: build with the right compiler
679
+ + travis-ci: switch to Xcode 10.1 macOS image
680
+ + travis-ci: don't be '--quiet' when running the tests
681
+ + .gitignore: ignore external debug symbols from GCC on macOS
682
683
The travis CI scripts have been corrected to build Git with the
684
compiler(s) of our choice.
685
707
- Will merge to 'next'.
708
-
709
-
710
-* sg/obstack-cast-function-type-fix (2019-01-17) 1 commit
711
- (merged to 'next' on 2019-01-29 at 568cafa7f4)
712
- + compat/obstack: fix -Wcast-function-type warnings
713
-
714
- The compat/obstack code had casts that -Wcast-function-type
715
- compilation option found questionable.
716
-
717
- Will merge to 'master'.
718
-
719
-
720
-* jt/fetch-v2-sideband (2019-01-17) 5 commits
721
- (merged to 'next' on 2019-01-29 at c8c6f11f77)
722
- + tests: define GIT_TEST_SIDEBAND_ALL
723
- + {fetch,upload}-pack: sideband v2 fetch response
724
- + sideband: reverse its dependency on pkt-line
725
- + pkt-line: introduce struct packet_writer
726
- + Merge branch 'ms/packet-err-check' into jt/fetch-v2-sideband
727
- (this branch uses ms/packet-err-check.)
728
-
729
- "git fetch" and "git upload-pack" learned to send all exchange over
730
- the sideband channel while talking the v2 protocol.
731
-
732
- Will merge to 'master'.
733
-
734
-
735
-* ld/git-p4-shelve-update-fix (2019-01-18) 2 commits
736
- (merged to 'next' on 2019-01-29 at 02e8752ec8)
737
- + git-p4: handle update of moved/copied files when updating a shelve
738
- + git-p4: add failing test for shelved CL update involving move/copy
739
-
740
- "git p4" failed to update a shelved change when there were moved
741
- files, which has been corrected.
742
-
686
Will merge to 'master'.
687
688
@@ -754,99 +697,88 @@ of the repositories listed at
697
698
699
* nd/the-index-final (2019-01-24) 11 commits
757
- - cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch
758
- - read-cache.c: remove the_* from index_has_changes()
759
- - merge-recursive.c: remove implicit dependency on the_repository
760
- - merge-recursive.c: remove implicit dependency on the_index
761
- - sha1-name.c: remove implicit dependency on the_index
762
- - read-cache.c: replace update_index_if_able with repo_&
763
- - read-cache.c: kill read_index()
764
- - checkout: avoid the_index when possible
765
- - repository.c: replace hold_locked_index() with repo_hold_locked_index()
766
- - notes-utils.c: remove the_repository references
767
- - grep: use grep_opt->repo instead of explict repo argument
700
+ (merged to 'next' on 2019-02-05 at 71b37c09a8)
701
+ + cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch
702
+ + read-cache.c: remove the_* from index_has_changes()
703
+ + merge-recursive.c: remove implicit dependency on the_repository
704
+ + merge-recursive.c: remove implicit dependency on the_index
705
+ + sha1-name.c: remove implicit dependency on the_index
706
+ + read-cache.c: replace update_index_if_able with repo_&
707
+ + read-cache.c: kill read_index()
708
+ + checkout: avoid the_index when possible
709
+ + repository.c: replace hold_locked_index() with repo_hold_locked_index()
710
+ + notes-utils.c: remove the_repository references
711
+ + grep: use grep_opt->repo instead of explict repo argument
712
713
The assumption to work on the single "in-core index" instance has
714
been reduced from the library-ish part of the codebase.
715
772
- Will merge to 'next'.
716
+ Will merge to 'master'.
717
718
775
-* jp/author-committer-config (2019-01-02) 2 commits
776
- - DONTMERGE
777
- - Add author and committer configuration settings
719
+* wh/author-committer-ident-config (2019-02-04) 1 commit
720
+ - config: allow giving separate author and committer idents
721
722
Four new configuration variables {author,committer}.{name,email}
723
have been introduced to override user.{name,email} in more specific
724
cases.
725
783
- Expecting a reroll.
784
- cf. <xmqq1s5uk6qh.fsf@gitster-ct.c.googlers.com>
785
- cf. <20190128233022.GA29068@whubbs1.gaikai.biz>
786
-
726
727
* js/rebase-am (2019-01-18) 4 commits
789
- - built-in rebase: call `git am` directly
790
- - rebase: teach `reset_head()` to optionally skip the worktree
791
- - rebase: avoid double reflog entry when switching branches
792
- - rebase: move `reset_head()` into a better spot
728
+ (merged to 'next' on 2019-02-05 at cb92db8ecf)
729
+ + built-in rebase: call `git am` directly
730
+ + rebase: teach `reset_head()` to optionally skip the worktree
731
+ + rebase: avoid double reflog entry when switching branches
732
+ + rebase: move `reset_head()` into a better spot
733
734
Instead of going through "git-rebase--am" scriptlet to use the "am"
735
backend, the built-in version of "git rebase" learned to drive the
736
"am" backend directly.
737
798
- Will merge to 'next'.
799
-
800
-
801
-* ms/packet-err-check (2019-01-02) 2 commits
802
- + pack-protocol.txt: accept error packets in any context
803
- + Use packet_reader instead of packet_read_line
804
- (this branch is used by jt/fetch-v2-sideband.)
805
-
806
- Error checking of data sent over the pack-protocol has been
807
- revamped so that error packets are always diagnosed properly.
808
-
809
- Will merge to 'next'.
738
+ Will merge to 'master'.
739
740
741
* tt/bisect-in-c (2019-01-02) 7 commits
813
- - bisect--helper: `bisect_start` shell function partially in C
814
- - bisect--helper: `get_terms` & `bisect_terms` shell function in C
815
- - bisect--helper: `bisect_next_check` shell function in C
816
- - bisect--helper: `check_and_set_terms` shell function in C
817
- - wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
818
- - bisect--helper: `bisect_write` shell function in C
819
- - bisect--helper: `bisect_reset` shell function in C
742
+ (merged to 'next' on 2019-02-05 at 1e5e00d24e)
743
+ + bisect--helper: `bisect_start` shell function partially in C
744
+ + bisect--helper: `get_terms` & `bisect_terms` shell function in C
745
+ + bisect--helper: `bisect_next_check` shell function in C
746
+ + bisect--helper: `check_and_set_terms` shell function in C
747
+ + wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
748
+ + bisect--helper: `bisect_write` shell function in C
749
+ + bisect--helper: `bisect_reset` shell function in C
750
751
More code in "git bisect" has been rewritten in C.
752
823
- Will merge to 'next'.
753
+ Will merge to 'master'.
754
755
756
* jk/loose-object-cache-oid (2019-01-08) 11 commits
827
- - prefer "hash mismatch" to "sha1 mismatch"
828
- - sha1-file: avoid "sha1 file" for generic use in messages
829
- - sha1-file: prefer "loose object file" to "sha1 file" in messages
830
- - sha1-file: drop has_sha1_file()
831
- - convert has_sha1_file() callers to has_object_file()
832
- - sha1-file: convert pass-through functions to object_id
833
- - sha1-file: modernize loose header/stream functions
834
- - sha1-file: modernize loose object file functions
835
- - http: use struct object_id instead of bare sha1
836
- - update comment references to sha1_object_info()
837
- - sha1-file: fix outdated sha1 comment references
757
+ (merged to 'next' on 2019-02-05 at 5cbc954aa5)
758
+ + prefer "hash mismatch" to "sha1 mismatch"
759
+ + sha1-file: avoid "sha1 file" for generic use in messages
760
+ + sha1-file: prefer "loose object file" to "sha1 file" in messages
761
+ + sha1-file: drop has_sha1_file()
762
+ + convert has_sha1_file() callers to has_object_file()
763
+ + sha1-file: convert pass-through functions to object_id
764
+ + sha1-file: modernize loose header/stream functions
765
+ + sha1-file: modernize loose object file functions
766
+ + http: use struct object_id instead of bare sha1
767
+ + update comment references to sha1_object_info()
768
+ + sha1-file: fix outdated sha1 comment references
769
770
Code clean-up.
771
841
- Will merge to 'next'.
772
+ Will merge to 'master'.
773
774
775
* lt/date-human (2019-01-29) 5 commits
845
- - Add `human` date format tests.
846
- - Add `human` format to test-tool
847
- - Add 'human' date format documentation
848
- - Replace the proposed 'auto' mode with 'auto:'
849
- - Add 'human' date format
776
+ (merged to 'next' on 2019-02-05 at f2850c9fc0)
777
+ + Add `human` date format tests.
778
+ + Add `human` format to test-tool
779
+ + Add 'human' date format documentation
780
+ + Replace the proposed 'auto' mode with 'auto:'
781
+ + Add 'human' date format
782
783
A new date format "--date=human" that morphs its output depending
784
on how far the time is from the current time has been introduced.
@@ -854,7 +786,7 @@ of the repositories listed at
786
going to the pager or to the terminal and otherwise the default
787
format.
788
857
- Will merge to 'next'.
789
+ Will merge to 'master'.
790
791
792
* ds/midx-expire-repack (2019-01-27) 10 commits
@@ -877,20 +809,23 @@ of the repositories listed at
809
810
811
* ds/push-sparse-tree-walk (2019-01-17) 5 commits
880
- - pack-objects: create GIT_TEST_PACK_SPARSE
881
- - pack-objects: create pack.useSparse setting
882
- - revision: implement sparse algorithm
883
- - list-objects: consume sparse tree walk
884
- - revision: add mark_tree_uninteresting_sparse
812
+ (merged to 'next' on 2019-02-05 at 9fd04c84d6)
813
+ + pack-objects: create GIT_TEST_PACK_SPARSE
814
+ + pack-objects: create pack.useSparse setting
815
+ + revision: implement sparse algorithm
816
+ + list-objects: consume sparse tree walk
817
+ + revision: add mark_tree_uninteresting_sparse
818
819
"git pack-objects" learned another algorithm to compute the set of
820
objects to send, that trades the resulting packfile off to save
821
traversal cost to favor small pushes.
822
890
- Will merge to 'next'.
823
+ Will merge to 'master'.
824
825
893
-* tg/checkout-no-overlay (2019-01-08) 8 commits
826
+* tg/checkout-no-overlay (2019-02-04) 9 commits
827
+ (merged to 'next' on 2019-02-04 at 9968bcf4fb)
828
+ + revert "checkout: introduce checkout.overlayMode config"
829
(merged to 'next' on 2019-01-18 at 1e2a79ba5c)
830
+ checkout: introduce checkout.overlayMode config
831
+ checkout: introduce --{,no-}overlay option
@@ -906,23 +841,12 @@ of the repositories listed at
841
match the pathspec that are in the current index and working tree
842
and are not in the tree-ish.
843
909
- Will merge to 'master'.
910
-
911
-
912
-* js/commit-graph-chunk-table-fix (2019-01-15) 3 commits
913
- (merged to 'next' on 2019-01-29 at 65ea01d4f2)
914
- + Makefile: correct example fuzz build
915
- + commit-graph: fix buffer read-overflow
916
- + commit-graph, fuzz: add fuzzer for commit-graph
917
-
918
- The codepath to read from the commit-graph file attempted to read
919
- past the end of it when the file's table-of-contents was corrupt.
920
-
921
- Will merge to 'master'.
844
+ Will hold.
845
+ Waiting for "restore-files" & "switch-branches" pair.
846
+ cf. <20190205204208.GC6085@hank.intra.tgummerer.com>
847
848
924
-* dl/merge-cleanup-scissors-fix (2019-01-27) 5 commits
925
- - init docs: correct a punctuation typo
849
+* dl/merge-cleanup-scissors-fix (2019-01-27) 4 commits
850
- merge: add scissors line on merge conflict
851
- merge: cleanup messages like commit
852
- t7600: clean up 'merge --squash c3 with c7' test
@@ -934,7 +858,7 @@ of the repositories listed at
858
out just like the list of updated paths and other information to
859
help the user explain the merge better.
860
937
- Comments?
861
+ Will merge to 'next'.
862
863
864
* aw/pretty-trailers (2019-01-29) 7 commits
@@ -964,19 +888,20 @@ of the repositories listed at
888
889
890
* en/rebase-merge-on-sequencer (2019-01-07) 8 commits
967
- - rebase: implement --merge via the interactive machinery
968
- - rebase: define linearization ordering and enforce it
969
- - git-legacy-rebase: simplify unnecessary triply-nested if
970
- - git-rebase, sequencer: extend --quiet option for the interactive machinery
971
- - am, rebase--merge: do not overlook --skip'ed commits with post-rewrite
972
- - t5407: add a test demonstrating how interactive handles --skip differently
973
- - rebase: fix incompatible options error message
974
- - rebase: make builtin and legacy script error messages the same
891
+ (merged to 'next' on 2019-02-05 at 88823d7c86)
892
+ + rebase: implement --merge via the interactive machinery
893
+ + rebase: define linearization ordering and enforce it
894
+ + git-legacy-rebase: simplify unnecessary triply-nested if
895
+ + git-rebase, sequencer: extend --quiet option for the interactive machinery
896
+ + am, rebase--merge: do not overlook --skip'ed commits with post-rewrite
897
+ + t5407: add a test demonstrating how interactive handles --skip differently
898
+ + rebase: fix incompatible options error message
899
+ + rebase: make builtin and legacy script error messages the same
900
901
"git rebase --merge" as been reimplemented by reusing the internal
902
machinery used for "git rebase -i".
903
979
- Will merge to 'next'.
904
+ Will merge to 'master'.
905
906
907
* dl/remote-save-to-push (2018-12-11) 1 commit
@@ -1008,10 +933,11 @@ of the repositories listed at
933
Some errors from the other side coming over smart HTTP transport
934
were not noticed, which has been corrected.
935
1011
- Will merge to 'next'.
936
+ This needs to be rebased on top of a more recent 'master' that has
937
+ ms/packet-err-check.
938
939
1014
-* nb/branch-show-other-worktrees-head (2019-01-23) 3 commits
940
+* nb/branch-show-other-worktrees-head (2019-02-01) 3 commits
941
- branch: add an extra verbose output displaying worktree path for refs checked out in a linked worktree
942
- branch: mark and color a branch differently if it is checked out in a linked worktree
943
- ref-filter: add worktreepath atom
@@ -1021,35 +947,36 @@ of the repositories listed at
947
'+', similar to the way the currently checked out branch is shown
948
with '*' in front.
949
1024
- The second one is of dubious value. Needs sign-off.
950
+ The second one is of dubious value.
951
952
953
* js/vsts-ci (2019-01-29) 21 commits
1028
- - ci: parallelize testing on Windows
1029
- - ci: speed up Windows phase
1030
- - tests: optionally skip bin-wrappers/
1031
- - t0061: workaround issues with --with-dashes and RUNTIME_PREFIX
1032
- - tests: add t/helper/ to the PATH with --with-dashes
1033
- - mingw: try to work around issues with the test cleanup
1034
- - tests: include detailed trace logs with --write-junit-xml upon failure
1035
- - tests: avoid calling Perl just to determine file sizes
1036
- - README: add a build badge (status of the Azure Pipelines build)
1037
- - mingw: be more generous when wrapping up the setitimer() emulation
1038
- - ci: use git-sdk-64-minimal build artifact
1039
- - ci: add a Windows job to the Azure Pipelines definition
1040
- - Add a build definition for Azure DevOps
1041
- - ci/lib.sh: add support for Azure Pipelines
1042
- - tests: optionally write results as JUnit-style .xml
1043
- - test-date: add a subcommand to measure times in shell scripts
1044
- - ci: use a junction on Windows instead of a symlink
1045
- - ci: inherit --jobs via MAKEFLAGS in run-build-and-tests
1046
- - ci/lib.sh: encapsulate Travis-specific things
1047
- - ci: rename the library of common functions
1048
- - travis: fix skipping tagged releases
954
+ (merged to 'next' on 2019-02-05 at 7297a734c7)
955
+ + ci: parallelize testing on Windows
956
+ + ci: speed up Windows phase
957
+ + tests: optionally skip bin-wrappers/
958
+ + t0061: workaround issues with --with-dashes and RUNTIME_PREFIX
959
+ + tests: add t/helper/ to the PATH with --with-dashes
960
+ + mingw: try to work around issues with the test cleanup
961
+ + tests: include detailed trace logs with --write-junit-xml upon failure
962
+ + tests: avoid calling Perl just to determine file sizes
963
+ + README: add a build badge (status of the Azure Pipelines build)
964
+ + mingw: be more generous when wrapping up the setitimer() emulation
965
+ + ci: use git-sdk-64-minimal build artifact
966
+ + ci: add a Windows job to the Azure Pipelines definition
967
+ + Add a build definition for Azure DevOps
968
+ + ci/lib.sh: add support for Azure Pipelines
969
+ + tests: optionally write results as JUnit-style .xml
970
+ + test-date: add a subcommand to measure times in shell scripts
971
+ + ci: use a junction on Windows instead of a symlink
972
+ + ci: inherit --jobs via MAKEFLAGS in run-build-and-tests
973
+ + ci/lib.sh: encapsulate Travis-specific things
974
+ + ci: rename the library of common functions
975
+ + travis: fix skipping tagged releases
976
977
Prepare to run test suite on Azure Pipeline.
978
1052
- Will merge to 'next'.
979
+ Will merge to 'master'.
980
981
982
* du/branch-show-current (2018-10-26) 1 commit
@@ -1093,7 +1020,8 @@ of the repositories listed at
1020
around in-core to avoid rewriting the same file over and over
1021
unnecessarily.
1022
1096
- Comments?
1023
+ Still being worked on.
1024
+ cf. <c5e3c1cc-12fa-ddf6-7008-ae47659ddc19@gmail.com>
1025
1026
1027
* js/add-i-coalesce-after-editing-hunk (2018-08-28) 1 commit
@@ -1106,7 +1034,8 @@ of the repositories listed at
1034
cf. <e5b2900a-0558-d3bf-8ea1-d526b078bbc2@talktalk.net>
1035
1036
1109
-* ps/stash-in-c (2019-01-18) 28 commits
1037
+* ps/stash-in-c (2019-02-04) 29 commits
1038
+ - strbuf_vinsertf: provide the correct buffer size to vsnprintf
1039
- stash: fix segmentation fault when files were added with intent
1040
- tests: add a special setup where stash.useBuiltin is off
1041
- stash: optionally use the scripted version again
@@ -1138,7 +1067,11 @@ of the repositories listed at
1067
1068
"git stash" rewritten in C.
1069
1141
- Will merge to 'next'.
1070
+ On hold, waiting for a response
1071
+ cf. <xmqqzhraru5x.fsf@gitster-ct.c.googlers.com>
1072
+ I personally do not mind "oops, this was wrong and I am too lazy to
1073
+ redo the history to clean it up" too much, but waiting briefly to
1074
+ give the final chance to do so.
1075
1076
1077
* pw/add-p-select (2018-07-26) 4 commits