Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scheduled monthly dependency update for October #6

Closed
wants to merge 12 commits into from

Conversation

pyup-bot
Copy link

@pyup-bot pyup-bot commented Oct 1, 2018

Update prospector from 0.12.7 to 1.1.2.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update pyflakes from 1.6.0 to 2.0.0.

Changelog

2.0.0

- Drop support for EOL Python <2.7 and 3.2-3.3
- Check for unused exception binding in `except:` block
- Handle string literal type annotations
- Ignore redefinitions of `_`, unless originally defined by import
- Support `__class__` without `self` in Python 3
- Issue an error for `raise NotImplemented(...)`
Links

Update pytest from 3.7.0 to 3.8.1.

Changelog

3.8.1

=========================

Bug Fixes
---------

- `3286 <https://github.com/pytest-dev/pytest/issues/3286>`_: ``.pytest_cache`` directory is now automatically ignored by Git. Users who would like to contribute a solution for other SCMs please consult/comment on this issue.


- `3749 <https://github.com/pytest-dev/pytest/issues/3749>`_: Fix the following error during collection of tests inside packages::

   TypeError: object of type 'Package' has no len()


- `3941 <https://github.com/pytest-dev/pytest/issues/3941>`_: Fix bug where indirect parametrization would consider the scope of all fixtures used by the test function to determine the parametrization scope, and not only the scope of the fixtures being parametrized.


- `3973 <https://github.com/pytest-dev/pytest/issues/3973>`_: Fix crash of the assertion rewriter if a test changed the current working directory without restoring it afterwards.


- `3998 <https://github.com/pytest-dev/pytest/issues/3998>`_: Fix issue that prevented some caplog properties (for example ``record_tuples``) from being available when entering the debugger with ``--pdb``.


- `3999 <https://github.com/pytest-dev/pytest/issues/3999>`_: Fix ``UnicodeDecodeError`` in python2.x when a class returns a non-ascii binary ``__repr__`` in an assertion which also contains non-ascii text.



Improved Documentation
----------------------

- `3996 <https://github.com/pytest-dev/pytest/issues/3996>`_: New `Deprecations and Removals <https://docs.pytest.org/en/latest/deprecations.html>`_ page shows all currently
deprecated features, the rationale to do so, and alternatives to update your code. It also list features removed
from pytest in past major releases to help those with ancient pytest versions to upgrade.



Trivial/Internal Changes
------------------------

- `3955 <https://github.com/pytest-dev/pytest/issues/3955>`_: Improve pre-commit detection for changelog filenames


- `3975 <https://github.com/pytest-dev/pytest/issues/3975>`_: Remove legacy code around im_func as that was python2 only

3.8.0

=========================

Deprecations and Removals
-------------------------

- `2452 <https://github.com/pytest-dev/pytest/issues/2452>`_: ``Config.warn`` and ``Node.warn`` have been
deprecated, see `<https://docs.pytest.org/en/latest/deprecations.htmlconfig-warn-and-node-warn>`_ for rationale and
examples.

- `3936 <https://github.com/pytest-dev/pytest/issues/3936>`_: ``pytest.mark.filterwarnings`` second parameter is no longer regex-escaped,
making it possible to actually use regular expressions to check the warning message.

**Note**: regex-escaping the match string was an implementation oversight that might break test suites which depend
on the old behavior.



Features
--------

- `2452 <https://github.com/pytest-dev/pytest/issues/2452>`_: Internal pytest warnings are now issued using the standard ``warnings`` module, making it possible to use
the standard warnings filters to manage those warnings. This introduces ``PytestWarning``,
``PytestDeprecationWarning`` and ``RemovedInPytest4Warning`` warning types as part of the public API.

Consult `the documentation <https://docs.pytest.org/en/latest/warnings.htmlinternal-pytest-warnings>`_ for more info.


- `2908 <https://github.com/pytest-dev/pytest/issues/2908>`_: ``DeprecationWarning`` and ``PendingDeprecationWarning`` are now shown by default if no other warning filter is
configured. This makes pytest more compliant with
`PEP-0506 <https://www.python.org/dev/peps/pep-0565/recommended-filter-settings-for-test-runners>`_. See
`the docs <https://docs.pytest.org/en/latest/warnings.htmldeprecationwarning-and-pendingdeprecationwarning>`_ for
more info.


- `3251 <https://github.com/pytest-dev/pytest/issues/3251>`_: Warnings are now captured and displayed during test collection.


- `3784 <https://github.com/pytest-dev/pytest/issues/3784>`_: ``PYTEST_DISABLE_PLUGIN_AUTOLOAD`` environment variable disables plugin auto-loading when set.


- `3829 <https://github.com/pytest-dev/pytest/issues/3829>`_: Added the ``count`` option to ``console_output_style`` to enable displaying the progress as a count instead of a percentage.


- `3837 <https://github.com/pytest-dev/pytest/issues/3837>`_: Added support for 'xfailed' and 'xpassed' outcomes to the ``pytester.RunResult.assert_outcomes`` signature.



Bug Fixes
---------

- `3911 <https://github.com/pytest-dev/pytest/issues/3911>`_: Terminal writer now takes into account unicode character width when writing out progress.


- `3913 <https://github.com/pytest-dev/pytest/issues/3913>`_: Pytest now returns with correct exit code (EXIT_USAGEERROR, 4) when called with unknown arguments.


- `3918 <https://github.com/pytest-dev/pytest/issues/3918>`_: Improve performance of assertion rewriting.



Improved Documentation
----------------------

- `3566 <https://github.com/pytest-dev/pytest/issues/3566>`_: Added a blurb in usage.rst for the usage of -r flag which is used to show an extra test summary info.


- `3907 <https://github.com/pytest-dev/pytest/issues/3907>`_: Corrected type of the exceptions collection passed to ``xfail``: ``raises`` argument accepts a ``tuple`` instead of ``list``.



Trivial/Internal Changes
------------------------

- `3853 <https://github.com/pytest-dev/pytest/issues/3853>`_: Removed ``"run all (no recorded failures)"`` message printed with ``--failed-first`` and ``--last-failed`` when there are no failed tests.

3.7.4

=========================

Bug Fixes
---------

- `3506 <https://github.com/pytest-dev/pytest/issues/3506>`_: Fix possible infinite recursion when writing ``.pyc`` files.


