Release notes: Beta-1 | Beta-2 | Beta-3 | Beta-20060626 | Beta-Final
Release notes - Movable Type 3.3 (Beta-1)
Below are the release notes for Movable Type 3.3 (Beta-1) detailing all changes to the program since Movable Type 3.2. If you have questions or comments, you can submit them here.
Show
7077: Improvements to Category editing screen and introduction of category basename
ADMIN UI: Major work on the content and layout of the category editing screen. Added a basename field for categories so that the label can be changed without affecting publishing paths. Also added a category TrackBack listing for categories which have the feature enabled and have received TrackBack pings.
15851: Implement more reliable junk feedback auto-expiration
FEEDBACK: Expiration of junk feedback items is now a registered 'periodic task' that is executed no more than every 12 hours. The receipt of a junk feedback item is an event that will trigger the periodic tasks framework, running all tasks which are scheduled to run at that time. These two changes in combination means that expiration of old junk feedback will occur nearly every 12 hours fixing a bug in version 3.2 which prevented its timely expiration.
21627: Plugin icons?
DEVELOPER: Developers can now specify a custom icon in the plugin registration which will appear in the system- and blog-level plugin listings.
21645: Add tag search support to mt-search
MAJOR FEATURE: Added a 'tag search' mode to the external search to enable browsing of entries with a particular tag Added template tags, IfTagSearch, IfStraightSearch and TagSearchLink to support the tag search.
21992: MT Upgrade should accomodate plugins
DEVELOPER: MT::Upgrade can now be utilized by plugins. Movable Type will manage the installation and upgrade of their declared object classes.
23941: Add MT serialization support to PHP
DEVELOPER: Added support for PHP serialization of plugin data. This allow PHP plugins to not only read configuration data but also to store it.
28762: Activity feeds: Provide filterable feed representation of activity log data
MAJOR FEATURE: Introduction of Activity Feeds which are authenticated, private feeds of Movable Type activity log items. The feed can be filtered (by blog, level of urgency and/or message classification) to only those items the author cares to see and allow actions to be taken straight from the feed with no further intermediate screens or confirmations.
29082: Full support for plugin localization
I18N/L10N: Implemented full plugin localization support. Plugins can now fully leverage Movable Type localization framework using their own localization files without need to modify Movable Type's.
29397: MIME::Words needed in extlib
I18N/L10N: MIME::Words Perl module is now shipped in extlib to do proper encoding of non-ASCII characters in email headers.
6607: IP Address 'whitelist' for search throttle
CONFIGURATION: Added the SearchThrottleIPWhiltelist configuration directive which takes a space-, semi-colon-,or comma-delimited list of full or partial IP addresses whose searches should not be throttled by the application.
8405: Deleting physical individual archive files of re-unpublished entries
STATIC PUBLISHING: Movable Type can now be configured (using the DeleteFilesAtRebuild configuration directive) to delete files made unnecessary by changes made in the administrative interface. Individual archive files are deleted when previously published entries are deleted or unpublished. Category archives are deleted when their corresponding categories are deleted.
8769: Password reset mechanism for System Administrators
ADMIN: Implemented a password recovery feature to be used by system administrators on behalf of common users. Password recovery can be initiated from the author's profile page or from the system overview author listing page using the itemset action.
12207: Pass IncludeBlogs from blog search form to default search template
TEMPLATES: Added a new template tag, MTSearchIncludeBlogs, which can be used in the search result template to pass your IncludeBlogs parameters through from the search form keeping the context of any followup search the same as the initial search. <input type="hidden" name="IncludeBlogs" value="<$MTSearchIncludeBlogs$>" /> Also changed the behavior of MT-Search to search *all* blogs (except those excluded in mt-config.cgi) if IncludeBlogs paramter is null.
21646: Add permission for managing entry tags
MAJOR FEATURE: Added a permission for accessing the weblog tag listing screen, deleting and renaming tags. Anyone with create or edit entry permissions can create tags from the entry editing screen.
21881: Activity log items related to comments, TrackBacks and entries display item metadata
Activity log items related to comments, entries and TrackBacks now display that content and relevant actions in an expandable container.
27769: Check the version of Perl installed before proceeding installation and upgrades.
INSTALLATION/UPGRADE: The minimum version of perl has been increased for Movable Type 3.3 to Perl 5.6.1. A Perl version check has been added to mt-check.cgi and, upon installation or upgrade, a warning will be displayed if the minimum Perl version requirement isn't met and the process may be aborted.
28013: Consistency in tags/category attribute plurality
TEMPLATE TAGS: Users can now use "category" or "categories" as an attribute to MTEntries, both with identical functionality. The same is true of "tag" and "tags" attributes.
28018: Adjusted default templates: Updating for 3.3 and some usability rework
TEMPLATES: Usability changes in default templates. All archive templates now have two column layout with an informational ("Where am I?") bit for those who come to them as an entry page (e.g. from Google). Now sorting archives in chronological order. Entry titles are now linked. Entry tags added to all entry output. A banner has been included on the archives to inform the reader what they're looking at. Category archive navigation tags have been added. All archive navigation links have been moved to the sidebar and are displayed in plain language.
28020: Blog-level entry editing interface control, defaults to Basic
ADMIN UI/USABILITY: Blog administrators can now control the entry editing page display options for all newly added users to the blog or for those who have never customized the entry screen for that blog. Also changed the initial default display for new blogs to the Basic setting although this can be overridden by the DefaultEntryPrefs configuration directive.
28446: Remove underunused clutter from mt-config.cgi
CONFIGURATION: Stripped down the mt-config.cgi-original file leaving in only bootstrapping information. Information about all other configuration directives can be found in the Configuration directives section of the manual.
28569: Update TypeKeyVersion default to 1.1
CONFIGURATION: TypeKeyVersion 1.1 is the new default setting; users who are upgrading that rely on a TypeKey 1.0 protocol (having a custom TypeKey-compatible authentication service) should be advised they may have to specify version 1.0 in their configuration file to maintain compatibility.
28618: Feed representations of public search results
FEEDS: Now mt-search.cgi can produce search results in feed format, MT 3.3 includes OpenSearch 1.1 compatible Atom syndication format feed for results in both straight search and tag search. The search result template for this feature has the default name of "feed", and the name and the name of the template file now are included in the configuration as the default value for AltTemplate.
29344: Update GenerateTrackBackRSS default to 0
CONFIGURATION: As part of the mt-config.cgi streamlining in case 28446, the internal system default for GenerateTrackBackRSS has been set to disabled (0). As this is the value it has held in the default mt-config.cgi file for some time, only users who removed the line will notice a difference.
29345: Update LaunchBackgroundTasks default to 0 (disabled)
CONFIGURATION: As part of the mt-config.cgi streamlining in case 28446, the internal system default for LaunchBackgroundTasks has been set to disabled (0). As this is the value it has held in the default mt-config.cgi file for some time, only users who removed the line will notice a difference.
29349: Move PublishCharset/NoHTMLEntities defaults to ConfigMgr
CONFIGURATION: As part of the mt-config.cgi streamlining in case 28446, the internal system defaults for PublishCharset and NoHTMLEntities have been updated with the defaults previously placed in mt-config.cgi. NoHTMLEntities is enabled by default and PublishCharset depends on build language but is usually UTF-8.
29351: Move default for DefaultLanguage to ConfigMgr
CONFIGURATION: As part of the streamlining efforts in case 28446, DefaultLanguage has been removed from mt-config.cgi and defaults to the language corresponding to the country portal where you downloaded Movable Type. Users who require a different default language from their "Six Apart store" country can add the directive back.
29446: Update base-weblog.css with changes from Style Contest and template updates
TEMPLATES: Merged Movable Type's default base styles with the changes from the Style Contest (http://www.thestylecontest.com) in order to ensure compatibility with all of the new styles.
3838: Silently drop duplicate pings on a post
FEEDBACK: Pings coming from the same IP address with the same Source URL are now silently discarded. A success value is, however, sent to the pinging server so that the doesn't keep trying to reping.
4309: OpenSearch-compatible search feed templates
FEEDS: Introduced feeds for search results and tag collections which allow blog readers to stay up to date with content that matches keywords and tags of interest.
4622: A Non-cron periodic task framework
MAJOR FEATURE: We've introduced a periodic task framework that is triggered by the use of activity feeds eliminating the necessity for server-side scheduling software like "cron". Plugins can also utilize the framework by specifying code to be run and a minimum time between executions.
6764: Order of template tag attributes respected; repeated attributes allowed
TEMPLATES: The order of attributes specified in template tags is now observed and respected (e.g. trim_to="10" remove_html="1" is different than remove_html="1" trim_to="10"). In addition, the same attribute can now be processed multiple times if so desired (ie, regex="abc" regex="def").
7122: Log trust/ban actions
FEEDBACK: Now logging all commenter actions (Trust, Untrust, Ban, Unban) in the activity log.
9059: Fully support use of HTTP proxy in CMS.pm and Comments.pm
CONFIGURATION: HTTP proxy support (if configured) is now consistently used wherever HTTP requests are made. Added generic proxy configuration settings: HTTPProxy, HTTPNoProxy and HTTPInterface, HTTPTimeout. Deprecating the use of PingProxy, PingNoProxy, PingInterface, PingTimeout.
9297: Need to validate site URL on weblog creation or save
ADMIN UI: Site URL is now syntatically validated upon weblog creation or save.
12165: mt-check.cgi doesn't fail on lack of DBI or DB_File
CONFIGURATION: In the case that the DBI module is not installed or too old, warnings will be displayed on mt-check.cgi for not only the DBI driver but also on those checks for all SQL database drivers (MySQL, PostgreSQL and SQLite) to eliminate confusion experienced previously by some users.
16061: Need buttons to empty junk folders
ADMIN UI: An "Empty Junk Folder" button has been included on the blog- and system-level junk listing screens allowing you to easily and satisfyingly destroy any evidence that spammers exist.
16182: Plugin doc_link is not relative to plugin envelope
DEVELOPER: Added support in the Plugin API for local documentation. The plugin "doc_link" can now be specified as relative to the plugin envelope.
16191: Enable seamelss support for multiple domains
CONFIGURATION: Added support for use of absolute paths (e.g. /cgi-bin/mt/) for CGIPath, AdminCGIPath and StaticWebPath instead of requiring full-qualified URLs (i.e. with domain names). This allows a number of domains to seamlessly use the same Movable Type installation while maintaining the same URL for all tasks.
16197: MTEntries include_subcategories attribute; Deprecate MTEntriesWithSubCategories
TEMPLATES: Added a boolean `include_subcategories` attribute to MTEntries (default: 0) which indicates whether MTEntries should include entries in subcategories of the category or categories specified in the `category` attribute. Deprecated MTEntriesWithSubcategories in favor of this method.
16202: Entries without titles have dumb basename
ADMIN UI: If an entry is created without a title, the basename is now populated by the first few words of the entry text as opposed to the previously default assignemnts of post_1, post_2, etc.
16212: Unable to specify secure Site URL
CONFIGURATION: Added support for secure URLs (i.e. https) in the Site URL weblog configuration.
21637: XMLRPC support for tags
DEVELOPER: We've added new "mt_" prefixed elements: mt_tags and mt_basename to allow XMLRPC clients to set these fields when creating/editing posts.
19739: Subcategories do not sort alphabetically in listings
ADMIN UI: Subcategories in various interface listings (Categories page, Entries Filter, Primary Category dropdown menu, Power Editing Mode) are now sorted alphabetically.
20142: Expire junk feedback sooner
FEEDBACK: The default auto-expiration time for junk feedback has been lowered from 60 days to 14.
21616: Activity log Export should respect filter settings
ADMIN UI: Export of activity log now properly respects specified filter settings
21667: BuildFileFilter callback flaw.
DEVELOPER: Improved consistency of BuildFileFilter and related callbacks
21867: Some Template tag changes
TEMPLATES: Added MTCommenterIfTrusted template tag and deprecated MTIfCommenterTrusted to be consistent with other context-oriented "If" tags). Added the following template tags: MTEntryTags, MTEntryIfTags, MTEntryIfHasTag, MTEntryCount, MTCategoryPrevious, MTCategoryNext, MTIfCategory, MTIfNotCategory, MTIfPrimaryCategory, MTIfNotPrimaryCategory.
21868: Plugin registration should be easier, cleaner and consolidated
DEVELOPER: Implemented a hash-style registration format for plugins. See perldoc for MT::Plugin for details.
21798: Add MTBlogPingCount tag to show total pings for a weblog
TEMPLATES: Added the template tag, MTBlogPingCount, which returns the number of pings received on the weblog in context.
21919: Expand archive file path shortcut options
CONFIGURATION: Added a number of dash-separated Archive File Path choices (e.g. primary-category/entry-basename) to the Archive Mapping section of the weblog publishing settings.
21962: Increase font size in entry/template editing textareas
USABILITY: Increased the font size in all entry and template editing textareas for greater readability.
22178: Enable callbacks in MT initialization
DEVELOPER: Object callbacks are now enabled during the intial setup of Movable Type, allowing for plugins to affect the creation of the initial system objects (i.e. initial author, First Weblog and related attributes).
22241: SpamLookup 2.0 multibytes support
INTERNATIONALIZATION: Added multibyte support to SpamLookup using the Perl Encode module with graceful fallback if unavailable. (Thanks to Hirotaka Ogawa!)
22352: Saving new weblog with duplicate Weblog Name does not produce appropriate error
CONFIGURATION: Now allowing creation of weblog names with the same name.
22353: Renaming existing weblog with duplicate Weblog Name does not produce appropriate error
CONFIGURATION: Now allowing creation of weblog names with the same name.
23451: Add "MovableType" to RSD file
DEVELOPER: Added Atom and Movable Type API endpoints to the default RSD file in addition to Metaweblog and Blogger API endpoints.
23760: SpamLookup: Offer option to disable short-term memory to close spam hole
SPAMLOOKUP: Offered an option to ignore recent feedback in SpamLookup's link and email memory tests, closing a hole used by spammers to circumvent filtering.
23782: Atom is not listed among APIs in rsd.xml
DEVELOPER: Added introspection resources for MovableType and Atom APIs to RSD template.
23847: MTArchiveList isn't affected by sort_order (and perhaps other attributes?)
TEMPLATES: MTArchiveList can now be sorted using the sort_order attribute.
23969: Enhanced template module rebuild performance
PERFORMANCE: Implemented much better handling of template modules during rebuilds providing for potentially significant gains in performance for static publishing. Implemented caching of template module code (i.e. not output content) when called as well as the content of files specified in MTInclude tags, eliminating repeated and wasteful database and file system loads and tag tokenization. Unused template modules no longer have an effect on performance.
24223: MT::Blog object not cached during rebuilds
PERFORMANCE: Fixed an issue where each each page published by the system made an unnecessary call to the database to fetch the current blog object. We are now caching the blog object in memory during the rebuild process. (Thanks to Tim Appnel!)
24696: Eliminate the requirement of unique blog names
ADMIN UI: Multiple blogs can now be created with the same name.
24810: Queries for listings in CMS are inefficient
PERFORMANCE: Greatly streamlined the loading of pages within the Admin UI by consolidating the queries executed to construct the blog dropdown on every page and to gather metadata on all items of all listing screens in the application.
24827: Change "API Password" to "Web services password"
ADMIN UI: Humanized the "API password" by renaming it to "Web services password"
25095: Blog Menu "Most Recent" box changes
ADMIN UI: Improved the presentation of the most recent comments/TrackBacks section on the blog's main page including the addition of the standard status icons.
25098: Changes to "Customize this page" screen and configuration
ADMIN UI: Improved the presentation of the entry editing screen display options ("Customize the display of this page") to make it more understandable and predictable.
25101: Makeover for entry notification screen
NOTIFICATIONS: Entry notification now supports sending notifications to arbitrary email addresses in addition to or instead of the blog notification list.
25544: Mishandling of valid UTF-8 accented characters in utf-8 dirify routine
I18N/L18N: Implemented a vastly superior dirification method which will intelligently transliterate accented characters into their ASCII equivalents instead of omitting them.
25770: "Batch Editor" placement and repect of filter settings
ADMIN UI: The batch editor (formerly power edit) now respects current filter settings of entry listing and has been moved to the bottom of the entry list table to reflect that.
25771: Remove link to List Commenters from List Comments and vice versa
ADMIN UI: Simplified the comment and commenter listings by removing the auxilliary link to the other made redundant by the sidebar navigation menu button.
25775: Improvements to the file upload popup
Admin UI: The file upload dialog now suppresses the upload path, being an optional field. When you expose it, it shows the upload paths-- "Site Root" and "Site Root/yyyy/mm/dd" are now available by default. If you enable a separate archive path, that location is listed as well. Using Transformer callbacks, plugins can supplement the upload location list further. For instance, a plugin could supplement the list with an upload path for each category in the weblog.
26230: "More Actions" drop down menu is disabled in System Wide Weblogs listing page
ADMIN UI: Blog administrators now have access to the itemset action dropdown on the System Overview weblog listing allowing them to refresh templates for their own blogs.
26800: Activity Log does not record all object deletions
ADMIN UI: The system activity log now records deletion events for all data types.
27409: MT::Upgrade's core_update_records should use 'finish' on iterator
UPGRADE: Increased the speed and reliability of the upgrade process for very large data sets.
28262: Activity log can be filtered by message level
ADMIN UI: The activity log now supports a message "level" setting and allows filtering by individual and combinations of message levels.
29379: Staging builds should include all language configuration modules
I18N/L10N: All supported language packs are now included with Movable Type.
29512: Global Text Filters not global in dynamic publishing
TEMPLATE TAGS: The dynamic publishing tag() method now handles global attributes identically to use in normal tag formats (<$MTTAG attribute="VAL"$>). For example, <$MTEntryTitle dirify="1"$> is equivalent to $this->tag('EntryTitle', array('dirify' => '1'));
3070: Trackbacks display incorrectly unless sender uses same PublishCharset as receiver
FEEDBACK: Implemented TrackBack transcoding between many character sets via Encode/JCode modules. This allows for correct display of TrackBacks sent in an encoding different than the recipient's blog character encoding.
3813: Add callback for "upload file" event
DEVELOPER: Added application callbacks for "upload file" event: CMSUploadFile and CMSUploadImage
7011: Resizable entry editing textareas
ADMIN UI: Added resizing controls to entry body and extended entry textareas of entry editing form. The size of the textareas is preserved upon saving the entry on a per-user, per-weblog basis.
7149: System activity log perm should cascade down to weblog
ADMIN UI: Permission to view the system-level activity log now cascades down to allow a user to view the activity logs of any blogs they have permissions for regardless of whether they've been given blog-level activity log viewing permission.
8715: Weblog column for the System activity log
ADMIN UI: Added a weblog column to the System Activity log which is linked to the weblog's activity log.
12218: "None" option for Authors in power edit should be suppressed if has author
ADMIN UI: When using power edit mode, "None" is not a valid option for entries that already have an author, so this option is suppressed. Entries that have no existing author will still appear with "None" as their author (this happens when an author is removed from the system).
15400: Comment forms and input type=image
TEMPLATES: For those who wish to do so, images can now be used in place of submit buttons for "Preview" and "Post on the weblog comment form.
16085: "View Entry" link in List Entries
ADMIN UI: Entry listings in admin interface now include a clickable permalink for published entries.
16870: php and sqlite are not meant to be?
CONFIGRUATION: Implemented support for SQLite2 with the UseSQLite2 configuration setting
21674: Pass MT::Template reference to rebuild callbacks
DEVELOPER: At Tim Appnel's request, all build callbacks now pass through the active MT::Template object.
21931: Missing plugin action callbacks on Main Menu and other pages
DEVELOPER: Plugins can now add plugin action links to the Movable Type main menu
22356: New weblog can be created with a relative Site URL
CONFIGURATION/ADMIN UI: Implemented better validation on weblog creation screen. Also, now returning to the general settings screen after new blogs are created.
23802: MT does not include rel="alternate" in introspection document
DEVELOPER: Added an alternate link relationship item (link rel="alternate") to the MT introspection document (RSD).
23808: Plugins are not grouped by Set under blog settings
DEVELOPER: Plugin sets are now grouped on the blog-level plugin settings page just as they are on the system-level settings page.
23848: Add MT App UI hooks for arbitrary, sanitized plugin HTML
DEVELOPER: Implemented a transformer plugin hookpoint for display of custom, arbitrary HTML on the Movable Type main menu, just below the welcome message. Examples of use include display of recent site traffic statistics from StatWatch or Google Analytics, recent items added to the Media Manager queue, "Hot topics" comment listing, etc.
23855: Update ConfigMgr can use hash value as default
CONFIGURATION: Added configuration directives for controlling the default listing screen display options (DefaultListPrefs) and the entry editing screen layout (DefaultEntryPrefs).
24392: System-wide Site URL and site root default settings
CONFIGURATION: Added the DefaultSiteURL and DefaultSiteRoot configuration directives for specifying the initial values displayed in the Site URL and Site Root fields of the Create new weblog screen.
24843: Link text for filter on unfiltered listing pages confusing
ADMIN UI: Changed the text on the listing pages' filter status control from "Filter: Showing all entries" to "Filter: None (Showing all entries)" to make it less confusing.
24969: ActivityFeedsRunTasks config directive
CONFIGURATION: Added the ActivityFeedsRunTasks configuration directive which governs whether activity feeds should trigger the scheduled tasks framework. This setting defaults to on (1) but can be switched off (0) if the user prefers to run the tasks framework via cron.
25012: object audit has an unnecessary blog_id requirement
DEVELOPER: MT::Object functionality change: attempting to refer to undefined object properties will result in a fatal error.
25097: Make help links in app less prominent
ADMIN UI: Cleaned up the administrative interface by reducing the contrast on the help links making for a more pleasing look.
25162: Width and Height of Typekey image in MTCommentAuthorIdentity
TEMPLATE TAGS: The width and height attributes for the Typekey profile image (nav-commenters.gif) has been removed from the output of MTCommentAuthorIdentity. This allows for replacement of the icon with an alternate image of a different size.
25265: Deprecate MTTemplateNote; Add MTIgnore container
TEMPLATES: Add MTIgnore container tag which can be used for commenting or escaping portions of a template. Also deprecated the undocumented MTTemplateNote which had the same purpose but was a less useful variable tag.
25266: Add SetVarBlock tag
TEMPLATES: Added MTSetVarBlock container tag. Has the same function as MTSetVar but in a tasty new container variety!
25299: Status messages for publishing/unpublishing an entry
ADMIN UI: Now displaying a result message on the entry listing screen when an entry is published/unpublished via the itemset actions. This is consistent with the messages displayed under the same circumstances on the comment and TrackBack listing screens.
28024: "View published template" link for index template editing/listing screens
ADMIN UI: Index template edit screen and index template listings now display a link to view the published template.
29087: RSD template needs MTHTTPContentType tag
FEEDS: Proper XML content types are now returned for RSD and Atom templates when publishing them dynamically.
29137: JavaScript alert when deleting Activity Log?
ADMIN UI: Implemented a javascript warning to confirm reset of the system activity log.
6393: Option to add _target to automatically-generated author links
TEMPLATE TAGS: Added a new_window attribute to MTEntryAuthorLink and MTCommentAuthorLink allowing the opening of new windows from those links if users so desire.
23372: Provide a PHP accessor function for conditional tags
TEMPLATES: Added a PHP accessor function for conditional template tags (e.g. MTIfCommentsActive) under dynamic publishing. The normal PHP tag() function will now return true or false for these types of template tags. Example: $comments_active = $this->tag('IfCommentsActive');
24757: Resizable template editing textareas
TEMPLATES: Added textarea resizing controls to the template editing pages
27023: POD DOCS: Document MT::WeblogPublisher::BuildPage callback
DEVELOPER: Documented the "BuildPage" publishing callback with POD docs in the MT::WeblogPublisher package.
28261: POD DOCS: AppTemplateOutput callback perl docs missing
DEVELOPER: Documented new 'Transformer' callbacks in POD documentation in MT::App package.
12674: Non-ASCII characters encoded incorrectly with MySQL
BUG FIX: In version 3.2, using certain later versions of MySQL or postgreSQL, some non-ASCII characters were not returned correctly from the database as originally written. This was caused by a mismatch between the character_set_client and character_set_connection variables. To fix this problem, we've added a configuration directive, SQLSetNames, which will inform the database of the character set being used by the client. The database character set *must* match the PublishCharset used by Movable Type.
21532: mod_perl upgrade error caused by default-templates.pl inclusion
BUG FIX: Fixed a bug in the upgrade process under mod_perl where an error is thrown due to reinclusion of MT/default-templates.pl.
23064: AtomServer provides incorrect URLs for resources
BUG FIX: Fixed a bug which caused the Atom protocol resource links returned by MT to point to the AdminScript (usually mt.cgi) instead of the AtomScript (usually mt-atom.cgi).
25023: User with no permissions generates error; app unusable
BUG FIX: Fixed an issue where the system would return an error when a user with no blog-level permissions (e.g. a system administrator or, after deleting all weblogs, any user) accessed the application.
26898: PHP5/IIS 6 error: Page Not Found: You used an without a date context set up.
BUG FIX: Fixed an issue with the combination of IIS 6.x, PHP 5.x and MySQL 5.x where the monthly archives would either render as blank pages or produce the following error: Page Not Found - You used an without a date context set up.
29444: The algorithm to emit category basename is different from previous MT
BUG FIX: For weblogs whose PublishCharset is something other than UTF-8 which have categories labels incompatible with latin-1, MTCategoryLabel template tags with dirify attribute set to 1 now emits the same result both in static templates and in dynamic templates. For example, if a category has label of nothing but Japanese characters and PublishCharset is set to Shift_JIS, when a template which has <$MTCategoryLabel dirify="1"$> in it is published dynamically, previous version of MT would emit some strings as a result, although in static template MT would emit "cat1". Now both type of templates emit the same result which will be empty string.
29448: MTCategoryLabel and dirify results different between static and dynamic
BUG FIX: Fixed an issue solely under static publishing where <$MTCategoryLabel dirify="1"$> would incorrectly publish "catN" (where N is the category ID) for any category name which dirified down to 0 characters because none were standard ASCII. It now correctly returns nothing.
3903: Dynamic publishing does not properly use/store linked templates
BUG FIX: Fixed a bug which caused linked templates to be ignored under dynamic publishing. Now, the dynamic publishing system will preferentially use a linked template if its timestamp is later than the one in the database.
13347: Deprecated the comment listing template
BUG FIX: The comment listing template is no longer supplied with Movable Type, since we now recommend publishing individual archives for supporting comments.
20054: Saving entry from preview screen changes basename, breaks permalinks
BUG FIX: Fixed a bug where saving an entry from the preview screen can cause the entry basename to be incremented needlessly.
24961: FileInfo records are left behind when template / templatemap / categories are removed
BUG FIX: All parent classes to MT::FileInfo are now cleaning up their child fileinfo records upon deletion.
26941: Comments on unpublished entries appear in an MTComments listing
BUG FIX: Fixed a bug where the use of the lastn attribute with MTComments would display comments posted to subsequently unpublished entries.
4168: The Entry status changes to publish even when there is an error while executing run-periodic-tasks.
BUG FIX: In the event that there is an error while publishing scheduled posts, the posts that failed to publish will be returned to a 'scheduled' status.
5411: Modified 'URLs to ping' field not saved when saving entry
BUG FIX: Fixed a bug which made it impossible to remove URLs of failed TrackBacks from the URLs to Ping section of the entry editing screen if a link to the TrackBack-enabled page still existed in the entry text.
7272: MTEntries does not recognize entries dated at midnight on first day of month
BUG FIX: Entries whose dates fall at midnight at the first/end of a month, week or day are now properly included in that monthly, weekly or daily archive.
15073: Need better messaging for commenter actions wrt auth/non-auth commenters
BUG FIX: Implemented better messaging upon attempts to trust or ban unauthenticated commenters.
16031: StyleCatcher: Only System Administrators can use the plugin (MT::Permission error)
BUG FIX: Authors with "Manage Templates" but not "System Administrator" permissions may now access the StyleCatcher plug-in.
16114: lastn with MTArchiveList returns incorrect number of archives
BUG FIX: Fixed a bug in MTArchiveList which, when specified with the lastn attribute, returned an incorrect number of archives.
16141: Comment notifications not sent when "Only when attention is required" is checked
BUG FIX: Fixed a bug which prevented notifications of moderated comments from being sent when blog configuration specifies they should be sent "Only when attention is required".
16193: XML-RPC fails without XML parser
BUG FIX: Fixed an issue for third-party posting clients (e.g. Ecto et al) where users without an XML parser installed on their system would see a misleading error when using XML-RPC: "No ObjectDriver defined".
16207: Extra $ in Date-based archive template
BUG FIX: Removed extraneous $ in RSS 'link' tag of date-based archive templates.
16210: Cannot "Show all matches" on internal comment search.
BUG FIX: Fixed a bug preventing the display of all matches on a comment search returning more than 125 items.
16231: SpamLookup moderates with more than OR EQUAL TO 3 links
BUG FIX: Fixed a typo in a setting in SpamLookup's Link Limits section which stated "Moderate when more than N link(s) are given". The text now properly reads "more than or equal to".
17856: Problem with DBI check in mt-check.cgi on Windows
BUG FIX: Fixed an issue with mt-check.cgi on Windows servers in which it misreported the availability of DBI::* drivers.
21621: SpamLookup: Can't choose to moderate for suspicious trackback pings
BUG FIX: Fixed a bug in the SpamLookup that prevented the choice to moderate "suspicious trackback ping sources".
21641: Saving entry from preview screen sends duplicate pings
BUG FIX: Fixed a bug which caused the system to re-send TrackBack pings when saving a previously saved entry from the Preview screen
21661: No weblogs causes error on weblog listing screen
BUG FIX: Fixed a bug which caused an application error if a user with no blog-specific permissions viewed the weblog listing screen.
21857: Can't configure "https://" into "Site URL" parameter
BUG FIX: Fixed a bug preventing the use of secure HTTP (https) URLs for the weblog Site URL setting.
22053: Activity log page navigation missing "newest" link
BUG FIX: Fixed a bug that caused the "newest" navigation link (i.e. back to the page of most recent items) on certain listing pages to be unlinked.
21918: Atom Index does not produce valid feed
BUG FIX: Removed Atom 1.0 link relationships 'service.post' and 'service.edit' from the default Atom index template until they are more widely recognized by feed validators. In the meantime, developers can glean this introspection information from the Movable Type RSD file (rsd.xml).
22040: MTEntries w/offset attribute broken w/MySQL 3.23x
BUG FIX: Fixed a bug under dynamic publishing for older versions of MySQL where use of the offset attribute to MTEntries would cause an error.
22355: Saving a new weblog with no name does not produce an error
BUG FIX: Fixed an issue where saving a newly created blog without a name would not cause an error or create the blog. Now validating the field and returning an appropriate error if needed.
22365: Using AND in the category attribute of MTEntries in dynamic templates doesn't work properly
BUG FIX: Fixed an issue with MTEntries under dynamic publishing where specifying a category attribute with an intersection between two categories ("Foo AND Bar") would return all entries with the first category regardless of the second.
22379: MTIfIsDescendant doesn't work correctly if two blogs have identical parent categories
BUG FIX: Fixed a bug in MTIfIsDescendant where it would always return false if another blog also had a parent category by the same name.
22413: Author names in certain languages are rejected: "Author requires username"
BUG FIX: Improved internationalization support for non-ASCII usernames.
22628: "StyleCatcher" themes are not working for newly created weblogs
BUG FIX: Fixed an issue where StyleCatcher would fail to properly apply a style to new weblogs, creating an incorrect link to the css/images in blog's static directory.
23077: junkfilter plugin dying not being logged
BUG FIX: Fixed a bug which prevented logging when a JunkFilter plugin died.
23352: _hdlr_cgi_host calling _hdlr_cgi_path without context
BUG FIX: Fixed a bug in the CGIHost context handler which hindered relative domain support. It now now passes its argument(s) to the CGIPath handler.
23751: YahooSB: Template setting bugs upon editing
BUG FIX (YahooSB only): Fixed a bug where upon saving an index template the "rebuild with indexes" option would be turned off. Also, fixed a bug where, upon saving an archive template, caused it to be set to build dynamically.
23935: Search entries works only the first time in the FastCGI environment
BUG FIX: Fixed a bug under FastCGI where the internal administrative search only worked upon first execution due to caching of the search term used.
24424: Container tags in dynamic pages don't work correctly under PHP 5.1.2
BUG FIX: Upgraded to the latest release of Smarty, which fixes an issue with dynamic publishing under PHP 5.1.2 (released on January 12, 2006) where container tags would showing only one item instead of multiples items.
24907: Accesskey changes required because of conflicts
BUG FIX: Made a system-wide change to the accesskeys for "delete" and focus on the "quick search" input box because of conflicts in certain browsers. The delete accesskey is now 'x' (think: expunge or crossing something out) and focus on the quicksearch input box is now 'q'.
25025: recently_commented_on ignored entry status and displays draft entries
BUG FIX: Fixed a bug in the recently_commented_on attribute of MTEntries which caused unpublished entries to be listed.
25187: Spamlookup: Wordfilter doesn't handle decoded text correctly.
BUG FIX: Spamlookup plug-in Wordfilter now handles decoded text correctly.
25189: Background tasks take very long on some servers
BUG FIX: Fixed a issue with background tasks where actions could take significantly longer if errors are generated during the execution of those actions. This has the effect of greatly improving performance with background tasks turned on. (Thanks to Bradon Fuller for his investigation into the problem!)
25513: Comment/trackback junk scoring table 'Results' should be HTML-encoded
BUG FIX: Now HTML-encoding all Junk log messages (displayed on the individual editing pages for comments and Trackbacks).
25514: Comment/trackback junk scoring table splits junk log lines at "?"
BUG FIX: Fixed a bug that caused comment/TrackBack junk log messages to be split over two lines if the message contained a question mark.
25852: Blog Administrator is able to view the unassigned Weblog in Weblogs listing page
BUG FIX: Resolved an issue where a blog administrator would still see weblogs for which they previously but no longer had permissions for in the system overview weblog listing. Attempts to access the weblogs would result appropriate "No permissions" error.
25904: MTBlogResultFooter evaluates after every entry rather than after only last entry
BUG FIX: MTBlogResultFooter now evaluates after last entry in a set, instead of after every entry.
26026: Faulty commenter data assumption causes TypeKey cookie to be destroyed needlessly
BUG FIX: Fixed a bug which prevented authenticated commenting for users who had previously commented without authenticating on that blog or another blog on the same domain but had selected the choice to remember their commenter information. Whenever a commenter submitted a comment under these circumstances, their TypeKey information would be mistakenly compared with the unauthenticated information stored in a cookie, but because the names of some of the form inputs differ, the comparison always failed. At that point, the TypeKey authentication cookie would be destroyed, causing the comment to be saved, but with the unauthenticated data. This same bug would also cause a "name and email required" error message under other circumstances.
27022: Can't display Japanese error message when mt-config.cgi file isn't found
BUG FIX: Fatal errors (such as a missing configuration file) are now localized properly using the language of the release.
26786: Rebuild All Files bug with odd number of Monthly templates
BUG FIX: Fixed a bug where some monthly archives would not rebuild in a full rebuild when an odd number of monthly archives existed. (Thanks Kevin Shay!)
26942: Saving "General" settings after saving "New Entry Defaults" causes certain settings on latter to be undone
BUG FIX: Resolved an issue which caused the blo.gs, weblogs.com, technorati.com, and "Enable External TrackBack Auto-Discovery" checkboxes to become unchecked if those settings were saved prior to saving data on the General settings page.
27201: Blog admin is unable to edit the entries, which are associated to his weblog in system level
BUG FIX: Fixed a bug which prevented Blog administrators from selecting entries from their own weblogs in the system entries listing.
27419: Trackbacks are accepted on draft entries
BUG FIX: Fixed a bug where Trackbacks were accepted on draft entries.
27881: Linked templates revert to older versions when SAVE performed on Publishing tab
BUG FIX: Fixed a bug under static publishing where linked files were not being used. (Thanks David Phillips!)
29165: Display message on main menu when user has no blogs
BUG FIX: Fixed a bug which caused an error to be thrown upon login if the user had no blog permissions.
29212: 3.30a5 - Call-time pass-by-reference has been deprecated - argument passed by value
BUG FIX: Fixed a warning when using the MTParentCategories tag under dynamic publishing.
3896: Three strings are not internationalized
BUG FIX: Fixed an issue with three different strings which could not be localized due to missing TRANS tags.
5410: Category archive not rebuilt when category ping is received
BUG FIX: Fixed a bug preventing rebuilds of category archives when receiving a TrackBack ping for a category which has them enabled.
7262: Timezone offset issues in MT Activity Log
BUG FIX: Fixed a bug where the date in the System Activity log (using the 'full' date display option) does not take into account the TimeOffset configuration directive and instead displays the date/time in GMT. (Thanks Tweezerman!)
16471: Unable to assign multiple categories in Opera
BUG FIX: Fixed a bug in Opera which prevented mutiple category assignment.
15442: Date display problem in dynamic pages with no timezone set
BUG FIX: Fixed a bug that caused the dates to be published incorrectly under dynamic publishing when the weblog's "date language" field has not been set.
15816: Create new subcategory link scrolls page to the top
BUG FIX: When creating new categories on the category listing screen, the "Create" link no longer causes the page to jump to the top.
15874: Entries having no Title is displaying blank space at "Five Most Recent Entries"
BUG FIX: Fixed a bug which caused entries with no title to appear blank in the Five Most Recent Entries box on the weblog main menu.
16005: index.html file still points to old installation instructions
BUG FIX: Fixed the broken link in the index.html file in the Movable Type distribution to the installation instructions.
16132: Comment Listing & Preview Templates refer to non-existent js/commenter_name.js file
BUG FIX: Removed reference in the comment listing and preview templates to the non-existent commenter_name.js.
16133: Javascript error on Comment Preview Template (missing Remember Me checkbox?)
BUG FIX: Removed "remember me" checkbox from the comment preview template because the cookie can only be set from the CGIPath instead of from the StaticWebPath. We also now better handle the case where 'remember me' checkbox isn't present on comment form.
21715: EMEA: plural form of strings needed
BUG FIX: Fixed a number of strings that were not localized because their pluralized versions were not included in the localization files.
22042: MTEntryModifiedDate does not work in dynamic Individual Entry Archives
BUG FIX: Fixed a bug under dynamic publishing in which MTEntryModifiedDate returned the created_on date instead of the modified_on date in Individual Entry Archives.
22226: MT::Image doesn't respect a Height only scale operation
BUG FIX: Fixed a bug in MT::Image which did not scale images when only the height atribute was specified.
22128: Accessing Publishing tab under IIS results in error "Script produced no output"
BUG FIX: Fixed an error under IIS, "Script produced no output", which happened on the weblog Publishing settings tab due to the localzation routine's inability to handle a particularly long phrase.
22129: Missing closing blockquotes on mt-check
BUG FIX: Fixed an issue with a missing closing blockquote tag on mt-check.cgi
22354: Existing weblog can be saved without a name and produces no error
BUG FIX: An error is now given when attempting to save a weblog with no name.
22362: Previous/Next navigation on Edit Entry misbehaves when two entries share same date/timestamp
BUG FIX: Fixed an issue on the entry editing screen of the admin UI which caused unexpected results in the previous/next navigation when two entries shared same date/timestamp.
22364: Previous/Next navigation on Individual Archives misbehaves when two entries share same date/timestamp
BUG FIX: Fixed an issue on the individual entry archive page which caused unexpected results in the previous/next navigation when two entries shared same date/timestamp.
22386: Invalid HTML in Welcome Message breaks it, leaves no ability to recover from mistake
BUG FIX: Fixed an issue where invalid HTML entered into the configurable welcome message on the blog's main menu could make it impossible to re-edit. The edit link is now displayed above the editable section of the welcome message, ensuring its availability.
22414: Using certain languages in an entry title causes a Javascript error
BUG FIX: Fixed an internationalization bug which caused a javascript error when an entry title is entered using certain languages (e.g. Thai, Japanese).
22415: Customizing Edit Entry display to hide basename field causes Javascript error
BUG FIX: Fixed a bug caused a javascript error if the basename field was hidden via customization of the entry editing screen.
22709: Java script error when Comment Preview button is clicked on Main Index Page
BUG FIX (YahooSB only): Fixed a bug which caused a javascript error upon comment preview for an author who hadn't selected "Remember info"
22716: Java script error when trying to enter title name in QuickPost pop up form
BUG FIX: Fixed an bug in the automatic basename creation javascript function which would cause an error under a number of arcane situations (e.g. focusing on the title field, typing something and then deleting it and removing the field's focus).
22929: no error when read_config fails
BUG FIX: Now correctly propagating the error up to MT->new() when the configuration file cannot be found instead of misreporting that "ObjectDriver can't be found".
23471: Errors running tools/rebuild-indexes on MT 3.2/BerkeleyDB
BUG FIX: Fixed a bug in tools/rebuild-indexes which returned the following error: "Can't locate object method "version_number" via package "MT".
24560: Knowledge base link on System overview goes to the old URL
BUG FIX: Updated link to MT knowledge base on the System Overview screen
24524: <MTElse>0</MTElse> returns null
BUG FIX: Fixed a bug where any container or conditional tag with only a zero ("0") between the opening and closing tag (e.g. <MTElse>0</MTElse>) would produce nothing.
24809: Edit link of MTEntryEditLink not MT_TRANS'd
BUG FIX: Fixed a missing TRANS tag on MTEntryEditLink so that the tag can now be localized. In addition, added the 'text' attribute that lets you customize the phrase.
24831: MT::AtomServer::new_post error not correctly returned to client
BUG FIX: Fixed a bug in the Atom server where a misleading error, or none at all, would be returned if the body of a new post was empty.
25009: IfNonZero, IfNonEmpty, and php 'tag' operations don't provide proper contexts
BUG FIX: Fixed an issue where use of the dynamic publishing tag() method, the MTIfNonZero tag and the MTIfNonEmpty tag with certain template tags as attributes/values (e.g. $this->tag('MTSomeTag') or MTIfNonZero tag="SomeTag") would yield an incorrect value because the wrong tag context was being given to the handler routine of the tag being tested.
25085: Zero is not valid comment text
BUG FIX: Fixed a bug where a number of template tags would return nothing at all if the input to those tags is only a '0' because it was being evaluated as a boolean false.
25086: Add onload attribute to rebuild popup window for focus
BUG FIX: If the Rebuild popup window was left in the background behind a main window, it is now brought to the front and focused when the Rebuild button on the main window is clicked.
25088: Default GlobalSanitizeSpec under dynamic publishing does not include li tags
BUG FIX: Added list item tag (<li>) to the list of allowed HTML tags in the dynamic version of the default GlobalSanitizeSpec. Previously it was omitted but included on the static side.
25199: Junk view (tab=junk) parameter not preserved when filtering by entry/weblog
BUG FIX: When you click on the weblog in a junk comments or Trackbacks listing, you are now taken to the same listing for that weblog as opposed to the non-junk listing on that weblog.
25611: Search form option labels not clickable; lack 'for' in 'label for'
BUG FIX: Fixed an issue where the labels for the "limited fields" input items did not select their corresponding checkbox when clicked.
26900: MT->instance->blog fails under MT::App::Comments and MT::App::Trackback
BUG FIX: Fixed an issue where MT->instance->blog failed to return the current blog object in MT::App::Comments and MT::App::Trackback.
27120: No MT_TRANS for Anonymous commenter label
BUG FIX: Now appropriately localizing the value "Anonymous" in the default_name attribute of MTCommentAuthorLink in the default individual archive template.
27980: loading an entry field steals cursor focus
BUG FIX: The entry compose screen sets focus on the title field for new posts only and does not focus on the title field for editing an entry.
28399: Default templates: Individual Entry Archive content-nav links don't remove HTML
BUG FIX: Previous and Next entry navigation link entry titles in default individual entry archive are now stripped of any HTML to prevent breakage if HTML is included in entry title.
29414: MTEntryAuthorDisplayName/MTEntryAuthorLink publishes MTEntryAuthorUsername if unspecified
BUG FIX: MTEntryAuthorDisplayName now correctly returns NULL if display name is not specified instead of publishing MTEntryAuthorUsername
5013: XML-RPC incorrectly lists encoding because of SOAP::Lite
BUG FIX: Fixed an issue where under some circumstances, non-ASCII characters could cause errors in the XML-RPC server. Now overriding SOAP::Lite's default encoding header with the blog's PublishCharSet in order to fix.
16183: Misspelling in Spamlookup
BUG FIX: Fixed a mispelling in the help text of the SpamLookup configuration interface.
16184: Fixme note left in final interface
BUG FIX: Removed a "FIXME" note left inadvertently in the New Entry Defaults settings page.
16186: mt-config.cgi has incomplete uri for installation docs
BUG FIX: Fixed a "FIXME" placeholder URL in the help text of mt-config.cgi.
24134: mt-db2sql.cgi does not consider category trackbacks
BUG FIX: Resolved an issue with mt-db2sql.cgi where category trackbacks were not imported into the SQL database.

