Metadata-Version: 2.1
Name: airfs
Version: 1.5.2
Summary: A Python library for cloud and remote file Systems.
Home-page: https://github.com/JGoutin/airfs
License: Apache License, Version 2.0
Keywords: file-system,storage,io,stream,cloud,cloud-storage,blob,bucket,alibaba,aws,azure,github,http,openstack,oss,s3,swift,minio
Author: J.Goutin
Requires-Python: >=3.8,<4.0
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: System :: Filesystems
Provides-Extra: all
Provides-Extra: azure-blob
Provides-Extra: azure-file
Provides-Extra: oss
Provides-Extra: s3
Provides-Extra: swift
Requires-Dist: azure-storage-blob (>=2,<3) ; extra == "all" or extra == "azure-blob"
Requires-Dist: azure-storage-file (>=2,<3) ; extra == "all" or extra == "azure-file"
Requires-Dist: boto3 (>=1.26,<2.0) ; extra == "all" or extra == "s3"
Requires-Dist: oss2 (>=2.15,<3.0) ; extra == "all" or extra == "oss"
Requires-Dist: python-dateutil
Requires-Dist: python-swiftclient[keystone] (>=4,<5) ; extra == "all" or extra == "swift"
Requires-Dist: requests
Project-URL: Documentation, https://jgoutin.github.io/airfs/
Project-URL: Repository, https://github.com/JGoutin/airfs
Description-Content-Type: text/markdown

![Tests](https://github.com/JGoutin/airfs/workflows/tests/badge.svg)
[![codecov](https://codecov.io/gh/JGoutin/airfs/branch/master/graph/badge.svg)](https://codecov.io/gh/JGoutin/airfs)
[![PyPI](https://img.shields.io/pypi/v/airfs.svg)](https://pypi.org/project/airfs)

airfs: A Python library for cloud and remote file Systems
=========================================================

airfs brings standard Python I/O to various storages (like cloud objects storage, remote
file-systems, ...) by providing:

* Abstract classes of Cloud objects with the complete ``io.RawIOBase`` and
  ``io.BufferedIOBase`` standard interfaces.
* Features equivalent to the standard library (``io``, ``os``, ``os.path``, ``shutil``)
  for seamlessly managing storage objects and local files.

These functions are source agnostic and always provide the same interface for all files
from storage or local file systems.

Buffered storage objects also support the following features:

* Buffered asynchronous writing of any object size.
* Buffered asynchronous preloading in reading mode.
* Write or read lock depending on memory usage limitation.
* Maximization of bandwidth using parallels connections.

For more information, refer to the [documentation](https://jgoutin.github.io/airfs/).

Supported storage
-----------------

airfs is compatible with the following storage services:

* Alibaba Cloud OSS
* AWS S3 / [MinIO](https://github.com/minio/minio)
* GitHub (Read Only)
* Microsoft Azure Blobs Storage
* Microsoft Azure Files Storage
* OpenStack Swift Object Store

airfs can also access any publicly accessible file via HTTP/HTTPS (Read only).

---

*"airfs" is a fork of the unmaintained "[Pycosio](https://github.com/Accelize/pycosio)" 
project by its main developer.*

