Loading
Update dependency click to ~=8.5
This MR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
| click (changelog) | ~=8.4 -> ~=8.5 |
Release Notes
pallets/click (click)
v8.5.0
Released 2026-08-24
- Add built-in shell completion support for PowerShell (Windows PowerShell
5.1+ and pwsh 7+) alongside the existing
bash,zsh, andfishcompleters. Use_FOO_BAR_COMPLETE=powershell_source foo-barto generate the completion script. {issue}2672{pr}3637 - Supported versions of Windows enable ANSI terminal styles by default.
Colorama is no longer a dependency and is not used. {issue}
2986{pr}3505 - {class}
Argumentaccepts ahelpparameter, and help output includes aPositional argumentssection when argument help is available. {issue}2983{pr}3473 confirm()andprompt()strip ANSI color and style codes from the prompt when the output stream does not support them, matchingecho(). This stripping was lost in8.4.0when {pr}2969began writing the prompt withinput()directly. {issue}3572{pr}3653- Fix test failures when using pytest >= 9.1. {pr}
3656 - {class}
Pathwithallow_dash=Trueno longer triggers aBytesWarning, an error underpython -bb, when checking a value against the-convention. {issue}2877{pr}3642 - Add {func}
custom_version_option, a--versionoption whose output is produced by a callback, covering cases {func}version_optionintentionally does not. The feature set of {func}version_optionis now frozen; see discussion #3527. {pr}3581 style()andsecho()no longer silently drop the 256-color index0(black) passed asfgorbg, and now validate color arguments. Invalid colors raise aValueErrorinstead of aTypeError. {pr}3677- The automatic help option stores its value under the reserved name
_click_default_helpinstead ofhelp, so a parameter namedhelpno longer breaks parsing. The new name is visible in {meth}Command.to_info_dictoutput. Parameters that overwrite each other's value trigger a warning: an argument sharing its name with another parameter, or any parameter claiming the reserved name. Options may still share a name to compete for the same value (feature switches). {issue}2819{pr}3678 unstyleand the ANSI handling behind help-text wrapping now strip the full CSI escape-sequence grammar. {pr}3681- Streamline
Optionflag handling: the flag-kind, type, lazy-default and validation steps inOption.__init__move into focused helpers, andflag_valueanddefaultkeep their unset sentinel at construction (resolved lazily on read) sois UNSETreliably tells a user-supplied value from an auto-derived one. Runtime behavior is unchanged, but {meth}Parameter.to_info_dictnow resolvesdefault=Trueon a feature switch to itsflag_value, matching what the function receives at call time. {pr}3641 - {func}
get_binary_streamand {func}get_text_streamare deprecated and will be removed in Click 9.0. {issue}3481{pr}3695 - The following
click.utilsnames were never intentionally public and are now private (_-prefixed). The old names remain available with aDeprecationWarninguntil Click 9.0:LazyFile,KeepOpenFile,make_default_short_help,PacifyFlushWrapper, andsafecall. {issue}3099{pr}3695 - Deprecate {meth}
CliRunner.isolated_filesystem. It relies on {func}os.chdir, which mutates process-global state and is not thread-safe. The helper predates Python 3 and modern pytest: use a temporary directory ({class}tempfile.TemporaryDirectoryor pytest'stmp_pathfixture) with absolute paths instead. For running tests in parallel, use process-based isolation (such aspytest-xdist) rather than threads, since {meth}CliRunner.invokealso redirects the process-global standard streams. {issue}3501{issue}3700{pr}3704 prompt()is now generically typed and returns the type produced bytype,value_proc, or a matchingdefaultinstead ofAny. {class}ParamTypetakes a second optional type parameter describing the input value it accepts (ParamType[int, str]for a type converting strings to integers), defaulting toAny. {pr}3407- {meth}
Command.get_help_option_namesreturns the help option names in the order they were declared. {pr}3728 - {func}
get_pager_fileyields a text stream on Windows again. The temporary file backend opened its file in binary mode, so writing astrto the pager raisedTypeError: a bytes-like object is required, not 'str', and thecolorargument was ignored on that path. Regression introduced in8.4.0by {pr}1572. {issue}3731{issue}3732{issue}3740{pr}3739 - {func}
progressbarsettles on its final position whenupdate_min_stepsdoes not divide the total. Steps below that threshold are applied when the bar finishes, soshow_posrenders20/20rather than the last multiple it reached. {issue}3571{pr}3769 - An error raised while writing to the pager no longer gets replaced by
PermissionError: [WinError 32]on Windows. The temporary file backend unlinked its file without closing it first, and Windows refuses to remove a file the process still holds open, so the cleanup failure masked the real exception. {issue}3731{pr}3764 - The temporary file the pager writes to on Windows is opened with the encoding
{func}
get_pager_filepicked for the output stream, and witherrors="replace"to match the pipe backend. Any text stdout can encode reaches the pager. - The temporary file pager backend forwards any parameters the user set in
PAGERto the pager command instead of silently dropping them. On Windows,PAGER="less -R"now invokesless -Ron the temporary file rather than bareless. {pr}3777 - Improve raw mode detection by parsing the option tokens. {issue}
3416{pr}3777 - {func}
editacceptsos.PathLikevalues forfilename, in addition to strings. {issue}2869{pr}3781
Configuration
- If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.