2014-10-16 20:40:34 +02:00
|
|
|
Click Changelog
|
|
|
|
===============
|
|
|
|
|
|
|
|
This contains all major version changes between Click releases.
|
|
|
|
|
2017-07-19 20:06:01 +02:00
|
|
|
Version 6.7
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release; released on January 6th 2017)
|
|
|
|
|
|
|
|
- Make `click.progressbar` work with `codecs.open` files. See #637.
|
|
|
|
- Fix bug in bash completion with nested subcommands. See #639.
|
|
|
|
- Fix test runner not saving caller env correctly. See #644.
|
|
|
|
- Fix handling of SIGPIPE. See #626
|
|
|
|
- Deal with broken Windows environments such as Google App Engine's. See #711.
|
|
|
|
|
2016-04-06 18:13:57 +02:00
|
|
|
Version 6.6
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release; released on April 4th 2016)
|
|
|
|
|
|
|
|
- Fix bug in `click.Path` where it would crash when passed a `-`. See #551.
|
|
|
|
|
|
|
|
Version 6.4
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release; released on March 24th 2016)
|
|
|
|
|
|
|
|
- Fix bug in bash completion where click would discard one or more trailing
|
|
|
|
arguments. See #471.
|
|
|
|
|
|
|
|
Version 6.3
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release; released on February 22 2016)
|
|
|
|
|
|
|
|
- Fix argument checks for interpreter invoke with `-m` and `-c`
|
|
|
|
on Windows.
|
|
|
|
- Fixed a bug that cased locale detection to error out on Python 3.
|
|
|
|
|
|
|
|
|
2015-12-04 16:51:02 +01:00
|
|
|
Version 6.2
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on November 27th 2015)
|
|
|
|
|
|
|
|
- Correct fix for hidden progress bars.
|
|
|
|
|
|
|
|
Version 6.1
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on November 27th 2015)
|
|
|
|
|
|
|
|
- Resolved an issue with invisible progress bars no longer rendering.
|
|
|
|
- Disable chain commands with subcommands as they were inherently broken.
|
|
|
|
- Fix `MissingParameter` not working without parameters passed.
|
|
|
|
|
|
|
|
Version 6.0
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(codename "pow pow", released on November 24th 2015)
|
|
|
|
|
|
|
|
- Optimized the progressbar rendering to not render when it did not
|
|
|
|
actually change.
|
|
|
|
- Explicitly disallow nargs=-1 with a set default.
|
|
|
|
- The context is now closed before it's popped from the stack.
|
|
|
|
- Added support for short aliases for the false flag on toggles.
|
|
|
|
- Click will now attempt to aid you with debugging locale errors
|
|
|
|
better by listing with the help of the OS what locales are
|
|
|
|
available.
|
|
|
|
- Click used to return byte strings on Python 2 in some unit-testing
|
|
|
|
situations. This has been fixed to correctly return unicode strings
|
|
|
|
now.
|
|
|
|
- For Windows users on Python 2, Click will now handle Unicode more
|
|
|
|
correctly handle Unicode coming in from the system. This also has
|
|
|
|
the disappointing side effect that filenames will now be always
|
|
|
|
unicode by default in the `Path` type which means that this can
|
|
|
|
introduce small bugs for code not aware of this.
|
|
|
|
- Added a `type` parameter to `Path` to force a specific string type
|
|
|
|
on the value.
|
|
|
|
- For users running Python on Windows the `echo`) and `prompt` functions
|
|
|
|
now work with full unicode functionality in the Python windows console
|
|
|
|
by emulating an output stream. This also applies to getting the
|
|
|
|
virtual output and input streams via `click.get_text_stream(...)`.
|
|
|
|
- Unittests now always force a certain virtual terminal width.
|
|
|
|
- Added support for allowing dashes to indicate standard streams to the
|
|
|
|
`Path` type.
|
|
|
|
- Multi commands in chain mode no longer propagate arguments left over
|
|
|
|
from parsing to the callbacks. It's also now disallowed through an
|
|
|
|
exception when optional arguments are attached to multi commands if chain
|
|
|
|
mode is enabled.
|
|
|
|
- Relaxed restriction that disallowed chained commands to have other
|
|
|
|
chained commands as child commands.
|
|
|
|
- Arguments with positive nargs can now have defaults implemented.
|
|
|
|
Previously this configuration would often result in slightly unexpected
|
|
|
|
values be returned.
|
|
|
|
|
2015-08-23 03:10:31 +02:00
|
|
|
Version 5.1
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on 17th August 2015)
|
|
|
|
|
|
|
|
- Fix a bug in `pass_obj` that would accidentally pass the context too.
|
|
|
|
|
|
|
|
Version 5.0
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(codename "tok tok", released on 16th August 2015)
|
|
|
|
|
|
|
|
- Removed various deprecated functionality.
|
|
|
|
- Atomic files now only accept the `w` mode.
|
|
|
|
- Change the usage part of help output for very long commands to wrap
|
|
|
|
their arguments onto the next line, indented by 4 spaces.
|
|
|
|
- Fix a bug where return code and error messages were incorrect when
|
|
|
|
using ``CliRunner``.
|
|
|
|
- added `get_current_context`.
|
|
|
|
- added a `meta` dictionary to the context which is shared across the
|
|
|
|
linked list of contexts to allow click utilities to place state there.
|
|
|
|
- introduced `Context.scope`.
|
|
|
|
- The `echo` function is now threadsafe: It calls the `write` method of the
|
|
|
|
underlying object only once.
|
|
|
|
- `prompt(hide_input=True)` now prints a newline on `^C`.
|
|
|
|
- Click will now warn if users are using ``unicode_literals``.
|
|
|
|
- Click will now ignore the ``PAGER`` environment variable if it is empty or
|
|
|
|
contains only whitespace.
|
|
|
|
- The `click-contrib` GitHub organization was created.
|
|
|
|
|
2015-07-16 14:26:14 +02:00
|
|
|
Version 4.1
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on July 14th 2015)
|
|
|
|
|
|
|
|
- Fix a bug where error messages would include a trailing `None` string.
|
|
|
|
- Fix a bug where Click would crash on docstrings with trailing newlines.
|
|
|
|
- Support streams with encoding set to `None` on Python 3 by barfing with
|
|
|
|
a better error.
|
|
|
|
- Handle ^C in less-pager properly.
|
|
|
|
- Handle return value of `None` from `sys.getfilesystemencoding`
|
|
|
|
- Fix crash when writing to unicode files with `click.echo`.
|
|
|
|
- Fix type inference with multiple options.
|
|
|
|
|
|
|
|
Version 4.0
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(codename "zoom zoom", released on March 31st 2015)
|
|
|
|
|
|
|
|
- Added `color` parameters to lots of interfaces that directly or indirectly
|
|
|
|
call into echoing. This previously was always autodetection (with the
|
|
|
|
exception of the `echo_via_pager` function). Now you can forcefully
|
|
|
|
enable or disable it, overriding the auto detection of Click.
|
|
|
|
- Added an `UNPROCESSED` type which does not perform any type changes which
|
|
|
|
simplifies text handling on 2.x / 3.x in some special advanced usecases.
|
|
|
|
- Added `NoSuchOption` and `BadOptionUsage` exceptions for more generic
|
|
|
|
handling of errors.
|
|
|
|
- Added support for handling of unprocessed options which can be useful in
|
|
|
|
situations where arguments are forwarded to underlying tools.
|
|
|
|
- Added `max_content_width` parameter to the context which can be used to
|
|
|
|
change the maximum width of help output. By default Click will not format
|
|
|
|
content for more than 80 characters width.
|
|
|
|
- Added support for writing prompts to stderr.
|
|
|
|
- Fix a bug when showing the default for multiple arguments.
|
|
|
|
- Added support for custom subclasses to `option` and `argument`.
|
|
|
|
- Fix bug in ``clear()`` on Windows when colorama is installed.
|
|
|
|
- Reject ``nargs=-1`` for options properly. Options cannot be variadic.
|
|
|
|
- Fixed an issue with bash completion not working properly for commands with
|
|
|
|
non ASCII characters or dashes.
|
|
|
|
- Added a way to manually update the progressbar.
|
|
|
|
- Changed the formatting of missing arguments. Previously the internal
|
|
|
|
argument name was shown in error messages, now the metavar is shown if
|
|
|
|
passed. In case an automated metavar is selected, it's stripped of
|
|
|
|
extra formatting first.
|
|
|
|
|
2014-10-16 20:40:34 +02:00
|
|
|
Version 3.3
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on September 8th 2014)
|
|
|
|
|
|
|
|
- Fixed an issue with error reporting on Python 3 for invalid forwarding
|
|
|
|
of commands.
|
|
|
|
|
|
|
|
Version 3.2
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on August 22nd 2014)
|
|
|
|
|
|
|
|
- Added missing `err` parameter forwarding to the `secho` function.
|
|
|
|
- Fixed default parameters not being handled properly by the context
|
|
|
|
invoke method. This is a backwards incompatible change if the function
|
|
|
|
was used improperly. See :ref:`upgrade-to-3.2` for more information.
|
|
|
|
- Removed the `invoked_subcommands` attribute largely. It is not possible
|
|
|
|
to provide it to work error free due to how the parsing works so this
|
|
|
|
API has been deprecated. See :ref:`upgrade-to-3.2` for more information.
|
|
|
|
- Restored the functionality of `invoked_subcommand` which was broken as
|
|
|
|
a regression in 3.1.
|
|
|
|
|
|
|
|
Version 3.1
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on August 13th 2014)
|
|
|
|
|
|
|
|
- Fixed a regression that caused contexts of subcommands to be
|
|
|
|
created before the parent command was invoked which was a
|
|
|
|
regression from earlier Click versions.
|
|
|
|
|
|
|
|
Version 3.0
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(codename "clonk clonk", released on August 12th 2014)
|
|
|
|
|
|
|
|
- formatter now no longer attempts to accomodate for terminals
|
|
|
|
smaller than 50 characters. If that happens it just assumes
|
|
|
|
a minimal width.
|
|
|
|
- added a way to not swallow exceptions in the test system.
|
|
|
|
- added better support for colors with pagers and ways to
|
|
|
|
override the autodetection.
|
|
|
|
- the CLI runner's result object now has a traceback attached.
|
|
|
|
- improved automatic short help detection to work better with
|
|
|
|
dots that do not terminate sentences.
|
|
|
|
- when definining options without actual valid option strings
|
|
|
|
now, Click will give an error message instead of silently
|
|
|
|
passing. This should catch situations where users wanted to
|
|
|
|
created arguments instead of options.
|
|
|
|
- Restructured Click internally to support vendoring.
|
|
|
|
- Added support for multi command chaining.
|
|
|
|
- Added support for defaults on options with `multiple` and
|
|
|
|
options and arguments with `nargs != 1`.
|
|
|
|
- label passed to `progressbar` is no longer rendered with
|
|
|
|
whitespace stripped.
|
|
|
|
- added a way to disable the standalone mode of the `main`
|
|
|
|
method on a Click command to be able to handle errors better.
|
|
|
|
- added support for returning values from command callbacks.
|
|
|
|
- added simplifications for printing to stderr from `echo`.
|
|
|
|
- added result callbacks for groups.
|
|
|
|
- entering a context multiple times defers the cleanup until
|
|
|
|
the last exit occurs.
|
|
|
|
- added `open_file`.
|
|
|
|
|
|
|
|
Version 2.6
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on August 11th 2014)
|
|
|
|
|
|
|
|
- Fixed an issue where the wrapped streams on Python 3 would be reporting
|
|
|
|
incorrect values for seekable.
|
|
|
|
|
|
|
|
Version 2.5
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on July 28th 2014)
|
|
|
|
|
|
|
|
- Fixed a bug with text wrapping on Python 3.
|
|
|
|
|
|
|
|
Version 2.4
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on July 4th 2014)
|
|
|
|
|
|
|
|
- Corrected a bug in the change of the help option in 2.3.
|
|
|
|
|
|
|
|
Version 2.3
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on July 3rd 2014)
|
|
|
|
|
|
|
|
- Fixed an incorrectly formatted help record for count options.'
|
|
|
|
- Add support for ansi code stripping on Windows if colorama
|
|
|
|
is not available.
|
|
|
|
- restored the Click 1.0 handling of the help parameter for certain
|
|
|
|
edge cases.
|
|
|
|
|
|
|
|
Version 2.2
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on June 26th 2014)
|
|
|
|
|
|
|
|
- fixed tty detection on PyPy.
|
|
|
|
- fixed an issue that progress bars were not rendered when the
|
|
|
|
context manager was entered.
|
|
|
|
|
|
|
|
Version 2.1
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on June 14th 2014)
|
|
|
|
|
|
|
|
- fixed the :func:`launch` function on windows.
|
|
|
|
- improved the colorama support on windows to try hard to not
|
|
|
|
screw up the console if the application is interrupted.
|
|
|
|
- fixed windows terminals incorrectly being reported to be 80
|
|
|
|
characters wide instead of 79
|
|
|
|
- use colorama win32 bindings if available to get the correct
|
|
|
|
dimensions of a windows terminal.
|
|
|
|
- fixed an issue with custom function types on Python 3.
|
|
|
|
- fixed an issue with unknown options being incorrectly reported
|
|
|
|
in error messages.
|
|
|
|
|
|
|
|
Version 2.0
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(codename "tap tap tap", released on June 6th 2014)
|
|
|
|
|
|
|
|
- added support for opening stdin/stdout on Windows in
|
|
|
|
binary mode correctly.
|
|
|
|
- added support for atomic writes to files by going through
|
|
|
|
a temporary file.
|
|
|
|
- introduced :exc:`BadParameter` which can be used to easily perform
|
|
|
|
custom validation with the same error messages as in the type system.
|
|
|
|
- added :func:`progressbar`; a function to show progress bars.
|
|
|
|
- added :func:`get_app_dir`; a function to calculate the home folder
|
|
|
|
for configs.
|
|
|
|
- Added transparent handling for ANSI codes into the :func:`echo`
|
|
|
|
function through `colorama`.
|
|
|
|
- Added :func:`clear` function.
|
|
|
|
- Breaking change: parameter callbacks now get the parameter object
|
|
|
|
passed as second argument. There is legacy support for old callbacks
|
|
|
|
which will warn but still execute the script.
|
|
|
|
- Added :func:`style`, :func:`unstyle` and :func:`secho` for ANSI
|
|
|
|
styles.
|
|
|
|
- Added an :func:`edit` function that invokes the default editor.
|
|
|
|
- Added an :func:`launch` function that launches browsers and applications.
|
|
|
|
- nargs of -1 for arguments can now be forced to be a single item through
|
|
|
|
the required flag. It defaults to not required.
|
|
|
|
- setting a default for arguments now implicitly makes it non required.
|
|
|
|
- changed "yN" / "Yn" to "y/N" and "Y/n" in confirmation prompts.
|
|
|
|
- added basic support for bash completion.
|
|
|
|
- added :func:`getchar` to fetch a single character from the terminal.
|
|
|
|
- errors now go to stderr as intended.
|
|
|
|
- fixed various issues with more exotic parameter formats like DOS/Windows
|
|
|
|
style arguments.
|
|
|
|
- added :func:`pause` which works similar to the Windows ``pause`` cmd
|
|
|
|
built-in but becomes an automatic noop if the application is not run
|
|
|
|
through a terminal.
|
|
|
|
- added a bit of extra information about missing choice parameters.
|
|
|
|
- changed how the help function is implemented to allow global overriding
|
|
|
|
of the help option.
|
|
|
|
- added support for token normalization to implement case insensitive handling.
|
|
|
|
- added support for providing defaults for context settings.
|
|
|
|
|
|
|
|
Version 1.1
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(bugfix release, released on May 23rd 2014)
|
|
|
|
|
|
|
|
- fixed a bug that caused text files in Python 2 to not accept
|
|
|
|
native strings.
|
|
|
|
|
|
|
|
Version 1.0
|
|
|
|
-----------
|
|
|
|
|
|
|
|
(no codename, released on May 21st 2014)
|
|
|
|
|
|
|
|
- Initial release.
|