What's cooking (2017/06 #02)

Junio C Hamano committed Jun 2, 2017 at 15:34 UTC 6407d12d6eceae48fdca35ac2d9f7a83170dccb5
1 file changed +234 -344
whats-cooking.txt
+234 -344
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jun 2017, #01; Thu, 1)
4 -X-master-at: 0339965c70d68fd3831c9a5306443c869de3f6a8
5 -X-next-at: b5e676d57ee80a379101c2e968b23f2342b77f7a
3 +Subject: What's cooking in git.git (Jun 2017, #02; Fri, 2)
4 +X-master-at: 826c06412e429a091d32d0e1b26e77da33fc1ce9
5 +X-next-at: 4b9c06c7d442bdd2a0056b5372cc385eaee2012e
6
7 -What's cooking in git.git (Jun 2017, #01; Thu, 1)
7 +What's cooking in git.git (Jun 2017, #02; Fri, 2)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -27,171 +27,260 @@ of the repositories listed at
27 --------------------------------------------------
28 [Graduated to "master"]
29
30 -* dk/send-email-avoid-net-smtp-ssl-when-able (2017-05-20) 1 commit
31 - (merged to 'next' on 2017-05-23 at fc59b8a1d4)
32 - + send-email: Net::SMTP::SSL is obsolete, use only when necessary
33 -
34 - "git send-email" now uses Net::SMTP::SSL, which is obsolete, only
35 - when needed. Recent versions of Net::SMTP can do TLS natively.
36 -
37 - This is somewhat broken; a fix will be merged to 'master' shortly.
38 -
39 -
40 -* ab/conditional-config-with-symlinks (2017-05-17) 1 commit
41 - (merged to 'next' on 2017-05-23 at 6162222c2e)
42 - + config: match both symlink & realpath versions in IncludeIf.gitdir:*
43 -
44 - The recently introduced "[includeIf "gitdir:$dir"] path=..."
45 - mechansim has further been taught to take symlinks into account.
46 - The directory "$dir" specified in "gitdir:$dir" may be a symlink to
47 - a real location, not something that $(getcwd) may return. In such
48 - a case, a realpath of "$dir" is compared with the real path of the
49 - current repository to determine if the contents from the named path
50 - should be included.
51 -
52 -
53 -* ab/perf-wildmatch (2017-05-12) 2 commits
54 - (merged to 'next' on 2017-05-23 at 0adb7dac31)
55 - + perf: add test showing exponential growth in path globbing
56 - + perf: add function to setup a fresh test repo
57 -
58 - Add perf-test for wildmatch.
30 +* ab/grep-preparatory-cleanup (2017-05-26) 31 commits
31 + (merged to 'next' on 2017-05-29 at f2cfa89d3e)
32 + + grep: assert that threading is enabled when calling grep_{lock,unlock}
33 + + grep: given --threads with NO_PTHREADS=YesPlease, warn
34 + + pack-objects: fix buggy warning about threads
35 + + pack-objects & index-pack: add test for --threads warning
36 + + test-lib: add a PTHREADS prerequisite
37 + + grep: move is_fixed() earlier to avoid forward declaration
38 + + grep: change internal *pcre* variable & function names to be *pcre1*
39 + + grep: change the internal PCRE macro names to be PCRE1
40 + + grep: factor test for \0 in grep patterns into a function
41 + + grep: remove redundant regflags assignments
42 + + grep: catch a missing enum in switch statement
43 + + perf: add a comparison test of log --grep regex engines with -F
44 + + perf: add a comparison test of log --grep regex engines
45 + + perf: add a comparison test of grep regex engines with -F
46 + + perf: add a comparison test of grep regex engines
47 + + perf: emit progress output when unpacking & building
48 + + perf: add a GIT_PERF_MAKE_COMMAND for when *_MAKE_OPTS won't do
49 + + grep: add tests to fix blind spots with \0 patterns
50 + + grep: prepare for testing binary regexes containing rx metacharacters
51 + + grep: add a test helper function for less verbose -f \0 tests
52 + + grep: add tests for grep pattern types being passed to submodules
53 + + grep: amend submodule recursion test for regex engine testing
54 + + grep: add tests for --threads=N and grep.threads
55 + + grep: change non-ASCII -i test to stop using --debug
56 + + grep: add a test for backreferences in PCRE patterns
57 + + grep: add a test asserting that --perl-regexp dies when !PCRE
58 + + log: make --regexp-ignore-case work with --perl-regexp
59 + + log: add exhaustive tests for pattern style options & config
60 + + test-lib: rename the LIBPCRE prerequisite to PCRE
61 + + grep & rev-list doc: stop promising libpcre for --perl-regexp
62 + + Makefile & configure: reword inaccurate comment about PCRE
63 + (this branch is used by ab/pcre-v2 and sb/submodule-blanket-recursive.)
64 +
65 + The internal implementation of "git grep" has seen some clean-up.
66
67
61 -* bp/sub-process-convert-filter (2017-05-15) 11 commits
62 - (merged to 'next' on 2017-05-23 at 89f5420a82)
63 - + convert: update subprocess_read_status() to not die on EOF
64 - + sub-process: move sub-process functions into separate files
65 - + convert: rename reusable sub-process functions
66 - + convert: update generic functions to only use generic data structures
67 - + convert: separate generic structures and variables from the filter specific ones
68 - + convert: split start_multi_file_filter() into two separate functions
69 - + pkt-line: annotate packet_writel with LAST_ARG_MUST_BE_NULL
70 - + convert: move packet_write_line() into pkt-line as packet_writel()
71 - + pkt-line: add packet_read_line_gently()
72 - + pkt-line: fix packet_read_line() to handle len < 0 errors
73 - + convert: remove erroneous tests for errno == EPIPE
74 -
75 - Code from "conversion using external process" codepath has been
76 - extracted to a separate sub-process.[ch] module.
68 +* ab/ref-filter-no-contains (2017-05-23) 1 commit
69 + (merged to 'next' on 2017-05-29 at 5d39fd2961)
70 + + tag: duplicate mention of --contains should mention --no-contains
71 +
72 + Doc update to a recent topic.
73 +
74
75 +* ah/doc-interpret-trailers-ifexists (2017-05-23) 1 commit
76 + (merged to 'next' on 2017-05-29 at cb353c1d21)
77 + + Documentation: fix reference to ifExists for interpret-trailers
78
79 -* bw/forking-and-threading (2017-05-15) 14 commits
80 - (merged to 'next' on 2017-05-23 at 79a6a59851)
81 - + usage.c: drop set_error_handle()
82 - + run-command: restrict PATH search to executable files
83 - + run-command: expose is_executable function
84 - + run-command: block signals between fork and execve
85 - + run-command: add note about forking and threading
86 - + run-command: handle dup2 and close errors in child
87 - + run-command: eliminate calls to error handling functions in child
88 - + run-command: don't die in child when duping /dev/null
89 - + run-command: prepare child environment before forking
90 - + string-list: add string_list_remove function
91 - + run-command: use the async-signal-safe execv instead of execvp
92 - + run-command: prepare command before forking
93 - + t0061: run_command executes scripts without a #! line
94 - + t5550: use write_script to generate post-update hook
79 + Documentation fix.
80
96 - The "run-command" API implementation has been made more robust
97 - against dead-locking in a threaded environment.
81
82 +* ah/doc-pretty-format-fix (2017-05-23) 1 commit
83 + (merged to 'next' on 2017-05-29 at 6e3e8fd80d)
84 + + Documentation: fix formatting typo in pretty-formats.txt
85
100 -* bw/pathspec-sans-the-index (2017-05-12) 6 commits
101 - (merged to 'next' on 2017-05-23 at 45c8ef3115)
102 - + pathspec: convert find_pathspecs_matching_against_index to take an index
103 - + pathspec: remove PATHSPEC_STRIP_SUBMODULE_SLASH_CHEAP
104 - + ls-files: prevent prune_cache from overeagerly pruning submodules
105 - + pathspec: remove PATHSPEC_STRIP_SUBMODULE_SLASH_EXPENSIVE flag
106 - + submodule: add die_in_unpopulated_submodule function
107 - + pathspec: provide a more descriptive die message
86 + Documentation fix.
87
109 - Simplify parse_pathspec() codepath and stop it from looking at the
110 - default in-core index.
88
89 +* dk/send-email-avoid-net-smtp-ssl-when-able (2017-06-01) 1 commit
90 + (merged to 'next' on 2017-06-01 at 3ff3ddfac7)
91 + + send-email: Net::SMTP::starttls was introduced in v2.34
92
113 -* dt/unpack-save-untracked-cache-extension (2017-05-20) 1 commit
114 - (merged to 'next' on 2017-05-23 at 3196d093d6)
115 - + unpack-trees: preserve index extensions
93 + A hotfix to a topic in 'master'.
94
117 - When "git checkout", "git merge", etc. manipulates the in-core
118 - index, various pieces of information in the index extensions are
119 - discarded from the original state, as it is usually not the case
120 - that they are kept up-to-date and in-sync with the operation on the
121 - main index. The untracked cache extension is copied across these
122 - operations now, which would speed up "git status" (as long as the
123 - cache is properly invalidated).
95
96 +* jk/diff-blob (2017-05-24) 15 commits
97 + (merged to 'next' on 2017-05-29 at 5ecc979cc7)
98 + + diff: use blob path for blob/file diffs
99 + + diff: use pending "path" if it is available
100 + + diff: use the word "path" instead of "name" for blobs
101 + + diff: pass whole pending entry in blobinfo
102 + + handle_revision_arg: record paths for pending objects
103 + + handle_revision_arg: record modes for "a..b" endpoints
104 + + t4063: add tests of direct blob diffs
105 + + get_sha1_with_context: dynamically allocate oc->path
106 + + get_sha1_with_context: always initialize oc->symlink_path
107 + + sha1_name: consistently refer to object_context as "oc"
108 + + handle_revision_arg: add handle_dotdot() helper
109 + + handle_revision_arg: hoist ".." check out of range parsing
110 + + handle_revision_arg: stop using "dotdot" as a generic pointer
111 + + handle_revision_arg: simplify commit reference lookups
112 + + handle_revision_arg: reset "dotdot" consistently
113
126 -* jc/name-rev-lw-tag (2017-03-29) 2 commits
127 - (merged to 'next' on 2017-05-23 at 3f88b6d73c)
128 - + name-rev: favor describing with tags and use committer date to tiebreak
129 - + name-rev: refactor logic to see if a new candidate is a better name
130 - (this branch is used by mg/name-rev-debug.)
114 + The result from "git diff" that compares two blobs, e.g. "git diff
115 + $commit1:$path $commit2:$path", used to be shown with the full
116 + object name as given on the command line, but it is more natural to
117 + use the $path in the output and use it to look up .gitattributes.
118
132 - "git describe --contains" penalized light-weight tags so much that
133 - they were almost never considered. Instead, give them about the
134 - same chance to be considered as an annotated tag that is the same
135 - age as the underlying commit would.
119
120 +* js/bs-is-a-dir-sep-on-windows (2017-05-26) 2 commits
121 + (merged to 'next' on 2017-05-26 at 450b39f726)
122 + + Windows: do not treat a path with backslashes as a remote's nick name
123 + + mingw.h: permit arguments with side effects for is_dir_sep
124
138 -* jc/skip-test-in-the-middle (2017-05-18) 2 commits
139 - (merged to 'next' on 2017-05-23 at 6c962b353b)
140 - + t5545: enhance test coverage when no http server is installed
141 - + test: allow skipping the remainder
125 + "foo\bar\baz" in "git fetch foo\bar\baz", even though there is no
126 + slashes in it, cannot be a nickname for a remote on Windows, as
127 + that is likely to be a pathname on a local filesystem.
128
143 - A recent update to t5545-push-options.sh started skipping all the
144 - tests in the script when a web server testing is disabled or
145 - unavailable, not just the ones that require a web server. Non HTTP
146 - tests have been salvaged to always run in this script.
129
130 +* jt/send-email-validate-hook (2017-06-02) 1 commit
131 + (merged to 'next' on 2017-06-02 at 32055bc433)
132 + + send-email: check for repo before invoking hook
133
149 -* jh/memihash-opt (2017-05-16) 5 commits
150 - (merged to 'next' on 2017-05-23 at 2f0293e8b8)
151 - + p0004: don't error out if test repo is too small
152 - + p0004: don't abort if multi-threaded is too slow
153 - + p0004: use test_perf
154 - + p0004: avoid using pipes
155 - + p0004: simplify calls of test-lazy-init-name-hash
134 + A hotfix for a topic already in 'master'.
135
157 - perf-test update.
136
137 +* rs/mingw-path-lookup-simplify (2017-05-23) 1 commit
138 + (merged to 'next' on 2017-05-29 at 4365139a7f)
139 + + mingw: simplify PATH handling
140
160 -* js/larger-timestamps (2017-05-20) 1 commit
161 - (merged to 'next' on 2017-05-23 at 16f7c9e677)
162 - + name-rev: change a "long" variable to timestamp_t
163 -
164 - A follow-up hotfix for a topic already in 'master'.
141 + Code simplification.
142
143
167 -* jt/fetch-allow-tip-sha1-implicitly (2017-05-16) 1 commit
168 - (merged to 'next' on 2017-05-23 at 690ed987df)
169 - + fetch-pack: always allow fetching of literal SHA1s
144 +* sb/t5531-update-desc (2017-05-23) 1 commit
145 + (merged to 'next' on 2017-05-29 at 67a91db3cf)
146 + + t5531: fix test description
147
171 - There is no good reason why "git fetch $there $sha1" should fail
172 - when the $sha1 names an object at the tip of an advertised ref,
173 - even when the other side hasn't enabled allowTipSHA1InWant.
148 + The description strings for a few tests have been updated.
149
150
176 -* jt/send-email-validate-hook (2017-05-16) 1 commit
177 - (merged to 'next' on 2017-05-23 at 89848cb9ac)
178 - + send-email: support validate hook
151 +* sl/clean-d-ignored-fix (2017-05-24) 6 commits
152 + (merged to 'next' on 2017-05-29 at 837c255ae8)
153 + + clean: teach clean -d to preserve ignored paths
154 + + dir: expose cmp_name() and check_contains()
155 + + dir: hide untracked contents of untracked dirs
156 + + dir: recurse into untracked dirs for ignored files
157 + + t7061: status --ignored should search untracked dirs
158 + + t7300: clean -d should skip dirs with ignored files
159
180 - "git send-email" learned to run sendemail-validate hook to inspect
181 - and reject a message before sending it out.
160 + "git clean -d" used to clean directories that has ignored files,
161 + even though the command should not lose ignored ones without "-x".
162 + "git status --ignored" did not list ignored and untracked files
163 + without "-uall". These have been corrected.
164
165 --------------------------------------------------
166 [New Topics]
167
186 -* dk/send-email-avoid-net-smtp-ssl-when-able (2017-06-01) 1 commit
187 - (merged to 'next' on 2017-06-01 at 3ff3ddfac7)
188 - + send-email: Net::SMTP::starttls was introduced in v2.34
168 +* ad/pull-remote-doc (2017-06-02) 1 commit
169 + (merged to 'next' on 2017-06-02 at 32915e88db)
170 + + docs: fix formatting and grammar
171
190 - A hotfix to a topic in 'master'.
172 + Docfix.
173
174 Will merge to 'master'.
175
176
177 +* jc/diff-tree-stale-comment (2017-06-02) 1 commit
178 + - diff-tree: update stale in-code comments
179 +
180 + Comment fix.
181 +
182 + Will merge to 'next'.
183 +
184 +
185 +* jc/noent-notdir (2017-05-30) 2 commits
186 + - treewide: use is_missing_file_error() where ENOENT and ENOTDIR are checked
187 + - compat-util: is_missing_file_error()
188 +
189 + Our code often opens a path to an optional file, to work on its
190 + contents when we can successfully open it. We can ignore a failure
191 + to open if such an optional file does not exist, but we do want to
192 + report a failure in opening for other reasons (e.g. we got an I/O
193 + error, or the file is there, but we lack the permission to open).
194 +
195 + The exact errors we need to ignore are ENOENT (obviously) and
196 + ENOTDIR (less obvious). Instead of repeating comparison of errno
197 + with these two constants, introduce a helper function to do so.
198 +
199 + Will merge to 'next'.
200 +
201 +
202 +* rf/completion (2017-06-02) 6 commits
203 + - completion: add git config credentialCache.ignoreSIGHUP
204 + - completion: add git config credential completions
205 + - completion: add git config advice completions
206 + - completion: add git config am.threeWay completion
207 + - completion: add git config core completions
208 + - completion: add git config gc completions
209 + (this branch uses rf/completion-config-commit.)
210 +
211 + Completion updates.
212 +
213 + Will merge to 'next'.
214 +
215 +--------------------------------------------------
216 +[Stalled]
217 +
218 +* mg/status-in-progress-info (2017-05-10) 2 commits
219 + - status --short --inprogress: spell it as --in-progress
220 + - status: show in-progress info for short status
221 +
222 + "git status" learns an option to report various operations
223 + (e.g. "merging") that the user is in the middle of.
224 +
225 + cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
226 +
227 +
228 +* mg/name-rev-debug (2017-03-31) 2 commits
229 + - describe: pass --debug down to name-rev
230 + - name-rev: provide debug output
231 +
232 + "git describe --debug --contains" did not add any meaningful
233 + information, even though without "--contains" it did.
234 +
235 + Will discard for now.
236 + cf. <c85bc2a1-56d8-8a02-6089-2b8cb3d39e99@grubix.eu>
237 +
238 +
239 +* nd/worktree-move (2017-04-20) 6 commits
240 + - worktree remove: new command
241 + - worktree move: refuse to move worktrees with submodules
242 + - worktree move: accept destination as directory
243 + - worktree move: new command
244 + - worktree.c: add update_worktree_location()
245 + - worktree.c: add validate_worktree()
246 +
247 + "git worktree" learned move and remove subcommands.
248 +
249 + Expecting a reroll.
250 + cf. <20170420101024.7593-1-pclouds@gmail.com>
251 + cf. <20170421145916.mknekgqzhxffu7di@sigill.intra.peff.net>
252 + cf. <d0e81b1e-5869-299e-f462-4d43dc997bd1@ramsayjones.plus.com>
253 +
254 +
255 +* sk/dash-is-previous (2017-03-01) 5 commits
256 + . revert.c: delegate handling of "-" shorthand to setup_revisions
257 + . sha1_name.c: teach get_sha1_1 "-" shorthand for "@{-1}"
258 + . revision.c: args starting with "-" might be a revision
259 + . revision.c: swap if/else blocks
260 + . revision.c: do not update argv with unknown option
261 +
262 + A dash "-" can be written to mean "the branch that was previously
263 + checked out" in more places.
264 +
265 + Ejected, as it seems that making -.. to mean @{-1}..HEAD etc. are
266 + going too far.
267 +
268 +--------------------------------------------------
269 +[Cooking]
270 +
271 +* ls/filter-process-delayed (2017-06-01) 5 commits
272 + - convert: add "status=delayed" to filter process protocol
273 + - convert: move multiple file filter error handling to separate function
274 + - t0021: write "OUT" only on success
275 + - t0021: make debug log file name configurable
276 + - t0021: keep filter log files on comparison
277 +
278 + The filter-process interface learned to allow a process with long
279 + latency give a "delayed" response.
280 +
281 + Needs review.
282 +
283 +
284 * ah/doc-rev-parse-short-default (2017-06-01) 1 commit
285 (merged to 'next' on 2017-06-01 at f64fcc2a26)
286 + doc: rewrite description for rev-parse --short
@@ -204,6 +293,7 @@ of the repositories listed at
293 * rf/completion-config-commit (2017-05-30) 1 commit
294 (merged to 'next' on 2017-06-01 at cea32e0486)
295 + completion: add completions for git config commit
296 + (this branch is used by rf/completion.)
297
298 Completion update.
299
@@ -277,7 +367,7 @@ of the repositories listed at
367 Will merge to 'master'.
368
369
280 -* pw/rebase-i-regression-fix (2017-06-01) 1 commit
370 +* pw/rebase-i-regression-fix-tests (2017-06-01) 1 commit
371 - rebase -i: add test for reflog message
372
373 Just the first one of three? new tests that follows up a regression
@@ -296,7 +386,6 @@ of the repositories listed at
386 - submodule test invocation: only pass additional arguments
387 - submodule recursing: do not write a config variable twice
388 - Merge branch 'ab/grep-preparatory-cleanup' into sb/submodule-blanket-recursive
299 - (this branch uses ab/grep-preparatory-cleanup; is tangled with ab/pcre-v2.)
389
390 Many commands learned to pay attention to submodule.recurse
391 configuration.
@@ -317,102 +406,21 @@ of the repositories listed at
406
407 Will merge to 'master'.
408
320 ---------------------------------------------------
321 -[Stalled]
322 -
323 -* mg/status-in-progress-info (2017-05-10) 2 commits
324 - - status --short --inprogress: spell it as --in-progress
325 - - status: show in-progress info for short status
326 -
327 - "git status" learns an option to report various operations
328 - (e.g. "merging") that the user is in the middle of.
329 -
330 - cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
331 -
332 -
333 -* mg/name-rev-debug (2017-03-31) 2 commits
334 - - describe: pass --debug down to name-rev
335 - - name-rev: provide debug output
336 -
337 - "git describe --debug --contains" did not add any meaningful
338 - information, even though without "--contains" it did.
339 -
340 - Will discard for now.
341 - cf. <c85bc2a1-56d8-8a02-6089-2b8cb3d39e99@grubix.eu>
342 -
343 -
344 -* nd/worktree-move (2017-04-20) 6 commits
345 - - worktree remove: new command
346 - - worktree move: refuse to move worktrees with submodules
347 - - worktree move: accept destination as directory
348 - - worktree move: new command
349 - - worktree.c: add update_worktree_location()
350 - - worktree.c: add validate_worktree()
351 -
352 - "git worktree" learned move and remove subcommands.
353 -
354 - Expecting a reroll.
355 - cf. <20170420101024.7593-1-pclouds@gmail.com>
356 - cf. <20170421145916.mknekgqzhxffu7di@sigill.intra.peff.net>
357 - cf. <d0e81b1e-5869-299e-f462-4d43dc997bd1@ramsayjones.plus.com>
358 -
359 -
360 -* ls/filter-process-delayed (2017-03-06) 1 commit
361 - - convert: add "status=delayed" to filter process protocol
362 -
363 - Expecting a reroll.
364 - cf. <04ECEBE5-CAC8-4344-B07A-6B7A7C795C94@gmail.com>
365 -
366 -
367 -* sk/dash-is-previous (2017-03-01) 5 commits
368 - . revert.c: delegate handling of "-" shorthand to setup_revisions
369 - . sha1_name.c: teach get_sha1_1 "-" shorthand for "@{-1}"
370 - . revision.c: args starting with "-" might be a revision
371 - . revision.c: swap if/else blocks
372 - . revision.c: do not update argv with unknown option
373 -
374 - A dash "-" can be written to mean "the branch that was previously
375 - checked out" in more places.
376 -
377 - Ejected, as it seems that making -.. to mean @{-1}..HEAD etc. are
378 - going too far.
379 -
380 ---------------------------------------------------
381 -[Cooking]
409
383 -* ab/pcre-v2 (2017-05-26) 7 commits
410 +* ab/pcre-v2 (2017-06-02) 8 commits
411 - grep: add support for PCRE v2
412 + - grep: un-break building with PCRE >= 8.32 without --enable-jit
413 - grep: un-break building with PCRE < 8.20
414 - grep: un-break building with PCRE < 8.32
415 - grep: add support for the PCRE v1 JIT API
416 - log: add -P as a synonym for --perl-regexp
417 - grep: skip pthreads overhead when using one thread
418 - grep: don't redundantly compile throwaway patterns under threading
391 - (this branch uses ab/grep-preparatory-cleanup; is tangled with sb/submodule-blanket-recursive.)
419
420 Update "perl-compatible regular expression" support to enable JIT
421 and also allow linking with the newer PCRE v2 library.
422
396 - Waiting for a fix-up.
397 - cf. <CACBZZX6YFKTLKxep2oW0_HrX+kNJ2PX5G4UCboB+4yosmLqr5g@mail.gmail.com>
398 -
399 -
400 -* ab/ref-filter-no-contains (2017-05-23) 1 commit
401 - (merged to 'next' on 2017-05-29 at 5d39fd2961)
402 - + tag: duplicate mention of --contains should mention --no-contains
403 -
404 - Doc update to a recent topic.
405 -
406 - Will merge to 'master'.
407 -
408 -
409 -* rs/mingw-path-lookup-simplify (2017-05-23) 1 commit
410 - (merged to 'next' on 2017-05-29 at 4365139a7f)
411 - + mingw: simplify PATH handling
412 -
413 - Code simplification.
414 -
415 - Will merge to 'master'.
423 + Will merge to 'next'.
424
425
426 * ab/sha1dc-maint (2017-05-22) 1 commit
@@ -485,33 +493,6 @@ of the repositories listed at
493 Will merge to 'master'.
494
495
488 -* ah/doc-interpret-trailers-ifexists (2017-05-23) 1 commit
489 - (merged to 'next' on 2017-05-29 at cb353c1d21)
490 - + Documentation: fix reference to ifExists for interpret-trailers
491 -
492 - Documentation fix.
493 -
494 - Will merge to 'master'.
495 -
496 -
497 -* ah/doc-pretty-format-fix (2017-05-23) 1 commit
498 - (merged to 'next' on 2017-05-29 at 6e3e8fd80d)
499 - + Documentation: fix formatting typo in pretty-formats.txt
500 -
501 - Documentation fix.
502 -
503 - Will merge to 'master'.
504 -
505 -
506 -* sb/t5531-update-desc (2017-05-23) 1 commit
507 - (merged to 'next' on 2017-05-29 at 67a91db3cf)
508 - + t5531: fix test description
509 -
510 - The description strings for a few tests have been updated.
511 -
512 - Will merge to 'master'.
513 -
514 -
496 * mh/packed-ref-store-prep (2017-05-24) 26 commits
497 (merged to 'next' on 2017-05-29 at e4f5e06b4c)
498 + cache_ref_iterator_begin(): avoid priming unneeded directories
@@ -547,23 +528,6 @@ of the repositories listed at
528 Will merge to 'master'.
529
530
550 -* sl/clean-d-ignored-fix (2017-05-24) 6 commits
551 - (merged to 'next' on 2017-05-29 at 837c255ae8)
552 - + clean: teach clean -d to preserve ignored paths
553 - + dir: expose cmp_name() and check_contains()
554 - + dir: hide untracked contents of untracked dirs
555 - + dir: recurse into untracked dirs for ignored files
556 - + t7061: status --ignored should search untracked dirs
557 - + t7300: clean -d should skip dirs with ignored files
558 -
559 - "git clean -d" used to clean directories that has ignored files,
560 - even though the command should not lose ignored ones without "-x".
561 - "git status --ignored" did not list ignored and untracked files
562 - without "-uall". These have been corrected.
563 -
564 - Will merge to 'master'.
565 -
566 -
531 * ab/sha1dc (2017-05-22) 2 commits
532 - sha1collisiondetection: automatically enable when submodule is populated
533 - sha1dc: optionally use sha1collisiondetection as a submodule
@@ -578,51 +542,18 @@ of the repositories listed at
542 submodule is not yet fully known, but this lets us dip our toes.
543
544
581 -* bp/fsmonitor (2017-05-26) 6 commits
545 +* bp/fsmonitor (2017-06-02) 6 commits
546 - fsmonitor: add a sample query-fsmonitor hook script for Watchman
583 - - fsmonitor: add documentation for the fsmonitor extension.
547 + - fsmonitor: add documentation for the fsmonitor extension
548 - fsmonitor: add test cases for fsmonitor extension
549 - fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files.
550 - dir: make lookup_untracked() available outside of dir.c
551 - bswap: add 64 bit endianness helper get_be64
552
553 + We learned to talk to watchman to speed up "git status".
554
590 -* jk/diff-blob (2017-05-24) 15 commits
591 - (merged to 'next' on 2017-05-29 at 5ecc979cc7)
592 - + diff: use blob path for blob/file diffs
593 - + diff: use pending "path" if it is available
594 - + diff: use the word "path" instead of "name" for blobs
595 - + diff: pass whole pending entry in blobinfo
596 - + handle_revision_arg: record paths for pending objects
597 - + handle_revision_arg: record modes for "a..b" endpoints
598 - + t4063: add tests of direct blob diffs
599 - + get_sha1_with_context: dynamically allocate oc->path
600 - + get_sha1_with_context: always initialize oc->symlink_path
601 - + sha1_name: consistently refer to object_context as "oc"
602 - + handle_revision_arg: add handle_dotdot() helper
603 - + handle_revision_arg: hoist ".." check out of range parsing
604 - + handle_revision_arg: stop using "dotdot" as a generic pointer
605 - + handle_revision_arg: simplify commit reference lookups
606 - + handle_revision_arg: reset "dotdot" consistently
607 -
608 - The result from "git diff" that compares two blobs, e.g. "git diff
609 - $commit1:$path $commit2:$path", used to be shown with the full
610 - object name as given on the command line, but it is more natural to
611 - use the $path in the output and use it to look up .gitattributes.
612 -
613 - Will merge to 'master'.
614 -
615 -
616 -* js/bs-is-a-dir-sep-on-windows (2017-05-26) 2 commits
617 - (merged to 'next' on 2017-05-26 at 450b39f726)
618 - + Windows: do not treat a path with backslashes as a remote's nick name
619 - + mingw.h: permit arguments with side effects for is_dir_sep
620 -
621 - "foo\bar\baz" in "git fetch foo\bar\baz", even though there is no
622 - slashes in it, cannot be a nickname for a remote on Windows, as
623 - that is likely to be a pathname on a local filesystem.
624 -
625 - Will merge to 'master'.
555 + Waiting for discussion to settle.
556 + cf. <20170601155105.28356-1-benpeart@microsoft.com>
557
558
559 * sb/diff-color-move (2017-06-01) 17 commits
@@ -698,46 +629,6 @@ of the repositories listed at
629 Will merge to 'master'.
630
631
701 -* ab/grep-preparatory-cleanup (2017-05-26) 31 commits
702 - (merged to 'next' on 2017-05-29 at f2cfa89d3e)
703 - + grep: assert that threading is enabled when calling grep_{lock,unlock}
704 - + grep: given --threads with NO_PTHREADS=YesPlease, warn
705 - + pack-objects: fix buggy warning about threads
706 - + pack-objects & index-pack: add test for --threads warning
707 - + test-lib: add a PTHREADS prerequisite
708 - + grep: move is_fixed() earlier to avoid forward declaration
709 - + grep: change internal *pcre* variable & function names to be *pcre1*
710 - + grep: change the internal PCRE macro names to be PCRE1
711 - + grep: factor test for \0 in grep patterns into a function
712 - + grep: remove redundant regflags assignments
713 - + grep: catch a missing enum in switch statement
714 - + perf: add a comparison test of log --grep regex engines with -F
715 - + perf: add a comparison test of log --grep regex engines
716 - + perf: add a comparison test of grep regex engines with -F
717 - + perf: add a comparison test of grep regex engines
718 - + perf: emit progress output when unpacking & building
719 - + perf: add a GIT_PERF_MAKE_COMMAND for when *_MAKE_OPTS won't do
720 - + grep: add tests to fix blind spots with \0 patterns
721 - + grep: prepare for testing binary regexes containing rx metacharacters
722 - + grep: add a test helper function for less verbose -f \0 tests
723 - + grep: add tests for grep pattern types being passed to submodules
724 - + grep: amend submodule recursion test for regex engine testing
725 - + grep: add tests for --threads=N and grep.threads
726 - + grep: change non-ASCII -i test to stop using --debug
727 - + grep: add a test for backreferences in PCRE patterns
728 - + grep: add a test asserting that --perl-regexp dies when !PCRE
729 - + log: make --regexp-ignore-case work with --perl-regexp
730 - + log: add exhaustive tests for pattern style options & config
731 - + test-lib: rename the LIBPCRE prerequisite to PCRE
732 - + grep & rev-list doc: stop promising libpcre for --perl-regexp
733 - + Makefile & configure: reword inaccurate comment about PCRE
734 - (this branch is used by ab/pcre-v2 and sb/submodule-blanket-recursive.)
735 -
736 - The internal implementation of "git grep" has seen some clean-up.
737 -
738 - Will merge to 'master'.
739 -
740 -
632 * sg/clone-refspec-from-command-line-config (2017-06-01) 2 commits
633 - Documentation/clone: document ignored configuration variables
634 - clone: respect additional configured fetch refspecs during initial fetch
@@ -761,7 +652,7 @@ of the repositories listed at
652 fstat() on a file that is opened for writing and data was written
653 but not yet closed.
654
764 - Will cook in 'next'.
655 + Will merge to 'master'.
656
657
658 * mb/diff-default-to-indent-heuristics (2017-05-09) 4 commits
@@ -780,9 +671,8 @@ of the repositories listed at
671 cf. <20170509033258.q7auj5p5lxs4tggd@sigill.intra.peff.net>
672
673
783 -* nd/fopen-errors (2017-05-30) 14 commits
674 +* nd/fopen-errors (2017-06-02) 13 commits
675 - mingw_fopen: report ENOENT for invalid file names
785 - - SQUASH??? use test_i18ngrep and add it at the end
676 - mingw: verify that paths are not mistaken for remote nicknames
677 - log: fix memory leak in open_next_file()
678 - rerere.c: move error_errno() closer to the source system call
@@ -800,7 +690,7 @@ of the repositories listed at
690 optional, and silently ignore errors from open/fopen; report such
691 errors if they are not due to missing files.
692
803 - Waiting for an Ack to the SQUASH fix or a reroll of the tip commits.
693 + Will merge to 'next'.
694
695
696 * js/rebase-i-final (2017-05-02) 10 commits