{"thread":{"id":"41668","subject":"[ANNOUNCE] Git v2.7.3","startedAt":"2016-03-10T23:04:40Z","lastAt":"2016-03-10T23:04:40Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"280593","messageId":"xmqqy49qaq9j.fsf@gitster.mtv.corp.google.com","threadId":"41668","inReplyTo":null,"subject":"[ANNOUNCE] Git v2.7.3","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2016-03-10T23:04:40Z","receivedAt":"2016-03-10T23:04:40Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"The latest maintenance release Git v2.7.3 is now available at\nthe usual places.  This is primarily to sync the maintenance track\nwith miscellaneous fixes that are scheduled to be part of upcoming\nv2.8.0 release.\n\nThe tarballs are found at:\n\n    https://www.kernel.org/pub/software/scm/git/\n\nThe following public repositories all have a copy of the 'v2.7.3'\ntag and the 'maint' branch that the tag points at:\n\n  url = https://kernel.googlesource.com/pub/scm/git/git\n  url = git://repo.or.cz/alt-git.git\n  url = git://git.sourceforge.jp/gitroot/git-core/git.git\n  url = git://git-core.git.sourceforge.net/gitroot/git-core/git-core\n  url = https://github.com/gitster/git\n\n----------------------------------------------------------------\n\nGit v2.7.3 Release Notes\n========================\n\nFixes since v2.7.2\n------------------\n\n * Traditionally, the tests that try commands that work on the\n   contents in the working tree were named with \"worktree\" in their\n   filenames, but with the recent addition of \"git worktree\"\n   subcommand, whose tests are also named similarly, it has become\n   harder to tell them apart.  The traditional tests have been renamed\n   to use \"work-tree\" instead in an attempt to differentiate them.\n\n * Many codepaths forget to check return value from git_config_set();\n   the function is made to die() to make sure we do not proceed when\n   setting a configuration variable failed.\n\n * Handling of errors while writing into our internal asynchronous\n   process has been made more robust, which reduces flakiness in our\n   tests.\n\n * \"git show 'HEAD:Foo[BAR]Baz'\" did not interpret the argument as a\n   rev, i.e. the object named by the the pathname with wildcard\n   characters in a tree object.\n\n * \"git rev-parse --git-common-dir\" used in the worktree feature\n   misbehaved when run from a subdirectory.\n\n * The \"v(iew)\" subcommand of the interactive \"git am -i\" command was\n   broken in 2.6.0 timeframe when the command was rewritten in C.\n\n * \"git merge-tree\" used to mishandle \"both sides added\" conflict with\n   its own \"create a fake ancestor file that has the common parts of\n   what both sides have added and do a 3-way merge\" logic; this has\n   been updated to use the usual \"3-way merge with an empty blob as\n   the fake common ancestor file\" approach used in the rest of the\n   system.\n\n * The memory ownership rule of fill_textconv() API, which was a bit\n   tricky, has been documented a bit better.\n\n * The documentation did not clearly state that the 'simple' mode is\n   now the default for \"git push\" when push.default configuration is\n   not set.\n\n * Recent versions of GNU grep are pickier when their input contains\n   arbitrary binary data, which some of our tests uses.  Rewrite the\n   tests to sidestep the problem.\n\n * A helper function \"git submodule\" uses since v2.7.0 to list the\n   modules that match the pathspec argument given to its subcommands\n   (e.g. \"submodule add <repo> <path>\") has been fixed.\n\n * \"git config section.var value\" to set a value in per-repository\n   configuration file failed when it was run outside any repository,\n   but didn't say the reason correctly.\n\n * The code to read the pack data using the offsets stored in the pack\n   idx file has been made more carefully check the validity of the\n   data in the idx.\n\nAlso includes documentation and test updates.\n\n----------------------------------------------------------------\n\nChanges since v2.7.2 are as follows:\n\nAlexander Kuleshov (2):\n      exec_cmd.c: use find_last_dir_sep() for code simplification\n      git.c: simplify stripping extension of a file in handle_builtin()\n\nDavid Turner (1):\n      refs: document transaction semantics\n\nJeff King (37):\n      checkout: reorder check_filename conditional\n      check_filename: tighten dwim-wildcard ambiguity\n      get_sha1: don't die() on bogus search strings\n      reflog_expire_cfg: NUL-terminate pattern field\n      add helpers for detecting size_t overflow\n      tree-diff: catch integer overflow in combine_diff_path allocation\n      diff: clarify textconv interface\n      harden REALLOC_ARRAY and xcalloc against size_t overflow\n      add helpers for allocating flex-array structs\n      argv-array: add detach function\n      convert manual allocations to argv_array\n      convert trivial cases to ALLOC_ARRAY\n      use xmallocz to avoid size arithmetic\n      convert trivial cases to FLEX_ARRAY macros\n      use st_add and st_mult for allocation size computation\n      prepare_{git,shell}_cmd: use argv_array\n      write_untracked_extension: use FLEX_ALLOC helper\n      fast-import: simplify allocation in start_packfile\n      fetch-pack: simplify add_sought_entry\n      test-path-utils: fix normalize_path_copy output buffer size\n      sequencer: simplify memory allocation of get_message\n      git-compat-util: drop mempcpy compat code\n      transport_anonymize_url: use xstrfmt\n      diff_populate_gitlink: use a strbuf\n      convert ewah/bitmap code to use xmalloc\n      ewah: convert to REALLOC_ARRAY, etc\n      merge-one-file: use empty blob for add/add base\n      merge-tree: drop generate_common strategy\n      xdiff: drop XDL_EMIT_COMMON\n      t5313: test bounds-checks of corrupted/malicious pack/idx files\n      nth_packed_object_offset: bounds-check extended offset\n      use_pack: handle signed off_t overflow\n      write_or_die: handle EPIPE in async threads\n      fetch-pack: ignore SIGPIPE in sideband demuxer\n      test_must_fail: report number of unexpected signal\n      t5504: handle expected output from SIGPIPE death\n      compat/mingw: brown paper bag fix for 50a6c8e\n\nJohannes Schindelin (1):\n      git config: report when trying to modify a non-existing repo config\n\nJohn Keeping (2):\n      t8005: avoid grep on non-ASCII data\n      t9200: avoid grep on non-ASCII data\n\nJunio C Hamano (4):\n      pager: lose a separate argv[]\n      pager: factor out a helper to prepare a child process to run the pager\n      am -i: fix \"v\"iew\n      Git 2.7.3\n\nMartin Amdisen (1):\n      templates/hooks: fix minor typo in the sample update-hook\n\nMatthieu Moy (1):\n      Documentation/git-push: document that 'simple' is the default\n\nMichael J Gruber (1):\n      tests: rename work-tree tests to *work-tree*\n\nNguyễn Thái Ngọc Duy (2):\n      rev-parse: take prefix into account in --git-common-dir\n      sha1_file.c: mark strings for translation\n\nPatrick Steinhardt (16):\n      config: introduce set_or_die wrappers\n      branch: report errors in tracking branch setup\n      branch: die on config error when unsetting upstream\n      branch: die on config error when editing branch description\n      submodule: die on config error when linking modules\n      submodule--helper: die on config error when cloning module\n      remote: die on config error when setting URL\n      remote: die on config error when setting/adding branches\n      remote: die on config error when manipulating remotes\n      clone: die on config error in cmd_clone\n      init-db: die on config errors when initializing empty repo\n      sequencer: die on config error when saving replay opts\n      compat: die when unable to set core.precomposeunicode\n      config: rename git_config_set to git_config_set_gently\n      config: rename git_config_set_or_die to git_config_set\n      xdiff/xmerge: fix memory leak in xdl_merge\n\nShawn O. Pearce (1):\n      remote-curl: include curl_errorstr on SSL setup failures\n\nStefan Beller (1):\n      submodule helper list: respect correct path prefix\n"}]}