Downloads
Release notes
Maintenance release of the Drupal 7 series. Includes a variety of improvements and bug fixes (no major, non-backwards-compatible new functionality).
No security fixes are included in this release.
Two change records are associated with the 7.51 release:
- New allow_css_double_underscores variable to allow for double underscores in CSS identifiers
- system_region_list() now takes an (optional) new third parameter
Except for documentation additions, no changes have been made to the .htaccess, web.config, robots.txt, and default settings.php files in this release, so upgrading custom versions of those files is not necessary.
PHP 7 support:
Just a reminder that as of Drupal 7.50, there are no known PHP 7 issues (see #2656548: Fully support PHP 7.0 in Drupal 7). PHP 7 is officially supported by Drupal 7 and recommended for use where possible.
Known issues:
This release causes drag-and-drop functionality in Drupal to stop working for certain Chrome, Internet Explorer 11 and Edge users on sites which updated to a jQuery version between 1.7 and 1.11.0 (for example as obtained via the jQuery Update module). See the issue for more details. To solve this problem, update to Drupal 7.53. (Switching to a different jQuery version will also fix the problem.)
Major changes since 7.50:
- The Update module now also checks for updates to a disabled theme that is used as an admin theme.
- Exceptions thrown in dblog_watchdog() are now caught and ignored.
- Clarified the warning that appears when modules are missing or have moved.
- Log messages are now XSS filtered on display.
- Draggable tables now work on touch screen devices.
- Added a setting for allowing double underscores in CSS identifiers (https://www.drupal.org/node/2810369).
- If a user navigates away from a page while an Ajax request is running they will no longer get an error message saying "An Ajax HTTP request terminated abnormally".
- The system_region_list() API function now takes an optional third parameter which allows region name translations to be skipped when they are not needed (API addition: https://www.drupal.org/node/2810365).
All changes since 7.50:
- #2497259 by David_Rothstein: Followup for system_region_list() unnecessarily translates region names
- #2762241 by David_Rothstein, wylbur: Missing default.profile from the file system
- #2808789 by hanoii, nod_, heddn, geerlingguy, lokapujya, David_Rothstein, mangy.fox, xurizaemon, timfernihough, jibran, effulgentsia, j0rd, joelpittet, temkin, slashrsm, maxi Todorov, leewillis77, droplet, showrx, orbiteleven, opdavies, rooby, yechuah, shabana.navas, nikunjkotecha, ehj-52n, jhedstrom, sah62, edutrul, rfay, seutje, drupalshrek: Drupal alerts "An AJAX HTTP request terminated abnormally" during normal site operation, confusing site visitors/editors
- #2379947 by ndobromirov, othermachines, hgoto, David_Rothstein: Prevent maximum execution time from being exceeded for large .po files in _locale_import_po()
- #1443342 by joseph.olstad, mikeytown2, LauraRocks, xjm, stefan.r, joelpittet, brianV, effulgentsia, Fabianx, Mac_Weber: Inline file_uri_scheme() in file_stream_wrapper_uri_normalize() and other file.inc functions
- #2009584 by hgoto, jtwalters, rteijeiro, ry5n, emattias, Fabianx: Allow double underscores to pass through drupal_clean_css_identifier as per new CSS standards
- #2720853 by joseph.olstad, donquixote, Fabianx, quicksketch: D7 Improve theme registry build performance by 85%
- #2459339 by hgoto, dagmar, klausi, kporras07, David_Rothstein, Fabianx: Log messages should be XSS filtered on display
- #1261002 by LewisNyman, Pere Orga, nod_, Trey, quicksketch, jessebeach, mglaman, blueshadow2911, sabsbrain, Fabianx: Draggable tables do not work on touch screen devices
- #2672088 by joelpittet, stefan.r, daffie, catch, mikeytown2, Fabianx, dawehner: Add static cache to DatabaseConnection ::escapeDatabase(), ::escapeTable(), ::escapeField() and ::escapeAlias()
- #2497259 by aerozeppelin, catch, tim.plunkett, alexpott: system_region_list() unnecessarily translates region names
- #2774725 by sandip27: Wrong hook is invoked (hook_aggregator_process() rather than hook_aggregator_process_info())
- #2794155 by kiamlaluno: user_save() documentation has a note for Drupal 8 that is not anymore valid
- #2794547: Remove xjm from MAINTAINERS.txt in D7
- #2201615 by hgoto: locale_translate_edit_form_submit() should check is_string(), instead of !empty() for string
- #2764221 by stefan.r, vensires, Fabianx, fietserwin: utf8mb4IsSupported() shouldn't guess that InnoDB is the default engine
- #2776439 by aerozeppelin, Novitsh, makbul_khan8: [D7] system_block_ip_action() adding empty IP record in blocked_ips table
- #1880224 by joelpittet, thedavidmeister, rooby, validoll, monta: Notice: Undefined index: value in theme_status_report() (line 2577 of modules/system/system.admin.inc)
- #2784561 by stefan.r, GoZ, Fabianx: [D7] IpAddressBlockingTest is failing on DrupalCI for PHP 7
- #2468537 by hgoto, cilefen: The update module does not check updates for the admin theme if it is disabled
- #2051453 by hgoto, joyceg, prabhurajn654, Fabianx: syntax error in update_manager_update_form()
- #2764131: Missing modules warning instructions don't make sense for certain situations (such as for old Drupal 6 module entries in the system table)
- #1784548 by btopro, Fabianx, Berdir, rbayliss, xaa: DB Log is missing watchdog table after enabling - Need to catch and ignore exceptions thrown in dblog_watchdog()
- #2738933 by id.medion, chishah92: Remove unused argument in the function call field_cache_clear()
- #2766537 by bhavikshah9, mforbes: Missing asterisk in one line of default.settings.php documentation block