What's cooking (2021/09 #05)

Junio C Hamano committed Sep 17, 2021 at 13:24 UTC f839d65745f5b628d0ccc4446b6f521f3af4e1d0
1 file changed +457 -367
whats-cooking.txt
+457 -367
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Sep 2021, #04; Mon, 13)
4 -X-master-at: 8b7c11b8668b4e774f81a9f0b4c30144b818f1d1
5 -X-next-at: 22d4bfa14b6169731ecee0d0e0a4cb3b00676ae4
3 +Subject: What's cooking in git.git (Sep 2021, #05; Fri, 17)
4 +X-master-at: 4c719308ce59dc70e606f910f40801f2c6051b24
5 +X-next-at: 186eaaae567db501179c0af0bf89b34cbea02c26
6
7 -What's cooking in git.git (Sep 2021, #04; Mon, 13)
7 +What's cooking in git.git (Sep 2021, #05; Fri, 17)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -18,6 +18,10 @@ useful"). Do not read too much into a topic being in (or not in)
18 'seen'. The ones marked with '.' do not appear in any of the
19 integration branches, but I am still holding onto them.
20
21 +The sixth batch is out. I've marked quite many topics for 'next'
22 +but with a question mark in this issue of the report, to which help
23 +in triaging them would be greatly appreciated as ever.
24 +
25 Copies of the source code to Git live in many repositories, and the
26 following is a list of the ones I push into or their mirrors. Some
27 repositories have only a subset of branches.
@@ -46,21 +50,292 @@ Release tarballs are available at:
50
51 https://www.kernel.org/pub/software/scm/git/
52
53 +--------------------------------------------------
54 +[Graduated to 'master']
55 +
56 +* ab/no-more-check-bindir (2021-09-07) 1 commit
57 + (merged to 'next' on 2021-09-08 at 4fddb3864f)
58 + + Makefile: remove the check_bindir script
59 +
60 + Build simplification.
61 +
62 +
63 +* ab/reverse-midx-optim (2021-09-07) 1 commit
64 + (merged to 'next' on 2021-09-08 at 1972c5931b)
65 + + pack-write: skip *.rev work when not writing *.rev
66 +
67 + The code that optionally creates the *.rev reverse index file has
68 + been optimized to avoid needless computation when it is not writing
69 + the file out.
70 +
71 +
72 +* ab/send-email-config-fix (2021-09-07) 1 commit
73 + (merged to 'next' on 2021-09-08 at c2000e9689)
74 + + send-email: fix a "first config key wins" regression in v2.33.0
75 +
76 + Regression fix.
77 +
78 +
79 +* bs/doc-bugreport-outdir (2021-09-07) 1 commit
80 + (merged to 'next' on 2021-09-08 at 5ea3df204d)
81 + + Documentation: fix default directory of git bugreport -o
82 +
83 + Docfix.
84 +
85 +
86 +* bs/install-strip (2021-09-05) 1 commit
87 + (merged to 'next' on 2021-09-08 at 40cfa71c8d)
88 + + make: add INSTALL_STRIP option variable
89 +
90 + "make INSTALL_STRIP=-s install" allows the installation step to use
91 + "install -s" to strip the binaries as they get installed.
92 +
93 +
94 +* jc/prefix-filename-allocates (2021-09-07) 1 commit
95 + (merged to 'next' on 2021-09-10 at a5221ea92e)
96 + + hash-object: prefix_filename() returns allocated memory these days
97 +
98 + Leakfix.
99 +
100 +
101 +* jc/trivial-threeway-binary-merge (2021-09-05) 1 commit
102 + (merged to 'next' on 2021-09-08 at d6ba0735d8)
103 + + apply: resolve trivial merge without hitting ll-merge with "--3way"
104 +
105 + The "git apply -3" code path learned not to bother the lower level
106 + merge machinery when the three-way merge can be trivially resolved
107 + without the content level merge.
108 +
109 +
110 +* pb/test-use-user-env (2021-09-07) 3 commits
111 + (merged to 'next' on 2021-09-08 at 6fa5d96723)
112 + + test-lib-functions: keep user's debugger config files and TERM in 'debug'
113 + + test-lib-functions: optionally keep HOME, TERM and SHELL in 'test_pause'
114 + + test-lib-functions: use 'TEST_SHELL_PATH' in 'test_pause'
115 +
116 + Teach "test_pause" and "debug" helpers to allow using the HOME and
117 + TERM environment variables the user usually uses.
118 +
119 +
120 +* rs/range-diff-avoid-segfault-with-I (2021-09-07) 1 commit
121 + (merged to 'next' on 2021-09-10 at e8bac5f9ea)
122 + + range-diff: avoid segfault with -I
123 +
124 + "git range-diff -I... <range> <range>" segfaulted, which has been
125 + corrected.
126 +
127 +
128 +* so/diff-index-regression-fix (2021-09-07) 1 commit
129 + (merged to 'next' on 2021-09-08 at ca17912ed3)
130 + + diff-index: restore -c/--cc options handling
131 +
132 + Recent "diff -m" changes broke "gitk", which has been corrected.
133 +
134 --------------------------------------------------
135 [New Topics]
136
137 +* jk/reduce-malloc-in-v2-servers (2021-09-15) 12 commits
138 + (merged to 'next' on 2021-09-16 at 40cfe41efc)
139 + + ls-refs: reject unknown arguments
140 + + serve: reject commands used as capabilities
141 + + serve: reject bogus v2 "command=ls-refs=foo"
142 + + docs/protocol-v2: clarify some ls-refs ref-prefix details
143 + + ls-refs: ignore very long ref-prefix counts
144 + + serve: drop "keys" strvec
145 + + serve: provide "receive" function for session-id capability
146 + + serve: provide "receive" function for object-format capability
147 + + serve: add "receive" method for v2 capabilities table
148 + + serve: return capability "value" from get_capability()
149 + + serve: rename is_command() to parse_command()
150 + + Merge branch 'ab/serve-cleanup' into jk/reduce-malloc-in-v2-servers
151 + (this branch uses ab/serve-cleanup.)
152 +
153 + Code cleanup to limit memory consumption and tighten protocol
154 + message parsing.
155 +
156 + Will merge to 'master'.
157 +
158 +
159 +* jt/submodule-name-to-gitdir (2021-09-15) 1 commit
160 + (merged to 'next' on 2021-09-16 at c658fbfdb8)
161 + + submodule: extract path to submodule gitdir func
162 +
163 + Code refactoring.
164 +
165 + Will merge to 'master'.
166 +
167 +
168 +* ma/doc-git-version (2021-09-14) 1 commit
169 + (merged to 'next' on 2021-09-16 at 54a6a3f8b5)
170 + + documentation: add documentation for 'git version'
171 +
172 + Doc update.
173 +
174 + Will merge to 'master'.
175 +
176 +
177 +* ma/help-w-check-for-requested-page (2021-09-14) 1 commit
178 + (merged to 'next' on 2021-09-16 at 292dd7174d)
179 + + help: make sure local html page exists before calling external processes
180 +
181 + The error in "git help no-such-git-command" is handled better.
182 +
183 + Will merge to 'master'.
184 +
185 +
186 +* ns/batched-fsync (2021-09-14) 5 commits
187 + - core.fsyncobjectfiles: performance tests for add and stash
188 + - update-index: use the bulk-checkin infrastructure
189 + - core.fsyncobjectfiles: add windows support for batch mode
190 + - core.fsyncobjectfiles: batched disk flushes
191 + - bulk-checkin: rename 'state' variable and separate 'plugged' boolean
192 +
193 + The "core.fsyncobjectfiles" configuration variable can now be set
194 + to "batch" for improved performance.
195 +
196 + Will merge to 'next'?
197 +
198 +
199 +* cb/plug-leaks-in-alloca-emu-users (2021-09-16) 2 commits
200 + (merged to 'next' on 2021-09-16 at 2eecae2de3)
201 + + t0000: avoid masking git exit value through pipes
202 + + tree-diff: fix leak when not HAVE_ALLOCA_H
203 +
204 + Leakfix.
205 +
206 + Will merge to 'master'.
207 +
208 +
209 +* jh/builtin-fsmonitor-part1 (2021-09-15) 7 commits
210 + - t/helper/simple-ipc: convert test-simple-ipc to use start_bg_command
211 + - run-command: create start_bg_command
212 + - simple-ipc/ipc-win32: add Windows ACL to named pipe
213 + - simple-ipc/ipc-win32: add trace2 debugging
214 + - simple-ipc: move definition of ipc_active_state outside of ifdef
215 + - simple-ipc: preparations for supporting binary messages.
216 + - trace2: fix memory leak of thread name
217 +
218 + Built-in fsmonitor (part 1).
219 +
220 +
221 +* kz/revindex-comment-fix (2021-09-15) 1 commit
222 + (merged to 'next' on 2021-09-16 at b4797add3a)
223 + + pack-revindex.h: correct the time complexity descriptions
224 +
225 + Header comment fix.
226 +
227 + Will merge to 'master'.
228 +
229 +
230 +* cb/cvsserver (2021-09-16) 3 commits
231 + - Documentation: cleanup git-cvsserver
232 + - git-cvsserver: protect against NULL in crypt(3)
233 + - git-cvsserver: use crypt correctly to compare password hashes
234 +
235 + "git cvsserver" had a long-standing bug in its authentication code,
236 + which has finally been corrected (it is unclear and is a separate
237 + question if anybody is seriously using it, though).
238 +
239 + Will merge to 'next'.
240 +
241 +
242 +* cb/unicode-14 (2021-09-17) 1 commit
243 + - unicode: update the width tables to Unicode 14
244 +
245 + The unicode character width table (used for output alignment) has
246 + been updated.
247 +
248 + Will merge to 'next'.
249 +
250 +--------------------------------------------------
251 +[Stalled]
252 +
253 +* ab/pack-objects-stdin (2021-07-09) 5 commits
254 + - pack-objects.c: make use of REV_INFO_STDIN_LINE_PROCESS
255 + - pack-objects.c: do stdin parsing via revision.c's API
256 + - revision.[ch]: add a "handle_stdin_line" API
257 + - revision.h: refactor "disable_stdin" and "read_from_stdin"
258 + - upload-pack: run is_repository_shallow() before setup_revisions()
259 +
260 + Introduce handle_stdin_line callback to revision API and uses it.
261 +
262 + Waiting for reviews.
263 +
264 +
265 +* es/config-based-hooks (2021-09-09) 6 commits
266 + - hook: allow out-of-repo 'git hook' invocations
267 + - hook: include hooks from the config
268 + - hook: introduce "git hook list"
269 + - hook: allow parallel hook execution
270 + - fixup! hook: run a list of hooks instead
271 + - hook: run a list of hooks instead
272 + (this branch uses ab/config-based-hooks-base.)
273 +
274 + Revamp the hooks subsystem to allow multiple of them to trigger
275 + upon the same event and control via the configuration variables.
276 +
277 + On hold.
278 + This is an interim one that goes with the updated ab/config-based-hooks-base.
279 +
280 +
281 +* es/superproject-aware-submodules (2021-08-19) 5 commits
282 + - fixup! introduce submodule.superprojectGitDir record
283 + - submodule: record superproject gitdir during 'update'
284 + - submodule: record superproject gitdir during absorbgitdirs
285 + - introduce submodule.superprojectGitDir record
286 + - t7400-submodule-basic: modernize inspect() helper
287 +
288 + A configuration variable in a submodule points at the location of
289 + the superproject it is bound to (RFC).
290 +
291 + Looking good.
292 +
293 +
294 +* ab/fsck-unexpected-type (2021-09-07) 22 commits
295 + - fsck: report invalid object type-path combinations
296 + - fsck: report invalid types recorded in objects
297 + - object-store.h: move read_loose_object() below 'struct object_info'
298 + - fsck: don't hard die on invalid object types
299 + - object-file.c: use "enum" return type for unpack_loose_header()
300 + - object-file.c: return -2 on "header too long" in unpack_loose_header()
301 + - object-file.c: return -1, not "status" from unpack_loose_header()
302 + - object-file.c: guard against future bugs in loose_object_info()
303 + - object-file.c: stop dying in parse_loose_header()
304 + - object-file.c: split up ternary in parse_loose_header()
305 + - object-file.c: simplify unpack_loose_short_header()
306 + - object-file.c: add missing braces to loose_object_info()
307 + - object-file.c: make parse_loose_header_extended() public
308 + - object-file.c: don't set "typep" when returning non-zero
309 + - cache.h: move object functions to object-store.h
310 + - cat-file tests: test for current --allow-unknown-type behavior
311 + - cat-file tests: add corrupt loose object test
312 + - rev-list tests: test for behavior with invalid object types
313 + - cat-file tests: test that --allow-unknown-type isn't on by default
314 + - cat-file tests: test for missing object with -t and -s
315 + - fsck tests: add test for fsck-ing an unknown type
316 + - fsck tests: refactor one test to use a sub-repo
317 +
318 + "git fsck" has been taught to report mismatch between expected and
319 + actual types of an object better.
320 +
321 + Needs review.
322 +
323 +--------------------------------------------------
324 +[Cooking]
325 +
326 * jk/http-server-protocol-versions (2021-09-10) 5 commits
53 - - docs/protocol-v2: point readers transport config discussion
54 - - docs/git: discuss server-side config for GIT_PROTOCOL
55 - - docs/http-backend: mention v2 protocol
56 - - http-backend: handle HTTP_GIT_PROTOCOL CGI variable
57 - - t5551: test v2-to-v0 http protocol fallback
327 + (merged to 'next' on 2021-09-13 at 9174cd6d37)
328 + + docs/protocol-v2: point readers transport config discussion
329 + + docs/git: discuss server-side config for GIT_PROTOCOL
330 + + docs/http-backend: mention v2 protocol
331 + + http-backend: handle HTTP_GIT_PROTOCOL CGI variable
332 + + t5551: test v2-to-v0 http protocol fallback
333
334 Taking advantage of the CGI interface, http-backend has been
335 updated to enable protocol v2 automatically when the other side
336 asks for it.
337
63 - Will merge to 'next'.
338 + Will merge to 'master'.
339
340
341 * ab/align-parse-options-help (2021-09-12) 4 commits
@@ -73,6 +348,8 @@ Release tarballs are available at:
348 the cmd subcommand may take sub-sub-command), parse-options API
349 learned to align these lines, even across i18n/l10n.
350
351 + Will merge to 'next'?
352 +
353
354 * ab/help-config-vars (2021-09-10) 6 commits
355 - fixup! help / completion: make "git help" do the hard work
@@ -85,68 +362,77 @@ Release tarballs are available at:
362 Teach "git help -c" into helping the command line completion of
363 configuration variables.
364
365 + Will merge to 'next'?
366 +
367
368 * en/am-abort-fix (2021-09-10) 3 commits
90 - - am: fix incorrect exit status on am fail to abort
91 - - t4151: add a few am --abort tests
92 - - git-am.txt: clarify --abort behavior
369 + (merged to 'next' on 2021-09-13 at 11f3d2dc90)
370 + + am: fix incorrect exit status on am fail to abort
371 + + t4151: add a few am --abort tests
372 + + git-am.txt: clarify --abort behavior
373
374 When "git am --abort" fails to abort correctly, it still exited
375 with exit status of 0, which has been corrected.
376
97 - Will merge to 'next'.
377 + Will merge to 'master'.
378
379
100 -* tb/repack-write-midx (2021-09-10) 8 commits
380 +* tb/repack-write-midx (2021-09-16) 8 commits
381 - builtin/repack.c: pass `--refs-snapshot` when writing bitmaps
382 - builtin/repack.c: make largest pack preferred
383 - builtin/repack.c: support writing a MIDX while repacking
384 - builtin/repack.c: extract showing progress to a variable
385 - builtin/repack.c: keep track of existing packs unconditionally
386 - midx: preliminary support for `--refs-snapshot`
107 - - builtin/multi-pack-index.c: support --stdin-packs mode
108 - - midx: expose 'write_midx_file_only()' publicly
387 + - builtin/multi-pack-index.c: support `--stdin-packs` mode
388 + - midx: expose `write_midx_file_only()` publicly
389 (this branch uses tb/multi-pack-bitmaps.)
390
391 "git repack" has been taught to generate multi-pack reachability
392 bitmaps.
393
394 + Will merge to 'next'?
395 +
396
397 * ab/gc-remove-unused-call (2021-09-12) 1 commit
116 - - gc: remove unused launchctl_get_uid() call
398 + (merged to 'next' on 2021-09-13 at 14f69ed198)
399 + + gc: remove unused launchctl_get_uid() call
400
401 Code clean-up.
402
120 - Will merge to 'next'.
403 + Will merge to 'master'.
404
405
406 * ab/test-tool-run-command-cleanup (2021-09-12) 1 commit
124 - - test-tool run-command: fix flip-flop init pattern
407 + (merged to 'next' on 2021-09-13 at 086310d0f4)
408 + + test-tool run-command: fix flip-flop init pattern
409
410 Code clean-up.
411
128 - Will merge to 'next'.
412 + Will merge to 'master'.
413
414
415 * ab/unused-script-helpers (2021-09-12) 4 commits
132 - - test-lib: remove unused $_x40 and $_z40 variables
133 - - git-bisect: remove unused SHA-1 $x40 shell variable
134 - - git-sh-setup: remove unused "pull with rebase" message
135 - - git-submodule: remove unused is_zero_oid() function
416 + (merged to 'next' on 2021-09-15 at 14e6b0f26e)
417 + + test-lib: remove unused $_x40 and $_z40 variables
418 + + git-bisect: remove unused SHA-1 $x40 shell variable
419 + + git-sh-setup: remove unused "pull with rebase" message
420 + + git-submodule: remove unused is_zero_oid() function
421
422 Code clean-up.
423
139 - Will merge to 'next'.
424 + Will merge to 'master'.
425
426
142 -* cb/unix-sockets-with-windows (2021-09-12) 3 commits
143 - - git-compat-util: include declaration for unix sockets
144 - - credential-cache: check for windows specific errors
145 - - t0301: fixes for windows compatibility
427 +* cb/unix-sockets-with-windows (2021-09-14) 3 commits
428 + (merged to 'next' on 2021-09-16 at e2921332ef)
429 + + git-compat-util: include declaration for unix sockets in windows
430 + + credential-cache: check for windows specific errors
431 + + t0301: fixes for windows compatibility
432
433 Adjust credential-cache helper to Windows.
434
149 - Expecting a reroll.
435 + Will merge to 'master'.
436
437
438 * ds/add-rm-with-sparse-index (2021-09-12) 14 commits
@@ -166,79 +452,93 @@ Release tarballs are available at:
452 - t3705: test that 'sparse_entry' is unstaged
453 (this branch uses ds/mergies-with-sparse-index and ds/sparse-index-ignored-files.)
454
169 - "git add", "git mv", and "git rm" have been adjusted to work better
170 - with the sparse index.
455 + "git add", "git mv", and "git rm" have been adjusted to avoid
456 + updating paths outside of the sparse-checkout definition unless
457 + the user specifies a "--sparse" option.
458 +
459 + Will merge to 'next'?
460
461
462 * en/tests-cleanup-leftover-untracked (2021-09-12) 1 commit
174 - - tests: remove leftover untracked files
463 + (merged to 'next' on 2021-09-13 at cf38118205)
464 + + tests: remove leftover untracked files
465
466 Test clean-up.
467
178 - Will merge to 'next'.
468 + Will merge to 'master'.
469
470
471 * jk/strvec-typefix (2021-09-12) 1 commit
182 - - strvec: use size_t to store nr and alloc
472 + (merged to 'next' on 2021-09-13 at e07858581d)
473 + + strvec: use size_t to store nr and alloc
474
475 Correct nr and alloc members of strvec struct to be of type size_t.
476
186 - Will merge to 'next'.
477 + Will merge to 'master'.
478
479
480 * rs/drop-core-compression-vars (2021-09-12) 1 commit
190 - - compression: drop write-only core_compression_* variables
481 + (merged to 'next' on 2021-09-13 at 3bd06626c3)
482 + + compression: drop write-only core_compression_* variables
483
484 Code clean-up.
485
194 - Will merge to 'next'.
486 + Will merge to 'master'.
487
488
489 * rs/packfile-bad-object-list-in-oidset (2021-09-12) 5 commits
198 - - packfile: use oidset for bad objects
199 - - packfile: convert has_packed_and_bad() to object_id
200 - - packfile: convert mark_bad_packed_object() to object_id
201 - - midx: inline nth_midxed_pack_entry()
202 - - oidset: make oidset_size() an inline function
490 + (merged to 'next' on 2021-09-13 at 80e72f5f97)
491 + + packfile: use oidset for bad objects
492 + + packfile: convert has_packed_and_bad() to object_id
493 + + packfile: convert mark_bad_packed_object() to object_id
494 + + midx: inline nth_midxed_pack_entry()
495 + + oidset: make oidset_size() an inline function
496
497 Replace a handcrafted data structure used to keep track of bad
498 objects in the packfile API by an oidset.
499
207 - Will merge to 'next'.
500 + Will merge to 'master'.
501
502
210 -* tb/midx-write-propagate-namehash (2021-09-12) 4 commits
503 +* tb/midx-write-propagate-namehash (2021-09-14) 7 commits
504 - t5326: test propagating hashcache values
505 + - p5326: generate pack bitmaps before writing the MIDX bitmap
506 + - p5326: don't set core.multiPackIndex unnecessarily
507 + - p5326: create missing 'perf-tag' tag
508 - midx.c: respect 'pack.writeBitmapHashcache' when writing bitmaps
509 - pack-bitmap.c: propagate namehash values from existing bitmaps
510 - t/helper/test-bitmap.c: add 'dump-hashes' mode
511 (this branch uses tb/multi-pack-bitmaps.)
512
217 - "git multi-pack-bitmap write" learns to propagate the hashcache
218 - from original bitmap to resulting bitmap.
513 + "git multi-pack-index write --bitmap" learns to propagate the
514 + hashcache from original bitmap to resulting bitmap.
515 +
516 + Will merge to 'next'?
517
518
519 * ab/retire-option-argument (2021-09-12) 4 commits
222 - - parse-options API: remove OPTION_ARGUMENT feature
223 - - difftool: use run_command() API in run_file_diff()
224 - - difftool: prepare "diff" cmdline in cmd_difftool()
225 - - difftool: prepare "struct child_process" in cmd_difftool()
520 + (merged to 'next' on 2021-09-15 at 0bd7ce1161)
521 + + parse-options API: remove OPTION_ARGUMENT feature
522 + + difftool: use run_command() API in run_file_diff()
523 + + difftool: prepare "diff" cmdline in cmd_difftool()
524 + + difftool: prepare "struct child_process" in cmd_difftool()
525
526 An oddball OPTION_ARGUMENT feature has been removed from the
527 parse-options API.
528
230 - Will merge to 'next'.
529 + Will merge to 'master'.
530
531
532 * po/git-config-doc-mentions-help-c (2021-09-13) 1 commit
234 - - doc: config, tell readers of `git help --config`
533 + (merged to 'next' on 2021-09-13 at bddbd5c25d)
534 + + doc: config, tell readers of `git help --config`
535
536 Doc update.
537
238 - Will merge to 'next'.
538 + Will merge to 'master'.
539
540
241 -* pw/rebase-on-a-tag-fix (2021-09-13) 11 commits
541 +* pw/rebase-of-a-tag-fix (2021-09-13) 11 commits
542 - rebase: dereference tags
543 - rebase: use lookup_commit_reference_by_name()
544 - rebase: use our standard error return value
@@ -257,151 +557,6 @@ Release tarballs are available at:
557
558 Expecting a reroll.
559
260 ---------------------------------------------------
261 -[Stalled]
262 -
263 -* ab/pack-objects-stdin (2021-07-09) 5 commits
264 - - pack-objects.c: make use of REV_INFO_STDIN_LINE_PROCESS
265 - - pack-objects.c: do stdin parsing via revision.c's API
266 - - revision.[ch]: add a "handle_stdin_line" API
267 - - revision.h: refactor "disable_stdin" and "read_from_stdin"
268 - - upload-pack: run is_repository_shallow() before setup_revisions()
269 -
270 - Introduce handle_stdin_line callback to revision API and uses it.
271 -
272 - Waiting for reviews.
273 -
274 -
275 -* es/config-based-hooks (2021-09-09) 6 commits
276 - - hook: allow out-of-repo 'git hook' invocations
277 - - hook: include hooks from the config
278 - - hook: introduce "git hook list"
279 - - hook: allow parallel hook execution
280 - - fixup! hook: run a list of hooks instead
281 - - hook: run a list of hooks instead
282 - (this branch uses ab/config-based-hooks-base.)
283 -
284 - Revamp the hooks subsystem to allow multiple of them to trigger
285 - upon the same event and control via the configuration variables.
286 -
287 - On hold.
288 - This is an interim one that goes with the updated ab/config-based-hooks-base.
289 -
290 -
291 -* jh/builtin-fsmonitor (2021-09-03) 37 commits
292 - - fixup! fsmonitor--daemon: implement handle_client callback
293 - - SQUASH??? https://github.com/git/git/runs/3438543601?check_suite_focus=true#step:5:136
294 - - BANDAID: sparse fixes
295 - - t7527: test FS event reporing on MacOS WRT case and Unicode
296 - - fsmonitor: handle shortname for .git
297 - - t7527: test status with untracked-cache and fsmonitor--daemon
298 - - fsmonitor: force update index after large responses
299 - - fsmonitor: enhance existing comments
300 - - fsmonitor--daemon: use a cookie file to sync with file system
301 - - fsmonitor--daemon: periodically truncate list of modified files
302 - - t7527: create test for fsmonitor--daemon
303 - - t/perf/p7519: add fsmonitor--daemon test cases
304 - - t/perf: avoid copying builtin fsmonitor files into test repo
305 - - t/perf/p7519: speed up test using "test-tool touch"
306 - - t/helper/test-touch: add helper to touch a series of files
307 - - fsmonitor--daemon: implement handle_client callback
308 - - fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS
309 - - fsmonitor-fs-listen-macos: add macos header files for FSEvent
310 - - fsmonitor-fs-listen-win32: implement FSMonitor backend on Windows
311 - - fsmonitor--daemon: create token-based changed path cache
312 - - fsmonitor--daemon: define token-ids
313 - - fsmonitor--daemon: add pathname classification
314 - - fsmonitor: do not try to operate on bare repos
315 - - fsmonitor--daemon: implement 'start' command
316 - - fsmonitor--daemon: implement 'run' command
317 - - fsmonitor-fs-listen-macos: stub in backend for MacOS
318 - - fsmonitor-fs-listen-win32: stub in backend for Windows
319 - - t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon
320 - - fsmonitor--daemon: implement 'stop' and 'status' commands
321 - - fsmonitor--daemon: add a built-in fsmonitor daemon
322 - - fsmonitor: use IPC to query the builtin FSMonitor daemon
323 - - fsmonitor: config settings are repository-specific
324 - - help: include fsmonitor--daemon feature flag in version info
325 - - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
326 - - fsmonitor--daemon: update fsmonitor documentation
327 - - fsmonitor--daemon: man page
328 - - simple-ipc: preparations for supporting binary messages.
329 -
330 - An attempt to write and ship with a watchman equivalent tailored
331 - for our use.
332 -
333 - Expecting a reroll post 2.33 release.
334 -
335 -
336 -* es/superproject-aware-submodules (2021-08-19) 5 commits
337 - - fixup! introduce submodule.superprojectGitDir record
338 - - submodule: record superproject gitdir during 'update'
339 - - submodule: record superproject gitdir during absorbgitdirs
340 - - introduce submodule.superprojectGitDir record
341 - - t7400-submodule-basic: modernize inspect() helper
342 -
343 - A configuration variable in a submodule points at the location of
344 - the superproject it is bound to (RFC).
345 -
346 - Looking good.
347 -
348 -
349 -* ao/p4-avoid-decoding (2021-04-12) 2 commits
350 - - git-p4: do not decode data from perforce by default
351 - - git-p4: avoid decoding more data from perforce
352 -
353 - "git p4" in Python-2 days used to accept a lot more kinds of data
354 - from Perforce server as uninterrupted byte sequence, but after
355 - switching to Python-3, too many things are expected to be in UTF-8,
356 - which broke traditional use cases.
357 -
358 - Will discard.
359 - Have been stalled for too long.
360 - cf. <20210504220153.1d9f0cb2@ado-tr>
361 -
362 -
363 -* tv/p4-fallback-encoding (2021-04-30) 1 commit
364 - - git-p4: git-p4.fallbackEncoding to specify non UTF-8 charset
365 -
366 - "git p4" learns the fallbackEncoding configuration variable to
367 - safely accept changeset descriptions that aren't written in UTF-8.
368 -
369 - Will discard.
370 - Have been stalled for too long.
371 - cf. <CAKu1iLUaLuAZWqjNK4tfhhR=YaSt4MdQ+90ZY-JcEh_SeHyYCw@mail.gmail.com>
372 -
373 -
374 -* ab/fsck-unexpected-type (2021-09-07) 22 commits
375 - - fsck: report invalid object type-path combinations
376 - - fsck: report invalid types recorded in objects
377 - - object-store.h: move read_loose_object() below 'struct object_info'
378 - - fsck: don't hard die on invalid object types
379 - - object-file.c: use "enum" return type for unpack_loose_header()
380 - - object-file.c: return -2 on "header too long" in unpack_loose_header()
381 - - object-file.c: return -1, not "status" from unpack_loose_header()
382 - - object-file.c: guard against future bugs in loose_object_info()
383 - - object-file.c: stop dying in parse_loose_header()
384 - - object-file.c: split up ternary in parse_loose_header()
385 - - object-file.c: simplify unpack_loose_short_header()
386 - - object-file.c: add missing braces to loose_object_info()
387 - - object-file.c: make parse_loose_header_extended() public
388 - - object-file.c: don't set "typep" when returning non-zero
389 - - cache.h: move object functions to object-store.h
390 - - cat-file tests: test for current --allow-unknown-type behavior
391 - - cat-file tests: add corrupt loose object test
392 - - rev-list tests: test for behavior with invalid object types
393 - - cat-file tests: test that --allow-unknown-type isn't on by default
394 - - cat-file tests: test for missing object with -t and -s
395 - - fsck tests: add test for fsck-ing an unknown type
396 - - fsck tests: refactor one test to use a sub-repo
397 -
398 - "git fsck" has been taught to report mismatch between expected and
399 - actual types of an object better.
400 -
401 - Needs review.
402 -
403 ---------------------------------------------------
404 -[Cooking]
560
561 * en/zdiff3 (2021-09-12) 2 commits
562 - update documentation for new zdiff3 conflictStyle
@@ -418,8 +573,11 @@ Release tarballs are available at:
573 Fix "git stash" corner case where the tentative change involves
574 changing a directory to a file (or vice versa).
575
576 + Will merge to 'next'.
577 +
578
579 * js/pull-release-packs-before-fetching (2021-09-08) 2 commits
580 + (merged to 'next' on 2021-09-12 at 05cdcab392)
581 + pull: release packs before fetching
582 + commit-graph: when closing the graph, also release the slab
583 (this branch is used by js/run-command-close-packs.)
@@ -428,22 +586,25 @@ Release tarballs are available at:
586 packfiles before spawning "git fetch" to help auto-gc that may be
587 invoked by it.
588
589 + Will merge to 'master'.
590 +
591
592 * ab/http-drop-old-curl-plus (2021-09-13) 9 commits
433 - - http: don't hardcode the value of CURL_SOCKOPT_OK
434 - - http: centralize the accounting of libcurl dependencies
435 - - http: correct curl version check for CURLOPT_PINNEDPUBLICKEY
436 - - http: correct version check for CURL_HTTP_VERSION_2
437 - - http: drop support for curl < 7.18.0 (again)
438 - - Makefile: drop support for curl < 7.9.8 (again)
439 - - INSTALL: mention that we need libcurl 7.19.4 or newer to build
440 - - INSTALL: reword and copy-edit the "libcurl" section
441 - - INSTALL: don't mention the "curl" executable at all
593 + (merged to 'next' on 2021-09-15 at 16aaab36f1)
594 + + http: don't hardcode the value of CURL_SOCKOPT_OK
595 + + http: centralize the accounting of libcurl dependencies
596 + + http: correct curl version check for CURLOPT_PINNEDPUBLICKEY
597 + + http: correct version check for CURL_HTTP_VERSION_2
598 + + http: drop support for curl < 7.18.0 (again)
599 + + Makefile: drop support for curl < 7.9.8 (again)
600 + + INSTALL: mention that we need libcurl 7.19.4 or newer to build
601 + + INSTALL: reword and copy-edit the "libcurl" section
602 + + INSTALL: don't mention the "curl" executable at all
603
604 Conditional compilation around versions of libcURL has been
605 straightened out.
606
446 - Will merge to 'next'.
607 + Will merge to 'master'.
608
609
610 * ds/mergies-with-sparse-index (2021-09-09) 6 commits
@@ -486,12 +647,16 @@ Release tarballs are available at:
647 More code paths that uses the hack to add submodule's object
648 database to the set of alternate object store have been cleaned up.
649
650 + Will merge to 'next'.
651 +
652
653 * jx/ci-l10n (2021-09-09) 1 commit
654 - ci: new github-action for git-l10n code review
655
656 CI help for l10n.
657
658 + Will merge to 'next'.
659 +
660
661 * jk/t5562-racefix (2021-09-09) 1 commit
662 (merged to 'next' on 2021-09-12 at 22d4bfa14b)
@@ -523,15 +688,10 @@ Release tarballs are available at:
688
689
690 * rs/use-xopen-in-index-pack (2021-09-10) 1 commit
526 - - index-pack: use xopen in init_thread
527 -
528 -
529 -* bs/install-strip (2021-09-05) 1 commit
530 - (merged to 'next' on 2021-09-08 at 40cfa71c8d)
531 - + make: add INSTALL_STRIP option variable
691 + (merged to 'next' on 2021-09-16 at 186eaaae56)
692 + + index-pack: use xopen in init_thread
693
533 - "make INSTALL_STRIP=-s install" allows the installation step to use
534 - "install -s" to strip the binaries as they get installed.
694 + Code clean-up.
695
696 Will merge to 'master'.
697
@@ -548,7 +708,7 @@ Release tarballs are available at:
708 Will merge to 'master'.
709
710
551 -* js/scalar (2021-09-08) 15 commits
711 +* js/scalar (2021-09-14) 15 commits
712 - scalar: accept -C and -c options before the subcommand
713 - scalar: implement the `version` command
714 - scalar: implement the `delete` command
@@ -568,7 +728,9 @@ Release tarballs are available at:
728 Add pieces from "scalar" to contrib/.
729
730
571 -* ps/update-ref-batch-flush (2021-09-03) 1 commit
731 +* ps/update-ref-batch-flush (2021-09-15) 2 commits
732 + (merged to 'next' on 2021-09-15 at 39a69141e3)
733 + + t1400: avoid SIGPIPE race condition on fifo
734 (merged to 'next' on 2021-09-10 at 4ae19a5f34)
735 + update-ref: fix streaming of status updates
736
@@ -578,24 +740,6 @@ Release tarballs are available at:
740 Will merge to 'master'.
741
742
581 -* ab/no-more-check-bindir (2021-09-07) 1 commit
582 - (merged to 'next' on 2021-09-08 at 4fddb3864f)
583 - + Makefile: remove the check_bindir script
584 -
585 - Build simplification.
586 -
587 - Will merge to 'master'.
588 -
589 -
590 -* ab/send-email-config-fix (2021-09-07) 1 commit
591 - (merged to 'next' on 2021-09-08 at c2000e9689)
592 - + send-email: fix a "first config key wins" regression in v2.33.0
593 -
594 - Regression fix.
595 -
596 - Will merge to 'master'.
597 -
598 -
743 * ab/tr2-leaks-and-fixes (2021-09-07) 6 commits
744 (merged to 'next' on 2021-09-10 at 14f0dd5580)
745 + tr2: log N parent process names on Linux
@@ -610,43 +754,6 @@ Release tarballs are available at:
754 Will merge to 'master'.
755
756
613 -* bs/doc-bugreport-outdir (2021-09-07) 1 commit
614 - (merged to 'next' on 2021-09-08 at 5ea3df204d)
615 - + Documentation: fix default directory of git bugreport -o
616 -
617 - Docfix.
618 -
619 - Will merge to 'master'.
620 -
621 -
622 -* jc/prefix-filename-allocates (2021-09-07) 1 commit
623 - (merged to 'next' on 2021-09-10 at a5221ea92e)
624 - + hash-object: prefix_filename() returns allocated memory these days
625 -
626 - Leakfix.
627 -
628 - Will merge to 'master'.
629 -
630 -
631 -* rs/range-diff-avoid-segfault-with-I (2021-09-07) 1 commit
632 - (merged to 'next' on 2021-09-10 at e8bac5f9ea)
633 - + range-diff: avoid segfault with -I
634 -
635 - "git range-diff -I... <range> <range>" segfaulted, which has been
636 - corrected.
637 -
638 - Will merge to 'master'.
639 -
640 -
641 -* so/diff-index-regression-fix (2021-09-07) 1 commit
642 - (merged to 'next' on 2021-09-08 at ca17912ed3)
643 - + diff-index: restore -c/--cc options handling
644 -
645 - Recent "diff -m" changes broke "gitk", which has been corrected.
646 -
647 - Will merge to 'master'.
648 -
649 -
757 * tb/pack-finalize-ordering (2021-09-09) 9 commits
758 (merged to 'next' on 2021-09-10 at 7b39c39e31)
759 + pack-objects: rename .idx files into place after .bitmap files
@@ -667,20 +774,8 @@ Release tarballs are available at:
774 Will merge to 'master'.
775
776
670 -* ab/reverse-midx-optim (2021-09-07) 1 commit
671 - (merged to 'next' on 2021-09-08 at 1972c5931b)
672 - + pack-write: skip *.rev work when not writing *.rev
673 -
674 - The code that optionally creates the *.rev reverse index file has
675 - been optimized to avoid needless computation when it is not writing
676 - the file out.
677 -
678 - Will merge to 'master'.
679 -
680 -
681 -* ab/sanitize-leak-ci (2021-09-07) 3 commits
777 +* ab/sanitize-leak-ci (2021-09-16) 2 commits
778 - tests: add a test mode for SANITIZE=leak, run it in CI
683 - - CI: refactor "if" to "case" statement
779 - Makefile: add SANITIZE=leak flag to GIT-BUILD-OPTIONS
780
781 CI learns to run the leak sanitizer builds.
@@ -688,17 +783,6 @@ Release tarballs are available at:
783 Will merge to 'next'?
784
785
691 -* jc/trivial-threeway-binary-merge (2021-09-05) 1 commit
692 - (merged to 'next' on 2021-09-08 at d6ba0735d8)
693 - + apply: resolve trivial merge without hitting ll-merge with "--3way"
694 -
695 - The "git apply -3" code path learned not to bother the lower level
696 - merge machinery when the three-way merge can be trivially resolved
697 - without the content level merge.
698 -
699 - Will merge to 'master'.
700 -
701 -
786 * ms/customizable-ident-expansion (2021-09-01) 1 commit
787 - keyword expansion: make "$Id$" string configurable
788
@@ -706,18 +790,6 @@ Release tarballs are available at:
790 used as an in-blob placeholder for keyword expansion.
791
792
709 -* pb/test-use-user-env (2021-09-07) 3 commits
710 - (merged to 'next' on 2021-09-08 at 6fa5d96723)
711 - + test-lib-functions: keep user's debugger config files and TERM in 'debug'
712 - + test-lib-functions: optionally keep HOME, TERM and SHELL in 'test_pause'
713 - + test-lib-functions: use 'TEST_SHELL_PATH' in 'test_pause'
714 -
715 - Teach "test_pause" and "debug" helpers to allow using the HOME and
716 - TERM environment variables the user usually uses.
717 -
718 - Will merge to 'master'.
719 -
720 -
793 * js/retire-preserve-merges (2021-09-07) 11 commits
794 (merged to 'next' on 2021-09-10 at f645ffd7a3)
795 + sequencer: restrict scope of a formerly public function
@@ -738,16 +810,17 @@ Release tarballs are available at:
810
811
812 * mr/bisect-in-c-4 (2021-09-13) 6 commits
741 - - bisect--helper: retire `--bisect-next-check` subcommand
742 - - bisect--helper: reimplement `bisect_run` shell function in C
743 - - bisect--helper: reimplement `bisect_visualize()` shell function in C
744 - - run-command: make `exists_in_PATH()` non-static
745 - - t6030-bisect-porcelain: add test for bisect visualize
746 - - t6030-bisect-porcelain: add tests to control bisect run exit cases
813 + (merged to 'next' on 2021-09-15 at 2af7f048d4)
814 + + bisect--helper: retire `--bisect-next-check` subcommand
815 + + bisect--helper: reimplement `bisect_run` shell function in C
816 + + bisect--helper: reimplement `bisect_visualize()` shell function in C
817 + + run-command: make `exists_in_PATH()` non-static
818 + + t6030-bisect-porcelain: add test for bisect visualize
819 + + t6030-bisect-porcelain: add tests to control bisect run exit cases
820
821 Rewrite of "git bisect" in C continues.
822
750 - Will merge to 'next'.
823 + Will merge to 'master'.
824
825
826 * en/remerge-diff (2021-08-31) 7 commits
@@ -763,8 +836,6 @@ Release tarballs are available at:
836 used to show the difference between mechanical (and possibly
837 conflicted) merge results and the recorded resolution.
838
766 - What's the status of this one?
767 -
839
840 * sg/test-split-index-fix (2021-09-07) 7 commits
841 - read-cache: fix GIT_TEST_SPLIT_INDEX
@@ -778,6 +849,8 @@ Release tarballs are available at:
849
850 Test updates.
851
852 + Will merge to 'next'?
853 +
854
855 * ab/refs-errno-cleanup (2021-08-25) 4 commits
856 - refs: make errno output explicit for refs_resolve_ref_unsafe
@@ -1115,6 +1188,7 @@ Release tarballs are available at:
1188 + transport: use designated initializers
1189 + transport: rename "fetch" in transport_vtable to "fetch_refs"
1190 + serve: mark has_capability() as static
1191 + (this branch is used by jk/reduce-malloc-in-v2-servers.)
1192
1193 Code clean-up around "git serve".
1194
@@ -1170,6 +1244,8 @@ Release tarballs are available at:
1244 The "reftable" backend for the refs API, without integrating into
1245 the refs subsystem.
1246
1247 + Will merge to 'next'?
1248 +
1249
1250 * ab/refs-files-cleanup (2021-08-25) 13 commits
1251 - refs/files: remove unused "errno != ENOTDIR" condition
@@ -1189,6 +1265,8 @@ Release tarballs are available at:
1265
1266 Continued work on top of the hn/refs-errno-cleanup topic.
1267
1268 + Will merge to 'next'?
1269 +
1270
1271 * hn/refs-errno-cleanup (2021-08-25) 4 commits
1272 - refs: make errno output explicit for read_raw_ref_fn
@@ -1200,62 +1278,74 @@ Release tarballs are available at:
1278 Futz with the way 'errno' is relied on in the refs API to carry the
1279 failure modes up the callchain.
1280
1281 + Will merge to 'next'?
1282 +
1283 --------------------------------------------------
1284 [Discarded]
1285
1206 -* np/blame-ignore-revs-file-may-be-optional (2021-08-09) 1 commit
1207 - . blame: add config `blame.ignoreRevsFileIsOptional`
1208 -
1209 - When the file named by blame.ignoreRevsFile configuration variable
1210 - does not exist, it causes "git blame" to die. Sometimes, it is
1211 - useful if the files named by configuration variables can be made
1212 - optional (it would allow ~/.gitconfig to give a filename, and make
1213 - it effective only in repositories that have a file with that name).
1214 -
1215 - This uses an extra variable that marks that the variable is
1216 - optional. Yet another alternative is being discussed to define
1217 - syntax for "optional" filename values, so that the same mechanism
1218 - can be used for not just blame.ignoreRevsFile but other filenames.
1219 -
1220 - Queued just as a reminder of the theme.
1221 -
1222 -
1223 -* ab/test-tool-cache-cleanup (2021-08-24) 4 commits
1224 - . read-cache perf: add a perf test for refresh_index()
1225 - . test-tool: migrate read-cache-again to parse_options()
1226 - . test-tool: migrate read-cache-perf to parse_options()
1227 - . test-tool: split up test-tool read-cache
1228 -
1229 - Test code shuffling.
1230 -
1231 - Discarded.
1232 - cf. <87tuj7xhqo.fsf@evledraar.gmail.com>
1233 -
1234 - * ow/clone-bare-origin (2021-08-03) 1 commit
1235 - . clone: Allow combining --bare and --origin
1286 +* ao/p4-avoid-decoding (2021-04-12) 2 commits
1287 + . git-p4: do not decode data from perforce by default
1288 + . git-p4: avoid decoding more data from perforce
1289
1237 - "git clone" did not like to take "--bare" and "--origin=X" at the
1238 - same time; loosen the restriction.
1290 + "git p4" in Python-2 days used to accept a lot more kinds of data
1291 + from Perforce server as uninterrupted byte sequence, but after
1292 + switching to Python-3, too many things are expected to be in UTF-8,
1293 + which broke traditional use cases.
1294
1240 - cf. <20210802174944.53745-1-oystwa@gmail.com>
1295 + Have been stalled for too long.
1296 + cf. <20210504220153.1d9f0cb2@ado-tr>
1297
1298
1243 -* jk/http-backend-handle-proto-header (2021-09-09) 1 commit
1244 - . http-backend: handle HTTP_GIT_PROTOCOL CGI variable
1299 +* tv/p4-fallback-encoding (2021-04-30) 1 commit
1300 + . git-p4: git-p4.fallbackEncoding to specify non UTF-8 charset
1301
1246 - Taking advantage of the CGI interface, http-backend has been
1247 - updated to enable protocol v2 automatically when the other side
1248 - asks for it.
1302 + "git p4" learns the fallbackEncoding configuration variable to
1303 + safely accept changeset descriptions that aren't written in UTF-8.
1304
1250 - Discarded.
1251 - The jk/http-server-protocol-versions topic supersedes this.
1305 + Have been stalled for too long.
1306 + cf. <CAKu1iLUaLuAZWqjNK4tfhhR=YaSt4MdQ+90ZY-JcEh_SeHyYCw@mail.gmail.com>
1307
1308
1254 -* kr/doc-webserver-config-for-v2 (2021-09-07) 1 commit
1255 - . Docs: web server must setenv GIT_PROTOCOL for v2
1309 +* jh/builtin-fsmonitor (2021-09-03) 37 commits
1310 + . fixup! fsmonitor--daemon: implement handle_client callback
1311 + . SQUASH??? https://github.com/git/git/runs/3438543601?check_suite_focus=true#step:5:136
1312 + . BANDAID: sparse fixes
1313 + . t7527: test FS event reporing on MacOS WRT case and Unicode
1314 + . fsmonitor: handle shortname for .git
1315 + . t7527: test status with untracked-cache and fsmonitor--daemon
1316 + . fsmonitor: force update index after large responses
1317 + . fsmonitor: enhance existing comments
1318 + . fsmonitor--daemon: use a cookie file to sync with file system
1319 + . fsmonitor--daemon: periodically truncate list of modified files
1320 + . t7527: create test for fsmonitor--daemon
1321 + . t/perf/p7519: add fsmonitor--daemon test cases
1322 + . t/perf: avoid copying builtin fsmonitor files into test repo
1323 + . t/perf/p7519: speed up test using "test-tool touch"
1324 + . t/helper/test-touch: add helper to touch a series of files
1325 + . fsmonitor--daemon: implement handle_client callback
1326 + . fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS
1327 + . fsmonitor-fs-listen-macos: add macos header files for FSEvent
1328 + . fsmonitor-fs-listen-win32: implement FSMonitor backend on Windows
1329 + . fsmonitor--daemon: create token-based changed path cache
1330 + . fsmonitor--daemon: define token-ids
1331 + . fsmonitor--daemon: add pathname classification
1332 + . fsmonitor: do not try to operate on bare repos
1333 + . fsmonitor--daemon: implement 'start' command
1334 + . fsmonitor--daemon: implement 'run' command
1335 + . fsmonitor-fs-listen-macos: stub in backend for MacOS
1336 + . fsmonitor-fs-listen-win32: stub in backend for Windows
1337 + . t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon
1338 + . fsmonitor--daemon: implement 'stop' and 'status' commands
1339 + . fsmonitor--daemon: add a built-in fsmonitor daemon
1340 + . fsmonitor: use IPC to query the builtin FSMonitor daemon
1341 + . fsmonitor: config settings are repository-specific
1342 + . help: include fsmonitor--daemon feature flag in version info
1343 + . fsmonitor-ipc: create client routines for git-fsmonitor--daemon
1344 + . fsmonitor--daemon: update fsmonitor documentation
1345 + . fsmonitor--daemon: man page
1346 + . simple-ipc: preparations for supporting binary messages.
1347
1257 - Hints to set GIT_PROTOCOL environment in various CGI environments
1258 - are added to the documentation.
1348 + An attempt to write and ship with a watchman equivalent tailored
1349 + for our use.
1350
1260 - Discarded.
1261 - The jk/http-server-protocol-versions topic supersedes this.
1351 + Will be rerolled in pieces.