git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCHv3 0/9] Removing deprecated parsing macros

From
Stefan Beller <stefanbeller@googlemail.com>
Date
Aug 3, 2013, 11:51 UTC
Message-ID
<1375530686-2309-1-git-send-email-stefanbeller@googlemail.com>
Suggested changes by Eric Sunshine included.

Within the builtin/ folder all occurrences of OPT_BOOLEAN have been removed. Now we only need to review the usage of it in parse-options as used in OPT__VERBOSE, OPT__QUIET, OPT__DRY_RUN and OPT__FORCE. Most likely we could just use OPT_SET_INT there and then OPT_BOOLEAN is gone.

The patch 1 and 2 are not intended to change any semantics, but were the most work, because of the checking for each place not changing the semantics.

Patch 3 introduces -q the shortform of --quiet for log and format-patch 
Patch 4,5 are unspectacular, just improving readability.

Patch 6 is indeed the only occurence, where I needed to use OPT_COUNTUP for OPT_BOOLEAN. Personally I'd change it there as well, but it's plumbing.

Patch 7 makes git config a little more flexible (allowing --global multiple times).

Patch 8 is a change in the plumbing layer, what I'd call a bugfix, not urgent, but still.

Patch 9 introduces the new OPT_CMDMODE to revert. Junio suggested to change the OPT_CMDMODE a little and use the short parameter as the value assigned to the command variable. This patch shows, why it might not be a good idea, as the options there do not have short parameters.

Stefan Beller (9):
  Remove deprecated OPTION_BOOLEAN for parsing arguments
  Replace deprecated OPT_BOOLEAN by OPT_BOOL
  log, format-patch: parsing uses OPT__QUIET
  checkout: remove superfluous local variable
  branch, commit, name-rev: ease up boolean conditions
  hash-object: Replace stdin parsing OPT_BOOLEAN by OPT_COUNTUP
  config parsing options: allow one flag multiple times
  checkout-index: Fix negations of even numbers of -n
  revert: use the OPT_CMDMODE for parsing, reducing code
 Documentation/git-format-patch.txt |  1 +
 builtin/apply.c                    | 24 +++++++--------
 builtin/bisect--helper.c           |  8 ++---
 builtin/blame.c                    |  8 ++---
 builtin/branch.c                   | 13 ++++----
 builtin/check-attr.c               |  8 ++---
 builtin/check-ignore.c             | 12 ++++----
 builtin/checkout-index.c           |  8 ++---
 builtin/checkout.c                 | 27 ++++++++---------
 builtin/clean.c                    |  6 ++--
 builtin/clone.c                    | 23 +++++++-------
 builtin/commit.c                   | 48 ++++++++++++++---------------
 builtin/config.c                   |  8 ++---
 builtin/describe.c                 | 20 ++++++------
 builtin/fast-export.c              | 10 +++---
 builtin/fetch.c                    | 24 +++++++--------
 builtin/fsck.c                     | 16 +++++-----
 builtin/gc.c                       |  4 +--
 builtin/grep.c                     | 38 +++++++++++------------
 builtin/hash-object.c              |  8 ++---
 builtin/log.c                      | 17 +++++------
 builtin/ls-files.c                 | 24 +++++++--------
 builtin/ls-tree.c                  |  6 ++--
 builtin/merge-base.c               | 10 +++---
 builtin/merge-file.c               |  2 +-
 builtin/merge.c                    | 12 ++++----
 builtin/mv.c                       |  2 +-
 builtin/name-rev.c                 | 14 ++++-----
 builtin/notes.c                    | 12 ++++----
 builtin/push.c                     |  6 ++--
 builtin/remote.c                   | 28 ++++++++---------
 builtin/replace.c                  |  6 ++--
 builtin/reset.c                    |  2 +-
 builtin/rev-parse.c                |  4 +--
 builtin/revert.c                   | 62 +++++++++-----------------------------
 builtin/rm.c                       |  6 ++--
 builtin/shortlog.c                 | 12 ++++----
 builtin/show-branch.c              | 28 ++++++++---------
 builtin/show-ref.c                 | 15 +++++----
 builtin/tag.c                      |  4 +--
 builtin/update-ref.c               |  4 +--
 parse-options.h                    |  5 ++-
 42 files changed, 278 insertions(+), 317 deletions(-)
-- 
1.8.4.rc0.16.g7fca822.dirty
Next: Stefan Beller
Message 1 of 27 in “[PATCHv3 0/9] Removing deprecated parsing macros”
  1. Stefan BellerAug 3, 2013
  2. 1/9 Remove deprecated OPTION_BOOLEAN for parsing argumentsStefan Beller, Aug 3, 2013
  3. 2/9 Replace deprecated OPT_BOOLEAN by OPT_BOOLStefan Beller, Aug 3, 2013
  4. 3/9 log, format-patch: parsing uses OPT__QUIETStefan Beller, Aug 3, 2013
  5. 4/9 checkout: remove superfluous local variableStefan Beller, Aug 3, 2013
  6. 5/9 branch, commit, name-rev: ease up boolean conditionsStefan Beller, Aug 3, 2013
  7. 6/9 hash-object: Replace stdin parsing OPT_BOOLEAN by OPT_COUNTUPStefan Beller, Aug 3, 2013
  8. Junio C HamanoAug 5, 2013
  9. 7/9 config parsing options: allow one flag multiple timesStefan Beller, Aug 3, 2013
  10. Junio C HamanoAug 5, 2013
  11. 8/9 checkout-index: Fix negations of even numbers of -nStefan Beller, Aug 3, 2013
  12. 9/9 revert: use the OPT_CMDMODE for parsing, reducing codeStefan Beller, Aug 3, 2013
  13. Stefan BellerAug 3, 2013
  14. Junio C HamanoAug 6, 2013
  15. Stefan BellerAug 6, 2013
  16. branch, commit, name-rev: ease up boolean conditionsStefan Beller, Aug 6, 2013
  17. Eric SunshineAug 6, 2013
  18. Stefan BellerAug 6, 2013
  19. branch, commit, name-rev: ease up boolean conditionsStefan Beller, Aug 6, 2013
  20. Junio C HamanoAug 6, 2013
  21. 0/4 Update built-in parseopt macrosJunio C Hamano, Aug 6, 2013
  22. 1/4 OPT__QUIET(): switch from count-up to true boolJunio C Hamano, Aug 6, 2013
  23. 2/4 OPT__VERBOSE(): clarify its expected use by using OPT_COUNTUPJunio C Hamano, Aug 6, 2013
  24. 3/4 OPT__DRY_RUN(): use OPT_BOOL, not OPT_BOOLEANJunio C Hamano, Aug 6, 2013
  25. 4/4 OPT__FORCE(): clarify its expected use by using OPT_COUNTUPJunio C Hamano, Aug 6, 2013
  26. Stefan BellerAug 7, 2013
  27. Junio C HamanoAug 7, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.