dCacheFS provides a Python file-system interface for a dCache storage system, such as the instance provided at SURF.
dCacheFS builds and extend the Filesystem Spec (fsspec) library, so that it can be used as an independent library or via the more general fsspec functions.
To install dcachefs, do:
pip install dcachefsThe project's full documentation can be found here
If you want to modify/develop dcachefs, clone this repository and install it in editable mode with the dev dependencies:
git clone git@github.com:RS-DAT/dcachefs
cd dcachefs
pip install -e .[dev]In order to keep a consistent coding style, we use the Ruff linter and formatter:
ruff check .
ruff format .The commands above can be run automatically at every commit via pre-commit hooks, which can be installed by running:
pre-commit installRun tests (including coverage) with:
pytestIn order to build the documentation, you need to install the docs dependencies:
pip install -e .[docs]
cd docs
make htmlIf you want to contribute to the development of dCacheFS, have a look at the contribution guidelines.
Copyright (c) 2026, Netherlands eScience Center
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
This package was created with Cookiecutter and the NLeSC/python-template.