Drupal Release: 7.8
Tag Name: 7.8
Release Date: 8/31/2011
DrupalHighly 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 7.8 is a maintenance release that includes numerous bug fixes, documentation improvements, and minor enhancements. This update focuses on improving user experience, fixing critical issues with field handling, enhancing RTL support, and addressing various PHP notices and warnings. While not introducing major new features, it provides important stability improvements and fixes for issues that could affect site functionality, particularly for multilingual sites and those using the Poll module.
Highlight of the Release
- Fixed critical regression where node bodies would display as empty after upgrading from Drupal 6.x if nodes had a language
- Added RTL styling support for Seven theme and Overlay module
- Introduction of hook_field_widget_form_alter() for better field widget customization
- Fixed issues with Poll module where removing choices didn't work and adding answers during edit wasn't saved
- Improved module discovery for new users by addressing UI confusion
- Enhanced database transaction handling for more flexibility
Migration Guide
No specific migration steps are required for this maintenance release. However, site owners should be aware of the following when upgrading:
-
If you're upgrading from Drupal 6.x to 7.8 and have multilingual content, pay special attention to ensure node bodies display correctly after the upgrade.
-
If you're using the Poll module, test your polls after upgrading to ensure choices and answers are working correctly.
-
If you have custom code that relies on transaction handling in the database API, review your code against the improved transaction system.
-
If you have custom themes that extend Seven or use Overlay, you may want to review the new RTL styling to ensure compatibility.
Upgrade Recommendations
This update is recommended for all Drupal 7 sites, particularly those with:
- Multilingual content (fixes critical regression with node bodies)
- Sites using the Poll module
- Sites with RTL language support
- Sites experiencing PHP notices or warnings addressed in this release
The update primarily contains bug fixes and minor enhancements with no known breaking changes. As always, test the update on a staging environment before applying to production sites.
For most sites, the upgrade process should be straightforward:
- Back up your database and files
- Put your site in maintenance mode
- Replace your existing Drupal core files with the new 7.8 release
- Run update.php
- Take your site out of maintenance mode
Bug Fixes
Critical Fixes
- Fixed empty node bodies after upgrade: Resolved a critical regression where node bodies would display as empty after upgrading from Drupal 6.x if nodes had a language.
- Fixed Poll module issues: Addressed problems where removing poll choices didn't work and adding answers during edit wasn't saved.
- Fixed Update Manager errors: Resolved 'Installation failed' errors when installing modules from Update Manager with Overlay enabled.
UI and Usability Fixes
- Improved module discovery: Fixed issue where new users didn't know to click on 'Modules' to extend their site.
- Restored blue 'save' button: Brought back the blue save button for better visual indication of primary actions.
- Added RTL styling: Added right-to-left language support for Seven theme and Overlay module.
Database and Performance Fixes
- Fixed subquery arguments: Resolved issues with subqueries using wrong arguments.
- Improved lock handling: Fixed
_lock_id()to avoid potential lock stalls during cache clears. - Fixed PostgreSQL queries: Resolved issues with LIKE queries failing on PostgreSQL with standard_conforming_strings() turned on.
Other Fixes
- Fixed taxonomy tag handling: Resolved issue where
taxonomy_implode_tags()modified term objects instead of cloning them. - Fixed file download responses: Changed
file_download()to return 403 instead of 404 for proper access denied handling. - Fixed update failures: Resolved several issues with update functions that could cause fatal errors.
- Fixed file upload handling: Improved handling of file uploads when safe_mode or open_basedir restrictions are in place.
- Fixed PHP notices: Addressed numerous PHP notices and warnings throughout the codebase.
New Features
New Hook for Field Widget Customization
A new hook_field_widget_form_alter() has been introduced, allowing modules to alter field widget forms without overriding the entire widget. This provides more flexibility for developers to customize field widgets.
Enhanced Database Transaction Handling
The database transaction system has been improved to be more flexible and useful, giving developers better control over database operations.
HTML5 Tag Support in Admin Filters
filter_xss_admin() now accepts HTML5 tags, allowing administrators to use modern HTML markup in filtered content.
Security Updates
No specific security fixes were mentioned in the release notes. However, as with any Drupal update, this release likely includes minor security hardening measures as part of the general bug fixes and improvements.
Performance Improvements
Schema Caching Improvements
Introduction of DrupalCacheArray for improved schema caching, which should result in better performance for database operations.
Path Cache Optimization
The cache_path bin is now properly cleaned up, preventing unnecessary growth of the cache tables.
Block Rendering Optimization
Fixed an issue where blocks set to display on no pages were still being rendered, improving performance by avoiding unnecessary processing.
Impact Summary
Drupal 7.8 is a maintenance release that brings important stability improvements and bug fixes rather than major new features. The most significant impact is for multilingual sites, which benefit from fixing a critical regression where node bodies would display as empty after upgrading from Drupal 6.x if nodes had a language.
For developers, the introduction of hook_field_widget_form_alter() and improvements to database transaction handling provide new capabilities for customization and better control over database operations. The addition of DrupalCacheArray for schema caching should also improve performance.
Site administrators will appreciate fixes to the Update Manager, Poll module, and improved module discovery for new users. The restoration of the blue 'save' button improves visual clarity for primary actions.
Users of right-to-left languages will benefit from the addition of RTL styling support in the Seven theme and Overlay module, making the admin interface more accessible and usable.
Overall, while not introducing major changes to site functionality, this release addresses numerous pain points and improves the stability and usability of Drupal 7, making it a worthwhile update for all Drupal 7 sites.
Statistics:
User Affected:
- Improved module management with clearer UI for new users to find the Modules section
- Fixed issues with Update Manager when using Overlay module
- Resolved problems with Poll module where answers weren't being saved properly
- Better handling of file uploads when safe_mode or open_basedir restrictions are in place
