From ac332dfbb9eb3977432f39af2beb67400636cdbb Mon Sep 17 00:00:00 2001 From: Dave Page Date: Wed, 19 Aug 2026 13:20:10 +0100 Subject: [PATCH] Remove redundant passlib pin that conflicts with libpass Flask-Security-Too >= 5.7 depends on libpass, a fork of passlib that installs its files under the same passlib/ import path. Our own unconditional passlib==1.* pin in requirements.txt therefore causes both packages to be installed into the same site-packages/passlib/ directory, and parallel installers such as uv can end up with a mixed or overwritten set of files depending on install order. pgAdmin's own code never imports passlib directly, and the older Flask-Security-Too 5.6.x branch (used on Python 3.9) already pulls in real passlib as its own transitive dependency, so dropping our direct pin does not change what gets installed there. On newer Python versions, only libpass is installed, resolving the conflict. Closes #10239 --- requirements.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index a8c95a296b2..926f5ed6829 100644 --- a/requirements.txt +++ b/requirements.txt @@ -48,7 +48,6 @@ keyring==25.* ldap3==2.* libgravatar==1.0.* paramiko==3.5.1 -passlib==1.* psutil==7.2.* psycopg[c]==3.2.13; python_version < '3.10' psycopg[c]==3.3.4; python_version >= '3.10'