Pylons 0.10 and 1.0 Beta 1 Released

18 views
Skip to first unread message

Ben Bangert

unread,
Feb 5, 2010, 10:46:30 PM2/5/10
to pylons-...@googlegroups.com, pylons...@googlegroups.com
Without further ado,

I'm pleased to announced that Pylons 0.10b1 and 1.0b1 are now out. I have not put them on Cheeseshop to ensure they're not downloaded accidentally.


Upgrading / Installing
=================

I have updated upgrading instructions here:
http://pylonshq.com/docs/en/1.0/upgrading/

The instructions to install from scratch on Pylons 1.0b1:
http://pylonshq.com/docs/en/1.0/gettingstarted/#installing

The upgrading page covers the important upgrading instructions that Mike Orr touched briefly on before.

Note that these are *beta* releases, intended for us to discover remaining issues and continue updating any other documentation where applicable. Very little has actually changed in Pylons since 0.9.7, apart from 1.0 dropping all of the legacy functionality and a few explicit clean-ups.


Updates
=======

Routes, Beaker, and WebHelpers however have been seeing quite a bit of updates through the life of Pylons 0.9.7 so no one should think that the developers working on Pylons and its related parts have been hanging out doing nothing. :)

Since Pylons 0.9.7 was released on February 23, 2009, almost one year ago now:
* Routes 1.11 was released, and 1.12 with some great updates will be out shortly
* Beaker has gone from 1.2.2 -> 1.5 with 3 major updates substantially increasing its ease of use and reliability
* WebHelpers is now at 1.0b4 with major updates, core functions rewritten, and new docs up
* SQLAlchemy has gone from 0.4 to 0.5 (with 0.6 in beta)

I believe this speaks a great deal about the benefits of keeping the core Pylons functionality separate from other parts, as a variety of bug fixes and features can be improved without requiring new Pylons releases to quickly address bug reports.


How to Help!
==========

To bring Pylons to 1.0, many docs likely need very small changes. Also, it would be great to take care of reference docs where people have commented about problems/tips. Helping is fairly easy, especially if you're familiar with restructured text.

First:
Clone the Pylons repository on Bitbucket: http://bitbucket.org/bbangert/pylons/

Then:
Edit the documentation files under pylons/docs/en/ to read as appropriate, commit the fix, and push it to bitbucket.

Finally:
Issue a pull request on bitbucket so that we'll know your fix is ready. Ideally you should include a note in it about what your fix remedies.


Bug Reports
==========

Did your upgrade not go according to plan? Was there something missing that you needed to do from the upgrading docs?

