bash completion extends bash's standard completion behavior to achieve complex command lines with just a few keystrokes. This project was conceived to produce programmable completion routines for the most common Linux/UNIX commands, reducing the amount of typing sysadmins and programmers need to do on a daily basis.
Original maintainer | Gabriel F. T. Gomes |
---|---|
Homepage | https://github.com/scop/bash-completion |
2.10



2.9

2.8









2.7




2.1





Distribution | Version | Since | Package | Installed | Packager | |
---|---|---|---|---|---|---|
![]() | xz | 2.10-1 | 2019-12-12 | 188 kiB | 836 kiB | Bartłomiej Piotrowski |
![]() | rpm | 1:2.1-6.el7 | 2020-01-07 | 85.2 kiB | 259 kiB | CentOS BuildSystem |
![]() | deb | 1:2.8-6 | 2019-03-12 | 203 kiB | 1.33 MiB | Gabriel F. T. Gomes |
![]() | deb | 1:2.1-4.3 | 2017-11-10 | 174 kiB | 1.19 MiB | Bash Completion Maintainers |
![]() | rpm | 1:2.7-4.fc28 | 2019-01-14 | 272 kiB | 894 kiB | Fedora Project |
![]() | rpm | 1:2.7-4.fc28 | 2019-01-14 | 272 kiB | 894 kiB | Fedora Project |
![]() | rpm | 1:2.7-4.fc28 | 2019-01-14 | 272 kiB | 894 kiB | Fedora Project |
![]() | rpm | 1:2.8-3.fc29 | 2019-01-14 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-3.fc29 | 2019-01-14 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-3.fc29 | 2019-01-14 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-3.fc29 | 2019-01-14 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-3.fc29 | 2019-01-14 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-3.fc29 | 2019-01-14 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-6.fc30 | 2019-06-17 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-6.fc30 | 2019-06-17 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-6.fc30 | 2019-06-17 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-6.fc30 | 2019-06-17 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-6.fc30 | 2019-06-17 | 278 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-7.fc31 | 2020-01-07 | 263 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-7.fc31 | 2020-01-07 | 263 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-8.fc32 | 2020-02-08 | 262 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-8.fc32 | 2020-02-08 | 262 kiB | 920 kiB | Fedora Project |
![]() | rpm | 1:2.8-7.fc31 | 2019-07-30 | 263 kiB | 920 kiB | Fedora Project |
![]() | xz | 2.8-1 | 2019-01-14 | 178 kiB | 799 kiB | Bartlomiej Piotrowski |
![]() | xz | 2.8-1 | 2019-01-14 | 178 kiB | 799 kiB | Bartlomiej Piotrowski |
![]() | xz | 2.8-1 | 2019-01-14 | 178 kiB | 799 kiB | Bartlomiej Piotrowski |
![]() | rpm | 2.7-lp150.2.3 | 2019-01-17 | 240 kiB | 785 kiB | https://bugs.opensuse.org |
![]() | rpm | 2.7-lp150.3.3.1 | 2019-01-18 | 240 kiB | 785 kiB | http://bugs.opensuse.org |
![]() | rpm | 2.7-lp151.4.1 | 2019-01-23 | 240 kiB | 785 kiB | https://bugs.opensuse.org |
![]() | rpm | 2.7-lp152.5.3 | 2020-01-07 | 236 kiB | 785 kiB | https://bugs.opensuse.org |
![]() | rpm | 2.1-16.3 | 2019-01-17 | 190 kiB | 695 kiB | http://bugs.opensuse.org |
![]() | rpm | 2.10-2.1 | 2020-01-25 | 275 kiB | 852 kiB | https://bugs.opensuse.org |
![]() | deb | 1:2.1-4.3ubuntu1 | 2017-11-10 | 147 kiB | 1.19 MiB | Ubuntu Developers |
![]() | deb | 1:2.8-1ubuntu1 | 2018-06-12 | 164 kiB | 1.33 MiB | Ubuntu Developers |
![]() | deb | 1:2.8-1ubuntu1 | 2019-01-14 | 164 kiB | 1.33 MiB | Ubuntu Developers |
![]() | deb | 1:2.8-1ubuntu1 | 2019-01-14 | 164 kiB | 1.33 MiB | Ubuntu Developers |
![]() | deb | 1:2.9-1ubuntu1 | 2019-08-16 | 173 kiB | 1.44 MiB | Ubuntu Developers |
![]() | deb | 1:2.10-1ubuntu1 | 2020-02-02 | 174 kiB | 1.45 MiB | Ubuntu Developers |
![]() | deb | 1:2.1-4.2ubuntu1 | 2017-11-10 | 149 kiB | 1.2 MiB | Ubuntu Developers |
![]() | deb | 1:2.1-4.2ubuntu1.1 | 2017-11-10 | 149 kiB | 1.2 MiB | Ubuntu Developers |
Manual pages
dh_bash-completion(1)
dh_bash-completion - install bash completions for package
Latest updates

