From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by sourceware.org (Postfix) with ESMTPS id EC6053858C53 for ; Sat, 4 May 2024 19:28:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org EC6053858C53 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=SystematicSW.ab.ca Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=SystematicSW.ab.ca ARC-Filter: OpenARC Filter v1.0.0 sourceware.org EC6053858C53 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=216.40.44.14 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714850887; cv=none; b=qtektfPdO9K5TS5bIIKxbZwqqn2BO6bsVc9fXX2ndcOplPEauc8ksLpDv/nQTSWwoCy+GRYIoCr2tx6QiYAB/xTAKRZHplJsu9IUWDj1o7hPLHluP9OVRKvkhtIoXXp7ecayJkVVMUudTRfh1IRnmQr3IrDuZwznxx6m48BezsI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714850887; c=relaxed/simple; bh=0BgiQYPne0gwnTyxV8yl8Qnzed2i7YVpGJpyMzYfbeg=; h=From:To:Date:Message-Id:Subject; b=dhtozOFMvGs/xrC0xA5C7ysX2Mm3CqXbKkOW6zv9MfG0NwArEHhcZi+Fk1fGb2ghSeyoztToKR/oLRE8Cenp63zu5bcwbTRTCJDAS0S3oFK/WKNabzzzkkk1MjJrVaa6R168uLGARVNfhyUoYCMMBgnUVTEXM0xkVbYsYFaVsmo= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from omf08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id E08D6401FD for ; Sat, 4 May 2024 19:27:58 +0000 (UTC) Received: from [HIDDEN] (Authenticated sender: Brian.Inglis@SystematicSW.ab.ca) by omf08.hostedemail.com (Postfix) with ESMTPA id 8A26D20026 for ; Sat, 4 May 2024 19:27:57 +0000 (UTC) From: "Cygwin bash-completion Maintainer" To: "Cygwin Announce" Reply-To: "Cygwin" Date: Sat, 04 May 2024 13:22:21 -0600 Message-Id: <20240504132221.63581-1-Brian.Inglis@SystematicSW.ab.ca> Subject: Updated: bash-completion/-devel 2.13 X-Rspamd-Queue-Id: 8A26D20026 X-Spam-Status: No, score=-1.8 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,KAM_NUMSUBJECT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_PASS,TXREP,UNPARSEABLE_RELAY autolearn=no autolearn_force=no version=3.4.6 X-Stat-Signature: pqskw7n586zhxhgapttz61kssd8b51gx X-Rspamd-Server: rspamout04 X-Session-Marker: 427269616E2E496E676C69734053797374656D6174696353572E61622E6361 X-Session-ID: U2FsdGVkX1+JGfKnM3XvTfCW8+jIbPTnzTdjkbdIq9Q= X-HE-Tag: 1714850877-977574 X-HE-Meta: U2FsdGVkX18A3quaL29kyxX//V25lFs4TbsCr9lPvr44pj8BKqApylOoxegqnR96G2jp3O+g1f9YBp0xk/FTt57/LvifSxdh9Tc63Xg7dlRZWNgoMXY/WD/Ih37REtgfN4+9pBHm+loTUvXAMqvy7p7e7/7EbFTJuq6TGO9F6Dp6AVlJuFCgIvtk4AmDdenztpPVAnoKqL3vQ6wTb4ixKnSTDJol5f2AW4pBUDE3cqbjFvi5egYMokzvL+FdOVbVKXJl8I+WWzZjckLmbj8d50I/QM/TANzTRh86NlIiHWIelOAI5rmzw1nLZ2XjlnRs X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Command options and arguments auto-completion under the Bash shell The following packages have been upgraded in the Cygwin distribution: * bash-completion 2.13 * bash-completion-devel 2.13 bash-completion provides auto-completion for options of and arguments to hundreds of commands; and a collection of shell functions to develop those using the bash programmable completion commands. For more information see the project home page: https://github.com/scop/bash-completion See below for details of changes since the last Cygwin release: https://github.com/scop/bash-completion/blob/master/CHANGELOG.md 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 - rg: add fallback 3rd party completion loader - 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` - airflow: add fallback 3rd party completion loader - ansible*: add fallback 3rd party completion loader - apt-get: prefer `apt-cache` in same dir as command - b2sum: new completion - bash_completion: add function _comp_compgen_ltrim_colon - black,blackd: add fallback 3rd party completion loader - carton: support exec command completions - chezmoi: add 3rd-party completion loader (cobra) - conda: add 3rd-party completion loader (argcomplete) - crc: add 3rd-party completion loader (cobra) - cz: add fallback 3rd party completion loader - dot: support filename extension .gv - dprint: add fallback 3rd party completion loader - 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 - flask: add fallback 3rd party completion loader - hash: new completion - httpx: add fallback 3rd party completion loader - ip: Add completion for monitor subcommand - jungle: add fallback 3rd-party completion loader - keyring: add fallback 3rd party completion loader - kontena: add fallback 3rd-party completion loader - lefthook: add fallback 3rd party completion loader - 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 - npm: add fallback 3rd-party completion loader - nvm: add fallback 3rd-party completion loader - oc: add 3rd-party completion loader (cobra) - pip{,3}: add fallback 3rd-party completion loader - pipenv: add fallback 3rd party completion loader - pytest: complete new --import-mode value - rtx: add fallback 3rd party completion loader - scp,sftp: prefer `ssh` from same dir to resolve options etc - ssh-copy-id,ssh-keygen: prefer `ssh` from same dir - ssh-inscribe: add fallback 3rd party completion loader - ssh: complete RequiredRSASize - tkn-pac: add 3rd-party completion loader (cobra) - tkn: add 3rd-party completion loader (cobra) - 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 <>& 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 => _}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 => 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 >= 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 - test/wol: don't fail MAC test if test system has /etc/ethers entries - : 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: port some scp test 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/upgradepkg: port remaining test case to pytest+pexpect - test/tsig-keygen: require command for test_options - test/chown,sudo: parametrize special case test, improve xfail targeting - test: remove some no longer needed old test suite code - test/cd: convert remaining test case to pytest+pexpect - 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 - test/totem: add basic test case - extra/make-changelog: run through black - : python type hint fixes and improvements - test: drop redundant black args from docker runs - pre-commit: add config with black, flake8, and mypy - test: install black for Python 3.6 too - test: add flake8-bugbear - test: add isort to pre-commit, run it - test: shellcheck tweaks - test: run pre-commit in tools container - 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: move shellcheck to pre-commit - test: move perltidy to pre-commit, run with --converge - test: require openssl command for option argument tests - git: trigger docker rebuild on pre-commit config change - test: split dependencies requiring Python 3.6.1+ to requirements-dev.txt - test: upgrade mypy to 0.770 - 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 - pre-commit: run most python checks on helpers/python too - 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 - test/aptitude: add some test cases - 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 - test: upgrade shellcheck to 0.7.1 - 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/xfreerdp: skip xfreerdp kbd test if kbd-list returns empty - 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: complete test classes - 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 - test/alias: port remaining test case to pytest+pexpect - 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 - test: enable parallel pre-commit shellcheck - __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 - test: add perlcritic to pre-commit, run on all perl - test: run pre-commit on host instead of docker - make: add bmake alias - test/make: mark more cases as requiring command - test: run lint tests on Travis in a quickish separate first stage - test: add script to maintain list of executables for full test coverage - 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 - pre-commit, *.md: add markdownlint, address findings - : doc and comment link updates - pre-commit: use local perlcritic hook - editorconfig: apply yaml settings to .yaml too - test: add note about unescaped assert_complete single return values - test: port most umount test cases to pytest+pexpect - Source user completion only if it's a file - test: prefix fake test commands with underscore - nmap: simplify help scraping a bit, don't try to emit unnecessary newlines - test: upgrade markdownlint to 0.23.0 - test: fix incorrect fixtures/shared/default xfails/expectations - pre-commit etc: add shfmt - : run all shell code through shfmt -s - travis: use golang 1.14 for shfmt - apt-get: complete build-dep with dirs - secret-tool: new completion - test/umount: convert remaining test case to pytest+pexpect - test/scp: port remaining test case to pytest+pexpect - test/secret-tool: add to test command list - test/slapt-get: convert remaining test case to pytest+pexpect - apt-cache: avoid nonzero exit code from _apt_cache_packages - _xfunc: simplify - test/slapt-src: convert remaining test case to pytest+pexpect - test: drop some no longer needed old test suite code - lftp: use "bookmark list" command to list bookmarks - test: run pytest --verbose in docker - test/_get_comp_words_by_ref: convert remaining test cases to pytest+pexpect - test/__expand_tilde_by_ref: port remaining test cases to pytest+pexpect - test/_filedir: port more test cases to pytest+pexpect - test: drop not needed sudo on Travis - test: run all Travis jobs on dist: bionic - test/_filedir: port remaining test cases to pytest+pexpect - test: drop some no longer needed old test suite code - test/_expand: port remaining test cases to pytest+pexpect - test/_filedir: fix shutil.rmtree on Python < 3.6 - test: replace some echos with printfs - test/_get_cword: port remaining test case to pytest+pexpect - test/_known_hosts_real: port more test cases to pytest+pexpect - test: remove more no longer needed old test suite code - test/_known_hosts_real: port remaining test cases to pytest+pexpect - test: remove old test suite code no longer used \o/ - test: remove unused run-shellcheck, shellcheck is in pre-commit now - test: shfmt bashrc - test: sync shfmt and shellcheck configs - test: upgrade pre-commit to 2.4.0+, drop shfmt kludge - test: pre-commit config cleanups, ordering - test: upgrade flake8 to 3.8.1 - test/irb: xfail options test if --help is not available - : use $ifs for storing/restoring $IFS - test: try harder to restore environment and cwd on failures - : use more arithmetic evaluation - test: upgrade markdownlint-cli to 0.23.1 - dpkg-deb: fix --show/-W completion - test: add some dpkg-query test cases - dpkg-deb: add --raw-extract and -X arg completions - test: mark known non-ASCII issues with test suite as xfail - 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 - pytest: add test class method completion - 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 - pytest: fix test class method completion with BSD awk - 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: upgrade mypy to 0.780 - test: regex escape our magic mark for completeness - test/lspci: skip -A arg test if lspci fails -A help, e.g. busybox lspci - .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 - test: upgrade flake8 to 3.8.3 - _known_hosts_real: fix # handling in ssh configs - _known_hosts_real: fix completion of Host entries after a wildcard etc - test: upgrade perltidy to 20200619 - test: upgrade mypy to 0.781 - CONTRIBUTING.md: add posix and nounset mode item - test: upgrade mypy to 0.782 - test/_known_hosts_real: add explicit no globbing test case - test/shfmt: upgrade to 3.1.2, reformat with it - _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 - test: upgrade markdownlint-cli to 0.23.2 - __get_cword_at_cursor_by_ref: fix regression on bash 4.2 - pytest: complete async test class methods - test/inputrc: comment typo fix - test/inputrc: do not set print-completions-horizontally - unzip, zipinfo: complete *.aar - pre-commit: update shellcheck-py URL - pre-commit: upgrade isort to 5.0.7 - _known_hosts_real: exclude Host negations - test/ant: gitignore all target cache files - pre-commit: add pyupgrade, run it - pre-commit: upgrade pyupgrade to 2.7.2 - pre-commit: upgrade isort to 5.1.4 - _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 - pre-commit: anchor exclude patterns - 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 - test_wget: test --s instead of --h - timeout: fallback to _parse_usage from _parse_help - test_ifup: accept short option completions too - test: use one Dockerfile for all dists - test: run our docker script in test containers by default - _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 finger partial test case to pytest+pexpect - 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 - test: add bunch of basic _parse_usage use test cases - 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: add bunch of basic _parse_help use test cases - test: add more basic _parse_help use test cases - 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 - test_wsimport: xfail options test on unparseable -help - 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 - test: source our profile.d test env script in docker - 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 - test: installpkg test fixes - java: make jar/zip listing work with unzip - test: use sh +* as ccache command test case - 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 - test: portinstall/upgrade test case and setup fixes - 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: explodepkg and upgradepkg test fixes - test: always run tests which don't require tested command - test: add bunch of basic option parsing test cases - test: don't sort expected completion lists under the hood - test: hush flake8-bugbear B010 - test: ignore _makepkg_bootstrap in makepkg test env - test: xfail MAC address completion without networking - travis: pass NETWORK as env var, so we can actually use it - test: fix retrieving command to test from request - 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 - travis: generate dist tarball on alpine - wine: install for wine-development and wine-stable too - perltidy: associate *.t - travis: test with Debian 10 - 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 - test: fix cpio users test in presence of usernames with whitespace - 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 - test: Skip scrub -p test when its --help doesn't list available patterns - lftp: Support completing arg of last bundled short option, handle -s - xgamma: Comment spelling fix - links: Install completion for links2 too - iconv: Split charset completion to _iconv_charsets, add test case - _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 - test: Mark psql etc test cases untested if --help doesn't work - _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 - test: Add sysctl option parsing test case - 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 - test: Skip jq option completion test if its --help doesn't list them - 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 - test: Fix iwspy test case - [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 - travis: Split long lines in script - travis: Run ubuntu14/bsd with no network - 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 - test: Add pylint-3 test case - 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: Start converting test suite to pytest+pexpect - 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: Convert trivial [u-z]* test cases to pytest+pexpect - test: Add some additional simple completion test cases - test: Use make pytest docker executable env-configurable, default pytest-3 - test: Use /root/.local/bin/pytest on centos6 by default - test: Convert trivial t* test cases to pytest+pexpect - test: Convert trivial s* test cases to pytest+pexpect - test: Add new test files to EXTRA_DIST - test: Add generated test files to t/Makefile.am automatically - test: Convert trivial [qr]* test cases to pytest+pexpect - test: Use /root/.local/bin/pytest on ubuntu14 by default - test: Convert trivial o* test cases to pytest+pexpect - test: Bulk convert lots of trivial test cases to pytest+pexpect - test: Bulk convert some more trivial test cases to pytest+pexpect - test: Make "generate" do the right thing with more partial args - test: Convert some more trivial test cases to pytest+pexpect - test: Convert some more trivial test cases to pytest+pexpect - test: Convert some more trivial test cases to pytest+pexpect - test: Convert some more trivial test cases to pytest+pexpect - 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 some iperf, iperf3 and xmodmap test cases - test: Make test base work with Python 3.3+ - test: Add support for pytest pre-test commands - test: Convert some more test cases to pytest+pexpect - test: Add support for skipping individual tests based on shell command status - test: Convert some more test cases to pytest+pexpect - test: .gitignore pytestdebug.log - test: Convert some more test cases to pytest+pexpect - test: Add support for running test case in a specified dir - test: Convert some more test cases to pytest+pexpect - test: Fix some regressions introduced in recent test conversions - test: Convert some more test cases to pytest+pexpect - test: Convert some more test cases to pytest+pexpect - test: Convert some more test cases to pytest+pexpect - test: Include command name in test class name, use numbered test method names - test: Convert some more test cases to pytest+pexpect - test: Add class level skipif based on bash exec result - test: Add python3 test case - test: Convert some more test cases to pytest+pexpect - test: Rename BASHCOMP_* test env variables to BASHCOMP_TEST_* - test: Log pexpect interaction to $BASHCOMP_TEST_LOGFILE if set - test: Pass through $HOME and $DISPLAY to test bash - test: Fixture reorganization - test: Add ability to selectively ignore diffs in environment - test: Implement load_completion_for using assert_bash_exec - test: Convert some more test cases to pytest+pexpect - test: Replace + with Plus in test class names - test: Mark xfreerdp as expected failure for now - test: Convert some more test cases to pytest+pexpect - 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: Convert some more test cases to pytest+pexpect - test: Use more conventional Python file names for tests - test: Add support for per-test env modifications - test: Don't require complete marker on test methods - test: Fix jq and scrub skipif commands - test: Convert some more test cases to pytest+pexpect - test: Misc test suite fixes - test: Convert some more test cases to pytest+pexpect - test: Convert some more test cases to pytest+pexpect - test: Misc test suite fixes - test: Convert some more test cases to pytest+pexpect - test: Support setting cmd=None to require no command, for unit tests - test: Convert some more test cases to pytest+pexpect - test: Convert some more test cases to pytest+pexpect - test: Use test_unit_* prefix for unit tests, to avoid name clashes - test: Convert some more test cases to pytest+pexpect - test: Misc test suite fixes - test: Convert some more test cases to pytest+pexpect - test: Misc test suite fixes - test: Convert some more test cases to pytest+pexpect - test: Convert some more test cases to pytest+pexpect - 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: Misc test suite fixes - test: Make case specific env entries shell code, not escaped - test: Convert some more test cases to pytest+pexpect - test: Pylint fixes - test: Remove kill, killall remnants - test: Mark MANPATH without leading/trailing colons test an xfail on CI CentOS 6 - nc: Add some more option (non-)completions - test: Convert some more test cases to pytest+pexpect - test: Pylint fixes - test: Convert some more test cases to pytest+pexpect - test: Convert some more test cases to pytest+pexpect - test: Convert some more test cases to pytest+pexpect - firefox etc: New non-xspec completion - chromium-browser, google-chrome*: New non-xspec completion - test: Convert some more test cases to pytest+pexpect - 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 - test: Convert remaining perl test cases to pytest+pexpect - 7z: add .msi support - test: Convert more tar test cases to pytest+pexpect - 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 - test: Convert cancel test case to pytest+pexpect - cancel: Add some option arg (non-)completions - cancel: Split long line - test: Convert portinstall test case to pytest+pexpect (untested) - tar: Support completions for zstd compression extensions - tar: Clean up some redundant code - ssh-copy-id: Add -i and -o arg (non-)completions - test suite: Ignore _scp_path_esc in env for ssh-copy-id - grpck: Add --root/-R arg completion - grpck: Parse options with _parse_help, falling back to _parse_usage - test: Add requirements.txt for installing dependencies - doc: Some test dependency doc updates - _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) - test: Fix arp CI (non)expectations, remove redundant test case - tcpdump: Various option and their arg completion updates - doc: Note email issues gateway - Travis: Remove unused PYTEST env var - pydocstyle: New completion - test: Fix _count_args test_7 to test intended case - _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 - test: Remove some no longer used old test suite code - 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: Skip ifup options test if it doesn't grok --help, not in CI - 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: Add man failglob test case - 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 - test: Convert remaining _parse_help unit test to pytest+pexpect - ifstat: New completion - test: Fix test generation wrt results checking improvements - iperf, iperf3: Add some option arg (non-)completions - test: Convert remaining man test case to pytest+pexpect - 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 - test: Convert remaining tar test cases to pytest+pexpect - test: Fix declare test case with bash 5.0 - test: Expect failure for chown all users test as non-root - 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 - test: port some more ssh test case to pytest+pexpect - 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 - test: adjust _get_comp_words_by_ref test to changed error output - 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 - test: shorten long gdb test core file name so tar doesn't croak on it - 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 - test: add invoke-rc.d test case for not repeating already given options - _included_ssh_config_files: doc grammar fixes - _included_ssh_config_files: store found included files in an array - : shellcheck error fixes - test: add make -C test case - make: quote eval array definitions to work around shellcheck SC1036 bug - ri: shellcheck error fixes - travis: fail on shellcheck errors - travis: don't fail DIST != tools - travis: run shellcheck on bash_completion.sh.in too - 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: run distcheck in docker, ditto test suite driven by it - test: add fixtures/make/extra_makefile to CLEANFILES - travis: reindent with 2 spaces by usual convention - travis: deploy release dist tarball to github 2.8 2018-03-17 - test suite: Limit number of screen -T completion matches - test suite: Support overriding default match buffer size - lftp: Support ~/.local/... bookmark location - test suite: Limit amount of output from process name completion - ktutil: Don't leak i and command environment variables - test suite: Add bunch of missing basic test cases - uscan: Don't leak cword and words environment variables - xm: Don't leak args and commands environment variables - test suite: Enable wine in ubuntu14 - test suite: Install aptitude in ubuntu14 container - 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 (Debian: #867587) - test suite: Add basic hid2hci and munin-node-configure test cases - test suite: Add info and pinfo option test cases - test suite: Limit amount of info and pinfo test output - : 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 - test suite: Skip fedoradev GPG checks at least for now - test suite: Drop no longer needed fedoradev /usr/bin/which workaround - 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 - test suite: man cleanup - test suite: Make man test subject names less generic - test suite: Add bunch of man and MANPATH test cases - 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 - test: Add files to test older ri with - 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 - travis: Don't build local docker images, use vskytta/bash-completion ones - test: Work around broken centos/fedora postfix config in non-IPv6 setup - test: Add "postconf -" test case - Revert "travis: Don't build local docker images, use vskytta/bash-completion ones" - test: Try to skip postconf variable test on broken postfix configs altogether - 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 - test suite: Some more mplayer and mencoder coverage - : 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