Skip to main content

augpathlib

PyPI version Build Status Coverage Status

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.

Installing on MacOS catalina 10.15.5+

If you are getting a failed build for pxattr, please continue reading the following. When using LLVM (9.0.1+) or another 3rd party library for Clang on MacOS, there was an issue that requires a possible reinstall if you getting a failed build for pxattr. See LLVM Issue for details. To reinstall LLVM on brew or anaconda you can use the following examples.

> brew reinstall llvm 

or

> conda install --force-reinstall llvm 

If the reinstall fails to clear the issue consider uninstalling that library and use the default Clang from Xcode. It should be the following version or higher.

> clang -v
Apple clang version 11.0.3 (clang-1103.0.32.62)
Target: x86_64-apple-darwin19.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

Metadata

Release files for augpathlib 0.0.34

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for augpathlib 0.0.34
File Size Uploaded
augpathlib-0.0.34.tar.gz 82.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for augpathlib 0.0.34
File Interpreter ABI Platform
augpathlib-0.0.34-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 157.9 kB

Release files / augpathlib-0.0.34.tar.gz

Download URL augpathlib-0.0.34.tar.gz
Size 82.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a512dda72b7049a0b4514e264f4345cf91096d84fd79b0f5ce5e8c4f1a9ee7e3
BLAKE2b-256 checksum
How to use checksums
180709219819ae16532ff1f791dabe132755d3fdea1f16cf0aa9dbf536ba0449
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / augpathlib-0.0.34-py2.py3-none-any.whl

Download URL augpathlib-0.0.34-py2.py3-none-any.whl
Size 75.3 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
2be63f4cc1e52e1dc1aab99b87bbb314529cf8dea7bc3171aabdd52aac7f8faf
BLAKE2b-256 checksum
How to use checksums
a934932768325297d37e157d3fc2fcbcd8a64df94328829d8fec3c5e56d553e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

0.0.34 This release

2 release files

0.0.33

2 release files

0.0.32

2 release files

0.0.31

2 release files

0.0.29

2 release files

0.0.28

2 release files

0.0.26

2 release files

0.0.25

2 release files

0.0.23

2 release files

0.0.22

2 release files

0.0.21

2 release files

0.0.19

2 release files

0.0.18

2 release files

0.0.17

2 release files

0.0.16

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page