Major new features:
Text formatting plugins. Like Brad Choate’s MT-Textile (a port of Dean Allen’s Textile) and Adam Kalsey’s Movable Jive.
If you are already using a custom edit entry screen, you will need to click Customize the display of this page
and select the new Text Formatting
option. You can also go to Weblog Config/Preferences
and set the default Text Formatting option for entries, and (if you scroll down) the default Text Formatting option for comments as well.
Support for defining a Creative Commons license and adding it to your various pages. Ben has written up instructions on using CC licenses in various Movable Type templates. And here is an updated RSS 2.0 template that includes Creative Commons data.
You should learn about CC licenses before choosing one; you may not wish to use one at all.
Support for PostgreSQL and SQLite databases. Clean installation using PostgreSQL is the same as MySQL; clean installation using SQLite is slightly different. Both are documented in the installation guide. No word on how to migrate an existing database, although I’m sure there are non-Movable-Type-specific tools to accomplish this.
The ability to close comments, that is, display existing comments but not allow additional ones. I’m using this already. You can too, by altering your Individual Entry template:
<MTEntryIfAllowComments> <MTComments> ... stuff for each comment ... </MTComments> <MTEntryIfCommentsOpen> <h2>Add your comment</h2> <form method="post" ...> ... </form> <MTElse> <p><em>This discussion has been closed. No more comments may be added.</em></p> </MTElse> </MTEntryIfCommentsOpen> </MTEntryIfAllowComments>
Support for Really Simple Discovery, so that client-side blogging tools can query your site and automatically configure themselves with the protocols it supports. Movable Type supports both the MetaWeblog API and the Blogger API. If you’re upgrading, you’ll need to manually create an index template (call it RSD index
, output it anywhere, for instance rsd.xml), and use this RSD template. Then go to your Main Index template and add a link tag to your head section to enable the auto-discovery (just below your other link tags would be fine):
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="<$MTBlogURL$>rsd.xml" />
Make sure the href matches the output path you specified in the template. (For instance, I like to keep all my XML files in a subdirectory, so here’s my RSD file, and my link tag matches that path.)
Ultra-hip MIME-aware standards geeks will name their RSD file something.rsd, and then put this line in their .htaccess file:
AddType application/rsd+xml .rsd
Another tip: once you rebuild the RSD Index template once, you can get a small performance boost by unchecking Rebuild this template automatically when rebuilding index templates
. You’ll only need to manually rebuild it when you upgrade to a new version of Movable Type.
Integration of Brad Choate’s Sanitize plugin for safely allowing HTML in comments. Brad’s plugin (and his documentation) are now deprecated; remove the plugin if you have it installed, and reference the new Sanitize documentation.
Other improvements:
Tweaked the layout of the default comment form with Jeremy Hedley’s recommendations. The Remember me
and Clear name
are now displayed to the right of the name/email/homepage boxes in visual browsers. If you are upgrading, you will need to piece together the changes from the default Individual Entry template.
If you have TrackBack auto-discovery turned on, Movable Type will now correctly discover and ping linked posts when you post via XML-RPC (for example, with a client-side blogging tool instead of through the web interface). Yeah, this sounds esoteric, but it affected me personally, so I’m glad it’s fixed.
Yet another round of bug fixes for properly encoding HTML and XML. Damn XML. Hey, that reminds me, I owe my XML.com editor another article.
If a ping can not be sent for some reason, the error is now logged in the Activity Log (available at http://your.site.url/mt/mt.cgi?__mode=view_log). I actually saw this the first time I published this post; I got a timeout from bradchoate.com. The Activity Log also includes information about who posted what when, and, if you’re running MT-Search, who searched for what when — a list which can make for fascinating reading.
And my favorite:
Changed all visible instances of blog to weblog in the system and in the documentation.
Also, there is now an officially sanctioned Movable Type Plugin Directory, and an announcement of an upcoming Pro version that will include photo album integration, a weblog-aware traffic and statistics system, and an option to require user and visitor registration.
§
There’s also news of MT Pro.. I can’t wait for that baby. I just hope it will be under $50.
http://www.sixapart.com/press/six_apart_annou.shtml
— eliot ![]()
yum!
You got a timeout because my server isn’t the swiftest thing on earth. The MT ‘ping’ server-side process creates the ping record, does all the rebuilding (of the indexes anyway), generation of the ping’s RSS file, e-mails the notification and THEN it sends back the ’success’ response at the very end. If that whole process (starting with the point in time when your server issues the ping) takes more that 15 seconds, the side sending the ping considers it a failure and retains the ping URL to try later when the entry is next rebuilt.
On my side, I’ve got 6 pings from you alone (a couple of which are due to the comments posted I’m sure, since that rebuilds the entry and would issue any pending pings as well). This is a problem, and I’ve gone to lengths to filter out duplicated pings from my pages. The timeout setting itself can be adjusted, but it must be done on the sender’s side (your server in this case). The mt.cfg key name is “PingTimeout”. The default value is 15. Mine is set to 60 seconds.
A better way to handle things (I think anyway), is for the response to be sent back immediately after the ping is recorded on the server side. Once the ping response is sent, the client can disconnect and go about its merry way (this would speed up the build process for the client obviously). After the response is sent, the server could resume building and emailing or whatever processes it has to go through.
Another improvement would be for MT to check to see if a ping has been received from that source already. If it has it should perhaps update the title and excerpt that is given, but it shouldn’t create yet another trackback record.
The problem with that solution is that it’s not as simple as saying that the client should be disconnected, particularly since MT can run in several different environments (CGI, mod_perl handler, Registry).
Here’s my understanding (from memory, at least): at the socket level, the client doesn’t disconnect until the server says the request is over. And in a CGI process, for example, the webserver does not finish the request until all of the filehandles are closed. So if you fork a process, you have to close all of the filehandles. In a mod_perl process, though, forking makes a copy of the entire Apache/perl process, so it’s pretty bad for memory.
On the whole, though, I agree, there needs to be some way of separating the rebuild/email/etc process from the comment/ping.
— Ben ![]()
I am no longer accepting public comments on this post, but you can use this form to contact me privately. (Your message will not be published.)
§
© 2001–9 Mark Pilgrim