python312Packages.rucio: init at 32.8.6 (#410379)

This commit is contained in:
Dmitry Kalinkin 2025-06-07 23:15:47 -04:00 committed by GitHub
commit 0060edafbf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 255 additions and 5 deletions

View file

@ -0,0 +1,5 @@
{ python3Packages }:
with python3Packages;
toPythonApplication rucio

View file

@ -13,12 +13,12 @@
}:
buildPythonPackage rec {
pname = "gfal2-python";
version = "1.12.2";
version = "1.13.0";
src = fetchFromGitHub {
owner = "cern-fts";
repo = "gfal2-python";
rev = "v${version}";
hash = "sha256-Xk+gLTrqfWb0kGB6QhnM62zAHVFb8rRAqCIBxn0V824=";
hash = "sha256-TF8EwT1UEtB9lhfq8Jkn9rrSkSxMSLzuAywfB23K1kE=";
};
nativeBuildInputs = [
cmake
@ -44,8 +44,5 @@ buildPythonPackage rec {
homepage = "https://github.com/cern-fts/gfal2-python";
license = licenses.asl20;
maintainers = with maintainers; [ ShamrockLee ];
# It currently fails to build against Python 3.12 or later,
# complaining CMake faililng to find Python include path, library path and site package path.
broken = pythonAtLeast "3.12";
};
}

View file

@ -0,0 +1,68 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
# build-system
setuptools,
# dependencies
requests,
pycryptodomex,
pydantic-settings,
pyjwkest,
mako,
cryptography,
defusedxml,
# tests
pytestCheckHook,
freezegun,
responses,
testfixtures,
}:
buildPythonPackage rec {
pname = "oic";
version = "1.7.0";
pyproject = true;
src = fetchFromGitHub {
owner = "CZ-NIC";
repo = "pyoidc";
tag = version;
hash = "sha256-7qEK1HWLEGCKu+gDAfbyT1a+sM9fVOfjtkqZ33GWv6U=";
};
build-system = [
setuptools
];
dependencies = [
requests
pycryptodomex
pydantic-settings
pyjwkest
mako
cryptography
defusedxml
];
nativeCheckInputs = [
pytestCheckHook
freezegun
responses
testfixtures
];
pythonImportsCheck = [ "oic" ];
meta = {
description = "OpenID Connect implementation in Python";
homepage = "https://github.com/CZ-NIC/pyoidc";
changelog = "https://github.com/CZ-NIC/pyoidc/releases/tag/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ veprbl ];
};
}

View file

@ -0,0 +1,114 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
# build-system
setuptools,
# dependencies
alembic,
argcomplete,
boto3,
dogpile-cache,
flask,
geoip2,
gfal2-python,
google-auth,
jsonschema,
oic,
paramiko,
prometheus-client,
pymemcache,
python-dateutil,
python-magic,
redis,
requests,
sqlalchemy,
statsd,
stomp-py,
tabulate,
urllib3,
# tests
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "rucio";
version = "32.8.6";
pyproject = true;
src = fetchFromGitHub {
owner = "rucio";
repo = "rucio";
tag = version;
hash = "sha256-VQQ4gy9occism1WDrlcHnB7b7D5/G68wKct2PhD59FA=";
};
pythonRelaxDeps = [
"alembic"
"argcomplete"
"boto3"
"dogpile.cache"
"flask"
"geoip2"
"google-auth"
"jsonschema"
"oic"
"paramiko"
"prometheus_client"
"python-dateutil"
"redis"
"requests"
"sqlalchemy"
"stomp.py"
"urllib3"
];
build-system = [
setuptools
];
dependencies = [
alembic
argcomplete
boto3
dogpile-cache
flask
geoip2
gfal2-python # needed for rucio download
google-auth
jsonschema
oic
paramiko
prometheus-client
pymemcache
python-dateutil
python-magic
redis
requests
sqlalchemy
statsd
stomp-py
tabulate
urllib3
];
nativeCheckInputs = [
pytestCheckHook
];
doCheck = false; # needs a rucio.cfg
pythonImportsCheck = [ "rucio" ];
meta = {
description = "Tool for Scientific Data Management";
homepage = "http://rucio.cern.ch/";
changelog = "https://github.com/rucio/rucio/releases/tag/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ veprbl ];
};
}

View file

@ -0,0 +1,54 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
# build-system
poetry-core,
# dependencies
docopt,
websocket-client,
# tests
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "stomp-py";
version = "8.2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "jasonrbriggs";
repo = "stomp.py";
tag = "v${version}";
hash = "sha256-UkNmE0+G9d3k1OhkNl98Jy5sP6MAywynzBmBtK9mZ90=";
};
build-system = [
poetry-core
];
dependencies = [
docopt
websocket-client
];
nativeCheckInputs = [
pytestCheckHook
];
doCheck = false; # needs external services setup
pythonImportsCheck = [ "stomp" ];
meta = {
description = "Client library for accessing messaging servers (such as ActiveMQ or RabbitMQ) using the STOMP protocol";
homepage = "https://github.com/jasonrbriggs/stomp.py";
changelog = "https://github.com/jasonrbriggs/stomp.py/releases/tag/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ veprbl ];
};
}

View file

@ -4345,6 +4345,12 @@ with pkgs;
pythonPackages = python3Packages;
};
rucio = callPackage ../by-name/ru/rucio/package.nix {
# Pinned to python 3.12 while python313Packages.future does not evaluate and
# until https://github.com/CZ-NIC/pyoidc/issues/649 is resolved
python3Packages = python312Packages;
};
rubocop = rubyPackages.rubocop;
ruby-lsp = rubyPackages.ruby-lsp;

View file

@ -10410,6 +10410,8 @@ self: super: with self; {
ohme = callPackage ../development/python-modules/ohme { };
oic = callPackage ../development/python-modules/oic { };
okonomiyaki = callPackage ../development/python-modules/okonomiyaki { };
okta = callPackage ../development/python-modules/okta { };
@ -15576,6 +15578,8 @@ self: super: with self; {
rubymarshal = callPackage ../development/python-modules/rubymarshal { };
rucio = callPackage ../development/python-modules/rucio { };
ruff = callPackage ../development/python-modules/ruff { inherit (pkgs) ruff; };
ruff-api = callPackage ../development/python-modules/ruff-api { };
@ -16946,6 +16950,8 @@ self: super: with self; {
stm32loader = callPackage ../development/python-modules/stm32loader { };
stomp-py = callPackage ../development/python-modules/stomp-py { };
stone = callPackage ../development/python-modules/stone { };
stookalert = callPackage ../development/python-modules/stookalert { };