From: Junio C Hamano Date: Wed, 20 Aug 2014 23:16:06 +0000 (-0700) Subject: What's cooking (2014/08 #03) X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=80d818881a94501db59c54a9f5c87a855b022888;p=thirdparty%2Fgit.git What's cooking (2014/08 #03) --- diff --git a/whats-cooking.txt b/whats-cooking.txt index 796aa1b38b..40dcd37563 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,19 +1,21 @@ To: git@vger.kernel.org Bcc: lwn@lwn.net -Subject: What's cooking in git.git (Aug 2014, #02; Fri, 8) -X-master-at: f82887f29010e1ec88ec1930a99ddc56b6438452 -X-next-at: edb03e5a9b9b63d0864557f99f339b2b5f3a9e4e +Subject: What's cooking in git.git (Aug 2014, #03; Wed, 20) +X-master-at: 6c4ab27f2378ce67940b4496365043119d7ffff2 +X-next-at: 9eef2c89753895da807c936ff1ba3a255c8370c9 -What's cooking in git.git (Aug 2014, #02; Fri, 8) +What's cooking in git.git (Aug 2014, #03; Wed, 20) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are only in 'pu' (proposed updates) while commits prefixed with '+' are in 'next'. -The second release candidate snapshot is out. Hopefully after a -week of a calm pre-release "bugfix-only" period, we can do the 2.1 -final late next week. +A few fixes for regressions have been posted since 2.1 was tagged, +which I'd like to address before moving any topic to 'master', +rewinding 'next', or doing anything for the 2.2 cycle. Hopefully by +the end of this week 'next' will be rewound and rebuilt and then we +can start taking patches for new topics in earnest from that point. You can find the changes described here in the integration branches of the repositories listed at @@ -21,139 +23,217 @@ of the repositories listed at http://git-blame.blogspot.com/p/git-public-repositories.html -------------------------------------------------- -[Graduated to "master"] +[New Topics] -* ta/doc-config (2014-07-30) 1 commit - (merged to 'next' on 2014-07-31 at ec577fa) - + add documentation for writing config files +* br/http-init-fix (2014-08-18) 2 commits + - http: style fixes for curl_multi_init error check + - http.c: die if curl_*_init fails + Needs S-o-b from peff for the topmost one. -* tf/maint-doc-push (2014-07-31) 1 commit - (merged to 'next' on 2014-07-31 at 6a8ef70) - + git-push: fix link in man page --------------------------------------------------- -[New Topics] +* br/imap-send-simplify-tunnel-child-process (2014-08-20) 2 commits + - imap-send.c: imap_folder -> imap_server_conf.folder + - git-imap-send: simplify tunnel construction -* tf/imap-send-create (2014-08-01) 3 commits - - SQUASH??? varargs form of issue-imap-cmd is no longer used - - imap-send: create target mailbox if it is missing - - imap-send: clarify CRAM-MD5 vs LOGIN documentation + Will merge to 'next'. - Will merge to 'next' after dealing with the SQUASH??? fix-up. +* jc/config-mak-document-darwin-vs-macosx (2014-08-15) 1 commit + - config.mak.uname: add hint on uname_R for MacOS X + (this branch uses km/no-apple-common-crypto-on-darwin-8-and-below.) -* bc/archive-pax-header-mode (2014-08-04) 1 commit - - archive: honor tar.umask even for pax headers + Will merge to 'next'. - Implementations of "tar" that do not understand an extended pax - header would extract the contents of it in a regular file; make - sure the permission bits of this file follows the same tar.umask - configuration setting. + +* jk/fix-profile-feedback-build (2014-08-19) 1 commit + - Makefile: make perf tests optional for profile build + + Fix profile-feedback build broken in 2.1 for tarball releases. Will merge to 'next'. -* bc/imap-send-doc (2014-08-05) 1 commit - - imap-send doc: omit confusing "to use imap-send" modifier +* jk/pack-shallow-always-without-bitmap (2014-08-12) 1 commit + - pack-objects: turn off bitmaps when we see --shallow lines + + Reachability bitmaps do not work with shallow operations. Will merge to 'next'. -* jc/apply-ws-prefix (2014-08-07) 3 commits - - apply: omit ws check for excluded paths - - apply: hoist use_patch() helper for path exclusion up - - apply: use the right attribute for paths in non-Git patches +* jn/header-dependencies (2014-08-10) 1 commit + - Update hard-coded header dependencies + + Needs further discussions on the list. - Applying a patch not generated by Git in a subdirectory used to - check the whitespace breakage using the attributes for incorrect - paths. Also whitespace checks were performed even for paths - excluded via "git apply --exclude=" mechanism. + +* jn/unpack-trees-checkout-m-carry-deletion (2014-08-13) 4 commits + - SQUASH??? + - checkout -m: attempt merge when deletion of path was staged + - unpack-trees: use 'cuddled' style for if-else cascade + - unpack-trees: simplify 'all other failures' case + + Needs tests; perhaps squashing in the topmost "SQUASH???" is enough. + + +* km/no-apple-common-crypto-on-darwin-8-and-below (2014-08-15) 1 commit + - config.mak.uname: set NO_APPLE_COMMON_CRYPTO on older systems + (this branch is used by jc/config-mak-document-darwin-vs-macosx.) + + Build automation for older versions of MacOS X. Will merge to 'next'. -* jk/command-line-config-empty-string (2014-08-05) 1 commit - - config: teach "git -c" to recognize an empty string +* nd/large-blobs (2014-08-18) 5 commits + - diff: shortcut for diff'ing two binary SHA-1 objects + - diff --stat: mark any file larger than core.bigfilethreshold binary + - diff.c: allow to pass more flags to diff_populate_filespec + - sha1_file.c: do not die failing to malloc in unpack_compressed_entry + - wrapper.c: introduce gentle xmallocz that does not die() + + Will merge to 'next'. + + +* nd/mv-code-cleaning (2014-08-11) 9 commits + - SQUASH??? + - mv: no SP between function name and the first opening parenthese + - mv: combine two if(s) + - mv: unindent one level for directory move code + - mv: move index search code out + - mv: remove an "if" that's always true + - mv: split submodule move preparation code out + - mv: flatten error handling code block + - mv: mark strings for translations + + Needs rerolling to account for the topmost "SQUASH???" simplification. - "git -c section.var command" and "git -c section.var= command" - should pass the configuration differently (the former should be - a boolean true, the latter should be an empty string). + +* nd/strbuf-utf8-replace (2014-08-11) 1 commit + - utf8.c: fix strbuf_utf8_replace() consuming data beyond input string Will merge to 'next'. -* jk/pack-bitmap (2014-08-04) 1 commit - - pack-bitmap: do not use gcc packed attribute +* rr/mergetool-temporary-filename-tweak (2014-08-19) 1 commit + - Allow the user to change the temporary file name for mergetool + + Needs rerolling (new paragraph in doc seems to be in a wrong place) + + +* rs/clean-menu-item-defn (2014-08-18) 1 commit + - clean: use f(void) instead of f() to declare a pointer to a function without arguments Will merge to 'next'. -* jk/pretty-empty-format (2014-07-30) 3 commits - - pretty: make empty userformats truly empty - - pretty: treat "--format=" as an empty userformat - - revision: drop useless string offset when parsing "--pretty" +* rs/inline-compat-path-macros (2014-08-18) 1 commit + - turn path macros into inline function - "git log --pretty/format=" with an empty format string did not mean - the more obvious "No output whatsoever" but "Use default format", - which was counterintuitive. + Will merge to 'next'. + + +* rs/refresh-beyond-symlink (2014-08-10) 1 commit + - read-cache: check for leading symlinks when refreshing index + + "git add x" where x that used to be a directory has become a + symbolic link to a directory misbehaved. Will merge to 'next'. -* la/init-doc (2014-08-08) 7 commits - - Documentation: git-init: flesh out example - - Documentation: git-init: template directory: reword and cross-reference - - Documentation: git-init: reword parenthetical statements - - Documentation: git-init: --separate-git-dir: clarify - - Documentation: git-init: template directory: reword - - Documentation: git-init: list items facelift - - Documentation: git-init: typographical fixes +* sb/blame-msg-i18n (2014-08-12) 1 commit + - builtin/blame.c: add translation to warning about failed revision walk Will merge to 'next'. -* lf/bundle-exclusion (2014-08-07) 1 commit - - bundle: fix exclusion of annotated tags +* sb/plug-leaks (2014-08-10) 2 commits + - clone.c: don't leak memory in cmd_clone + - remote.c: don't leak the base branch name in format_tracking_info Will merge to 'next'. -* mm/log-branch-desc-plug-leak (2014-08-07) 1 commit - - builtin/log.c: fix minor memory leak +* sb/prepare-revision-walk-error-check (2014-08-12) 1 commit + - prepare_revision_walk(): check for return value in all places Will merge to 'next'. -* ta/config-set-1 (2014-08-07) 8 commits - - add tests for `git_config_get_string_const()` - - add a test for semantic errors in config files - - rewrite git_config() to use the config-set API - - config: add `git_die_config()` to the config-set API - - change `git_config()` return value to void - - add line number and file name info to `config_set` - - config.c: fix accuracy of line number in errors - - config.c: mark error and warnings strings for translation - (this branch is used by ta/config-set-2; uses ta/config-set.) +* sb/unpack-trees-dead-code-removal (2014-08-12) 2 commits + - SQUASH??? + - unpack-tree.c: remove dead code + Will discard (jn/unpack-trees-checkout-m-carry-deletion should do the same). -* ta/config-set-2 (2014-08-07) 11 commits - - branch.c: replace `git_config()` with `git_config_get_string() - - alias.c: replace `git_config()` with `git_config_get_string()` - - imap-send.c: replace `git_config()` with `git_config_get_*()` family - - pager.c: replace `git_config()` with `git_config_get_value()` - - builtin/gc.c: replace `git_config()` with `git_config_get_*()` family - - rerere.c: replace `git_config()` with `git_config_get_*()` family - - fetchpack.c: replace `git_config()` with `git_config_get_*()` family - - archive.c: replace `git_config()` with `git_config_get_bool()` family - - read-cache.c: replace `git_config()` with `git_config_get_*()` family - - http-backend.c: replace `git_config()` with `git_config_get_bool()` family - - daemon.c: replace `git_config()` with `git_config_get_bool()` family - (this branch uses ta/config-set and ta/config-set-1.) +* so/rebase-doc (2014-08-12) 1 commit + - Documentation/git-rebase.txt: -f forces a rebase that would otherwise be a no-op -* ta/pretty-parse-config (2014-08-04) 1 commit - - pretty.c: make git_pretty_formats_config return -1 on git_config_string failure + May need description on what makes various modes of operation to + decide that the request can become a "no-op". + + Will merge to 'next'. + + +* sp/stream-clean-filter (2014-08-12) 2 commits + - convert: Stream from fd to required clean filter instead of mmap + - convert: Refactor would_convert_to_git() to single arg 'path' + + Will be rerolled. + + +* ta/config-add-to-empty-or-true-fix (2014-08-18) 1 commit + - make config --add behave correctly for empty and NULL values + + Will be rerolled. + + +* jc/push-cert (2014-08-19) 18 commits + - signed push: final protocol update + - send-pack: send feature request on push-cert packet + - receive-pack: GPG-validate push certificates + - the beginning of the signed push + - pack-protocol doc: typofix for PKT-LINE + - gpg-interface: move parse_signature() to where it should be + - gpg-interface: move parse_gpg_output() to where it should be + - send-pack: clarify that cmds_sent is a boolean + - send-pack: refactor inspecting and resetting status and sending commands + - send-pack: rename "new_refs" to "need_pack_data" + - send-pack: factor out capability string generation + - send-pack: always send capabilities + - send-pack: refactor decision to send update per ref + - send-pack: move REF_STATUS_REJECT_NODELETE logic a bit higher + - receive-pack: factor out queueing of command + - receive-pack: do not reuse old_sha1[] to other things + - receive-pack: parse feature request a bit earlier + - receive-pack: do not overallocate command structure + + Allow "git push" request to be signed, so that it can be verified + audited, using the GPG signature of the person who pushed, that the + tips of branches at a public repository really point the commits + the pusher wanted to, without having to "trust" the server. + + Needs further discussion and then a reroll. + + Replay attack prevention needs to be tightened and also need to fix + a few minor typos. + +* jk/diff-tree-t-fix (2014-08-20) 1 commit + - intersect_paths: respect mode in git's tree-sort + + Fix (rarely used) "git diff-tree -t" regression in 2.0. + + Will merge to 'next'. + + +* rs/child-process-init (2014-08-20) 4 commits + - run-command: inline prepare_run_command_v_opt() + - run-command: call run_command_v_opt_cd_env() instead of duplicating it + - run-command: introduce child_process_init() + - run-command: introduce CHILD_PROCESS_INIT Will merge to 'next'. @@ -375,6 +455,136 @@ of the repositories listed at -------------------------------------------------- [Cooking] +* tf/imap-send-create (2014-08-01) 3 commits + - SQUASH??? varargs form of issue-imap-cmd is no longer used + - imap-send: create target mailbox if it is missing + - imap-send: clarify CRAM-MD5 vs LOGIN documentation + + Will merge to 'next' after dealing with the SQUASH??? fix-up. + + +* bc/archive-pax-header-mode (2014-08-04) 1 commit + (merged to 'next' on 2014-08-13 at 9972bb2) + + archive: honor tar.umask even for pax headers + + Implementations of "tar" that do not understand an extended pax + header would extract the contents of it in a regular file; make + sure the permission bits of this file follows the same tar.umask + configuration setting. + + Will merge to 'master'. + + +* bc/imap-send-doc (2014-08-05) 1 commit + - imap-send doc: omit confusing "to use imap-send" modifier + + Will merge to 'next'. + + +* jc/apply-ws-prefix (2014-08-07) 3 commits + - apply: omit ws check for excluded paths + - apply: hoist use_patch() helper for path exclusion up + - apply: use the right attribute for paths in non-Git patches + + Applying a patch not generated by Git in a subdirectory used to + check the whitespace breakage using the attributes for incorrect + paths. Also whitespace checks were performed even for paths + excluded via "git apply --exclude=" mechanism. + + Will merge to 'next'. + + +* jk/command-line-config-empty-string (2014-08-05) 1 commit + - config: teach "git -c" to recognize an empty string + + "git -c section.var command" and "git -c section.var= command" + should pass the configuration differently (the former should be + a boolean true, the latter should be an empty string). + + Will merge to 'next'. + + +* jk/pack-bitmap (2014-08-04) 1 commit + - pack-bitmap: do not use gcc packed attribute + + Hold, waiting for Karsten's replacement. + + +* jk/pretty-empty-format (2014-07-30) 3 commits + (merged to 'next' on 2014-08-13 at 543bb4d) + + pretty: make empty userformats truly empty + + pretty: treat "--format=" as an empty userformat + + revision: drop useless string offset when parsing "--pretty" + + "git log --pretty/format=" with an empty format string did not mean + the more obvious "No output whatsoever" but "Use default format", + which was counterintuitive. + + Will merge to 'master'. + + +* la/init-doc (2014-08-08) 7 commits + - Documentation: git-init: flesh out example + - Documentation: git-init: template directory: reword and cross-reference + - Documentation: git-init: reword parenthetical statements + - Documentation: git-init: --separate-git-dir: clarify + - Documentation: git-init: template directory: reword + - Documentation: git-init: list items facelift + - Documentation: git-init: typographical fixes + + Will merge to 'next'. + + +* lf/bundle-exclusion (2014-08-07) 1 commit + - bundle: fix exclusion of annotated tags + + Will merge to 'next'. + + +* mm/log-branch-desc-plug-leak (2014-08-07) 1 commit + - builtin/log.c: fix minor memory leak + + Will merge to 'next'. + + +* ta/config-set-1 (2014-08-07) 8 commits + - add tests for `git_config_get_string_const()` + - add a test for semantic errors in config files + - rewrite git_config() to use the config-set API + - config: add `git_die_config()` to the config-set API + - change `git_config()` return value to void + - add line number and file name info to `config_set` + - config.c: fix accuracy of line number in errors + - config.c: mark error and warnings strings for translation + (this branch is used by ta/config-set-2; uses ta/config-set.) + + +* ta/config-set-2 (2014-08-13) 15 commits + - builtin/apply.c: replace `git_config()` with `git_config_get_string_const()` + - merge-recursive.c: replace `git_config()` with `git_config_get_int()` + - ll-merge.c: refactor `read_merge_config()` to use `git_config_string()` + - fast-import.c: replace `git_config()` with `git_config_get_*()` family + - branch.c: replace `git_config()` with `git_config_get_string() + - alias.c: replace `git_config()` with `git_config_get_string()` + - imap-send.c: replace `git_config()` with `git_config_get_*()` family + - pager.c: replace `git_config()` with `git_config_get_value()` + - builtin/gc.c: replace `git_config()` with `git_config_get_*()` family + - rerere.c: replace `git_config()` with `git_config_get_*()` family + - fetchpack.c: replace `git_config()` with `git_config_get_*()` family + - archive.c: replace `git_config()` with `git_config_get_bool()` family + - read-cache.c: replace `git_config()` with `git_config_get_*()` family + - http-backend.c: replace `git_config()` with `git_config_get_bool()` family + - daemon.c: replace `git_config()` with `git_config_get_bool()` family + (this branch uses ta/config-set and ta/config-set-1.) + + +* ta/pretty-parse-config (2014-08-04) 1 commit + (merged to 'next' on 2014-08-13 at 07396f4) + + pretty.c: make git_pretty_formats_config return -1 on git_config_string failure + + Will merge to 'master'. + + * jk/stash-list-p (2014-08-07) 1 commit - stash: default listing to working-tree diff @@ -386,12 +596,13 @@ of the repositories listed at * pr/remotes-in-hashmap (2014-07-30) 1 commit - - use a hashmap to make remotes faster + (merged to 'next' on 2014-08-13 at 850c14a) + + use a hashmap to make remotes faster Optimize remotes configuration look-up in a repository with very many remotes defined. - Will merge to 'next'. + Will merge to 'master'. * rs/ref-transaction-multi (2014-07-31) 5 commits @@ -427,9 +638,8 @@ of the repositories listed at - lockfile.c: store absolute path - lockfile.c: remove PATH_MAX limit in resolve_symlink() - lockfile.c: remove PATH_MAX limitation (except in resolve_symlink) - (this branch uses rs/strbuf-getcwd.) - Will merge to 'next'. + Will drop and ask Michael to possibly cooperate and merge with mh/lockfile. * mm/config-message-i18n (2014-08-01) 1 commit @@ -491,10 +701,12 @@ of the repositories listed at Update the way the "difftool --help" shows the help message that is shared with the "mergetool" to reduce one shell dependency. - Will merge to 'next'. + Will be rerolled. -* rs/strbuf-getcwd (2014-07-29) 10 commits +* rs/strbuf-getcwd (2014-08-18) 11 commits + (merged to 'next' on 2014-08-18 at 9eef2c8) + + fixup! setup: convert setup_git_directory_gently_1 et al. to strbuf (merged to 'next' on 2014-07-31 at 6edc3bc) + use strbuf_add_absolute_path() to add absolute paths + abspath: convert absolute_path() to strbuf @@ -506,7 +718,6 @@ of the repositories listed at + setup: convert setup_git_directory_gently_1 et al. to strbuf + unix-sockets: use strbuf_getcwd() + strbuf: add strbuf_getcwd() - (this branch is used by nd/lock-paths-absolute.) Will cook in 'next'. @@ -522,14 +733,15 @@ of the repositories listed at * ta/config-set (2014-07-29) 2 commits - - test-config: add tests for the config_set API - - add `config_set` API for caching config-like files + (merged to 'next' on 2014-08-13 at 99011c8) + + test-config: add tests for the config_set API + + add `config_set` API for caching config-like files (this branch is used by ta/config-set-1 and ta/config-set-2.) Add in-core caching layer to let us avoid reading the same configuration files number of times. - Will merge to 'next'. + Will merge to 'master'. * rs/ref-transaction-1 (2014-07-16) 20 commits @@ -609,23 +821,24 @@ of the repositories listed at rely on symbolic links and make sharing of objects and refs safer by making the borrowee and borrowers aware of each other. - Will cook in 'next'. + Will kick back to 'pu'. * nd/multiple-work-trees-1 (2014-07-29) 8 commits - - checkout --to: do not touch existing target directory - - checkout: prefix --to argument properly when cwd is moved - - environment.c: fix incorrect git_graft_file initialization - - checkout --to: fix dangling pointers in remove_junk() - - checkout: no auto-detach if the ref is already checked out - - prune --repos: fix uninitialized access - - checkout: no need to call check_linked_checkouts if head_ref is NULL - - gitrepository-layout.txt: s/ignored/ignored if/ + (merged to 'next' on 2014-08-13 at 4f3a585) + + checkout --to: do not touch existing target directory + + checkout: prefix --to argument properly when cwd is moved + + environment.c: fix incorrect git_graft_file initialization + + checkout --to: fix dangling pointers in remove_junk() + + checkout: no auto-detach if the ref is already checked out + + prune --repos: fix uninitialized access + + checkout: no need to call check_linked_checkouts if head_ref is NULL + + gitrepository-layout.txt: s/ignored/ignored if/ (this branch uses nd/multiple-work-trees.) Continue polishing nd/multiple-work-trees topic in 'next'. - Will merge to 'next'. + Will kick back to 'pu'. * dt/cache-tree-repair (2014-07-14) 4 commits