From 265eda52b8fb223ded7d07d017273e4cc275f77a Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Thu, 3 Oct 2019 14:04:02 +0900 Subject: [PATCH] What's cooking (2019/10 #01) --- whats-cooking.txt | 1357 ++++++++++++++++++++++++--------------------- 1 file changed, 713 insertions(+), 644 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index 5fe3fa5598..e0239a3cd4 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 (Sep 2019, #03; Sun, 29) -X-master-at: 4c86140027f4a0d2caaa3ab4bd8bfc5ce3c11c8a -X-next-at: 8ccfaed27d6c89e154e3108c800de8de15b1981d +Subject: What's cooking in git.git (Oct 2019, #01; Thu, 3) +X-master-at: bc12974a897308fd3254cf0cc90319078fe45eea +X-next-at: a346b79a78d4d9c875ed7b855047fb83dcacf05a -What's cooking in git.git (Sep 2019, #03; Sun, 29) +What's cooking in git.git (Oct 2019, #01; Thu, 3) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with @@ -23,165 +23,415 @@ of the repositories listed at -------------------------------------------------- [New Topics] -* jt/merge-recursive-symlink-is-not-a-dir-in-way (2019-09-20) 1 commit - - merge-recursive: symlink's descendants not in way +* ag/sequencer-todo-updates (2019-10-02) 5 commits + - sequencer: directly call pick_commits() from complete_action() + - rebase: fill `squash_onto' in get_replay_opts() + - sequencer: move the code writing total_nr on the disk to a new function + - sequencer: update `done_nr' when skipping commands in a todo list + - sequencer: update `total_nr' when adding an item to a todo list - A bug in merge-recursive code that triggers when a branch with a - symbolic link is merged with a branch that replaces it with a - directory has been fixed. + Expecting a reroll. + cf. to clarify log messages. + there may be others. + + +* ah/cleanups (2019-10-03) 4 commits + - git_mkstemps_mode(): replace magic numbers with computed value + - wrapper: use a loop instead of repetitive statements + - diffcore-break: use a goto instead of a redundant if statement + - commit-graph: remove a duplicate assignment + + Miscellaneous code clean-ups. Will merge to 'next'. -* ps/my-first-contribution-alphasort (2019-09-28) 1 commit - - doc: MyFirstContribution: fix cmd placement instructions +* as/shallow-slab-use-fix (2019-10-02) 1 commit + - shallow.c: don't free unallocated slabs - Docfix. + Correct code that tried to reference all entries in a sparse array + of pointers by mistake. Will merge to 'next'. -* rs/alias-use-copy-array (2019-09-20) 1 commit - - git: use COPY_ARRAY and MOVE_ARRAY in handle_alias() +* js/fetch-jobs (2019-10-02) 1 commit + - fetch: let --jobs= parallelize --multiple, too - Code cleanup. + "git fetch --jobs=" allowed parallel jobs when fetching + submodules, but this did not apply to "git fetch --multiple" that + fetches from multiple remote repositories. It now does. Will merge to 'next'. -* sg/t-helper-gitignore (2019-09-20) 1 commit - - t/helper: ignore only executable files +* js/mingw-spawn-with-spaces-in-path (2019-10-02) 1 commit + - t0061: fix test for argv[0] with spaces (MINGW only) - Update the way build artifacts in t/helper/ directory are ignored. + Test fix. Will merge to 'next'. -* sg/travis-help-debug (2019-09-28) 1 commit - - travis-ci: do not skip successfully tested trees in debug mode +* gs/commit-graph-trace-with-cmd (2019-10-02) 1 commit + - commit-graph: emit trace2 cmd_mode for each sub-command - Dev support update. + Dev support. Will merge to 'next'. -* am/mailmap-andrey-mazo (2019-09-20) 1 commit - - .mailmap: update email address of Andrey Mazo +* js/trace2-fetch-push (2019-10-03) 2 commits + - push: add trace2 instrumentation + - fetch: add trace2 instrumentation + + Dev support. Will merge to 'next'. -* am/t0028-utf16-tests (2019-09-28) 2 commits - - t0028: add more tests - - t0028: fix test for UTF-16-LE-BOM +* js/range-diff-noprefix (2019-10-03) 1 commit + - range-diff: internally force `diff.noprefix=true` - Test fixes. + "git range-diff" segfaulted when diff.noprefix configuration was + used, as it blindly expected the patch it internally generates to + have the standard a/ and b/ prefixes. The command now forces the + internal patch to be built without any prefix, not to be affected + by any end-user configuration. + Will merge to 'next'. -* am/visual-studio-config-fix (2019-09-28) 1 commit - - contrib/buildsystems: fix Visual Studio Debug configuration +-------------------------------------------------- +[Graduated to "master"] - Dev support. +* ar/mingw-run-external-with-non-ascii-path (2019-08-26) 1 commit + (merged to 'next' on 2019-09-09 at 1973826628) + + mingw: fix launching of externals from Unicode paths - Will merge to 'next'. + Windows update. -* cb/do-not-use-test-cmp-with-a (2019-09-28) 1 commit - - t4038: Remove non-portable '-a' option passed to test_cmp +* bc/hash-independent-tests-part-5 (2019-08-26) 14 commits + (merged to 'next' on 2019-09-09 at 49defc07af) + + t4009: make hash size independent + + t4002: make hash independent + + t4000: make hash size independent + + t3903: abstract away SHA-1-specific constants + + t3800: make hash-size independent + + t3600: make hash size independent + + t3506: make hash independent + + t3430: avoid hard-coded object IDs + + t3404: abstract away SHA-1-specific constants + + t3306: abstract away SHA-1-specific constants + + t3305: make hash size independent + + t3301: abstract away SHA-1-specific constants + + t3206: abstract away hash size constants + + t3201: abstract away SHA-1-specific constants - Test portability fix. + Preparation for SHA-256 upgrade continues in the test department. - Will merge to 'next'. +* bw/rebase-autostash-keep-current-branch (2019-09-07) 2 commits + (merged to 'next' on 2019-09-18 at 6d8ed846ed) + + builtin/rebase.c: Remove pointless message + + builtin/rebase.c: make sure the active branch isn't moved when autostashing -* cc/multi-promisor (2019-09-28) 1 commit - - promisor-remote.h: drop extern from function declaration + "git rebase --autostash ", when is + different from the current branch, incorrectly moved the tip of the + current branch, which has been corrected. - Cleanup. - Will merge to 'next'. +* dl/compat-cleanup (2019-09-05) 2 commits + (merged to 'next' on 2019-09-09 at e33c896e16) + + compat/*.[ch]: remove extern from function declarations using spatch + + mingw: apply array.cocci rule + (this branch is used by dl/cocci-everywhere.) + Code cleanup. -* dl/honor-cflags-in-hdr-check (2019-09-28) 4 commits - - Makefile: emulate compile in $(HCO) target better - - pack-bitmap.h: remove magic number - - promisor-remote.h: include missing header - - apply.h: include missing header - Dev support. +* dl/complete-cherry-pick-revert-skip (2019-08-27) 3 commits + (merged to 'next' on 2019-09-18 at 7dd173f824) + + status: mention --skip for revert and cherry-pick + + completion: add --skip for cherry-pick and revert + + completion: merge options for cherry-pick and revert - Will merge to 'next'. + The command line completion support (in contrib/) learned about the + "--skip" option of "git revert" and "git cherry-pick". + + +* dl/format-patch-doc-test-cleanup (2019-09-05) 13 commits + (merged to 'next' on 2019-09-09 at b3022b4002) + + config/format.txt: specify default value of format.coverLetter + + Doc: add more detail for git-format-patch + + t4014: stop losing return codes of git commands + + t4014: remove confusing pipe in check_threading() + + t4014: use test_line_count() where possible + + t4014: let sed open its own files + + t4014: drop redirections to /dev/null + + t4014: use indentable here-docs + + t4014: remove spaces after redirect operators + + t4014: use sq for test case names + + t4014: move closing sq onto its own line + + t4014: s/expected/expect/ + + t4014: drop unnecessary blank lines from test cases + (this branch is used by dl/format-patch-cover-letter-subject.) + The documentation and tests for "git format-patch" have been + cleaned up. -* en/fast-imexport-nested-tags (2019-09-28) 8 commits - . fast-export: handle nested tags - . t9350: add tests for tags of things other than a commit - . fast-export: allow user to request tags be marked with --mark-tags - . fast-export: add support for --import-marks-if-exists - . fast-import: add support for new 'alias' command - . fast-import: allow tags to be identified by mark labels - . fast-import: fix handling of deleted tags - . fast-export: fix exporting a tag and nothing else - Updates to fast-import/export. +* dl/rebase-i-keep-base (2019-08-27) 9 commits + (merged to 'next' on 2019-09-18 at f94f486724) + + rebase: teach rebase --keep-base + + rebase tests: test linear branch topology + + rebase: fast-forward --fork-point in more cases + + rebase: fast-forward --onto in more cases + + rebase: refactor can_fast_forward into goto tower + + t3432: test for --no-ff's interaction with fast-forward + + t3432: distinguish "noop-same" v.s. "work-same" in "same head" tests + + t3432: test rebase fast-forward behavior + + t3431: add rebase --fork-point tests - Seems to break t9300 when merged to 'pu'. + "git rebase --keep-base " tries to find the original base + of the topic being rebased and rebase on top of that same base, + which is useful when running the "git rebase -i" (and its limited + variant "git rebase -x"). + The command also has learned to fast-forward in more cases where it + can instead of replaying to recreate identical commits. -* js/diff-rename-force-stable-sort (2019-09-28) 2 commits - - diffcore_rename(): use a stable sort - - Move git_sort(), a stable sort, into into libgit.a - The rename detection logic sorts a list of rename source candidates - by similarity to pick the best candidate, which means that a tie - between sources with the same similarity is broken by the original - location in the original canidate list (which is sorted by path). - Force the sorting by similarity done with a stable sort, which is - not promised by system supplied qsort(3), to ensure consistent - results across platforms. +* dl/use-sq-from-test-lib (2019-09-06) 1 commit + (merged to 'next' on 2019-09-09 at 9a6619ddab) + + t: use common $SQ variable - Except for a minor nit, this looked OK. + Code cleanup. -* ma/user-manual-markup-update (2019-09-28) 4 commits - - user-manual.txt: render ASCII art correctly under Asciidoctor - - asciidoctor-extensions.rb: handle "book" doctype in linkgit - - user-manual.txt: change header notation - - user-manual.txt: add missing section label +* ds/commit-graph-on-fetch (2019-09-03) 1 commit + (merged to 'next' on 2019-09-18 at 10702dd989) + + fetch: add fetch.writeCommitGraph config setting - The markup used in user-manual has been updated to work better with - asciidoctor. + A configuration variable tells "git fetch" to write the commit + graph after finishing. - Will merge to 'next'. +* ds/include-exclude (2019-09-05) 5 commits + (merged to 'next' on 2019-09-18 at 1a3655a089) + + unpack-trees: rename 'is_excluded_from_list()' + + treewide: rename 'exclude' methods to 'pattern' + + treewide: rename 'EXCL_FLAG_' to 'PATTERN_FLAG_' + + treewide: rename 'struct exclude_list' to 'struct pattern_list' + + treewide: rename 'struct exclude' to 'struct path_pattern' -* sg/name-rev-cutoff-underflow-fix (2019-09-28) 1 commit - - name-rev: avoid cutoff timestamp underflow + The internal code originally invented for ".gitignore" processing + got reshuffled and renamed to make it less tied to "excluding" and + stress more that it is about "matching", as it has been reused for + things like sparse checkout specification that want to check if a + path is "included". - Integer arith fix. - Will merge to 'next'. +* dt/remote-helper-doc-re-lock-option (2019-08-30) 1 commit + (merged to 'next' on 2019-09-09 at 970488992a) + + clarify documentation for remote helpers + Doc update. -* tk/git-svn-trim-author-name (2019-09-28) 1 commit - - git-svn: trim leading and trailing whitespaces in author name - The author names taken from SVN repositories may have extra leading - or trailing whitespaces, which are now munged away. +* en/filter-branch-deprecation (2019-09-05) 3 commits + (merged to 'next' on 2019-09-09 at 311ed09ba8) + + t9902: use a non-deprecated command for testing + + Recommend git-filter-repo instead of git-filter-branch + + t6006: simplify, fix, and optimize empty message test - Will merge to 'next'. + Start discouraging the use of "git filter-branch". -* bw/submodule-helper-usage-fix (2019-09-29) 1 commit - - builtin/submodule--helper: fix usage string for 'update-clone' +* en/merge-options-ff-and-friends (2019-09-01) 1 commit + (merged to 'next' on 2019-09-09 at b3bcc2cbc7) + + merge-options.txt: clarify meaning of various ff-related options - Typofix. + Doc update. + + +* jc/test-cleanup (2019-09-05) 2 commits + (merged to 'next' on 2019-09-09 at 41ced23598) + + t3005: remove unused variable + + t: use LF variable defined in the test harness + + Code cleanup. + + +* jh/trace2-pretty-output (2019-08-09) 7 commits + (merged to 'next' on 2019-09-18 at 503974aa46) + + trace2: cleanup whitespace in perf format + + trace2: cleanup whitespace in normal format + + quote: add sq_append_quote_argv_pretty() + + trace2: trim trailing whitespace in normal format error message + + trace2: remove dead code in maybe_add_string_va() + + trace2: trim whitespace in region messages in perf target format + + trace2: cleanup column alignment in perf target format + + Output from trace2 subsystem is formatted more prettily now. + + +* jk/fast-import-history-bugfix (2019-08-27) 2 commits + (merged to 'next' on 2019-09-09 at eeef864077) + + fast-import: duplicate into history rather than passing ownership + + fast-import: duplicate parsed encoding string + + The memory ownership model of the "git fast-import" got + straightened out. + + +* jk/misc-uninitialized-fixes (2019-09-06) 6 commits + (merged to 'next' on 2019-09-09 at 39ccd21475) + + pack-objects: drop packlist index_pos optimization + + test-read-cache: drop namelen variable + + diff-delta: set size out-parameter to 0 for NULL delta + + bulk-checkin: zero-initialize hashfile_checkpoint + + pack-objects: use object_id in packlist_alloc() + + git-am: handle missing "author" when parsing commit + + Various fixes to codepaths gcc 9 had trouble following dataflow. + + +* js/gitdir-at-unc-root (2019-08-26) 3 commits + (merged to 'next' on 2019-09-09 at 70ccc59b4b) + + setup_git_directory(): handle UNC root paths correctly + + Fix .git/ discovery at the root of UNC shares + + setup_git_directory(): handle UNC paths correctly + + On Windows, the root level of UNC share is now allowed to be used + just like any other directory. + + +* js/visual-studio (2019-09-05) 1 commit + (merged to 'next' on 2019-09-09 at 5493ee9474) + + .gitignore: stop ignoring `.manifest` files + + Adjust .gitignore to unignore a path that we started to track. + + +* mh/http-urlmatch-cleanup (2019-08-26) 1 commit + (merged to 'next' on 2019-09-09 at 9971b626f1) + + http: don't leak urlmatch_config.vars + + Leakfix. + + +* mh/notes-duplicate-entries (2019-08-26) 2 commits + (merged to 'next' on 2019-09-09 at 6c44967c97) + + notes: avoid potential use-after-free during insertion + + notes: avoid leaking duplicate entries + + A few implementation fixes in the notes API. - Will merge to 'next'. + +* mh/release-commit-memory-fix (2019-08-26) 1 commit + (merged to 'next' on 2019-09-09 at 9fb7485032) + + commit: free the right buffer in release_commit_memory + + Leakfix. + + +* nd/switch-and-restore (2019-08-30) 1 commit + (merged to 'next' on 2019-09-09 at 97e7e06801) + + checkout: add simple check for 'git checkout -b' + + Resurrect a performance hack. + + +* rs/get-tagged-oid (2019-09-05) 2 commits + (merged to 'next' on 2019-09-09 at 0e9489a835) + + use get_tagged_oid() + + tag: factor out get_tagged_oid() + + Code cleanup. + + +* rs/help-unknown-ref-does-not-return (2019-08-30) 1 commit + (merged to 'next' on 2019-09-09 at 4b00ea1ac9) + + help: make help_unknown_ref() NORETURN + + Code cleanup. + + +* rs/parse-tree-indirect (2019-09-03) 1 commit + (merged to 'next' on 2019-09-09 at 157e836dba) + + tree: simplify parse_tree_indirect() + + Code cleanup. + + +* rs/strbuf-detach (2019-08-26) 2 commits + (merged to 'next' on 2019-09-09 at f6bba7d52f) + + grep: use return value of strbuf_detach() + + log-tree: always use return value of strbuf_detach() + + Straighten out the use of strbuf_detach() API function. + + +* rs/trace2-dst-warning (2019-08-26) 1 commit + (merged to 'next' on 2019-09-09 at 13893cdf8c) + + trace2: use warning() directly in tr2_dst_malformed_warning() + + Code cleanup. + + +* sg/clean-nested-repo-with-ignored (2019-08-26) 1 commit + (merged to 'next' on 2019-09-18 at 0da1269f07) + + t7300-clean: demonstrate deleting nested repo with an ignored file breakage + (this branch is used by en/clean-nested-with-ignored.) + + A bug documentation. + + +* sg/git-test-boolean (2019-09-06) 2 commits + (merged to 'next' on 2019-09-09 at 90406d6375) + + ci: restore running httpd tests + + t/lib-git-svn.sh: check GIT_TEST_SVN_HTTPD when running SVN HTTP tests + + Fix an earlier regression in the test suite, which mistakenly + stopped running HTTPD tests. + + +* tb/banned-vsprintf-namefix (2019-08-26) 1 commit + (merged to 'next' on 2019-09-09 at e0f6d18a10) + + banned.h: fix vsprintf()'s ban message + + Error message fix. + + +* tb/file-url-to-unc-path (2019-08-26) 1 commit + (merged to 'next' on 2019-09-09 at 13d9c4000e) + + mingw: support UNC in git clone file://server/share/repo + + Windows update. + + +* tg/push-all-in-mirror-forbidden (2019-09-03) 1 commit + (merged to 'next' on 2019-09-09 at 9db61400c8) + + push: disallow --all and refspecs when remote..mirror is set + + Fix an earlier regression to "git push --all" which should have + been forbidden when the target remote repository is set to be a + mirror. -------------------------------------------------- [Stalled] +* cb/pcre2-chartables-leakfix (2019-08-06) 3 commits + - grep: avoid leak of chartables in PCRE2 + - grep: make PCRE2 aware of custom allocator + - grep: make PCRE1 aware of custom allocator + + WIP (this is v3 which is rather old, where the last message in the + discussion talks about v6 that has never been sent to the list). + cf. + + * es/walken-tutorial (2019-08-07) 1 commit - documentation: add tutorial for revision walking @@ -194,7 +444,6 @@ of the repositories listed at * dl/format-patch-cover-letter-subject (2019-09-05) 1 commit - format-patch: learn --infer-cover-subject option - (this branch uses dl/format-patch-doc-test-cleanup.) "git format-patch --cover-letter" learned to optionally use the first paragraph (typically a single-liner) of branch.*.description @@ -203,20 +452,6 @@ of the repositories listed at Reroll with a redesign with less emphasis on "subject" coming? -* mt/threaded-grep-in-object-store (2019-08-13) 4 commits - - grep: re-enable threads in some non-worktree cases - - grep: disable grep_read_mutex when possible - - grep: allow locks to be enabled individually - - object-store: add lock to read_object_file_extended() - - Traditionally, we avoided threaded grep while searching in objects - (as opposed to files in the working tree) as accesses to the object - layer is not thread-safe. This limitation is getting lifted. - - Expecting a reroll. - cf. - - * jn/unknown-index-extensions (2018-11-21) 2 commits - index: offer advice for unknown index extensions - index: do not warn about unrecognized extensions @@ -276,667 +511,602 @@ of the repositories listed at -------------------------------------------------- [Cooking] -* bc/object-id-part17 (2019-08-19) 26 commits - - midx: switch to using the_hash_algo - - builtin/show-index: replace sha1_to_hex - - rerere: replace sha1_to_hex - - builtin/receive-pack: replace sha1_to_hex - - builtin/index-pack: replace sha1_to_hex - - packfile: replace sha1_to_hex - - wt-status: convert struct wt_status to object_id - - cache: remove null_sha1 - - builtin/worktree: switch null_sha1 to null_oid - - builtin/repack: write object IDs of the proper length - - pack-write: use hash_to_hex when writing checksums - - sequencer: convert to use the_hash_algo - - bisect: switch to using the_hash_algo - - sha1-lookup: switch hard-coded constants to the_hash_algo - - config: use the_hash_algo in abbrev comparison - - combine-diff: replace GIT_SHA1_HEXSZ with the_hash_algo - - bundle: switch to use the_hash_algo - - connected: switch GIT_SHA1_HEXSZ to the_hash_algo - - show-index: switch hard-coded constants to the_hash_algo - - blame: remove needless comparison with GIT_SHA1_HEXSZ - - builtin/rev-parse: switch to use the_hash_algo - - builtin/blame: switch uses of GIT_SHA1_HEXSZ to the_hash_algo - - builtin/receive-pack: switch to use the_hash_algo - - fetch-pack: use parse_oid_hex - - patch-id: convert to use the_hash_algo - - builtin/replace: make hash size independent - - Preparation for SHA-256 upgrade continues. - - Will merge to 'next'. - - -* cb/skip-utf8-check-with-pcre1 (2019-09-09) 1 commit - - grep: skip UTF8 checks explicitly - - Make sure the grep machinery does not abort when seeing a payload - that is not UTF-8 even when JIT is not in use with PCRE1. - - Will merge to 'next'. - - -* jk/commit-graph-cleanup (2019-09-09) 2 commits - - commit-graph: turn off save_commit_buffer - - commit-graph: don't show progress percentages while expanding reachable commits - - A pair of small fixups to "git commit-graph" have been applied. - - Will merge to 'next'. - - -* ma/asciidoctor-more-fixes (2019-09-09) 7 commits - - gitweb.conf.txt: switch pluses to backticks to help Asciidoctor - - git-merge-index.txt: wrap shell listing in "----" - - git-receive-pack.txt: wrap shell [script] listing in "----" - - git-ls-remote.txt: wrap shell listing in "----" - - Documentation: wrap config listings in "----" - - git-merge-base.txt: render indentations correctly under Asciidoctor - - Documentation: wrap blocks with "--" - - Doc formatting updates. - - Will merge to 'next'. - - -* rs/simplify-by-deco-with-deco-refs-exclude (2019-09-09) 2 commits - - log-tree: call load_ref_decorations() in get_name_decoration() - - log: test --decorate-refs-exclude with --simplify-by-decoration - - "git log --decorate-refs-exclude=" was incorrectly - overruled when the "--simplify-by-decoration" option is used, which - has been corrected. - - Will merge to 'next'. - - -* ss/get-time-cleanup (2019-09-18) 2 commits - - test_date.c: remove reference to GIT_TEST_DATE_NOW - - Quit passing 'now' to date code - - Code simplification. - - Will merge to 'next'. - - -* tb/commit-graph-harden (2019-09-09) 3 commits - - commit-graph.c: handle corrupt/missing trees - - commit-graph.c: handle commit parsing errors - - t/t5318: introduce failing 'git commit-graph write' tests - - The code to parse and use the commit-graph file has been made more - robust against corrupted input. - - Will merge to 'next'. - - -* cs/pretty-formats-doc-typofix (2019-09-12) 1 commit - - doc: minor formatting fix - - Doc fix. +* mt/threaded-grep-in-object-store (2019-10-02) 11 commits + - grep: move driver pre-load out of critical section + - grep: re-enable threads in non-worktree case + - grep: protect packed_git [re-]initialization + - grep: allow submodule functions to run in parallel + - submodule-config: add skip_if_read option to repo_read_gitmodules() + - grep: replace grep_read_mutex by internal obj read lock + - object-store: allow threaded access to object reading + - replace-object: make replace operations thread-safe + - grep: fix racy calls in grep_objects() + - grep: fix race conditions at grep_submodule() + - grep: fix race conditions on userdiff calls - Will merge to 'next'. - - -* dl/cocci-everywhere (2019-09-17) 4 commits - - Makefile: run coccicheck on more source files - - Makefile: strip leading ./ in $(FIND_SOURCE_FILES) - - Makefile: define THIRD_PARTY_SOURCES - - Makefile: strip leading ./ in $(LIB_H) - (this branch uses dl/compat-cleanup.) - - Coccinelle checks are done on more source files than before now. - - Will merge to 'next'. - - -* dl/complete-rebase-and-archive (2019-09-12) 2 commits - - completion: teach archive to use __gitcomp_builtin - - completion: teach rebase to use __gitcomp_builtin - - The command line completion for "git archive" and "git rebase" are - now made less prone to go out of sync with the binary. - - Will merge to 'next'. - - -* gs/commit-graph-progress (2019-09-18) 1 commit - - commit-graph: add --[no-]progress to write and verify - - Will merge to 'next'. - - -* jk/disable-commit-graph-during-upload-pack (2019-09-12) 2 commits - - upload-pack: disable commit graph more gently for shallow traversal - - commit-graph: bump DIE_ON_LOAD check to actual load-time - - The "upload-pack" (the counterpart of "git fetch") needs to disable - commit-graph when responding to a shallow clone/fetch request, but - the way this was done made Git panic, which has been corrected. - - Will merge to 'next'. - - -* jk/list-objects-optim-wo-trees (2019-09-12) 1 commit - - list-objects: don't queue root trees unless revs->tree_objects is set - - The object traversal machinery has been optimized not to load tree - objects when we are only interested in commit history. - - Will merge to 'next'. + Traditionally, we avoided threaded grep while searching in objects + (as opposed to files in the working tree) as accesses to the object + layer is not thread-safe. This limitation is getting lifted. -* mr/complete-more-for-log-etc (2019-09-12) 1 commit - - completion: add missing completions for log, diff, show +* jt/merge-recursive-symlink-is-not-a-dir-in-way (2019-09-20) 1 commit + (merged to 'next' on 2019-09-30 at a5d6788e2e) + + merge-recursive: symlink's descendants not in way - Completion updates. + A bug in merge-recursive code that triggers when a branch with a + symbolic link is merged with a branch that replaces it with a + directory has been fixed. - Will merge to 'next'. + Will merge to 'master'. -* ah/doc-submodule-ignore-submodules (2019-09-18) 1 commit - - doc: fix reference to --ignore-submodules +* ps/my-first-contribution-alphasort (2019-09-28) 1 commit + (merged to 'next' on 2019-09-30 at 729e6dc708) + + doc: MyFirstContribution: fix cmd placement instructions Docfix. - Will merge to 'next'. - + Will merge to 'master'. -* bc/doc-use-docbook-5 (2019-09-16) 1 commit - - Documentation: fix build with Asciidoctor 2 - Start using DocBook 5 (instead of DocBook 4.5) as Asciidoctor 2.0 - no longer works with the older one. +* rs/alias-use-copy-array (2019-09-20) 1 commit + (merged to 'next' on 2019-09-30 at 4d90f4ba93) + + git: use COPY_ARRAY and MOVE_ARRAY in handle_alias() - Will merge to 'next'. + Code cleanup. + Will merge to 'master'. -* cc/svn-fe-py-shebang (2019-09-18) 1 commit - - contrib/svn-fe: fix shebang for svnrdump_sim.py - Will merge to 'next'. +* sg/t-helper-gitignore (2019-09-20) 1 commit + (merged to 'next' on 2019-09-30 at 8e319a2eae) + + t/helper: ignore only executable files + Update the way build artifacts in t/helper/ directory are ignored. -* dl/submodule-set-branch (2019-09-16) 1 commit - - git-submodule.txt: fix AsciiDoc formatting error + Will merge to 'master'. - Docfix. - Will merge to 'next'. +* sg/travis-help-debug (2019-09-28) 1 commit + (merged to 'next' on 2019-09-30 at 054a66bb75) + + travis-ci: do not skip successfully tested trees in debug mode + Dev support update. -* en/clean-nested-with-ignored (2019-09-17) 12 commits - - clean: fix theoretical path corruption - - clean: rewrap overly long line - - clean: avoid removing untracked files in a nested git repository - - clean: disambiguate the definition of -d - - git-clean.txt: do not claim we will delete files with -n/--dry-run - - dir: add commentary explaining match_pathspec_item's return value - - dir: if our pathspec might match files under a dir, recurse into it - - dir: make the DO_MATCH_SUBMODULE code reusable for a non-submodule case - - dir: also check directories for matching pathspecs - - dir: fix off-by-one error in match_pathspec_item - - dir: fix typo in comment - - t7300: add testcases showing failure to clean specified pathspecs - (this branch uses sg/clean-nested-repo-with-ignored.) + Will merge to 'master'. - "git clean" fixes. - Will merge to 'next'. +* am/mailmap-andrey-mazo (2019-09-20) 1 commit + (merged to 'next' on 2019-09-30 at 5e373b3cba) + + .mailmap: update email address of Andrey Mazo + Will merge to 'master'. -* hb/hg-to-git-py3 (2019-09-18) 1 commit - - hg-to-git: make it compatible with both python3 and python2 - The hg-to-git script (in contrib/) has been updated to work with - Python 3. +* am/t0028-utf16-tests (2019-09-28) 2 commits + - t0028: add more tests + - t0028: fix test for UTF-16-LE-BOM - Will merge to 'next'. + Test fixes. -* jk/packfile-reuse-cleanup (2019-09-13) 10 commits - - pack-objects: improve partial packfile reuse - - builtin/pack-objects: introduce obj_is_packed() - - pack-objects: introduce pack.allowPackReuse - - csum-file: introduce hashfile_total() - - pack-bitmap: introduce bitmap_walk_contains() - - pack-bitmap: don't rely on bitmap_git->reuse_objects - - ewah/bitmap: always allocate 2 more words - - ewah/bitmap: introduce bitmap_word_alloc() - - packfile: expose get_delta_base() - - builtin/pack-objects: report reused packfile objects +* am/visual-studio-config-fix (2019-09-28) 1 commit + - contrib/buildsystems: fix Visual Studio Debug configuration - The way "git pack-objects" reuses objects stored in existing pack - to generate its result has been improved. + Dev support. Will merge to 'next'. -* jk/partial-clone-sparse-blob (2019-09-16) 4 commits - - list-objects-filter: use empty string instead of NULL for sparse "base" - - list-objects-filter: give a more specific error sparse parsing error - - list-objects-filter: delay parsing of sparse oid - - t5616: test cloning/fetching with sparse:oid= filter +* cb/do-not-use-test-cmp-with-a (2019-09-28) 1 commit + (merged to 'next' on 2019-09-30 at 273ff0e62d) + + t4038: Remove non-portable '-a' option passed to test_cmp - The name of the blob object that stores the filter specification - for sparse cloning/fetching was interpreted in a wrong place in the - code, causing Git to abort. + Test portability fix. - Will merge to 'next'. + Will merge to 'master'. -* rs/commit-graph-use-list-count (2019-09-16) 1 commit - - commit-graph: use commit_list_count() +* cc/multi-promisor (2019-10-02) 2 commits + (merged to 'next' on 2019-10-03 at a0a8ea56a9) + + promisor-remote: skip move_to_tail when no-op + (merged to 'next' on 2019-09-30 at c4826f5a08) + + promisor-remote.h: drop extern from function declaration - Code cleanup. + Cleanup. - Will merge to 'next'. + Will merge to 'master'. -* js/doc-patch-text (2019-09-17) 2 commits - - diff, log doc: small grammer, format, and language fixes - - diff, log doc: say "patch text" instead of "patches" +* dl/honor-cflags-in-hdr-check (2019-10-03) 5 commits + (merged to 'next' on 2019-10-03 at a346b79a78) + + ci: run `hdr-check` as part of the `Static Analysis` job + (merged to 'next' on 2019-09-30 at 708fb8988e) + + Makefile: emulate compile in $(HCO) target better + + pack-bitmap.h: remove magic number + + promisor-remote.h: include missing header + + apply.h: include missing header - Docfix. + Dev support. - Will merge to 'next'. + Will merge to 'master'. -* ms/fetch-follow-tag-optim (2019-09-16) 1 commit - - fetch: use oidset to keep the want OIDs for faster lookup +* en/fast-imexport-nested-tags (2019-10-02) 8 commits + - fast-export: handle nested tags + - t9350: add tests for tags of things other than a commit + - fast-export: allow user to request tags be marked with --mark-tags + - fast-export: add support for --import-marks-if-exists + - fast-import: add support for new 'alias' command + - fast-import: allow tags to be identified by mark labels + - fast-import: fix handling of deleted tags + - fast-export: fix exporting a tag and nothing else - The code used in following tags in "git fetch" has been optimized. + Updates to fast-import/export. Will merge to 'next'. -* rs/nth-parent-parse (2019-09-16) 2 commits - - sha1-name: check for overflow of N in "foo^N" and "foo~N" - - rev-parse: demonstrate overflow of N for "foo^N" and "foo~N" +* js/diff-rename-force-stable-sort (2019-10-02) 2 commits + - diffcore_rename(): use a stable sort + - Move git_sort(), a stable sort, into into libgit.a - The object name parser for "Nth parent" syntax has been made more - robust against integer overflows. + The rename detection logic sorts a list of rename source candidates + by similarity to pick the best candidate, which means that a tie + between sources with the same similarity is broken by the original + location in the original canidate list (which is sorted by path). + Force the sorting by similarity done with a stable sort, which is + not promised by system supplied qsort(3), to ensure consistent + results across platforms. Will merge to 'next'. -* rs/nth-switch-code-simplification (2019-09-18) 1 commit - - sha1_name: simplify strbuf handling in interpret_nth_prior_checkout() +* ma/user-manual-markup-update (2019-09-28) 4 commits + (merged to 'next' on 2019-09-30 at 822fa2ed99) + + user-manual.txt: render ASCII art correctly under Asciidoctor + + asciidoctor-extensions.rb: handle "book" doctype in linkgit + + user-manual.txt: change header notation + + user-manual.txt: add missing section label - Code simplification. + The markup used in user-manual has been updated to work better with + asciidoctor. - Will merge to 'next'. + Will merge to 'master'. -* sg/progress-fix (2019-09-17) 2 commits - - Test the progress display - - Revert "progress: use term_clear_line()" +* sg/name-rev-cutoff-underflow-fix (2019-09-28) 1 commit + - name-rev: avoid cutoff timestamp underflow - Regression fix for progress output. + Integer arith fix. Will merge to 'next'. -* jc/git-gui-has-maintainer (2019-09-18) 1 commit - - SubmittingPatches: git-gui has a new maintainer +* tk/git-svn-trim-author-name (2019-09-28) 1 commit + - git-svn: trim leading and trailing whitespaces in author name + + The author names taken from SVN repositories may have extra leading + or trailing whitespaces, which are now munged away. Will merge to 'next'. -* ar/mingw-run-external-with-non-ascii-path (2019-08-26) 1 commit - (merged to 'next' on 2019-09-09 at 1973826628) - + mingw: fix launching of externals from Unicode paths +* bw/submodule-helper-usage-fix (2019-09-29) 1 commit + (merged to 'next' on 2019-09-30 at 78d2f28ef7) + + builtin/submodule--helper: fix usage string for 'update-clone' - Windows update. + Typofix. Will merge to 'master'. -* cb/pcre1-cleanup (2019-08-26) 2 commits - - grep: refactor and simplify PCRE1 support - - grep: make sure NO_LIBPCRE1_JIT disable JIT in PCRE1 - (this branch uses ab/pcre-jit-fixes.) +* bc/object-id-part17 (2019-08-19) 26 commits + - midx: switch to using the_hash_algo + - builtin/show-index: replace sha1_to_hex + - rerere: replace sha1_to_hex + - builtin/receive-pack: replace sha1_to_hex + - builtin/index-pack: replace sha1_to_hex + - packfile: replace sha1_to_hex + - wt-status: convert struct wt_status to object_id + - cache: remove null_sha1 + - builtin/worktree: switch null_sha1 to null_oid + - builtin/repack: write object IDs of the proper length + - pack-write: use hash_to_hex when writing checksums + - sequencer: convert to use the_hash_algo + - bisect: switch to using the_hash_algo + - sha1-lookup: switch hard-coded constants to the_hash_algo + - config: use the_hash_algo in abbrev comparison + - combine-diff: replace GIT_SHA1_HEXSZ with the_hash_algo + - bundle: switch to use the_hash_algo + - connected: switch GIT_SHA1_HEXSZ to the_hash_algo + - show-index: switch hard-coded constants to the_hash_algo + - blame: remove needless comparison with GIT_SHA1_HEXSZ + - builtin/rev-parse: switch to use the_hash_algo + - builtin/blame: switch uses of GIT_SHA1_HEXSZ to the_hash_algo + - builtin/receive-pack: switch to use the_hash_algo + - fetch-pack: use parse_oid_hex + - patch-id: convert to use the_hash_algo + - builtin/replace: make hash size independent - PCRE fixes. + Preparation for SHA-256 upgrade continues. - Will merge to 'next'? + Will merge to 'next'. -* dl/complete-cherry-pick-revert-skip (2019-08-27) 3 commits - (merged to 'next' on 2019-09-18 at 7dd173f824) - + status: mention --skip for revert and cherry-pick - + completion: add --skip for cherry-pick and revert - + completion: merge options for cherry-pick and revert +* cb/skip-utf8-check-with-pcre1 (2019-09-09) 1 commit + (merged to 'next' on 2019-09-30 at f6113b33cf) + + grep: skip UTF8 checks explicitly - The command line completion support (in contrib/) learned about the - "--skip" option of "git revert" and "git cherry-pick". + Make sure the grep machinery does not abort when seeing a payload + that is not UTF-8 even when JIT is not in use with PCRE1. Will merge to 'master'. -* ew/hashmap (2019-09-28) 19 commits - - hashmap: remove type arg from hashmap_{get,put,remove}_entry - - OFFSETOF_VAR macro to simplify hashmap iterators - - hashmap: introduce hashmap_free_entries - - hashmap: hashmap_{put,remove} return hashmap_entry * - - hashmap: use *_entry APIs for iteration - - hashmap_cmp_fn takes hashmap_entry params - - hashmap_get{,_from_hash} return "struct hashmap_entry *" - - hashmap: use *_entry APIs to wrap container_of - - hashmap_get_next returns "struct hashmap_entry *" - - introduce container_of macro - - hashmap_put takes "struct hashmap_entry *" - - hashmap_remove takes "const struct hashmap_entry *" - - hashmap_get takes "const struct hashmap_entry *" - - hashmap_add takes "struct hashmap_entry *" - - hashmap_get_next takes "const struct hashmap_entry *" - - hashmap_entry_init takes "struct hashmap_entry *" - - packfile: use hashmap_entry in delta_base_cache_entry - - coccicheck: detect hashmap_entry.hash assignment - - diff: use hashmap_entry_init on moved_entry.ent +* jk/commit-graph-cleanup (2019-09-09) 2 commits + (merged to 'next' on 2019-09-30 at f78e24d14b) + + commit-graph: turn off save_commit_buffer + + commit-graph: don't show progress percentages while expanding reachable commits - Code clean-up of the hashmap API, both users and implementation. + A pair of small fixups to "git commit-graph" have been applied. - clang seems to be unhappy, even though gcc seems to be fine. - cf. + Will merge to 'master'. -* jk/fast-import-history-bugfix (2019-08-27) 2 commits - (merged to 'next' on 2019-09-09 at eeef864077) - + fast-import: duplicate into history rather than passing ownership - + fast-import: duplicate parsed encoding string +* ma/asciidoctor-more-fixes (2019-09-09) 7 commits + (merged to 'next' on 2019-09-30 at 4937cac46f) + + gitweb.conf.txt: switch pluses to backticks to help Asciidoctor + + git-merge-index.txt: wrap shell listing in "----" + + git-receive-pack.txt: wrap shell [script] listing in "----" + + git-ls-remote.txt: wrap shell listing in "----" + + Documentation: wrap config listings in "----" + + git-merge-base.txt: render indentations correctly under Asciidoctor + + Documentation: wrap blocks with "--" - The memory ownership model of the "git fast-import" got - straightened out. + Doc formatting updates. Will merge to 'master'. -* js/gitdir-at-unc-root (2019-08-26) 3 commits - (merged to 'next' on 2019-09-09 at 70ccc59b4b) - + setup_git_directory(): handle UNC root paths correctly - + Fix .git/ discovery at the root of UNC shares - + setup_git_directory(): handle UNC paths correctly +* rs/simplify-by-deco-with-deco-refs-exclude (2019-09-09) 2 commits + (merged to 'next' on 2019-09-30 at 3c155bbd24) + + log-tree: call load_ref_decorations() in get_name_decoration() + + log: test --decorate-refs-exclude with --simplify-by-decoration - On Windows, the root level of UNC share is now allowed to be used - just like any other directory. + "git log --decorate-refs-exclude=" was incorrectly + overruled when the "--simplify-by-decoration" option is used, which + has been corrected. Will merge to 'master'. -* mh/http-urlmatch-cleanup (2019-08-26) 1 commit - (merged to 'next' on 2019-09-09 at 9971b626f1) - + http: don't leak urlmatch_config.vars +* ss/get-time-cleanup (2019-09-18) 2 commits + (merged to 'next' on 2019-09-30 at 21a0dced8f) + + test_date.c: remove reference to GIT_TEST_DATE_NOW + + Quit passing 'now' to date code - Leakfix. + Code simplification. Will merge to 'master'. -* mh/notes-duplicate-entries (2019-08-26) 2 commits - (merged to 'next' on 2019-09-09 at 6c44967c97) - + notes: avoid potential use-after-free during insertion - + notes: avoid leaking duplicate entries +* tb/commit-graph-harden (2019-09-09) 3 commits + (merged to 'next' on 2019-09-30 at b9350a562d) + + commit-graph.c: handle corrupt/missing trees + + commit-graph.c: handle commit parsing errors + + t/t5318: introduce failing 'git commit-graph write' tests - A few implementation fixes in the notes API. + The code to parse and use the commit-graph file has been made more + robust against corrupted input. Will merge to 'master'. -* mh/release-commit-memory-fix (2019-08-26) 1 commit - (merged to 'next' on 2019-09-09 at 9fb7485032) - + commit: free the right buffer in release_commit_memory +* cs/pretty-formats-doc-typofix (2019-09-12) 1 commit + (merged to 'next' on 2019-09-30 at a29a425208) + + doc: minor formatting fix - Leakfix. + Doc fix. Will merge to 'master'. -* rs/strbuf-detach (2019-08-26) 2 commits - (merged to 'next' on 2019-09-09 at f6bba7d52f) - + grep: use return value of strbuf_detach() - + log-tree: always use return value of strbuf_detach() +* dl/cocci-everywhere (2019-09-17) 4 commits + (merged to 'next' on 2019-09-30 at 1bb1c0846f) + + Makefile: run coccicheck on more source files + + Makefile: strip leading ./ in $(FIND_SOURCE_FILES) + + Makefile: define THIRD_PARTY_SOURCES + + Makefile: strip leading ./ in $(LIB_H) - Straighten out the use of strbuf_detach() API function. + Coccinelle checks are done on more source files than before now. Will merge to 'master'. -* rs/trace2-dst-warning (2019-08-26) 1 commit - (merged to 'next' on 2019-09-09 at 13893cdf8c) - + trace2: use warning() directly in tr2_dst_malformed_warning() +* dl/complete-rebase-and-archive (2019-09-12) 2 commits + (merged to 'next' on 2019-09-30 at ddeb81ff41) + + completion: teach archive to use __gitcomp_builtin + + completion: teach rebase to use __gitcomp_builtin - Code cleanup. + The command line completion for "git archive" and "git rebase" are + now made less prone to go out of sync with the binary. Will merge to 'master'. -* sg/clean-nested-repo-with-ignored (2019-08-26) 1 commit - (merged to 'next' on 2019-09-18 at 0da1269f07) - + t7300-clean: demonstrate deleting nested repo with an ignored file breakage - (this branch is used by en/clean-nested-with-ignored.) - - A bug documentation. +* gs/commit-graph-progress (2019-09-18) 1 commit + (merged to 'next' on 2019-09-30 at 7c03eac969) + + commit-graph: add --[no-]progress to write and verify Will merge to 'master'. -* tb/banned-vsprintf-namefix (2019-08-26) 1 commit - (merged to 'next' on 2019-09-09 at e0f6d18a10) - + banned.h: fix vsprintf()'s ban message +* jk/disable-commit-graph-during-upload-pack (2019-09-12) 2 commits + (merged to 'next' on 2019-09-30 at 87dae76fb7) + + upload-pack: disable commit graph more gently for shallow traversal + + commit-graph: bump DIE_ON_LOAD check to actual load-time - Error message fix. + The "upload-pack" (the counterpart of "git fetch") needs to disable + commit-graph when responding to a shallow clone/fetch request, but + the way this was done made Git panic, which has been corrected. Will merge to 'master'. -* tb/file-url-to-unc-path (2019-08-26) 1 commit - (merged to 'next' on 2019-09-09 at 13d9c4000e) - + mingw: support UNC in git clone file://server/share/repo +* jk/list-objects-optim-wo-trees (2019-09-12) 1 commit + (merged to 'next' on 2019-09-30 at 9ef098d07f) + + list-objects: don't queue root trees unless revs->tree_objects is set - Windows update. + The object traversal machinery has been optimized not to load tree + objects when we are only interested in commit history. Will merge to 'master'. -* dl/compat-cleanup (2019-09-05) 2 commits - (merged to 'next' on 2019-09-09 at e33c896e16) - + compat/*.[ch]: remove extern from function declarations using spatch - + mingw: apply array.cocci rule - (this branch is used by dl/cocci-everywhere.) +* mr/complete-more-for-log-etc (2019-09-12) 1 commit + (merged to 'next' on 2019-09-30 at b2507b21cb) + + completion: add missing completions for log, diff, show - Code cleanup. + Completion updates. Will merge to 'master'. -* dl/use-sq-from-test-lib (2019-09-06) 1 commit - (merged to 'next' on 2019-09-09 at 9a6619ddab) - + t: use common $SQ variable +* ah/doc-submodule-ignore-submodules (2019-09-18) 1 commit + (merged to 'next' on 2019-09-30 at 9eb3de8d1b) + + doc: fix reference to --ignore-submodules - Code cleanup. + Docfix. Will merge to 'master'. -* ds/commit-graph-on-fetch (2019-09-03) 1 commit - (merged to 'next' on 2019-09-18 at 10702dd989) - + fetch: add fetch.writeCommitGraph config setting +* bc/doc-use-docbook-5 (2019-09-16) 1 commit + (merged to 'next' on 2019-09-30 at 31c4cf70ae) + + Documentation: fix build with Asciidoctor 2 - A configuration variable tells "git fetch" to write the commit - graph after finishing. + Start using DocBook 5 (instead of DocBook 4.5) as Asciidoctor 2.0 + no longer works with the older one. + + Will merge to 'master'. + + +* cc/svn-fe-py-shebang (2019-09-18) 1 commit + (merged to 'next' on 2019-09-30 at 27c8457202) + + contrib/svn-fe: fix shebang for svnrdump_sim.py Will merge to 'master'. -* ds/include-exclude (2019-09-05) 5 commits - (merged to 'next' on 2019-09-18 at 1a3655a089) - + unpack-trees: rename 'is_excluded_from_list()' - + treewide: rename 'exclude' methods to 'pattern' - + treewide: rename 'EXCL_FLAG_' to 'PATTERN_FLAG_' - + treewide: rename 'struct exclude_list' to 'struct pattern_list' - + treewide: rename 'struct exclude' to 'struct path_pattern' +* dl/submodule-set-branch (2019-09-16) 1 commit + (merged to 'next' on 2019-09-30 at c66b398cc1) + + git-submodule.txt: fix AsciiDoc formatting error - The internal code originally invented for ".gitignore" processing - got reshuffled and renamed to make it less tied to "excluding" and - stress more that it is about "matching", as it has been reused for - things like sparse checkout specification that want to check if a - path is "included". + Docfix. Will merge to 'master'. -* dt/remote-helper-doc-re-lock-option (2019-08-30) 1 commit - (merged to 'next' on 2019-09-09 at 970488992a) - + clarify documentation for remote helpers +* en/clean-nested-with-ignored (2019-10-02) 13 commits + (merged to 'next' on 2019-10-03 at 969ec06cc7) + + dir: special case check for the possibility that pathspec is NULL + (merged to 'next' on 2019-09-30 at 778cc31eac) + + clean: fix theoretical path corruption + + clean: rewrap overly long line + + clean: avoid removing untracked files in a nested git repository + + clean: disambiguate the definition of -d + + git-clean.txt: do not claim we will delete files with -n/--dry-run + + dir: add commentary explaining match_pathspec_item's return value + + dir: if our pathspec might match files under a dir, recurse into it + + dir: make the DO_MATCH_SUBMODULE code reusable for a non-submodule case + + dir: also check directories for matching pathspecs + + dir: fix off-by-one error in match_pathspec_item + + dir: fix typo in comment + + t7300: add testcases showing failure to clean specified pathspecs - Doc update. + "git clean" fixes. Will merge to 'master'. -* en/filter-branch-deprecation (2019-09-05) 3 commits - (merged to 'next' on 2019-09-09 at 311ed09ba8) - + t9902: use a non-deprecated command for testing - + Recommend git-filter-repo instead of git-filter-branch - + t6006: simplify, fix, and optimize empty message test +* hb/hg-to-git-py3 (2019-09-18) 1 commit + (merged to 'next' on 2019-09-30 at 28f7e9bae3) + + hg-to-git: make it compatible with both python3 and python2 - Start discouraging the use of "git filter-branch". + The hg-to-git script (in contrib/) has been updated to work with + Python 3. Will merge to 'master'. -* en/merge-options-ff-and-friends (2019-09-01) 1 commit - (merged to 'next' on 2019-09-09 at b3bcc2cbc7) - + merge-options.txt: clarify meaning of various ff-related options +* jk/packfile-reuse-cleanup (2019-09-13) 10 commits + (merged to 'next' on 2019-09-30 at dc60b31833) + + pack-objects: improve partial packfile reuse + + builtin/pack-objects: introduce obj_is_packed() + + pack-objects: introduce pack.allowPackReuse + + csum-file: introduce hashfile_total() + + pack-bitmap: introduce bitmap_walk_contains() + + pack-bitmap: don't rely on bitmap_git->reuse_objects + + ewah/bitmap: always allocate 2 more words + + ewah/bitmap: introduce bitmap_word_alloc() + + packfile: expose get_delta_base() + + builtin/pack-objects: report reused packfile objects - Doc update. + The way "git pack-objects" reuses objects stored in existing pack + to generate its result has been improved. + + On hold until we give it a more thorough review. + cf. <20191002155721.GD6116@sigill.intra.peff.net> + + +* jk/partial-clone-sparse-blob (2019-09-16) 4 commits + (merged to 'next' on 2019-09-30 at 44b33488ea) + + list-objects-filter: use empty string instead of NULL for sparse "base" + + list-objects-filter: give a more specific error sparse parsing error + + list-objects-filter: delay parsing of sparse oid + + t5616: test cloning/fetching with sparse:oid= filter + + The name of the blob object that stores the filter specification + for sparse cloning/fetching was interpreted in a wrong place in the + code, causing Git to abort. Will merge to 'master'. -* jc/test-cleanup (2019-09-05) 2 commits - (merged to 'next' on 2019-09-09 at 41ced23598) - + t3005: remove unused variable - + t: use LF variable defined in the test harness +* rs/commit-graph-use-list-count (2019-09-16) 1 commit + (merged to 'next' on 2019-09-30 at 8986e5537f) + + commit-graph: use commit_list_count() Code cleanup. Will merge to 'master'. -* jk/misc-uninitialized-fixes (2019-09-06) 6 commits - (merged to 'next' on 2019-09-09 at 39ccd21475) - + pack-objects: drop packlist index_pos optimization - + test-read-cache: drop namelen variable - + diff-delta: set size out-parameter to 0 for NULL delta - + bulk-checkin: zero-initialize hashfile_checkpoint - + pack-objects: use object_id in packlist_alloc() - + git-am: handle missing "author" when parsing commit +* js/doc-patch-text (2019-09-17) 2 commits + (merged to 'next' on 2019-09-30 at f9b391a66b) + + diff, log doc: small grammer, format, and language fixes + + diff, log doc: say "patch text" instead of "patches" - Various fixes to codepaths gcc 9 had trouble following dataflow. + Docfix. Will merge to 'master'. -* js/visual-studio (2019-09-05) 1 commit - (merged to 'next' on 2019-09-09 at 5493ee9474) - + .gitignore: stop ignoring `.manifest` files +* ms/fetch-follow-tag-optim (2019-09-16) 1 commit + (merged to 'next' on 2019-09-30 at 97ec83d2a2) + + fetch: use oidset to keep the want OIDs for faster lookup - Adjust .gitignore to unignore a path that we started to track. + The code used in following tags in "git fetch" has been optimized. Will merge to 'master'. -* jt/cache-tree-avoid-lazy-fetch-during-merge (2019-09-09) 1 commit - - cache-tree: do not lazy-fetch tentative tree +* rs/nth-parent-parse (2019-09-16) 2 commits + (merged to 'next' on 2019-09-30 at 5bdfeacdff) + + sha1-name: check for overflow of N in "foo^N" and "foo~N" + + rev-parse: demonstrate overflow of N for "foo^N" and "foo~N" - The cache-tree code has been taught to be less aggressive in - attempting to see if a tree object it computed already exists in - the repository. + The object name parser for "Nth parent" syntax has been made more + robust against integer overflows. - Will merge to 'next'. + Will merge to 'master'. -* ma/asciidoctor-refmiscinfo (2019-09-16) 3 commits - - doc-diff: replace --cut-header-footer with --cut-footer - - asciidoctor-extensions: provide `` - - Doc/Makefile: give mansource/-version/-manual attributes +* rs/nth-switch-code-simplification (2019-09-18) 1 commit + (merged to 'next' on 2019-09-30 at 4233f54a72) + + sha1_name: simplify strbuf handling in interpret_nth_prior_checkout() - Update support for Asciidoctor documentation toolchain. + Code simplification. - Will merge to 'next'. + Will merge to 'master'. -* nd/switch-and-restore (2019-08-30) 1 commit - (merged to 'next' on 2019-09-09 at 97e7e06801) - + checkout: add simple check for 'git checkout -b' +* sg/progress-fix (2019-09-17) 2 commits + (merged to 'next' on 2019-09-30 at d352332810) + + Test the progress display + + Revert "progress: use term_clear_line()" - Resurrect a performance hack. + Regression fix for progress output. Will merge to 'master'. -* rs/get-tagged-oid (2019-09-05) 2 commits - (merged to 'next' on 2019-09-09 at 0e9489a835) - + use get_tagged_oid() - + tag: factor out get_tagged_oid() - - Code cleanup. +* jc/git-gui-has-maintainer (2019-09-18) 1 commit + (merged to 'next' on 2019-09-30 at dfe61e947c) + + SubmittingPatches: git-gui has a new maintainer Will merge to 'master'. -* rs/help-unknown-ref-does-not-return (2019-08-30) 1 commit - (merged to 'next' on 2019-09-09 at 4b00ea1ac9) - + help: make help_unknown_ref() NORETURN +* cb/pcre1-cleanup (2019-08-26) 2 commits + - grep: refactor and simplify PCRE1 support + - grep: make sure NO_LIBPCRE1_JIT disable JIT in PCRE1 + (this branch uses ab/pcre-jit-fixes.) - Code cleanup. + PCRE fixes. - Will merge to 'master'. + Will merge to 'next'. -* rs/parse-tree-indirect (2019-09-03) 1 commit - (merged to 'next' on 2019-09-09 at 157e836dba) - + tree: simplify parse_tree_indirect() +* ew/hashmap (2019-09-28) 19 commits + - hashmap: remove type arg from hashmap_{get,put,remove}_entry + - OFFSETOF_VAR macro to simplify hashmap iterators + - hashmap: introduce hashmap_free_entries + - hashmap: hashmap_{put,remove} return hashmap_entry * + - hashmap: use *_entry APIs for iteration + - hashmap_cmp_fn takes hashmap_entry params + - hashmap_get{,_from_hash} return "struct hashmap_entry *" + - hashmap: use *_entry APIs to wrap container_of + - hashmap_get_next returns "struct hashmap_entry *" + - introduce container_of macro + - hashmap_put takes "struct hashmap_entry *" + - hashmap_remove takes "const struct hashmap_entry *" + - hashmap_get takes "const struct hashmap_entry *" + - hashmap_add takes "struct hashmap_entry *" + - hashmap_get_next takes "const struct hashmap_entry *" + - hashmap_entry_init takes "struct hashmap_entry *" + - packfile: use hashmap_entry in delta_base_cache_entry + - coccicheck: detect hashmap_entry.hash assignment + - diff: use hashmap_entry_init on moved_entry.ent - Code cleanup. + Code clean-up of the hashmap API, both users and implementation. - Will merge to 'master'. + clang seems to be unhappy, even though gcc seems to be fine. + cf. -* sg/git-test-boolean (2019-09-06) 2 commits - (merged to 'next' on 2019-09-09 at 90406d6375) - + ci: restore running httpd tests - + t/lib-git-svn.sh: check GIT_TEST_SVN_HTTPD when running SVN HTTP tests +* jt/cache-tree-avoid-lazy-fetch-during-merge (2019-09-09) 1 commit + (merged to 'next' on 2019-09-30 at 5d8ffc2e0f) + + cache-tree: do not lazy-fetch tentative tree - Fix an earlier regression in the test suite, which mistakenly - stopped running HTTPD tests. + The cache-tree code has been taught to be less aggressive in + attempting to see if a tree object it computed already exists in + the repository. Will merge to 'master'. -* tg/push-all-in-mirror-forbidden (2019-09-03) 1 commit - (merged to 'next' on 2019-09-09 at 9db61400c8) - + push: disallow --all and refspecs when remote..mirror is set +* ma/asciidoctor-refmiscinfo (2019-09-16) 3 commits + (merged to 'next' on 2019-09-30 at e5d13aceb8) + + doc-diff: replace --cut-header-footer with --cut-footer + + asciidoctor-extensions: provide `` + + Doc/Makefile: give mansource/-version/-manual attributes - Fix an earlier regression to "git push --all" which should have - been forbidden when the target remote repository is set to be a - mirror. + Update support for Asciidoctor documentation toolchain. Will merge to 'master'. * tg/stash-refresh-index (2019-09-20) 3 commits - - stash: make sure to write refreshed cache - - merge: use refresh_and_write_cache - - factor out refresh_and_write_cache function + (merged to 'next' on 2019-09-30 at de7759ad1d) + + stash: make sure to write refreshed cache + + merge: use refresh_and_write_cache + + factor out refresh_and_write_cache function "git stash" learned to write refreshed index back to disk. - Will merge to 'next'. + Will merge to 'master'. * js/builtin-add-i (2019-08-30) 11 commits @@ -957,7 +1127,9 @@ of the repositories listed at On hold, waiting for tg/stash-refresh-index to work well with this. -* en/merge-recursive-cleanup (2019-08-19) 24 commits +* en/merge-recursive-cleanup (2019-10-02) 25 commits + (merged to 'next' on 2019-10-03 at 7b5a32726b) + + merge-recursive: fix the diff3 common ancestor label for virtual commits (merged to 'next' on 2019-09-18 at f52cb08a14) + merge-recursive: alphabetize include list + merge-recursive: add sanity checks for relevant merge_options @@ -991,63 +1163,6 @@ of the repositories listed at Will merge to 'master'. -* bc/hash-independent-tests-part-5 (2019-08-26) 14 commits - (merged to 'next' on 2019-09-09 at 49defc07af) - + t4009: make hash size independent - + t4002: make hash independent - + t4000: make hash size independent - + t3903: abstract away SHA-1-specific constants - + t3800: make hash-size independent - + t3600: make hash size independent - + t3506: make hash independent - + t3430: avoid hard-coded object IDs - + t3404: abstract away SHA-1-specific constants - + t3306: abstract away SHA-1-specific constants - + t3305: make hash size independent - + t3301: abstract away SHA-1-specific constants - + t3206: abstract away hash size constants - + t3201: abstract away SHA-1-specific constants - - Preparation for SHA-256 upgrade continues in the test department. - - Will merge to 'master'. - - -* bw/rebase-autostash-keep-current-branch (2019-09-07) 2 commits - (merged to 'next' on 2019-09-18 at 6d8ed846ed) - + builtin/rebase.c: Remove pointless message - + builtin/rebase.c: make sure the active branch isn't moved when autostashing - - "git rebase --autostash ", when is - different from the current branch, incorrectly moved the tip of the - current branch, which has been corrected. - - Will merge to 'master'. - - -* dl/format-patch-doc-test-cleanup (2019-09-05) 13 commits - (merged to 'next' on 2019-09-09 at b3022b4002) - + config/format.txt: specify default value of format.coverLetter - + Doc: add more detail for git-format-patch - + t4014: stop losing return codes of git commands - + t4014: remove confusing pipe in check_threading() - + t4014: use test_line_count() where possible - + t4014: let sed open its own files - + t4014: drop redirections to /dev/null - + t4014: use indentable here-docs - + t4014: remove spaces after redirect operators - + t4014: use sq for test case names - + t4014: move closing sq onto its own line - + t4014: s/expected/expect/ - + t4014: drop unnecessary blank lines from test cases - (this branch is used by dl/format-patch-cover-letter-subject.) - - The documentation and tests for "git format-patch" have been - cleaned up. - - Will merge to 'master'. - - * pw/rebase-i-show-HEAD-to-reword (2019-08-19) 3 commits - sequencer: simplify root commit creation - rebase -i: check for updated todo after squash and reword @@ -1059,29 +1174,6 @@ of the repositories listed at Will merge to 'next'. -* cb/pcre2-chartables-leakfix (2019-08-06) 3 commits - - grep: avoid leak of chartables in PCRE2 - - grep: make PCRE2 aware of custom allocator - - grep: make PCRE1 aware of custom allocator - - WIP. - - -* jh/trace2-pretty-output (2019-08-09) 7 commits - (merged to 'next' on 2019-09-18 at 503974aa46) - + trace2: cleanup whitespace in perf format - + trace2: cleanup whitespace in normal format - + quote: add sq_append_quote_argv_pretty() - + trace2: trim trailing whitespace in normal format error message - + trace2: remove dead code in maybe_add_string_va() - + trace2: trim whitespace in region messages in perf target format - + trace2: cleanup column alignment in perf target format - - Output from trace2 subsystem is formatted more prettily now. - - Will merge to 'master'. - - * vn/reset-deleted-ita (2019-07-26) 1 commit - reset: unstage empty deleted ita files @@ -1103,7 +1195,7 @@ of the repositories listed at "git rebase -i" learned a few options that are known by "git rebase" proper. - Is this ready for 'next'? + Is this ready for 'next'. * ab/pcre-jit-fixes (2019-08-19) 18 commits @@ -1129,30 +1221,7 @@ of the repositories listed at A few simplification and bugfixes to PCRE interface. - Will merge to 'next'? - - -* dl/rebase-i-keep-base (2019-08-27) 9 commits - (merged to 'next' on 2019-09-18 at f94f486724) - + rebase: teach rebase --keep-base - + rebase tests: test linear branch topology - + rebase: fast-forward --fork-point in more cases - + rebase: fast-forward --onto in more cases - + rebase: refactor can_fast_forward into goto tower - + t3432: test for --no-ff's interaction with fast-forward - + t3432: distinguish "noop-same" v.s. "work-same" in "same head" tests - + t3432: test rebase fast-forward behavior - + t3431: add rebase --fork-point tests - - "git rebase --keep-base " tries to find the original base - of the topic being rebased and rebase on top of that same base, - which is useful when running the "git rebase -i" (and its limited - variant "git rebase -x"). - - The command also has learned to fast-forward in more cases where it - can instead of replaying to recreate identical commits. - - Will merge to 'master'. + Will merge to 'next'. * jc/format-patch-noclobber (2019-02-22) 1 commit -- 2.47.3