The 4.3 beta is now closed. You can look at the release notes as they happened during the beta, or look at the final list here
A change associated with the Summary Object Framework caused cloning via the BlogCloner to not function properly. It should work properly now.
DBIRaiseError is now set to 0 by default in order to hide warnings from the MS-SQL database driver that didn't affect output but did raise an error.
Fixed the approach for renaming the file to avoid internal server errors.
Added the ability to extend MT::Asset via config.yaml in a plugin. (Thanks Byrne!)
Fixed a bug where .jpeg files were being renamed to .jpg in the entry but not on the server.
Comment navigation now appears at the top and bottom of the block of comments.
If the encoding of an image doesn't match the extension and MT changes it, the user is now notified.
Asset Manager now appears by default when you create a new blog.
You can now hide the entry asset manager via the Display options on the entry edit page.
The Summary Object framework allows MT’s core codebase and plugins to store arbitrary summary and dependent information in the database, replacing expensive calculation queries with fast primary-key lookups against summary tables. The framework includes a flexible mechanism for invalidating summary objects when the objects on which they depend are modified, and a queued worker class for asynchronously regenerating invalidated summaries.
The mt:Else tag now works in mt:Assets blocks. (Thanks Byrne!)
You can now restrict the results of mt:Authors with needs_userpic to provide a list of authors who do not have a custom userpic set. (Thanks Byrne!)
You can now define the "build_type" for an archive template in the config.yaml file for custom template sets. (Thanks Jay!)
When a template is saved, this action is now sent to the Activity Log. This feature is useful for finding out who made a particular change.
Fixed a selector in the jQuery of the Motion template set that was incompatible with jQuery 1.3x. (Thanks Byrne!)
Fixed a bug where custom field template tags could not be used in archive paths.
Blogs where you didn't have any permissions are displayed in the blog list when you choose which blog to export entries from
Users now only see blogs they have permission to change in the list of clonable blogs.
Fixed a bug where using lastn with mt:Authors always returned one more result than requested (Thanks Byrne!)
Fixed a typo in the TheSchwartz.pm
Blog setting changes are now properly being set to the activity log.
Added an in-app notice for after a test email is sent.
Fixed a bug that occasionally caused false upgrade notices. (Thanks Mark!)
Assets now recognized BMP and TIFF as image formats, which should also fix a common issue seen when importing Wordpress content. (Thanks Su!)
Fixed a bug where the site path and URL were not cloned.
SetVarTemplate is now properly localized so you can pass in variables and the data is not set permanently, only outputted with the provided values. (Thanks Jay!)
MT:Entry now only updates a comment count when it would change. Previously, it would update anytime a comment associated with that entry was saved.
Fixed a bug where a fatal error would occur whenever you defined a template tag filter in the config.yaml file. (Thanks Jay!)
Fixed a bug with he any_type filter for mt:Authors, so it now properly returns all users, regardless of their role.
The Cloner functionality was moved to the core, so the plugin is no longer included in the application.
The blog cloner now warns a user if the site path matches the one used in the cloned blog.
Fixed a bug in Safari where asset thumbnails were not appearing when hovering over the title in the entry asset manager.
Fixed some alignment issues with the 'remove' icon in the entry asset manager in IE 6 and 7.
Fixed a bug where the dates for recommended entries in a user's actionstream did not respect the blog's timezone, causing it to filter improperly.
We've brought back the status messages seen during cloning that were lost in a previous beta.
When you excluded trackbacks while blog cloning, it still cloned the pings. It now excludes both pings and the trackback data.
When adding an additional blog to your list of favorites in the dropdown, you can now only select blogs that you have access to. This keeps people from potentially having to page through hundreds of blogs they can't access.
The MT::Blog::clone_with_children operation now clones each of the individual objects (e.g. MT::Template, MT::Association, etc.) that make up the blog.
The value for the StatsCachePublishing config directive is now case-insensitive.
Added unit tests for comment pagination code.
Fixed a bug where cloning a blog and excluding entries would not clone the categories.
Fixed a bug affecting the 'Entries with comments in the last 7 days' quickfilter on the entry listings screen. The app would throw an error when DBIRaiseError is set to 1. Changing the sort method fixed this problem.
Fixed a bug where you were not returned to the blog listing page after you finished cloning a blog.
'(in cleanup) Can't call method "registry" on an undefined value' error if error occurs during upgrade
Fixed a bug introduced in a previous beta that would cause a registry error on upgrade. This was caused by a change that fixed an error with run-preiodic-tasks.
Changed the name of the new system template for listing comments to 'Comment Listing' from 'Comment Listing (Dynamic)'.
Non-superusers can now view the global list of all comments that they can access.
Increased the allowed length of a commenter's email to account for very long authentication emails used in Facebook authentication.
An oft-requested feature has been added to the app. We've made a variety of new querystring parameters available to mt-search.cgi to provide dynamic pagination for all archive types and from the index. In order to allow for the usage of index or archive templates, we've created a new template tag, BuildTemplateId, which provides the template ID for the template you're editing.
We're working on putting together a proper guide for this with sample template code, but here are the new parameters: author (takes an ID), category (takes an ID or label), template_id (takes an ID), page (can be used in place of offset), archive_type (takes one of the 14 archive types, listed here), year (format is YYYY), month (format is MM) or day (format is DD). When used with date-based archives, year/month/day corresponds with the start date of the archive.
We've added the ability to clone a blog without including the entries/pages, comments, trackbacks and categories (or any combination thereof). You can also edit the blog name, URL or site root during the clonging process.
We changed the name of the new 'RaiseError' directive to 'DBIRaiseError'. Thanks for the suggestion Jay!
Passed the "namespace" attribute in addons/Community.pack/lib/MT/Community/Tags.pm to allow for custom namespaces on user profile pages.
Fixed several memory leaks in Serialize.pm and added two new serialization methods (the default stays the same). The two new ones use JSON and Storable formats, but both have caveats. While the Storable format has performance improvements, it does not work with dynamic publishing. The JSON based format does not support scalar or circular references and cannot support multiple references to the same object. We hope to evolve the JSON serialization as the JSON spec changes.
Comments can now be paginated with the addition of a dynamic API request from mt-comments.cgi. The default and community template sets have been updated to use comment pagination by default.
There is a new asset manager in the sidebar of the entry edit screen. It will list all assets that are associated with the entry. You can associate assets with an entry without including the asset in the entry body. You can also remove asset associations without removing the link to the asset from the entry body.
We have (finally) removed the form tag that surrounds image assets in the entry body. Hallelujah.
The default setting for SingleCommunity is now '1'. This means that cookies will now work across all blogs on your installation (excluding cross-domain). If you have been using your Movable Type install to run each blog as a separate community, you should add 'SingleCommunity 0' to your mt-config.cgi file.
Fixed bug where logical operators for category filtering in mt:Entries would not work in dynamic publishing.
We believe to have fixed the bug that was causing LaunchBackground tasks to fail. The case is officially still open, but we want to make sure the community is aware a fix is in.
Image asset types (JPEG, PNG and GIF) are now determined based on file compression instead of file extension. This prevents publishing errors when Image::Magick is used to resize improperly labeled images.
When applying a lastn to mt:Comments in the context of an entry, it would always use the 50 most recent comments, even if sort_order was set to 'ascrend'. mt:Comments will now sort first and filter second.
We have added two new config directives for controlling the dashboard stats. We have added StatsCacheTTL, which is set in minutes and determines how long before the cached statistics expire (default is 15), and StatsCachePublishing, which determines if stats are published at all. It can be set to 'Off' and 'OnLoad', with OnLoad being the current behavior as well as the default.
Added a new listing screen that shows errors from the Schwartz queue. It is available from the system tools menu.
Improved styling of search pagination in the Community template set when there are dozens of pages.
You can now publish entries from the internal search result listings.
You can now limit mt:Authors with an 'id' (for user ID) or 'username' modifier.
mt-check.cgi now looks for XML::Parser.
Fixed a bug where IncludeBlogs="all" did not work when used in mt-search.cgi querystring.
Added the ability to test sending from inside the app on the Global general settings page.
You can now set DebugMode from the Global general settings page.
We have made the Date::ObjectDriver RaiseError flag available as a config directive and are setting it to 1 by default. This provides more accurate descriptions of database errors than were previously provided.
You can now set the PerformanceLogging, PerformanceLoggingPath and PerformanceLoggingThreshold config directives from the Global general settings page.
When changes are made to blog settings, an entry is added to the activity log.
[PATCH] MTEntryTags retrieves tags assigned to an asset with the same ID under dynamic publishing / MySQL
Fixed a bug where a dynamically published template which contains an <mt:EntryTags> template tag retrieves tags for the entry ID in context and also retrieves any tags assigned to an asset which has the same ID number as the entry.
Tag links inside the apps for our packs (e.g. Community) are now being sent to movabletype.org instead of Google.
Archive path specifier %-C now produced dashes instead of underscores.
Fixed a bug where mt-xmlrpc.cgi gave no response or error using Windows IIS.
Fixed an error where viewing a dynamically published weblog page results in a "Page not found" error being displayed if the template which publishes the page has a template_identifier field value of "NULL" in the mt_template table in the Movable Type database.
[PATCH] Custom fields template tags cause "You used an '[CF Tag Name]' tag outside of the context of the correct content;" error
Fixed an issue where using a custom field tag occasionally produced an error when previewing or publishing.