Fedora rawhide development/Server-os: Updated from 1:2.8-7.fc31 to 1:2.8-8.fc32
2020-02-08

Fedora rawhide development/Everything-os: Updated from 1:2.8-7.fc31 to 1:2.8-8.fc32
2020-02-08

Ubuntu 20.04 focal/main: Updated from 1:2.9-1ubuntu1 to 1:2.10-1ubuntu1
2020-02-02

Ubuntu 20.04 focal-proposed/main: Version 1:2.10-1ubuntu1 removed
2020-02-02

Ubuntu 20.04 focal-proposed/main: Version 1:2.10-1ubuntu1 introduced
2020-02-02

OpenSUSE Tumbleweed oss: Updated from 2.10-1.1 to 2.10-2.1
2020-01-25
- Remove _adb as it seems to be broken anyway (boo#1161136)

OpenSUSE Tumbleweed oss: Updated from 2.8-4.4 to 2.10-1.1
2020-01-12
- 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
- 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

Fedora 31 releases/Server-os: Version 1:2.8-7.fc31 introduced
2020-01-07

Fedora 31 releases/Everything-os: Version 1:2.8-7.fc31 introduced
2020-01-07

OpenSUSE Leap 15.2 oss: Version 2.7-lp152.5.3 introduced
2020-01-07
- Modify patch PS1-completion-boo903362.patch to make it work with mksh as well (boo#1104531)

CentOS 7.7.1908 os: Version 1:2.1-6.el7 introduced
2020-01-07
- Install only available completions (#810343 - comment 15) without "tar" and remove the other.

Ubuntu 20.04 focal/main: Version 1:2.9-1ubuntu1 introduced
2020-01-07

Arch rolling extra/os: Updated from 2.9-1 to 2.10-1
2019-12-12

OpenSUSE Tumbleweed oss: Updated from 2.8-4.3 to 2.8-4.4
2019-11-18
- Add patch gcc-564d068.patch from pull request 564d068 of Martin to upstream of bash-completion

Ubuntu 16.04 LTS xenial-updates/main: Version 1:2.1-4.2ubuntu1.1 reintroduced
2019-10-02
Ove Risberg
- Add backslash for tilde character (LP: #1390061)
- _quote_readline_by_ref on bash_completion
- Adding backslash makes sure that
tilde is not special character for bash, but character for purpose

Ubuntu 16.04 LTS xenial-updates/main: Version 1:2.1-4.2ubuntu1.1 removed
2019-10-02

Ubuntu 19.10 eoan/main: Version 1:2.9-1ubuntu1 reintroduced
2019-08-19

Ubuntu 19.10 eoan/main: Version 1:2.9-1ubuntu1 removed
2019-08-19

Ubuntu 19.10 eoan-proposed/main: Version 1:2.9-1ubuntu1 removed
2019-08-16

Ubuntu 19.10 eoan/main: Updated from 1:2.8-7ubuntu1 to 1:2.9-1ubuntu1
2019-08-16
Related packages
bash - The GNU Bourne Again shell
bash-completion-devel - The Configuration of Programmable Completion for Bash
bash-completion-doc - The Documentation of Programmable Completion for Bash