mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Bhaskar Chowdhury <>
To: Junio C Hamano <>
Cc:, Linux Kernel <>,
Subject: Re: [ANNOUNCE] Git v2.23.0
Date: Sat, 17 Aug 2019 03:00:59 +0530	[thread overview]
Message-ID: <20190816213055.GA28512@debian> (raw)
In-Reply-To: <>

[-- Attachment #1: Type: text/plain, Size: 46719 bytes --]

Thanks, a bunch Junio! :)

On 14:00 Fri 16 Aug 2019, Junio C Hamano wrote:
>The latest feature release Git v2.23.0 is now available at the
>usual places.  It is comprised of 505 non-merge commits since
>v2.22.0, contributed by 77 people, 26 of which are new faces.
>The tarballs are found at:
>The following public repositories all have a copy of the 'v2.23.0'
>tag and the 'master' branch that the tag points at:
>  url =
>  url = git://
>  url =
>New contributors whose contributions weren't in v2.22.0 are as follows.
>Welcome to the Git development community!
>  Ariadne Conill, Barret Rhoden, Ben Avison, Carmine Zaccagnino,
>  Daniel Ferreira, Doug Ilijev, Dr. Adam Nielsen, Jakub Wilk,
>  John Lin, Mark Rushakoff, Matheus Tavares, Mazo, Andrey,
>  Michael Osipov, Michael Platings, Miguel Ojeda, Mike Mueller,
>  Morian Sonnet, Philipp Weißmann, Quentin Nerden, Robert Morgan,
>  Simon Williams, Steven Roberts, Tigran Mkrtchyan, Varun Naik,
>  Vishal Verma, and Xin Li.
>Returning contributors who helped this release are as follows.
>Thanks for your continued support.
>  Ævar Arnfjörð Bjarmason, Alessandro Menti, Alexander
>  Shopov, Beat Bolli, Boxuan Li, brian m. carlson, Carlo Marcelo
>  Arenas Belón, Cesar Eduardo Barros, Chris Mayo, Christian
>  Couder, Christopher Díaz Riveros, Denton Liu, Derrick Stolee,
>  Dimitriy Ryazantcev, Edmundo Carmona Antoranz, Elijah Newren,
>  Emily Shaffer, Eric Wong, Felipe Contreras, Jean-Noël Avila,
>  Jeff Hostetler, Jeff King, Jiang Xin, Johannes Schindelin,
>  Johannes Sixt, Jonathan Nieder, Jonathan Tan, Jordi Mas, Josh
>  Steadmon, Junio C Hamano, Karsten Blees, Marc-André Lureau,
>  Martin Ågren, Matthew DeVore, Matthias Rüster, Mike Hommey,
>  Nguyễn Thái Ngọc Duy, Nickolai Belakovski, Paolo Bonzini,
>  Peter Krefting, Philip Oakley, Phillip Wood, Ramsay Jones, René
>  Scharfe, Rohit Ashiwal, Stephen Boyd, SZEDER Gábor, Taylor Blau,
>  Thomas Gummerer, Trần Ngọc Quân, and William Chargin.
>Git 2.23 Release Notes
>Updates since v2.22
>Backward compatibility note
> * The "--base" option of "format-patch" computed the patch-ids for
>   prerequisite patches in an unstable way, which has been updated to
>   compute in a way that is compatible with "git patch-id --stable".
> * The "git log" command by default behaves as if the --mailmap option
>   was given.
>UI, Workflows & Features
> * The "git fast-export/import" pair has been taught to handle commits
>   with log messages in encoding other than UTF-8 better.
> * In recent versions of Git, per-worktree refs are exposed in
>   refs/worktrees/<wtname>/ hierarchy, which means that worktree names
>   must be a valid refname component.  The code now sanitizes the names
>   given to worktrees, to make sure these refs are well-formed.
> * "git merge" learned "--quit" option that cleans up the in-progress
>   merge while leaving the working tree and the index still in a mess.
> * "git format-patch" learns a configuration to set the default for
>   its --notes=<ref> option.
> * The code to show args with potential typo that cannot be
>   interpreted as a commit-ish has been improved.
> * "git clone --recurse-submodules" learned to set up the submodules
>   to ignore commit object names recorded in the superproject gitlink
>   and instead use the commits that happen to be at the tip of the
>   remote-tracking branches from the get-go, by passing the new
>   "--remote-submodules" option.
> * The pattern "git diff/grep" use to extract funcname and words
>   boundary for Matlab has been extend to cover Octave, which is more
>   or less equivalent.
> * "git help git" was hard to discover (well, at least for some
>   people).
> * The pattern "git diff/grep" use to extract funcname and words
>   boundary for Rust has been added.
> * "git status" can be told a non-standard default value for the
>   "--[no-]ahead-behind" option with a new configuration variable
>   status.aheadBehind.
> * "git fetch" and "git pull" reports when a fetch results in
>   non-fast-forward updates to let the user notice unusual situation.
>   The commands learned "--no-show-forced-updates" option to disable
>   this safety feature.
> * Two new commands "git switch" and "git restore" are introduced to
>   split "checking out a branch to work on advancing its history" and
>   "checking out paths out of the index and/or a tree-ish to work on
>   advancing the current history" out of the single "git checkout"
>   command.
> * "git branch --list" learned to always output the detached HEAD as
>   the first item (when the HEAD is detached, of course), regardless
>   of the locale.
> * The conditional inclusion mechanism learned to base the choice on
>   the branch the HEAD currently is on.
> * "git rev-list --objects" learned the "--no-object-names" option to
>   squelch the path to the object that is used as a grouping hint for
>   pack-objects.
> * A new tag.gpgSign configuration variable turns "git tag -a" into
>   "git tag -s".
> * "git multi-pack-index" learned expire and repack subcommands.
> * "git blame" learned to "ignore" commits in the history, whose
>   effects (as well as their presence) get ignored.
> * "git cherry-pick/revert" learned a new "--skip" action.
> * The tips of refs from the alternate object store can be used as
>   starting point for reachability computation now.
> * Extra blank lines in "git status" output have been reduced.
> * The commits in a repository can be described by multiple
>   commit-graph files now, which allows the commit-graph files to be
>   updated incrementally.
> * "git range-diff" output has been tweaked for easier identification
>   of which part of what file the patch shown is about.
>Performance, Internal Implementation, Development Support etc.
> * Update supporting parts of "git rebase" to remove code that should
>   no longer be used.
> * Developer support to emulate unsatisfied prerequisites in tests to
>   ensure that the remainder of the tests still succeeds when tests
>   with prerequisites are skipped.
> * "git update-server-info" learned not to rewrite the file with the
>   same contents.
> * The way of specifying the path to find dynamic libraries at runtime
>   has been simplified.  The old default to pass -R/path/to/dir has been
>   replaced with the new default to pass -Wl,-rpath,/path/to/dir,
>   which is the more recent GCC uses.  Those who need to build with an
>   old GCC can still use "CC_LD_DYNPATH=-R"
> * Prepare use of reachability index in topological walker that works
>   on a range (A..B).
> * A new tutorial targeting specifically aspiring git-core
>   developers has been added.
> * Auto-detect how to tell HP-UX aCC where to use dynamically linked
>   libraries from at runtime.
> * "git mergetool" and its tests now spawn fewer subprocesses.
> * Dev support update to help tracing out tests.
> * Support to build with MSVC has been updated.
> * "git fetch" that grabs from a group of remotes learned to run the
>   auto-gc only once at the very end.
> * A handful of Windows build patches have been upstreamed.
> * The code to read state files used by the sequencer machinery for
>   "git status" has been made more robust against a corrupt or stale
>   state files.
> * "git for-each-ref" with multiple patterns have been optimized.
> * The tree-walk API learned to pass an in-core repository
>   instance throughout more codepaths.
> * When one step in multi step cherry-pick or revert is reset or
>   committed, the command line prompt script failed to notice the
>   current status, which has been improved.
> * Many GIT_TEST_* environment variables control various aspects of
>   how our tests are run, but a few followed "non-empty is true, empty
>   or unset is false" while others followed the usual "there are a few
>   ways to spell true, like yes, on, etc., and also ways to spell
>   false, like no, off, etc." convention.
> * Adjust the dir-iterator API and apply it to the local clone
>   optimization codepath.
> * We have been trying out a few language features outside c89; the
>   coding guidelines document did not talk about them and instead had
>   a blanket ban against them.
> * A test helper has been introduced to optimize preparation of test
>   repositories with many simple commits, and a handful of test
>   scripts have been updated to use it.
>Fixes since v2.22
> * A relative pathname given to "git init --template=<path> <repo>"
>   ought to be relative to the directory "git init" gets invoked in,
>   but it instead was made relative to the repository, which has been
>   corrected.
> * "git worktree add" used to fail when another worktree connected to
>   the same repository was corrupt, which has been corrected.
> * The ownership rule for the file descriptor to fast-import remote
>   backend was mixed up, leading to an unrelated file descriptor getting
>   closed, which has been fixed.
> * A "merge -c" instruction during "git rebase --rebase-merges" should
>   give the user a chance to edit the log message, even when there is
>   otherwise no need to create a new merge and replace the existing
>   one (i.e. fast-forward instead), but did not.  Which has been
>   corrected.
> * Code cleanup and futureproof.
> * More parameter validation.
> * "git update-server-info" used to leave stale packfiles in its
>   output, which has been corrected.
> * The server side support for "git fetch" used to show incorrect
>   value for the HEAD symbolic ref when the namespace feature is in
>   use, which has been corrected.
> * "git am -i --resolved" segfaulted after trying to see a commit as
>   if it were a tree, which has been corrected.
> * "git bundle verify" needs to see if prerequisite objects exist in
>   the receiving repository, but the command did not check if we are
>   in a repository upfront, which has been corrected.
> * "git merge --squash" is designed to update the working tree and the
>   index without creating the commit, and this cannot be countermanded
>   by adding the "--commit" option; the command now refuses to work
>   when both options are given.
> * The data collected by fsmonitor was not properly written back to
>   the on-disk index file, breaking t7519 tests occasionally, which
>   has been corrected.
> * Update to Unicode 12.1 width table.
> * The command line to invoke a "git cat-file" command from inside
>   "git p4" was not properly quoted to protect a caret and running a
>   broken command on Windows, which has been corrected.
> * "git request-pull" learned to warn when the ref we ask them to pull
>   from in the local repository and in the published repository are
>   different.
> * When creating a partial clone, the object filtering criteria is
>   recorded for the origin of the clone, but this incorrectly used a
>   hardcoded name "origin" to name that remote; it has been corrected
>   to honor the "--origin <name>" option.
> * "git fetch" into a lazy clone forgot to fetch base objects that are
>   necessary to complete delta in a thin packfile, which has been
>   corrected.
> * The filter_data used in the list-objects-filter (which manages a
>   lazily sparse clone repository) did not use the dynamic array API
>   correctly---'nr' is supposed to point at one past the last element
>   of the array in use.  This has been corrected.
> * The description about slashes in gitignore patterns (used to
>   indicate things like "anchored to this level only" and "only
>   matches directories") has been revamped.
> * The URL decoding code has been updated to avoid going past the end
>   of the string while parsing %-<hex>-<hex> sequence.
> * The list of for-each like macros used by clang-format has been
>   updated.
> * "git branch --list" learned to show branches that are checked out
>   in other worktrees connected to the same repository prefixed with
>   '+', similar to the way the currently checked out branch is shown
>   with '*' in front.
>   (merge 6e9381469e nb/branch-show-other-worktrees-head later to maint).
> * Code restructuring during 2.20 period broke fetching tags via
>   "import" based transports.
> * The commit-graph file is now part of the "files that the runtime
>   may keep open file descriptors on, all of which would need to be
>   closed when done with the object store", and the file descriptor to
>   an existing commit-graph file now is closed before "gc" finalizes a
>   new instance to replace it.
> * "git checkout -p" needs to selectively apply a patch in reverse,
>   which did not work well.
> * Code clean-up to avoid signed integer wraparounds during binary search.
> * "git interpret-trailers" always treated '#' as the comment
>   character, regardless of core.commentChar setting, which has been
>   corrected.
> * "git stash show 23" used to work, but no more after getting
>   rewritten in C; this regression has been corrected.
> * "git rebase --abort" used to leave refs/rewritten/ when concluding
>   "git rebase -r", which has been corrected.
> * An incorrect list of options was cached after command line
>   completion failed (e.g. trying to complete a command that requires
>   a repository outside one), which has been corrected.
> * The code to parse scaled numbers out of configuration files has
>   been made more robust and also easier to follow.
> * The codepath to compute delta islands used to spew progress output
>   without giving the callers any way to squelch it, which has been
>   fixed.
> * Protocol capabilities that go over wire should never be translated,
>   but it was incorrectly marked for translation, which has been
>   corrected.  The output of protocol capabilities for debugging has
>   been tweaked a bit.
> * Use "Erase in Line" CSI sequence that is already used in the editor
>   support to clear cruft in the progress output.
> * "git submodule foreach" did not protect command line options passed
>   to the command to be run in each submodule correctly, when the
>   "--recursive" option was in use.
> * The configuration variable rebase.rescheduleFailedExec should be
>   effective only while running an interactive rebase and should not
>   affect anything when running a non-interactive one, which was not
>   the case.  This has been corrected.
> * The "git clone" documentation refers to command line options in its
>   description in the short form; they have been replaced with long
>   forms to make them more recognisable.
> * Generation of pack bitmaps are now disabled when .keep files exist,
>   as these are mutually exclusive features.
>   (merge 7328482253 ew/repack-with-bitmaps-by-default later to maint).
> * "git rm" to resolve a conflicted path leaked an internal message
>   "needs merge" before actually removing the path, which was
>   confusing.  This has been corrected.
> * "git stash --keep-index" did not work correctly on paths that have
>   been removed, which has been fixed.
>   (merge b932f6a5e8 tg/stash-keep-index-with-removed-paths later to maint).
> * Window 7 update ;-)
> * A codepath that reads from GPG for signed object verification read
>   past the end of allocated buffer, which has been fixed.
> * "git clean" silently skipped a path when it cannot lstat() it; now
>   it gives a warning.
> * "git push --atomic" that goes over the transport-helper (namely,
>   the smart http transport) failed to prevent refs to be pushed when
>   it can locally tell that one of the ref update will fail without
>   having to consult the other end, which has been corrected.
> * The internal diff machinery can be made to read out of bounds while
>   looking for --function-context line in a corner case, which has been
>   corrected.
>   (merge b777f3fd61 jk/xdiff-clamp-funcname-context-index later to maint).
> * Other code cleanup, docfix, build fix, etc.
>   (merge fbec05c210 cc/test-oidmap later to maint).
>   (merge 7a06fb038c jk/no-system-includes-in-dot-c later to maint).
>   (merge 81ed2b405c cb/xdiff-no-system-includes-in-dot-c later to maint).
>   (merge d61e6ce1dd sg/fsck-config-in-doc later to maint).
>Changes since v2.22.0 are as follows:
>Alessandro Menti (3):
>      l10n: it.po: update the Italian translation
>      l10n: it.po: update the Italian translation for v2.23.0
>      l10n: it.po: update the Italian localization for v2.23.0 round 2
>Alexander Shopov (1):
>      l10n: bg.po: Updated Bulgarian translation (4674t)
>Ariadne Conill (3):
>      log: add warning for unspecified log.mailmap setting
>      documentation: mention --no-use-mailmap and log.mailmap false setting
>      tests: defang pager tests by explicitly disabling the log.mailmap warning
>Barret Rhoden (8):
>      fsck: rename and touch up init_skiplist()
>      Move oidset_parse_file() to oidset.c
>      blame: use a helper function in blame_chunk()
>      blame: add the ability to ignore commits and their changes
>      blame: add config options for the output of ignored or unblamable lines
>      blame: optionally track line fingerprints during fill_blame_origin()
>      blame: use the fingerprint heuristic to match ignored lines
>      blame: add a test to cover blame_coalesce()
>Beat Bolli (2):
>      unicode: update the width tables to Unicode 12.1
>      grep: print the pcre2_jit_on value
>Ben Avison (1):
>      clone: add `--remote-submodules` flag
>Boxuan Li (2):
>      userdiff: add Octave
>      userdiff: fix grammar and style issues
>Carlo Marcelo Arenas Belón (6):
>      fsmonitor: avoid signed integer overflow / infinite loop
>      wrapper: avoid undefined behaviour in macOS
>      trace2: correct typo in technical documentation
>      xdiff: drop system includes in xutils.c
>      xdiff: remove duplicate headers from xhistogram.c
>      xdiff: remove duplicate headers from xpatience.c
>Carmine Zaccagnino (1):
>      l10n: it.po: remove an extra space
>Cesar Eduardo Barros (1):
>      mingw: embed a manifest to trick UAC into Doing The Right Thing
>Chris Mayo (1):
>      send-email: update documentation of required Perl modules
>Christian Couder (7):
>      t/helper: add test-oidmap.c
>      t: add
>      oidmap: use sha1hash() instead of static hash() function
>      test-hashmap: remove 'hash' command
>      doc: improve usage string in MyFirstContribution
>      test-oidmap: remove 'add' subcommand
>      t0016: add 'remove' subcommand test
>Christopher Díaz Riveros (1):
>      l10n: es: 2.23.0 round 2
>Daniel Ferreira (1):
>      dir-iterator: add tests for dir-iterator API
>Denton Liu (5):
>      git-format-patch.txt: document --no-notes option
>      format-patch: teach format.notes config option
>      config: learn the "onbranch:" includeIf condition
>      config/alias.txt: change " and ' to `
>      config/alias.txt: document alias accepting non-command first word
>Derrick Stolee (51):
>      commit-graph: fix the_repository reference
>      revision: use generation for A..B --topo-order queries
>      revision: keep topo-walk free of unintersting commits
>      sha1-file: split OBJECT_INFO_FOR_PREFETCH
>      repack: refactor pack deletion for future use
>      Docs: rearrange subcommands for multi-pack-index
>      multi-pack-index: prepare for 'expire' subcommand
>      midx: simplify computation of pack name lengths
>      midx: refactor permutation logic and pack sorting
>      multi-pack-index: implement 'expire' subcommand
>      multi-pack-index: prepare 'repack' subcommand
>      midx: implement midx_repack()
>      multi-pack-index: test expire while adding packs
>      midx: add test that 'expire' respects .keep files
> test batch size zero
>      commit-graph: return with errors during write
>      commit-graph: collapse parameters into flags
>      commit-graph: remove Future Work section
>      commit-graph: create write_commit_graph_context
>      commit-graph: extract fill_oids_from_packs()
>      commit-graph: extract fill_oids_from_commit_hex()
>      commit-graph: extract fill_oids_from_all_packs()
>      commit-graph: extract count_distinct_commits()
>      commit-graph: extract copy_oids_to_commits()
>      commit-graph: extract write_commit_graph_file()
>      commit-graph: use raw_object_store when closing
>      packfile: close commit-graph in close_all_packs
>      packfile: rename close_all_packs to close_object_store
>      commit-graph: document commit-graph chains
>      commit-graph: prepare for commit-graph chains
>      commit-graph: rename commit_compare to oid_compare
>      commit-graph: load commit-graph chains
>      commit-graph: add base graphs chunk
>      commit-graph: rearrange chunk count logic
>      commit-graph: write commit-graph chains
>      commit-graph: add --split option to builtin
>      commit-graph: merge commit-graph chains
>      commit-graph: allow cross-alternate chains
>      commit-graph: expire commit-graph files
>      commit-graph: create options for split files
>      commit-graph: verify chains with --shallow mode
>      commit-graph: clean up chains after flattened write
>      commit-graph: test octopus merges with --split
>      commit-graph: test --split across alternate without --split
>      commit-graph: normalize commit-graph filenames
>      commit-graph: test verify across alternates
>      fetch: add --[no-]show-forced-updates argument
>      fetch: warn about forced updates in branch listing
>      pull: add --[no-]show-forced-updates passthrough
>      t5319: use 'test-tool path-utils' instead of 'ls -l'
>      commit-graph: fix bug around octopus merges
>Dimitriy Ryazantcev (2):
>      l10n: ru.po: update Russian translation
>      l10n: localizable upload progress messages
>Doug Ilijev (1):
>      README: fix rendering of text in angle brackets
>Dr. Adam Nielsen (1):
>      gitignore.txt: make slash-rules more readable
>Edmundo Carmona Antoranz (1):
>      builtin/merge.c - cleanup of code in for-cycle that tests strategies
>Elijah Newren (6):
>      t9350: fix encoding test to actually test reencoding
>      fast-import: support 'encoding' commit header
>      fast-export: avoid stripping encoding header if we cannot reencode
>      fast-export: differentiate between explicitly UTF-8 and implicitly UTF-8
>      fast-export: do automatic reencoding of commit messages only if requested
>      merge-recursive: avoid directory rename detection in recursive case
>Emily Shaffer (7):
>      documentation: add tutorial for first contribution
>      documentation: add anchors to MyFirstContribution
>      grep: fail if call could output and name is null
>      doc: hint about GIT_DEBUGGER in CodingGuidelines
>      doc: add some nit fixes to MyFirstContribution
>      rev-list: teach --no-object-names to enable piping
>      transport-helper: enforce atomic in push_refs_with_push
>Eric Wong (3):
>      update-server-info: avoid needless overwrites
>      server-info: do not list unlinked packs
>      repack: disable bitmaps-by-default if .keep files exist
>Felipe Contreras (5):
>      t5801 (remote-helpers): cleanup refspec stuff
>      t5801 (remote-helpers): add test to fetch tags
>      fetch: trivial cleanup
>      fetch: make the code more understandable
>      fetch: fix regression with transport helpers
>Jakub Wilk (1):
>      doc: don't use as example gitweb URL
>Jean-Noël Avila (2):
>      l10n: reformat some localized strings for v2.23.0
>      l10n: fr v2.23.0 round 2
>Jeff Hostetler (13):
>      cache-tree/blame: avoid reusing the DEBUG constant
>      msvc: mark a variable as non-const
>      msvc: do not re-declare the timespec struct
>      msvc: define ftello()
>      msvc: fix detect_msys_tty()
>      msvc: update Makefile to allow for spaces in the compiler path
>      status: add status.aheadbehind setting
>      status: warn when a/b calculation takes too long
>      status: ignore status.aheadbehind in porcelain formats
>      msvc: support building Git using MS Visual C++
>      msvc: add a compile-time flag to allow detailed heap debugging
>      msvc: do not pretend to support all signals
>      msvc: ignore .dll and incremental compile output
>Jeff King (57):
>      cmd_{read,write}_tree: rename "unused" variable that is used
>      builtin: consistently pass cmd_* prefix to parse_options
>      submodule: drop unused prefix parameter from some functions
>      clone: drop dest parameter from copy_alternates()
>      read-cache: drop unused parameter from threaded load
>      wt-status: drop unused status parameter
>      mktree: drop unused length parameter
>      name-rev: drop unused parameters from is_better_name()
>      pack-objects: drop unused rev_info parameters
>      receive-pack: drop unused "commands" from prepare_shallow_update()
>      remove_all_fetch_refspecs(): drop unused "remote" parameter
>      rev-list: drop unused void pointer from finish_commit()
>      show-branch: drop unused parameter from show_independent()
>      verify-commit: simplify parameters to run_gpg_verify()
>      help_unknown_ref(): duplicate collected refnames
>      help_unknown_ref(): check for refname ambiguity
>      upload-pack: strip namespace from symref data
>      am: simplify prompt response handling
>      am: read interactive input from stdin
>      am: drop tty requirement for --interactive
>      am: fix --interactive HEAD tree resolution
>      interpret-trailers: load default config
>      verify-tag: drop signal.h include
>      wt-status.h: drop stdio.h include
>      describe: fix accidental oid/hash type-punning
>      upload-pack: rename a "sha1" variable to "oid"
>      pack-bitmap-write: convert some helpers to use object_id
>      pack-objects: convert packlist_find() to use object_id
>      pack-objects: convert locate_object_entry_hash() to object_id
>      object: convert lookup_unknown_object() to use object_id
>      object: convert lookup_object() to use object_id
>      object: convert internal hash_obj() to object_id
>      object: convert create_object() to use object_id
>      khash: drop broken oid_map typedef
>      khash: rename kh_oid_t to kh_oid_set
>      delta-islands: convert island_marks khash to use oids
>      pack-bitmap: convert khash_sha1 maps into kh_oid_map
>      khash: drop sha1-specific map types
>      khash: rename oid helper functions
>      hash.h: move object_id definition from cache.h
>      hashmap: convert sha1hash() to oidhash()
>      delta-islands: respect progress flag
>      blame: drop some unused function parameters
>      object-store.h: move for_each_alternate_ref() from transport.h
>      check_everything_connected: assume alternate ref tips are valid
>      test-lib: introduce test_commit_bulk
>      t5310: increase the number of bitmapped commits
>      t3311: use test_commit_bulk
>      t5702: use test_commit_bulk
>      t5703: use test_commit_bulk
>      t6200: use test_commit_bulk
>      xdiff: clamp function context indices in post-image
>      t: sort output of hashmap iteration
>      t7700: clean up .keep file in bitmap-writing test
>      repack: silence warnings when auto-enabled bitmaps cannot be built
>      repack: simplify handling of auto-bitmaps and .keep files
>      t0000: reword comments for "local" test
>Jiang Xin (3):
>      l10n: git.pot: v2.23.0 round 1 (130 new, 35 removed)
>      l10n: git.pot: v2.23.0 round 2 (4 new, 6 removed)
>      l10n: zh_CN: for git v2.23.0 l10n round 1~2
>Johannes Schindelin (47):
>      Drop unused
>      t3400: stop referring to the scripted rebase
>      .gitignore: there is no longer a built-in `git-rebase--interactive`
>      sequencer: the `am` and `rebase--interactive` scripts are gone
>      rebase: fold git-rebase--common into the -p backend
>      bisect--helper: verify HEAD could be parsed before continuing
>      fill_stat_cache_info(): prepare for an fsmonitor fix
>      mark_fsmonitor_valid(): mark the index as changed if needed
>      bundle verify: error out if called without an object database
>      poll (mingw): allow compiling with GCC 8 and DEVELOPER=1
>      kwset: allow building with GCC 8
>      winansi: simplify loading the GetCurrentConsoleFontEx() function
>      config: avoid calling `labs()` on too-large data type
>      t3404: fix a typo
>      mingw: fix a typo in the msysGit-specific section
>      Mark .bat files as requiring CR/LF endings
>      t0001 (mingw): do not expect a specific order of stdout/stderr
>      obstack: fix compiler warning
>      mingw: replace mingw_startup() hack
>      msvc: fix dependencies of compat/msvc.c
>      t0001: fix on case-insensitive filesystems
>      msvc: avoid debug assertion windows in Debug Mode
>      mingw: enable stack smashing protector
>      mingw: get pw_name in UTF-8 format
>      mingw: use Unicode functions explicitly
>      rebase --am: ignore rebase.rescheduleFailedExec
>      mingw: fix possible buffer overrun when calling `GetUserNameW()`
>      diff: munmap() file contents before running external diff
>      mingw: support spawning programs containing spaces in their names
>      clean: show an error message when the path is too long
>      rebase: fix white-space
>      git: mark cmd_rebase as requiring a worktree
> auto-generate GUIDs
> do not configure VCWebServiceProxyGeneratorTool
> urlencode '<' and '>' when generating VC projects
>      contrib/buildsystems: ignore irrelevant files in Generators/
>      contrib/buildsystems: error out on unknown option
>      contrib/buildsystems: handle libiconv, too
>      contrib/buildsystems: also handle -lexpat
>      contrib/buildsystems: handle options starting with a slash
>      contrib/buildsystems: add a backend for modern Visual Studio versions
>      msvc: add a Makefile target to pre-generate the Visual Studio solution
>      vcxproj: also link-or-copy builtins
>      .gitignore: ignore Visual Studio's temporary/generated files
>      bin-wrappers: append `.exe` to target paths if necessary
>      git: avoid calling aliased builtins via their dashed form
>      config: work around bug with includeif:onbranch and early config
>Johannes Sixt (5):
>      userdiff: two simplifications of patterns for rust
>      t7610-mergetool: do not place pipelines headed by `yes` in subshells
>      t7610-mergetool: use test_cmp instead of test $(cat file) = $txt
>      mergetool: dissect strings with shell variable magic instead of `expr`
>      mergetool: use shell variable magic instead of `awk`
>John Lin (1):
>      status: remove the empty line after hints
>Jonathan Nieder (1):
>      t: decrease nesting in test_oid_to_path
>Jonathan Tan (5):
>      t5616: refactor packfile replacement
>      index-pack: prefetch missing REF_DELTA bases
>      t5616: use correct flag to check object is missing
>      t5616: cover case of client having delta base
>      t5551: test usage of chunked encoding explicitly
>Jordi Mas (2):
>      l10n: Update Catalan translation
>      l10n: Update Catalan translation
>Josh Steadmon (1):
>      trace2: correct trace2 field name documentation
>Junio C Hamano (21):
>      The first batch after 2.22
>      The second batch
>      The third batch
>      The fourth batch
>      The fifth batch
>      transport-helper: avoid var decl in for () loop control
>      rm: resolving by removal is not a warning-worthy event
>      CodingGuidelines: spell out post-C89 rules
>      The sixth batch
>      The seventh batch
>      Flush fixes up to the third batch post 2.22.0
>      Merge fixes made on the 'master' front
>      Git 2.23-rc0
>      test-dir-iterator: do not assume errno values
>      A few more last-minute fixes
>      log: flip the --mailmap default unconditionally
>      log: really flip the --mailmap default
>      Git 2.23-rc1
>      Git 2.23-rc2
>      Git 2.22.1
>      Git 2.23
>Karsten Blees (2):
>      gettext: always use UTF-8 on native Windows
>      mingw: initialize HOME on startup
>Marc-André Lureau (1):
>      userdiff: add built-in pattern for rust
>Mark Rushakoff (2):
>      doc: typo: s/can not/cannot/ and s/is does/does/
>      doc: fix repeated words
>Martin Ågren (3):
>      ref-filter: fix memory leak in `free_array_item()`
>      RelNotes/2.21.1: typofix
>      RelNotes/2.23.0: fix a few typos and other minor issues
>Matheus Tavares (8):
>      clone: better handle symlinked files at .git/objects/
>      dir-iterator: use warning_errno when possible
>      dir-iterator: refactor state machine model
>      dir-iterator: add flags parameter to dir_iterator_begin
>      clone: copy hidden paths at local clone
>      clone: extract function from copy_or_link_directory
>      clone: use dir-iterator to avoid explicit dir traversal
>      clone: replace strcmp by fspathcmp
>Matthew DeVore (5):
>      list-objects-filter-options: error is localizeable
>      list-objects-filter: correct usage of ALLOC_GROW
>      url: do not read past end of buffer
>      url: do not allow %00 to represent NUL in URLs
>      ref-filter: sort detached HEAD lines firstly
>Matthias Rüster (1):
>      l10n: de.po: Update German translation
>Mazo, Andrey (8):
>      git-p4: detect/prevent infinite loop in gitCommitByP4Change()
>      git-p4: add failing test for "git-p4: match branches case insensitively if configured"
>      git-p4: match branches case insensitively if configured
>      git-p4: don't groom exclude path list on every commit
>      git-p4: add failing test for "don't exclude other files with same prefix"
>      git-p4: don't exclude other files with same prefix
>      git-p4: add failing test for "git-p4: respect excluded paths when detecting branches"
>      git-p4: respect excluded paths when detecting branches
>Michael Osipov (1):
>      configure: Detect linking style for HP aCC on HP-UX
>Michael Platings (2):
>      blame: add a fingerprint heuristic to match ignored lines
>      t8014: remove unnecessary braces
>Miguel Ojeda (1):
>      clang-format: use git grep to generate the ForEachMacros list
>Mike Hommey (2):
>      dup() the input fd for fast-import used for remote helpers
>      Use xmmap_gently instead of xmmap in use_pack
>Mike Mueller (1):
>      p4 unshelve: fix "Not a valid object name HEAD0" on Windows
>Morian Sonnet (1):
>      submodule foreach: fix recursion of options
>Nguyễn Thái Ngọc Duy (63):
>      git-checkout.txt: spell out --no-option
>      git-checkout.txt: fix one syntax line
>      doc: document --overwrite-ignore
>      git-checkout.txt: fix monospace typeset
>      t: rename to
>      checkout: advice how to get out of detached HEAD mode
>      checkout: inform the user when removing branch state
>      checkout: keep most #include sorted
>      checkout: factor out some code in parse_branchname_arg()
>      checkout: make "opts" in cmd_checkout() a pointer
>      checkout: move 'confict_style' and 'dwim_..' to checkout_opts
>      checkout: split options[] array in three pieces
>      checkout: split part of it to new command 'switch'
>      switch: better names for -b and -B
>      switch: add --discard-changes
>      switch: remove -l
>      switch: stop accepting pathspec
>      switch: reject "do nothing" case
>      switch: only allow explicit detached HEAD
>      switch: add short option for --detach
>      switch: implicit dwim, use --no-guess to disable it
>      switch: no worktree status unless real branch switch happens
>      switch: reject if some operation is in progress
>      switch: make --orphan switch to an empty tree
>      t: add tests for switch
>      completion: support switch
>      doc: promote "git switch"
>      checkout: split part of it to new command 'restore'
>      restore: take tree-ish from --source option instead
>      restore: make pathspec mandatory
>      restore: disable overlay mode by default
>      checkout: factor out worktree checkout code
>      restore: add --worktree and --staged
>      restore: reject invalid combinations with --staged
>      restore: default to --source=HEAD when only --staged is specified
>      restore: replace --force with --ignore-unmerged
>      restore: support --patch
>      t: add tests for restore
>      completion: support restore
>      user-manual.txt: prefer 'merge --abort' over 'reset --hard'
>      doc: promote "git restore"
>      help: move git-diff and git-reset to different groups
>      Declare both git-switch and git-restore experimental
>      merge: remove drop_save() in favor of remove_merge_branch_state()
>      init: make --template path relative to $CWD
>      worktree add: sanitize worktree names
>      worktree add: be tolerant of corrupt worktrees
>      merge: add --quit
>      completion: do not cache if --git-completion-helper fails
>      fetch: only run 'gc' once when fetching multiple remotes
>      t2027: use test_must_be_empty
>      switch: allow to switch in the middle of bisect
>      completion: disable dwim on "git switch -d"
>      fetch-pack: move capability names out of i18n strings
>      fetch-pack: print all relevant supported capabilities with -v -v
>      fetch-pack: print server version at the top in -v -v
>      sha1-file.c: remove the_repo from read_object_with_reference()
>      tree-walk.c: remove the_repo from fill_tree_descriptor()
>      tree-walk.c: remove the_repo from get_tree_entry()
>      tree-walk.c: remove the_repo from get_tree_entry_follow_symlinks()
>      match-trees.c: remove the_repo from shift_tree*()
>      Use the right 'struct repository' instead of the_repository
>      t7814: do not generate same commits in different repos
>Nickolai Belakovski (3):
>      ref-filter: add worktreepath atom
>      branch: update output to include worktree info
>      branch: add worktree info on verbose output
>Paolo Bonzini (2):
>      request-pull: quote regex metacharacters in local ref
>      request-pull: warn if the remote object is not the same as the local one
>Peter Krefting (1):
>      l10n: sv.po: Update Swedish translation (4676t0f0u)
>Philip Oakley (16):
>      git.c: show usage for accessing the git(1) help page
>      Doc: git.txt: remove backticks from link and add
>      doc branch: provide examples for listing remote tracking branches
>      msvc: include sigset_t definition
>      msvc: define O_ACCMODE
>      msvc: add pragmas for common warnings
> list git.exe first to be startup project
>      contrib/buildsystems: ignore invalidcontinue.obj
>      contrib/buildsystems: fix misleading error message
>      contrib/buildsystems: handle quoted spaces in filenames
>      contrib/buildsystems: ignore gettext stuff
>      contrib/buildsystems: redirect errors of the dry run into a log file
>      contrib/buildsystems: optionally capture the dry-run in a file
>      contrib/buildsystems: handle the curl library option
>      .gitignore: touch up the entries regarding Visual Studio
>      .mailmap: update email address of Philip Oakley
>Philipp Weißmann (1):
>      l10n: de.po: Fix typo in German translation
>Phillip Wood (12):
>      rebase: fix a memory leak
>      rebase: warn if state directory cannot be removed
>      sequencer: return errors from sequencer_remove_state()
>      rebase --abort/--quit: cleanup refs/rewritten
>      rebase -r: always reword merge -c
>      add -p: fix checkout -p with pathological context
>      show --continue/skip etc. consistently in synopsis
>      sequencer: always allow tab after command name
>      sequencer: factor out todo command name parsing
>      status: do not report errors in sequencer/todo
>      git-prompt: improve cherry-pick/revert detection
>      t3420: remove progress lines before comparing output
>Quentin Nerden (2):
>      docs: git-clone: refer to long form of options
>      docs: git-clone: list short form of options first
>Ramsay Jones (1):
>      env--helper: mark a file-local symbol as static
>René Scharfe (10):
>      cleanup: fix possible overflow errors in binary search, part 2
>      coccinelle: use COPY_ARRAY for copying arrays
>      use COPY_ARRAY for copying arrays
>      config: use unsigned_mult_overflows to check for overflows
>      config: don't multiply in parse_unit_factor()
>      config: simplify parsing of unit factors
>      commit-graph: release strbufs after use
>      dir-iterator: release strbuf after use
>      test-dir-iterator: use path argument directly
>      sha1-file: release strbuf after use
>Robert Morgan (1):
>      gpg(docs): use correct --verify syntax
>Rohit Ashiwal (5):
>      sequencer: add advice for revert
>      sequencer: rename reset_for_rollback to reset_merge
>      sequencer: use argv_array in reset_merge
>      cherry-pick/revert: add --skip option
>      cherry-pick/revert: advise using --skip
>SZEDER Gábor (12):
>      t3404: modernize here doc style
>      t3404: make the 'rebase.missingCommitsCheck=ignore' test more focused
>      pager: add a helper function to clear the last line in the terminal
>      t5551: use 'test_i18ngrep' to check translated output
>      rebase: fix garbled progress display with '-x'
>      progress: use term_clear_line()
>      Document that 'git -C ""' works and doesn't change directory
>      ci: don't update Homebrew
>      ci: disable Homebrew's auto cleanup
>      ci/ update a comment about installed P4 and Git-LFS versions
>      travis-ci: build with GCC 4.8 as well
>      Documentation/git-fsck.txt: include fsck.* config variables
>Simon Williams (1):
>      git-p4: allow unshelving of branched files
>Stephen Boyd (2):
>      format-patch: inform user that patch-id generation is unstable
>      format-patch: make --base patch-id output stable
>Steven Roberts (1):
>      gpg-interface: do not scan past the end of buffer
>Taylor Blau (1):
>      ref-filter.c: find disjoint pattern prefixes
>Thomas Gummerer (16):
>      stash: fix show referencing stash index
>      apply: replace link with public-inbox
>      apply: only pass required data to skip_tree_prefix
>      apply: only pass required data to git_header_name
>      apply: only pass required data to check_header_line
>      apply: only pass required data to find_name_*
>      apply: only pass required data to gitdiff_* functions
>      apply: make parse_git_diff_header public
>      range-diff: fix function parameter indentation
>      range-diff: split lines manually
>      range-diff: don't remove funcname from inner diff
>      range-diff: suppress line count in outer diff
>      range-diff: add section header instead of diff header
>      range-diff: add filename to inner diff
>      range-diff: add headers to the outer hunk header
>      stash: fix handling removed files with --keep-index
>Tigran Mkrtchyan (1):
>      tag: add tag.gpgSign config option to force all tags be GPG-signed
>Trần Ngọc Quân (2):
>      l10n: vi.po (4676t): Updated Vietnamese translation
>      l10n: vi(4674t): Updated translation for Vietnamese
>Varun Naik (1):
>      read-cache.c: do not die if mmap fails
>Vishal Verma (1):
>      merge: refuse --commit with --squash
>William Chargin (1):
>      restore: fix typo in docs
>Xin Li (1):
>      clone: respect user supplied origin name when setting up partial clone
>brian m. carlson (10):
>      t: add helper to convert object IDs to paths
>      t1410: make hash size independent
>      t1450: make hash size independent
>      t5000: make hash independent
>      t6030: make test work with SHA-256
>      t0027: make hash size independent
>      t0090: make test pass with SHA-256
>      t1007: remove SHA1 prerequisites
>      t1710: make hash independent
>      t2203: avoid hard-coded object ID values
>Ævar Arnfjörð Bjarmason (21):
>      send-email: move the read_config() function above getopts
>      send-email: rename the @bcclist variable for consistency
>      send-email: do defaults -> config -> getopt in that order
>      tests: add a special setup where prerequisites fail
>      Makefile: remove the NO_R_TO_GCC_LINKER flag
>      send-email: remove cargo-culted multi-patch pattern in tests
>      send-email: fix broken transferEncoding tests
>      send-email: document --no-[to|cc|bcc]
>      hash-object doc: stop mentioning git-cvsimport
>      send-email: fix regression in sendemail.identity parsing
>      Revert "test-lib: whitelist GIT_TR2_* in the environment"
>      config tests: simplify include cycle test
>      env--helper: new undocumented builtin wrapping git_env_*()
>      config.c: refactor die_bad_number() to not call gettext() early
>      t6040 test: stop using global "script" variable
>      tests: make GIT_TEST_GETTEXT_POISON a boolean
>      tests README: re-flow a previously changed paragraph
>      tests: replace test_tristate with "git env--helper"
>      tests: make GIT_TEST_FAIL_PREREQS a boolean
>      tests: mark two failing tests under FAIL_PREREQS
>      clone: test for our behavior on odd objects/* content

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  reply	other threads:[~2019-08-16 21:31 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-16 21:00 [ANNOUNCE] Git v2.23.0 Junio C Hamano
2019-08-16 21:30 ` Bhaskar Chowdhury [this message]
2019-08-19 10:55 ` Randall S. Becker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

  List information:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190816213055.GA28512@debian \ \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).