- `3853 <https://github.com/pytest-dev/pytest/issues/3853>`_: Cache plugin now obeys the ``-q`` flag when ``--last-failed`` and ``--failed-first`` flags are used.


- `3883 <https://github.com/pytest-dev/pytest/issues/3883>`_: Fix bad console output when using ``console_output_style=classic``.


- `3888 <https://github.com/pytest-dev/pytest/issues/3888>`_: Fix macOS specific code using ``capturemanager`` plugin in doctests.



Improved Documentation
----------------------

- `3902 <https://github.com/pytest-dev/pytest/issues/3902>`_: Fix pytest.org links

3.7.3

=========================

Bug Fixes
---------

- `3033 <https://github.com/pytest-dev/pytest/issues/3033>`_: Fixtures during teardown can again use ``capsys`` and ``capfd`` to inspect output captured during tests.


- `3773 <https://github.com/pytest-dev/pytest/issues/3773>`_: Fix collection of tests from ``__init__.py`` files if they match the ``python_files`` configuration option.


- `3796 <https://github.com/pytest-dev/pytest/issues/3796>`_: Fix issue where teardown of fixtures of consecutive sub-packages were executed once, at the end of the outer
package.


- `3816 <https://github.com/pytest-dev/pytest/issues/3816>`_: Fix bug where ``--show-capture=no`` option would still show logs printed during fixture teardown.


- `3819 <https://github.com/pytest-dev/pytest/issues/3819>`_: Fix ``stdout/stderr`` not getting captured when real-time cli logging is active.


- `3843 <https://github.com/pytest-dev/pytest/issues/3843>`_: Fix collection error when specifying test functions directly in the command line using ``test.py::test`` syntax together with ``--doctest-modules``.


- `3848 <https://github.com/pytest-dev/pytest/issues/3848>`_: Fix bugs where unicode arguments could not be passed to ``testdir.runpytest`` on Python 2.


- `3854 <https://github.com/pytest-dev/pytest/issues/3854>`_: Fix double collection of tests within packages when the filename starts with a capital letter.



Improved Documentation
----------------------

- `3824 <https://github.com/pytest-dev/pytest/issues/3824>`_: Added example for multiple glob pattern matches in ``python_files``.


- `3833 <https://github.com/pytest-dev/pytest/issues/3833>`_: Added missing docs for ``pytester.Testdir``.


- `3870 <https://github.com/pytest-dev/pytest/issues/3870>`_: Correct documentation for setuptools integration.



Trivial/Internal Changes
------------------------

- `3826 <https://github.com/pytest-dev/pytest/issues/3826>`_: Replace broken type annotations with type comments.


- `3845 <https://github.com/pytest-dev/pytest/issues/3845>`_: Remove a reference to issue `568 <https://github.com/pytest-dev/pytest/issues/568>`_ from the documentation, which has since been
fixed.

3.7.2

=========================

Bug Fixes
---------

- `3671 <https://github.com/pytest-dev/pytest/issues/3671>`_: Fix ``filterwarnings`` not being registered as a builtin mark.


- `3768 <https://github.com/pytest-dev/pytest/issues/3768>`_, `3789 <https://github.com/pytest-dev/pytest/issues/3789>`_: Fix test collection from packages mixed with normal directories.


- `3771 <https://github.com/pytest-dev/pytest/issues/3771>`_: Fix infinite recursion during collection if a ``pytest_ignore_collect`` hook returns ``False`` instead of ``None``.


- `3774 <https://github.com/pytest-dev/pytest/issues/3774>`_: Fix bug where decorated fixtures would lose functionality (for example ``mock.patch``).


- `3775 <https://github.com/pytest-dev/pytest/issues/3775>`_: Fix bug where importing modules or other objects with prefix ``pytest_`` prefix would raise a ``PluginValidationError``.


- `3788 <https://github.com/pytest-dev/pytest/issues/3788>`_: Fix ``AttributeError`` during teardown of ``TestCase`` subclasses which raise an exception during ``__init__``.


- `3804 <https://github.com/pytest-dev/pytest/issues/3804>`_: Fix traceback reporting for exceptions with ``__cause__`` cycles.



Improved Documentation
----------------------

- `3746 <https://github.com/pytest-dev/pytest/issues/3746>`_: Add documentation for ``metafunc.config`` that had been mistakenly hidden.

3.7.1

=========================

Bug Fixes
---------

- `3473 <https://github.com/pytest-dev/pytest/issues/3473>`_: Raise immediately if ``approx()`` is given an expected value of a type it doesn't understand (e.g. strings, nested dicts, etc.).


- `3712 <https://github.com/pytest-dev/pytest/issues/3712>`_: Correctly represent the dimensions of an numpy array when calling ``repr()`` on ``approx()``.

- `3742 <https://github.com/pytest-dev/pytest/issues/3742>`_: Fix incompatibility with third party plugins during collection, which produced the error ``object has no attribute '_collectfile'``.

- `3745 <https://github.com/pytest-dev/pytest/issues/3745>`_: Display the absolute path if ``cache_dir`` is not relative to the ``rootdir`` instead of failing.


- `3747 <https://github.com/pytest-dev/pytest/issues/3747>`_: Fix compatibility problem with plugins and the warning code issued by fixture functions when they are called directly.


- `3748 <https://github.com/pytest-dev/pytest/issues/3748>`_: Fix infinite recursion in ``pytest.approx`` with arrays in ``numpy<1.13``.


- `3757 <https://github.com/pytest-dev/pytest/issues/3757>`_: Pin pathlib2 to ``>=2.2.0`` as we require ``__fspath__`` support.


- `3763 <https://github.com/pytest-dev/pytest/issues/3763>`_: Fix ``TypeError`` when the assertion message is ``bytes`` in python 3.
Links

Update pylint from 1.8.4 to 2.1.1.

Changelog

2.1

=========================

Release date: 2018-08-01

* `trailing-comma-tuple` gets emitted for ``yield`` statements as well.

   Close 2363

* Get only the arguments of the scope function for `redefined-argument-from-local`

  Close 2364

* Add a check `misplaced-format-function` which is emitted if format function is used on
  non str object.

  Close 2200

* `chain.from_iterable` no longer emits `dict-{}-not-iterating` when dealing with dict values and keys

