zsh-workers
 help / color / Atom feed
From: Andras Korn <korn-zshworkers@elan.rulez.org>
To: zsh-workers@zsh.org
Subject: subversion 1.13 breaks argument completion in zsh 5.7.1
Date: Sun, 9 Feb 2020 17:27:55 +0100
Message-ID: <20200209162755.jzinamld32c3dr6v@hellgate> (raw)

Hi,

I'm not subscribed; please Cc me if necessary.

zsh apparently generates completion candidates for "svn" based on the output
of "svn --help", which changed between subversion 1.10 and subversion 1.13.

This breaks argument completion in zsh 5.7.1.

svn --help 1.10 output:

usage: svn <subcommand> [options] [args]
Subversion command-line client.
Type 'svn help <subcommand>' for help on a specific subcommand.
Type 'svn --version' to see the program version and RA modules,
     'svn --version --verbose' to see dependency versions as well,
     'svn --version --quiet' to see just the version number.

Most subcommands take file and/or directory arguments, recursing
on the directories.  If no arguments are supplied to such a
command, it recurses on the current directory (inclusive) by default.

Available subcommands:
   add
   auth
   blame (praise, annotate, ann)
   cat
   changelist (cl)
   checkout (co)
   cleanup
   commit (ci)
   copy (cp)
   delete (del, remove, rm)
   diff (di)
   export
   help (?, h)
   import
   info
   list (ls)
   lock
   log
   merge
   mergeinfo
   mkdir
   move (mv, rename, ren)
   patch
   propdel (pdel, pd)
   propedit (pedit, pe)
   propget (pget, pg)
   proplist (plist, pl)
   propset (pset, ps)
   relocate
   resolve
   resolved
   revert
   status (stat, st)
   switch (sw)
   unlock
   update (up)
   upgrade
   x-shelve (shelve)
   x-unshelve (unshelve)
   x-shelves (shelves)

Subversion is a tool for version control.
For additional information, see http://subversion.apache.org/

completion candidates:

% svn
completing svn command
add         blame       changelist  cleanup     copy        diff        help        info        lock        merge       mkdir       patch       propedit    proplist    relocate    resolved    status      unlock      upgrade     x-shelves                                                     
auth        cat         checkout    commit      delete      export      import      list        log         mergeinfo   move        propdel     propget     propset     resolve     revert      switch      update      x-shelve    x-unshelve                                                    

option candidates:
% svn up --
completing option
--accept                                                                                     -- automatic conflict resolution action                                                                                                                                                                       
--changelist                  --cl                                                           -- change list                                                                                                                                                                                                
--config-dir                                                                                 -- config dir                                                                                                                                                                                                 
--config-option               --editor-cmd  --diff3-cmd  --password  --username  --revision  -- arg                                                                                                                                                                                                        
--depth                                                                                      -- operation depth (how far to recurse)                                                                                                                                                                       
--set-depth                                                                                  -- make working copy deeper or shallower                                                                                                                                                                      
--trust-server-cert-failures                                                                 -- failures                                                                                                                                                                                                   
--force                          --force-interactive              --ignore-externals               --no-auth-cache                  --non-interactive                --non-recursive                  --parents                        --quiet                          --trust-server-cert            

svn --help 1.13 output:

usage: svn <subcommand> [options] [args]
Subversion command-line client.
Type 'svn help <subcommand>' for help on a specific subcommand.
Type 'svn --version' to see the program version and RA modules,
     'svn --version --verbose' to see dependency versions as well,
     'svn --version --quiet' to see just the version number.

Most subcommands take file and/or directory arguments, recursing
on the directories.  If no arguments are supplied to such a
command, it recurses on the current directory (inclusive) by default.

Available subcommands:
   add
   auth
   blame (praise, annotate, ann)
   cat
   changelist (cl)
   checkout (co)
   cleanup
   commit (ci)
   copy (cp)
   delete (del, remove, rm)
   diff (di)
   export
   help (?, h)
   import
   info
   list (ls)
   lock
   log
   merge
   mergeinfo
   mkdir
   move (mv, rename, ren)
   patch
   propdel (pdel, pd)
   propedit (pedit, pe)
   propget (pget, pg)
   proplist (plist, pl)
   propset (pset, ps)
   relocate
   resolve
   resolved
   revert
   status (stat, st)
   switch (sw)
   unlock
   update (up)
   upgrade

(Use '-v' to show experimental subcommands.)

Subversion is a tool for version control.
For additional information, see http://subversion.apache.org/

completion candidates:

% svn
Completing svn command
add           blame         changelist    cleanup       copy          diff          export        import        list          log           mergeinfo     move          propdel       propget       propset       resolve       revert        switch        unlock        upgrade                   
auth          cat           checkout      commit        delete        experimental  help          info          lock          merge         mkdir         patch         propedit      proplist      relocate      resolved      status        to            update        \(Use                     

("experimental" and "\(Use" are bogus)

option candidates:

% svn up --
Completing option
--accept                               -- automatic conflict resolution action                                                                                                                                                                                                                             
--changelist  --cl                     -- change list                                                                                                                                                                                                                                                      
--depth                                -- operation depth (how far to recurse)                                                                                                                                                                                                                             
--editor-cmd  --diff3-cmd  --revision  -- arg                                                                                                                                                                                                                                                              
--set-depth                            -- make working copy deeper or shallower                                                                                                                                                                                                                            
--adds-as-modification                           --force                                          --ignore-externals                               --non-recursive                                  --parents                                        --quiet                                        

(e.g. --username and --no-auth-cache are missing)

András

-- 
               I, for one, am a great fan of Roman numeral puns.

             reply index

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-09 16:27 Andras Korn [this message]
2020-02-10  2:59 ` Daniel Shahaf

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

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

  git send-email \
    --in-reply-to=20200209162755.jzinamld32c3dr6v@hellgate \
    --to=korn-zshworkers@elan.rulez.org \
    --cc=zsh-workers@zsh.org \
    /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

zsh-workers

Archives are clonable: git clone --mirror http://inbox.vuxu.org/zsh-workers

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://inbox.vuxu.org/vuxu.archive.zsh.workers


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git