The TurboGears team is pleased to announce the immediate availability of
TurboGears 2.3.0 beta. Our very own Alessandro Molina has been hard at work
making this release possible. While the full changelog is below, a few of
the highlights are listed here.

* Removal of all dependencies on Pylons
* All dependencies have been upgraded to their latest revisions. We are
only maintaining the private index for this release during the beta phase.
* 100% Test coverage of the entire project
* Major documentation rewrites
* Python 3 compatibility
* Replacement of paster with gearbox

Really, this release is so huge, we've been going through a limited beta
test before opening up to a generally available beta test. We need your
feedback to make this the best release of TurboGears that has ever happened.

To install it, simply use this command: pip install -f
http://tg.gy/230/tg.devtools

We hope you find this as useful as we do!

* cope with the new jinja and markupsafe releases
* Report widget key instead of widget id for TW2 form_errors, this is to
cope with the case ids have been changed and don't match the value names
anymore
* Add tests for json encoding of pagination Pages
* Add support for serializing to json paginated collections
* Refactor response management and WSGI app forward. now only TGApp is in
charge of calling start_response, also the TGController.__call__ is
guaranteed to always return a WebOb Response object that can then be
changed by application wrappers
* Replacing repoze.tm2 with a custom transaction manager to avoid generator
consumption issue caused by repoze.tm2 version 2.0
* repoze.tm2 now always returns contenst through a generator, so by default
we must use registry manager in streaming mode
* As caching is used internaly only permit to disable sessions for now
* Make easy to enable or disable beaker usage
* remove genshi trunk install as 0.7 got released
* remove info command, it was not implemented over gearbox
* Add test to check that setting up an app with package without app_globals
works
* Fix jinja test on Py3.2
* when no lib.app_globals.Globals is provided use the default Bunch based
one
* app_config: Added i18n extension to Jinja2 template renderer by default
* Added Jinja i18n support tests
* app_config: Added i18n extension to Jinja2 template renderer by default
* wsgiref should be part of python
* test on py3.3 too, all tests should be passing
* do not expect parameters to be encoded in any particular order when
generating links
* Fix directory not being removed after test when running on py3.3
* More tests depending on dictionary ordering
* Avoid issues with dictionary keys ordering when running tests, this is to
make tests pass on py3.3
* For now keep below webtest 2 due to backward incompatible changes
* Avoid crash in jinja setup when no application package is available
* when default renderer is not between renderers choose a new default
renderer
* When minimal disable dotted templates notation by default so that
packages are not required
* Make possible to declare an authenticate method in TGAuthMetadata This
makes possible to use authentication on Py3 by avoiding the
repoze.who.plugins.sa dependency, also instead of having to use external
packages to provide authenticators for ming and sqla they should simply be
provided by the quickstart inside the app itself much like
get_user,get_groups and get_permissions are.
* fix repositories location
* Update for 230 the setup.cfg
* fixed error_handler code in dispatch to point to controller last seen in
the stack.
* Fix string compare in test on py3
* reach full coverage, add tests for ming options and fix ming options
* Add test for coerce_config utils
* Avoid registering the Session and Cache objects more than once
* Remove friendlyform dependency
* Fix issue with SQLA 0.8
* Make the Page have a length
* Expose some core parts for single file web services into the tg namespace
* Fix issue with registry compatibility when paste StackedObjectProxy are
used instead of tg StackedObjectProxy
* Make possible to choose redirection type in tg.redirect and move
@with_trailing_slash and @without_trailing_slash to 301 permanent redirect
for SEO
* Add support for SQLAlchemy queries in pagination and test it
* Refactor auth module and provide a py3 compatible alternative to
FriendlyFormPlugin
* Tune package dependencies name for private index
* Provide coverage of wsgiapp, just ignore pylons compatibility mode and
routes support
* Full coverage for statics file serving
* Provide full coverage for stacked objects registry
* Bring tg.validation to 100% coverage
* fix DottedFileLocatorError on Py3
* Remove app: prefix support from template lookup and add tests for tg.util
* Full coverage tests for pagination
* fix issues with body request/response management in py3
* This requires some investigation, on travis the json date encoding is
different
* Clean up request/response and provide tests
* Require WebOb >= 1.2 and provide some tests for the request
* Tests for tg.render and remove deprecated flash and flash_status vars in
template
* Enable context provider for TraceErrorsMiddleware
* make call_wsgi_application an internal detail for StatusCodeRedirect
* tests don't pass on travis-ci even though they do on same python version
on other systems
* fix test on py26
* Skip mongodb jsonify on py3
* Add missing tests for json encoding
* Add tests for i18n management and fix some issues in i18n
* Fix tg.predicates bool evaluation on Py3 and cover tg.predicates with
tests
* Full coverage for tg.flash module
* Add globals preservation after request in case of exceptions to make them
available in debuggers
* Make use of backlash.TraceErrorsMiddleware when debug mode is disabled
* dottednames.mako_lookup brought to 100% coverage
* Bring to full coverage jinja_lookup and kajiki_lookup
* Refactor StackedProxyObject and TurboGearsContextMember and start testing
the registry
* tg.decorators now 100% covered
* Remove postpone_commits decorator, it was not documented and it's better
suited to specific projects needs than to the framework itself
* Remove allow_only decorator which actually didn't work and test was
disabled
* Increase tg.decorators module coverage
* Fix pylons_formencode_gettext on Py3
* More tests for utils
* declare tg.url used functions internal and test on Py2 and Py3
* Bring dispatcher to 100% coverage and fix issue with mount_steps with
AppConfig minimal mode
* Various cleanup, brings 100% coverage on decorated controller. Moved
toscawidgets.default_view in app_config and removed _configured_engines
which did nothing
* Extend the minimal setup to more options
* Various Speedups
* Should provide support on PY3
* Fixx BalancedSession and provide full coverage for it
* Always update even with nonzero is not available
* Improve testing for auth and remove unused else case from
_AuthenticationForgerPlugin
* This test cannot run on Py3 now
* AppConfig is now 100% coverage
* Add Test for toscawidgets setup
* Fix commit_veto currently not being used at all due to repoze.tm2.make_tm
accepting a configuration dictionary, not the commit_veto callable
* Let tgming force ming version
* Skip tests for repoze.who.plugins.sa not importing on py3
* correct dependency
* tests for auth setup, bringing coverage up to 97%
* Bring app_config coverage up to 90% on Py2.x
* 84% coverage for app_config, skipping chameleon.genshi and amf
* Focus on coverage on py2.x, raise tg.configuration.app_config coverage to
80%
* Make possible for template engine setup functions to remove themselves
when they fail to initialize
* Actually unbound methods don't exist anymore in py3, was a broken test
* bring tg._compat and tg.caching at 100% coverage on Py3
* minor cleanups
* Test support on travis-ci.org
* remove deprecated .exception
* All tests passing on both py2.6 and py3.2
* Avoid trying to import FormEncode again if not available
* Add repoze.lru dependency
* Cache path cleanup for statics
* All auth tests passing on Py3 (requires repoze.who git and port of
friendlyform)
* make unicode_literals for test_controllers
* Fix unicode dispatch on python3, all dispatch tests passing
* solve some failing config tests and remove webob warning on Py3
* Fix tg.caching on Py3
* fix jsonify tests on py3
* Make configuration tests pass on Py3
* Validation tests passing
* Remove deprecationwarning on WebOb1.2
* Fix error_handler on Py3
* All rendering tests including inheritance now pass
* Fix @expose inherit=True on Py3
* All rendering tests passing on Python3
* Fix custom_format and override_template on Py3
* Fix pagination on Py3 due to true division
* Fix remainder in dispatchment on Py3
* pylons.app_globals replaced by tg.app_globals in config
* Fix i18n on Py3
* Fix jinja loader on Py3
* fix for tg.url on Py3
* Raise version to 2.3dev
* Use backlash module as a replacement for weberror due to weberror not
supporting py3
* Fix broken test mode due to paste.registry not existing anymore
* Fix for WebOb1.2
* Avoid depending from WebOb.compat as we have our own compatibility module
* More improvements on Python3 support, now able to serve the quickstart
* Make easier to create single file TG applications
* Wasn't necessary and caused issues on Python3
* Fix test suite, all tests passing again
* Make mako templates load and render in testapp on Python3
* Tune Beaker middlewares instead of replacing them
* Says HELLO on Python3 and tests still passing on Python2
* Speed up things by applying controller wrappers only once on setup, also
add application_wrappers support
* Fix crash when _call is called without thread locals
* Duplicate methods due to merge issue
* Change prefix for tw2 to make resources archiving work correctly
* Make routes optional and disable them by default
* __before__ and __after__ reappeared due to merge with development branch
* Add crank to dependencies
* Avoid using multiple StackedObjectProxy, register only one TurboGears
Context and use TurboGearsContextMember to access its members, also fix
compatibility with extensions that use _call directly by removing the need
of the tgl parameters
* Crank based dispatch
* Be sure that we update decoration when controller has been changed due to
validation errors
* Keep compatibility with applications that called or replcaed
find_controller method
* always booleanize predicates
* Keep compatibility with old websetup quickstarted with reference to
pylons.app_globals
* more performances, cache some request properties and avoid adding
SCRIPT_NAME to remove it later in fast_path
* more speedboost, use private Request variables and cache more argspec. Up
to 1700req/sec
* Make auto_reoad_templates editable both from .ini and app_cfg
* more speed boost, up to 1600req/sec on performance test
* more boost, got over 1300req/sec
* speedboost, got from 560req/sec to 1100req/sec on my computer
* Cleanup and bring decorated controller over 90% coverage
* tg_format is not used anywhere, probably stray piece from the past
* Remove legacy renderer and let tests test the mako compiled path
* Remove invalid comment
* Bring app_config coverage up to 85%
* Bring caching code coverage over 95%
* Fix fake XmlRpc Controller for pylons less test
* Remove dependency from repoze.what-quickstart on test_requirements
* Remove dependency from repoze.what-quickstart we actually used only 1
function
* Mark as 2.1.4
* Take languages_best_match implementation from pylons 1.0.1, it should
behave like old pylons languages property
* Replace start response to check if we call a plain WSGI application
during the dispatch
* More compatibility with Tg-pylons applications
* Remove last references to pylons. All the tests pass on environment
without Pylons
* all tests passing
* Only one test not passing
* Fix issue with tests due to pylons_compatible option
* Tests starting to pass and performing little cleanup
* Now able to make quickstart application run in a virtualenv without
pylons installed
* WebOb 1.2 compatibility
* Switch more references from pylons to tg
* Pylons less dispatch
* Avoid accessing multiple times the environ as objects are already
available in request locals
* TGApp not depending from pylons anymore
* Add support for migrations autogeneration to 'gearbox migrate'
* remove url_for as routes is not installed by default
* Remove repoze.tm2 dependency also from tgtesting key
* Remove repoze.tm2 dependency as it is not used anymore
* remove link to 2.2 for quickstarted templates
* Update README for newly quickstarted apps
* Work around for sqla0.8 and sqlalchemy-migrate incompatiblity
* This is actually meaningless now
* Port test suite to gearbox from paste
* keep below webtest 2.0 to avoid backward incompatible changes
* quickstart tuning to make authentication work on Py3
* Update to reflect the gearbox package renaming
* Some quickstart options useful on Py3
* Update server due to gearbox package renamed to avoid collisions
* This is to make the versions directory exist
* Add schema initialization for migrations
* Switch from sqlalchemy-migrate to alembic for migrations to support
SQLA0.8 and PY3. Keep sqla-migrate command around for backward compatibility
* Update pylons.app_globals to tg.app_globals
* Remove friendlyform dependency, not used anymore
* Add tg module to tgshell command
* Inherit from gearbox.command.Command instead of directly using
cliff.command.Command
* Update dependencies
* Remove references to registry restorer which is not available
* Make command description more specific
* Make the tgshell command available only inside TurboGears projects
* Fix name collision with migrate package on python2
* Fix generated project for py3 and add --skip-tw quickstart option to
disable tw
* move migrate and quickstart commands to gearbox for py3 support and add
tgshell command to replace paster shell
* minor style and indentation fix
* remove reference to limited fields, in the tutorial is actually not
fields limit
* Replace reference to Ticket model with Movie in CRUD tutorial
* Update migration documentation with some minor tunes on PasteScript and
WebHelpers
* remove references to repoze.tm2
* updated streaming documentation to get on pair with the new behavior of
2.3
* Improve documentation on nested RestControllers
* Improve CrudRestController documentation adding references to pagination,
substring filters and remember_values
* Dynamically generate private index urls from current version
* Remove references to Pylons
* Update version in README
* Fix mentions of controllers.py to controllers/root.py
* Fix mentions of controllers.py to root.py
* Mention move of paginate code in Upgrading guide
* Mention move of paginate code in Upgrading guide
* remove references to -E option of pip install which is deprecated
* Add tutorial for minimal mode
* Update tg22env references to tgenv, removing version specification
* Added doc for deploy under mozilla circus
* Port files about contribution from old book
* Warn about using cookies for session storage
* Warn about using cookies for session storage. Possible exploits using
malicious pickled objects are only possible when cookies are used as
storage backend. Users should be explicitly warned about that and use the
filesystem storage instead - but they should also be aware of the cleanup
they will then need to perform manually.
* Made colors a little bit less depressive.
* Add nose dependency for docs building
* update requirements.txt
* Merge reference into a single file for fast lookup
* Update documentation about migrations to Alembic
* Minor improvements and create the deploy section into the CookBook
* Try to improve main sections titling
* Tune minor changes and move Upgrading chapter from Doc to Cookbook
* Add GearBox documentation
* Remove some stray references to paster
* Remove some forgotten reference to the pylons namespace
* Remove references to tw.dojo
* Moving forward toward refactoring documentation
* Start documentation cleanup and rewrite for 2.3

-- 
Michael J. Pedersen
My Online Resume: http://www.icelus.org/ -- Google+ http://plus.ly/pedersen
Google Talk: [email protected] -- Twitter: pedersentg

-- 
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/turbogears?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to