What's cooking (2013/12 #05)

Junio C Hamano committed Dec 26, 2013 at 12:58 UTC e6211149217cead2b225776576380c3e71a98395
1 file changed +138 -124
whats-cooking.txt
+138 -124
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Dec 2013, #04; Tue, 17)
3 +Subject: What's cooking in git.git (Dec 2013, #05; Thu, 26)
4 X-master-at: 7794a680e63a2a11b73cb1194653662f2769a792
5 -X-next-at: 3e57c29e689448252d8f77d1a49492e7b4cdbfa4
5 +X-next-at: ce5f8720e5a64bacb433bf475a00b1be1182c612
6
7 -What's cooking in git.git (Dec 2013, #04; Tue, 17)
7 +What's cooking in git.git (Dec 2013, #05; Thu, 26)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -17,131 +17,127 @@ of the repositories listed at
17 http://git-blame.blogspot.com/p/git-public-repositories.html
18
19 --------------------------------------------------
20 -[Graduated to "master"]
20 +[New Topics]
21
22 -* bc/doc-merge-no-op-revert (2013-12-09) 1 commit
23 - (merged to 'next' on 2013-12-13 at 6e0ce64)
24 - + Documentation: document pitfalls with 3-way merge
22 +* bc/log-decoration (2013-12-20) 1 commit
23 + - log: properly handle decorations with chained tags
24
25 + "git log --decorate" did not handle a tag pointed by another tag
26 + nicely.
27
27 -* cc/starts-n-ends-with (2013-12-05) 4 commits
28 - (merged to 'next' on 2013-12-12 at 76ee567)
29 - + replace {pre,suf}fixcmp() with {starts,ends}_with()
30 - + strbuf: introduce starts_with() and ends_with()
31 - + builtin/remote: remove postfixcmp() and use suffixcmp() instead
32 - + environment: normalize use of prefixcmp() by removing " != 0"
33 - (this branch is used by cc/starts-n-ends-with-endgame.)
28 + Will merge to 'next'.
29
35 - Remove a few duplicate implementations of prefix/suffix comparison
36 - functions, and rename them to starts_with and ends_with.
30
31 +* jh/rlimit-nofile-fallback (2013-12-18) 1 commit
32 + - get_max_fd_limit(): fall back to OPEN_MAX upon getrlimit/sysconf failure
33
39 -* fc/trivial (2013-12-09) 4 commits
40 - (merged to 'next' on 2013-12-13 at eeead16)
41 - + remote: fix status with branch...rebase=preserve
42 - + fetch: add missing documentation
43 - + t: trivial whitespace cleanups
44 - + abspath: trivial style fix
34 + When we figure out how many file descriptors to allocate for
35 + keeping packfiles open, a system with non-working getrlimit() could
36 + cause us to die(), but because we make this call only to get a
37 + rough estimate of how many is available and we do not even attempt
38 + to use up all file descriptors available ourselves, it is nicer to
39 + fall back to a reasonable low value rather than dying.
40
41 + Will merge to 'next'.
42
47 -* jk/t5000-gzip-simplify (2013-12-04) 1 commit
48 - (merged to 'next' on 2013-12-09 at e9010f1)
49 - + t5000: simplify gzip prerequisite checks
43
51 - Test fix.
44 +* rt/bfg-ad-in-filter-branch-doc (2013-12-18) 1 commit
45 + - docs: add filter-branch notes on The BFG
46
47 + Will merge to 'next'.
48
54 -* jl/commit-v-strip-marker (2013-12-05) 1 commit
55 - (merged to 'next' on 2013-12-09 at 2b85e9e)
56 - + commit -v: strip diffs and submodule shortlogs from the commit message
49
58 - "git commit -v" appends the patch to the log message before
59 - editing, and then removed the patch when the editor returned
60 - control. However, the patch was not stripped correctly when the
61 - first modified path was a submodule.
50 +* sb/diff-orderfile-config (2013-12-18) 3 commits
51 + - diff: add diff.orderfile configuration variable
52 + - diff: let "git diff -O" read orderfile from any file and fail properly
53 + - t4056: add new tests for "git diff -O"
54
55 + Allow "git diff -O<file>" to be configured with a new configuration
56 + variable.
57
64 -* kb/doc-exclude-directory-semantics (2013-12-09) 1 commit
65 - (merged to 'next' on 2013-12-09 at e54b2ec)
66 - + gitignore.txt: clarify recursive nature of excluded directories
58 + Will merge to 'next'.
59
60
69 -* kn/gitweb-extra-branch-refs (2013-12-12) 4 commits
70 - (merged to 'next' on 2013-12-12 at ae75b02)
71 - + gitweb: Denote non-heads, non-remotes branches
72 - + gitweb: Add a feature for adding more branch refs
73 - + gitweb: Return 1 on validation success instead of passed input
74 - + gitweb: Move check-ref-format code into separate function
61 +* jc/graph-post-root-gap (2013-12-20) 1 commit
62 + - graph: give an extra gap after showing root commit
63
76 - Allow gitweb to be configured to show refs out of refs/heads/ as if
77 - they were branches.
64 + This was primarily a RFH ($gmane/239580).
65
66
80 -* mm/mv-file-to-no-such-dir-with-slash (2013-12-04) 1 commit
81 - (merged to 'next' on 2013-12-09 at f33bc0b)
82 - + mv: let 'git mv file no-such-dir/' error out
67 +* nd/daemon-informative-errors-typofix (2013-12-20) 1 commit
68 + - daemon: be strict at parsing parameters --[no-]informative-errors
69
70 + Will merge to 'next'.
71
85 -* nd/gettext-vsnprintf (2013-12-04) 1 commit
86 - (merged to 'next' on 2013-12-09 at e99106e)
87 - + gettext.c: detect the vsnprintf bug at runtime
72
73 +* tm/fetch-prune (2013-12-20) 2 commits
74 + - fetch --prune: run prune before fetching
75 + - fetch --prune: always print header url
76
90 -* nd/remove-opt-boolean (2013-12-09) 1 commit
91 - (merged to 'next' on 2013-12-13 at 26f46cc)
92 - + parse-options: remove OPT_BOOLEAN
77 + Fetching 'frotz' branch with "git fetch", while having
78 + 'frotz/nitfol' remote-tracking branch from an earlier fetch, would
79 + error out, primarily because the command has not been told to
80 + remove anything on our side. In such a case, "git fetch --prune"
81 + can be used to remove 'frotz/nitfol' to make room to fetch and
82 + store 'frotz' remote-tracking branch.
83
84 + Will merge to 'next'.
85
95 -* nd/transport-positive-depth-only (2013-12-06) 1 commit
96 - (merged to 'next' on 2013-12-12 at f953cb8)
97 - + clone,fetch: catch non positive --depth option value
86
99 - "git fetch --depth=0" was a no-op, and was silently
100 - ignored. Diagnose it as an error.
87 +* jk/oi-delta-base (2013-12-26) 2 commits
88 + - cat-file: provide %(deltabase) batch format
89 + - sha1_object_info_extended: provide delta base sha1s
90
91 + Teach "cat-file --batch" to show delta-base object name for a
92 + packed object that is represented as a delta.
93
103 -* tb/clone-ssh-with-colon-for-port (2013-12-09) 10 commits
104 - (merged to 'next' on 2013-12-12 at ae4ae39)
105 - + git_connect(): use common return point
106 - + connect.c: refactor url parsing
107 - + git_connect(): refactor the port handling for ssh
108 - + git fetch: support host:/~repo
109 - + t5500: add test cases for diag-url
110 - + git fetch-pack: add --diag-url
111 - + git_connect: factor out discovery of the protocol and its parts
112 - + git_connect: remove artificial limit of a remote command
113 - + t5601: add tests for ssh
114 - + t5601: remove clear_ssh, refactor setup_ssh_wrapper
94 + Will merge to 'next'.
95
116 - Be more careful when parsing remote repository URL given in the
117 - scp-style host:path notation.
96
97 +* jk/sha1write-void (2013-12-26) 1 commit
98 + - do not pretend sha1write returns errors
99
120 -* tr/send-email-ssl (2013-12-04) 3 commits
121 - (merged to 'next' on 2013-12-09 at facb859)
122 - + send-email: set SSL options through IO::Socket::SSL::set_client_defaults
123 - + send-email: --smtp-ssl-cert-path takes an argument
124 - + send-email: pass Debug to Net::SMTP::SSL::new
100 + Code clean-up.
101
126 - SSL-related options were not passed correctly to underlying socket
127 - layer in "git send-email".
102 + Will merge to 'next'.
103
129 ---------------------------------------------------
130 -[New Topics]
104
132 -* ap/path-max (2013-12-16) 1 commit
133 - - Prevent buffer overflows when path is too long
105 +* jl/submodule-recursive-checkout (2013-12-26) 5 commits
106 + - Teach checkout to recursively checkout submodules
107 + - submodule: teach unpack_trees() to update submodules
108 + - submodule: teach unpack_trees() to repopulate submodules
109 + - submodule: teach unpack_trees() to remove submodule contents
110 + - submodule: prepare for recursive checkout of submodules
111 +
112 +
113 +* mh/safe-create-leading-directories (2013-12-26) 5 commits
114 + - rename_ref(): fix a mkdir()/rmdir() race
115 + - safe_create_leading_directories(): fix a mkdir/rmdir race
116 + - safe_create_leading_directories(): add "slash" pointer
117 + - safe_create_leading_directories(): reduce scope of local variable
118 + - safe_create_leading_directories(): modernize format of "if" chaining
119 +
120 + Code clean-up and protection against concurrent write access to the
121 + ref namespace.
122
123 Will merge to 'next'.
124
125
138 -* mh/path-max (2013-12-17) 1 commit
139 - - prune-packed: use strbuf to avoid having to worry about PATH_MAX
126 +* nd/add-empty-fix (2013-12-26) 1 commit
127 + - add: don't complain when adding empty project root
128 +
129 + "git add -A" (no other arguments) in a totally empty working tree
130 + used to emit an error.
131
141 - This is my rewrite of Michael's patch to prune-packed (which still
142 - had a hardcoded PATH_MAX limitation) using strbuf. Tweaking of the
143 - other patch in the same series ($gmane/239386) for prune is left as
144 - an exercise to the readers ;-)
132 + Will merge to 'next'.
133 +
134 +
135 +* nd/commit-tree-constness (2013-12-26) 1 commit
136 + - commit.c: make "tree" a const pointer in commit_tree*()
137 +
138 + Code clean-up.
139 +
140 + Will merge to 'next'.
141
142 --------------------------------------------------
143 [Stalled]
@@ -173,8 +169,9 @@ of the repositories listed at
169 merged to 'pu' so far).
170
171
176 -* kb/fast-hashmap (2013-12-16) 17 commits
172 +* kb/fast-hashmap (2013-12-18) 18 commits
173 - hashmap.h: make sure map entries are tightly packed
174 + - hashmap.h: Use 'unsigned int' for hash-codes everywhere
175 (merged to 'next' on 2013-12-16 at bff99b1)
176 + Drop unnecessary #includes from test-hashmap
177 + Add test-hashmap to .gitignore
@@ -235,38 +232,6 @@ of the repositories listed at
232 this topic conflicts with.
233
234
238 -* jk/pack-bitmap (2013-11-18) 22 commits
239 - - compat/mingw.h: Fix the MinGW and msvc builds
240 - - pack-bitmap: implement optional name_hash cache
241 - - t/perf: add tests for pack bitmaps
242 - - t: add basic bitmap functionality tests
243 - - count-objects: recognize .bitmap in garbage-checking
244 - - repack: consider bitmaps when performing repacks
245 - - repack: handle optional files created by pack-objects
246 - - repack: turn exts array into array-of-struct
247 - - repack: stop using magic number for ARRAY_SIZE(exts)
248 - - pack-objects: implement bitmap writing
249 - - rev-list: add bitmap mode to speed up object lists
250 - - pack-objects: use bitmaps when packing objects
251 - - pack-bitmap: add support for bitmap indexes
252 - - documentation: add documentation for the bitmap format
253 - - ewah: compressed bitmap implementation
254 - - compat: add endianness helpers
255 - - sha1_file: export `git_open_noatime`
256 - - revision: allow setting custom limiter function
257 - - pack-objects: factor out name_hash
258 - - pack-objects: refactor the packing list
259 - - revindex: export new APIs
260 - + sha1write: make buffer const-correct
261 - (this branch is tangled with jk/name-pack-after-byte-representation.)
262 -
263 - Borrows the bitmap index into packfiles from JGit to speed up
264 - enumeration of objects involved in a commit range without having to
265 - fully traverse the history.
266 -
267 - A reroll forthcoming?
268 -
269 -
235 * mf/graph-show-root (2013-10-25) 1 commit
236 . graph.c: mark root commit differently
237
@@ -353,6 +318,53 @@ of the repositories listed at
318 --------------------------------------------------
319 [Cooking]
320
321 +* jk/pack-bitmap (2013-12-26) 23 commits
322 + - pack-bitmap: implement optional name_hash cache
323 + - t/perf: add tests for pack bitmaps
324 + - t: add basic bitmap functionality tests
325 + - count-objects: recognize .bitmap in garbage-checking
326 + - repack: consider bitmaps when performing repacks
327 + - repack: handle optional files created by pack-objects
328 + - repack: turn exts array into array-of-struct
329 + - repack: stop using magic number for ARRAY_SIZE(exts)
330 + - pack-objects: implement bitmap writing
331 + - rev-list: add bitmap mode to speed up object lists
332 + - pack-objects: use bitmaps when packing objects
333 + - pack-objects: split add_object_entry
334 + - pack-bitmap: add support for bitmap indexes
335 + - documentation: add documentation for the bitmap format
336 + - ewah: compressed bitmap implementation
337 + - compat/mingw.h: teach PRIx64 format to the MinGW and msvc builds
338 + - compat: add endianness helpers
339 + - sha1_file: export `git_open_noatime`
340 + - revision: allow setting custom limiter function
341 + - pack-objects: factor out name_hash
342 + - pack-objects: refactor the packing list
343 + - revindex: export new APIs
344 + + sha1write: make buffer const-correct
345 + (this branch is tangled with jk/name-pack-after-byte-representation.)
346 +
347 + Borrows the bitmap index into packfiles from JGit to speed up
348 + enumeration of objects involved in a commit range without having to
349 + fully traverse the history.
350 +
351 +
352 +* ap/path-max (2013-12-16) 1 commit
353 + - Prevent buffer overflows when path is too long
354 +
355 + Will merge to 'next'.
356 +
357 +
358 +* mh/path-max (2013-12-18) 2 commits
359 + - builtin/prune.c: use strbuf to avoid having to worry about PATH_MAX
360 + - prune-packed: use strbuf to avoid having to worry about PATH_MAX
361 +
362 + A few places where we relied on a fixed length buffer to hold
363 + pathnames in these two programs have been converted to use strbuf.
364 +
365 + Will merge to 'next'.
366 +
367 +
368 * nv/commit-gpgsign-config (2013-12-17) 3 commits
369 - test the commit.gpgsign config option
370 - commit-tree: add and document --no-gpg-sign
@@ -400,14 +412,16 @@ of the repositories listed at
412 Will hold.
413
414
403 -* fc/remote-helper-fixes (2013-12-09) 4 commits
415 +* fc/remote-helper-fixes (2013-12-26) 5 commits
416 + (merged to 'next' on 2013-12-26 at ce5f872)
417 + + remote-hg: test 'shared_path' in a moved clone
418 (merged to 'next' on 2013-12-17 at aa4dc07)
419 + remote-hg: add tests for special filenames
420 + remote-hg: fix 'shared path' path
421 + remote-helpers: add extra safety checks
422 + remote-hg: avoid buggy strftime()
423
410 - Expecting follow-up test additions.
424 + Will merge to 'master'.
425
426
427 * jk/cat-file-regression-fix (2013-12-12) 2 commits