1 To: git@vger.kernel.org
3 Subject: What's cooking in git.git (Jan 2013, #08; Tue, 22)
4 X-master-at: 9591fcc6d66fd213c8c9f73553b7684b73daf4cb
5 X-next-at: 9bc26b8f63ccfb0316023621731bc14191a8b436
7 What's cooking in git.git (Jan 2013, #08; Tue, 22)
8 --------------------------------------------------
10 Here are the topics that have been cooking. Commits prefixed with
11 '-' are only in 'pu' (proposed updates) while commits prefixed with
14 As usual, this cycle is expected to last for 8 to 10 weeks, with a
15 preview -rc0 sometime in the middle of next month.
17 You can find the changes described here in the integration branches of the
18 repositories listed at
20 http://git-blame.blogspot.com/p/git-public-repositories.html
22 --------------------------------------------------
25 * bc/fix-array-syntax-for-3.0-in-completion-bash (2013-01-18) 1 commit
26 - git-completion.bash: replace zsh notation that breaks bash 3.X
28 Fix use of an array notation that older versions of bash do not
34 * jc/help (2013-01-18) 1 commit
35 - help: include <common-cmds.h> only in one file
37 A header file that has the definition of a static array was
38 included in two places, wasting the space.
43 * jc/hidden-refs (2013-01-18) 2 commits
44 - upload-pack: allow hiding ref hiearchies
45 - upload-pack: share more code
47 Allow the server side to unclutter the refs/ namespace it shows by
48 default, while still allowing requests for histories leading to the
49 tips of hidden refs by updated clients (which are not written yet).
52 * jk/update-install-for-p4 (2013-01-20) 1 commit
53 - INSTALL: git-p4 doesn't support Python 3
58 * tb/t0050-maint (2013-01-21) 3 commits
59 - t0050: Use TAB for indentation
60 - t0050: honor CASE_INSENSITIVE_FS in add (with different case)
61 - t0050: known breakage vanished in merge (case change)
66 * nd/magic-pathspec-from-root (2013-01-21) 2 commits
67 - grep: avoid accepting ambiguous revision
68 - Update :/abc ambiguity check
73 * ta/doc-no-small-caps (2013-01-21) 7 commits
74 - Add rule for when to use 'git' and when to use 'Git'
75 - Change 'git' to 'Git' whenever the whole system is referred to #4
76 - Change 'git' to 'Git' whenever the whole system is referred to #3
77 - Change 'git' to 'Git' whenever the whole system is referred to #2
78 - Change 'git' to 'Git' whenever the whole system is referred to #1
79 - Documentation: update two leftover small caps
80 - Documentation: avoid poor-man's small caps
82 Update documentation to change "GIT" which was a poor-man's small
83 caps to "Git" which was the intended spelling. Also change "git"
84 spelled in all-lowercase to "Git" when it refers to the system as
85 the whole or the concept it embodies, as opposed to the command the
89 * rr/minimal-stat (2013-01-22) 1 commit
90 - Enable minimal stat checking
92 Some reimplementations of Git does not write all the stat info back
93 to the index due to their implementation limitations (e.g. jgit
94 running on Java). A configuration option can tell Git to ignore
95 changes to most of the stat fields and only pay attention to mtime
96 and size, which these implementations can reliably update. This
97 avoids excessive revalidation of contents.
101 --------------------------------------------------
102 [Graduated to "master"]
104 * ap/log-mailmap (2013-01-10) 11 commits
105 (merged to 'next' on 2013-01-10 at 8544084)
106 + log --use-mailmap: optimize for cases without --author/--committer search
107 + log: add log.mailmap configuration option
108 + log: grep author/committer using mailmap
109 + test: add test for --use-mailmap option
110 + log: add --use-mailmap option
111 + pretty: use mailmap to display username and email
112 + mailmap: add mailmap structure to rev_info and pp
113 + mailmap: simplify map_user() interface
114 + mailmap: remove email copy and length limitation
115 + Use split_ident_line to parse author and committer
116 + string-list: allow case-insensitive string list
118 Teach commands in the "log" family to optionally pay attention to
122 * ds/completion-silence-in-tree-path-probe (2013-01-11) 1 commit
123 (merged to 'next' on 2013-01-15 at 7542d21)
124 + git-completion.bash: silence "not a valid object" errors
126 An internal ls-tree call made by completion code only to probe if
127 a path exists in the tree recorded in a commit object leaked error
128 messages when the path is not there. It is not an error at all and
129 should not be shown to the end user.
132 * fc/remote-hg-fixup-url (2013-01-15) 1 commit
133 (merged to 'next' on 2013-01-15 at d2acb2d)
134 + remote-hg: store converted URL
136 Update to the Hg remote helper (in contrib/).
139 * jn/maint-trim-vim-contrib (2013-01-10) 1 commit
140 (merged to 'next' on 2013-01-15 at ad80a9d)
141 + contrib/vim: simplify instructions for old vim support
143 Remove stale insn to support older versions of vim and point users
144 to the upstream resources.
147 * mh/remote-hg-mode-bits-fix (2013-01-15) 1 commit
148 (merged to 'next' on 2013-01-15 at ad57d9f)
149 + remote-hg: fix handling of file perms when pushing
151 Update to the Hg remote helper (in contrib/).
154 * mk/complete-tcsh (2013-01-07) 1 commit
155 (merged to 'next' on 2013-01-11 at b8b30b1)
156 + Prevent space after directories in tcsh completion
158 Update tcsh command line completion so that an unwanted space is
159 not added to a single directory name.
162 * mz/reset-misc (2013-01-16) 20 commits
163 (merged to 'next' on 2013-01-16 at 937bc20)
164 + reset: update documentation to require only tree-ish with paths
165 (merged to 'next' on 2013-01-15 at a93b394)
166 + reset [--mixed]: use diff-based reset whether or not pathspec was given
167 + reset: allow reset on unborn branch
168 + reset $sha1 $pathspec: require $sha1 only to be treeish
169 + reset.c: inline update_index_refresh()
170 + reset.c: finish entire cmd_reset() whether or not pathspec is given
171 + reset [--mixed]: only write index file once
172 + reset.c: move lock, write and commit out of update_index_refresh()
173 + reset.c: move update_index_refresh() call out of read_from_tree()
174 + reset.c: replace switch by if-else
175 + reset: avoid redundant error message
176 + reset --keep: only write index file once
177 + reset.c: share call to die_if_unmerged_cache()
178 + reset.c: extract function for updating {ORIG_,}HEAD
179 + reset.c: remove unnecessary variable 'i'
180 + reset.c: extract function for parsing arguments
181 + reset: don't allow "git reset -- $pathspec" in bare repo
182 + reset.c: pass pathspec around instead of (prefix, argv) pair
183 + reset $pathspec: exit with code 0 if successful
184 + reset $pathspec: no need to discard index
186 Various 'reset' optimizations and clean-ups, followed by a change
187 to allow "git reset" to work even on an unborn branch.
190 * nd/attr-debug-fix (2013-01-15) 1 commit
191 (merged to 'next' on 2013-01-15 at 8460acf)
192 + attr: make it build with DEBUG_ATTR again
194 Fix debugging support that was broken in earlier change.
197 * nd/clone-no-separate-git-dir-with-bare (2013-01-10) 1 commit
198 (merged to 'next' on 2013-01-15 at 64f441a)
199 + clone: forbid --bare --separate-git-dir <dir>
201 Forbid a useless combination of options to "git clone".
204 * nd/fix-directory-attrs-off-by-one (2013-01-16) 2 commits
205 (merged to 'next' on 2013-01-16 at bd63e61)
206 + attr: avoid calling find_basename() twice per path
207 (merged to 'next' on 2013-01-15 at e0a0129)
208 + attr: fix off-by-one directory component length calculation
210 Fix performance regression introduced by an earlier change to let
211 attributes apply to directories.
214 * nd/fix-perf-parameters-in-tests (2013-01-15) 1 commit
215 (merged to 'next' on 2013-01-15 at fedbdb9)
216 + test-lib.sh: unfilter GIT_PERF_*
218 Allow GIT_PERF_* environment variables to be passed through the
222 * pe/doc-email-env-is-trumped-by-config (2013-01-10) 1 commit
223 (merged to 'next' on 2013-01-14 at 6b4d555)
224 + git-commit-tree(1): correct description of defaults
226 In the precedence order, the environment variable $EMAIL comes
227 between the built-in default (i.e. taking value by asking the
228 system's gethostname() etc.) and the user.email configuration
229 variable; the documentation implied that it is stronger than the
230 configuration like $GIT_COMMITTER_EMAIL is, which is wrong.
233 * ph/rebase-preserve-all-merges (2013-01-14) 1 commit
234 (merged to 'next' on 2013-01-15 at 3a67878)
235 + rebase --preserve-merges: keep all merge commits including empty ones
237 An earlier change to add --keep-empty option broke "git rebase
238 --preserve-merges" and lost merge commits that end up being the
242 * pw/p4-branch-fixes (2013-01-15) 14 commits
243 (merged to 'next' on 2013-01-15 at 1ee379e)
244 + git p4: fix submit when no master branch
245 + git p4 test: keep P4CLIENT changes inside subshells
246 + git p4: fix sync --branch when no master branch
247 + git p4: fail gracefully on sync with no master branch
248 + git p4: rearrange self.initialParent use
249 + git p4: allow short ref names to --branch
250 + git p4 doc: fix branch detection example
251 + git p4: clone --branch should checkout master
252 + git p4: verify expected refs in clone --bare test
253 + git p4: create p4/HEAD on initial clone
254 + git p4: inline listExistingP4GitBranches
255 + git p4: add comments to p4BranchesInGit
256 + git p4: rearrange and simplify hasOrigin handling
257 + git p4: test sync/clone --branch behavior
259 Fix "git p4" around branch handling.
262 * rs/pretty-use-prefixcmp (2013-01-14) 1 commit
263 (merged to 'next' on 2013-01-15 at d76452d)
264 + pretty: use prefixcmp instead of memcmp on NUL-terminated strings
267 * rt/commit-cleanup-config (2013-01-10) 1 commit
268 (merged to 'next' on 2013-01-15 at c4742ae)
269 + commit: make default of "cleanup" option configurable
271 Add a configuration variable to set default clean-up mode other
275 * ss/help-htmlpath-config-doc (2013-01-15) 1 commit
276 (merged to 'next' on 2013-01-17 at 99bfae2)
277 + config.txt: Document help.htmlpath config parameter
282 * zk/clean-report-failure (2013-01-14) 1 commit
283 (merged to 'next' on 2013-01-15 at 5b31614)
284 + git-clean: Display more accurate delete messages
286 "git clean" states what it is going to remove and then goes on to
287 remove it, but sometimes it only discovers things that cannot be
288 removed after recursing into a directory, which makes the output
289 confusing and even wrong.
291 --------------------------------------------------
294 * mp/complete-paths (2013-01-11) 1 commit
295 - git-completion.bash: add support for path completion
297 The completion script used to let the default completer to suggest
298 pathnames, which gave too many irrelevant choices (e.g. "git add"
299 would not want to add an unmodified path). Teach it to use a more
300 git-aware logic to enumerate only relevant ones.
302 Waiting for area-experts' help and review.
305 * jl/submodule-deinit (2012-12-04) 1 commit
306 - submodule: add 'deinit' command
308 There was no Porcelain way to say "I no longer am interested in
309 this submodule", once you express your interest in a submodule with
310 "submodule init". "submodule deinit" is the way to do so.
316 * jk/lua-hackery (2012-10-07) 6 commits
317 - pretty: fix up one-off format_commit_message calls
318 - Minimum compilation fixup
319 - Makefile: make "lua" a bit more configurable
320 - add a "lua" pretty format
321 - add basic lua infrastructure
322 - pretty: make some commit-parsing helpers more public
324 Interesting exercise. When we do this for real, we probably would want
325 to wrap a commit to make it more like an "object" with methods like
329 * rc/maint-complete-git-p4 (2012-09-24) 1 commit
330 - Teach git-completion about git p4
332 Comment from Pete will need to be addressed ($gmane/206172).
335 * jc/maint-name-rev (2012-09-17) 7 commits
336 - describe --contains: use "name-rev --algorithm=weight"
337 - name-rev --algorithm=weight: tests and documentation
338 - name-rev --algorithm=weight: cache the computed weight in notes
339 - name-rev --algorithm=weight: trivial optimization
340 - name-rev: --algorithm option
341 - name_rev: clarify the logic to assign a new tip-name to a commit
342 - name-rev: lose unnecessary typedef
344 "git name-rev" names the given revision based on a ref that can be
345 reached in the smallest number of steps from the rev, but that is
346 not useful when the caller wants to know which tag is the oldest one
347 that contains the rev. This teaches a new mode to the command that
348 uses the oldest ref among those which contain the rev.
350 I am not sure if this is worth it; for one thing, even with the help
351 from notes-cache, it seems to make the "describe --contains" even
352 slower. Also the command will be unusably slow for a user who does
353 not have a write access (hence unable to create or update the
356 Stalled mostly due to lack of responses.
359 * jc/xprm-generation (2012-09-14) 1 commit
360 - test-generation: compute generation numbers and clock skews
362 A toy to analyze how bad the clock skews are in histories of real
365 Stalled mostly due to lack of responses.
368 * jc/add-delete-default (2012-08-13) 1 commit
369 - git add: notice removal of tracked paths by default
371 "git add dir/" updated modified files and added new files, but does
372 not notice removed files, which may be "Huh?" to some users. They
373 can of course use "git add -A dir/", but why should they?
375 Resurrected from graveyard, as I thought it was a worthwhile thing
376 to do in the longer term.
378 Stalled mostly due to lack of responses.
381 * mb/remote-default-nn-origin (2012-07-11) 6 commits
382 - Teach get_default_remote to respect remote.default.
383 - Test that plain "git fetch" uses remote.default when on a detached HEAD.
384 - Teach clone to set remote.default.
385 - Teach "git remote" about remote.default.
386 - Teach remote.c about the remote.default configuration setting.
387 - Rename remote.c's default_remote_name static variables.
389 When the user does not specify what remote to interact with, we
390 often attempt to use 'origin'. This can now be customized via a
391 configuration variable.
396 "The first remote becomes the default" bit is better done as a
399 --------------------------------------------------
402 * mh/imap-send-shrinkage (2013-01-15) 14 commits
403 (merged to 'next' on 2013-01-18 at 1b7c5ba)
404 + imap-send.c: simplify logic in lf_to_crlf()
405 + imap-send.c: fold struct store into struct imap_store
406 + imap-send.c: remove unused field imap_store::uidvalidity
407 + imap-send.c: use struct imap_store instead of struct store
408 + imap-send.c: remove unused field imap_store::trashnc
409 + imap-send.c: remove namespace fields from struct imap
410 + imap-send.c: remove struct imap argument to parse_imap_list_l()
411 + imap-send.c: inline parse_imap_list() in parse_list()
412 + imap-send.c: remove some unused fields from struct store
413 + imap-send.c: remove struct message
414 + imap-send.c: remove struct store_conf
415 + iamp-send.c: remove unused struct imap_store_conf
416 + imap-send.c: remove struct msg_data
417 + imap-send.c: remove msg_data::flags, which was always zero
419 Remove a lot of unused code from "git imap-send".
421 Will merge to 'master'.
424 * cr/push-force-tag-update (2013-01-21) 4 commits
425 - push: further simplify the logic to assign rejection status
426 - push: introduce REJECT_FETCH_FIRST and REJECT_NEEDS_FORCE
427 - push: further clean up fields of "struct ref"
428 (merged to 'next' on 2013-01-18 at c9091d5)
429 + push: fix "refs/tags/ hierarchy cannot be updated without --force"
431 Regression fix (the bottom one), and error/advice message
432 improvements (the rest).
434 Will merge to 'master' the bottom one soonish.
435 The remainder can cook in 'next' like any other topic.
438 * jk/suppress-clang-warning (2013-01-16) 1 commit
439 (merged to 'next' on 2013-01-18 at 7c0bda7)
440 + fix clang -Wunused-value warnings for error functions
442 Will merge to 'master'.
445 * rs/clarify-entry-cmp-sslice (2013-01-16) 1 commit
446 (merged to 'next' on 2013-01-18 at d584dc6)
447 + refs: use strncmp() instead of strlen() and memcmp()
449 Will merge to 'master'.
452 * ch/add-auto-submitted-in-sample-post-receive-email (2013-01-17) 1 commit
453 (merged to 'next' on 2013-01-18 at e3205db)
454 + Add Auto-Submitted header to post-receive-email
456 Will merge to 'master'.
459 * jc/remove-treesame-parent-in-simplify-merges (2013-01-17) 1 commit
460 - simplify-merges: drop merge from irrelevant side branch
462 The --simplify-merges logic did not cull irrelevant parents from a
463 merge that is otherwise not interesting with respect to the paths
466 As this touches a fairly core part of the revision traversal
467 infrastructure, it is appreciated to have an extra set of eyes for
470 Waiting for comments.
473 * jk/remote-helpers-in-python-3 (2013-01-20) 8 commits
474 - git-remote-testpy: call print as a function
475 - git-remote-testpy: don't do unbuffered text I/O
476 - git-remote-testpy: hash bytes explicitly
477 - svn-fe: allow svnrdump_sim.py to run with Python 3
478 - git_remote_helpers: use 2to3 if building with Python 3
479 - git_remote_helpers: force rebuild if python version changes
480 - git_remote_helpers: fix input when running under Python 3
481 - git_remote_helpers: allow building with Python 3
483 Prepare remote-helper test written in Python to be run with Python3.
485 Will merge to 'next'.
488 * jc/cvsimport-upgrade (2013-01-14) 8 commits
489 - t9600: adjust for new cvsimport
490 - t9600: further prepare for sharing
491 - cvsimport-3: add a sample test
492 - cvsimport: make tests reusable for cvsimport-3
493 - cvsimport: start adding cvsps 3.x support
494 - cvsimport: introduce a version-switch wrapper
495 - cvsimport: allow setting a custom cvsps (2.x) program name
496 - Makefile: add description on PERL/PYTHON_PATH
498 The most important part of this series is the addition of the new
499 cvsimport by Eric Raymond that works with cvsps 3.x. Given some
500 distros have inertia to be conservative, Git with cvsimport that
501 does not work with both 3.x will block adoption of cvsps 3.x by
502 them, and shipping Git with cvsimport that does not work with cvsps
503 2.x will block such a version of Git, so we'll do the proven "both
504 old and new are available, but we aim to deprecate and remove the
505 old one in due time" strategy that we used successfully in the
508 Will merge to 'next'.
511 * as/pre-push-hook (2013-01-18) 3 commits
512 (merged to 'next' on 2013-01-18 at 37fc4e8)
513 + Add sample pre-push hook script
514 + push: Add support for pre-push hooks
515 + hooks: Add function to check if a hook exists
517 Add an extra hook so that "git push" that is run without making
518 sure what is being pushed is sane can be checked and rejected (as
519 opposed to the user deciding not pushing).
521 Will merge to 'master'.
524 * dl/am-hg-locale (2013-01-18) 1 commit
525 - am: invoke perl's strftime in C locale
527 Datestamp recorded in "Hg" format patch was reformatted incorrectly
528 to an e-mail looking date using locale dependant strftime, causing
529 patch application to fail.
531 Will merge to 'next'.
534 * jk/config-parsing-cleanup (2013-01-14) 7 commits
535 - [DONTMERGE] reroll coming
536 - submodule: simplify memory handling in config parsing
537 - submodule: use match_config_key when parsing config
538 - userdiff: drop parse_driver function
539 - convert some config callbacks to match_config_key
540 - archive-tar: use match_config_key when parsing config
541 - config: add helper function for parsing key names
546 * mp/diff-algo-config (2013-01-16) 3 commits
547 - diff: Introduce --diff-algorithm command line option
548 - config: Introduce diff.algorithm variable
549 - git-completion.bash: Autocomplete --minimal and --histogram for git-diff
551 Add diff.algorithm configuration so that the user does not type
554 Looking better; may want tests to protect it from future breakages,
555 but otherwise it looks ready for 'next'.
557 Waiting for a follow-up to add tests.
560 * rs/archive-tar-config-parsing-fix (2013-01-14) 1 commit
561 - archive-tar: fix sanity check in config parsing
563 Configuration parsing for tar.* configuration variables were
564 broken; Peff's config parsing clean-up topic will address the same
565 breakage, so this may be superseded by that other topic.
567 Waiting for the other topic to make this unneeded.
570 * jc/custom-comment-char (2013-01-16) 1 commit
571 - Allow custom "comment char"
573 An illustration to show codepaths that need to be touched to change
574 the hint lines in the edited text to begin with something other
577 This is half my work and half by Ralf Thielow. There may still be
578 leftover '#' lurking around, though. My "git grep" says C code
579 should be already fine, but git-rebase--interactive.sh could be
580 converted (it should not matter, as the file is not really a
583 I don't know how useful this will be in real life, though.
585 Will merge to 'next'.
588 * nd/fetch-depth-is-broken (2013-01-11) 3 commits
589 (merged to 'next' on 2013-01-15 at 70a5ca7)
590 + fetch: elaborate --depth action
591 + upload-pack: fix off-by-one depth calculation in shallow clone
592 + fetch: add --unshallow for turning shallow repo into complete one
594 "git fetch --depth" was broken in at least three ways. The
595 resulting history was deeper than specified by one commit, it was
596 unclear how to wipe the shallowness of the repository with the
597 command, and documentation was misleading.
602 * jc/no-git-config-in-clone (2013-01-11) 1 commit
603 (merged to 'next' on 2013-01-15 at feeffe1)
604 + clone: do not export and unexport GIT_CONFIG
606 We stopped paying attention to $GIT_CONFIG environment that points
607 at a single configuration file from any command other than "git config"
608 quite a while ago, but "git clone" internally set, exported, and
609 then unexported the variable during its operation unnecessarily.
614 * dg/subtree-fixes (2013-01-08) 7 commits
615 - contrib/subtree: mkdir the manual directory if needed
616 - contrib/subtree: honor $(DESTDIR)
617 - contrib/subtree: fix synopsis and command help
618 - contrib/subtree: better error handling for "add"
619 - contrib/subtree: add --unannotate option
620 - contrib/subtree: use %B for split Subject/Body
621 - t7900: remove test number comments
623 contrib/subtree updates; there are a few more from T. Zheng that
624 were posted separately, with an overlap.
629 * jc/push-2.0-default-to-simple (2013-01-16) 14 commits
630 (merged to 'next' on 2013-01-16 at 23f5df2)
631 + t5570: do not assume the "matching" push is the default
632 + t5551: do not assume the "matching" push is the default
633 + t5550: do not assume the "matching" push is the default
634 (merged to 'next' on 2013-01-09 at 74c3498)
635 + doc: push.default is no longer "matching"
636 + push: switch default from "matching" to "simple"
637 + t9401: do not assume the "matching" push is the default
638 + t9400: do not assume the "matching" push is the default
639 + t7406: do not assume the "matching" push is the default
640 + t5531: do not assume the "matching" push is the default
641 + t5519: do not assume the "matching" push is the default
642 + t5517: do not assume the "matching" push is the default
643 + t5516: do not assume the "matching" push is the default
644 + t5505: do not assume the "matching" push is the default
645 + t5404: do not assume the "matching" push is the default
647 Will cook in 'next' until Git 2.0 ;-).
650 * nd/parse-pathspec (2013-01-11) 20 commits
651 . Convert more init_pathspec() to parse_pathspec()
652 . Convert add_files_to_cache to take struct pathspec
653 . Convert {read,fill}_directory to take struct pathspec
654 . Convert refresh_index to take struct pathspec
655 . Convert report_path_error to take struct pathspec
656 . checkout: convert read_tree_some to take struct pathspec
657 . Convert unmerge_cache to take struct pathspec
658 . Convert read_cache_preload() to take struct pathspec
659 . add: convert to use parse_pathspec
660 . archive: convert to use parse_pathspec
661 . ls-files: convert to use parse_pathspec
662 . rm: convert to use parse_pathspec
663 . checkout: convert to use parse_pathspec
664 . rerere: convert to use parse_pathspec
665 . status: convert to use parse_pathspec
666 . commit: convert to use parse_pathspec
667 . clean: convert to use parse_pathspec
668 . Export parse_pathspec() and convert some get_pathspec() calls
669 . Add parse_pathspec() that converts cmdline args to struct pathspec
670 . pathspec: save the non-wildcard length part
672 Uses the parsed pathspec structure in more places where we used to
673 use the raw "array of strings" pathspec.
675 Ejected from 'pu' for now; will take a look at the rerolled one
676 later ($gmane/213340).
679 * jc/doc-maintainer (2013-01-03) 2 commits
680 (merged to 'next' on 2013-01-11 at f35d582)
681 + howto/maintain: mark titles for asciidoc
682 + Documentation: update "howto maintain git"
684 Describe tools for automation that were invented since this
685 document was originally written.
688 * mo/cvs-server-updates (2012-12-09) 18 commits
689 (merged to 'next' on 2013-01-08 at 75e2d11)
690 + t9402: Use TABs for indentation
691 + t9402: Rename check.cvsCount and check.list
692 + t9402: Simplify git ls-tree
693 + t9402: Add missing &&; Code style
694 + t9402: No space after IO-redirection
695 + t9402: Dont use test_must_fail cvs
696 + t9402: improve check_end_tree() and check_end_full_tree()
697 + t9402: sed -i is not portable
698 + cvsserver Documentation: new cvs ... -r support
699 + cvsserver: add t9402 to test branch and tag refs
700 + cvsserver: support -r and sticky tags for most operations
701 + cvsserver: Add version awareness to argsfromdir
702 + cvsserver: generalize getmeta() to recognize commit refs
703 + cvsserver: implement req_Sticky and related utilities
704 + cvsserver: add misc commit lookup, file meta data, and file listing functions
705 + cvsserver: define a tag name character escape mechanism
706 + cvsserver: cleanup extra slashes in filename arguments
707 + cvsserver: factor out git-log parsing logic
709 Various git-cvsserver updates.
711 Will merge to 'master'.
714 * as/check-ignore (2013-01-16) 13 commits
715 (merged to 'next' on 2013-01-18 at ef45aff)
716 + clean.c, ls-files.c: respect encapsulation of exclude_list_groups
717 (merged to 'next' on 2013-01-14 at 9df2afc)
718 + t0008: avoid brace expansion
719 + add git-check-ignore sub-command
720 + setup.c: document get_pathspec()
721 + add.c: extract new die_if_path_beyond_symlink() for reuse
722 + add.c: extract check_path_for_gitlink() from treat_gitlinks() for reuse
723 + pathspec.c: rename newly public functions for clarity
724 + add.c: move pathspec matchers into new pathspec.c for reuse
725 + add.c: remove unused argument from validate_pathspec()
726 + dir.c: improve docs for match_pathspec() and match_pathspec_depth()
727 + dir.c: provide clear_directory() for reclaiming dir_struct memory
728 + dir.c: keep track of where patterns came from
729 + dir.c: use a single struct exclude_list per source of excludes
731 Add a new command "git check-ignore" for debugging .gitignore
734 The variable names may want to get cleaned up but that can be done
737 Will merge to 'master'.
740 * nd/retire-fnmatch (2013-01-01) 7 commits
741 (merged to 'next' on 2013-01-07 at ab31f9b)
742 + Makefile: add USE_WILDMATCH to use wildmatch as fnmatch
743 + wildmatch: advance faster in <asterisk> + <literal> patterns
744 + wildmatch: make a special case for "*/" with FNM_PATHNAME
745 + test-wildmatch: add "perf" command to compare wildmatch and fnmatch
746 + wildmatch: support "no FNM_PATHNAME" mode
747 + wildmatch: make dowild() take arbitrary flags
748 + wildmatch: rename constants and update prototype
750 Originally merged to 'next' on 2013-01-04
752 Replace our use of fnmatch(3) with a more feature-rich wildmatch.
753 A handful patches at the bottom have been moved to nd/wildmatch to
754 graduate as part of that branch, before this series solidifies.
756 Will merge to 'master'.
759 * mb/gitweb-highlight-link-target (2012-12-20) 1 commit
760 - Highlight the link target line in Gitweb using CSS
766 * bc/append-signed-off-by (2013-01-21) 10 commits
767 - Unify appending signoff in format-patch, commit and sequencer
768 - format-patch: update append_signoff prototype
769 - t4014: more tests about appending s-o-b lines
770 - sequencer.c: teach append_signoff to avoid adding a duplicate newline
771 - sequencer.c: teach append_signoff how to detect duplicate s-o-b
772 - sequencer.c: always separate "(cherry picked from" from commit body
773 - sequencer.c: recognize "(cherry picked from ..." as part of s-o-b footer
774 - t/t3511: add some tests of 'cherry-pick -s' functionality
775 - t/test-lib-functions.sh: allow to specify the tag name to test_commit
776 - sequencer.c: remove broken support for rfc2822 continuation in footer
780 Seems that we will see another round.
782 --------------------------------------------------
785 * er/replace-cvsimport (2013-01-12) 7 commits
786 . t/lib-cvs: cvsimport no longer works without Python >= 2.7
787 . t9605: test for cvsps commit ordering bug
788 . t9604: fixup for new cvsimport
789 . t9600: fixup for new cvsimport
790 . t/lib-cvs.sh: allow cvsps version 3.x.
791 . t/t960[123]: remove leftover scripts
792 . cvsimport: rewrite to use cvsps 3.x to fix major bugs
794 Rerolled as jc/cvsimport-upgrade.
797 * jc/valgrind-memcmp-bsearch (2013-01-14) 1 commit
798 . ignore memcmp() overreading in bsearch() callback
800 Squelch false positive in valgrind tests; made unnecessary by
801 rewriting the callsite that confuses the tool.