lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Wed, 25 Dec 2019 19:33:46 -0500
From:   Denton Liu <liu.denton@...il.com>
To:     Junio C Hamano <gitster@...ox.com>
Cc:     git@...r.kernel.org, Linux Kernel <linux-kernel@...r.kernel.org>,
        git-packagers@...glegroups.com
Subject: Re: [ANNOUNCE] Git v2.25.0-rc0

Thanks for your hard work, Junio. Merry Christmas!

On Wed, Dec 25, 2019 at 01:44:54PM -0800, Junio C Hamano wrote:
> 
> An early preview release Git v2.25.0-rc0 is now available for
> testing at the usual places.  It is comprised of 531 non-merge
> commits since v2.24.0, contributed by 61 people, 24 of which are
> new faces.
> 
> The tarballs are found at:
> 
>     https://www.kernel.org/pub/software/scm/git/testing/
> 
> The following public repositories all have a copy of the
> 'v2.25.0-rc0' tag and the 'master' branch that the tag points at:
> 
>   url = https://kernel.googlesource.com/pub/scm/git/git
>   url = git://repo.or.cz/alt-git.git
>   url = https://github.com/gitster/git
> 
> New contributors whose contributions weren't in v2.24.0 are as follows.
> Welcome to the Git development community!
> 
>   Colin Stolley, Doan Tran Cong Danh, Dominic Jäger, Erik Chen,
>   Hariom Verma, Heba Waly, James Coglan, James Shubin, Josh
>   Holland, Łukasz Niemier, Manish Goregaokar, Matthew Rogers,
>   Mihail Atanassov, Miriam Rubio, Nathan Stocks, Naveen Nathan,
>   Nika Layzell, Philippe Blain, Prarit Bhargava, r.burenkov,
>   Ruud van Asseldonk, ryenus, Slavica Đukić, and Utsav Shah.
> 
> Returning contributors who helped this release are as follows.
> Thanks for your continued support.
> 
>   Alban Gruin, Alexandr Miloslavskiy, Andreas Schwab, Andrei Rybak,
>   brian m. carlson, Daniel Ferreira, Denton Liu, Derrick Stolee,
>   Dimitriy Ryazantcev, Ed Maste, Elia Pinto, Elijah Newren, Emily
>   Shaffer, Garima Singh, Hans Jerry Illikainen, Jean-Noël Avila,
>   Jeff Hostetler, Jeff King, Johannes Schindelin, Jonathan Nieder,
>   Jonathan Tan, Junio C Hamano, Kevin Willford, Martin Ågren,
>   Mike Hommey, Philip Oakley, Phillip Wood, Pratyush Yadav,
>   Ralf Thielow, René Scharfe, Robin H. Johnson, Rohit Ashiwal,
>   SZEDER Gábor, Tanushree Tumane, Thomas Gummerer, Todd Zullinger,
>   and William Baker.
> 
> ----------------------------------------------------------------
> 
> Git 2.25 Release Notes (draft)
> ==============================
> 
> Updates since v2.24
> -------------------
> 
> Backward compatibility notes
> 
> 
> UI, Workflows & Features
> 
>  * A tutorial on object enumeration has been added.
> 
>  * The branch description ("git branch --edit-description") has been
>    used to fill the body of the cover letters by the format-patch
>    command; this has been enhanced so that the subject can also be
>    filled.
> 
>  * "git rebase --preserve-merges" has been marked as deprecated; this
>    release stops advertising it in the "git rebase -h" output.
> 
>  * The code to generate multi-pack index learned to show (or not to
>    show) progress indicators.
> 
>  * "git apply --3way" learned to honor merge.conflictStyle
>    configuration variable, like merges would.
> 
>  * The custom format for "git log --format=<format>" learned the l/L
>    placeholder that is similar to e/E that fills in the e-mail
>    address, but only the local part on the left side of '@'.
> 
>  * Documentation pages for "git shortlog" now list commit limiting
>    options explicitly.
> 
>  * The patterns to detect function boundary for Elixir language has
>    been added.
> 
>  * The completion script (in contrib/) learned that the "--onto"
>    option of "git rebase" can take its argument as the value of the
>    option.
> 
>  * The userdiff machinery has been taught that "async def" is another
>    way to begin a "function" in Python.
> 
>  * "git range-diff" learned to take the "--notes=<ref>" and the
>    "--no-notes" options to control the commit notes included in the
>    log message that gets compared.
> 
>  * "git rev-parse --show-toplevel" run outside of any working tree did
>    not error out, which has been corrected.
> 
>  * A few commands learned to take the pathspec from the standard input
>    or a named file, instead of taking it as the command line
>    arguments, with the "--pathspec-from-file" option.
> 
>  * "git rebase -i" learned a few options that are known by "git
>    rebase" proper.
> 
>  * "git submodule" learned a subcommand "set-url".
> 
>  * "git log" family learned "--pretty=reference" that gives the name
>    of a commit in the format that is often used to refer to it in log
>    messages.
> 
>  * The interaction between "git clone --recurse-submodules" and
>    alternate object store was ill-designed.  The documentation and
>    code have been taught to make more clear recommendations when the
>    users see failures.
> 
>  * Management of sparsely checked-out working tree has gained a
>    dedicated "sparse-checkout" command.
> 
> 
> Performance, Internal Implementation, Development Support etc.
> 
>  * Debugging support for lazy cloning has been a bit improved.
> 
>  * Move the definition of a set of bitmask constants from 0ctal
>    literal to (1U<<count) notation.
> 
>  * Test updates to prepare for SHA-2 transition continues.
> 
>  * Crufty code and logic accumulated over time around the object
>    parsing and low-level object access used in "git fsck" have been
>    cleaned up.
> 
>  * The implementation of "git log --graph" got refactored and then its
>    output got simplified.
> 
>  * Follow recent push to move API docs from Documentation/ to header
>    files and update config.h
> 
>  * "git bundle" has been taught to use the parse options API.  "git
>    bundle verify" learned "--quiet" and "git bundle create" learned
>    options to control the progress output.
> 
>  * Handling of commit objects that use non UTF-8 encoding during
>    "rebase -i" has been improved.
> 
>  * The beginning of rewriting "git add -i" in C.
> 
>  * A label used in the todo list that are generated by "git rebase
>    --rebase-merges" is used as a part of a refname; the logic to come
>    up with the label has been tightened to avoid names that cannot be
>    used as such.
> 
>  * The logic to avoid duplicate label names generated by "git rebase
>    --rebase-merges" forgot that the machinery itself uses "onto" as a
>    label name, which must be avoided by auto-generated labels, which
>    has been corrected.
> 
>  * We have had compatibility fallback macro definitions for "PRIuMAX",
>    "PRIu32", etc. but did not for "PRIdMAX", while the code used the
>    last one apparently without any hiccup reported recently.  The
>    fallback macro definitions for these <inttypes.h> macros that must
>    appear in C99 systems have been removed.
> 
>  * Recently we have declared that GIT_TEST_* variables take the
>    usual boolean values (it used to be that some used "non-empty
>    means true" and taking GIT_TEST_VAR=YesPlease as true); make
>    sure we notice and fail when non-bool strings are given to
>    these variables.
> 
>  * Users of oneway_merge() (like "reset --hard") learned to take
>    advantage of fsmonitor to avoid unnecessary lstat(2) calls.
> 
>  * Performance tweak on "git push" into a repository with many refs
>    that point at objects we have never heard of.
> 
>  * PerfTest fix to avoid stale result mixed up with the latest round
>    of test results.
> 
>  * Hide lower-level verify_signed-buffer() API as a pure helper to
>    implement the public check_signature() function, in order to
>    encourage new callers to use the correct and more strict
>    validation.
> 
>  * Unnecessary reading of state variables back from the disk during
>    sequencer operation has been reduced.
> 
>  * The code has been made to avoid gmtime() and localtime() and prefer
>    their reentrant counterparts.
> 
>  * The effort to reimplement "git add -i" in C continues.
> 
>  * In a repository with many packfiles, the cost of the procedure that
>    avoids registering the same packfile twice was unnecessarily high
>    by using an inefficient search algorithm, which has been corrected.
> 
>  * Redo "git name-rev" to avoid recursive calls.
> 
> 
> Fixes since v2.24
> -----------------
> 
>  * "rebase -i" ceased to run post-commit hook by mistake in an earlier
>    update, which has been corrected.
> 
>  * "git notes copy $original" ought to copy the notes attached to the
>    original object to HEAD, but a mistaken tightening to command line
>    parameter validation made earlier disabled that feature by mistake.
> 
>  * When all files from some subdirectory were renamed to the root
>    directory, the directory rename heuristics would fail to detect that
>    as a rename/merge of the subdirectory to the root directory, which has
>    been corrected.
> 
>  * Code clean-up and a bugfix in the logic used to tell worktree local
>    and repository global refs apart.
>    (merge f45f88b2e4 sg/dir-trie-fixes later to maint).
> 
>  * "git stash save" in a working tree that is sparsely checked out
>    mistakenly removed paths that are outside the area of interest.
>    (merge 4a58c3d7f7 js/update-index-ignore-removal-for-skip-worktree later to maint).
> 
>  * "git rev-parse --git-path HEAD.lock" did not give the right path
>    when run in a secondary worktree.
>    (merge 76a53d640f js/git-path-head-dot-lock-fix later to maint).
> 
>  * "git merge --no-commit" needs "--no-ff" if you do not want to move
>    HEAD, which has been corrected in the manual page for "git bisect".
>    (merge 8dd327b246 ma/bisect-doc-sample-update later to maint).
> 
>  * "git worktree add" internally calls "reset --hard" that should not
>    descend into submodules, even when submodule.recurse configuration
>    is set, but it was affected.  This has been corrected.
>    (merge 4782cf2ab6 pb/no-recursive-reset-hard-in-worktree-add later to maint).
> 
>  * Messages from die() etc. can be mixed up from multiple processes
>    without even line buffering on Windows, which has been worked
>    around.
>    (merge 116d1fa6c6 js/vreportf-wo-buffering later to maint).
> 
>  * HTTP transport had possible allocator/deallocator mismatch, which
>    has been corrected.
> 
>  * The watchman integration for fsmonitor was racy, which has been
>    corrected to be more conservative.
>    (merge dd0b61f577 kw/fsmonitor-watchman-fix later to maint).
> 
>  * Fetching from multiple remotes into the same repository in parallel
>    had a bad interaction with the recent change to (optionally) update
>    the commit-graph after a fetch job finishes, as these parallel
>    fetches compete with each other.  Which has been corrected.
> 
>  * Recent update to "git stash pop" made the command empty the index
>    when run with the "--quiet" option, which has been corrected.
> 
>  * "git fetch" codepath had a big "do not lazily fetch missing objects
>    when I ask if something exists" switch.  This has been corrected by
>    marking the "does this thing exist?" calls with "if not please do not
>    lazily fetch it" flag.
> 
>  * Test update to avoid wasted cycles.
>    (merge e0316695ec sg/skip-skipped-prereq later to maint).
> 
>  * Error handling after "git push" finishes sending the packdata and
>    waits for the response to the remote side has been improved.
>    (merge ad7a403268 jk/send-pack-remote-failure later to maint).
> 
>  * Some codepaths in "gitweb" that forgot to escape URLs generated
>    based on end-user input have been corrected.
>    (merge a376e37b2c jk/gitweb-anti-xss later to maint).
> 
>  * CI jobs for macOS has been made less chatty when updating perforce
>    package used during testing.
>    (merge 0dbc4a0edf jc/azure-ci-osx-fix-fix later to maint).
> 
>  * "git unpack-objects" used to show progress based only on the number
>    of received and unpacked objects, which stalled when it has to
>    handle an unusually large object.  It now shows the throughput as
>    well.
>    (merge bae60ba7e9 sg/unpack-progress-throughput later to maint).
> 
>  * The sequencer machinery compared the HEAD and the state it is
>    attempting to commit to decide if the result would be a no-op
>    commit, even when amending a commit, which was incorrect, and
>    has been corrected.
> 
>  * The code to parse GPG output used to assume incorrectly that the
>    finterprint for the primary key would always be present for a valid
>    signature, which has been corrected.
>    (merge 67a6ea6300 hi/gpg-optional-pkfp-fix later to maint).
> 
>  * "git submodule status" and "git submodule status --cached" show
>    different things, but the documentation did not cover them
>    correctly, which has been corrected.
>    (merge 8d483c8408 mg/doc-submodule-status-cached later to maint).
> 
>  * "git reset --patch $object" without any pathspec should allow a
>    tree object to be given, but incorrectly required a committish,
>    which has been corrected.
> 
>  * "git submodule status" that is run from a subdirectory of the
>    superproject did not work well, which has been corrected.
>    (merge 1f3aea22c7 mg/submodule-status-from-a-subdirectory later to maint).
> 
>  * The revision walking machinery uses resources like per-object flag
>    bits that need to be reset before a new iteration of walking
>    begins, but the resources related to topological walk were not
>    cleared correctly, which has been corrected.
>    (merge 0aa0c2b2ec mh/clear-topo-walk-upon-reset later to maint).
> 
>  * TravisCI update.
>    (merge 176441bfb5 sg/osx-force-gcc-9 later to maint).
> 
>  * While running "revert" or "cherry-pick --edit" for multiple
>    commits, a recent regression incorrectly detected "nothing to
>    commit, working tree clean", instead of replaying the commits,
>    which has been corrected.
>    (merge befd4f6a81 sg/assume-no-todo-update-in-cherry-pick later to maint).
> 
>  * Work around a issue where a FD that is left open when spawning a
>    child process and is kept open in the child can interfere with the
>    operation in the parent process on Windows.
> 
>  * One kind of progress messages were always given during commit-graph
>    generation, instead of following the "if it takes more than two
>    seconds, show progress" pattern, which has been corrected.
> 
>  * "git rebase" did not work well when format.useAutoBase
>    configuration variable is set, which has been corrected.
> 
>  * The "diff" machinery learned not to lose added/removed blank lines
>    in the context when --ignore-blank-lines and --function-context are
>    used at the same time.
>    (merge 0bb313a552 rs/xdiff-ignore-ws-w-func-context later to maint).
> 
>  * The test on "fast-import" used to get stuck when "fast-import" died
>    in the middle.
>    (merge 0d9b0d7885 sg/t9300-robustify later to maint).
> 
>  * "git format-patch" can take a set of configured format.notes values
>    to specify which notes refs to use in the log message part of the
>    output.  The behaviour of this was not consistent with multiple
>    --notes command line options, which has been corrected.
>    (merge e0f9095aaa dl/format-patch-notes-config-fixup later to maint).
> 
>  * "git p4" used to ignore lfs.storage configuration variable, which
>    has been corrected.
>    (merge ea94b16fb8 rb/p4-lfs later to maint).
> 
>  * Assorted fixes to the directory traversal API.
>    (merge 6836d2fe06 en/fill-directory-fixes later to maint).
> 
>  * Other code cleanup, docfix, build fix, etc.
>    (merge 80736d7c5e jc/am-show-current-patch-docfix later to maint).
>    (merge 8b656572ca sg/commit-graph-usage-fix later to maint).
>    (merge 6c02042139 mr/clone-dir-exists-to-path-exists later to maint).
>    (merge 44ae131e38 sg/blame-indent-heuristics-is-now-the-default later to maint).
>    (merge 0115e5d929 dl/doc-diff-no-index-implies-exit-code later to maint).
>    (merge 270de6acbe en/t6024-style later to maint).
>    (merge 14c4776d75 ns/test-desc-typofix later to maint).
>    (merge 68d40f30c4 dj/typofix-merge-strat later to maint).
>    (merge f66e0401ab jk/optim-in-pack-idx-conversion later to maint).
>    (merge 169bed7421 rs/parse-options-dup-null-fix later to maint).
>    (merge 51bd6be32d rs/use-copy-array-in-mingw-shell-command-preparation later to maint).
>    (merge b018719927 ma/t7004 later to maint).
>    (merge 932757b0cc ar/install-doc-update-cmds-needing-the-shell later to maint).
>    (merge 46efd28be1 ep/guard-kset-tar-headers later to maint).
>    (merge 9e5afdf997 ec/fetch-mark-common-refs-trace2 later to maint).
>    (merge f0e58b3fe8 pb/submodule-update-fetches later to maint).
>    (merge 2a02262078 dl/t5520-cleanup later to maint).
>    (merge a4fb016ba1 js/pkt-line-h-typofix later to maint).
>    (merge 54a7a64613 rs/simplify-prepare-cmd later to maint).
>    (merge 3eae30e464 jk/lore-is-the-archive later to maint).
>    (merge 14b7664df8 dl/lore-is-the-archive later to maint).
>    (merge 0e40a73a4c po/bundle-doc-clonable later to maint).
>    (merge e714b898c6 as/t7812-missing-redirects-fix later to maint).
>    (merge 528d9e6d01 jk/perf-wo-git-dot-pm later to maint).
>    (merge fc42f20e24 sg/test-squelch-noise-in-commit-bulk later to maint).
>    (merge c64368e3a2 bc/t9001-zsh-in-posix-emulation-mode later to maint).
>    (merge 11de8dd7ef dr/branch-usage-casefix later to maint).
>    (merge e05e8cf074 rs/archive-zip-code-cleanup later to maint).
>    (merge 147ee35558 rs/commit-export-env-simplify later to maint).
>    (merge 4507ecc771 rs/patch-id-use-oid-to-hex later to maint).
>    (merge 51a0a4ed95 mr/bisect-use-after-free later to maint).
>    (merge cc2bd5c45d pb/submodule-doc-xref later to maint).
>    (merge df5be01669 ja/doc-markup-cleanup later to maint).
>    (merge 7c5cea7242 mr/bisect-save-pointer-to-const-string later to maint).
> 
> ----------------------------------------------------------------
> 
> Changes since v2.24.0 are as follows:
> 
> Alban Gruin (6):
>       sequencer: update `total_nr' when adding an item to a todo list
>       sequencer: update `done_nr' when skipping commands in a todo list
>       sequencer: move the code writing total_nr on the disk to a new function
>       rebase: fill `squash_onto' in get_replay_opts()
>       sequencer: directly call pick_commits() from complete_action()
>       sequencer: fix a memory leak in sequencer_continue()
> 
> Alexandr Miloslavskiy (14):
>       parse-options.h: add new options `--pathspec-from-file`, `--pathspec-file-nul`
>       pathspec: add new function to parse file
>       doc: reset: synchronize <pathspec> description
>       reset: support the `--pathspec-from-file` option
>       doc: commit: synchronize <pathspec> description
>       commit: support the --pathspec-from-file option
>       cmd_add: prepare for next patch
>       add: support the --pathspec-from-file option
>       doc: checkout: remove duplicate synopsis
>       doc: checkout: fix broken text reference
>       doc: checkout: synchronize <pathspec> description
>       doc: restore: synchronize <pathspec> description
>       checkout, restore: support the --pathspec-from-file option
>       commit: forbid --pathspec-from-file --all
> 
> Andreas Schwab (1):
>       t7812: add missing redirects
> 
> Andrei Rybak (1):
>       INSTALL: use existing shell scripts as example
> 
> Colin Stolley (1):
>       packfile.c: speed up loading lots of packfiles
> 
> Daniel Ferreira (2):
>       diff: export diffstat interface
>       built-in add -i: implement the `status` command
> 
> Denton Liu (93):
>       format-patch: replace erroneous and condition
>       format-patch: use enum variables
>       format-patch: teach --cover-from-description option
>       rebase: hide --preserve-merges option
>       t4108: replace create_file with test_write_lines
>       t4108: remove git command upstream of pipe
>       t4108: use `test_config` instead of `git config`
>       t4108: demonstrate bug in apply
>       apply: respect merge.conflictStyle in --3way
>       submodule: teach set-url subcommand
>       git-diff.txt: document return code of `--no-index`
>       completion: learn to complete `git rebase --onto=`
>       t4215: use helper function to check output
>       argv-array: add space after `while`
>       rev-list-options.txt: remove reference to --show-notes
>       SubmittingPatches: use generic terms for hash
>       pretty-formats.txt: use generic terms for hash
>       SubmittingPatches: remove dq from commit reference
>       completion: complete `tformat:` pretty format
>       revision: make get_revision_mark() return const pointer
>       pretty.c: inline initalize format_context
>       t4205: cover `git log --reflog -z` blindspot
>       pretty: add struct cmt_fmt_map::default_date_mode_type
>       pretty: implement 'reference' format
>       SubmittingPatches: use `--pretty=reference`
>       pretty-options.txt: --notes accepts a ref instead of treeish
>       t3206: remove spaces after redirect operators
>       t3206: disable parameter substitution in heredoc
>       t3206: s/expected/expect/
>       t3206: range-diff compares logs with commit notes
>       range-diff: output `## Notes ##` header
>       range-diff: pass through --notes to `git log`
>       format-patch: pass notes configuration to range-diff
>       t0000: test multiple local assignment
>       t: teach test_cmp_rev to accept ! for not-equals
>       t5520: improve test style
>       t5520: use sq for test case names
>       t5520: let sed open its own input
>       t5520: replace test -f with test-lib functions
>       t5520: remove spaces after redirect operator
>       t5520: use test_line_count where possible
>       t5520: replace test -{n,z} with test-lib functions
>       t5520: use test_cmp_rev where possible
>       t5520: test single-line files by git with test_cmp
>       t5520: don't put git in upstream of pipe
>       t5520: replace $(cat ...) comparison with test_cmp
>       t5520: remove redundant lines in test cases
>       t5520: replace `! git` with `test_must_fail git`
>       lib-bash.sh: move `then` onto its own line
>       apply-one-time-sed.sh: modernize style
>       t0014: remove git command upstream of pipe
>       t0090: stop losing return codes of git commands
>       t3301: stop losing return codes of git commands
>       t3600: use test_line_count() where possible
>       t3600: stop losing return codes of git commands
>       t3600: comment on inducing SIGPIPE in `git rm`
>       t4015: stop losing return codes of git commands
>       t4015: use test_write_lines()
>       t4138: stop losing return codes of git commands
>       t5317: stop losing return codes of git commands
>       t5317: use ! grep to check for no matching lines
>       t5703: simplify one-time-sed generation logic
>       t5703: stop losing return codes of git commands
>       t7501: remove spaces after redirect operators
>       t7501: stop losing return codes of git commands
>       t7700: drop redirections to /dev/null
>       t7700: remove spaces after redirect operators
>       t7700: move keywords onto their own line
>       t7700: s/test -f/test_path_is_file/
>       doc: replace MARC links with lore.kernel.org
>       RelNotes: replace Gmane with real Message-IDs
>       doc: replace LKML link with lore.kernel.org
>       t7700: consolidate code into test_no_missing_in_packs()
>       t7700: consolidate code into test_has_duplicate_object()
>       t7700: replace egrep with grep
>       t7700: make references to SHA-1 generic
>       t7700: stop losing return codes of git commands
>       t3400: demonstrate failure with format.useAutoBase
>       format-patch: fix indentation
>       t4014: use test_config()
>       format-patch: teach --no-base
>       rebase: fix format.useAutoBase breakage
>       t3206: fix incorrect test name
>       range-diff: mark pointers as const
>       range-diff: clear `other_arg` at end of function
>       notes: rename to load_display_notes()
>       notes: create init_display_notes() helper
>       notes: extract logic into set_display_notes()
>       format-patch: use --notes behavior for format.notes
>       format-patch: move git_config() before repo_init_revisions()
>       config/format.txt: clarify behavior of multiple format.notes
>       notes: break set_display_notes() into smaller functions
>       notes.h: fix typos in comment
> 
> Derrick Stolee (22):
>       test-tool: use 'read-graph' helper
>       sparse-checkout: create builtin with 'list' subcommand
>       sparse-checkout: create 'init' subcommand
>       clone: add --sparse mode
>       sparse-checkout: 'set' subcommand
>       sparse-checkout: add '--stdin' option to set subcommand
>       sparse-checkout: create 'disable' subcommand
>       sparse-checkout: add 'cone' mode
>       sparse-checkout: use hashmaps for cone patterns
>       sparse-checkout: init and set in cone mode
>       unpack-trees: hash less in cone mode
>       unpack-trees: add progress to clear_ce_flags()
>       sparse-checkout: sanitize for nested folders
>       sparse-checkout: update working directory in-process
>       sparse-checkout: use in-process update for disable subcommand
>       sparse-checkout: write using lockfile
>       sparse-checkout: cone mode should not interact with .gitignore
>       sparse-checkout: update working directory in-process for 'init'
>       sparse-checkout: check for dirty status
>       progress: create GIT_PROGRESS_DELAY
>       commit-graph: use start_delayed_progress()
>       sparse-checkout: respect core.ignoreCase in cone mode
> 
> Dimitriy Ryazantcev (1):
>       l10n: minor case fix in 'git branch' '--unset-upstream' description
> 
> Doan Tran Cong Danh (14):
>       t3301: test diagnose messages for too few/many paramters
>       notes: fix minimum number of parameters to "copy" subcommand
>       t0028: eliminate non-standard usage of printf
>       configure.ac: define ICONV_OMITS_BOM if necessary
>       t3900: demonstrate git-rebase problem with multi encoding
>       sequencer: reencode to utf-8 before arrange rebase's todo list
>       sequencer: reencode revert/cherry-pick's todo list
>       sequencer: reencode squashing commit's message
>       sequencer: reencode old merge-commit message
>       sequencer: reencode commit message for am/rebase --show-current-patch
>       sequencer: handle rebase-merges for "onto" message
>       date.c: switch to reentrant {gm,local}time_r
>       archive-zip.c: switch to reentrant localtime_r
>       mingw: use {gm,local}time_s as backend for {gm,local}time_r
> 
> Dominic Jäger (1):
>       merge-strategies: fix typo "reflected to" to "reflected in"
> 
> Ed Maste (3):
>       t4210: skip i18n tests that don't work on FreeBSD
>       userdiff: remove empty subexpression from elixir regex
>       sparse-checkout: improve OS ls compatibility
> 
> Elia Pinto (1):
>       kset.h, tar.h: add missing header guard to prevent multiple inclusion
> 
> Elijah Newren (26):
>       merge-recursive: clean up get_renamed_dir_portion()
>       merge-recursive: fix merging a subdirectory into the root directory
>       t604[236]: do not run setup in separate tests
>       Documentation: fix a bunch of typos, both old and new
>       Fix spelling errors in documentation outside of Documentation/
>       git-filter-branch.txt: correct argument name typo
>       hashmap: fix documentation misuses of -> versus .
>       name-hash.c: remove duplicate word in comment
>       t6024: modernize style
>       Fix spelling errors in code comments
>       Fix spelling errors in comments of testcases
>       Fix spelling errors in names of tests
>       Fix spelling errors in messages shown to users
>       Fix spelling errors in test commands
>       sha1dc: fix trivial comment spelling error
>       multimail: fix a few simple spelling errors
>       Fix spelling errors in no-longer-updated-from-upstream modules
>       t3011: demonstrate directory traversal failures
>       Revert "dir.c: make 'git-status --ignored' work within leading directories"
>       dir: remove stray quote character in comment
>       dir: exit before wildcard fall-through if there is no wildcard
>       dir: break part of read_directory_recursive() out for reuse
>       t3434: mark successful test as such
>       dir: fix checks on common prefix directory
>       dir: synchronize treat_leading_path() and read_directory_recursive()
>       dir: consolidate similar code in treat_directory()
> 
> Emily Shaffer (4):
>       documentation: add tutorial for object walking
>       myfirstcontrib: add 'psuh' to command-list.txt
>       myfirstcontrib: add dependency installation step
>       myfirstcontrib: hint to find gitgitgadget allower
> 
> Erik Chen (1):
>       fetch: add trace2 instrumentation
> 
> Garima Singh (2):
>       test-path-utils: offer to run a protectNTFS/protectHFS benchmark
>       tests: add a helper to stress test argument quoting
> 
> Hans Jerry Illikainen (4):
>       gpg-interface: refactor the free-and-xmemdupz pattern
>       gpg-interface: limit search for primary key fingerprint
>       gpg-interface: prefer check_signature() for GPG verification
>       grep: don't return an expression from pcre2_free()
> 
> Hariom Verma (2):
>       builtin/blame.c: constants into bit shift format
>       git-compat-util.h: drop the `PRIuMAX` and other fallback definitions
> 
> Heba Waly (22):
>       config: move documentation to config.h
>       documentation: remove empty doc files
>       diff: move doc to diff.h and diffcore.h
>       dir: move doc to dir.h
>       graph: move doc to graph.h and graph.c
>       merge: move doc to ll-merge.h
>       sha1-array: move doc to sha1-array.h
>       remote: move doc to remote.h and refspec.h
>       refs: move doc to refs.h
>       attr: move doc to attr.h
>       revision: move doc to revision.h
>       pathspec: move doc to pathspec.h
>       sigchain: move doc to sigchain.h
>       cache: move doc to cache.h
>       argv-array: move doc to argv-array.h
>       credential: move doc to credential.h
>       parse-options: add link to doc file in parse-options.h
>       run-command: move doc to run-command.h
>       trace: move doc to trace.h
>       tree-walk: move doc to tree-walk.h
>       submodule-config: move doc to submodule-config.h
>       trace2: move doc to trace2.h
> 
> James Coglan (13):
>       graph: automatically track display width of graph lines
>       graph: handle line padding in `graph_next_line()`
>       graph: reuse `find_new_column_by_commit()`
>       graph: reduce duplication in `graph_insert_into_new_columns()`
>       graph: remove `mapping_idx` and `graph_update_width()`
>       graph: extract logic for moving to GRAPH_PRE_COMMIT state
>       graph: example of graph output that can be simplified
>       graph: tidy up display of left-skewed merges
>       graph: commit and post-merge lines for left-skewed merges
>       graph: rename `new_mapping` to `old_mapping`
>       graph: smooth appearance of collapsing edges on commit lines
>       graph: flatten edges that fuse with their right neighbor
>       graph: fix coloring of octopus dashes
> 
> James Shubin (1):
>       completion: tab-complete "git svn --recursive"
> 
> Jean-Noël Avila (2):
>       doc: remove non pure ASCII characters
>       doc: indent multi-line items in list
> 
> Jeff Hostetler (1):
>       trace2: add region in clear_ce_flags
> 
> Jeff King (44):
>       parse_commit_buffer(): treat lookup_commit() failure as parse error
>       parse_commit_buffer(): treat lookup_tree() failure as parse error
>       parse_tag_buffer(): treat NULL tag pointer as parse error
>       commit, tag: don't set parsed bit for parse failures
>       fsck: stop checking commit->tree value
>       fsck: stop checking commit->parent counts
>       fsck: stop checking tag->tagged
>       fsck: require an actual buffer for non-blobs
>       fsck: unify object-name code
>       fsck_describe_object(): build on our get_object_name() primitive
>       fsck: use oids rather than objects for object_name API
>       fsck: don't require object structs for display functions
>       fsck: only provide oid/type in fsck_error callback
>       fsck: only require an oid for skiplist functions
>       fsck: don't require an object struct for report()
>       fsck: accept an oid instead of a "struct blob" for fsck_blob()
>       fsck: drop blob struct from fsck_finish()
>       fsck: don't require an object struct for fsck_ident()
>       fsck: don't require an object struct in verify_headers()
>       fsck: rename vague "oid" local variables
>       fsck: accept an oid instead of a "struct tag" for fsck_tag()
>       fsck: accept an oid instead of a "struct commit" for fsck_commit()
>       fsck: accept an oid instead of a "struct tree" for fsck_tree()
>       hex: drop sha1_to_hex_r()
>       pack-objects: avoid pointless oe_map_new_pack() calls
>       hex: drop sha1_to_hex()
>       send-pack: check remote ref status on pack-objects failure
>       t9502: pass along all arguments in xss helper
>       t/gitweb-lib.sh: drop confusing quotes
>       t/gitweb-lib.sh: set $REQUEST_URI
>       gitweb: escape URLs generated by href()
>       rev-parse: make --show-toplevel without a worktree an error
>       perf-lib: use a single filename for all measurement types
>       t/perf: don't depend on Git.pm
>       send-pack: use OBJECT_INFO_QUICK to check negative objects
>       doc: recommend lore.kernel.org over public-inbox.org
>       doc: replace public-inbox links with lore.kernel.org
>       t9300: drop some useless uses of cat
>       t9300: create marks files for double-import-marks test
>       fast-import: tighten parsing of boolean command line options
>       fast-import: stop creating leading directories for import-marks
>       fast-import: delay creating leading directories for export-marks
>       fast-import: disallow "feature export-marks" by default
>       fast-import: disallow "feature import-marks" by default
> 
> Johannes Schindelin (93):
>       t1400: wrap setup code in test case
>       git_path(): handle `.lock` files correctly
>       vreportf(): avoid relying on stdio buffering
>       update-index: optionally leave skip-worktree entries alone
>       stash: handle staged changes in skip-worktree files correctly
>       fetch: add the command-line option `--write-commit-graph`
>       fetch: avoid locking issues between fetch.jobs/fetch.writeCommitGraph
>       remote-curl: unbreak http.extraHeader with custom allocators
>       Start to implement a built-in version of `git add --interactive`
>       built-in add -i: implement the main loop
>       built-in add -i: show unique prefixes of the commands
>       built-in add -i: support `?` (prompt help)
>       rebase-merges: move labels' whitespace mangling into `label_oid()`
>       git svn: stop using `rebase --preserve-merges`
>       mingw: demonstrate that all file handles are inherited by child processes
>       mingw: work around incorrect standard handles
>       mingw: spawned processes need to inherit only standard handles
>       mingw: restrict file handle inheritance only on Windows 7 and later
>       mingw: do set `errno` correctly when trying to restrict handle inheritance
>       add-interactive: make sure to release `rev.prune_data`
>       built-in add -i: allow filtering the modified files list
>       built-in add -i: prepare for multi-selection commands
>       built-in add -i: implement the `update` command
>       built-in add -i: re-implement `revert` in C
>       built-in add -i: re-implement `add-untracked` in C
>       built-in add -i: implement the `patch` command
>       built-in add -i: re-implement the `diff` command
>       built-in add -i: offer the `quit` command
>       pkt-line: fix a typo
>       mingw: forbid translating ERROR_SUCCESS to an errno value
>       clone --recurse-submodules: prevent name squatting on Windows
>       mingw: disallow backslash characters in tree objects' file names
>       path.c: document the purpose of `is_ntfs_dotgit()`
>       is_ntfs_dotgit(): only verify the leading segment
>       path: safeguard `.git` against NTFS Alternate Streams Accesses
>       is_ntfs_dotgit(): speed it up
>       mingw: fix quoting of arguments
>       path: also guard `.gitmodules` against NTFS Alternate Data Streams
>       protect_ntfs: turn on NTFS protection by default
>       Disallow dubiously-nested submodule git directories
>       quote-stress-test: accept arguments to test via the command-line
>       t6130/t9350: prepare for stringent Win32 path validation
>       quote-stress-test: allow skipping some trials
>       unpack-trees: let merged_entry() pass through do_add_entry()'s errors
>       mingw: refuse to access paths with illegal characters
>       quote-stress-test: offer to test quoting arguments for MSYS2 sh
>       mingw: refuse to access paths with trailing spaces or periods
>       mingw: handle `subst`-ed "DOS drives"
>       Git 2.14.6
>       Git 2.15.4
>       test-drop-caches: use `has_dos_drive_prefix()`
>       Git 2.16.6
>       Git 2.17.3
>       Git 2.18.2
>       Git 2.19.3
>       t7415: adjust test for dubiously-nested submodule gitdirs for v2.20.x
>       Git 2.20.2
>       mingw: detect when MSYS2's sh is to be spawned more robustly
>       mingw: use MSYS2 quoting even when spawning shell scripts
>       mingw: fix quoting of empty arguments for `sh`
>       t7415: drop v2.20.x-specific work-around
>       mingw: sh arguments need quoting in more circumstances
>       Git 2.21.1
>       Git 2.22.2
>       Git 2.23.1
>       Git 2.24.1
>       t3701: add a test for advanced split-hunk editing
>       t3701: avoid depending on the TTY prerequisite
>       t3701: add a test for the different `add -p` prompts
>       t3701: verify the shown messages when nothing can be added
>       t3701: verify that the diff.algorithm config setting is handled
>       git add -p: use non-zero exit code when the diff generation failed
>       apply --allow-overlap: fix a corner case
>       t3404: fix indentation
>       built-in add -i: start implementing the `patch` functionality in C
>       built-in add -i: wire up the new C code for the `patch` command
>       built-in add -p: show colored hunks by default
>       built-in add -p: adjust hunk headers as needed
>       built-in add -p: color the prompt and the help text
>       built-in add -p: offer a helpful error message when hunk navigation failed
>       built-in add -p: support multi-file diffs
>       built-in add -p: handle deleted empty files
>       built-in app -p: allow selecting a mode change as a "hunk"
>       built-in add -p: show different prompts for mode changes and deletions
>       built-in add -p: implement the hunk splitting feature
>       built-in add -p: coalesce hunks after splitting them
>       strbuf: add a helper function to call the editor "on an strbuf"
>       built-in add -p: implement hunk editing
>       built-in add -p: implement the 'g' ("goto") command
>       built-in add -p: implement the '/' ("search regex") command
>       built-in add -p: implement the 'q' ("quit") command
>       built-in add -p: only show the applicable parts of the help text
>       built-in add -p: show helpful hint when nothing can be staged
> 
> Jonathan Nieder (3):
>       submodule: reject submodule.update = !command in .gitmodules
>       fsck: reject submodule.update = !command in .gitmodules
>       submodule: defend against submodule.update = !command in .gitmodules
> 
> Jonathan Tan (6):
>       fetch-pack: write fetched refs to .promisor
>       fetch: remove fetch_if_missing=0
>       clone: remove fetch_if_missing=0
>       promisor-remote: remove fetch_if_missing=0
>       Doc: explain submodule.alternateErrorStrategy
>       submodule--helper: advise on fatal alternate error
> 
> Josh Holland (1):
>       userdiff: support Python async functions
> 
> Junio C Hamano (13):
>       doc: am --show-current-patch gives an entire e-mail message
>       The first batch post 2.24 cycle
>       fsmonitor: do not compare bitmap size with size of split index
>       ci(osx): update homebrew-cask repository with less noise
>       rebase -i: finishing touches to --reset-author-date
>       The second batch
>       The third batch
>       The fourth batch
>       The fifth batch
>       Makefile: drop GEN_HDRS
>       The sixth batch
>       dir.c: use st_add3() for allocation size
>       Git 2.25-rc0
> 
> Kevin Willford (1):
>       fsmonitor: fix watchman integration
> 
> Manish Goregaokar (2):
>       doc: document 'git submodule status --cached'
>       submodule: fix 'submodule status' when called from a subdirectory
> 
> Martin Ågren (1):
>       t7004: check existence of correct tag
> 
> Matthew Rogers (1):
>       rebase -r: let `label` generate safer labels
> 
> Mihail Atanassov (1):
>       Documentation/git-bisect.txt: add --no-ff to merge command
> 
> Mike Hommey (2):
>       revision: clear the topo-walk flags in reset_revision_walk
>       revision: free topo_walk_info before creating a new one in init_topo_walk
> 
> Miriam Rubio (1):
>       clone: rename static function `dir_exists()`.
> 
> Nathan Stocks (1):
>       t: fix typo in test descriptions
> 
> Naveen Nathan (1):
>       doc: improve readability of --rebase-merges in git-rebase
> 
> Nika Layzell (1):
>       reset: parse rev as tree-ish in patch mode
> 
> Philip Oakley (1):
>       Doc: Bundle file usage
> 
> Philippe Blain (4):
>       help: add gitsubmodules to the list of guides
>       worktree: teach "add" to ignore submodule.recurse config
>       doc: mention that 'git submodule update' fetches missing commits
>       gitmodules: link to gitsubmodules guide
> 
> Phillip Wood (7):
>       t3404: remove unnecessary subshell
>       t3404: set $EDITOR in subshell
>       t3404: remove uneeded calls to set_fake_editor
>       sequencer.h fix placement of #endif
>       move run_commit_hook() to libgit and use it there
>       sequencer: run post-commit hook
>       sequencer: fix empty commit check when amending
> 
> Prarit Bhargava (3):
>       t6006: use test-lib.sh definitions
>       t4203: use test-lib.sh definitions
>       pretty: add "%aL" etc. to show local-part of email addresses
> 
> Pratyush Yadav (1):
>       git-shortlog.txt: include commit limiting options
> 
> Ralf Thielow (1):
>       fetch.c: fix typo in a warning message
> 
> René Scharfe (32):
>       trace2: add dots directly to strbuf in perf_fmt_prepare()
>       utf8: use skip_iprefix() in same_utf_encoding()
>       convert: use skip_iprefix() in validate_encoding()
>       mingw: use COPY_ARRAY for copying array
>       parse-options: avoid arithmetic on pointer that's potentially NULL
>       pretty: provide short date format
>       fetch: use skip_prefix() instead of starts_with()
>       fmt-merge-msg: use skip_prefix() instead of starts_with()
>       shell: use skip_prefix() instead of starts_with()
>       push: use skip_prefix() instead of starts_with()
>       name-rev: use skip_prefix() instead of starts_with()
>       run-command: use prepare_git_cmd() in prepare_cmd()
>       t1512: use test_line_count
>       t1410: use test_line_count
>       t1400: use test_must_be_empty
>       test: use test_must_be_empty F instead of test -z $(cat F)
>       test: use test_must_be_empty F instead of test_cmp empty F
>       t9300: don't create unused file
>       t7811: don't create unused file
>       xdiff: unignore changes in function context
>       name-rev: use strbuf_strip_suffix() in get_rev_name()
>       commit: use strbuf_add() to add a length-limited string
>       patch-id: use oid_to_hex() to print multiple object IDs
>       archive-zip: use enum for compression method
>       t4256: don't create unused file
>       t7004: don't create unused file
>       refs: pass NULL to refs_read_ref_full() because object ID is not needed
>       remote: pass NULL to read_ref_full() because object ID is not needed
>       t3501: don't create unused file
>       t5580: don't create unused file
>       t6030: don't create unused file
>       t4015: improve coverage of function context test
> 
> Robin H. Johnson (3):
>       bundle: framework for options before bundle file
>       bundle-create: progress output control
>       bundle-verify: add --quiet
> 
> Rohit Ashiwal (6):
>       rebase -i: add --ignore-whitespace flag
>       sequencer: allow callers of read_author_script() to ignore fields
>       rebase -i: support --committer-date-is-author-date
>       sequencer: rename amend_author to author_to_rename
>       rebase -i: support --ignore-date
>       rebase: add --reset-author-date
> 
> Ruud van Asseldonk (1):
>       t5150: skip request-pull test if Perl is disabled
> 
> SZEDER Gábor (29):
>       Documentation: mention more worktree-specific exceptions
>       path.c: clarify trie_find()'s in-code comment
>       path.c: mark 'logs/HEAD' in 'common_list' as file
>       path.c: clarify two field names in 'struct common_dir'
>       path.c: don't call the match function without value in trie_find()
>       builtin/commit-graph.c: remove subcommand-less usage string
>       builtin/blame.c: remove '--indent-heuristic' from usage string
>       test-lib: don't check prereqs of test cases that won't be run anyway
>       t6120-describe: correct test repo history graph in comment
>       builtin/unpack-objects.c: show throughput progress
>       tests: add 'test_bool_env' to catch non-bool GIT_TEST_* values
>       t5608-clone-2gb.sh: turn GIT_TEST_CLONE_2GB into a bool
>       sequencer: don't re-read todo for revert and cherry-pick
>       test-lib-functions: suppress a 'git rev-parse' error in 'test_commit_bulk'
>       ci: build Git with GCC 9 in the 'osx-gcc' build job
>       t9300-fast-import: store the PID in a variable instead of pidfile
>       t9300-fast-import: don't hang if background fast-import exits too early
>       t6120-describe: modernize the 'check_describe' helper
>       name-rev: avoid unnecessary cast in name_ref()
>       name-rev: use sizeof(*ptr) instead of sizeof(type) in allocation
>       t6120: add a test to cover inner conditions in 'git name-rev's name_rev()
>       name-rev: extract creating/updating a 'struct name_rev' into a helper
>       name-rev: pull out deref handling from the recursion
>       name-rev: restructure parsing commits and applying date cutoff
>       name-rev: restructure creating/updating 'struct rev_name' instances
>       name-rev: drop name_rev()'s 'generation' and 'distance' parameters
>       name-rev: use 'name->tip_name' instead of 'tip_name'
>       name-rev: eliminate recursion in name_rev()
>       name-rev: cleanup name_ref()
> 
> Slavica Đukić (3):
>       built-in add -i: color the header in the `status` command
>       built-in add -i: use color in the main loop
>       built-in add -i: implement the `help` command
> 
> Tanushree Tumane (2):
>       bisect--helper: avoid use-after-free
>       bisect--helper: convert `*_warning` char pointers to char arrays.
> 
> Thomas Gummerer (1):
>       stash: make sure we have a valid index before writing it
> 
> Todd Zullinger (1):
>       t7812: expect failure for grep -i with invalid UTF-8 data
> 
> Utsav Shah (1):
>       unpack-trees: skip stat on fsmonitor-valid files
> 
> William Baker (6):
>       midx: add MIDX_PROGRESS flag
>       midx: add progress to write_midx_file
>       midx: add progress to expire_midx_packs
>       midx: honor the MIDX_PROGRESS flag in verify_midx_file
>       midx: honor the MIDX_PROGRESS flag in midx_repack
>       multi-pack-index: add [--[no-]progress] option.
> 
> brian m. carlson (16):
>       t/oid-info: allow looking up hash algorithm name
>       t/oid-info: add empty tree and empty blob values
>       rev-parse: add a --show-object-format option
>       t1305: avoid comparing extensions
>       t3429: remove SHA1 annotation
>       t4010: abstract away SHA-1-specific constants
>       t4011: abstract away SHA-1-specific constants
>       t4015: abstract away SHA-1-specific constants
>       t4027: make hash-size independent
>       t4034: abstract away SHA-1-specific constants
>       t4038: abstract away SHA-1 specific constants
>       t4039: abstract away SHA-1-specific constants
>       t4044: update test to work with SHA-256
>       t4045: make hash-size independent
>       t4048: abstract away SHA-1-specific constants
>       t9001: avoid including non-trailing NUL bytes in variables
> 
> r.burenkov (1):
>       git-p4: honor lfs.storage configuration variable
> 
> ryenus (1):
>       fix-typo: consecutive-word duplications
> 
> Łukasz Niemier (1):
>       userdiff: add Elixir to supported userdiff languages
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