Registry / data / rucio-clients

rucio-clients

JSON →
library40.3.0pypypi✓ verified 90d ago

Rucio Client Package: Python client library for Rucio, a distributed data management framework used primarily by high-energy physics experiments (e.g., ATLAS, CMS, SKA). Version 40.1.0, monthly release cadence. Supports Python >=3.9.

pip install rucio-clients
INSTALL
IMPORT
SIG · RUCIO-CLIENTS
R
rucio-clients
datapythonv40.3.0
Install
5.0s avg
Import
886ms
Disk
42MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.9–3.13
musl
3.9–3.13
Install & Compatibility
Where this runs
tested against v40.3.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.918s · 42.9MB
glibc
py 3.10–3.95 runs
installs and imports cleanly · install 5.0s · import 0.854s · 43MB
42MB installed
● package 42MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Client
✓ from rucio.client import Client
✗ from rucio import Client
Client lives in rucio.client package; direct import from rucio fails.
DownloadClient
✓ from rucio.client.downloadclient import DownloadClient
✗ from rucio.downloadclient import DownloadClient
DownloadClient is in rucio.client.downloadclient; common mistake to import from rucio.downloadclient.
UploadClient
✓ from rucio.client.uploadclient import UploadClient
✗ from rucio.uploadclient import UploadClient
Same pattern as DownloadClient.
DidClient
✓ from rucio.client.didclient import DIDClient
✗ from rucio.client import DIDClient
DIDClient is in its own submodule; not directly in rucio.client.

Basic example: initialize Rucio Client with environment-based auth, then download a file.

from rucio.client import Client from rucio.client.downloadclient import DownloadClient # Assumes RUCIO_ACCOUNT, RUCIO_AUTH_TYPE env vars set (e.g., userpass, x509) client = Client() # Download a dataset downloader = DownloadClient(client) dids = [{'scope': 'mock', 'name': 'test.file', 'type': 'FILE', 'base': '/tmp/'}] downloader.download_dids(dids)
rucio --version
Debug
Known issues
breakingPython 3.9 minimum: rucio-clients 40+ drops support for Python 3.8 and earlier.
fix
Upgrade to Python 3.9+ before installing rucio-clients >=40.
affects: >=40.0.0
gotchaClient authentication requires environment variables (RUCIO_ACCOUNT, RUCIO_AUTH_TYPE, RUCIO_CREDS) or config file; missing them causes silent default fallback to anonymous, often leading to permission errors.
fix
Set RUCIO_ACCOUNT and RUCIO_AUTH_TYPE (e.g., 'userpass', 'x509', 'x509_proxy') before creating Client(). Also set RUCIO_CREDS for password or RUCIO_CLIENT_CERT for x509.
affects: all
deprecatedThe rucio.client.client.Client class init parameter 'auth_type' is deprecated in favor of environment variable RUCIO_AUTH_TYPE.
fix
Set RUCIO_AUTH_TYPE environment variable instead of passing auth_type argument.
affects: >=38.0.0
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'rucio'
rucio package (server-side) is not installed; rucio-clients depends on it for library code.
fix
pip install rucio rucio-clients (or just rucio-clients, which pulls rucio as dependency).
ImportError: cannot import name 'DownloadClient' from 'rucio.client'
DownloadClient is in submodule rucio.client.downloadclient, not directly in rucio.client.
fix
Use: from rucio.client.downloadclient import DownloadClient
FileNotFoundError: [Errno 2] No such file or directory: '""'
Missing or empty RUCIO_ACCOUNT or RUCIO_AUTH_TYPE environment variables.
fix
Set required environment variables before instantiating Client(): export RUCIO_ACCOUNT=<username>; export RUCIO_AUTH_TYPE=userpass; export RUCIO_CREDS=<password>
RucioException: Authentication error
Invalid credentials or mismatched auth type.
fix
Check RUCIO_ACCOUNT, RUCIO_AUTH_TYPE, and RUCIO_CREDS (or x509 certificate proxy). For x509, ensure RUCIO_CLIENT_CERT points to valid PEM file.
Upgrade
Version history
40.3.0latest on PyPI · released Jun 10, 2026
Audit
Dependencies
ruciorequiredCore Rucio server package; rucio-clients depends on it for common functionality.
requestsrequiredHTTP library for API calls.
urllib3requiredUsed under the hood for connection pooling.
Agent activity
13 hits · last 30 days
node
6
OpenAI (training)
1
Resources
rucio-clients — pip install rucio-clients · libregistry