git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Cc: pclouds@gmail.com
Subject: [PATCH 0/9] magic pathspec updates
Date: Mon,  9 May 2011 22:51:09 -0700	[thread overview]
Message-ID: <1305006678-4051-1-git-send-email-gitster@pobox.com> (raw)
In-Reply-To: <1304852906-29272-1-git-send-email-pclouds@gmail.com>

This is a series to update the magic pathspec topic, primarily the area
around the empty ':' pathspec.

The failing tests from Duy's are mostly due to the fact that this round is
not converting the codebase fully and still use char **pathspec in places.

As get_pathspec() gives only a munged string for pattern matching, while
losing the original pathspec information such as up to which point in the
resulting string came from the prefix (hence it must match literally even
under icase) or what the original string looked like, there is no way for
these tests, especially the ones to check failure mode and the information
in the error report, to pass.

As NEEDSWORK comment in prefix_pathspec() says, all the callers need to be
converted to use "struct pathspec" interface, so that they can preserve
the original information for error reporting purposes (and also to pass
to external subprocesses --- see how pathspec is used to spawn the "add -i"
helper for example).

Other than that, I think the current code is probably more or less safe to
dogfood with known rough edges.

Junio C Hamano (8):
  grep: use get_pathspec() correctly
  get_pathspec(): an empty ':' pathspec should stand alone
  count_pathspec(): return number of elements in pathspec
  add ":" is a pathspec that is too wide
  git rm ":" is like specifying nothing
  clean ":" is like specifying nothing
  mv ":" ":" is like moving nothing from nowhere to nowhere
  checkout ":" is not giving any pathspec

Nguyễn Thái Ngọc Duy (1):
  t3703, t4208: add test cases for magic pathspec

 Documentation/glossary-content.txt |    3 +
 builtin/add.c                      |    4 +-
 builtin/checkout.c                 |    9 +---
 builtin/clean.c                    |    1 +
 builtin/grep.c                     |    8 +---
 builtin/mv.c                       |    6 ++-
 builtin/rm.c                       |    4 +-
 cache.h                            |    3 +-
 setup.c                            |   18 ++++++++-
 t/t3703-add-magic-pathspec.sh      |   78 ++++++++++++++++++++++++++++++++++++
 t/t4208-log-magic-pathspec.sh      |   45 +++++++++++++++++++++
 11 files changed, 160 insertions(+), 19 deletions(-)
 create mode 100755 t/t3703-add-magic-pathspec.sh
 create mode 100755 t/t4208-log-magic-pathspec.sh

-- 
1.7.5.1.290.g1b565

  parent reply	other threads:[~2011-05-10  5:51 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-07 10:35 [PATCH] t3703: add test cases for pathspec magic Nguyễn Thái Ngọc Duy
2011-05-07 18:56 ` Junio C Hamano
2011-05-08  9:59   ` Nguyen Thai Ngoc Duy
2011-05-08 11:08 ` [PATCH] t3703, t4208: add test cases for magic pathspec Nguyễn Thái Ngọc Duy
2011-05-08 17:59   ` Junio C Hamano
2011-05-09 12:33     ` Nguyen Thai Ngoc Duy
2011-05-09 16:18       ` Junio C Hamano
2011-05-09 22:06       ` Junio C Hamano
2011-05-10  5:51   ` Junio C Hamano [this message]
2011-05-10  5:51     ` [PATCH 1/9] grep: use get_pathspec() correctly Junio C Hamano
2011-05-10  5:51     ` [PATCH 2/9] get_pathspec(): an empty ':' pathspec should stand alone Junio C Hamano
2011-05-10  5:51     ` [PATCH 3/9] count_pathspec(): return number of elements in pathspec Junio C Hamano
2011-05-10 13:29       ` Nguyen Thai Ngoc Duy
2011-05-10  5:51     ` [PATCH 4/9] add ":" is a pathspec that is too wide Junio C Hamano
2011-05-10  5:51     ` [PATCH 5/9] git rm ":" is like specifying nothing Junio C Hamano
2011-05-10  5:51     ` [PATCH 6/9] clean " Junio C Hamano
2011-05-10 15:14       ` Thiago Farina
2011-05-10  5:51     ` [PATCH 7/9] mv ":" ":" is like moving nothing from nowhere to nowhere Junio C Hamano
2011-05-10 13:30       ` Nguyen Thai Ngoc Duy
2011-05-10  5:51     ` [PATCH 8/9] checkout ":" is not giving any pathspec Junio C Hamano
2011-05-10  5:51     ` [PATCH 9/9] t3703, t4208: add test cases for magic pathspec Junio C Hamano
2011-05-12  8:21       ` [PATCH jc/magic-pathspec] t3703: Skip tests using directory name ":" on Windows Johannes Sixt
2011-05-29 18:29       ` [PATCH 9/9] t3703, t4208: add test cases for magic pathspec Ævar Arnfjörð Bjarmason
2011-05-29 20:31         ` Junio C Hamano
2011-05-29 20:36           ` Ævar Arnfjörð Bjarmason
2011-05-10 13:47     ` [PATCH 0/9] magic pathspec updates Nguyen Thai Ngoc Duy
2011-05-10 17:07       ` Junio C Hamano
2011-05-11 12:11         ` Nguyen Thai Ngoc Duy

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:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=1305006678-4051-1-git-send-email-gitster@pobox.com \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=pclouds@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* 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

	https://80x24.org/mirrors/git.git

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).