Skip to main content

Python utility for cleaner handling of paths

Project description

Introduction

his package standardizes the handling of paths in a Python project by allowing all paths to be relative to the project repo root. The package also helps discover the project root automatically based on the location of the file that invokes it and a user-specified (or commonly used) project root indicator files such as requirements.txt.

This package was heavily inspired by pyprojroot. Our version fixes some of the issues in the original.

Usage

Installation:

pip install py-repo-root

Usage

Get project root

from pyreporoot import project_root
project_root_dir = project_root(Path(__file__), root_files='requirements.txt')

Another common usage pattern may be to add the project_root to PYTHONPATH for the purposes of running some scripts.

import sys
from pyreporoot import project_root
sys,path.insert(0, str(project_root(Path(__file__), root_files='requirements.txt')))

Getting a relative path from the project root for a file:

from projectroot import project_root
path_to_file_from_project_root = project_root(Path(__file__), root_files='requirements.txt').joinpath('/path/to/file.txt')

Project details


Download files

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

Source Distribution

py-repo-root-0.4.0.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

py_repo_root-0.4.0-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file py-repo-root-0.4.0.tar.gz.

File metadata

  • Download URL: py-repo-root-0.4.0.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for py-repo-root-0.4.0.tar.gz
Algorithm Hash digest
SHA256 df361c444089e5ce43898fd49b0584be3acdff20c626c369ff438b528c1de486
MD5 4d2697bc3b8a4b9a44dd209a94b85ee2
BLAKE2b-256 8fce8ea99941c8758217c76de802cb6ab2ff09da2f7f62c929be3b0977b2c245

See more details on using hashes here.

File details

Details for the file py_repo_root-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: py_repo_root-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for py_repo_root-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8bd71f2b22ee39e27d660ff76fac7bee711ede20cb768b9e0f2bfae7f142a5b1
MD5 f5c0c05bc2edbb4b14f417f34b70730f
BLAKE2b-256 22e24fc09813ba2c7ff87f90c5b15beed4cf53fb1d6b4dd5b30a732476fe8219

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page