Changelog¶
6.1.0 (unreleased)¶
Important
This version is not released yet and is under active development.
Add support for JSON5, JSONC and HJSON configuration files.
YAML and XML configuration support is now optional. You need to install the
click_extra[yaml]andclick_extra[xml]extra dependency groups to enable it.Add new
@lazy_groupdecorator andLazyGroupclass to create groups that only load their subcommands when invoked. Closes #1332.Move all custom types to
click_extra._typesmodule.Avoid importing all types at runtime to reduce startup time.
Upgrade tests runs from
macos-13tomacos-15-intel, and frommacos-15tomacos-26.Use
astral-sh/setup-uvaction to installuv.
6.0.3 (2025-10-13)¶
Fix
regex_fullmatch_line_by_lineto accept compiled regex patterns as well as string patterns.
6.0.2 (2025-10-11)¶
Add a new
regex_fullmatch_line_by_lineutility to compare a wall of text against a regex, line by line, and raise a customRegexLineMismatchexception on the first mismatch.
6.0.1 (2025-10-08)¶
Fix
@config_optionto acceptPathobjects as default value. Closes #1356.Add official support of Python 3.14.
Run tests on Python 3.15-dev.
6.0.0 (2025-09-25)¶
Add new variables for version string template:
{git_repo_path},{git_branch},{git_long_hash},{git_short_hash}and{git_date}.Add a new
--no-configoption on@extra_commandand@extra_groupto disable configuration files. Closes #750.Add
--table-formatoption by default on@extra_commandand@extra_group.Let
--table-formatand--no-coloraffect the rendering of--show-paramstable.Swap
ClassandSpec.columns in--show-paramsoutput.Remove the
-Cshort option associated with--config.Remove the
-tshort option associated with--table-format.Classify table formats into two categories: markup formats and plain-text formats.
Rename all table format identifiers to use dashes instead of underscores:
double_grid→double-griddouble_outline→double-outlinefancy_grid→fancy-gridfancy_outline→fancy-outlineheavy_grid→heavy-gridheavy_outline→heavy-outlinelatex_booktabs→latex-booktabslatex_longtable→latex-longtablelatex_raw→latex-rawmixed_grid→mixed-gridmixed_outline→mixed-outlinerounded_grid→rounded-gridrounded_outline→rounded-outlinesimple_grid→simple-gridsimple_outline→simple-outline
Fix display in
--show-paramsfor parameters sharing the same name.Fix detection in the
--versionoption of the module in which the user’s CLI is implemented.Rename
click_extra.tabulatenamespace toclick_extra.table.Expose
click._utils.UNSETandclick.logging.LogLevelat the rootclick_extramodule.Replace unmaintained
mergedeepdependency bydeepmerge.Remove maximum capped version of all dependencies (relax all
~=specifiers to>=). This gives more freedom to downstream and upstream packagers. Document each minimal version choice.Add unit tests for Sphinx extension.
Render GitHub-Flavored Markdown admonitions in Sphinx.
5.1.1 (2025-08-24)¶
Relax Click dependency to account for yanked release. Closes #1307.
5.1.0 (2025-08-01)¶
Add support for MyST Markdown syntax for
click:exampleandclick:runSphinx directives.Add support for all
code-blockoptions toclick:exampleandclick:run::linenos:,:lineno-start:,:emphasize-lines:,:force:,:caption:,:name:,:class:and:dedent:.Add new
:show-source:/:hide-source:,:show-results:/:hide-results:and:language:options toclick:exampleandclick:run. Closes #719.Support non-string choices in colored help screens. Closes #1284.
Replace
LOG_LEVELSmapping withLogLevelenum.Remove
DEFAULT_LEVEL_NAMEconstants.Fix rendering of default values in
--show-paramsoutput.Fix reconciliation of flags’ environment variables.
Force requirement on
cloup >= 3.0.7.Be more informative when error is found in
click:exampleandclick:runSphinx directives by displaying the path of the original document and the line number of the error.
5.0.2 (2025-05-31)¶
Set
ExtraCommanddefaultprog_nameto CLI’snameto avoid it to be namedpython -m <module_name>if invoked out of a module.Tweak exit code rendering of CLI runs.
5.0.1 (2025-05-28)¶
Fix highlighting of deprecated messages.
Use ASCII characters instead of unicode for prompt rendering in messages.
5.0.0 (2025-05-13)¶
Upgrade to Click 8.2.0.
Add support for custom deprecated messages on commands and parameters.
Remove
ExtraOption.get_help_default()and rely on newOption.get_help_extra().Remove dependency on
pallets-sphinx-themes.Drop supports for Python 3.10.
Add
windows-11-armto the test matrix.Remove tests on
ubuntu-22.04-arm,ubuntu-22.04andwindows-2022to keep matrix small.
4.15.0 (2025-03-05)¶
Regroup all envronment variables-related code.
Rename
extend_envvars()tomerge_envvar_ids()and allow it to merge arbitrary-nested structures. Normalize names to uppercase on Windows.Rename
normalize_envvar()toclean_envvar_id().Rename
all_envvars()toparam_envvar_ids().Rename
auto_envvar()toparam_auto_envvar_id().Remove unused
normalizeparameter onall_envvars().Add missing line returns in
render_cli_run().Prefix all types with capital-
T.
4.14.2 (2025-02-23)¶
Extract rendering part of the
print_cli_run()helper torender_cli_run().Remove unused
click_extra.testing.run_cmd.Relax requirement on
extra-platforms.Add tests on
windows-2025. Remove tests onwindows-2019.
4.14.1 (2025-02-02)¶
Fix upload of Python package to GitHub release on tagging.
4.14.0 (2025-02-01)¶
Add a new
--verboseoption on@extra_commandand@extra_groupto increase the verbosity level for each additional repetition.Add new
@verbose_optionpre-configured decorator.Reassign the short
-voption from--verbosityto--verbose.Improve logging documentation.
Align
ExtraStreamHandlerbehavior tologging.StreamHandler.Move
stream_handler_classandformatter_classarguments fromnew_extra_loggertoextraBasicConfig.Add new
file_handler_classargument toextraBasicConfig.Fix upload of Python package to GitHub release on tagging.
Remove dependency on
pytest-cases.
4.13.2 (2025-01-28)¶
Re-release to fix Github publishing.
Reactivates some color tests on Windows.
4.13.1 (2025-01-28)¶
Re-release to fix Github publishing.
4.13.0 (2025-01-27)¶
Revamps logging helpers and aligns them with Python’s
loggingmodule.Remove
extra_basic_config.Adds new
extraBasicConfig, and aligns it with Python’sbasicConfig.Replace
ExtraLogFormatterwithExtraFormatter.Replace
ExtraLogHandlerwithExtraStreamHandler.Add new
new_extra_loggerhelper.Rewrite the logging documentation with all use-cases and custom configuration examples. Closes #989.
Removes old platforms page from documentation.
4.12.0 (2025-01-20)¶
Remove Click Extra’s own implementation of
HelpOptionclass now that fixes have reached Click’s upstream.Redefine
@help_optiondecorator to default to--help/-hoptions.Add more logging examples in documentation.
Add tests on
ubuntu-24.04-armandubuntu-22.04-arm.Use
uvto install specific versions of Python.
4.11.7 (2024-11-30)¶
Remove support for comments in JSON configuration files. Remove dependency on unmaintained
commentjson. Closesclick-extra#1152.
4.11.6 (2024-11-28)¶
Make
--timeroption eager so it can jumps the queue of processing order.Fix configuration of help option generated by the
help_option_namescontext setting. Closesmail-deduplicate#762.Fix eagerness of help option generated by
help_option_names. Refsclick#2811.Display generated help option in
--show-paramsresults.Force UTF-8 encoding everywhere.
4.11.5 (2024-11-18)¶
Allow
replace_content()utility method to replace any content found after the start tag.
4.11.4 (2024-11-14)¶
Ignore hidden options when coloring help screen.
4.11.3 (2024-11-11)¶
Aligns dependencies.
4.11.2 (2024-11-10)¶
Aligns dependencies.
4.11.1 (2024-10-27)¶
Fix tests against development version of Click.
4.11.0 (2024-10-08)¶
Add support for Python 3.13.
Drop supports for Python 3.9.
Run tests on Python 3.14-dev.
Add tests on
ubuntu-24.04. Remove tests onubuntu-20.04.Upgrade tests from
macos-14tomacos-15.
4.10.0 (2024-09-04)¶
Move all platform detection utilities to its own standalone Extra Platforms project.
Add dependency on
extra-platforms.
4.9.0 (2024-07-25)¶
Switch from Poetry to
uv.Drop support for Python 3.8.
Mark Python 3.13-dev tests as stable.
Remove dependency on
regex.
4.8.3 (2024-05-25)¶
Fix string interpolation in log message.
4.8.2 (2024-05-25)¶
Do not raise error if package version cannot be fetched.
4.8.1 (2024-05-23)¶
Do not fail on
docs_updateimport ifpygmentsis not installed.
4.8.0 (2024-05-22)¶
Slim down package by moving unit tests out of the main package.
Allow reuse of Pytest fixures and marks by other packages.
Move dependencies extending
pygments,sphinxandpytestinto optional extra dependencies. Closes #836.Split
devdependency groups into optionaltest,typinganddocsgroups.Remove direct dependency on
mypy.Allow running tests with Python 3.8 and 3.9 on
macos-14runners.
4.7.5 (2024-04-04)¶
Remove bypass of
cloup.Colorre-import.
4.7.4 (2024-02-23)¶
Allow standalone
--versionoption to output its debug messages.Force closing of context before exiting CLIs to provoque callback calls and prevent state leaks.
Run tests on
macos-14. Remove tests onmacos-12.
4.7.3 (2024-01-06)¶
Run tests on Python 3.13-dev branch.
4.7.2 (2023-11-06)¶
Run tests on released Python 3.12 version.
4.7.1 (2023-09-19)¶
Distinguish between parameter type and Python type in
--show-paramsoutput.Recognize custom parameter type as string-based. Closes #721.
Rely on
bump-my-versionto update citation file metadata.
4.7.0 (2023-09-04)¶
Switch to format string style for version template.
Add new variables for version string template:
{module},{module_name},{module_file},{module_version},{package_version}and{exec_name}.Remove support for Click-specific
%(prog)and%(package)variables in version string.Print all versions string variables in debug mode.
4.6.5 (2023-09-01)¶
Highlight required label and value range in option description. Closes #748.
4.6.4 (2023-08-23)¶
Fix collection of subcommand parameters in
--show-paramsoutput. Closes #725.Set
%(package_name)in--versionto file name for CLI that are standalone scripts and not packaged. Fix #729.Allow standalone scripts to define a local
__version__variable to set the%(version)element in--versionoutput.Allow building of documentation with Sphinx 7.
Run tests on
macos-13. Remove tests onmacos-11.Ignore unstable tests on upcoming Click
8.2.x/mainbranch.
4.6.3 (2023-07-16)¶
Forces
ExtraContextto properly close itself before exiting the program, to trigger all callbacks.
4.6.2 (2023-07-15)¶
Remove workaround for Cloup handling of
command_classdefault on custom groups.Force
@extra_groupto produce sub-groups of the same class.
4.6.1 (2023-07-13)¶
Inspect in
--versionthe whole execution stack to find the package in which the user’s CLI is implemented.
4.6.0 (2023-07-12)¶
Keep the promise of drop-in replacement for
@version_optionwhich is now a proxy to Click’s original.Rename the colored, enhanced
--versionoption to@extra_version_optionfor its decorator, andExtraVersionOptionfor its class.Activate colors on
@extra_commandand@extra_groupby default, even if stripped of all their default parameters. Closes #534 and #543.Expose location and content of user’s configuration file in the Context’s
metaproperty. Closes #673.Render specs of hidden parameters in
--show-paramsoutput. Fixes #689.Swap
ExposedandAllowed in conf?columns in--show-paramsoutput.Add a
hiddencolumn to--show-paramsoutput. Refs #689.
4.5.0 (2023-07-06)¶
Expose verbosity level name, table format ID and CLI start timestamp in the Context’s
metaproperty.Refactor
VersionOption. Introduce internal caching.Expose version string elements in the Context’s
metaproperty. Closes #325.Remove
print_env_infooption fromVersionOptionclass andversion_optiondecorators.Add new
%(env_info)element. Default value is the same as what the removedprint_env_infoproduced (i.e. a JSON dump of the environment).Allow
%(env_info)value to be set by user on--version.Rename in version string formatting the
%(prog)element to%(prog_name), and%(package)to%(package_name).Detect Click-specific
%(prog)and%(package)and raise a deprecated warning.Do not print environment info in
--versionby default. Change default message from%(prog)s, version %(version)s\n%(env_info)to%(prog_name)s, version %(version)s.Automaticcaly augment version string with environment info in
DEBUGlog level.Expose
click_extra.search_paramsutility.
4.4.0 (2023-06-14)¶
Add a
reduce()utility to reduce a collection ofGroupandPlatformto a minimal set.Remove
@destructiveand@non_destructivepytest markers.Rename the
exclude_paramsargument ofParamStructureandConfigOptiontoexcluded_params.Fix over-styling of usage heading in help screen.
Move
bump-my-versionconfiguration topyproject.toml.Remove
bump2versionfrom dev dependencies, and let the external workflows install it.Remove workaround for
pallets-sphinx-themes’s outdated reference to oldclick’s Python 2 compatibility hack.
4.3.0 (2023-06-01)¶
Colorize envvars and default values in
--show-paramsoption.Keep
<stdout>and<stderr>streams independent inExtraCliRunner.Always collect
<stderr>output and never raise an exception.Add a new
<output>stream to simulate what the user sees in its terminal.Only mix
<stdout>and<stderr>in<output>whenmix_stderr=True.Print detailed CLI execution trace in logs.
Document inline tests in Sphinx CLI execution blocks.
Improve Pygments ANSI formatter and lexers documentation.
Document usage of
pygmentizecommand line.Regroup all parameter-related code.
Regroup all testing and CLI execution utilities.
Activate zoom on big Mermaid graphs.
4.2.0 (2023-05-23)¶
Add support for dedicated styling of environment variables, defaults, command aliases, aliases punctuation, subcommands and deprecated tag in help screen.
Update default colors of help screen to improve readability.
Change default style of critical log messages’ prefix to bold red.
Document the full matrix of colors and styles.
Render bright variants of ANSI colors in documentation.
Dynamically patch the style provided to
AnsiHtmlFormatterto augment it with ANSI colors.Remove main dependency on
furo, make it a development dependency.Remove the custom
ansi-click-extra-furo-stylePygments style for Furo and itsAnsiClickExtraFuroStyleclass.
4.1.0 (2023-05-11)¶
Add new global
show_envvaroption to display all environment variables in help screens.Global
show_choicessetting to show or hide choices when prompting a user for input.Populate the
Allowed in conf?column in--show-paramsoutput if there is a--configoption in the command.Print all modified loggers and their levels in
DEBUGmode.Directly download Pygments source code from GitHub to check for candidates for ANSI-coloring in unittests.
Test continuously against Click and Cloup development version. Closes #525.
Move
click_extra.commands.TimerOptiontoclick_extra.timer.TimerOption.
4.0.0 (2023-05-08)¶
Drop support for Python 3.7.
Add a simple
--telemetry/--no-telemetryoption flag which respects theDO_NOT_TRACKenvironment variable.Add new
populate_auto_envvarsparameter to@extra_command/@extra_groupdecorators to allow auto-generated environment variables to be displayed in help screens.Display all environment variables in
--show-paramsoutput, including those auto-generated by the way of theauto_envvar_prefixcontext parameter.Allow user to override hard-coded context defaults on
@extra_command/@extra_group.Change default log level from
INFOtoWARNINGto aligns with Python’s global root logger.Force resetting of log level on
--verbosity’s context closing to the hard-coded default.Use a dedicated
click_extralogger for all internal messages, instead of sending them to the user-defined one.Aligns
click_extralogger level to--verbosityoption level.Set default logger of
--verbosityto Python’s globalrootlogger, instead a local wrapped logger. Closes #318.Allow user to provide a string as the default logger to
--verbositythat will be used to fetch the global logger singleton of that name. Closes #318.Only colorize the
%(levelname)sfield during log record formatting, not the:message separator.Prefix
INFO-level log message withinfo:prefix by default.Raise an error if multiple
--versionoptions are defined in the same command. Closes #317.Remove dependency on
click-log.Remove supports for
Pallets-Sphinx-Themes < 2.1.0.Force closing of the context before stopping the execution flow, to make sure all callbacks are called.
Fix rendering of GitHub-Flavored Markdown tables in canonical format.
3.10.0 (2023-04-04)¶
Colorize help screens of subcommands spawned out of an
@extra_group. Closes #479.Remove deprecated
click_extra.platform.
3.9.0 (2023-03-31)¶
Allow
@color_option,@command,@config_option,@extra_command,@extra_group,@group,@help_option,@show_params_option,@table_format_option,@timer_option,@verbosity_optionand@version_optiondecorators to be used without parenthesis.Fix wrapping of Cloup decorators by
@extra_group/@extra_commanddecorators. Closes #489.Add main dependency on
furowhich is referenced in ANSI-aware Pygment styles.Move all documentation assets to
assetssubfolder.
3.8.3 (2023-02-25)¶
Let
--versionoption output system details when run onpython >= 3.10.
3.8.2 (2023-02-20)¶
Fix overlapping detection of
linuxandwsl2platforms.Renders platform groups in documentation in Mermaid format instead of Graphviz. Add new dependency on
sphinxcontrib-mermaid, removed dependency ongraphviz.Produce dependency graph in Mermaid instead of Graphviz.
3.8.1 (2023-02-15)¶
Code, comments and documentation style change to conform to new QA workflows based on
ruff.
3.8.0 (2023-01-24)¶
Rename
click_extra.platformtoclick_extra.platforms.Refactor platforms and their groups with dataclasses instead of string IDs.
Add new
LINUX_LAYERS,ALL_WINDOWS,BSD_WITHOUT_MACOS,EXTRA_GROUPSandALL_GROUPSgroups.Add new dependency on
graphviz.Activate Graphviz extension in Sphinx.
Let Sphinx produce the dependency graph from Graphviz file.
Produce platform graph dynamically.
Rename
docs.pytodocs_update.pyand allow this module to be called directly.
3.7.0 (2023-01-03)¶
Add support for new ANSI-capable lexers:
ansi-gap-consoleandansi-gap-repl.Auto-update table of supported lexers in documentation.
Add test to search in Pygments’ test data for REPL/terminal-like lexers, as candidates for ANSI-coloring.
Depends on
importlib_metadataforPython < 3.8.
3.6.0 (2022-12-28)¶
Add new constants to group platforms by family.
Add heuristics to recognize new platforms: IBM AIX, Cygwin, FreeBSD, GNU/Hurd, NetBSD, OpenBSD, Oracle Solaris, SunOS, Windows Subsystem for Linux v1 and v2.
Document version option usage.
Split version code to its own file and tests.
Run tests on Python
3.12-dev.
3.5.0 (2022-12-09)¶
Print fully qualified class of options in
--show-paramsoutput.Add new columns in
--show-paramstable to show option specifications, configuration exclusion and exposed attribute.Rename
ignored_paramsargument toexclude_paramson theConfigOptionclass.Blocking parameters from configuration files now requires the fully qualified ID. Which adds support for selectively blocking parameters at any subcommand level.
3.4.1 (2022-12-07)¶
3.4.0 (2022-12-01)¶
Streamline setup of Sphinx extensions.
Document
click:exampleandclick:runSphinx extensions.
3.3.4 (2022-11-14)¶
Fix some types.
3.3.3 (2022-11-14)¶
Fix release workflow.
3.3.2 (2022-11-14)¶
Remove use of deprecated
::set-outputdirectives and replace them by environment files.
3.3.1 (2022-11-11)¶
Keep a copy of the table format ID in the context when set.
3.3.0 (2022-11-09)¶
Use
tabulatedependency instead ofcli-helpersfor all the table rendering utilities.Remove dependency on
cli-helpers.Re-implement locally the
verticaltable rendering format fromcli-helpers.Add new table rendering formats:
asciidoc,fancy_outline,heavy_grid,heavy_outline,latex_longtable,latex_raw,mixed_grid,mixed_outline,presto,pretty,unsafehtmlandyoutrack.Remove
minimaltable rendering formats, which was an alias ofplain.Add new
csv-excel,csv-excel-tabandcsv-unixformats based on Python defaults dialects.Remove
csv-tabrendering format.Make
csvformat an alias ofcsv-excel.Deactivate number alignment and extra-spacing in table rendering by default.
Remove tests on Pypy. Nobody asked for it and I need to speed up tests.
3.2.5 (2022-09-30)¶
Fix argument’s property getter in
--show-params.Remove GitHub edit link workaround in documentation.
3.2.4 (2022-09-27)¶
Add citation file.
Fix type casting.
3.2.3 (2022-09-27)¶
Increase type coverage.
3.2.2 (2022-09-26)¶
Fix bad typing import.
3.2.1 (2022-09-26)¶
Move some command utility from test machinery to
runsubmodule.
3.2.0 (2022-09-24)¶
New
--show-paramsoption to debug parameters defaults, values, environment variables and provenance.Rename
ignored_optionstoignored_paramsonConfigOption.Highlight command’s metavars, default values and deprecated flag in help.
Finer highlighting of options, subcommands and their aliases in help screens.
Fix highlight of dynamic metavars and secondary option in help screen.
New custom
ExtraContextwhich allows populatingmetaat instantiation.Use the
Formatsenum to encode for default configuration file extensions.Re-introduce
*.ymlas a possible extension for YAML files.
3.1.0 (2022-09-20)¶
Add support for pattern matching to search for configuration file.
Add a new
formatsoption to specify which dialects the configuration file is written in, regardless of its name or file extension. Closes #197.Set default configuration folder according each OS preferred location. Closes #211.
Add
roamingandforce_posixoption to influence default application directory of configuration file.Add a
ignored_optionsparameter to the configuration file instead of hard-coding them.Add dependency on
wcmatch.Remove tests on deprecated
ubuntu-18.04.Document preset options overriding. Closes #232.
Document configuration option pattern matching and default folder. Closes #197 and #211.
3.0.1 (2022-08-07)¶
Fix wrong dependency bump on
pytest-covproduced by major release.
3.0.0 (2022-08-07)¶
Make default extra features optional, so
click_extracan act as a drop-in replacement forclickandcloup(closes #173):Rename
click_extra.grouptoclick_extra.extra_group.Rename
click_extra.commandtoclick_extra.extra_command.Alias
click_extra.grouptocloup.group.Alias
click_extra.commandtocloup.group.
Use declarative
params=argument to set defaults options onextra_commandandextra_group.Move the implementation of options to classes.
Hard-copy
version_optioncode fromclickto allow for more flexibility. Addresses #176.All custom options inherits from
ExtraOptionclass.New
extra_option_at_endtoextra_commandto force position of all extra options (on by default).Replace theme styles inherited from
click-logby Python standardloggingmodule. Addsinfoand removesexceptionstyles.Add a tutorial in documentation.
Add support for
click:exampleandclick:rundirectives in documentation.Add ANSI session and console lexers for Pygments.
Add a Pygments filter to transform tokens into ANSI tokens.
Add custom Pygment style to render ANSI tokens in
furotheme.Add dependency on
pygments,pygments-ansi-colorandPallets-Sphinx-Themes.Allow translation of short help in extra options.
Add minimal type hints.
Pre-compute test matrix to allow for a subset of jobs to fail if flagged as unstable.
Run tests on
ubuntu-22.04andmacos-12.Remove tests on deprecated
macos-10.15.
2.1.3 (2022-07-08)¶
Do not render
Nonecells in tables with<null>string.Disable workflow grouping and concurrency management.
2.1.2 (2022-06-02)¶
Fix auto-mapping and recognition of all missing Click option types in config module. Closes #170.
Fix CI workflow grouping.
2.1.1 (2022-05-22)¶
Fix compatibility with
cloup >= 0.14.0.Group workflow jobs so new commits cancels in-progress execution triggered by previous commits.
Run tests on early Python 3.11 releases.
2.1.0 (2022-04-22)¶
Add a
highlightutility to style substrings.Add
regexdependency.
2.0.2 (2022-04-14)¶
Fix and unittest derivation of configuration template and types from CLI options.
Fix dependency requirements induced by overzealous automatic post-release version bump workflow.
Replace
sphinx_tabsbysphinx-design.Add edit link to documentation pages.
2.0.1 (2022-04-13)¶
Fix mapping of file arguments in configuration files.
Fix Sphinx documentation update and publishing.
Run tests on
pypy-3.7.
2.0.0 (2022-04-11)¶
Add support for XML configuration file. Closes #122.
Add strict mode to fail on unrecognized configuration options.
Support the
NO_COLORenvironment variable convention fromno-color.org.Recognize a subset of
(FORCE_)(CLI)(NO_)COLOR(S)(_FORCE)variations as color-sensitive environment variables.Print version and environment details in logs at the
DEBUGlevel.Add Sphinx-based documentation.
Add a logo.
Outsource documentation publishing to external workflow.
1.9.0 (2022-04-08)¶
Add supports for
.iniconfiguration files.Add supports for commented JSON configuration files.
Fix identification of TOML and JSON configuration files.
Fix leak of local environment variable update on
extend_env()usage.Ignore
helpboolean in configuration files.Add new dependency on
mergedeep.
1.8.0 (2022-04-03)¶
Split the
print_cli_outputmethod to expose the simplerformat_cliutility.
1.7.0 (2022-03-31)¶
Refactor global logging management.
Remove
click_extra.run.runand rebase all run utilities aroundsubprocess.run.Use the
tomllibfrom the standard library starting with Python 3.11.
1.6.4 (2022-03-04)¶
Fix extension of default environment variables.
1.6.3 (2022-03-04)¶
Add support for environment variables to run utilities.
1.6.2 (2022-03-03)¶
Temporarily skip displaying environment details in
--versionoption results forpython >= 3.10.Reactivate all tests on Python 3.10.
1.6.1 (2022-03-02)¶
Expose some
cloupversions ofclickutilities at the root ofclick_extra.
1.6.0 (2022-03-02)¶
Allow
click_extrato be imported as a drop-in replacement forclick.Share the same set of default options between
click_extra.commandandclick_extra.group.Document default help screen comparison between simple
clickCLI and enhancedclick-extraCLI.
1.5.0 (2022-02-21)¶
Add support for JSON configuration file.
Search all supported formats in default location if configuration file not provided.
Print configuration file default location in help screens.
1.4.1 (2022-02-13)¶
Add new external workflow to modernize Python code.
Use external workflow suite to manage changelog and build & publish packages on PyPi on release.
Use external workflow to label sponsored issues and PRs.
Replace local workflow by external one to label issues and PRs.
Reuse externnal workflow to produce dependency graph.
Remove dev dependencies on
check-wheel-contents,graphviz,pipdeptreeandtwine.
1.4.0 (2022-01-08)¶
Allow downloading of a remote config URL.
Add new dependencies on
requestsandpytest-httpserver.Fix inference of config file top-level section name.
Document usage of
click_extra.config.config_option.Use external workflows for GitHub actions.
Automate version and changelog management.
1.3.0 (2021-11-28)¶
Add support for YAML configuration file. Closes #13.
Auto-detect configuration file on loading.
Add
pyyamldependency.
1.2.2 (2021-11-04)¶
Evaluate format option dynamically at use to let third-party register new rendering formats.
1.2.1 (2021-11-04)¶
Fix creation of post-release version bump PR on tagging.
1.2.0 (2021-11-04)¶
Extend
cli-helper.TabularOutputFormatterwith new formats:simple_grid,rounded_grid,double_grid,outline,simple_outline,rounded_outlineanddouble_outline. Address astanin/python-tabulate#151.Add a new
--table-format/-toption to select table format rendering mode.Add new dependency on
cli-helperandtabulate.Automate post-release version bump.
1.1.1 (2021-11-01)¶
Fix printing of additional non-grouped default options in help screen.
1.1.0 (2021-10-28)¶
Add a
--config/-Coption to load CLI configuration from a TOML file.
1.0.1 (2021-10-27)¶
Re-release previous version with fixed dependency.
1.0.0 (2021-10-27)¶
Add colorization of options, choices and metavars in help screens.
Add
--color/--no-coloroption flag (aliased to--ansi/--no-ansi).Add colored
--versionoption.Add colored
--verbosityoption and logs.Add dependency on
click-log.--time/--no-timeflag to measure duration of command execution.Add platform recognition utilities.
Add new conditional markers for
pytest:@skip_{linux,macos,windows},@unless_{linux,macos,windows},@destructiveand@non_destructive.
0.0.1 (2021-10-18)¶
Initial public release.