This release improves gearbox#gevent server by guaranteeing that gevent monkeypatching always happens before the application is loaded.
This solves some issues with modules the user might have imported in app_cfg.py which didn't get properly monkeypatched.
Version major change is experimental support for Python3.
Some improvements for MongoDB support are also included:
- Read-Write support for Ming ManyToMany relations
- Write support for Ming OneToMany and ManyToOne relations
- None values won't get striped anymore when performing updates on Ming documents fields
* Initial work to decouple from SQLAlchemy, it is now possible to create pluggable applications that don't need SQLAlchemy, like Ming/MongoDB based.
* If the base application (the one where the pluggable apps are plugged) doesn't provide a model, the models of the plugged apps get disabled. This permits to use pluggable application that don't need a database even with apps that don't provide one
* plug_url now provides the qualified=True option to generate fully qualified urls for plugged apps.
* Templates replaced with replace_template now correctly get replaced even when rendered by an error_handler declared in "@validate"
* Templates Patching has improved error reporting and documentation
* Fixed some bugs in Pluggable Apps migrations support, now they work even when the pluggable app distribution is named diffrently form the pluggable app module.
Version 0.7 introduces support for:
* Path Translation, it is now possible to specify a path translator when creating a dispatcher, this will allow to dispatch paths which contain special characters to plain python methods.
* Improved extension stripping support. Extension stripping got a speed up and it is now possible to explicitly disable it.
Both features together make possible to easily serve paths like "socket.io" to a "socket_io" controller or method.
Crank based TurboGears version will keep their current behaviour as the two features need to be explicitly enabled.
TurboGears will help you to create a database-driven, ready-to-extend application in minutes. All with designer friendly templates, easy AJAX on the browser side and on the server side, with an incredibly powerful and flexible Object Relational Mapper (ORM), and with code that is as natural as writing a function.