NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #384 most downloaded on PyPI
Bash tab completion for argparse
Last release 2 months ago
06 Aug 2026
Release timing varies
gaps range from 2 weeks to 8 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
14 years old
139 releases · first in 2012
Require Python 3.10+
Require Python 3.10+ (#558)
Fix for #544 => TestZshGlobalExplicit tests are failing after upgrade to zsh 5.9.0.1
One column per quarter.
Fix for kislyuk#544 => TestZshGlobalExplicit tests are failing after upgrade to zsh 5.9.0.1 (#557)
Expand ~ in _FilteredFilesCompleter (DirectoriesCompleter) (#553)
Remove deprecated easy_install script detection
Make RE PCRE compatible. Fixes #539
Make RE PCRE compatible. Fixes #539
Only execute Python interpreters (#536)
fish: set variable scope to local to avoid clobbering global or universal variables (#534)
Documentation and help improvements
Revert "zsh: skip repeat Python runs in the same completion run" This reverts a regression introduced in zsh tab completion configurations utilizing m
zsh: add global completion system install dir to user fpath if not present
Support namespace package traversal when completing Python entry points
Support namespace package traversal when completing Python entry points
zsh: skip repeat Python runs in the same completion run
Make _parse_known_args signature more general for future API changes
Use interactive shells and bind to make environment variable name completions work in older Bash versions
Fix _parse_known_args monkeypatching
Note this release is required to restore compatibility with Python 3.12.8 and 3.13.1.
Fix _parse_known_args monkeypatching
Note: This fix is required to restore compatibility with Python 3.12.8 and 3.13.1.
CI improvements
Restore compatibility with argparse in Python 3.12.7+
Use project.scripts instead of setuptools scripts
Use project.scripts instead of setuptools scripts (#498)
No stdin for python calls from bash completion functions
No stdin for python calls from bash completion functions (#488)
Prevents usage of stdin by (python) executables that are called
during completion generation. This prevents the completion locking
up the entire shell when the python script is broken i.e. it enters
an interactive mode (REPL) instead of generating the completions, as
expected.
Localize shell variable REPLY to avoid overwriting users' value (#489)
The variable REPLY is used by default by the read shell builtin to
store the return value, and like all bash/zsh variables, is scoped
globally. This change allows this variable to be used for other
needs by appropriately scoping its internal use by an argcomplete
utility function that uses read.
Preserve compatibility with argparse option tuples of length 4. This update is required to use argcomplete on Python 3.11.9+ or 3.12.3+.
Allow register-python-argcomplete output to be used as lazy-loaded zsh completion module
Allow register-python-argcomplete output to be used as lazy-loaded zsh completion module (#475)
Expand tilde in zsh
Expand tilde in zsh
Allow explicit zsh global completion activation
Fix and test global completion in zsh (#463, #466)
Fix and test global completion in zsh (#463, #466)
Add --yes option to activate-global-python-argcomplete (#461)
Test suite improvements
Respect user choice in activate-global-python-argcomplete
Escape colon in zsh completions. Fixes #456
Call _default as a fallback in zsh global completion
zsh: Allow to use external script
Use homebrew prefix by default
zsh: Allow to use external script (#453)
Add support for Python 3.12 and drop EOL 3.6 and 3.7 (#449)
Ensure Python 3.12+ compatibility in check_console_script
Use ` as escape character in PowerShell
Search through asdf shims
Use ` as escape character in PowerShell (#434)
setup.py -> pyproject.toml migration start
setup.py -> pyproject.toml migration start (#427)
Improve user install logic in activate-global-python-argcomplete (#437)
Ensure Python 3.7 compatibility in check_console_script (#436)
ZSH implementation fixes (#431, #433)
Documentation improvements
Test suite shell wrapper: Accept OSError on exit
Test suite: Use general regex to cut zsh reset ANSI sequences
Allow importlib-metadata 6.x; skip test failures on Python 3.7 (#420, #424)
Allow importlib-metadata 6.x; skip test failures on Python 3.7 (#420, #424)
Note completers can return iterables of strings, not just lists (#422)
Documentation and test improvements
Call _default as fallback in zsh global completion hook
Call _default as fallback in zsh global completion hook
activate-global-python-argcomplete: do not overwrite existing dotfile in user directory
activate-global-python-argcomplete: do not overwrite existing dotfile in user directory
Add NOTICE file
Establish long term name for split_line as argcomplete.lexers.split_line
- Re-add split_line to API
Fix zsh default completion issues
Fix zsh default completion issues
- Fix zsh autoload issues
Fix zsh autoload issues
Fully support zsh. Argcomplete now supports completion descriptions and global completion in zsh.
Fully support zsh. Argcomplete now supports completion descriptions and global completion in zsh.
Clean up top level namespace.
Documentation and test improvements.
Test infrastructure improvements
Test infrastructure improvements
Indicate that there is no support commitment for fish and tcsh shells
Documentation and test improvements
Remove scripts for contrib-supported shells from global namespace
setup.py: exclude test.* subpackages from find_packages
setup.py: exclude test.* subpackages from find_packages (#406)
Support PowerShell (#405)
CI updates
Revert "Support powershell (#392)"
Truncate input after cursor. Fixes #351
Truncate input after cursor. Fixes #351 (#352)
Support of path completion in fish #327 (#359)
Drop support for Python 2.7 and 3.5 (#361)
Add support for Python 3.10 (#356)
Test, documentation, and release infrastructure improvements
Update importlib-metadata version pin
Update importlib-metadata version pin (#345)
Display script debug output in tcsh (#342)
Fish support improvements (#338, #339)
Print warn() message from beginning of line (#335)
Test infrastructure improvements
Update importlib-metadata dependency pin
Update importlib-metadata dependency pin (#332)
Add change log project URL (#312)
Replace Travis CI with GitHub Actions (#323)
Update importlib-metadata dependency version range
Update importlib-metadata dependency version range
Add option to use tempfiles for IPC
Help string support for fish (#264)
Add option to use tempfiles for IPC (#307)
Fix multiple command registration for non-bash shells (#293)
Register auto completion for an arbitrary name using a given external script (#288, #296)
Skip completions from active subprocess completer (#289)
Fix warnings regarding invalid escape sequences (#286)
Add -o bashdefault to register-python-argcomplete's output command
Use shell builtins where possible
Use shell builtins where possible (#280)
Switch from pkg_resources to importlib (#283)
Remove .sh extension by bash-completion convention (#281)
Catch exceptions in _check_module (#269)
Documentation and test improvements
Do not suggest options after -- (end-of-options delimiter)
Include all test directory contents in source distribution
Trigger completers on --optional=PARTIAL_VALUE
Trigger completers on --optional=PARTIAL_VALUE
Fish support #68 (#260), thanks to @volkov
check_module: Don't crash, exit with error instead
check_module: Don't crash, exit with error instead (#261)
Use the correct interpreter when checking wrappers
Use the correct interpreter when checking wrappers (#226)
Fix crash when writing unicode to debug_stream in Python 2
Fix handling of COMP_POINT (#236)
- Fix release
Fix release
Fix bug introduced in v0.7.1 where completers would not receive the parser keyword argument.
Fix completion after tokens with wordbreak chars
This release contains work by @evanunderscore with numerous improvements to the handling of special characters in completions.
This release contains work by @evanunderscore with numerous improvements to the handling of special characters in completions.
Restore parser to its original state to allow reuse after completion (#150).
Fix handling of unquoted completions containing $
- Packaging fix
Packaging fix
activate-global-python-argcomplete runs on Homebrew out of the box
activate-global-python-argcomplete runs on Homebrew out of the box
Your coding agent can read these notes before it upgrades. Set up the MCP server →