This is the Click 8.3.3 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.
PyPI: https://pypi.org/project/click/8.3.3/
Changes: https://click.palletsprojects.com/page/changes/#version-8-3-3
Milestone: https://github.com/pallets/click/milestone/30
- Use :func:
shlex.splitto split pager and editor commands intoargv
lists for :class:subprocess.Popen, removingshell=True.
#1026 #1477 #2775 - Fix
TypeErrorwhen rendering help for an option whose default value is
an object that doesn't support equality comparison with strings, such as
semver.Version. #3298 #3299 - Fix pager test pollution under parallel execution by using pytest's
tmp_pathfixture instead of a shared temporary file path. #3238 - Treat
Sentinel.UNSETvalues in adefault_mapas absent, so they fall
through to the next default source instead of being used as the value.
#3224 #3240 - Patch
pdb.PdbinCliRunnerisolation sopdb.set_trace(),
breakpoint(), and debuggers subclassingpdb.Pdb(ipdb, pdbpp) can
interact with the real terminal instead of the captured I/O streams.
#654 #824 #843 #951 #3235 - Add optional randomized parallel test execution using
pytest-randomlyand
pytest-xdistto detect test pollution and race conditions. #3151 - Add contributor documentation for running stress tests, randomized
parallel tests, and Flask smoke tests. #3151 #3177 - Show custom
show_defaultstring in prompts, matching the existing
help text behavior. #2836 #2837 #3165 #3262 #3280
#3328 - Fix
default=Truewith booleanflag_valuealways returning the
flag_valueinstead ofTrue. Thedefault=Truetoflag_value
substitution now only applies to non-boolean flags, whereTrueacts as a
sentinel meaning "activate this flag by default". For boolean flags,
default=Trueis returned as a literal value. #3111 #3239 - Mark
make_default_short_helpas private API. #3189 #3250 CliRunner's redirected streams now expose the original file descriptor
viafileno(), so thatfaulthandler,subprocess, and other
C-level consumers no longer crash withio.UnsupportedOperation.
#2865- Change :class:
ParameterSourceto an :class:~enum.IntEnumand reorder
its members from most to least explicit, so values can be compared to
check whether a parameter was explicitly provided. #2879 #3248