mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2026-10-31 16:37:42 -05:00
JS (yarn, patch/minor only): babel toolchain, MUI, react/react-dom, testing-library, axios, webpack ecosystem, jest, eslint plugins, and misc small libs. Excluded @simonwep/pickr (webpack prod-bundle interop break on 1.10.x), @testing-library/user-event@14.6.7 and webpack@5.110.3 (both npm-quarantined at bump time). Python (>3.9 requirements branch only, Python 3.9 pins untouched): Authlib 1.8, google-auth-oauthlib 1.4.1, gssapi 1.12 (ungated), psycopg[c] 3.3.5, selenium 4.48.0, testscenarios 0.7.0. Skipped: paramiko 3->5 (blocked on sshtunnel's paramiko.DSSKey usage), azure-mgmt-resource 26.0.0 (drops Python 3.9 support and conflicts with the <26 upper bound kept for Azure CLI distro packaging, see #10247). Two bumped packages required source fixes: - psycopg 3.3.5 restructured the private psycopg._encodings._py_codecs attribute from a dict to a tuple of alias groups, breaking our monkeypatch in pgadmin/utils/driver/psycopg3/encoding.py with TypeError: 'tuple' object does not support item assignment. Rewrote get_encoding()/ configure_driver_encodings() to use the derived py_codecs/ pg_codecs dicts instead, which stay plain dicts across psycopg 3.2.x-3.3.5 regardless of _py_codecs's internal shape. Verified byte-for-byte identical behavior against 3.3.4 for every encode_dict entry (SQL_ASCII, EUC_TW, UNICODE, ascii) plus UTF8/LATIN1. Added a DB-free unit test (pgadmin/utils/driver/psycopg3/tests/test_encoding.py) so a future psycopg internals change fails fast here instead of only surfacing as an app-wide import crash in the full regression suite. - react-frame-component 5.3.2 breaks LayoutIframeTab.jsx (the iframe wrapper every tool panel - Query Tool, Debugger, PSQL, ERD, Schema Diff - renders into): the panel's iframe never mounts, hanging any of those tools indefinitely (React error #130 in the production bundle). This caused every run-feature-tests-pg CI job to fail. Reverted to 5.2.6.
76 lines
2.5 KiB
Plaintext
76 lines
2.5 KiB
Plaintext
###############################################################################
|
|
#
|
|
# IMPORTANT:
|
|
#
|
|
# If runtime or build time dependencies are changed in this file, the committer
|
|
# *must* ensure the DEB and RPM package maintainers are informed as soon as
|
|
# possible.
|
|
#
|
|
# The packages listed below are sorted alphabetically. It is recommended to add
|
|
# new packages in alphabetical order. However, exceptions can be made to
|
|
# preserve dependency order—please add a comment in such cases and specify the
|
|
# relevant packages.
|
|
###############################################################################
|
|
|
|
Authlib==1.6.*; python_version <= '3.9'
|
|
Authlib==1.8.*; python_version > '3.9'
|
|
azure-identity==1.25.3
|
|
azure-mgmt-rdbms==10.1.1
|
|
# Azure CLI (a common companion package on Linux distros) still pins
|
|
# azure-mgmt-resource<25, so keep the lower bound at 24.0.0 to avoid
|
|
# conflicts for distro packagers; see pgadmin-org/pgadmin4#10247.
|
|
azure-mgmt-resource>=24.0.0,<26.0.0
|
|
azure-mgmt-subscription==3.1.1
|
|
bcrypt==5.0.*
|
|
boto3==1.42.*; python_version <= '3.9'
|
|
boto3==1.43.*; python_version > '3.9'
|
|
certifi==2026.7.22
|
|
cryptography==50.0.*
|
|
Flask-Babel==4.0.*
|
|
Flask-Compress==1.*
|
|
Flask-Login==0.*
|
|
Flask-Mail==0.*
|
|
Flask-Migrate==4.*
|
|
Flask-Paranoid==0.*
|
|
Flask-Security-Too==5.6.*; python_version <= '3.9'
|
|
# 5.8.2 corrected the inverted UserMixin.is_locked() test in LoginForm;
|
|
# User.is_locked() in web/pgadmin/model/__init__.py follows the fixed
|
|
# semantics, so anything earlier in the 5.8 series would refuse all logins.
|
|
Flask-Security-Too>=5.8.2,<5.9; python_version > '3.9'
|
|
Flask-SocketIO==5.6.*
|
|
Flask-SQLAlchemy==3.1.*
|
|
Flask-WTF==1.2.*; python_version <= '3.9'
|
|
Flask-WTF==1.3.*; python_version > '3.9'
|
|
Flask==3.1.*
|
|
google-api-python-client==2.*
|
|
google-auth-oauthlib==1.3.1; python_version <= '3.9'
|
|
google-auth-oauthlib==1.4.1; python_version > '3.9'
|
|
gssapi==1.12.*
|
|
jsonformatter~=0.3.4
|
|
keyring==25.*
|
|
ldap3==2.*
|
|
libgravatar==1.0.*
|
|
paramiko==3.5.1
|
|
psutil==7.2.*
|
|
psycopg[c]==3.2.13; python_version < '3.10'
|
|
psycopg[c]==3.3.5; python_version >= '3.10'
|
|
pyotp==2.*
|
|
python-dateutil==2.*
|
|
pytz==2026.*
|
|
# pinned for https://github.com/andfoy/pywinpty/issues/545
|
|
pywinpty==2.0.*; sys_platform=="win32"
|
|
qrcode[pil]==8.*
|
|
setuptools<82; python_version <= '3.9'
|
|
setuptools==84.*; python_version > '3.9'
|
|
SQLAlchemy==2.*
|
|
sqlparse==0.*
|
|
sshtunnel==0.*
|
|
typer[all]==0.23.*; python_version <= '3.9'
|
|
typer==0.27.*; python_version > '3.9'
|
|
urllib3==1.26.*; python_version <= '3.9'
|
|
urllib3==2.7.*; python_version > '3.9'
|
|
user-agents==2.2.0
|
|
Werkzeug==3.1.*
|
|
WTForms==3.1.*; python_version <= '3.9'
|
|
WTForms==3.2.*; python_version > '3.9'
|