Metadata-Version: 1.2
Name: flask-allows
Version: 0.7.1
Summary: Impose authorization requirements on Flask routes
Home-page: https://github.com/justanr/flask-allows
Author: Alec Nikolas Reiter
Author-email: alecreiter@gmail.com
License: MIT
Description: .. image:: https://travis-ci.org/justanr/flask-allows.svg?branch=master
            :target: https://travis-ci.org/justanr/flask-allows
        
        .. image:: https://coveralls.io/repos/github/justanr/flask-allows/badge.svg?branch=master
            :target: https://coveralls.io/github/justanr/flask-allows?branch=master
        
        
        
        flask-allows
        ============
        
        Are your permissions making too much noise all the time? Are your permissions
        stomping all over your actual code? Are your permission decorators clawing
        at your line count all the time? Think there's no answer? There is! Flask-Allows.
        
        
        Flask-Allows is an authorization tool for Flask inspired by
        `django-rest-framework <https://github.com/tomchristie/django-rest-framework>`_'s
        permissioning system and `rest_condition <https://github.com/caxap/rest_condition>`_'s
        ability to compose simple requirements into more complex ones.
        
        Installation
        ------------
        
        Flask-Allows is available on `pypi <https://pypi.org/project/flask-allows/>`_ and
        installable with::
        
            pip install flask-allows
        
        Flask Allows supports 2.7, and 3.4+. Support for 3.3 was ended in the version
        0.3 release.
        
        .. note::
        
            If you are installing ``flask-allows`` outside of a virtual environment,
            consider installing it with ``pip install --user flask-allows`` rather
            than using sudo or adminstrator privileges to avoid installing it into
            your system Python.
        
        
        More Information
        ----------------
        
        - For more information, `please visit the documentation <https://flask-allows.readthedocs.io/en/latest/>`_.
        - Found a bug, have a question, or want to request a feature? Here is our `issue tracker <https://github.com/justanr/flask-allows/issues>`_.
        - Need the source code? Here is the `repository <https://github.com/justanr/flask-allows>`_
        
        
        Change Log
        ==========
        
        Version 0.7.1 (2018-10-03)
        --------------------------
        
        * Added requirement name to deprecation message to make tracking down
          user-only requirements warnings easier.
        
        Version 0.7 (2018-09-03)
        ------------------------
        
        * Added ``flask_allows.view.guard_entire`` and
          ``flask_allows.views.exempt_from_requirements`` to make protecting entire
          blueprints easier.
        * Added ``__all__`` export markers to flask_allows modules to prevent accidental
          re-export of other symbols when using ``from flask_allows.module import *``
        
        
        Version 0.6 (2018-05-26)
        ------------------------
        
        * ``Permission`` no longer needs an application context for construction
          but does require one for evaluation now.
        * Added ``Allows.run`` a public helper that performs the complete fulfill and
          fail cycle. This cleans up the duplication between ``Allows.requires``,
          ``requires`` and ``Permission.__enter__``
        * Removed ``Permission.throw_type``
        * Removed ``PermissionedView``, ``PermissionedMethodView``
        * Added ability to disable requirements already registered on routes and inside
          handlers via the ``flask_allows.overrides.OverrideManager`` class
        * Added ability to add more requirements to be run during checks on routes
          and other handlers via the ``flask_allows.additional.AdditionalManager`` class
        
        
        
        Version 0.5.1 (2018-04-22)
        --------------------------
        
        * Added ``wants_request`` to ease transition to user only requirements
        
        
        
        Version 0.5 (2018-04-17)
        ------------------------
        
        * Real documentation
        * Accepting request in requirements is now deprecated, pending removal in
          1.0
        * Promoted internal ``_allows`` context local to part of the public interface
        * Bug Fix: ConditionalRequirement returned False when no requirements were provided
            it now returns True and mimics the behavior of ``all`` better
        
        
        Version 0.4 (2017-08-29)
        ------------------------
        
        * Clarify deprecation message for PermissionedView, will be removed in 0.6
        * Deprecate Permission.throw_type for 0.6 removak
        * Add optional on_fail for `allows.requires` and `requires` decoration
        * Fix coverage path problem with local testing
        
        Version 0.3.2 (2017-08-29)
        --------------------------
        
        * Fix package data not being included
        
        
        Version 0.3.1 (2017-08-20)
        --------------------------
        
        * Fix error that prevent sdist builds on 2.7
        
        
        Version 0.3 (2017-08-20)
        ------------------------
        
        * Drop official support for Python 3.3
        * Deprecate implicit decoration on class based views via the requirements attribute
        
Keywords: flask,authorization,permissions
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Flask
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*