* Demote the `try-except-raise` message from an error to a warning (E0705 -> W0706)

   Close 2323

* Correctly handle the new name of the Python implementation of the `abc` module.

  Close PyCQA/astroid2288

 * Modules with `__getattr__` are exempted by default from `no-member`

   There's no easy way to figure out if a module has a particular member when
   the said module uses `__getattr__`, which is a new addition to Python 3.7.
   Instead we assume the safe thing to do, in the same way we do for classes,
   and skip those modules from checking.

   Close 2331

 * Fix a false positive `invalid name` message when method or attribute name is longer then 30 characters.

   Close 2047

 * Include the type of the next branch in `no-else-return`

   Close 2295

 * Fix inconsistent behaviour for bad-continuation on first line of file

   Close 2281

  * Fix not being able to disable certain messages on the last line through
    the global disable option

    Close 2278

 * Don't emit `useless-return` when we have a single statement that is the return itself

   We still want to be explicit when a function is supposed to return
   an optional value; even though `pass` could still work, it's not explicit
   enough and the function might look like it's missing an implementation.
   Close 2300

* Fix false-positive undefined-variable for self referential class name in lamdbas

   Close 704

 * Don't crash when `pylint` is unable to infer the value of an argument to `next()`

   Close 2316

 * Don't emit `not-an-iterable` when dealing with async iterators.

   But do emit it when using the usual iteration protocol against
   async iterators.

   Close 2311

* Can specify a default docstring type for when the check cannot guess the type

   Close 1169

2.0

=========================

