Home

>

Tools

>

Drupal

>

Releases

>

4.5.0

Drupal Release: 4.5.0

Tag Name: 4.5.0

Release Date: 10/18/2004

Drupal LogoDrupal

Highly flexible, open-source content management system known for complex, scalable web applications. Preferred by government, educational, and large enterprise websites requiring advanced customization and security features. Robust module ecosystem.

TL;DR

Drupal 4.5.0 introduces a major overhaul of the theme system, significant PostgreSQL compatibility improvements, and numerous performance enhancements. This release brings better PHP5 compatibility (though not full support), improved user management features including customizable registration forms, and a revamped forum module with 3x faster performance. Security and accessibility have been enhanced with better permission handling across modules, particularly in the upload and book modules. The release also includes numerous bug fixes and usability improvements across the entire CMS.

Highlight of the Release

    • Major theme system overhaul with improved template handling
    • Significant PostgreSQL compatibility improvements
    • 3x performance boost for forum pages with new comment statistics caching
    • Customizable user registration forms
    • Better permission handling across modules, especially upload and book modules
    • Partial PHP5 compatibility improvements
    • Reintroduced menu caching for better performance
    • Improved XHTML compliance across the system

Migration Guide

Theme System Changes

If you're using custom themes, you'll need to update them to work with the new theme system. The major changes include:

  1. Theme settings have moved from xtemplate settings to the new theme system settings
  2. The upgrade path from Drupal 4.4.x to 4.5.0 includes automatic conversion of old xtemplate settings
  3. Review the detailed documentation at http://drupal.org/node/view/9576

PHP5 Compatibility

While this release includes some PHP5 compatibility improvements, Drupal does not yet fully support PHP5. If you're running PHP5, you may encounter issues, particularly with xtemplate which is still described as "horribly broken" in PHP5.

Filter System Changes

The filter system has undergone significant changes:

  1. The default filter format is now implicitly accessible to everyone
  2. Filter format selectors have been moved to be controlled by modules
  3. The placement of filter format selectors is now below the relevant textarea

Book Module Changes

If you're using the book module:

  1. The book outline feature has been reintroduced
  2. Non-book pages now have an outline-tab on their node page (with appropriate permissions)
  3. The "edit own book page" permission has been added for consistency with other node modules

Upload Module Permissions

Upload permissions have been split into two distinct permissions:

  1. Permission to upload files
  2. Permission to view/download files

Review your role permissions after upgrading to ensure proper access control.

Upgrade Recommendations

This is a significant update with major improvements to the theme system, PostgreSQL compatibility, and performance enhancements. The upgrade is recommended for all Drupal 4.4.x users.

Priority: High

Preparation Steps:

  1. Back up your database and all files before upgrading
  2. Review your custom themes and prepare to update them for the new theme system
  3. If using PostgreSQL, pay special attention to the database-related changes
  4. Plan for potential downtime during the upgrade process

Post-Upgrade Tasks:

  1. Review and update permission settings, especially for the upload module
  2. Check your theme settings and make necessary adjustments
  3. Test all custom modules for compatibility
  4. Verify that book module functionality works as expected
  5. Test user registration forms if you've customized them

Special Notes:

  • PHP5 users should be aware that while compatibility has improved, full PHP5 support is not yet available
  • PostgreSQL users will benefit significantly from this release with many critical fixes

Bug Fixes

Comment System Fixes

  • Fixed broken displaying of avatars
  • Fixed collapsed comment mode functionality
  • Fixed comment previewing that was resulting in a double page
  • Fixed comment subject field not being enabled by default
  • Fixed comment moderation issues

PostgreSQL Compatibility Fixes

  • Fixed menu problems with PostgreSQL
  • Fixed Archive module failures with PostgreSQL
  • Fixed Book module compatibility with PostgreSQL
  • Fixed taxonomy module issues with PostgreSQL
  • Fixed aggregator item table creation in PostgreSQL
  • Fixed poll display issues with PostgreSQL
  • Fixed blog module SQL errors with PostgreSQL

Node Access and Permissions

  • Fixed bug where editing a book page did not update the author
  • Fixed incorrect permission checks in upload module
  • Added missing node access controls for RSS feeds
  • Fixed shadow copies in book module

