What's cooking (2018/03 #04)
Junio C Hamano committed
Mar 20, 2018 at 14:39 UTC
d0d88d622f8fa0ff600a76954c628f0970ac509e
1 file changed
+339
-566
whats-cooking.txt
+339
-566
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Mar 2018, #03; Wed, 14)
4
-X-master-at: 7fb6aefd2aaffe66e614f7f7b83e5b7ab16d4806
5
-X-next-at: 6dcf76e1189e32b367ea053200d21aa31432517e
3
+Subject: What's cooking in git.git (Mar 2018, #04; Tue, 20)
4
+X-master-at: 0afbf6caa5b16dcfa3074982e5b48e27d452dbbb
5
+X-next-at: 9ac9d02b0bb5a12c247f9cbeaa8c30b8aed3f167
6
7
-What's cooking in git.git (Mar 2018, #03; Wed, 14)
7
+What's cooking in git.git (Mar 2018, #04; Tue, 20)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -20,430 +20,227 @@ of the repositories listed at
20
--------------------------------------------------
21
[Graduated to "master"]
22
23
-* ab/gc-auto-in-commit (2018-03-01) 1 commit
24
- (merged to 'next' on 2018-03-02 at 96a5a4d629)
25
- + commit: run git gc --auto just before the post-commit hook
23
+* ab/man-sec-list (2018-03-08) 1 commit
24
+ (merged to 'next' on 2018-03-09 at 9626b691e2)
25
+ + git manpage: note git-security@googlegroups.com
26
27
- "git commit" used to run "gc --auto" near the end, which was lost
28
- when the command was reimplemented in C by mistake.
27
+ Doc update.
28
29
31
-* ab/pre-auto-gc-battery (2018-02-28) 1 commit
32
- (merged to 'next' on 2018-03-06 at ca9cb273cb)
33
- + hooks/pre-auto-gc-battery: allow gc to run on non-laptops
30
+* ab/perl-fixes (2018-03-05) 13 commits
31
+ (merged to 'next' on 2018-03-09 at 262d84c1ba)
32
+ + perl Git::LoadCPAN: emit better errors under NO_PERL_CPAN_FALLBACKS
33
+ + Makefile: add NO_PERL_CPAN_FALLBACKS knob
34
+ + perl: move the perl/Git/FromCPAN tree to perl/FromCPAN
35
+ + perl: generalize the Git::LoadCPAN facility
36
+ + perl: move CPAN loader wrappers to another namespace
37
+ + perl: update our copy of Mail::Address
38
+ + perl: update our ancient copy of Error.pm
39
+ + git-send-email: unconditionally use Net::{SMTP,Domain}
40
+ + Git.pm: hard-depend on the File::{Temp,Spec} modules
41
+ + gitweb: hard-depend on the Digest::MD5 5.8 module
42
+ + Git.pm: add the "use warnings" pragma
43
+ + Git.pm: remove redundant "use strict" from sub-package
44
+ + perl: *.pm files should not have the executable bit
45
+
46
+ Clean-up to various pieces of Perl code we have.
47
+
48
+
49
+* cl/send-email-reply-to (2018-03-06) 2 commits
50
+ (merged to 'next' on 2018-03-09 at 3d3c3ab441)
51
+ + send-email: support separate Reply-To address
52
+ + send-email: rename variable for clarity
53
+ (this branch uses np/send-email-header-parsing.)
54
+
55
+ "git send-email" learned "--reply-to=<address>" option.
56
35
- A sample auto-gc hook (in contrib/) to skip auto-gc while on
36
- battery has been updated to almost always allow running auto-gc
37
- unless on_ac_power command is absolutely sure that we are on
38
- battery power (earlier, it skipped unless the command is sure that
39
- we are on ac power).
57
58
+* np/send-email-header-parsing (2017-12-15) 1 commit
59
+ (merged to 'next' on 2018-03-09 at 91ef7216f7)
60
+ + send-email: extract email-parsing code into a subroutine
61
+ (this branch is used by cl/send-email-reply-to.)
62
42
-* ag/userdiff-go-funcname (2018-03-01) 1 commit
43
- (merged to 'next' on 2018-03-02 at ea404d1be9)
44
- + userdiff: add built-in pattern for golang
63
+ Code refactoring.
64
46
- "git diff" and friends learned funcname patterns for Go language
47
- source files.
65
66
+* sg/cvs-tests-with-x (2018-03-08) 2 commits
67
+ (merged to 'next' on 2018-03-09 at 6ec749c7b7)
68
+ + t9402-git-cvsserver-refs: don't check the stderr of a subshell
69
+ + t9400-git-cvsserver-server: don't rely on the output of 'test_cmp'
70
50
-* bp/untracked-cache-noflush (2018-02-28) 2 commits
51
- (merged to 'next' on 2018-03-02 at 709887971b)
52
- + untracked cache: use git_env_bool() not getenv() for customization
53
- + dir.c: don't flag the index as dirty for changes to the untracked cache
71
+ Allow running a couple of tests with "sh -x".
72
55
- Writing out the index file when the only thing that changed in it
56
- is the untracked cache information is often wasteful, and this has
57
- been optimized out.
73
74
+* tl/userdiff-csharp-async (2018-03-08) 1 commit
75
+ (merged to 'next' on 2018-03-09 at 6dcf76e118)
76
+ + userdiff.c: add C# async keyword in diff pattern
77
60
-* ds/find-unique-abbrev-optim (2018-02-27) 1 commit
61
- (merged to 'next' on 2018-03-02 at 0b6d4f9335)
62
- + sha1_name: fix uninitialized memory errors
78
+ Update funcname pattern used for C# to recognize "async" keyword.
79
64
- While finding unique object name abbreviation, the code may
65
- accidentally have read beyond the end of the array of object names
66
- in a pack.
80
+--------------------------------------------------
81
+[New Topics]
82
83
+* bp/refresh-cache-ent-rehash-fix (2018-03-15) 1 commit
84
+ (merged to 'next' on 2018-03-15 at bac8745f08)
85
+ + Fix bugs preventing adding updated cache entries to the name hash
86
69
-* ds/mark-parents-uninteresting-optim (2018-02-27) 1 commit
70
- (merged to 'next' on 2018-03-02 at 5a42c79806)
71
- + revision.c: reduce object database queries
87
+ The codepath to replace an existing entry in the index had a bug in
88
+ updating the name hash structure, which has been fixed.
89
73
- Micro optimization in revision traversal code.
90
+ Will merge to 'master'.
91
92
76
-* jc/test-must-be-empty (2018-02-27) 1 commit
77
- (merged to 'next' on 2018-03-02 at ec129f1b97)
78
- + test_must_be_empty: make sure the file exists, not just empty
93
+* jt/transfer-fsck-with-promissor (2018-03-15) 2 commits
94
+ (merged to 'next' on 2018-03-15 at 6d1ccc965b)
95
+ + fetch-pack: do not check links for partial fetch
96
+ + index-pack: support checking objects but not links
97
80
- Test framework tweak to catch developer thinko.
98
+ The transfer.fsckobjects configuration tells "git fetch" to
99
+ validate the data and connected-ness of objects in the received
100
+ pack; the code to perform this check has been taught about the
101
+ narrow clone's convention that missing objects that are reachable
102
+ from objects in a pack that came from a promissor remote is OK.
103
104
+ Will merge to 'master'.
105
83
-* jh/status-no-ahead-behind (2018-01-24) 4 commits
84
- (merged to 'next' on 2018-03-02 at 68bde8d571)
85
- + status: support --no-ahead-behind in long format
86
- + status: update short status to respect --no-ahead-behind
87
- + status: add --[no-]ahead-behind to status and commit for V2 format.
88
- + stat_tracking_info: return +1 when branches not equal
106
90
- "git status" can spend a lot of cycles to compute the relation
91
- between the current branch and its upstream, which can now be
92
- disabled with "--no-ahead-behind" option.
107
+* ml/filter-branch-no-op-error (2018-03-15) 1 commit
108
+ (merged to 'next' on 2018-03-15 at ba8ac48dec)
109
+ + filter-branch: return 2 when nothing to rewrite
110
111
+ "git filter-branch" learned to use a different exit code to allow
112
+ the callers to tell the case where there was no new commits to
113
+ rewrite from other error cases.
114
95
-* jk/add-i-diff-filter (2018-03-05) 2 commits
96
- (merged to 'next' on 2018-03-08 at 6ef737add3)
97
- + add--interactive: detect bogus diffFilter output
98
- + t3701: add a test for interactive.diffFilter
99
-
100
- The "interactive.diffFilter" used by "git add -i" must retain
101
- one-to-one correspondence between its input and output, but it was
102
- not enforced and caused end-user confusion. We now at least make
103
- sure the filtered result has the same number of lines as its input
104
- to detect a broken filter.
105
-
106
-
107
-* jk/smart-http-protocol-doc-fix (2018-03-05) 1 commit
108
- (merged to 'next' on 2018-03-08 at 599b1a7c42)
109
- + smart-http: document flush after "# service" line
110
-
111
- A doc update.
112
-
113
-
114
-* ma/roll-back-lockfiles (2018-02-28) 5 commits
115
- (merged to 'next' on 2018-03-06 at be29bf891c)
116
- + sequencer: do not roll back lockfile unnecessarily
117
- + merge: always roll back lock in `checkout_fast_forward()`
118
- + merge-recursive: always roll back lock in `merge_recursive_generic()`
119
- + sequencer: always roll back lock in `do_recursive_merge()`
120
- + sequencer: make lockfiles non-static
121
- (this branch is used by ma/skip-writing-unchanged-index.)
122
-
123
- Some codepaths used to take a lockfile and did not roll it back;
124
- they are automatically rolled back at program exit, so there is no
125
- real "breakage", but it still is a good practice to roll back when
126
- you are done with a lockfile.
127
-
128
-
129
-* mk/doc-pretty-fill (2018-02-27) 1 commit
130
- (merged to 'next' on 2018-03-02 at 623461b127)
131
- + docs/pretty-formats: fix typo '% <(<N>)' -> '%<|(<N>)'
132
-
133
- Docfix.
134
-
135
-
136
-* nd/diff-stat-with-summary (2018-02-27) 2 commits
137
- (merged to 'next' on 2018-03-06 at d543f92f5e)
138
- + diff: add --compact-summary
139
- + diff.c: refactor pprint_rename() to use strbuf
140
-
141
- "git diff" and friends learned "--compact-summary" that shows the
142
- information usually given with the "--summary" option on the same
143
- line as the diffstat output of the "--stat" option (which saves
144
- vertical space and keeps info on a single path at the same place).
145
-
146
-
147
-* nd/object-allocation-comments (2018-03-06) 2 commits
148
- (merged to 'next' on 2018-03-08 at 91d553a339)
149
- + object.h: realign object flag allocation comment
150
- + object.h: update flag allocation comment
151
-
152
- Code doc update.
153
-
154
-
155
-* nd/parseopt-completion (2018-03-07) 45 commits
156
- (merged to 'next' on 2018-03-08 at 2461b7035d)
157
- + completion: more subcommands in _git_notes()
158
- + completion: complete --{reuse,reedit}-message= for all notes subcmds
159
- + completion: simplify _git_notes
160
- + completion: don't set PARSE_OPT_NOCOMPLETE on --rerere-autoupdate
161
- (merged to 'next' on 2018-03-02 at d72a6525fd)
162
- + completion: use __gitcomp_builtin in _git_worktree
163
- + completion: use __gitcomp_builtin in _git_tag
164
- + completion: use __gitcomp_builtin in _git_status
165
- + completion: use __gitcomp_builtin in _git_show_branch
166
- + completion: use __gitcomp_builtin in _git_rm
167
- + completion: use __gitcomp_builtin in _git_revert
168
- + completion: use __gitcomp_builtin in _git_reset
169
- + completion: use __gitcomp_builtin in _git_replace
170
- + remote: force completing --mirror= instead of --mirror
171
- + completion: use __gitcomp_builtin in _git_remote
172
- + completion: use __gitcomp_builtin in _git_push
173
- + completion: use __gitcomp_builtin in _git_pull
174
- + completion: use __gitcomp_builtin in _git_notes
175
- + completion: use __gitcomp_builtin in _git_name_rev
176
- + completion: use __gitcomp_builtin in _git_mv
177
- + completion: use __gitcomp_builtin in _git_merge_base
178
- + completion: use __gitcomp_builtin in _git_merge
179
- + completion: use __gitcomp_builtin in _git_ls_remote
180
- + completion: use __gitcomp_builtin in _git_ls_files
181
- + completion: use __gitcomp_builtin in _git_init
182
- + completion: use __gitcomp_builtin in _git_help
183
- + completion: use __gitcomp_builtin in _git_grep
184
- + completion: use __gitcomp_builtin in _git_gc
185
- + completion: use __gitcomp_builtin in _git_fsck
186
- + completion: use __gitcomp_builtin in _git_fetch
187
- + completion: use __gitcomp_builtin in _git_difftool
188
- + completion: use __gitcomp_builtin in _git_describe
189
- + completion: use __gitcomp_builtin in _git_config
190
- + completion: use __gitcomp_builtin in _git_commit
191
- + completion: use __gitcomp_builtin in _git_clone
192
- + completion: use __gitcomp_builtin in _git_clean
193
- + completion: use __gitcomp_builtin in _git_cherry_pick
194
- + completion: use __gitcomp_builtin in _git_checkout
195
- + completion: use __gitcomp_builtin in _git_branch
196
- + completion: use __gitcomp_builtin in _git_apply
197
- + completion: use __gitcomp_builtin in _git_am
198
- + completion: use __gitcomp_builtin in _git_add
199
- + git-completion.bash: introduce __gitcomp_builtin
200
- + parse-options: let OPT__FORCE take optional flags argument
201
- + parse-options: add OPT_xxx_F() variants
202
- + parse-options: support --git-completion-helper
203
-
204
- The parse-options API has been taught an option to help the
205
- completion script; the command line completion has been updated to
206
- take advantage of this mechanism.
207
-
208
-
209
-* nd/worktree-move (2018-03-06) 8 commits
210
- (merged to 'next' on 2018-03-06 at a26271e7de)
211
- + t2028: fix minor error and issues in newly-added "worktree move" tests
212
- (merged to 'next' on 2018-03-02 at 5c514dfc92)
213
- + worktree remove: allow it when $GIT_WORK_TREE is already gone
214
- + worktree remove: new command
215
- + worktree move: refuse to move worktrees with submodules
216
- + worktree move: accept destination as directory
217
- + worktree move: new command
218
- + worktree.c: add update_worktree_location()
219
- + worktree.c: add validate_worktree()
220
-
221
- "git worktree" learned move and remove subcommands.
222
-
223
-
224
-* ot/ref-filter-cleanup (2018-02-21) 2 commits
225
- (merged to 'next' on 2018-03-02 at 3b4c39a4b5)
226
- + ref-filter: get rid of goto
227
- + ref-filter: get rid of duplicate code
228
-
229
- Code cleanup.
230
-
231
-
232
-* pw/add-p-recount (2018-03-05) 9 commits
233
- (merged to 'next' on 2018-03-06 at 68952f9bb0)
234
- + add -p: don't rely on apply's '--recount' option
235
- + add -p: fix counting when splitting and coalescing
236
- + add -p: calculate offset delta for edited patches
237
- + add -p: adjust offsets of subsequent hunks when one is skipped
238
- + t3701: add failing test for pathological context lines
239
- + t3701: don't hard code sha1 hash values
240
- + t3701: use test_write_lines and write_script
241
- + t3701: indent here documents
242
- + add -i: add function to format hunk header
243
- (this branch is used by pw/add-p-select.)
244
-
245
- "git add -p" has been lazy in coalescing split patches before
246
- passing the result to underlying "git apply", leading to corner
247
- case bugs; the logic to prepare the patch to be applied after hunk
248
- selections has been tightened.
249
-
250
-
251
-* rj/test-i18ngrep (2018-02-28) 2 commits
252
- (merged to 'next' on 2018-03-06 at 7ea1a2352c)
253
- + t5536: simplify checking of messages output to stderr
254
- + t4151: consolidate multiple calls to test_i18ngrep
255
-
256
- Test updates.
257
-
258
-
259
-* rs/perf-repeat-thrice-by-default (2018-02-27) 1 commit
260
- (merged to 'next' on 2018-03-02 at 4898b3c450)
261
- + perf: use GIT_PERF_REPEAT_COUNT=3 by default even without config file
262
-
263
- Perf test regression fix.
264
-
265
-
266
-* rv/grep-cleanup (2018-02-23) 2 commits
267
- (merged to 'next' on 2018-03-02 at 4aafca15f9)
268
- + grep: simplify grep_oid and grep_file
269
- + grep: move grep_source_init outside critical section
270
-
271
- Threaded "git grep" has been optimized to avoid allocation in code
272
- section that is covered under a mutex.
273
-
274
-
275
-* sg/subtree-signed-commits (2018-02-23) 1 commit
276
- (merged to 'next' on 2018-03-02 at c5f6fd33e6)
277
- + subtree: fix add and pull for GPG-signed commits
278
-
279
- "git subtree" script (in contrib/) scripted around "git log", whose
280
- output got affected by end-user configuration like log.showsignature
281
-
282
-
283
-* sg/test-x (2018-02-28) 11 commits
284
- (merged to 'next' on 2018-03-06 at ab0684b27c)
285
- + travis-ci: run tests with '-x' tracing
286
- + t/README: add a note about don't saving stderr of compound commands
287
- + t1510-repo-setup: mark as untraceable with '-x'
288
- + t9903-bash-prompt: don't check the stderr of __git_ps1()
289
- + t5570-git-daemon: don't check the stderr of a subshell
290
- + t5526: use $TRASH_DIRECTORY to specify the path of GIT_TRACE log file
291
- + t5500-fetch-pack: don't check the stderr of a subshell
292
- + t3030-merge-recursive: don't check the stderr of a subshell
293
- + t1507-rev-parse-upstream: don't check the stderr of a shell function
294
- + t: add means to disable '-x' tracing for individual test scripts
295
- + t: prevent '-x' tracing from interfering with test helpers' stderr
115
+ Will cook in 'next'.
116
297
- Running test scripts under -x option of the shell is often not a
298
- useful way to debug them, because the error messages from the
299
- commands tests try to capture and inspect are contaminated by the
300
- tracing output by the shell. An earlier work done to make it more
301
- pleasant to run tests under -x with recent versions of bash is
302
- extended to cover posix shells that do not support BASH_XTRACEFD.
117
118
+* ab/install-symlinks (2018-03-15) 3 commits
119
+ (merged to 'next' on 2018-03-15 at 99d6bd6cb3)
120
+ + Makefile: optionally symlink libexec/git-core binaries to bin/git
121
+ + Makefile: add a gitexecdir_relative variable
122
+ + Makefile: fix broken bindir_relative variable
123
305
-* sg/travis-build-during-script-phase (2018-01-08) 1 commit
306
- (merged to 'next' on 2018-03-02 at 29e1585ae7)
307
- + travis-ci: build Git during the 'script' phase
124
+ The build procedure learned to optionally use symbolic links
125
+ (instead of hardlinks and copies) to install "git-foo" for built-in
126
+ commands, whose binaries are all identical.
127
309
- Build the executable in 'script' phase in Travis CI integration, to
310
- follow the established practice, rather than during 'before_script'
311
- phase. This allows the CI categorize the failures better ('failed'
312
- is project's fault, 'errored' is build environment's).
128
+ Will cook in 'next'.
129
314
---------------------------------------------------
315
-[New Topics]
130
317
-* ab/man-sec-list (2018-03-08) 1 commit
318
- (merged to 'next' on 2018-03-09 at 9626b691e2)
319
- + git manpage: note git-security@googlegroups.com
131
+* ks/t3200-typofix (2018-03-15) 1 commit
132
+ (merged to 'next' on 2018-03-15 at 8b8d397787)
133
+ + t/t3200: fix a typo in a test description
134
321
- Doc update.
135
+ Test typofix.
136
137
Will merge to 'master'.
138
139
326
-* sg/cvs-tests-with-x (2018-03-08) 2 commits
327
- (merged to 'next' on 2018-03-09 at 6ec749c7b7)
328
- + t9402-git-cvsserver-refs: don't check the stderr of a subshell
329
- + t9400-git-cvsserver-server: don't rely on the output of 'test_cmp'
140
+* rj/http-code-cleanup (2018-03-15) 1 commit
141
+ (merged to 'next' on 2018-03-15 at 0dfd462ff8)
142
+ + http: fix an unused variable warning for 'curl_no_proxy'
143
331
- Allow running a couple of tests with "sh -x".
144
+ There was an unused file-scope static variable left in http.c when
145
+ building for versions of libCURL that is older than 7.19.4, which
146
+ has been fixed.
147
148
Will merge to 'master'.
149
+ This will become unnecessary, when we follow-through the
150
+ jk/drop-ancient-curl topic.
151
152
336
-* tl/userdiff-csharp-async (2018-03-08) 1 commit
337
- (merged to 'next' on 2018-03-09 at 6dcf76e118)
338
- + userdiff.c: add C# async keyword in diff pattern
153
+* tg/stash-untracked-with-pathspec-fix (2018-03-20) 3 commits
154
+ - stash push -u: don't create empty stash
155
+ - stash push: avoid printing errors
156
+ - stash: fix nonsense pipeline
157
+
158
+ "git stash push -u -- <pathspec>" gave an unnecessary and confusing
159
+ error message when there was no tracked files that match the
160
+ <pathspec>, which has been fixed.
161
+
162
+ Will merge to 'next'.
163
340
- Update funcname pattern used for C# to recognize "async" keyword.
164
+
165
+* dp/merge-strategy-doc-fix (2018-03-19) 1 commit
166
+ (merged to 'next' on 2018-03-20 at 317e077588)
167
+ + Documentation/merge-strategies: typofix
168
+
169
+ Doc fix.
170
171
Will merge to 'master'.
172
173
345
-* ti/fetch-everything-local-optim (2018-03-14) 1 commit
346
- - fetch-pack.c: use oidset to check existence of loose object
174
+* js/ming-strftime (2018-03-19) 1 commit
175
+ (merged to 'next' on 2018-03-20 at a9ca8172c7)
176
+ + mingw: abort on invalid strftime formats
177
348
- A "git fetch" from a repository with insane number of refs into a
349
- repository that is already up-to-date still wasted too many cycles
350
- making many lstat(2) calls to see if these objects at the tips
351
- exist as loose objects locally. These lstat(2) calls are optimized
352
- away by enumerating all loose objects beforehand.
178
+ Will merge to 'master'.
179
354
- It is unknown if the new strategy negatively affects existing use
355
- cases, fetching into a repository with many loose objects from a
356
- repository with small number of refs.
180
358
- Will merge to 'next'.
181
+* ml/filter-branch-portability-fix (2018-03-19) 1 commit
182
+ (merged to 'next' on 2018-03-20 at c7c17cfc8b)
183
+ + filter-branch: use printf instead of echo -e
184
185
+ Shell script portability fix.
186
361
-* ab/nuke-emacs-contrib (2018-03-13) 1 commit
362
- - git{,-blame}.el: remove old bitrotting Emacs code
187
+ Will merge to 'master'.
188
364
- The scripts in contrib/emacs/ have outlived their usefulness and
365
- have been removed.
189
367
- Will merge to 'next'.
190
+* rj/warning-uninitialized-fix (2018-03-20) 2 commits
191
+ (merged to 'next' on 2018-03-20 at 9ac9d02b0b)
192
+ + read-cache: fix an -Wmaybe-uninitialized warning
193
+ + -Wuninitialized: remove some 'init-self' workarounds
194
195
+ Compilation fix.
196
370
-* bc/object-id (2018-03-14) 36 commits
371
- - convert: convert to struct object_id
372
- - sha1_file: introduce a constant for max header length
373
- - Convert lookup_replace_object to struct object_id
374
- - sha1_file: convert read_sha1_file to struct object_id
375
- - sha1_file: convert read_object_with_reference to object_id
376
- - tree-walk: convert tree entry functions to object_id
377
- - streaming: convert istream internals to struct object_id
378
- - tree-walk: convert get_tree_entry_follow_symlinks internals to object_id
379
- - builtin/notes: convert static functions to object_id
380
- - builtin/fmt-merge-msg: convert remaining code to object_id
381
- - sha1_file: convert sha1_object_info* to object_id
382
- - Convert remaining callers of sha1_object_info_extended to object_id
383
- - packfile: convert unpack_entry to struct object_id
384
- - sha1_file: convert retry_bad_packed_offset to struct object_id
385
- - sha1_file: convert assert_sha1_type to object_id
386
- - builtin/mktree: convert to struct object_id
387
- - streaming: convert open_istream to use struct object_id
388
- - sha1_file: convert check_sha1_signature to struct object_id
389
- - sha1_file: convert read_loose_object to use struct object_id
390
- - builtin/index-pack: convert struct ref_delta_entry to object_id
391
- - archive: convert sha1_file_to_archive to struct object_id
392
- - archive: convert write_archive_entry_fn_t to object_id
393
- - builtin/mktag: convert to struct object_id
394
- - replace_object: convert struct replace_object to object_id
395
- - send-pack: convert remaining functions to struct object_id
396
- - http-walker: convert struct object_request to use struct object_id
397
- - Convert find_unique_abbrev* to struct object_id
398
- - wt-status: convert struct wt_status_state to object_id
399
- - strbuf: convert strbuf_add_unique_abbrev to use struct object_id
400
- - ref-filter: convert grab_objectname to struct object_id
401
- - tree: convert read_tree_recursive to struct object_id
402
- - resolve-undo: convert struct resolve_undo_info to object_id
403
- - cache-tree: convert remnants to struct object_id
404
- - cache-tree: convert write_*_as_tree to object_id
405
- - builtin/write-tree: convert to struct object_id
406
- - bulk-checkin: convert index_bulk_checkin to struct object_id
197
+ Will merge to 'master'.
198
408
- Conversion from uchar[20] to struct object_id continues.
199
410
- Will merge to 'next'.
200
+* tz/complete-tag-delete-tagname (2018-03-19) 1 commit
201
+ (merged to 'next' on 2018-03-20 at d63d45ff16)
202
+ + completion: complete tags with git tag --delete/--verify
203
204
+ Will merge to 'master'.
205
413
-* jh/fsck-promisors (2018-03-13) 1 commit
414
- - sha1_file: restore OBJECT_INFO_QUICK functionality
206
416
- A hotfix to a topic that graduated recently.
207
+* tz/relnotes-1.7-on-perl (2018-03-16) 1 commit
208
+ (merged to 'next' on 2018-03-20 at ed4b26e581)
209
+ + RelNotes: add details on Perl module changes
210
418
- Will merge to 'next'.
211
+ Will merge to 'master'.
212
213
421
-* ma/shortlog-revparse (2018-03-13) 3 commits
422
- - shortlog: do not accept revisions when run outside repo
423
- - shortlog: add usage-string for stdin-reading
424
- - git-shortlog.txt: reorder usages
214
+* jk/attributes-path-doc (2018-03-20) 1 commit
215
+ (merged to 'next' on 2018-03-20 at e965f0c68c)
216
+ + doc/gitattributes: mention non-recursive behavior
217
426
- "git shortlog cruft" aborted with a BUG message when run outside a
427
- Git repository. The command has been taught to complain about
428
- extra and unwanted arguments on its command line instead in such a
429
- case.
218
+ Doc update.
219
431
- Expecting a reroll.
432
- cf. <CAN0heSoDSf+3VmRowHmiTPDDzfdvUjQi+tjpPF6RW172ZE5BWw@mail.gmail.com>
220
+ Will merge to 'master'.
221
222
435
-* ab/pcre-v2 (2018-03-14) 3 commits
436
- - Makefile: make USE_LIBPCRE=YesPlease mean v2, not v1
437
- - configure: detect redundant --with-libpcre & --with-libpcre1
438
- - configure: fix a regression in PCRE v1 detection
223
+* pw/rebase-keep-empty-fixes (2018-03-20) 4 commits
224
+ - SQUASH???
225
+ - rebase: respect --no-keep-empty
226
+ - rebase -i --keep-empty: don't prune empty commits
227
+ - rebase --root: stop assuming squash_onto is unset
228
+ (this branch is used by pw/rebase-signoff.)
229
440
- Git can be built to use either v1 or v2 of the PCRE library, and so
441
- far, the build-time configuration USE_LIBPCRE=YesPlease instructed
442
- the build procedure to use v1, but now it means v2. USE_LIBPCRE1
443
- and USE_LIBPCRE2 can be used to explicitly choose which version to
444
- use, as before.
230
+ "git rebase --keep-empty" still removed an empty commit if the
231
+ other side contained an empty commit (due to the "does an
232
+ equivalent patch exist already?" check), which has been corrected.
233
446
- Will merge to 'next'.
234
+
235
+* pw/rebase-signoff (2018-03-20) 4 commits
236
+ - rebase --keep-empty: always use interactive rebase
237
+ - rebase -p: error out if --signoff is given
238
+ - rebase: extend --signoff support
239
+ - Merge branch 'pw/rebase-keep-empty-fixes' into pw/rebase-signoff
240
+ (this branch uses pw/rebase-keep-empty-fixes.)
241
+
242
+ "git rebase" has learned to honor "--signoff" option when using
243
+ backends other than "am" (but not "--preserve-merges").
244
245
--------------------------------------------------
246
[Stalled]
@@ -487,20 +284,6 @@ of the repositories listed at
284
cf. <0102015f5e5ee171-f30f4868-886f-47a1-a4e4-b4936afc545d-000000@eu-west-1.amazonses.com>
285
286
490
-* dj/runtime-prefix (2017-12-05) 4 commits
491
- . exec_cmd: RUNTIME_PREFIX on some POSIX systems
492
- . Makefile: add Perl runtime prefix support
493
- . Makefile: add support for "perllibdir"
494
- . Makefile: generate Perl header from template file
495
-
496
- A build-time option has been added to allow Git to be told to refer
497
- to its associated files relative to the main binary, in the same
498
- way that has been possible on Windows for quite some time, for
499
- Linux, BSDs and Darwin.
500
-
501
- Perhaps it is about time to reboot the effort?
502
-
503
-
287
* mk/http-backend-content-length (2017-11-27) 4 commits
288
- SQUASH???
289
- t5560-http-backend-noserver.sh: add CONTENT_LENGTH cases
@@ -545,6 +328,126 @@ of the repositories listed at
328
--------------------------------------------------
329
[Cooking]
330
331
+* dj/runtime-prefix (2018-03-19) 3 commits
332
+ - exec_cmd: RUNTIME_PREFIX on some POSIX systems
333
+ - Makefile: add Perl runtime prefix support
334
+ - Makefile: generate Perl header from template file
335
+
336
+ A build-time option has been added to allow Git to be told to refer
337
+ to its associated files relative to the main binary, in the same
338
+ way that has been possible on Windows for quite some time, for
339
+ Linux, BSDs and Darwin.
340
+
341
+
342
+* ti/fetch-everything-local-optim (2018-03-14) 1 commit
343
+ (merged to 'next' on 2018-03-15 at 2be87aa7a7)
344
+ + fetch-pack.c: use oidset to check existence of loose object
345
+
346
+ A "git fetch" from a repository with insane number of refs into a
347
+ repository that is already up-to-date still wasted too many cycles
348
+ making many lstat(2) calls to see if these objects at the tips
349
+ exist as loose objects locally. These lstat(2) calls are optimized
350
+ away by enumerating all loose objects beforehand.
351
+
352
+ It is unknown if the new strategy negatively affects existing use
353
+ cases, fetching into a repository with many loose objects from a
354
+ repository with small number of refs.
355
+
356
+ Will cook in 'next'.
357
+
358
+
359
+* ab/nuke-emacs-contrib (2018-03-13) 1 commit
360
+ (merged to 'next' on 2018-03-15 at 13eb4e2d8b)
361
+ + git{,-blame}.el: remove old bitrotting Emacs code
362
+
363
+ The scripts in contrib/emacs/ have outlived their usefulness and
364
+ have been removed.
365
+
366
+ Will cook in 'next'.
367
+
368
+
369
+* bc/object-id (2018-03-14) 36 commits
370
+ (merged to 'next' on 2018-03-20 at f1800a33ff)
371
+ + convert: convert to struct object_id
372
+ + sha1_file: introduce a constant for max header length
373
+ + Convert lookup_replace_object to struct object_id
374
+ + sha1_file: convert read_sha1_file to struct object_id
375
+ + sha1_file: convert read_object_with_reference to object_id
376
+ + tree-walk: convert tree entry functions to object_id
377
+ + streaming: convert istream internals to struct object_id
378
+ + tree-walk: convert get_tree_entry_follow_symlinks internals to object_id
379
+ + builtin/notes: convert static functions to object_id
380
+ + builtin/fmt-merge-msg: convert remaining code to object_id
381
+ + sha1_file: convert sha1_object_info* to object_id
382
+ + Convert remaining callers of sha1_object_info_extended to object_id
383
+ + packfile: convert unpack_entry to struct object_id
384
+ + sha1_file: convert retry_bad_packed_offset to struct object_id
385
+ + sha1_file: convert assert_sha1_type to object_id
386
+ + builtin/mktree: convert to struct object_id
387
+ + streaming: convert open_istream to use struct object_id
388
+ + sha1_file: convert check_sha1_signature to struct object_id
389
+ + sha1_file: convert read_loose_object to use struct object_id
390
+ + builtin/index-pack: convert struct ref_delta_entry to object_id
391
+ + archive: convert sha1_file_to_archive to struct object_id
392
+ + archive: convert write_archive_entry_fn_t to object_id
393
+ + builtin/mktag: convert to struct object_id
394
+ + replace_object: convert struct replace_object to object_id
395
+ + send-pack: convert remaining functions to struct object_id
396
+ + http-walker: convert struct object_request to use struct object_id
397
+ + Convert find_unique_abbrev* to struct object_id
398
+ + wt-status: convert struct wt_status_state to object_id
399
+ + strbuf: convert strbuf_add_unique_abbrev to use struct object_id
400
+ + ref-filter: convert grab_objectname to struct object_id
401
+ + tree: convert read_tree_recursive to struct object_id
402
+ + resolve-undo: convert struct resolve_undo_info to object_id
403
+ + cache-tree: convert remnants to struct object_id
404
+ + cache-tree: convert write_*_as_tree to object_id
405
+ + builtin/write-tree: convert to struct object_id
406
+ + bulk-checkin: convert index_bulk_checkin to struct object_id
407
+
408
+ Conversion from uchar[20] to struct object_id continues.
409
+
410
+ Will cook in 'next'.
411
+
412
+
413
+* jh/fsck-promisors (2018-03-13) 1 commit
414
+ (merged to 'next' on 2018-03-15 at 0c283dbe5e)
415
+ + sha1_file: restore OBJECT_INFO_QUICK functionality
416
+
417
+ A hotfix to a topic that graduated recently.
418
+
419
+ Will merge to 'master'.
420
+
421
+
422
+* ma/shortlog-revparse (2018-03-15) 3 commits
423
+ (merged to 'next' on 2018-03-15 at 2c2de7eb95)
424
+ + shortlog: disallow left-over arguments outside repo
425
+ + shortlog: add usage-string for stdin-reading
426
+ + git-shortlog.txt: reorder usages
427
+
428
+ "git shortlog cruft" aborted with a BUG message when run outside a
429
+ Git repository. The command has been taught to complain about
430
+ extra and unwanted arguments on its command line instead in such a
431
+ case.
432
+
433
+ Will cook in 'next'.
434
+
435
+
436
+* ab/pcre-v2 (2018-03-14) 3 commits
437
+ (merged to 'next' on 2018-03-15 at e77b116903)
438
+ + Makefile: make USE_LIBPCRE=YesPlease mean v2, not v1
439
+ + configure: detect redundant --with-libpcre & --with-libpcre1
440
+ + configure: fix a regression in PCRE v1 detection
441
+
442
+ Git can be built to use either v1 or v2 of the PCRE library, and so
443
+ far, the build-time configuration USE_LIBPCRE=YesPlease instructed
444
+ the build procedure to use v1, but now it means v2. USE_LIBPCRE1
445
+ and USE_LIBPCRE2 can be used to explicitly choose which version to
446
+ use, as before.
447
+
448
+ Will cook in 'next'.
449
+
450
+
451
* bb/git-gui-ssh-key-files (2018-03-02) 2 commits
452
- Merge branch 'bb/ssh-key-files' of git-gui into bb/git-gui-ssh-key-files
453
- git-gui: search for all current SSH key types
@@ -571,23 +474,23 @@ of the repositories listed at
474
the current theme.
475
476
574
-* nd/pack-objects-pack-struct (2018-03-05) 9 commits
575
- - pack-objects: reorder 'hash' to pack struct object_entry
576
- - pack-objects: refer to delta objects by index instead of pointer
577
- - pack-objects: move in_pack out of struct object_entry
578
- - pack-objects: move in_pack_pos out of struct object_entry
579
- - pack-objects: note about in_pack_header_size
580
- - pack-objects: use bitfield for object_entry::depth
581
- - pack-objects: use bitfield for object_entry::dfs_state
582
- - pack-objects: turn type and in_pack_type to bitfields
583
- - pack-objects: document holes in struct object_entry.h
477
+* nd/pack-objects-pack-struct (2018-03-19) 11 commits
478
+ . pack-objects: reorder members to shrink struct object_entry
479
+ . pack-objects: shrink delta_size field in struct object_entry
480
+ . pack-objects: shrink size field in struct object_entry
481
+ . pack-objects: shrink z_delta_size field in struct object_entry
482
+ . pack-objects: refer to delta objects by index instead of pointer
483
+ . pack-objects: move in_pack out of struct object_entry
484
+ . pack-objects: move in_pack_pos out of struct object_entry
485
+ . pack-objects: use bitfield for object_entry::depth
486
+ . pack-objects: use bitfield for object_entry::dfs_state
487
+ . pack-objects: turn type and in_pack_type to bitfields
488
+ . pack-objects: a bit of document about struct object_entry
489
490
"git pack-objects" needs to allocate tons of "struct object_entry"
491
while doing its work, and shrinking its size helps the performance
492
quite a bit.
493
589
- Will merge to 'next'.
590
-
494
495
* nd/repack-keep-pack (2018-03-07) 6 commits
496
- SQUASH???
@@ -603,25 +506,24 @@ of the repositories listed at
506
marked with ".keep" so that it is left untouched while objects in
507
other packs and loose ones are repacked.
508
606
- Expecting a reroll.
607
- cf. <CACsJy8BW_EtxQvgL=YrCXCQY7cEWCQxgfkeH=Gd=X=uVYhPJcw@mail.gmail.com>
608
- Except for final finishing touches, this looked more-or-less ready
609
- for 'next'.
509
+ Reroll exists, but it seems to be still slushy.
510
+ cf. <20180316192745.19557-1-pclouds@gmail.com>
511
512
612
-* nd/worktree-prune (2018-03-06) 3 commits
613
- - worktree prune: improve prune logic when worktree is moved
614
- - worktree: delete dead code
615
- - gc.txt: more details about what gc does
513
+* nd/worktree-prune (2018-03-15) 3 commits
514
+ (merged to 'next' on 2018-03-20 at e2d9677b20)
515
+ + worktree prune: improve prune logic when worktree is moved
516
+ + worktree: delete dead code
517
+ + gc.txt: more details about what gc does
518
519
The way "git worktree prune" worked internally has been simplified,
520
by assuming how "git worktree move" moves an existing worktree to a
521
different place.
522
621
- Will merge to 'next'.
523
+ Will cook in 'next'.
524
525
624
-* pw/add-p-select (2018-03-06) 3 commits
526
+* pw/add-p-select (2018-03-16) 3 commits
527
- add -p: optimize line selection for short hunks
528
- add -p: allow line selection to be inverted
529
- add -p: select individual hunk lines
@@ -630,9 +532,6 @@ of the repositories listed at
532
individual added/removed lines to be used in the operation, instead
533
of accepting or rejecting a whole hunk.
534
633
- Expecting a reroll.
634
- cf. <6476d776-dbf7-09cf-1c65-e413798b9987@talktalk.net>
635
-
535
536
* ld/p4-unshelve (2018-02-22) 1 commit
537
- git-p4: add unshelve command
@@ -643,28 +542,25 @@ of the repositories listed at
542
cf. <CAE5ih7_ooDMqVtTMoQ70s5XCkncr04HY0JkqSp1UmKQeG81oaA@mail.gmail.com>
543
544
646
-* ps/contains-id-error-message (2018-03-06) 1 commit
647
- - parse-options: squelch usage help on certain errors
545
+* ps/contains-id-error-message (2018-03-19) 1 commit
546
+ - Make options that expect object ids less chatty if id is invalid
547
548
"git tag --contains no-such-commit" gave a full list of options
549
after giving an error message.
550
652
- Expecting a reroll.
653
- cf. <CAN0heSrnERYggyJ8bL1nAV=X2JQYS8aOkc6nWZhnZu3oqhzAfA@mail.gmail.com>
654
- Rebooted and fixed the root cause of the issue at a lower level.
655
-
551
552
* nd/remove-ignore-env-field (2018-03-05) 5 commits
658
- - repository: delete ignore_env member
659
- - sha1_file.c: move delayed getenv(altdb) back to setup_git_env()
660
- - repository.c: delete dead functions
661
- - repository.c: move env-related setup code back to environment.c
662
- - repository: initialize the_repository in main()
553
+ (merged to 'next' on 2018-03-15 at 802b6ea1cb)
554
+ + repository: delete ignore_env member
555
+ + sha1_file.c: move delayed getenv(altdb) back to setup_git_env()
556
+ + repository.c: delete dead functions
557
+ + repository.c: move env-related setup code back to environment.c
558
+ + repository: initialize the_repository in main()
559
(this branch is used by sb/object-store and sb/packfiles-in-repository.)
560
561
Code clean-up for the "repository" abstraction.
562
667
- Will merge to 'next'.
563
+ Will cook in 'next'.
564
565
566
* sb/object-store (2018-03-05) 27 commits
@@ -727,32 +623,12 @@ of the repositories listed at
623
624
625
* ma/skip-writing-unchanged-index (2018-03-01) 1 commit
730
- - write_locked_index(): add flag to avoid writing unchanged index
626
+ (merged to 'next' on 2018-03-15 at cdbbc66464)
627
+ + write_locked_index(): add flag to avoid writing unchanged index
628
629
Internal API clean-up to allow write_locked_index() optionally skip
630
writing the in-core index when it is not modified.
631
735
- Will merge to 'next'.
736
-
737
-
738
-* ab/perl-fixes (2018-03-05) 13 commits
739
- (merged to 'next' on 2018-03-09 at 262d84c1ba)
740
- + perl Git::LoadCPAN: emit better errors under NO_PERL_CPAN_FALLBACKS
741
- + Makefile: add NO_PERL_CPAN_FALLBACKS knob
742
- + perl: move the perl/Git/FromCPAN tree to perl/FromCPAN
743
- + perl: generalize the Git::LoadCPAN facility
744
- + perl: move CPAN loader wrappers to another namespace
745
- + perl: update our copy of Mail::Address
746
- + perl: update our ancient copy of Error.pm
747
- + git-send-email: unconditionally use Net::{SMTP,Domain}
748
- + Git.pm: hard-depend on the File::{Temp,Spec} modules
749
- + gitweb: hard-depend on the Digest::MD5 5.8 module
750
- + Git.pm: add the "use warnings" pragma
751
- + Git.pm: remove redundant "use strict" from sub-package
752
- + perl: *.pm files should not have the executable bit
753
-
754
- Clean-up to various pieces of Perl code we have.
755
-
632
Will merge to 'master'.
633
634
@@ -782,16 +658,17 @@ of the repositories listed at
658
659
660
* ma/config-page-only-in-list-mode (2018-02-21) 3 commits
785
- - config: change default of `pager.config` to "on"
786
- - config: respect `pager.config` in list/get-mode only
787
- - t7006: add tests for how git config paginates
661
+ (merged to 'next' on 2018-03-15 at 652430af12)
662
+ + config: change default of `pager.config` to "on"
663
+ + config: respect `pager.config` in list/get-mode only
664
+ + t7006: add tests for how git config paginates
665
666
In a way similar to how "git tag" learned to honor the pager
667
setting only in the list mode, "git config" learned to ignore the
668
pager setting when it is used for setting values (i.e. when the
669
purpose of the operation is not to "show").
670
794
- Will merge to 'next'.
671
+ Will merge to 'master'.
672
673
674
* pc/submodule-helper-foreach (2018-02-02) 5 commits
@@ -805,62 +682,38 @@ of the repositories listed at
682
e.g. cf. <20180206150044.1bffbb573c088d38c8e44bf5@google.com>
683
684
808
-* tg/worktree-add-existing-branch (2018-02-05) 3 commits
685
+* tg/worktree-add-existing-branch (2018-03-19) 4 commits
686
- worktree: teach "add" to check out existing branches
687
+ - worktree: factor out dwim_branch function
688
- worktree: be clearer when "add" dwim-ery kicks in
689
- worktree: improve message when creating a new worktree
690
691
"git worktree add" learned to check out an existing branch.
692
815
- Expecting a reroll.
816
- cf. <CAPig+cRLohiqR_Drh7P0q3XbvC22WLjNwH0YLZo3dqFzZZuAPw@mail.gmail.com>
817
- cf. <CACsJy8BEKYqW+Ne_WY2RBaSbb9OKcjREtrawStj=eJsVsia_Jw@mail.gmail.com>
818
- The general idea is good, just end-user facing messages are found
819
- suboptimal.
820
-
821
-
822
-* np/send-email-header-parsing (2017-12-15) 1 commit
823
- (merged to 'next' on 2018-03-09 at 91ef7216f7)
824
- + send-email: extract email-parsing code into a subroutine
825
- (this branch is used by cl/send-email-reply-to.)
826
-
827
- Code refactoring.
828
-
829
- Will merge to 'master'.
830
-
831
-
832
-* cl/send-email-reply-to (2018-03-06) 2 commits
833
- (merged to 'next' on 2018-03-09 at 3d3c3ab441)
834
- + send-email: support separate Reply-To address
835
- + send-email: rename variable for clarity
836
- (this branch uses np/send-email-header-parsing.)
837
-
838
- "git send-email" learned "--reply-to=<address>" option.
839
-
840
- Will merge to 'master'.
841
-
693
694
* js/rebase-recreate-merge (2018-02-23) 12 commits
844
- - rebase -i: introduce --recreate-merges=[no-]rebase-cousins
845
- - pull: accept --rebase=recreate to recreate the branch topology
846
- - sequencer: handle post-rewrite for merge commands
847
- - sequencer: make refs generated by the `label` command worktree-local
848
- - rebase: introduce the --recreate-merges option
849
- - rebase-helper --make-script: introduce a flag to recreate merges
850
- - sequencer: fast-forward merge commits, if possible
851
- - sequencer: introduce the `merge` command
852
- - sequencer: introduce new commands to reset the revision
853
- - git-rebase--interactive: clarify arguments
854
- - sequencer: make rearrange_squash() a bit more obvious
855
- - sequencer: avoid using errno clobbered by rollback_lock_file()
695
+ (merged to 'next' on 2018-03-15 at 3d1671756f)
696
+ + rebase -i: introduce --recreate-merges=[no-]rebase-cousins
697
+ + pull: accept --rebase=recreate to recreate the branch topology
698
+ + sequencer: handle post-rewrite for merge commands
699
+ + sequencer: make refs generated by the `label` command worktree-local
700
+ + rebase: introduce the --recreate-merges option
701
+ + rebase-helper --make-script: introduce a flag to recreate merges
702
+ + sequencer: fast-forward merge commits, if possible
703
+ + sequencer: introduce the `merge` command
704
+ + sequencer: introduce new commands to reset the revision
705
+ + git-rebase--interactive: clarify arguments
706
+ + sequencer: make rearrange_squash() a bit more obvious
707
+ + sequencer: avoid using errno clobbered by rollback_lock_file()
708
709
"git rebase" learned "--recreate-merges" to transplant the whole
710
topology of commit graph elsewhere.
711
860
- Will merge to 'next'.
712
+ This serise has been reverted out of 'next', expecting that it will
713
+ be replaced by a reroll on top of a couple of topics by Phillip.
714
715
863
-* bw/protocol-v2 (2018-03-14) 35 commits
716
+* bw/protocol-v2 (2018-03-15) 35 commits
717
- remote-curl: don't request v2 when pushing
718
- remote-curl: implement stateless-connect command
719
- http: eliminate "# service" line when using protocol v2
@@ -899,15 +752,19 @@ of the repositories listed at
752
753
The beginning of the next-gen transfer protocol.
754
755
+ Is everybody happy with this version? One design decision with
756
+ larger consequence "to or not to build in?" has been settled in
757
+ favor of status quo, IIRC.
758
903
-* ls/checkout-encoding (2018-03-09) 10 commits
759
+
760
+* ls/checkout-encoding (2018-03-16) 10 commits
761
- convert: add round trip check based on 'core.checkRoundtripEncoding'
762
- convert: add tracing for 'working-tree-encoding' attribute
906
- - convert: advise canonical UTF encoding names
763
- convert: check for detectable errors in UTF encodings
764
- convert: add 'working-tree-encoding' attribute
765
- utf8: add function to detect a missing UTF-16/32 BOM
766
- utf8: add function to detect prohibited UTF-16/32 BOM
767
+ - utf8: teach same_encoding() alternative UTF encoding names
768
- strbuf: add a case insensitive starts_with()
769
- strbuf: add xstrdup_toupper()
770
- strbuf: remove unnecessary NUL assignment in xstrdup_tolower()
@@ -916,10 +773,6 @@ of the repositories listed at
773
contents to the specified encoding when checking out to the working
774
tree (and the other way around when checking in).
775
919
- Expecting a reroll.
920
- cf. <66370A41-A048-44E7-9BF8-4631C50AAE63@gmail.com>
921
- Modulo minor design decision corrections, the series is almost there.
922
-
776
777
* en/rename-directory-detection (2018-02-27) 29 commits
778
(merged to 'next' on 2018-03-06 at d42470f86e)
@@ -961,84 +814,4 @@ of the repositories listed at
814
to be overwritten during merge has also been fixed as part of this
815
work.
816
964
- Will merge to 'master'.
965
-
966
---------------------------------------------------
967
-[Discarded]
968
-
969
-* cc/require-tcl-tk-for-build (2017-11-29) 2 commits
970
- - travis-ci: avoid new tcl/tk build requirement
971
- - Makefile: check that tcl/tk is installed
972
-
973
- A first-time builder of Git may have installed neither tclsh nor
974
- msgfmt, in which case git-gui and gitk part will fail and break the
975
- build. As a workaround, refuse to run a build when tclsh is not
976
- installed and NO_TCLTK is not set.
977
-
978
- Stalled for too long without any response; will discard.
979
- I still feel that requring tclsh to be installed, with or without
980
- "escape hatch" for experts, may be too heavy-handed.
981
-
982
-
983
-* mg/merge-base-fork-point (2017-09-17) 3 commits
984
- - merge-base: find fork-point outside partial reflog
985
- - merge-base: return fork-point outside reflog
986
- - t6010: test actual test output
987
-
988
- "merge-base --fork-point $branch $commit" is used to guess on which
989
- commit among the commits that were once at the tip of the $branch the
990
- $commit was built on top of, and it learns these historical tips from
991
- the reflog of the $branch. When the true fork-point is lost due to
992
- pruning of old reflog entries, the command does not give any output,
993
- because it has no way to guess correctly and does not want to mislead
994
- the user with a wrong guess.
995
-
996
- The command has been updated to give the best but not known to be
997
- correct guess, based on a hope that a merge-base between $commit and a
998
- virtual merge across all the reflog entries that still are available
999
- for $branch may still be a closer to the true fork-point than the
1000
- merge-base between $commit and the current tip of the $branch.
1001
-
1002
- This may have to be offered by an additional option, to allow the
1003
- users that are prepared to see a potentially incorrect guess to opt
1004
- into the feature, without affecting the current callers that may not
1005
- be prepared to accept a guess that is not known to be correct.
1006
-
1007
- Stalled for too long without any response; will discard.
1008
-
1009
-
1010
-* mg/status-in-progress-info (2017-05-10) 2 commits
1011
- - status --short --inprogress: spell it as --in-progress
1012
- - status: show in-progress info for short status
1013
-
1014
- "git status" learns an option to report various operations
1015
- (e.g. "merging") that the user is in the middle of.
1016
-
1017
- Stalled for too long without any response; will discard.
1018
- cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
1019
-
1020
-
1021
-* nd/tilde-expand-opt-file-value (2018-02-14) 2 commits
1022
- - init-db: change --template type to OPTION_FILENAME
1023
- - parse-options: expand $HOME on filename options
1024
-
1025
- "git cmd --opt=~u/path/to/file" did not tilde-expand "~u" part to
1026
- the path to the home directory of user 'u'
1027
-
1028
- This may make the resulting whole more confusing, though.
1029
- cf. <87wozffavp.fsf@evledraar.gmail.com>
1030
-
1031
-
1032
-* dp/git-el-ls-files-excludes (2018-03-05) 1 commit
1033
- . git.el: handle default excludesfile properly
1034
-
1035
- The "git.el" script (in contrib/) has been taught to use
1036
- "--exclude-standard" option when driving "ls-files", instead of
1037
- locating the exclude files on its own. With this change, it now
1038
- honors $XDG_CONFIG_HOME when it is set.
1039
-
1040
- The author of "git.el" recommends that users consider switching to
1041
- "magit", though.
1042
-
1043
- Discarded, as contrib/emacs/ hierarchy is being emptied by the
1044
- ab/nuke-emacs-contrib topic.
817
+ Will cook in 'next'.