Changelog
### 5.7.3
```
=====
2020-10-23
**Enhancements**
- 809_: [FreeBSD] add support for `Process.rlimit()`.
- 893_: [BSD] add support for `Process.environ()` (patch by Armin Gruner)
- 1830_: [UNIX] `net_if_stats()`'s `isup` also checks whether the NIC is
running (meaning Wi-Fi or ethernet cable is connected). (patch by Chris Burger)
- 1837_: [Linux] improved battery detection and charge "secsleft" calculation
(patch by aristocratos)
**Bug fixes**
- 1620_: [Linux] physical cpu_count() result is incorrect on systems with more
than one CPU socket. (patch by Vincent A. Arcila)
- 1738_: [macOS] Process.exe() may raise FileNotFoundError if process is still
alive but the exe file which launched it got deleted.
- 1791_: [macOS] fix missing include for getpagesize().
- 1823_: [Windows] Process.open_files() may cause a segfault due to a NULL
pointer.
- 1838_: [Linux] sensors_battery(): if `percent` can be determined but not
the remaining values, still return a result instead of None.
(patch by aristocratos)
```
Links
- PyPI: https://pypi.org/project/psutil
- Changelog: https://pyup.io/changelogs/psutil/
- Repo: https://github.com/giampaolo/psutil
Changelog
### 2.7.2
```
-------------
(released October 24, 2020)
- Updated lexers:
* Latex (PR1517, 1516)
* LLVM (PR1565)
* SPARQL (PR1559)
- Fixed Python console/traceback lexer problems with
custom exceptions without messages (1548)
- Allow loading ttc fonts on Mac/image formatter (1223)
- Improve ``analyze_text`` across a variety of lexers (PR1549)
- Removed CSS rule which forced the vertical padding to 0 for line numbers (PR1583, 1579)
- Fix ``TNTLexer`` crashing on unexpected EOL (1568, PR1570)
- ``regexlint`` can be now run locally as part of ``tox`` tests (PR1557)
- Fix typos (PR1550, 1562)
- Add Python 3.9 as a supported version (PR1554)
```
Links
- PyPI: https://pypi.org/project/pygments
- Changelog: https://pyup.io/changelogs/pygments/
- Homepage: https://pygments.org/
Changelog
### 2.5.2
```
----------
- [fix] Status checks for running postgres depend on pg_ctl status code,
not on pg_ctl log language. Fixes starting on systems without C locale.
Thanks Martin Meyries.
```
Links
- PyPI: https://pypi.org/project/pytest-postgresql
- Changelog: https://pyup.io/changelogs/pytest-postgresql/
- Repo: https://github.com/ClearcodeHQ/pytest-postgresql
Changelog
### 1.3.20
```
:released: October 12, 2020
.. change::
:tags: bug, orm
:tickets: 4428
An :class:`.ArgumentError` with more detail is now raised if the target
parameter for :meth:`_query.Query.join` is set to an unmapped object.
Prior to this change a less detailed ``AttributeError`` was raised.
Pull request courtesy Ramon Williams.
.. change::
:tags: bug, mysql
:tickets: 5568
The "skip_locked" keyword used with ``with_for_update()`` will emit a
warning when used on MariaDB backends, and will then be ignored. This is
a deprecated behavior that will raise in SQLAlchemy 1.4, as an application
that requests "skip locked" is looking for a non-blocking operation which
is not available on those backends.
.. change::
:tags: bug, engine
:tickets: 5599
Fixed issue where a non-string object sent to
:class:`_exc.SQLAlchemyError` or a subclass, as occurs with some third
party dialects, would fail to stringify correctly. Pull request
courtesy Andrzej Bartosiński.
.. change::
:tags: bug, sql
:tickets: 5644
Fixed issue where the ``pickle.dumps()`` operation against
:class:`_expression.Over` construct would produce a recursion overflow.
.. change::
:tags: postgresql, usecase
:tickets: 4392
The psycopg2 dialect now support PostgreSQL multiple host connections, by
passing host/port combinations to the query string. Pull request courtesy
Ramon Williams.
.. seealso::
:ref:`psycopg2_multi_host`
.. change::
:tags: bug, mysql
:tickets: 5617
Fixed bug where an UPDATE statement against a JOIN using MySQL multi-table
format would fail to include the table prefix for the target table if the
statement had no WHERE clause, as only the WHERE clause were scanned to
detect a "multi table update" at that particular point. The target
is now also scanned if it's a JOIN to get the leftmost table as the
primary table and the additional entries as additional FROM entries.
.. change::
:tags: bug, postgresql
:tickets: 5518
Adjusted the :meth:`_types.ARRAY.Comparator.any` and
:meth:`_types.ARRAY.Comparator.all` methods to implement a straight "NOT"
operation for negation, rather than negating the comparison operator.
.. change::
:tags: bug, pool
:tickets: 5582
Fixed issue where the following pool parameters were not being propagated
to the new pool created when :meth:`_engine.Engine.dispose` were called:
``pre_ping``, ``use_lifo``. Additionally the ``recycle`` and
``reset_on_return`` parameter is now propagated for the
:class:`_engine.AssertionPool` class.
.. change::
:tags: bug, ext, associationproxy
:tickets: 5541, 5542
An informative error is now raised when attempting to use an association
proxy element as a plain column expression to be SELECTed from or used in a
SQL function; this use case is not currently supported.
.. change::
:tags: bug, sql
:tickets: 5618
Fixed bug where an error was not raised in the case where a
:func:`_sql.column` were added to more than one :func:`_sql.table` at a
time. This raised correctly for the :class:`_schema.Column` and
:class:`_schema.Table` objects. An :class:`_exc.ArgumentError` is now
raised when this occurs.
.. change::
:tags: bug, orm
:tickets: 4589
Fixed issue where using a loader option against a string attribute name
that is not actually a mapped attribute, such as a plain Python descriptor,
would raise an uninformative AttributeError; a descriptive error is now
raised.
.. change::
:tags: mysql, usecase
:tickets: 5462
Adjusted the MySQL dialect to correctly parenthesize functional index
expressions as accepted by MySQL 8. Pull request courtesy Ramon Williams.
.. change::
:tags: bug, engine
:tickets: 5632
Repaired a function-level import that was not using SQLAlchemy's standard
late-import system within the sqlalchemy.exc module.
.. change::
:tags: change, mysql
:tickets: 5539
Add new MySQL reserved words: ``cube``, ``lateral`` added in MySQL 8.0.1
and 8.0.14, respectively; this indicates that these terms will be quoted if
used as table or column identifier names.
.. change::
:tags: bug, mssql
:tickets: 5592
Fixed issue where a SQLAlchemy connection URI for Azure DW with
``authentication=ActiveDirectoryIntegrated`` (and no username+password)
was not constructing the ODBC connection string in a way that was
acceptable to the Azure DW instance.
.. change::
:tags: bug, postgresql
:tickets: 5520
Fixed issue where the :class:`_postgresql.ENUM` type would not consult the
schema translate map when emitting a CREATE TYPE or DROP TYPE during the
test to see if the type exists or not. Additionally, repaired an issue
where if the same enum were encountered multiple times in a single DDL
sequence, the "check" query would run repeatedly rather than relying upon a
cached value.
.. change::
:tags: bug, tests
:tickets: 5635
Fixed incompatibilities in the test suite when running against Pytest 6.x.
.. changelog::
```
Links
- PyPI: https://pypi.org/project/sqlalchemy
- Changelog: https://pyup.io/changelogs/sqlalchemy/
- Homepage: http://www.sqlalchemy.org
Changelog
### 1.25.11
```
--------------------
* Fix retry backoff time parsed from ``Retry-After`` header when given
in the HTTP date format. The HTTP date was parsed as the local timezone
rather than accounting for the timezone in the HTTP date (typically
UTC) (Pull 1932, Pull 1935, Pull 1938, Pull 1949)
* Fix issue where an error would be raised when the ``SSLKEYLOGFILE``
environment variable was set to the empty string. Now ``SSLContext.keylog_file``
is not set in this situation (Pull 2016)
```
Links
- PyPI: https://pypi.org/project/urllib3
- Changelog: https://pyup.io/changelogs/urllib3/
- Docs: https://urllib3.readthedocs.io/
Update beautifulsoup4 from 4.9.2 to 4.9.3.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/beautifulsoup4 - Homepage: http://www.crummy.com/software/BeautifulSoup/bs4/Update Markdown from 3.2.2 to 3.3.3.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/markdown - Repo: https://Python-Markdown.github.io/Update more-itertools from 8.5.0 to 8.6.0.
Changelog
### 8.6.0 ``` See the [changelog](https://github.com/more-itertools/more-itertools/blob/4d2e1db8eced66fa797832b2b2d720b4f6ae6483/docs/versions.rst860) for details. ```Links
- PyPI: https://pypi.org/project/more-itertools - Changelog: https://pyup.io/changelogs/more-itertools/ - Repo: https://github.com/more-itertools/more-itertools - Docs: https://pythonhosted.org/more-itertools/Update passlib from 1.7.2 to 1.7.4.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/passlib - Docs: https://passlib.readthedocs.ioUpdate psutil from 5.7.2 to 5.7.3.
Changelog
### 5.7.3 ``` ===== 2020-10-23 **Enhancements** - 809_: [FreeBSD] add support for `Process.rlimit()`. - 893_: [BSD] add support for `Process.environ()` (patch by Armin Gruner) - 1830_: [UNIX] `net_if_stats()`'s `isup` also checks whether the NIC is running (meaning Wi-Fi or ethernet cable is connected). (patch by Chris Burger) - 1837_: [Linux] improved battery detection and charge "secsleft" calculation (patch by aristocratos) **Bug fixes** - 1620_: [Linux] physical cpu_count() result is incorrect on systems with more than one CPU socket. (patch by Vincent A. Arcila) - 1738_: [macOS] Process.exe() may raise FileNotFoundError if process is still alive but the exe file which launched it got deleted. - 1791_: [macOS] fix missing include for getpagesize(). - 1823_: [Windows] Process.open_files() may cause a segfault due to a NULL pointer. - 1838_: [Linux] sensors_battery(): if `percent` can be determined but not the remaining values, still return a result instead of None. (patch by aristocratos) ```Links
- PyPI: https://pypi.org/project/psutil - Changelog: https://pyup.io/changelogs/psutil/ - Repo: https://github.com/giampaolo/psutilUpdate Pygments from 2.7.1 to 2.7.2.
Changelog
### 2.7.2 ``` ------------- (released October 24, 2020) - Updated lexers: * Latex (PR1517, 1516) * LLVM (PR1565) * SPARQL (PR1559) - Fixed Python console/traceback lexer problems with custom exceptions without messages (1548) - Allow loading ttc fonts on Mac/image formatter (1223) - Improve ``analyze_text`` across a variety of lexers (PR1549) - Removed CSS rule which forced the vertical padding to 0 for line numbers (PR1583, 1579) - Fix ``TNTLexer`` crashing on unexpected EOL (1568, PR1570) - ``regexlint`` can be now run locally as part of ``tox`` tests (PR1557) - Fix typos (PR1550, 1562) - Add Python 3.9 as a supported version (PR1554) ```Links
- PyPI: https://pypi.org/project/pygments - Changelog: https://pyup.io/changelogs/pygments/ - Homepage: https://pygments.org/Update pytest from 6.1.0 to 6.1.2.
The bot wasn't able to find a changelog for this release. Got an idea?
Links
- PyPI: https://pypi.org/project/pytest - Homepage: https://docs.pytest.org/en/latest/Update pytest-postgresql from 2.5.1 to 2.5.2.
Changelog
### 2.5.2 ``` ---------- - [fix] Status checks for running postgres depend on pg_ctl status code, not on pg_ctl log language. Fixes starting on systems without C locale. Thanks Martin Meyries. ```Links
- PyPI: https://pypi.org/project/pytest-postgresql - Changelog: https://pyup.io/changelogs/pytest-postgresql/ - Repo: https://github.com/ClearcodeHQ/pytest-postgresqlUpdate python-dotenv from 0.14.0 to 0.15.0.
Changelog
Links
- PyPI: https://pypi.org/project/python-dotenv - Changelog: https://pyup.io/changelogs/python-dotenv/ - Repo: https://github.com/theskumar/python-dotenvUpdate SQLAlchemy from 1.3.19 to 1.3.20.
Changelog
### 1.3.20 ``` :released: October 12, 2020 .. change:: :tags: bug, orm :tickets: 4428 An :class:`.ArgumentError` with more detail is now raised if the target parameter for :meth:`_query.Query.join` is set to an unmapped object. Prior to this change a less detailed ``AttributeError`` was raised. Pull request courtesy Ramon Williams. .. change:: :tags: bug, mysql :tickets: 5568 The "skip_locked" keyword used with ``with_for_update()`` will emit a warning when used on MariaDB backends, and will then be ignored. This is a deprecated behavior that will raise in SQLAlchemy 1.4, as an application that requests "skip locked" is looking for a non-blocking operation which is not available on those backends. .. change:: :tags: bug, engine :tickets: 5599 Fixed issue where a non-string object sent to :class:`_exc.SQLAlchemyError` or a subclass, as occurs with some third party dialects, would fail to stringify correctly. Pull request courtesy Andrzej Bartosiński. .. change:: :tags: bug, sql :tickets: 5644 Fixed issue where the ``pickle.dumps()`` operation against :class:`_expression.Over` construct would produce a recursion overflow. .. change:: :tags: postgresql, usecase :tickets: 4392 The psycopg2 dialect now support PostgreSQL multiple host connections, by passing host/port combinations to the query string. Pull request courtesy Ramon Williams. .. seealso:: :ref:`psycopg2_multi_host` .. change:: :tags: bug, mysql :tickets: 5617 Fixed bug where an UPDATE statement against a JOIN using MySQL multi-table format would fail to include the table prefix for the target table if the statement had no WHERE clause, as only the WHERE clause were scanned to detect a "multi table update" at that particular point. The target is now also scanned if it's a JOIN to get the leftmost table as the primary table and the additional entries as additional FROM entries. .. change:: :tags: bug, postgresql :tickets: 5518 Adjusted the :meth:`_types.ARRAY.Comparator.any` and :meth:`_types.ARRAY.Comparator.all` methods to implement a straight "NOT" operation for negation, rather than negating the comparison operator. .. change:: :tags: bug, pool :tickets: 5582 Fixed issue where the following pool parameters were not being propagated to the new pool created when :meth:`_engine.Engine.dispose` were called: ``pre_ping``, ``use_lifo``. Additionally the ``recycle`` and ``reset_on_return`` parameter is now propagated for the :class:`_engine.AssertionPool` class. .. change:: :tags: bug, ext, associationproxy :tickets: 5541, 5542 An informative error is now raised when attempting to use an association proxy element as a plain column expression to be SELECTed from or used in a SQL function; this use case is not currently supported. .. change:: :tags: bug, sql :tickets: 5618 Fixed bug where an error was not raised in the case where a :func:`_sql.column` were added to more than one :func:`_sql.table` at a time. This raised correctly for the :class:`_schema.Column` and :class:`_schema.Table` objects. An :class:`_exc.ArgumentError` is now raised when this occurs. .. change:: :tags: bug, orm :tickets: 4589 Fixed issue where using a loader option against a string attribute name that is not actually a mapped attribute, such as a plain Python descriptor, would raise an uninformative AttributeError; a descriptive error is now raised. .. change:: :tags: mysql, usecase :tickets: 5462 Adjusted the MySQL dialect to correctly parenthesize functional index expressions as accepted by MySQL 8. Pull request courtesy Ramon Williams. .. change:: :tags: bug, engine :tickets: 5632 Repaired a function-level import that was not using SQLAlchemy's standard late-import system within the sqlalchemy.exc module. .. change:: :tags: change, mysql :tickets: 5539 Add new MySQL reserved words: ``cube``, ``lateral`` added in MySQL 8.0.1 and 8.0.14, respectively; this indicates that these terms will be quoted if used as table or column identifier names. .. change:: :tags: bug, mssql :tickets: 5592 Fixed issue where a SQLAlchemy connection URI for Azure DW with ``authentication=ActiveDirectoryIntegrated`` (and no username+password) was not constructing the ODBC connection string in a way that was acceptable to the Azure DW instance. .. change:: :tags: bug, postgresql :tickets: 5520 Fixed issue where the :class:`_postgresql.ENUM` type would not consult the schema translate map when emitting a CREATE TYPE or DROP TYPE during the test to see if the type exists or not. Additionally, repaired an issue where if the same enum were encountered multiple times in a single DDL sequence, the "check" query would run repeatedly rather than relying upon a cached value. .. change:: :tags: bug, tests :tickets: 5635 Fixed incompatibilities in the test suite when running against Pytest 6.x. .. changelog:: ```Links
- PyPI: https://pypi.org/project/sqlalchemy - Changelog: https://pyup.io/changelogs/sqlalchemy/ - Homepage: http://www.sqlalchemy.orgUpdate urllib3 from 1.25.10 to 1.25.11.
Changelog
### 1.25.11 ``` -------------------- * Fix retry backoff time parsed from ``Retry-After`` header when given in the HTTP date format. The HTTP date was parsed as the local timezone rather than accounting for the timezone in the HTTP date (typically UTC) (Pull 1932, Pull 1935, Pull 1938, Pull 1949) * Fix issue where an error would be raised when the ``SSLKEYLOGFILE`` environment variable was set to the empty string. Now ``SSLContext.keylog_file`` is not set in this situation (Pull 2016) ```Links
- PyPI: https://pypi.org/project/urllib3 - Changelog: https://pyup.io/changelogs/urllib3/ - Docs: https://urllib3.readthedocs.io/