Web2py and its support community are fantastic. I will try to participate more in testing.
On Friday, August 31, 2012 7:46:29 AM UTC-5, Massimo Di Pierro wrote: > > 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] >> > <mailto:[email protected]> <[email protected] >> > <mailto:[email protected]>> 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 >> > >> > -- >> > >> > >> > >> > >> > -- >> > >> > >> > >> > >> > -- >> > >> > >> > >> > --

