ok


       Ovidio Marinho Falcao Neto
             ovidio...@gmail.com
               83   8826 9088 - Oi
             83   9334 0266 - Claro
                   Paraiba-Brasil



2011/9/28 Massimo Di Pierro <massimo.dipie...@gmail.com>

> I have updated the online book, the content, not the app, with my most
> recent edits.
> Not everything is documented yet but lot more stuff is. The book is
> about 10% bigger already.
> When done should be 20-30% bigger than the 3rd edition.
>
> Here is a list of new features that are documented in 3.1 but not in
> 3.0 [x] and features that are not yet documented [ ]:
>
> [x] LICENSE CHANGE FROM GPLv2 to LGPLv3
> [x] new URL syntax
> [x] URL(...,scheme=,host=,port=)
> [x] URL(...,user_signature=True), LOAD(...,user_signature=True)
> [x] new T behavior
> [x] db(db.table) equivalent to db(db.table.id>0)
> [x] IS_DECIMAL_IN_RANGE and IS_FLOAT_IN_RANGE support dot="," (dot="."
> is default)
> [x] on_failed_authorization can be a function
> [x] SQLFORM.process()
> [x] SQLFORM.accepts(detect_record_change).record_changed
> [x] session.connect(separate=True) to handle many session files
> [x] support for count(distinct=...)
> [x] IS_MATCH(...,strict=True)
> [x] No more Auth(globals(),db), just Auth(db). Same for Crud and
> Service.
> [x] efficient db(...).isempty()
> [x] "from gluon import *"
> [x] from mymodule import *
> [x] request.is_local
> [x] request.is_https
> [x] login_methods/loginza.py
> [x] DAL(...,migrate_enabled=False) to disable all migrations
> [x] DAL(...,fake_migrate_all=True) to rebuild all corrupted metadata
> [x] messages in validators have default internationalization
> [x] web2py.py -J for running cron
> [x] bpython shell support, thanks Arun
> [x] response.toolbar()
> [x] db._timings contains database query timing info
> [x] new represent syntax
> [x] COL and COLGROUP helpers
> [x] auth.settings.login_after_registration=True
> [x] SQLFORM(...,separator=': ') now customizable
> [x] combined expressions print db.data.body.len().sum()
> [x] request.utcnow
> [x] web2py_ajax.html is more modular, thanks Anthony
> [x] current
> [x] dal expression.coalesce(*options)
> [x] response.include_meta() and response.include_files()
> [x] dal auto-reconnect on time-out connections
> [x] DAL(...,adapter_arg={}) allows support for alternate drivers
> [x] new simpler API gluon.contrib.AuthorizeNet.procss(...)
> [x] upgraded to anytime
> [x] new alterante syntax for inner joins: db(...).select(join=...)
> [x] new syntax rows[i]('tablename.fieldname')
> [x] new DAL (complete rewrite of the web2py DAL is more modular)
> [x] new query syntax field.contains(list,all=True or False)
> [x] validate_and_update, thanks Bruno
> [x] web2py HTTP responses now set: "X-Powered-By: web2py", thanks
> Bruno
> [x] auth.settings.extra_fields['auth_user'].append(Field('country'))
> [x] A(...,callback=URL(...),larget='id') does Ajax
> [x] support for A(name,callback=url,target='id',delete='tr')
> [x] DAL 'request_tenant' fields are special, the altomatically filer
> all records based on their default value.
> [x] db._common_fields.append(Field('owner')) allows to add fields to
> ALL tables
> [x] CAS with v2 support
> [x] all applications can delegate to login to external provider
>    Auth(...,cas_provider='http://.../other_app/default/user/cas')
> [x] isapiwsgihandler.py
> [x] setup-web2py-nginx-uwsgi-ubuntu.sh
> [x] DAL(..,auto_import=True) automatically imports tables from
> metadata  without need to db.define_table(...)s.
> [x] field.represent = lambda value,record: .... (record is optional)
> [x] gluon/contrib/redis_cache.py
> [x] gluon/contrib/simplejsonrpc.py
> [x] expire_sessions.py respects expiration time, thanks iceberg
> [x] auth.settings.cas_actions
> [~] auth.signature (experimental) -> needs more in auth
> [~] generic views -> may need more info
>
>
> ## admin
> [ ] admin allow ``DEMO_MODE=True`` and ``FILTER_APPS=['welcome']``
> [ ] new admin layout (thanks Branko Vukelic)
> [ ] new admin wizard
> [ ] wizard can download plugins
> [ ] better mercual admin allows list of files, versions and retrieve
> [ ] admin has MULTI_USER_MODE (admin/models/0.py)
>
> ## welcome and examples
> [ ] new Welcome app (thanks Martin Mulone)
> [ ] new layout for examples, thanks Bruno and Martin
> [ ] cleaner/simpler welcome/models/db.py and welcome layout.html
> [ ] moderniz 1.17
> [ ] experimental REST API
>
> ## table and grids
>
> [ ] SQLTABLE?
> [ ] SQLTABLE(...,headers='labels') thanks Bruno
> [ ] new SQLFORM.grid and SQLFORM.smartgrid
> [ ] support for natural language queries (english only)
> [ ] support for computed columns and additional links in SQLFORM.grid
>
> ## other
> [ ] new pip installer (Chris Steel)
> [ ] new app level logging with logging.conf (Jonathan)
> [ ] Polymmodel support on GAE
> [ ] pyfpdf (Mariano)
> [ ] auth.impersonate
> [ ] conditional models
> [ ] DAL now allows circular table definitions
> [ ] scripts/access.wsgi and apache+mod_wsgi
> [ ] scripts/make_min_web2py.py
> [ ] new cpdb.py, thanks Mart
> [ ] request.user_agent(), thanks Ross
> [ ] x509 support (needs rocket upgrade, thanks Michele)
> [ ] detection of mobile devices and @mobilize helper
>
> ## experimental features
> [ ] experimental gluon/scheduler.py  (experimental)
> [ ] db.table.field=Field.Lazy(...)  (experimental)
> [ ] web2py comet via gluon/contrib/comet_messaging.py (html5
> websockets)
> [ ] experimental cubrid database support
>
>

Reply via email to