Changelog
### 2.2.0
```
- Include column information in error messages
- Fix ``overload`` detection with other decorators and in non-global scopes
- Fix return-type annotation being a class member
- Fix assignment to ``_`` in doctests with existing ``_`` name
- Namespace attributes which are attached to ast nodes with ``_pyflakes_`` to
avoid conflicts with other libraries (notably bandit)
- Add check for f-strings without placeholders
- Add check for unused/extra/invalid ``'string literal'.format(...)``
- Add check for unused/extra/invalid ``'string literal % ...``
- Improve python shebang detection
- Allow type ignore to be followed by a code `` type: ignore[attr-defined]``
- Add support for assignment expressions (PEP 572)
- Support ``overload`` detection from ``typing_extensions`` as well
- Fix ``overload`` detection for async functions
- Allow ``continue`` inside ``finally`` in python 3.8+
- Fix handling of annotations in positional-only arguments
- Make pyflakes more resistant to future syntax additions
- Fix false positives in partially quoted type annotations
- Warn about ``is`` comparison to tuples
- Fix ``Checker`` usage with async function subtrees
- Add check for ``if`` of non-empty tuple
- Switch from ``optparse`` to ``argparse``
- Fix false positives in partially quoted type annotations in unusual contexts
- Be more cautious when identifying ``Literal`` type expressions
```
Links
- PyPI: https://pypi.org/project/pyflakes
- Changelog: https://pyup.io/changelogs/pyflakes/
- Repo: https://github.com/PyCQA/pyflakes
Changelog
### 19.3.0
```
-------------------
Changes
^^^^^^^
- Fixed ``auto_attribs`` usage when default values cannot be compared directly with ``==``, such as ``numpy`` arrays.
`585 <https://github.com/python-attrs/attrs/issues/585>`_
----
```
### 19.2.0
```
-------------------
Backward-incompatible Changes
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Removed deprecated ``Attribute`` attribute ``convert`` per scheduled removal on 2019/1.
This planned deprecation is tracked in issue `307 <https://github.com/python-attrs/attrs/issues/307>`_.
`504 <https://github.com/python-attrs/attrs/issues/504>`_
- ``__lt__``, ``__le__``, ``__gt__``, and ``__ge__`` do not consider subclasses comparable anymore.
This has been deprecated since 18.2.0 and was raising a ``DeprecationWarning`` for over a year.
`570 <https://github.com/python-attrs/attrs/issues/570>`_
Deprecations
^^^^^^^^^^^^
- The ``cmp`` argument to ``attr.s()`` and ``attr.ib()`` is now deprecated.
Please use ``eq`` to add equality methods (``__eq__`` and ``__ne__``) and ``order`` to add ordering methods (``__lt__``, ``__le__``, ``__gt__``, and ``__ge__``) instead – just like with `dataclasses <https://docs.python.org/3/library/dataclasses.html>`_.
Both are effectively ``True`` by default but it's enough to set ``eq=False`` to disable both at once.
Passing ``eq=False, order=True`` explicitly will raise a ``ValueError`` though.
Since this is arguably a deeper backward-compatibility break, it will have an extended deprecation period until 2021-06-01.
After that day, the ``cmp`` argument will be removed.
``attr.Attribute`` also isn't orderable anymore.
`574 <https://github.com/python-attrs/attrs/issues/574>`_
Changes
^^^^^^^
- Updated ``attr.validators.__all__`` to include new validators added in `425`_.
`517 <https://github.com/python-attrs/attrs/issues/517>`_
- Slotted classes now use a pure Python mechanism to rewrite the ``__class__`` cell when rebuilding the class, so ``super()`` works even on environments where ``ctypes`` is not installed.
`522 <https://github.com/python-attrs/attrs/issues/522>`_
- When collecting attributes using ``attr.s(auto_attribs=True)``, attributes with a default of ``None`` are now deleted too.
`523 <https://github.com/python-attrs/attrs/issues/523>`_,
`556 <https://github.com/python-attrs/attrs/issues/556>`_
- Fixed ``attr.validators.deep_iterable()`` and ``attr.validators.deep_mapping()`` type stubs.
`533 <https://github.com/python-attrs/attrs/issues/533>`_
- ``attr.validators.is_callable()`` validator now raises an exception ``attr.exceptions.NotCallableError``, a subclass of ``TypeError``, informing the received value.
`536 <https://github.com/python-attrs/attrs/issues/536>`_
- ``attr.s(auto_exc=True)`` now generates classes that are hashable by ID, as the documentation always claimed it would.
`543 <https://github.com/python-attrs/attrs/issues/543>`_,
`563 <https://github.com/python-attrs/attrs/issues/563>`_
- Added ``attr.validators.matches_re()`` that checks string attributes whether they match a regular expression.
`552 <https://github.com/python-attrs/attrs/issues/552>`_
- Keyword-only attributes (``kw_only=True``) and attributes that are excluded from the ``attrs``'s ``__init__`` (``init=False``) now can appear before mandatory attributes.
`559 <https://github.com/python-attrs/attrs/issues/559>`_
- The fake filename for generated methods is now more stable.
It won't change when you restart the process.
`560 <https://github.com/python-attrs/attrs/issues/560>`_
- The value passed to ``attr.ib(repr=…)`` can now be either a boolean (as before) or a callable.
That callable must return a string and is then used for formatting the attribute by the generated ``__repr__()`` method.
`568 <https://github.com/python-attrs/attrs/issues/568>`_
- Added ``attr.__version_info__`` that can be used to reliably check the version of ``attrs`` and write forward- and backward-compatible code.
Please check out the `section on deprecated APIs <http://www.attrs.org/en/stable/api.htmldeprecated-apis>`_ on how to use it.
`580 <https://github.com/python-attrs/attrs/issues/580>`_
.. _`425`: https://github.com/python-attrs/attrs/issues/425
----
```
Links
- PyPI: https://pypi.org/project/attrs
- Changelog: https://pyup.io/changelogs/attrs/
- Homepage: https://www.attrs.org/
Changelog
### 8.2.0
```
See the [release notes](https://raw.githubusercontent.com/erikrose/more-itertools/0861bed72ddd4c8ebcfa3a932b7689e272c43478/docs/versions.rst) for details.
```
### 8.1.0
```
See the [release notes](https://github.com/erikrose/more-itertools/blob/ba499fc5f38c7441271c3f147cfd9abbc587556d/docs/versions.rst).
```
### 8.0.2
```
See [the release notes](https://github.com/erikrose/more-itertools/blob/b2c747c2bf642bb9e193a3428bb0052614d420b4/docs/versions.rst802).
```
### 8.0.1
```
See the [release notes](https://github.com/erikrose/more-itertools/blob/765c71b265bb6b34f28fc14500f0f4ab2d3d36ef/docs/versions.rst801) for details.
```
### 8.0.0
```
See [the release notes](https://github.com/erikrose/more-itertools/blob/4661c942c49fe891a80b50c201983d00db75af13/docs/versions.rst800) for details.
```
### 7.2.0
```
See the [release notes](https://github.com/erikrose/more-itertools/blob/0f4a66cdce0e153594eb95beb292fd5ea4393473/docs/versions.rst) for details.
```
### 7.1.0
```
See [the release notes](https://github.com/erikrose/more-itertools/blob/4152860cbbd7a073253d075472c1eb3b73e38a6a/docs/versions.rst710) for details.
```
Links
- PyPI: https://pypi.org/project/more-itertools
- Changelog: https://pyup.io/changelogs/more-itertools/
- Repo: https://github.com/erikrose/more-itertools
- Docs: https://pythonhosted.org/more-itertools/
Changelog
### 0.13.1
```
==========================
Trivial/Internal Changes
------------------------
- `236 <https://github.com/pytest-dev/pluggy/pull/236>`_: Improved documentation, especially with regard to references.
```
### 0.13.0
```
==========================
Trivial/Internal Changes
------------------------
- `222 <https://github.com/pytest-dev/pluggy/issues/222>`_: Replace ``importlib_metadata`` backport with ``importlib.metadata`` from the
standard library on Python 3.8+.
```
### 0.12.0
```
==========================
Features
--------
- `215 <https://github.com/pytest-dev/pluggy/issues/215>`_: Switch from ``pkg_resources`` to ``importlib-metadata`` for entrypoint detection for improved performance and import time. This time with ``.egg`` support.
```
Links
- PyPI: https://pypi.org/project/pluggy
- Changelog: https://pyup.io/changelogs/pluggy/
- Repo: https://github.com/pytest-dev/pluggy
Changelog
### 1.8.1
```
==================
- Handle ``FileNotFoundError`` when trying to import pathlib in ``path.common``
on Python 3.4 (207).
- ``py.path.local.samefile`` now works correctly in Python 3 on Windows when dealing with symlinks.
```
Links
- PyPI: https://pypi.org/project/py
- Changelog: https://pyup.io/changelogs/py/
- Docs: http://py.readthedocs.io/
Changelog
### 2.1.1
```
* Fix issue with funcargs causing failures. (`282 <https://github.com/pytest-dev/pytest-html/issues/282>`_)
* Thanks to `ssbarnea <https://github.com/ssbarnea>`_ for reporting and `christiansandberg <https://github.com/christiansandberg>`_ for the fix
```
### 2.1.0
```
* Added support for MP4 video format. (`260 <https://github.com/pytest-dev/pytest-html/pull/260>`_)
* Thanks to `ExaltedBagel <https://github.com/ExaltedBagel>`_ for the PR
* Added support for sorting metadata by key. (`245 <https://github.com/pytest-dev/pytest-html/issues/245>`_)
* Thanks to `ssbarnea <https://github.com/ssbarnea>`_ for reporting and `ExaltedBagel <https://github.com/ExaltedBagel>`_ for the fix
* Added support for rendering reports collapsed (`239 <https://github.com/pytest-dev/pytest-html/issues/239>`_)
* Thanks to `Wramberg <https://github.com/Wramberg>`_ for suggesting this enhancement
* Added `extra` fixture (`269 <https://github.com/pytest-dev/pytest-html/pull/269>`_)
* Thanks to `christiansandberg <https://github.com/christiansandberg>`_ for the PR
* Added ability to change report title using hook (`270 <https://github.com/pytest-dev/pytest-html/pull/270>`_)
* Thanks to `werdeil <https://github.com/werdeil>`_ for the PR
```
### 2.0.1
```
* Properly check for presence of CSS file. (`246 <https://github.com/pytest-dev/pytest-html/issues/246>`_)
* Thanks to `wanam <https://github.com/wanam>`_ for reporting, and `krzysztof-pawlik-gat <https://github.com/krzysztof-pawlik-gat>`_ for the fix
* Added support for UTF-8 display. (`244 <https://github.com/pytest-dev/pytest-html/pull/244>`_)
* Thanks to `Izhu666 <https://github.com/lzhu666>`_ for the PR
* Fix initial sort on column. (`247 <https://github.com/pytest-dev/pytest-html/issues/247>`_)
* Thanks to `wanam <https://github.com/wanam>`_ for reporting and fixing
```
### 2.0.0
```
* Drop support for Python 2.7. We will continue to accept patches to ``1.22.x`` for the time being.
* Thanks to `hugovk <https://github.com/hugovk>`_ for the PR
```
### 1.22.0
```
* Refactor assets naming to be more readable and OS safe.
* This solves multiple reported issues, mainly from Windows users.
* Thanks to `franz-95 <https://github.com/franz-95>`_ and `Uil2Liv <https://github.com/Uil2liv>`_
for reporting and testing fixes.
* Add line break to log section of the report.
* Thanks to `borntyping <https://github.com/borntyping>`_ for reporting and fixing!
```
### 1.21.1
```
* Fix issue with assets filenames being too long.
* Thanks to `D3X <https://github.com/D3X>`_ for reporting and providing a fix
```
### 1.21.0
```
* Allow opening generated html report in browser (`ssbarnea <https://github.com/ssbarnea>`_)
* Handle when report title is stored as an environment variable (`BeyondEvil <https://github.com/BeyondEvil>`_)
* Change assets naming method (`SunInJuly <https://github.com/SunInJuly>`_)
```
Links
- PyPI: https://pypi.org/project/pytest-html
- Changelog: https://pyup.io/changelogs/pytest-html/
- Repo: https://github.com/pytest-dev/pytest-html
Changelog
### 2.23.0
```
-------------------
**Improvements**
- Remove defunct reference to `prefetch` in Session `__attrs__` (5110)
**Bugfixes**
- Requests no longer outputs password in basic auth usage warning. (5099)
**Dependencies**
- Pinning for `chardet` and `idna` now uses major version instead of minor.
This hopefully reduces the need for releases everytime a dependency is updated.
```
Links
- PyPI: https://pypi.org/project/requests
- Changelog: https://pyup.io/changelogs/requests/
- Docs: https://requests.readthedocs.io
Changelog
### 1.25.9
```
-------------------
* Added ``InvalidProxyConfigurationWarning`` which is raised when
erroneously specifying an HTTPS proxy URL. urllib3 doesn't currently
support connecting to HTTPS proxies but will soon be able to
and we would like users to migrate properly without much breakage.
See `this GitHub issue <https://github.com/urllib3/urllib3/issues/1850>`_
for more information on how to fix your proxy config. (Pull 1851)
* Drain connection after ``PoolManager`` redirect (Pull 1817)
* Ensure ``load_verify_locations`` raises ``SSLError`` for all backends (Pull 1812)
* Rename ``VerifiedHTTPSConnection`` to ``HTTPSConnection`` (Pull 1805)
* Allow the CA certificate data to be passed as a string (Pull 1804)
* Raise ``ValueError`` if method contains control characters (Pull 1800)
* Add ``__repr__`` to ``Timeout`` (Pull 1795)
```
### 1.25.8
```
-------------------
* Drop support for EOL Python 3.4 (Pull 1774)
* Optimize _encode_invalid_chars (Pull 1787)
```
### 1.25.7
```
-------------------
* Preserve ``chunked`` parameter on retries (Pull 1715, Pull 1734)
* Allow unset ``SERVER_SOFTWARE`` in App Engine (Pull 1704, Issue 1470)
* Fix issue where URL fragment was sent within the request target. (Pull 1732)
* Fix issue where an empty query section in a URL would fail to parse. (Pull 1732)
* Remove TLS 1.3 support in SecureTransport due to Apple removing support (Pull 1703)
```
### 1.25.6
```
-------------------
* Fix issue where tilde (``~``) characters were incorrectly
percent-encoded in the path. (Pull 1692)
```
### 1.25.5
```
-------------------
* Add mitigation for BPO-37428 affecting Python <3.7.4 and OpenSSL 1.1.1+ which
caused certificate verification to be enabled when using ``cert_reqs=CERT_NONE``.
(Issue 1682)
```
### 1.25.4
```
-------------------
* Propagate Retry-After header settings to subsequent retries. (Pull 1607)
* Fix edge case where Retry-After header was still respected even when
explicitly opted out of. (Pull 1607)
* Remove dependency on ``rfc3986`` for URL parsing.
* Fix issue where URLs containing invalid characters within ``Url.auth`` would
raise an exception instead of percent-encoding those characters.
* Add support for ``HTTPResponse.auto_close = False`` which makes HTTP responses
work well with BufferedReaders and other ``io`` module features. (Pull 1652)
* Percent-encode invalid characters in URL for ``HTTPConnectionPool.request()`` (Pull 1673)
```
### 1.25.3
```
-------------------
* Change ``HTTPSConnection`` to load system CA certificates
when ``ca_certs``, ``ca_cert_dir``, and ``ssl_context`` are
unspecified. (Pull 1608, Issue 1603)
* Upgrade bundled rfc3986 to v1.3.2. (Pull 1609, Issue 1605)
```
Links
- PyPI: https://pypi.org/project/urllib3
- Changelog: https://pyup.io/changelogs/urllib3/
- Docs: https://urllib3.readthedocs.io/
Changelog
### 4.6.1
```
==================
- Ensure the resolution order of ``BaseGlobalComponents`` is
consistent. See `issue 45 <https://github.com/zopefoundation/zope.component/issues/45>`_.
```
### 4.6.0
```
==================
- Add support for Python 3.8.
- Drop support for Python 3.4.
- Fix tests on Python 2 following changes in ZODB 5.5.0.
```
Links
- PyPI: https://pypi.org/project/zope.component
- Changelog: https://pyup.io/changelogs/zope.component/
- Repo: https://github.com/zopefoundation/zope.component
Changelog
### 5.0.1
```
==================
- Stop using the setuptools ``Feature`` class, allowing this
project to be built from source with newer versions of setuptools
that remove that functionality.
```
### 5.0.0
```
==================
- Add support for Python 3.7 and 3.8.
- Drop support for Python 3.4.
```
Links
- PyPI: https://pypi.org/project/zope.hookable
- Changelog: https://pyup.io/changelogs/zope.hookable/
- Repo: http://github.com/zopefoundation/zope.hookable
Changelog
### 5.1.0
```
==================
- Make ``implementer(*iface)`` and ``classImplements(cls, *iface)``
ignore redundant interfaces. If the class already implements an
interface through inheritance, it is no longer redeclared
specifically for *cls*. This solves many instances of inconsistent
resolution orders, while still allowing the interface to be declared
for readability and maintenance purposes. See `issue 199
<https://github.com/zopefoundation/zope.interface/issues/199>`_.
- Remove all bare ``except:`` statements. Previously, when accessing
special attributes such as ``__provides__``, ``__providedBy__``,
``__class__`` and ``__conform__``, this package wrapped such access
in a bare ``except:`` statement, meaning that many errors could pass
silently; typically this would result in a fallback path being taken
and sometimes (like with ``providedBy()``) the result would be
non-sensical. This is especially true when those attributes are
implemented with descriptors. Now, only ``AttributeError`` is
caught. This makes errors more obvious.
Obviously, this means that some exceptions will be propagated
differently than before. In particular, ``RuntimeError`` raised by
Acquisition in the case of circular containment will now be
propagated. Previously, when adapting such a broken object, a
``TypeError`` would be the common result, but now it will be a more
informative ``RuntimeError``.
In addition, ZODB errors like ``POSKeyError`` could now be
propagated where previously they would ignored by this package.
See `issue 200 <https://github.com/zopefoundation/zope.interface/issues/200>`_.
- Require that the second argument (*bases*) to ``InterfaceClass`` is
a tuple. This only matters when directly using ``InterfaceClass`` to
create new interfaces dynamically. Previously, an individual
interface was allowed, but did not work correctly. Now it is
consistent with ``type`` and requires a tuple.
- Let interfaces define custom ``__adapt__`` methods. This implements
the other side of the :pep:`246` adaptation protocol: objects being
adapted could already implement ``__conform__`` if they know about
the interface, and now interfaces can implement ``__adapt__`` if
they know about particular objects. There is no performance penalty
for interfaces that do not supply custom ``__adapt__`` methods.
This includes the ability to add new methods, or override existing
interface methods using the new ``interfacemethod`` decorator.
See `issue 3 <https://github.com/zopefoundation/zope.interface/issues/3>`_.
- Make the internal singleton object returned by APIs like
``implementedBy`` and ``directlyProvidedBy`` for objects that
implement or provide no interfaces more immutable. Previously an
internal cache could be mutated. See `issue 204
<https://github.com/zopefoundation/zope.interface/issues/204>`_.
```
### 5.0.2
```
==================
- Ensure that objects that implement no interfaces (such as direct
subclasses of ``object``) still include ``Interface`` itself in
their ``__iro___`` and ``__sro___``. This fixes adapter registry
lookups for such objects when the adapter is registered for
``Interface``. See `issue 197
<https://github.com/zopefoundation/zope.interface/issues/197>`_.
```
### 5.0.1
```
==================
- Ensure the resolution order for ``InterfaceClass`` is consistent.
See `issue 192 <https://github.com/zopefoundation/zope.interface/issues/192>`_.
- Ensure the resolution order for ``collections.OrderedDict`` is
consistent on CPython 2. (It was already consistent on Python 3 and PyPy).
- Fix the handling of the ``ZOPE_INTERFACE_STRICT_IRO`` environment
variable. Previously, ``ZOPE_INTERFACE_STRICT_RO`` was read, in
contrast with the documentation. See `issue 194
<https://github.com/zopefoundation/zope.interface/issues/194>`_.
```
### 5.0.0
```
==================
- Make an internal singleton object returned by APIs like
``implementedBy`` and ``directlyProvidedBy`` immutable. Previously,
it was fully mutable and allowed changing its ``__bases___``. That
could potentially lead to wrong results in pathological corner
cases. See `issue 158
<https://github.com/zopefoundation/zope.interface/issues/158>`_.
- Support the ``PURE_PYTHON`` environment variable at runtime instead
of just at wheel build time. A value of 0 forces the C extensions to
be used (even on PyPy) failing if they aren't present. Any other
value forces the Python implementation to be used, ignoring the C
extensions. See `PR 151 <https://github.com/zopefoundation/zope.interface/pull/151>`_.
- Cache the result of ``__hash__`` method in ``InterfaceClass`` as a
speed optimization. The method is called very often (i.e several
hundred thousand times during Plone 5.2 startup). Because the hash value never
changes it can be cached. This improves test performance from 0.614s
down to 0.575s (1.07x faster). In a real world Plone case a reindex
index came down from 402s to 320s (1.26x faster). See `PR 156
<https://github.com/zopefoundation/zope.interface/pull/156>`_.
- Change the C classes ``SpecificationBase`` and its subclass
``ClassProvidesBase`` to store implementation attributes in their structures
instead of their instance dictionaries. This eliminates the use of
an undocumented private C API function, and helps make some
instances require less memory. See `PR 154 <https://github.com/zopefoundation/zope.interface/pull/154>`_.
- Reduce memory usage in other ways based on observations of usage
patterns in Zope (3) and Plone code bases.
- Specifications with no dependents are common (more than 50%) so
avoid allocating a ``WeakKeyDictionary`` unless we need it.
- Likewise, tagged values are relatively rare, so don't allocate a
dictionary to hold them until they are used.
- Use ``__slots___`` or the C equivalent ``tp_members`` in more
common places. Note that this removes the ability to set arbitrary
instance variables on certain objects.
See `PR 155 <https://github.com/zopefoundation/zope.interface/pull/155>`_.
The changes in this release resulted in a 7% memory reduction after
loading about 6,000 modules that define about 2,200 interfaces.
.. caution::
Details of many private attributes have changed, and external use
of those private attributes may break. In particular, the
lifetime and default value of ``_v_attrs`` has changed.
- Remove support for hashing uninitialized interfaces. This could only
be done by subclassing ``InterfaceClass``. This has generated a
warning since it was first added in 2011 (3.6.5). Please call the
``InterfaceClass`` constructor or otherwise set the appropriate
fields in your subclass before attempting to hash or sort it. See
`issue 157 <https://github.com/zopefoundation/zope.interface/issues/157>`_.
- Remove unneeded override of the ``__hash__`` method from
``zope.interface.declarations.Implements``. Watching a reindex index
process in ZCatalog with on a Py-Spy after 10k samples the time for
``.adapter._lookup`` was reduced from 27.5s to 18.8s (~1.5x faster).
Overall reindex index time shrunk from 369s to 293s (1.26x faster).
See `PR 161
<https://github.com/zopefoundation/zope.interface/pull/161>`_.
- Make the Python implementation closer to the C implementation by
ignoring all exceptions, not just ``AttributeError``, during (parts
of) interface adaptation. See `issue 163
<https://github.com/zopefoundation/zope.interface/issues/163>`_.
- Micro-optimization in ``.adapter._lookup`` , ``.adapter._lookupAll``
and ``.adapter._subscriptions``: By loading ``components.get`` into
a local variable before entering the loop a bytcode "LOAD_FAST 0
(components)" in the loop can be eliminated. In Plone, while running
all tests, average speedup of the "owntime" of ``_lookup`` is ~5x.
See `PR 167
<https://github.com/zopefoundation/zope.interface/pull/167>`_.
- Add ``__all__`` declarations to all modules. This helps tools that
do auto-completion and documentation and results in less cluttered
results. Wildcard ("*") are not recommended and may be affected. See
`issue 153
<https://github.com/zopefoundation/zope.interface/issues/153>`_.
- Fix ``verifyClass`` and ``verifyObject`` for builtin types like
``dict`` that have methods taking an optional, unnamed argument with
no default value like ``dict.pop``. On PyPy3, the verification is
strict, but on PyPy2 (as on all versions of CPython) those methods
cannot be verified and are ignored. See `issue 118
<https://github.com/zopefoundation/zope.interface/issues/118>`_.
- Update the common interfaces ``IEnumerableMapping``,
``IExtendedReadMapping``, ``IExtendedWriteMapping``,
``IReadSequence`` and ``IUniqueMemberWriteSequence`` to no longer
require methods that were removed from Python 3 on Python 3, such as
``__setslice___``. Now, ``dict``, ``list`` and ``tuple`` properly
verify as ``IFullMapping``, ``ISequence`` and ``IReadSequence,``
respectively on all versions of Python.
- Add human-readable ``__str___`` and ``__repr___`` to ``Attribute``
and ``Method``. These contain the name of the defining interface
and the attribute. For methods, it also includes the signature.
- Change the error strings raised by ``verifyObject`` and
``verifyClass``. They now include more human-readable information
and exclude extraneous lines and spaces. See `issue 170
<https://github.com/zopefoundation/zope.interface/issues/170>`_.
.. caution:: This will break consumers (such as doctests) that
depended on the exact error messages.
- Make ``verifyObject`` and ``verifyClass`` report all errors, if the
candidate object has multiple detectable violations. Previously they
reported only the first error. See `issue
<https://github.com/zopefoundation/zope.interface/issues/171>`_.
Like the above, this will break consumers depending on the exact
output of error messages if more than one error is present.
- Add ``zope.interface.common.collections``,
``zope.interface.common.numbers``, and ``zope.interface.common.io``.
These modules define interfaces based on the ABCs defined in the
standard library ``collections.abc``, ``numbers`` and ``io``
modules, respectively. Importing these modules will make the
standard library concrete classes that are registered with those
ABCs declare the appropriate interface. See `issue 138
<https://github.com/zopefoundation/zope.interface/issues/138>`_.
- Add ``zope.interface.common.builtins``. This module defines
interfaces of common builtin types, such as ``ITextString`` and
``IByteString``, ``IDict``, etc. These interfaces extend the
appropriate interfaces from ``collections`` and ``numbers``, and the
standard library classes implement them after importing this module.
This is intended as a replacement for third-party packages like
`dolmen.builtins <https://pypi.org/project/dolmen.builtins/>`_.
See `issue 138 <https://github.com/zopefoundation/zope.interface/issues/138>`_.
- Make ``providedBy()`` and ``implementedBy()`` respect ``super``
objects. For instance, if class ``Derived`` implements ``IDerived``
and extends ``Base`` which in turn implements ``IBase``, then
``providedBy(super(Derived, derived))`` will return ``[IBase]``.
Previously it would have returned ``[IDerived]`` (in general, it
would previously have returned whatever would have been returned
without ``super``).
Along with this change, adapter registries will unpack ``super``
objects into their ``__self___`` before passing it to the factory.
Together, this means that ``component.getAdapter(super(Derived,
self), ITarget)`` is now meaningful.
See `issue 11 <https://github.com/zopefoundation/zope.interface/issues/11>`_.
- Fix a potential interpreter crash in the low-level adapter
registry lookup functions. See issue 11.
- Adopt Python's standard `C3 resolution order
<https://www.python.org/download/releases/2.3/mro/>`_ to compute the
``__iro__`` and ``__sro__`` of interfaces, with tweaks to support
additional cases that are common in interfaces but disallowed for
Python classes. Previously, an ad-hoc ordering that made no
particular guarantees was used.
This has many beneficial properties, including the fact that base
interface and base classes tend to appear near the end of the
resolution order instead of the beginning. The resolution order in
general should be more predictable and consistent.
.. caution::
In some cases, especially with complex interface inheritance
trees or when manually providing or implementing interfaces, the
resulting IRO may be quite different. This may affect adapter
lookup.
The C3 order enforces some constraints in order to be able to
guarantee a sensible ordering. Older versions of zope.interface did
not impose similar constraints, so it was possible to create
interfaces and declarations that are inconsistent with the C3
constraints. In that event, zope.interface will still produce a
resolution order equal to the old order, but it won't be guaranteed
to be fully C3 compliant. In the future, strict enforcement of C3
order may be the default.
A set of environment variables and module constants allows
controlling several aspects of this new behaviour. It is possible to
request warnings about inconsistent resolution orders encountered,
and even to forbid them. Differences between the C3 resolution order
and the previous order can be logged, and, in extreme cases, the
previous order can still be used (this ability will be removed in
the future). For details, see the documentation for
``zope.interface.ro``.
- Make inherited tagged values in interfaces respect the resolution
order (``__iro__``), as method and attribute lookup does. Previously
tagged values could give inconsistent results. See `issue 190
<https://github.com/zopefoundation/zope.interface/issues/190>`_.
- Add ``getDirectTaggedValue`` (and related methods) to interfaces to
allow accessing tagged values irrespective of inheritance. See
`issue 190
<https://github.com/zopefoundation/zope.interface/issues/190>`_.
- Ensure that ``Interface`` is always the last item in the ``__iro__``
and ``__sro__``. This is usually the case, but if classes that do
not implement any interfaces are part of a class inheritance
hierarchy, ``Interface`` could be assigned too high a priority.
See `issue 8 <https://github.com/zopefoundation/zope.interface/issues/8>`_.
- Implement sorting, equality, and hashing in C for ``Interface``
objects. In micro benchmarks, this makes those operations 40% to 80%
faster. This translates to a 20% speed up in querying adapters.
Note that this changes certain implementation details. In
particular, ``InterfaceClass`` now has a non-default metaclass, and
it is enforced that ``__module__`` in instances of
``InterfaceClass`` is read-only.
See `PR 183 <https://github.com/zopefoundation/zope.interface/pull/183>`_.
```
### 4.7.2
```
==================
- Remove deprecated use of setuptools features. See `issue 30
<https://github.com/zopefoundation/zope.interface/issues/30>`_.
```
### 4.7.1
```
==================
- Use Python 3 syntax in the documentation. See `issue 119
<https://github.com/zopefoundation/zope.interface/issues/119>`_.
```
### 4.7.0
```
==================
- Drop support for Python 3.4.
- Change ``queryTaggedValue``, ``getTaggedValue``,
``getTaggedValueTags`` in interfaces. They now include inherited
values by following ``__bases__``. See `PR 144
<https://github.com/zopefoundation/zope.interface/pull/144>`_.
.. caution:: This may be a breaking change.
- Add support for Python 3.8.
```
Links
- PyPI: https://pypi.org/project/zope.interface
- Changelog: https://pyup.io/changelogs/zope.interface/
- Repo: https://github.com/zopefoundation/zope.interface
Changelog
### 4.3.5
```
==================
- Stop installing C header files on PyPy (which is what zope.proxy before 4.3.4
used to do), fixes `issue 39
<https://github.com/zopefoundation/zope.proxy/issues/39>`_.
```
### 4.3.4
```
==================
- Fix a compilation warning on Python 3.8. The slot ``tp_print``
changed to ``tp_vectorcall_offset`` in 3.8 and must not be set.
Prior to 3.8, it was reserved and ignored in all Python 3 versions.
See `issue 36
<https://github.com/zopefoundation/zope.proxy/issues/36>`_.
- Remove deprecated use of setuptools features. See `issue 38
<https://github.com/zopefoundation/zope.proxy/issues/38>`_.
```
### 4.3.3
```
==================
- Add support for Python 3.8.
- Drop support for Python 3.4.
```
### 4.3.2
```
==================
- Fix error handling in ``ProxyBase.__setattr__``: any the exception raised by
``PyString_AsString``/``PyUnicode_AsUTF8`` would be silently swallowed up
and ignored. See `issue 31
<https://github.com/zopefoundation/zope.proxy/issues/31>`_.
```
Links
- PyPI: https://pypi.org/project/zope.proxy
- Changelog: https://pyup.io/changelogs/zope.proxy/
- Repo: http://github.com/zopefoundation/zope.proxy
Changelog
### 7.1.1
```
-------------
Released 2020-03-09
- Fix ``ClickException`` output going to stdout instead of stderr.
:issue:`1495`
```
### 7.1
```
-----------
Released 2020-03-09
- Fix PyPI package name, "click" is lowercase again.
- Fix link in ``unicode_literals`` error message. :pr:`1151`
- Add support for colored output on UNIX Jupyter notebooks.
:issue:`1185`
- Operations that strip ANSI controls will strip the cursor hide/show
sequences. :issue:`1216`
- Remove unused compat shim for ``bytes``. :pr:`1195`
- Expand testing around termui, especially getchar on Windows.
:issue:`1116`
- Fix output on Windows Python 2.7 built with MSVC 14. :pr:`1342`
- Fix ``OSError`` when running in MSYS2. :issue:`1338`
- Fix ``OSError`` when redirecting to ``NUL`` stream on Windows.
:issue:`1065`
- Fix memory leak when parsing Unicode arguments on Windows.
:issue:`1136`
- Fix error in new AppEngine environments. :issue:`1462`
- Always return one of the passed choices for ``click.Choice``
:issue:`1277`, :pr:`1318`
- Add ``no_args_is_help`` option to ``click.Command``, defaults to
False :pr:`1167`
- Add ``show_defaults`` parameter to ``Context`` to enable showing
defaults globally. :issue:`1018`
- Handle ``env MYPATH=''`` as though the option were not passed.
:issue:`1196`
- It is once again possible to call ``next(bar)`` on an active
progress bar instance. :issue:`1125`
- ``open_file`` with ``atomic=True`` retains permissions of existing
files and respects the current umask for new files. :issue:`1376`
- When using the test ``CliRunner`` with ``mix_stderr=False``, if
``result.stderr`` is empty it will not raise a ``ValueError``.
:issue:`1193`
- Remove the unused ``mix_stderr`` parameter from
``CliRunner.invoke``. :issue:`1435`
- Fix ``TypeError`` raised when using bool flags and specifying
``type=bool``. :issue:`1287`
- Newlines in option help text are replaced with spaces before
re-wrapping to avoid uneven line breaks. :issue:`834`
- ``MissingParameter`` exceptions are printable in the Python
interpreter. :issue:`1139`
- Fix how default values for file-type options are shown during
prompts. :issue:`914`
- Fix environment variable automatic generation for commands
containing ``-``. :issue:`1253`
- Option help text replaces newlines with spaces when rewrapping, but
preserves paragraph breaks, fixing multiline formatting.
:issue:`834, 1066, 1397`
- Option help text that is wrapped adds an extra newline at the end to
distinguish it from the next option. :issue:`1075`
- Consider ``sensible-editor`` when determining the editor to use for
``click.edit()``. :pr:`1469`
- Arguments to system calls such as the executable path passed to
``click.edit`` can contains spaces. :pr:`1470`
- Add ZSH completion autoloading and error handling. :issue:`1348`
- Add a repr to ``Command``, ``Group``, ``Option``, and ``Argument``,
showing the name for friendlier debugging. :issue:`1267`
- Completion doesn't consider option names if a value starts with
``-`` after the ``--`` separator. :issue:`1247`
- ZSH completion escapes special characters in values. :pr:`1418`
- Add completion support for Fish shell. :pr:`1423`
- Decoding bytes option values falls back to UTF-8 in more cases.
:pr:`1468`
- Make the warning about old 2-arg parameter callbacks a deprecation
warning, to be removed in 8.0. This has been a warning since Click
2.0. :pr:`1492`
```
Links
- PyPI: https://pypi.org/project/click
- Changelog: https://pyup.io/changelogs/click/
- Homepage: https://palletsprojects.com/p/click/
Changelog
### 3.7.8
```
-------------------
You can view the `3.7.8 milestone`_ on GitLab for more details.
Bugs Fixed
~~~~~~~~~~
- Fix handling of ``Application.parse_preliminary_options_and_args`` when
argv is an empty list (See also `GitLab!310`_, `GitLab518`_)
- Fix crash when a file parses but fails to tokenize (See also `GitLab!314`_,
`GitLab532`_)
- Log the full traceback on plugin exceptions (See also `GitLab!317`_)
- Fix `` noqa: ...`` comments with multi-letter codes (See also `GitLab!326`_,
`GitLab549`_)
.. all links
.. _3.7.8 milestone:
https://gitlab.com/pycqa/flake8/milestones/31
.. issue links
.. _GitLab518:
https://gitlab.com/pycqa/flake8/issues/518
.. _GitLab532:
https://gitlab.com/pycqa/flake8/issues/532
.. _GitLab549:
https://gitlab.com/pycqa/flake8/issues/549
.. merge request links
.. _GitLab!310:
https://gitlab.com/pycqa/flake8/merge_requests/310
.. _GitLab!314:
https://gitlab.com/pycqa/flake8/merge_requests/314
.. _GitLab!317:
https://gitlab.com/pycqa/flake8/merge_requests/317
.. _GitLab!326:
https://gitlab.com/pycqa/flake8/merge_requests/326
```
Links
- PyPI: https://pypi.org/project/flake8
- Changelog: https://pyup.io/changelogs/flake8/
- Repo: https://gitlab.com/pycqa/flake8
Update pyflakes from 2.1.1 to 2.2.0.
Changelog
### 2.2.0 ``` - Include column information in error messages - Fix ``overload`` detection with other decorators and in non-global scopes - Fix return-type annotation being a class member - Fix assignment to ``_`` in doctests with existing ``_`` name - Namespace attributes which are attached to ast nodes with ``_pyflakes_`` to avoid conflicts with other libraries (notably bandit) - Add check for f-strings without placeholders - Add check for unused/extra/invalid ``'string literal'.format(...)`` - Add check for unused/extra/invalid ``'string literal % ...`` - Improve python shebang detection - Allow type ignore to be followed by a code `` type: ignore[attr-defined]`` - Add support for assignment expressions (PEP 572) - Support ``overload`` detection from ``typing_extensions`` as well - Fix ``overload`` detection for async functions - Allow ``continue`` inside ``finally`` in python 3.8+ - Fix handling of annotations in positional-only arguments - Make pyflakes more resistant to future syntax additions - Fix false positives in partially quoted type annotations - Warn about ``is`` comparison to tuples - Fix ``Checker`` usage with async function subtrees - Add check for ``if`` of non-empty tuple - Switch from ``optparse`` to ``argparse`` - Fix false positives in partially quoted type annotations in unusual contexts - Be more cautious when identifying ``Literal`` type expressions ```Links
- PyPI: https://pypi.org/project/pyflakes - Changelog: https://pyup.io/changelogs/pyflakes/ - Repo: https://github.com/PyCQA/pyflakesUpdate attrs from 19.1.0 to 19.3.0.
Changelog
### 19.3.0 ``` ------------------- Changes ^^^^^^^ - Fixed ``auto_attribs`` usage when default values cannot be compared directly with ``==``, such as ``numpy`` arrays. `585 <https://github.com/python-attrs/attrs/issues/585>`_ ---- ``` ### 19.2.0 ``` ------------------- Backward-incompatible Changes ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Removed deprecated ``Attribute`` attribute ``convert`` per scheduled removal on 2019/1. This planned deprecation is tracked in issue `307 <https://github.com/python-attrs/attrs/issues/307>`_. `504 <https://github.com/python-attrs/attrs/issues/504>`_ - ``__lt__``, ``__le__``, ``__gt__``, and ``__ge__`` do not consider subclasses comparable anymore. This has been deprecated since 18.2.0 and was raising a ``DeprecationWarning`` for over a year. `570 <https://github.com/python-attrs/attrs/issues/570>`_ Deprecations ^^^^^^^^^^^^ - The ``cmp`` argument to ``attr.s()`` and ``attr.ib()`` is now deprecated. Please use ``eq`` to add equality methods (``__eq__`` and ``__ne__``) and ``order`` to add ordering methods (``__lt__``, ``__le__``, ``__gt__``, and ``__ge__``) instead – just like with `dataclasses <https://docs.python.org/3/library/dataclasses.html>`_. Both are effectively ``True`` by default but it's enough to set ``eq=False`` to disable both at once. Passing ``eq=False, order=True`` explicitly will raise a ``ValueError`` though. Since this is arguably a deeper backward-compatibility break, it will have an extended deprecation period until 2021-06-01. After that day, the ``cmp`` argument will be removed. ``attr.Attribute`` also isn't orderable anymore. `574 <https://github.com/python-attrs/attrs/issues/574>`_ Changes ^^^^^^^ - Updated ``attr.validators.__all__`` to include new validators added in `425`_. `517 <https://github.com/python-attrs/attrs/issues/517>`_ - Slotted classes now use a pure Python mechanism to rewrite the ``__class__`` cell when rebuilding the class, so ``super()`` works even on environments where ``ctypes`` is not installed. `522 <https://github.com/python-attrs/attrs/issues/522>`_ - When collecting attributes using ``attr.s(auto_attribs=True)``, attributes with a default of ``None`` are now deleted too. `523 <https://github.com/python-attrs/attrs/issues/523>`_, `556 <https://github.com/python-attrs/attrs/issues/556>`_ - Fixed ``attr.validators.deep_iterable()`` and ``attr.validators.deep_mapping()`` type stubs. `533 <https://github.com/python-attrs/attrs/issues/533>`_ - ``attr.validators.is_callable()`` validator now raises an exception ``attr.exceptions.NotCallableError``, a subclass of ``TypeError``, informing the received value. `536 <https://github.com/python-attrs/attrs/issues/536>`_ - ``attr.s(auto_exc=True)`` now generates classes that are hashable by ID, as the documentation always claimed it would. `543 <https://github.com/python-attrs/attrs/issues/543>`_, `563 <https://github.com/python-attrs/attrs/issues/563>`_ - Added ``attr.validators.matches_re()`` that checks string attributes whether they match a regular expression. `552 <https://github.com/python-attrs/attrs/issues/552>`_ - Keyword-only attributes (``kw_only=True``) and attributes that are excluded from the ``attrs``'s ``__init__`` (``init=False``) now can appear before mandatory attributes. `559 <https://github.com/python-attrs/attrs/issues/559>`_ - The fake filename for generated methods is now more stable. It won't change when you restart the process. `560 <https://github.com/python-attrs/attrs/issues/560>`_ - The value passed to ``attr.ib(repr=…)`` can now be either a boolean (as before) or a callable. That callable must return a string and is then used for formatting the attribute by the generated ``__repr__()`` method. `568 <https://github.com/python-attrs/attrs/issues/568>`_ - Added ``attr.__version_info__`` that can be used to reliably check the version of ``attrs`` and write forward- and backward-compatible code. Please check out the `section on deprecated APIs <http://www.attrs.org/en/stable/api.htmldeprecated-apis>`_ on how to use it. `580 <https://github.com/python-attrs/attrs/issues/580>`_ .. _`425`: https://github.com/python-attrs/attrs/issues/425 ---- ```Links
- PyPI: https://pypi.org/project/attrs - Changelog: https://pyup.io/changelogs/attrs/ - Homepage: https://www.attrs.org/Update certifi from 2019.3.9 to 2020.4.5.1.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/certifi - Docs: https://certifiio.readthedocs.io/en/latest/Update idna from 2.8 to 2.9.
Changelog
### 2.9 ``` ++++++++++++++++ - Update to Unicode 12.1.0. - Prohibit A-labels ending with a hyphen (Thanks, Julien Bernard!) - Future-proofing: Test on Python 3.7 and 3.8, don't immediately fail should Python 4 come along. - Made BSD 3-clause license clearer ```Links
- PyPI: https://pypi.org/project/idna - Changelog: https://pyup.io/changelogs/idna/ - Repo: https://github.com/kjd/idnaUpdate more-itertools from 7.0.0 to 8.2.0.
Changelog
### 8.2.0 ``` See the [release notes](https://raw.githubusercontent.com/erikrose/more-itertools/0861bed72ddd4c8ebcfa3a932b7689e272c43478/docs/versions.rst) for details. ``` ### 8.1.0 ``` See the [release notes](https://github.com/erikrose/more-itertools/blob/ba499fc5f38c7441271c3f147cfd9abbc587556d/docs/versions.rst). ``` ### 8.0.2 ``` See [the release notes](https://github.com/erikrose/more-itertools/blob/b2c747c2bf642bb9e193a3428bb0052614d420b4/docs/versions.rst802). ``` ### 8.0.1 ``` See the [release notes](https://github.com/erikrose/more-itertools/blob/765c71b265bb6b34f28fc14500f0f4ab2d3d36ef/docs/versions.rst801) for details. ``` ### 8.0.0 ``` See [the release notes](https://github.com/erikrose/more-itertools/blob/4661c942c49fe891a80b50c201983d00db75af13/docs/versions.rst800) for details. ``` ### 7.2.0 ``` See the [release notes](https://github.com/erikrose/more-itertools/blob/0f4a66cdce0e153594eb95beb292fd5ea4393473/docs/versions.rst) for details. ``` ### 7.1.0 ``` See [the release notes](https://github.com/erikrose/more-itertools/blob/4152860cbbd7a073253d075472c1eb3b73e38a6a/docs/versions.rst710) for details. ```Links
- PyPI: https://pypi.org/project/more-itertools - Changelog: https://pyup.io/changelogs/more-itertools/ - Repo: https://github.com/erikrose/more-itertools - Docs: https://pythonhosted.org/more-itertools/Update pluggy from 0.11.0 to 0.13.1.
Changelog
### 0.13.1 ``` ========================== Trivial/Internal Changes ------------------------ - `236 <https://github.com/pytest-dev/pluggy/pull/236>`_: Improved documentation, especially with regard to references. ``` ### 0.13.0 ``` ========================== Trivial/Internal Changes ------------------------ - `222 <https://github.com/pytest-dev/pluggy/issues/222>`_: Replace ``importlib_metadata`` backport with ``importlib.metadata`` from the standard library on Python 3.8+. ``` ### 0.12.0 ``` ========================== Features -------- - `215 <https://github.com/pytest-dev/pluggy/issues/215>`_: Switch from ``pkg_resources`` to ``importlib-metadata`` for entrypoint detection for improved performance and import time. This time with ``.egg`` support. ```Links
- PyPI: https://pypi.org/project/pluggy - Changelog: https://pyup.io/changelogs/pluggy/ - Repo: https://github.com/pytest-dev/pluggyUpdate py from 1.8.0 to 1.8.1.
Changelog
### 1.8.1 ``` ================== - Handle ``FileNotFoundError`` when trying to import pathlib in ``path.common`` on Python 3.4 (207). - ``py.path.local.samefile`` now works correctly in Python 3 on Windows when dealing with symlinks. ```Links
- PyPI: https://pypi.org/project/py - Changelog: https://pyup.io/changelogs/py/ - Docs: http://py.readthedocs.io/Update pytest from 4.5.0 to 5.4.1.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/pytest - Homepage: https://docs.pytest.org/en/latest/Update pytest-html from 1.20.0 to 2.1.1.
Changelog
### 2.1.1 ``` * Fix issue with funcargs causing failures. (`282 <https://github.com/pytest-dev/pytest-html/issues/282>`_) * Thanks to `ssbarnea <https://github.com/ssbarnea>`_ for reporting and `christiansandberg <https://github.com/christiansandberg>`_ for the fix ``` ### 2.1.0 ``` * Added support for MP4 video format. (`260 <https://github.com/pytest-dev/pytest-html/pull/260>`_) * Thanks to `ExaltedBagel <https://github.com/ExaltedBagel>`_ for the PR * Added support for sorting metadata by key. (`245 <https://github.com/pytest-dev/pytest-html/issues/245>`_) * Thanks to `ssbarnea <https://github.com/ssbarnea>`_ for reporting and `ExaltedBagel <https://github.com/ExaltedBagel>`_ for the fix * Added support for rendering reports collapsed (`239 <https://github.com/pytest-dev/pytest-html/issues/239>`_) * Thanks to `Wramberg <https://github.com/Wramberg>`_ for suggesting this enhancement * Added `extra` fixture (`269 <https://github.com/pytest-dev/pytest-html/pull/269>`_) * Thanks to `christiansandberg <https://github.com/christiansandberg>`_ for the PR * Added ability to change report title using hook (`270 <https://github.com/pytest-dev/pytest-html/pull/270>`_) * Thanks to `werdeil <https://github.com/werdeil>`_ for the PR ``` ### 2.0.1 ``` * Properly check for presence of CSS file. (`246 <https://github.com/pytest-dev/pytest-html/issues/246>`_) * Thanks to `wanam <https://github.com/wanam>`_ for reporting, and `krzysztof-pawlik-gat <https://github.com/krzysztof-pawlik-gat>`_ for the fix * Added support for UTF-8 display. (`244 <https://github.com/pytest-dev/pytest-html/pull/244>`_) * Thanks to `Izhu666 <https://github.com/lzhu666>`_ for the PR * Fix initial sort on column. (`247 <https://github.com/pytest-dev/pytest-html/issues/247>`_) * Thanks to `wanam <https://github.com/wanam>`_ for reporting and fixing ``` ### 2.0.0 ``` * Drop support for Python 2.7. We will continue to accept patches to ``1.22.x`` for the time being. * Thanks to `hugovk <https://github.com/hugovk>`_ for the PR ``` ### 1.22.0 ``` * Refactor assets naming to be more readable and OS safe. * This solves multiple reported issues, mainly from Windows users. * Thanks to `franz-95 <https://github.com/franz-95>`_ and `Uil2Liv <https://github.com/Uil2liv>`_ for reporting and testing fixes. * Add line break to log section of the report. * Thanks to `borntyping <https://github.com/borntyping>`_ for reporting and fixing! ``` ### 1.21.1 ``` * Fix issue with assets filenames being too long. * Thanks to `D3X <https://github.com/D3X>`_ for reporting and providing a fix ``` ### 1.21.0 ``` * Allow opening generated html report in browser (`ssbarnea <https://github.com/ssbarnea>`_) * Handle when report title is stored as an environment variable (`BeyondEvil <https://github.com/BeyondEvil>`_) * Change assets naming method (`SunInJuly <https://github.com/SunInJuly>`_) ```Links
- PyPI: https://pypi.org/project/pytest-html - Changelog: https://pyup.io/changelogs/pytest-html/ - Repo: https://github.com/pytest-dev/pytest-htmlUpdate pytest-selenium from 1.16.0 to 1.17.0.
Changelog
### 1.17.0 ``` ------------------- * Added support for `Appium <https://appium.io/>`_ * Deprecate support for `PhantomJS` ```Links
- PyPI: https://pypi.org/project/pytest-selenium - Changelog: https://pyup.io/changelogs/pytest-selenium/ - Repo: https://github.com/pytest-dev/pytest-seleniumUpdate pytest-variables from 1.7.1 to 1.9.0.
Changelog
### 1.9.0 ``` * Add TOML support * Thanks to `mraspberry <https://github.com/mraspberry>`_ for the PR ``` ### 1.8.0 ``` * Handle PyYaml deprecation * Thanks to `jurisbu <https://github.com/jurisbu>`_ for the PR ```Links
- PyPI: https://pypi.org/project/pytest-variables - Changelog: https://pyup.io/changelogs/pytest-variables/ - Repo: https://github.com/pytest-dev/pytest-variablesUpdate requests from 2.22.0 to 2.23.0.
Changelog
### 2.23.0 ``` ------------------- **Improvements** - Remove defunct reference to `prefetch` in Session `__attrs__` (5110) **Bugfixes** - Requests no longer outputs password in basic auth usage warning. (5099) **Dependencies** - Pinning for `chardet` and `idna` now uses major version instead of minor. This hopefully reduces the need for releases everytime a dependency is updated. ```Links
- PyPI: https://pypi.org/project/requests - Changelog: https://pyup.io/changelogs/requests/ - Docs: https://requests.readthedocs.ioUpdate six from 1.12.0 to 1.14.0.
Changelog
### 1.14.0 ``` ------ - Issue 288, pull request 289: Add `six.assertNotRegex`. - Issue 317: `six.moves._dummy_thread` now points to the `_thread` module on Python 3.9+. Python 3.7 and later requires threading and deprecated the `_dummy_thread` module. - Issue 308, pull request 314: Remove support for Python 2.6 and Python 3.2. - Issue 250, issue 165, pull request 251: `six.wraps` now ignores missing attributes. This follows the Python 3.2+ standard library behavior. ``` ### 1.13.0 ``` ------ - Issue 298, pull request 299: Add `six.moves.dbm_ndbm`. - Issue 155: Add `six.moves.collections_abc`, which aliases the `collections` module on Python 2-3.2 and the `collections.abc` on Python 3.3 and greater. - Pull request 304: Re-add distutils fallback in `setup.py`. - Pull request 305: On Python 3.7, `with_metaclass` supports classes using PEP 560 features. ```Links
- PyPI: https://pypi.org/project/six - Changelog: https://pyup.io/changelogs/six/ - Repo: https://github.com/benjaminp/sixUpdate urllib3 from 1.25.2 to 1.25.9.
Changelog
### 1.25.9 ``` ------------------- * Added ``InvalidProxyConfigurationWarning`` which is raised when erroneously specifying an HTTPS proxy URL. urllib3 doesn't currently support connecting to HTTPS proxies but will soon be able to and we would like users to migrate properly without much breakage. See `this GitHub issue <https://github.com/urllib3/urllib3/issues/1850>`_ for more information on how to fix your proxy config. (Pull 1851) * Drain connection after ``PoolManager`` redirect (Pull 1817) * Ensure ``load_verify_locations`` raises ``SSLError`` for all backends (Pull 1812) * Rename ``VerifiedHTTPSConnection`` to ``HTTPSConnection`` (Pull 1805) * Allow the CA certificate data to be passed as a string (Pull 1804) * Raise ``ValueError`` if method contains control characters (Pull 1800) * Add ``__repr__`` to ``Timeout`` (Pull 1795) ``` ### 1.25.8 ``` ------------------- * Drop support for EOL Python 3.4 (Pull 1774) * Optimize _encode_invalid_chars (Pull 1787) ``` ### 1.25.7 ``` ------------------- * Preserve ``chunked`` parameter on retries (Pull 1715, Pull 1734) * Allow unset ``SERVER_SOFTWARE`` in App Engine (Pull 1704, Issue 1470) * Fix issue where URL fragment was sent within the request target. (Pull 1732) * Fix issue where an empty query section in a URL would fail to parse. (Pull 1732) * Remove TLS 1.3 support in SecureTransport due to Apple removing support (Pull 1703) ``` ### 1.25.6 ``` ------------------- * Fix issue where tilde (``~``) characters were incorrectly percent-encoded in the path. (Pull 1692) ``` ### 1.25.5 ``` ------------------- * Add mitigation for BPO-37428 affecting Python <3.7.4 and OpenSSL 1.1.1+ which caused certificate verification to be enabled when using ``cert_reqs=CERT_NONE``. (Issue 1682) ``` ### 1.25.4 ``` ------------------- * Propagate Retry-After header settings to subsequent retries. (Pull 1607) * Fix edge case where Retry-After header was still respected even when explicitly opted out of. (Pull 1607) * Remove dependency on ``rfc3986`` for URL parsing. * Fix issue where URLs containing invalid characters within ``Url.auth`` would raise an exception instead of percent-encoding those characters. * Add support for ``HTTPResponse.auto_close = False`` which makes HTTP responses work well with BufferedReaders and other ``io`` module features. (Pull 1652) * Percent-encode invalid characters in URL for ``HTTPConnectionPool.request()`` (Pull 1673) ``` ### 1.25.3 ``` ------------------- * Change ``HTTPSConnection`` to load system CA certificates when ``ca_certs``, ``ca_cert_dir``, and ``ssl_context`` are unspecified. (Pull 1608, Issue 1603) * Upgrade bundled rfc3986 to v1.3.2. (Pull 1609, Issue 1605) ```Links
- PyPI: https://pypi.org/project/urllib3 - Changelog: https://pyup.io/changelogs/urllib3/ - Docs: https://urllib3.readthedocs.io/Update zope.component from 4.5 to 4.6.1.
Changelog
### 4.6.1 ``` ================== - Ensure the resolution order of ``BaseGlobalComponents`` is consistent. See `issue 45 <https://github.com/zopefoundation/zope.component/issues/45>`_. ``` ### 4.6.0 ``` ================== - Add support for Python 3.8. - Drop support for Python 3.4. - Fix tests on Python 2 following changes in ZODB 5.5.0. ```Links
- PyPI: https://pypi.org/project/zope.component - Changelog: https://pyup.io/changelogs/zope.component/ - Repo: https://github.com/zopefoundation/zope.componentUpdate zope.deferredimport from 4.3 to 4.3.1.
Changelog
### 4.3.1 ``` ================== - Avoid race condition in ``deferredmodule.ModuleProxy.__getattr__`` `8 <https://github.com/zopefoundation/zope.deferredimport/issues/8>`_. ```Links
- PyPI: https://pypi.org/project/zope.deferredimport - Changelog: https://pyup.io/changelogs/zope.deferredimport/ - Repo: http://github.com/zopefoundation/zope.deferredimportUpdate zope.hookable from 4.2.0 to 5.0.1.
Changelog
### 5.0.1 ``` ================== - Stop using the setuptools ``Feature`` class, allowing this project to be built from source with newer versions of setuptools that remove that functionality. ``` ### 5.0.0 ``` ================== - Add support for Python 3.7 and 3.8. - Drop support for Python 3.4. ```Links
- PyPI: https://pypi.org/project/zope.hookable - Changelog: https://pyup.io/changelogs/zope.hookable/ - Repo: http://github.com/zopefoundation/zope.hookableUpdate zope.interface from 4.6.0 to 5.1.0.
Changelog
### 5.1.0 ``` ================== - Make ``implementer(*iface)`` and ``classImplements(cls, *iface)`` ignore redundant interfaces. If the class already implements an interface through inheritance, it is no longer redeclared specifically for *cls*. This solves many instances of inconsistent resolution orders, while still allowing the interface to be declared for readability and maintenance purposes. See `issue 199 <https://github.com/zopefoundation/zope.interface/issues/199>`_. - Remove all bare ``except:`` statements. Previously, when accessing special attributes such as ``__provides__``, ``__providedBy__``, ``__class__`` and ``__conform__``, this package wrapped such access in a bare ``except:`` statement, meaning that many errors could pass silently; typically this would result in a fallback path being taken and sometimes (like with ``providedBy()``) the result would be non-sensical. This is especially true when those attributes are implemented with descriptors. Now, only ``AttributeError`` is caught. This makes errors more obvious. Obviously, this means that some exceptions will be propagated differently than before. In particular, ``RuntimeError`` raised by Acquisition in the case of circular containment will now be propagated. Previously, when adapting such a broken object, a ``TypeError`` would be the common result, but now it will be a more informative ``RuntimeError``. In addition, ZODB errors like ``POSKeyError`` could now be propagated where previously they would ignored by this package. See `issue 200 <https://github.com/zopefoundation/zope.interface/issues/200>`_. - Require that the second argument (*bases*) to ``InterfaceClass`` is a tuple. This only matters when directly using ``InterfaceClass`` to create new interfaces dynamically. Previously, an individual interface was allowed, but did not work correctly. Now it is consistent with ``type`` and requires a tuple. - Let interfaces define custom ``__adapt__`` methods. This implements the other side of the :pep:`246` adaptation protocol: objects being adapted could already implement ``__conform__`` if they know about the interface, and now interfaces can implement ``__adapt__`` if they know about particular objects. There is no performance penalty for interfaces that do not supply custom ``__adapt__`` methods. This includes the ability to add new methods, or override existing interface methods using the new ``interfacemethod`` decorator. See `issue 3 <https://github.com/zopefoundation/zope.interface/issues/3>`_. - Make the internal singleton object returned by APIs like ``implementedBy`` and ``directlyProvidedBy`` for objects that implement or provide no interfaces more immutable. Previously an internal cache could be mutated. See `issue 204 <https://github.com/zopefoundation/zope.interface/issues/204>`_. ``` ### 5.0.2 ``` ================== - Ensure that objects that implement no interfaces (such as direct subclasses of ``object``) still include ``Interface`` itself in their ``__iro___`` and ``__sro___``. This fixes adapter registry lookups for such objects when the adapter is registered for ``Interface``. See `issue 197 <https://github.com/zopefoundation/zope.interface/issues/197>`_. ``` ### 5.0.1 ``` ================== - Ensure the resolution order for ``InterfaceClass`` is consistent. See `issue 192 <https://github.com/zopefoundation/zope.interface/issues/192>`_. - Ensure the resolution order for ``collections.OrderedDict`` is consistent on CPython 2. (It was already consistent on Python 3 and PyPy). - Fix the handling of the ``ZOPE_INTERFACE_STRICT_IRO`` environment variable. Previously, ``ZOPE_INTERFACE_STRICT_RO`` was read, in contrast with the documentation. See `issue 194 <https://github.com/zopefoundation/zope.interface/issues/194>`_. ``` ### 5.0.0 ``` ================== - Make an internal singleton object returned by APIs like ``implementedBy`` and ``directlyProvidedBy`` immutable. Previously, it was fully mutable and allowed changing its ``__bases___``. That could potentially lead to wrong results in pathological corner cases. See `issue 158 <https://github.com/zopefoundation/zope.interface/issues/158>`_. - Support the ``PURE_PYTHON`` environment variable at runtime instead of just at wheel build time. A value of 0 forces the C extensions to be used (even on PyPy) failing if they aren't present. Any other value forces the Python implementation to be used, ignoring the C extensions. See `PR 151 <https://github.com/zopefoundation/zope.interface/pull/151>`_. - Cache the result of ``__hash__`` method in ``InterfaceClass`` as a speed optimization. The method is called very often (i.e several hundred thousand times during Plone 5.2 startup). Because the hash value never changes it can be cached. This improves test performance from 0.614s down to 0.575s (1.07x faster). In a real world Plone case a reindex index came down from 402s to 320s (1.26x faster). See `PR 156 <https://github.com/zopefoundation/zope.interface/pull/156>`_. - Change the C classes ``SpecificationBase`` and its subclass ``ClassProvidesBase`` to store implementation attributes in their structures instead of their instance dictionaries. This eliminates the use of an undocumented private C API function, and helps make some instances require less memory. See `PR 154 <https://github.com/zopefoundation/zope.interface/pull/154>`_. - Reduce memory usage in other ways based on observations of usage patterns in Zope (3) and Plone code bases. - Specifications with no dependents are common (more than 50%) so avoid allocating a ``WeakKeyDictionary`` unless we need it. - Likewise, tagged values are relatively rare, so don't allocate a dictionary to hold them until they are used. - Use ``__slots___`` or the C equivalent ``tp_members`` in more common places. Note that this removes the ability to set arbitrary instance variables on certain objects. See `PR 155 <https://github.com/zopefoundation/zope.interface/pull/155>`_. The changes in this release resulted in a 7% memory reduction after loading about 6,000 modules that define about 2,200 interfaces. .. caution:: Details of many private attributes have changed, and external use of those private attributes may break. In particular, the lifetime and default value of ``_v_attrs`` has changed. - Remove support for hashing uninitialized interfaces. This could only be done by subclassing ``InterfaceClass``. This has generated a warning since it was first added in 2011 (3.6.5). Please call the ``InterfaceClass`` constructor or otherwise set the appropriate fields in your subclass before attempting to hash or sort it. See `issue 157 <https://github.com/zopefoundation/zope.interface/issues/157>`_. - Remove unneeded override of the ``__hash__`` method from ``zope.interface.declarations.Implements``. Watching a reindex index process in ZCatalog with on a Py-Spy after 10k samples the time for ``.adapter._lookup`` was reduced from 27.5s to 18.8s (~1.5x faster). Overall reindex index time shrunk from 369s to 293s (1.26x faster). See `PR 161 <https://github.com/zopefoundation/zope.interface/pull/161>`_. - Make the Python implementation closer to the C implementation by ignoring all exceptions, not just ``AttributeError``, during (parts of) interface adaptation. See `issue 163 <https://github.com/zopefoundation/zope.interface/issues/163>`_. - Micro-optimization in ``.adapter._lookup`` , ``.adapter._lookupAll`` and ``.adapter._subscriptions``: By loading ``components.get`` into a local variable before entering the loop a bytcode "LOAD_FAST 0 (components)" in the loop can be eliminated. In Plone, while running all tests, average speedup of the "owntime" of ``_lookup`` is ~5x. See `PR 167 <https://github.com/zopefoundation/zope.interface/pull/167>`_. - Add ``__all__`` declarations to all modules. This helps tools that do auto-completion and documentation and results in less cluttered results. Wildcard ("*") are not recommended and may be affected. See `issue 153 <https://github.com/zopefoundation/zope.interface/issues/153>`_. - Fix ``verifyClass`` and ``verifyObject`` for builtin types like ``dict`` that have methods taking an optional, unnamed argument with no default value like ``dict.pop``. On PyPy3, the verification is strict, but on PyPy2 (as on all versions of CPython) those methods cannot be verified and are ignored. See `issue 118 <https://github.com/zopefoundation/zope.interface/issues/118>`_. - Update the common interfaces ``IEnumerableMapping``, ``IExtendedReadMapping``, ``IExtendedWriteMapping``, ``IReadSequence`` and ``IUniqueMemberWriteSequence`` to no longer require methods that were removed from Python 3 on Python 3, such as ``__setslice___``. Now, ``dict``, ``list`` and ``tuple`` properly verify as ``IFullMapping``, ``ISequence`` and ``IReadSequence,`` respectively on all versions of Python. - Add human-readable ``__str___`` and ``__repr___`` to ``Attribute`` and ``Method``. These contain the name of the defining interface and the attribute. For methods, it also includes the signature. - Change the error strings raised by ``verifyObject`` and ``verifyClass``. They now include more human-readable information and exclude extraneous lines and spaces. See `issue 170 <https://github.com/zopefoundation/zope.interface/issues/170>`_. .. caution:: This will break consumers (such as doctests) that depended on the exact error messages. - Make ``verifyObject`` and ``verifyClass`` report all errors, if the candidate object has multiple detectable violations. Previously they reported only the first error. See `issue <https://github.com/zopefoundation/zope.interface/issues/171>`_. Like the above, this will break consumers depending on the exact output of error messages if more than one error is present. - Add ``zope.interface.common.collections``, ``zope.interface.common.numbers``, and ``zope.interface.common.io``. These modules define interfaces based on the ABCs defined in the standard library ``collections.abc``, ``numbers`` and ``io`` modules, respectively. Importing these modules will make the standard library concrete classes that are registered with those ABCs declare the appropriate interface. See `issue 138 <https://github.com/zopefoundation/zope.interface/issues/138>`_. - Add ``zope.interface.common.builtins``. This module defines interfaces of common builtin types, such as ``ITextString`` and ``IByteString``, ``IDict``, etc. These interfaces extend the appropriate interfaces from ``collections`` and ``numbers``, and the standard library classes implement them after importing this module. This is intended as a replacement for third-party packages like `dolmen.builtins <https://pypi.org/project/dolmen.builtins/>`_. See `issue 138 <https://github.com/zopefoundation/zope.interface/issues/138>`_. - Make ``providedBy()`` and ``implementedBy()`` respect ``super`` objects. For instance, if class ``Derived`` implements ``IDerived`` and extends ``Base`` which in turn implements ``IBase``, then ``providedBy(super(Derived, derived))`` will return ``[IBase]``. Previously it would have returned ``[IDerived]`` (in general, it would previously have returned whatever would have been returned without ``super``). Along with this change, adapter registries will unpack ``super`` objects into their ``__self___`` before passing it to the factory. Together, this means that ``component.getAdapter(super(Derived, self), ITarget)`` is now meaningful. See `issue 11 <https://github.com/zopefoundation/zope.interface/issues/11>`_. - Fix a potential interpreter crash in the low-level adapter registry lookup functions. See issue 11. - Adopt Python's standard `C3 resolution order <https://www.python.org/download/releases/2.3/mro/>`_ to compute the ``__iro__`` and ``__sro__`` of interfaces, with tweaks to support additional cases that are common in interfaces but disallowed for Python classes. Previously, an ad-hoc ordering that made no particular guarantees was used. This has many beneficial properties, including the fact that base interface and base classes tend to appear near the end of the resolution order instead of the beginning. The resolution order in general should be more predictable and consistent. .. caution:: In some cases, especially with complex interface inheritance trees or when manually providing or implementing interfaces, the resulting IRO may be quite different. This may affect adapter lookup. The C3 order enforces some constraints in order to be able to guarantee a sensible ordering. Older versions of zope.interface did not impose similar constraints, so it was possible to create interfaces and declarations that are inconsistent with the C3 constraints. In that event, zope.interface will still produce a resolution order equal to the old order, but it won't be guaranteed to be fully C3 compliant. In the future, strict enforcement of C3 order may be the default. A set of environment variables and module constants allows controlling several aspects of this new behaviour. It is possible to request warnings about inconsistent resolution orders encountered, and even to forbid them. Differences between the C3 resolution order and the previous order can be logged, and, in extreme cases, the previous order can still be used (this ability will be removed in the future). For details, see the documentation for ``zope.interface.ro``. - Make inherited tagged values in interfaces respect the resolution order (``__iro__``), as method and attribute lookup does. Previously tagged values could give inconsistent results. See `issue 190 <https://github.com/zopefoundation/zope.interface/issues/190>`_. - Add ``getDirectTaggedValue`` (and related methods) to interfaces to allow accessing tagged values irrespective of inheritance. See `issue 190 <https://github.com/zopefoundation/zope.interface/issues/190>`_. - Ensure that ``Interface`` is always the last item in the ``__iro__`` and ``__sro__``. This is usually the case, but if classes that do not implement any interfaces are part of a class inheritance hierarchy, ``Interface`` could be assigned too high a priority. See `issue 8 <https://github.com/zopefoundation/zope.interface/issues/8>`_. - Implement sorting, equality, and hashing in C for ``Interface`` objects. In micro benchmarks, this makes those operations 40% to 80% faster. This translates to a 20% speed up in querying adapters. Note that this changes certain implementation details. In particular, ``InterfaceClass`` now has a non-default metaclass, and it is enforced that ``__module__`` in instances of ``InterfaceClass`` is read-only. See `PR 183 <https://github.com/zopefoundation/zope.interface/pull/183>`_. ``` ### 4.7.2 ``` ================== - Remove deprecated use of setuptools features. See `issue 30 <https://github.com/zopefoundation/zope.interface/issues/30>`_. ``` ### 4.7.1 ``` ================== - Use Python 3 syntax in the documentation. See `issue 119 <https://github.com/zopefoundation/zope.interface/issues/119>`_. ``` ### 4.7.0 ``` ================== - Drop support for Python 3.4. - Change ``queryTaggedValue``, ``getTaggedValue``, ``getTaggedValueTags`` in interfaces. They now include inherited values by following ``__bases__``. See `PR 144 <https://github.com/zopefoundation/zope.interface/pull/144>`_. .. caution:: This may be a breaking change. - Add support for Python 3.8. ```Links
- PyPI: https://pypi.org/project/zope.interface - Changelog: https://pyup.io/changelogs/zope.interface/ - Repo: https://github.com/zopefoundation/zope.interfaceUpdate zope.proxy from 4.3.1 to 4.3.5.
Changelog
### 4.3.5 ``` ================== - Stop installing C header files on PyPy (which is what zope.proxy before 4.3.4 used to do), fixes `issue 39 <https://github.com/zopefoundation/zope.proxy/issues/39>`_. ``` ### 4.3.4 ``` ================== - Fix a compilation warning on Python 3.8. The slot ``tp_print`` changed to ``tp_vectorcall_offset`` in 3.8 and must not be set. Prior to 3.8, it was reserved and ignored in all Python 3 versions. See `issue 36 <https://github.com/zopefoundation/zope.proxy/issues/36>`_. - Remove deprecated use of setuptools features. See `issue 38 <https://github.com/zopefoundation/zope.proxy/issues/38>`_. ``` ### 4.3.3 ``` ================== - Add support for Python 3.8. - Drop support for Python 3.4. ``` ### 4.3.2 ``` ================== - Fix error handling in ``ProxyBase.__setattr__``: any the exception raised by ``PyString_AsString``/``PyUnicode_AsUTF8`` would be silently swallowed up and ignored. See `issue 31 <https://github.com/zopefoundation/zope.proxy/issues/31>`_. ```Links
- PyPI: https://pypi.org/project/zope.proxy - Changelog: https://pyup.io/changelogs/zope.proxy/ - Repo: http://github.com/zopefoundation/zope.proxyUpdate black from 19.3b0 to 19.10b0.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/black - Changelog: https://pyup.io/changelogs/black/ - Repo: https://github.com/psf/blackUpdate click from 7.0 to 7.1.1.
Changelog
### 7.1.1 ``` ------------- Released 2020-03-09 - Fix ``ClickException`` output going to stdout instead of stderr. :issue:`1495` ``` ### 7.1 ``` ----------- Released 2020-03-09 - Fix PyPI package name, "click" is lowercase again. - Fix link in ``unicode_literals`` error message. :pr:`1151` - Add support for colored output on UNIX Jupyter notebooks. :issue:`1185` - Operations that strip ANSI controls will strip the cursor hide/show sequences. :issue:`1216` - Remove unused compat shim for ``bytes``. :pr:`1195` - Expand testing around termui, especially getchar on Windows. :issue:`1116` - Fix output on Windows Python 2.7 built with MSVC 14. :pr:`1342` - Fix ``OSError`` when running in MSYS2. :issue:`1338` - Fix ``OSError`` when redirecting to ``NUL`` stream on Windows. :issue:`1065` - Fix memory leak when parsing Unicode arguments on Windows. :issue:`1136` - Fix error in new AppEngine environments. :issue:`1462` - Always return one of the passed choices for ``click.Choice`` :issue:`1277`, :pr:`1318` - Add ``no_args_is_help`` option to ``click.Command``, defaults to False :pr:`1167` - Add ``show_defaults`` parameter to ``Context`` to enable showing defaults globally. :issue:`1018` - Handle ``env MYPATH=''`` as though the option were not passed. :issue:`1196` - It is once again possible to call ``next(bar)`` on an active progress bar instance. :issue:`1125` - ``open_file`` with ``atomic=True`` retains permissions of existing files and respects the current umask for new files. :issue:`1376` - When using the test ``CliRunner`` with ``mix_stderr=False``, if ``result.stderr`` is empty it will not raise a ``ValueError``. :issue:`1193` - Remove the unused ``mix_stderr`` parameter from ``CliRunner.invoke``. :issue:`1435` - Fix ``TypeError`` raised when using bool flags and specifying ``type=bool``. :issue:`1287` - Newlines in option help text are replaced with spaces before re-wrapping to avoid uneven line breaks. :issue:`834` - ``MissingParameter`` exceptions are printable in the Python interpreter. :issue:`1139` - Fix how default values for file-type options are shown during prompts. :issue:`914` - Fix environment variable automatic generation for commands containing ``-``. :issue:`1253` - Option help text replaces newlines with spaces when rewrapping, but preserves paragraph breaks, fixing multiline formatting. :issue:`834, 1066, 1397` - Option help text that is wrapped adds an extra newline at the end to distinguish it from the next option. :issue:`1075` - Consider ``sensible-editor`` when determining the editor to use for ``click.edit()``. :pr:`1469` - Arguments to system calls such as the executable path passed to ``click.edit`` can contains spaces. :pr:`1470` - Add ZSH completion autoloading and error handling. :issue:`1348` - Add a repr to ``Command``, ``Group``, ``Option``, and ``Argument``, showing the name for friendlier debugging. :issue:`1267` - Completion doesn't consider option names if a value starts with ``-`` after the ``--`` separator. :issue:`1247` - ZSH completion escapes special characters in values. :pr:`1418` - Add completion support for Fish shell. :pr:`1423` - Decoding bytes option values falls back to UTF-8 in more cases. :pr:`1468` - Make the warning about old 2-arg parameter callbacks a deprecation warning, to be removed in 8.0. This has been a warning since Click 2.0. :pr:`1492` ```Links
- PyPI: https://pypi.org/project/click - Changelog: https://pyup.io/changelogs/click/ - Homepage: https://palletsprojects.com/p/click/Update flake8 from 3.7.7 to 3.7.9.
Changelog
### 3.7.8 ``` ------------------- You can view the `3.7.8 milestone`_ on GitLab for more details. Bugs Fixed ~~~~~~~~~~ - Fix handling of ``Application.parse_preliminary_options_and_args`` when argv is an empty list (See also `GitLab!310`_, `GitLab518`_) - Fix crash when a file parses but fails to tokenize (See also `GitLab!314`_, `GitLab532`_) - Log the full traceback on plugin exceptions (See also `GitLab!317`_) - Fix `` noqa: ...`` comments with multi-letter codes (See also `GitLab!326`_, `GitLab549`_) .. all links .. _3.7.8 milestone: https://gitlab.com/pycqa/flake8/milestones/31 .. issue links .. _GitLab518: https://gitlab.com/pycqa/flake8/issues/518 .. _GitLab532: https://gitlab.com/pycqa/flake8/issues/532 .. _GitLab549: https://gitlab.com/pycqa/flake8/issues/549 .. merge request links .. _GitLab!310: https://gitlab.com/pycqa/flake8/merge_requests/310 .. _GitLab!314: https://gitlab.com/pycqa/flake8/merge_requests/314 .. _GitLab!317: https://gitlab.com/pycqa/flake8/merge_requests/317 .. _GitLab!326: https://gitlab.com/pycqa/flake8/merge_requests/326 ```Links
- PyPI: https://pypi.org/project/flake8 - Changelog: https://pyup.io/changelogs/flake8/ - Repo: https://gitlab.com/pycqa/flake8Update mypy from 0.701 to 0.770.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/mypy - Homepage: http://www.mypy-lang.org/Update mypy-extensions from 0.4.1 to 0.4.3.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/mypy-extensions - Repo: https://github.com/python/mypy_extensionsUpdate typed-ast from 1.3.5 to 1.4.1.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/typed-ast - Repo: https://github.com/python/typed_ast