[Catalyst] Quick question on forward porting versus retaining existing code

Christiaan Kras c.kras at pcc-online.net
Fri Mar 18 22:31:43 GMT 2011

Op 17-3-2011 21:27, Joe Landman schreef:
> On 03/17/2011 04:27 PM, Andrew Rodland wrote:
>> On Thursday, March 17, 2011 02:51:59 PM Joe Landman wrote:
>>> Hi folks
>>>     We have a Catalyst app we've developed since about 2005 or so.  We
>>> put it aside in late 2008, and haven't touched it until now.
>>>     I wanted to see if it would still work (as it turns out, we can 
>>> reuse
>>> this for a new project).
>>>     Before we get into this in depth, are there any pointers/blog
>>> posts/articles about forward porting an application (this was
>>> pre-Moose), or whether or not the app would work without forward 
>>> porting?
>>>     Basically we don't want to have to redevelop everything we put into
>>> that (login/authentication, views, etc.), and simply add to the 
>>> existing
>>> app with a limited set of changes to make it current would be ideal.
>>>     Thanks!
>>> Joe
>> It's the intention of the Catalyst dev team that new releases don't 
>> break
>> existing apps. The 5.7 to 5.8 transition broke that promise 
>> *slightly* more
>> than most releases (mostly due to the C3 MRO), but a great many apps 
>> written
>> for 5.7 will still run without any changes on 5.8, and of the 
>> remainder, 99%
>> will only need very small changes. Rewriting your code to make 
>> explicit use of
>> Moose is *not* required. Just deploy the app with the current version of
>> Catalyst and current versions of any plugins it uses, and if there 
>> are any
>> errors or warnings on startup, use them as guidance. If you run into 
>> a nut you
>> can't crack, please feel free to come back for advice, but you should 
>> start
>> out by just trying to run the app.
> For laughs, I just tried it, and modulo some module updates, it 
> appears to work.
> Thanks folks, this is great!  Should speed our development quite a bit!
>> Andrew

It's also worth it to take a look at 
and http://search.cpan.org/dist/Catalyst-Runtime/lib/Catalyst/Delta.pod 
for a complete overview of important changes that you might need to 
apply when upgrading.

Christiaan Kras

More information about the Catalyst mailing list