Metadata-Version: 2.1
Name: airfs
Version: 1.4.0
Summary: A Python library for cloud and remote file Systems
Home-page: https://github.com/JGoutin/airfs
Author: J.Goutin
License: Apache License, Version 2.0
Project-URL: Documentation, https://airfs.readthedocs.io
Project-URL: Download, https://pypi.org/project/airfs
Keywords: cloud cloud-storage bucket io stream file-system
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Topic :: System :: Filesystems
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Operating System :: OS Independent
Requires-Python: >=3.5
Description-Content-Type: text/markdown; charset=UTF-8
Requires-Dist: requests (>=2.20.0)
Requires-Dist: python-dateutil (>=2.6.0)
Provides-Extra: all
Requires-Dist: azure-storage-file (>=1.3.0) ; extra == 'all'
Requires-Dist: python-swiftclient[keystone] (>=3.3.0) ; extra == 'all'
Requires-Dist: boto3 (>=1.5.0) ; extra == 'all'
Requires-Dist: azure-storage-blob (<=2.1.0,>=1.3.0) ; extra == 'all'
Requires-Dist: oss2 (>=2.3.0) ; extra == 'all'
Provides-Extra: azure_blob
Requires-Dist: azure-storage-blob (<=2.1.0,>=1.3.0) ; extra == 'azure_blob'
Provides-Extra: azure_file
Requires-Dist: azure-storage-file (>=1.3.0) ; extra == 'azure_file'
Provides-Extra: oss
Requires-Dist: oss2 (>=2.3.0) ; extra == 'oss'
Provides-Extra: s3
Requires-Dist: boto3 (>=1.5.0) ; extra == 's3'
Provides-Extra: swift
Requires-Dist: python-swiftclient[keystone] (>=3.3.0) ; extra == 'swift'

[![Linux Build Status](https://travis-ci.org/JGoutin/airfs.svg?branch=master)](https://travis-ci.org/JGoutin/airfs)
[![Windows Build status](https://ci.appveyor.com/api/projects/status/7rs8s16srj459o15?svg=true)](https://ci.appveyor.com/project/JGoutin-application/airfs)
[![codecov](https://codecov.io/gh/JGoutin/airfs/branch/master/graph/badge.svg)](https://codecov.io/gh/JGoutin/airfs)
[![Documentation Status](https://readthedocs.org/projects/airfs/badge/?version=latest)](https://airfs.readthedocs.io/en/latest/?badge=latest)
[![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 cloud objects and other 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 cloud objects and local files.

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

Buffered cloud 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.

Supported Cloud storage
-----------------------

airfs is compatible with the following cloud objects storage services:

* Alibaba Cloud OSS
* Amazon Web Services S3
* Microsoft Azure Blobs Storage
* Microsoft Azure Files Storage
* OpenStack Swift

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

About airfs and Pycosio
-----------------------

"airfs" is a fork of the Accelize's 
"[Pycosio](https://github.com/Accelize/pycosio)" project.

The "Pycosio" project was started in 2018 to complement the products of the
Accelize company. Over time and as Accelize products evolved, the library was
no longer needed in the company's products and was maintained less and less.
Since mid 2019, Accelize no longer has an interest in continuing to develop the
library and no one is working on it.

As creator and sole developer of the library at Accelize, I decided to create a
fork of the project so that it is now maintained by the open source community
under the name "airfs" (the name "Pycosio" being the property of Accelize).


