Hi Team, 

Thanks a ton for the new features and improvements!

I'm just getting started and was trying to run web2py.exe on Windows 7 
after downloading it from 
http://www.web2py.com/examples/static/web2py_win.zip (2.0.2 stable).

However, ran into this error:

****************************** 
D:\web2py>web2py -S welcome
Traceback (most recent call last):
  File "web2py.py", line 16, in <module>
  File "gluon/__init__.py", line 15, in <module>
  File "gluon/globals.py", line 24, in <module>
  File "gluon/serializers.py", line 11, in <module>
  File "gluon/languages.py", line 264, in <module>
  File "gluon/languages.py", line 250, in read_possible_plurals
WindowsError: [Error 3] The system cannot find the path specified: 
'D:\\web2py\\gluon\\contrib\\rules/*.*'
******************************

Then, realized there was no folder called "gluon" in the extracted folder. 
I downloaded the source 
from http://www.web2py.com/examples/static/web2py_src.zip and copied the 
"gluon" folder from this source code to the previous web2py folder.

This solved the error and was able to web2py GUI. Hope this helps.

Regards,
Sridhar

On Thursday, August 30, 2012 9:11:34 AM UTC+5:30, Massimo Di Pierro wrote:
>
> After 5 months. It is done. This is the most waited and the most 
> feature-packed release.
>
> I am sure we'll find some corners that need to be ironed but it is 
> considerably better than 1.99.7. It adds lot of new features and improves 
> many existing ones:
>
> - 57,000 new lines of code and closed 279 issues since 1.99.7.
> - Retrieving data from DB should be faster, in particular 
> select(cacheable=True)
> - Has a new scheduler, a built-in wiki, new language and pluralization 
> system, better markmin with oembed support and better scaffolding app, 
> increased security.
> - Lots of experimental features including GIS support, mongodb support, 
> built-in auth.wiki(), and more.
>
> Should be 100% backward compatible. If you run into any issue let us know 
> ASAP.
>
> I personally want to thank the major contributors to this release (in 
> alphabetic order)
> Alan, Andrew, Anthony, Bruno, Christian, Dave, Dominic, Iceberg, Jonathan, 
> Marc, Mariano, Marin, Martin, Mark, Michael, Michele, Niphlod, Patrick, 
> Vladyslav, 
> They spend many nights testing, coding, debugging at a very fast pace.
>
> Many many people have contributed.
>
> If your contribution has not been properly acknowledged please let us know 
> ASAP. It is probably an oversight.
>
>
> Massimo
>
>
> Detailed changelog
> ===============
>
> ## 2.00.2
>
> ### DAL Improvements
>
> - Support for DAL(lazy_tables=True) and db.define_table(on_define=lambda 
> table:), thanks Jonathan
> - db(...).select(cacheable=True) make select 30% faster
> - db(...).select(cache=(cache.ram,3600)) now caches parsed data 100x faster
> - db(...).count(cache=(cache.ram,3600)) now supported
> - MongoDB support in DAL (experimental), thanks Mark Breedveld
> - geodal and spatialite, thanks Denes and Fran (experimental)
> - db.mytable._before_insert, _after_insert, _before_update, _after_update, 
> _before_delete. _after_delete (list of callbacks)
> - db(...).update_naive(...) same as update but ignores 
> table._before_update and table._after_update
> - DAL BIGINT support and DAL(...,bigint_id=True)
> - IS_IN_DB(..., distinct=True)
> - new syntax: db.mytable.insert(myuploadfield=open(....)), thank you 
> Iceberg
> - db(...).select(db.mytable.myfield.count(distinct=True))
> - db(db.a)._update(name=db(db.b.a==db.a.id).nested_select(db.b.id))
> - db.mytable.myfield.filter_in, filter_out
> - db.mytable._enable_record_versioning(db) adds versioning to this table
> - teradata adapter, thanks Andrew Willimott
> - experimental Sybase Adapter
> - added db.table.field.avg()
> - Support for Google App Engine projections, thanks Christian
> - Field(... 'upload', default=path) now accepts a path to a local file as 
> default value, if user does not upload a file. Relative path looks inside 
> current application folder, thanks Marin
> - executesql(...,fields=,columns=) allows parsing of results in Rows, 
> thanks Anthony
>
> ### Auth improvements
>
> - auth.enable_record_versioning(db)  adds full versioning to all tables
> - @auth.requires_login(otherwise=URL(...))
> - auth supports salt and compatible with third party data, thanks Dave 
> Stoll
> - CRYPT now defaults to pbkdf2(1000,20,sha1)
> - Built-in wiki with menu, tags, search, media, permissions. def index: 
> return auth.wiki()
> - auth.settings.everybody_group_id
> - allow storage of uploads on any PyFileSystem (including amazon)
>
> ### Form improvements
>
> - FORM.confirm('Are you sure?',{'Back':URL(...)})
> - SQLFORM.smartdictform(dict)
> - form.add_button(value,link)
> - SQLFORM.grid(groupby='...')
> - fixed security issue with SQLFORM.grid and SQLFORM.smartgrid
> - more export options in SQLFORM.grid and SQLFORM.smartgrid (html, xml, 
> csv, ...)
>
> ### Admin improvements
>
> - new admin pages: manage_students, bulk_regsiter, and progress reports
> - increased security in admin against CSRF
> - experimental Git integration
> - experimental OpenShift deployment
> - multi-language pluralization engine 
> - ace text web editor in admin
> - Ukrainian translations, thanks Vladyslav Kozlovskyy
> - Romanian translation for welcome, thanks ionel
> - support for mercurial 2.6, thanks Vlad
>
> ### Scheduler Improvements (thanks to niphlod, ykessler, dhx, toomim)
>
> - web2py.py -K myapp -X starts the myapp scheduler alongside the webserver
> - tasks are marked EXPIRED (if stop_time passed)
> - functions with no result don't end up in scheduler_run
> - more options: web2py.py -E -b -L
> - scheduler can now handle 10k tasks with 20 concurrent workers and with 
> no issues
> - new params:
>     tasks can be found in the environment (no need to define the tasks 
> parameter)
>     max_empty_runs kills the workers automatically if no new tasks are 
> found in queue (nice for "spikes" of processing power)
>     discard_results to completely discard the results (if you don't need 
> the output of the task)
>     utc_time enables datetime calculations with UTC time
> - scheduler_task changes:
>     task_name is no longer required (filled automatically with 
> function_name if found empty)
>     uuid makes easy to coordinate scheduler_task maintenance (filled 
> automatically if not provided)
>     stop_time has no default (previously was today+1)
>     retry_failed to requeue automatically failed tasks
>     sync_output refreshes automatically the output (nice to report 
> percentages)
> - workers can be:
>     DISABLED (put to sleep and do nothing if not sending the heartbeat 
> every 30 seconds)
>     TERMINATE (complete the current task and then die)
>     KILL (kill ASAP)
>
> ### Other Improvements 
>
> - gluon/contrib/webclient.py makes it easy to create functional tests for 
> app
> - DIV(..).elements(...replace=...), thanks Anthony
> - new layout based on Twitter Bootstrap
> - New generic views: generic.ics (Mac Mail Calendar) and generic.map 
> (Google Maps)
> - request.args(0,default=0, cast=int, otherwise=URL(...)), thanks Anthony
> - redirect(...,type='auto') will be handled properly in ajax responses
> - routes in can redirect outside with 
> routes_in=[('/path','303->http://..')]
> - better memcache support
> - improved spreadsheet, thanks Alan
> - new internationalization engine, thanks Vladyslav
> - pluralization engine, thanks Vladyslav
> - new markmin with support for nested lists, <i>, <em>, autolinks, thanks 
> Vladyslav
> - new syntax: {{=BR()*5}}
> - gluon.cache.lazy_cache decorator allows caching functions in modules
> - .coffee and .less support in response.files, thanks Sam Sheftel
> - ldap certificate support
> - pg8000 postgresql driver support (experimental)
> - @cache('%(name)s%(args)s%(vars)s',5) and cache.autokey
> - added tox.ini, thanks Marc
> - web2py.py --run_system_tests, thanks Marc Abramowitz
> - html.py (and web2py helpers) can be used without web2py dependencies
> - new fpdf, thanks Mariano
>

-- 



Reply via email to