Release date: 2018-07-15
 * `try-except-raise` should not be emitted if there are any parent exception class handlers.

    Close 2284

 * `trailing-comma-tuple` can be emitted for `return` statements as well.

    Close 2269

 * Fix a false positive ``inconsistent-return-statements`` message when exception is raised
   inside an else statement.

   Close 1782

 * `ImportFrom` nodes correctly use the full name for the import sorting checks.

   Close 2181

 * [].extend and similar builtin operations don't emit `dict-*-not-iterating` with the Python 3 porting checker

   Close 2187

 * Add a check `consider-using-dict-comprehension` which is emitted if for dict initialization
   the old style with list comprehensions is used.

 * Add a check `consider-using-set-comprehension` which is emitted if for set initialization
   the old style with list comprehensions is used.

 * `logging-not-lazy` is emitted whenever pylint infers that a string is built with addition

   Close 2193

 * Add a check `chained-comparison` which is emitted if a boolean operation can be simplified
   by chaining some of its operations.
   e.g "a < b and b < c", can be simplified as "a < b < c".

   Close 2032

 * Add a check `consider-using-in` for comparisons of a variable against
   multiple values with "==" and "or"s instead of checking if the variable
   is contained "in" a tuple of those values.

 * `in` is considered iterating context for some of the Python 3 porting checkers

   Close 2186

 * Add `--ignore-none` flag to control if pylint should warn about `no-member` where the owner is None

 * Fix a false positive related to `too-many-arguments` and bounded `__get__` methods

   Close 2172

 * `mcs` as the first parameter of metaclass's `__new__` method was replaced by `cls`

   Close 2028

 * `assignment-from-no-return` considers methods as well.

    Close 2081

 * Support typing.TYPE_CHECKING for *unused-import* errors

   Close 1948

 * Inferred classes at a function level no longer emit `invalid-name`
   when they don't respect the variable regular expression

   Close 1049

 * Added basic support for postponed evaluation of function annotations.

   Close 2069

 * Fix a bug with `missing-kwoa` and variadics parameters

   Close 1111

 * `simplifiable-if-statement` takes in account only when assigning to same targets

    Close 1984

 * Make ``len-as-condition`` test more cases, such as ``len() < 1`` or ``len <= 0``

 * Fix false-positive ``line-too-long`` message emission for
   commented line at the end of a module

   Close 1950

 * Fix false-positive ``bad-continuation`` for with statements

   Close 461

 * Don't warn about `stop-iteration-return` when using `next()` over `itertools.count`

   Close 2158

 * Add a check `consider-using-get` for unidiomatic usage of value/default-retrieval
   for a key from a dictionary

   Close 2076

 * invalid-slice-index is not emitted when the slice is used as index for a complex object.

   We only use a handful of known objects (list, set and friends) to figure out if
   we should emit invalid-slice-index when the slice is used to subscript an object.

 * Don't emit `unused-import` anymore for typing imports used in type comments.

 * Add a new check 'useless-import-alias'.

   Close 2052

 * Add `comparison-with-callable` to warn for comparison with bare callable, without calling it.

   Close 2082

 * Don't warn for ``missing-type-doc`` and/or ``missing-return-type-doc``, if type
   annotations exist on the function signature for a parameter and/or return type.
   Close 2083

 * Add `--exit-zero` option for continuous integration scripts to more
   easily call Pylint in environments that abort when a program returns a
   non-zero (error) status code.

   Close 2042

 * Warn if the first argument of an instance/ class method gets assigned

   Close 977

 * New check `comparison-with-itself` to check comparison between same value.

   Close 2051

 * Add a new warning, 'logging-fstring-interpolation', emitted when f-string
   is used within logging function calls.

   Close 1998

 * Don't show 'useless-super-delegation' if the subclass method has different type annotations.

   Close 1923

 * Add `unhashable-dict-key` check.

   Closes 586

 * Don't warn that a global variable is unused if it is defined by an import

   Close 1453

 * Skip wildcard import check for `__init__.py`.

   Close 2026

 * The Python 3 porting mode can now run with Python 3 as well.

 * `too-few-public-methods` is not emitted for dataclasses.

    Close 1793

 * New verbose mode option, enabled with `--verbose` command line flag, to
   display of extra non-checker-related output. It is disabled by default.

   Close 1863

 * `undefined-loop-variable` takes in consideration non-empty iterred objects before emitting

   Close 2039

 * Add support for numpydoc optional return value names.

   Close 2030

 * `singleton-comparison` accounts for negative checks

   Close 2037

 * Add a check `consider-using-in` for comparisons of a variable against
   multiple values with "==" and "or"s instead of checking if the variable
   is contained "in" a tuple of those values.

   Close 1977

 * defaultdict and subclasses of dict are now handled for dict-iter-* checks

   Close 2005

 * `logging-format-interpolation` also emits when f-strings are used instead of % syntax.

   Close 1788

 * Don't trigger misplaced-bare-raise when the raise is in a finally clause

   Close 1924

 * Add a new check, `possibly-unused-variable`.

   This is similar to `unused-variable`, the only difference is that it is
   emitted when we detect a locals() call in the scope of the unused variable.
   The `locals()` call could potentially use the said variable, by consuming
   all values that are present up to the point of the call. This new check
   allows to disable this error when the user intentionally uses `locals()`
   to consume everything.

   Close 1909.

 * `no-else-return` accounts for multiple cases

    The check was a bit overrestrictive because we were checking for
    return nodes in the .orelse node. At that point though the if statement
    can be refactored to not have the orelse. This improves the detection of
    other cases, for instance it now detects TryExcept nodes that are part of
    the .else branch.

    Close 1852

 * Added two new checks, `invalid-envvar-value` and `invalid-envvar-default`.

   The former is trigger whenever pylint detects that environment variable manipulation
   functions uses a different type than strings, while the latter is emitted whenever
   the said functions are using a default variable of different type than expected.

 * Add a check `consider-using-join` for concatenation of strings using str.join(sequence)

   Close 1952

 * Add a check `consider-swap-variables` for swapping variables with tuple unpacking

   Close 1922

 * Add new checker `try-except-raise` that warns the user if an except handler block
   has a ``raise`` statement as its first operator. The warning is shown when there is
   a bare raise statement, effectively re-raising the exception that was caught or the
   type of the exception being raised is the same as the one being handled.

 * Don't crash on invalid strings when checking for `logging-format-interpolation`

   Close 1944

 * Exempt `__doc__` from triggering a `redefined-builtin`

   `__doc__` can be used to specify a docstring for a module without
   passing it as a first-statement string.

 * Fix false positive bad-whitespace from function arguments with default
   values and annotations

   Close 1831

 * Fix stop-iteration-return false positive when next builtin has a
   default value in a generator

   Close 1830

 * Fix emission of false positive ``no-member`` message for class with  "private" attributes whose name is mangled.

   Close 1643

 * Fixed a crash which occurred when `Uninferable` wasn't properly handled in `stop-iteration-return`

   Close 1779

 * Use the proper node to get the name for redefined functions (1792)

   Close 1774

 * Don't crash when encountering bare raises while checking inconsistent returns

   Close 1773

 * Fix a false positive ``inconsistent-return-statements`` message when if statement is inside try/except.

   Close 1770

 * Fix a false positive ``inconsistent-return-statements`` message when while loop are used.

   Close 1772

 * Correct column number for whitespace conventions.

   Previously the column was stuck at 0

   Close 1649

 * Fix ``unused-argument`` false positives with overshadowed variable in
   dictionary comprehension.

   Close 1731

 * Fix false positive ``inconsistent-return-statements`` message when never
   returning functions are used (i.e sys.exit for example).

   Close 1771

 * Fix error when checking if function is exception, as in ``bad-exception-context``.

 * Fix false positive ``inconsistent-return-statements`` message when a
   function is defined under an if statement.

   Close 1794

 * New ``useless-return`` message when function or method ends with a "return" or
   "return None" statement and this is the only return statement in the body.

 * Fix false positive ``inconsistent-return-statements`` message by
   avoiding useless exception inference if the exception is not handled.

   Close 1794 (second part)

 * Fix bad thread instantiation check when target function is provided in args.

   Close 1840

 * Fixed false positive when a numpy Attributes section follows a Parameters
   section

   Close 1867

 * Fix incorrect file path when file absolute path contains multiple ``path_strip_prefix`` strings.

   Close 1120

 * Fix false positive undefined-variable for lambda argument in class definitions

   Close 1824

 * Add of a new checker that warns the user if some messages are enabled or disabled
   by id instead of symbol.

   Close 1599

 * Suppress false-positive ``not-callable`` messages from certain
   staticmethod descriptors

   Close 1699

 * Fix indentation handling with tabs

   Close 1148

 * Fix false-positive ``bad-continuation`` error

   Close 638

 * Fix false positive unused-variable in lambda default arguments

   Close 1921
   Close 1552
   Close 1099
   Close 210

 * Updated the default report format to include paths that can be clicked on in some terminals (e.g. iTerm).

 * Fix inline def behavior with ``too-many-statements`` checker

   Close 1978

 * Fix `KeyError` raised when using docparams and NotImplementedError is documented.

   Close 2102

 * Fix 'method-hidden' raised when assigning to a property or data descriptor.

 * Fix emitting ``useless-super-delegation`` when changing the default value of keyword arguments.

   Close 2022

 * Expand ignored-argument-names include starred arguments and keyword arguments

   Close 2214

 * Fix false-postive undefined-variable in nested lambda

   Close 760

 * Fix false-positive ``bad-whitespace`` message for typing annoatations
   with ellipses in them

   Close 1992

1.9

=========================

Release date: 2018-05-15

 * Added two new Python 3 porting checks, `exception-escape` and `comprehension-escape`

   These two are emitted whenever pylint detects that a variable defined in the
   said blocks is used outside of the given block. On Python 3 these values are deleted.

 * Added a new `deprecated-sys-function`, emitted when accessing removed sys members.

 * Added `xreadlines-attribute`, emitted when the `xreadlines()` attribute is accessed.

 * The Python 3 porting mode can now run with Python 3 as well.

 * docparams extension allows abstract methods to document what overriding
   implementations should return, and to raise NotImplementedError without
   documenting it.

   Closes 2044

 * Special methods do not count towards `too-few-methods`,
   and are considered part of the public API.

 * Enum classes do not trigger `too-few-methods`

   Close 605

 * Added a new Python 2/3 check for accessing `operator.div`, which is removed in Python 3

   Close 1936

 * Added a new Python 2/3 check for accessing removed urllib functions

   Close 1997
Links

Update tox from 3.1.2 to 3.4.0.

Changelog

3.4.0

------------------

Bugfixes
^^^^^^^^

