=========
Flask-FS2
=========
Simple and easy file storages for Flask.
|CI badge|
Compatibility
=============
Flask-FS requires Python 3.7+ and Flask/Werkzeug 2.0.0+.
Amazon S3 support requires Boto3.
GridFS support requires PyMongo 3+.
OpenStack Swift support requires python-swift-client.
Installation
============
You can install Flask-FS with pip:
.. code-block:: console
$ pip install flask-fs
# or
$ pip install flask-fs[s3] # For Amazon S3 backend support
$ pip install flask-fs[swift] # For OpenStack swift backend support
$ pip install flask-fs[gridfs] # For GridFS backend support
$ pip install flask-fs[all] # To include all dependencies for all backends
Quick start
===========
.. code-block:: python
from flask import Flask
import flask_fs as fs
app = Flask(__name__)
fs.init_app(app)
images = fs.Storage('images')
if __name__ == '__main__':
app.run(debug=True)
Contributions
=============
All contributions are welcome as long as they respect the `C4
contract <https://rfc.zeromq.org/spec:42/C4>`__.
Code must follow the pep8 convention.
About authors
=============
Flask-FS2 is maintained by CGWire, a company based in France. We help animation
and VFX studios to collaborate better through efficient tooling.
We already work with more than 70 studios around the world.
It's a fork of `this project <https://github.com/noirbizarre/flask-fs>`__.
Visit `cg-wire.com <https://cg-wire.com>`__ for more information.
|CGWire Logo|
.. |CI badge| image:: https://github.com/cgwire/flask-fs2/actions/workflows/ci.yml/badge.svg
:target: https://github.com/cgwire/flask-fs2/actions/workflows/ci.yml
.. |CGWire Logo| image:: https://zou.cg-wire.com/cgwire.png
:target: https://cg-wire.com
Changelog
=========
Current
-------
0.7.4 (2022-01-24)
------------------
- CGWire will maintain this fork
- Flask-FS2 requires Python 3.7+ and Flask/Werkzeug 2.0.0+
- Remove all code related to Python 2
- Added ``read_chunks()`` operations
- Add region configuration for Swift and S3
0.6.1 (2018-04-19)
------------------
- Fix a race condition on local backend directory creation
- Proper content type handling on GridFS (thanks to @rclement)
0.6.0 (2018-03-27)
------------------
- Added ``copy()`` and ``move()`` operations
- ``delete()`` now supports directories (or prefixes for key/value stores)
- Improve ``metadata()`` ``mime`` handling
- Added explicit ``ImageField.full(external=False)``
0.5.1 (2018-03-12)
------------------
- Fix ``local`` backend ``list_files()`` nested directories handling
0.5.0 (2018-03-12)
------------------
- Added ``metadata`` method to ``Storage`` to retrieve file metadata
- Force ``boto3 >= 1.4.5`` because of API change (lifecycle)
- Drop Python 3.3 support
- Create parent directories when opening a local file in write mode
0.4.1 (2017-06-24)
------------------
- Fix broken packaging for Python 2.7
0.4.0 (2017-06-24)
------------------
- Added backend level configuration ``FS_{BACKEND_NAME}_{KEY}``
- Improved backend documentation
- Use setuptools entry points to register backends.
- Added `NONE` extensions specification
- Added `list_files` to `Storage` to list the current bucket files
- Image optimization preserve file type as much as possible
- Ensure images are not overwritted before rerendering
0.3.0 (2017-03-05)
------------------
- Switch to pytest
- ``ImageField`` optimization/compression.
Resized images are now compressed.
Default image can also be optimized on upload with ``FS_IMAGES_OPTIMIZE = True``
or by specifying `optimize=True` as field parameter.
- ``ImageField`` has now the ability to rerender images with the ``rerender()`` method.
0.2.1 (2017-01-17)
------------------
- Expose Python 3 compatibility
0.2.0 (2016-10-11)
------------------
- Proper github publication
- Initial S3, GridFS and Swift backend implementations
- Python 3 fixes
0.1 (2015-04-07)
----------------
- Initial release
Raw data
{
"_id": null,
"home_page": "https://github.com/cgwire/flask-fs2",
"name": "flask-fs2",
"maintainer": "CG Wire",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "support@cg-wire.com",
"keywords": null,
"author": "Axel Haustant",
"author_email": "noirbizarre@gmail.com",
"download_url": null,
"platform": null,
"description": "=========\nFlask-FS2\n=========\n\nSimple and easy file storages for Flask.\n\n|CI badge|\n\n\nCompatibility\n=============\n\nFlask-FS requires Python 3.7+ and Flask/Werkzeug 2.0.0+.\n\nAmazon S3 support requires Boto3.\n\nGridFS support requires PyMongo 3+.\n\nOpenStack Swift support requires python-swift-client.\n\n\nInstallation\n============\n\nYou can install Flask-FS with pip:\n\n.. code-block:: console\n\n $ pip install flask-fs\n # or\n $ pip install flask-fs[s3] # For Amazon S3 backend support\n $ pip install flask-fs[swift] # For OpenStack swift backend support\n $ pip install flask-fs[gridfs] # For GridFS backend support\n $ pip install flask-fs[all] # To include all dependencies for all backends\n\n\nQuick start\n===========\n\n.. code-block:: python\n\n from flask import Flask\n import flask_fs as fs\n\n app = Flask(__name__)\n fs.init_app(app)\n\n images = fs.Storage('images')\n\n\n if __name__ == '__main__':\n app.run(debug=True)\n\n\nContributions\n=============\n\nAll contributions are welcome as long as they respect the `C4\ncontract <https://rfc.zeromq.org/spec:42/C4>`__.\n\nCode must follow the pep8 convention.\n\nAbout authors\n=============\n\nFlask-FS2 is maintained by CGWire, a company based in France. We help animation \nand VFX studios to collaborate better through efficient tooling. \nWe already work with more than 70 studios around the world.\n\nIt's a fork of `this project <https://github.com/noirbizarre/flask-fs>`__.\n\nVisit `cg-wire.com <https://cg-wire.com>`__ for more information.\n\n|CGWire Logo|\n\n.. |CI badge| image:: https://github.com/cgwire/flask-fs2/actions/workflows/ci.yml/badge.svg\n :target: https://github.com/cgwire/flask-fs2/actions/workflows/ci.yml\n.. |CGWire Logo| image:: https://zou.cg-wire.com/cgwire.png\n :target: https://cg-wire.com\n\nChangelog\n=========\n\nCurrent\n-------\n\n0.7.4 (2022-01-24)\n------------------\n\n- CGWire will maintain this fork\n- Flask-FS2 requires Python 3.7+ and Flask/Werkzeug 2.0.0+\n- Remove all code related to Python 2\n- Added ``read_chunks()`` operations\n- Add region configuration for Swift and S3\n\n0.6.1 (2018-04-19)\n------------------\n\n- Fix a race condition on local backend directory creation\n- Proper content type handling on GridFS (thanks to @rclement)\n\n0.6.0 (2018-03-27)\n------------------\n\n- Added ``copy()`` and ``move()`` operations\n- ``delete()`` now supports directories (or prefixes for key/value stores)\n- Improve ``metadata()`` ``mime`` handling\n- Added explicit ``ImageField.full(external=False)``\n\n0.5.1 (2018-03-12)\n------------------\n\n- Fix ``local`` backend ``list_files()`` nested directories handling\n\n0.5.0 (2018-03-12)\n------------------\n\n- Added ``metadata`` method to ``Storage`` to retrieve file metadata\n- Force ``boto3 >= 1.4.5`` because of API change (lifecycle)\n- Drop Python 3.3 support\n- Create parent directories when opening a local file in write mode\n\n0.4.1 (2017-06-24)\n------------------\n\n- Fix broken packaging for Python 2.7\n\n0.4.0 (2017-06-24)\n------------------\n\n- Added backend level configuration ``FS_{BACKEND_NAME}_{KEY}``\n- Improved backend documentation\n- Use setuptools entry points to register backends.\n- Added `NONE` extensions specification\n- Added `list_files` to `Storage` to list the current bucket files\n- Image optimization preserve file type as much as possible\n- Ensure images are not overwritted before rerendering\n\n0.3.0 (2017-03-05)\n------------------\n\n- Switch to pytest\n- ``ImageField`` optimization/compression.\n Resized images are now compressed.\n Default image can also be optimized on upload with ``FS_IMAGES_OPTIMIZE = True``\n or by specifying `optimize=True` as field parameter.\n- ``ImageField`` has now the ability to rerender images with the ``rerender()`` method.\n\n0.2.1 (2017-01-17)\n------------------\n\n- Expose Python 3 compatibility\n\n0.2.0 (2016-10-11)\n------------------\n\n- Proper github publication\n- Initial S3, GridFS and Swift backend implementations\n- Python 3 fixes\n\n\n0.1 (2015-04-07)\n----------------\n\n- Initial release\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Simple and easy file storages for Flask",
"version": "0.7.27",
"project_urls": {
"Homepage": "https://github.com/cgwire/flask-fs2"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "36f17b7f43db9b54d4a74901b40fcbf10f5e52241c8183742e601ef28ab2b5ad",
"md5": "5a01afaefc55063a2714f32cd7421c51",
"sha256": "53c7d07009da489c7383cf68021dbda76dee66ccf8cc2494d99609e53442673e"
},
"downloads": -1,
"filename": "flask_fs2-0.7.27-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "5a01afaefc55063a2714f32cd7421c51",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.8",
"size": 38068,
"upload_time": "2024-07-12T00:25:01",
"upload_time_iso_8601": "2024-07-12T00:25:01.103342Z",
"url": "https://files.pythonhosted.org/packages/36/f1/7b7f43db9b54d4a74901b40fcbf10f5e52241c8183742e601ef28ab2b5ad/flask_fs2-0.7.27-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-12 00:25:01",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "cgwire",
"github_project": "flask-fs2",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "flask-fs2"
}