From 56c229d1822ab9bd121a22a9a89ac497e514ff99 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Tue, 3 Jun 2014 12:55:22 -0700 Subject: [PATCH] What's cooking (2014/06 #01) --- whats-cooking.txt | 1352 +++++++++++++++++++++++++-------------------- 1 file changed, 739 insertions(+), 613 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index 0e36c90b0a..ab516f790a 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,83 +1,580 @@ To: git@vger.kernel.org Bcc: lwn@lwn.net -Subject: What's cooking in git.git (May 2014, #05; Fri, 23) -X-master-at: 4a28f169ad29ba452e0e7bea2583914c10c58322 -X-next-at: daf83cafd8ed3cb640a2047d5069cdbf9d18e7c0 +Subject: What's cooking in git.git (Jun 2014, #01; Tue, 3) +X-master-at: 79dcccc503ac228630ecf15dcf8e1d9455daef2d +X-next-at: cc83a7f2654514ddbeb91a63300d3b726f6df536 -What's cooking in git.git (May 2014, #05; Fri, 23) +What's cooking in git.git (Jun 2014, #01; Tue, 3) -------------------------------------------------- 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 tip of the 'master' branch has past v2.0.0-rc4 (which was -unplanned, but there were last minute regressions to be taken care -of). Hopefully we can tag v2.0.0 final early next week. +The first batch of topics, all of which have been cooking for quite +a while on the 'next' branch, have been merged to 'master'. I'll + + - merge another batch to 'master', then + - rewind the tip of 'next' in preparation to start accepting new topics + +sometime mid-next week. I'll also update tinyurl.com/gitCal for this +cycle soonish. You can find the changes described here in the integration branches of the repositories listed at http://git-blame.blogspot.com/p/git-public-repositories.html +-------------------------------------------------- +[Graduated to "master"] + +* as/grep-fullname-config (2014-03-20) 1 commit + (merged to 'next' on 2014-03-28 at 810a076) + + grep: add grep.fullName config variable + + Add a configuration variable to force --full-name to be default for + "git grep". + + This may cause regressions on scripted users that do not expect + this new behaviour. + + +* bg/strbuf-trim (2014-05-06) 2 commits + (merged to 'next' on 2014-05-07 at 978f378) + + api-strbuf.txt: add docs for _trim and _ltrim + + strbuf: use _rtrim and _ltrim in strbuf_trim + + +* dt/api-doc-setup-gently (2014-04-30) 1 commit + (merged to 'next' on 2014-05-07 at 6054b08) + + docs: document RUN_SETUP_GENTLY and clarify RUN_SETUP + + +* ef/send-email-absolute-path-to-the-command (2014-04-23) 2 commits + (merged to 'next' on 2014-04-23 at a657e5e) + + send-email: windows drive prefix (e.g. C:) appears only at the beginning + (merged to 'next' on 2014-04-21 at 43bebb5) + + send-email: recognize absolute path on Windows + + +* ep/shell-command-substitution (2014-04-30) 41 commits + (merged to 'next' on 2014-05-07 at e9952c7) + + t5000-tar-tree.sh: use the $( ... ) construct for command substitution + + t4204-patch-id.sh: use the $( ... ) construct for command substitution + + t4119-apply-config.sh: use the $( ... ) construct for command substitution + + t4116-apply-reverse.sh: use the $( ... ) construct for command substitution + + t4057-diff-combined-paths.sh: use the $( ... ) construct for command substitution + + t4038-diff-combined.sh: use the $( ... ) construct for command substitution + + t4036-format-patch-signer-mime.sh: use the $( ... ) construct for command substitution + + t4014-format-patch.sh: use the $( ... ) construct for command substitution + + t4013-diff-various.sh: use the $( ... ) construct for command substitution + + t4012-diff-binary.sh: use the $( ... ) construct for command substitution + + t4010-diff-pathspec.sh: use the $( ... ) construct for command substitution + + t4006-diff-mode.sh: use the $( ... ) construct for command substitution + + t3910-mac-os-precompose.sh: use the $( ... ) construct for command substitution + + t3905-stash-include-untracked.sh: use the $( ... ) construct for command substitution + + t1050-large.sh: use the $( ... ) construct for command substitution + + t1020-subdirectory.sh: use the $( ... ) construct for command substitution + + t1004-read-tree-m-u-wf.sh: use the $( ... ) construct for command substitution + + t1003-read-tree-prefix.sh: use the $( ... ) construct for command substitution + + t1002-read-tree-m-u-2way.sh: use the $( ... ) construct for command substitution + + t1001-read-tree-m-2way.sh: use the $( ... ) construct for command substitution + + t1000-read-tree-m-3way.sh: use the $( ... ) construct for command substitution + + t0300-credentials.sh: use the $( ... ) construct for command substitution + + t0030-stripspace.sh: use the $( ... ) construct for command substitution + + t0026-eol-config.sh: use the $( ... ) construct for command substitution + + t0025-crlf-auto.sh: use the $( ... ) construct for command substitution + + t0020-crlf.sh: use the $( ... ) construct for command substitution + + t0010-racy-git.sh: use the $( ... ) construct for command substitution + + t0001-init.sh: use the $( ... ) construct for command substitution + + p5302-pack-index.sh: use the $( ... ) construct for command substitution + + lib-gpg.sh: use the $( ... ) construct for command substitution + + lib-cvs.sh: use the $( ... ) construct for command substitution + + lib-credential.sh: use the $( ... ) construct for command substitution + + git-web--browse.sh: use the $( ... ) construct for command substitution + + git-stash.sh: use the $( ... ) construct for command substitution + + git-rebase.sh: use the $( ... ) construct for command substitution + + git-rebase--merge.sh: use the $( ... ) construct for command substitution + + git-pull.sh: use the $( ... ) construct for command substitution + + appp.sh: use the $( ... ) construct for command substitution + + t7900-subtree.sh: use the $( ... ) construct for command substitution + + test-gitmw-lib.sh: use the $( ... ) construct for command substitution + + t9365-continuing-queries.sh: use the $( ... ) construct for command substitution + + Adjust shell scripts to use $(cmd) instead of `cmd`. + + +* ew/config-protect-mode (2014-05-06) 1 commit + (merged to 'next' on 2014-05-07 at 8443093) + + config: preserve config file permissions on edits + + +* fc/merge-default-to-upstream (2014-04-22) 1 commit + (merged to 'next' on 2014-04-22 at 4f98483) + + merge: enable defaulttoupstream by default + + "git merge" without argument, even when there is an upstream + defined for the current branch, refused to run until + merge.defaultToUpstream is set to true. Flip the default of that + configuration variable to true. + + +* fc/mergetool-prompt (2014-04-24) 2 commits + (merged to 'next' on 2014-05-02 at a554691) + + mergetool: document the default for --[no-]prompt + (merged to 'next' on 2014-04-22 at dcaec94) + + mergetool: run prompt only if guessed tool + + mergetool.prompt used to default to 'true', always causing a confirmation + "do you really want to run the tool on this path" to be shown. + + Among the two purposes the prompt serves, ignore the use case to + confirm that the user wants to view particular path with the named + tool, and make the prompt only to confirm the choice of the tool + made by autodetection and defaulting. For those who configured the + tool explicitly, the prompt shown for the latter purpose is simply + annoying. + + Strictly speaking, this is a backward incompatible change and the + users need to explicitly set the variable to 'true' if they want to + resurrect the now-ignored use case. + + +* fc/mergetools-vimdiff3 (2014-04-22) 1 commit + (merged to 'next' on 2014-04-22 at d843e75) + + mergetools: add vimdiff3 mode + + +* fc/rerere-conflict-style (2014-04-30) 1 commit + (merged to 'next' on 2014-05-07 at bde7fd0) + + rerere: fix for merge.conflictstyle + + "git rerere forget" did not work well when merge.conflictstyle + was set to a non-default value. + + +* jc/apply-ignore-whitespace (2014-03-26) 1 commit + (merged to 'next' on 2014-04-04 at 53779a7) + + apply --ignore-space-change: lines with and without leading whitespaces do not match + + "--ignore-space-change" option of "git apply" ignored the + spaces at the beginning of line too aggressively, which is + inconsistent with the option of the same name "diff" and "git diff" + have. + + +* jk/commit-date-approxidate (2014-05-02) 4 commits + (merged to 'next' on 2014-05-07 at 7ec8f7d) + + commit: accept more date formats for "--date" + + commit: print "Date" line when the user has set date + + pretty: make show_ident_date public + + commit: use split_ident_line to compare author/committer + + "git commit --date=" option learned to read from more + timestamp formats, including "--date=now". + + +* jk/external-diff-use-argv-array (2014-04-21) 5 commits + (merged to 'next' on 2014-04-22 at e6d92d7) + + run_external_diff: refactor cmdline setup logic + + run_external_diff: hoist common bits out of conditional + + run_external_diff: drop fflush(NULL) + + run_external_diff: clean up error handling + + run_external_diff: use an argv_array for the environment + + Code clean-up (and a bugfix which has been merged for 2.0). + + +* jx/blame-align-relative-time (2014-04-23) 2 commits + (merged to 'next' on 2014-04-23 at 858df39) + + blame: dynamic blame_date_width for different locales + + blame: fix broken time_buf paddings in relative timestamp + + "git blame" miscounted number of columns needed to show localized + timestamps, resulting in jaggy left-side-edge of the source code + lines in its output. + + +* ks/tree-diff-nway (2014-04-09) 20 commits + (merged to 'next' on 2014-04-09 at c17228e) + + mingw: activate alloca + (merged to 'next' on 2014-04-08 at 6b74773) + + combine-diff: speed it up, by using multiparent diff tree-walker directly + + tree-diff: rework diff_tree() to generate diffs for multiparent cases as well + + Portable alloca for Git + (merged to 'next' on 2014-03-31 at 16a7bd4) + + tree-diff: reuse base str(buf) memory on sub-tree recursion + + tree-diff: no need to call "full" diff_tree_sha1 from show_path() + + tree-diff: rework diff_tree interface to be sha1 based + + tree-diff: diff_tree() should now be static + + tree-diff: remove special-case diff-emitting code for empty-tree cases + (merged to 'next' on 2014-03-25 at cfcbdac) + + tree-diff: simplify tree_entry_pathcmp + + tree-diff: show_path prototype is not needed anymore + + tree-diff: rename compare_tree_entry -> tree_entry_pathcmp + + tree-diff: move all action-taking code out of compare_tree_entry() + + tree-diff: don't assume compare_tree_entry() returns -1,0,1 + (merged to 'next' on 2014-03-21 at d872679) + + tree-diff: consolidate code for emitting diffs and recursion in one place + + tree-diff: show_tree() is not needed + + tree-diff: no need to pass match to skip_uninteresting() + + tree-diff: no need to manually verify that there is no mode change for a path + + combine-diff: move changed-paths scanning logic into its own function + + combine-diff: move show_log_first logic/action out of paths scanning + + Instead of running N pair-wise diff-trees when inspecting a + N-parent merge, find the set of paths that were touched by walking + N+1 trees in parallel. These set of paths can then be turned into + N pair-wise diff-tree results to be processed through rename + detections and such. And N=2 case nicely degenerates to the usual + 2-way diff-tree, which is very nice. + + +* lr/git-run-setup-gently (2014-04-22) 1 commit + (merged to 'next' on 2014-04-22 at 5c2523f) + + git.c: treat RUN_SETUP_GENTLY and RUN_SETUP as mutually exclusive + + +* mh/ref-transaction (2014-04-07) 27 commits + (merged to 'next' on 2014-04-16 at a99f84d) + + ref_transaction_commit(): work with transaction->updates in place + + struct ref_update: add a type field + + struct ref_update: add a lock field + + ref_transaction_commit(): simplify code using temporary variables + + struct ref_update: store refname as a FLEX_ARRAY + + struct ref_update: rename field "ref_name" to "refname" + + refs: remove API function update_refs() + + update-ref --stdin: reimplement using reference transactions + + refs: add a concept of a reference transaction + + update-ref --stdin: harmonize error messages + + update-ref --stdin: improve the error message for unexpected EOF + + t1400: test one mistake at a time + + update-ref --stdin -z: deprecate interpreting the empty string as zeros + + update-ref.c: extract a new function, parse_next_sha1() + + t1400: test that stdin -z update treats empty as zeros + + update-ref --stdin: simplify error messages for missing oldvalues + + update-ref --stdin: make error messages more consistent + + update-ref --stdin: improve error messages for invalid values + + update-ref.c: extract a new function, parse_refname() + + parse_cmd_verify(): copy old_sha1 instead of evaluating twice + + update-ref --stdin: read the whole input at once + + update_refs(): fix constness + + refs.h: rename the action_on_err constants + + t1400: add some more tests involving quoted arguments + + parse_arg(): really test that argument is properly terminated + + t1400: provide more usual input to the command + + t1400: fix name and expected result of one test + + Update "update-ref --stdin [-z]" and then introduce a transactional + support for (multi-)reference updates. + + +* mm/mediawiki-encoding-fix (2014-04-23) 2 commits + (merged to 'next' on 2014-05-02 at 7744361) + + git-remote-mediawiki: fix encoding issue for UTF-8 media files + + git-remote-mediawiki: allow stop/start-ing the test server + + +* nd/index-pack-one-fd-per-thread (2014-04-16) 1 commit + (merged to 'next' on 2014-04-16 at b38d5a9) + + index-pack: work around thread-unsafe pread() + + Enable threaded index-pack on platforms without thread-safe + pread() emulation. + + +* rs/ref-update-check-errors-early (2014-04-17) 2 commits + (merged to 'next' on 2014-04-21 at acc62aa) + + commit.c: check for lock error and return early + + sequencer.c: check for lock failure and bail early in fast_forward_to + + +* sk/msvc-dynlink-crt (2014-05-06) 1 commit + (merged to 'next' on 2014-05-07 at 20f4839) + + MSVC: link dynamically to the CRT + + +* sk/svn-parse-datestamp (2014-04-17) 1 commit + (merged to 'next' on 2014-04-21 at 5ff519f) + + SVN.pm::parse_svn_date: allow timestamps with a single-digit hour + + "git svn" learned to cope with malformed timestamps with only one + digit in the hour part, e.g. 2014-01-07T5:01:02.048176Z, emitted + by some broken subversion server implementations. + + +* sk/tag-contains-wo-recursion (2014-04-25) 1 commit + (merged to 'next' on 2014-04-25 at f320750) + + git tag --contains: avoid stack overflow + + +* ym/fix-opportunistic-index-update-race (2014-04-10) 2 commits + (merged to 'next' on 2014-04-16 at cb92f4f) + + read-cache.c: verify index file before we opportunistically update it + + wrapper.c: add xpread() similar to xread() + + Read-only operations such as "git status" that internally refreshes + the index write out the refreshed index to the disk to optimize + future accesses to the working tree, but this could race with a + "read-write" operation that modify the index while it is running. + Detect such a race and avoid overwriting the index. + + Duy raised a good point that we may need to do the same for the + normal writeout codepath, not just the "opportunistic" update + codepath. While that is true, nobody sane would be running two + simultaneous operations that are clearly write-oriented competing + with each other against the same index file. So in that sense that + can be done as a less urgent follow-up for this topic. + -------------------------------------------------- [New Topics] -* ep/shell-assign-and-export-vars (2014-05-23) 2 commits - - scripts: more "export VAR=VALUE" fixes - - scripts: get rid of the non portable "export VAR=VALUE" costruct +* bg/xcalloc-nmemb-then-size (2014-05-27) 12 commits + - transport-helper.c: rearrange xcalloc arguments + - remote.c: rearrange xcalloc arguments + - reflog-walk.c: rearrange xcalloc arguments + - pack-revindex.c: rearrange xcalloc arguments + - notes.c: rearrange xcalloc arguments + - imap-send.c: rearrange xcalloc arguments + - http-push.c: rearrange xcalloc arguments + - diff.c: rearrange xcalloc arguments + - config.c: rearrange xcalloc arguments + - commit.c: rearrange xcalloc arguments + - builtin/remote.c: rearrange xcalloc arguments + - builtin/ls-remote.c: rearrange xcalloc arguments - Will merge to 'next' after fixing typos in the log message. + Like calloc(3), xcalloc() takes nmemb and then size. + Will merge to 'next'. -* jn/test-lint-unmoor (2014-05-23) 1 commit - - test-lint: find unportable sed, echo, test, and export usage after && - Will merge to 'next' and keep it there for the rest of this cycle. +* jk/complete-merge-pull (2014-05-27) 2 commits + - completion: add missing options for git-merge + - completion: add a note that merge options are shared + The completion code did not know about quite a few options that are + common between "git merge" and "git pull", and a couple of options + unique to "git merge". -* jj/command-line-adjective (2014-05-21) 1 commit - - Documentation: use "command-line" when used as a compound adjective, and fix other minor grammatical issues + Will merge to 'next'. - Will merge to 'next' and keep it there for the rest of this cycle. +* jl/remote-rm-prune (2014-05-27) 3 commits + - remote prune: optimize "dangling symref" check/warning + - remote: repack packed-refs once when deleting multiple refs + - remote rm: delete remote configuration as the last -* jk/daemon-tolower (2014-05-23) 1 commit - - daemon/config: factor out duplicate xstrdup_tolower + "git remote rm" and "git remote prune" can involve removing many + refs at once, which is not a very efficient thing to do when very + many refs exist in the packed-refs file. - Will merge to 'next' and keep it there for the rest of this cycle. + Will merge to 'next'. -* jk/strbuf-tolower (2014-05-23) 1 commit - - strbuf: add strbuf_tolower function +* jm/instaweb-apache-24 (2014-05-27) 1 commit + - git-instaweb: add support for Apache 2.4 - Will merge to 'next' and keep it there for the rest of this cycle. + Will merge to 'next'. -* jk/http-errors (2014-05-23) 8 commits - - http: default text charset to iso-8859-1 - - remote-curl: reencode http error messages - - strbuf: add strbuf_reencode helper - - http: optionally extract charset parameter from content-type - - http: extract type/subtype portion of content-type - - t5550: test display of remote http error messages - - t/lib-httpd: use write_script to copy CGI scripts - - test-lib: preserve GIT_CURL_VERBOSE from the environment +* jm/t9138-style-fix (2014-05-27) 1 commit + - t9138-git-svn-authors-prog.sh fixups - The fourth from the bottom needs additional comments $gmane/250024 - squashed in before this is merged to 'next'. + Will merge to 'next'. -* jm/format-patch-mail-sig (2014-05-22) 2 commits - - format-patch: --signature-file= - - format-patch: make newline after signature conditional +* mc/git-p4-pre-are-p4-only (2014-05-27) 1 commit + (merged to 'next' on 2014-05-27 at 71572fe) + + git-p4: Do not include diff in spec file when just preparing p4 + + Will merge to 'master'. + + +* nd/daemonize-gc (2014-05-27) 1 commit + - gc --auto: do not lock refs in the background + + Will merge to 'next'. + + +* ow/config-mailmap-pathname (2014-05-27) 1 commit + - config: respect '~' and '~user' in mailmap.file + + Will merge to 'next'. + + +* rh/prompt-tests (2014-05-30) 10 commits + - t9904: new __git_ps1 tests for Zsh + - lib-prompt-tests.sh: add variable for string that encodes percent in PS1 + - lib-prompt-tests.sh: put all tests inside a function + - t9903: move prompt tests to a new lib-prompt-tests.sh file + - t9903: move PS1 color code variable definitions to lib-bash.sh + - t9903: include "Bash" in test names via new $shellname var + - t9903: run pc mode tests again with PS1 expansion disabled + - t9903: move test name prefix to a separate variable + - t9903: put the Bash pc mode prompt test cases in a function + - t9903: remove Zsh test from the suite of Bash prompt tests + + Will merge to 'next'. + + +* jm/doc-wording-tweaks (2014-05-28) 1 commit + - Documentation: wording fixes in the user manual and glossary + + Will merge to 'next'. + + +* jn/gitweb-utf8-in-links (2014-05-27) 1 commit + - gitweb: Harden UTF-8 handling in generated links + + Will merge to 'next'. + + +* mn/sideband-no-ansi (2014-06-02) 1 commit + - sideband.c: do not use ANSI control sequence on non-terminal + + Will merge to 'next'. + + +* jc/fetch-push-refmap (2014-06-02) 9 commits + - fetch: allow explicit --refmap to override configuration + - fetch doc: add a section on configured remote-tracking branches + - fetch doc: remove "short-cut" section + - fetch doc: update refspec format description + - fetch doc: on pulling multiple refspecs + - fetch doc: remove notes on outdated "mixed layout" + - fetch doc: update note on '+' in front of the refspec + - fetch doc: move FETCH_HEAD material lower and add an example + - fetch doc: update introductory part for clarity + + +* jc/shortlog-ref-exclude (2014-05-30) 1 commit + - shortlog: allow --exclude= to be passed + + Needs rewording the proposed log message ($gmane/250469, 250475). + + +* lt/log-auto-decorate (2014-05-30) 1 commit + - git log: support "auto" decorations + + Will merge to 'next'. + + +* lt/request-pull (2014-06-02) 1 commit + - fix brown paper bag breakage in t5150-request-pull.sh + + Will merge to 'next'. + + +* na/no-http-test-in-the-middle (2014-05-30) 1 commit + - t5538: move http push tests out to t5542 + + Will merge to 'next'. + + +* pb/trim-trailing-spaces (2014-06-02) 1 commit + - dir.c:trim_trailing_spaces(): fix for " \ " sequence + + Will merge to 'next'. + + +* rs/mailinfo-header-cmp (2014-06-02) 1 commit + - mailinfo: use strcmp() for string comparison + + Will merge to 'next'. + + +* rs/pack-objects-no-unnecessary-realloc (2014-06-02) 1 commit + - pack-objects: use free()+xcalloc() instead of xrealloc()+memset() + + Will merge to 'next'. + + +* ss/userdiff-update-csharp-java (2014-06-02) 2 commits + - userdiff: support Java try keyword + - userdiff: support C# async methods and correct C# keywords + + +* jk/error-resolve-conflict-advice (2014-06-03) 2 commits + - error_resolve_conflict: drop quotations around operation + - error_resolve_conflict: rewrap advice message + + Will merge to 'next'. + + +* rs/read-ref-at (2014-06-03) 1 commit + - refs.c: change read_ref_at to use the reflog iterators + + Will merge to 'next'. + + +* sh/enable-preloadindex (2014-06-03) 1 commit + - environment.c: enable core.preloadindex by default - Looked more-or-less ready, except for some negative tests. + Will merge to 'next'. +* ta/string-list-init (2014-06-03) 1 commit + - string-list: Add a value to string_list initializer lists + + Will merge to 'next'. + -------------------------------------------------- [Stalled] +* jl/status-added-submodule-is-never-ignored (2014-04-07) 2 commits + - commit -m: commit staged submodules regardless of ignore config + - status/commit: show staged submodules regardless of ignore config + + There also are a few patches Ronald Weiss and Jens are working on + polishing around this topic, and a patch from Jens each for gitk + and git-gui. + + Waiting for the dust to settle until picking them up all. + + +* mh/lockfile (2014-04-15) 25 commits + - trim_last_path_elm(): replace last_path_elm() + - resolve_symlink(): take a strbuf parameter + - resolve_symlink(): use a strbuf for internal scratch space + - change lock_file::filename into a strbuf + - commit_lock_file(): use a strbuf to manage temporary space + - try_merge_strategy(): use a statically-allocated lock_file object + - try_merge_strategy(): remove redundant lock_file allocation + - struct lock_file: declare some fields volatile + - lockfile: avoid transitory invalid states + - commit_lock_file(): die() if called for unlocked lockfile object + - commit_lock_file(): inline temporary variable + - remove_lock_file(): call rollback_lock_file() + - lock_file(): exit early if lockfile cannot be opened + - write_packed_entry_fn(): convert cb_data into a (const int *) + - prepare_index(): declare return value to be (const char *) + - delete_ref_loose(): don't muck around in the lock_file's filename + - cache.h: define constants LOCK_SUFFIX and LOCK_SUFFIX_LEN + - lockfile.c: document the various states of lock_file objects + - lock_file(): always add lock_file object to lock_file_list + - hold_lock_file_for_append(): release lock on errors + - lockfile: unlock file if lockfile permissions cannot be adjusted + - rollback_lock_file(): set fd to -1 + - rollback_lock_file(): do not clear filename redundantly + - api-lockfile: expand the documentation + - unable_to_lock_die(): rename function from unable_to_lock_index_die() + + Refactor and fix corner-case bugs in the lockfile API, all looked + sensible. + + Expecting a reroll. + + +* bg/rebase-off-of-previous-branch (2014-04-16) 1 commit + - git-rebase: print name of rev when using shorthand + + Teach "git rebase -" to report the concrete name of the branch + (i.e. the previous one). + + But it stops short and does not do the same for "git rebase @{-1}". + Expecting a reroll. + + * tr/merge-recursive-index-only (2014-02-05) 3 commits - merge-recursive: -Xindex-only to leave worktree unchanged - merge-recursive: internal flag to avoid touching the worktree @@ -243,22 +740,79 @@ of the repositories listed at -------------------------------------------------- [Cooking] +* ep/shell-assign-and-export-vars (2014-05-23) 2 commits + (merged to 'next' on 2014-05-23 at 7699c0e) + + scripts: more "export VAR=VALUE" fixes + + scripts: "export VAR=VALUE" construct is not portable + + Will merge to 'master'. + + +* jn/test-lint-unmoor (2014-05-23) 1 commit + (merged to 'next' on 2014-05-23 at aa997bc) + + test-lint: find unportable sed, echo, test, and export usage after && + + Will merge to 'master'. + + +* jj/command-line-adjective (2014-05-21) 1 commit + (merged to 'next' on 2014-05-23 at fe136c8) + + Documentation: use "command-line" when used as a compound adjective, and fix other minor grammatical issues + + Will merge to 'master'. + + +* jk/daemon-tolower (2014-05-23) 1 commit + (merged to 'next' on 2014-05-23 at 23c796d) + + daemon/config: factor out duplicate xstrdup_tolower + + Will merge to 'master'. + + +* jk/strbuf-tolower (2014-05-23) 1 commit + (merged to 'next' on 2014-05-23 at b172137) + + strbuf: add strbuf_tolower function + + Will merge to 'master'. + + +* jk/http-errors (2014-05-27) 8 commits + - http: default text charset to iso-8859-1 + - remote-curl: reencode http error messages + - strbuf: add strbuf_reencode helper + - http: optionally extract charset parameter from content-type + - http: extract type/subtype portion of content-type + - t5550: test display of remote http error messages + - t/lib-httpd: use write_script to copy CGI scripts + - test-lib: preserve GIT_CURL_VERBOSE from the environment + + Will merge to 'next'. + + +* jm/format-patch-mail-sig (2014-05-27) 2 commits + - format-patch: add "--signature-file=" option + - format-patch: make newline after signature conditional + + Will merge to 'next'. + + * sk/wincred (2014-05-14) 2 commits (merged to 'next' on 2014-05-21 at a3b9ca3) + wincred: avoid overwriting configured variables + wincred: add install target - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * as/pretty-truncate (2014-05-21) 5 commits - - pretty.c: format string with truncate respects logOutputEncoding - - t4205, t6006: add tests that fail with i18n.logOutputEncoding set - - t4205 (log-pretty-format): use `tformat` rather than `format` - - t4041, t4205, t6006, t7102: don't hardcode tested encoding value - - t4205 (log-pretty-formats): don't hardcode SHA-1 in expected outputs + (merged to 'next' on 2014-05-23 at 94d4c51) + + pretty.c: format string with truncate respects logOutputEncoding + + t4205, t6006: add tests that fail with i18n.logOutputEncoding set + + t4205 (log-pretty-format): use `tformat` rather than `format` + + t4041, t4205, t6006, t7102: don't hardcode tested encoding value + + t4205 (log-pretty-formats): don't hardcode SHA-1 in expected outputs - Will merge to 'next' and keep it there for the rest of this cycle. + Will merge to 'master'. * cc/replace-graft (2014-05-19) 1 commit @@ -266,7 +820,7 @@ of the repositories listed at + replace: add --graft option (this branch uses cc/replace-edit.) - Will keep in 'next' for the remainder of the cycle. + Will eject from 'next' and replace with a newer reroll. * jk/argv-array-for-child-process (2014-05-15) 7 commits @@ -279,28 +833,28 @@ of the repositories listed at + run_column_filter: use argv_array + run-command: store an optional argv_array - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jk/diff-files-assume-unchanged (2014-05-15) 1 commit (merged to 'next' on 2014-05-21 at 142d2c8) + run_diff_files: do not look at uninitialized stat data - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jk/report-fail-to-read-objects-better (2014-05-15) 1 commit (merged to 'next' on 2014-05-21 at 77c89fe) + open_sha1_file: report "most interesting" errno - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * mt/rebase-i-keep-empty-test (2014-05-19) 1 commit (merged to 'next' on 2014-05-21 at d87d266) + rebase --keep-empty -i: add test - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * nd/status-auto-comment-char (2014-05-19) 2 commits @@ -308,7 +862,7 @@ of the repositories listed at + commit: allow core.commentChar=auto for character auto selection + config: be strict on core.commentChar - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * rr/rebase-autostash-fix (2014-05-20) 2 commits @@ -316,27 +870,28 @@ of the repositories listed at + rebase -i: test "Nothing to do" case with autostash + rebase -i: handle "Nothing to do" case with autostash - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * sk/spawn-less-case-insensitively-from-grep-O-i (2014-05-15) 1 commit (merged to 'next' on 2014-05-21 at eb28305) + git grep -O -i: if the pager is 'less', pass the '-I' option - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * sk/windows-unc-path (2014-05-20) 1 commit (merged to 'next' on 2014-05-21 at d1f1350) + Windows: Allow using UNC path for git repository - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jk/diff-follow-must-take-one-pathspec (2014-05-20) 1 commit - - move "--follow needs one pathspec" rule to diff_setup_done + (merged to 'next' on 2014-05-23 at 4653133) + + move "--follow needs one pathspec" rule to diff_setup_done - Will merge to 'next' and keep it there for the rest of this cycle. + Will merge to 'master'. * ab/add-interactive-show-diff-func-name (2014-05-12) 2 commits @@ -350,14 +905,14 @@ of the repositories listed at (merged to 'next' on 2014-05-21 at 676392b) + t/lib-httpd: require SANITY prereq - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jk/index-pack-report-missing (2014-05-12) 1 commit (merged to 'next' on 2014-05-14 at 72d40e1) + index-pack: distinguish missing objects from type errors - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * tb/unicode-6.3-zero-width (2014-05-12) 2 commits @@ -372,21 +927,21 @@ of the repositories listed at We may want to let the users choose if codepoints with ambiguous widths are treated as a double or single width in a follow-up patch. - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * mk/show-s-no-extra-blank-line-for-merges (2014-05-15) 1 commit (merged to 'next' on 2014-05-21 at 3b98b35) + git-show: fix 'git show -s' to not add extra terminator after merge commit - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * wk/doc-clarify-upstream (2014-05-13) 1 commit (merged to 'next' on 2014-05-14 at 6c8fb52) + Documentation: mention config sources for @{upstream} - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * dk/raise-core-deltabasecachelimit (2014-05-06) 1 commit @@ -395,23 +950,23 @@ of the repositories listed at The original 16 MiB limit for the in-core delta-base-cache introduced in 18bdec11 (Limit the size of the new delta_base_cache, - 2007-03-19) is turning too small. + 2007-03-19) is turning out to be too small. - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * fc/status-printf-squelch-format-zero-length-warnings (2014-05-07) 1 commit (merged to 'next' on 2014-05-12 at 6b04e23) + silence a bunch of format-zero-length warnings - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jk/grep-tell-run-command-to-cd-when-running-pager (2014-05-07) 1 commit (merged to 'next' on 2014-05-12 at 065cb22) + grep: use run-command's "dir" option for --open-files-in-pager - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jk/squelch-compiler-warning-from-funny-error-macro (2014-05-06) 2 commits @@ -419,7 +974,7 @@ of the repositories listed at + let clang use the constant-return error() macro + inline constant return from error() function - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * rs/reflog-exists (2014-05-08) 2 commits @@ -427,21 +982,21 @@ of the repositories listed at + checkout.c: use ref_exists instead of file_exist + refs.c: add new functions reflog_exists and delete_reflog - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * tg/tag-state-tag-name-in-editor-hints (2014-05-07) 1 commit (merged to 'next' on 2014-05-12 at 0b7db32) + builtin/tag.c: show tag name to hint in the message editor - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * sk/submodules-absolute-path-on-windows (2014-05-08) 1 commit (merged to 'next' on 2014-05-14 at 83a05d9) + Revert "submodules: fix ambiguous absolute paths under Windows" - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jn/contrib-remove-diffall (2014-05-09) 1 commit @@ -450,7 +1005,7 @@ of the repositories listed at Spring cleaning of contrib/. - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jn/contrib-remove-vim (2014-05-09) 1 commit @@ -459,52 +1014,33 @@ of the repositories listed at Spring cleaning of contrib/. - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. -* ss/howto-manage-trunk (2014-05-09) 8 commits - - SQUASH describe what the picture shows - - SQUASH minor typographic fix - - SQUASH clarify the informal description of 'trunk' - - SQUASH typeset literal commands with `git command` - - SQUASH use a better URL - - SQUASH mark-up fix - - SQUASH typofix - - How to keep a project's canonical history correct. +* ss/howto-manage-trunk (2014-05-28) 1 commit + (merged to 'next' on 2014-05-28 at 5318336) + + How to keep a project's canonical history correct. - Will squash and then merge to 'next'. + Will merge to 'master'. * wg/svn-fe-style-fixes (2014-05-12) 1 commit (merged to 'next' on 2014-05-12 at 88c0e0d) + svn-fe: conform to pep8 - Will keep in 'next' for the remainder of the cycle. - - -* bg/strbuf-trim (2014-05-06) 2 commits - (merged to 'next' on 2014-05-07 at 978f378) - + api-strbuf.txt: add docs for _trim and _ltrim - + strbuf: use _rtrim and _ltrim in strbuf_trim - - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. -* cb/byte-order (2014-05-02) 2 commits +* cb/byte-order (2014-05-30) 3 commits + (merged to 'next' on 2014-05-30 at 857617e) + + compat/bswap.h: fix endianness detection (merged to 'next' on 2014-05-07 at f55c040) + compat/bswap.h: restore preference __BIG_ENDIAN over BIG_ENDIAN + compat/bswap.h: detect endianness on more platforms that don't use BYTE_ORDER Compatibility enhancement for Solaris. - Will keep in 'next' for the remainder of the cycle. - - -* dt/api-doc-setup-gently (2014-04-30) 1 commit - (merged to 'next' on 2014-05-07 at 6054b08) - + docs: document RUN_SETUP_GENTLY and clarify RUN_SETUP - - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * dt/merge-recursive-case-insensitive (2014-05-08) 2 commits @@ -512,29 +1048,16 @@ of the repositories listed at + mv: allow renaming to fix case on case insensitive filesystems + merge-recursive.c: fix case-changing merge bug - On a case insensitive filesystem, merge-recursive incorrectly - deleted the file that is to be renamed to a name that is the same - except for case differences. - - Will keep in 'next' for the remainder of the cycle. - - -* ew/config-protect-mode (2014-05-06) 1 commit - (merged to 'next' on 2014-05-07 at 8443093) - + config: preserve config file permissions on edits - - Will keep in 'next' for the remainder of the cycle. - - -* fc/rerere-conflict-style (2014-04-30) 1 commit - (merged to 'next' on 2014-05-07 at bde7fd0) - + rerere: fix for merge.conflictstyle - - Will keep in 'next' for the remainder of the cycle. + On a case insensitive filesystem, merge-recursive incorrectly + deleted the file that is to be renamed to a name that is the same + except for case differences. + + Will merge to 'master'. * jc/coding-guidelines (2014-05-20) 9 commits - - CodingGuidelines: avoid "test -a/-o " + (merged to 'next' on 2014-05-23 at bb351fc) + + CodingGuidelines: avoid "test -a/-o " (merged to 'next' on 2014-05-12 at e1fcf62) + CodingGuidelines: on splitting a long line + CodingGuidelines: on comparison @@ -545,7 +1068,7 @@ of the repositories listed at + CodingGuidelines: give an example for case/esac statement + CodingGuidelines: once it is in, it is not worth the code churn - Will merge to 'next' and keep it there for the rest of this cycle. + Will merge to 'master'. * jd/subtree (2014-05-13) 6 commits @@ -558,31 +1081,14 @@ of the repositories listed at + contrib/subtree/Makefile: use GIT-VERSION-FILE + contrib/subtree/Makefile: scrap unused $(gitdir) - Will keep in 'next' for the remainder of the cycle. - - -* jk/commit-date-approxidate (2014-05-02) 4 commits - (merged to 'next' on 2014-05-07 at 7ec8f7d) - + commit: accept more date formats for "--date" - + commit: print "Date" line when the user has set date - + pretty: make show_ident_date public - + commit: use split_ident_line to compare author/committer - - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * mm/pager-less-sans-S (2014-05-07) 1 commit (merged to 'next' on 2014-05-07 at 66ce999) + pager: remove 'S' from $LESS by default - Will keep in 'next' for the remainder of the cycle. - - -* sk/msvc-dynlink-crt (2014-05-06) 1 commit - (merged to 'next' on 2014-05-07 at 20f4839) - + MSVC: link dynamically to the CRT - - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * cc/replace-edit (2014-05-19) 10 commits @@ -602,7 +1108,7 @@ of the repositories listed at "git replace" learns a new "--edit" option. - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * da/imap-send-use-credential-helper (2014-04-29) 1 commit @@ -612,14 +1118,14 @@ of the repositories listed at "git imap-send" learns to ask the credential helper for authentication material. - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * dk/blame-reorg (2014-04-28) 1 commit (merged to 'next' on 2014-05-14 at 354a0e3) + blame: large-scale performance rewrite - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * je/pager-do-not-recurse (2014-04-28) 1 commit @@ -630,7 +1136,7 @@ of the repositories listed at we spawn to feed out output, but that prevents people who want to run less within less from doing so. - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * jk/commit-C-pick-empty (2014-04-28) 1 commit @@ -640,373 +1146,125 @@ of the repositories listed at "git commit --allow-empty-message -C $commit" did not work when the commit did not have any log message. - Will keep in 'next' for the remainder of the cycle. - - -* jk/utf8-switch-between-nfd-and-nfc (2014-04-29) 1 commit - (merged to 'next' on 2014-05-12 at 948823c) - + t3910: show failure of core.precomposeunicode with decomposed filenames - - Document a known breakage with a test. - - Will keep in 'next' for the remainder of the cycle. - - -* mt/send-email-cover-to-cc (2014-04-29) 2 commits - (merged to 'next' on 2014-05-12 at b696006) - + test/send-email: to-cover, cc-cover tests - + git-send-email: two new options: to-cover, cc-cover - - Will keep in 'next' for the remainder of the cycle. - - -* nd/split-index (2014-04-29) 33 commits - - SQUASH??? - - t1700: new tests for split-index mode - - t2104: make sure split index mode is off for the version test - - read-cache: force split index mode with GIT_TEST_SPLIT_INDEX - - read-tree: note about dropping split-index mode or index version - - read-tree: force split-index mode off on --index-output - - rev-parse: add --shared-index-path to get shared index path - - update-index --split-index: do not split if $GIT_DIR is read only - - update-index: new options to enable/disable split index mode - - split-index: strip pathname of on-disk replaced entries - - split-index: do not invalidate cache-tree at read time - - split-index: the reading part - - split-index: the writing part - - read-cache: mark updated entries for split index - - read-cache: save deleted entries in split index - - read-cache: mark new entries for split index - - read-cache: split-index mode - - read-cache: save index SHA-1 after reading - - entry.c: update cache_changed if refresh_cache is set in checkout_entry() - - cache-tree: mark istate->cache_changed on prime_cache_tree() - - cache-tree: mark istate->cache_changed on cache tree update - - cache-tree: mark istate->cache_changed on cache tree invalidation - - unpack-trees: be specific what part of the index has changed - - resolve-undo: be specific what part of the index has changed - - update-index: be specific what part of the index has changed - - read-cache: be specific what part of the index has changed - - read-cache: be strict about "changed" in remove_marked_cache_entries() - - read-cache: store in-memory flags in the first 12 bits of ce_flags - - read-cache: relocate and unexport commit_locked_index() - - read-cache: new API write_locked_index instead of write_index/write_cache - - sequencer: do not update/refresh index if the lock cannot be held - - ewah: delete unused ewah_read_mmap_native declaration - - ewah: fix constness of ewah_read_mmap - - The tip one is a reminder that needs to be squashed to squelch - a "may be unused" compilation warning that is a false positive. - - -* tl/relax-in-poll-emulation (2014-04-29) 1 commit - (merged to 'next' on 2014-05-12 at 9369b08) - + compat/poll: sleep 1 millisecond to avoid busy wait - - Will keep in 'next' for the remainder of the cycle. - - -* bc/blame-crlf-test (2014-05-08) 1 commit - (merged to 'next' on 2014-05-14 at b819505) - + blame: correctly handle files regardless of autocrlf - - If a file contained CRLF line endings in a repository with - core.autocrlf=input, then blame always marked lines as "Not - Committed Yet", even if they were unmodified. - - Will keep in 'next' for the remainder of the cycle. - - -* ep/shell-command-substitution (2014-04-30) 41 commits - (merged to 'next' on 2014-05-07 at e9952c7) - + t5000-tar-tree.sh: use the $( ... ) construct for command substitution - + t4204-patch-id.sh: use the $( ... ) construct for command substitution - + t4119-apply-config.sh: use the $( ... ) construct for command substitution - + t4116-apply-reverse.sh: use the $( ... ) construct for command substitution - + t4057-diff-combined-paths.sh: use the $( ... ) construct for command substitution - + t4038-diff-combined.sh: use the $( ... ) construct for command substitution - + t4036-format-patch-signer-mime.sh: use the $( ... ) construct for command substitution - + t4014-format-patch.sh: use the $( ... ) construct for command substitution - + t4013-diff-various.sh: use the $( ... ) construct for command substitution - + t4012-diff-binary.sh: use the $( ... ) construct for command substitution - + t4010-diff-pathspec.sh: use the $( ... ) construct for command substitution - + t4006-diff-mode.sh: use the $( ... ) construct for command substitution - + t3910-mac-os-precompose.sh: use the $( ... ) construct for command substitution - + t3905-stash-include-untracked.sh: use the $( ... ) construct for command substitution - + t1050-large.sh: use the $( ... ) construct for command substitution - + t1020-subdirectory.sh: use the $( ... ) construct for command substitution - + t1004-read-tree-m-u-wf.sh: use the $( ... ) construct for command substitution - + t1003-read-tree-prefix.sh: use the $( ... ) construct for command substitution - + t1002-read-tree-m-u-2way.sh: use the $( ... ) construct for command substitution - + t1001-read-tree-m-2way.sh: use the $( ... ) construct for command substitution - + t1000-read-tree-m-3way.sh: use the $( ... ) construct for command substitution - + t0300-credentials.sh: use the $( ... ) construct for command substitution - + t0030-stripspace.sh: use the $( ... ) construct for command substitution - + t0026-eol-config.sh: use the $( ... ) construct for command substitution - + t0025-crlf-auto.sh: use the $( ... ) construct for command substitution - + t0020-crlf.sh: use the $( ... ) construct for command substitution - + t0010-racy-git.sh: use the $( ... ) construct for command substitution - + t0001-init.sh: use the $( ... ) construct for command substitution - + p5302-pack-index.sh: use the $( ... ) construct for command substitution - + lib-gpg.sh: use the $( ... ) construct for command substitution - + lib-cvs.sh: use the $( ... ) construct for command substitution - + lib-credential.sh: use the $( ... ) construct for command substitution - + git-web--browse.sh: use the $( ... ) construct for command substitution - + git-stash.sh: use the $( ... ) construct for command substitution - + git-rebase.sh: use the $( ... ) construct for command substitution - + git-rebase--merge.sh: use the $( ... ) construct for command substitution - + git-pull.sh: use the $( ... ) construct for command substitution - + appp.sh: use the $( ... ) construct for command substitution - + t7900-subtree.sh: use the $( ... ) construct for command substitution - + test-gitmw-lib.sh: use the $( ... ) construct for command substitution - + t9365-continuing-queries.sh: use the $( ... ) construct for command substitution - - Adjust shell scripts to use $(cmd) instead of `cmd`. - - Will keep in 'next' for the remainder of the cycle. - - -* ib/test-selectively-run (2014-05-21) 4 commits - - t0000-*.sh: Fix the GIT_SKIP_TESTS sub-tests - - test-lib: '--run' to run only specific tests - - test-lib: tests skipped by GIT_SKIP_TESTS say so - - test-lib: Document short options in t/README - - Allow specifying only certain individual test pieces to be run - using a range notation (e.g. "t1234-test.sh --run='1-4 6 8 9-'"). - - -* mm/mediawiki-encoding-fix (2014-04-23) 2 commits - (merged to 'next' on 2014-05-02 at 7744361) - + git-remote-mediawiki: fix encoding issue for UTF-8 media files - + git-remote-mediawiki: allow stop/start-ing the test server - - Will keep in 'next' for the remainder of the cycle. - - -* sk/tag-contains-wo-recursion (2014-04-25) 1 commit - (merged to 'next' on 2014-04-25 at f320750) - + git tag --contains: avoid stack overflow - - Will keep in 'next' for the remainder of the cycle. - - -* fc/remote-helper-refmap (2014-04-21) 8 commits - (merged to 'next' on 2014-04-22 at fb5a4c2) - + transport-helper: remove unnecessary strbuf resets - + transport-helper: add support to delete branches - + fast-export: add support to delete refs - + fast-import: add support to delete refs - + transport-helper: add support to push symbolic refs - + transport-helper: add support for old:new refspec - + fast-export: add new --refspec option - + fast-export: improve argument parsing - - Allow remote-helper/fast-import based transport to rename the refs - while transferring the history. - - Will keep in 'next' for the remainder of the cycle. - - -* jk/external-diff-use-argv-array (2014-04-21) 5 commits - (merged to 'next' on 2014-04-22 at e6d92d7) - + run_external_diff: refactor cmdline setup logic - + run_external_diff: hoist common bits out of conditional - + run_external_diff: drop fflush(NULL) - + run_external_diff: clean up error handling - + run_external_diff: use an argv_array for the environment - - Code clean-up (and a bugfix which has been merged for 2.0). - - Will keep in 'next' for the remainder of the cycle. - - -* jx/blame-align-relative-time (2014-04-23) 2 commits - (merged to 'next' on 2014-04-23 at 858df39) - + blame: dynamic blame_date_width for different locales - + blame: fix broken time_buf paddings in relative timestamp - - "git blame" miscounted number of columns needed to show localized - timestamps, resulting in jaggy left-side-edge of the source code - lines in its output. - - Will keep in 'next' for the remainder of the cycle. - - -* fc/merge-default-to-upstream (2014-04-22) 1 commit - (merged to 'next' on 2014-04-22 at 4f98483) - + merge: enable defaulttoupstream by default - - "git merge" without argument, even when there is an upstream - defined for the current branch, refused to run until - merge.defaultToUpstream is set to true. Flip the default of that - configuration variable to true. - - Will keep in 'next' for the remainder of the cycle. - - -* fc/mergetool-prompt (2014-04-24) 2 commits - (merged to 'next' on 2014-05-02 at a554691) - + mergetool: document the default for --[no-]prompt - (merged to 'next' on 2014-04-22 at dcaec94) - + mergetool: run prompt only if guessed tool - - mergetool.prompt used to default to 'true', always causing a confirmation - "do you really want to run the tool on this path" to be shown. - - Among the two purposes the prompt serves, ignore the use case to - confirm that the user wants to view particular path with the named - tool, and make the prompt only to confirm the choice of the tool - made by autodetection and defaulting. For those who configured the - tool explicitly, the prompt shown for the latter purpose is simply - annoying. - - Strictly speaking, this is a backward incompatible change and the - users need to explicitly set the variable to 'true' if they want to - resurrect the now-ignored use case. - - Will keep in 'next' for the remainder of the cycle. - - -* fc/mergetools-vimdiff3 (2014-04-22) 1 commit - (merged to 'next' on 2014-04-22 at d843e75) - + mergetools: add vimdiff3 mode - - Will keep in 'next' for the remainder of the cycle. - - -* lr/git-run-setup-gently (2014-04-22) 1 commit - (merged to 'next' on 2014-04-22 at 5c2523f) - + git.c: treat RUN_SETUP_GENTLY and RUN_SETUP as mutually exclusive - - Will keep in 'next' for the remainder of the cycle. - - -* jl/git-gui-show-added-submodule-changes (2014-04-15) 1 commit - - git-gui: show staged submodules regardless of ignore config - - Tentatively queued what I expect to receive via Pat Thoyts. - - -* jl/gitk-show-added-submodule-changes (2014-04-15) 3 commits - - gitk: show staged submodules regardless of ignore config - - gitk: Merge branch 'new' of https://github.com/vnwildman/gitk - - l10n: Init Vietnamese translation - - Tentatively queued what I expect to receive via Paul Mackerras. - + Will merge to 'master'. -* bg/rebase-off-of-previous-branch (2014-04-16) 1 commit - - git-rebase: print name of rev when using shorthand - Teach "git rebase -" to report the concrete name of the branch - (i.e. the previous one). +* jk/utf8-switch-between-nfd-and-nfc (2014-04-29) 1 commit + (merged to 'next' on 2014-05-12 at 948823c) + + t3910: show failure of core.precomposeunicode with decomposed filenames - But it stops short and does not do the same for "git rebase @{-1}". - Expecting a reroll. + Document a known breakage with a test. + Will merge to 'master'. -* ef/send-email-absolute-path-to-the-command (2014-04-23) 2 commits - (merged to 'next' on 2014-04-23 at a657e5e) - + send-email: windows drive prefix (e.g. C:) appears only at the beginning - (merged to 'next' on 2014-04-21 at 43bebb5) - + send-email: recognize absolute path on Windows - Will keep in 'next' for the remainder of the cycle. +* mt/send-email-cover-to-cc (2014-04-29) 2 commits + (merged to 'next' on 2014-05-12 at b696006) + + test/send-email: to-cover, cc-cover tests + + git-send-email: two new options: to-cover, cc-cover + Will merge to 'master'. -* jh/submodule-tests (2014-04-17) 1 commit - - t7410: 210 tests for various 'git submodule update' scenarios +* nd/split-index (2014-06-02) 34 commits + - fixup! read-cache: new API write_locked_index instead of write_index/write_cache + - SQUASH??? + - t1700: new tests for split-index mode + - t2104: make sure split index mode is off for the version test + - read-cache: force split index mode with GIT_TEST_SPLIT_INDEX + - read-tree: note about dropping split-index mode or index version + - read-tree: force split-index mode off on --index-output + - rev-parse: add --shared-index-path to get shared index path + - update-index --split-index: do not split if $GIT_DIR is read only + - update-index: new options to enable/disable split index mode + - split-index: strip pathname of on-disk replaced entries + - split-index: do not invalidate cache-tree at read time + - split-index: the reading part + - split-index: the writing part + - read-cache: mark updated entries for split index + - read-cache: save deleted entries in split index + - read-cache: mark new entries for split index + - read-cache: split-index mode + - read-cache: save index SHA-1 after reading + - entry.c: update cache_changed if refresh_cache is set in checkout_entry() + - cache-tree: mark istate->cache_changed on prime_cache_tree() + - cache-tree: mark istate->cache_changed on cache tree update + - cache-tree: mark istate->cache_changed on cache tree invalidation + - unpack-trees: be specific what part of the index has changed + - resolve-undo: be specific what part of the index has changed + - update-index: be specific what part of the index has changed + - read-cache: be specific what part of the index has changed + - read-cache: be strict about "changed" in remove_marked_cache_entries() + - read-cache: store in-memory flags in the first 12 bits of ce_flags + - read-cache: relocate and unexport commit_locked_index() + - read-cache: new API write_locked_index instead of write_index/write_cache + - sequencer: do not update/refresh index if the lock cannot be held + - ewah: delete unused ewah_read_mmap_native declaration + - ewah: fix constness of ewah_read_mmap -* rs/ref-update-check-errors-early (2014-04-17) 2 commits - (merged to 'next' on 2014-04-21 at acc62aa) - + commit.c: check for lock error and return early - + sequencer.c: check for lock failure and bail early in fast_forward_to + The tip two remind us the need for a minor reroll. If I find time + I could try to squash them myself, but it is low priority for me. - Will keep in 'next' for the remainder of the cycle. +* tl/relax-in-poll-emulation (2014-04-29) 1 commit + (merged to 'next' on 2014-05-12 at 9369b08) + + compat/poll: sleep 1 millisecond to avoid busy wait -* sk/svn-parse-datestamp (2014-04-17) 1 commit - (merged to 'next' on 2014-04-21 at 5ff519f) - + SVN.pm::parse_svn_date: allow timestamps with a single-digit hour + Will merge to 'master'. - Will keep in 'next' for the remainder of the cycle. +* bc/blame-crlf-test (2014-05-08) 1 commit + (merged to 'next' on 2014-05-14 at b819505) + + blame: correctly handle files regardless of autocrlf -* nd/index-pack-one-fd-per-thread (2014-04-16) 1 commit - (merged to 'next' on 2014-04-16 at b38d5a9) - + index-pack: work around thread-unsafe pread() + If a file contained CRLF line endings in a repository with + core.autocrlf=input, then blame always marked lines as "Not + Committed Yet", even if they were unmodified. - Enable threaded index-pack on platforms without thread-unsafe - pread() emulation. + Will merge to 'master'. - Will keep in 'next' for the remainder of the cycle. +* ib/test-selectively-run (2014-05-21) 4 commits + - t0000-*.sh: Fix the GIT_SKIP_TESTS sub-tests + - test-lib: '--run' to run only specific tests + - test-lib: tests skipped by GIT_SKIP_TESTS say so + - test-lib: Document short options in t/README -* ym/fix-opportunistic-index-update-race (2014-04-10) 2 commits - (merged to 'next' on 2014-04-16 at cb92f4f) - + read-cache.c: verify index file before we opportunistically update it - + wrapper.c: add xpread() similar to xread() + Allow specifying only certain individual test pieces to be run + using a range notation (e.g. "t1234-test.sh --run='1-4 6 8 9-'"). - Read-only operations such as "git status" that internally refreshes - the index write out the refreshed index to the disk to optimize - future accesses to the working tree, but this could race with a - "read-write" operation that modify the index while it is running. - Detect such a race and avoid overwriting the index. - Duy raised a good point that we may need to do the same for the - normal writeout codepath, not just the "opportunistic" update - codepath. While that is true, nobody sane would be running two - simultaneous operations that are clearly write-oriented competing - with each other against the same index file. So in that sense that - can be done as a less urgent follow-up for this topic. +* fc/remote-helper-refmap (2014-04-21) 8 commits + (merged to 'next' on 2014-04-22 at fb5a4c2) + + transport-helper: remove unnecessary strbuf resets + + transport-helper: add support to delete branches + + fast-export: add support to delete refs + + fast-import: add support to delete refs + + transport-helper: add support to push symbolic refs + + transport-helper: add support for old:new refspec + + fast-export: add new --refspec option + + fast-export: improve argument parsing - Will keep in 'next' for the remainder of the cycle. + Allow remote-helper/fast-import based transport to rename the refs + while transferring the history. -* jl/status-added-submodule-is-never-ignored (2014-04-07) 2 commits - - commit -m: commit staged submodules regardless of ignore config - - status/commit: show staged submodules regardless of ignore config +* jl/git-gui-show-added-submodule-changes (2014-04-15) 1 commit + - git-gui: show staged submodules regardless of ignore config - There also are a few patches Ronald Weiss and Jens are working on - polishing around this topic, and a patch from Jens each for gitk - and git-gui. + Tentatively queued what I expect to receive via Pat Thoyts. - Waiting for the dust to settle until picking them up all. +* jl/gitk-show-added-submodule-changes (2014-04-15) 3 commits + - gitk: show staged submodules regardless of ignore config + - gitk: Merge branch 'new' of https://github.com/vnwildman/gitk + - l10n: Init Vietnamese translation -* mh/lockfile (2014-04-15) 25 commits - - trim_last_path_elm(): replace last_path_elm() - - resolve_symlink(): take a strbuf parameter - - resolve_symlink(): use a strbuf for internal scratch space - - change lock_file::filename into a strbuf - - commit_lock_file(): use a strbuf to manage temporary space - - try_merge_strategy(): use a statically-allocated lock_file object - - try_merge_strategy(): remove redundant lock_file allocation - - struct lock_file: declare some fields volatile - - lockfile: avoid transitory invalid states - - commit_lock_file(): die() if called for unlocked lockfile object - - commit_lock_file(): inline temporary variable - - remove_lock_file(): call rollback_lock_file() - - lock_file(): exit early if lockfile cannot be opened - - write_packed_entry_fn(): convert cb_data into a (const int *) - - prepare_index(): declare return value to be (const char *) - - delete_ref_loose(): don't muck around in the lock_file's filename - - cache.h: define constants LOCK_SUFFIX and LOCK_SUFFIX_LEN - - lockfile.c: document the various states of lock_file objects - - lock_file(): always add lock_file object to lock_file_list - - hold_lock_file_for_append(): release lock on errors - - lockfile: unlock file if lockfile permissions cannot be adjusted - - rollback_lock_file(): set fd to -1 - - rollback_lock_file(): do not clear filename redundantly - - api-lockfile: expand the documentation - - unable_to_lock_die(): rename function from unable_to_lock_index_die() + Tentatively queued what I expect to receive via Paul Mackerras. - Refactor and fix corner-case bugs in the lockfile API, all looked - sensible. - Expecting a reroll. +* jh/submodule-tests (2014-04-17) 1 commit + - t7410: 210 tests for various 'git submodule update' scenarios * mt/patch-id-stable (2014-05-06) 6 commits @@ -1023,68 +1281,7 @@ of the repositories listed at Introduce a new way to compute patch-id for a patch that is not affected by the order of the paths that appear in the input. - Will keep in 'next' for the remainder of the cycle. - - -* mh/ref-transaction (2014-04-07) 27 commits - (merged to 'next' on 2014-04-16 at a99f84d) - + ref_transaction_commit(): work with transaction->updates in place - + struct ref_update: add a type field - + struct ref_update: add a lock field - + ref_transaction_commit(): simplify code using temporary variables - + struct ref_update: store refname as a FLEX_ARRAY - + struct ref_update: rename field "ref_name" to "refname" - + refs: remove API function update_refs() - + update-ref --stdin: reimplement using reference transactions - + refs: add a concept of a reference transaction - + update-ref --stdin: harmonize error messages - + update-ref --stdin: improve the error message for unexpected EOF - + t1400: test one mistake at a time - + update-ref --stdin -z: deprecate interpreting the empty string as zeros - + update-ref.c: extract a new function, parse_next_sha1() - + t1400: test that stdin -z update treats empty as zeros - + update-ref --stdin: simplify error messages for missing oldvalues - + update-ref --stdin: make error messages more consistent - + update-ref --stdin: improve error messages for invalid values - + update-ref.c: extract a new function, parse_refname() - + parse_cmd_verify(): copy old_sha1 instead of evaluating twice - + update-ref --stdin: read the whole input at once - + update_refs(): fix constness - + refs.h: rename the action_on_err constants - + t1400: add some more tests involving quoted arguments - + parse_arg(): really test that argument is properly terminated - + t1400: provide more usual input to the command - + t1400: fix name and expected result of one test - - Update "update-ref --stdin [-z]" and then introduce a transactional - support for (multi-)reference updates. - - Will keep in 'next' for the remainder of the cycle. - - -* jc/apply-ignore-whitespace (2014-03-26) 1 commit - (merged to 'next' on 2014-04-04 at 53779a7) - + apply --ignore-space-change: lines with and without leading whitespaces do not match - - "--ignore-space-change" option of "git apply" ignored the - spaces at the beginning of line too aggressively, which is - inconsistent with the option of the same name "diff" and "git diff" - have. - - Will keep in 'next' for the remainder of the cycle. - - -* as/grep-fullname-config (2014-03-20) 1 commit - (merged to 'next' on 2014-03-28 at 810a076) - + grep: add grep.fullName config variable - - Add a configuration variable to force --full-name to be default for - "git grep". - - This may cause regressions on scripted users that do not expect - this new behaviour. - - Will keep in 'next' for the remainder of the cycle. + Will merge to 'master'. * nd/multiple-work-trees (2014-03-25) 28 commits @@ -1124,44 +1321,7 @@ of the repositories listed at Will hold. -* ks/tree-diff-nway (2014-04-09) 20 commits - (merged to 'next' on 2014-04-09 at c17228e) - + mingw: activate alloca - (merged to 'next' on 2014-04-08 at 6b74773) - + combine-diff: speed it up, by using multiparent diff tree-walker directly - + tree-diff: rework diff_tree() to generate diffs for multiparent cases as well - + Portable alloca for Git - (merged to 'next' on 2014-03-31 at 16a7bd4) - + tree-diff: reuse base str(buf) memory on sub-tree recursion - + tree-diff: no need to call "full" diff_tree_sha1 from show_path() - + tree-diff: rework diff_tree interface to be sha1 based - + tree-diff: diff_tree() should now be static - + tree-diff: remove special-case diff-emitting code for empty-tree cases - (merged to 'next' on 2014-03-25 at cfcbdac) - + tree-diff: simplify tree_entry_pathcmp - + tree-diff: show_path prototype is not needed anymore - + tree-diff: rename compare_tree_entry -> tree_entry_pathcmp - + tree-diff: move all action-taking code out of compare_tree_entry() - + tree-diff: don't assume compare_tree_entry() returns -1,0,1 - (merged to 'next' on 2014-03-21 at d872679) - + tree-diff: consolidate code for emitting diffs and recursion in one place - + tree-diff: show_tree() is not needed - + tree-diff: no need to pass match to skip_uninteresting() - + tree-diff: no need to manually verify that there is no mode change for a path - + combine-diff: move changed-paths scanning logic into its own function - + combine-diff: move show_log_first logic/action out of paths scanning - - Instead of running N pair-wise diff-trees when inspecting a - N-parent merge, find the set of paths that were touched by walking - N+1 trees in parallel. These set of paths can then be turned into - N pair-wise diff-tree results to be processed through rename - detections and such. And N=2 case nicely degenerates to the usual - 2-way diff-tree, which is very nice. - - Will keep in 'next' for the remainder of the cycle. - - -* cc/interpret-trailers (2014-04-29) 11 commits +* cc/interpret-trailers (2014-05-28) 11 commits - Documentation: add documentation for 'git interpret-trailers' - trailer: add tests for commands in config file - trailer: execute command from 'trailer..command' @@ -1191,13 +1351,6 @@ of the repositories listed at parties. -* jc/graduate-remote-hg-bzr (2014-05-19) 1 commit - (merged to 'next' on 2014-05-19 at eeb9af6) - + remote-helpers: give short instructions to download the latest - - Reverted from 'next'. - - * mt/rebase-i-ack (2014-05-19) 6 commits . git-ack: record an ack . rebase: test ack @@ -1210,16 +1363,6 @@ of the repositories listed at Will be rerolled post 2.0 -* fc/remote-hg-fixes-for-hg-3.0 (2014-05-08) 5 commits - . [DONTMERGE-not signed-off] remote-hg: work with older versions of mercurial - . remote-hg: add support for hg v3.0 - . t: remote-hg: trivial cleanups and fixes - . t: remote-hg: add file operation tests - . remote-hg: add more tests - - No longer relevant, as 'master' unbundles contrib/remote-helpers/. - - * rs/ref-transaction (2014-04-29) 27 commits . refs.c: make lock_ref_sha1 static . refs.c: make write_ref_sha1 static @@ -1254,20 +1397,3 @@ of the repositories listed at flight, and the topic is still being worked on with frequent rerolls. Will pick up a reroll once things settle down a bit after the release. - - -* fc/remote-helpers-hg-bzr-graduation (2014-04-29) 11 commits - . remote-hg: trivial cleanups - . remote-hg: make sure we omit multiple heads - . git-remote-hg: use internal clone's hgrc - . t: remote-hg: split into setup test - . remote-hg: properly detect missing contexts - . remote-{hg,bzr}: store marks only on success - . remote-hg: update to 'public' phase when pushing - . remote-hg: fix parsing of custom committer - (merged to 'next' on 2014-04-22 at fed170a) - + remote-helpers: move tests out of contrib - + remote-helpers: move out of contrib - + remote-helpers: squelch python import exceptions - - No longer relevant, as 'master' unbundles contrib/remote-helpers/. -- 2.47.3