Web Server Pyramid for AnyBlok
Project description
.. This file is a part of the AnyBlok / Pyramid project
..
.. Copyright (C) 2015 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2019 Jean-Sebastien SUZANNE <js.suzanne@gmail.com>
..
.. This Source Code Form is subject to the terms of the Mozilla Public License,
.. v. 2.0. If a copy of the MPL was not distributed with this file,You can
.. obtain one at http://mozilla.org/MPL/2.0/.
.. image:: https://img.shields.io/pypi/pyversions/anyblok_delivery.svg?longCache=True
:alt: Python versions
.. image:: https://travis-ci.org/AnyBlok/Anyblok_Pyramid.svg?branch=master
:target: https://travis-ci.org/AnyBlok/Anyblok_Pyramid
:alt: Build status
.. image:: https://coveralls.io/repos/github/AnyBlok/Anyblok_Pyramid/badge.svg?branch=master
:target: https://coveralls.io/github/AnyBlok/Anyblok_Pyramid?branch=master
:alt: Coverage
.. image:: https://img.shields.io/pypi/v/Anyblok_Pyramid.svg
:target: https://pypi.python.org/pypi/Anyblok_Pyramid/
:alt: Version status
.. image:: https://readthedocs.org/projects/anyblok-pyramid/badge/?version=latest
:alt: Documentation Status
:scale: 100%
:target: https://doc.anyblok-pyramid.anyblok.org/en/latest/?badge=latest
AnyBlok / Pyramid
=================
AnyBlok / Pyramid make the link between `AnyBlok <http://doc.anyblok.org>`_ and
`Pyramid <http://pyramid.readthedocs.org/>`_
It also gives you some bloks for adding user http authentication and role
based authorization to your project.
+-------------------+--------------+----------------------------------------------------------+
| Blok | Dependencies | Description |
+===================+==============+==========================================================+
| **Pyramid** | | Add hooks to connect Pyramid authentification, OIDC |
| | | Relying Party and authorization |
+-------------------+--------------+----------------------------------------------------------+
| **auth** | **pyramid** | Add 'User' and 'User.Role' models. |
+-------------------+--------------+----------------------------------------------------------+
| **auth-password** | **auth** | Add 'User.CredentialStore' model, a simple |
| | | login, password table |
+-------------------+--------------+----------------------------------------------------------+
| **authorization** | **auth** | Add 'User.Authorization' model for managing permissions |
+-------------------+--------------+----------------------------------------------------------+
| **user_identity** | **auth** | Add some column on model **Model.Pyramid.User** |
+-------------------+--------------+----------------------------------------------------------+
AnyBlok / Pyramid is released under the terms of the `Mozilla Public License`.
See the `latest documentation <http://doc.anyblok-pyramid.anyblok.org/>`_
.. This file is a part of the AnyBlok / Pyramid project
..
.. Copyright (C) 2015 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2016 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2017 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
..
.. This Source Code Form is subject to the terms of the Mozilla Public License,
.. v. 2.0. If a copy of the MPL was not distributed with this file,You can
.. obtain one at http://mozilla.org/MPL/2.0/.
Front Matter
============
Information about the AnyBlok / Pyramid project.
Project Homepage
----------------
AnyBlok is hosted on `github <http://github.com>`_ - the main project
page is at https://github.com/AnyBlok/AnyBlok_Pyramid. Source code is
tracked here using `GIT <https://git-scm.com>`_.
Releases and project status are available on Pypi at
http://pypi.python.org/pypi/anyblok_pyramid.
The most recent published version of this documentation should be at
http://doc.anyblok-pyramid.anyblok.org.
Project Status
--------------
AnyBlok with Pyramid is currently in beta status and is expected to be fairly
stable. Users should take care to report bugs and missing features on an as-needed
basis. It should be expected that the development version may be required
for proper implementation of recently repaired issues in between releases;
Installation
------------
Install released versions of AnyBlok from the Python package index with
`pip <http://pypi.python.org/pypi/pip>`_ or a similar tool::
pip install anyblok_pyramid
Installation via source distribution is via the ``setup.py`` script::
python setup.py install
Installation will add the ``anyblok`` commands to the environment.
Unit Test
---------
To run framework tests with ``pytest``::
pip install pytest
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/tests
To run tests of all installed bloks::
dropdb test_anyblok
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok anyblok_createdb --install-bloks auth
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/bloks/auth
dropdb test_anyblok
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok anyblok_createdb --install-bloks auth-password
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/bloks/password
dropdb test_anyblok
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok anyblok_createdb --install-bloks authorization
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/bloks/authorization
dropdb test_anyblok
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok anyblok_createdb --install-bloks user-identity
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/bloks/user_identity
AnyBlok is tested continuously using `Travis CI
<https://travis-ci.org/AnyBlok/Anyblok_Pyramid>`_
Dependencies
------------
AnyBlok works with **Python 3.3** and later. The install process will
ensure that `AnyBlok <http://doc.anyblok.org>`_,
`Pyramid <http://pyramid.readthedocs.org/>`_ are installed, in addition to
other dependencies. The latest version of them is strongly recommended.
Contributing (hackers needed!)
------------------------------
Anyblok / Pyramid is at a very early stage, feel free to fork, talk with core
dev, and spread the word!
Author
------
Jean-Sébastien Suzanne
Contributors
------------
`Anybox <http://anybox.fr>`_ team:
* Georges Racinet
* Jean-Sébastien Suzanne
* Simon André
* Pierre Verkest
`Sensee <http://sensee.com>`_ team:
* Franck Bret
* Jean-Sébastien Suzanne
`ZeProfile <http://zeprofile.com>`_ team:
* Franck Bret
* Alexis Tourneux
Bugs
----
Bugs and feature enhancements to AnyBlok should be reported on the `Issue
tracker <https://github.com/AnyBlok/Anyblok_Pyramid/issues>`_.
.. This file is a part of the AnyBlok / Pyramid project
..
.. Copyright (C) 2015 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2016 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2017 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2018 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2019 Jean-Sebastien SUZANNE <js.suzanne@gmail.com>
.. Copyright (C) 2020 Jean-Sebastien SUZANNE <js.suzanne@gmail.com>
.. Copyright (C) 2020 Pierre Verkest <pierreverkest84@gmail.com>
.. Copyright (C) 2021 Jean-Sebastien SUZANNE <js.suzanne@gmail.com>
..
.. This Source Code Form is subject to the terms of the Mozilla Public License,
.. v. 2.0. If a copy of the MPL was not distributed with this file,You can
.. obtain one at http://mozilla.org/MPL/2.0/.
CHANGELOG
=========
1.2.2 (2021-05-17)
------------------
* Fixed before_commit SQLAlchemy event, the status of the transaction must be
COMMITING or ACTIVE
1.2.1 (2021-05-17)
------------------
* Forced Pyramid version before upgrade to 2.0
* Refactored code to rename **registry** by **anyblok**
* Improved coverage
1.2.0 (2020-12-03)
------------------
* Added **restrict_query_by_user** decorator in order to apply query filters
related to a given user
* Added utilities to setup roles and authorizations
1.1.1 (2020-10-16)
------------------
* Fixed the size of the fields **model**, because they have a
foreign key to the model **Model.System.Model** on the field
**name**. The next version of AnyBlok check that the size are the same
1.1.0 (2020-08-31)
------------------
* Added IODC by Pierre Verkest <pierreverkest84@gmail.com>
* Added enum_adapter for enum Column
* Allow to set HttpOnly cookie in pyramid authkt configuration
1.0.0 (2020-05-12)
------------------
* Added **pyramid** blok, used to do a better isolation
* Created a new adapter for timedelta objects. It can parametrized using
the new timedelta_adapter_factory and TimedeltaModes enumeration
* Removed **Python 3.4** capability
* Removed **Python 3.5** capability
* Refactored unittest, replaced nose by pytest
0.9.5 (2019-11-01)
------------------
* Fixed, missing dependencies
0.9.4 (2019-11-01)
------------------
* Fixed #21 that `zope.sqlalchemy 1.2 <https://pypi.org/project/zope.sqlalchemy/#id1>`_ rename a class
* [ADD] **user-identity** blok. Splitted anyblok_pyramid/auth blok to
separate authentication fields from user identity fields
0.9.3 (2019-06-23)
------------------
* Refactored unittest and helpper from nose to pytest
0.9.2 (2018-08-10)
------------------
* Fix get_acl method
* Add max age for static path, issue #13
0.9.1 (2018-05-30)
------------------
* Fix get_acl method
* Update logging output
0.9.0 (2018-02-27)
------------------
* [FIX] commited session with pyramid
* [ADD] Authentication configuration
* [ADD] **auth** blok
* [ADD] **auth-password** blok
* [ADD] **authorization** blok
* [FIX] console script whith gunicorn and wsgi server
Put all the serveur in loadwithoutmigration=True, AnyBlok can add some
lock during the migration and must do in specal action
0.8.2 (2017-12-23)
------------------
* [FIX] anyblok cache invalidation
* [FIX] replace SQLAlchemy deprecated extension by session events
0.8.1 (2017-11-28)
------------------
* [REF] replace the overload of ``init_registry`` by ``init_registry_with_bloks``
0.8.0 (2017-10-14)
------------------
* [DEL] Remove configuration group definition ``preload``
* [REF] use ``configuration_post_load`` function to initialize services
0.7.2 (2017-10-18)
------------------
* [ADD] Some apdater to convert to json
- datetime_adapter
- date_adapter
- decimal_adapter
- uuid_adapter
- bytes_adapter
0.7.1 (2016-12-05)
------------------
* [FIX] add pluggins in autoload configuration for unittest
* [FIX] type replace asset by assert
* [FIX] fix gunicorn script, load the plugins config part
0.7.0 (2016-07-11)
------------------
* [FIX] Adapte for new release of AnyBlok 0.9.0
* [Add] Plugin get_db_name
* [ADD] some unittest
* [REF] Update doc
0.6.3 (2016-06-20)
------------------
* [FIX] bad release for 0.6.2
0.6.2 (2016-06-20)
------------------
* [FIX] utf-8 encoding in setup, need for readthedocs
* [REF] move from bitbucket (mercurial) to github (git)
0.6.1 (2016-04-18)
------------------
* [FIX] for Python < 3.5
0.6.0 (2016-04-18)
------------------
.. warning::
This version break the compatibility with previous version. The goal
is to use all the functionnality of pyramid, and give the tools to make
the bind with AnyBlok easily
* [REM] remove old Controller declarations:
* Declarations.Pyramid
* Declarations.PyramidHTTP
* Declarations.PyramidJSONRPC
* Declarations.PyramidXMLRPC
* [ADD] add anyblok request property
::
registry = request.anyblok.registry
* [ADD] installed_blok predicate for route and view
::
@view_config(route_name='hello', installed_blok='my-blok')
def say_hello(request):
...
* [ADD] need_anyblok_registry predicate for route and view
::
@view_config(route_name='hello', need_anyblok_registry=True)
def say_hello(request):
...
0.5.3 (2016-03-17)
------------------
* [REF] Preload database, add log and check if the database exist before load
it
* [FIX] catch simple exception to reput in real rpc exception
0.5.2 (2016-01-15)
------------------
* [FIX] use anyblok parser for config with gunicorn
* [REF] entry point init is now in anyblok
0.5.1 (2016-01-08)
------------------
* [REF] Adapt with the new version of AnyBlok
* [IMP] Add new entry point to load function before load AnyBlok bloks
0.5.0 (2016-01-07)
------------------
* [ADD] pyramid_pm and zope.sqlalchemy to isolate each controller call
0.4.1 (2015-10-9)
-----------------
* [ADD] console script, implementation with gunicorn only
* [ADD] wsgi script to give un app for wsgi server
0.4.0 (2015-08-25)
------------------
.. warning::
this version can not be capable with the previous version
.. note::
Works only with AnyBlok 0.5.1 and after
* [REF] Add entry point to add new pyramid includeme and settings
* [DEL] properties decorator, it is useless because pyramid have a better
behaviour
* [REF] add workingset to define overwritable callback used for application,
no for the blok, add first callback, get_registry
* [REF] unit test cause of new version of AnyBlok 0.5.0
* [FIX] unit test case, update controller to unload the declaration when
BlokManager are unloaded
0.3.2 (2015-06-22)
------------------
* [REF] cause of upgrade version of AnyBlok 0.4.0
0.3.1 (2015-05-04)
------------------
* [FIX] default value for beaker, None is better than ''
0.3.0 (2015-05-04)
------------------
* [IMP] console script argsparse for pyramid and beaker
* [ADD] MANIFEST.in
* [FIX] script cause of remove logging configuration from AnyBlok
0.2.0 (2015-03-15)
------------------
* [ADD] configurator callable
* [REF] Adapt the import of python module of the blok, cause of the change in
AnyBlok version 0.2.2
0.1.0 (2015-02-07)
------------------
Main version of AnyBlok / Pyramid. You can with this version
* Declare Views / Routes for application
* Declare controller (Views / Routes) which depend of the installation of bloks
* XHR
* JsonRPC
* XmlRPC
* Possibility to check some property as authentification
* Possibility to define properties check
..
.. Copyright (C) 2015 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2019 Jean-Sebastien SUZANNE <js.suzanne@gmail.com>
..
.. This Source Code Form is subject to the terms of the Mozilla Public License,
.. v. 2.0. If a copy of the MPL was not distributed with this file,You can
.. obtain one at http://mozilla.org/MPL/2.0/.
.. image:: https://img.shields.io/pypi/pyversions/anyblok_delivery.svg?longCache=True
:alt: Python versions
.. image:: https://travis-ci.org/AnyBlok/Anyblok_Pyramid.svg?branch=master
:target: https://travis-ci.org/AnyBlok/Anyblok_Pyramid
:alt: Build status
.. image:: https://coveralls.io/repos/github/AnyBlok/Anyblok_Pyramid/badge.svg?branch=master
:target: https://coveralls.io/github/AnyBlok/Anyblok_Pyramid?branch=master
:alt: Coverage
.. image:: https://img.shields.io/pypi/v/Anyblok_Pyramid.svg
:target: https://pypi.python.org/pypi/Anyblok_Pyramid/
:alt: Version status
.. image:: https://readthedocs.org/projects/anyblok-pyramid/badge/?version=latest
:alt: Documentation Status
:scale: 100%
:target: https://doc.anyblok-pyramid.anyblok.org/en/latest/?badge=latest
AnyBlok / Pyramid
=================
AnyBlok / Pyramid make the link between `AnyBlok <http://doc.anyblok.org>`_ and
`Pyramid <http://pyramid.readthedocs.org/>`_
It also gives you some bloks for adding user http authentication and role
based authorization to your project.
+-------------------+--------------+----------------------------------------------------------+
| Blok | Dependencies | Description |
+===================+==============+==========================================================+
| **Pyramid** | | Add hooks to connect Pyramid authentification, OIDC |
| | | Relying Party and authorization |
+-------------------+--------------+----------------------------------------------------------+
| **auth** | **pyramid** | Add 'User' and 'User.Role' models. |
+-------------------+--------------+----------------------------------------------------------+
| **auth-password** | **auth** | Add 'User.CredentialStore' model, a simple |
| | | login, password table |
+-------------------+--------------+----------------------------------------------------------+
| **authorization** | **auth** | Add 'User.Authorization' model for managing permissions |
+-------------------+--------------+----------------------------------------------------------+
| **user_identity** | **auth** | Add some column on model **Model.Pyramid.User** |
+-------------------+--------------+----------------------------------------------------------+
AnyBlok / Pyramid is released under the terms of the `Mozilla Public License`.
See the `latest documentation <http://doc.anyblok-pyramid.anyblok.org/>`_
.. This file is a part of the AnyBlok / Pyramid project
..
.. Copyright (C) 2015 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2016 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2017 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
..
.. This Source Code Form is subject to the terms of the Mozilla Public License,
.. v. 2.0. If a copy of the MPL was not distributed with this file,You can
.. obtain one at http://mozilla.org/MPL/2.0/.
Front Matter
============
Information about the AnyBlok / Pyramid project.
Project Homepage
----------------
AnyBlok is hosted on `github <http://github.com>`_ - the main project
page is at https://github.com/AnyBlok/AnyBlok_Pyramid. Source code is
tracked here using `GIT <https://git-scm.com>`_.
Releases and project status are available on Pypi at
http://pypi.python.org/pypi/anyblok_pyramid.
The most recent published version of this documentation should be at
http://doc.anyblok-pyramid.anyblok.org.
Project Status
--------------
AnyBlok with Pyramid is currently in beta status and is expected to be fairly
stable. Users should take care to report bugs and missing features on an as-needed
basis. It should be expected that the development version may be required
for proper implementation of recently repaired issues in between releases;
Installation
------------
Install released versions of AnyBlok from the Python package index with
`pip <http://pypi.python.org/pypi/pip>`_ or a similar tool::
pip install anyblok_pyramid
Installation via source distribution is via the ``setup.py`` script::
python setup.py install
Installation will add the ``anyblok`` commands to the environment.
Unit Test
---------
To run framework tests with ``pytest``::
pip install pytest
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/tests
To run tests of all installed bloks::
dropdb test_anyblok
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok anyblok_createdb --install-bloks auth
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/bloks/auth
dropdb test_anyblok
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok anyblok_createdb --install-bloks auth-password
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/bloks/password
dropdb test_anyblok
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok anyblok_createdb --install-bloks authorization
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/bloks/authorization
dropdb test_anyblok
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok anyblok_createdb --install-bloks user-identity
ANYBLOK_DATABASE_DRIVER postgresql ANYBLOK_DATABASE_NAME test_anyblok py.test anyblok_pyramid/bloks/user_identity
AnyBlok is tested continuously using `Travis CI
<https://travis-ci.org/AnyBlok/Anyblok_Pyramid>`_
Dependencies
------------
AnyBlok works with **Python 3.3** and later. The install process will
ensure that `AnyBlok <http://doc.anyblok.org>`_,
`Pyramid <http://pyramid.readthedocs.org/>`_ are installed, in addition to
other dependencies. The latest version of them is strongly recommended.
Contributing (hackers needed!)
------------------------------
Anyblok / Pyramid is at a very early stage, feel free to fork, talk with core
dev, and spread the word!
Author
------
Jean-Sébastien Suzanne
Contributors
------------
`Anybox <http://anybox.fr>`_ team:
* Georges Racinet
* Jean-Sébastien Suzanne
* Simon André
* Pierre Verkest
`Sensee <http://sensee.com>`_ team:
* Franck Bret
* Jean-Sébastien Suzanne
`ZeProfile <http://zeprofile.com>`_ team:
* Franck Bret
* Alexis Tourneux
Bugs
----
Bugs and feature enhancements to AnyBlok should be reported on the `Issue
tracker <https://github.com/AnyBlok/Anyblok_Pyramid/issues>`_.
.. This file is a part of the AnyBlok / Pyramid project
..
.. Copyright (C) 2015 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2016 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2017 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2018 Jean-Sebastien SUZANNE <jssuzanne@anybox.fr>
.. Copyright (C) 2019 Jean-Sebastien SUZANNE <js.suzanne@gmail.com>
.. Copyright (C) 2020 Jean-Sebastien SUZANNE <js.suzanne@gmail.com>
.. Copyright (C) 2020 Pierre Verkest <pierreverkest84@gmail.com>
.. Copyright (C) 2021 Jean-Sebastien SUZANNE <js.suzanne@gmail.com>
..
.. This Source Code Form is subject to the terms of the Mozilla Public License,
.. v. 2.0. If a copy of the MPL was not distributed with this file,You can
.. obtain one at http://mozilla.org/MPL/2.0/.
CHANGELOG
=========
1.2.2 (2021-05-17)
------------------
* Fixed before_commit SQLAlchemy event, the status of the transaction must be
COMMITING or ACTIVE
1.2.1 (2021-05-17)
------------------
* Forced Pyramid version before upgrade to 2.0
* Refactored code to rename **registry** by **anyblok**
* Improved coverage
1.2.0 (2020-12-03)
------------------
* Added **restrict_query_by_user** decorator in order to apply query filters
related to a given user
* Added utilities to setup roles and authorizations
1.1.1 (2020-10-16)
------------------
* Fixed the size of the fields **model**, because they have a
foreign key to the model **Model.System.Model** on the field
**name**. The next version of AnyBlok check that the size are the same
1.1.0 (2020-08-31)
------------------
* Added IODC by Pierre Verkest <pierreverkest84@gmail.com>
* Added enum_adapter for enum Column
* Allow to set HttpOnly cookie in pyramid authkt configuration
1.0.0 (2020-05-12)
------------------
* Added **pyramid** blok, used to do a better isolation
* Created a new adapter for timedelta objects. It can parametrized using
the new timedelta_adapter_factory and TimedeltaModes enumeration
* Removed **Python 3.4** capability
* Removed **Python 3.5** capability
* Refactored unittest, replaced nose by pytest
0.9.5 (2019-11-01)
------------------
* Fixed, missing dependencies
0.9.4 (2019-11-01)
------------------
* Fixed #21 that `zope.sqlalchemy 1.2 <https://pypi.org/project/zope.sqlalchemy/#id1>`_ rename a class
* [ADD] **user-identity** blok. Splitted anyblok_pyramid/auth blok to
separate authentication fields from user identity fields
0.9.3 (2019-06-23)
------------------
* Refactored unittest and helpper from nose to pytest
0.9.2 (2018-08-10)
------------------
* Fix get_acl method
* Add max age for static path, issue #13
0.9.1 (2018-05-30)
------------------
* Fix get_acl method
* Update logging output
0.9.0 (2018-02-27)
------------------
* [FIX] commited session with pyramid
* [ADD] Authentication configuration
* [ADD] **auth** blok
* [ADD] **auth-password** blok
* [ADD] **authorization** blok
* [FIX] console script whith gunicorn and wsgi server
Put all the serveur in loadwithoutmigration=True, AnyBlok can add some
lock during the migration and must do in specal action
0.8.2 (2017-12-23)
------------------
* [FIX] anyblok cache invalidation
* [FIX] replace SQLAlchemy deprecated extension by session events
0.8.1 (2017-11-28)
------------------
* [REF] replace the overload of ``init_registry`` by ``init_registry_with_bloks``
0.8.0 (2017-10-14)
------------------
* [DEL] Remove configuration group definition ``preload``
* [REF] use ``configuration_post_load`` function to initialize services
0.7.2 (2017-10-18)
------------------
* [ADD] Some apdater to convert to json
- datetime_adapter
- date_adapter
- decimal_adapter
- uuid_adapter
- bytes_adapter
0.7.1 (2016-12-05)
------------------
* [FIX] add pluggins in autoload configuration for unittest
* [FIX] type replace asset by assert
* [FIX] fix gunicorn script, load the plugins config part
0.7.0 (2016-07-11)
------------------
* [FIX] Adapte for new release of AnyBlok 0.9.0
* [Add] Plugin get_db_name
* [ADD] some unittest
* [REF] Update doc
0.6.3 (2016-06-20)
------------------
* [FIX] bad release for 0.6.2
0.6.2 (2016-06-20)
------------------
* [FIX] utf-8 encoding in setup, need for readthedocs
* [REF] move from bitbucket (mercurial) to github (git)
0.6.1 (2016-04-18)
------------------
* [FIX] for Python < 3.5
0.6.0 (2016-04-18)
------------------
.. warning::
This version break the compatibility with previous version. The goal
is to use all the functionnality of pyramid, and give the tools to make
the bind with AnyBlok easily
* [REM] remove old Controller declarations:
* Declarations.Pyramid
* Declarations.PyramidHTTP
* Declarations.PyramidJSONRPC
* Declarations.PyramidXMLRPC
* [ADD] add anyblok request property
::
registry = request.anyblok.registry
* [ADD] installed_blok predicate for route and view
::
@view_config(route_name='hello', installed_blok='my-blok')
def say_hello(request):
...
* [ADD] need_anyblok_registry predicate for route and view
::
@view_config(route_name='hello', need_anyblok_registry=True)
def say_hello(request):
...
0.5.3 (2016-03-17)
------------------
* [REF] Preload database, add log and check if the database exist before load
it
* [FIX] catch simple exception to reput in real rpc exception
0.5.2 (2016-01-15)
------------------
* [FIX] use anyblok parser for config with gunicorn
* [REF] entry point init is now in anyblok
0.5.1 (2016-01-08)
------------------
* [REF] Adapt with the new version of AnyBlok
* [IMP] Add new entry point to load function before load AnyBlok bloks
0.5.0 (2016-01-07)
------------------
* [ADD] pyramid_pm and zope.sqlalchemy to isolate each controller call
0.4.1 (2015-10-9)
-----------------
* [ADD] console script, implementation with gunicorn only
* [ADD] wsgi script to give un app for wsgi server
0.4.0 (2015-08-25)
------------------
.. warning::
this version can not be capable with the previous version
.. note::
Works only with AnyBlok 0.5.1 and after
* [REF] Add entry point to add new pyramid includeme and settings
* [DEL] properties decorator, it is useless because pyramid have a better
behaviour
* [REF] add workingset to define overwritable callback used for application,
no for the blok, add first callback, get_registry
* [REF] unit test cause of new version of AnyBlok 0.5.0
* [FIX] unit test case, update controller to unload the declaration when
BlokManager are unloaded
0.3.2 (2015-06-22)
------------------
* [REF] cause of upgrade version of AnyBlok 0.4.0
0.3.1 (2015-05-04)
------------------
* [FIX] default value for beaker, None is better than ''
0.3.0 (2015-05-04)
------------------
* [IMP] console script argsparse for pyramid and beaker
* [ADD] MANIFEST.in
* [FIX] script cause of remove logging configuration from AnyBlok
0.2.0 (2015-03-15)
------------------
* [ADD] configurator callable
* [REF] Adapt the import of python module of the blok, cause of the change in
AnyBlok version 0.2.2
0.1.0 (2015-02-07)
------------------
Main version of AnyBlok / Pyramid. You can with this version
* Declare Views / Routes for application
* Declare controller (Views / Routes) which depend of the installation of bloks
* XHR
* JsonRPC
* XmlRPC
* Possibility to check some property as authentification
* Possibility to define properties check
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
anyblok_pyramid-1.2.2.tar.gz
(49.8 kB
view details)
Built Distribution
File details
Details for the file anyblok_pyramid-1.2.2.tar.gz
.
File metadata
- Download URL: anyblok_pyramid-1.2.2.tar.gz
- Upload date:
- Size: 49.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Python-urllib/3.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a253d4ace530bef3988315ab9a13cc5927e274bf2d8e3af3352a0a2a6d7c342 |
|
MD5 | 0076eb796c5269792d5415c070f0be76 |
|
BLAKE2b-256 | 8c17d80b53bb3ff913da825bd95042a51f926ccb70c2bb2f78e0e4c2b2bd4486 |
File details
Details for the file anyblok_pyramid-1.2.2-py3-none-any.whl
.
File metadata
- Download URL: anyblok_pyramid-1.2.2-py3-none-any.whl
- Upload date:
- Size: 78.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: Python-urllib/3.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c56b07ff61349ace99da9a2f9487bee16ce86c4a8969490a1d8f6a8e0b39b480 |
|
MD5 | c90557353a04a9669b0a7183020ebef3 |
|
BLAKE2b-256 | 6dc941ce4fbbe99a728963efcb6dffe534d8296e9fa17c149944c033def083b8 |