pgadmin: 7.8 -> 8.0

Release notes: https://www.pgadmin.org/docs/pgadmin4/latest/release_notes_8_0.html

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
This commit is contained in:
Florian Brandes 2023-11-23 13:05:35 +01:00
parent 918c0666ab
commit 5beb818e31
2 changed files with 2519 additions and 1379 deletions

View File

@ -15,73 +15,19 @@
let
pname = "pgadmin";
version = "7.8";
yarnHash = "sha256-5E0kp8mxAjuvIfjmM7D2/MsxLmUapMdjz10bLFr/V8c=";
version = "8.0";
yarnHash = "sha256-ZceYBspkafgt9i3PIBpu+d6p1oWpm9LAqNgzulV4EA0=";
src = fetchFromGitHub {
owner = "pgadmin-org";
repo = "pgadmin4";
rev = "REL-${lib.versions.major version}_${lib.versions.minor version}";
hash = "sha256-MsKmM1HVKScbOtBGwYxy2SLrrfpsCthxVXmTUuDPmEI=";
hash = "sha256-MKjflEisbuLL0BzkLZ2PTwHaFgsezcA5+TNLjWOtk6g=";
};
# keep the scope, as it is used throughout the derivation and tests
# this also makes potential future overrides easier
pythonPackages = python3.pkgs.overrideScope (final: prev: rec {
# pgadmin 7.8 is incompatible with Flask >= 2.3
flask = prev.flask.overridePythonAttrs (oldAttrs: rec {
version = "2.2.5";
src = oldAttrs.src.override {
pname = "Flask";
inherit version;
hash = "sha256-7e6bCn/yZiG9WowQ/0hK4oc3okENmbC7mmhQx/uXeqA=";
};
format = "setuptools";
});
# downgrade needed for older Flask
httpbin = prev.httpbin.overridePythonAttrs (oldAttrs: rec {
version = "0.7.0";
src = oldAttrs.src.override {
inherit version;
hash = "sha256-y7N3kMkVdfTxV1f0KtQdn3KesifV7b6J5OwXVIbbjfo=";
};
format = "setuptools";
patches = [
(fetchpatch {
# Replaces BaseResponse class with Response class for Werkezug 2.1.0 compatibility
# https://github.com/postmanlabs/httpbin/pull/674
url = "https://github.com/postmanlabs/httpbin/commit/5cc81ce87a3c447a127e4a1a707faf9f3b1c9b6b.patch";
hash = "sha256-SbEWjiqayMFYrbgAPZtSsXqSyCDUz3z127XgcKOcrkE=";
})
];
pytestFlagsArray = [
"test_httpbin.py"
];
propagatedBuildInputs = oldAttrs.propagatedBuildInputs ++ [ final.pythonPackages.brotlipy ];
});
# downgrade needed for older httpbin
werkzeug = prev.werkzeug.overridePythonAttrs (oldAttrs: rec {
version = "2.2.3";
format = "setuptools";
src = oldAttrs.src.override {
pname = "Werkzeug";
inherit version;
hash = "sha256-LhzMlBfU2jWLnebxdOOsCUOR6h1PvvLWZ4ZdgZ39Cv4=";
};
});
# Downgrade needed for older Flask
flask-security-too = prev.flask-security-too.overridePythonAttrs (oldAttrs: rec {
version = "5.1.2";
src = oldAttrs.src.override {
inherit version;
hash = "sha256-lZzm43m30y+2qjxNddFEeg9HDlQP9afq5VtuR25zaLc=";
};
postPatch = ''
# This should be removed after updating to version 5.3.0.
sed -i '/filterwarnings =/a ignore:pkg_resources is deprecated:DeprecationWarning' pytest.ini
'';
});
});
pythonPackages = python3.pkgs.overrideScope (final: prev: rec { });
offlineCache = fetchYarnDeps {
yarnLock = ./yarn.lock;
@ -115,16 +61,8 @@ pythonPackages.buildPythonApplication rec {
substituteInPlace docs/en_US/contributions.rst \
--replace "code_snippets" ""
patchShebangs .
# relax dependencies
sed 's|==|>=|g' -i requirements.txt
#TODO: Can be removed once boto3>=1.28.0 and cryptography>=41 has been merged to master
substituteInPlace requirements.txt \
--replace "boto3>=1.28.*" "boto3>=1.26.*"
substituteInPlace requirements.txt \
--replace "botocore>=1.31.*" "botocore>=1.29.*"
substituteInPlace requirements.txt \
--replace "cryptography>=41.0.*" "cryptography>=40.0.*"
# fix extra_require error with "*" in match
sed 's|*|0|g' -i requirements.txt
substituteInPlace pkg/pip/setup_pip.py \

File diff suppressed because it is too large Load Diff