chipplechipple

Blog - Movable Type 3.3

Technology Movable Type 3.3

Well, it's been puzzling me for the last few days, Movable Type 3.3 is out in Japan but not yet in the U.S. Why? Anyway, enough waiting, I downloaded the Japanese version (which defaults to Japanese but also contains English, French and other language packs) and installed it!

Surprise, surprise (I wouldn't be if I'd have been reading the Movable Type 3.3 beta blog), BigPAPI isn't compatible anymore, so none of my own plugins worked anymore. Since there were no instructions to be found on MT's site about how to upgrade plugins that used BigPAPI, I checked the App.pm source and found that all there needs to be done is change the callback calls like the following examples.

Before: MT->add_callback('bigpapi::template::edit_entry', 9, $plugin, \&_template);
After: MT->add_callback('MT::App::CMS::AppTemplateSource.edit_entry', 9, $plugin, \&_template);

Before: MT->add_callback('bigpapi::param::edit_entry', 9, $plugin, \&_param);
After: MT->add_callback('MT::App::CMS::AppTemplateParam.edit_entry', 9, $plugin, \&_param);

Actually, simply adding the new-style callbacks, without removing the old BigPAPI-style callbacks, will make your plugin work on Movable Type 3.3 while still working on 3.2 (actually 3.16+). BigPAPI will need to be removed from your 3.3 package, and keeping it as a separate download for 3.2 users might be the best idea.

It seems to me like SixApart could have easily avoided everyone most of this trouble by simply keeping run_callbacks to bigpapi::template:: and bigpapi::param:: in their code... I understand wanting to standardize naming within the application, but BigPAPI was there first anyway, so it could have been a good idea to support the original naming for backward-compatibility.

Of course, if your plugin modifies templates, you may also have to upgrade your search string since CMS templates have changed a bit. In most cases it should be easy to support both 3.2 and 3.3 at the same time.

My own plugins have been upgraded:

Posted on July 6, 2006 at 16:09 | Tweet |


Comments RSS


« In the mail | Back to main page | Azusawa waterbus harbor »