Let us know by filing a bug report (mark component as documentation, and milestone as 0.10:
http://pylonshq.com/project/pylonshq/newticket

You'll need to login to file a bug report, or feel free to reply to this announcement with the issue.


Thanks (in alphabetical order) to Mike Bayer, Ian Bicking, Mike Burrows, Graham Higgins, Phil Jenvey, Mike Orr, and anyone else I missed for all their hard work on making Pylons and its various components what they are today.

- Ben

Gustavo Narea

unread,
Feb 6, 2010, 5:42:06 AM2/6/10
to pylons-...@googlegroups.com
Thank you guys for the hard work!

Is the 0.9.7-0.10 change log available anywhere?

- Gustavo.

--
Gustavo Narea <xri://=Gustavo>.

Robert Forkel

unread,
Feb 6, 2010, 10:23:49 AM2/6/10
to pylons-...@googlegroups.com, pylons...@googlegroups.com
hi ben,
congrats for getting this done!
i'm a bit confused, though. i just upgraded (from 0.9.7 via 0.10b1)
and found the changes to the config initialization described here
(http://pylonshq.com/docs/en/1.0/upgrading/) to be unneccessary
(wrong, actually - when applying them, my app wouldn't start anymore
because some config values i use in routing.py could not be found).
regards,
robert

> --
> You received this message because you are subscribed to the Google Groups "pylons-discuss" group.
> To post to this group, send email to pylons-...@googlegroups.com.
> To unsubscribe from this group, send email to pylons-discus...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/pylons-discuss?hl=en.
>
>

Ben Bangert

unread,
Feb 6, 2010, 12:48:15 PM2/6/10
to pylons-...@googlegroups.com
On Feb 6, 2010, at 7:23 AM, Robert Forkel wrote:

> i'm a bit confused, though. i just upgraded (from 0.9.7 via 0.10b1)
> and found the changes to the config initialization described here
> (http://pylonshq.com/docs/en/1.0/upgrading/) to be unneccessary
> (wrong, actually - when applying them, my app wouldn't start anymore
> because some config values i use in routing.py could not be found).

Ah, I see the problem, there was another change to make. In environment.py, change the make_map call to:
config['routes.map'] = make_map(config)

And in routing.py:
def make_map(config):

That way the config will be present in your routing.py.

Cheers,
Ben

Robert Forkel

unread,
Feb 6, 2010, 1:13:39 PM2/6/10
to pylons-...@googlegroups.com
hm. the config object i now pass into make_map doesn't seem to be
initialized from the config file.
does this change mean that i can't use "from pylons import config" anymore?

Ben Bangert

unread,
Feb 6, 2010, 1:19:07 PM2/6/10
to pylons-...@googlegroups.com
On Feb 6, 2010, at 10:13 AM, Robert Forkel wrote:

> hm. the config object i now pass into make_map doesn't seem to be
> initialized from the config file.
> does this change mean that i can't use "from pylons import config" anymore?

What is the order in your environment.py of the function calls? As long as the init_app is called before the make_map, then the config passed in will have all the proper values in it. You can use the 'from pylons import config' line still throughout your app, but its recommended you pass it around in the initialization stage.

- Ben

Ben Bangert

unread,
Feb 6, 2010, 1:20:18 PM2/6/10
to pylons-...@googlegroups.com
On Feb 6, 2010, at 2:42 AM, Gustavo Narea wrote:

> Thank you guys for the hard work!
>
> Is the 0.9.7-0.10 change log available anywhere?

Here's the CHANGELOG:

1.0b1 (February 5, 2009)
* Removed CacheMiddleware. cache object is now setup as an attribute on the
app_globals object for use where needed.
* WARNING: config only supports dict access
* WARNING: Method arguments no longer assigned to 'tmpl_context' by default.
* WARNING: Changed default to strict_tmpl_context.
* WARNING: Removed legacy pylons.c and pylons.g globals.
* WARNING: Removed legacy pylons.database module.
* WARNING: Removed legacy pylons.config module.
* WARNING: Removed Buffet options, setup, and legacy render/render_response
function from pylons.templating. This also means config no longer accepts
the add_template_engine option.
* WARNING: Removed legacy redirect_to function.
* WARNING: @https decorator no longer accepts url_for-like arguments.

0.10b1 (February 5, 2009)
* redirect_to is now deprecated, use redirect(url(*args, **kwargs)) instead.
* url_for like args to the https decorator are now deprecated, pass it a url
or a callable returning a url instead.
* Changed 1.0 deprecated pylons.c, pylons.g, pylons.buffet instances to
throw deprecation warnings.
* Fixed etag_cache matching when the If-None-Match header contains a comma
separated list of etags. Fixes #557. Thanks magicbronson.
* Added tests for restcontroller with sub-directory, and fixed generated unit
tests. Patches supplied by Michael van Tellingen, fixes #571.
* Retain the original controller exception when thrown under
environ['pylons.controller.exception'] for use in the error controller.
* Fixed bug with unit tests running the app load twice during testing.
Fixes #620.
* Updated project templates to use actual config instance, rather than the
StackedObjectProxy classes.
* Changed PylonsConfig to be dict subclass, rather than DispatchingConfig
subclass.

Cheers,
Ben

Robert Forkel

unread,
Feb 6, 2010, 1:20:53 PM2/6/10
to pylons-...@googlegroups.com
another change to be made:

config['pylons.app_globals'] = app_globals.Globals(config)

now it seems to work

Robert Forkel

unread,
Feb 6, 2010, 1:24:00 PM2/6/10
to pylons-...@googlegroups.com
ok, got it to work with the change posted before. now nosetests fail because of:

File ".../tests/__init__.py", line 33, in setUp
wsgiapp = loadapp('config:%s' % config['__file__'])

where would i get the __file__ path now?

Ben Bangert

unread,
Feb 6, 2010, 3:10:27 PM2/6/10
to pylons-...@googlegroups.com
On Feb 6, 2010, at 10:24 AM, Robert Forkel wrote:

> ok, got it to work with the change posted before. now nosetests fail because of:
>
> File ".../tests/__init__.py", line 33, in setUp
> wsgiapp = loadapp('config:%s' % config['__file__'])
>
> where would i get the __file__ path now?

This is what the tests/__init__.py looks like for a fresh Pylons 1.0 project, following its changes should remedy the issue:
http://bitbucket.org/bbangert/pylons/src/tip/pylons/templates/default_project/+package+/tests/__init__.py_tmpl

- Ben

Robert Forkel

unread,
Feb 6, 2010, 3:24:45 PM2/6/10
to pylons-...@googlegroups.com
hm. no luck:

File "/home/robert/projects/wals2/wals2/wals2/tests/__init__.py",
line 26, in <module>
config = SetupCommand('setup-app').run([pylons.test.pylonsapp.config['__file__']])
AttributeError: 'Cascade' object has no attribute 'config'

i changed websetup.py, too, but still couldn't get it to work.

Robert Forkel

unread,
Feb 6, 2010, 4:26:17 PM2/6/10
to pylons-...@googlegroups.com
ok, i figured it out. another change in middleware.py is necessary:
before returning the app in make_app, there needs to be:

app.config = config

(i should try and learn paste sometime :))

Robert Forkel

unread,
Feb 6, 2010, 4:44:22 PM2/6/10
to pylons-...@googlegroups.com
so just for completeness, in addition to the changes to environment.py
which are explained in http://pylonshq.com/docs/en/1.0/upgrading/
the attached diff shows what i had to change to get my app ported (and
the tests passing).
thanx for the good work on pylons 1.0!

On Sat, Feb 6, 2010 at 4:46 AM, Ben Bangert <b...@groovie.org> wrote:

>
> You'll need to login to file a bug report, or feel free to reply to this announcement with the issue.
>
>
> Thanks (in alphabetical order) to Mike Bayer, Ian Bicking, Mike Burrows, Graham Higgins, Phil Jenvey, Mike Orr, and anyone else I missed for all their hard work on making Pylons and its various components what they are today.
>
> - Ben
>

change_log.txt

Ben Bangert

unread,
Feb 6, 2010, 6:59:36 PM2/6/10
to pylons-...@googlegroups.com
On Feb 6, 2010, at 1:44 PM, Robert Forkel wrote:

> so just for completeness, in addition to the changes to environment.py
> which are explained in http://pylonshq.com/docs/en/1.0/upgrading/
> the attached diff shows what i had to change to get my app ported (and
> the tests passing).
> thanx for the good work on pylons 1.0!

Awesome, I've updated the upgrading doc to reflect the additional changes.

Cheers,
Ben

Ye Liu

unread,
Feb 6, 2010, 11:46:39 PM2/6/10
to pylons-discuss
Great! Upgraded my app without any problem by following the upgrading
doc.

Cheers

On Feb 6, 6:59 pm, Ben Bangert <b...@groovie.org> wrote:
> On Feb 6, 2010, at 1:44 PM, Robert Forkel wrote:
>
> > so just for completeness, in addition to the changes to environment.py

> > which are explained inhttp://pylonshq.com/docs/en/1.0/upgrading/

Graham Higgins

unread,
Feb 7, 2010, 1:04:28 AM2/7/10
to pylons-...@googlegroups.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


On 6 Feb 2010, at 03:46, Ben Bangert wrote:

> 'm pleased to announced that Pylons 0.10b1 and 1.0b1 are now out.


***applause***

Congrats, Ben.

Cheers,

Graham

http://www.linkedin.com/in/ghiggins


-----BEGIN PGP SIGNATURE-----

iEYEARECAAYFAktuV+0ACgkQOsmLt1Nhivy26ACfZVFD8qepZVC5ozlVnycp7G/6
bZUAoNlmvMZdiNjUEQ+U+QdrFkKL1J65iQCVAgUBS25X7VnrWVZ7aXD1AQL+6AP/
WZyffxgz8BQPjEtZH53cU8i/HLvbI2ClOhtw538v3Jzh7bQCKTF8mGPrCvHJut9B
Cmi62dI27P2ZyIgXUyyaBAvbxjv8E0hygEa8CfrwMBeigvWNeOLThaJTkaF2yCQx
aRw4e4092sRjJetNuOLfapw9X2jnXnd6o+J2uBVOGMY=
=Q2X+
-----END PGP SIGNATURE-----

Reply all
Reply to author
Forward
0 new messages