Augmented pathlib. Everything else you could do with a path.
Project description
augpathlib
Augmented pathlib. Everything else you could do with a path.
Introduction
Do you like pathlib?
Have you ever wanted to see just how far you can push the path abstraction?
Do you like using the division operator in ways that could potentially cause
reading from the network or writing to disk?
Then augpathlib is for you!
Details
augpathlib makes extensive use of the pathlib Path object (and friends) by augmenting the base PosixPath object with additional functionality such as getting and setting xattrs, syncing with other mapped paths etc.
In essence there are 3 ways that a Path object can be used: Local, Cache, and Remote. Local paths return data and metadata that are local the the current computer. Cache paths return local metadata about remote objects (such as their remote id). Remote objects provide an interface to remote data that is associated with a path.
Remote paths should be back by another object which is the representation of the remote according to the remote's APIs.
Remote paths are only intended to provide a 1:1 mapping, so list(local.data) == list(remote.data) should always be true if everything is in sync.
If there is additional metadata that is associated with a local path then that is represented in the layer above this one (currently DatasetData, in the future a validation Stage). That said, it does seem like we need a more formal place that can map between all these things rather than always trying to derive the mappings from data embedded (bound) to the derefereced path object.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file augpathlib-0.0.17.tar.gz
.
File metadata
- Download URL: augpathlib-0.0.17.tar.gz
- Upload date:
- Size: 63.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b25ffd715b2bc4b819e66585ca10f2eacfc1cbe1b6db1237c7392d1368a0614f |
|
MD5 | 890d7d7491f8a78ae67c6159d2b8a429 |
|
BLAKE2b-256 | bead52051234ea583ad3875bfce4bbcd840a1dff5f5e81692ba2ed8bb3b317b0 |
File details
Details for the file augpathlib-0.0.17-py2.py3-none-any.whl
.
File metadata
- Download URL: augpathlib-0.0.17-py2.py3-none-any.whl
- Upload date:
- Size: 58.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ddb4abaf55a2d17a7cd2bef41b13cbb861680bd728e62bbb82913224ddf2708 |
|
MD5 | 683a044c2adc1dea804859dd176e6339 |
|
BLAKE2b-256 | 0fe662e4dc015f473b00bf6e17fdc733b245f549e4d1e96f1f786dac1c0deae6 |