forked from pool/python-prompt_toolkit
Accepting request 641863 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/641863 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-prompt_toolkit?expand=0&rev=8
This commit is contained in:
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:858588f1983ca497f1cf4ffde01d978a3ea02b01c8a26a8bbc5cd2e66d816917
|
||||
size 243734
|
3
prompt_toolkit-2.0.6.tar.gz
Normal file
3
prompt_toolkit-2.0.6.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:82766ffd7397e6661465e20bd1390db0781ca4fbbab4cf6c2578cacdd8b09754
|
||||
size 339714
|
@@ -1,3 +1,271 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Oct 13 16:03:06 UTC 2018 - Arun Persaud <arun@gmx.de>
|
||||
|
||||
- update to version 2.0.6:
|
||||
* Bug fixes:
|
||||
+ Don't use the predefined ANSI colors for colors that are defined
|
||||
as RGB. (Terminals can assign different color schemes for ansi
|
||||
colors, and we don't want use any of those for colors that are
|
||||
defined like #aabbcc for instance.)
|
||||
+ Fix in handling of CPRs when patch_stdout is used.
|
||||
* Backwards incompatible changes:
|
||||
+ Change to the `Buffer` class. Reset the buffer unless the
|
||||
`accept_handler` returns `True` (which means: "keep_text"). This
|
||||
doesn't affect applications that use `PromptSession`.
|
||||
* New features:
|
||||
+ Added `AdjustBrightnessStyleTransformation`. This is a simple
|
||||
style transformation that improves the rendering on terminals
|
||||
with light or dark background.
|
||||
+ Improved performance (string width caching and line height
|
||||
calculation).
|
||||
+ Improved `TextArea`:
|
||||
o Exposed `focus_on_click`.
|
||||
o Added attributes: `auto_suggest`, `complete_while_typing`,
|
||||
`history`, `get_line_prefix`, `input_processors`.
|
||||
o Made attributes writable: `lexer`, `completer`,
|
||||
`complete_while_typing`, `accept_handler`, `read_only`,
|
||||
`wrap_lines`.
|
||||
|
||||
- changes from version 2.0.5:
|
||||
* Bug fixes:
|
||||
+ Fix in `DynamicContainer`. Return correct result for
|
||||
`get_children`. This fixes a bug related to focusing.
|
||||
+ Properly compute length of `start`, `end` and `sym_b` characters
|
||||
of progress bar.
|
||||
+ CPR (cursor position request) fix.
|
||||
* Backwards incompatible changes:
|
||||
+ Stop restoring `PromptSession` attributes when exiting prompt.
|
||||
* New features:
|
||||
+ Added `get_line_prefix` attribute to window. This opens many
|
||||
possibilities:
|
||||
o Line wrapping (soft and hard) can insert whitespace in front of
|
||||
the line, or insert some symbols in front. Like the Vim
|
||||
"breakindent" option.
|
||||
o Single line prompts also support line continuations now.
|
||||
o Line continuations can have a variable width.
|
||||
+ For VI mode: implemented temporary normal mode (control-O in
|
||||
insert mode).
|
||||
+ Added style transformations API. Useful for swapping between
|
||||
light and dark color schemes. Added `swap_light_and_dark_colors`
|
||||
parameter to `prompt()` function.
|
||||
+ Added `format()` method to ANSI formatted text.
|
||||
+ Set cursor position for Button widgets.
|
||||
+ Added `pre_run` argument to `PromptSession.prompt()` method.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 28 03:43:16 UTC 2018 - Todd R <toddrme2178@gmail.com>
|
||||
|
||||
- Update to 2.0.4
|
||||
+ Bug fixes:
|
||||
* Fix render height for rendering full screen applications in Windows.
|
||||
* Fix in `TextArea`. Set `accept_handler` to `None` if not given.
|
||||
* Go to the beginning of the next line when enter is pressed in Vi navigation
|
||||
mode, and the buffer doesn't have an accept handler.
|
||||
* Fix the `default` argument of the `prompt` function when called multiple
|
||||
times.
|
||||
* Display decomposed multiwidth characters correctly.
|
||||
* Accept `history` in `prompt()` function again.
|
||||
+ Backwards incompatible changes:
|
||||
* Renamed `PipeInput` to `PosixPipeInput`. Added `Win32PipeInput` and
|
||||
`create_input_pipe`.
|
||||
* Pass `buffer` argument to the `accept_handler` of `TextArea`.
|
||||
+ New features:
|
||||
* Added `accept_default` argument to `prompt()`.
|
||||
* Make it easier to change the body/title of a Frame/Dialog.
|
||||
* Added `DynamicContainer`.
|
||||
* Added `merge_completers` for merging multiple completers together.
|
||||
* Add vt100 data to key presses in Windows.
|
||||
* Handle left/right key bindings in Vi block insert mode.
|
||||
- Update to 2.0.3
|
||||
+ Bug fixes:
|
||||
* Fix in 'x' and 'X' Vi key bindings. Correctly handle line endings and args.
|
||||
* Fixed off by one error in Vi line selection.
|
||||
* Fixed bugs in Vi block selection. Correctly handle lines that the selection
|
||||
doesn't cross.
|
||||
* Python 2 bugfix. Handle str/unicode correctly.
|
||||
* Handle option+left/right in iTerm.
|
||||
- Update to 2.0.2
|
||||
+ Bug fixes:
|
||||
* Python 3.7 support: correctly handle StopIteration in asynchronous generator.
|
||||
* Fixed off-by-one bug in Vi visual block mode.
|
||||
* Bugfix in TabsProcessor: handle situations when the cursor is at the end of
|
||||
the line.
|
||||
- Update to 2.0.1
|
||||
+ Changes:
|
||||
* No automatic translation from \r into \n during the input processing. These
|
||||
are two different keys that can be handled independently. This is a big
|
||||
backward-incompatibility, because the `Enter` key is `ControlM`, not
|
||||
`ControlJ`. So, now that we stopped translating \r into \n, it could be that
|
||||
custom key bindings for `Enter` don't work anymore. Make sure to bind
|
||||
`Keys.Enter` instead of `Keys.ControlJ` for handling the `Enter` key.
|
||||
* The `CommandLineInterface` and the `Application` classes are merged. First,
|
||||
`CommandLineInterface` contained all the I/O objects (like the input, output
|
||||
and event loop), while the `Application` contained everything else. There was
|
||||
no practical reason to keep this separation. (`CommandLineInterface` was
|
||||
mostly a proxy to `Application`.)
|
||||
* prompt_toolkit no longer depends on Pygments, but it can still use Pygments
|
||||
for its color schemes and lexers. In many places we used Pygments "Tokens",
|
||||
this has been replaced by the concept of class names, somewhat similar to
|
||||
HTML and CSS.
|
||||
> `PygmentsStyle` and `PygmentsLexer` adaptors are available for
|
||||
plugging in Pygments styles and lexers.
|
||||
> Wherever we had a list of `(Token, text)` tuples, we now have lists of
|
||||
`(style_string, text)` tuples. The style string can contain both inline
|
||||
styling as well as refer to a class from the style sheet. `PygmentsTokens`
|
||||
is an adaptor that converts a list of Pygments tokens into a list of
|
||||
`(style_string, text)` tuples.
|
||||
* Changes in the `Style` classes.
|
||||
> `style.from_dict` does not exist anymore. Instantiate the ``Style`` class
|
||||
directory to create a new style. ``Style.from_dict`` can be used to create
|
||||
a style from a dictionary, where the dictionary keys are a space separated
|
||||
list of class names, and the values, style strings (like before).
|
||||
> `print_tokens` was renamed to `print_formatted_text`.
|
||||
> In many places in the layout, we accept a parameter named `style`. All the
|
||||
styles from the layout hierarchy are combined to decide what style to be
|
||||
used.
|
||||
> The ANSI color names were confusing and inconsistent with common naming
|
||||
conventions. This has been fixed, but aliases for the original names were
|
||||
kept.
|
||||
* The way focusing works is different. Before it was always a `Buffer` that
|
||||
was focused, and because of that, any visible `BufferControl` that contained
|
||||
this `Buffer` would be focused. Now, any user control can be focused. All
|
||||
of this is handled in the `Application.layout` object.
|
||||
* The `buffers` dictionary (`CommandLineInterface.buffers`) does not exist
|
||||
anymore. Further, `buffers` was a `BufferMapping` that keeps track of which
|
||||
buffer has the focus. This significantly reduces the freedom for creating
|
||||
complex applications. We wanted to move toward a layout that can be defined
|
||||
as a (hierarchical) collection of user widgets. A user widget does not need
|
||||
to have a `Buffer` underneath and any widget should be focusable.
|
||||
> `layout.Layout` was introduced to contain the root layout widget and keep
|
||||
track of the focus.
|
||||
* The key bindings were refactored. It became much more flexible to combine
|
||||
sets of key bindings.
|
||||
> `Registry` has been renamed to `KeyBindings`.
|
||||
> The `add_binding` function has been renamed to simply `add`.
|
||||
> Every `load_*` function returns one `KeyBindings` objects, instead of
|
||||
populating an existing one, like before.
|
||||
> `ConditionalKeyBindings` was added. This can be used to enable/disable
|
||||
all the key bindings from a given `Registry`.
|
||||
> A function named `merge_key_bindings` was added. This takes a list of
|
||||
`KeyBindings` and merges them into one.
|
||||
> `key_binding.defaults.load_key_bindings` was added to load all the key
|
||||
bindings.
|
||||
> `KeyBindingManager` has been removed completely.
|
||||
> `input_processor` was renamed to `key_processor`.
|
||||
> The `Key` class does not exist anymore. Every key is a string and it's
|
||||
considered fine to use string literals in the key bindings. This is more
|
||||
readable, but we still have run-time validation. The `Keys` enum still
|
||||
exist (for backwards-compatibility, but also to have an overview of which
|
||||
keys are supported.)
|
||||
> 'enter' and 'tab' are key aliases for 'c-m' and 'c-i'.
|
||||
* User controls can define key bindings, which are active when the user control
|
||||
is focused.
|
||||
> `UIControl` got a `get_key_bindings` (abstract) method.
|
||||
* Changes in the layout engine:
|
||||
> `LayoutDimension` was renamed to `Dimension`.
|
||||
> `VSplit` and `HSplit` now take a `padding` argument.
|
||||
> `VSplit` and `HSplit` now take an `align` argument.
|
||||
(TOP/CENTER/BOTTOM/JUSTIFY) or (LEFT/CENTER/RIGHT/JUSTIFY).
|
||||
> `Float` now takes `allow_cover_cursor` and `attach_to_window` arguments.
|
||||
> `Window` got an `WindowAlign` argument. This can be used for the alignment
|
||||
of the content. `TokenListControl` (renamed to `FormattedTextControl`) does
|
||||
not have an alignment argument anymore.
|
||||
> All container objects, like `Window`, got a `style` argument. The style for
|
||||
parent containers propagate to child containers, but can be overriden.
|
||||
This is in particular useful for setting a background color.
|
||||
> `FillControl` does not exist anymore. Use the `style` and `char` arguments
|
||||
of the `Window` class instead.
|
||||
> `DummyControl` was added.
|
||||
> The continuation function of `PromptMargin` now takes `line_number` and
|
||||
`is_soft_wrap` as input.
|
||||
* Changes to `BufferControl`:
|
||||
> The `InputProcessor` class has been refactored. The `apply_transformation`
|
||||
method should now takes a `TransformationInput` object as input.
|
||||
> The text `(reverse-i-search)` is now displayed through a processor. (See
|
||||
the `shortcuts` module for an example of its usage.)
|
||||
* `widgets` and `dialogs` modules:
|
||||
> A small collection of widgets was added. These are more complex collections
|
||||
of user controls that are ready to embed in a layout. A `shortcuts.dialogs`
|
||||
module was added as a high level API for displaying input, confirmation and
|
||||
message dialogs.
|
||||
> Every class that exposes a ``__pt_container__`` method (which is supposed
|
||||
to return a ``Container`` instance) is considered a widget. The
|
||||
``to_container`` shortcut will call this method in situations where a
|
||||
``Container`` object is expected. This avoids inheritance from other
|
||||
``Container`` types, but also having to unpack the container object from
|
||||
the widget, in case we would have used composition.
|
||||
> Warning: The API of the widgets module is not considered stable yet, and
|
||||
can change is the future, if needed.
|
||||
* Changes to `Buffer`:
|
||||
> A `Buffer` no longer takes an `accept_action`. Both `AcceptAction` and
|
||||
`AbortAction` have been removed. Instead it takes an `accept_handler`.
|
||||
* Changes regarding auto completion:
|
||||
> The left and right arrows now work in the multi-column auto completion
|
||||
menu.
|
||||
> By default, autocompletion is synchronous. The completer needs to be
|
||||
wrapped in `ThreadedCompleter` in order to get asynchronous autocompletion.
|
||||
> When the completer runs in a background thread, completions will be
|
||||
displayed as soon as they are generated. This means that we don't have to
|
||||
wait for all the completions to be generated, before displaying the first
|
||||
one. The completion menus are updated as soon as new completions arrive.
|
||||
* Changes regarding input validation:
|
||||
> Added the `Validator.from_callable` class method for easy creation of
|
||||
new validators.
|
||||
* Changes regarding the `History` classes:
|
||||
> The `History` base class has a different interface. This was needed for
|
||||
asynchronous loading of the history. `ThreadedHistory` was added for this.
|
||||
* Changes related to `shortcuts.prompt`:
|
||||
> There is now a class `PromptSession` which also has a method `prompt`. Both
|
||||
the class and the method take about the same arguments. This can be used to
|
||||
create a session. Every `prompt` call of the same instance will reuse all
|
||||
the arguments given to the class itself.
|
||||
The input history is always shared during the entire session.
|
||||
Of course, it's still possible to call the global `prompt` function. This
|
||||
will create a new `PromptSession` every time when it's called.
|
||||
> The `prompt` function now takes a `key_bindings` argument instead of
|
||||
`key_bindings_registry`. This should only contain the additional bindings.
|
||||
(The default bindings are always included.)
|
||||
* Changes to the event loops:
|
||||
> The event loop API is now closer to how asyncio works. A prompt_toolkit
|
||||
`Application` now has a `Future` object. Calling the `.run_async()` method
|
||||
creates and returns that `Future`. An event loop has a `run_until_complete`
|
||||
method that takes a future and runs the event loop until the Future is set.
|
||||
The idea is to be able to transition easily to asyncio when Python 2
|
||||
support can be dropped in the future.
|
||||
> `Application` still has a method `run()` that underneath still runs the
|
||||
event loop until the `Future` is set and returns that result.
|
||||
> The asyncio adaptors (like the asyncio event loop integration) now require
|
||||
Python 3.5. (We use the async/await syntax internally.)
|
||||
> The `Input` and `Output` classes have some changes. (Not really important.)
|
||||
> `Application.run_sub_applications` has been removed. The alternative is to
|
||||
call `run_coroutine_in_terminal` which returns a `Future`.
|
||||
* Changes to the `filters` module:
|
||||
> The `Application` is no longer passed around, so both `CLIFilter` and
|
||||
`SimpleFilter` were merged into `Filter`. `to_cli_filter` and
|
||||
`to_simple_filter` became `to_filter`.
|
||||
> All filters have been turned into functions. For instance, `IsDone`
|
||||
became `is_done` and `HasCompletions` became `has_completions`.
|
||||
This was done because almost all classes were called without any arguments
|
||||
in the `__init__` causing additional braces everywhere. This means that
|
||||
`HasCompletions()` has to be replaced by `has_completions` (without
|
||||
parenthesis).
|
||||
The few filters that took arguments as input, became functions, but still
|
||||
have to be called with the given arguments.
|
||||
For new filters, it is recommended to use the `@Condition` decorator,
|
||||
rather then inheriting from `Filter`.
|
||||
* Other renames:
|
||||
> `IncrementalSearchDirection` was renamed to `SearchDirection`.
|
||||
> The `use_alternate_screen` parameter has been renamed to `full_screen`.
|
||||
> `Buffer.initial_document` was renamed to `Buffer.document`.
|
||||
> `TokenListControl` has been renamed to `FormattedTextControl`.
|
||||
> `Application.set_return_value` has been renamed to `Application.set_result`.
|
||||
* Other new features:
|
||||
> `DummyAutoSuggest` and `DynamicAutoSuggest` were added.
|
||||
> `DummyClipboard` and `DynamicClipboard` were added.
|
||||
> `DummyCompleter` and `DynamicCompleter` were added.
|
||||
> `DummyHistory` and `DynamicHistory` was added.
|
||||
> `to_container` and `to_window` utilities were added.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 27 07:07:38 UTC 2018 - jengelh@inai.de
|
||||
|
||||
|
@@ -12,7 +12,7 @@
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
%define oldpython python
|
||||
%bcond_without test
|
||||
Name: python-prompt_toolkit
|
||||
Version: 1.0.15
|
||||
Version: 2.0.6
|
||||
Release: 0
|
||||
Summary: Library for building interactive command lines in Python
|
||||
License: BSD-3-Clause
|
||||
@@ -33,6 +33,7 @@ BuildRequires: python-rpm-macros
|
||||
Requires: python-six >= 1.9.0
|
||||
Requires: python-wcwidth
|
||||
Recommends: python-Pygments
|
||||
Conflicts: python-prompt_toolkit1
|
||||
BuildArch: noarch
|
||||
%if %{with test}
|
||||
BuildRequires: %{python_module pytest}
|
||||
|
Reference in New Issue
Block a user