- allow binding flask to ipv6
- deprecation message for wsgi.host and wsgi.port
- github workflow for unit tests
- python3.6 support
- updated dependencies
- python3.8, python3.9 support
- python2 support
- python3.7 support
field
property for configuration attributes- data_id attribute for data plugin
- move to Ctl for release/package management
- data_id config attribute for data plugins
- tox py2.7 tests
- zeromq plugin py3 support
- travis tests and coverage reports
- pluginmgr 0.5.0 support
- app versioning (#10)
- pinned pluginmgr version to <0.5.0 for the time being
- wsgi plugin: static_routes config attribute
- fix #8: re-index data handler graceful error handling when passed empty rows in data
- fix #8: errors in data handlers will now log errors instead of raising
- nested configuration handlers
- nested configuration sharing
- shared config attributes in vodka.config.shared (#6)
- can now specify additional template locations for TemplatedApplication instances via the 'template_locations' configuration attribute. (#3)
- can now override another applications templates by creating an aproporiately named subdirectory in the overriding applications template directory (#3)
- WebApplication: added 'includes' config attribute for controlled static media library loading (js, css)
- bartender newapp command now creates an empty init.py in the plugin directory
- templating logic was split out of WebApplication into TemplatedApplication
- support for asyncio as async handler (py >= 3.4)
- setuptools entry point 'vodka.extend' to allow loading of plugin extensions
- trailing whitespace removed
- Python 3 support
- config attribute deprecation indication
- wsgi plugin: added bind config attribute that will replace host and port in a future version. If bind, host and port are all set bind will be given priority.
- Configuration validation for plugins that used config attributes in their initialization
- WebApplication: tmpl_engine config attribute renamed to template_engine
- wsgi: support for route decorators in config
- wsgi: added host variable to template env
- flask: crossdomain route decorator
- documentation
- application configuration attribute: requires - allows an application to specify other applications as required to make sure they get loaded first in the app loading process
- gunicorn wsgi server support
- web application ssl support
- module name specified in application config is now always respected
- newapp command will now create an init.py file
- applications can now provide their own plugins
- gevent async handler
- util.SearchPathImporter as it was redundant
- bartender command: newapp, generates a blank vodka application stucture
- util.SearchPathImporter for vodka application loading
- refactored app loading to allow each app to have a separate home location
- wsgi plugin: request env now contains an app object for each instantiated app
- home config variable in vodka config root, replaced by app home
- plugins/django, allows you to use django**s orm
- bartender command: config, interactive config creation
- impl plugin.setup() method that is called right before a plugin is started
- impl base class for class registry decorator
- additional unittests
- plugins/flask, fail gracefully when trying to import flask
- plugins are now instantiated before applications
- vodka.app.register now a decorator