- add ``--exists-action w`` to default pip flags to handle better VCS dependencies (`pip documentation on this <https://pip.pypa.io/en/latest/reference/pip/exists-action-option>`_) - by :user:`gaborbernat` (`503 <https://github.com/tox-dev/tox/issues/503>`_)
- instead of assuming the Python version from the base python name ask the interpreter to reveal the version for the ``ignore_basepython_conflict`` flag - by :user:`gaborbernat` (`908 <https://github.com/tox-dev/tox/issues/908>`_)
- PEP-517 packaging fails with sdist already exists, fixed via ensuring the dist folder is empty before invoking the backend and `pypa/setuptools 1481 <https://github.com/pypa/setuptools/pull/1481>`_ - by :user:`gaborbernat` (`1003 <https://github.com/tox-dev/tox/issues/1003>`_)


Features
^^^^^^^^

- add ``commands_pre`` and ``commands_post`` that run before and after running
the ``commands`` (setup runs always, commands only if setup suceeds, teardown always - all
run until the first failing command)  - by :user:`gaborbernat` (`167 <https://github.com/tox-dev/tox/issues/167>`_)
- ``pyproject.toml`` config support initially by just inline the tox.ini under ``tool.tox.legacy_tox_ini`` key; config source priority order is ``pyproject.toml``, ``tox.ini`` and then ``setup.cfg`` - by :user:`gaborbernat` (`814 <https://github.com/tox-dev/tox/issues/814>`_)
- use the os environment variable ``TOX_SKIP_ENV`` to filter out tox environment names from the run list (set by ``envlist``)  - by :user:`gaborbernat` (`824 <https://github.com/tox-dev/tox/issues/824>`_)
- always set ``PIP_USER=0`` (do not install into the user site package, but inside the virtual environment created) and ``PIP_NO_DEPS=0`` (installing without dependencies can cause broken package installations) inside tox - by :user:`gaborbernat` (`838 <https://github.com/tox-dev/tox/issues/838>`_)
- tox will inject some environment variables that to indicate a command is running within tox: ``TOX_WORK_DIR`` env var is set to the tox work directory,
``TOX_ENV_NAME`` is set to the current running tox environment name, ``TOX_ENV_DIR`` is set to the current tox environments working dir - by :user:`gaborbernat` (`847 <https://github.com/tox-dev/tox/issues/847>`_)
- While running tox invokes various commands (such as building the package, pip installing dependencies and so on), these were printed in case they failed as Python arrays. Changed the representation to a shell command, allowing the users to quickly replicate/debug the failure on their own - by :user:`gaborbernat` (`851 <https://github.com/tox-dev/tox/issues/851>`_)
- skip missing interpreters value from the config file can now be overridden via the ``--skip-missing-interpreters`` cli flag - by :user:`gaborbernat` (`903 <https://github.com/tox-dev/tox/issues/903>`_)
- keep additional environments config order when listing them - by :user:`gaborbernat` (`921 <https://github.com/tox-dev/tox/issues/921>`_)
- allow injecting config value inside the ini file dependent of the fact that we're connected to an interactive shell or not  - by :user:`gaborbernat` (`947 <https://github.com/tox-dev/tox/issues/947>`_)
- do not build sdist if skip install is specified for the envs to be run - by :user:`gaborbernat` (`974 <https://github.com/tox-dev/tox/issues/974>`_)
- when verbosity level increases above two start passing through verbosity flags to pip - by :user:`gaborbernat` (`982 <https://github.com/tox-dev/tox/issues/982>`_)
- when discovering the interpreter to use check if the tox host Python matches and use that if so - by :user:`gaborbernat` (`994 <https://github.com/tox-dev/tox/issues/994>`_)
- ``-vv`` will print out why a virtual environment is re-created whenever this operation is triggered - by :user:`gaborbernat` (`1004 <https://github.com/tox-dev/tox/issues/1004>`_)


Documentation
^^^^^^^^^^^^^

- clarify that ``python`` and ``pip`` refer to the virtual environments executable - by :user:`gaborbernat` (`305 <https://github.com/tox-dev/tox/issues/305>`_)
- add Sphinx and mkdocs example of generating documentation via tox - by :user:`gaborbernat` (`374 <https://github.com/tox-dev/tox/issues/374>`_)
- specify that ``setup.cfg`` tox configuration needs to be inside the ``tox:tox`` namespace - by :user:`gaborbernat` (`545 <https://github.com/tox-dev/tox/issues/545>`_)

3.3.0

------------------

Bugfixes
^^^^^^^^

- fix ``TOX_LIMITED_SHEBANG`` when running under python3 - by :user:`asottile` (`931 <https://github.com/tox-dev/tox/issues/931>`_)


Features
^^^^^^^^

- `PEP-517 <https://www.python.org/dev/peps/pep-0517/>`_ source distribution support (create a
``.package`` virtual environment to perform build operations inside) by :user:`gaborbernat` (`573 <https://github.com/tox-dev/tox/issues/573>`_)
- `flit <https://flit.readthedocs.io>`_ support via implementing ``PEP-517`` by :user:`gaborbernat` (`820 <https://github.com/tox-dev/tox/issues/820>`_)
- packaging now is exposed as a hook via ``tox_package(session, venv)`` - by :user:`gaborbernat` (`951 <https://github.com/tox-dev/tox/issues/951>`_)


Miscellaneous
^^^^^^^^^^^^^

- Updated the VSTS build YAML to use the latest jobs and pools syntax - by :user:`davidstaheli` (`955 <https://github.com/tox-dev/tox/issues/955>`_)

3.2.1

------------------

Bugfixes
^^^^^^^^

- ``--parallel--safe-build`` no longer cleans up its folders (``distdir``, ``distshare``, ``log``). - by :user:`gaborbernat` (`849 <https://github.com/tox-dev/tox/issues/849>`_)

3.2.0

------------------

Features
^^^^^^^^

- Switch pip invocations to use the module ``-m pip`` instead of direct invocation. This could help
avoid some of the shebang limitations.  - by :user:`gaborbernat` (`935 <https://github.com/tox-dev/tox/issues/935>`_)
- Ability to specify package requirements for the tox run via the ``tox.ini`` (``tox`` section under key ``requires`` - PEP-508 style): can be used to specify both plugin requirements or build dependencies. - by :user:`gaborbernat` (`783 <https://github.com/tox-dev/tox/issues/783>`_)
- Allow to run multiple tox instances in parallel by providing the
``--parallel--safe-build`` flag. - by :user:`gaborbernat` (`849 <https://github.com/tox-dev/tox/issues/849>`_)