URL and Path Issues

  • Fixed URL aliases getting lost when deleting revisions
  • Fixed valid_url() to properly handle URLs with encoded spaces
  • Fixed broken URLs in various places
  • Fixed request_uri() to work properly on IIS servers

User Management

  • Fixed user role settings corruption after requesting new password
  • Fixed 'my account' information not being saved properly
  • Fixed issues with user profile data storage and retrieval
  • Fixed problems when creating new users

Other Important Fixes

  • Fixed duplicate locale strings in database when importing multiple PO files
  • Fixed filter cache wiping logic
  • Fixed menu caching issues
  • Fixed teaser generation to not overwrite user/module-supplied teaser data
  • Fixed search functionality to properly handle special characters
  • Fixed XHTML compliance issues in forms and output

New Features

Theme System Overhaul

The theme system has been completely revamped with improved template handling and better support for stylesheets. This provides more flexibility and better organization of theme assets.

Customizable Registration Forms

The ability to add fields to the registration form has been reintroduced, allowing site administrators to collect additional information during user registration.

Improved Upload Module Permissions

Upload permissions have been split into two distinct permissions: one for uploading files and another for viewing/downloading files. This provides more granular control over file access.

Logo Upload Feature

Administrators can now upload a site logo through the admin interface rather than manually placing files in the filesystem.

Book Outline Feature

Non-book pages now have an outline tab on their node page (with appropriate permissions), allowing nodes to be added to a book's hierarchy more easily.

Tabbed User Account Pages

User account pages (login, register, request new password) have been tabified for improved usability and navigation.

User Tracking Feature

The 'recent posts' feature on user pages has been reorganized and tab-ified as 'track' for better usability.

Security Updates

Upload Module Security

Fixed bad permissions in upload.module:

  • Admin upload functionality now only shows up for users with 'access administration section' permissions
  • Users without 'upload files' permission cannot see the attachments form and cannot attach files even when sending their own HTTP requests
  • If a user can edit a node but not 'upload files', then the attachments are left untouched and cannot be changed

Node Access Controls

  • Added missing node access controls for RSS feeds
  • Improved node permission checks in book module
  • Fixed node access checks in SQL queries

Form Security

  • Fixed form validation issues that could allow submitting forms with invalid data
  • Improved validation of user roles during user creation and editing

Performance Improvements

Forum Performance Boost

Comment statistics are now cached in a new SQL table, significantly improving performance of the forum block and forum pages. These pages are approximately 3 times faster now!

Variable Table Caching

The variable table is now cached, improving performance by approximately 20% when serving cached pages.

Menu Caching

Menu caching has been reintroduced, providing better performance for page rendering by reducing the need to rebuild menus on every page load.

Smarter Filter Cache Management

The filter cache wiping logic has been improved to be more selective about when caches need to be cleared, reducing unnecessary cache rebuilds.

Database Query Optimizations

Several database queries have been optimized throughout the system:

  • Removed unnecessary queries in the user module
  • Improved SQL queries for better compatibility and performance
  • Fixed inefficient queries in various modules

Impact Summary

Drupal 4.5.0 represents a substantial evolution of the platform with significant improvements across multiple areas. The theme system overhaul provides developers with more flexibility and better organization, while PostgreSQL users will find dramatically improved compatibility. Performance enhancements, particularly the 3x speed boost for forum pages, make this a compelling upgrade for busy sites.

The security improvements in permission handling, especially in the upload and book modules, provide better protection against unauthorized access. Administrators will appreciate the new ability to upload logos through the interface and customize registration forms to collect needed information from new users.

For developers, the partial PHP5 compatibility improvements are a step forward, though full support is still forthcoming. The reintroduction of menu caching and other performance optimizations provide a more responsive platform for building sites.

End users will notice more consistent interfaces, better navigation through tabbed interfaces, and faster page loads. Content creators benefit from improved tools like the enhanced book outline feature and better avatar management.

While the upgrade requires careful attention to theme changes and permission settings, the substantial improvements in functionality, security, and performance make this a highly recommended update for all Drupal 4.4.x sites.

Statistics:

File Changed172
Line Additions10,070
Line Deletions5,580
Line Changes15,650
Total Commits250

User Affected:

  • Can now upload a site logo through the admin interface instead of manually placing files
  • Benefit from improved permission management with more granular control over upload permissions
  • Can customize user registration forms by adding fields
  • Will need to review theme settings after upgrading due to theme system changes

Contributors:

dbuytaert