【参考】SDK Core が利用する pythonモジュール差分について
v22系からv23.1LTSのpythonモジュールの差分について記載します。ユーザアプリケーションでこれらのモジュールを利用されいている場合は、それぞれの差分に注意してください。
aiohttp 3.8.1 → 3.8.3
https://github.com/aio-libs/aiohttp/releases
- 影響はありません。
aiomysql 0.0.22 → 0.1.1
https://github.com/aio-libs/aiomysql/releases
- Remove deprecated no_delay argument #702 (Core)
- SDK core側に影響はありません。
- aiomysqlをユーザー側コードでimportして利用している場合、上記変更が含まれますのでご注意ください。
aiopg N/A → 1.3.5
v23.1よりPostgreSQLの非同期ドライバであるaiopg moduleをSDK Core側でデフォルト利用します。
psycopg2-binary N/A → 2.9.4
aiopg 1.3.5依存パッケージとしてpsycopg2-binary 2.9.1が指定されています。
SDK Coreではpsycopg2-binary 2.9.4を再指定しています。
aiosmtplib 1.1.6 → 2.0.0
https://github.com/cole/aiosmtplib/releases
- BREAKING: Drop Python 3.5 and 3.6 support.
- BREAKING: On connect, if the server supports STARTTLS, automatically try to upgrade the connection. STARTTLS after connect can be turned on or off explicitly by passing
start_tls=True
orstart_tls=False
respectively. - BREAKING: Remove deprecated
loop
keyword argument for the SMTP class. - SDK Core側に影響はありません。
- aiosmtplibをユーザー側コードでimportしてご利用いただく場合、上記変更が含まれますのでご注意ください。
aiofiles 0.8.0 → 22.1.0
https://github.com/Tinche/aiofiles/tree/v22.1.0
- 影響はありません。
aniso8601 3.0.2 → 9.0.1
grapheneの依存moduleとしてインストールされます。
aniso8601のバージョンはSDK Coreとして明示的に記載していないため、あくまで参考情報扱いとなります。環境変更後、より最新バージョンのaniso8601がインストールされる場合がございます。
asyncssh 1.18.0 → 2.13.0
https://asyncssh.readthedocs.io/en/latest/changes.html
- Updated AsyncSSH to use the modern async/await syntax internally, now requiring Python 3.6 or later. Those wishing to use AsyncSSH on Python 3.4 or 3.5 should stick to the AsyncSSH 1.x releases.
- Changed first argument of SFTPServer constructor from an SSHServerConnection (conn) to an SSHServerChannel (chan) to allow custom SFTP server implementations to access environment variables set on the channel that SFTP is run over. Applications which subclass the SFTPServer class and implement an init method will need to be updated to account for this change and pass the new argument through to the SFTPServer parent class. If the subclass has no init and just uses the connection, channel, and env properties of SFTPServer to access this information, no changes should be required.
- Removed deprecated “session_encoding” and “session_errors” arguments from create_server() and listen() functions. These arguments were renamed to “encoding” and “errors” back in version 1.16.0 to be consistent with other AsyncSSH APIs.
- Removed get_environment(), get_command(), and get_subsystem() methods on SSHServerProcess class. This information was made available as “env”, “command”, and “subsystem” properties of SSHServerProcess in AsyncSSH 1.11.0.
- Removed optional loop argument from all public AsyncSSH APIs, consistent with the deprecation of this argument in the asyncio package in Python 3.8. Calls will now always use the event loop which is active at the time of the call.
- Removed support for non-async context managers on AsyncSSH connections and processes and SFTP client connections and file objects. Callers should use “async with” to invoke the async the context managers on these objects.
- SDK Core側には影響ありません。
- asyncsshをユーザー側コードでimportしてご利用いただく場合、上記変更が含まれますのでご注意ください。
cffi 1.14.6 → 1.15.0
https://cffi.readthedocs.io/en/latest/whatsnew.html
- 影響はありません。
Cython 0.29.26 → 0.29.32
https://cython.readthedocs.io/en/latest/src/changes.html
- 影響はありません。
graphene 2.1.8 → N/A
graphene-sqlalchemy 2.3.0の依存パッケージとして2.1.3以上3未満のバージョンがインストールされます。
graphene 2.1.9では
graphql-core>=2.1,<3
graphql-relay>=2,<3
aniso8601>=3,<=7
が依存moduleとなっています。
https://github.com/graphql-python/graphene/blob/v2.1.9/setup.py
grapheneのバージョンはSDK Coreとして明示的に記載していないため、あくまで参考情報扱いとなります。環境変更後、より最新バージョンのgrapheneがインストールされる場合がございます。
graphene-sqlalchemy 2.2.2 → 2.3.0
graphene 2.1.3以上3未満のバージョンが依存moduleとなっています。
https://github.com/graphql-python/graphene-sqlalchemy/blob/20ecaeadf2144b88555a3daf1a04e31b7f2ff95a/setup.py#L16
graphql-core 2.2.1 → N/A
grapheneの依存moduleとしてインストールされます。
graphene-coreのバージョンはSDK Coreとして明示的に記載していないため、あくまで参考情報扱いとなります。環境変更後、より最新バージョンのgraphene-coreがインストールされる場合がございます。
graphql-relay 2.0.0 → N/A
grapheneの依存moduleとしてインストールされます。
graphene-relayのバージョンはSDK Coreとして明示的に記載していないため、あくまで参考情報扱いとなります。環境変更後、より最新バージョンのgraphene-relayがインストールされる場合がございます。
Jinja2 3.0.3 → 3.1.2
https://jinja.palletsprojects.com/en/3.1.x/changes/
- Remove previously deprecated code. #1544
WithExtension
andAutoEscapeExtension
are built-in now.contextfilter
andcontextfunction
are replaced bypass_context
.evalcontextfilter
andevalcontextfunction
are replaced bypass_eval_context
.environmentfilter
andenvironmentfunction
are replaced bypass_environment
.Markup
andescape
should be imported from MarkupSafe.- Compiled templates from very old Jinja versions may need to be recompiled.
- Legacy resolve mode for
Context
subclasses is no longer supported. Overrideresolve_or_missing
instead ofresolve
. unicode_urlencode
is renamed tourl_quote
.
- SDK Core側に影響はありません。
- jinja2をユーザー側コードでimportしてご利用いただく場合、上記変更が含まれますのでご注意ください。
jsonschema 4.4.0 → 4.17.3
https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst
- 影響はありません。
netmiko 3.4.0 → 4.1.2
- Backwards incompatible and other major changes
- Convert send_command to use read_timeout.
- Convert send_command_timing to use read_timeout and last_read
- Add type hints and mypy support
- Relocate exceptions module to netmiko.exceptions (was ssh_exceptions)
- Add read_timeout argument to send_config_set
- Convert netmiko-tools to be an entry point and directly a part of Netmiko library
- Creating a new internal Channel class
- Restructure read methods
- Implement NoEnable and NoConfig inheritance classes to standardize no-config and no-enable behavior
- SDK Core側に影響はありません。
- netmikoをユーザー側コードでimportしてご利用いただく場合、上記変更が含まれますのでご注意ください。
paramiko 2.7.2 → 2.12.0
https://github.com/paramiko/paramiko/blob/main/NEWS
- [Feature] #1643: (also #1925, #1644, #1326) Add support for SHA-2 variants of RSA key verification algorithms (as described in RFC 8332) as well as limited SSH extension negotiation (RFC 8308).
- Warning
- This change is slightly backwards incompatible, insofar as action is required if your target systems do not support either RSA2 or the
server-sig-algs
protocol extension. - Specifically, you need to specify
disabled_algorithms={'keys': ['rsa-sha2-256', 'rsa-sha2-512']}
in either[SSHClient](https://docs.paramiko.org/en/latest/api/client.html#paramiko.client.SSHClient.__init__)
or[Transport](https://docs.paramiko.org/en/latest/api/transport.html#paramiko.transport.Transport.__init__)
.
- This change is slightly backwards incompatible, insofar as action is required if your target systems do not support either RSA2 or the
- paramikoをユーザー側コードでimportしてご利用いただく場合、上記変更によりSSHClient classのconnectメソッド、もしくはTransport クラスを利用する際、レガシーサーバーへの接続時に認証が失敗してしまう場合があります。この場合はkwargs引数に
disabled_algorithms={'keys': ['rsa-sha2-256', 'rsa-sha2-512']}
を追加することで接続が可能な場合がございますのでお試しください。
psutil 5.9.0 → 5.9.4
https://github.com/giampaolo/psutil/blob/master/HISTORY.rst
- 影響はありません。
pycryptodome 3.12.0 → 3.16.0
pycryptodomex 3.12.0 → 3.16.0
https://pycryptodome.readthedocs.io/en/latest/src/changelog.html
- 影響はありません。
pycurl 7.44.1 → 7.45.2
https://github.com/pycurl/pycurl/blob/master/ChangeLog
- 影響はありません。
PyJWT 2.3.0 → 2.6.0
https://pyjwt.readthedocs.io/en/stable/changelog.html
- 影響はありません。
PyMySQL 0.9.3 → 1.0.2
https://github.com/PyMySQL/PyMySQL/blob/main/CHANGELOG.md
- Backward incompatible changes:
- Python 2.7 and 3.5 are not supported.
connect()
uses keyword-only arguments. User must use keyword argument.connect()
kwargsdb
andpasswd
are now deprecated; Usedatabase
andpassword
instead.- old_password authentication method (used by MySQL older than 4.1) is not supported.
- MySQL 5.5 and MariaDB 5.5 are not officially supported, although it may still works.
- Removed
escape_dict
,escape_sequence
, andescape_string
frompymysql
module. They are still inpymysql.converters
.
- PyMySQLをユーザー側コードでimportしてご利用いただく場合、上記変更が含まれますのでご注意ください。
PyNaCl 1.4.0 →1.5.0
https://pynacl.readthedocs.io/en/latest/changelog/
- 影響はありません。
pysmi 0.3.4 → N/A
pysmiの代替として、pysnmp-pysmiがpysnmplibの依存モジュールとしてインストールされます。
pysnmp-pysmiのバージョンはSDK Coreとして明示的に記載していないため、あくまで参考情報扱いとなります。環境変更後、より最新バージョンのpysnmp-pysmiがインストールされる場合がございます。
pysmiをユーザー側コードでご利用になる場合はユーザー側requirements.txtでの指定が必要となります。
pysnmp 4.4.12 → N/A
pysnmpモジュールは4系までの提供となり、5系からはpysnmplibパッケージへの提供へ移行となります。
pysnmpをユーザー側コードでご利用になる場合はユーザー側requirements.txtでの指定が必要となります。
pysnmplib N/A → 5.0.20
https://github.com/pysnmp/pysnmp/blob/c0900761c0b1b427e632f5750778bd021bb74119/pyproject.toml#L30
pysnmplib 5.0.20の場合、pysnmp-pysmi 1.X.Xが追加インストールされます。
pytz 2021.3 → 2022.7
https://launchpad.net/pytz/+announcements
- 影響はありません。
PyYAML 5.4.1 → 6.0
https://github.com/yaml/pyyaml/blob/master/CHANGES
- SDK Core側に影響はありません。
- https://github.com/yaml/pyyaml/pull/561 – always require
Loader
arg toyaml.load()
- PyYAMLをユーザー側コードでimportして利用している場合、上記変更が含まれますのでご注意ください。
python-rapidjson 1.5 → 1.9
https://github.com/python-rapidjson/python-rapidjson/blob/master/CHANGES.rst
- 影響はありません。
redis 4.1.0 → 4.4.0
https://github.com/redis/redis-py/releases
- Fix backward compatibility from 4.3.2 in Lock.acquire() (#2254)
- Fix
XAUTOCLAIM
to return the full response, instead of only keys 2+ (#2252) - Replace OSError exceptions from
can_read
withredis.ConnectionError
(#2140) - Updated FUNCTION LOAD changes (from release 7.0 rc3 to support redis 7.0 final) (#2139)
- Functions within RedisGraph support, were renamed to match Python naming conventions. (#1872)
- Modified rootPath argument in JSON.SET to root_path as part of type hint addition. (#1921)
- redisモジュールをユーザー側コードでimportして利用している場合、上記変更が含まれますのでご注意ください。
scp 0.14.2 → 0.14.4
https://github.com/jbardin/scp.py/blob/master/CHANGELOG.md
- 影響はありません。
SQLAlchemy 1.4.36 → 1.4.46
https://docs.sqlalchemy.org/en/20/changelog/changelog_14.html#change-1.4.46
- 影響はありません。
tornado 6.1 → 6.2
https://www.tornadoweb.org/en/stable/releases/v6.2.0.html
- 影響はありません。
uvloop 0.16.0 → 0.17.0
https://github.com/MagicStack/uvloop/releases
- 影響はありません。
xmltodict 0.12.0 → 0.13.0
https://github.com/martinblech/xmltodict/blob/master/CHANGELOG.md
- 影響はありません。
requests 2.26.0 → 2.28.1
https://github.com/psf/requests/blob/main/HISTORY.md
- 影響はありません。
line-profiler 3.4.0 → 4.0.2
https://github.com/pyutils/line_profiler/blob/main/CHANGELOG.rst
- 影響はありません。
rstr 3.0.0 → 3.2.0
https://github.com/leapfrogonline/rstr/blob/master/RELEASE_NOTES
- 影響はありません。
autopep8 1.6.0 → 2.0.1
https://github.com/hhatto/autopep8/releases
- 影響はありません。
geopy 2.2.0 → 2.3.0
https://github.com/geopy/geopy/releases
- SDK Core側に影響はありません。
.Pelias
: deprecatecountry_bias
param, usecountries
instead. (#504).IGNFrance
: authentication is no longer accepted by the API,so passing any credentials to the geocoder class has been deprecated.These arguments should be removed. (#496)- geopyをユーザー側コードでimportしてご利用いただく場合、上記変更が含まれますのでご注意ください。
prometheus-client 0.12.0 → 0.15.0
https://github.com/prometheus/client_python/releases
- 影響はありません。
tosca-parser 2.4.1 → 2.7.0
https://github.com/openstack/tosca-parser/compare/2.4.1…2.7.0
kubernetes-asyncio 19.15.0 → 24.2.2
https://github.com/tomplus/kubernetes_asyncio/blob/master/CHANGELOG.md
gcloud-aio-auth 3.7.0 → 4.0.1
gcloud-aio-pubsub 4.5.0 → 5.1.1
https://github.com/talkiq/gcloud-aio/releases
- 影響はありません。
flake8 4.0.1 → 6.0.0
https://flake8.pycqa.org/en/latest/release-notes/index.html
- Remove
-diff
option (See also #1389, #1720). - Produce an error when invalid codes are specified in configuration (See also #1689, #1713).
- Produce an error if the file specified in
-extend-config
does not exist (See also #1729, #1732). - Remove
optparse
compatibility support (See also #1739). - Remove
indent_size_str
(See also #1411). - Remove some dead code (See also #1453, #1540, #1541).
- Missing explicitly-specified configuration is now an error (See also #1497, #1498).
- Always read configuration files as UTF-8 (See also #1532, #1533).
- Remove manpage from docs – use
help2man
or related tools instead (See also #1557). - Forbid invalid plugin codes (See also #325, #1579).
- flake8をユーザー側コードでimportしてご利用いただく場合、上記変更が含まれますのでご注意ください。