xrootd
eXtended ROOT daemon
Decision gist · record as of 2026-08-14
Yes, if you need to access XRootD storage systems from Python and have the underlying XRootD client libraries available on your system. The package is actively maintained, has no known vulnerabilities, and is well-suited for scientific and high-performance computing workloads. Install friction is moderate due to compiled bindings and external dependencies, but wheels are available for common platforms and Python versions.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- The XRootD client library must be installed on your system (via dnf, apt, brew, or conda) before the Python bindings can function.
- Medium install friction due to compiled C++ bindings; wheels are available for modern Python versions on macOS and Linux, but the package requires the underlying XRootD daemon or client libraries to be present on the system.
License · maintenance · safety
LGPL-3.0-or-later (copyleft) — Licensed under LGPL-3.0-or-later (copyleft); derivative works and modifications must be distributed under compatible terms, and source code must be made available to users.
last release 2026-08-11 (3 days) · last repo commit 2026-08-14 · 180 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,191,186 downloads/mo, #4,240 on PyPI
Alternatives
Verify before relying
pip install xrootd
import XRootD.client as xrd
with xrd.File() as f:
status, response = f.open('root://server.example.com//path/to/file')
if status.ok:
status, data = f.read()- Whether the XRootD client library must be installed separately on the system before the Python bindings can function.
- Specific authentication and authorization mechanisms supported by the Python API.
- Performance characteristics and throughput limits for typical use cases.
- Whether pip install provides a complete working installation or requires additional system-level setup.
What it is and what it does
XRootD is a Python interface to the XRootD distributed filesystem protocol, originally developed for High Energy Physics data access at SLAC and CERN. It enables transparent, fault-tolerant access to massive datasets stored across multiple remote storage resources—disk servers, tape libraries, and remote sites—regardless of underlying storage technology or location. The package wraps the core XRootD C++ client library, allowing Python applications to read, write, and manage files in XRootD clusters and federated storage systems.
The package is used primarily in scientific computing and large-scale data infrastructure, powering systems like EOS distributed filesystem and global CDN deployments. It supports multi-protocol communications, authentication, authorization, and integration with other storage systems. Installation via pip provides the Python bindings; the underlying XRootD client libraries may need to be installed separately through system package managers or conda.
Use it for
- Access large datasets stored in XRootD clusters at research institutions like CERN or SLAC without managing protocol details.
- Build Python data pipelines that read from or write to EOS or other XRootD-backed storage systems.
- Integrate XRootD file operations into scientific analysis workflows and batch processing jobs.
- Implement fault-tolerant remote file transfers across geographically distributed storage nodes.
- Query and manage files in erasure-coded or replicated storage configurations via Python.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to access XRootD storage systems from Python and have the underlying XRootD client libraries available on your system.
The package is actively maintained, has no known vulnerabilities, and is well-suited for scientific and high-performance computing workloads. Install friction is moderate due to compiled bindings and external dependencies, but wheels are available for common platforms and Python versions.
Install
xrootd on PyPI
Before you install
Medium install friction due to compiled C++ bindings; wheels are available for modern Python versions on macOS and Linux, but the package requires the underlying XRootD daemon or client libraries to be present on the system.
The XRootD client library must be installed on your system (via dnf, apt, brew, or conda) before the Python bindings can function.
License in practice
Licensed under LGPL-3.0-or-later (copyleft); derivative works and modifications must be distributed under compatible terms, and source code must be made available to users.
Quickstart
pip install xrootd
import XRootD.client as xrd
with xrd.File() as f:
status, response = f.open('root://server.example.com//path/to/file')
if status.ok:
status, data = f.read()
Verify before relying
- Whether the XRootD client library must be installed separately on the system before the Python bindings can function.
- Specific authentication and authorization mechanisms supported by the Python API.
- Performance characteristics and throughput limits for typical use cases.
- Whether pip install provides a complete working installation or requires additional system-level setup.
Package facts
| License | LGPL-3.0-or-later copyleft |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 3 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,191,186 / month, #4,240 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: Information TechnologyIntended Audience :: Science/ResearchOperating System :: MacOSOperating System :: POSIX :: LinuxOperating System :: UnixProgramming Language :: C++Programming Language :: Python |
Evidence: xrootd-6.1.1-cp310-cp310-macosx_15_0_arm64.whl; xrootd-6.1.1-cp310-cp310-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp310-cp310-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp310-cp310-manylinux_2_28_x86_64.whl; xrootd-6.1.1-cp311-cp311-macosx_15_0_arm64.whl; xrootd-6.1.1-cp311-cp311-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp311-cp311-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp311-cp311-manylinux_2_28_x86_64.whl; xrootd-6.1.1-cp312-cp312-macosx_15_0_arm64.whl; xrootd-6.1.1-cp312-cp312-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp312-cp312-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp312-cp312-manylinux_2_28_x86_64.whl; xrootd-6.1.1-cp313-cp313-macosx_15_0_arm64.whl; xrootd-6.1.1-cp313-cp313-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp313-cp313-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp313-cp313-manylinux_2_28_x86_64.whl; xrootd-6.1.1-cp314-cp314-macosx_15_0_arm64.whl; xrootd-6.1.1-cp314-cp314-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp314-cp314-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp314-cp314-manylinux_2_28_x86_64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “distributed filesystem client”
- xrootdProvides Python bindings to XRootD, a high-performance distributed…
- fsspec-xrootdAdds XRootD storage support to fsspec, enabling file access to XRootD…
- portalockerPortalocker provides cross-platform file locking with support for…
Give your agent the search over MCP, or paste the wish link into any chat.
More Distributed Computing packages
gRPC Python is an HTTP/2-based RPC framework that enables you to define and call remote procedures across network boundaries using protocol buffers for serialization.
Install it if you need RPC communication in a distributed system or are integrating with existing gRPC services.
execnet lets you spawn and communicate with Python interpreters across local processes, remote hosts, and different platforms, using a simple API for task distribution and inter-process messaging.
However, the aging maintenance status (275 days since last release) means you should verify it meets your concurrency and performance needs before committing to a…
Cloudpickle extends Python's standard pickle module to serialize lambda functions, interactively-defined functions and classes, and other constructs that the default pickle cannot handle, making it suitable for cluster computing and remote code execution.
Install it if you need to serialize lambda functions, interactively-defined code, or non-standard Python constructs for cluster computing or distributed execution.
Provides a unified, open()-compatible Python API for streaming large files from remote storage (S3, GCS, Azure, HDFS, SFTP, HTTP) and local filesystems, with transparent compression support.
Install it if you work with large files on cloud storage or remote systems and want to avoid writing boilerplate around multiple SDKs.
Portalocker provides cross-platform file locking with support for exclusive and shared locks, plus Redis-based distributed locks and process-aware PID file locking.
Install it if you need file or process coordination; the optional extras (pywin32, redis) are only required for specific lock types.
Ray is a distributed computing framework that scales Python applications from a single machine to multi-node clusters, providing abstractions for parallel tasks, stateful actors, and shared objects.
See also fsspec-xrootd · rucio-clients · uproot3 · xattr · uproot · fatfs-ng · pyxattr · systemd-python · scantree · certifi-linux