Accepting request 760990 from home:marxin:branches:shells

- Update to version 2.10:
  * perltidy: associate *.t (#338)
  * perl: fix completion with space between option and argument
  * _variables: add TERM and LC_* completion (#353)
  * autotools: Replace pkgdatadir with datadir
  * pkg-config: Relative paths
  * pkg-config: generate Name from autotools PACKAGE
  * ssh: option and argument completion updates (#332)
  * test_arp: Skip if ARP tables are empty
  * test_chromium_browser: Skip test_2 if 'chromium-browser --help'
    fails
  * test_rpm2tgz: Fix expected output
  * cppcheck: Add new standards to --std option. (#356)
  * apt-get: fix pkg version completion if it contains a colon (#351)
  * test: bump black to >=19.10b0
  * ssh, scp, sftp, ssh-copy-id, curl: improve identity file
    completion
  * update-rc.d: indentation fix
  * update-rc.d: remove dead code
  * screen: add serial device basic arg (non)completion
  * screen: add //telnet completion
  * test: add some trivial perl -E/-e cases
  * perl: indentation fixes
  * curl: make @filename completion do the right thing with dirs
  * _filedir: avoid duplicate dirs internally, and a compgen -d call
    for files
  * _filedir: remove unused $x
  * bash_completion.sh: shellcheck SC2086 fixes
  * test: shellcheck config cleanups
  * shellcheck: add some option arg (non)completions

OBS-URL: https://build.opensuse.org/request/show/760990
OBS-URL: https://build.opensuse.org/package/show/shells/bash-completion?expand=0&rev=102
This commit is contained in:
Dr. Werner Fink 2020-01-07 10:08:21 +00:00 committed by Git OBS Bridge
parent d34f86a079
commit 04f0acee3f
15 changed files with 1202 additions and 195 deletions

View File

@ -4,15 +4,15 @@
--- bash_completion
+++ bash_completion 2017-07-04 07:44:47.556933294 +0000
@@ -551,6 +551,7 @@ _filedir()
@@ -555,6 +555,7 @@ _filedir()
local IFS=$'\n'
_tilde "$cur" || return
+ _dollar "$cur" || return
local -a toks
local x tmp
@@ -979,6 +980,41 @@ _tilde()
local reset
@@ -1006,6 +1007,41 @@ _tilde()
return $result
}
@ -54,7 +54,7 @@
# Expand variable starting with tilde (~)
# We want to expand ~foo/... to /home/foo/... to avoid problems when
@@ -1666,7 +1702,16 @@ complete -F _known_hosts traceroute trac
@@ -1720,7 +1756,16 @@ complete -F _known_hosts traceroute traceroute6 \
_cd()
{
local cur prev words cword

View File

@ -25,7 +25,7 @@ Reviewed-by: Lidong Zhong <lzhong@suse.com>
diff --git a/completions/lvm b/completions/lvm
--- a/completions/lvm
+++ b/completions/lvm
@@ -6,27 +6,41 @@
@@ -6,27 +6,41 @@ _lvm_filedir()
_filedir
}
@ -37,41 +37,41 @@ diff --git a/completions/lvm b/completions/lvm
+
_lvm_volumegroups()
{
- COMPREPLY=( $(compgen -W "$( vgscan 2>/dev/null | \
- COMPREPLY=( $(compgen -W "$(vgscan 2>/dev/null | \
+ local verbose
+ _lvm_verbose && verbose=-v
+ COMPREPLY=( $(compgen -W "$( vgscan $verbose 2>/dev/null | \
command sed -n -e 's|.*Found.*"\(.*\)".*$|\1|p' )" -- "$cur" ) )
command sed -n -e 's|.*Found.*"\(.*\)".*$|\1|p' )" -- "$cur") )
}
_lvm_physicalvolumes_all()
{
- COMPREPLY=( $(compgen -W "$( pvscan 2>/dev/null | \
- COMPREPLY=( $(compgen -W "$(pvscan 2>/dev/null | \
+ local verbose
+ _lvm_verbose && verbose=-v
+ COMPREPLY=( $(compgen -W "$( pvscan $verbose 2>/dev/null | \
command sed -n -e 's|^.*PV \([^ ]*\) .*|\1|p' )" -- "$cur" ) )
command sed -n -e 's|^.*PV \([^ ]*\) .*|\1|p' )" -- "$cur") )
}
_lvm_physicalvolumes()
{
- COMPREPLY=( $(compgen -W "$( pvscan 2>/dev/null | \
- COMPREPLY=( $(compgen -W "$(pvscan 2>/dev/null | \
+ local verbose
+ _lvm_verbose && verbose=-v
+ COMPREPLY=( $(compgen -W "$( pvscan $verbose 2>/dev/null | \
command sed -n -e 's|^.*PV \(.*\) VG.*$|\1|p' )" -- "$cur" ) )
command sed -n -e 's|^.*PV \(.*\) VG.*$|\1|p' )" -- "$cur") )
}
_lvm_logicalvolumes()
{
- COMPREPLY=( $(compgen -W "$( lvscan 2>/dev/null | \
- COMPREPLY=( $(compgen -W "$(lvscan 2>/dev/null | \
+ local verbose
+ _lvm_verbose && verbose=-v
+ COMPREPLY=( $(compgen -W "$( lvscan $verbose 2>/dev/null | \
command sed -n -e "s|^.*'\(.*\)'.*$|\1|p" )" -- "$cur" ) )
command sed -n -e "s|^.*'\(.*\)'.*$|\1|p" )" -- "$cur") )
if [[ $cur == /dev/mapper/* ]]; then
_filedir
@@ -394,7 +408,7 @@
@@ -385,7 +399,7 @@ _vgreduce()
if [[ $args -eq 0 ]]; then
_lvm_volumegroups
else
@ -80,7 +80,7 @@ diff --git a/completions/lvm b/completions/lvm
fi
fi
} &&
@@ -709,7 +723,7 @@
@@ -699,7 +713,7 @@ _lvcreate()
if [[ $args -eq 0 ]]; then
_lvm_volumegroups
else

View File

@ -4,10 +4,11 @@
--- bash_completion.sh.in
+++ bash_completion.sh.in 2017-07-04 07:42:39.171304553 +0000
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
# shellcheck shell=sh disable=SC1091,SC2039,SC2166
# Check for interactive bash and that we haven't already been sourced.
-if [ -n "${BASH_VERSION-}" -a -n "${PS1-}" -a -z "${BASH_COMPLETION_VERSINFO-}" ]; then
-if [ "x${BASH_VERSION-}" != x -a "x${PS1-}" != x -a "x${BASH_COMPLETION_VERSINFO-}" = x ]; then
+if [[ -n "${BASH_VERSION-}" && $- = *i* && -z "${BASH_COMPLETION_VERSINFO-}" ]]; then
# Check for recent enough version of bash.
if [ ${BASH_VERSINFO[0]} -gt 4 ] || \
if [ "${BASH_VERSINFO[0]}" -gt 4 ] || \

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:123c17998e34b937ce57bb1b111cd817bc369309e9a8047c0bcf06ead4a3ec92
size 310764

View File

@ -4,7 +4,7 @@
--- bash_completion
+++ bash_completion 2017-07-04 07:40:15.221922680 +0000
@@ -1881,12 +1881,13 @@ _longopt()
@@ -1938,12 +1938,13 @@ _longopt()
fi
}
# makeinfo and texi2dvi are defined elsewhere.
@ -21,5 +21,5 @@
+ texindex touch tr unexpand uniq vdir wc who
+complete -F _longopt -o default env netstat seq uname units
declare -A _xspecs
_filedir_xspec()
# declare only knows -g in bash >= 4.2.
if [[ ${BASH_VERSINFO[0]} -gt 4 || ${BASH_VERSINFO[1]} -ge 2 ]]; then

View File

@ -6,21 +6,21 @@ Due legal issue the unRAR part of 7z had been removed (boo#1077978, boo#1090515)
--- completions/7z
+++ completions/7z 2018-04-24 09:17:49.392549710 +0000
@@ -75,7 +75,7 @@ _7z()
@@ -71,7 +71,7 @@ _7z()
else
COMPREPLY=( $( compgen -P${cur:0:2} -W '7z apm arj bzip2 cab
COMPREPLY=( $(compgen -P${cur:0:2} -W '7z apm arj bzip2 cab
chm cpio cramfs deb dmg elf fat flv gzip hfs iso lzh lzma
- lzma86 macho mbr mslz mub nsis ntfs pe ppmd rar rpm
+ lzma86 macho mbr mslz mub nsis ntfs pe ppmd rpm
squashfs swf swfc tar udf vhd wim xar xz z zip' \
-- "${cur:2}" ) )
-- "${cur:2}") )
fi
@@ -101,7 +101,7 @@ _7z()
_filedir_xspec unzip
@@ -105,7 +105,7 @@ _7z()
# (assumption: extensions are all lowercase)
[[ $mode == w ]] &&
_filedir '@(7z|bz2|swf|?(g)tar|?(t)[bglx]z|tb?(z)2|wim)' ||
- _filedir '@(7z|arj|bz2|cab|chm|cpio|deb|dmg|flv|gem|img|iso|lz[ah]|lzma?(86)|pmd|[rx]ar|rpm|sw[fm]|?(g)tar|taz|?(t)[bglx]z|tb?(z)2|vhd|wim|Z)'
+ _filedir '@(7z|arj|bz2|cab|chm|cpio|deb|dmg|flv|gem|img|iso|lz[ah]|lzma?(86)|pmd|xar|rpm|sw[fm]|?(g)tar|taz|?(t)[bglx]z|tb?(z)2|vhd|wim|Z)'
- _filedir '@(7z|arj|bz2|cab|chm|cpio|deb|dmg|flv|gem|img|iso|lz[ah]|lzma?(86)|msi|pmd|[rx]ar|rpm|sw[fm]|?(g)tar|taz|?(t)[bglx]z|tb?(z)2|vhd|wim|Z)'
+ _filedir '@(7z|arj|bz2|cab|chm|cpio|deb|dmg|flv|gem|img|iso|lz[ah]|lzma?(86)|msi|pmd|xar|rpm|sw[fm]|?(g)tar|taz|?(t)[bglx]z|tb?(z)2|vhd|wim|Z)'
else
if [[ ${words[1]} == d ]]; then
local IFS=$'\n'

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c01f5570f5698a0dda8dc9cfb2a83744daa1ec54758373a6e349bd903375f54d
size 286128

View File

@ -1,3 +1,590 @@
-------------------------------------------------------------------
Sun Jan 5 17:01:37 UTC 2020 - Martin Liška <mliska@suse.cz>
- Update to version 2.10:
* perltidy: associate *.t (#338)
* perl: fix completion with space between option and argument
* _variables: add TERM and LC_* completion (#353)
* autotools: Replace pkgdatadir with datadir
* pkg-config: Relative paths
* pkg-config: generate Name from autotools PACKAGE
* ssh: option and argument completion updates (#332)
* test_arp: Skip if ARP tables are empty
* test_chromium_browser: Skip test_2 if 'chromium-browser --help'
fails
* test_rpm2tgz: Fix expected output
* cppcheck: Add new standards to --std option. (#356)
* apt-get: fix pkg version completion if it contains a colon (#351)
* test: bump black to >=19.10b0
* ssh, scp, sftp, ssh-copy-id, curl: improve identity file
completion
* update-rc.d: indentation fix
* update-rc.d: remove dead code
* screen: add serial device basic arg (non)completion
* screen: add //telnet completion
* test: add some trivial perl -E/-e cases
* perl: indentation fixes
* curl: make @filename completion do the right thing with dirs
* _filedir: avoid duplicate dirs internally, and a compgen -d call
for files
* _filedir: remove unused $x
* bash_completion.sh: shellcheck SC2086 fixes
* test: shellcheck config cleanups
* shellcheck: add some option arg (non)completions
* test: fix cpio users test in presence of usernames with whitespace
* test: python typing fixes
* test: add minimal mypy config
* .gitignore: mypy cache
* makepkg: fix option completion
* test: mark dcop and mr testcases requiring the cmd as such
* CONTRIBUTING: disable e-mail bug gateway due to spam
* carton: new completion
* op: direct command parsing stderr to /dev/null
* test: adjust java expectations based on whether jars can be listed
* valgrind: look tool names from lib/*-linux-gnu dirs too
* test: xfail locale-gen option completion if --help is not
available
* _sysvdirs: always return 0
* java: don't assume jar is installed
* travis: test with Debian 10
* wine: install for wine-development and wine-stable too
* travis: generate dist tarball on alpine
* dmypy: new completion
* test: add require_longopt xfail helper, use it
* test: mark more tests that parse command output as requiring
command
* sysctl: invoke completed sysctl instead of one from path to get
variables
* screen, smartctl, update-alternatives: _parse_help, drop hardcoded
option list
* lintian-info: _parse_help, add more option arg (non)completions
* gprof: _parse_usage, drop hardcoded option list
* test: fix retrieving command to test from request
* travis: pass NETWORK as env var, so we can actually use it
* test: xfail MAC address completion without networking
* test: ignore _makepkg_bootstrap in makepkg test env
* test: hush flake8-bugbear B010
* test: don't sort expected completion lists under the hood
* test: add bunch of basic option parsing test cases
* test: always run tests which don't require tested command
* test: explodepkg and upgradepkg test fixes
* test: mark sbcl-mt xfail due to whitespace split issues
* _terms: search directly from various terminfo dirs
* _terms: combine and simplify somewhat
* pkg-get: fix $i leak
* pkgutil: fix $i leak
* test: portinstall/upgrade test case and setup fixes
* lvm pv*, vg*: parse help instead of hardcoding option list
* ipv6calc: parse help instead of hardcoding option list
* test: avoid some sed -r/-E runLint false positives
* test: use sh +* as ccache command test case
* java: make jar/zip listing work with unzip
* test: installpkg test fixes
* test: fix acroread fixture dir
* test: remove unnecessary returns after pytest.skip
* test: avoid gnome-mplayer core dump on Ubuntu 14
* xvfb-run: new completion
* test: skip gssdp-discover --message-type when option not available
* test: expect failures for bc without --help useful with _longopt
* test: don't expect a .tox dir in fixture
* test: drop sourcing our no longer existing profile.d script
* tox: include -- in option completions
* tox: complete defaults after a --
* gssdp-discover: new completion
* test: register our pytest markers to hush warnings from 4.5+
* test: fix required pytest version
* ip: invoke the tool as $1
* README: drop distro badges, link to Repology instead
* chromium-browser: add --proxy-server arg completion
* test: source our profile.d test env script in docker
* influx: new completion
* README: badge title tweaks
* tox: do simple parse on tox.ini if --listenvs* yields nothing
* test: add basic tox fixture
* man: fall back to _parse_usage for _parse_help
* test_wsimport: xfail options test on unparseable -help
* test: don't try to install black on Python < 3.6
* pgrep: fix fallback to _parse_usage
* test: xfail unparseable mock and munin-node-configure --help cases
* test_pwdx: xfail more unparseable help cases
* build: make pytest executable configurable, look for pytest-3 too
* test: enforce minimum pytest version
* test: zopflipng flake8 fix
* test: xfail getent and pwdx option completions with unparseable
--help
* test: add more basic _parse_help use test cases
* test: add bunch of basic _parse_help use test cases
* .gitignore: add configure.lineno
* badblocks: fix $i leak
* postfix: option completion is expected to fail at the moment
* cal: try _parse_help before _parse_usage
* test: add bunch of basic _parse_usage use test cases
* chsh, pwck: try _parse_help before _parse_usage
* test: add basic autossh test
* test: convert more _filedir unit tests to pytest+pexpect
* test: flake8 fix
* test: convert bunch of _filedir unit tests to pytest+pexpect
* test: convert finger partial test case to pytest+pexpect
* README: add some badges, tweak existing
* test: port _variables unit tests to pytest+pexpect
* test: port compgen and quote tests to pytest+pexpect
* iconv, lz4, tipc, xsltproc: replace some seds with compgen -X
* test: disallow Alpine failure on Travis
* _pnames: adapt for busybox ps, rewrite in pure bash
* test: run our docker script in test containers by default
* test: use one Dockerfile for all dists
* test_ifup: accept short option completions too
* timeout: fallback to _parse_usage from _parse_help
* test_wget: test --s instead of --h
* test_lsusb: xfail with unparseable --help
* test: expect failures for various completions without useful
--help
* test: support xfail in our markers like skipif, use it a lot
* test: add Alpine Linux container, allow failures for now
* iconv: weed out ... from encoding completions
* test_iconv: add basic file completion test
* test_iconv: skip option completion if --help fails
* test_getconf: skip if -a doesn't output any POSIX_V*
* test_feh, test_makepkg: invoke grep as "command grep"
* test: generalize check whether we're being run in a container
* tar: simplify locating tarball from command line
* pkg_delete: don't limit to FreeBSD
* test: reformat test_chromium_browser.py source
* test: set up BASH_COMPLETION_COMPAT_DIR in bashrc (only)
* test: more thorough system location interference avoidance
* test: bashrc comment and whitespace tweaks
* build: makefile whitespace tweaks
* build: really reset return value before completions check
* build: simplify symlink setup
* tar: add missing bsdtar, gtar, and star symlinks
* README: use light gray badges for unknown versions
* README: link to cygwin package
* ri: hush some warnings
* unrar: complete on *.exe (#337)
* chromium-browser: Add support for .mhtml files
* screen: complete first arg with serial devices
* gcc: support new --completion option (#222)
* unzip, zipinfo: complete *.aab (#340)
* cppcheck: Remove deprecated option 'posix' for '--std='
- Remove gcc-564d068.patch and sh-script-completion-boo977336.patch
as these are implemented upstream.
- Update to version 2.9:
* dpkg-source: Add --before-build --after-build --commit, and
--print-format
* xm: Deprecate completion for obsolete command (#284)
* _filedir_xspec: Fallback to suggesting all files if requested
(#260)
* tar: Support completions for zstd compression extensions (#255)
* dpkg: List held packages (#250)
* cvs: Add completion for the log command
* unzip, zipinfo: Associate with *.xar (eXist-db application
package) (#257)
* mplayer: Associate with *.w64
* okular: Added support for xz-compressed files.
* _xspecs: Declare as global on bash >= 4.2
* test: Increase expect pty to 160 columns
* test: avoid interrupting magic mark output
* 7z: add .msi support
* tshark: speed up tshark -O completion
* tshark: fix completion of -Xlua_script option
* tshark: Support preferences (-o) completion with memoization
* test: fix misinterpretation of completion output in tests
* test: fix flake8 complaints about unused imports
* conftest: fix RemovedInPytest4Warning due to use of
node.get_marker
* chromium-browser: consider chrome and chromium as aliases
* tshark: support .gz and .cap files for -r expansion
* tshark: prevent a single-character file from breaking -G
completion
* tshark: update -T and -t completions
* man: Fix completion when failglob option is enabled (#225)
* mplayer: Add common supported module music formats
* _longopt: pick first long option on a line, not last
* *: avoid shellcheck SC1007 and SC1010
* 7z: add some TODO notes on parsing "i" output for extensions
* ssh: make -o protocol completion less hardcoded
* ssh: make option completion case insensitive
* ssh: fix suboption completion with combined -*o
* xvnc4viewer: code cleanups
* doc/testing: remove lots of legacy info, add some new
* CONTRIBUTING: add upstream vs bash-completion considerations
* CONTRIBUTING: note runLint and run-shellcheck
* __parse_options, 7z: avoid herestrings
* arp, ccze, ifstat, inotifywait, makepkg: invoke sed with "command"
* shellcheck: disable bunch of warnings when in "-S warning" mode
* test: move default shell option from run-shellcheck to
.shellcheckrc
* test: make runLint search for herestrings
* tar, valgrind: avoid some herestrings
* travis: run shellcheck on bash_completion.sh.in too
* travis: fail on shellcheck errors
* make: quote eval array definitions to work around shellcheck
SC1036 bug
* test: add make -C test case
* *: shellcheck error fixes
* _included_ssh_config_files: store found included files in an array
* _included_ssh_config_files: doc grammar fixes
* test: add invoke-rc.d test case for not repeating already given
options
* ebtables: improve existing table arg parsing
* test: add script to run shellcheck, run it in Travis, allowing
failure for now
* iptables: improve existing table arg parsing
* test: shorten long gdb test core file name so tar doesn't croak on
it
* AUTHORS: remove unrelated project association from my entry
* apt-get: protect source against regex specials
* mypy, mysql, xmms: don't complete unknown split long option args
* synclient: remove unused local variable "split"
* test: adjust _get_comp_words_by_ref test to changed error output
* apt-cache: protect showsrc against regex specials
* test: improve tshark -O arg completion test
* tshark: ignore stderr when parsing -G, -L, and -h output
* *: error output consistency, use bash_completion prefix
* _upvar: deprecate in favor of _upvars
* *: add missing "ex: filetype=sh"
* phing: fix getting just a tab for options on CentOS 6
* phing: don't complete -l with files
* various: apply file vs dir special cases also when invoked with
full path
* *: whitespace tweaks
* ssh: don't offer protocol v1 specific options if it's not
supported
* test: add some gdb non-core files
* _parse_help: look for long options somewhat more eagerly
* gdb: relax core filename pattern
* test/tools: fix exit status incrementation
* *: arithmetic expression related cleanups
* test/tools: run all tools, don't stop at first failure
* test: check for perltidy errors and warnings
* *: format Perl code with perltidy
* *: format Python code with black
* .dir-locals.el: use flycheck-sh-bash-args
* valgrind: look up tools from libexec dirs too
* *: make _parse_usage fallbacks more concise
* svn, svk, wget: use _iconv_charsets
* *: spelling fixes
* msynctool: code cleanups
* *: remove whitespace after redirections
* *: remove spaces immediately within $()
* bzip2: recognize *.tbz2 as bzipped
* modprobe: module parameter boolean values
* ping, tracepath: parse options primarily with _parse_help
* ulimit: new completion
* shellcheck: new completion
* dnssec-keygen: new completion
* modprobe: append = to module parameter completions
* test: include test_unit_longopt.py in dist
* test: add some _longopt unit tests
* _longopt: simplify regex, use printf instead of echo, drop
unnecessary sort
* nsupdate: new completion
* _longopt: don't complete --no-* with file/dirname arg
* copyright: add 2019
* pytest: complete --pythonwarnings/-W arg
* python: make warning action list reusable
* test: use pytest-xdist
* extra: add git pre-push hook for triggering Docker Hub builds
* post-commit: trigger on test/requirements.txt too
* pytest: complete pytest-xdist --dist, --numprocesses, and
--rsyncdir
* test: remove no longer needed completion/*.exp
* xfreerdp: reinstate support for old versions with dash option
syntax
* test: rewrite "generate" in Python, fix trailing backslash in
EXTRA_DIST
* test: sort t/Makefile.am EXTRA_DIST in C locale
* ssh: support RemoteCommand and SyslogFacility options
* test: Expect failure for chown all users test as non-root
* test: Fix declare test case with bash 5.0
* adb: Deprecate in favor of one shipped with the Android SDK
* xfreerdp: Update for more modern xfreerdp
* jsonschema: New completion
* test: Remove unnecessary ri xfail
* test: Clean up man tmp dir
* .gitignore: Add .python-version (for pyenv)
* test: Remove unnecessary autouse=True from fixtures
* ifstat: Make work with iproute2 version
* iperf, iperf3: Add some option arg (non-)completions
* test: Fix test generation wrt results checking improvements
* ifstat: New completion
* __parse_options: Avoid non-zero exit status
* test: Refactor/improve completion results checking
* test: Match Python's default locale unaware sort in bash setup
* test: Rename completion.line to .output
* test: Add man failglob test case
* test: Add pre_cmds support for completion fixture
* inotifywatch: New completion, common with inotifywait
* inotifywait: Fix -e completion with BSD sed
* inotifywait: Avoid some false positive event names
* test: extend _ip_addresses unit tests some
* _ip_addresses: Avoid completing ipv4 ones with -6
* inotifywait: New completion
* test: Mark some xfails based on if in docker instead of in CI
* test: Skip ifup options test if it doesn't grok --help, not in CI
* test: Clean up and docker-ignore __pycache__ dirs
* build: Include test/t in dist tarball
* test/t: Avoid trailing backslash in Makefile.am's to appease
automake
* test: Remove some no longer used old test suite code
* _xspecs: Simplify bash version check
* chmod: Fix "-" completion
* sysctl: Treat -f as alias for -p/--load
* .gitignore: Add pytestdebug.log
* chmod: Fix file completion after modes starting with a dash
* _count_args: Add 3rd arg for treating option-like things as args
* test: Fix _count_args test_7 to test intended case
* pydocstyle: New completion
* Travis: Remove unused PYTEST env var
* doc: Note email issues gateway
* tcpdump: Various option and their arg completion updates
* test: Fix arp CI (non)expectations, remove redundant test case
* test: Be more consistent with "CI" env var examination and xfails
* arp: New completion, somewhat incomplete
* test: Expect failure in gkrellm if there's no X display
* doc: Update docs on generating simple tests
* doc: Some test dependency doc updates
* test: Add requirements.txt for installing dependencies
* grpck: Parse options with _parse_help, falling back to
_parse_usage
* grpck: Add --root/-R arg completion
* test suite: Ignore _scp_path_esc in env for ssh-copy-id
* ssh-copy-id: Add -i and -o arg (non-)completions
* tar: Clean up some redundant code
* cancel: Split long line
* cancel: Add some option arg (non-)completions
* locale-gen: New completion
* makepkg: Don't apply to other than Slackware makepkg
* test: Allow unknowns options in makepkg option completion
* makepkg: Use _parse_help instead of hardcoding option list
* mypy: New completion
* op: New completion
* hunspell: New completion
* xmllint: Improve --encode, --pretty, and --xpath arg
(non-)completions
* test: Remove leftover completion/ls.exp
* gcc: Add g++, gcc, gccgo, and gfortran *-[568] aliases
* perlcritic: New completion
* gnome-screenshot: New completion
* isort: New completion
* freeciv: Option and arg completion updates
* freeciv-gtk2: Install for freeciv and freeciv-gtk3, rename to
freeciv
* mplayer etc: Complete on *.crdownload partial downloads in
addition to *.part
* chromium-browser, google-chrome*: New non-xspec completion
* firefox etc: New non-xspec completion
* Merge branch 'master' into wip-pexpect
* nc: Add some more option (non-)completions
* test: Mark MANPATH without leading/trailing colons test an xfail
on CI CentOS 6
* test: Remove kill, killall remnants
* test: Make case specific env entries shell code, not escaped
* Merge branch 'master' into wip-pexpect
* unzip, zipinfo: Associate with *.whl
* __load_completion: Avoid unnecessary lookups from nonexistent dirs
* Merge branch 'master' into wip-pexpect
* gcc: Add g++, gcc, gccgo, and gfortran *-7 aliases
* test: Use test_unit_* prefix for unit tests, to avoid name clashes
* test: Support setting cmd=None to require no command, for unit
tests
* test: Misc test suite fixes
* test: Fix jq and scrub skipif commands
* test: Don't require complete marker on test methods
* test: Add support for per-test env modifications
* test: Use more conventional Python file names for tests
* test: Sort completion results in Python for ease of use in Python
tests
* test: Allow __load_completion to fail
* test: chdir to fixtures dir in Python as well
* test: Mark xfreerdp as expected failure for now
* test: Replace + with Plus in test class names
* test: Implement load_completion_for using assert_bash_exec
* test: Add ability to selectively ignore diffs in environment
* test: Fixture reorganization
* test: Pass through $HOME and $DISPLAY to test bash
* test: Log pexpect interaction to $BASHCOMP_TEST_LOGFILE if set
* test: Rename BASHCOMP_* test env variables to BASHCOMP_TEST_*
* test: Add python3 test case
* test: Add class level skipif based on bash exec result
* test: Include command name in test class name, use numbered test
method names
* test: Fix some regressions introduced in recent test conversions
* test: Add support for running test case in a specified dir
* test: Add support for skipping individual tests based on shell
command status
* test: Make test base work with Python 3.3+
* test: Add some iperf, iperf3 and xmodmap test cases
* xmodmap: Use _parse_help instead of hardcoded option list
* iperf: Improve client/server specific option parsing
* iperf: Install for iperf3 too
* iperf: Add g/G to --format completions
* xmodmap: Use _parse_help instead of hardcoded option list
* iperf: Improve client/server specific option parsing
* iperf: Install for iperf3 too
* iperf: Add g/G to --format completions
* test: Use /root/.local/bin/pytest on ubuntu14 by default
* test: Add generated test files to t/Makefile.am automatically
* test: Add new test files to EXTRA_DIST
* test: Use /root/.local/bin/pytest on centos6 by default
* test: Use make pytest docker executable env-configurable, default
pytest-3
* test: Update generate for pytest+pexpect
* test: Convert majority of test cases to pytest+pexpect
* tox: Fall back to --listenvs for env list if --listenvs-all fails
* git-post-commit: Avoid some error trash when HEAD is not a
symbolic ref
* test: Add pylint-3 test case
* test: Limit number of pylint option completions
* pydoc, pylint: Determine python2/3 based on command basename only
* pylint: Bring -f/--format arg completion up to date with pylint
1.9.2
* pylint: Implement comma separated --confidence arg completion
* test: Fix buffer size option listing in run --help
* test: Bump expect's match_max to 20000 by default
* test: Run docker tests with --verbose
* _services: Try systemctl list-unit-files if systemctl list-units
fails
* extra/git-post-commit.sh: Add git post-commit Docker Hub trigger
hook
* gpgv: New completion
* pydoc, pylint: Skip module completion if current looks like a path
* travis: Run ubuntu14/bsd with no network
* travis: Split long lines in script
* test: Limit number of wget option completions to avoid unresolved
result
* test: Mark flake8 untested if it seems broken
* pylint: Option arg completion improvements
* tshark: Get available interfaces from -D output
* ngrep: Add "any" to -d arg completions
* fio: New completion
* test: Fix iwspy test case
* uscan: Use _parse_help instead of hardcoded option list
* urlsnarf: Add -p arg completion
* tracepath: Add -m and -p arg non-completions
* tracepath: Actually use our separate completion instead of
_known_hosts
* test: Skip jq option completion test if its --help doesn't list
them
* xdg-settings: Make help parsing work on BSD
* test: Support running with local BSD binaries, do it w/ ubuntu14
in CI
* jq, sqlite3: Protect against negative array subscripts
* sudo: Improve long option arg handling
* sysctl: Recognize --pattern/-r and --load options
* test: Add sysctl option parsing test case
* sudo: Parse options from help/usage output, add some long option
support
* strace: Use _parse_help instead of hardcoded option list
* sshow: Add -p arg completion
* sqlite3: Add some option arg (non-)completions
* tune2fs: Update -o/-O argument lists
* jq: New completion
* reportbug: Run _parse_help and apt-cache more selectively
* querybts: Use _parse_help, not hardcoded option list, misc
improvements
* pyvenv: Support versioned 3.6-3.8 executables
* passwd: Try _parse_help before _parse_usage to parse options
* profile.d: Avoid tested variable values being confused as [ ]
operators
* cryptsetup: Add some option arg (non-)completions
* cryptsetup, nc, sh: Skip option args when counting arguments
* modinfo: Fall back to _parse_usage if _parse_help yields no
results
* mysql, mysqladmin: Complete --ssl-{ca,cert,key} option arg
* mysqladmin: Reuse --default-character-set completion from mysql
* modinfo: Use _parse_help instead of hardcoded option list
* minicom: Use _parse_help instead of hardcoded option list
* mplayer: Associate with *.S[3T]M, *.med, *.MED
* completions/Makefile.am: Use install-data-hook, not install-data-
local
* ifup etc: Add option and option argument completion
* _count_args: Add support for not counting specified option args
* ifquery: New ifup alias completion
* ngrep, tshark: Complete on *.pcapng too
* rpm: Complete --licensefiles with -q
* pytest: Rename from py.test to follow upstream recommended name
* README: Add instructions for overriding completions system wide
* README: Note $BASH_COMPLETION_USER_DIR
* test: Mark psql etc test cases untested if --help doesn't work
* aclocal, automake: Support versioned 1.16 executables
* __load_completion: Avoid bad array subscript on "commands" ending
with slash
* lzma: Use _parse_help instead of hardcoded option list
* test: Run perlcritic and flake8 on perl and python helpers in
Travis
* build: Improve cleanup of test/log and test/tmp dirs
* pkg-config: Complete on *.pc files
* build: Use AC_PROG_SED to locate sed
* build: Do cmake, pc, and profile variable replacements in Makefile
* README: Add Q/A on overriding a completion, modernize local
install answer
* json_xs: New completion
* chmod: New completion
* iperf, nc: Include IPv6 addresses in bind address completions
* links: Major rework, parse options from --help, add option arg
completion
* _ip_addresses: Add option to complete all/v4/v6 addresses, add
unit test
* wget: Remove nonexistent arg to _ip_addresses
* _filedir: Drop unnecessary evals
* iconv: Split charset completion to _iconv_charsets, add test case
* links: Install completion for links2 too
* xgamma: Comment spelling fix
* lftp: handle -s
* test: Skip scrub -p test when its --help doesn't list available
patterns
* ecryptfs-migrate-home: New completion
* scrub: New completion
* ether-wake: Install for etherwake as well
* *: Support completing arg of last bundled short option
* dselect: Parse options with _parse_help
* dhclient: Add some option arg (non-)completions
* dhclient: Parse options with _parse_usage
* chage, chpasswd: Add -R/--root arg completion
* reportbug: Add bunch of option arg (non-)completions
* .dir-locals.el: Set -O extglob for flycheck bash checks
* mount, umount: Deprecate on Linux in favor of util-linux >= 2.28
ones
* _known_hosts_real: Reimplement known hosts file parsing in pure
bash
* test: Add comment line to fixtures/_known_hosts_real/known_hosts
* ssh: Complete all *File option args with _filedir
* README: Point Debian and openSUSE badges towards unstable and
Tumbleweed
* README: Link to various distro packages
* apt-get: Add -h/-v/-o non-completions
* apt-get: Sync option list with apt 1.5.1
* apt-get: Simplify -t and friends completion, support Ubuntu
* apt-get: Add indextargets to list of suggested commands
* apt-get: Complete install package=versions
* ssh: Sync config option lists with OpenSSH 7.5p1, add some value
completions
* ssh: Sync query type list with OpenSSH 7.5p1
* ssh: Order various switch cases closer to alphabetical
* completions/Makefile: Fix check-local in VPATH builds
* _filedir: Refactor to remove heredoc-dependent loop
* gccgo: Add as a GCC completion target (#227)
* xrandr: match the output name exactly for --mode
-------------------------------------------------------------------
Fri Apr 26 08:44:42 UTC 2019 - Dr. Werner Fink <werner@suse.de>
- Add patch gcc-564d068.patch from pull request 564d068 of
Martin to upstream of bash-completion
-------------------------------------------------------------------
Fri Mar 29 20:13:38 UTC 2019 - Martin Wilck <mwilck@suse.com>
- Removed bts completions (upcoming devscript package contains a
more recent one).
-------------------------------------------------------------------
Mon Oct 22 07:06:51 UTC 2018 - Dr. Werner Fink <werner@suse.de>
- Modify patch PS1-completion-boo903362.patch to make it work with
mksh as well (boo#1104531)
-------------------------------------------------------------------
Thu Aug 2 13:25:06 UTC 2018 - antoine.belvire@opensuse.org

View File

@ -1,7 +1,7 @@
#
# spec file for package bash-completion-doc
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@ -20,12 +20,12 @@ Name: bash-completion-doc
%define _name bash-completion
# WARNING: Never edit this file!!! Edit bash-completion.spec and call pre_checkin.sh to update bash-completion-doc.spec.
# Always set %%build_doc to 0 before submit to OBS.
Version: 2.8
Version: 2.10
Release: 0
Summary: The Documentation of Programmable Completion for Bash
License: GPL-2.0-or-later
Group: Development/Libraries/C and C++
Url: https://github.com/scop/bash-completion/
URL: https://github.com/scop/bash-completion/
Source0: https://github.com/scop/bash-completion/releases/download/%{version}/%{_name}-%{version}.tar.xz
Source1: bash-completion-rpmlintrc
# PATCH-FIX-UPSTREAM bnc#717151 -- Terminal tab autocompletion error
@ -48,8 +48,6 @@ Patch8: respect-variables-boo940837.patch
Patch9: rm-completion-smart-boo958462.patch
# PATCH-FIX-SUSE boo#963140
Patch10: backticks-bsc963140.patch
# PATCH-FIX-SUSE boo#977336
Patch11: sh-script-completion-boo977336.patch
# PATCH-FIX-SUSE boo#1090515
Patch12: bash-completion-2.7-unRAR-remove.patch
BuildRequires: asciidoc
@ -74,7 +72,6 @@ package bash-completion.
%patch8 -b .p8
%patch9 -b .p9
%patch10 -b .p10 -p1
%patch11 -b .p11 -p0
%patch12 -b .p12 -p0
%build

View File

@ -1,3 +1,572 @@
-------------------------------------------------------------------
Sun Jan 5 17:01:37 UTC 2020 - Martin Liška <mliska@suse.cz>
- Update to version 2.10:
* perltidy: associate *.t (#338)
* perl: fix completion with space between option and argument
* _variables: add TERM and LC_* completion (#353)
* autotools: Replace pkgdatadir with datadir
* pkg-config: Relative paths
* pkg-config: generate Name from autotools PACKAGE
* ssh: option and argument completion updates (#332)
* test_arp: Skip if ARP tables are empty
* test_chromium_browser: Skip test_2 if 'chromium-browser --help'
fails
* test_rpm2tgz: Fix expected output
* cppcheck: Add new standards to --std option. (#356)
* apt-get: fix pkg version completion if it contains a colon (#351)
* test: bump black to >=19.10b0
* ssh, scp, sftp, ssh-copy-id, curl: improve identity file
completion
* update-rc.d: indentation fix
* update-rc.d: remove dead code
* screen: add serial device basic arg (non)completion
* screen: add //telnet completion
* test: add some trivial perl -E/-e cases
* perl: indentation fixes
* curl: make @filename completion do the right thing with dirs
* _filedir: avoid duplicate dirs internally, and a compgen -d call
for files
* _filedir: remove unused $x
* bash_completion.sh: shellcheck SC2086 fixes
* test: shellcheck config cleanups
* shellcheck: add some option arg (non)completions
* test: fix cpio users test in presence of usernames with whitespace
* test: python typing fixes
* test: add minimal mypy config
* .gitignore: mypy cache
* makepkg: fix option completion
* test: mark dcop and mr testcases requiring the cmd as such
* CONTRIBUTING: disable e-mail bug gateway due to spam
* carton: new completion
* op: direct command parsing stderr to /dev/null
* test: adjust java expectations based on whether jars can be listed
* valgrind: look tool names from lib/*-linux-gnu dirs too
* test: xfail locale-gen option completion if --help is not
available
* _sysvdirs: always return 0
* java: don't assume jar is installed
* travis: test with Debian 10
* wine: install for wine-development and wine-stable too
* travis: generate dist tarball on alpine
* dmypy: new completion
* test: add require_longopt xfail helper, use it
* test: mark more tests that parse command output as requiring
command
* sysctl: invoke completed sysctl instead of one from path to get
variables
* screen, smartctl, update-alternatives: _parse_help, drop hardcoded
option list
* lintian-info: _parse_help, add more option arg (non)completions
* gprof: _parse_usage, drop hardcoded option list
* test: fix retrieving command to test from request
* travis: pass NETWORK as env var, so we can actually use it
* test: xfail MAC address completion without networking
* test: ignore _makepkg_bootstrap in makepkg test env
* test: hush flake8-bugbear B010
* test: don't sort expected completion lists under the hood
* test: add bunch of basic option parsing test cases
* test: always run tests which don't require tested command
* test: explodepkg and upgradepkg test fixes
* test: mark sbcl-mt xfail due to whitespace split issues
* _terms: search directly from various terminfo dirs
* _terms: combine and simplify somewhat
* pkg-get: fix $i leak
* pkgutil: fix $i leak
* test: portinstall/upgrade test case and setup fixes
* lvm pv*, vg*: parse help instead of hardcoding option list
* ipv6calc: parse help instead of hardcoding option list
* test: avoid some sed -r/-E runLint false positives
* test: use sh +* as ccache command test case
* java: make jar/zip listing work with unzip
* test: installpkg test fixes
* test: fix acroread fixture dir
* test: remove unnecessary returns after pytest.skip
* test: avoid gnome-mplayer core dump on Ubuntu 14
* xvfb-run: new completion
* test: skip gssdp-discover --message-type when option not available
* test: expect failures for bc without --help useful with _longopt
* test: don't expect a .tox dir in fixture
* test: drop sourcing our no longer existing profile.d script
* tox: include -- in option completions
* tox: complete defaults after a --
* gssdp-discover: new completion
* test: register our pytest markers to hush warnings from 4.5+
* test: fix required pytest version
* ip: invoke the tool as $1
* README: drop distro badges, link to Repology instead
* chromium-browser: add --proxy-server arg completion
* test: source our profile.d test env script in docker
* influx: new completion
* README: badge title tweaks
* tox: do simple parse on tox.ini if --listenvs* yields nothing
* test: add basic tox fixture
* man: fall back to _parse_usage for _parse_help
* test_wsimport: xfail options test on unparseable -help
* test: don't try to install black on Python < 3.6
* pgrep: fix fallback to _parse_usage
* test: xfail unparseable mock and munin-node-configure --help cases
* test_pwdx: xfail more unparseable help cases
* build: make pytest executable configurable, look for pytest-3 too
* test: enforce minimum pytest version
* test: zopflipng flake8 fix
* test: xfail getent and pwdx option completions with unparseable
--help
* test: add more basic _parse_help use test cases
* test: add bunch of basic _parse_help use test cases
* .gitignore: add configure.lineno
* badblocks: fix $i leak
* postfix: option completion is expected to fail at the moment
* cal: try _parse_help before _parse_usage
* test: add bunch of basic _parse_usage use test cases
* chsh, pwck: try _parse_help before _parse_usage
* test: add basic autossh test
* test: convert more _filedir unit tests to pytest+pexpect
* test: flake8 fix
* test: convert bunch of _filedir unit tests to pytest+pexpect
* test: convert finger partial test case to pytest+pexpect
* README: add some badges, tweak existing
* test: port _variables unit tests to pytest+pexpect
* test: port compgen and quote tests to pytest+pexpect
* iconv, lz4, tipc, xsltproc: replace some seds with compgen -X
* test: disallow Alpine failure on Travis
* _pnames: adapt for busybox ps, rewrite in pure bash
* test: run our docker script in test containers by default
* test: use one Dockerfile for all dists
* test_ifup: accept short option completions too
* timeout: fallback to _parse_usage from _parse_help
* test_wget: test --s instead of --h
* test_lsusb: xfail with unparseable --help
* test: expect failures for various completions without useful
--help
* test: support xfail in our markers like skipif, use it a lot
* test: add Alpine Linux container, allow failures for now
* iconv: weed out ... from encoding completions
* test_iconv: add basic file completion test
* test_iconv: skip option completion if --help fails
* test_getconf: skip if -a doesn't output any POSIX_V*
* test_feh, test_makepkg: invoke grep as "command grep"
* test: generalize check whether we're being run in a container
* tar: simplify locating tarball from command line
* pkg_delete: don't limit to FreeBSD
* test: reformat test_chromium_browser.py source
* test: set up BASH_COMPLETION_COMPAT_DIR in bashrc (only)
* test: more thorough system location interference avoidance
* test: bashrc comment and whitespace tweaks
* build: makefile whitespace tweaks
* build: really reset return value before completions check
* build: simplify symlink setup
* tar: add missing bsdtar, gtar, and star symlinks
* README: use light gray badges for unknown versions
* README: link to cygwin package
* ri: hush some warnings
* unrar: complete on *.exe (#337)
* chromium-browser: Add support for .mhtml files
* screen: complete first arg with serial devices
* gcc: support new --completion option (#222)
* unzip, zipinfo: complete *.aab (#340)
* cppcheck: Remove deprecated option 'posix' for '--std='
- Remove gcc-564d068.patch and sh-script-completion-boo977336.patch
as these are implemented upstream.
- Update to version 2.9:
* dpkg-source: Add --before-build --after-build --commit, and
--print-format
* xm: Deprecate completion for obsolete command (#284)
* _filedir_xspec: Fallback to suggesting all files if requested
(#260)
* tar: Support completions for zstd compression extensions (#255)
* dpkg: List held packages (#250)
* cvs: Add completion for the log command
* unzip, zipinfo: Associate with *.xar (eXist-db application
package) (#257)
* mplayer: Associate with *.w64
* okular: Added support for xz-compressed files.
* _xspecs: Declare as global on bash >= 4.2
* test: Increase expect pty to 160 columns
* test: avoid interrupting magic mark output
* 7z: add .msi support
* tshark: speed up tshark -O completion
* tshark: fix completion of -Xlua_script option
* tshark: Support preferences (-o) completion with memoization
* test: fix misinterpretation of completion output in tests
* test: fix flake8 complaints about unused imports
* conftest: fix RemovedInPytest4Warning due to use of
node.get_marker
* chromium-browser: consider chrome and chromium as aliases
* tshark: support .gz and .cap files for -r expansion
* tshark: prevent a single-character file from breaking -G
completion
* tshark: update -T and -t completions
* man: Fix completion when failglob option is enabled (#225)
* mplayer: Add common supported module music formats
* _longopt: pick first long option on a line, not last
* *: avoid shellcheck SC1007 and SC1010
* 7z: add some TODO notes on parsing "i" output for extensions
* ssh: make -o protocol completion less hardcoded
* ssh: make option completion case insensitive
* ssh: fix suboption completion with combined -*o
* xvnc4viewer: code cleanups
* doc/testing: remove lots of legacy info, add some new
* CONTRIBUTING: add upstream vs bash-completion considerations
* CONTRIBUTING: note runLint and run-shellcheck
* __parse_options, 7z: avoid herestrings
* arp, ccze, ifstat, inotifywait, makepkg: invoke sed with "command"
* shellcheck: disable bunch of warnings when in "-S warning" mode
* test: move default shell option from run-shellcheck to
.shellcheckrc
* test: make runLint search for herestrings
* tar, valgrind: avoid some herestrings
* travis: run shellcheck on bash_completion.sh.in too
* travis: fail on shellcheck errors
* make: quote eval array definitions to work around shellcheck
SC1036 bug
* test: add make -C test case
* *: shellcheck error fixes
* _included_ssh_config_files: store found included files in an array
* _included_ssh_config_files: doc grammar fixes
* test: add invoke-rc.d test case for not repeating already given
options
* ebtables: improve existing table arg parsing
* test: add script to run shellcheck, run it in Travis, allowing
failure for now
* iptables: improve existing table arg parsing
* test: shorten long gdb test core file name so tar doesn't croak on
it
* AUTHORS: remove unrelated project association from my entry
* apt-get: protect source against regex specials
* mypy, mysql, xmms: don't complete unknown split long option args
* synclient: remove unused local variable "split"
* test: adjust _get_comp_words_by_ref test to changed error output
* apt-cache: protect showsrc against regex specials
* test: improve tshark -O arg completion test
* tshark: ignore stderr when parsing -G, -L, and -h output
* *: error output consistency, use bash_completion prefix
* _upvar: deprecate in favor of _upvars
* *: add missing "ex: filetype=sh"
* phing: fix getting just a tab for options on CentOS 6
* phing: don't complete -l with files
* various: apply file vs dir special cases also when invoked with
full path
* *: whitespace tweaks
* ssh: don't offer protocol v1 specific options if it's not
supported
* test: add some gdb non-core files
* _parse_help: look for long options somewhat more eagerly
* gdb: relax core filename pattern
* test/tools: fix exit status incrementation
* *: arithmetic expression related cleanups
* test/tools: run all tools, don't stop at first failure
* test: check for perltidy errors and warnings
* *: format Perl code with perltidy
* *: format Python code with black
* .dir-locals.el: use flycheck-sh-bash-args
* valgrind: look up tools from libexec dirs too
* *: make _parse_usage fallbacks more concise
* svn, svk, wget: use _iconv_charsets
* *: spelling fixes
* msynctool: code cleanups
* *: remove whitespace after redirections
* *: remove spaces immediately within $()
* bzip2: recognize *.tbz2 as bzipped
* modprobe: module parameter boolean values
* ping, tracepath: parse options primarily with _parse_help
* ulimit: new completion
* shellcheck: new completion
* dnssec-keygen: new completion
* modprobe: append = to module parameter completions
* test: include test_unit_longopt.py in dist
* test: add some _longopt unit tests
* _longopt: simplify regex, use printf instead of echo, drop
unnecessary sort
* nsupdate: new completion
* _longopt: don't complete --no-* with file/dirname arg
* copyright: add 2019
* pytest: complete --pythonwarnings/-W arg
* python: make warning action list reusable
* test: use pytest-xdist
* extra: add git pre-push hook for triggering Docker Hub builds
* post-commit: trigger on test/requirements.txt too
* pytest: complete pytest-xdist --dist, --numprocesses, and
--rsyncdir
* test: remove no longer needed completion/*.exp
* xfreerdp: reinstate support for old versions with dash option
syntax
* test: rewrite "generate" in Python, fix trailing backslash in
EXTRA_DIST
* test: sort t/Makefile.am EXTRA_DIST in C locale
* ssh: support RemoteCommand and SyslogFacility options
* test: Expect failure for chown all users test as non-root
* test: Fix declare test case with bash 5.0
* adb: Deprecate in favor of one shipped with the Android SDK
* xfreerdp: Update for more modern xfreerdp
* jsonschema: New completion
* test: Remove unnecessary ri xfail
* test: Clean up man tmp dir
* .gitignore: Add .python-version (for pyenv)
* test: Remove unnecessary autouse=True from fixtures
* ifstat: Make work with iproute2 version
* iperf, iperf3: Add some option arg (non-)completions
* test: Fix test generation wrt results checking improvements
* ifstat: New completion
* __parse_options: Avoid non-zero exit status
* test: Refactor/improve completion results checking
* test: Match Python's default locale unaware sort in bash setup
* test: Rename completion.line to .output
* test: Add man failglob test case
* test: Add pre_cmds support for completion fixture
* inotifywatch: New completion, common with inotifywait
* inotifywait: Fix -e completion with BSD sed
* inotifywait: Avoid some false positive event names
* test: extend _ip_addresses unit tests some
* _ip_addresses: Avoid completing ipv4 ones with -6
* inotifywait: New completion
* test: Mark some xfails based on if in docker instead of in CI
* test: Skip ifup options test if it doesn't grok --help, not in CI
* test: Clean up and docker-ignore __pycache__ dirs
* build: Include test/t in dist tarball
* test/t: Avoid trailing backslash in Makefile.am's to appease
automake
* test: Remove some no longer used old test suite code
* _xspecs: Simplify bash version check
* chmod: Fix "-" completion
* sysctl: Treat -f as alias for -p/--load
* .gitignore: Add pytestdebug.log
* chmod: Fix file completion after modes starting with a dash
* _count_args: Add 3rd arg for treating option-like things as args
* test: Fix _count_args test_7 to test intended case
* pydocstyle: New completion
* Travis: Remove unused PYTEST env var
* doc: Note email issues gateway
* tcpdump: Various option and their arg completion updates
* test: Fix arp CI (non)expectations, remove redundant test case
* test: Be more consistent with "CI" env var examination and xfails
* arp: New completion, somewhat incomplete
* test: Expect failure in gkrellm if there's no X display
* doc: Update docs on generating simple tests
* doc: Some test dependency doc updates
* test: Add requirements.txt for installing dependencies
* grpck: Parse options with _parse_help, falling back to
_parse_usage
* grpck: Add --root/-R arg completion
* test suite: Ignore _scp_path_esc in env for ssh-copy-id
* ssh-copy-id: Add -i and -o arg (non-)completions
* tar: Clean up some redundant code
* cancel: Split long line
* cancel: Add some option arg (non-)completions
* locale-gen: New completion
* makepkg: Don't apply to other than Slackware makepkg
* test: Allow unknowns options in makepkg option completion
* makepkg: Use _parse_help instead of hardcoding option list
* mypy: New completion
* op: New completion
* hunspell: New completion
* xmllint: Improve --encode, --pretty, and --xpath arg
(non-)completions
* test: Remove leftover completion/ls.exp
* gcc: Add g++, gcc, gccgo, and gfortran *-[568] aliases
* perlcritic: New completion
* gnome-screenshot: New completion
* isort: New completion
* freeciv: Option and arg completion updates
* freeciv-gtk2: Install for freeciv and freeciv-gtk3, rename to
freeciv
* mplayer etc: Complete on *.crdownload partial downloads in
addition to *.part
* chromium-browser, google-chrome*: New non-xspec completion
* firefox etc: New non-xspec completion
* Merge branch 'master' into wip-pexpect
* nc: Add some more option (non-)completions
* test: Mark MANPATH without leading/trailing colons test an xfail
on CI CentOS 6
* test: Remove kill, killall remnants
* test: Make case specific env entries shell code, not escaped
* Merge branch 'master' into wip-pexpect
* unzip, zipinfo: Associate with *.whl
* __load_completion: Avoid unnecessary lookups from nonexistent dirs
* Merge branch 'master' into wip-pexpect
* gcc: Add g++, gcc, gccgo, and gfortran *-7 aliases
* test: Use test_unit_* prefix for unit tests, to avoid name clashes
* test: Support setting cmd=None to require no command, for unit
tests
* test: Misc test suite fixes
* test: Fix jq and scrub skipif commands
* test: Don't require complete marker on test methods
* test: Add support for per-test env modifications
* test: Use more conventional Python file names for tests
* test: Sort completion results in Python for ease of use in Python
tests
* test: Allow __load_completion to fail
* test: chdir to fixtures dir in Python as well
* test: Mark xfreerdp as expected failure for now
* test: Replace + with Plus in test class names
* test: Implement load_completion_for using assert_bash_exec
* test: Add ability to selectively ignore diffs in environment
* test: Fixture reorganization
* test: Pass through $HOME and $DISPLAY to test bash
* test: Log pexpect interaction to $BASHCOMP_TEST_LOGFILE if set
* test: Rename BASHCOMP_* test env variables to BASHCOMP_TEST_*
* test: Add python3 test case
* test: Add class level skipif based on bash exec result
* test: Include command name in test class name, use numbered test
method names
* test: Fix some regressions introduced in recent test conversions
* test: Add support for running test case in a specified dir
* test: Add support for skipping individual tests based on shell
command status
* test: Make test base work with Python 3.3+
* test: Add some iperf, iperf3 and xmodmap test cases
* xmodmap: Use _parse_help instead of hardcoded option list
* iperf: Improve client/server specific option parsing
* iperf: Install for iperf3 too
* iperf: Add g/G to --format completions
* xmodmap: Use _parse_help instead of hardcoded option list
* iperf: Improve client/server specific option parsing
* iperf: Install for iperf3 too
* iperf: Add g/G to --format completions
* test: Use /root/.local/bin/pytest on ubuntu14 by default
* test: Add generated test files to t/Makefile.am automatically
* test: Add new test files to EXTRA_DIST
* test: Use /root/.local/bin/pytest on centos6 by default
* test: Use make pytest docker executable env-configurable, default
pytest-3
* test: Update generate for pytest+pexpect
* test: Convert majority of test cases to pytest+pexpect
* tox: Fall back to --listenvs for env list if --listenvs-all fails
* git-post-commit: Avoid some error trash when HEAD is not a
symbolic ref
* test: Add pylint-3 test case
* test: Limit number of pylint option completions
* pydoc, pylint: Determine python2/3 based on command basename only
* pylint: Bring -f/--format arg completion up to date with pylint
1.9.2
* pylint: Implement comma separated --confidence arg completion
* test: Fix buffer size option listing in run --help
* test: Bump expect's match_max to 20000 by default
* test: Run docker tests with --verbose
* _services: Try systemctl list-unit-files if systemctl list-units
fails
* extra/git-post-commit.sh: Add git post-commit Docker Hub trigger
hook
* gpgv: New completion
* pydoc, pylint: Skip module completion if current looks like a path
* travis: Run ubuntu14/bsd with no network
* travis: Split long lines in script
* test: Limit number of wget option completions to avoid unresolved
result
* test: Mark flake8 untested if it seems broken
* pylint: Option arg completion improvements
* tshark: Get available interfaces from -D output
* ngrep: Add "any" to -d arg completions
* fio: New completion
* test: Fix iwspy test case
* uscan: Use _parse_help instead of hardcoded option list
* urlsnarf: Add -p arg completion
* tracepath: Add -m and -p arg non-completions
* tracepath: Actually use our separate completion instead of
_known_hosts
* test: Skip jq option completion test if its --help doesn't list
them
* xdg-settings: Make help parsing work on BSD
* test: Support running with local BSD binaries, do it w/ ubuntu14
in CI
* jq, sqlite3: Protect against negative array subscripts
* sudo: Improve long option arg handling
* sysctl: Recognize --pattern/-r and --load options
* test: Add sysctl option parsing test case
* sudo: Parse options from help/usage output, add some long option
support
* strace: Use _parse_help instead of hardcoded option list
* sshow: Add -p arg completion
* sqlite3: Add some option arg (non-)completions
* tune2fs: Update -o/-O argument lists
* jq: New completion
* reportbug: Run _parse_help and apt-cache more selectively
* querybts: Use _parse_help, not hardcoded option list, misc
improvements
* pyvenv: Support versioned 3.6-3.8 executables
* passwd: Try _parse_help before _parse_usage to parse options
* profile.d: Avoid tested variable values being confused as [ ]
operators
* cryptsetup: Add some option arg (non-)completions
* cryptsetup, nc, sh: Skip option args when counting arguments
* modinfo: Fall back to _parse_usage if _parse_help yields no
results
* mysql, mysqladmin: Complete --ssl-{ca,cert,key} option arg
* mysqladmin: Reuse --default-character-set completion from mysql
* modinfo: Use _parse_help instead of hardcoded option list
* minicom: Use _parse_help instead of hardcoded option list
* mplayer: Associate with *.S[3T]M, *.med, *.MED
* completions/Makefile.am: Use install-data-hook, not install-data-
local
* ifup etc: Add option and option argument completion
* _count_args: Add support for not counting specified option args
* ifquery: New ifup alias completion
* ngrep, tshark: Complete on *.pcapng too
* rpm: Complete --licensefiles with -q
* pytest: Rename from py.test to follow upstream recommended name
* README: Add instructions for overriding completions system wide
* README: Note $BASH_COMPLETION_USER_DIR
* test: Mark psql etc test cases untested if --help doesn't work
* aclocal, automake: Support versioned 1.16 executables
* __load_completion: Avoid bad array subscript on "commands" ending
with slash
* lzma: Use _parse_help instead of hardcoded option list
* test: Run perlcritic and flake8 on perl and python helpers in
Travis
* build: Improve cleanup of test/log and test/tmp dirs
* pkg-config: Complete on *.pc files
* build: Use AC_PROG_SED to locate sed
* build: Do cmake, pc, and profile variable replacements in Makefile
* README: Add Q/A on overriding a completion, modernize local
install answer
* json_xs: New completion
* chmod: New completion
* iperf, nc: Include IPv6 addresses in bind address completions
* links: Major rework, parse options from --help, add option arg
completion
* _ip_addresses: Add option to complete all/v4/v6 addresses, add
unit test
* wget: Remove nonexistent arg to _ip_addresses
* _filedir: Drop unnecessary evals
* iconv: Split charset completion to _iconv_charsets, add test case
* links: Install completion for links2 too
* xgamma: Comment spelling fix
* lftp: handle -s
* test: Skip scrub -p test when its --help doesn't list available
patterns
* ecryptfs-migrate-home: New completion
* scrub: New completion
* ether-wake: Install for etherwake as well
* *: Support completing arg of last bundled short option
* dselect: Parse options with _parse_help
* dhclient: Add some option arg (non-)completions
* dhclient: Parse options with _parse_usage
* chage, chpasswd: Add -R/--root arg completion
* reportbug: Add bunch of option arg (non-)completions
* .dir-locals.el: Set -O extglob for flycheck bash checks
* mount, umount: Deprecate on Linux in favor of util-linux >= 2.28
ones
* _known_hosts_real: Reimplement known hosts file parsing in pure
bash
* test: Add comment line to fixtures/_known_hosts_real/known_hosts
* ssh: Complete all *File option args with _filedir
* README: Point Debian and openSUSE badges towards unstable and
Tumbleweed
* README: Link to various distro packages
* apt-get: Add -h/-v/-o non-completions
* apt-get: Sync option list with apt 1.5.1
* apt-get: Simplify -t and friends completion, support Ubuntu
* apt-get: Add indextargets to list of suggested commands
* apt-get: Complete install package=versions
* ssh: Sync config option lists with OpenSSH 7.5p1, add some value
completions
* ssh: Sync query type list with OpenSSH 7.5p1
* ssh: Order various switch cases closer to alphabetical
* completions/Makefile: Fix check-local in VPATH builds
* _filedir: Refactor to remove heredoc-dependent loop
* gccgo: Add as a GCC completion target (#227)
* xrandr: match the output name exactly for --mode
-------------------------------------------------------------------
Fri Apr 26 08:44:42 UTC 2019 - Dr. Werner Fink <werner@suse.de>

View File

@ -1,7 +1,7 @@
#
# spec file for package bash-completion
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@ -22,12 +22,12 @@ Name: bash-completion
%define build_core 1
# Always set %%build_doc to 0 before submit to OBS.
%define build_doc 0
Version: 2.8
Version: 2.10
Release: 0
Summary: Programmable Completion for Bash
License: GPL-2.0-or-later
Group: System/Shells
Url: https://github.com/scop/bash-completion/
URL: https://github.com/scop/bash-completion/
Source0: https://github.com/scop/bash-completion/releases/download/%{version}/%{name}-%{version}.tar.xz
Source1: bash-completion-rpmlintrc
# PATCH-FIX-UPSTREAM bnc#717151 -- Terminal tab autocompletion error
@ -50,12 +50,8 @@ Patch8: respect-variables-boo940837.patch
Patch9: rm-completion-smart-boo958462.patch
# PATCH-FIX-SUSE boo#963140
Patch10: backticks-bsc963140.patch
# PATCH-FIX-SUSE boo#977336
Patch11: sh-script-completion-boo977336.patch
# PATCH-FIX-SUSE boo#1090515
Patch12: bash-completion-2.7-unRAR-remove.patch
# PATCH-ENHANCE-SUSE from pull request 564d068 of Martin to upstream of bash-completion
Patch13: gcc-564d068.patch
%if %build_doc
BuildRequires: asciidoc
BuildRequires: libxslt-tools
@ -108,9 +104,7 @@ package bash-completion.
%patch8 -b .p8
%patch9 -b .p9
%patch10 -b .p10 -p1
%patch11 -b .p11 -p0
%patch12 -b .p12 -p0
%patch13 -b .p13 -p0
%build
%configure

View File

@ -1,108 +0,0 @@
From 564d068cb890dc7dbca9c566fd7fab227558efd6 Mon Sep 17 00:00:00 2001
From: marxin <mliska@suse.cz>
Date: Mon, 14 May 2018 15:35:57 +0200
Subject: [PATCH] Add support for GCC --completion= option.
---
completions/gcc | 83 +++++++++++++++++++++++++++++++-------------------------
1 file changed, 47 insertions(+), 36 deletions(-)
--- completions/gcc
+++ completions/gcc 2019-04-26 08:40:48.199351068 +0000
@@ -1,49 +1,60 @@
# gcc(1) completion -*- shell-script -*-
-#
-# The only unusual feature is that we don't parse "gcc --help -v" output
-# directly, because that would include the options of all the other backend
-# tools (linker, assembler, preprocessor, etc) without any indication that
-# you cannot feed such options to the gcc driver directly. (For example, the
-# linker takes a -z option, but you must type -Wl,-z for gcc.) Instead, we
-# ask the driver ("g++") for the name of the compiler ("cc1"), and parse the
-# --help output of the compiler.
_gcc()
{
- local cur prev words cword
+ local cur prev prev2 words cword argument prefix prefix_length
_init_completion || return
+ _expand || return
- local cc backend
+ # Test that GCC is recent enough and if not fallback to
+ # parsing of --completion option.
+ $1 --completion=" " 2> /dev/null
+ if ! $1 --completion=" " 2>/dev/null; then
+ if [[ "$cur" == -* ]]; then
+ local cc=$( $1 -print-prog-name=cc1 2> /dev/null )
+ [[ $cc ]] || return
+ COMPREPLY=( $( compgen -W "$( $cc --help 2> /dev/null | tr '\t' ' ' |\
+ command sed -e '/^ *-/!d' -e 's/ *-\([^][ <>]*\).*/-\1/' )" -- "$cur" ) )
+ [[ $COMPREPLY == *= ]] && compopt -o nospace
+ return
+ else
+ _filedir
+ return
+ fi
+ fi
- case $1 in
- gcj)
- backend=jc1
- ;;
- gpc)
- backend=gpc1
- ;;
- *77)
- backend=f771
- ;;
- *95)
- backend=f951
- ;;
- *)
- backend=cc1 # (near-)universal backend
- ;;
- esac
+ # extract also for situations like: -fsanitize=add
+ if [[ $cword > 2 ]]; then
+ prev2="${COMP_WORDS[$cword - 2]}"
+ fi
+ # sample: -fsan
if [[ "$cur" == -* ]]; then
- cc=$( $1 -print-prog-name=$backend 2>/dev/null )
- [[ $cc ]] || return
- # sink stderr:
- # for C/C++/ObjectiveC it's useless
- # for FORTRAN/Java it's an error
- COMPREPLY=( $( compgen -W "$( $cc --help 2>/dev/null | tr '\t' ' ' |\
- command sed -e '/^ *-/!d' -e 's/ *-\([^][ <>]*\).*/-\1/' )" -- "$cur" ) )
- [[ $COMPREPLY == *= ]] && compopt -o nospace
- else
+ argument=$cur
+ prefix=""
+ # sample: -fsanitize=
+ elif [[ "$cur" == "=" && $prev == -* ]]; then
+ argument=$prev$cur
+ prefix=$prev$cur
+ # sample: -fsanitize=add
+ elif [[ "$prev" == "=" && $prev2 == -* ]]; then
+ argument=$prev2$prev$cur
+ prefix=$prev2$prev
+ # sample: --param lto-
+ elif [[ "$prev" == "--param" ]]; then
+ argument="$prev $cur"
+ prefix="$prev "
+ fi
+
+ if [[ "$argument" == "" ]]; then
_filedir
+ else
+ # In situation like '-fsanitize=add' $cur is equal to last token.
+ # Thus we need to strip the beginning of suggested option.
+ prefix_length=`expr length "$prefix" + 1`
+ local flags=$( gcc --completion="$argument" 2> /dev/null | cut -c $prefix_length-)
+ [[ "${flags: -1}" == '=' ]] && compopt -o nospace 2> /dev/null
+ COMPREPLY=( $( compgen -W "$flags" -- "") )
fi
} &&
complete -F _gcc gcc g++ gfortran g77 g95 gcj gpc &&

View File

@ -4,7 +4,7 @@
--- bash_completion
+++ bash_completion 2017-07-04 07:45:25.480233012 +0000
@@ -1928,11 +1928,12 @@ _longopt()
@@ -1940,11 +1940,12 @@ _longopt()
# makeinfo and texi2dvi are defined elsewhere.
complete -F _longopt -o filenames a2ps awk base64 bash bc bison cat chroot colordiff cp \
csplit cut date df diff dir du enscript expand fmt fold gperf \
@ -16,5 +16,5 @@
complete -F _longopt -o default env netstat seq uname units
+complete -F _longopt -o bashdefault -o default -o filenames -o nospace ls ll la l ls-l lf
declare -A _xspecs
_filedir_xspec()
# declare only knows -g in bash >= 4.2.
if [[ ${BASH_VERSINFO[0]} -gt 4 || ${BASH_VERSINFO[1]} -ge 2 ]]; then

View File

@ -9,7 +9,7 @@ does not return anything.
--- bash_completion
+++ bash_completion 2017-07-04 07:48:24.632925756 +0000
@@ -1945,11 +1945,13 @@ _longopt()
@@ -1941,11 +1941,13 @@ _longopt()
complete -F _longopt -o filenames a2ps awk base64 bash bc bison cat chroot colordiff cp \
csplit cut date df diff dir du enscript expand fmt fold gperf \
grep grub head irb ld ldd less ln m4 md5sum mkdir mkfifo mknod \
@ -22,5 +22,5 @@ does not return anything.
+complete -F _longopt -o bashdefault -o default -o filenames -o nospace rm rmdir
+
declare -A _xspecs
_filedir_xspec()
# declare only knows -g in bash >= 4.2.
if [[ ${BASH_VERSINFO[0]} -gt 4 || ${BASH_VERSINFO[1]} -ge 2 ]]; then

View File

@ -1,33 +0,0 @@
This allows to use COMP_FILEDIR_FALLBACK=yes even if
local sub directories exists (boo#977336)
---
bash_completion | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
--- bash_completion
+++ bash_completion 2017-07-04 07:50:05.763059501 +0000
@@ -556,11 +556,6 @@ _filedir()
local -a toks
local x tmp
- x=$( compgen -d -- "$cur" ) &&
- while read -r tmp; do
- toks+=( "$tmp" )
- done <<< "$x"
-
if [[ "$1" != -d ]]; then
local quoted
_quote_readline_by_ref "$cur" quoted
@@ -581,6 +576,11 @@ _filedir()
done <<< "$x"
fi
+ x=$( compgen -d -- "$cur" ) &&
+ while read -r tmp; do
+ toks+=( "$tmp" )
+ done <<< "$x"
+
if [[ ${#toks[@]} -ne 0 ]]; then
# 2>/dev/null for direct invocation, e.g. in the _filedir unit test
compopt -o filenames 2>/dev/null