{"thread":{"id":"41116","subject":"[ANNOUNCE] Git v2.6.5","startedAt":"2016-01-04T23:43:49Z","lastAt":"2016-01-04T23:43:49Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"275333","messageId":"xmqqsi2clxl6.fsf@gitster.mtv.corp.google.com","threadId":"41116","inReplyTo":null,"subject":"[ANNOUNCE] Git v2.6.5","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2016-01-04T23:43:49Z","receivedAt":"2016-01-04T23:43:49Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"The latest maintenance release Git v2.6.5 is now available at\nthe usual places.\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.6.5'\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.6.5 Release Notes\n========================\n\nFixes since v2.6.4\n------------------\n\n * Because \"test_when_finished\" in our test framework queues the\n   clean-up tasks to be done in a shell variable, it should not be\n   used inside a subshell.  Add a mechanism to allow 'bash' to catch\n   such uses, and fix the ones that were found.\n\n * Update \"git subtree\" (in contrib/) so that it can take whitespaces\n   in the pathnames, not only in the in-tree pathname but the name of\n   the directory that the repository is in.\n\n * Cosmetic improvement to lock-file error messages.\n\n * mark_tree_uninteresting() has code to handle the case where it gets\n   passed a NULL pointer in its 'tree' parameter, but the function had\n   'object = &tree->object' assignment before checking if tree is\n   NULL.  This gives a compiler an excuse to declare that tree will\n   never be NULL and apply a wrong optimization.  Avoid it.\n\n * The helper used to iterate over loose object directories to prune\n   stale objects did not closedir() immediately when it is done with a\n   directory--a callback such as the one used for \"git prune\" may want\n   to do rmdir(), but it would fail on open directory on platforms\n   such as WinXP.\n\n * \"git p4\" used to import Perforce CLs that touch only paths outside\n   the client spec as empty commits.  It has been corrected to ignore\n   them instead, with a new configuration git-p4.keepEmptyCommits as a\n   backward compatibility knob.\n\n * The exit code of git-fsck did not reflect some types of errors\n   found in packed objects, which has been corrected.\n\n * The completion script (in contrib/) used to list \"git column\"\n   (which is not an end-user facing command) as one of the choices\n\n * Improve error reporting when SMTP TLS fails.\n\n * When getpwuid() on the system returned NULL (e.g. the user is not\n   in the /etc/passwd file or other uid-to-name mappings), the\n   codepath to find who the user is to record it in the reflog barfed\n   and died.  Loosen the check in this codepath, which already accepts\n   questionable ident string (e.g. host part of the e-mail address is\n   obviously bogus), and in general when we operate fmt_ident() function\n   in non-strict mode.\n\n * \"git symbolic-ref\" forgot to report a failure with its exit status.\n\n * History traversal with \"git log --source\" that starts with an\n   annotated tag failed to report the tag as \"source\", due to an\n   old regression in the command line parser back in v2.2 days.\n\nAlso contains typofixes, documentation updates and trivial code\nclean-ups.\n\n----------------------------------------------------------------\n\nChanges since v2.6.4 are as follows:\n\nAlexey Shumkin (2):\n      t7900-subtree: test the \"space in a subdirectory name\" case\n      contrib/subtree: respect spaces in a repository path\n\nCharles Bailey (1):\n      t3404: fix quoting of redirect for some versions of bash\n\nChristian Couder (1):\n      Documentation/git-update-index: add missing opts to synopsis\n\nDavid Turner (1):\n      verify_pack: do not ignore return value of verification function\n\nElia Pinto (1):\n      ident.c: add support for IPv6\n\nJeff King (7):\n      ident: make xgetpwuid_self() a static local helper\n      ident: keep a flag for bogus default_email\n      ident: loosen getpwuid error in non-strict mode\n      ident: fix undefined variable when NO_IPV6 is set\n      revision.c: propagate tag names from pending array\n      symbolic-ref: propagate error code from create_symref()\n      t1401: test reflog creation for git-symbolic-ref\n\nJohannes Sixt (1):\n      prune: close directory earlier during loose-object directory traversal\n\nJohn Keeping (6):\n      t7610: don't use test_config in a subshell\n      t5801: don't use test_when_finished in a subshell\n      test-lib-functions: support \"test_config -C <dir> ...\"\n      t7800: don't use test_config in a subshell\n      test-lib-functions: detect test_when_finished in subshell\n      send-email: enable SSL level 1 debug output\n\nJunio C Hamano (3):\n      Prepare for 2.6.5\n      Update draft release notes to 2.6.5\n      Git 2.6.5\n\nLars Schneider (1):\n      git-p4: add option to keep empty commits\n\nNguyễn Thái Ngọc Duy (1):\n      git-check-ref-format.txt: typo, s/avoids/avoid/\n\nRené Scharfe (2):\n      use pop_commit() for consuming the first entry of a struct commit_list\n      show-branch: use argv_array for default arguments\n\nSZEDER Gábor (3):\n      Make error message after failing commit_lock_file() less confusing\n      completion: remove 'git column' from porcelain commands\n      credential-store: don't pass strerror to die_errno()\n\nStefan Beller (1):\n      document submodule sync --recursive\n\nStefan Naewe (1):\n      revision.c: fix possible null pointer arithmetic\n"}]}