bash-completion
bash-completion copied to clipboard
chore: release 1.0.0
:robot: I have created a release beep boop
1.0.0 (2024-01-14)
Features
-
_comp_backup_glob: add
ucf
generated backup files (351be1c) - _comp_backup_glob: require dash in dpkg backup files (59a57f9)
- comp_compgen{filedir,set}: define exit status (7920c9d)
- _comp_compgen_commands: align return value with other compgens (9d3362e)
-
_comp_compgen_commands: auto set
-o filenames
when appropriate (4d4839e) - _comp_compgen_commands: include dirs (b9c7b5d)
- _comp_compgen_known_hosts: return 2 on usage error (43bb8f0)
-
_comp_compgen: support
-i cmd
and-x cmd
(39cc200) -
_comp_compgen: support
-U var
to unlocal var (b603535) - _comp_compgen: support option -C (6b3dfa5)
- _comp_expand_glob: fail when no paths are generated (6b0a466)
- _comp_get_fist_arg: support "-o GLOB" to skip optargs (0f14cc0)
- _ip_addresses: auto ltrim colon completions when appropriate (ccdf953)
- add _comp_compgen_split (542bf73)
- add
_comp_locate_first_arg
(0384bd5) - airflow: add fallback 3rd party completion loader (bf5550b)
- ansible:* add fallback 3rd party completion loader (5f8384e)
-
apt-get: prefer
apt-cache
in same dir as command (a731bfd) - b2sum: new completion (cd985df)
- bash_completion: add function _comp_compgen_ltrim_colon (ce5889b)
- black,blackd: add fallback 3rd party completion loader (47a1f05)
- carton: support exec command completions (0eb3a21)
- chezmoi: add 3rd-party completion loader (cobra) (31baa69)
- conda: add 3rd-party completion loader (argcomplete) (c0f5ba2)
- crc: add 3rd-party completion loader (cobra) (f10866e)
- cz: add fallback 3rd party completion loader (b7ba70e)
- dprint: add fallback 3rd party completion loader (e201e0e)
- eog: add missing extension .heif (9e4a48f)
-
eog: associate with
*.avif
and*.webp
(#1005) (f1c04b8) -
eog: associate with
*.heic
and*.jxl
(20c9cea) -
eog: associate with
*.pbm
(#1006) (5472cc1) - feh: associate with y4m and heic/heif/avif (e252c73)
- feh: deassociate with avci/avcs (af46f34)
- flask: add fallback 3rd party completion loader (3e0d00d)
- go-licenses: add fallback 3rd party completion loader (f8793b4)
- hash: new completion (#1013) (4d0bffb)
- httpx: add fallback 3rd party completion loader (3f4861c)
- jungle: add fallback 3rd-party completion loader (c69845a)
- keyring: add fallback 3rd party completion loader (8082602)
- kontena: add fallback 3rd-party completion loader (5eef0ce)
- lefthook: add fallback 3rd party completion loader (dc9650e)
-
mailman: prefer
list_lists
in same dir as command (a46ccf1) -
mysql: prefer
mysqlshow
from same dir (643886c) - no empty command completion if
no_empty_cmd_completion
is on (faab292) - npm: add fallback 3rd-party completion loader (f1c085c)
- nvm: add fallback 3rd-party completion loader (dea7e1d)
- oc: add 3rd-party completion loader (cobra) (26b5f09)
- pip{,3}: add fallback 3rd-party completion loader (e3cbfba)
- pipenv: add fallback 3rd party completion loader (#1020) (6ecf5bd)
- pytest: complete new --import-mode value (#1021) (2d636a3)
- rtx: add fallback 3rd party completion loader (0628e22)
-
scp,sftp: prefer
ssh
from same dir to resolve options etc (d55f5e6) -
ssh-copy-id,ssh-keygen: prefer
ssh
from same dir (5c1d270) - ssh-inscribe: add fallback 3rd party completion loader (7f2c197)
- ssh: complete RequiredRSASize (#1064) (de15205)
- tkn-pac: add 3rd-party completion loader (cobra) (d0f2604)
- tkn: add 3rd-party completion loader (cobra) (161fc5d)
-
xrandr: comma separated
--setmonitor
third argument (8a76f3d)
Bug Fixes
- __load_completion: quoted compspec for variants (#1008) (0a2443e)
-
_cd_devices:
/dev/cdc-*
CDC device false positives (5250728) - _comp__init_set_up_service_completions: work around failglob (2529d40)
- comp{first_arg,count_args}: count - as argument (e23a79e)
- comp{first_arg,count_args}: count any arguments after -- (9bfd760)
- _comp_cmd_smartctl__device: replace COMPREPLY (2c9a1a9)
- _comp_command_offset: Support complete -C (80450ca)
- _comp_compgen_fstypes: avoid unexpected expansions (a856d81)
- _comp_compgen_help: allow dots to connect names in longopt (79dadfc)
- _comp_compgen_known_hosts: work around bash-4.2 nounset (d2860cb)
- _comp_compgen_split: work around nounset (f488f96)
- _comp_compgen_term: replace completions by default (d3696a3)
- _comp_compgen_usergroup: avoid directly overwriting COMPREPLY (d380498)
- _comp_compgen: do not inherit -a for explicitly specified var (3c20766)
-
_comp_compgen: explicitly exclude
cur
from the target variable (5fe98f3) -
_comp_compgen: prevent IFS from affecting
-- "$cur"
(3cf004c) - _comp_count_args: check optarg correctly (874c503)
- _comp_count_args: exclude <>& from wordbreaks as _comp_initialize (521d2bb)
- _comp_count_args: ignore empty $3 (76eea74)
- _comp_count_args: perform optarg check also on $3 (21d3122)
- _comp_count_args: skip reassembling cword and words (3127703)
- _comp_delimited: treat delimiter as a fixed string (571a0f7)
- _comp_deprecate_func: argument order in usage error message (597f62f)
- _comp_get_words: empty prev if unavailable (localvar_inherit) (d8b8eef)
- _comp_initialize: fix completions of redirections without space (da16bf6)
- _comp_initialize: protect against "localvar_inherit" (0cc8d83)
- _comp_split,_comp_compgen: strip periods from error message (b3b6a7c)
- _comp_split: update error message for the correct options (3c4a89c)
- _comp_sysvdirs: work around nounset (da26178)
-
_filedir_xspec: clean up unused variable
tmp
(67f1189) - _get_cword_at_cursor,cvs: quote array length (201239c)
- _get_first_arg: remove invalid doccomment (eb40f56)
-
_known_hosts: use array for
options
(work around SC2178,SC2179) (743d0a9) -
_mock,rpm: avoid icase flag
s/reg/rep/i
of GNU sed (33c18ce) - _service: quote word (c2d7fb7)
- _slackpkg: do not scan after cword (ecd1384)
-
7z: remove redundant
printf '%s\n' "..."
(20c2e32) - abook,curl,pack200,patch,perl: specify -a to filedir (2d12cbe)
- ant: work around custom IFS (584e567)
- apt-cache: check all the words (84cfeda)
- aptitude: do not use non-POSIX BRE \w (cd8c870)
-
bash_completion: remove some unnecessary
-a
to_comp_compgen
(636bb7c) - bts: update functions to generators and fix variable conflicts (7d2867c)
- carton: remove a branch never happening (cd063f9)
-
chgrp: fix typo
_comp_compgen{d => _}filedir
(#1063) (4c98ce5) - compat: find compat dir for prefix-install (b6d06bc)
- completions/*: quote array assignments properly (848aa41)
- completions/*: scan until cword instead of ${#words[@]}-1 (17e0cc3)
- completions/*: work around localvar_inherit (e3a871d)
- cppcheck: include 1 as completions (5a5c62d)
- curl,koji: use _comp_compgen_help (f37f221)
- curl,qemu: avoid using POSIX character classes for mawk (d60c530)
- curl: colon handling for IPv6 address completions (8508d1d)
- cvs,mutt,pkg_delete: quote prefix to remove for literal matching (533903e)
- cvs: avoid variable conflicts (0d145c9)
- dict: nounset error when host/port not set (57191e2)
- dict: protect splitting from custom IFS (b31fe1e)
- dict: work around bash-4.2 array nounset (d76dd9e)
- dict: work around bash-4.3 ${v+"$@"} with custom IFS (cc21298)
- dmypy: protect against "localvar_inherit" (768ce65)
-
dpkg-source: filter completions by
cur
(dbcef6e) -
filedir: work around bash-4.2
compgen -f -- "''"
(c8bb123) - fix problems with
set -o nounset
(9c3e196) - get_words: work around bash-4.3 connected ${v+"$@"} (81affbd)
- getent: check noargopts (6143f25)
- getent: work around localvar_inherit (a12f438)
-
gnome-mplayer: fix wrong option -w for
compgen
(48d9cc5) -
gzip,isort: fix typo
_comp_com{gp => pg}en
(462feb3) -
hping2: fix unfiltered option listing for
--tos
(7e49307) - iperf,puppet: use {m,n} instead of ? and + for POSIX sed (3f0322b)
- iperf: work around failglob with backslash in bash-5.0 (979f04f)
- isql: work around nounset (cb7007a)
-
java,kldload: use
_comp_compgen
for filename-based mod names (81adc6c) -
java: localize
cur
(ec0068d) - kcov,povray: quote array expansions to avoid extra processing (215edab)
- kldload,mplayer,mutt: work around nounset (5330fbe)
- kldunload: remove unused -X option (35017d2)
-
known_hosts_real: match
*.pub
instead of*pub
(470a644) -
known_hosts_real: use
_comp_expand_glob
to avoid failglob (672215e) - known_hosts_real: work around nounset (07c619a)
- lilo,rpcdebug,slapt-{get,src}: work around nounset (cfc3eda)
- lvm: replace array slices with existing utility (ea49840)
- lvm: update call to sub-command (30494f7)
- make: handle multiple short options in skipping arguments (24c80c9)
- make: typo fix in a code comment (e72cc82)
- mdadm,update-alternatives: fix leak variable (14cd53b)
-
medusa: filter completions by the current word
cur
(f3ae706) - mr: avoid ${var/pat/$'...'} for compat42 in bash >= 4.3 (b5ae5fa)
- mr: exactly match command names (800b103)
- mutt: avoid unexpected word splitting (3183e67)
- mutt: fix use of regex in the glob context (63924e6)
- mutt: rewrite ${cur/#!/X} to X${cur:1} against patsub_replacement (6b8f82b)
- mutt: use _comp_dequote for safe eval (f98379d)
- openssl: avoid variable conflicts (a31906c)
-
openssl: fix variable
i
leak (83844b7) - perl: fix ineffective condition in an awk script (302dc52)
- perl: helper call regression from 01611dd3d (b85263a)
- pgrep: do not rely on uncontrolled IFS (99e38b2)
- portinstall: use awk and _comp_compgen to filter completions (791f56c)
- povray,sbopkg: check filetype (434eb08)
- povray: process each element against patsub_replacement (0afc2e4)
- povray: quote an argument properly (0a240bd)
- ps,ss: avoid extra expansions by -W "$(...)" in _comp_delimited (cb347cb)
- pwdx: fix use of _parse_help (1623682)
- pydoc: specify -a to _comp_compgen_filedir (34a91e9)
- pytest: do not filter underscores from parsed option arg choices (ea13241)
- python: avoid variable conflicts (bef94c3)
- python: complete filenames for script arguments (#1018) (397a49d)
- python: complete micropython and pyston script args consistently (5b60ccc)
- qdbus: remove cur and all the rest arguments (531b751)
- qemu,rdesktop: fix stray } in -W option arguments (1e68c7a)
- replace \s with [[:space:]] for POSIX sed/awk (1989ba9)
-
sbopkg: add
;
mandatory before}
in POSIX sed (b286d53) - sbopkg: work around nounset (9709bdf)
-
scp:
nounset
mode error on unknown suboption, bash 4.2 (82ca8d9) - ssh-copy-id: call ssh, not -copy-id for suboption completion check (473278f)
- ssh-keygen: call ssh, not -keygen to resolve supported protocols (d569ea2)
- ssh-keygen: first arg to ssh query for protocol versions (8a0a71e)
- ssh: avoid variable conflicts (f2df91d)
- ssh: fix wrong quoting inside compgen -W (febb3b3)
- ssh: remove -a of generators (55c5c45)
- ssh: remove unnecessary -a to _comp_compgen (992f28e)
- ssh: resolve relative ssh_config Include correctly (4ac86e8)
-
ssh: use
_comp_compgen
for_comp_xfunc_ssh_identityfile
(05e70ed) - ssh: work around bash-4.2 nounset (4447f83)
- ssh: work around bash-4.2 nounset (d0695d0)
- sudo: use $1 (sudo) as $root_command (329ca0e)
- svcadm: fix ineffective IFS for splitting (1fd456e)
- svcadm: use the first matching name as command (1870d5e)
- sysbench: fix extraction of test-name option (cc246a1)
- timeout: always treat word after duration as command (0d0531b)
- tipc: remove filtered-out elements (75b36b2)
- update-alternatives: quote dirname (1205ed1)
- update-alternatives: suppress error for non-existent directory (adbdab8)
- update-alternatives: work around localvar_inherit (1d9e19c)
-
upgradepkg: use
_comp_compgen
for_comp_cmd_upgradepkg
(a0973d7) - use _comp_compgen for COMPREPLY+=($(compgen ... -- "...")) (7f6ba5b)
- use _comp_compgen for COMPREPLY+=($(compgen ... -- "$cur")) (87509ba)
- use _comp_compgen for COMPREPLY+=($(compgen ...)) (446b599)
- use _comp_compgen for COMPREPLY=($(compgen ... -- "...")) (2a1a9e1)
- use _comp_compgen for COMPREPLY=($(compgen ... -- "...")) (v2) (61e4b57)
- use _comp_compgen for COMPREPLY=($(compgen ... -- "$cur")) (5701a79)
- use _comp_compgen for COMPREPLY=($(compgen ... -- "$cur")) (v2) (18723c8)
- use _comp_compgen for COMPREPLY=($(compgen ... misc)) (3c908c4)
- use _comp_compgen for COMPREPLY=($(compgen ...) $(comgpen ...)) (db9a031)
- use _comp_compgen for COMPREPLY=($(compgen ...)) (e88fca5)
- use _comp_compgen_split to avoid extra expansions by -W "$(...)" (49997d0)
- use
_comp_compgen
for word list (83f033f) - use compgen -P prefix -W '"${arr[@]}"' against patsub_replacement (45d036a)
- use XPG4 awk in Solaris (cdd6da9)
-
wol: filter IP addresses by
cur
(c3505c5) - xfunc ssh identityfile: localize change to cur (76b5726)
Performance Improvements
- _comp_count_args: skip reinitializing cword and words (29398ef)
-
mutt: return earlier on empty
cur
(a244587) - portinstall: return earlier for -lLo and non-existent file (395e463)
- vncviewer: set nocasematch inside subshell (5ed0020)
This PR was generated with Release Please. See documentation.
Something doesn't seem right with release-please after the upgrade, #595 is the proper PR.