Changes to the Movable Type Platform for v3.3
While we've continue to make every effort to make updates from previous versions smooth and hassle-free, there are a number of issues that are important to understand before upgrading to the Movable Type 3.3 platform from previous versions of Movable Type.
NOTE: Movable Type Enterprise is built on top of the Movable Type 3.3 platform so if you are upgrading from Movable Type 3.2 or earlier to Movable Type Enterprise, the information below is still relevant.
New minimum Perl version: 5.6.1

In the last release and in a number of user surveys, we asked what version of Perl people were running and the overwhelming majority of you told us that you were running Perl 5.6.1 or above — mostly above. Hence, we have raised the minimum supported version of Perl to v5.6.1 in order to take advantage of several of the features in these later versions of the Perl core.
Before you update your Movable Type system files, you should load mt-check.cgi first to find out what version you are currently running.
* If you are not running v5.6.1 or above, you should not update your installation!*
Instead, contact your web host to let them know that you require a Perl upgrade. Version 5.6.1 was released over five years ago, so most Movable type users should not have this problem.
BigPAPI plugin incompatibility
Movable Type 3.3 introduces the ability to create "Transformer plugins" which can modify and control input and output for the Movable Type admin interface in any way. This feature was not only inspired by Kevin Shay's BigPAPI plugin but actually uses an extremely similar model. However, because BigPAPI overrides the portion of the Movable Type code which offers this function, it has the potential to cause severe weirdness.
If you are upgrading an installation to Movable Type 3.3, you should disable BigPAPI and any BigPAPI pluginsfrom the System Overview plugin listing unless you have updated them with a Movable Type 3.3 compatible version.
TypeKey authentication requires Site Javascript template refresh
If you are using TypeKey authentication on your site, you need to refresh your Site Javascript template. You can do so from your template listing by selecting the template and then selecting "Refresh Template(s)" from the itemset actions dropdown menu on the right side of the action bar.
Order of template tag attributes matters
In this release, we changed the behavior of Movable Type template tags to respect the order in which they are specified in the template. That means that <$MTEntryBody remove_html="1" trim_to="40"$> means something different than <$MTEntryBody trim_to="40" remove_html="1"$>. If your published output is not what you expect, it may be because of the order of the attributes used on the tag which creates the output.
Possible category/entry archive URL breakage
This entry is relevant to two groups of people:
- Those upgrading from any version who have categories containing non-ASCII characters
- Those upgrading from a version older than Movable Type 3.2 and using
<$MTEntryTitle dirify="1"$>in your individual entry archive map.
If you are performing a fresh install or neither of the two points above describe your situation, you can most likely ignore this item. For those who are affected, we will be making this process more seameless upon upgrade in a future beta version.
Changes to the dirify routine
The dirify routine in Movable Type 3.3 has changed slightly in functionality, handling accented characters better than in previous versions and now acting consistently between static and dynamic publishing in the dirification of words that result in no characters. While this is a an improvement, it has the ability to change the URLs created by Movable Type to your archives.
Dirification of category label for archive URL
Since the dirify routine is used to create the category portion of the category archive URL, this change has the potential to alter your URLs after upgrade. To avoid this, you should take note of each category archive URL before and after upgrade. If any of them differ in the category label portion of the URL, you can enter the old dirified category label into the new category basename field introduced in this version. Like the entry basename introduced in Movable Type 3.2, the category basename allows you to specify that portion of the archive URL and allows it to remain consistent regardless of changes to the category label.
For example, if you have a category Produse de unică folosinţă, Movable Type 3.2 and before would create a category URL like:
http://example.com/produse_de_unic_folosin/index.html
The changes in Movable Type 3.3 will cause that URL to change to:
http://example.com/produse_de_unica_folosinta/index.html
While this is the more correct version, incoming links will break for existing users. To avoid the breakage, go to your weblog's category listing and click on the category label in question (Produse de unică folosinţă). On the category editing screen you will see a field called "Category Basename". Simply paste in the old version of the dirified category (produse_de_unic_folosin) and rebuild if you are using static publishing for your category archives.
Finally, you should go to your blog's publishing settings and make sure that the archive map for your category archives is not using <$MTCategoryLabel dirify="1"$>. It should instead use <$MTCategoryBasename$> to allow you to have consistent URLs in the future.
Dirification of entry title for archive URL
Note: The following is for those upgrading from versions prior to Movable Type 3.2.
Movable Type 3.2 introduced the entry basename field which allows users to specify the filename portion of the default individual entry archive URL. Previous versions of Movable Type defaulted to the padded entry ID for this, such as the 00028 in http://example.com/2002/04/00028.html. Many users however changed that to use <$MTEntryTitle dirify="1"$>. Because of the changes in the dirify routine, this has the potential to break URLs to your individual archives if you have entry titles with accented characters.
The solution to this issue is posted in the entry from the last beta test entitled "Converting from dirified title to basename". However, you must create the index template described in that entry before upgrading and then execute it after upgrading.
Finally, you should also then switch to using one of the default archive mapping settings that corresponds to your current individual entry archive URLs or use <$MTEntryBasename$> instead of <$MTEntryTitle dirify="1"$> if you are using a Custom one.


