A new application interface, more usable and standards-compliant than ever.
New comment and trackback management features should make it easy to find and delete problematic comments/pings.
Configurable comment registration permits banning of individual commenters using an external authentication service. Comment registration is optional and is controlled using several options.
``Object callbacks'' allow plugins to be notified when database records change, or to pre-/post-process data as it flows between MT and the database.
Individual archive URLs are in the form /YYYY/MM/DD/title.html for new weblogs. Existing weblogs will continue to use the old-style (000374.html) archive file names unless re-configured.
Larger weblogs using SQL databases should now rebuild faster. This applies to weblogs that use the MTArchiveList tag, and which do not use the MTEntries tag within that tag. Also the improvement won't benefit those who are useing ``weekly'' archive lists.
Dynamic comment pop-ups are deprecated; static archive pages are the default venue for comments.
TrackBack pings are now throttled by IP, according to the config parameter ThrottleSeconds. 8 pings in the span of 10 ThrottleSeconds will cause the IP to be banned.
Background tasks offer a more repsonsive interface and play better with others.
Atom API now supported.
Better date handling with DateTime will go as far back as necessary
Comments are throttled based on IP. The new config parameter ThrottleSeconds gives the number of seconds which must pass between comments before the same IP can post again.
Author links are now served by meta redirect, so that commenters' links don't appear directly on the comment page.
Improved email address validation in mt-send-entry.cgi.
Added Atom syndication feed template (atom.xml) and auto-discovery for Atom feed to main index template.
Added <MTIfNonEmpty> and <$MTEntryModifiedDate$> tags, and added a exclude_port attribute to <$MTBlogHost$>.
Fixed security issue with XML-RPC server.
Added proper handling of offsets in ISO-8601 dates in XML-RPC requests. If timezone offset is omitted, timestamps are assumed to be in the weblog's timezone already; otherwise, the timezone offset is first applied, then the weblog's offset is applied on top of that. This new behavior can be turned off by adding IgnoreISOTimezones 1 to mt.cfg.
Made Google search errors in <MTGoogleSearch> non-fatal.
Fixed relay issue with mt-send-entry.cgi.
Replaced RSS 0.91 template in default templates with an RSS 2.0 template, from the RSS validator site. (Thanks to the RSS validator folks.)
Fixed some XSS bugs (comments, TrackBack, notification addresses, and search queries). (Reported by Dumky and others)
Fixed width of #content div in Clean stylesheet so that it doesn't require scrolling in Windows IE.
Fixed TrackBack auto-discovery and text filters--auto-discovery is now done against the filtered entry body rather than the unfiltered body. (Timothy Appnel)
Added <q> to list of special tags to be detected at paragraph starts and turn off line break conversion. (Todd Dominey)
Moved Search button up next to search box to make it less likely to cause confusion and inadvertent clicking of REPLACE.
Strip linefeed characters from text being previewed.
Fixed Windows file-locking problem when deleting temp files (during uploading). Thanks to Scot Hacker for tracking down the problem.
Fixed error in mt.getPostCategories where entry does not have primary category.
Fixed bug where Add new category... is available to authors without category-editing permissions.
Set excerpt properly using get_excerpt in notification messages and search results. (Brad Choate)
Added support for alternate PostgreSQL ports. (Tim Beadle)
Added documentation for mt.supportedTextFilters.
Fixed another pg_atoi problem (this one when saving an entry from the preview screen).
Language for Date Formatting is now applied properly to notification messages. Thanks to Jakub Kazecki for the changes.
Fixed bug where order of flerror and message in XML-RPC ping responses mattered (it shouldn't). (cobra libre)
Fixed faultCodes returned from XML-RPC server to override the default SOAP::Lite value, which wasn't an int (it should be). (Adriaan Tijsseling)
Creative Commons licenses can now be removed (but should be done so sparingly, as the licenses are designed to be irrevocable). Also, added more warning text before setting up a license. Thanks to Matt Haughey for the help.
Added a GenerateTrackBackRSS option to mt.cfg, which determines whether the individual RSS files for TrackBack items are created.
mt-view.cgi (and Viewer.pm) is now disabled by default, to emphasize its experimental status. To enable it, add SafeMode 0 to mt.cfg.
Fixed a Postgres bug with the seconds getting cut off of the Authored On timestamp.
Fixed default search templates to use <$MTPublishCharset>. (Autrijus Tang)
Fixed a bug with the isPrimary argument to the mt.setPostCategories method (XML-RPC).
Fixed Creative Commons RDF (was missing </rdf:RDF>). (Aaron Swartz)
Auto-generated excerpts for sent and received TrackBacks now apply text formatting properly. (Brad Choate)
Fixed bug where Postgres passwords were not used.
Fixed bug with Berkeley DB to Postgres database conversion (pg_atoi problem). (Mike Chambers)
<MTLink> now only tries to load index templates.
Fixed rebuilds when using a localized version of MT.
Select and Add New Category... on edit entry screen can now be translated.
None and Convert Line Breaks text formatting options can now be translated.
New Comment message subject can now be translated.
Fixed bug where Next and Previous links on edit entry screen skipped drafts.
Fixed bug where extended entry couldn't be set to the empty string from an XML-RPC client. (Adriaan Tijsseling)
IncludeBlogs and ExcludeBlogs are now respected by mt-view.cgi. (Phil Ringnalda)
mt-view.cgi no longer shows drafts. (Phil Ringnalda)
Fixed a security vulnerability.
Fixed extra update ping problem--if TrackBack ping URLs were added to the URLs to ping, the update pings would be sent again. No longer. (Phil Ringnalda)
Fixed bug where turning on NoHTMLEntities 1 would cause entities to be lost in entries.
Added a <$MTEntryTrackbackID$> tag. Thanks to Christopher Laco for the patch.
Added a NoCDATA setting to mt.cfg to turn off the CDATA encoding, if you don't like it.
Fixed bug with PostgreSQL conversion, where after running mt-db2sql.cgi, sequences were not set to highest ID.
Fixed character encoding problem, where utf8 characters would be corrupted in published pages.
Fixed (for good) XHTML issues with search templates.
Added a NoOverride setting to mt.cfg, to specify search settings that cannot be overriden by the search templates or the user.
Language options in Preferred Language are now sorted by name.
Added ol and i as allowed tags to the default sanitize spec.
Fixed bug with text formatting not being applied for excerpts. Thanks to Brad Choate for the patch.
Removed use of Ping in the ImageMagick MT driver, because it returns results in inconsistent forms; now use Read and Get instead. Thanks to Aaron Straup Cope for the pointer.
Fixed bug where convert_breaks=``1'' did not work if both the entry and weblog had break conversion turned off.
Changed filter ordering in MT::Template::Context::post_process_handler so that Sanitize and encode_xml play more nicely. (Phil Ringnalda)
Fixed unitialized value related to $status_old. (Phil Ringnalda)
Don't overwrite original content when utf8-encoding for MD5 check in MT::FileMgr::Local::content_is_updated.
Fixed mt-upgrade25.cgi to check if version is greater than or equal to 2.5, rather than only equal to 2.5.
Comment and TrackBack notification messages are now properly localized.
Fixed rebuild problem with perl 5.004_04 and Sanitize (use of foreach modifier).
Added Estonian date formats. (Anti Veeranna)