From c29ffe023d16ff6341b32e953b463d0623fc0f01 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Mon, 22 Dec 2014 15:11:57 -0800 Subject: [PATCH] What's cooking (2014/12 #04) --- whats-cooking.txt | 990 +++++++++++++++++++++------------------------- 1 file changed, 459 insertions(+), 531 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index d87b7c87ae..9a714144ae 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,19 +1,20 @@ To: git@vger.kernel.org Bcc: lwn@lwn.net -Subject: What's cooking in git.git (Dec 2014, #03; Mon, 15) -X-master-at: 9abc44b681a669c67d071d858c8aad21f65a0956 -X-next-at: d6426a0ea3bc6be707b25a6817328703d4883659 +Subject: What's cooking in git.git (Dec 2014, #04; Mon, 22) +X-master-at: bbcefffcea9789e4a1a2023a1c778e2c07db77a7 +X-next-at: 0ad48deaa29372e974d108b05da375b40a954ec2 -What's cooking in git.git (Dec 2014, #03; Mon, 15) +What's cooking in git.git (Dec 2014, #04; Mon, 22) -------------------------------------------------- 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 'next' branch has been rewound and rebuilt on top of 2.2; I -expect this to be a short and light cycle that would not add too -many new things. +Quite a few topics have been merged to 'master' as the third batch +for this cycle, on top of the recent "case sensitive .Git" fix that +has been publicized very widely. The next release which is expected +to be a small one is taking shape. You can find the changes described here in the integration branches of the repositories listed at @@ -23,204 +24,447 @@ of the repositories listed at -------------------------------------------------- [Graduated to "master"] -* da/difftool-mergetool-simplify-reporting-status (2014-11-21) 5 commits - (merged to 'next' on 2014-12-04 at c3c329f) - + mergetools: stop setting $status in merge_cmd() - + mergetool: simplify conditionals - + difftool--helper: add explicit exit statement - + mergetool--lib: remove use of $status global - + mergetool--lib: remove no-op assignment to $status from setup_user_tool +* cc/interpret-trailers-more (2014-11-10) 4 commits + (merged to 'next' on 2014-12-15 at 77f6c6a) + + trailer: add test with an old style conflict block + + trailer: reuse ignore_non_trailer() to ignore conflict lines + + commit: make ignore_non_trailer() non static + + Merge branch 'jc/conflict-hint' into cc/interpret-trailers-more + (this branch uses jc/conflict-hint.) + + "git interpret-trailers" learned to properly handle the + "Conflicts:" block at the end. + + +* ch/new-gpg-drops-rfc-1991 (2014-12-12) 4 commits + (merged to 'next' on 2014-12-15 at 32d7d50) + + tests: squelch noise from GPG machinery set-up + + tests: replace binary GPG keyrings with ASCII-armored keys + + tests: skip RFC1991 tests for gnupg 2.1 + + tests: create gpg homedir on the fly + + Recent GPG changes the keyring format and drops support for RFC1991 + formatted signatures, breaking our existing tests. - Code simplification. +* dm/compat-s-ifmt-for-zos (2014-12-04) 1 commit + (merged to 'next' on 2014-12-15 at 0eb2fe6) + + compat: convert modes to use portable file type values -* jc/unpack-trees-plug-leak (2014-11-17) 1 commit - (merged to 'next' on 2014-12-04 at 9f1df30) - + unpack_trees: plug leakage of o->result + Long overdue departure from the assumption that S_IFMT is shared by + everybody made in 2005. -* jk/colors-fix (2014-11-20) 3 commits - (merged to 'next' on 2014-12-04 at 0d97d69) - + t4026: test "normal" color - + config: fix parsing of "git config --get-color some.key -1" - + docs: describe ANSI 256-color mode - (this branch is used by jk/colors.) +* dw/shell-basename-dashdash-before-stripping-leading-dash-from-login (2014-11-25) 1 commit + (merged to 'next' on 2014-12-15 at 42937b7) + + git-sh-setup.sh: use dashdash with basename call + + +* jc/conflict-hint (2014-10-28) 4 commits + (merged to 'next' on 2014-12-15 at b72475f) + + merge & sequencer: turn "Conflicts:" hint into a comment + + builtin/commit.c: extract ignore_non_trailer() helper function + + merge & sequencer: unify codepaths that write "Conflicts:" hint + + builtin/merge.c: drop a parameter that is never used + (this branch is used by cc/interpret-trailers-more.) + Unlike all the other hints given in the commit log editor, the list + of conflicted paths were appended at the end without commented out. -* jk/no-perl-tests (2014-11-18) 2 commits - (merged to 'next' on 2014-12-04 at f166620) - + t960[34]: mark cvsimport tests as requiring perl - + t0090: mark add-interactive test with PERL prerequisite - Some tests that depend on perl lacked PERL prerequisite to protect - them, breaking build with NO_PERL configuration. +* jc/exec-cmd-system-path-leak-fix (2014-11-30) 1 commit + (merged to 'next' on 2014-12-15 at f926ee5) + + system_path(): always return free'able memory to the caller + The function sometimes returned a non-freeable memory and some + other times returned a piece of memory that must be freed. -* jk/pack-bitmap (2014-11-30) 1 commit - (merged to 'next' on 2014-12-04 at eb457ad) - + pack-bitmap: do not use gcc packed attribute +* jc/hook-cleanup (2014-12-01) 1 commit + (merged to 'next' on 2014-12-15 at f5759d0) + + run-command.c: retire unused run_hook_with_custom_index() -* jk/push-simple (2014-11-30) 1 commit - (merged to 'next' on 2014-12-04 at 00785c7) - + push: truly use "simple" as default, not "upstream" + Remove unused code. - Git 2.0 was supposed to make the "simple" mode for the default of - "git push", but it didn't. +* jc/refer-to-t-readme-from-submitting-patches (2014-11-24) 2 commits + (merged to 'next' on 2014-12-15 at 0e88699) + + t/README: justify why "! grep foo" is sufficient + + SubmittingPatches: refer to t/README for tests -* jk/rebuild-perl-scripts-with-no-perl-seting-change (2014-11-18) 3 commits - (merged to 'next' on 2014-12-04 at 27382d3) - + Makefile: have python scripts depend on NO_PYTHON setting - + Makefile: simplify by using SCRIPT_{PERL,SH}_GEN macros - + Makefile: have perl scripts depend on NO_PERL setting - The build procedure did not bother fixing perl and python scripts - when NO_PERL and NO_PYTHON build-time configuration changed. +* jg/prompt-localize-temporary (2014-12-12) 1 commit + (merged to 'next' on 2014-12-15 at bb9cac9) + + git-prompt.sh: make $f local to __git_eread() + "git-prompt" (in contrib/) used a variable from the global scope, + possibly contaminating end-user's namespace. -* mh/config-copy-string-from-git-path (2014-11-17) 1 commit - (merged to 'next' on 2014-12-04 at 9c9518b) - + cmd_config(): make a copy of path obtained from git_path() +* jk/always-allow-large-packets (2014-12-10) 1 commit + (merged to 'next' on 2014-12-15 at c3fb2c8) + + pkt-line: allow writing of LARGE_PACKET_MAX buffers -* po/everyday-doc (2014-11-17) 1 commit - (merged to 'next' on 2014-12-04 at 39d31fb) - + Documentation: change "gitlink" typo in git-push + "git push" and "git fetch" did not communicate an overlong refname + correctly. -* rt/push-recurse-submodule-usage-string (2014-11-18) 1 commit - (merged to 'next' on 2014-12-04 at c43e23c) - + builtin/push.c: fix description of --recurse-submodules option +* jk/colors (2014-12-09) 6 commits + (merged to 'next' on 2014-12-15 at 20b045f) + + parse_color: drop COLOR_BACKGROUND macro + + diff-highlight: allow configurable colors + + parse_color: recognize "no$foo" to clear the $foo attribute + + parse_color: support 24-bit RGB values + + parse_color: refactor color storage + + Merge branch 'jn/parse-config-slot' into jk/colors + "diff-highlight" filter (in contrib/) allows its color output + to be customized via configuration variables. -* sv/typofix-apply-error-message (2014-11-17) 1 commit - (merged to 'next' on 2014-12-04 at de7547a) - + apply: fix typo in an error message --------------------------------------------------- -[New Topics] +* jk/commit-date-approxidate (2014-12-11) 2 commits + (merged to 'next' on 2014-12-15 at 047530e) + + commit: always populate GIT_AUTHOR_* variables + + commit: loosen ident checks when generating template + + Recent update to "git commit" broke amending an existing commit + with bogus author/committer lines without a valid e-mail address. + + +* jk/credential-quit (2014-12-04) 2 commits + (merged to 'next' on 2014-12-15 at 4cfd999) + + prompt: respect GIT_TERMINAL_PROMPT to disable terminal prompts + + credential: let helpers tell us to quit + + Credential helpers are asked in turn until one of them give + positive response, which is cumbersome to turn off when you need to + run Git in an automated setting. The credential helper interface + learned to allow a helper to say "stop, don't ask other helpers." + Also GIT_TERMINAL_PROMPT environment can be set to false to disable + our built-in prompt mechanism for passwords. + + +* jk/for-each-reflog-ent-reverse (2014-12-05) 2 commits + (merged to 'next' on 2014-12-15 at de71f08) + + for_each_reflog_ent_reverse: turn leftover check into assertion + + for_each_reflog_ent_reverse: fix newlines on block boundaries + + The code that reads the reflog from the newer to the older entries + did not handle an entry that crosses a boundary of block it uses to + read them correctly. + + +* jk/lock-ref-sha1-basic-return-errors (2014-11-20) 1 commit + (merged to 'next' on 2014-12-15 at c48b110) + + lock_ref_sha1_basic: do not die on locking errors + + Correct an API anomaly. + + +* jk/read-packed-refs-without-path-max (2014-12-10) 3 commits + (merged to 'next' on 2014-12-15 at c6d6f56) + + read_packed_refs: use skip_prefix instead of static array + + read_packed_refs: pass strbuf to parse_ref_line + + read_packed_refs: use a strbuf for reading lines + + Git did not correctly read an overlong refname from a packed refs + file. + * jk/test-asan (2014-12-11) 1 commit (merged to 'next' on 2014-12-15 at d24cb92) + t: support clang/gcc AddressSanitizer - Will merge to 'master'. +* js/fsck-tag-validation (2014-12-09) 2 commits + (merged to 'next' on 2014-12-15 at 455f26c) + + index-pack: terminate object buffers with NUL + + fsck: properly bound "invalid tag name" error message + + New tag object format validation added in 2.2 showed garbage + after a tagname it reported in its error message. + + +* js/push-to-deploy (2014-11-30) 2 commits + (merged to 'next' on 2014-12-15 at ef8c99f) + + t5516: more tests for receive.denyCurrentBranch=updateInstead + + receive-pack: add another option for receive.denyCurrentBranch + (this branch is used by jc/push-to-checkout.) + + "git push" into a repository with a working tree normally refuses + to modify the branch that is checked out. The command learned to + optionally do an equivalent of "git reset --hard" only when there + is no change to the working tree and the index instead, which would + be useful to "deploy" by pushing into a repository. + + +* js/t5000-dont-copy-bin-sh (2014-11-24) 1 commit + (merged to 'next' on 2014-12-15 at 65ffd05) + + t5000 on Windows: do not mistake "sh.exe" as "sh" + + +* js/test-hashmap-squelch-gcc (2014-12-09) 1 commit + (merged to 'next' on 2014-12-15 at a8da691) + + test-hashmap: squelch gcc compiler warning + + +* mg/add-ignore-errors (2014-11-21) 1 commit + (merged to 'next' on 2014-12-15 at 3834789) + + add: ignore only ignored files + + "git add --ignore-errors ..." did not ignore an error to + give a file that did not exist. + + +* mg/branch-d-m-f (2014-12-09) 2 commits + (merged to 'next' on 2014-12-15 at 8366f2c) + + branch: allow -f with -m and -d + + t3200-branch: test -M + + "git branch -d" (delete) and "git branch -m" (move) learned to + honor "-f" (force) flag; unlike many other subcommands, the way to + force these have been with separate "-D/-M" options, which was + inconsistent. + + +* mg/doc-check-ignore-tracked-are-not-ignored (2014-12-04) 1 commit + (merged to 'next' on 2014-12-15 at c50f748) + + check-ignore: clarify treatment of tracked files + + +* mh/find-uniq-abbrev (2014-11-26) 1 commit + (merged to 'next' on 2014-12-15 at e3b2b62) + + sha1_name: avoid unnecessary sha1 lookup in find_unique_abbrev + + The code to abbreviate an object name to its short unique prefix + has been optimized when no abbreviation was requested. + + +* mh/simplify-repack-without-refs (2014-11-25) 7 commits + (merged to 'next' on 2014-12-15 at 351e03e) + + sort_string_list(): rename to string_list_sort() + + prune_remote(): iterate using for_each_string_list_item() + + prune_remote(): rename local variable + + repack_without_refs(): make the refnames argument a string_list + + prune_remote(): sort delete_refs_list references en masse + + prune_remote(): initialize both delete_refs lists in a single loop + + prune_remote(): exit early if there are no stale references + + "git remote update --prune" to drop many refs has been optimized. + + +* nd/ls-tree-pathspec (2014-12-01) 5 commits + (merged to 'next' on 2014-12-15 at 8da6e09) + + t3102: style modernization + + t3102: document that ls-tree does not yet support negated pathspec + + ls-tree: disable negative pathspec because it's not supported + + ls-tree: remove path filtering logic in show_tree + + tree.c: update read_tree_recursive callback to pass strbuf as base + + "git ls-tree" does not support path selection based on negative + pathspecs, but did not error out when negative pathspecs are given. + + +* nd/split-index (2014-12-11) 1 commit + (merged to 'next' on 2014-12-15 at ed6490c) + + index-format.txt: add a missing closing quote + + A typofix to the documentation of a feature already in the release. + + +* ok/rebase-i-count-todo (2014-12-10) 1 commit + (merged to 'next' on 2014-12-15 at 4a1f7ed) + + Show number of TODO items for interactive rebase + + +* pb/am-message-id-footer (2014-11-25) 2 commits + (merged to 'next' on 2014-12-15 at b44b6bd) + + git-am: add --message-id/--no-message-id + + git-mailinfo: add --message-id + + "git am" learned "--message-id" option to copy the message ID of + the incoming e-mail to the log message of resulting commit. + + +* pb/send-email-te (2014-11-25) 2 commits + (merged to 'next' on 2014-12-15 at 38c2810) + + git-send-email: add --transfer-encoding option + + git-send-email: delay creation of MIME headers + (this branch is used by jc/t9001-modernise.) + + "git send-email" learned "--transfer-encoding" option to force + a non-fault Content-Transfer-Encoding header (e.g. base64). + + +* po/doc-assume-unchanged (2014-12-09) 2 commits + (merged to 'next' on 2014-12-15 at 646e77e) + + gitignore.txt: do not suggest assume-unchanged + + doc: make clear --assume-unchanged's user contract + + Fixes long-standing misunderstanding of what assume-unchanged is + about. Some text near what is removed by the bottom patch may also + have to be removed. + + +* ps/new-workdir-into-empty-directory (2014-12-03) 1 commit + (merged to 'next' on 2014-12-15 at 0787b56) + + git-new-workdir: don't fail if the target directory is empty + + "git new-workdir" (in contrib/) can be used to populate an empty + and existing directory now. + + +* rj/no-xopen-source-for-cygwin (2014-11-24) 1 commit + (merged to 'next' on 2014-12-15 at 6e8e9ff) + + git-compat-util.h: don't define _XOPEN_SOURCE on cygwin + + Avoid compilation warnings on recent gcc toolchain on Cygwin. + + +* rj/t0050-passes (2014-11-30) 1 commit + (merged to 'next' on 2014-12-15 at f56c339) + + t0050-*.sh: mark the rename (case change) test as passing + + +* rs/use-strbuf-complete-line (2014-12-12) 1 commit + (merged to 'next' on 2014-12-15 at d6426a0) + + use strbuf_complete_line() for adding a newline if needed + + +* rt/completion-tag (2014-12-04) 1 commit + (merged to 'next' on 2014-12-15 at b03ee39) + + completion: add git-tag options + + +* rt/for-each-ref-spell-tcl-as-Tcl (2014-11-30) 1 commit + (merged to 'next' on 2014-12-15 at c0fcefb) + + for-each-ref: correct spelling of Tcl in option description + + +* rw/apply-does-not-take-ignore-date (2014-12-09) 1 commit + (merged to 'next' on 2014-12-15 at ded2f99) + + git-am.txt: --ignore-date flag is not passed to git-apply + + +* sb/string-list (2014-12-04) 3 commits + (merged to 'next' on 2014-12-15 at 8bb8ddd) + + string_list: remove string_list_insert_at_index() from its API + + mailmap: use higher level string list functions + + string_list: document string_list_(insert,lookup) + + API simplification. + + +* sv/doc-stripspace (2014-12-04) 1 commit + (merged to 'next' on 2014-12-15 at e86f8ba) + + Documentation/git-stripspace: add synopsis for --comment-lines -* nd/split-index (2014-12-11) 1 commit - (merged to 'next' on 2014-12-15 at ed6490c) - + index-format.txt: add a missing closing quote - A typofix to the documentation of a feature already in the release. +* tb/config-core-filemode-check-on-broken-fs (2014-11-21) 1 commit + (merged to 'next' on 2014-12-15 at 3e5490b) + + init-db: improve the filemode trustability check - Will merge to 'master'. + Some filesystems assign filemodes in a strange way, fooling then + automatic "filemode trustability" check done during a new + repository creation. -* ch/new-gpg-drops-rfc-1991 (2014-12-12) 4 commits - (merged to 'next' on 2014-12-15 at 32d7d50) - + tests: squelch noise from GPG machinery set-up - + tests: replace binary GPG keyrings with ASCII-armored keys - + tests: skip RFC1991 tests for gnupg 2.1 - + tests: create gpg homedir on the fly +* tb/t0027-eol-conversion (2014-12-05) 1 commit + (merged to 'next' on 2014-12-15 at ba24e75) + + t0027: check the eol conversion warnings - Recent GPG changes the keyring format and drops support for RFC1991 - formatted signatures, breaking our existing tests. +-------------------------------------------------- +[New Topics] - Will merge to 'master'. +* bb/update-unicode-table (2014-12-22) 5 commits + - update_unicode.sh: delete the command group + - update_unicode.sh: make the output structure visible + - update_unicode.sh: shorten uniset invocation path + - update_unicode.sh: set UNICODE_DIR only once + - update_unicode.sh: simplify output capture + Simplify the procedure to generate unicode table. -* jg/prompt-localize-temporary (2014-12-12) 1 commit - (merged to 'next' on 2014-12-15 at bb9cac9) - + git-prompt.sh: make $f local to __git_eread() + Will merge to 'next'. - "git-prompt" (in contrib/) used a variable from the global scope, - possibly contaminating end-user's namespace. - Will merge to 'master'. +* bc/fetch-thin-less-aggressive-in-normal-repository (2014-12-22) 3 commits + - pack-objects: use --objects-edge-aggressive only for shallow repos + - rev-list: add an option to mark fewer edges as uninteresting + - Documentation: add missing article in rev-list-options.txt + Earlier we made "rev-list --object-edge" more aggressively list the + objects at the edge commits, in order to reduce number of objects + fetched into a shallow repository, but the change affected cases + other than "fetching into a shallow repository" and made it + unusably slow (e.g. fetching into a normal repository should not + have to suffer the overhead from extra processing). Limit it to a + more specific case by introducing --objects-edge-aggressive, a new + option to rev-list. -* jk/strbuf-doc-to-header (2014-12-12) 4 commits - - strbuf.h: reorganize api function grouping headers - - strbuf.h: format asciidoc code blocks as 4-space indent - - strbuf.h: drop asciidoc list formatting from API docs - - strbuf: migrate api-strbuf.txt documentation to strbuf.h + Seems to break t5500 when merged to 'pu'. - Resolve the "doc vs header" to favor the latter. - Expecting to be rerolled. +* es/squelch-openssl-warnings-on-macosx (2014-12-18) 1 commit + - git-compat-util: suppress unavoidable Apple-specific deprecation warnings + Squelch useless compiler warnings on Mac OS X. -* mh/reflog-expire (2014-12-12) 24 commits - - refs.c: let fprintf handle the formatting - - refs.c: don't expose the internal struct ref_lock in the header file - - lock_any_ref_for_update(): inline function - - refs.c: remove unlock_ref/close_ref/commit_ref from the refs api - - reflog_expire(): new function in the reference API - - expire_reflog(): treat the policy callback data as opaque - - Move newlog and last_kept_sha1 to "struct expire_reflog_cb" - - expire_reflog(): move rewrite to flags argument - - expire_reflog(): move verbose to flags argument - - expire_reflog(): pass flags through to expire_reflog_ent() - - struct expire_reflog_cb: a new callback data type - - Rename expire_reflog_cb to expire_reflog_policy_cb - - expire_reflog(): move updateref to flags argument - - expire_reflog(): move dry_run to flags argument - - expire_reflog(): add a "flags" argument - - expire_reflog(): extract two policy-related functions - - Extract function should_expire_reflog_ent() - - expire_reflog(): use a lock_file for rewriting the reflog file - - expire_reflog(): return early if the reference has no reflog - - expire_reflog(): rename "ref" parameter to "refname" - - expire_reflog(): it's not an each_ref_fn anymore - - refs.c: add a function to append a reflog entry to a fd - - refs.c: make ref_transaction_delete a wrapper for ref_transaction_update - - refs.c: make ref_transaction_create a wrapper for ref_transaction_update + Will merge to 'next'. - Restructure "reflog expire" to fit the reflogs better with the - recently updated ref API. - Looked reasonable (except that ome shortlog entries stood out like - a sore thumb). +* jh/pre-push-sample-no-custom-ifs (2014-12-22) 1 commit + - pre-push.sample: remove unnecessary and misleading IFS=' ' + The sample pre-push hook used customized IFS=' ' for no good reason. -* po/doc-core-ignorestat (2014-12-12) 1 commit - - doc: core.ignoreStat clarify the --assume-unchanged effect + Will merge to 'next'. - Expecting a reroll. +* mh/update-ref-verify (2014-12-11) 2 commits + - update-ref: fix "verify" command with missing + - t1400: add some more tests of "update-ref --stdin"'s verify command -* rs/use-strbuf-complete-line (2014-12-12) 1 commit - (merged to 'next' on 2014-12-15 at d6426a0) - + use strbuf_complete_line() for adding a newline if needed + "git update-ref --stdin"'s verify command did not work well when + , which is documented as optional, was missing. - Will merge to 'master'. + Will merge to 'next'. -* jk/add-i-read-error (2014-12-15) 1 commit - - add--interactive: leave main loop on read error +* sb/atomic-push (2014-12-22) 7 commits + - t5543-atomic-push.sh: add basic tests for atomic pushes + - push.c: add an --atomic argument + - receive-pack: move execute_commands_non_atomic before execute_commands + - receive-pack.c: receive-pack.c: use a single ref_transaction for atomic pushes + - send-pack.c: add --atomic command line argument + - send-pack: rename ref_update_to_be_sent to check_to_send_update + - receive-pack.c: add protocol support to negotiate atomic-push + (this branch uses mh/reflog-expire.) - "git add -i" did not notice when the interactive command input - stream went away and kept asking. + "git push" has been taught a "--atomic" option that makes push to + update more than one ref an "all-or-none" affair. Will merge to 'next'. -* pd/completion-filenames-fix (2014-12-15) 1 commit - - Update documentation occurrences of filename .sh +* sb/dco-indentation-fix (2014-12-22) 1 commit + - Documentation/SubmittingPatches: unify whitespace/tabs for the DCO - The top-of-the-file instruction for completion scripts (in contrib/) - did not name the files correctly. + Will merge to 'next'. + + +* sb/t5400-remove-unused (2014-12-16) 1 commit + - t5400: remove dead code Will merge to 'next'. -* rd/send-email-2047-fix (2014-12-15) 2 commits - - send-email: handle adjacent RFC 2047-encoded words properly - - send-email: align RFC 2047 decoding more closely with the spec +* tf/prompt-preserve-exit-status (2014-12-22) 1 commit + - git-prompt: preserve value of $? inside shell prompt - "git send-email" did not handle RFC 2047 encoded headers quite - right. + Using the exit status of the last command in the prompt, e.g. + PS1='$(__git_ps1) $? ', did not work well because the helper + function stomped on the exit status. Will merge to 'next'. @@ -233,13 +477,6 @@ of the repositories listed at Expecting a reroll. -* ye/http-accept-language (2014-12-03) 2 commits - . SQUASH??? - . http: send Accept-Language header if possible - - Breaks various people ($gmane/260903). - - * ms/submodule-update-config-doc (2014-11-03) 1 commit - submodule: clarify documentation for update subcommand @@ -384,177 +621,96 @@ of the repositories listed at -------------------------------------------------- [Cooking] -* dm/compat-s-ifmt-for-zos (2014-12-04) 1 commit - (merged to 'next' on 2014-12-15 at 0eb2fe6) - + compat: convert modes to use portable file type values - - Long overdue departure from the assumption that S_IFMT is shared by - everybody made in 2005. - - Will merge to 'master'. - - -* jk/credential-quit (2014-12-04) 2 commits - (merged to 'next' on 2014-12-15 at 4cfd999) - + prompt: respect GIT_TERMINAL_PROMPT to disable terminal prompts - + credential: let helpers tell us to quit - - Credential helpers are asked in turn until one of them give - positive response, which is cumbersome to turn off when you need to - run Git in an automated setting. The credential helper interface - learned to allow a helper to say "stop, don't ask other helpers." - Also GIT_TERMINAL_PROMPT environment can be set to false to disable - our built-in prompt mechanism for passwords. - - Will merge to 'master'. - - -* mg/branch-d-m-f (2014-12-09) 2 commits - (merged to 'next' on 2014-12-15 at 8366f2c) - + branch: allow -f with -m and -d - + t3200-branch: test -M - - "git branch -d" (delete) and "git branch -m" (move) learned to - honor "-f" (force) flag; unlike many other subcommands, the way to - force these have been with separate "-D/-M" options, which was - inconsistent. - - Will merge to 'master'. - +* ye/http-accept-language (2014-12-22) 1 commit + - http: Add Accept-Language header if possible -* mg/doc-check-ignore-tracked-are-not-ignored (2014-12-04) 1 commit - (merged to 'next' on 2014-12-15 at c50f748) - + check-ignore: clarify treatment of tracked files - - Will merge to 'master'. - - -* rt/completion-tag (2014-12-04) 1 commit - (merged to 'next' on 2014-12-15 at b03ee39) - + completion: add git-tag options - - Will merge to 'master'. - - -* jk/for-each-reflog-ent-reverse (2014-12-05) 2 commits - (merged to 'next' on 2014-12-15 at de71f08) - + for_each_reflog_ent_reverse: turn leftover check into assertion - + for_each_reflog_ent_reverse: fix newlines on block boundaries - - The code that reads the reflog from the newer to the older entries - did not handle an entry that crosses a boundary of block it uses to - read them correctly. - - Will merge to 'master'. - - -* po/doc-assume-unchanged (2014-12-09) 2 commits - (merged to 'next' on 2014-12-15 at 646e77e) - + gitignore.txt: do not suggest assume-unchanged - + doc: make clear --assume-unchanged's user contract - - Fixes long-standing misunderstanding of what assume-unchanged is - about. Some text near what is removed by the bottom patch may also - have to be removed. - - Will merge to 'master'. - - -* tb/t0027-eol-conversion (2014-12-05) 1 commit - (merged to 'next' on 2014-12-15 at ba24e75) - + t0027: check the eol conversion warnings - - Will merge to 'master'. - - -* jk/always-allow-large-packets (2014-12-10) 1 commit - (merged to 'next' on 2014-12-15 at c3fb2c8) - + pkt-line: allow writing of LARGE_PACKET_MAX buffers - - "git push" and "git fetch" did not communicate an overlong refname - correctly. - - Will merge to 'master'. - - -* jk/commit-date-approxidate (2014-12-11) 2 commits - (merged to 'next' on 2014-12-15 at 047530e) - + commit: always populate GIT_AUTHOR_* variables - + commit: loosen ident checks when generating template - - Recent update to "git commit" broke amending an existing commit - with bogus author/committer lines without a valid e-mail address. - - Will merge to 'master'. - - -* jk/read-packed-refs-without-path-max (2014-12-10) 3 commits - (merged to 'next' on 2014-12-15 at c6d6f56) - + read_packed_refs: use skip_prefix instead of static array - + read_packed_refs: pass strbuf to parse_ref_line - + read_packed_refs: use a strbuf for reading lines + An earlier iteration broke various people ($gmane/260903). Please + retest and comment. - Git did not correctly read an overlong refname from a packed refs - file. - Will merge to 'master'. +* jk/strbuf-doc-to-header (2014-12-12) 4 commits + - strbuf.h: reorganize api function grouping headers + - strbuf.h: format asciidoc code blocks as 4-space indent + - strbuf.h: drop asciidoc list formatting from API docs + - strbuf: migrate api-strbuf.txt documentation to strbuf.h + Resolve the "doc vs header" to favor the latter. -* jn/doc-api-errors (2014-12-04) 1 commit - - doc: document error handling functions and conventions + Expecting to be rerolled. - For discussion. +* mh/reflog-expire (2014-12-22) 24 commits + - refs.c: let fprintf handle the formatting + - refs.c: don't expose the internal struct ref_lock in the header file + - lock_any_ref_for_update(): inline function + - refs.c: remove unlock_ref/close_ref/commit_ref from the refs api + - reflog_expire(): new function in the reference API + - expire_reflog(): treat the policy callback data as opaque + - Move newlog and last_kept_sha1 to "struct expire_reflog_cb" + - expire_reflog(): move rewrite to flags argument + - expire_reflog(): move verbose to flags argument + - expire_reflog(): pass flags through to expire_reflog_ent() + - struct expire_reflog_cb: a new callback data type + - Rename expire_reflog_cb to expire_reflog_policy_cb + - expire_reflog(): move updateref to flags argument + - expire_reflog(): move dry_run to flags argument + - expire_reflog(): add a "flags" argument + - expire_reflog(): extract two policy-related functions + - Extract function should_expire_reflog_ent() + - expire_reflog(): use a lock_file for rewriting the reflog file + - expire_reflog(): return early if the reference has no reflog + - expire_reflog(): rename "ref" parameter to "refname" + - expire_reflog(): it's not an each_ref_fn anymore + - refs.c: add a function to append a reflog entry to a fd + - refs.c: make ref_transaction_delete a wrapper for ref_transaction_update + - refs.c: make ref_transaction_create a wrapper for ref_transaction_update + (this branch is used by sb/atomic-push.) -* js/fsck-tag-validation (2014-12-09) 2 commits - (merged to 'next' on 2014-12-15 at 455f26c) - + index-pack: terminate object buffers with NUL - + fsck: properly bound "invalid tag name" error message + Restructure "reflog expire" to fit the reflogs better with the + recently updated ref API. - New tag object format validation added in 2.2 showed garbage - after a tagname it reported in its error message. + Looked reasonable (except that some shortlog entries stood out like + a sore thumb). - Will merge to 'master'. +* po/doc-core-ignorestat (2014-12-12) 1 commit + - doc: core.ignoreStat clarify the --assume-unchanged effect -* js/test-hashmap-squelch-gcc (2014-12-09) 1 commit - (merged to 'next' on 2014-12-15 at a8da691) - + test-hashmap: squelch gcc compiler warning + Expecting a reroll. - Will merge to 'master'. +* jk/add-i-read-error (2014-12-15) 1 commit + - add--interactive: leave main loop on read error -* ok/rebase-i-count-todo (2014-12-10) 1 commit - (merged to 'next' on 2014-12-15 at 4a1f7ed) - + Show number of TODO items for interactive rebase + "git add -i" did not notice when the interactive command input + stream went away and kept asking. - Will merge to 'master'. + Will merge to 'next'. -* rw/apply-does-not-take-ignore-date (2014-12-09) 1 commit - (merged to 'next' on 2014-12-15 at ded2f99) - + git-am.txt: --ignore-date flag is not passed to git-apply +* pd/completion-filenames-fix (2014-12-15) 1 commit + - Update documentation occurrences of filename .sh - Will merge to 'master'. + The top-of-the-file instruction for completion scripts (in contrib/) + did not name the files correctly. + Will merge to 'next'. -* jc/exec-cmd-system-path-leak-fix (2014-11-30) 1 commit - (merged to 'next' on 2014-12-15 at f926ee5) - + system_path(): always return free'able memory to the caller - The function sometimes returned a non-freeable memory and some - other times returned a piece of memory that must be freed. +* rd/send-email-2047-fix (2014-12-15) 2 commits + - send-email: handle adjacent RFC 2047-encoded words properly + - send-email: align RFC 2047 decoding more closely with the spec - Will merge to 'master'. + "git send-email" did not handle RFC 2047 encoded headers quite + right. + Will merge to 'next'. -* jc/hook-cleanup (2014-12-01) 1 commit - (merged to 'next' on 2014-12-15 at f5759d0) - + run-command.c: retire unused run_hook_with_custom_index() - Remove unused code. +* jn/doc-api-errors (2014-12-04) 1 commit + - doc: document error handling functions and conventions - Will merge to 'master'. + For discussion. * jn/rerere-fail-on-auto-update-failure (2014-12-03) 2 commits @@ -564,25 +720,9 @@ of the repositories listed at Will be rerolled as a part of a larger series. -* js/push-to-deploy (2014-11-30) 2 commits - (merged to 'next' on 2014-12-15 at ef8c99f) - + t5516: more tests for receive.denyCurrentBranch=updateInstead - + receive-pack: add another option for receive.denyCurrentBranch - (this branch is used by jc/push-to-checkout.) - - "git push" into a repository with a working tree normally refuses - to modify the branch that is checked out. The command learned to - optionally do an equivalent of "git reset --hard" only when there - is no change to the working tree and the index instead, which would - be useful to "deploy" by pushing into a repository. - - Will merge to 'master'. - - * jc/push-to-checkout (2014-12-01) 2 commits - receive-pack: support push-to-checkout hook - receive-pack: refactor updateInstead codepath - (this branch uses js/push-to-deploy.) Extending the js/push-to-deploy topic, the behaviour of "git push" when updating the working tree and the index with an update to the @@ -591,17 +731,15 @@ of the repositories listed at Needs docs. -* lh/send-email-hide-x-mailer (2014-12-11) 4 commits - - SQUASH??? +* lh/send-email-hide-x-mailer (2014-12-15) 2 commits - test/send-email: --[no-]xmailer tests - - SQUASH??? - send-email: add --[no-]xmailer option "git send-email" normally identifies itself via X-Mailer: header in the message it sends out. A new command line flag allows the header to be squelched. - Will merge to 'next' after squashing the fixups. + Will merge to 'next'. * nd/list-files (2014-12-01) 19 commits @@ -629,42 +767,6 @@ of the repositories listed at whistles. -* nd/ls-tree-pathspec (2014-12-01) 5 commits - (merged to 'next' on 2014-12-15 at 8da6e09) - + t3102: style modernization - + t3102: document that ls-tree does not yet support negated pathspec - + ls-tree: disable negative pathspec because it's not supported - + ls-tree: remove path filtering logic in show_tree - + tree.c: update read_tree_recursive callback to pass strbuf as base - - "git ls-tree" does not support path selection based on negative - pathspecs, but did not error out when negative pathspecs are given. - - Will merge to 'master'. - - -* rj/t0050-passes (2014-11-30) 1 commit - (merged to 'next' on 2014-12-15 at f56c339) - + t0050-*.sh: mark the rename (case change) test as passing - - Will merge to 'master'. - - -* rt/for-each-ref-spell-tcl-as-Tcl (2014-11-30) 1 commit - (merged to 'next' on 2014-12-15 at c0fcefb) - + for-each-ref: correct spelling of Tcl in option description - - Will merge to 'master'. - - -* sb/ref-transaction-reflog (2014-12-03) 2 commits - . refs.c: rename transaction.updates to transaction.ref_updates - . refs.c: rename the transaction functions - (this branch uses sb/ref-transaction-unify-to-update.) - - Will be rerolled as a part of a larger series. - - * nd/multiple-work-trees (2014-12-01) 34 commits - git-common-dir: make "modules/" per-working-directory directory - checkout: do not fail if target is an empty directory @@ -706,178 +808,18 @@ of the repositories listed at by making the borrowee and borrowers aware of each other. -* jk/colors (2014-12-09) 6 commits - (merged to 'next' on 2014-12-15 at 20b045f) - + parse_color: drop COLOR_BACKGROUND macro - + diff-highlight: allow configurable colors - + parse_color: recognize "no$foo" to clear the $foo attribute - + parse_color: support 24-bit RGB values - + parse_color: refactor color storage - + Merge branch 'jn/parse-config-slot' into jk/colors - - "diff-highlight" filter (in contrib/) allows its color output - to be customized via configuration variables. - - Will merge to 'master'. - - -* jk/lock-ref-sha1-basic-return-errors (2014-11-20) 1 commit - (merged to 'next' on 2014-12-15 at c48b110) - + lock_ref_sha1_basic: do not die on locking errors - - Correct an API anomaly. - - Will merge to 'master'. - - -* ps/new-workdir-into-empty-directory (2014-12-03) 1 commit - (merged to 'next' on 2014-12-15 at 0787b56) - + git-new-workdir: don't fail if the target directory is empty - - "git new-workdir" (in contrib/) can be used to populate an empty - and existing directory now. - - Will merge to 'master'. - - * sb/copy-fd-errno (2014-11-17) 1 commit - copy.c: make copy_fd preserve meaningful errno Will be rerolled as a part of a larger series. -* sv/doc-stripspace (2014-12-04) 1 commit - (merged to 'next' on 2014-12-15 at e86f8ba) - + Documentation/git-stripspace: add synopsis for --comment-lines - - Will merge to 'master'. - - -* dw/shell-basename-dashdash-before-stripping-leading-dash-from-login (2014-11-25) 1 commit - (merged to 'next' on 2014-12-15 at 42937b7) - + git-sh-setup.sh: use dashdash with basename call - - Will merge to 'master'. - - -* jc/refer-to-t-readme-from-submitting-patches (2014-11-24) 2 commits - (merged to 'next' on 2014-12-15 at 0e88699) - + t/README: justify why "! grep foo" is sufficient - + SubmittingPatches: refer to t/README for tests - - Will merge to 'master'. - - * jc/t9001-modernise (2014-11-25) 5 commits - t9001: style modernisation phase #5 - t9001: style modernisation phase #4 - t9001: style modernisation phase #3 - t9001: style modernisation phase #2 - t9001: style modernisation phase #1 - (this branch uses pb/send-email-te.) - - -* js/t5000-dont-copy-bin-sh (2014-11-24) 1 commit - (merged to 'next' on 2014-12-15 at 65ffd05) - + t5000 on Windows: do not mistake "sh.exe" as "sh" - - Will merge to 'master'. - - -* mg/add-ignore-errors (2014-11-21) 1 commit - (merged to 'next' on 2014-12-15 at 3834789) - + add: ignore only ignored files - - "git add --ignore-errors ..." did not ignore an error to - give a file that did not exist. - - Will merge to 'master'. - - -* mh/find-uniq-abbrev (2014-11-26) 1 commit - (merged to 'next' on 2014-12-15 at e3b2b62) - + sha1_name: avoid unnecessary sha1 lookup in find_unique_abbrev - - The code to abbreviate an object name to its short unique prefix - has been optimized when no abbreviation was requested. - - Will merge to 'master'. - - -* mh/simplify-repack-without-refs (2014-11-25) 7 commits - (merged to 'next' on 2014-12-15 at 351e03e) - + sort_string_list(): rename to string_list_sort() - + prune_remote(): iterate using for_each_string_list_item() - + prune_remote(): rename local variable - + repack_without_refs(): make the refnames argument a string_list - + prune_remote(): sort delete_refs_list references en masse - + prune_remote(): initialize both delete_refs lists in a single loop - + prune_remote(): exit early if there are no stale references - - "git remote update --prune" to drop many refs has been optimized. - - Will merge to 'master'. - - -* pb/am-message-id-footer (2014-11-25) 2 commits - (merged to 'next' on 2014-12-15 at b44b6bd) - + git-am: add --message-id/--no-message-id - + git-mailinfo: add --message-id - - "git am" learned "--message-id" option to copy the message ID of - the incoming e-mail to the log message of resulting commit. - - Will merge to 'master'. - - -* pb/send-email-te (2014-11-25) 2 commits - (merged to 'next' on 2014-12-15 at 38c2810) - + git-send-email: add --transfer-encoding option - + git-send-email: delay creation of MIME headers - (this branch is used by jc/t9001-modernise.) - - "git send-email" learned "--transfer-encoding" option to force - a non-fault Content-Transfer-Encoding header (e.g. base64). - - Will merge to 'master'. - - -* rj/no-xopen-source-for-cygwin (2014-11-24) 1 commit - (merged to 'next' on 2014-12-15 at 6e8e9ff) - + git-compat-util.h: don't define _XOPEN_SOURCE on cygwin - - Avoid compilation warnings on recent gcc toolchain on Cygwin. - - Will merge to 'master'. - - -* sb/string-list (2014-12-04) 3 commits - (merged to 'next' on 2014-12-15 at 8bb8ddd) - + string_list: remove string_list_insert_at_index() from its API - + mailmap: use higher level string list functions - + string_list: document string_list_(insert,lookup) - - API simplification. - - Will merge to 'master'. - - -* sb/write-sha1-update-reflog (2014-11-24) 1 commit - . refs.c: move reflog updates into its own function - - Moves a part of function around to add a helper that still only has - one caller. Need to see how this helps in a bigger picture. - - -* tb/config-core-filemode-check-on-broken-fs (2014-11-21) 1 commit - (merged to 'next' on 2014-12-15 at 3e5490b) - + init-db: improve the filemode trustability check - - Some filesystems assign filemodes in a strange way, fooling then - automatic "filemode trustability" check done during a new - repository creation. - - Will merge to 'master'. * jk/approxidate-avoid-y-d-m-over-future-dates (2014-11-13) 2 commits @@ -917,20 +859,6 @@ of the repositories listed at Will cook in 'next'. -* cc/interpret-trailers-more (2014-11-10) 4 commits - (merged to 'next' on 2014-12-15 at 77f6c6a) - + trailer: add test with an old style conflict block - + trailer: reuse ignore_non_trailer() to ignore conflict lines - + commit: make ignore_non_trailer() non static - + Merge branch 'jc/conflict-hint' into cc/interpret-trailers-more - (this branch uses jc/conflict-hint.) - - "git interpret-trailers" learned to properly handle the - "Conflicts:" block at the end. - - Will merge to 'master'. - - * nd/lockfile-absolute (2014-11-03) 1 commit (merged to 'next' on 2014-12-15 at 34db9af) + lockfile.c: store absolute path @@ -993,20 +921,6 @@ of the repositories listed at Comments? -* jc/conflict-hint (2014-10-28) 4 commits - (merged to 'next' on 2014-12-15 at b72475f) - + merge & sequencer: turn "Conflicts:" hint into a comment - + builtin/commit.c: extract ignore_non_trailer() helper function - + merge & sequencer: unify codepaths that write "Conflicts:" hint - + builtin/merge.c: drop a parameter that is never used - (this branch is used by cc/interpret-trailers-more.) - - Unlike all the other hints given in the commit log editor, the list - of conflicted paths were appended at the end without commented out. - - Will cook in 'next'. - - * jc/diff-b-m (2014-10-23) 1 commit (merged to 'next' on 2014-12-15 at 59c6636) + diff -B -M: fix output for "copy and then rewrite" case @@ -1155,3 +1069,17 @@ of the repositories listed at Code simplification. Will be rerolled as a part of a larger series. + +* sb/write-sha1-update-reflog (2014-11-24) 1 commit + . refs.c: move reflog updates into its own function + + Moves a part of function around to add a helper that still only has + one caller. Need to see how this helps in a bigger picture. + + +* sb/ref-transaction-reflog (2014-12-03) 2 commits + . refs.c: rename transaction.updates to transaction.ref_updates + . refs.c: rename the transaction functions + (this branch uses sb/ref-transaction-unify-to-update.) + + Will be rerolled as a part of a larger series. -- 2.47.3