We should have tested the osx and win more. This is my mistake. Other minor issues are physiological. Anyway, I believe all issues have been taken care within 24hrs.
massimo On Friday, August 31, 2012 7:28:19 AM UTC-5, viniciusban wrote: > > See, guys, I'm not blaming anyone and I'm not saying Web2py is not good, > or your work failed. > > I pay my bills working with web2py for the last year. I use it for 3 > years, now. I really like that and help spread the word. > > > > Web2py has so much features and it is impossible to test everything. > > Sorry, but I cannot agree with this statement. Is it the official > position? > > Remember, one of the strengths is our backward compatibility. It can be > achieved with detailed tests **before** anouncing a new stable release. > > "Stable" means: "you can download and just use it". Anything different > is "almost stable" or "buggy yet" or, using beautiful words, "release > candidate" or "pre-release version". > > I'd like to hear your oppinions. > > -- > Vinicius Assef > > > > On 08/31/2012 09:01 AM, Marin Pranjić wrote: > > It is called stable since no one using trunk/nightly build detected > > those errors. > > > > I agree with you, but you cannot blame anyone. > > > > > > On Fri, Aug 31, 2012 at 1:44 PM, [email protected] <javascript:> > > <mailto:[email protected] <javascript:>> <[email protected]<javascript:> > > <mailto:[email protected] <javascript:>>> wrote: > > > > First of all, I'd like to thank you all. You're making a great job, > > guys. > > I see web2py becoming more reliable to bigger projects and I'm very > > pleased with it. > > You all rock! :-) > > > > In spite of this huge effort, isn't it premature to call 2.0.2 or > > even 2.0.3 stable? I know there were several months of hard work, > > but if we have bugs detected so fast, we cannot call it stable yet, > > right? > > > > Maybe some release candidate call or a pre-release period for tests, > > before spreading it as stable would help us. > > > > -- > > Vinicius Assef > > > > > > On 08/30/2012 05:49 PM, Massimo Di Pierro wrote: > > > > All bugs reported today have been fixed in 2.0.3 out now (except > > a minor > > issue with markmin that we are investigating). > > > > If you find other issues, please continue report them. We'd > > rather fix > > them sooner rather than later. > > > > Thanks for all your help and testing. > > > > Massimo > > > > > > > > On Wednesday, 29 August 2012 22:41:34 UTC-5, 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 < > http://db.a.id> > > <http://db.a.id>).nested___select(db.b.id <http://db.b.id> > > <http://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 > > > > -- > > > > > > > > > > -- > > > > > > > > > > -- > > > > > > > --