3.1.3

------------------

Bugfixes
^^^^^^^^

- A caching issue that caused the ``develop-inst-nodeps`` action, which
reinstalls the package under test, to always run has been resolved. The
``develop-inst-noop`` action, which, as the name suggests, is a no-op, will now
run unless there are changes to ``setup.py`` or ``setup.cfg`` files that have
not been reflected - by stephenfin (`909 <https://github.com/tox-dev/tox/issues/909>`_)


Features
^^^^^^^^

- Python version testenvs are now automatically detected instead of comparing
against a hard-coded list of supported versions.  This enables ``py38`` and
eventually ``py39`` / ``py40`` / etc. to work without requiring an upgrade to
``tox``.  As such, the following public constants are now deprecated
(and scheduled for removal in ``tox`` 4.0: ``CPYTHON_VERSION_TUPLES``,
``PYPY_VERSION_TUPLES``, ``OTHER_PYTHON_INTERPRETERS``, and ``DEFAULT_FACTORS`` -
by :user:`asottile` (`914 <https://github.com/tox-dev/tox/issues/914>`_)


Documentation
^^^^^^^^^^^^^

- Add a system overview section on the index page that explains briefly how tox works -
by :user:`gaborbernat`. (`867 <https://github.com/tox-dev/tox/issues/867>`_)
Links

Update websocket-client from 0.48.0 to 0.53.0.

Changelog

0.53.0

- on_open() missing 1 required positional argument: 'ws' (471)

0.52.0

- fixed callback argument in _app.py (468)
- Fixing none compare bug in run_forever (472)
- Fix NoneType bug introduced by 386 fix (476)

0.51.0

- revert "WebSocketApp class to make it inheritable (442)" because of breaking the compatibily

0.50.0

- fixed pong before ping (461)
- pass proper arguments to method callbacks (462)

0.49.0

- WebSocketApp class to make it inheritable (442)
- Add option to disable sending the Origin header (459)
- Websocket.close() meaning of "close status: XXXXX" (414)
- Enable multithreading protection with ping_interval (448)
- reset WebsocketApp.sock (450)
- websocket.enableTrace not working (455)
- AttributeError: 'module' object has no attribute 'NullHandler' (443)
- WebSocketBadStatusException "not enough arguments for format string" (454)
- handshake should deal with None in headers (432)
Links

Update boto3 from 1.7.73 to 1.9.14.

Changelog

1.9.14

======

* api-change:``codestar``: [``botocore``] Update codestar client to latest version
* api-change:``ec2``: [``botocore``] Update ec2 client to latest version

1.9.13

======

* api-change:``mq``: [``botocore``] Update mq client to latest version
* api-change:``apigateway``: [``botocore``] Update apigateway client to latest version
* enhancement:Event: [``botocore``] Add the `before-send` event which allows finalized requests to be inspected before being sent across the wire and allows for custom responses to be returned.
* api-change:``codecommit``: [``botocore``] Update codecommit client to latest version

1.9.12

======

* api-change:``sqs``: [``botocore``] Update sqs client to latest version
* api-change:``glue``: [``botocore``] Update glue client to latest version
* api-change:``opsworkscm``: [``botocore``] Update opsworkscm client to latest version
* api-change:``rds``: [``botocore``] Update rds client to latest version

1.9.11

======

* api-change:``ec2``: [``botocore``] Update ec2 client to latest version
* api-change:``cloudfront``: [``botocore``] Update cloudfront client to latest version
* api-change:``ds``: [``botocore``] Update ds client to latest version

1.9.10

======

* api-change:``connect``: [``botocore``] Update connect client to latest version
* api-change:``rds``: [``botocore``] Update rds client to latest version

1.9.9

=====

* api-change:``mediaconvert``: [``botocore``] Update mediaconvert client to latest version

1.9.8

=====

* api-change:``rds``: [``botocore``] Update rds client to latest version
* api-change:``ds``: [``botocore``] Update ds client to latest version
* api-change:``ec2``: [``botocore``] Update ec2 client to latest version

1.9.7

=====

* api-change:``cloudwatch``: [``botocore``] Update cloudwatch client to latest version
* api-change:``s3``: [``botocore``] Update s3 client to latest version
* api-change:``organizations``: [``botocore``] Update organizations client to latest version

1.9.6

=====

* bugfix:Serialization: [``botocore``] Fixes `1557 <https://github.com/boto/botocore/issues/1557>`__. Fixed a regression in serialization where request bodies would be improperly encoded.
* api-change:``es``: [``botocore``] Update es client to latest version
* api-change:``rekognition``: [``botocore``] Update rekognition client to latest version

1.9.5

=====

* api-change:``codebuild``: [``botocore``] Update codebuild client to latest version
* api-change:``elastictranscoder``: [``botocore``] Update elastictranscoder client to latest version
* api-change:``ecs``: [``botocore``] Update ecs client to latest version
* api-change:``ec2``: [``botocore``] Update ec2 client to latest version
* api-change:``cloudwatch``: [``botocore``] Update cloudwatch client to latest version
* api-change:``secretsmanager``: [``botocore``] Update secretsmanager client to latest version
* api-change:``elasticache``: [``botocore``] Update elasticache client to latest version

1.9.4

=====

* enhancement:s3: [``botocore``] Adds encoding and decoding handlers for ListObjectsV2 `1552 <https://github.com/boto/botocore/issues/1552>`__
* api-change:``polly``: [``botocore``] Update polly client to latest version

1.9.3

=====

* api-change:``ses``: [``botocore``] Update ses client to latest version
* api-change:``ec2``: [``botocore``] Update ec2 client to latest version
* api-change:``fms``: [``botocore``] Update fms client to latest version
* api-change:``connect``: [``botocore``] Update connect client to latest version

1.9.2

=====

* api-change:``opsworkscm``: [``botocore``] Update opsworkscm client to latest version
* api-change:``ssm``: [``botocore``] Update ssm client to latest version

1.9.1

=====

* api-change:``redshift``: [``botocore``] Update redshift client to latest version
* api-change:``cloudhsmv2``: [``botocore``] Update cloudhsmv2 client to latest version

1.9.0

=====

* api-change:``logs``: [``botocore``] Update logs client to latest version
* api-change:``config``: [``botocore``] Update config client to latest version
* feature:Events: [``botocore``] This migrates the event system to using sevice ids instead of either client name or endpoint prefix. This prevents issues that might arise when a service changes their endpoint prefix, also fixes a long-standing bug where you could not register an event to a particular service if it happened to share its endpoint prefix with another service (e.g. ``autoscaling`` and ``application-autoscaling`` both use the endpoint prefix ``autoscaling``). Please see the `upgrade notes <https://botocore.amazonaws.com/v1/documentation/api/latest/index.htmlupgrade-notes>`_ to determine if you are impacted and how to proceed if you are.
* feature:Events: This migrates the event system to using sevice ids instead of either client name or endpoint prefix. This prevents issues that might arise when a service changes their endpoint prefix, also fixes a long-standing bug where you could not register an event to a particular service if it happened to share its endpoint prefix with another service (e.g. ``autoscaling`` and ``application-autoscaling`` both use the endpoint prefix ``autoscaling``). Please see the `upgrade notes <https://boto3.amazonaws.com/v1/documentation/api/latest/guide/upgrading.html>`_ to determine if you are impacted and how to proceed if you are.

1.8.9

=====

* api-change:``apigateway``: [``botocore``] Update apigateway client to latest version
* api-change:``codecommit``: [``botocore``] Update codecommit client to latest version
* api-change:``mediaconvert``: [``botocore``] Update mediaconvert client to latest version

1.8.8

=====

* api-change:``rds``: [``botocore``] Update rds client to latest version
* api-change:``s3``: [``botocore``] Update s3 client to latest version
* api-change:``appstream``: [``botocore``] Update appstream client to latest version
* api-change:``dynamodb``: [``botocore``] Update dynamodb client to latest version
* api-change:``elb``: [``botocore``] Update elb client to latest version

1.8.7

=====

* api-change:``rds``: [``botocore``] Update rds client to latest version
* api-change:``rekognition``: [``botocore``] Update rekognition client to latest version

1.8.6

=====

* api-change:``waf-regional``: [``botocore``] Update waf-regional client to latest version
* api-change:``waf``: [``botocore``] Update waf client to latest version
* api-change:``eks``: [``botocore``] Update eks client to latest version

1.8.5

=====

* api-change:``codebuild``: [``botocore``] Update codebuild client to latest version
* api-change:``sagemaker``: [``botocore``] Update sagemaker client to latest version
* bugfix:signing: [``botocore``] Fix an issue where mixed endpoint casing could cause a SigV4 signature mismatch.

1.8.4

=====

* api-change:``glue``: [``botocore``] Update glue client to latest version
* api-change:``sagemaker-runtime``: [``botocore``] Update sagemaker-runtime client to latest version
* api-change:``mediapackage``: [``botocore``] Update mediapackage client to latest version

1.8.3

=====

* api-change:``glue``: [``botocore``] Update glue client to latest version
* api-change:``xray``: [``botocore``] Update xray client to latest version

1.8.2

=====

* api-change:``iot``: [``botocore``] Update iot client to latest version
* api-change:``signer``: [``botocore``] Update signer client to latest version
* api-change:``redshift``: [``botocore``] Update redshift client to latest version
* api-change:``iotanalytics``: [``botocore``] Update iotanalytics client to latest version

1.8.1

=====

* api-change:``glue``: [``botocore``] Update glue client to latest version

1.8.0

=====

* api-change:``events``: [``botocore``] Update events client to latest version
* api-change:``cognito-idp``: [``botocore``] Update cognito-idp client to latest version
* feature:urllib3: [``botocore``] The vendored version of requests and urllib3 are no longer being used and botocore now has a direct dependency on newer versions of upstream urllib3.

1.7.84

======

* api-change:``iot``: [``botocore``] Update iot client to latest version
* api-change:``rekognition``: [``botocore``] Update rekognition client to latest version
* api-change:``lex-models``: [``botocore``] Update lex-models client to latest version
* api-change:``iotanalytics``: [``botocore``] Update iotanalytics client to latest version
* api-change:``medialive``: [``botocore``] Update medialive client to latest version

1.7.83

======

* api-change:``snowball``: [``botocore``] Update snowball client to latest version

1.7.82

======

* api-change:``ec2``: [``botocore``] Update ec2 client to latest version
* api-change:``dlm``: [``botocore``] Update dlm client to latest version
* api-change:``rds``: [``botocore``] Update rds client to latest version
* api-change:``elasticbeanstalk``: [``botocore``] Update elasticbeanstalk client to latest version

1.7.81

======

* api-change:``mediaconvert``: [``botocore``] Update mediaconvert client to latest version
* api-change:``dynamodb``: [``botocore``] Update dynamodb client to latest version

1.7.80

======

* api-change:``dax``: [``botocore``] Update dax client to latest version
* api-change:``secretsmanager``: [``botocore``] Update secretsmanager client to latest version
* api-change:``sagemaker``: [``botocore``] Update sagemaker client to latest version

1.7.79

======

* api-change:``discovery``: [``botocore``] Update discovery client to latest version
* api-change:``ssm``: [``botocore``] Update ssm client to latest version
* api-change:``ec2``: [``botocore``] Update ec2 client to latest version
* api-change:``redshift``: [``botocore``] Update redshift client to latest version
* api-change:``mediaconvert``: [``botocore``] Update mediaconvert client to latest version

1.7.78

======

* api-change:``devicefarm``: [``botocore``] Update devicefarm client to latest version

1.7.77

======

* api-change:``es``: [``botocore``] Update es client to latest version
* api-change:``autoscaling``: [``botocore``] Update autoscaling client to latest version
* api-change:``cloudfront``: [``botocore``] Update cloudfront client to latest version

1.7.76

======

* api-change:``sagemaker``: [``botocore``] Update sagemaker client to latest version

1.7.75

======

* api-change:``rds``: [``botocore``] Update rds client to latest version
* api-change:``mediaconvert``: [``botocore``] Update mediaconvert client to latest version

1.7.74

======

* api-change:``rds``: [``botocore``] Update rds client to latest version
* api-change:``dax``: [``botocore``] Update dax client to latest version
* api-change:``ecs``: [``botocore``] Update ecs client to latest version
Links

Update botocore from 1.10.84 to 1.12.14.

Changelog

1.12.14

=======

* api-change:``codestar``: Update codestar client to latest version
* api-change:``ec2``: Update ec2 client to latest version

1.12.13

=======

* api-change:``mq``: Update mq client to latest version
* api-change:``apigateway``: Update apigateway client to latest version
* enhancement:Event: Add the `before-send` event which allows finalized requests to be inspected before being sent across the wire and allows for custom responses to be returned.
* api-change:``codecommit``: Update codecommit client to latest version

1.12.12

=======

* api-change:``sqs``: Update sqs client to latest version
* api-change:``glue``: Update glue client to latest version
* api-change:``opsworkscm``: Update opsworkscm client to latest version
* api-change:``rds``: Update rds client to latest version

1.12.11

=======

* api-change:``ec2``: Update ec2 client to latest version
* api-change:``cloudfront``: Update cloudfront client to latest version
* api-change:``ds``: Update ds client to latest version

1.12.10

=======

* api-change:``connect``: Update connect client to latest version
* api-change:``rds``: Update rds client to latest version

1.12.9

======

* api-change:``mediaconvert``: Update mediaconvert client to latest version

1.12.8

======

* api-change:``rds``: Update rds client to latest version
* api-change:``ds``: Update ds client to latest version
* api-change:``ec2``: Update ec2 client to latest version

1.12.7

======

* api-change:``cloudwatch``: Update cloudwatch client to latest version
* api-change:``s3``: Update s3 client to latest version
* api-change:``organizations``: Update organizations client to latest version

1.12.6

======

* bugfix:Serialization: Fixes `1557 <https://github.com/boto/botocore/issues/1557>`__. Fixed a regression in serialization where request bodies would be improperly encoded.
* api-change:``es``: Update es client to latest version
* api-change:``rekognition``: Update rekognition client to latest version

1.12.5

======

* api-change:``codebuild``: Update codebuild client to latest version
* api-change:``elastictranscoder``: Update elastictranscoder client to latest version
* api-change:``ecs``: Update ecs client to latest version
* api-change:``ec2``: Update ec2 client to latest version
* api-change:``cloudwatch``: Update cloudwatch client to latest version
* api-change:``secretsmanager``: Update secretsmanager client to latest version
* api-change:``elasticache``: Update elasticache client to latest version

1.12.4

======

* enhancement:s3: Adds encoding and decoding handlers for ListObjectsV2 `1552 <https://github.com/boto/botocore/issues/1552>`__
* api-change:``polly``: Update polly client to latest version

1.12.3

======

* api-change:``ses``: Update ses client to latest version
* api-change:``ec2``: Update ec2 client to latest version
* api-change:``fms``: Update fms client to latest version
* api-change:``connect``: Update connect client to latest version

1.12.2

======

* api-change:``opsworkscm``: Update opsworkscm client to latest version
* api-change:``ssm``: Update ssm client to latest version

1.12.1

======

* api-change:``redshift``: Update redshift client to latest version
* api-change:``cloudhsmv2``: Update cloudhsmv2 client to latest version

1.12.0

======

* api-change:``logs``: Update logs client to latest version
* api-change:``config``: Update config client to latest version
* feature:Events: This migrates the event system to using sevice ids instead of either client name or endpoint prefix. This prevents issues that might arise when a service changes their endpoint prefix, also fixes a long-standing bug where you could not register an event to a particular service if it happened to share its endpoint prefix with another service (e.g. ``autoscaling`` and ``application-autoscaling`` both use the endpoint prefix ``autoscaling``). Please see the `upgrade notes <https://botocore.amazonaws.com/v1/documentation/api/latest/index.htmlupgrade-notes>`_ to determine if you are impacted and how to proceed if you are.

1.11.9

======

* api-change:``apigateway``: Update apigateway client to latest version
* api-change:``codecommit``: Update codecommit client to latest version
* api-change:``mediaconvert``: Update mediaconvert client to latest version

1.11.8

======

* api-change:``rds``: Update rds client to latest version
* api-change:``s3``: Update s3 client to latest version
* api-change:``appstream``: Update appstream client to latest version
* api-change:``dynamodb``: Update dynamodb client to latest version
* api-change:``elb``: Update elb client to latest version

1.11.7

======

* api-change:``rds``: Update rds client to latest version
* api-change:``rekognition``: Update rekognition client to latest version

1.11.6

======

* api-change:``waf-regional``: Update waf-regional client to latest version
* api-change:``waf``: Update waf client to latest version
* api-change:``eks``: Update eks client to latest version

1.11.5

======

* api-change:``codebuild``: Update codebuild client to latest version
* api-change:``sagemaker``: Update sagemaker client to latest version
* bugfix:signing: Fix an issue where mixed endpoint casing could cause a SigV4 signature mismatch.

1.11.4

======

* api-change:``glue``: Update glue client to latest version
* api-change:``sagemaker-runtime``: Update sagemaker-runtime client to latest version
* api-change:``mediapackage``: Update mediapackage client to latest version

1.11.3

======

* api-change:``glue``: Update glue client to latest version
* api-change:``xray``: Update xray client to latest version

1.11.2

======

* api-change:``iot``: Update iot client to latest version
* api-change:``signer``: Update signer client to latest version
* api-change:``redshift``: Update redshift client to latest version
* api-change:``iotanalytics``: Update iotanalytics client to latest version

1.11.1

======

* api-change:``glue``: Update glue client to latest version

1.11.0

======

* api-change:``events``: Update events client to latest version
* api-change:``cognito-idp``: Update cognito-idp client to latest version
* feature:urllib3: The vendored version of requests and urllib3 are no longer being used and botocore now has a direct dependency on newer versions of upstream urllib3.
Links

Update google-cloud-storage from 1.10.0 to 1.12.0.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update fake-factory from 0.7.2 to 9999.9.9.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update httpretty from 0.8.14 to 0.9.5.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update moto from 1.3.4 to 1.3.6.

Changelog

1.3.5

-----

 * Pin down botocore issue as temporary fix for 1793.
 * More features on secrets manager
Links

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@mmourafiq mmourafiq closed this Oct 2, 2018
@mmourafiq mmourafiq deleted the pyup-scheduled-update-2018-10-01 branch October 24, 2018 12:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants