Skip to main content

PyPI - Downloads Documentation Documentation DOI Pipeline status Coverage report

Framework to represent structured directories in python as FileTree objects. FileTrees can be read in from simple text files describing the directory structure. This is particularly useful for pipelines with large number of input, output, and intermediate files. It can also be used to visualise the data in structured directories using FSLeyes or file-tree on the command line.

Setting up local development environment

This package uses uv for project management. You will need to install uv to develop this package.

First clone the repository:

git clone https://git.fmrib.ox.ac.uk/fsl/file-tree.git

Then we can ask uv to set up the local envoriment.

cd file-tree
uv sync

Running tests

Tests are run using the pytest framework. This will already be available in the uv virtual environment.

uv run pytest src/tests

Compiling documentation

The documentation is build using sphinx.

cd doc
uv run sphinx-build source build
open build/index.html

Contributing

Merge requests with any bug fixes or documentation updates are always welcome.

For new features, please raise an issue to allow for discussion before you spend the time implementing them.

Releasing new versions

  • Ensure CHANGELOG.md is up to date.
    • All commits can be seen in gitlab by clicking the "Unreleased" link in "CHANGELOG.md"
    • Add new header just below "## [Unreleased]" with the new version
    • Update the footnotes for both the new version and [Unreleased]
  • Edit the version number on pyproject.toml
  • Create a new tag for the version number
  • Push to gitlab (including tags)
  • After the continuous integration (CI) succeeds, manually run the job to upload file-tree to pypi (see here)
  • Upload code on conda-forge using their automated release detection.

Running tests

Tests are run using the pytest framework. After installation (pip install pytest) they can be run from the project root as:

pytest src/tests

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

file_tree-1.5.0.tar.gz (51.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

file_tree-1.5.0-py3-none-any.whl (34.6 kB view details)

Uploaded Python 3

File details

Details for the file file_tree-1.5.0.tar.gz.

File metadata

  • Download URL: file_tree-1.5.0.tar.gz
  • Upload date:
  • Size: 51.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.30

File hashes

Hashes for file_tree-1.5.0.tar.gz
Algorithm Hash digest
SHA256 1738544285487d83779c4a337bcbc4e3b8d6520c53d59059f2efdee759d3eb41
MD5 ff7128dd20a36ad8cd2594d82fde0918
BLAKE2b-256 16612d88d87a2616b1d8585418b46f12a0a9ce0d82a3b2e789c534d54c91ff2e

See more details on using hashes here.

File details

Details for the file file_tree-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: file_tree-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 34.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.30

File hashes

Hashes for file_tree-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0f73f85dd6559a734b9863a809b0d7a4ed69cb2b2414a3b4efe09a7ef3d75166
MD5 b569ef6bdae2e7b32b07fe6beffaca8d
BLAKE2b-256 f577ef7e580ecea969c8beaa7f24189b4e4b1feccedce7cd6f6613ed04b37886

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page