

2.16.0		2024-12-25


Features


Bug Fixes

- mfiutil: more link and style issues


2.15.0		2024-11-24


Features

- _comp_abspath: handle ".."
- _comp_compgen_filedir,_comp_compgen_filedir_xspec: don’t suggest . and ..
- associate unzip and friends with *.vsix
- curl: Complete "%", "-" for --trace[-ascii]
- curl: Complete files for --json, --write-out
- curl: Complete stdin "-" in file locations
- fprintd-*: new completions
- iftop: -G, -s, -L, and -o arg (non-)completions
- ip: complete ip ntable show
- java: enable .java filename completion for java command ([959ce82](https://github.com/scop/bash-completion/commit/959ce82920bf20329a4586a325dd4579f8d5b822)), closes [#1196](https://github.com/scop/bash-completion/issues/1196)
- openssl: Stop having subcommands hardcoded
- python,pyvenv: versioned 3.13 executable support
- set: more featureful completion
- slabtop: new completion
- tar: use long option compression options
- wine: complete with `*.bat` and `*.cmd`
- xv: associate with *.webp and *.pnm
- xxd: add -n, -o, and -R arg (non-)completions

Bug Fixes

- _comp_compgen: use `compgen -V array_name` in `bash &gt;= 5.3`
- _comp_expand_glob: set LC_COLLATE for the sorting order
- _comp_expand_glob: work around GLOBSORT in Bash 5.3
- compatdir: use _comp_expand_glob for the correct order
- curl: Complete all and category for --help
- dpkg: Add missing short option -R
- rsync,ssh: do not overescape spaces in remote filenames
- source files using absolute paths for absolute BASH_SOURCE
- tar: Complete added files with long opts
- update-alternatives: fix the "--help" parsing


2.14.0		2024-05-09


Features

- cryptsetup: complete --header with filenames
- env: complete commands and variable assignments
- env: treat `-*` as the command name after `-` and `--`
- env: treat `-*` as the command name after assignments
- ip: Complete 'route get' options
- ip: Complete addr add/change/replace options
- ip: Complete ip route list options
- ip: Complete link afstats command
- ip: Complete neigh add, del, change, replace
- ip: Complete route save/showdump
- iperf: --tos/-S argument completion
- ssh-copy-id: (non-)complete args to `-t` and `-F`
- ssh-keygen: complete -r/-Y specific -O args
- ssh-keyscan: complete -O argument

Bug Fixes

- _comp_{compgen,xfunc}: use `declare -F --` for arbitrary funcs
- _comp_{load,realcommand}: handle option-like command name
- available_interfaces: strip only trailing colon from entries
- bash_completion,conftest: use `complete -p --` for arbitrary cmds
- fio: engines completion
- ip: Complete link change as well as set
- ip: Don't stop at proxy and nomaster in neigh
- scp remote_files: do not filter generated paths with "$cur"
- scp remote_files: localize variable `cur`
- ssh-keygen: handling of bundled short options
- ssh-keygen: make work with custom IFS
- ssh-keygen: suggest -O arg completions depending on mode
- use -- to pass arbitrary cmdnames to `_comp_load`
- use `pathcmd=$(type -P -- "$1")` for arbitrary cmds


2.13.0		2024-04-03


Features

- curl: Complete protocols for --proto-default
- ip: Add completion for netconf subcommand
- ip: Complete commands for netns exec
- ip: Complete help for unknown subcommands
- ip: Complete ip link property
- ip: Complete link types for address show
- ip: Complete neigh show and flush
- ip: Complete stats subcommand
- ip: Create function to get link types
- xmllint,xmlwf: also suggest *.rss files

Bug Fixes

- available_interfaces: fix regression of unwanted trailing colons
- ip: Complete addrlabel add/del properties
- ip: Complete ip delete with type correctly
- ip: Complete more variations of subcommands
- ip: Complete netns attach subcommand
- ip: Complete only relevant addrlabel subcmds
- ip: Keep completing after -netns name
- ip: Quote all instantiation of ip as "$1"
- ip: Quote network namespace names
- Makefile: include api-and-naming.md in dist


2.12.0		2024-02-21


Features

- _comp_backup_glob: add `ucf` generated backup files
- _comp_backup_glob: require dash in dpkg backup files
- _comp_compgen_{filedir,set}: define exit status
- _comp_compgen_commands: align return value with other compgens
- _comp_compgen_commands: auto set `-o filenames` when appropriate
- _comp_compgen_commands: include dirs
- _comp_compgen_known_hosts: return 2 on usage error
- _comp_compgen: support `-i cmd` and `-x cmd`
- _comp_compgen: support `-U var` to unlocal var
- _comp_compgen: support option -C
- _comp_expand_glob: fail when no paths are generated
- _comp_get_fist_arg: support "-o GLOB" to skip optargs
- _ip_addresses: auto ltrim colon completions when appropriate
- add _comp_compgen_split
- add `_comp_locate_first_arg`
- apt-get: prefer `apt-cache` in same dir as command
- b2sum: new completion
- bash_completion: add function _comp_compgen_ltrim_colon
- carton: support exec command completions
- dot: support filename extension .gv
- eog: add missing extension .heif
- eog: associate with `*.avif` and `*.webp`
- eog: associate with `*.heic` and `*.jxl`
- eog: associate with `*.pbm`
- feh: associate with y4m and heic/heif/avif
- feh: deassociate with avci/avcs
- hash: new completion
- ip: Add completion for monitor subcommand
- mailman: prefer `list_lists` in same dir as command
- mysql: prefer `mysqlshow` from same dir
- no empty command completion if `no_empty_cmd_completion` is on
- pytest: complete new --import-mode value
- scp,sftp: prefer `ssh` from same dir to resolve options etc
- ssh-copy-id,ssh-keygen: prefer `ssh` from same dir
- ssh: complete RequiredRSASize
- xrandr: comma separated `--setmonitor` third argument

Bug Fixes

- __load_completion: quoted compspec for variants
- _cd_devices: `/dev/cdc-*` CDC device false positives
- _comp__init_set_up_service_completions: work around failglob
- _comp_{first_arg,count_args}: count - as argument
- _comp_{first_arg,count_args}: count any arguments after --
- _comp_command_offset: Support complete -C
- _comp_compgen_fstypes: avoid unexpected expansions
- _comp_compgen_help: allow dots to connect names in longopt
- _comp_compgen_known_hosts: work around bash-4.2 nounset
- _comp_compgen_split: work around nounset
- _comp_compgen_term: replace completions by default
- _comp_compgen_usergroup: avoid directly overwriting COMPREPLY
- _comp_compgen: do not inherit -a for explicitly specified var
- _comp_compgen: explicitly exclude `cur` from the target variable
- _comp_count_args: check optarg correctly
- _comp_count_args: exclude &lt;&gt;& from wordbreaks as _comp_initialize
- _comp_count_args: ignore empty $3
- _comp_count_args: perform optarg check also on $3
- _comp_count_args: skip reassembling cword and words
- _comp_delimited: treat delimiter as a fixed string
- _comp_deprecate_func: argument order in usage error message
- _comp_get_words: empty prev if unavailable (localvar_inherit)
- _comp_initialize: fix completions of redirections without space
- _comp_initialize: protect against "localvar_inherit"
- _comp_split,_comp_compgen: strip periods from error message
- _comp_split: update error message for the correct options
- _comp_sysvdirs: work around nounset
- _filedir_xspec: clean up unused variable `tmp`
- _get_cword_at_cursor,cvs: quote array length
- _get_first_arg: remove invalid doccomment
- _known_hosts: use array for `options` (work around SC2178,SC2179)
- _mock,rpm: avoid icase flag `s/reg/rep/i` of GNU sed
- _service: quote word
- _slackpkg: do not scan after cword
- 7z: remove redundant `printf '%s\n' "..."`
- ant: work around custom IFS
- apt-cache: check all the words
- aptitude: do not use non-POSIX BRE \w
- aspell: use `_comp_expand_glob` against unexpected splitting
- bash_completion: remove some unnecessary `-a` to `_comp_compgen`
- bts: update functions to generators and fix variable conflicts
- carton: remove a branch never happening
- chgrp: fix typo `_comp_compgen{d  =&gt; _}filedir`
- compat: find compat dir for prefix-install
- completions/*: quote array assignments properly
- completions/*: scan until cword instead of ${#words[@]}-1
- completions/*: work around localvar_inherit
- curl,koji: use _comp_compgen_help
- curl,qemu: avoid using POSIX character classes for mawk
- curl: colon handling for IPv6 address completions
- cvs,mutt,pkg_delete: quote prefix to remove for literal matching
- cvs: avoid variable conflicts
- dict: nounset error when host/port not set
- dict: protect splitting from custom IFS
- dict: work around bash-4.2 array nounset
- dict: work around bash-4.3 `${v+"$@"}` with custom IFS
- dmypy: protect against "localvar_inherit"
- dpkg-source: filter completions by `cur`
- filedir: work around bash-4.2 `compgen -f -- "''"`
- fix problems with `set -o nounset`
- gdb: fix regression that fails to generate command names
- gdb: remove duplicate candidates
- gdb: use POSIX-compatible find expression
- gdb: work around bash 4.4 `${v+"$@"}`
- get_words: work around bash-4.3 connected `${v+"$@"}`
- getent: check noargopts
- getent: work around localvar_inherit
- gzip,isort: fix typo `_comp_com{gp =&gt; pg}en`
- iperf,puppet: use \{m,n\} instead of \? and \+ for POSIX sed
- iperf: work around failglob with backslash in bash-5.0
- ip: Remove non-existent route completion
- isql: work around nounset
- java,kldload: use `_comp_compgen` for filename-based mod names
- java: localize `cur`
- kcov,povray: quote array expansions to avoid extra processing
- kldload,mplayer,mutt: work around nounset
- kldunload: remove unused -X option
- known_hosts_real: match `*.pub` instead of `*pub`
- known_hosts_real: use `_comp_expand_glob` to avoid failglob
- known_hosts_real: work around nounset
- lilo,rpcdebug,slapt-{get,src}: work around nounset
- lvm: replace array slices with existing utility
- lvm: update call to sub-command
- make: handle multiple short options in skipping arguments
- make: typo fix in a code comment
- mdadm,update-alternatives: fix leak variable
- medusa: filter completions by the current word `cur`
- mr: avoid `${var/pat/$'...'}` for compat42 in bash &gt;= 4.3
- mr: exactly match command names
- mutt: avoid unexpected word splitting
- mutt: fix use of regex in the glob context
- mutt: rewrite ${cur/#!/X} to X${cur:1} against patsub_replacement
- mutt: use _comp_dequote for safe eval
- openssl: avoid variable conflicts
- openssl: fix variable `i` leak
- perl: fix ineffective condition in an awk script
- perl: helper call regression from 01611dd3d
- pgrep: do not rely on uncontrolled IFS
- portinstall: use awk and _comp_compgen to filter completions
- povray,sbopkg: check filetype
- povray: process each element against patsub_replacement
- povray: quote an argument properly
- ps,ss: avoid extra expansions by -W "$(...)" in _comp_delimited
- pydoc: specify -a to _comp_compgen_filedir
- pytest: do not filter underscores from parsed option arg choices
- python: avoid variable conflicts
- python: complete filenames for script arguments
- python: complete micropython and pyston script args consistently
- qdbus: remove cur and all the rest arguments
- replace \s with [[:space:]] for POSIX sed/awk
- ri: avoid interference on existing COMPREPLY
- ri: fix wrongly quoted options to compgen
- ri: properly split methods
- ri: split classes using `_comp_split`
- ri: work around localvar_inherit
- sbopkg: add `;` mandatory before `}` in POSIX sed
- sbopkg: work around nounset
- scp: `nounset` mode error on unknown suboption, bash 4.2
- ssh-copy-id: call ssh, not -copy-id for suboption completion check
- ssh-keygen: call ssh, not -keygen to resolve supported protocols
- ssh-keygen: first arg to ssh query for protocol versions
- ssh: avoid variable conflicts
- ssh: fix wrong quoting inside compgen -W
- ssh: remove -a of generators
- ssh: remove unnecessary -a to _comp_compgen
- ssh: resolve relative ssh_config Include correctly
- ssh: use `_comp_compgen` for `_comp_xfunc_ssh_identityfile`
- ssh: work around bash-4.2 nounset
- ssh: work around bash-4.2 nounset
- sudo: use $1 (sudo) as $root_command
- svcadm: fix ineffective IFS for splitting
- svcadm: use the first matching name as command
- sysbench: fix extraction of test-name option
- timeout: always treat word after duration as command
- tipc: remove filtered-out elements
- update-alternatives: quote dirname
- update-alternatives: suppress error for non-existent directory
- update-alternatives: work around localvar_inherit
- upgradepkg: use `_comp_compgen` for `_comp_cmd_upgradepkg`
- use _comp_compgen_split to avoid extra expansions by -W "$(...)"
- use `_comp_compgen_split` to split and filter words
- use `_comp_compgen_split` while keeping filtering by $cur
- use `_comp_compgen` for word list
- use `_comp_split` while keeping filtering by $cur
- use compgen -P prefix -W '"${arr[@]}"' against patsub_replacement
- use XPG4 awk in Solaris
- wol: filter IP addresses by `cur`
- wtf: quote array assignment
- xfreerdp: support the new form of the option /list:kbd
- xfunc ssh identityfile: localize change to cur

Performance Improvements

- _comp_count_args: skip reinitializing cword and words
- mutt: return earlier on empty `cur`
- portinstall: return earlier for -lLo and non-existent file
- vncviewer: set nocasematch inside subshell


2.11		2020-07-25

- lilo: add -B and -E completions
- lilo: honor -C when completing labels
- lilo: don't complete on commented out labels
- test/dnssec-keygen: allow more alternatives in algorithm completion
- : complete commands when prefixed with a backslash
- ipcalc: new completion
- README.md: add introduction
- chromium-browser, firefox: complete on *.txt
- test/ipcalc: fix tests with busybox ipcalc
- lilo: work around shellcheck false positive
- test: port remaining finger, sftp, ssh, and xhost cases to pytest+pexpect
- test: fix spurious hosts fixture failure without avahi-browse installed
- test: remove some no longer needed tcl/expect code
- test: port some _known_hosts_real unit tests to pytest+pexpect
- test: host helper lint and usage fixes
- cryptsetup: add luksChangeKey arg completion
- tsig-keygen: new completion
- test/tsig-keygen: require command for test_options
- test/chown,sudo: parametrize special case test, improve xfail targeting
- test/cd: make dir_at_point produce better debuggable failures
- nmap: parse options from -h output
- nmap: handle options split on equals sign
- openssl: support getting digest list from more recent openssl versions
- openssl: parse available options from $command -help
- openssl: complete -writerand with filenames
- totem: reuse kaffeine completions
- test/cd: remove unused import
- extra/make-changelog: run through black
- : python type hint fixes and improvements
- test: drop redundant black args from docker runs
- test: install black for Python 3.6 too
- test: add flake8-bugbear
- test: shellcheck tweaks
- jarsigner: complete on *.apk too
- python: support executables with minor version
- _known_hosts_real: check that ruptime is present before calling
- ip: improve completion of route subcommands
- test: fix CompletionResult.__eq__ UnboundLocalError
- copyright: add 2020
- printenv: new completion
- _xinetd_services: look up from $BASHCOMP_XINETDDIR, add some unit tests
- test: ignore flake8 messages that are in black's domain
- test: require openssl command for option argument tests
- test: split dependencies requiring Python 3.6.1+ to requirements-dev.txt
- printenv: indentation fixes
- test/printenv: require command for arg completion test
- test/ldd: xfail if --help is not implemented
- test/python: add testcase for submodule completion
- lintian: complete paths for Ubuntu's .ddeb and Debian's buildinfo files
- ip: add support for netns
- apt-get etc: use _apt_cache_packages from apt-cache
- : whitespace tweaks
- : argument interaction improvements
- aptitude: parse options list from --help, hardcode less
- aptitude: add some option arg (non)completions
- crontab, wodim: silence shellcheck SC2191 and SC2192
- bash_completion: address shellcheck SC2220
- : address shellcheck SC2221 and SC2222
- smartctl: hush shellcheck SC2054 false positives
- mplayer: address shellcheck SC1078 false positive
- java, pkgadd, sysbench: address shellcheck SC2124
- chronyc, wvdial: address shellcheck SC2178
- pkgadd: indentation fix
- sysbench: add --test= deprecation TODO
- protoc: complete all --*_out without more specific handling with dirs
- test: don't run shellcheck on completions/.gitignore
- _known_hosts_real, op: address shellcheck SC2184
- test/aptitude: require command where necessary
- test/printenv: xfail if --help doesn't contain options (e.g. busybox)
- insmod, modinfo, modprobe: support xz compressed modules
- quote_readline: fix $ret leak
- info, java: address shellcheck SC2153
- man, perl, route, tipc: address shellcheck SC2053
- tipc: comment grammar and spelling fixes
- renice: address shellcheck SC2254
- test/run: address shellcheck SC2164
- _upvar, _upvars, _variables, rpm: address shellcheck SC1083
- mutt: address shellcheck SC2088
- ssh: add new -Q completions in OpenSSH 8.2p1
- cvs, modprobe, sh: address shellcheck SC2209
- rpm, ssh, umount.linux: address shellcheck SC2120
- _filedir_xspec: address shellcheck SC2140
- scp: address shellcheck SC2089 and SC2090
- java, pkgadd, sysbench: address shellchec SC2124
- test/lib/library.sh: address shellcheck SC2125
- : address shellcheck SC2046
- test: bump shellcheck severity to warning + some disables
- test: tolerate duplicates from compgen actions
- test: make it possible to not care whether command did output or not
- test: run skipif and xfail commands without caring if they output or not
- pgrep, pkill: add --ns and --nslist arg completions
- pytest: add some option arg (non-)completions
- test/cd: fix test_dir_at_point for setups that repeat "trailer"
- test: generalize complete at point test
- nmap: fix option parsing with BSD sed
- carton: fix command parsing with BSD sed
- _filedir*: update link to bug-bash discussion on -X
- openssl: update -starttls completions
- : replace various conditional expressions with arithmetic evaluation
- bash_completion, invoke-rc.d, svcadm: trivial cleanups
- : enable and address shellcheck SC2053
- ssh-keygen: -s and -n completion improvements
- : array subscript cleanups
- doc: recommend arithmetic evaluation
- test: remove shellcheck severity filter, add explicit disables instead
- __reassemble_comp_words_by_ref, java: address and work around shellcheck SC2102
- : more arithmetic evaluation cleanups, thanks to shellcheck SC2004
- bash_completion, java, tipc: for loop whitespace consistency tweaks
- pytest: address shellcheck SC2002
- wget: address shellcheck SC2116
- mutt: address shellchec SC2236
- scp: work around shellcheck SC1003
- ssh, xsltproc: address shellcheck SC2006
- test: make at-point completion tests easier
- doc: add loop variable naming guideline
- apt-cache: fix command mode handling
- crontab: fix loop over already given args
- : various loop iteration improvements
- : remove some unused variables, thanks to shellcheck SC2034
- make: add bmake alias
- test/make: mark more cases as requiring command
- test: run lint tests on Travis in a quickish separate first stage
- extra: trigger docker builds only on test-cmd-list.txt changes
- find: fix -exec etc argument and its completion
- reportbug, scp, sftp, svn: use compgen -c instead of _command
- _command: improve commentary
- ssh-keygen: option and arg completion updates for new versions
- ssh-keygen: add -b arg completions according to specified -t
- ssh-keygen: -O arg updates and improvements
- README: clarify loading automatically on demand
- : doc and comment link updates
- editorconfig: apply yaml settings to .yaml too
- test: add note about unescaped assert_complete single return values
- Source user completion only if it's a file
- nmap: simplify help scraping a bit, don't try to emit unnecessary newlines
- test: fix incorrect fixtures/shared/default xfails/expectations
- : run all shell code through shfmt -s
- apt-get: complete build-dep with dirs
- secret-tool: new completion
- apt-cache: avoid nonzero exit code from _apt_cache_packages
- _xfunc: simplify
- lftp: use "bookmark list" command to list bookmarks
- test: run pytest --verbose in docker
- test: drop not needed sudo on Travis
- test: run all Travis jobs on dist: bionic
- test/_filedir: fix shutil.rmtree on Python < 3.6
- test: replace some echos with printfs
- test: shfmt bashrc
- test: sync shfmt and shellcheck configs
- : use $ifs for storing/restoring $IFS
- test: try harder to restore environment and cwd on failures
- : use more arithmetic evaluation
- dpkg-deb: fix --show/-W completion
- dpkg-deb: add --raw-extract and -X arg completions
- test/mr: handle missing "clean" with skipif
- mr: avoid herestrings, simplify command parsing
- _bashcomp_try_faketty: new function to try running command with a fake tty
- postfix: try to arrange a fake tty so we can tickle the usage message out
- 7z: fix -o/-w attached arg completion
- __reassemble_comp_words_by_ref: avoid triggering nounset on indirect references
- bash_completion: line wrapping tweaks, NFC
- test/unit: include test_unit_known_hosts_real.py in dist
- test/unit: sort files included in dist
- : avoid more errors in nounset mode
- test/inputrc: comment and whitespace tweaks
- : avoid more errors in nounset mode
- : avoid more errors in nounset mode
- : avoid more errors in nounset mode
- : mark nounset mode as supported, issues with it are bugs now
- test: skip various tests if we don't get a useful usage message
- test/runLint: warn about [ ] instead of [[ ]] use
- modprobe, tshark, _included_ssh_config_files: use [[ ]] instead of [ ]
- scp, sftp, ssh: fix completion on options bundled with -4/-6
- _pids, _pgids, _pnames: improve shfmt formatting
- _filedir: avoid unbound variable error on Ubuntu 14 and 16
- ip: add more completions for ip-rule
- ip: style fixes similar to ip-netns
- ip: route shfmt, arithmetic evaluation
- ip: complete route add table arg
- _init_completion: fix unassigned redirect completion in nounset mode
- : drop support for bash 4.1
- test: enable shellcheck SC2035
- qemu, sbopkg: avoid unintentional globbing on option arg completions
- qemu: add -machine arg completion
- : avoid more errors in nounset mode
- _command_offset, route: cleanups
- cfrun: fix $hostfile leak
- : avoid more errors in nounset mode
- bash_completion: fix array set checks with empty elements in them
- _known_hosts: avoid errors in nounset mode and no arguments
- README: document GNU make build requirement
- java, make: avoid errors in nounset mode on Ubuntu 14 and 16
- man, mutt: avoid errors in nounset mode on Ubuntu 14 and 16
- gcc: avoid errors in nounset mode
- bash_completion: trivial cleanups
- test/_known_hosts_real: tolerate duplicates
- test/_known_hosts_real: reset COMP_KNOWN_HOSTS_WITH_HOSTFILE between tests
- test/_known_hosts_real: don't modify class scoped base expected list
- test: regex escape our magic mark for completeness
- .gitignore: clean up some no longer needed ignores
- test/dpkg-query: mark as xfail on non-Debian based systems
- test: simplify completion parsing
- test: partial hostname completion fixes
- test/slapt-src: single expected result handling fixes
- test/xhost: multiple expected result handling fixes
- _known_hosts_real: fix # handling in ssh configs
- _known_hosts_real: fix completion of Host entries after a wildcard etc
- CONTRIBUTING.md: add posix and nounset mode item
- _known_hosts_real: prevent unwanted pathname expansion on host entries
- _included_ssh_config_files: support globs
- _longopt: exclude too many dashes, allow underscores, require ends with alnum
- _known_hosts_real: avoid errors in nounset mode on Ubuntu 14 and 16
- __get_cword_at_cursor_by_ref: fix regression on bash 4.2
- test/inputrc: comment typo fix
- test/inputrc: do not set print-completions-horizontally
- unzip, zipinfo: complete *.aar
- _known_hosts_real: exclude Host negations
- test/ant: gitignore all target cache files
- _xinetd_services: avoid nounset error on bash 4.2
- test/ant: avoid complete-ant-cmd.pl interference with ANT_ARGS
- test/tshark: fix multiple -O completion with no http2 support
- test/xfreerdp: skip --help failure cases
- tshark: complete -r arg with all filenames
- pytest: rewrite in bash, support toplevel funcs, avoid nondef ones and classes
- extra/make-changelog: check and output usage message


2.10		2019-12-05

- README: link to cygwin package
- README: use light gray badges for unknown versions
- test_rpm2tgz: Fix expected output
- test_chromium_browser: Skip test_2 if 'chromium-browser --help' fails
- tar: add missing bsdtar, gtar, and star symlinks
- build: simplify symlink setup
- build: really reset return value before completions check
- build: makefile whitespace tweaks
- test: bashrc comment and whitespace tweaks
- test: more thorough system location interference avoidance
- test: set up BASH_COMPLETION_COMPAT_DIR in bashrc (only)
- test: reformat test_chromium_browser.py source
- pkg_delete: don't limit to FreeBSD
- tar: simplify locating tarball from command line
- test_arp: Skip if ARP tables are empty
- test: generalize check whether we're being run in a container
- test_feh, test_makepkg: invoke grep as "command grep"
- test_getconf: skip if -a doesn't output any POSIX_V*
- test_iconv: skip option completion if --help fails
- test_iconv: add basic file completion test
- iconv: weed out ... from encoding completions
- test: add Alpine Linux container, allow failures for now
- test: support xfail in our markers like skipif, use it a lot
- test: expect failures for various completions without useful --help
- test_lsusb: xfail with unparseable --help
- timeout: fallback to _parse_usage from _parse_help
- test_ifup: accept short option completions too
- test: use one Dockerfile for all dists
- _pnames: adapt for busybox ps, rewrite in pure bash
- test: disallow Alpine failure on Travis
- iconv, lz4, tipc, xsltproc: replace some seds with compgen -X
- test: port compgen and quote tests to pytest+pexpect
- test: port _variables unit tests to pytest+pexpect
- README: add some badges, tweak existing
- test: convert bunch of _filedir unit tests to pytest+pexpect
- test: flake8 fix
- test: convert more _filedir unit tests to pytest+pexpect
- test: add basic autossh test
- chsh, pwck: try _parse_help before _parse_usage
- cal: try _parse_help before _parse_usage
- postfix: option completion is expected to fail at the moment
- badblocks: fix $i leak
- .gitignore: add configure.lineno
- test: xfail getent and pwdx option completions with unparseable --help
- test: zopflipng flake8 fix
- test: enforce minimum pytest version
- build: make pytest executable configurable, look for pytest-3 too
- test_pwdx: xfail more unparseable help cases
- test: xfail unparseable mock and munin-node-configure --help cases
- pgrep: fix fallback to _parse_usage
- test: don't try to install black on Python < 3.6
- man: fall back to _parse_usage for _parse_help
- test: add basic tox fixture
- tox: do simple parse on tox.ini if --listenvs* yields nothing
- README: badge title tweaks
- influx: new completion
- chromium-browser: add --proxy-server arg completion
- README: drop distro badges, link to Repology instead
- ip: invoke the tool as $1
- test: fix required pytest version
- test: register our pytest markers to hush warnings from 4.5+
- gssdp-discover: new completion
- tox: complete defaults after a --
- tox: include -- in option completions
- test: drop sourcing our no longer existing profile.d script
- test: don't expect a .tox dir in fixture
- test: expect failures for bc without --help useful with _longopt
- test: skip gssdp-discover --message-type when option not available
- xvfb-run: new completion
- test: avoid gnome-mplayer core dump on Ubuntu 14
- test: remove unnecessary returns after pytest.skip
- test: fix acroread fixture dir
- java: make jar/zip listing work with unzip
- test: avoid some sed -r/-E runLint false positives
- ipv6calc: parse help instead of hardcoding option list
- lvm pv*, vg*: parse help instead of hardcoding option list
- pkgutil: fix $i leak
- pkg-get: fix $i leak
- chromium-browser: Add support for .mhtml files
- _terms: combine and simplify somewhat
- _terms: search directly from various terminfo dirs
- test: mark sbcl-mt xfail due to whitespace split issues
- test: always run tests which don't require tested command
- test: don't sort expected completion lists under the hood
- test: hush flake8-bugbear B010
- test: xfail MAC address completion without networking
- gprof: _parse_usage, drop hardcoded option list
- lintian-info: _parse_help, add more option arg (non)completions
- screen, smartctl, update-alternatives: _parse_help, drop hardcoded option list
- sysctl: invoke completed sysctl instead of one from path to get variables
- test: mark more tests that parse command output as requiring command
- test: add require_longopt xfail helper, use it
- dmypy: new completion
- wine: install for wine-development and wine-stable too
- perltidy: associate *.t
- ssh: option and argument completion updates
- java: don't assume jar is installed
- _sysvdirs: always return 0
- test: xfail locale-gen option completion if --help is not available
- valgrind: look tool names from lib/*-linux-gnu dirs too
- test: adjust java expectations based on whether jars can be listed
- op: direct command parsing stderr to /dev/null
- ri: hush some warnings
- carton: new completion
- CONTRIBUTING: disable e-mail bug gateway due to spam
- apt-get: fix pkg version completion if it contains a colon
- _variables: add TERM and LC_* completion
- cppcheck: Add new standards to --std option.
- test: mark dcop and mr testcases requiring the cmd as such
- makepkg: fix option completion
- .gitignore: mypy cache
- test: add minimal mypy config
- test: python typing fixes
- shellcheck: add some option arg (non)completions
- test: shellcheck config cleanups
- bash_completion.sh: shellcheck SC2086 fixes
- _filedir: remove unused $x
- _filedir: avoid duplicate dirs internally, and a compgen -d call for files
- curl: make @filename completion do the right thing with dirs
- pkg-config: generate Name from autotools PACKAGE
- unzip, zipinfo: complete *.aab
- pkg-config: Relative paths
- autotools: Replace pkgdatadir with datadir
- cppcheck: Remove deprecated option 'posix'  for '--std='
- perl: fix completion with space between option and argument
- perl: indentation fixes
- test: add some trivial perl -E/-e cases
- screen: complete first arg with serial devices
- screen: add //telnet completion
- screen: add serial device basic arg (non)completion
- update-rc.d: remove dead code
- update-rc.d: indentation fix
- ssh, scp, sftp, ssh-copy-id, curl: improve identity file completion
- unrar: complete on *.exe
- gcc: support new --completion option
- test: bump black to >=19.10b0


2.9		2019-04-27

- completions/Makefile: Fix check-local in VPATH builds
- ssh: Order various switch cases closer to alphabetical
- ssh: Sync query type list with OpenSSH 7.5p1
- ssh: Sync config option lists with OpenSSH 7.5p1, add some value completions
- apt-get: Complete install package=versions
- apt-get: Add indextargets to list of suggested commands
- apt-get: Simplify -t and friends completion, support Ubuntu
- apt-get: Sync option list with apt 1.5.1
- apt-get: Add -h/-v/-o non-completions
- dpkg-source: Add --before-build --after-build --commit, and --print-format
- README: Link to various distro packages
- README: Point Debian and openSUSE badges towards unstable and Tumbleweed
- ssh: Complete all *File option args with _filedir
- test: Add comment line to fixtures/_known_hosts_real/known_hosts
- _known_hosts_real: Reimplement known hosts file parsing in pure bash
- mount, umount: Deprecate on Linux in favor of util-linux >= 2.28 ones
- .dir-locals.el: Set -O extglob for flycheck bash checks
- reportbug: Add bunch of option arg (non-)completions
- a*,ccze,curl,wget: Support completing arg of last bundled short option
- b*: Support completing arg of last bundled short option
- cvs: Add completion for the log command
- chage, chpasswd: Add -R/--root arg completion
- dhclient: Parse options with _parse_usage
- dhclient: Add some option arg (non-)completions
- dselect: Parse options with _parse_help
- c*, d*: Support completing arg of last bundled short option
- ether-wake: Install for etherwake as well
- e*: Support completing arg of last bundled short option
- f*: Support completing arg of last bundled short option
- g*: Support completing arg of last bundled short option
- scrub: New completion
- ecryptfs-migrate-home: New completion
- h*: Support completing arg of last bundled short option
- i*: Support completing arg of last bundled short option
- lftp: Support completing arg of last bundled short option, handle -s
- xgamma: Comment spelling fix
- links: Install completion for links2 too
- _filedir: Refactor to remove heredoc-dependent loop
- _filedir: Drop unnecessary evals
- wget: Remove nonexistent arg to _ip_addresses
- _ip_addresses: Add option to complete all/v4/v6 addresses, add unit test
- links: Major rework, parse options from --help, add option arg completion
- iperf, nc: Include IPv6 addresses in bind address completions
- chmod: New completion
- json_xs: New completion
- README: Add Q/A on overriding a completion, modernize local install answer
- build: Do cmake, pc, and profile variable replacements in Makefile
- build: Use AC_PROG_SED to locate sed
- pkg-config: Complete on *.pc files
- build: Improve cleanup of test/log and test/tmp dirs
- test: Run perlcritic and flake8 on perl and python helpers in Travis
- lzma: Use _parse_help instead of hardcoded option list
- [jkl]*: Support completing arg of last bundled short option
- __load_completion: Avoid bad array subscript on "commands" ending with slash
- aclocal, automake: Support versioned 1.16 executables
- _xspecs: Declare as global on bash >= 4.2
- README: Note $BASH_COMPLETION_USER_DIR
- README: Add instructions for overriding completions system wide
- pytest: Rename from py.test to follow upstream recommended name
- rpm: Complete --licensefiles with -q
- ngrep, tshark: Complete on *.pcapng too
- ifquery: New ifup alias completion
- _count_args: Add support for not counting specified option args
- ifup etc: Add option and option argument completion
- ssh, scp, sftp: Support completing arg of last bundled short option
- completions/Makefile.am: Use install-data-hook, not install-data-local
- mplayer: Add common supported module music formats
- mplayer: Associate with *.S[3T]M, *.med, *.MED
- minicom: Use _parse_help instead of hardcoded option list
- modinfo: Use _parse_help instead of hardcoded option list
- m*: Support completing arg of last bundled short option
- mysqladmin: Reuse --default-character-set completion from mysql
- mysql, mysqladmin: Complete --ssl-{ca,cert,key} option arg
- modinfo: Fall back to _parse_usage if _parse_help yields no results
- cryptsetup, nc, sh: Skip option args when counting arguments
- cryptsetup: Add some option arg (non-)completions
- n*: Support completing arg of last bundled short option
- profile.d: Avoid tested variable values being confused as [ ] operators
- passwd: Try _parse_help before _parse_usage to parse options
- [op]*: Support completing arg of last bundled short option
- pyvenv: Support versioned 3.6-3.8 executables
- querybts: Use _parse_help, not hardcoded option list, misc improvements
- reportbug: Run _parse_help and apt-cache more selectively
- [qr]*: Support completing arg of last bundled short option
- jq: New completion
- tune2fs: Update -o/-O argument lists
- sqlite3: Add some option arg (non-)completions
- sshow: Add -p arg completion
- strace: Use _parse_help instead of hardcoded option list
- sudo: Parse options from help/usage output, add some long option support
- sysctl: Recognize --pattern/-r and --load options
- sudo: Improve long option arg handling
- s*: Support completing arg of last bundled short option
- jq, sqlite3: Protect against negative array subscripts
- test: Support running with local BSD binaries, do it w/ ubuntu14 in CI
- xdg-settings: Make help parsing work on BSD
- tracepath: Actually use our separate completion instead of _known_hosts
- tracepath: Add -m and -p arg non-completions
- urlsnarf: Add -p arg completion
- uscan: Use _parse_help instead of hardcoded option list
- [tu]*: Support completing arg of last bundled short option
- [vwx]*: Support completing arg of last bundled short option
- fio: New completion
- ngrep: Add "any" to -d arg completions
- tshark: Get available interfaces from -D output
- pylint: Option arg completion improvements
- mplayer: Associate with *.w64
- test: Mark flake8 untested if it seems broken
- test: Limit number of wget option completions to avoid unresolved result
- pydoc, pylint: Skip module completion if current looks like a path
- gpgv: New completion
- extra/git-post-commit.sh: Add git post-commit Docker Hub trigger hook
- _services: Try systemctl list-unit-files if systemctl list-units fails
- test: Run docker tests with --verbose
- test: Bump expect's match_max to 20000 by default
- test: Fix buffer size option listing in run --help
- pylint: Implement comma separated --confidence arg completion
- pylint: Bring -f/--format arg completion up to date with pylint 1.9.2
- pydoc, pylint: Determine python2/3 based on command basename only
- test: Limit number of pylint option completions
- git-post-commit: Avoid some error trash when HEAD is not a symbolic ref
- tox: Fall back to --listenvs for env list if --listenvs-all fails
- test: Update generate for pytest+pexpect
- test: Convert first bunch of completions to pytest+pexpect
- test: Don't include our magic mark in completions
- test: Fix completion list when there's one completion
- test: Convert remaining simple x* to pytest+pexpect
- test: Improve generate to handle basic args and problematic chars
- test: Use make pytest docker executable env-configurable, default pytest-3
- test: Use /root/.local/bin/pytest on centos6 by default
- test: Use /root/.local/bin/pytest on ubuntu14 by default
- test: Make "generate" do the right thing with more partial args
- test: Treat non-dash args better in generate
- iperf: Add g/G to --format completions
- iperf: Install for iperf3 too
- iperf: Improve client/server specific option parsing
- xmodmap: Use _parse_help instead of hardcoded option list
- iperf: Add g/G to --format completions
- iperf: Install for iperf3 too
- iperf: Improve client/server specific option parsing
- xmodmap: Use _parse_help instead of hardcoded option list
- test: Add support for pytest pre-test commands
- test: Add support for skipping individual tests based on shell command status
- test: .gitignore pytestdebug.log
- test: Add class level skipif based on bash exec result
- test: Log pexpect interaction to $BASHCOMP_TEST_LOGFILE if set
- test: Fixture reorganization
- test: Add ability to selectively ignore diffs in environment
- test: Implement load_completion_for using assert_bash_exec
- test: Mark xfreerdp as expected failure for now
- test: chdir to fixtures dir in Python as well
- test: Allow __load_completion to fail
- test: Sort completion results in Python for ease of use in Python tests
- test: Use more conventional Python file names for tests
- test: Add support for per-test env modifications
- test: Fix jq and scrub skipif commands
- test: Support setting cmd=None to require no command, for unit tests
- test: Use test_unit_* prefix for unit tests, to avoid name clashes
- gccgo: Add as a GCC completion target
- gcc: Add g++, gcc, gccgo, and gfortran *-7 aliases
- __load_completion: Avoid unnecessary lookups from nonexistent dirs
- unzip, zipinfo: Associate with *.whl
- test: Make case specific env entries shell code, not escaped
- test: Pylint fixes
- test: Remove kill, killall remnants
- nc: Add some more option (non-)completions
- test: Pylint fixes
- firefox etc: New non-xspec completion
- chromium-browser, google-chrome*: New non-xspec completion
- doc: Start documenting new pytest+pexpect tests
- mplayer etc: Complete on *.crdownload partial downloads in addition to *.part
- freeciv-gtk2: Install for freeciv and freeciv-gtk3, rename to freeciv
- freeciv: Option and arg completion updates
- isort: New completion
- gnome-screenshot: New completion
- perlcritic: New completion
- gcc: Add g++, gcc, gccgo, and gfortran *-[568] aliases
- test: Remove leftover completion/ls.exp
- tshark: update -T and -t completions
- tshark: prevent a single-character file from breaking -G completion
- tshark: support .gz and .cap files for -r expansion
- xmllint: Improve --encode, --pretty, and --xpath arg (non-)completions
- chromium-browser: consider chrome and chromium as aliases
- conftest: fix RemovedInPytest4Warning due to use of node.get_marker
- doc: Some pytest install clarifications
- test: fix flake8 complaints about unused imports
- test: fix misinterpretation of completion output in tests
- okular: Added support for xz-compressed files.
- hunspell: New completion
- op: New completion
- mypy: New completion
- 7z: add .msi support
- dpkg: List held packages
- makepkg: Use _parse_help instead of hardcoding option list
- test: Allow unknowns options in makepkg option completion
- makepkg: Don't apply to other than Slackware makepkg
- locale-gen: New completion
- cancel: Add some option arg (non-)completions
- cancel: Split long line
- tar: Support completions for zstd compression extensions
- tar: Clean up some redundant code
- ssh-copy-id: Add -i and -o arg (non-)completions
- grpck: Add --root/-R arg completion
- grpck: Parse options with _parse_help, falling back to _parse_usage
- test: Add requirements.txt for installing dependencies
- _filedir_xspec: Fallback to suggesting all files if requested
- doc: Update docs on generating simple tests
- test: Expect failure in gkrellm if there's no X display
- arp: New completion, somewhat incomplete
- test: Be more consistent with "CI" env var examination and xfails
- unzip, zipinfo: Associate with *.xar (eXist-db application package)
- tcpdump: Various option and their arg completion updates
- doc: Note email issues gateway
- Travis: Remove unused PYTEST env var
- pydocstyle: New completion
- _count_args: Add 3rd arg for treating option-like things as args
- chmod: Fix file completion after modes starting with a dash
- .gitignore: Add pytestdebug.log
- sysctl: Treat -f as alias for -p/--load
- xrandr: match the output name exactly for --mode
- chmod: Fix "-" completion
- _xspecs: Simplify bash version check
- tshark: Support preferences (-o) completion with memoization
- tshark: fix completion of -Xlua_script option
- test/t: Avoid trailing backslash in Makefile.am's to appease automake
- build: Include test/t in dist tarball
- test: Clean up and docker-ignore __pycache__ dirs
- test: Mark some xfails based on if in docker instead of in CI
- inotifywait: New completion
- _ip_addresses: Avoid completing ipv4 ones with -6
- test: Convert _ip_addresses unit tests to pytest+pexpect, extend some
- inotifywait: Avoid some false positive event names
- inotifywait: Fix -e completion with BSD sed
- inotifywatch: New completion, common with inotifywait
- man: Fix completion when failglob option is enabled
- test: Add pre_cmds support for completion fixture
- test: Rename completion.line to .output
- test: Match Python's default locale unaware sort in bash setup
- test: Refactor/improve completion results checking
- __parse_options: Avoid non-zero exit status
- ifstat: New completion
- iperf, iperf3: Add some option arg (non-)completions
- ifstat: Make work with iproute2 version
- test: Remove unnecessary autouse=True from fixtures
- .gitignore: Add .python-version (for pyenv)
- test: Clean up man tmp dir
- test: Remove unnecessary ri xfail
- jsonschema: New completion
- xfreerdp: Update for more modern xfreerdp
- adb: Deprecate in favor of one shipped with the Android SDK
- xm: Deprecate completion for obsolete command
- ssh: support RemoteCommand and SyslogFacility options
- test: sort t/Makefile.am EXTRA_DIST in C locale
- test: rewrite "generate" in Python, fix trailing backslash in EXTRA_DIST
- xfreerdp: reinstate support for old versions with dash option syntax
- test: remove no longer needed completion/*.exp
- test: avoid interrupting magic mark output
- test: Increase expect pty to 160 columns
- pytest: complete pytest-xdist --dist, --numprocesses, and --rsyncdir
- post-commit: trigger on test/requirements.txt too
- test: add dependency on pytest-xdist
- extra: add git pre-push hook for triggering Docker Hub builds
- test: use pytest-xdist
- python: make warning action list reusable
- pytest: complete --pythonwarnings/-W arg
- copyright: add 2019
- _longopt: don't complete --no-* with file/dirname arg
- nsupdate: new completion
- _longopt: pick first long option on a line, not last
- _longopt: simplify regex, use printf instead of echo, drop unnecessary sort
- test: add some _longopt unit tests
- test: include test_unit_longopt.py in dist
- modprobe: append = to module parameter completions
- dnssec-keygen: new completion
- shellcheck: new completion
- ulimit: new completion
- ulimit: improvements when -a is specified
- ping, tracepath: parse options primarily with _parse_help
- modprobe: module parameter boolean values
- bzip2: recognize *.tbz2 as bzipped
- : remove spaces immediately within $()
- : remove whitespace after redirections
- msynctool: code cleanups
- : spelling fixes
- svn, svk, wget: use _iconv_charsets
- : make _parse_usage fallbacks more concise
- valgrind: look up tools from libexec dirs too
- .dir-locals.el: use flycheck-sh-bash-args
- : format Python code with black
- : format Perl code with perltidy
- test: check for perltidy errors and warnings
- test/tools: run all tools, don't stop at first failure
- : arithmetic expression related cleanups
- test/tools: fix exit status incrementation
- gdb: relax core filename pattern
- _parse_help: look for long options somewhat more eagerly
- test: add some gdb non-core files
- ssh: don't offer protocol v1 specific options if it's not supported
- : whitespace tweaks
- various: apply file vs dir special cases also when invoked with full path
- phing: don't complete -l with files
- phing: fix getting just a tab for options on CentOS 6
- : add missing "ex: filetype=sh"
- _upvar: delete, unused
- Revert "_upvar: delete, unused"
- _upvar: deprecate in favor of _upvars
- : error output consistency, use bash_completion prefix
- : more arithmetic expression consistency
- tshark: ignore stderr when parsing -G, -L, and -h output
- test: improve tshark -O arg completion test
- tshark: speed up tshark -O completion
- apt-cache: protect showsrc against regex specials
- synclient: remove unused local variable "split"
- mypy, mysql, xmms: don't complete unknown split long option args
- apt-get: protect source against regex specials
- AUTHORS: remove unrelated project association from my entry
- iptables: improve existing table arg parsing
- test: add script to run shellcheck, run it in Travis, allowing failure for now
- ebtables: improve existing table arg parsing
- _included_ssh_config_files: doc grammar fixes
- _included_ssh_config_files: store found included files in an array
- : shellcheck error fixes
- make: quote eval array definitions to work around shellcheck SC1036 bug
- ri: shellcheck error fixes
- tar, valgrind: avoid some herestrings
- test: make runLint search for herestrings
- test: move default shell option from run-shellcheck to .shellcheckrc
- shellcheck: disable bunch of warnings when in "-S warning" mode
- arp, ccze, ifstat, inotifywait, makepkg: invoke sed with "command"
- __parse_options, 7z: avoid herestrings
- CONTRIBUTING: note runLint and run-shellcheck
- CONTRIBUTING: add upstream vs bash-completion considerations
- doc/testing: remove lots of legacy info, add some new
- xvnc4viewer: code cleanups
- ssh: fix suboption completion with combined -*o
- ssh: make option completion case insensitive
- ssh: make -o protocol completion less hardcoded
- 7z: add some TODO notes on parsing "i" output for extensions
- : avoid shellcheck SC1010
- : avoid shellcheck SC1007
- dist: include various *.in explicitly
- test: use parallel make in docker test
- test: use $(RM)
- test: group dejagnu related stuff in one place in Makefile
- test: run pytest tests with make check
- test: add fixtures/make/extra_makefile to CLEANFILES


2.8		2018-03-17

- lftp: Support ~/.local/... bookmark location
- ktutil: Don't leak i and command environment variables
- uscan: Don't leak cword and words environment variables
- xm: Don't leak args and commands environment variables
- aptitude-curses: Use aptitude completion
- groupdel: Parse and handle long options
- curl: Fix -x etc option argument hostname completion
- : Protect _known_hosts_real from user input treated as options
- aptitude: Add keep to commands list
- : Protect shopt reset from non-default $IFS
- alias: Fix completion followed by =
- oggdec: New completion
- Add support for .lzo extension (--lzop) to tar
- Add support for .lz4 extension to file-roller
- lsusb: New completion
- lspci: New completion
- vpnc: Improve config completions
- vpnc: Add some option argument (non)completions
- iptables: Parse options from --help output
- iptables: Avoid stderr trashing when invoked as non-root
- iptables: Use invoked command instead of hardcoded "iptables"
- README.md: Whitespace cleanup
- ebtables: new completion
- test: Use prebuilt docker hub bash-completion images
- rfkill: Rename to _rfkill to avoid conflict with util-linux >= 2.31
- man: Don't use $MANPATH directly
- unzip, zipinfo: Associate *.gar
- pylint: Install for pylint-2 and pylint-3 too
- pylint: Invoke python3 to search for modules if command contains 3
- tox: New completion
- tox: Avoid stderr spewage when -e invoked without tox.ini
- tox: Include ALL in -e completions
- tox: Remove spurious executable bits
- xdg-settings: New completion
- test: run bash with --norc to avoid system bashrc
- test: Add some comments regarding bash init in library.exp
- test: Remove things moved to library.exp from bashrc
- Whitespace
- ri: Fix integrated ri 1.8 class completion
- apt-get: Complete *.deb on install if argument contains a slash
- reportbug: Add -A/--attach arg completion
- reportbug: Don't hardcode option lists, split option args at =
- ssh-keygen: Add -E arg completion
- xdg-mime: New completion
- test: dpkg,ls,_tilde: Skip gracefully if no uniq user for completion is found
- test: Ignore duplicates in find_unique_completion_pair list
- ssh: Declare $prefix closer to use
- ssh: Add -J/ProxyJump completion
- _known_hosts_real: Document -a better
- nproc: New completion
- getconf: New completion
- pv: New completion
- cryptsetup: Update option lists
- dpkg: Add -V/--verify arg completion
- lowriter,localc etc: Use corresponding oo* completions
- perltidy: New completion
- flake8: Various option arg completion improvements
- pycodestyle: New completion
- test: Work around broken centos/fedora postfix config in non-IPv6 setup
- Revert "travis: Don't build local docker images, use vskytta/bash-completion ones"
- test/docker: Tweak work dir, add bash as default cmd
- python: Support completing dotted module hierarchies
- lsscsi: New completion
- radvdump: New completion
- java: Complete *.war
- ssh,ssh-add,ssh-keygen: Complete pkcs11 options with *.so
- kldunload: Show modules with digits
- kldunload: Increase robustness of compgen filters
- _known_hosts_real: Add option to filter IPv4 and IPv6 addresses
- ping*,ssh,scp,sftp,tracepath6: Filter IPv4/IPv6 literal addresses
- geoiplookup: New completion
- xdg-mime,xdg-settings: Fix inclusion in tarball
- tox: Complete comma separated -e arguments
- mplayer: Disable user config when parsing options
- : Comma separated opt arg completion improvements
- xine etc, ogg123, mplayer -audiofile: Associate with *.oga
- dpkg: Fix man page section in comment
- dpkg: Complete --vextract on deb files
- dpkg-query: Fix -W/--show completion
- ccze: New completion
- make: Pass script to sed as parameter instead of using process substitution
- openssl: Add completion for the genpkey, pkey, pkeyparam, and pkeyutl commands
- _avaiable_interfaces: Get rid of eval
- __load_completion: Code cleanup
- __load_completion: Load "xspec" completions dynamically too
- mkdir: Complete on files in addition to dirs
- mkdir: Complete files without appending space
- Bump copyright years to -2018
- __expand_tilde_by_ref: Eval tilde expansion only, simplify
- dd: Omit space only when offering one completion ending with =
- dd, find, gcc: Remove unnecessary tilde expansion
- test: Add assert_complete_homedir, use in dpkg and ls
- bzip2, gzip, and other compressors: Use _tilde instead of _expand
- test: Add some _expand unit tests
- _expand: Reuse __expand_tilde_by_ref and _tilde logic, clean up
- info, man, rsync: Defer _expand invocation
- test/unit: Whitespace tweaks
- test: Fix getting username in non-login shells
- make-changelog.py: Use python3


2.7		2017-07-01

- pdfunite: New *.pdf completion
- Makefile: update default compatdir
- pyflakes: Remove redundant xspec completion
- Make user completion file configurable, disable in tests


2.6		2017-06-27

- xine etc: Associate *.webm and *.weba
- mplayer: Associate *.weba
- xine etc: Associate uppercase *.WM[AV]
- Add missing sidedoor to .gitignore
- Bump copyright years
- eog: Associate with *.j2c and *.jpg2
- xv: Associate with *.j2c, *.j2k, *.jp2, *.jpf, and *.jpg2
- Travis: Switch tests to docker, update to Ubuntu 14
- synclient, udevadm: Avoid use of posix char classes for awk
- ssh-keygen: Make option parsing work with OpenSSH < 7
- (docker): Run completion tests with xvfb-run, e.g. for gkrellm
- tshark -G: Avoid stderr noise when running as superuser
- (docker): Pull in missing fedoradev xvfb-run which dependency
- newlist: Parse options from --help, add some arg non-completions
- unshunt: Parse options from --help
- alpine: Parse opts from -h output, add some opt arg completions
- arch: Parse options from --help
- Don't offer * as configured interface when there are none
- ri: Add option and arg completions
- Don't define BASH_COMPLETION_COMPAT_DIR
- oowriter: Associate with *.pdf
- py.test: New completion
- _configured_interfaces: Parse from /etc/network/interfaces.d/* on Debian
- man: Don't check OSTYPE or GNU userland, just enable on all systems
- _user_at_host: Append @ suffix to username part completions
- _user_at_host: Set nospace only when completing username part
- bind: Add option and argument (non-)completions
- xine etc: Fix *.m4a association
- mplayer, xine, etc: Associate *.mp4a and *.mp4v
- mplayer: Remove duplicate *.m4a and *.m4v associations
- gm: New completion, commands only for now
- openssl: Add sha2 commands
- openssl: Parse available digests from dgst -h
- python: Fix traceback avoidance on module completion error
- micropython: New completion, aliased from python
- python: Split module completion to separate helper
- dpkg: Fix dpkg -i home dir completion
- tar: Comment spelling fixes
- Expose version in BASH_COMPLETION_VERSINFO, use it in profile.d script


2.5		2017-02-04

- : Whitespace fixes
- Travis: zopfli is AWOL?
- make: Declare _make_target_extract_script like other functions
- : Move indentation settings to .editorconfig
- CONTRIBUTING: Reorder sections
- .ipa is just a zip file and we should let unzip handle it
- deja-dup: New completion
- perl: Remove full path to cat in PERLDOC_PAGER call
- mr: New completion
- dd: Sync completions with coreutils 8.24
- mplayer: Associate with *.mjpg, *.mjpeg
- ssh-keygen: support ed25519 keys
- ssh-keygen: Parse switches with _parse_usage, not _parse_help
- Add support for Include in ssh config (#70)
- ant: parse targets in imported buildfiles
- Support for python gui source files
- ip: Recognize address in addition to addr
- ip: Recognize a as alias for address and l for link
- Add sidedoor to _ssh() completion
- test/config/*: Delete trailing whitespace
- Fix bug in 'make' completion when using BSD sed
- ccache: fix completing compiler's flags
- Add more tests for ccache
- javac: Complete -cp like -classpath
- Minor edits to README.md (mostly formatting)


2.4		2016-08-12

- tipc: add tipc completions
- mpv: Don't install symlink for it, fixes #24
- aclocal: Install completion for 1.14 and 1.15, fixes #25
- Better handling of typeset/declare
- Add tests for declare/typeset
- Support completing array variables and expansions
- tipc: merge functions into main
- tipc: use bash here string instead of echo
- tipc: remove unnecessary function _tipc_get_val()
- tipc: add command prefix to link sed
- The BitKeeper completion used the wrong set of commands
- man: Prioritize MANPATH, simplify, add fallback e.g. for busybox, fixes #28
- cppcheck: Complete filenames too for --platform
- tipc: use cur variable for flag completion
- tipc: readd call to complete command
- Use shell globbing instead of ls to source files in compat dir
- aspell, minicom, mysql: Replace use of ls with printf
- rpm: Fix --whatenhances arg completion
- make: Avoid a grep
- vncviewer: Cleanup shopt use, drop an eval
- aptitude: List packages using _apt_cache_packages, fixes #33
- tar: silence --version's stderr output
- Travis: First steps toward testing with OS X
- chroot: New (generic long options) completion, see #38
- pyvenv: New completion
- abook: Parse long options from command including full path
- pushd: Use _cd completion for CDPATH support, closes #38
- Support pod document files for perldoc
- perl: Remove some duplicated code
- mysql: Avoid --default-character-set error with failglob, fixes #46
- tipc: remove unnecessary return values
- tipc: make loop variables local
- tipc: use double brackets in if conditions
- apache2ctl, aspell, make: Don't hardcode completion generator command
- python: Support -Q and -W arg completion without space
- xetex, xelatex, luatex, lualatex: Associate with tex files
- CONTRIBUTING: Note patch preferences if not using GitHub pull requests
- tipc: suppress tipc error messages
- tipc: handle complete words without trailing space
- tipc: fix missing last char in link name completion
- tipc: Indentation fix
- tipc: Invoke ls with "command"
- hcitool,svcadm,tar: Spelling fixes
- pypy3: Alias to python
- pypy*: Add basic --jit arg completion
- : Remove redundant return 0's
- : Trivial cleanups
- pkg-get,pkgrm: Drop unnecessary _have calls
- jarsigner: Add some option arg (non)completions
- pkg-get: Don't use hyphens in function names
- lrzip: Add -m arg noncompletion
- javadoc: Add bunch of option arg (non)completions
- rpm: Offer --filetriggers with -q


2.3		2016-03-28

- lvm: fix all commands that should get all PVs
- lvm: pvcreate should be able to use all block devcices
- make check: Test syntax of all completion files
- Completion for python zip archives
- unzip, zipinfo: Complete on *.pyz
- python: Complete all files only if -c is before current word
- python: Don't offer options after -c
- python: Complete all files also after -m
- python: Simplify code
- tar: Don't write to /tmp/jetel
- tar: Fix GNU tar help output parsing regex, fixes #15
- tar: Remove unused variable
- tar: Detect GNU/other from --version only once per session
- : Use [:blank:] instead of $'\t ' tricks where appropriate, fixes #19
- gnokii: Use <<< instead of echo + pipe
- make: Use <<< instead of printf + pipe


2.2		2016-03-03

- feh: Add new sort type
- kcov: Add new sort types, complete --replace-src-path arguments
- Add config for cmake to bash-completion.
- _mac_addresses: Use explicit C locale for ifconfig.
- aclocal, automake: Install for *-1.10, *-1.12, and *-1.13 too.
- cvs rm: Don't filter existing files with -f.
- Use == instead of =.
- nmcli completion was integrated upstream
- Revert "nmcli completion was integrated upstream"
- nmcli: Deprecate our completion, upstream has one in 0.9.8.0.
- sh: Complete script arguments with all filenames.
- cvs: Fix checkout -j non-completion.
- Clean up/compact various globs.
- wget: Stop completing after --help/--version.
- wget: Drop incorrect -nv arg completion.
- wget: Add --accept-regex/--reject-regex/--regex-type arg (non)completions.
- perl*: Fix handling of relative paths in @INC.
- perl: Fix -dt: completion.
- 7z: New completion.
- file-roller: Reuse unzip's xspec.
- 2to3: New completion.
- perl: -d/-dt option argument is optional
- dpkg: Suppress unwanted error messages
- cppcheck: Add new --enable option argument and --library argument completion
- export, _variables: Do TZ= completion.
- Cosmetics.
- make: Use only posix basic regexps with sed
- _longopt: Run commands in C locale.
- aptitude: safe-upgrade accepts package name as parameters (Alioth: #313638, Debian: 673235)
- bzip2, gzip, lzma: Cleanups.
- zopfli: New completion.
- make: Fix basic regex for portability
- _known_hosts_real: Pre-expand \t instead of relying on sed supporting it.
- dict: Trivial regex cleanup.
- abook, kldunload: Pre-expand \t instead of relying on sed supporting it.
- cc, c++: Install minimal completion for non-gcc ones.
- cc, c++: Check path to binary when finding out if it's gcc.
- f77, f95: Use the same completion as for g77, g95 if they are links to gfortran
- 7z: Improve completion
- mplayer: -dvd-devices takes dvd devices, dirs and .iso files as argument
- _known_hosts_real: Exclude %h HostName entries.
- timeout: New completion.
- complete on freerdp-specific known hosts list
- bts: New completion, thanks to Federico Ceratto.
- appdata-validate: New completion.
- uscan: New completion, thanks to Federico Ceratto
- Refactor bts and uscan, since they use common functions
- wtf: Hush stderr when db file doesn't exist.
- wtf: Don't offer -f if it was already specified.
- wtf: Look for acronym db from /usr/share/games/bsdgames/acronyms too.
- cppcheck: Include - in --file-list completions.
- optipng: New completion.
- lz4: New completion.
- lintian: Replace some grep+cuts with awk
- gcc, lintian, make, pkgadd, slackpkg: grep -> "command grep"
- aptitude, dpkg: Replace some grep+cuts with awk
- ip: Add some addr, addrlabel, and route arg completions
- jpegoptim: New completion
- Bump copyright years to 2014.
- ssh-keygen: New completion
- portsnap: New completion.
- freebsd-update: New completion.
- hwclock,ionice,rtcwake: Deprecate in favor of util-linux ones
- _*: Install our deprecated completions too, try loading them secondarily
- cal,chfn,chsh,dmesg,eject,hexdump,look,newgrp,renice,runuser,su,write: Deprecate on Linux in favor of util-linux ones
- pyflakes: New completion
- flake8: New completion
- ri: Fix colon handling in class completion.
- ri: Fix class completion with ri >= 3.
- FAQ: Clarify that we mean the bash man page for M-/
- profile.d: Don't return from a sourced script
- man: Use -w instead of --path
- xrandr: Add (some) --setprovider* arg completion support
- xrandr: Use the invoked command internally, not hardcoded "xrandr"
- qemu: Apply completion to qemu-kvm/-system-i386/-system-x86_64 too
- qemu: Fix -balloon arg completion
- pngfix: New completion
- gdb: support --args style completion
- eog: Complete on *.pgm
- nslookup: complete on hosts
- hostname: New completion
- pypy: New completion identical to python
- Use more straightforward way to check bash version
- dpkg: Add support in dpkg completion for .ddeb
- make: completion shouldn't be confused by the output of $(info confuse: make)
- Puppet: use puppet terminology
- Puppet: puppet -* doesn't imply 'puppet apply'
- Puppet: puppet parser support
- Puppet: agent: update options list, accordind to 'puppet help agent'
- Puppet: apply: update options list, accordind to 'puppet help apply'
- Puppet: cert: update options list, accordind to 'puppet help cert'
- Puppet: describe: update options list, accordind to 'puppet help describe'
- puppet: Exit early on -h|-V|--version in addition to --help
- puppet: Parse most subcommand options from "help subcommand" output
- puppet: Recognize some short options
- mpv: New completion alias + adjustments for mplayer
- _services: README in sysv init dir is not a service
- __reassemble_comp_words_by_ref: Make work with failglob on
- psql: Tell psql to not load .psqlrc as it may change output format
- Quote unset array element to avoid globbing interference
- Various mostly array element unsetting fixes under failglob
- ssh-add, ssh-keygen: -? needs to be quoted under failglob
- Quote _filedir arguments when appropriate to prevent failglob failures
- slapt-src: split options from their arguments
- slapt-{get,src}: Fix issue with sed not being able to handle some characters
- gendiff: Quoting suffix pattern to avoid triggering failglob
- sbopkg, slapt-{get,src}: expand tilde in config file name
- slapt-src: Handle --config=FILE option properly
- _filedir_xspec: Fix with failglob on
- lvm: _lvm_count_args parameter must be quoted in order to failglob not to complain
- _lvm: using a single-pattern case and invoking function according to words[1]
- umount: Fix mount points escaping/unescaping with Bash-4.3
- _parse_help: Fix failglob failures
- modprobe: fix params with multi-line descriptions
- modprobe: Try parsing help before using hardcoding option list
- ssh-add, ssh-keygen: -? needs to be quoted under failglob
- isql: Fix failglob failure
- Added test/site.{bak,exp} to .gitignore
- adb: New completion
- xz: Complete -T/--threads argument
- xmllint, xmlwf, xsltproc: Complete on *.dbk and *.docbook
- xsltproc. TODO fix for previous commit
- python(3): Add -X argument non-completion
- 7z, adb: Trivial cleanups
- ant: Don't offer more completions after options that exit
- ant: Support buildfile set in $ANT_ARGS
- mplayer, *xine: Complete on *.mts
- rpmbuild: Complete *.spec on --clean
- rpmbuild: Complete *.spec on --nobuild
- Comment update
- _completion_loader: Set empty command to _EmptycmD_ for cross version compat
- _init_completion: Handle cword < 0
- pigz, unpigz: Handle *.zz
- Protect various compgen invocations from -* leakage
- _pnames: Add -s for producing
- Actually install the lz4 completion
- _completion_loader: Protect compgen from -* leakage
- gphoto2: Fix split argument handing, and colon treatment in --port args
- : Invoke command to be completed, not its basename
- gphoto2: Replace tail with awk
- ccache: Add -o/--set-config arg name completion
- chrome, firefox etc: Complete on *.pdf
- strings: Fix -T/--target arg completion with non-English locale
- upstart support for service completion
- mcrypt: Simplify -m arg completion
- tshark: Simplify cut usage
- createdb, dropdb: Drop -o default, it does not appear to do anything good here
- createuser: New completion
- dropuser: New completion
- profile.d: Avoid some warnings from shells in "nounset" mode
- cppcheck: Option argument (non-)completion update
- reptyr: Rename file to _reptyr to avoid conflict with upstreamed completion
- tune2fs: Add missing return in -M arg completion
- synclient: New completion
- Drop reference to no longer used sysconf_DATA
- README: Add autotools and cmake tips
- README: Add cmake usage example
- README: Don't hardcode /etc in cmake fallback dir
- Revert "README: Don't hardcode /etc in cmake fallback dir"
- Load user completions from $BASH_COMPLETION_USER_DIR/completions
- 2015
- _filedir: Fix overquoted argument to compgen -d
- _filedir: Remove unused variable
- make: Add __BASH_MAKE_COMPLETION__ variable
- _filedir: Avoid some unnecessary work with -d
- gnokii: New completion
- gnokii: Various minor and cosmetic fixes
- gnokii: Drop dead code
- gnokii: Fix completions of options that are prefixes for others
- gnokii: Include and install it
- make: Fix detection of intermediate targets where make has changed its database whitespace
- jshint: New completion
- tar: rework the completion completely
- bsdtar, tar: Remove symlinks from git, have make create them
- tar: Style tweaks
- tar: Plug $line var leak
- eog: Complete on *.ppm
- Document how to avoid command_not_found_handler interference
- sysctl: Try parsing options from help before usage
- sysctl: Return early on --help, --version
- ssh: Add -Q argument completion
- ssh: Complete HostbasedKeyTypes,HostKeyAlgorithms,KexAlgorithms values
- checksec: New completion
- pdftotext: New completion
- pgrep, pidof, pkill, pwdx, vmstat: Add support for procps-ng
- __get_cword: avoid $index < 0
- rpm: Add --whatenhances/recommends/suggests/supplements and --recommends/supplements completions
- modplug*: Associate *.oct and *.okt
- __load_completion: New function, use in _completion_loader and _xfunc
- mpv: Remove mplayer-aliased completion
- make: Offer hidden targets when it is clear that the user is trying to complete one of them
- ssh-copy-id: Offer only *.pub to -i
- sftp: Add -l arg non-completion
- scp, sftp: Fix querying ssh options
- scp, sftp: Complete -S on commands
- make: Don't pick up variables when makefile is reloaded
- Load completions also from $XDG_DATA_DIRS
- chronyc: Add -6 option
- chronyc: Add missing subcommands
- chronyc: Update help text parsing
- chronyc: Wrap long lines
- chronyc: Parse command args from help output
- ssh: Avoid completing commands before hostname
- cppcheck: Add native to --platform completions
- minicom: Recognize user ~/.minirc.* as config files
- Set up Travis
- README: Update POSIX spec link
- Update URLs and various instructions to GitHub
- aclocal, automake: Install for versioned 1.14 and 1.15 executables
- build system: Switch to xz compressed tarball
- Drop references to bash-completion-devel@lists.alioth.debian.org
- README: Convert to markdown
- README: Split contributing to separate CONTRIBUTING doc
- Use command built-in to run sed to avoid any custom aliases
- Modify all usages of 'sed' to be run with command bash builtin
- lint: Check for sed without "command"
- gnokii, minicom: Use grep through "command"
- mysql, puppet: sed portability fixes
- mysql: Fix --default-character-set completion with mariadb
- Update copyright year
- indent: Remove generic long option completion
- Don't complete hostnames found after Hostname in ~/.ssh/config
- Remove various comments related to bash versions we don't support
- ssh: Extract duplicate code to _ssh_configfile
- xmllint, xmlwf, xsltproc: Complete on Mallard *.page files
- README: Expand troubleshooting section somewhat
- README.md: Not need for autoreconf, fixes #11
- zopflipng: New completion
- README.md: Markdown tweaks
- README.md: More markdown tweaks
- make-changelog.py: Make work with Python 3
- make-changelog.py: flake8 fixes
- make-changelog.py: Fix footer line output
- make-changelog.py: Set myself in footer
- README.md: Note autoreconf need only in unprepared tarball


2.1		2013-04-05

- eog: New completion.
- wsimport: New completion.
- kcov: Add new sort types (introduced in kcov-9).
- kcov: Complete arguments of --limits option.
- Add .msi completion for Wine
- ssh: Add -O argument completion.
- Add more complete OpenDocument support to unzip completion.
- Add support for OOXML document format extensions to unzip completion.
- Fine tune previous commit.
- wine: Fix extension glob to work on its own.
- man: Add support for .lz man pages.
- man: Trivial cleanups.
- clzip, pdlzip, plzip: New lzip alias completions.
- lzip: Do not append space after equal sign in long options.
- mussh: New completion.
- mount.linux: Add some new mount options intoduced in Linux 3.5
- mount.linux: Clean up mount options, remove duplicates.
- Remove trailing whitespace
- Remove more whitespace
- Trim trailing whitespace.
- slackpkg, slapt-get: Update the list of package sets.
- colormake: New make alias completion (LP: #743208, Debian: #682557).
- Ignore colormake symlink.
- opera: Handle options.
- mount.linux: Add options completion for davfs.
- evince: Evince supports opening .pdf.xz files.
- Fix __reassemble_comp_words_by_ref for $COMP_CWORD == ${#COMP_WORDS[@]}
- valgrind: Add --soname-synonyms option arguments completion.
- eject: New completion.
- fusermount: Complete curlftpfs-mounts for "fusermount -u"
- gphoto2: new completion
- nmcli: new completion
- cppcheck: Add new standards to --std option.
- make: convert make completion to use smarter parser
- Fixed tilde expanding in _filedir_xspec
- make: Do not append space if target is a filepath.
- tar: Fix detection if the $prev is a tar file.
- _parse_help, _parse_usage: Run commands in C locale.
- make: incremental completion for make with compact display
- make: Convert internal variable names to lowercase, indentation fix.
- lvm volumes: Complete on /dev/mapper/*.
- tar: Don't take -I to mean bzip2.
- feh: Add new options introduced in feh-2.7.
- wget: New completion.
- wget: Fix completion of multiple tags for --{follow,ignore}-tags.
- useradd: Fix -k, -K, and --home-dir argument completions.
- useradd, usermod: Support comma separated -G/--groups arg completion.
- wget: Use == instead of =.
- cppcheck: Add --language/-x argument completion.
- new completion: svcadm
- new completion: pkg-get
- new completion: pkgadd
- new completion: pkgrm
- new completion: pkgutil
- better entry
- fix perms
- zathura: Add simple completion for zathura document viewer.
- gpg, mplayer: Restore correct options.
- lvm: Fix typo in option name: s/continguous/contiguous/.
- mplayer: Add -subcp argument completion.
- mplayer: Add some new option argument completions.
- mplayer: Cleanup.
- mplayer: Add opus to the list of supported formats.
- completions/Makefile.am: symlinks depends on $(DATA) to avoid race conditions
- _command_offset: Restore compopts properly
- Update copyright year and release number.
- _known_hosts_real: Filter ruptime stdout error spewage.
- lv{create,resize,extend}, vg{create,reduce,extend,split}: Fix variable leaks.
- man: Fix -P/--pager full path arg completion.
- tcpdump: Fix -z full path arg completion.
- valgrind: Fix full path <command> arg completion.
- vgcreate: Add missing symlink.
- lvm: Take option args into account when counting args.
- lvm: Add _lvm prefix to helper functions.
- mount: Fix parsing /etc/fstab on *BSD.
- feh: Fix list of background styles.
- mount.linux: Add options completion for nfs.
- mount.linux: Add some new mount options intoduced in Linux 3.7
- chronyc: New completion.
- scp: Treat strings with slash before colon or starting with [.~] as local.
- useradd,userdel,usermod: Add -R/--root arg completion.
- userdel: Add -h/--help non-completion.
- luseradd,lusermod,luserdel: New completions.
- man: Don't expand man page extensions too early.
- ssh: Add some -o and related arg completions.
- fix interface completion
- add -p option completion
- nc: New completion.
- tar: Simplify bzip patterns.
- tar: Recognize taz and tb2 as compressed tarballs.
- ncftp: Add option completion.
- Avoid sourcing dirs in completion loader to avoid fd leaks.
- Brown paper bag fix for the previous commit.
- modprobe: Don't suggest installing already installed modules.
- ngrep: New completion.
- tshark: New completion.
- _mac_addresses: Fix with net-tools' ifconfig that outputs ether, not HWaddr.
- _mac_addresses: Try ARP cache with "ip neigh" if arp is not available.
- wol: Try "ip addr" before ifconfig for finding out broadcast addresses.
- _mac_addresses: Try local interfaces with "ip link" if ifconfig is N/A.
- _ip_addresses: Try with "ip addr" if ifconfig is not available.
- _available_interfaces: Without -a, try with "ip link" if ifconfig is N/A.
- dnsspoof,filesnarf,macof,sshow,tcpkill,tcpnice,urlsnarf: Fix -i completion.
- arpspoof,dsniff,ether-wake,nmap: Offer active interfaces only.
- modinfo: Use ,, for lowercasing instead of tr in a subshell.
- pydoc: New completion.
- pyflakes: New completion.
- python, pydoc: Add module completion.
- pydoc: Complete on keywords and topics.
- pylint: New completion.
- xrandr: Don't leak $i when completing --mode.
- xrandr: Cleanups.
- xrandr: Avoid --mode completion error when --output is not given.
- xrandr --mode: Clean up one awk call.
- xrandr: Use _parse_help.
- xrandr: Add bunch of option arg non-completions.
- vipw: Add -R/--root arg completion.
- host: Complete with known hosts.
- groupmems: Add -R/--root arg completion.
- acpi,chpasswd,dmesg,gkrellm,groupmems,hwclock,lastlog,pwd,vipw: Complete options even without "-" given.
- ip: Remove some stale TODOs.
- ip: Improve addr show and link show completions.
- _available_interfaces: Try with "ip link" if ifconfig is N/A also with -a.
- make: Don't leak $mode.
- make: Make work in POSIX mode.
- cpio: Cleanups.
- cpio: Recognize pass thru when -p is bundled w/other options.
- vpnc: Add bunch of option arg (non)completions.
- : Line continuation, whitespace, and compgen -W ... -- "$cur" quoting cleanups.
- file-roller: New completion.
- strings: New completion.
- ss: New completion.
- hexdump: New completion.
- xxd: New completion.
- hexdump: Actually install for hd as well.
- udevadm: Deprecate ours, one is shipped in systemd >= 196.
- Fix __ltrim_colon_completions() fail on parameter (\$1) containing a glob.
- interdiff: New completion.
- koji: Complete on build targets when --target is given to wait-repo.
- lua: New completion.
- luac: New completion.
- pkg-config: Try to complete --variable= if package name is already given.
- tar: Fix completing files inside *.tlz when J is explicitly given.
- tar: Support *.tar.lz.
- patch: New full featured completion.
- unzip/zipinfo: Associate with more StarOffice extensions.
- jar: Reuse unzip's xspec.
- cppcheck: Complete --include= with filenames.
- Fix helper script to create changelogs
- Releasing 2.1


2.0		2012-06-17

- sudo: Handle options.
- sudo: Fix option list parsing
- sudoedit: New completion.
- ssh-add: New completion.
- pwd: New completion.
- _command_offset: Properly quote arguments of eval.
- Fix completion loading when a symlink is sourced, thanks to Jonathan Nieder
- Revert "Fix completion loading when a symlink is sourced, thanks to Jonathan Nieder"
- mount.linux: Add some new mount options intoduced in Linux 3.0-3.2
- _modules: Ignore error messages.
- modprobe, modinfo, insmod: Move modprobe and modinfo completions to their own files.
- sbopkg: Use _parse_help.
- sbopkg, slackpkg, slapt-{get,src}: Use shorter form of the check if file exists.
- rmmod: Add option completions.
- insmod: Install for insmod.static too.
- mplayer: Add -monitoraspect arg completion.
- mplayer: Add generic handling of options that take arguments.
- Workaround bash bug that fails to complete <, >
- _filedir: Properly quote paths to avoid unexpected expansion.
- Properly declare 'symlinks' dependencies
- pigz: Add -p/--processes arg completion.
- apt-get: add 'changelog' to completed commands
- Really complete 'changelog'
- su: Add linux-specific completion
- su: Fix long option handling.
- su: Add --session-command arg completion.
- su: Complete -s/--shell with shells instead of all files.
- vmstat: New completion.
- lyx: Remove simple completion, upstream has more complete one
- insmod, modprobe: Don't hardcode path to modinfo
- man: --path option is supported on Darwin
- man: Move variable declaration to the right place.
- acpi: New completion.
- hwclock: New completion.
- feh: Update option argument completions.
- fbi, feh: Complete more supported file formats.
- fbgs: Add new options introduced in fbida-2.09.
- cppcheck: Complete new --relative-paths option arguments
- ri: Rename ri_get_methods helper to add leading underscore
- _expand: Suppress unwanted bash error messages
- make: Add generic variable completion.
- man: Recognize 3gl as man page filename extension -- at least Mesa uses it.
- _realcommand: Try greadlink before readlink.
- Comment spelling fix.
- Spelling fix.
- qiv: Add *.svg.
- xmllint: Add *.svgz.
- add xz compression extension for kernel modules
- autotools: Use MKDIR_P instead of mkdir_p.
- lbzip2: Add -n argument completion.
- _tilde*: Escape tilde in [[ $1 == \~* ]] tests.
- scp: Recognise symlinks to directories as directories.
