@leroysheep / CrazyWebTemps / commits / d696d38048

What's cooking (2018/11 #06)

Junio C Hamano committed Nov 21, 2018 at 17:57 UTC d696d380480c15566484ab7bb5d3045ce60fc32e
1 file changed +578 -472
whats-cooking.txt
+578 -472
index cc0c79f2e1..3d2f7ba60f 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,10 +1,10 @@ To: git@vger.kernel.org Bcc: lwn@lwn.net -Subject: What's cooking in git.git (Nov 2018, #05; Sat, 17) -X-master-at: d166e6afe5f257217836ef24a73764eba390c58d -X-next-at: 2fe598284e7f22561137927e87b2ef6d70e8ab2c +Subject: What's cooking in git.git (Nov 2018, #06; Wed, 21) +X-master-at: bb75be6cb916297f271c846f2f9caa3daaaec718 +X-next-at: 68bc7959f8dc2d629c09be1a52f1b95b977b3a13 -What's cooking in git.git (Nov 2018, #05; Sat, 17) +What's cooking in git.git (Nov 2018, #06; Wed, 21) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with @@ -18,106 +18,156 @@ of the repositories listed at http://git-blame.blogspot.com/p/git-public-repositories.html -------------------------------------------------- -[New Topics] +[Graduated to "master"] -* ab/push-example-in-doc (2018-11-14) 1 commit - - push: change needlessly ambiguous example in error +* ab/dynamic-gettext-poison (2018-11-09) 2 commits + (merged to 'next' on 2018-11-18 at 13247a3be6) + + Makefile: ease dynamic-gettext-poison transition + + i18n: make GETTEXT_POISON a runtime option - An error message that sugggests how to give correct arguments to - "git push" has been updated. + Our testing framework uses a special i18n "poisoned localization" + feature to find messages that ought to stay constant but are + incorrectly marked to be translated. This feature has been made + into a runtime option (it used to be a compile-time option). - Will merge to 'next'. +* ab/range-diff-no-patch (2018-11-14) 3 commits + (merged to 'next' on 2018-11-17 at c42e0891d0) + + range-diff: make diff option behavior (e.g. --stat) consistent + + range-diff: fix regression in passing along diff options + + range-diff doc: add a section about output stability -* dd/poll-dot-h (2018-11-14) 1 commit - - git-compat-util: prefer poll.h to sys/poll.h + The "--no-patch" option, which can be used to get a high-level + overview without the actual line-by-line patch difference shown, of + the "range-diff" command was earlier broken, which has been + corrected. - A build update. - Will merge to 'next'. +* ab/rebase-in-c-escape-hatch (2018-11-16) 2 commits + (merged to 'next' on 2018-11-17 at a01be221c7) + + tests: add a special setup where rebase.useBuiltin is off + + rebase doc: document rebase.useBuiltin + The recently merged "rebase in C" has an escape hatch to use the + scripted version when necessary, but it hasn't been documented, + which has been corrected. -* en/fast-export-import (2018-11-17) 11 commits - - fast-export: add a --show-original-ids option to show original names - - fast-import: remove unmaintained duplicate documentation - - fast-export: add --reference-excluded-parents option - - fast-export: ensure we export requested refs - - fast-export: when using paths, avoid corrupt stream with non-existent mark - - fast-export: move commit rewriting logic into a function for reuse - - fast-export: avoid dying when filtering by paths and old tags exist - - fast-export: use value from correct enum - - git-fast-export.txt: clarify misleading documentation about rev-list args - - git-fast-import.txt: fix documentation for --quiet option - - fast-export: convert sha1 to oid - Small fixes and features for fast-export and fast-import, mostly on - the fast-export side. +* ag/p3400-force-checkout (2018-11-12) 1 commit + (merged to 'next' on 2018-11-17 at 87ff48d52a) + + p3400: replace calls to `git checkout -b' by `git checkout -B' - Will merge to 'next'. + Perf test tweak. -* js/mingw-create-hard-link (2018-11-14) 1 commit - (merged to 'next' on 2018-11-17 at 27f866db16) - + mingw: use `CreateHardLink()` directly +* cb/notes-freeing-always-null-fix (2018-11-13) 1 commit + (merged to 'next' on 2018-11-17 at 47aeec5fc9) + + builtin/notes: remove unnecessary free - Windows update. + Code cleanup. - Will merge to 'master'. +* dd/poll-dot-h (2018-11-14) 1 commit + (merged to 'next' on 2018-11-18 at b6745f3308) + + git-compat-util: prefer poll.h to sys/poll.h -* js/test-git-installed (2018-11-16) 5 commits - - tests: explicitly use `git.exe` on Windows - - tests: do not require Git to be built when testing an installed Git - - t/lib-gettext: test installed git-sh-i18n if GIT_TEST_INSTALLED is set - - tests: respect GIT_TEST_INSTALLED when initializing repositories - - tests: fix GIT_TEST_INSTALLED's PATH to include t/helper/ + A build update. - Update the "test installed Git" mode of our test suite to work better. - Will merge to 'next'. +* ds/push-squelch-ambig-warning (2018-11-07) 1 commit + (merged to 'next' on 2018-11-18 at 5e8b3db129) + + pack-objects: ignore ambiguous object warnings + "git push" used to check ambiguities between object-names and + refnames while processing the list of refs' old and new values, + which was unnecessary (as it knew that it is feeding raw object + names). This has been optimized out. -* lj/mingw-pthread-cond (2018-11-14) 1 commit - (merged to 'next' on 2018-11-17 at 46abe4100d) - + win32: replace pthread_cond_*() with much simpler code - Code simplification. +* ds/reachable-topo-order (2018-11-02) 7 commits + (merged to 'next' on 2018-11-13 at 4155d01aee) + + t6012: make rev-list tests more interesting + + revision.c: generation-based topo-order algorithm + + commit/revisions: bookkeeping before refactoring + + revision.c: begin refactoring --topo-order logic + + test-reach: add rev-list tests + + test-reach: add run_three_modes method + + prio-queue: add 'peek' operation - Will merge to 'master'. + The revision walker machinery learned to take advantage of the + commit generation numbers stored in the commit-graph file. -* nd/checkout-dwim-fix (2018-11-14) 1 commit - - checkout: disambiguate dwim tracking branches and local files +* jk/close-duped-fd-before-unlock-for-bundle (2018-11-17) 1 commit + (merged to 'next' on 2018-11-17 at 2fe598284e) + + bundle: dup() output descriptor closer to point-of-use - "git checkout frotz" (without any double-dash) avoids ambiguity by - making sure 'frotz' cannot be interpreted as a revision and as a - path at the same time. This safety has been updated to check also - a unique remote-tracking branch 'frotz' in a remote, when dwimming - to create a local branch 'frotz' out of a remote-tracking branch - 'frotz' from a remote. + When "git bundle" aborts due to an empty commit ranges + (i.e. resulting in an empty pack), it left a file descriptor to an + lockfile open, which resulted in leftover lockfile on Windows where + you cannot remove a file with an open file descriptor. This has + been corrected. - Will merge to 'next'. +* jk/curl-ldflags (2018-11-05) 1 commit + (merged to 'next' on 2018-11-13 at d1387a3aa0) + + build: link with curl-defined linker flags -* nd/checkout-noisy (2018-11-14) 1 commit - - checkout: print something when checking out paths + The way -lcurl library gets linked has been simplified by taking + advantage of the fact that we can just ask curl-config command how. - "git checkout [<tree-ish>] path..." learned to report the number of - paths that have been checked out of the index or the tree-ish, - which gives it the same degree of noisy-ness as the case in which - the command checks out a branch. +* jk/unused-parameter-fixes (2018-11-06) 14 commits + (merged to 'next' on 2018-11-13 at 8d3625b4ae) + + midx: double-check large object write loop + + assert NOARG/NONEG behavior of parse-options callbacks + + parse-options: drop OPT_DATE() + + apply: return -1 from option callback instead of calling exit(1) + + cat-file: report an error on multiple --batch options + + tag: mark "--message" option with NONEG + + show-branch: mark --reflog option as NONEG + + format-patch: mark "--no-numbered" option with NONEG + + status: mark --find-renames option with NONEG + + cat-file: mark batch options with NONEG + + pack-objects: mark index-version option as NONEG + + ls-files: mark exclude options as NONEG + + am: handle --no-patch-format option + + apply: mark include/exclude options as NONEG + + Various functions have been audited for "-Wunused-parameter" warnings + and bugs in them got fixed. -* ab/rebase-in-c-escape-hatch (2018-11-16) 2 commits - (merged to 'next' on 2018-11-17 at a01be221c7) - + tests: add a special setup where rebase.useBuiltin is off - + rebase doc: document rebase.useBuiltin - The recently merged "rebase in C" has an escape hatch to use the - scripted version when necessary, but it hasn't been documented, - which has been corrected. +* jk/verify-sig-merge-into-void (2018-11-07) 3 commits + (merged to 'next' on 2018-11-13 at a207be60ed) + + pull: handle --verify-signatures for unborn branch + + merge: handle --verify-signatures for unborn branch + + merge: extract verify_merge_signature() helper - Will merge to 'master'. + "git merge" and "git pull" that merges into an unborn branch used + to completely ignore "--verify-signatures", which has been + corrected. + + +* js/apply-recount-allow-noop (2018-11-13) 1 commit + (merged to 'next' on 2018-11-17 at e413fa105f) + + apply --recount: allow "no-op hunks" + + When editing a patch in a "git add -i" session, a hunk could be + made to no-op. The "git apply" program used to reject a patch with + such a no-op hunk to catch user mistakes, but it is now updated to + explicitly allow a no-op hunk in an edited patch. + + +* js/builtin-rebase-perf-fix (2018-11-13) 3 commits + (merged to 'next' on 2018-11-17 at 9e9db8c8e1) + + built-in rebase: reinstate `checkout -q` behavior where appropriate + + rebase: prepare reset_head() for more flags + + rebase: consolidate clean-up code before leaving reset_head() + + Code clean-up with correction to make the reimplemented "git + rebase" a more faithful rewrite of the original, which also regains + performance. * js/config-sequence (2018-11-16) 1 commit @@ -127,8 +177,6 @@ of the repositories listed at A sanity check for start-up sequence has been added in the config API codepath. - Will merge to 'master'. - * js/fuzz-cxxflags (2018-11-16) 1 commit (merged to 'next' on 2018-11-17 at 5e589a5237) @@ -137,7 +185,20 @@ of the repositories listed at The build procedure to link for fuzzing test has been made customizable with a new Makefile variable. - Will merge to 'master'. + +* js/mailmap (2018-11-12) 1 commit + (merged to 'next' on 2018-11-17 at 673bfc4cfa) + + Update .mailmap + + Update the mailmap to unify multiple entries for the authors with + commits since v2.10. + + +* js/mingw-create-hard-link (2018-11-14) 1 commit + (merged to 'next' on 2018-11-17 at 27f866db16) + + mingw: use `CreateHardLink()` directly + + Windows update. * js/mingw-msdn-url (2018-11-16) 1 commit @@ -146,7 +207,12 @@ of the repositories listed at The URL to an MSDN page in a comment has been updated. - Will merge to 'master'. + +* js/mingw-res-rebuild (2018-11-07) 1 commit + (merged to 'next' on 2018-11-13 at fb736827d1) + + Windows: force-recompile git.res for differing architectures + + Windows build update. * js/rebase-am-options (2018-11-16) 2 commits @@ -158,447 +224,516 @@ of the repositories listed at meant for underlying "git am" has been revamped, which fixed for options with parameters that were not passed correctly. - Will merge to 'master'. +* js/rebase-autostash-detach-fix (2018-11-08) 2 commits + (merged to 'next' on 2018-11-17 at 15957b4a5a) + + built-in rebase --autostash: leave the current branch alone if possible + + built-in rebase: demonstrate regression with --autostash -* nd/doc-extensions (2018-11-16) 1 commit - (merged to 'next' on 2018-11-17 at 09306064d5) - + doc: move extensions.worktreeConfig to the right place + "git rebase --autostash" did not correctly re-attach the HEAD at times. - Doc update. - Will merge to 'master'. +* js/rebase-r-and-merge-head (2018-11-13) 5 commits + (merged to 'next' on 2018-11-17 at 6bb27df7b1) + + status: rebase and merge can be in progress at the same time + + built-in rebase --skip/--abort: clean up stale .git/<name> files + + rebase -i: include MERGE_HEAD into files to clean up + + rebase -r: do not write MERGE_HEAD unless needed + + rebase -r: demonstrate bug with conflicting merges + Bugfix for the recently graduated "git rebase --rebase-merges". -* sg/clone-initial-fetch-configuration (2018-11-16) 3 commits - - Documentation/clone: document ignored configuration variables - - clone: respect additional configured fetch refspecs during initial fetch - - clone: use a more appropriate variable name for the default refspec - Refspecs configured with "git -c var=val clone" did not propagate - to the resulting repository, which has been corrected. +* js/test-git-installed (2018-11-16) 5 commits + (merged to 'next' on 2018-11-18 at 61474ba19e) + + tests: explicitly use `git.exe` on Windows + + tests: do not require Git to be built when testing an installed Git + + t/lib-gettext: test installed git-sh-i18n if GIT_TEST_INSTALLED is set + + tests: respect GIT_TEST_INSTALLED when initializing repositories + + tests: fix GIT_TEST_INSTALLED's PATH to include t/helper/ - Will merge to 'next'. + Update the "test installed Git" mode of our test suite to work better. -* sg/ref-filter-wo-repository (2018-11-16) 1 commit - (merged to 'next' on 2018-11-17 at c0bec63990) - + ref-filter: don't look for objects when outside of a repository +* lj/mingw-pthread-cond (2018-11-14) 1 commit + (merged to 'next' on 2018-11-17 at 46abe4100d) + + win32: replace pthread_cond_*() with much simpler code - "git ls-remote --sort=<thing>" can feed an object that is not yet - available into the comparison machinery and segfault, which has - been corrected to check such a request upfront and reject it. + Code simplification. - Will merge to 'master'. +* mg/gpg-fingerprint-test (2018-11-05) 2 commits + (merged to 'next' on 2018-11-13 at 71f11020c4) + + t/t7510-signed-commit.sh: add signing subkey to Eris Discordia key + + t/t7510-signed-commit.sh: Add %GP to custom format checks -* cc/shared-index-permbits (2018-11-17) 1 commit - - read-cache: write all indexes with the same permissions + Add a few tests for a topic already in 'master'. - The way .git/index and .git/sharedindex* files were initially - created gave these files different perm bits until they were - adjusted for shared repository settings. This was made consistent. - Expecting a reroll. +* nd/command-list-gen-fix (2018-11-12) 1 commit + (merged to 'next' on 2018-11-17 at a6ff6baa0b) + + build: fix broken command-list.h generation with core.autocrlf + Build tweak. -* jk/close-duped-fd-before-unlock-for-bundle (2018-11-17) 1 commit - (merged to 'next' on 2018-11-17 at 2fe598284e) - + bundle: dup() output descriptor closer to point-of-use - When "git bundle" aborts due to an empty commit ranges - (i.e. resulting in an empty pack), it left a file descriptor to an - lockfile open, which resulted in leftover lockfile on Windows where - you cannot remove a file with an open file descriptor. This has - been corrected. +* nd/doc-extensions (2018-11-16) 1 commit + (merged to 'next' on 2018-11-17 at 09306064d5) + + doc: move extensions.worktreeConfig to the right place - Will merge to 'master'. + Doc update. --------------------------------------------------- -[Stalled] -* lt/date-human (2018-07-09) 1 commit - - Add 'human' date format +* nd/format-patch-cover-letter-stat-width (2018-11-13) 1 commit + (merged to 'next' on 2018-11-18 at 65a464977d) + + format-patch: respect --stat in cover letter's diffstat - A new date format "--date=human" that morphs its output depending - on how far the time is from the current time has been introduced. - "--date=auto" can be used to use this new format when the output is - goint to the pager or to the terminal and otherwise the default - format. + "git format-patch --stat=<width>" can be used to specify the width + used by the diffstat (shown in the cover letter). --------------------------------------------------- -[Cooking] -* js/rebase-autostash-detach-fix (2018-11-08) 2 commits - (merged to 'next' on 2018-11-17 at 15957b4a5a) - + built-in rebase --autostash: leave the current branch alone if possible - + built-in rebase: demonstrate regression with --autostash +* nd/pthreads (2018-11-05) 14 commits + (merged to 'next' on 2018-11-13 at bb6914b3f8) + + Clean up pthread_create() error handling + + read-cache.c: initialize copy_len to shut up gcc 8 + + read-cache.c: reduce branching based on HAVE_THREADS + + read-cache.c: remove #ifdef NO_PTHREADS + + pack-objects: remove #ifdef NO_PTHREADS + + preload-index.c: remove #ifdef NO_PTHREADS + + grep: clean up num_threads handling + + grep: remove #ifdef NO_PTHREADS + + attr.c: remove #ifdef NO_PTHREADS + + name-hash.c: remove #ifdef NO_PTHREADS + + index-pack: remove #ifdef NO_PTHREADS + + send-pack.c: move async's #ifdef NO_PTHREADS back to run-command.c + + run-command.h: include thread-utils.h instead of pthread.h + + thread-utils: macros to unconditionally compile pthreads API - "git rebase --autostash" did not correctly re-attach the HEAD at times. + The codebase has been cleaned up to reduce "#ifndef NO_PTHREADS". - Will merge to 'master'. +* ra/rev-parse-exclude-glob (2018-11-13) 2 commits + (merged to 'next' on 2018-11-17 at 396dd7a2c2) + + refs: fix some exclude patterns being ignored + + refs: show --exclude failure with --branches/tags/remotes=glob -* en/rebase-merge-on-sequencer (2018-11-08) 2 commits - - rebase: implement --merge via git-rebase--interactive - - git-rebase, sequencer: extend --quiet option for the interactive machinery + "rev-parse --exclude=<pattern> --branches=<pattern>" etc. did not + quite work, which has been corrected. - "git rebase --merge" as been reimplemented by reusing the internal - machinery used for "git rebase -i". +* sb/cocci-pending (2018-11-14) 1 commit + (merged to 'next' on 2018-11-18 at dd271722d3) + + coccicheck: introduce 'pending' semantic patches -* js/mailmap (2018-11-12) 1 commit - (merged to 'next' on 2018-11-17 at 673bfc4cfa) - + Update .mailmap + A coding convention around the Coccinelle semantic patches to have + two classes to ease code migration process has been proposed and + its support has been added to the Makefile. - Update the mailmap to unify multiple entries for the authors with - commits since v2.10. - Will merge to 'master'. +* sg/ref-filter-wo-repository (2018-11-16) 1 commit + (merged to 'next' on 2018-11-17 at c0bec63990) + + ref-filter: don't look for objects when outside of a repository + "git ls-remote --sort=<thing>" can feed an object that is not yet + available into the comparison machinery and segfault, which has + been corrected to check such a request upfront and reject it. -* fc/http-version (2018-11-09) 1 commit - - http: add support selecting http version - The "http.version" configuration variable can be used with recent - enough cURL library to force the version of HTTP used to talk when - fetching and pushing. +* tb/print-size-t-with-uintmax-format (2018-11-12) 1 commit + (merged to 'next' on 2018-11-18 at 752e51c7ed) + + Upcast size_t variables to uintmax_t when printing + + Code preparation to replace ulong vars with size_t vars where + appropriate. + + +* tb/xcurl-off-t (2018-11-12) 1 commit + (merged to 'next' on 2018-11-18 at ac2a4bc14a) + + remote-curl.c: xcurl_off_t is not portable (on 32 bit platfoms) + + The xcurl_off_t() helper function is used to cast size_t to + curl_off_t, but some compilers gave warnings against the code to + ensure the casting is done without wraparound, when size_t is + narrower than curl_off_t. This warning has been squelched. + +-------------------------------------------------- +[New Topics] + +* dl/merge-cleanup-scissors-fix (2018-11-21) 2 commits + - merge: add scissors line on merge conflict + - t7600: clean up 'merge --squash c3 with c7' test + + The list of conflicted paths shown in the editor while concluding a + conflicted merge was shown above the scissors line when the + clean-up mode is set to "scissors", even though it was commented + out just like the list of updated paths and other information to + help the user explain the merge better. Will merge to 'next'. -* ag/p3400-force-checkout (2018-11-12) 1 commit - (merged to 'next' on 2018-11-17 at 87ff48d52a) - + p3400: replace calls to `git checkout -b' by `git checkout -B' +* aw/pretty-trailers (2018-11-19) 5 commits + - pretty: add support for separator option in %(trailers) + - strbuf: separate callback for strbuf_expand:ing literals + - pretty: add support for "valueonly" option in %(trailers) + - pretty: allow showing specific trailers + - pretty: single return path in %(trailers) handling - Perf test tweak. + The %(trailers) formatter in "git log --format=..." now allows to + optionally pick trailers selectively by keyword, show only values, + etc. - Will merge to 'master'. +* nd/attr-pathspec-in-tree-walk (2018-11-19) 5 commits + - tree-walk: support :(attr) matching + - dir.c: move, rename and export match_attrs() + - pathspec.h: clean up "extern" in function declarations + - tree-walk.c: make tree_entry_interesting() take an index + - tree.c: make read_tree*() take 'struct repository *' -* cb/notes-freeing-always-null-fix (2018-11-13) 1 commit - (merged to 'next' on 2018-11-17 at 47aeec5fc9) - + builtin/notes: remove unnecessary free + The traversal over tree objects has learned to honor + ":(attr:label)" pathspec match, which has been implemented only for + enumerating paths on the filesystem. - Code cleanup. - Will merge to 'master'. +* ab/commit-graph-progress-fix (2018-11-20) 1 commit + - commit-graph: split up close_reachable() progress output -* dl/remote-save-to-push (2018-11-13) 1 commit - - remote: add --save-to-push option to git remote set-url +* sg/test-BUG (2018-11-20) 1 commit + - tests: send "bug in the test script" errors to the script's stderr - "git remote set-url" learned a new option that moves existing value - of the URL field to pushURL field of the remote before replacing - the URL field with a new value. + test framework has been updated to make a bug in the test script + (as opposed to bugs in Git that are discovered by running the + tests) stand out more prominently. - Undecided. + Will merge to 'next'. -* jk/loose-object-cache (2018-11-13) 9 commits - - fetch-pack: drop custom loose object cache - - sha1-file: use loose object cache for quick existence check - - object-store: provide helpers for loose_objects_cache - - sha1-file: use an object_directory for the main object dir - - handle alternates paths the same as the main object dir - - sha1_file_name(): overwrite buffer instead of appending - - rename "alternate_object_database" to "object_directory" - - submodule--helper: prefer strip_suffix() to ends_with() - - fsck: do not reuse child_process structs +* sg/test-cmp-rev (2018-11-20) 1 commit + - test-lib-functions: make 'test_cmp_rev' more informative on failure - Code clean-up with optimization for the codepath that checks - (non-)existence of loose objects. + Test framework update. Will merge to 'next'. -* js/apply-recount-allow-noop (2018-11-13) 1 commit - (merged to 'next' on 2018-11-17 at e413fa105f) - + apply --recount: allow "no-op hunks" +* ss/msvc-strcasecmp (2018-11-20) 1 commit + - msvc: directly use MS version (_stricmp) of strcasecmp - When editing a patch in a "git add -i" session, a hunk could be - made to no-op. The "git apply" program used to reject a patch with - such a no-op hunk to catch user mistakes, but it is now updated to - explicitly allow a no-op hunk in an edited patch. + MSVC update. + + Will merge to 'next'. + + +* cc/delta-islands (2018-11-21) 3 commits + (merged to 'next' on 2018-11-21 at 3bac399f83) + + pack-objects: fix off-by-one in delta-island tree-depth computation + + pack-objects: zero-initialize tree_depth/layer arrays + + pack-objects: fix tree_depth and layer invariants + + A few issues in the implementation of "delta-islands" feature has + been corrected. Will merge to 'master'. -* js/builtin-rebase-perf-fix (2018-11-13) 3 commits - (merged to 'next' on 2018-11-17 at 9e9db8c8e1) - + built-in rebase: reinstate `checkout -q` behavior where appropriate - + rebase: prepare reset_head() for more flags - + rebase: consolidate clean-up code before leaving reset_head() +* jn/eoie-ieot (2018-11-21) 3 commits + (merged to 'next' on 2018-11-21 at 9eb98a38f0) + + index: make index.threads=true enable ieot and eoie + + ieot: default to not writing IEOT section + + eoie: default to not writing EOIE section + (this branch is used by jn/unknown-index-extensions.) - Code clean-up with correction to make the reimplemented "git - rebase" a more faithful rewrite of the original, which also regains - performance. + As the warning message shown by existing versions of Git for + unknown index extensions is a bit too alarming, two new extensions + are held back and not written by default for the upcoming release. Will merge to 'master'. -* js/protocol-advertise-multi (2018-11-17) 1 commit - - protocol: advertise multiple supported versions +* jn/unknown-index-extensions (2018-11-21) 2 commits + - index: offer advice for unknown index extensions + - index: do not warn about unrecognized extensions + (this branch uses jn/eoie-ieot.) - The transport layer has been updated so that the protocol version - used can be negotiated between the parties, by the initiator - listing the protocol versions it is willing to talk, and the other - side choosing from one of them. + A bit too alarming warning given when unknown index extensions + exist is getting revamped. + Expecting a reroll. -* js/rebase-r-and-merge-head (2018-11-13) 5 commits - (merged to 'next' on 2018-11-17 at 6bb27df7b1) - + status: rebase and merge can be in progress at the same time - + built-in rebase --skip/--abort: clean up stale .git/<name> files - + rebase -i: include MERGE_HEAD into files to clean up - + rebase -r: do not write MERGE_HEAD unless needed - + rebase -r: demonstrate bug with conflicting merges - Bugfix for the recently graduated "git rebase --rebase-merges". +* js/builtin-rebase-perf-fix-err-fix (2018-11-21) 1 commit + (merged to 'next' on 2018-11-21 at 9c351cfc4a) + + rebase: warn about the correct tree's OID + + The object name of the tree reported in a recently added error + message was wrong, which has been corrected. Will merge to 'master'. -* js/smart-http-detect-remote-error (2018-11-17) 3 commits - - remote-curl: die on server-side errors - - remote-curl: tighten "version 2" check for smart-http - - remote-curl: refactor smart-http discovery +* js/rebase-am-options-fix (2018-11-21) 1 commit + (merged to 'next' on 2018-11-21 at 4da85e17c2) + + legacy-rebase: backport -C<n> and --whitespace=<option> checks - Some errors from the other side coming over smart HTTP transport - were not noticed, which has been corrected. + Recently, built-in "rebase" tightened the error checking for a few + options that are passed to underlying "am", but we forgot to make + the matching change to the scripted version, which has been + corrected. - Will merge to 'next'. + Will merge to 'master'. -* nb/branch-show-other-worktrees-head (2018-11-12) 2 commits - - branch: mark and colorize a branch differently if it is checked out in a linked worktree - - ref-filter: add worktree atom +* nd/clone-case-smashing-warning (2018-11-21) 1 commit + (merged to 'next' on 2018-11-21 at 68bc7959f8) + + clone: fix colliding file detection on APFS - "git branch --list" learned to show branches that are checked out - in other worktrees connected to the same repository prefixed with - '+', similar to the way the currently checked out branch is shown - with '*' in front. + Recently added check for case smashing filesystems did not + correctly utilize the cached stat information, leading to false + breakage detected by our test suite, which has been corrected. - Expecting a reroll. + Will merge to 'master'. -* nd/command-list-gen-fix (2018-11-12) 1 commit - (merged to 'next' on 2018-11-17 at a6ff6baa0b) - + build: fix broken command-list.h generation with core.autocrlf +* tz/build-tech-midx-doc (2018-11-21) 1 commit + (merged to 'next' on 2018-11-21 at 15dd462db0) + + Documentation: build technical/multi-pack-index - Build tweak. + A documentation page that is referred to by other pages was not + built by mistake, which has been corrected. Will merge to 'master'. +-------------------------------------------------- +[Stalled] -* nd/format-patch-cover-letter-stat-width (2018-11-13) 1 commit - - format-patch: respect --stat in cover letter's diffstat - - "git format-patch --stat=<width>" can be used to specify the width - used by the diffstat (shown in the cover letter). +* lt/date-human (2018-07-09) 1 commit + - Add 'human' date format - Will merge to 'next'. + A new date format "--date=human" that morphs its output depending + on how far the time is from the current time has been introduced. + "--date=auto" can be used to use this new format when the output is + goint to the pager or to the terminal and otherwise the default + format. +-------------------------------------------------- +[Cooking] -* nd/the-index (2018-11-12) 22 commits - - rebase-interactive.c: remove the_repository references - - rerere.c: remove the_repository references - - pack-*.c: remove the_repository references - - pack-check.c: remove the_repository references - - notes-cache.c: remove the_repository references - - line-log.c: remove the_repository reference - - diff-lib.c: remove the_repository references - - delta-islands.c: remove the_repository references - - cache-tree.c: remove the_repository references - - bundle.c: remove the_repository references - - branch.c: remove the_repository reference - - bisect.c: remove the_repository reference - - blame.c: remove implicit dependency the_repository - - sequencer.c: remove implicit dependency on the_repository - - sequencer.c: remove implicit dependency on the_index - - transport.c: remove implicit dependency on the_index - - notes-merge.c: remove implicit dependency the_repository - - notes-merge.c: remove implicit dependency on the_index - - list-objects.c: reduce the_repository references - - list-objects-filter.c: remove implicit dependency on the_index - - wt-status.c: remove implicit dependency the_repository - - wt-status.c: remove implicit dependency on the_index +* ab/push-example-in-doc (2018-11-14) 1 commit + (merged to 'next' on 2018-11-18 at 8fd935a19c) + + push: change needlessly ambiguous example in error - More codepaths become aware of working with in-core repository - instance other than the default "the_repository". + An error message that sugggests how to give correct arguments to + "git push" has been updated. - Will merge to 'next'. + Will cook in 'next'. -* ot/ref-filter-object-info (2018-11-12) 5 commits - - ref-filter: add docs for new options - - ref-filter: add tests for deltabase - - ref-filter: add deltabase option - - ref-filter: add tests for objectsize:disk - - ref-filter: add objectsize:disk option +* en/fast-export-import (2018-11-17) 11 commits + (merged to 'next' on 2018-11-18 at 87bbbffc95) + + fast-export: add a --show-original-ids option to show original names + + fast-import: remove unmaintained duplicate documentation + + fast-export: add --reference-excluded-parents option + + fast-export: ensure we export requested refs + + fast-export: when using paths, avoid corrupt stream with non-existent mark + + fast-export: move commit rewriting logic into a function for reuse + + fast-export: avoid dying when filtering by paths and old tags exist + + fast-export: use value from correct enum + + git-fast-export.txt: clarify misleading documentation about rev-list args + + git-fast-import.txt: fix documentation for --quiet option + + fast-export: convert sha1 to oid - The "--format=<placeholder>" option of for-each-ref, branch and tag - learned to show a few more traits of objects that can be learned by - the object_info API. + Small fixes and features for fast-export and fast-import, mostly on + the fast-export side. - Will merge to 'next'. + Will cook in 'next'. -* ra/rev-parse-exclude-glob (2018-11-13) 2 commits - (merged to 'next' on 2018-11-17 at 396dd7a2c2) - + refs: fix some exclude patterns being ignored - + refs: show --exclude failure with --branches/tags/remotes=glob +* nd/checkout-dwim-fix (2018-11-14) 1 commit + (merged to 'next' on 2018-11-18 at 3d714e7719) + + checkout: disambiguate dwim tracking branches and local files - "rev-parse --exclude=<pattern> --branches=<pattern>" etc. did not - quite work, which has been corrected. + "git checkout frotz" (without any double-dash) avoids ambiguity by + making sure 'frotz' cannot be interpreted as a revision and as a + path at the same time. This safety has been updated to check also + a unique remote-tracking branch 'frotz' in a remote, when dwimming + to create a local branch 'frotz' out of a remote-tracking branch + 'frotz' from a remote. - Will merge to 'master'. + Will cook in 'next'. -* sb/cocci-pending (2018-11-14) 1 commit - - coccicheck: introduce 'pending' semantic patches +* nd/checkout-noisy (2018-11-20) 2 commits + - t0027: squelch checkout path run outside test_expect_* block + - checkout: print something when checking out paths - A coding convention around the Coccinelle semantic patches to have - two classes to ease code migration process has been proposed and - its support has been added to the Makefile. + "git checkout [<tree-ish>] path..." learned to report the number of + paths that have been checked out of the index or the tree-ish, + which gives it the same degree of noisy-ness as the case in which + the command checks out a branch. - Will merge to 'next'. +* sg/clone-initial-fetch-configuration (2018-11-16) 3 commits + (merged to 'next' on 2018-11-18 at cae0f3985b) + + Documentation/clone: document ignored configuration variables + + clone: respect additional configured fetch refspecs during initial fetch + + clone: use a more appropriate variable name for the default refspec -* tb/print-size-t-with-uintmax-format (2018-11-12) 1 commit - - Upcast size_t variables to uintmax_t when printing + Refspecs configured with "git -c var=val clone" did not propagate + to the resulting repository, which has been corrected. - Code preparation to replace ulong vars with size_t vars where - appropriate. + Will cook in 'next'. - Will merge to 'next'. +* cc/shared-index-permbits (2018-11-19) 1 commit + (merged to 'next' on 2018-11-19 at 79df716844) + + read-cache: make the split index obey umask settings -* tb/xcurl-off-t (2018-11-12) 1 commit - - remote-curl.c: xcurl_off_t is not portable (on 32 bit platfoms) + The way .git/index and .git/sharedindex* files were initially + created gave these files different perm bits until they were + adjusted for shared repository settings. This was made consistent. - The xcurl_off_t() helper function is used to cast size_t to - curl_off_t, but some compilers gave warnings against the code to - ensure the casting is done without wraparound, when size_t is - narrower than curl_off_t. This warning has been squelched. + Will merge to 'master'. - Will merge to 'next'. +* en/rebase-merge-on-sequencer (2018-11-08) 2 commits + - rebase: implement --merge via git-rebase--interactive + - git-rebase, sequencer: extend --quiet option for the interactive machinery -* jk/curl-ldflags (2018-11-05) 1 commit - (merged to 'next' on 2018-11-13 at d1387a3aa0) - + build: link with curl-defined linker flags + "git rebase --merge" as been reimplemented by reusing the internal + machinery used for "git rebase -i". - The way -lcurl library gets linked has been simplified by taking - advantage of the fact that we can just ask curl-config command how. - Will merge to 'master'. +* fc/http-version (2018-11-09) 1 commit + (merged to 'next' on 2018-11-18 at 42f5155095) + + http: add support selecting http version + The "http.version" configuration variable can be used with recent + enough cURL library to force the version of HTTP used to talk when + fetching and pushing. -* mg/gpg-fingerprint-test (2018-11-05) 2 commits - (merged to 'next' on 2018-11-13 at 71f11020c4) - + t/t7510-signed-commit.sh: add signing subkey to Eris Discordia key - + t/t7510-signed-commit.sh: Add %GP to custom format checks + Will cook in 'next'. - Add a few tests for a topic already in 'master'. - Will merge to 'master'. +* dl/remote-save-to-push (2018-11-13) 1 commit + - remote: add --save-to-push option to git remote set-url + "git remote set-url" learned a new option that moves existing value + of the URL field to pushURL field of the remote before replacing + the URL field with a new value. -* sb/diff-color-moved-config-option-fixup (2018-11-14) 1 commit - - diff: align move detection error handling with other options +* jk/loose-object-cache (2018-11-13) 9 commits + (merged to 'next' on 2018-11-18 at 276691a21b) + + fetch-pack: drop custom loose object cache + + sha1-file: use loose object cache for quick existence check + + object-store: provide helpers for loose_objects_cache + + sha1-file: use an object_directory for the main object dir + + handle alternates paths the same as the main object dir + + sha1_file_name(): overwrite buffer instead of appending + + rename "alternate_object_database" to "object_directory" + + submodule--helper: prefer strip_suffix() to ends_with() + + fsck: do not reuse child_process structs -* ab/range-diff-no-patch (2018-11-14) 3 commits - (merged to 'next' on 2018-11-17 at c42e0891d0) - + range-diff: make diff option behavior (e.g. --stat) consistent - + range-diff: fix regression in passing along diff options - + range-diff doc: add a section about output stability + Code clean-up with optimization for the codepath that checks + (non-)existence of loose objects. - The "--no-patch" option, which can be used to get a high-level - overview without the actual line-by-line patch difference shown, of - the "range-diff" command was earlier broken, which has been - corrected. + Will cook in 'next'. - Will merge to 'master'. +* js/protocol-advertise-multi (2018-11-17) 1 commit + - protocol: advertise multiple supported versions -* jk/unused-parameter-fixes (2018-11-06) 14 commits - (merged to 'next' on 2018-11-13 at 8d3625b4ae) - + midx: double-check large object write loop - + assert NOARG/NONEG behavior of parse-options callbacks - + parse-options: drop OPT_DATE() - + apply: return -1 from option callback instead of calling exit(1) - + cat-file: report an error on multiple --batch options - + tag: mark "--message" option with NONEG - + show-branch: mark --reflog option as NONEG - + format-patch: mark "--no-numbered" option with NONEG - + status: mark --find-renames option with NONEG - + cat-file: mark batch options with NONEG - + pack-objects: mark index-version option as NONEG - + ls-files: mark exclude options as NONEG - + am: handle --no-patch-format option - + apply: mark include/exclude options as NONEG + The transport layer has been updated so that the protocol version + used can be negotiated between the parties, by the initiator + listing the protocol versions it is willing to talk, and the other + side choosing from one of them. - Various functions have been audited for "-Wunused-parameter" warnings - and bugs in them got fixed. - Will merge to 'master'. +* js/smart-http-detect-remote-error (2018-11-17) 3 commits + (merged to 'next' on 2018-11-18 at 5c6edfcb85) + + remote-curl: die on server-side errors + + remote-curl: tighten "version 2" check for smart-http + + remote-curl: refactor smart-http discovery + Some errors from the other side coming over smart HTTP transport + were not noticed, which has been corrected. -* ds/push-squelch-ambig-warning (2018-11-07) 1 commit - - pack-objects: ignore ambiguous object warnings + Will cook in 'next'. - "git push" used to check ambiguities between object-names and - refnames while processing the list of refs' old and new values, - which was unnecessary (as it knew that it is feeding raw object - names). This has been optimized out. - Will merge to 'next'. +* nb/branch-show-other-worktrees-head (2018-11-12) 2 commits + - branch: mark and colorize a branch differently if it is checked out in a linked worktree + - ref-filter: add worktree atom + "git branch --list" learned to show branches that are checked out + in other worktrees connected to the same repository prefixed with + '+', similar to the way the currently checked out branch is shown + with '*' in front. -* jk/verify-sig-merge-into-void (2018-11-07) 3 commits - (merged to 'next' on 2018-11-13 at a207be60ed) - + pull: handle --verify-signatures for unborn branch - + merge: handle --verify-signatures for unborn branch - + merge: extract verify_merge_signature() helper + Expecting a reroll. - "git merge" and "git pull" that merges into an unborn branch used - to completely ignore "--verify-signatures", which has been - corrected. - Will merge to 'master'. +* nd/the-index (2018-11-12) 22 commits + (merged to 'next' on 2018-11-18 at 73d1d8594e) + + rebase-interactive.c: remove the_repository references + + rerere.c: remove the_repository references + + pack-*.c: remove the_repository references + + pack-check.c: remove the_repository references + + notes-cache.c: remove the_repository references + + line-log.c: remove the_repository reference + + diff-lib.c: remove the_repository references + + delta-islands.c: remove the_repository references + + cache-tree.c: remove the_repository references + + bundle.c: remove the_repository references + + branch.c: remove the_repository reference + + bisect.c: remove the_repository reference + + blame.c: remove implicit dependency the_repository + + sequencer.c: remove implicit dependency on the_repository + + sequencer.c: remove implicit dependency on the_index + + transport.c: remove implicit dependency on the_index + + notes-merge.c: remove implicit dependency the_repository + + notes-merge.c: remove implicit dependency on the_index + + list-objects.c: reduce the_repository references + + list-objects-filter.c: remove implicit dependency on the_index + + wt-status.c: remove implicit dependency the_repository + + wt-status.c: remove implicit dependency on the_index + More codepaths become aware of working with in-core repository + instance other than the default "the_repository". -* js/mingw-res-rebuild (2018-11-07) 1 commit - (merged to 'next' on 2018-11-13 at fb736827d1) - + Windows: force-recompile git.res for differing architectures + Will cook in 'next'. - Windows build update. - Will merge to 'master'. +* ot/ref-filter-object-info (2018-11-12) 5 commits + (merged to 'next' on 2018-11-18 at ad4c086678) + + ref-filter: add docs for new options + + ref-filter: add tests for deltabase + + ref-filter: add deltabase option + + ref-filter: add tests for objectsize:disk + + ref-filter: add objectsize:disk option + The "--format=<placeholder>" option of for-each-ref, branch and tag + learned to show a few more traits of objects that can be learned by + the object_info API. -* ab/dynamic-gettext-poison (2018-11-09) 2 commits - - Makefile: ease dynamic-gettext-poison transition - - i18n: make GETTEXT_POISON a runtime option + Will cook in 'next'. - Our testing framework uses a special i18n "poisoned localization" - feature to find messages that ought to stay constant but are - incorrectly marked to be translated. This feature has been made - into a runtime option (it used to be a compile-time option). - Will merge to 'next'. +* sb/diff-color-moved-config-option-fixup (2018-11-14) 1 commit + - diff: align move detection error handling with other options * ab/push-dwim-dst (2018-11-14) 7 commits - - push doc: document the DWYM behavior pushing to unqualified <dst> - - push: test that <src> doesn't DWYM if <dst> is unqualified - - push: add an advice on unqualified <dst> push - - push: move unqualified refname error into a function - - push: improve the error shown on unqualified <dst> push - - i18n: remote.c: mark error(...) messages for translation - - remote.c: add braces in anticipation of a follow-up change + (merged to 'next' on 2018-11-18 at 36567023be) + + push doc: document the DWYM behavior pushing to unqualified <dst> + + push: test that <src> doesn't DWYM if <dst> is unqualified + + push: add an advice on unqualified <dst> push + + push: move unqualified refname error into a function + + push: improve the error shown on unqualified <dst> push + + i18n: remote.c: mark error(...) messages for translation + + remote.c: add braces in anticipation of a follow-up change "git push $there $src:$dst" rejects when $dst is not a fully qualified refname and not clear what the end user meant. The @@ -607,7 +742,7 @@ of the repositories listed at object into account (e.g. a tag object would want to go under refs/tags/). - Will merge to 'next'. + Will cook in 'next'. * md/list-lazy-objects-fix (2018-10-29) 1 commit @@ -623,107 +758,90 @@ of the repositories listed at * nd/i18n (2018-11-12) 16 commits - - fsck: mark strings for translation - - fsck: reduce word legos to help i18n - - parse-options.c: mark more strings for translation - - parse-options.c: turn some die() to BUG() - - parse-options: replace opterror() with optname() - - repack: mark more strings for translation - - remote.c: mark messages for translation - - remote.c: turn some error() or die() to BUG() - - reflog: mark strings for translation - - read-cache.c: add missing colon separators - - read-cache.c: mark more strings for translation - - read-cache.c: turn die("internal error") to BUG() - - attr.c: mark more string for translation - - archive.c: mark more strings for translation - - alias.c: mark split_cmdline_strerror() strings for translation - - git.c: mark more strings for translation + (merged to 'next' on 2018-11-18 at 5215bd2f7d) + + fsck: mark strings for translation + + fsck: reduce word legos to help i18n + + parse-options.c: mark more strings for translation + + parse-options.c: turn some die() to BUG() + + parse-options: replace opterror() with optname() + + repack: mark more strings for translation + + remote.c: mark messages for translation + + remote.c: turn some error() or die() to BUG() + + reflog: mark strings for translation + + read-cache.c: add missing colon separators + + read-cache.c: mark more strings for translation + + read-cache.c: turn die("internal error") to BUG() + + attr.c: mark more string for translation + + archive.c: mark more strings for translation + + alias.c: mark split_cmdline_strerror() strings for translation + + git.c: mark more strings for translation More _("i18n") markings. - Will merge to 'next'. - - -* nd/pthreads (2018-11-05) 14 commits - (merged to 'next' on 2018-11-13 at bb6914b3f8) - + Clean up pthread_create() error handling - + read-cache.c: initialize copy_len to shut up gcc 8 - + read-cache.c: reduce branching based on HAVE_THREADS - + read-cache.c: remove #ifdef NO_PTHREADS - + pack-objects: remove #ifdef NO_PTHREADS - + preload-index.c: remove #ifdef NO_PTHREADS - + grep: clean up num_threads handling - + grep: remove #ifdef NO_PTHREADS - + attr.c: remove #ifdef NO_PTHREADS - + name-hash.c: remove #ifdef NO_PTHREADS - + index-pack: remove #ifdef NO_PTHREADS - + send-pack.c: move async's #ifdef NO_PTHREADS back to run-command.c - + run-command.h: include thread-utils.h instead of pthread.h - + thread-utils: macros to unconditionally compile pthreads API - - The codebase has been cleaned up to reduce "#ifndef NO_PTHREADS". - - Will merge to 'master'. + Will cook in 'next'. * sb/more-repo-in-api (2018-11-14) 23 commits - - t/helper/test-repository: celebrate independence from the_repository - - path.h: make REPO_GIT_PATH_FUNC repository agnostic - - commit: prepare free_commit_buffer and release_commit_memory for any repo - - commit-graph: convert remaining functions to handle any repo - - submodule: don't add submodule as odb for push - - submodule: use submodule repos for object lookup - - pretty: prepare format_commit_message to handle arbitrary repositories - - commit: prepare logmsg_reencode to handle arbitrary repositories - - commit: prepare repo_unuse_commit_buffer to handle any repo - - commit: prepare get_commit_buffer to handle any repo - - commit-reach: prepare in_merge_bases[_many] to handle any repo - - commit-reach: prepare get_merge_bases to handle any repo - - commit-reach.c: allow get_merge_bases_many_0 to handle any repo - - commit-reach.c: allow remove_redundant to handle any repo - - commit-reach.c: allow merge_bases_many to handle any repo - - commit-reach.c: allow paint_down_to_common to handle any repo - - commit: allow parse_commit* to handle any repo - - object: parse_object to honor its repository argument - - object-store: prepare has_{sha1, object}_file to handle any repo - - object-store: prepare read_object_file to deal with any repo - - object-store: allow read_object_file_extended to read from any repo - - packfile: allow has_packed_and_bad to handle arbitrary repositories - - sha1_file: allow read_object to read objects in arbitrary repositories + (merged to 'next' on 2018-11-19 at e5d2a129da) + + t/helper/test-repository: celebrate independence from the_repository + + path.h: make REPO_GIT_PATH_FUNC repository agnostic + + commit: prepare free_commit_buffer and release_commit_memory for any repo + + commit-graph: convert remaining functions to handle any repo + + submodule: don't add submodule as odb for push + + submodule: use submodule repos for object lookup + + pretty: prepare format_commit_message to handle arbitrary repositories + + commit: prepare logmsg_reencode to handle arbitrary repositories + + commit: prepare repo_unuse_commit_buffer to handle any repo + + commit: prepare get_commit_buffer to handle any repo + + commit-reach: prepare in_merge_bases[_many] to handle any repo + + commit-reach: prepare get_merge_bases to handle any repo + + commit-reach.c: allow get_merge_bases_many_0 to handle any repo + + commit-reach.c: allow remove_redundant to handle any repo + + commit-reach.c: allow merge_bases_many to handle any repo + + commit-reach.c: allow paint_down_to_common to handle any repo + + commit: allow parse_commit* to handle any repo + + object: parse_object to honor its repository argument + + object-store: prepare has_{sha1, object}_file to handle any repo + + object-store: prepare read_object_file to deal with any repo + + object-store: allow read_object_file_extended to read from any repo + + packfile: allow has_packed_and_bad to handle arbitrary repositories + + sha1_file: allow read_object to read objects in arbitrary repositories The in-core repository instances are passed through more codepaths. - Will merge to 'next'. + Will cook in 'next'. cf. <20181115221254.45373-1-jonathantanmy@google.com> * en/merge-path-collision (2018-11-08) 10 commits - - merge-recursive: combine error handling - - t6036, t6043: increase code coverage for file collision handling - - merge-recursive: improve rename/rename(1to2)/add[/add] handling - - merge-recursive: use handle_file_collision for add/add conflicts - - merge-recursive: improve handling for rename/rename(2to1) conflicts - - merge-recursive: fix rename/add conflict handling - - merge-recursive: new function for better colliding conflict resolutions - - merge-recursive: increase marker length with depth of recursion - - t6036, t6042: testcases for rename collision of already conflicting files - - t6042: add tests for consistency in file collision conflict handling + (merged to 'next' on 2018-11-18 at 3ec9286e0b) + + merge-recursive: combine error handling + + t6036, t6043: increase code coverage for file collision handling + + merge-recursive: improve rename/rename(1to2)/add[/add] handling + + merge-recursive: use handle_file_collision for add/add conflicts + + merge-recursive: improve handling for rename/rename(2to1) conflicts + + merge-recursive: fix rename/add conflict handling + + merge-recursive: new function for better colliding conflict resolutions + + merge-recursive: increase marker length with depth of recursion + + t6036, t6042: testcases for rename collision of already conflicting files + + t6042: add tests for consistency in file collision conflict handling Updates for corner cases in merge-recursive. - Will merge to 'next'. + Will cook in 'next'. -* sd/stash-wo-user-name (2018-11-16) 2 commits - - stash: tolerate missing user identity - - t3903-stash: test without configured user.name and user.email +* sd/stash-wo-user-name (2018-11-19) 1 commit + (merged to 'next' on 2018-11-19 at 0838b091ea) + + stash: tolerate missing user identity A properly configured username/email is required under user.useConfigOnly in order to create commits; now "git stash" (even though it creates commit objects to represent stash entries) command is excempt from the requirement. + Will cook in 'next'. + * bc/sha-256 (2018-11-14) 12 commits - hash: add an SHA-256 implementation using OpenSSL @@ -786,21 +904,6 @@ of the repositories listed at updated to use "size_t". -* js/remote-archive-v2 (2018-09-28) 4 commits - (merged to 'next' on 2018-10-12 at 5f34377f60) - + archive: allow archive over HTTP(S) with proto v2 - + archive: implement protocol v2 archive command - + archive: use packet_reader for communications - + archive: follow test standards around assertions - - The original implementation of "git archive --remote" more or less - bypassed the transport layer and did not work over http(s). The - version 2 of the protocol is defined to allow going over http(s) as - well as Git native transport. - - Reverted out of next. - - * ag/sequencer-reduce-rewriting-todo (2018-11-12) 16 commits . rebase--interactive: move transform_todo_file() to rebase--interactive.c . sequencer: fix a call to error() in transform_todo_file() @@ -830,22 +933,6 @@ of the repositories listed at this need to wait giving precedence to other topics that fix bugs. -* ds/reachable-topo-order (2018-11-02) 7 commits - (merged to 'next' on 2018-11-13 at 4155d01aee) - + t6012: make rev-list tests more interesting - + revision.c: generation-based topo-order algorithm - + commit/revisions: bookkeeping before refactoring - + revision.c: begin refactoring --topo-order logic - + test-reach: add rev-list tests - + test-reach: add run_three_modes method - + prio-queue: add 'peek' operation - - The revision walker machinery learned to take advantage of the - commit generation numbers stored in the commit-graph file. - - Will merge to 'master'. - - * sb/submodule-recursive-fetch-gets-the-tip (2018-10-31) 11 commits - builtin/fetch: check for submodule updates in any ref update - fetch: try fetching submodules if needed objects were not fetched @@ -900,7 +987,8 @@ of the repositories listed at "git stash" rewritten in C. - Almost there. + Expecting a reroll, probably on top of the sd/stash-wo-user-name + topic after it stabilizes. The series is almost there. cf. <20181015221040.GD4883@hank.intra.tgummerer.com> @@ -940,3 +1028,19 @@ of the repositories listed at . bundle: rollback lock file while refusing to create an empty bundle Superseded by jk/close-duped-fd-before-unlock-for-bundle + + +* js/remote-archive-v2 (2018-09-28) 4 commits + (merged to 'next' on 2018-10-12 at 5f34377f60) + + archive: allow archive over HTTP(S) with proto v2 + + archive: implement protocol v2 archive command + + archive: use packet_reader for communications + + archive: follow test standards around assertions + + The original implementation of "git archive --remote" more or less + bypassed the transport layer and did not work over http(s). The + version 2 of the protocol is defined to allow going over http(s) as + well as Git native transport. + + Retracted; reverted out of next. + cf. <20181114195142.GI126896@google.com>