Acquia Drupal Changelog

What's new in Acquia Drupal 7.50.52-6330

Jul 12, 2016
  • Added a new "administer fields" permission for trusted users, which is required in addition to other permissions to use the field UI (https://www.drupal.org/node/2483307).
  • Added clickjacking protection to Drupal core by setting the X-Frame-Options header to SAMEORIGIN by default (https://www.drupal.org/node/2735873).
  • Added support for full UTF-8 (emojis, Asian symbols, mathematical symbols) on MySQL and other database drivers when the site and database are configured to allow it (https://www.drupal.org/node/2761183).
  • Improved performance by avoiding a re-scan of directories when a file is missing; instead, trigger a PHP warning (minor API change: https://www.drupal.org/node/2581445).
  • Made it possible to use any PHP callable in Ajax form callbacks, form API form-building functions, and form API wrapper callbacks (API addition: https://www.drupal.org/node/2761169).
  • Fixed that following a password reset link while logged in leaves users unable to change their password (minor user interface change: https://www.drupal.org/node/2759023).
  • Implemented various fixes for automated test failures on PHP 5.4+ and PHP 7. Drupal core automated tests now pass in these environments.
  • Improved support for PHP 7 by fixing various problems.
  • Fixed various bugs with PHP 5.5+ imagerotate(), including when incorrect color indices are passed in.
  • Fixed a regression introduced in Drupal 7.43 that allowed files uploaded by anonymous users to be lost after form validation errors, and that also caused regressions with certain contributed modules.
  • Fixed a regression introduced in Drupal 7.36 which caused the default value of hidden textarea fields to be ignored.
  • Fixed robots.txt to allow search engines to access CSS, JavaScript and image files.
  • Changed wording on the Update Manager settings page to clarify that the option to check for disabled module updates also applies to uninstalled modules (administrative-facing translatable string change).
  • Changed the help text when editing menu links and configuring URL redirect actions so that it does not reference "Drupal" or the drupal.org website (administrative-facing translatable string change).
  • Fixed the locale safety check that is used to ensure that translations are safe to allow for tokens in the href/src attributes of translated strings.
  • Fixed that URL generation only works on port 80 when using domain based language negotation.
  • Made method="get" forms work inside the administrative overlay. The fix adds a new hidden field to these forms when they appear inside the overlay (minor data structure change).
  • Increased maxlength of menu link title input fields in the node form and menu link form from 128 to 255 characters.
  • Removed meaningless post-check=0 and pre-check=0 cache control headers from Drupal HTTP responses.
  • Added a .editorconfig file to auto-configure editors that support it.
  • Added --directory option to run-tests.sh for easier test discovery of all tests within a project.
  • Made run-tests.sh exit with a failure code when there are test fails or problems running the script.
  • Fixed that cookies from previous tests are still present when a new test starts in DrupalWebTestCase.
  • Improved performance of queries on the {authmap} database table.
  • Fixed handling of missing files and functions inside the registry.
  • Fixed Ajax handling for tableselect form elements that use checkboxes.
  • Fixed a bug which caused ip_address() to return nothing when the client IP address and proxy IP address are the same.
  • Added a new option to format_xml_elements() to allow for already encoded values.
  • Changed the {history} table's node ID field to be an unsigned integer, to match the same field in the {node} table and to prevent errors with very large node IDs.
  • Added an explicit page callback to the "admin/people/create" menu item in the User module (minor data structure change). Previously this automatically inherited the page callback from the parent "admin/people" menu item, which broke contributed modules that override the "admin/people" page.
  • Numerous small bug fixes.
  • Numerous API documentation improvements.
  • Additional automated test coverage.

New in Acquia Drupal 7.44.51-6326 (Jun 17, 2016)

  • Fixed security issues (privilege escalation). See SA-CORE-2016-002.

New in Acquia Drupal 7.43.49-6309 (May 7, 2016)

  • Fixed security issues (multiple vulnerabilities).

New in Acquia Drupal 7.41.46-6284 (Oct 24, 2015)

  • Fixed security issues (open redirect). See SA-CORE-2015-004.
  • Made Drupal's code for parsing .info files run much faster and use much less memory.
  • Prevented drupal_http_request() from returning an error when it receives a 201 through 206 HTTP status code.
  • Added support for autoloading traits via the registry on sites running PHP 5.4 or higher.
  • Allowed the user-picture.tpl.php theme template to have HTML classes besides the default "user-picture" class printed in it (markup change).
  • Fixed the URL text filter to convert e-mail addresses with plus signs into mailto: links.
  • Added alternate text to file icons displayed by the File module, to improve accessibility (string change, and minor API addition to theme_file_icon()).
  • Changed one-time login link failure messages to be displayed as errors or warnings as appropriate, rather than as regular status messages (minor UI change and data structure change).
  • Changed the default settings.php configuration to exclude private files from the "404_fast_paths" behavior.
  • Changed the page that displays filter tips for a particular text format, for example filter/tips/full_html, to return "page not found" or "access denied" if the format does not exist or the user does not have access to it. This change adds a new menu item to the Filter module's hook_menu() entry (minor data structure change).
  • Added a new hook, hook_block_cid_parts_alter(), to allow modules to alter the cache keys used for caching a particular block.
  • Made drupal_set_message() display and return messages when "0" is passed in as the message to set.
  • Fixed non-functional "Files displayed by default" setting on file fields.
  • The "worker callback" provided in hook_cron_queue_info() and the "finished" callback specified during batch processing can now be any PHP callable instead of just functions.
  • Prevented drupal_set_time_limit() from decreasing the time limit in the case where the PHP maximum execution time is already unlimited.
  • Changed the default thousand marker for numeric fields from a space ("1 000") to nothing ("1000") (minor UI change: https://www.drupal.org/node/1388376).
  • Prevented malformed theme .info files (without a "name" key) from causing exceptions during menu rebuilds. If an .info file without a "name" key is found in a module or theme directory, Drupal will now use the module or theme's machine name as the display name instead.
  • Made the format column in the {date_format_locale} database table case-sensitive, to match the equivalent column in the {date_formats} table.
  • Fixed a bug in the Statistics module that caused JavaScript files attached to a node while it is being viewed to be omitted from the page.
  • Added an optional 'project:' prefix that can be added to dependencies in a module's .info file to indicate which project the dependency resides in (API addition: https://www.drupal.org/node/2299747).
  • Fixed various bugs that occurred after hooks were invoked early in the Drupal bootstrap and that caused module_implements() and drupal_alter() to cache an incomplete set of hook implementations for later use.
  • Set the X-Content-Type-Options header to "nosniff" when possible, to prevent certain web browsers from picking an unsafe MIME type.
  • Prevented the database API from executing multiple queries at once on MySQL, if the site's PHP version is new enough to do so. This is a secondary defense against SQL injection (API change: https://www.drupal.org/node/2463973).
  • Fixed a bug in the Drupal 6 to Drupal 7 upgrade path which caused the upgrade to fail when there were multiple file records pointing to the same file.
  • Numerous small bug fixes.
  • Numerous API documentation improvements.
  • Additional automated test coverage.

New in Acquia Drupal 7.39.45-6271 (Aug 20, 2015)

  • Fixed security issues (multiple vulnerabilities).

New in Acquia Drupal 7.38.44-6261 (Jun 18, 2015)

  • Fixed security issues (multiple vulnerabilities). See SA-CORE-2015-002.

New in Acquia Drupal 7.37.43-6248 (May 13, 2015)

  • Fixed a regression in Drupal 7.36 which caused certain kinds of content types to become disabled if they were defined by a no-longer-enabled module.
  • Removed a confusing description regarding automatic time zone detection from the user account form (minor UI and data structure change).
  • Allowed custom HTML tags with a dash in the name to pass through filter_xss() when specified in the list of allowed tags.
  • Allowed hook_field_schema() implementations to specify indexes for fields based on a fixed-length column prefix (rather than the entire column), as was already allowed in hook_schema() implementations.
  • Fixed PDO exceptions on PostgreSQL when accessing invalid entity URLs.
  • Added a sites/all/libraries folder to the codebase, with instructions for using it.
  • Added a description to the "Administer text formats and filters" permission on the Permissions page (string change).
  • Numerous small bug fixes.
  • Numerous API documentation improvements.
  • Additional automated test coverage.

New in Acquia Drupal 7.35.42-6236 (Mar 20, 2015)

  • Fixed security issues (multiple vulnerabilities).

New in Acquia Drupal 7.34.40-6204 (Dec 11, 2014)

  • Fixed security issues (multiple vulnerabilities).

New in Acquia Drupal 7.33.39-6187 (Dec 11, 2014)

  • Began storing the file modification time of each module and theme in the {system} database table so that contributed modules can use it to identify recently changed modules and themes (minor data structure change to the return value of system_get_info() and other related functions).
  • Added a "Did you mean?" feature to the run-tests.sh script for running automated tests from the command line, to help developers who are attempting to run a particular test class or group.
  • Changed the date format used in various HTTP headers output by Drupal core from RFC 1123 format to RFC 7231 format.
  • Added a "block_cache_bypass_node_grants" variable to allow sites which have node access modules enabled to use the block cache if desired (API addition).
  • Made image derivative generation HTTP requests return a 404 error (rather than a 500 error) when the source image does not exist.
  • Fixed a bug which caused user pictures to be removed from the user object after saving, and resulted in data loss if the user account was subsequently re-saved.
  • Fixed a bug in which field_has_data() did not return TRUE for fields that only had data in older entity revisions, leading to loss of the field's data when the field configuration was edited.
  • Fixed a bug which caused the Ajax progress throbber to appear misaligned in many situatons (minor styling change).
  • Prevented the Bartik theme from lower-casing the "Permalink" link on comments, for improved multilingual support (minor UI change).
  • Added a "preferred_menu_links" tag to the database query that is used by menu_link_get_preferred() to find the preferred menu link for a given path, to make it easier to alter.
  • Increased the maximum allowed length of block titles to 255 characters (database schema change to the {block} table).
  • Removed the Field module's field_modules_uninstalled() function, since it did not do anything when it was invoked.
  • Added a "theme_hook_original" variable to templates and theme functions and an optional sitewide theme debug mode, to provide contextual information in the page's HTML to theme developers. The theme debug mode is based on the one used with Twig in Drupal 8 and can be accessed by setting the "theme_debug" variable to TRUE (API addition).
  • Added an entity_view_mode_prepare() API function to allow entity-defining modules to properly invoke hook_entity_view_mode_alter(), and used it throughout Drupal core to fix bugs with the invocation of that hook (API change: https://www.drupal.org/node/2369141).
  • Security improvement: Made the database API's orderBy() method sanitize the sort direction ("ASC" or "DESC") for queries built with db_select(), so that calling code does not have to.
  • Changed the RDF module to consistently output RDF metadata for nodes and comments near where the node is rendered in the HTML (minor markup and data structure change).
  • Added an HTML class to RDFa metatags throughout Drupal to prevent them from accidentally affecting the site appearance (minor markup change).
  • Fixed a bug in the Unicode requirements check which prevented installing Drupal on PHP 5.6.
  • Fixed a bug which caused drupal_get_bootstrap_phase() to abort the bootstrap when called early in the page request.
  • Renamed the "Search result" view mode to "Search result highlighting input" to better reflect how it is used (UI change).
  • Improved database queries generated by EntityFieldQuery in the case where delta or language condition groups are used, to reduce the number of INNER JOINs (this is a minor data structure change affecting code which implements hook_query_alter() on these queries).
  • Removed special-case behavior for file uploads which allowed user #1 to bypass maximum file size and user quota limits.
  • Numerous small bug fixes.
  • Numerous API documentation improvements.
  • Additional automated test coverage.

New in Acquia Drupal 7.31.36-6159 (Aug 8, 2014)

  • Fixed security issues (denial of service). See SA-CORE-2014-004.

New in Acquia Drupal 7.30.35-6147 (Jul 30, 2014)

  • Fixed a regression introduced in Drupal 7.29 that caused files or images attached to taxonomy terms to be deleted when the taxonomy term was edited and resaved (and other related bugs with contributed and custom modules).
  • Added a warning on the permissions page to recommend restricting access to the "View site reports" permission to trusted administrators. See DRUPAL-PSA-2014-002.
  • Numerous API documentation improvements.
  • Additional automated test coverage.

New in Acquia Drupal 7.28.33-6123 (May 12, 2014)

  • Fixed a regression introduced in Drupal 7.27 that caused JavaScript to break on older browsers (such as Internet Explorer 8 and earlier) when Ajax was used.
  • Increased the timeout used by the Update Manager module when it fetches data from drupal.org (from 5 seconds to 30 seconds), to work around a problem which causes incomplete information about security updates to be presented to site administrators. This fix may lead to a performance slowdown on the Update Manager administration pages, when installing Drupal distributions, and (for sites that use the automated cron feature) on occasional page loads by site visitors.
  • Fixed the behavior of the token system's "[node:summary]" token when the body field does not have a manual summary.
  • Changed the behavior of db_query_temporary() so that it works on SELECT queries even when they have leading comments/whitespace. A side effect of this fix is that db_query_temporary() will now fail with an error if it is ever used on non-SELECT queries.
  • Added a "node_admin_filter" tag to the database query used to build the list of nodes on the content administration page, to make it easier to alter.
  • Made the cron queue system log any exceptions that are thrown while an item in the queue is being processed, rather than stopping the entire PHP request.
  • Improved screen reader support by adding an aria-live HTML attribute to file upload fields when there is an error uploading the file (minor markup change).
  • Made the pager on the Tracker module listing pages show the same number of items as other pagers throughout Drupal core (minor UI change).
  • Fixed a bug which caused caches not to be properly cleared when a file entity was saved or deleted.
  • Added several missing countries to the default list returned by country_get_list() (string change).
  • Replaced the term "weight" with "influence" in the content ranking settings for search, and added help text for administrators (string change).
  • Fixed untranslatable text strings in the administrative interface for the "Crop" effect provided by the Image module (minor string change).
  • Fixed a bug in the Taxonomy module update function introduced in Drupal 7.26 that caused memory and CPU problems on sites with very large numbers of unpublished nodes.
  • Numerous small bug fixes.
  • Numerous API documentation improvements.
  • Additional automated test coverage.

New in Acquia Drupal 7.26.30-6074 (Feb 18, 2014)

  • Fixed security issues (multiple vulnerabilities). See SA-CORE-2014-001.

New in Acquia Drupal 7.25.27-6031 (Jan 7, 2014)

  • Fixed a bug in node_save() which prevented the saved node from being updated in hook_node_insert() and other similar hooks.
  • Added a meta tag to install.php to prevent it from being indexed by search engines even when Drupal is installed in a subfolder (minor markup change).
  • Fixed a bug in the database API that caused frequent deadlock errors when running merge queries on some servers.
  • Performance improvement: Prevented block rehashing from writing blocks to the database on every cache clear and cron run when the blocks have not changed. This fix results in an extra 'saved' key which is added and set to TRUE for each block returned by _block_rehash() that actually is saved to the database (data structure change).
  • Added an optional 'skip on cron' parameter to hook_cron_queue_info() to allow queues to avoid being automatically processed on cron runs (API addition).
  • Fixed a bug which caused hook_block_view_MODULE_DELTA_alter() to never be invoked if the block delta had a hyphen in it. To implement the hook when the block delta has a hyphen, modules should now replace hyphens with underscores when constructing the function name for the hook implementation.
  • Fixed a bug which caused cached pages to sometimes be sent to the browser with incorrect compression. The fix adds a new 'page_compressed' key to the $cache->data array returned by drupal_page_get_cache() (minor data structure change).
  • Fixed broken tests on PHP 5.5.
  • Made the File and Image modules more robust when saving entities that have deleted files attached. The code in file_field_presave() will now remove the record of the deleted file from the entity before saving (minor data structure change).
  • Standardized menu callback functions throughout Drupal core to return MENU_NOT_FOUND and MENU_ACCESS_DENIED rather than printing their own "page not found" or "access denied" pages (minor API change in the return value of these functions under some circumstances).
  • Fixed a bug in which caches were not properly cleared when a node was deleted via the administrative interface.
  • Changed the Bartik theme to render content contained in , and similar tags in a larger font size, so it is easier to read.
  • Fixed a bug in the Search module that caused exceptions to be thrown during searches if the server was not configured to represent decimal points as a period.
  • Fixed a regression in the Image module that made image_style_url() not work when a relative path (rather than a complete file URI) was passed to it.
  • Added an optional feature to the Statistics module to allow node views to be tracked by Ajax requests rather than during the server-side generation of the page. This allows the node counter to work on sites that use external page caches (string change and new administrative option: https://drupal.org/node/2164069).
  • Added a link to the drupal.org documentation page for cron to the Cron settings page (string change).
  • Added a 'drupal_anonymous_user_object' variable to allow the anonymous user object returned by drupal_anonymous_user() to be overridden with a classed object (API addition).
  • Changed the database API to allow inserts based on a SELECT * query to work correctly.
  • Changed the database schema of the {file_managed} table to allow Drupal to manage files larger than 4 GB.
  • Changed the File module's hook_field_load() implementation to prevent file entity properties which have the same name as file or image field properties from overwriting the field properties (minor API change).
  • Numerous small bug fixes.
  • Numerous API documentation improvements.
  • Additional automated test coverage.

New in Acquia Drupal 7.24.26-6017 (Nov 22, 2013)

  • Fixed security issues (multiple vulnerabilities), see SA-CORE-2013-003.

New in Acquia Drupal 7.22.23-5987 (May 20, 2013)

  • Allowed the drupal_http_request() function to be overridden so that additional HTTP request capabilities can be added by contributed modules.
  • Changed the Simpletest module to allow PSR-0 test classes to be used in Drupal 7.
  • Removed an unnecessary "Content-Disposition" header from private file downloads; it prevented many private files from being viewed inline in a web browser.
  • Changed various field API functions to allow them to optionally act on a single field within an entity (API addition: http://drupal.org/node/1825844).
  • Fixed a bug which prevented Drupal's file transfer functionality from working on some PHP 5.4 systems.
  • Fixed incorrect log message when theme() is called for a theme hook that does not exist (minor string change).
  • Fixed Drupal's token-replacement system to allow spaces in the token value.
  • Changed the default behavior after a user creates a node they do not have access to view. The user will now be redirected to the front page rather than an access denied page.
  • Fixed a bug which prevented empty HTTP headers (such as "0") from being set. (Minor behavior change: Callers of drupal_add_http_header() must now set FALSE explicitly to prevent a header from being sent at all; this was already indicated in the function's documentation.)
  • Fixed OpenID errors when more than one module implements hook_openid(). The behavior is now changed so that if more than one module tries to set the same parameter, the last module's change takes effect.
  • Fixed a serious documentation bug: The $name variable in the taxonomy-term.tpl.php theme template was incorrectly documented as being sanitized when in fact it is not.
  • Fixed a bug which prevented Drupal 6 to Drupal 7 upgrades on sites which had duplicate permission names in the User module's database tables.
  • Added an empty "datatype" attribute to taxonomy term and username links to make the RDFa markup upward compatible with RDFa 1.1 (minor markup addition).
  • Fixed a bug which caused the denial-of-service protection added in Drupal 7.20 to break certain valid image URLs that had an extra slash in them.
  • Fixed a bug with update queries in the SQLite database driver that prevented Drupal from being installed with SQLite on PHP 5.4.
  • Fixed enforced dependencies errors updating to recent versions of Drupal 7 on certain non-MySQL databases.
  • Refactored the Field module's caching behavior to obtain large improvements in memory usage for sites with many fields and instances (API addition: http://drupal.org/node/1915646).
  • Fixed entity argument not being passed to implementations of hook_file_download_access_alter(). The fix adds an additional context parameter that can be passed when calling drupal_alter() for any hook (API change: http://drupal.org/node/1882722).
  • Fixed broken support for translatable comment fields (API change: http://drupal.org/node/1874724).
  • Added an assertThemeOutput() method to Simpletest to allow tests to check that themed output matches an expected HTML string (API addition).
  • Added a link to "Install another module" after a module has been successfully downloaded via the Update Manager (UI change).
  • Added an optional "exclusive" flag to installation profile .info files which allows Drupal distributions to force a profile to be selected during installation (API addition).
  • Fixed a bug which caused the database API to not properly close database connections.
  • Added a link to the URL for running cron from outside the site to the Cron settings page (UI change).
  • Fixed a bug which prevented image styles from being reverted on PHP 5.4.
  • Made the default .htaccess rules protocol sensitive to improve security for sites which use HTTPS and redirect between "www" and non-"www" versions of the page.
  • Numerous small bug fixes.
  • Numerous API documentation improvements.
  • Additional automated test coverage.