web2py v1.96.1 Release Notes
-
- "from gluon import *" imports in every python module a web2py environment (A, DIV,..SQLFORM, DAL, Field,...) including current.request, current.response, current.session, current.T, current.cache, thanks Jonathan.
- conditional models in models//a.py and models///a.py
- from mymodule import *, looks for mymodule in applications/thisapp/modules first and then in sys.path. No more need for local_import. Thanks Pierre.
๐ usage of generic.* views is - by default - restricted to localhost for security. This can be changed in a granular way with: response.generic_patterns=['*']. This is a slight change of behavior for new app but a major security fix.
all applications have cas 2.0 provider at http://.../user/cas/login
all applications can delegate to login to external provider Auth(...,cas_provider='http://.../other_app/default/user/cas')
A(...,callback=URL(...),larget='id') does Ajax
URL(...,user_signature=True), LOAD(...,user_signature=True) can sign urls and @auth.requires_signature() will check the signature for any decorated action.
DAL(...,migrate_enabled=False) to disable all migrations
DAL(...,fake_migrate_all=True) to rebuild all corrupted metadata
๐ new DAL metadata format (databases/*.table)
๐ DAL(...,adapter_arg={}) allows support for alternate drivers
DAL now allows circular table defintions
๐ DAL(..,auto_import=True) automatically imports tables from metadata without need to db.define_table(...)s.
๐ new alterante syntax for inner joins: db(...).select(join=...)
๐ experimental cubrid database support
0๏ธโฃ DAL 'request_tenant' fields are special, the altomatically filer all records based on their default value.
db._common_fields.append(Field('owner')) allows to add fields to ALL tables
DAL ignores repeated fields with same names
web2py_ajax.html is more modular, thanks Anthony
request.is_local
request.is_http
๐ new sessions2trash.py thanks Jim Karsten
corrupted cache files are automatically deleted
๐ new simpler API gluon.contrib.AuthorizeNet.procss(...)
๐ fixed recaptcha (as they released new API)
0๏ธโฃ messages in validators have default internationalization
No more Auth(globals(),db), just Auth(db). Same for Crud and Service.
scripts/access.wsgi allows apache+mod_wsgi to delegate authentication of any URL to any web2py app
๐ json now supports T(...)
scripts/setup-web2py-nginx-uwsgi-ubuntu.sh
web2py HTTP responses now set: "X-Powered-By: web2py", thanks Bruno
๐ mostly fixed generic.pdf. You can view any page in PDF if you have pdflatex installed or if your html follows the pyfpdf convention.
auth.settings.extra_fields['auth_user'].append(Field('country')) allows to extend auth_* tables without need of definiting a custom auth_* table. Must be placed before auth.define_tables()
{{=response.toolbar()}} to help you debug applications
๐ web based shell now supports object modifications (but no redefinitions of non-serializable types)
jQuery 1.6.1
๐ Lots of bug fixes