Skip to main content

Miscellaneous proxy filesystems for Pyfilesystem2

Project description

Source PyPI Travis Codecov Codacy Format License

Requirements

pyfilesystem2

PyPI fs

Source fs

License fs

six

PyPI six

Source six

License six

psutil

PyPI psutil

Source psutil

License psutil

Installation

Install directly from PyPI, using pip

pip install fs.proxy

Usage

This module revolves around the notion of proxy filesystems, akin to wrapper filesystems from the core library, but using a proxy in combination with the delegate filesystem used by WrapFS. They also make it easier to create generic wrappers, as fs.proxy.base.Proxy subclasses will use the fs.base.FS method implementation, while actually deriving from WrapFS !

This extension includes a base fs.proxy.base.Proxy class, that requires only the essential filesystem methods to be implemented.

The fs.proxy.writer package also declares two classes that can be used to make any read-only filesystem writeable, using a secondary writeable filesystem: fs.proxy.writer.ProxyWriter and fs.proxy.writer.SwapWriter. ProxyWriter will always write modifications to the secondary filesystem (often a MemoryFS or a TempFS), while SwapWriter will use a third backup filesystem in case the memory footprint of the proxy filesystem becomes too large (swapping from a MemoryFS to an OSFS, etc.). For instance, let’s pretend we can write to the root:

>>> import fs.proxy.writer

>>> read_only_fs = fs.open_fs(u'/') # this is not actually read-only ;)
>>> writeable_fs = fs.proxy.writer.ProxyWriter(read_only_fs)
>>> writeable_fs.setbytes(u'/root.txt', b'I am writing in root !')

>>> writeable_fs.exists(u'/root.txt')
True
>>> read_only_fs.exists(u'/root.txt')
False

See also

  • fs, the core pyfilesystem2 library

  • fs.archive, enhanced archive filesystems for pyfilesystem2

  • fs.sshfs, a SFTP/SSH implementation for pyfilesystem2 using paramiko

  • fs.smbfs, Pyfilesystem2 over SMB using pysmb

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

fs.proxy-0.1.4.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

fs.proxy-0.1.4-py2.py3-none-any.whl (10.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file fs.proxy-0.1.4.tar.gz.

File metadata

  • Download URL: fs.proxy-0.1.4.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for fs.proxy-0.1.4.tar.gz
Algorithm Hash digest
SHA256 0a7a13ad8684a5fb29f9ead14a6218253b423c7f1c89de2ca8d226c851e52f3f
MD5 48ace7f77c71df93f4b595c474ba91ee
BLAKE2b-256 45b424903dab54640aa681ed5e8c3017a8d9512b75ceec757191505f20c3857b

See more details on using hashes here.

File details

Details for the file fs.proxy-0.1.4-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for fs.proxy-0.1.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 de2e0ec8496c6f6ccf57f714e2122f63f0c6f0eb0f7823b8e2910ae45c691a1d
MD5 e0ed9fbc99d0a9f73be360cf284a38ed
BLAKE2b-256 981cfc16b62bb2278aa8117dd7385e729c723fde24400bff1e81cc2f4c93657c

See more details on using hashes here.

Supported by

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