Changelog
### 3.8.1
```
==================
Bugfixes
--------
- Fix the error in handling the return value of `getaddrinfo`.
`getaddrinfo` will return an `(int, bytes)` tuple, if CPython could not handle the address family.
It will cause an index out of range error in aiohttp. For example, if user compile CPython with
`--disable-ipv6` option, but his system enable the ipv6.
`5901 <https://github.com/aio-libs/aiohttp/issues/5901>`_
- Do not install "examples" as a top-level package.
`6189 <https://github.com/aio-libs/aiohttp/issues/6189>`_
- Restored ability to connect IPv6-only host.
`6195 <https://github.com/aio-libs/aiohttp/issues/6195>`_
- Remove ``Signal`` from ``__all__``, replace ``aiohttp.Signal`` with ``aiosignal.Signal`` in docs
`6201 <https://github.com/aio-libs/aiohttp/issues/6201>`_
- Made chunked encoding HTTP header check stricter.
`6305 <https://github.com/aio-libs/aiohttp/issues/6305>`_
Improved Documentation
----------------------
- update quick starter demo codes.
`6240 <https://github.com/aio-libs/aiohttp/issues/6240>`_
- Added an explanation of how tiny timeouts affect performance to the client reference document.
`6274 <https://github.com/aio-libs/aiohttp/issues/6274>`_
- Add flake8-docstrings to flake8 configuration, enable subset of checks.
`6276 <https://github.com/aio-libs/aiohttp/issues/6276>`_
- Added information on running complex applications with additional tasks/processes -- :user:`Dreamsorcerer`.
`6278 <https://github.com/aio-libs/aiohttp/issues/6278>`_
Misc
----
- `6205 <https://github.com/aio-libs/aiohttp/issues/6205>`_
----
```
### 3.8.0
```
==================
Features
--------
- Added a ``GunicornWebWorker`` feature for extending the aiohttp server configuration by allowing the 'wsgi' coroutine to return ``web.AppRunner`` object.
`2988 <https://github.com/aio-libs/aiohttp/issues/2988>`_
- Switch from ``http-parser`` to ``llhttp``
`3561 <https://github.com/aio-libs/aiohttp/issues/3561>`_
- Use Brotli instead of brotlipy
`3803 <https://github.com/aio-libs/aiohttp/issues/3803>`_
- Disable implicit switch-back to pure python mode. The build fails loudly if aiohttp
cannot be compiled with C Accelerators. Use AIOHTTP_NO_EXTENSIONS=1 to explicitly
disable C Extensions complication and switch to Pure-Python mode. Note that Pure-Python
mode is significantly slower than compiled one.
`3828 <https://github.com/aio-libs/aiohttp/issues/3828>`_
- Make access log use local time with timezone
`3853 <https://github.com/aio-libs/aiohttp/issues/3853>`_
- Implemented ``readuntil`` in ``StreamResponse``
`4054 <https://github.com/aio-libs/aiohttp/issues/4054>`_
- FileResponse now supports ETag.
`4594 <https://github.com/aio-libs/aiohttp/issues/4594>`_
- Add a request handler type alias ``aiohttp.typedefs.Handler``.
`4686 <https://github.com/aio-libs/aiohttp/issues/4686>`_
- ``AioHTTPTestCase`` is more async friendly now.
For people who use unittest and are used to use :py:exc:`~unittest.TestCase`
it will be easier to write new test cases like the sync version of the :py:exc:`~unittest.TestCase` class,
without using the decorator `unittest_run_loop`, just `async def test_*`.
The only difference is that for the people using python3.7 and below a new dependency is needed, it is ``asynctestcase``.
`4700 <https://github.com/aio-libs/aiohttp/issues/4700>`_
- Add validation of HTTP header keys and values to prevent header injection.
`4818 <https://github.com/aio-libs/aiohttp/issues/4818>`_
- Add predicate to ``AbstractCookieJar.clear``.
Add ``AbstractCookieJar.clear_domain`` to clean all domain and subdomains cookies only.
`4942 <https://github.com/aio-libs/aiohttp/issues/4942>`_
- Add keepalive_timeout parameter to web.run_app.
`5094 <https://github.com/aio-libs/aiohttp/issues/5094>`_
- Tracing for client sent headers
`5105 <https://github.com/aio-libs/aiohttp/issues/5105>`_
- Make type hints for http parser stricter
`5267 <https://github.com/aio-libs/aiohttp/issues/5267>`_
- Add final declarations for constants.
`5275 <https://github.com/aio-libs/aiohttp/issues/5275>`_
- Switch to external frozenlist and aiosignal libraries.
`5293 <https://github.com/aio-libs/aiohttp/issues/5293>`_
- Don't send secure cookies by insecure transports.
By default, the transport is secure if https or wss scheme is used.
Use `CookieJar(treat_as_secure_origin="http://127.0.0.1")` to override the default security checker.
`5571 <https://github.com/aio-libs/aiohttp/issues/5571>`_
- Always create a new event loop in ``aiohttp.web.run_app()``.
This adds better compatibility with ``asyncio.run()`` or if trying to run multiple apps in sequence.
`5572 <https://github.com/aio-libs/aiohttp/issues/5572>`_
- Add ``aiohttp.pytest_plugin.AiohttpClient`` for static typing of pytest plugin.
`5585 <https://github.com/aio-libs/aiohttp/issues/5585>`_
- Added a ``socket_factory`` argument to ``BaseTestServer``.
`5844 <https://github.com/aio-libs/aiohttp/issues/5844>`_
- Add compression strategy parameter to enable_compression method.
`5909 <https://github.com/aio-libs/aiohttp/issues/5909>`_
- Added support for Python 3.10 to Github Actions CI/CD workflows and fix the related deprecation warnings -- :user:`Hanaasagi`.
`5927 <https://github.com/aio-libs/aiohttp/issues/5927>`_
- Switched ``chardet`` to ``charset-normalizer`` for guessing the HTTP payload body encoding -- :user:`Ousret`.
`5930 <https://github.com/aio-libs/aiohttp/issues/5930>`_
- Added optional auto_decompress argument for HttpRequestParser
`5957 <https://github.com/aio-libs/aiohttp/issues/5957>`_
- Added support for HTTPS proxies to the extent CPython's
:py:mod:`asyncio` supports it -- by :user:`bmbouter`,
:user:`jborean93` and :user:`webknjaz`.
`5992 <https://github.com/aio-libs/aiohttp/issues/5992>`_
- Added ``base_url`` parameter to the initializer of :class:`~aiohttp.ClientSession`.
`6013 <https://github.com/aio-libs/aiohttp/issues/6013>`_
- Add Trove classifier and create binary wheels for 3.10. -- :user:`hugovk`.
`6079 <https://github.com/aio-libs/aiohttp/issues/6079>`_
- Started shipping platform-specific wheels with the ``musl`` tag targeting typical Alpine Linux runtimes — :user:`asvetlov`.
`6139 <https://github.com/aio-libs/aiohttp/issues/6139>`_
- Started shipping platform-specific arm64 wheels for Apple Silicon — :user:`asvetlov`.
`6139 <https://github.com/aio-libs/aiohttp/issues/6139>`_
Bugfixes
--------
- Modify _drain_helper() to handle concurrent `await resp.write(...)` or `ws.send_json(...)` calls without race-condition.
`2934 <https://github.com/aio-libs/aiohttp/issues/2934>`_
- Started using `MultiLoopChildWatcher` when it's available under POSIX while setting up the test I/O loop.
`3450 <https://github.com/aio-libs/aiohttp/issues/3450>`_
- Only encode content-disposition filename parameter using percent-encoding.
Other parameters are encoded to quoted-string or RFC2231 extended parameter
value.
`4012 <https://github.com/aio-libs/aiohttp/issues/4012>`_
- Fixed HTTP client requests to honor ``no_proxy`` environment variables.
`4431 <https://github.com/aio-libs/aiohttp/issues/4431>`_
- Fix supporting WebSockets proxies configured via environment variables.
`4648 <https://github.com/aio-libs/aiohttp/issues/4648>`_
- Change return type on URLDispatcher to UrlMappingMatchInfo to improve type annotations.
`4748 <https://github.com/aio-libs/aiohttp/issues/4748>`_
- Ensure a cleanup context is cleaned up even when an exception occurs during startup.
`4799 <https://github.com/aio-libs/aiohttp/issues/4799>`_
- Added a new exception type for Unix socket client errors which provides a more useful error message.
`4984 <https://github.com/aio-libs/aiohttp/issues/4984>`_
- Remove Transfer-Encoding and Content-Type headers for 204 in StreamResponse
`5106 <https://github.com/aio-libs/aiohttp/issues/5106>`_
- Only depend on typing_extensions for Python <3.8
`5107 <https://github.com/aio-libs/aiohttp/issues/5107>`_
- Add ABNORMAL_CLOSURE and BAD_GATEWAY to WSCloseCode
`5192 <https://github.com/aio-libs/aiohttp/issues/5192>`_
- Fix cookies disappearing from HTTPExceptions.
`5233 <https://github.com/aio-libs/aiohttp/issues/5233>`_
- StaticResource prefixes no longer match URLs with a non-folder prefix. For example ``routes.static('/foo', '/foo')`` no longer matches the URL ``/foobar``. Previously, this would attempt to load the file ``/foo/ar``.
`5250 <https://github.com/aio-libs/aiohttp/issues/5250>`_
- Acquire the connection before running traces to prevent race condition.
`5259 <https://github.com/aio-libs/aiohttp/issues/5259>`_
- Add missing slots to _RequestContextManager`` and ``_WSRequestContextManager``
`5329 <https://github.com/aio-libs/aiohttp/issues/5329>`_
- Ensure sending a zero byte file does not throw an exception (round 2)
`5380 <https://github.com/aio-libs/aiohttp/issues/5380>`_
- Set "text/plain" when data is an empty string in client requests.
`5392 <https://github.com/aio-libs/aiohttp/issues/5392>`_
- Stop automatically releasing the ``ClientResponse`` object on calls to the ``ok`` property for the failed requests.
`5403 <https://github.com/aio-libs/aiohttp/issues/5403>`_
- Include query parameters from `params` keyword argument in tracing `URL`.
`5432 <https://github.com/aio-libs/aiohttp/issues/5432>`_
- Fix annotations
`5466 <https://github.com/aio-libs/aiohttp/issues/5466>`_
- Fixed the multipart POST requests processing to always release file
descriptors for the ``tempfile.Temporaryfile``-created
``_io.BufferedRandom`` instances of files sent within multipart request
bodies via HTTP POST requests -- by :user:`webknjaz`.
`5494 <https://github.com/aio-libs/aiohttp/issues/5494>`_
- Fix 0 being incorrectly treated as an immediate timeout.
`5527 <https://github.com/aio-libs/aiohttp/issues/5527>`_
- Fixes failing tests when an environment variable <scheme>_proxy is set.
`5554 <https://github.com/aio-libs/aiohttp/issues/5554>`_
- Replace deprecated app handler design in ``tests/autobahn/server.py`` with call to ``web.run_app``; replace deprecated ``aiohttp.ws_connect`` calls in ``tests/autobahn/client.py`` with ``aiohttp.ClienSession.ws_connect``.
`5606 <https://github.com/aio-libs/aiohttp/issues/5606>`_
- Fixed test for ``HTTPUnauthorized`` that access the ``text`` argument. This is not used in any part of the code, so it's removed now.
`5657 <https://github.com/aio-libs/aiohttp/issues/5657>`_
- Remove incorrect default from docs
`5727 <https://github.com/aio-libs/aiohttp/issues/5727>`_
- Remove external test dependency to http://httpbin.org
`5840 <https://github.com/aio-libs/aiohttp/issues/5840>`_
- Don't cancel current task when entering a cancelled timer.
`5853 <https://github.com/aio-libs/aiohttp/issues/5853>`_
- Added ``params`` keyword argument to ``ClientSession.ws_connect``. -- :user:`hoh`.
`5868 <https://github.com/aio-libs/aiohttp/issues/5868>`_
- Uses :py:class:`~asyncio.ThreadedChildWatcher` under POSIX to allow setting up test loop in non-main thread.
`5877 <https://github.com/aio-libs/aiohttp/issues/5877>`_
- Fix the error in handling the return value of `getaddrinfo`.
`getaddrinfo` will return an `(int, bytes)` tuple, if CPython could not handle the address family.
It will cause a index out of range error in aiohttp. For example, if user compile CPython with
`--disable-ipv6` option but his system enable the ipv6.
`5901 <https://github.com/aio-libs/aiohttp/issues/5901>`_
- Removed the deprecated ``loop`` argument from the ``asyncio.sleep``/``gather`` calls
`5905 <https://github.com/aio-libs/aiohttp/issues/5905>`_
- Return ``None`` from ``request.if_modified_since``, ``request.if_unmodified_since``, ``request.if_range`` and ``response.last_modified`` when corresponding http date headers are invalid.
`5925 <https://github.com/aio-libs/aiohttp/issues/5925>`_
- Fix resetting `SIGCHLD` signals in Gunicorn aiohttp Worker to fix `subprocesses` that capture output having an incorrect `returncode`.
`6130 <https://github.com/aio-libs/aiohttp/issues/6130>`_
- Raise ``400: Content-Length can't be present with Transfer-Encoding`` if both ``Content-Length`` and ``Transfer-Encoding`` are sent by peer by both C and Python implementations
`6182 <https://github.com/aio-libs/aiohttp/issues/6182>`_
Improved Documentation
----------------------
- Refactored OpenAPI/Swagger aiohttp addons, added ``aio-openapi``
`5326 <https://github.com/aio-libs/aiohttp/issues/5326>`_
- Fixed docs on request cookies type, so it matches what is actually used in the code (a
read-only dictionary-like object).
`5725 <https://github.com/aio-libs/aiohttp/issues/5725>`_
- Documented that the HTTP client ``Authorization`` header is removed
on redirects to a different host or protocol.
`5850 <https://github.com/aio-libs/aiohttp/issues/5850>`_
Misc
----
- `3927 <https://github.com/aio-libs/aiohttp/issues/3927>`_, `#4247 <https://github.com/aio-libs/aiohttp/issues/4247>`_, `#4247 <https://github.com/aio-libs/aiohttp/issues/4247>`_, `#5389 <https://github.com/aio-libs/aiohttp/issues/5389>`_, `#5457 <https://github.com/aio-libs/aiohttp/issues/5457>`_, `#5486 <https://github.com/aio-libs/aiohttp/issues/5486>`_, `#5494 <https://github.com/aio-libs/aiohttp/issues/5494>`_, `#5515 <https://github.com/aio-libs/aiohttp/issues/5515>`_, `#5625 <https://github.com/aio-libs/aiohttp/issues/5625>`_, `#5635 <https://github.com/aio-libs/aiohttp/issues/5635>`_, `#5648 <https://github.com/aio-libs/aiohttp/issues/5648>`_, `#5657 <https://github.com/aio-libs/aiohttp/issues/5657>`_, `#5890 <https://github.com/aio-libs/aiohttp/issues/5890>`_, `#5914 <https://github.com/aio-libs/aiohttp/issues/5914>`_, `#5932 <https://github.com/aio-libs/aiohttp/issues/5932>`_, `#6002 <https://github.com/aio-libs/aiohttp/issues/6002>`_, `#6045 <https://github.com/aio-libs/aiohttp/issues/6045>`_, `#6131 <https://github.com/aio-libs/aiohttp/issues/6131>`_, `#6156 <https://github.com/aio-libs/aiohttp/issues/6156>`_, `#6165 <https://github.com/aio-libs/aiohttp/issues/6165>`_, `#6166 <https://github.com/aio-libs/aiohttp/issues/6166>`_
----
```
### 3.7.4.post0
```
========================
Misc
----
- Bumped upper bound of the ``chardet`` runtime dependency
to allow their v4.0 version stream.
`5366 <https://github.com/aio-libs/aiohttp/issues/5366>`_
----
```
Links
- PyPI: https://pypi.org/project/aiohttp
- Changelog: https://pyup.io/changelogs/aiohttp/
- Repo: https://github.com/aio-libs/aiohttp
Changelog
### 2.1.0
```
PRs in this release:
- Add auto deployment to pypi (612) from drew887
- Adds a 'side' param to Rest::list_orders (610) from drew887
- Add issue template for general SDK questions (608) from drew887
- Update issue templates (606) from drew887
- Adds stream crypto orderbook (597) from ccnlui
```
### 2.0.0
```
:warning: Note this release is a **Breaking Change** due to the removal of Market Data V1 capabilities
- Adds a param to the stream classes to allow overriding of websocket defaults (596)
- Scheduled weekly dependency update for week 12 (592)
- Increase ping timeout (591)
- Send subscription requests in parts (586)
- Remove marketdata v1 functions (590)
- Updating overnight-hold to use the new data api (async get bars) (562)
- Add Week and Month timeframe units (583)
- Multi symbol support for the latest crypto endpoints (580)
You can view this release on [PyPi here](https://pypi.org/project/alpaca-trade-api/2.0.0/)
```
Links
- PyPI: https://pypi.org/project/alpaca-trade-api
- Changelog: https://pyup.io/changelogs/alpaca-trade-api/
- Repo: https://github.com/alpacahq/alpaca-trade-api-python
Changelog
### 2.11.5
```
=============================
Release date: 2022-05-09
* Fix crash while obtaining ``object_type()`` of an ``Unknown`` node.
Refs PyCQA/pylint6539
* Fix a bug where in attempting to handle the patching of ``distutils`` by ``virtualenv``,
library submodules called ``distutils`` (e.g. ``numpy.distutils``) were included also.
Refs PyCQA/pylint6497
```
### 2.11.4
```
=============================
Release date: 2022-05-02
* Fix ``col_offset`` attribute for nodes involving ``with`` on ``PyPy``.
* Fixed a crash involving two starred expressions: one inside a comprehension,
both inside a call.
Refs PyCQA/pylint6372
* Made ``FunctionDef.implicit_parameters`` return 1 for methods by making
``FunctionDef.is_bound`` return ``True``, as it does for class methods.
Closes PyCQA/pylint6464
* Fixed a crash when ``_filter_stmts`` encounters an ``EmptyNode``.
Closes PyCQA/pylint6438
```
### 2.11.3
```
=============================
Release date: 2022-04-19
* Fixed an error in the Qt brain when building ``instance_attrs``.
Closes PyCQA/pylint6221
* Fixed a crash in the ``gi`` brain.
Closes PyCQA/pylint6371
```
### 2.11.2
```
=============================
Release date: 2022-03-26
* Avoided adding the name of a parent namedtuple to its child's locals.
Refs PyCQA/pylint5982
```
### 2.11.1
```
=============================
Release date: 2022-03-22
* Promoted ``getattr()`` from ``astroid.scoped_nodes.FunctionDef`` to its parent
``astroid.scoped_nodes.Lambda``.
* Fixed crash on direct inference via ``nodes.FunctionDef._infer``.
Closes 817
```
### 2.11.0
```
=============================
Release date: 2022-03-12
* Add new (optional) ``doc_node`` attribute to ``nodes.Module``, ``nodes.ClassDef``,
and ``nodes.FunctionDef``.
* Accessing the ``doc`` attribute of ``nodes.Module``, ``nodes.ClassDef``, and
``nodes.FunctionDef`` has been deprecated in favour of the ``doc_node`` attribute.
Note: ``doc_node`` is an (optional) ``nodes.Const`` whereas ``doc`` was an (optional) ``str``.
* Passing the ``doc`` argument to the ``__init__`` of ``nodes.Module``, ``nodes.ClassDef``,
and ``nodes.FunctionDef`` has been deprecated in favour of the ``postinit`` ``doc_node`` attribute.
Note: ``doc_node`` is an (optional) ``nodes.Const`` whereas ``doc`` was an (optional) ``str``.
* Replace custom ``cachedproperty`` with ``functools.cached_property`` and deprecate it
for Python 3.8+.
Closes 1410
* Set ``end_lineno`` and ``end_col_offset`` attributes to ``None`` for all nodes
with PyPy 3.8. PyPy 3.8 assigns these attributes inconsistently which could lead
to unexpected errors. Overwriting them with ``None`` will cause a fallback
to the already supported way of PyPy 3.7.
* Add missing ``shape`` parameter to numpy ``zeros_like``, ``ones_like``,
and ``full_like`` methods.
Closes PyCQA/pylint5871
* Only pin ``wrapt`` on the major version.
```
### 2.10.0
```
=============================
Release date: 2022-02-27
* Fixed inference of ``self`` in binary operations in which ``self``
is part of a list or tuple.
Closes PyCQA/pylint4826
* Fixed builtin inference on `property` calls not calling the `postinit` of the new node, which
resulted in instance arguments missing on these nodes.
* Fixed a crash on ``Super.getattr`` when the attribute was previously uninferable due to a cache
limit size. This limit can be hit when the inheritance pattern of a class (and therefore of the
``__init__`` attribute) is very large.
Closes PyCQA/pylint5679
* Inlcude names of keyword-only arguments in ``astroid.scoped_nodes.Lambda.argnames``.
Closes PyCQA/pylint5771
* Fixed a crash inferring on a ``NewType`` named with an f-string.
Closes PyCQA/pylint5770
* Add support for [attrs v21.3.0](https://github.com/python-attrs/attrs/releases/tag/21.3.0) which
added a new `attrs` module alongside the existing `attr`.
Closes 1330
* Use the ``end_lineno`` attribute for the ``NodeNG.tolineno`` property
when it is available.
Closes 1350
* Add ``is_dataclass`` attribute to ``ClassDef`` nodes.
* Use ``sysconfig`` instead of ``distutils`` to determine the location of
python stdlib files and packages.
Related pull requests: 1322, 1323, 1324
Closes 1282
Ref 1103
* Fixed crash with recursion error for inference of class attributes that referenced
the class itself.
Closes PyCQA/pylint5408
* Fixed crash when trying to infer ``items()`` on the ``__dict__``
attribute of an imported module.
Closes 1085
* Add optional ``NodeNG.position`` attribute.
Used for block nodes to highlight position of keyword(s) and name
in cases where the AST doesn't provide good enough positional information.
E.g. ``nodes.ClassDef``, ``nodes.FunctionDef``.
* Fix ``ClassDef.fromlineno``. For Python < 3.8 the ``lineno`` attribute includes decorators.
``fromlineno`` should return the line of the ``class`` statement itself.
* Performance improvements. Only run expensive decorator functions when
non-default Deprecation warnings are enabled, eg. during a Pytest run.
Closes 1383
```
Links
- PyPI: https://pypi.org/project/astroid
- Changelog: https://pyup.io/changelogs/astroid/
- Repo: https://github.com/PyCQA/astroid
Changelog
### 4.0.2
```
==================
Misc
----
- `259 <https://github.com/aio-libs/async-timeout/issues/259>`_, `#274 <https://github.com/aio-libs/async-timeout/issues/274>`_
```
### 4.0.1
```
==================
- Fix regression:
1. Don't raise TimeoutError from timeout object that doesn't enter into async context
manager
2. Use call_soon() for raising TimeoutError if deadline is reached on entering into
async context manager
(258)
- Make ``Timeout`` class available in ``__all__``.
```
### 4.0.0
```
==================
* Implemented ``timeout_at(deadline)`` (117)
* Supported ``timeout.deadline`` and ``timeout.expired`` properties.
* Dropped ``timeout.remaining`` property: it can be calculated as
``timeout.deadline - loop.time()``
* Dropped ``timeout.timeout`` property that returns a relative timeout based on the
timeout object creation time; the absolute ``timeout.deadline`` should be used
instead.
* Added the deadline modification methods: ``timeout.reject()``,
``timeout.shift(delay)``, ``timeout.update(deadline)``.
* Deprecated synchronous context manager usage
```
Links
- PyPI: https://pypi.org/project/async-timeout
- Changelog: https://pyup.io/changelogs/async-timeout/
- Repo: https://github.com/aio-libs/async-timeout
Changelog
### 2.10.1
```
--------------
This is a bugfix release for Babel 2.10.0.
* Messages: Fix ``distutils`` import. Regressed in :gh:`843`. (:gh:`852`) - Nehal J Wani
* The wheel file is no longer marked as universal, since Babel only supports Python 3.
```
### 2.10.0
```
--------------
Upcoming deprecation
~~~~~~~~~~~~~~~~~~~~
* The ``get_next_timezone_transition()`` function is marked deprecated in this version and will be removed
likely as soon as Babel 2.11. No replacement for this function is planned; based on discussion in
:gh:`716`, it's likely the function is not used in any real code. (:gh:`852`) - Aarni Koskela, Paul Ganssle
Improvements
~~~~~~~~~~~~
* CLDR: Upgrade to CLDR 41.0. (:gh:`853`) - Aarni Koskela
* The ``c`` and ``e`` plural form operands introduced in CLDR 40 are parsed, but otherwise unsupported. (:gh:`826`)
* Non-nominative forms of units are currently ignored.
* Messages: Implement ``--init-missing`` option for ``pybabel update`` (:gh:`785`) - ruro
* Messages: For ``extract``, you can now replace the built-in ``.*`` / ``_*`` ignored directory patterns
with ones of your own. (:gh:`832`) - Aarni Koskela, Kinshuk Dua
* Messages: Add ``--check`` to verify if catalogs are up-to-date (:gh:`831`) - Krzysztof Jagiełło
* Messages: Add ``--header-comment`` to override default header comment (:gh:`720`) - Mohamed Hafez Morsy, Aarni Koskela
* Dates: ``parse_time`` now supports 12-hour clock, and is better at parsing partial times.
(:gh:`834`) - Aarni Koskela, David Bauer, Arthur Jovart
* Dates: ``parse_date`` and ``parse_time`` now raise ``ParseError``, a subclass of ``ValueError``, in certain cases.
(:gh:`834`) - Aarni Koskela
* Dates: ``parse_date`` and ``parse_time`` now accept the ``format`` parameter.
(:gh:`834`) - Juliette Monsel, Aarni Koskela
Infrastructure
~~~~~~~~~~~~~~
* The internal ``babel/_compat.py`` module is no more (:gh:`808`) - Hugo van Kemenade
* Python 3.10 is officially supported (:gh:`809`) - Hugo van Kemenade
* There's now a friendly GitHub issue template. (:gh:`800`) – Álvaro Mondéjar Rubio
* Don't use the deprecated format_number function internally or in tests - Aarni Koskela
* Add GitHub URL for PyPi (:gh:`846`) - Andrii Oriekhov
* Python 3.12 compatibility: Prefer setuptools imports to distutils imports (:gh:`843`) - Aarni Koskela
* Python 3.11 compatibility: Add deprecations to l*gettext variants (:gh:`835`) - Aarni Koskela
* CI: Babel is now tested with PyPy 3.7. (:gh:`851`) - Aarni Koskela
Bugfixes
~~~~~~~~
* Date formatting: Allow using ``other`` as fallback form (:gh:`827`) - Aarni Koskela
* Locales: ``Locale.parse()`` normalizes variant tags to upper case (:gh:`829`) - Aarni Koskela
* A typo in the plural format for Maltese is fixed. (:gh:`796`) - Lukas Winkler
* Messages: Catalog date parsing is now timezone independent. (:gh:`701`) - rachele-collin
* Messages: Fix duplicate locations when writing without lineno (:gh:`837`) - Sigurd Ljødal
* Messages: Fix missing trailing semicolon in plural form headers (:gh:`848`) - farhan5900
* CLI: Fix output of ``--list-locales`` to not be a bytes repr (:gh:`845`) - Morgan Wahl
Documentation
~~~~~~~~~~~~~
* Documentation is now correctly built again, and up to date (:gh:`830`) - Aarni Koskela
```
Links
- PyPI: https://pypi.org/project/babel
- Changelog: https://pyup.io/changelogs/babel/
- Homepage: https://babel.pocoo.org/
- Docs: https://pythonhosted.org/Babel/
Changelog
### 22.3.0
```
Preview style
- Code cell separators `%%` are now standardised to ` %%` (2919)
- Remove unnecessary parentheses from `except` statements (2939)
- Remove unnecessary parentheses from tuple unpacking in `for` loops (2945)
- Avoid magic-trailing-comma in single-element subscripts (2942)
Configuration
- Do not format `__pypackages__` directories by default (2836)
- Add support for specifying stable version with `--required-version` (2832).
- Avoid crashing when the user has no homedir (2814)
- Avoid crashing when md5 is not available (2905)
- Fix handling of directory junctions on Windows (2904)
Documentation
- Update pylint config documentation (2931)
Integrations
- Move test to disable plugin in Vim/Neovim, which speeds up loading (2896)
Output
- In verbose, mode, log when _Black_ is using user-level config (2861)
Packaging
- Fix Black to work with Click 8.1.0 (2966)
- On Python 3.11 and newer, use the standard library's `tomllib` instead of `tomli`
(2903)
- `black-primer`, the deprecated internal devtool, has been removed and copied to a
[separate repository](https://github.com/cooperlees/black-primer) (#2924)
Parser
- Black can now parse starred expressions in the target of `for` and `async for`
statements, e.g `for item in *items_1, *items_2: pass` (2879).
```
Links
- PyPI: https://pypi.org/project/black
- Changelog: https://pyup.io/changelogs/black/
- Repo: https://github.com/psf/black
Changelog
### 5.0.0
```
-------------------------------
**Backwards incompatible changes**
* ``clean`` and ``linkify`` now preserve the order of HTML attributes. Thank
you, askoretskly! (566)
* Drop support for Python 3.6. Thank you, hugovk! (629)
* CSS sanitization in style tags is completely different now. If you're using
Bleach ``clean`` to sanitize css in style tags, you'll need to update your
code and you'll need to install the ``css`` extras::
pip install 'bleach[css]'
See `the documentation on sanitizing CSS for how to do it
<https://bleach.readthedocs.io/en/latest/clean.html#sanitizing-css>`_. (633)
**Bug fixes**
* Rework dev dependencies. We no longer have
``requirements-dev.in``/``requirements-dev.txt``. Instead, we're using
``dev`` extras.
See `development docs <https://bleach.readthedocs.io/en/latest/dev.html>`_
for more details. (620)
* Add newline when dropping block-level tags. Thank you, jvanasco! (369)
```
Links
- PyPI: https://pypi.org/project/bleach
- Changelog: https://pyup.io/changelogs/bleach/
- Repo: https://github.com/mozilla/bleach
- Docs: https://pythonhosted.org/bleach/
Changelog
### 5.0.0
```
===================
- Require Python 3.7 or later (breaking change).
- Remove deprecated submodules (breaking change).
The ``cache``, ``fifo``, ``lfu``, ``lru``, ``mru``, ``rr`` and
``ttl`` submodules have been deleted. Therefore, statements like
``from cachetools.ttl import TTLCache``
will no longer work. Use
``from cachetools import TTLCache``
instead.
- Pass ``self`` to ``cachedmethod`` key function (breaking change).
The ``key`` function passed to the ``cachedmethod`` decorator is
now called as ``key(self, *args, **kwargs)``.
The default key function has been changed to ignore its first
argument, so this should only affect applications using custom key
functions with the ``cachedmethod`` decorator.
- Change exact time of expiration in ``TTLCache`` (breaking change).
``TTLCache`` items now get expired if their expiration time is less
than *or equal to* ``timer()``. For applications using the default
``timer()``, this should be barely noticable, but it may affect the
use of custom timers with larger tick intervals. Note that this
also implies that a ``TTLCache`` with ``ttl=0`` can no longer hold
any items, since they will expire immediately.
- Change ``Cache.__repr__()`` format (breaking change).
String representations of cache instances now use a more compact and
efficient format, e.g.
``LRUCache({1: 1, 2: 2}, maxsize=10, currsize=2)``
- Add TLRU cache implementation.
- Documentation improvements.
```
Links
- PyPI: https://pypi.org/project/cachetools
- Changelog: https://pyup.io/changelogs/cachetools/
- Repo: https://github.com/tkem/cachetools/
Changelog
### 8.1.3
```
-------------
Released 2022-04-28
- Use verbose form of ``typing.Callable`` for ``command`` and
``group``. :issue:`2255`
- Show error when attempting to create an option with
``multiple=True, is_flag=True``. Use ``count`` instead.
:issue:`2246`
```
### 8.1.2
```
-------------
Released 2022-03-31
- Fix error message for readable path check that was mixed up with the
executable check. :pr:`2236`
- Restore parameter order for ``Path``, placing the ``executable``
parameter at the end. It is recommended to use keyword arguments
instead of positional arguments. :issue:`2235`
```
### 8.1.1
```
-------------
Released 2022-03-30
- Fix an issue with decorator typing that caused type checking to
report that a command was not callable. :issue:`2227`
```
### 8.1.0
```
-------------
Released 2022-03-28
- Drop support for Python 3.6. :pr:`2129`
- Remove previously deprecated code. :pr:`2130`
- ``Group.resultcallback`` is renamed to ``result_callback``.
- ``autocompletion`` parameter to ``Command`` is renamed to
``shell_complete``.
- ``get_terminal_size`` is removed, use
``shutil.get_terminal_size`` instead.
- ``get_os_args`` is removed, use ``sys.argv[1:]`` instead.
- Rely on :pep:`538` and :pep:`540` to handle selecting UTF-8 encoding
instead of ASCII. Click's locale encoding detection is removed.
:issue:`2198`
- Single options boolean flags with ``show_default=True`` only show
the default if it is ``True``. :issue:`1971`
- The ``command`` and ``group`` decorators can be applied with or
without parentheses. :issue:`1359`
- The ``Path`` type can check whether the target is executable.
:issue:`1961`
- ``Command.show_default`` overrides ``Context.show_default``, instead
of the other way around. :issue:`1963`
- Parameter decorators and ``group`` handles ``cls=None`` the same as
not passing ``cls``. ``option`` handles ``help=None`` the same as
not passing ``help``. :issue:`1959`
- A flag option with ``required=True`` requires that the flag is
passed instead of choosing the implicit default value. :issue:`1978`
- Indentation in help text passed to ``Option`` and ``Command`` is
cleaned the same as using the ``option`` and ``command``
decorators does. A command's ``epilog`` and ``short_help`` are also
processed. :issue:`1985`
- Store unprocessed ``Command.help``, ``epilog`` and ``short_help``
strings. Processing is only done when formatting help text for
output. :issue:`2149`
- Allow empty str input for ``prompt()`` when
``confirmation_prompt=True`` and ``default=""``. :issue:`2157`
- Windows glob pattern expansion doesn't fail if a value is an invalid
pattern. :issue:`2195`
- It's possible to pass a list of ``params`` to ``command``. Any
params defined with decorators are appended to the passed params.
:issue:`2131`.
- ``command`` decorator is annotated as returning the correct type if
a ``cls`` argument is used. :issue:`2211`
- A ``Group`` with ``invoke_without_command=True`` and ``chain=False``
will invoke its result callback with the group function's return
value. :issue:`2124`
- ``to_info_dict`` will not fail if a ``ParamType`` doesn't define a
``name``. :issue:`2168`
- Shell completion prioritizes option values with option prefixes over
new options. :issue:`2040`
- Options that get an environment variable value using
``autoenvvar_prefix`` treat an empty value as ``None``, consistent
with a direct ``envvar``. :issue:`2146`
```
### 8.0.4
```
-------------
Released 2022-02-18
- ``open_file`` recognizes ``Path("-")`` as a standard stream, the
same as the string ``"-"``. :issue:`2106`
- The ``option`` and ``argument`` decorators preserve the type
annotation of the decorated function. :pr:`2155`
- A callable default value can customize its help text by overriding
``__str__`` instead of always showing ``(dynamic)``. :issue:`2099`
- Fix a typo in the Bash completion script that affected file and
directory completion. If this script was generated by a previous
version, it should be regenerated. :issue:`2163`
- Fix typing for ``echo`` and ``secho`` file argument.
:issue:`2174, 2185`
```
Links
- PyPI: https://pypi.org/project/click
- Changelog: https://pyup.io/changelogs/click/
- Homepage: https://palletsprojects.com/p/click/
Changelog
### 6.3.2
```
--------------------------
- Fix: adapt to pypy3.9's decorator tracing behavior. It now traces function
decorators like CPython 3.8: both the -line and the def-line are traced.
Fixes `issue 1326`_.
- Debug: added ``pybehave`` to the list of :ref:`cmd_debug` and
:ref:`cmd_run_debug` options.
- Fix: show an intelligible error message if ``--concurrency=multiprocessing``
is used without a configuration file. Closes `issue 1320`_.
.. _issue 1320: https://github.com/nedbat/coveragepy/issues/1320
.. _issue 1326: https://github.com/nedbat/coveragepy/issues/1326
.. _changes_631:
```
Links
- PyPI: https://pypi.org/project/coverage
- Changelog: https://pyup.io/changelogs/coverage/
- Repo: https://github.com/nedbat/coveragepy
Changelog
### 0.18.1
```
==============
.. Note::
Docutils 0.18.x is the last version supporting Python 2.7, 3.5, and 3.6.
* nodes.Node.traverse() returns a list again to restore
backwards compatibility (fixes bug 431).
* Small bugfixes (see HISTORY_).
```
### 0.18
```
=========================
* Output changes:
Identifiers:
During `identifier normalization`_, leading number and hyphen
characters are no longer stripped from a `reference name`_, if the
id_prefix_ setting is non-empty.
Example:
with ``--id-prefix="DU-"``, a section with title "34. May"
currently gets the identifier key ``DU-may`` and after the
change the identifier key ``DU-34-may``.
The default value for the auto_id_prefix_ setting changed to ``%``:
"use the tag name as prefix for auto-generated IDs".
Set auto_id_prefix_ to ``id`` for unchanged auto-IDs.
HTML5:
Use the semantic tag <aside> for footnote text and citations, topics
(except abstract and toc), admonitions, and system messages.
Use <nav> for the Table of Contents.
Make "auto" table column widths the default: Only specify column
widths, if the `"widths" option`_ is set and not "auto".
The table-style__ setting "colwidths-grid" restores the current default.
.. _"widths" option: __ docs/ref/rst/directives.htmltable
__ docs/user/config.htmltable-style
Items of a definition list with class argument "details" are
converted to `details disclosure elements`_. Example::
..class:: details
Summary
This additional information should be hidden.
Do not add "compound-first", "compound-middle", or "compound-last" to
elements nested in a compound. Use child selector and ":first-child",
":last-child" pseudo classes instead.
Use class value "backrefs" instead of "fn-backref" for a span of
back-references.
Write footnote brackets and field term colons to HTML, so that they
are present also without CSS and when copying text.
Move space character between section number and heading into
"sectnum" span.
math-output: html
Support more commands, fix mapping of commands to Unicode characters.
Scale variable sized operators and big delimiters with CSS.
Don't use <tt> element (deprecated in HTML5).
Use STIX fonts if available.
LaTeX:
`legacy_class_functions`_ setting default changed to "False",
admonitions are now environments.
* New standard Docutils doctree node: <meta__>.
* New configuration settings:
[latex writers] legacy_column_widths_ and
[html5Â writer]Â image_loading_.
* Removed files:
``iepngfix.htc`` and ``blank.gif`` (IEÂ 6 workaround for `s5_html`).
* Removed sub-module:
``parsers.rst.directives.html``
(Meta directive moved to ``parsers.rst.directives.misc``.)
* Removed function: utils.unique_combinations()
(obsoleted by itertools.combinations()).
* Removed attribute: ``HTMLTranslator.topic_classes``
(check node.parent.classes instead).
* Major refactoring and fixes/additions in
``docutils/utils/math/math2html.py`` and
``docutils/utils/math/latex2mathml.py``
(mathematical notation in HTML, cf. `LaTeX syntax for mathematics`_).
* nodes.Node.traverse() returns an iterator instead of a list.
* Various bugfixes and improvements (see HISTORY_).
Fix spelling errors in documentation and docstrings.
Thanks to Dimitri Papadopoulos.
__ docs/ref/doctree.htmlmeta
.. _identifier normalization:
docs/ref/rst/directives.htmlidentifier-normalization
.. _id_prefix: docs/user/config.htmlid-prefix
.. _auto_id_prefix: docs/user/config.htmlauto-id-prefix
.. _details disclosure elements:
https://www.w3.org/TR/html52/interactive-elements.html#the-details-element
.. _LaTeX syntax for mathematics: docs/ref/rst/mathematics.html
.. _legacy_column_widths: docs/user/config.htmllegacy-column-widths
```
Links
- PyPI: https://pypi.org/project/docutils
- Changelog: https://pyup.io/changelogs/docutils/
- Homepage: http://docutils.sourceforge.net/
Changelog
### 3.6.1
```
Calendar Updates
* Added missing XKRX holidays (2022-03-09 and 2022-06-01) by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/150
* Add missing Qingming and Labor Day holidays in XSHG. by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/156
* Add special open for BVMF on Ash Wednesday by pbabics in https://github.com/gerrymanoim/exchange_calendars/pull/154
* Attempt to fix Korean lunar calendar bug. by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/152
Dev updates
* Bump actions/checkout from 2.4.0 to 3 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/153
* Bump actions/setup-python from 2.3.2 to 3 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/151
**Full Changelog**: https://github.com/gerrymanoim/exchange_calendars/compare/3.6...3.6.1
```
### 3.6
```
Holiday Updates
* Fix XTKS 2022 holidays according to JPX calendar by beppe712 in https://github.com/gerrymanoim/exchange_calendars/pull/135
* XLON: Add Platinum Jubilee Day and move Spring Bank Holiday. by jenskeiner in https://github.com/gerrymanoim/exchange_calendars/pull/141
* ENH: Add "2022-01-27" as a holiday in XTAI by wec7 in https://github.com/gerrymanoim/exchange_calendars/pull/140
* Added public holidays before 1999 in XSHG. by qiuwei in https://github.com/gerrymanoim/exchange_calendars/pull/147
Dev Changes
* Bump actions/setup-python from 2.3.1 to 2.3.2 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/144
* TST: bump pandas and fix resulting test failures by gerrymanoim in https://github.com/gerrymanoim/exchange_calendars/pull/146
* TST: add py10 to the testing ci by gerrymanoim in https://github.com/gerrymanoim/exchange_calendars/pull/149
New Contributors
* beppe712 made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/135
* wec7 made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/140
* qiuwei made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/147
**Full Changelog**: https://github.com/gerrymanoim/exchange_calendars/compare/3.5.1...3.6
```
Links
- PyPI: https://pypi.org/project/exchange-calendars
- Changelog: https://pyup.io/changelogs/exchange-calendars/
- Repo: https://github.com/gerrymanoim/exchange_calendars
Changelog
### 4.33.3
```
----------------------------
- [designspaceLib] Fixed typo in ``deepcopyExceptFonts`` method, preventing font
references to be transferred (2600). Fixed another typo in the name of ``Range``
dataclass's ``__post_init__`` magic method (2597).
```
### 4.33.2
```
----------------------------
- [otBase] Make logging less verbose when harfbuzz fails to serialize. Do not exit
at the first failure but continue attempting to fix offset overflow error using
the pure-python serializer even when the ``USE_HARFBUZZ_REPACKER`` option was
explicitly set to ``True``. This is normal with fonts with relatively large
tables, at least until hb.repack implements proper table splitting.
```
### 4.33.1
```
----------------------------
- [otlLib] Put back the ``FONTTOOLS_GPOS_COMPACT_MODE`` environment variable to fix
regression in ufo2ft (and thus fontmake) introduced with v4.33.0 (2592, 2593).
This is deprecated and will be removed one ufo2ft gets updated to use the new
config setup.
```
### 4.33.0
```
----------------------------
- [OS/2 / merge] Automatically recalculate ``OS/2.xAvgCharWidth`` after merging
fonts with ``fontTools.merge`` (2591, 2538).
- [misc/config] Added ``fontTools.misc.configTools`` module, a generic configuration
system (2416, 2439).
Added ``fontTools.config`` module, a fontTools-specific configuration
system using ``configTools`` above.
Attached a ``Config`` object to ``TTFont``.
- [otlLib] Replaced environment variable for GPOS compression level with an
equivalent option using the new config system.
- [designspaceLib] Incremented format version to 5.0 (2436).
Added discrete axes, variable fonts, STAT information, either design- or
user-space location on instances.
Added ``fontTools.designspaceLib.split`` module to split a designspace
into sub-spaces that interpolate and that represent the variable fonts
listed in the document.
Made instance names optional and allow computing them from STAT data instead.
Added ``fontTools.designspaceLib.statNames`` module.
Allow instances to have the same location as a previously defined STAT label.
Deprecated some attributes:
``SourceDescriptor``: ``copyLib``, ``copyInfo``, ``copyGroups``, ``copyFeatures``.
``InstanceDescriptor``: ``kerning``, ``info``; ``glyphs``: use rules or sparse
sources.
For both, ``location``: use the more explicit designLocation.
Note: all are soft deprecations and existing code should keep working.
Updated documentation for Python methods and the XML format.
- [varLib] Added ``build_many`` to build several variable fonts from a single
designspace document (2436).
Added ``fontTools.varLib.stat`` module to build STAT tables from a designspace
document.
- [otBase] Try to use the Harfbuzz Repacker for packing GSUB/GPOS tables when
``uharfbuzz`` python bindings are available (2552). Disable it by setting the
"fontTools.ttLib.tables.otBase:USE_HARFBUZZ_REPACKER" config option to ``False``.
If the option is set explicitly to ``True`` but ``uharfbuzz`` can't be imported
or fails to serialize for any reasons, an error will be raised (ImportError or
uharfbuzz errors).
- [CFF/T2] Ensure that ``pen.closePath()`` gets called for CFF2 charstrings (2577).
Handle implicit CFF2 closePath within ``T2OutlineExtractor`` (2580).
```
### 4.32.0
```
----------------------------
- [otlLib] Disable GPOS7 optimization to work around bug in Apple CoreText.
Always force Chaining GPOS8 for now (2540).
- [glifLib] Added ``outputImpliedClosingLine=False`` parameter to ``Glyph.draw()``,
to control behaviour of ``PointToSegmentPen`` (6b4e2e7).
- [varLib.interpolatable] Check for wrong contour starting point (2571).
- [cffLib] Remove leftover ``GlobalState`` class and fix calls to ``TopDictIndex()``
(2569, 2570).
- [instancer] Clear ``AxisValueArray`` if it is empty after instantiating (2563).
```
### 4.31.2
```
----------------------------
- [varLib] fix instantiation of GPOS SinglePos values (2555).
```
### 4.31.1
```
----------------------------
- [subset] fix subsetting OT-SVG when glyph id attribute is on the root ``<svg>``
element (2553).
```
### 4.31.0
```
----------------------------
- [ttCollection] Fixed 'ResourceWarning: unclosed file' warning (2549).
- [varLib.merger] Handle merging SinglePos with valueformat=0 (2550).
- [ttFont] Update glyf's glyphOrder when calling TTFont.setGlyphOrder() (2544).
- [ttFont] Added ``ensureDecompiled`` method to load all tables irrespective
of the ``lazy`` attribute (2551).
- [otBase] Added ``iterSubTable`` method to iterate over BaseTable's children of
type BaseTable; useful for traversing a tree of otTables (2551).
```
### 4.30.0
```
----------------------------
- [varLib] Added debug logger showing the glyph name for which ``gvar`` is built (2542).
- [varLib.errors] Fixed undefined names in ``FoundANone`` and ``UnsupportedFormat``
exceptions (ac4d5611).
- [otlLib.builder] Added ``windowsNames`` and ``macNames`` (bool) parameters to the
``buildStatTabe`` function, so that one can select whether to only add one or both
of the two sets (2528).
- [t1Lib] Added the ability to recreate PostScript stream (2504).
- [name] Added ``getFirstDebugName``, ``getBest{Family,SubFamily,Full}Name`` methods (2526).
```
Links
- PyPI: https://pypi.org/project/fonttools
- Changelog: https://pyup.io/changelogs/fonttools/
- Repo: http://github.com/fonttools/fonttools
Changelog
### 6.46.2
```
-------------------
This patch fixes silently dropping examples when the :func:`example <hypothesis.example>`
decorator is applied to itself (:issue:`3319`). This was always a weird pattern, but now it
works. Thanks to Ray Sogata, Keeri Tramm, and Kevin Khuong for working on this patch!
```
### 6.46.1
```
-------------------
This patch fixes a rare bug where we could incorrectly treat
:obj:`~python:inspect.Parameter.empty` as a type annotation,
if the callable had an explicitly assigned ``__signature__``.
```
### 6.46.0
```
-------------------
This release adds an ``allow_nil`` argument to :func:`~hypothesis.strategies.uuids`,
which you can use to... generate the nil UUID. Thanks to Shlok Gandhi for the patch!
```
### 6.45.4
```
-------------------
This patch fixes some missing imports for certain :doc:`Ghostwritten <ghostwriter>`
tests. Thanks to Mel Seto for fixing :issue:`3316`.
```
### 6.45.3
```
-------------------
This patch teaches :doc:`the Ghostwriter <ghostwriter>` to recognize
many more common argument names (:issue:`3311`).
```
### 6.45.2
```
-------------------
This patch fixes :issue:`3314`, where Hypothesis would raise an internal
error from :func:`~hypothesis.provisional.domains` or (only on Windows)
from :func:`~hypothesis.strategies.timezones` in some rare circumstances
where the installation was subtly broken.
Thanks to Munir Abdinur for this contribution.
```
### 6.45.1
```
-------------------
This release fixes deprecation warnings about ``sre_compile`` and ``sre_parse``
imports and ``importlib.resources`` usage when running Hypothesis on Python 3.11.
Thanks to Florian Bruhin for this contribution.
```
### 6.45.0
```
-------------------
This release updates :func:`xps.indices` by introducing an ``allow_newaxis``
argument, defaulting to ``False``. If ``allow_newaxis=True``, indices can be
generated that add dimensions to arrays, which is achieved by the indexer
containing ``None``. This change is to support a specification change that
expand dimensions via indexing (`data-apis/array-api408
<https://github.com/data-apis/array-api/pull/408>`_).
```
### 6.44.0
```
-------------------
This release adds a ``names`` argument to :func:`~hypothesis.extra.pandas.indexes`
and :func:`~hypothesis.extra.pandas.series`, so that you can create Pandas
objects with specific or varied names.
Contributed by Sam Watts.
```
### 6.43.3
```
-------------------
This patch updates the type annotations for :func:`given <hypothesis.given>`
so that type-checkers will warn on mixed positional and keyword arguments,
as well as fixing :issue:`3296`.
```
### 6.43.2
```
-------------------
Fixed a type annotation for ``pyright --strict`` (:issue:`3287`).
```
### 6.43.1
```
-------------------
This patch makes it an explicit error to call
:func:`~hypothesis.strategies.register_type_strategy` with a
`Pydantic GenericModel <https://pydantic-docs.helpmanual.io/usage/models/#generic-models>`__
and a callable, because ``GenericModel`` isn't actually a generic type at
runtime and so you have to register each of the "parametrized versions"
(actually subclasses!) manually. See :issue:`2940` for more details.
```
### 6.43.0
```
-------------------
This release makes it an explicit error to apply
:func:`pytest.fixture <pytest:pytest.fixture>` to a function which has
already been decorated with :func:`given() <hypothesis.given>`. Previously,
``pytest`` would convert your test to a fixture, and then never run it.
```
### 6.42.3
```
-------------------
This patch fixes :func:`~hypothesis.strategies.from_type` on a :class:`~python:typing.TypedDict`
with complex annotations, defined in a file using ``from __future__ import annotations``.
Thanks to Katelyn Gigante for identifying and fixing this bug!
```
### 6.42.2
```
-------------------
The Hypothesis pytest plugin was not outputting valid xunit2 nodes when
``--junit-xml`` was specified. This has been broken since Pytest 5.4, which
changed the internal API for adding nodes to the junit report.
This also fixes the issue when using hypothesis with ``--junit-xml`` and
``pytest-xdist`` where the junit xml report would not be xunit2 compatible.
Now, when using with ``pytest-xdist``, the junit report will just omit the
``<properties>`` node.
For more details, see `this pytest issue <https://github.com/pytest-dev/pytest/issues/1126#issuecomment-484581283>`__,
`this pytest issue <https://github.com/pytest-dev/pytest/issues/7767#issuecomment-1082436256>`__,
and :issue:`1935`
Thanks to Brandon Chinn for this bug fix!
```
### 6.42.1
```
-------------------
This patch fixes pretty-printing of regular expressions in Python 3.11.0a7, and
updates our vendored `list of top-level domains <https://www.iana.org/domains/root/db>`__,.
```
### 6.42.0
```
-------------------
This release makes ``st.functions(pure=True)`` less noisy (:issue:`3253`),
and generally improves pretty-printing of functions.
```
### 6.41.0
```
-------------------
This release changes the implementation of :c
Update aiohttp from 3.7.4 to 3.8.1.
Changelog
### 3.8.1 ``` ================== Bugfixes -------- - Fix the error in handling the return value of `getaddrinfo`. `getaddrinfo` will return an `(int, bytes)` tuple, if CPython could not handle the address family. It will cause an index out of range error in aiohttp. For example, if user compile CPython with `--disable-ipv6` option, but his system enable the ipv6. `5901 <https://github.com/aio-libs/aiohttp/issues/5901>`_ - Do not install "examples" as a top-level package. `6189 <https://github.com/aio-libs/aiohttp/issues/6189>`_ - Restored ability to connect IPv6-only host. `6195 <https://github.com/aio-libs/aiohttp/issues/6195>`_ - Remove ``Signal`` from ``__all__``, replace ``aiohttp.Signal`` with ``aiosignal.Signal`` in docs `6201 <https://github.com/aio-libs/aiohttp/issues/6201>`_ - Made chunked encoding HTTP header check stricter. `6305 <https://github.com/aio-libs/aiohttp/issues/6305>`_ Improved Documentation ---------------------- - update quick starter demo codes. `6240 <https://github.com/aio-libs/aiohttp/issues/6240>`_ - Added an explanation of how tiny timeouts affect performance to the client reference document. `6274 <https://github.com/aio-libs/aiohttp/issues/6274>`_ - Add flake8-docstrings to flake8 configuration, enable subset of checks. `6276 <https://github.com/aio-libs/aiohttp/issues/6276>`_ - Added information on running complex applications with additional tasks/processes -- :user:`Dreamsorcerer`. `6278 <https://github.com/aio-libs/aiohttp/issues/6278>`_ Misc ---- - `6205 <https://github.com/aio-libs/aiohttp/issues/6205>`_ ---- ``` ### 3.8.0 ``` ================== Features -------- - Added a ``GunicornWebWorker`` feature for extending the aiohttp server configuration by allowing the 'wsgi' coroutine to return ``web.AppRunner`` object. `2988 <https://github.com/aio-libs/aiohttp/issues/2988>`_ - Switch from ``http-parser`` to ``llhttp`` `3561 <https://github.com/aio-libs/aiohttp/issues/3561>`_ - Use Brotli instead of brotlipy `3803 <https://github.com/aio-libs/aiohttp/issues/3803>`_ - Disable implicit switch-back to pure python mode. The build fails loudly if aiohttp cannot be compiled with C Accelerators. Use AIOHTTP_NO_EXTENSIONS=1 to explicitly disable C Extensions complication and switch to Pure-Python mode. Note that Pure-Python mode is significantly slower than compiled one. `3828 <https://github.com/aio-libs/aiohttp/issues/3828>`_ - Make access log use local time with timezone `3853 <https://github.com/aio-libs/aiohttp/issues/3853>`_ - Implemented ``readuntil`` in ``StreamResponse`` `4054 <https://github.com/aio-libs/aiohttp/issues/4054>`_ - FileResponse now supports ETag. `4594 <https://github.com/aio-libs/aiohttp/issues/4594>`_ - Add a request handler type alias ``aiohttp.typedefs.Handler``. `4686 <https://github.com/aio-libs/aiohttp/issues/4686>`_ - ``AioHTTPTestCase`` is more async friendly now. For people who use unittest and are used to use :py:exc:`~unittest.TestCase` it will be easier to write new test cases like the sync version of the :py:exc:`~unittest.TestCase` class, without using the decorator `unittest_run_loop`, just `async def test_*`. The only difference is that for the people using python3.7 and below a new dependency is needed, it is ``asynctestcase``. `4700 <https://github.com/aio-libs/aiohttp/issues/4700>`_ - Add validation of HTTP header keys and values to prevent header injection. `4818 <https://github.com/aio-libs/aiohttp/issues/4818>`_ - Add predicate to ``AbstractCookieJar.clear``. Add ``AbstractCookieJar.clear_domain`` to clean all domain and subdomains cookies only. `4942 <https://github.com/aio-libs/aiohttp/issues/4942>`_ - Add keepalive_timeout parameter to web.run_app. `5094 <https://github.com/aio-libs/aiohttp/issues/5094>`_ - Tracing for client sent headers `5105 <https://github.com/aio-libs/aiohttp/issues/5105>`_ - Make type hints for http parser stricter `5267 <https://github.com/aio-libs/aiohttp/issues/5267>`_ - Add final declarations for constants. `5275 <https://github.com/aio-libs/aiohttp/issues/5275>`_ - Switch to external frozenlist and aiosignal libraries. `5293 <https://github.com/aio-libs/aiohttp/issues/5293>`_ - Don't send secure cookies by insecure transports. By default, the transport is secure if https or wss scheme is used. Use `CookieJar(treat_as_secure_origin="http://127.0.0.1")` to override the default security checker. `5571 <https://github.com/aio-libs/aiohttp/issues/5571>`_ - Always create a new event loop in ``aiohttp.web.run_app()``. This adds better compatibility with ``asyncio.run()`` or if trying to run multiple apps in sequence. `5572 <https://github.com/aio-libs/aiohttp/issues/5572>`_ - Add ``aiohttp.pytest_plugin.AiohttpClient`` for static typing of pytest plugin. `5585 <https://github.com/aio-libs/aiohttp/issues/5585>`_ - Added a ``socket_factory`` argument to ``BaseTestServer``. `5844 <https://github.com/aio-libs/aiohttp/issues/5844>`_ - Add compression strategy parameter to enable_compression method. `5909 <https://github.com/aio-libs/aiohttp/issues/5909>`_ - Added support for Python 3.10 to Github Actions CI/CD workflows and fix the related deprecation warnings -- :user:`Hanaasagi`. `5927 <https://github.com/aio-libs/aiohttp/issues/5927>`_ - Switched ``chardet`` to ``charset-normalizer`` for guessing the HTTP payload body encoding -- :user:`Ousret`. `5930 <https://github.com/aio-libs/aiohttp/issues/5930>`_ - Added optional auto_decompress argument for HttpRequestParser `5957 <https://github.com/aio-libs/aiohttp/issues/5957>`_ - Added support for HTTPS proxies to the extent CPython's :py:mod:`asyncio` supports it -- by :user:`bmbouter`, :user:`jborean93` and :user:`webknjaz`. `5992 <https://github.com/aio-libs/aiohttp/issues/5992>`_ - Added ``base_url`` parameter to the initializer of :class:`~aiohttp.ClientSession`. `6013 <https://github.com/aio-libs/aiohttp/issues/6013>`_ - Add Trove classifier and create binary wheels for 3.10. -- :user:`hugovk`. `6079 <https://github.com/aio-libs/aiohttp/issues/6079>`_ - Started shipping platform-specific wheels with the ``musl`` tag targeting typical Alpine Linux runtimes — :user:`asvetlov`. `6139 <https://github.com/aio-libs/aiohttp/issues/6139>`_ - Started shipping platform-specific arm64 wheels for Apple Silicon — :user:`asvetlov`. `6139 <https://github.com/aio-libs/aiohttp/issues/6139>`_ Bugfixes -------- - Modify _drain_helper() to handle concurrent `await resp.write(...)` or `ws.send_json(...)` calls without race-condition. `2934 <https://github.com/aio-libs/aiohttp/issues/2934>`_ - Started using `MultiLoopChildWatcher` when it's available under POSIX while setting up the test I/O loop. `3450 <https://github.com/aio-libs/aiohttp/issues/3450>`_ - Only encode content-disposition filename parameter using percent-encoding. Other parameters are encoded to quoted-string or RFC2231 extended parameter value. `4012 <https://github.com/aio-libs/aiohttp/issues/4012>`_ - Fixed HTTP client requests to honor ``no_proxy`` environment variables. `4431 <https://github.com/aio-libs/aiohttp/issues/4431>`_ - Fix supporting WebSockets proxies configured via environment variables. `4648 <https://github.com/aio-libs/aiohttp/issues/4648>`_ - Change return type on URLDispatcher to UrlMappingMatchInfo to improve type annotations. `4748 <https://github.com/aio-libs/aiohttp/issues/4748>`_ - Ensure a cleanup context is cleaned up even when an exception occurs during startup. `4799 <https://github.com/aio-libs/aiohttp/issues/4799>`_ - Added a new exception type for Unix socket client errors which provides a more useful error message. `4984 <https://github.com/aio-libs/aiohttp/issues/4984>`_ - Remove Transfer-Encoding and Content-Type headers for 204 in StreamResponse `5106 <https://github.com/aio-libs/aiohttp/issues/5106>`_ - Only depend on typing_extensions for Python <3.8 `5107 <https://github.com/aio-libs/aiohttp/issues/5107>`_ - Add ABNORMAL_CLOSURE and BAD_GATEWAY to WSCloseCode `5192 <https://github.com/aio-libs/aiohttp/issues/5192>`_ - Fix cookies disappearing from HTTPExceptions. `5233 <https://github.com/aio-libs/aiohttp/issues/5233>`_ - StaticResource prefixes no longer match URLs with a non-folder prefix. For example ``routes.static('/foo', '/foo')`` no longer matches the URL ``/foobar``. Previously, this would attempt to load the file ``/foo/ar``. `5250 <https://github.com/aio-libs/aiohttp/issues/5250>`_ - Acquire the connection before running traces to prevent race condition. `5259 <https://github.com/aio-libs/aiohttp/issues/5259>`_ - Add missing slots to _RequestContextManager`` and ``_WSRequestContextManager`` `5329 <https://github.com/aio-libs/aiohttp/issues/5329>`_ - Ensure sending a zero byte file does not throw an exception (round 2) `5380 <https://github.com/aio-libs/aiohttp/issues/5380>`_ - Set "text/plain" when data is an empty string in client requests. `5392 <https://github.com/aio-libs/aiohttp/issues/5392>`_ - Stop automatically releasing the ``ClientResponse`` object on calls to the ``ok`` property for the failed requests. `5403 <https://github.com/aio-libs/aiohttp/issues/5403>`_ - Include query parameters from `params` keyword argument in tracing `URL`. `5432 <https://github.com/aio-libs/aiohttp/issues/5432>`_ - Fix annotations `5466 <https://github.com/aio-libs/aiohttp/issues/5466>`_ - Fixed the multipart POST requests processing to always release file descriptors for the ``tempfile.Temporaryfile``-created ``_io.BufferedRandom`` instances of files sent within multipart request bodies via HTTP POST requests -- by :user:`webknjaz`. `5494 <https://github.com/aio-libs/aiohttp/issues/5494>`_ - Fix 0 being incorrectly treated as an immediate timeout. `5527 <https://github.com/aio-libs/aiohttp/issues/5527>`_ - Fixes failing tests when an environment variable <scheme>_proxy is set. `5554 <https://github.com/aio-libs/aiohttp/issues/5554>`_ - Replace deprecated app handler design in ``tests/autobahn/server.py`` with call to ``web.run_app``; replace deprecated ``aiohttp.ws_connect`` calls in ``tests/autobahn/client.py`` with ``aiohttp.ClienSession.ws_connect``. `5606 <https://github.com/aio-libs/aiohttp/issues/5606>`_ - Fixed test for ``HTTPUnauthorized`` that access the ``text`` argument. This is not used in any part of the code, so it's removed now. `5657 <https://github.com/aio-libs/aiohttp/issues/5657>`_ - Remove incorrect default from docs `5727 <https://github.com/aio-libs/aiohttp/issues/5727>`_ - Remove external test dependency to http://httpbin.org `5840 <https://github.com/aio-libs/aiohttp/issues/5840>`_ - Don't cancel current task when entering a cancelled timer. `5853 <https://github.com/aio-libs/aiohttp/issues/5853>`_ - Added ``params`` keyword argument to ``ClientSession.ws_connect``. -- :user:`hoh`. `5868 <https://github.com/aio-libs/aiohttp/issues/5868>`_ - Uses :py:class:`~asyncio.ThreadedChildWatcher` under POSIX to allow setting up test loop in non-main thread. `5877 <https://github.com/aio-libs/aiohttp/issues/5877>`_ - Fix the error in handling the return value of `getaddrinfo`. `getaddrinfo` will return an `(int, bytes)` tuple, if CPython could not handle the address family. It will cause a index out of range error in aiohttp. For example, if user compile CPython with `--disable-ipv6` option but his system enable the ipv6. `5901 <https://github.com/aio-libs/aiohttp/issues/5901>`_ - Removed the deprecated ``loop`` argument from the ``asyncio.sleep``/``gather`` calls `5905 <https://github.com/aio-libs/aiohttp/issues/5905>`_ - Return ``None`` from ``request.if_modified_since``, ``request.if_unmodified_since``, ``request.if_range`` and ``response.last_modified`` when corresponding http date headers are invalid. `5925 <https://github.com/aio-libs/aiohttp/issues/5925>`_ - Fix resetting `SIGCHLD` signals in Gunicorn aiohttp Worker to fix `subprocesses` that capture output having an incorrect `returncode`. `6130 <https://github.com/aio-libs/aiohttp/issues/6130>`_ - Raise ``400: Content-Length can't be present with Transfer-Encoding`` if both ``Content-Length`` and ``Transfer-Encoding`` are sent by peer by both C and Python implementations `6182 <https://github.com/aio-libs/aiohttp/issues/6182>`_ Improved Documentation ---------------------- - Refactored OpenAPI/Swagger aiohttp addons, added ``aio-openapi`` `5326 <https://github.com/aio-libs/aiohttp/issues/5326>`_ - Fixed docs on request cookies type, so it matches what is actually used in the code (a read-only dictionary-like object). `5725 <https://github.com/aio-libs/aiohttp/issues/5725>`_ - Documented that the HTTP client ``Authorization`` header is removed on redirects to a different host or protocol. `5850 <https://github.com/aio-libs/aiohttp/issues/5850>`_ Misc ---- - `3927 <https://github.com/aio-libs/aiohttp/issues/3927>`_, `#4247 <https://github.com/aio-libs/aiohttp/issues/4247>`_, `#4247 <https://github.com/aio-libs/aiohttp/issues/4247>`_, `#5389 <https://github.com/aio-libs/aiohttp/issues/5389>`_, `#5457 <https://github.com/aio-libs/aiohttp/issues/5457>`_, `#5486 <https://github.com/aio-libs/aiohttp/issues/5486>`_, `#5494 <https://github.com/aio-libs/aiohttp/issues/5494>`_, `#5515 <https://github.com/aio-libs/aiohttp/issues/5515>`_, `#5625 <https://github.com/aio-libs/aiohttp/issues/5625>`_, `#5635 <https://github.com/aio-libs/aiohttp/issues/5635>`_, `#5648 <https://github.com/aio-libs/aiohttp/issues/5648>`_, `#5657 <https://github.com/aio-libs/aiohttp/issues/5657>`_, `#5890 <https://github.com/aio-libs/aiohttp/issues/5890>`_, `#5914 <https://github.com/aio-libs/aiohttp/issues/5914>`_, `#5932 <https://github.com/aio-libs/aiohttp/issues/5932>`_, `#6002 <https://github.com/aio-libs/aiohttp/issues/6002>`_, `#6045 <https://github.com/aio-libs/aiohttp/issues/6045>`_, `#6131 <https://github.com/aio-libs/aiohttp/issues/6131>`_, `#6156 <https://github.com/aio-libs/aiohttp/issues/6156>`_, `#6165 <https://github.com/aio-libs/aiohttp/issues/6165>`_, `#6166 <https://github.com/aio-libs/aiohttp/issues/6166>`_ ---- ``` ### 3.7.4.post0 ``` ======================== Misc ---- - Bumped upper bound of the ``chardet`` runtime dependency to allow their v4.0 version stream. `5366 <https://github.com/aio-libs/aiohttp/issues/5366>`_ ---- ```Links
- PyPI: https://pypi.org/project/aiohttp - Changelog: https://pyup.io/changelogs/aiohttp/ - Repo: https://github.com/aio-libs/aiohttpUpdate alpaca-trade-api from 1.5.1 to 2.1.0.
Changelog
### 2.1.0 ``` PRs in this release: - Add auto deployment to pypi (612) from drew887 - Adds a 'side' param to Rest::list_orders (610) from drew887 - Add issue template for general SDK questions (608) from drew887 - Update issue templates (606) from drew887 - Adds stream crypto orderbook (597) from ccnlui ``` ### 2.0.0 ``` :warning: Note this release is a **Breaking Change** due to the removal of Market Data V1 capabilities - Adds a param to the stream classes to allow overriding of websocket defaults (596) - Scheduled weekly dependency update for week 12 (592) - Increase ping timeout (591) - Send subscription requests in parts (586) - Remove marketdata v1 functions (590) - Updating overnight-hold to use the new data api (async get bars) (562) - Add Week and Month timeframe units (583) - Multi symbol support for the latest crypto endpoints (580) You can view this release on [PyPi here](https://pypi.org/project/alpaca-trade-api/2.0.0/) ```Links
- PyPI: https://pypi.org/project/alpaca-trade-api - Changelog: https://pyup.io/changelogs/alpaca-trade-api/ - Repo: https://github.com/alpacahq/alpaca-trade-api-pythonUpdate appnope from 0.1.2 to 0.1.3.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/appnope - Repo: http://github.com/minrk/appnopeUpdate astroid from 2.9.3 to 2.11.5.
Changelog
### 2.11.5 ``` ============================= Release date: 2022-05-09 * Fix crash while obtaining ``object_type()`` of an ``Unknown`` node. Refs PyCQA/pylint6539 * Fix a bug where in attempting to handle the patching of ``distutils`` by ``virtualenv``, library submodules called ``distutils`` (e.g. ``numpy.distutils``) were included also. Refs PyCQA/pylint6497 ``` ### 2.11.4 ``` ============================= Release date: 2022-05-02 * Fix ``col_offset`` attribute for nodes involving ``with`` on ``PyPy``. * Fixed a crash involving two starred expressions: one inside a comprehension, both inside a call. Refs PyCQA/pylint6372 * Made ``FunctionDef.implicit_parameters`` return 1 for methods by making ``FunctionDef.is_bound`` return ``True``, as it does for class methods. Closes PyCQA/pylint6464 * Fixed a crash when ``_filter_stmts`` encounters an ``EmptyNode``. Closes PyCQA/pylint6438 ``` ### 2.11.3 ``` ============================= Release date: 2022-04-19 * Fixed an error in the Qt brain when building ``instance_attrs``. Closes PyCQA/pylint6221 * Fixed a crash in the ``gi`` brain. Closes PyCQA/pylint6371 ``` ### 2.11.2 ``` ============================= Release date: 2022-03-26 * Avoided adding the name of a parent namedtuple to its child's locals. Refs PyCQA/pylint5982 ``` ### 2.11.1 ``` ============================= Release date: 2022-03-22 * Promoted ``getattr()`` from ``astroid.scoped_nodes.FunctionDef`` to its parent ``astroid.scoped_nodes.Lambda``. * Fixed crash on direct inference via ``nodes.FunctionDef._infer``. Closes 817 ``` ### 2.11.0 ``` ============================= Release date: 2022-03-12 * Add new (optional) ``doc_node`` attribute to ``nodes.Module``, ``nodes.ClassDef``, and ``nodes.FunctionDef``. * Accessing the ``doc`` attribute of ``nodes.Module``, ``nodes.ClassDef``, and ``nodes.FunctionDef`` has been deprecated in favour of the ``doc_node`` attribute. Note: ``doc_node`` is an (optional) ``nodes.Const`` whereas ``doc`` was an (optional) ``str``. * Passing the ``doc`` argument to the ``__init__`` of ``nodes.Module``, ``nodes.ClassDef``, and ``nodes.FunctionDef`` has been deprecated in favour of the ``postinit`` ``doc_node`` attribute. Note: ``doc_node`` is an (optional) ``nodes.Const`` whereas ``doc`` was an (optional) ``str``. * Replace custom ``cachedproperty`` with ``functools.cached_property`` and deprecate it for Python 3.8+. Closes 1410 * Set ``end_lineno`` and ``end_col_offset`` attributes to ``None`` for all nodes with PyPy 3.8. PyPy 3.8 assigns these attributes inconsistently which could lead to unexpected errors. Overwriting them with ``None`` will cause a fallback to the already supported way of PyPy 3.7. * Add missing ``shape`` parameter to numpy ``zeros_like``, ``ones_like``, and ``full_like`` methods. Closes PyCQA/pylint5871 * Only pin ``wrapt`` on the major version. ``` ### 2.10.0 ``` ============================= Release date: 2022-02-27 * Fixed inference of ``self`` in binary operations in which ``self`` is part of a list or tuple. Closes PyCQA/pylint4826 * Fixed builtin inference on `property` calls not calling the `postinit` of the new node, which resulted in instance arguments missing on these nodes. * Fixed a crash on ``Super.getattr`` when the attribute was previously uninferable due to a cache limit size. This limit can be hit when the inheritance pattern of a class (and therefore of the ``__init__`` attribute) is very large. Closes PyCQA/pylint5679 * Inlcude names of keyword-only arguments in ``astroid.scoped_nodes.Lambda.argnames``. Closes PyCQA/pylint5771 * Fixed a crash inferring on a ``NewType`` named with an f-string. Closes PyCQA/pylint5770 * Add support for [attrs v21.3.0](https://github.com/python-attrs/attrs/releases/tag/21.3.0) which added a new `attrs` module alongside the existing `attr`. Closes 1330 * Use the ``end_lineno`` attribute for the ``NodeNG.tolineno`` property when it is available. Closes 1350 * Add ``is_dataclass`` attribute to ``ClassDef`` nodes. * Use ``sysconfig`` instead of ``distutils`` to determine the location of python stdlib files and packages. Related pull requests: 1322, 1323, 1324 Closes 1282 Ref 1103 * Fixed crash with recursion error for inference of class attributes that referenced the class itself. Closes PyCQA/pylint5408 * Fixed crash when trying to infer ``items()`` on the ``__dict__`` attribute of an imported module. Closes 1085 * Add optional ``NodeNG.position`` attribute. Used for block nodes to highlight position of keyword(s) and name in cases where the AST doesn't provide good enough positional information. E.g. ``nodes.ClassDef``, ``nodes.FunctionDef``. * Fix ``ClassDef.fromlineno``. For Python < 3.8 the ``lineno`` attribute includes decorators. ``fromlineno`` should return the line of the ``class`` statement itself. * Performance improvements. Only run expensive decorator functions when non-default Deprecation warnings are enabled, eg. during a Pytest run. Closes 1383 ```Links
- PyPI: https://pypi.org/project/astroid - Changelog: https://pyup.io/changelogs/astroid/ - Repo: https://github.com/PyCQA/astroidUpdate async-timeout from 3.0.1 to 4.0.2.
Changelog
### 4.0.2 ``` ================== Misc ---- - `259 <https://github.com/aio-libs/async-timeout/issues/259>`_, `#274 <https://github.com/aio-libs/async-timeout/issues/274>`_ ``` ### 4.0.1 ``` ================== - Fix regression: 1. Don't raise TimeoutError from timeout object that doesn't enter into async context manager 2. Use call_soon() for raising TimeoutError if deadline is reached on entering into async context manager (258) - Make ``Timeout`` class available in ``__all__``. ``` ### 4.0.0 ``` ================== * Implemented ``timeout_at(deadline)`` (117) * Supported ``timeout.deadline`` and ``timeout.expired`` properties. * Dropped ``timeout.remaining`` property: it can be calculated as ``timeout.deadline - loop.time()`` * Dropped ``timeout.timeout`` property that returns a relative timeout based on the timeout object creation time; the absolute ``timeout.deadline`` should be used instead. * Added the deadline modification methods: ``timeout.reject()``, ``timeout.shift(delay)``, ``timeout.update(deadline)``. * Deprecated synchronous context manager usage ```Links
- PyPI: https://pypi.org/project/async-timeout - Changelog: https://pyup.io/changelogs/async-timeout/ - Repo: https://github.com/aio-libs/async-timeoutUpdate Babel from 2.9.1 to 2.10.1.
Changelog
### 2.10.1 ``` -------------- This is a bugfix release for Babel 2.10.0. * Messages: Fix ``distutils`` import. Regressed in :gh:`843`. (:gh:`852`) - Nehal J Wani * The wheel file is no longer marked as universal, since Babel only supports Python 3. ``` ### 2.10.0 ``` -------------- Upcoming deprecation ~~~~~~~~~~~~~~~~~~~~ * The ``get_next_timezone_transition()`` function is marked deprecated in this version and will be removed likely as soon as Babel 2.11. No replacement for this function is planned; based on discussion in :gh:`716`, it's likely the function is not used in any real code. (:gh:`852`) - Aarni Koskela, Paul Ganssle Improvements ~~~~~~~~~~~~ * CLDR: Upgrade to CLDR 41.0. (:gh:`853`) - Aarni Koskela * The ``c`` and ``e`` plural form operands introduced in CLDR 40 are parsed, but otherwise unsupported. (:gh:`826`) * Non-nominative forms of units are currently ignored. * Messages: Implement ``--init-missing`` option for ``pybabel update`` (:gh:`785`) - ruro * Messages: For ``extract``, you can now replace the built-in ``.*`` / ``_*`` ignored directory patterns with ones of your own. (:gh:`832`) - Aarni Koskela, Kinshuk Dua * Messages: Add ``--check`` to verify if catalogs are up-to-date (:gh:`831`) - Krzysztof Jagiełło * Messages: Add ``--header-comment`` to override default header comment (:gh:`720`) - Mohamed Hafez Morsy, Aarni Koskela * Dates: ``parse_time`` now supports 12-hour clock, and is better at parsing partial times. (:gh:`834`) - Aarni Koskela, David Bauer, Arthur Jovart * Dates: ``parse_date`` and ``parse_time`` now raise ``ParseError``, a subclass of ``ValueError``, in certain cases. (:gh:`834`) - Aarni Koskela * Dates: ``parse_date`` and ``parse_time`` now accept the ``format`` parameter. (:gh:`834`) - Juliette Monsel, Aarni Koskela Infrastructure ~~~~~~~~~~~~~~ * The internal ``babel/_compat.py`` module is no more (:gh:`808`) - Hugo van Kemenade * Python 3.10 is officially supported (:gh:`809`) - Hugo van Kemenade * There's now a friendly GitHub issue template. (:gh:`800`) – Álvaro Mondéjar Rubio * Don't use the deprecated format_number function internally or in tests - Aarni Koskela * Add GitHub URL for PyPi (:gh:`846`) - Andrii Oriekhov * Python 3.12 compatibility: Prefer setuptools imports to distutils imports (:gh:`843`) - Aarni Koskela * Python 3.11 compatibility: Add deprecations to l*gettext variants (:gh:`835`) - Aarni Koskela * CI: Babel is now tested with PyPy 3.7. (:gh:`851`) - Aarni Koskela Bugfixes ~~~~~~~~ * Date formatting: Allow using ``other`` as fallback form (:gh:`827`) - Aarni Koskela * Locales: ``Locale.parse()`` normalizes variant tags to upper case (:gh:`829`) - Aarni Koskela * A typo in the plural format for Maltese is fixed. (:gh:`796`) - Lukas Winkler * Messages: Catalog date parsing is now timezone independent. (:gh:`701`) - rachele-collin * Messages: Fix duplicate locations when writing without lineno (:gh:`837`) - Sigurd Ljødal * Messages: Fix missing trailing semicolon in plural form headers (:gh:`848`) - farhan5900 * CLI: Fix output of ``--list-locales`` to not be a bytes repr (:gh:`845`) - Morgan Wahl Documentation ~~~~~~~~~~~~~ * Documentation is now correctly built again, and up to date (:gh:`830`) - Aarni Koskela ```Links
- PyPI: https://pypi.org/project/babel - Changelog: https://pyup.io/changelogs/babel/ - Homepage: https://babel.pocoo.org/ - Docs: https://pythonhosted.org/Babel/Update black from 22.1.0 to 22.3.0.
Changelog
### 22.3.0 ``` Preview style - Code cell separators `%%` are now standardised to ` %%` (2919) - Remove unnecessary parentheses from `except` statements (2939) - Remove unnecessary parentheses from tuple unpacking in `for` loops (2945) - Avoid magic-trailing-comma in single-element subscripts (2942) Configuration - Do not format `__pypackages__` directories by default (2836) - Add support for specifying stable version with `--required-version` (2832). - Avoid crashing when the user has no homedir (2814) - Avoid crashing when md5 is not available (2905) - Fix handling of directory junctions on Windows (2904) Documentation - Update pylint config documentation (2931) Integrations - Move test to disable plugin in Vim/Neovim, which speeds up loading (2896) Output - In verbose, mode, log when _Black_ is using user-level config (2861) Packaging - Fix Black to work with Click 8.1.0 (2966) - On Python 3.11 and newer, use the standard library's `tomllib` instead of `tomli` (2903) - `black-primer`, the deprecated internal devtool, has been removed and copied to a [separate repository](https://github.com/cooperlees/black-primer) (#2924) Parser - Black can now parse starred expressions in the target of `for` and `async for` statements, e.g `for item in *items_1, *items_2: pass` (2879). ```Links
- PyPI: https://pypi.org/project/black - Changelog: https://pyup.io/changelogs/black/ - Repo: https://github.com/psf/blackUpdate bleach from 4.1.0 to 5.0.0.
Changelog
### 5.0.0 ``` ------------------------------- **Backwards incompatible changes** * ``clean`` and ``linkify`` now preserve the order of HTML attributes. Thank you, askoretskly! (566) * Drop support for Python 3.6. Thank you, hugovk! (629) * CSS sanitization in style tags is completely different now. If you're using Bleach ``clean`` to sanitize css in style tags, you'll need to update your code and you'll need to install the ``css`` extras:: pip install 'bleach[css]' See `the documentation on sanitizing CSS for how to do it <https://bleach.readthedocs.io/en/latest/clean.html#sanitizing-css>`_. (633) **Bug fixes** * Rework dev dependencies. We no longer have ``requirements-dev.in``/``requirements-dev.txt``. Instead, we're using ``dev`` extras. See `development docs <https://bleach.readthedocs.io/en/latest/dev.html>`_ for more details. (620) * Add newline when dropping block-level tags. Thank you, jvanasco! (369) ```Links
- PyPI: https://pypi.org/project/bleach - Changelog: https://pyup.io/changelogs/bleach/ - Repo: https://github.com/mozilla/bleach - Docs: https://pythonhosted.org/bleach/Update cachetools from 4.2.4 to 5.0.0.
Changelog
### 5.0.0 ``` =================== - Require Python 3.7 or later (breaking change). - Remove deprecated submodules (breaking change). The ``cache``, ``fifo``, ``lfu``, ``lru``, ``mru``, ``rr`` and ``ttl`` submodules have been deleted. Therefore, statements like ``from cachetools.ttl import TTLCache`` will no longer work. Use ``from cachetools import TTLCache`` instead. - Pass ``self`` to ``cachedmethod`` key function (breaking change). The ``key`` function passed to the ``cachedmethod`` decorator is now called as ``key(self, *args, **kwargs)``. The default key function has been changed to ignore its first argument, so this should only affect applications using custom key functions with the ``cachedmethod`` decorator. - Change exact time of expiration in ``TTLCache`` (breaking change). ``TTLCache`` items now get expired if their expiration time is less than *or equal to* ``timer()``. For applications using the default ``timer()``, this should be barely noticable, but it may affect the use of custom timers with larger tick intervals. Note that this also implies that a ``TTLCache`` with ``ttl=0`` can no longer hold any items, since they will expire immediately. - Change ``Cache.__repr__()`` format (breaking change). String representations of cache instances now use a more compact and efficient format, e.g. ``LRUCache({1: 1, 2: 2}, maxsize=10, currsize=2)`` - Add TLRU cache implementation. - Documentation improvements. ```Links
- PyPI: https://pypi.org/project/cachetools - Changelog: https://pyup.io/changelogs/cachetools/ - Repo: https://github.com/tkem/cachetools/Update chardet from 3.0.4 to 4.0.0.
Changelog
### 4.0.0 ``` Benchmarking chardet 4.0.0 on CPython 3.7.5 (default, Sep 8 2020, 12:19:42) [Clang 11.0.3 (clang-1103.0.32.62)] -------------------------------------------------------------------------------- ....................................................................................................................................................................................................................................................................................................................................................................... Calls per second for each encoding: ```Links
- PyPI: https://pypi.org/project/chardet - Changelog: https://pyup.io/changelogs/chardet/ - Repo: https://github.com/chardet/chardetUpdate charset-normalizer from 2.0.11 to 2.0.12.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/charset-normalizer - Repo: https://github.com/ousret/charset_normalizerUpdate click from 8.0.3 to 8.1.3.
Changelog
### 8.1.3 ``` ------------- Released 2022-04-28 - Use verbose form of ``typing.Callable`` for ``command`` and ``group``. :issue:`2255` - Show error when attempting to create an option with ``multiple=True, is_flag=True``. Use ``count`` instead. :issue:`2246` ``` ### 8.1.2 ``` ------------- Released 2022-03-31 - Fix error message for readable path check that was mixed up with the executable check. :pr:`2236` - Restore parameter order for ``Path``, placing the ``executable`` parameter at the end. It is recommended to use keyword arguments instead of positional arguments. :issue:`2235` ``` ### 8.1.1 ``` ------------- Released 2022-03-30 - Fix an issue with decorator typing that caused type checking to report that a command was not callable. :issue:`2227` ``` ### 8.1.0 ``` ------------- Released 2022-03-28 - Drop support for Python 3.6. :pr:`2129` - Remove previously deprecated code. :pr:`2130` - ``Group.resultcallback`` is renamed to ``result_callback``. - ``autocompletion`` parameter to ``Command`` is renamed to ``shell_complete``. - ``get_terminal_size`` is removed, use ``shutil.get_terminal_size`` instead. - ``get_os_args`` is removed, use ``sys.argv[1:]`` instead. - Rely on :pep:`538` and :pep:`540` to handle selecting UTF-8 encoding instead of ASCII. Click's locale encoding detection is removed. :issue:`2198` - Single options boolean flags with ``show_default=True`` only show the default if it is ``True``. :issue:`1971` - The ``command`` and ``group`` decorators can be applied with or without parentheses. :issue:`1359` - The ``Path`` type can check whether the target is executable. :issue:`1961` - ``Command.show_default`` overrides ``Context.show_default``, instead of the other way around. :issue:`1963` - Parameter decorators and ``group`` handles ``cls=None`` the same as not passing ``cls``. ``option`` handles ``help=None`` the same as not passing ``help``. :issue:`1959` - A flag option with ``required=True`` requires that the flag is passed instead of choosing the implicit default value. :issue:`1978` - Indentation in help text passed to ``Option`` and ``Command`` is cleaned the same as using the ``option`` and ``command`` decorators does. A command's ``epilog`` and ``short_help`` are also processed. :issue:`1985` - Store unprocessed ``Command.help``, ``epilog`` and ``short_help`` strings. Processing is only done when formatting help text for output. :issue:`2149` - Allow empty str input for ``prompt()`` when ``confirmation_prompt=True`` and ``default=""``. :issue:`2157` - Windows glob pattern expansion doesn't fail if a value is an invalid pattern. :issue:`2195` - It's possible to pass a list of ``params`` to ``command``. Any params defined with decorators are appended to the passed params. :issue:`2131`. - ``command`` decorator is annotated as returning the correct type if a ``cls`` argument is used. :issue:`2211` - A ``Group`` with ``invoke_without_command=True`` and ``chain=False`` will invoke its result callback with the group function's return value. :issue:`2124` - ``to_info_dict`` will not fail if a ``ParamType`` doesn't define a ``name``. :issue:`2168` - Shell completion prioritizes option values with option prefixes over new options. :issue:`2040` - Options that get an environment variable value using ``autoenvvar_prefix`` treat an empty value as ``None``, consistent with a direct ``envvar``. :issue:`2146` ``` ### 8.0.4 ``` ------------- Released 2022-02-18 - ``open_file`` recognizes ``Path("-")`` as a standard stream, the same as the string ``"-"``. :issue:`2106` - The ``option`` and ``argument`` decorators preserve the type annotation of the decorated function. :pr:`2155` - A callable default value can customize its help text by overriding ``__str__`` instead of always showing ``(dynamic)``. :issue:`2099` - Fix a typo in the Bash completion script that affected file and directory completion. If this script was generated by a previous version, it should be regenerated. :issue:`2163` - Fix typing for ``echo`` and ``secho`` file argument. :issue:`2174, 2185` ```Links
- PyPI: https://pypi.org/project/click - Changelog: https://pyup.io/changelogs/click/ - Homepage: https://palletsprojects.com/p/click/Update coverage from 6.3.1 to 6.3.2.
Changelog
### 6.3.2 ``` -------------------------- - Fix: adapt to pypy3.9's decorator tracing behavior. It now traces function decorators like CPython 3.8: both the -line and the def-line are traced. Fixes `issue 1326`_. - Debug: added ``pybehave`` to the list of :ref:`cmd_debug` and :ref:`cmd_run_debug` options. - Fix: show an intelligible error message if ``--concurrency=multiprocessing`` is used without a configuration file. Closes `issue 1320`_. .. _issue 1320: https://github.com/nedbat/coveragepy/issues/1320 .. _issue 1326: https://github.com/nedbat/coveragepy/issues/1326 .. _changes_631: ```Links
- PyPI: https://pypi.org/project/coverage - Changelog: https://pyup.io/changelogs/coverage/ - Repo: https://github.com/nedbat/coveragepyUpdate debugpy from 1.5.1 to 1.6.0.
Changelog
### 1.6.0 ``` **Python 3.6 and below is no longer supported. Python 2 is no longer supported at all.** Improvements: 170, 202, 213, 515, 678, 790, 800 Bug fixes: 770, 812, 815, 827, 837, 844, 854, 858 ```Links
- PyPI: https://pypi.org/project/debugpy - Changelog: https://pyup.io/changelogs/debugpy/ - Homepage: https://aka.ms/debugpyUpdate docutils from 0.17.1 to 0.18.1.
Changelog
### 0.18.1 ``` ============== .. Note:: Docutils 0.18.x is the last version supporting Python 2.7, 3.5, and 3.6. * nodes.Node.traverse() returns a list again to restore backwards compatibility (fixes bug 431). * Small bugfixes (see HISTORY_). ``` ### 0.18 ``` ========================= * Output changes: Identifiers: During `identifier normalization`_, leading number and hyphen characters are no longer stripped from a `reference name`_, if the id_prefix_ setting is non-empty. Example: with ``--id-prefix="DU-"``, a section with title "34. May" currently gets the identifier key ``DU-may`` and after the change the identifier key ``DU-34-may``. The default value for the auto_id_prefix_ setting changed to ``%``: "use the tag name as prefix for auto-generated IDs". Set auto_id_prefix_ to ``id`` for unchanged auto-IDs. HTML5: Use the semantic tag <aside> for footnote text and citations, topics (except abstract and toc), admonitions, and system messages. Use <nav> for the Table of Contents. Make "auto" table column widths the default: Only specify column widths, if the `"widths" option`_ is set and not "auto". The table-style__ setting "colwidths-grid" restores the current default. .. _"widths" option: __ docs/ref/rst/directives.htmltable __ docs/user/config.htmltable-style Items of a definition list with class argument "details" are converted to `details disclosure elements`_. Example:: ..class:: details Summary This additional information should be hidden. Do not add "compound-first", "compound-middle", or "compound-last" to elements nested in a compound. Use child selector and ":first-child", ":last-child" pseudo classes instead. Use class value "backrefs" instead of "fn-backref" for a span of back-references. Write footnote brackets and field term colons to HTML, so that they are present also without CSS and when copying text. Move space character between section number and heading into "sectnum" span. math-output: html Support more commands, fix mapping of commands to Unicode characters. Scale variable sized operators and big delimiters with CSS. Don't use <tt> element (deprecated in HTML5). Use STIX fonts if available. LaTeX: `legacy_class_functions`_ setting default changed to "False", admonitions are now environments. * New standard Docutils doctree node: <meta__>. * New configuration settings: [latex writers] legacy_column_widths_ and [html5 writer] image_loading_. * Removed files: ``iepngfix.htc`` and ``blank.gif`` (IE 6 workaround for `s5_html`). * Removed sub-module: ``parsers.rst.directives.html`` (Meta directive moved to ``parsers.rst.directives.misc``.) * Removed function: utils.unique_combinations() (obsoleted by itertools.combinations()). * Removed attribute: ``HTMLTranslator.topic_classes`` (check node.parent.classes instead). * Major refactoring and fixes/additions in ``docutils/utils/math/math2html.py`` and ``docutils/utils/math/latex2mathml.py`` (mathematical notation in HTML, cf. `LaTeX syntax for mathematics`_). * nodes.Node.traverse() returns an iterator instead of a list. * Various bugfixes and improvements (see HISTORY_). Fix spelling errors in documentation and docstrings. Thanks to Dimitri Papadopoulos. __ docs/ref/doctree.htmlmeta .. _identifier normalization: docs/ref/rst/directives.htmlidentifier-normalization .. _id_prefix: docs/user/config.htmlid-prefix .. _auto_id_prefix: docs/user/config.htmlauto-id-prefix .. _details disclosure elements: https://www.w3.org/TR/html52/interactive-elements.html#the-details-element .. _LaTeX syntax for mathematics: docs/ref/rst/mathematics.html .. _legacy_column_widths: docs/user/config.htmllegacy-column-widths ```Links
- PyPI: https://pypi.org/project/docutils - Changelog: https://pyup.io/changelogs/docutils/ - Homepage: http://docutils.sourceforge.net/Update exchange-calendars from 3.5.1 to 3.6.1.
Changelog
### 3.6.1 ``` Calendar Updates * Added missing XKRX holidays (2022-03-09 and 2022-06-01) by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/150 * Add missing Qingming and Labor Day holidays in XSHG. by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/156 * Add special open for BVMF on Ash Wednesday by pbabics in https://github.com/gerrymanoim/exchange_calendars/pull/154 * Attempt to fix Korean lunar calendar bug. by philiptromans in https://github.com/gerrymanoim/exchange_calendars/pull/152 Dev updates * Bump actions/checkout from 2.4.0 to 3 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/153 * Bump actions/setup-python from 2.3.2 to 3 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/151 **Full Changelog**: https://github.com/gerrymanoim/exchange_calendars/compare/3.6...3.6.1 ``` ### 3.6 ``` Holiday Updates * Fix XTKS 2022 holidays according to JPX calendar by beppe712 in https://github.com/gerrymanoim/exchange_calendars/pull/135 * XLON: Add Platinum Jubilee Day and move Spring Bank Holiday. by jenskeiner in https://github.com/gerrymanoim/exchange_calendars/pull/141 * ENH: Add "2022-01-27" as a holiday in XTAI by wec7 in https://github.com/gerrymanoim/exchange_calendars/pull/140 * Added public holidays before 1999 in XSHG. by qiuwei in https://github.com/gerrymanoim/exchange_calendars/pull/147 Dev Changes * Bump actions/setup-python from 2.3.1 to 2.3.2 by dependabot in https://github.com/gerrymanoim/exchange_calendars/pull/144 * TST: bump pandas and fix resulting test failures by gerrymanoim in https://github.com/gerrymanoim/exchange_calendars/pull/146 * TST: add py10 to the testing ci by gerrymanoim in https://github.com/gerrymanoim/exchange_calendars/pull/149 New Contributors * beppe712 made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/135 * wec7 made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/140 * qiuwei made their first contribution in https://github.com/gerrymanoim/exchange_calendars/pull/147 **Full Changelog**: https://github.com/gerrymanoim/exchange_calendars/compare/3.5.1...3.6 ```Links
- PyPI: https://pypi.org/project/exchange-calendars - Changelog: https://pyup.io/changelogs/exchange-calendars/ - Repo: https://github.com/gerrymanoim/exchange_calendarsUpdate executing from 0.8.2 to 0.8.3.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/executing - Changelog: https://pyup.io/changelogs/executing/ - Repo: https://github.com/alexmojaki/executingUpdate filelock from 3.4.2 to 3.6.0.
Changelog
### 3.6.0 ``` ------------------- - Fix pylint warning "Abstract class :class:`WindowsFileLock <filelock.WindowsFileLock>` with abstract methods instantiated" :pr:`135` - by :user:`vonschultz` - Fix pylint warning "Abstract class :class:`UnixFileLock <filelock.UnixFileLock>` with abstract methods instantiated" :pr:`135` - by :user:`vonschultz` ``` ### 3.5.1 ``` ------------------- - Use ``time.monotonic`` instead of ``time.time`` for calculating timeouts. ``` ### 3.5.0 ``` ------------------- - Enable use as context decorator ```Links
- PyPI: https://pypi.org/project/filelock - Changelog: https://pyup.io/changelogs/filelock/ - Repo: https://github.com/tox-dev/py-filelock/archive/main.zipUpdate finnhub-python from 2.4.10 to 2.4.13.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/finnhub-python - Changelog: https://pyup.io/changelogs/finnhub-python/ - Homepage: https://finnhub.io/docs/apiUpdate fonttools from 4.29.1 to 4.33.3.
Changelog
### 4.33.3 ``` ---------------------------- - [designspaceLib] Fixed typo in ``deepcopyExceptFonts`` method, preventing font references to be transferred (2600). Fixed another typo in the name of ``Range`` dataclass's ``__post_init__`` magic method (2597). ``` ### 4.33.2 ``` ---------------------------- - [otBase] Make logging less verbose when harfbuzz fails to serialize. Do not exit at the first failure but continue attempting to fix offset overflow error using the pure-python serializer even when the ``USE_HARFBUZZ_REPACKER`` option was explicitly set to ``True``. This is normal with fonts with relatively large tables, at least until hb.repack implements proper table splitting. ``` ### 4.33.1 ``` ---------------------------- - [otlLib] Put back the ``FONTTOOLS_GPOS_COMPACT_MODE`` environment variable to fix regression in ufo2ft (and thus fontmake) introduced with v4.33.0 (2592, 2593). This is deprecated and will be removed one ufo2ft gets updated to use the new config setup. ``` ### 4.33.0 ``` ---------------------------- - [OS/2 / merge] Automatically recalculate ``OS/2.xAvgCharWidth`` after merging fonts with ``fontTools.merge`` (2591, 2538). - [misc/config] Added ``fontTools.misc.configTools`` module, a generic configuration system (2416, 2439). Added ``fontTools.config`` module, a fontTools-specific configuration system using ``configTools`` above. Attached a ``Config`` object to ``TTFont``. - [otlLib] Replaced environment variable for GPOS compression level with an equivalent option using the new config system. - [designspaceLib] Incremented format version to 5.0 (2436). Added discrete axes, variable fonts, STAT information, either design- or user-space location on instances. Added ``fontTools.designspaceLib.split`` module to split a designspace into sub-spaces that interpolate and that represent the variable fonts listed in the document. Made instance names optional and allow computing them from STAT data instead. Added ``fontTools.designspaceLib.statNames`` module. Allow instances to have the same location as a previously defined STAT label. Deprecated some attributes: ``SourceDescriptor``: ``copyLib``, ``copyInfo``, ``copyGroups``, ``copyFeatures``. ``InstanceDescriptor``: ``kerning``, ``info``; ``glyphs``: use rules or sparse sources. For both, ``location``: use the more explicit designLocation. Note: all are soft deprecations and existing code should keep working. Updated documentation for Python methods and the XML format. - [varLib] Added ``build_many`` to build several variable fonts from a single designspace document (2436). Added ``fontTools.varLib.stat`` module to build STAT tables from a designspace document. - [otBase] Try to use the Harfbuzz Repacker for packing GSUB/GPOS tables when ``uharfbuzz`` python bindings are available (2552). Disable it by setting the "fontTools.ttLib.tables.otBase:USE_HARFBUZZ_REPACKER" config option to ``False``. If the option is set explicitly to ``True`` but ``uharfbuzz`` can't be imported or fails to serialize for any reasons, an error will be raised (ImportError or uharfbuzz errors). - [CFF/T2] Ensure that ``pen.closePath()`` gets called for CFF2 charstrings (2577). Handle implicit CFF2 closePath within ``T2OutlineExtractor`` (2580). ``` ### 4.32.0 ``` ---------------------------- - [otlLib] Disable GPOS7 optimization to work around bug in Apple CoreText. Always force Chaining GPOS8 for now (2540). - [glifLib] Added ``outputImpliedClosingLine=False`` parameter to ``Glyph.draw()``, to control behaviour of ``PointToSegmentPen`` (6b4e2e7). - [varLib.interpolatable] Check for wrong contour starting point (2571). - [cffLib] Remove leftover ``GlobalState`` class and fix calls to ``TopDictIndex()`` (2569, 2570). - [instancer] Clear ``AxisValueArray`` if it is empty after instantiating (2563). ``` ### 4.31.2 ``` ---------------------------- - [varLib] fix instantiation of GPOS SinglePos values (2555). ``` ### 4.31.1 ``` ---------------------------- - [subset] fix subsetting OT-SVG when glyph id attribute is on the root ``<svg>`` element (2553). ``` ### 4.31.0 ``` ---------------------------- - [ttCollection] Fixed 'ResourceWarning: unclosed file' warning (2549). - [varLib.merger] Handle merging SinglePos with valueformat=0 (2550). - [ttFont] Update glyf's glyphOrder when calling TTFont.setGlyphOrder() (2544). - [ttFont] Added ``ensureDecompiled`` method to load all tables irrespective of the ``lazy`` attribute (2551). - [otBase] Added ``iterSubTable`` method to iterate over BaseTable's children of type BaseTable; useful for traversing a tree of otTables (2551). ``` ### 4.30.0 ``` ---------------------------- - [varLib] Added debug logger showing the glyph name for which ``gvar`` is built (2542). - [varLib.errors] Fixed undefined names in ``FoundANone`` and ``UnsupportedFormat`` exceptions (ac4d5611). - [otlLib.builder] Added ``windowsNames`` and ``macNames`` (bool) parameters to the ``buildStatTabe`` function, so that one can select whether to only add one or both of the two sets (2528). - [t1Lib] Added the ability to recreate PostScript stream (2504). - [name] Added ``getFirstDebugName``, ``getBest{Family,SubFamily,Full}Name`` methods (2526). ```Links
- PyPI: https://pypi.org/project/fonttools - Changelog: https://pyup.io/changelogs/fonttools/ - Repo: http://github.com/fonttools/fonttoolsUpdate GitPython from 3.1.26 to 3.1.27.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/gitpython - Repo: https://github.com/gitpython-developers/GitPython - Docs: https://pythonhosted.org/GitPython/Update google-api-core from 1.31.5 to 2.7.3.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/google-api-core - Repo: https://github.com/googleapis/python-api-coreUpdate google-auth from 1.35.0 to 2.6.6.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/google-auth - Changelog: https://pyup.io/changelogs/google-auth/ - Repo: https://github.com/googleapis/google-auth-library-pythonUpdate google-cloud-appengine-logging from 1.1.0 to 1.1.1.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/google-cloud-appengine-logging - Repo: https://github.com/googleapis/python-appengine-loggingUpdate google-cloud-core from 1.7.2 to 2.3.0.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/google-cloud-core - Repo: https://github.com/googleapis/python-cloud-coreUpdate google-cloud-monitoring from 0.36.0 to 2.9.1.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/google-cloud-monitoring - Repo: https://github.com/googleapis/python-monitoringUpdate google-cloud-trace from 0.24.0 to 1.6.1.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/google-cloud-trace - Repo: https://github.com/googleapis/python-traceUpdate googleapis-common-protos from 1.54.0 to 1.56.0.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/googleapis-common-protos - Repo: https://github.com/googleapis/python-api-common-protosUpdate grpc-google-iam-v1 from 0.12.3 to 0.12.4.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/grpc-google-iam-v1 - Repo: https://github.com/googleapis/python-grpc-google-iam-v1Update grpcio from 1.44.0 to 1.46.0.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/grpcio - Homepage: https://grpc.ioUpdate hypothesis from 6.39.3 to 6.46.2.
Changelog
### 6.46.2 ``` ------------------- This patch fixes silently dropping examples when the :func:`example <hypothesis.example>` decorator is applied to itself (:issue:`3319`). This was always a weird pattern, but now it works. Thanks to Ray Sogata, Keeri Tramm, and Kevin Khuong for working on this patch! ``` ### 6.46.1 ``` ------------------- This patch fixes a rare bug where we could incorrectly treat :obj:`~python:inspect.Parameter.empty` as a type annotation, if the callable had an explicitly assigned ``__signature__``. ``` ### 6.46.0 ``` ------------------- This release adds an ``allow_nil`` argument to :func:`~hypothesis.strategies.uuids`, which you can use to... generate the nil UUID. Thanks to Shlok Gandhi for the patch! ``` ### 6.45.4 ``` ------------------- This patch fixes some missing imports for certain :doc:`Ghostwritten <ghostwriter>` tests. Thanks to Mel Seto for fixing :issue:`3316`. ``` ### 6.45.3 ``` ------------------- This patch teaches :doc:`the Ghostwriter <ghostwriter>` to recognize many more common argument names (:issue:`3311`). ``` ### 6.45.2 ``` ------------------- This patch fixes :issue:`3314`, where Hypothesis would raise an internal error from :func:`~hypothesis.provisional.domains` or (only on Windows) from :func:`~hypothesis.strategies.timezones` in some rare circumstances where the installation was subtly broken. Thanks to Munir Abdinur for this contribution. ``` ### 6.45.1 ``` ------------------- This release fixes deprecation warnings about ``sre_compile`` and ``sre_parse`` imports and ``importlib.resources`` usage when running Hypothesis on Python 3.11. Thanks to Florian Bruhin for this contribution. ``` ### 6.45.0 ``` ------------------- This release updates :func:`xps.indices` by introducing an ``allow_newaxis`` argument, defaulting to ``False``. If ``allow_newaxis=True``, indices can be generated that add dimensions to arrays, which is achieved by the indexer containing ``None``. This change is to support a specification change that expand dimensions via indexing (`data-apis/array-api408 <https://github.com/data-apis/array-api/pull/408>`_). ``` ### 6.44.0 ``` ------------------- This release adds a ``names`` argument to :func:`~hypothesis.extra.pandas.indexes` and :func:`~hypothesis.extra.pandas.series`, so that you can create Pandas objects with specific or varied names. Contributed by Sam Watts. ``` ### 6.43.3 ``` ------------------- This patch updates the type annotations for :func:`given <hypothesis.given>` so that type-checkers will warn on mixed positional and keyword arguments, as well as fixing :issue:`3296`. ``` ### 6.43.2 ``` ------------------- Fixed a type annotation for ``pyright --strict`` (:issue:`3287`). ``` ### 6.43.1 ``` ------------------- This patch makes it an explicit error to call :func:`~hypothesis.strategies.register_type_strategy` with a `Pydantic GenericModel <https://pydantic-docs.helpmanual.io/usage/models/#generic-models>`__ and a callable, because ``GenericModel`` isn't actually a generic type at runtime and so you have to register each of the "parametrized versions" (actually subclasses!) manually. See :issue:`2940` for more details. ``` ### 6.43.0 ``` ------------------- This release makes it an explicit error to apply :func:`pytest.fixture <pytest:pytest.fixture>` to a function which has already been decorated with :func:`given() <hypothesis.given>`. Previously, ``pytest`` would convert your test to a fixture, and then never run it. ``` ### 6.42.3 ``` ------------------- This patch fixes :func:`~hypothesis.strategies.from_type` on a :class:`~python:typing.TypedDict` with complex annotations, defined in a file using ``from __future__ import annotations``. Thanks to Katelyn Gigante for identifying and fixing this bug! ``` ### 6.42.2 ``` ------------------- The Hypothesis pytest plugin was not outputting valid xunit2 nodes when ``--junit-xml`` was specified. This has been broken since Pytest 5.4, which changed the internal API for adding nodes to the junit report. This also fixes the issue when using hypothesis with ``--junit-xml`` and ``pytest-xdist`` where the junit xml report would not be xunit2 compatible. Now, when using with ``pytest-xdist``, the junit report will just omit the ``<properties>`` node. For more details, see `this pytest issue <https://github.com/pytest-dev/pytest/issues/1126#issuecomment-484581283>`__, `this pytest issue <https://github.com/pytest-dev/pytest/issues/7767#issuecomment-1082436256>`__, and :issue:`1935` Thanks to Brandon Chinn for this bug fix! ``` ### 6.42.1 ``` ------------------- This patch fixes pretty-printing of regular expressions in Python 3.11.0a7, and updates our vendored `list of top-level domains <https://www.iana.org/domains/root/db>`__,. ``` ### 6.42.0 ``` ------------------- This release makes ``st.functions(pure=True)`` less noisy (:issue:`3253`), and generally improves pretty-printing of functions. ``` ### 6.41.0 ``` ------------------- This release changes the implementation of :c