CHANGELOG.txt 86.7 KB
Newer Older
David_Rothstein's avatar
David_Rothstein committed
1 2 3
Drupal 7.29, 2014-07-16
----------------------
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2014-003.
4

David_Rothstein's avatar
David_Rothstein committed
5
Drupal 7.28, 2014-05-08
David_Rothstein's avatar
David_Rothstein committed
6
-----------------------
7 8 9
- 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.
10 11 12 13 14 15 16
- 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.
17 18
- Fixed the behavior of the token system's "[node:summary]" token when the body
  field does not have a manual summary.
19 20 21 22
- 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.
23 24
- 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.
25 26
- 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.
27 28 29
- 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).
30 31
- Made the pager on the Tracker module listing pages show the same number of
  items as other pagers throughout Drupal core (minor UI change).
32 33
- Fixed a bug which caused caches not to be properly cleared when a file entity
  was saved or deleted.
34
- Added several missing countries to the default list returned by
35
  country_get_list() (string change).
36 37
- Replaced the term "weight" with "influence" in the content ranking settings
  for search, and added help text for administrators (string change).
38 39
- Fixed untranslatable text strings in the administrative interface for the
  "Crop" effect provided by the Image module (minor string change).
40 41
- 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
42
  unpublished nodes.
43 44 45
- Numerous small bug fixes.
- Numerous API documentation improvements.
- Additional automated test coverage.
David_Rothstein's avatar
David_Rothstein committed
46

David_Rothstein's avatar
David_Rothstein committed
47 48 49 50
Drupal 7.27, 2014-04-16
----------------------
- Fixed security issues (information disclosure). See SA-CORE-2014-002.

David_Rothstein's avatar
David_Rothstein committed
51 52 53 54
Drupal 7.26, 2014-01-15
----------------------
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2014-001.

David_Rothstein's avatar
David_Rothstein committed
55
Drupal 7.25, 2014-01-02
David_Rothstein's avatar
David_Rothstein committed
56
-----------------------
57 58
- Fixed a bug in node_save() which prevented the saved node from being updated
  in hook_node_insert() and other similar hooks.
59 60
- 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).
61 62
- Fixed a bug in the database API that caused frequent deadlock errors when
  running merge queries on some servers.
63
- Performance improvement: Prevented block rehashing from writing blocks to the
64 65 66 67
  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).
68 69
- 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).
70 71 72 73
- 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.
74 75 76 77
- 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).
78
- Fixed broken tests on PHP 5.5.
79 80 81 82
- 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).
83 84 85 86
- 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).
87 88
- Fixed a bug in which caches were not properly cleared when a node was deleted
  via the administrative interface.
89 90
- Changed the Bartik theme to render content contained in <pre>, <code> and
  similar tags in a larger font size, so it is easier to read.
91 92 93
- 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.
94 95
- 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.
96 97 98
- 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
99 100
  caches (string change and new administrative option:
  https://drupal.org/node/2164069).
101 102
- Added a link to the drupal.org documentation page for cron to the Cron
  settings page (string change).
103 104 105
- 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).
106 107
- Changed the database API to allow inserts based on a SELECT * query to work
  correctly.
108 109
- Changed the database schema of the {file_managed} table to allow Drupal to
  manage files larger than 4 GB.
110 111 112
- 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).
113 114 115
- Numerous small bug fixes.
- Numerous API documentation improvements.
- Additional automated test coverage.
David_Rothstein's avatar
David_Rothstein committed
116

David_Rothstein's avatar
David_Rothstein committed
117 118 119 120
Drupal 7.24, 2013-11-20
----------------------
- Fixed security issues (multiple vulnerabilities), see SA-CORE-2013-003.

David_Rothstein's avatar
David_Rothstein committed
121
Drupal 7.23, 2013-08-07
David_Rothstein's avatar
David_Rothstein committed
122
-----------------------
123 124
- Fixed a fatal error on PostgreSQL databases when updating the Taxonomy module
  from Drupal 6 to Drupal 7.
125
- Fixed the default ordering of CSS files for sites using right-to-left
126 127
  languages, to consistently place the right-to-left override file immediately
  after the CSS it is overriding (API change: https://drupal.org/node/2058463).
128 129
- Added a drupal_check_memory_limit() API function to allow the memory limit to
  be checked consistently (API addition).
130 131
- Changed the default web.config file for IIS servers to allow favicon.ico
  files which are present in the filesystem to be accessed.
132 133
- Fixed inconsistent support for the 'tel' protocol in Drupal's URL filtering
  functions.
134 135 136
- Performance improvement: Allowed all hooks to be included in the
  module_implements() cache, even those that are only invoked on HTTP POST
  requests.
137 138
- Made the database system replace truncate queries with delete queries when
  inside a transaction, to fix issues with PostgreSQL and other databases.
139
- Fixed a bug which caused nested contextual links to display improperly.
140 141
- Fixed a bug which prevented cached image derivatives from being flushed for
  private files and other non-default file schemes.
142 143
- Fixed drupal_render() to always return an empty string when there is no
  output, rather than sometimes returning NULL (minor API change).
144 145 146
- Added protection to cache_clear_all() to ensure that non-cache tables cannot
  be truncated (API addition: a new isValidBin() method has been added to the
  default database cache implementation).
147 148
- Changed the default .htaccess file to support HTTP authorization in CGI
  environments.
149 150 151
- Changed the password reset form to pre-fill the username when requested via a
  URL query parameter, and used this in the error message that appears after a
  failed login attempt (minor data structure and behavior change).
152
- Fixed broken support for foreign keys in the field API.
153
- Fixed "No active batch" error when a user cancels their own account.
154 155
- Added a description to the "access content overview" permission on the
  permissions page (string change).
156 157
- Added a drupal_array_diff_assoc_recursive() function to allow associative
  arrays to be compared recursively (API addition).
158
- Added human-readable labels to image styles, in addition to the existing
159
  machine-readable name (API change: https://drupal.org/node/2058503).
160 161 162
- Moved the drupal_get_hash_salt() function to bootstrap.inc and used it in
  additional places in the code, for added security in the case where there is
  no hash salt in settings.php.
163 164
- Fixed a regression in Drupal 7.22 that caused internal server errors for
  sites running on very old Apache 1.x web servers.
165 166 167
- Numerous small bug fixes.
- Numerous API documentation improvements.
- Additional automated test coverage.
David_Rothstein's avatar
David_Rothstein committed
168

David_Rothstein's avatar
David_Rothstein committed
169
Drupal 7.22, 2013-04-03
David_Rothstein's avatar
David_Rothstein committed
170
-----------------------
171 172
- Allowed the drupal_http_request() function to be overridden so that
  additional HTTP request capabilities can be added by contributed modules.
173 174
- Changed the Simpletest module to allow PSR-0 test classes to be used in
  Drupal 7.
175 176 177
- Removed an unnecessary "Content-Disposition" header from private file
  downloads; it prevented many private files from being viewed inline in a web
  browser.
178
- Changed various field API functions to allow them to optionally act on a
179
  single field within an entity (API addition: http://drupal.org/node/1825844).
180 181
- Fixed a bug which prevented Drupal's file transfer functionality from working
  on some PHP 5.4 systems.
182 183
- Fixed incorrect log message when theme() is called for a theme hook that does
  not exist (minor string change).
184
- Fixed Drupal's token-replacement system to allow spaces in the token value.
185 186 187
- 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.
188 189 190 191
- 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.)
192 193 194
- 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.
195 196 197
- 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.
198 199
- 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.
200 201
- 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).
202 203
- 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.
204 205
- Fixed a bug with update queries in the SQLite database driver that prevented
  Drupal from being installed with SQLite on PHP 5.4.
206 207
- Fixed enforced dependencies errors updating to recent versions of Drupal 7 on
  certain non-MySQL databases.
208
- Refactored the Field module's caching behavior to obtain large improvements
209
  in memory usage for sites with many fields and instances (API addition:
210
  http://drupal.org/node/1915646).
211 212 213 214
- 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).
215 216
- Fixed broken support for translatable comment fields (API change:
  http://drupal.org/node/1874724).
217 218
- Added an assertThemeOutput() method to Simpletest to allow tests to check
  that themed output matches an expected HTML string (API addition).
219 220
- Added a link to "Install another module" after a module has been successfully
  downloaded via the Update Manager (UI change).
221 222
- Added an optional "exclusive" flag to installation profile .info files which
  allows Drupal distributions to force a profile to be selected during
223
  installation (API addition: http://drupal.org/node/1961012).
224 225
- Fixed a bug which caused the database API to not properly close database
  connections.
226
- Added a link to the URL for running cron from outside the site to the Cron
227
  settings page (UI change).
228
- Fixed a bug which prevented image styles from being reverted on PHP 5.4.
229 230 231
- 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.
232 233 234
- Numerous small bug fixes.
- Numerous API documentation improvements.
- Additional automated test coverage.
235

236 237 238 239 240
Drupal 7.21, 2013-03-06
-----------------------
- Allowed sites using the 'image_allow_insecure_derivatives' variable to still
  have partial protection from the security issues fixed in Drupal 7.20.

David_Rothstein's avatar
David_Rothstein committed
241 242 243 244
Drupal 7.20, 2013-02-20
-----------------------
- Fixed security issues (denial of service). See SA-CORE-2013-002.

David_Rothstein's avatar
David_Rothstein committed
245 246 247 248
Drupal 7.19, 2013-01-16
-----------------------
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2013-001.

David_Rothstein's avatar
David_Rothstein committed
249
Drupal 7.18, 2012-12-19
David_Rothstein's avatar
David_Rothstein committed
250
-----------------------
David_Rothstein's avatar
David_Rothstein committed
251
- Fixed security issues (multiple vulnerabilities). See SA-CORE-2012-004.
252

David_Rothstein's avatar
David_Rothstein committed
253
Drupal 7.17, 2012-11-07
David_Rothstein's avatar
David_Rothstein committed
254
-----------------------
255 256
- Changed the default value of the '404_fast_html' variable to have a DOCTYPE
  declaration.
257 258
- Made it possible to use associative arrays for the 'items' variable in
  theme_item_list().
259 260
- Fixed a bug which prevented required form elements without a title from being
  given an "error" class when the form fails validation.
261
- Prevented duplicate HTML IDs from appearing when two forms are displayed on
262
  the same page and one of them is submitted with invalid data (minor markup
263
  change).
264 265 266 267 268 269 270 271 272 273 274 275
- Fixed a bug which prevented Drupal 6 to Drupal 7 upgrades on sites which had
  stale data in the Upload module's database tables.
- Fixed a bug in the States API which prevented certain types of form elements
  from being disabled when requested.
- Allowed aggregator feed items with author names longer than 255 characters to
  have a truncated version saved to the database (rather than causing a fatal
  error).
- Allowed aggregator feed items to have URLs longer than 255 characters
  (schema change which results in several columns in the Aggregator module's
  database tables changing from VARCHAR to TEXT fields).
- Added hook_taxonomy_term_view() and standardized the process for rendering
  taxonomy terms to invoke hook_entity_view() and otherwise make it consistent
276
  with other entities (API change: http://drupal.org/node/1808870).
277
- Added hook_entity_view_mode_alter() to allow modules to change entity view
278
  modes on display (API addition: http://drupal.org/node/1833086).
279 280 281 282 283 284 285 286
- Fixed a bug which made database queries running a "LIKE" query on blob fields
  fail on PostgreSQL databases. This caused errors during the Drupal 6 to
  Drupal 7 upgrade.
- Changed the hook_menu() entry for Drupal's rss.xml page to prevent extra path
  components from being accidentally passed to the page callback function (data
  structure change).
- Removed a non-standard "name" attribute from Drupal's default Content-Type
  header for file downloads.
287 288
- Fixed the theme settings form to properly clean up submitted values in
  $form_state['values'] when the form is submitted (data structure change).
289 290 291 292 293 294
- Fixed an inconsistency by removing the colon from the end of the label on
  multi-valued form fields (minor string change).
- Added support for 'weight' in hook_field_widget_info() to allow modules to
  control the order in which widgets are displayed in the Field UI.
- Updated various tables in the OpenID and Book modules to use the default
  "empty table" text pattern (string change).
295 296
- Added proxy server support to drupal_http_request().
- Added "lang" attributes to language links, to better support screen readers.
297 298
- Fixed double occurrence of a "ul" HTML tag on secondary local tasks in the
  Seven theme (markup change).
299 300
- Fixed bugs which caused taxonomy vocabulary and shortcut set titles to be
  double-escaped. The fix replaces the taxonomy vocabulary overview page and
301
  "Edit shortcuts" menu items' title callback entries in hook_menu() with new
302
  functions that do not escape HTML characters (data structure change).
303 304 305
- Modified the Update manager module to allow drupal.org to collect usage
  statistics for individual modules and themes, rather than only for entire
  projects.
306 307 308 309 310
- Modified the node listing database query on Drupal's default front page to
  add table aliases for better query altering (this is a data structure change
  affecting code which implements hook_query_alter() on this query).
- Improved the translatability of the "Field type(s) in use" message on the
  modules page (admin-facing string change).
311 312
- Fixed a regression which caused a "call to undefined function
  drupal_find_base_themes()" fatal error under rare circumstances.
313 314
- Numerous API documentation improvements.
- Additional automated test coverage.
David_Rothstein's avatar
David_Rothstein committed
315

David_Rothstein's avatar
David_Rothstein committed
316
Drupal 7.16, 2012-10-17
David_Rothstein's avatar
David_Rothstein committed
317
-----------------------
David_Rothstein's avatar
David_Rothstein committed
318 319
- Fixed security issues (Arbitrary PHP code execution and information
  disclosure). See SA-CORE-2012-003.
David_Rothstein's avatar
David_Rothstein committed
320

David_Rothstein's avatar
David_Rothstein committed
321
Drupal 7.15, 2012-08-01
webchick's avatar
webchick committed
322
-----------------------
323 324 325 326 327 328
- Introduced a 'user_password_reset_timeout' variable to allow the 24-hour
  expiration for user password reset links to be adjusted (API addition).
- Fixed database errors due to ambiguous column names that occurred when
  EntityFieldQuery was used in certain situations.
- Changed the drupal_array_get_nested_value() function to return a reference
  (API addition).
329 330 331 332
- Changed the System module's hook_block_info() implementation to assign the
  "Main page content" and "System help" blocks to appropriate regions by
  default and prevent error messages on the block administration page (data
  structure change).
333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368
- Fixed regression: Non-node entities couldn't be accessed with
  EntityFieldQuery.
- Fixed regression: Optional radio buttons with an empty, non-NULL default
  value led to an illegal choice error when none were selected.
- Reorganized the testing framework to split setUp() into specific sub-methods
  and fix several regressions in the process.
- Fixed bug which made it impossible to search for strings that have not been
  translated into a particular language.
- Renamed the "Field" column on the Manage Fields screen to "Field type", since
  the former was confusing and inaccurate (UI change).
- Performance improvement: Removed needless call to system_rebuild_module_data()
  in field_sync_field_status(), greatly speeding up bulk module enable/disable.
- Fixed bug which prevented notifications from being sent when core, module, and
  theme updates are available.
- Fixed bug which prevented sub-themes from inheriting the default values of
  theme settings defined by the base theme.
- Fixed bug which prevented the jQuery UI Datepicker from being localized.
- Made Ajax alert dialogs respect error reporting settings.
- Fixed bug which prevented image styles from being deleted on PHP 5.4.
- Fixed bug: Language detection by domain only worked on port 80.
- Fixed regression: The first plural index on a page was not calculated
  correctly.
- Introduced generic entity language support. Entities may now declare their
  language property in hook_entity_info(), and modules working with entities
  may access the language using entity_language() (API change:
  http://drupal.org/node/1626346).
- Added EntityFieldQuery support for taxonomy bundles.
- Fixed issue where field form structure was incomplete if field_access()
  returned FALSE. Instead of being incomplete, the form structure now has
  #access set to FALSE and field form validation is skipped (data structure
  change: http://drupal.org/node/1663020).
- Fixed data loss issue due to field_has_data() returning inconsistent results.
  The fix adds an optional DANGEROUS_ACCESS_CHECK_OPT_OUT tag to entity field
  queries which field storage engines can respond to (API addition:
  http://drupal.org/node/1597378).
- Fixed notice: Undefined index: default_image in image_field_prepare_view()
369 370
- Numerous API documentation improvements.
- Additional automated test coverage.
webchick's avatar
webchick committed
371

webchick's avatar
webchick committed
372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420
Drupal 7.14 2012-05-02
----------------------
- Fixed "integrity constraint" fatal errors when rebuilding registry.
- Fixed custom logo and favicon functionality referencing incorrect paths.
- Fixed DB Case Sensitivity: Allow BINARY attribute in MySQL.
- Split field_bundle_settings out per bundle.
- Improve UX for machine names for fields (UI change).
- Fixed User pictures are not removed properly.
- Fixed HTTPS sessions not working in all cases.
- Fixed Regression: Required radios throw illegal choice error when none
  selected.
- Fixed allow autocompletion requests to include slashes.
- Eliminate $user->cache and {session}.cache in favor of
  $_SESSION['cache_expiration'][$bin] (Performance).
- Fixed focus jumps to tab when pressing enter on a form element within tab.
- Fixed race condition in locale() - duplicates in {locales_source}.
- Fixed Missing "Default image" per field instance.
- Quit clobbering people's work when they click the filter tips link
- Form API #states: Fix conditionals to allow OR and XOR constructions.
- Fixed Focus jumps to tab when pressing enter on a form element within tab.
  (Accessibility)
- Improved performance of node_access queries.
- Fixed Fieldsets inside vertical tabs have no title and can't be collapsed.
- Reduce size of cache_menu table (Performance).
- Fixed unnecessary aggregation of CSS/JS (Performance).
- Fixed taxonomy_autocomplete() produces SQL error for nonexistent field.
- Fixed HTML filter is not run first by default, despite default weight.
- Fixed Overlay does not work with prefixed URL paths.
- Better debug info for field errors (string change).
- Fixed Data corruption in comment IDs (results in broken threading on
  PostgreSQL).
- Fixed machine name not editable if every character is replaced.
- Fixed user picture not appearing in comment preview (Markup change).
- Added optional vid argument for taxonomy_get_term_by_name().
- Fixed Invalid Unicode code range in PREG_CLASS_UNICODE_WORD_BOUNDARY fails
  with PCRE 8.30.
- Fixed {trigger_assignments()}.hook has only 32 characters, is too short.
- Numerous fixes to run-tests.sh.
- Fixed Tests in profiles/[name]/modules cannot be run and cannot use a
  different profile for running tests.
- Numerous JavaScript performance fixes.
- Numerous documentation fixes.
- Fixed All pager links have an 'active' CSS class.
- Numerous upgrade path fixes; notably:
  - system_update_7061() fails on inserting files with same name but different
    case.
  - system_update_7061() converts filepaths too aggressively.
  - Trigger upgrade path: Node triggers removed when upgrading to 7-x from 6.25.

webchick's avatar
webchick committed
421
Drupal 7.13 2012-05-02
webchick's avatar
webchick committed
422
----------------------
webchick's avatar
webchick committed
423
- Fixed security issues (Multiple vulnerabilities), see SA-CORE-2012-002.
webchick's avatar
webchick committed
424

webchick's avatar
webchick committed
425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458
Drupal 7.12, 2012-02-01
----------------------
- Fixed bug preventing custom menus from receiving an active trail.
- Fixed hook_field_delete() no longer invoked during field_purge_data().
- Fixed bug causing entity info cache to not be cleared with the rest of caches.
- Fixed file_unmanaged_copy() fails with Drupal 7.7+ and safe_mode() or
  open_basedir().
- Fixed Nested transactions throw exceptions when they got out of scope.
- Fixed bugs with the Return-Path when sending mail on both Windows and
  non-Windows systems.
- Fixed bug with DrupalCacheArray property visibility preventing others from
  extending it (API change: http://drupal.org/node/1422264).
- Fixed bug with handling of non-ASCII characters in file names (API change:
  http://drupal.org/node/1424840).
- Reconciled field maximum length with database column size in image and
  aggregator modules.
- Fixes to various core JavaScript files to allow for minification and
  aggregation.
- Fixed Prevent tests from deleting main installation's tables when
  parent::setUp() is not called.
- Fixed several Poll module bugs.
- Fixed several Shortcut module bugs.
- Added new hook_system_theme_info() to provide ability for contributed modules
  to test theme functionality.
- Added ability to cancel mail sending from hook_mail_alter().
- Added support for configurable PDO connection options, enabling master-master
  database replication.
- Numerous improvements to tests and test runner to pave the way for faster test
  runs.
- Expanded test coverage.
- Numerous API documentation improvements.
- Numerous performance improvements, including token replacement and render
  cache.

webchick's avatar
webchick committed
459 460 461
Drupal 7.11, 2012-02-01
----------------------
- Fixed security issues (Multiple vulnerabilities), see SA-CORE-2012-001.
webchick's avatar
webchick committed
462

webchick's avatar
webchick committed
463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480
Drupal 7.10, 2011-12-05
----------------------
- Fixed Content-Language HTTP header to not cause issues with Drush 5.x.
- Reduce memory usage of theme registry (performance).
- Fixed PECL upload progress bar for FileField
- Fixed running update.php doesn't always clear the cache.
- Fixed PDO exceptions on long titles.
- Fixed Overlay redirect does not include query string.
- Fixed D6 modules satisfy D7 module dependencies.
- Fixed the ordering of module hooks when using module_implements_alter().
- Fixed "floating" submit buttons during AJAX requests.
- Fixed timezone selected on install not propogating to admin account.
- Added msgctx context to JS translation functions, for feature parity with t().
- Profiles' .install files now available during hook_install_tasks().
- Added test coverage of 7.0 -> 7.x upgrade path.
- Numerous notice fixes.
- Numerous documentation improvements.
- Additional automated test coverage.
webchick's avatar
webchick committed
481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515

Drupal 7.9, 2011-10-26
----------------------
- Critical fixes to OpenID to spec violations that could allow for
  impersonation in certain scenarios. Existing OpenID users should see
  http://drupal.org/node/1120290#comment-5092796 for more information on
  transitioning.
- Fixed files getting lost when adding multiple files to multiple file fields
  at the same time.
- Improved usability of the clean URL test screens.
- Restored height/width attributes on images run through the theme system.
- Fixed usability bug with first password field being pre-filled by certain
  browser plugins.
- Fixed file_usage_list() so that it can return more than one result.
- Fixed bug preventing preview of private images on node form.
- Fixed PDO error when inserting an aggregator title longer than 255 characters.
- Spelled out what TRADITIONAL means in MySQL sql_mode.
- Deprecated "!=" operator for DBTNG; should be "<>".
- Added two new API functions (menu_tree_set_path()/menu_tree_get_path()) were
  added in order to enable setting the active menu trail for dynamically
  generated menu paths.
- Added new "fast 404" capability in settings.php to bypass Drupal bootstrap
  when serving 404 pages for certain file types.
- Added format_string() function which can perform string munging ala the t()
  function without the overhead of the translation system.
- Numerous #states system fixes.
- Numerous EntityFieldQuery, DBTNG, and SQLite fixes.
- Numerous Shortcut module fixes.
- Numerous language system fixes.
- Numerous token fixes.
- Numerous CSS fixes.
- Numerous upgrade path fixes.
- Numerous minor string fixes.
- Numerous notice fixes.

webchick's avatar
webchick committed
516
Drupal 7.8, 2011-08-31
webchick's avatar
webchick committed
517
----------------------
webchick's avatar
webchick committed
518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537
- Fixed critical upgrade path issue with multilingual sites, leading to lost
  content.
- Numerous fixes to upgrade path, preventing fatal errors due to incorrect
  dependencies.
- Fixed issue with saving files on hosts with open_basedir restrictions.
- Fixed Update manger error when used with Overlay.
- Fixed RTL support in Seven administration theme and Overlay.
- Fixes to nested transaction support.
- Introduced performance pattern to reduce Drupal core's RAM usage.
- Added support for HTML 5 tags to filter_xss_admin().
- Added exception handling to cron.
- Added new hook hook_field_widget_form_alter() for contribtued modules.
- element_validate_*() functions now available to contrib.
- Added new maintainers for several subsystems.
- Numerous testing system improvements.
- Numerous markup and CSS fixes.
- Numerous poll module fixes.
- Numerous notice/warning fixes.
- Numerous documentation fixes.
- Numerous token fixes.
webchick's avatar
webchick committed
538

webchick's avatar
webchick committed
539
Drupal 7.7, 2011-07-27
webchick's avatar
webchick committed
540
----------------------
webchick's avatar
webchick committed
541
- Fixed VERSION string.
webchick's avatar
webchick committed
542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557

Drupal 7.6, 2011-07-27
----------------------
- Fixed support for remote streamwrappers.
- AJAX now binds to 'click' instead of 'mousedown'.
- 'Translatable' flag on fields created in UI now defaults to FALSE, to match those created via the API.
- Performance enhancement to permissions page on large numbers of permissions.
- More secure password generation.
- Fix for temporary directory on Windows servers.
- run-tests.sh now uses proc_open() instead of pcntl_fork() for better Windows support.
- Numerous upgrade path fixes.
- Numerous documentation fixes.
- Numerous notice fixes.
- Numerous fixes to improve PHP 5.4 support.
- Numerous RTL improvements.

558
Drupal 7.5, 2011-07-27
webchick's avatar
webchick committed
559
----------------------
560
- Fixed security issue (Access bypass), see SA-CORE-2011-003.
webchick's avatar
webchick committed
561

562 563 564 565 566 567 568 569 570 571 572 573 574
Drupal 7.4, 2011-06-29
----------------------
- Rolled back patch that caused fatal errors in CTools, Feeds, and other modules using the class registry.
- Fixed critical bug with saving default images.
- Fixed fatal errors when uninstalling some modules.
- Added workaround for MySQL transaction support breaking on DDL statments.
- Improved page caching with external caching systems.
- Fix to Batch API, which was terminating too early.
- Numerous upgrade path fixes.
- Performance fixes.
- Additional test coverage.
- Numerous documentation fixes.

575
Drupal 7.3, 2011-06-29
webchick's avatar
webchick committed
576
----------------------
577
- Fixed security issue (Access bypass), see SA-CORE-2011-002.
webchick's avatar
webchick committed
578

webchick's avatar
webchick committed
579
Drupal 7.2, 2011-05-25
580
----------------------
webchick's avatar
webchick committed
581 582 583 584 585 586 587 588 589 590 591 592
- Added a default .gitignore file.
- Improved PostgreSQL and SQLite support.
- Numerous critical performance improvements.
- Numerous critical fixes to the upgrade path.
- Numerous fixes to language and translation systems.
- Numerous fixes to AJAX and #states systems.
- Improvements to the locking system.
- Numerous documentation fixes.
- Numerous styling and theme system fixes.
- Numerous fixes for schema mis-matches between Drupal 6 and 7.
- Minor internal API clean-ups.

webchick's avatar
webchick committed
593 594 595
Drupal 7.1, 2011-05-25
----------------------
- Fixed security issues (Cross site scripting, File access bypass), see SA-CORE-2011-001.
596 597

Drupal 7.0, 2011-01-05 
598
----------------------
599 600
- Database:
    * Fully rewritten database layer utilizing PHP 5's PDO abstraction layer.
601
    * Drupal now requires MySQL >= 5.0.15 or PostgreSQL >= 8.3.
602
    * Added query builders for INSERT, UPDATE, DELETE, MERGE, and SELECT queries.
603
    * Support for master/slave replication, transactions, multi-insert queries,
604
      and other features.
605
    * Added support for the SQLite database engine.
606 607
    * Default to InnoDB engine, rather than MyISAM, on MySQL when available.
      This offers increased scalability and data integrity.
608 609
- Security:
    * Protected cron.php -- cron will only run if the proper key is provided.
610 611 612 613 614
    * Implemented a pluggable password system and much stronger password hashes
      that are compatible with the Portable PHP password hashing framework.
    * Rate limited login attempts to prevent brute-force password guessing, and
      improved the flood control API to allow variable time windows and
      identifiers for limiting user access to resources.
615 616
    * Transformed the "Update status" module into the "Update manager" which
      can securely install or update modules and themes via a web interface.
617
- Usability:
618 619 620
    * Added contextual links (a.k.a. local tasks) to page elements, such as
      blocks, nodes, or comments, which allows to perform the most common tasks
      with a single click only.
621
    * Improved installer requirements check.
622
    * Improved support for integration of WYSIWYG editors.
623
    * Implemented drag-and-drop positioning for input format listings.
624
    * Implemented drag-and-drop positioning for language listing.
625
    * Implemented drag-and-drop positioning for poll options.
626
    * Provided descriptions and human-readable names for user permissions.
627
    * Removed comment controls for users.
628
    * Removed display order settings for comment module. Comment display
629
      order can now be customized using the Views module.
630 631
    * Removed the 'related terms' feature from taxonomy module since this can
      now be achieved with Field API.
632 633
    * Added additional features to the default installation profile, and
      implemented a "slimmed down" profile designed for developers.
634 635
    * Added a built-in, automated cron run feature, which is triggered by site
      visitors.
636
    * Added an administrator role which is assigned all permissions for
637
      installed modules automatically.
638 639
    * Image toolkits are now provided by modules (rather than requiring a
      manual file copy to the includes directory).
640
    * Added an edit tab to taxonomy term pages.
641
    * Redesigned password strength validator.
642
    * Redesigned the add content type screen.
643
    * Highlight duplicate URL aliases.
644
    * Renamed "input formats" to "text formats".
645
    * Moved text format permissions to the main permissions page.
646
    * Added configurable ability for users to cancel their own accounts.
647 648
    * Added "vertical tabs", a reusable interface component that features
      automatic summaries and increases usability.
649
    * Replaced fieldsets on node edit and add pages with vertical tabs.
650 651 652
- Performance:
    * Improved performance on uncached page views by loading multiple core
      objects in a single database query.
653 654
    * Improved performance for logged-in users by reducing queries for path
      alias lookups.
655
    * Improved support for HTTP proxies (including reverse proxies), allowing
656
      anonymous page views to be served entirely from the proxy.
657 658
- Documentation:
    * Hook API documentation now included in Drupal core.
659 660
- News aggregator:
    * Added OPML import functionality for RSS feeds.
661
    * Optionally, RSS feeds may be configured to not automatically generate feed blocks.
662
- Search:
663
    * Added support for language-aware searches.
664
- Aggregator:
Dries's avatar
Dries committed
665
    * Introduced architecture that allows pluggable parsers and processors for
666
      syndicating RSS and Atom feeds.
667
    * Added options to suspend updating specific feeds and never discard feeds
668
      items.
669 670
- Testing:
    * Added test framework and tests.
671 672 673 674 675 676
- Improved time zone support:
    * Drupal now uses PHP's time zone database when rendering dates in local
      time. Site-wide and user-configured time zone offsets have been converted
      to time zone names, e.g. Africa/Abidjan.
    * In some cases the upgrade and install scripts do not choose the preferred
      site default time zone. The automatically-selected time zone can be
677
      corrected at admin/config/regional/settings.
678 679 680
    * If your site is being upgraded from Drupal 6 and you do not have the
      contributed date or event modules installed, user time zone settings will
      fallback to the system time zone and will have to be reconfigured by each user.
681 682
    * User-configured time zones now serve as the default time zone for PHP
      date/time functions.
683
- Filter system:
684
    * Revamped the filter API and text format storage.
685
    * Added support for default text formats to be assigned on a per-role basis.
686
    * Refactored the HTML corrector to take advantage of PHP 5 features.
687 688 689 690 691 692 693 694 695 696 697
- User system:
    * Added clean API functions for creating, loading, updating, and deleting
      user roles and permissions.
    * Refactored the "access rules" component of user module: The user module
      now provides a simple interface for blocking single IP addresses. The
      previous functionality in the user module for restricting certain e-mail
      addresses and usernames is now available as a contributed module. Further,
      IP address range blocking is no longer supported and should be implemented
      at the operating system level.
    * Removed per-user themes: Contributed modules with similar functionality
      are available.
698 699
- OpenID:
    * Added support for Gmail and Google Apps for Domain identifiers. Users can
700
      now login with their user@example.com identifier when example.com is powered
701 702
      by Google.
    * Made the OpenID module more pluggable.
703
- Added code registry:
704
    * Using the registry, modules declare their includable files via their .info file,
705
      allowing Drupal to lazy-load classes and interfaces as needed.
706
- Theme system:
707 708 709 710
    * Removed the Bluemarine, Chameleon and Pushbutton themes. These themes live
      on as contributed themes (http://drupal.org/project/bluemarine,
      http://drupal.org/project/chameleon and http://drupal.org/project/pushbutton).
    * Added Stark theme to make analyzing Drupal's default HTML and CSS easier.
711
    * Added Seven as the default administration theme.
712 713 714 715 716 717
    * Variable preprocessing of theme hooks prior to template rendering now goes
      through two phases: a 'preprocess' phase and a new 'process' phase. See
      http://api.drupal.org/api/function/theme/7 for details.
    * Theme hooks implemented as functions (rather than as templates) can now
      also have preprocess (and process) functions. See
      http://api.drupal.org/api/function/theme/7 for details.
718
    * Added Bartik as the default theme.
719 720 721 722 723 724 725 726 727 728
- File handling:
    * Files are now first class Drupal objects with file_load(), file_save(),
      and file_validate() functions and corresponding hooks.
    * The file_move(), file_copy() and file_delete() functions now operate on
      file objects and invoke file hooks so that modules are notified and can
      respond to changes.
    * For the occasions when only basic file manipulation are needed--such as
      uploading a site logo--that don't require the overhead of databases and
      hooks, the current unmanaged copy, move and delete operations have been
      preserved but renamed to file_unmanaged_*().
729
    * Rewrote file handling to use PHP stream wrappers to enable support for
730 731
      both public and private files and to support pluggable storage mechanisms
      and access to remote resources (e.g. S3 storage or Flickr photos).
732 733 734
    * The mime_extension_mapping variable has been removed. Modules that need to
      alter the default MIME type extension mappings should implement
      hook_file_mimetype_mapping_alter().
735 736
    * Added the hook_file_url_alter() hook, which makes it possible to serve
      files from a CDN.
737
    * Added a field specifically for uploading files, previously provided by
738
      the contributed module FileField.
739 740 741 742 743
- Image handling:
    * Improved image handling, including better support for add-on image
      libraries.
    * Added API and interface for creating advanced image thumbnails.
    * Inclusion of additional effects such as rotate and desaturate.
744
    * Added a field specifically for uploading images, previously provided by
745
      the contributed module ImageField.
746 747
- Added aliased multi-site support:
    * Added support for mapping domain names to sites directories.
748 749 750
- Added RDF support:
    * Modules can declare RDF namespaces which are serialized in the <html> tag
      for RDFa support.
751 752 753
    * Modules can specify how their data structure maps to RDF.
    * Added support for RDFa export of nodes, comments, terms, users, etc. and
      their fields.
754 755 756 757 758 759
- Search engine optimization and web linking:
    * Added a rel="canonical" link on node and comment pages to prevent
      duplicate content indexing by search engines.
    * Added a default rel="shortlink" link on node and comment pages that
      advertises a short link as an alternative URL to third-party services.
    * Meta information is now alterable by all modules before rendering.
760
- Field API:
761 762
    * Custom data fields may be attached to nodes, users, comments and taxonomy
      terms.
763 764
    * Node bodies and teasers are now Field API fields instead of
      being a hard-coded property of node objects.
765 766
    * In addition, any other object type may register with Field API
      and allow custom data fields to be attached to itself.
767
    * Provides most of the features of the former Content Construction
768
      Kit (CCK) module.
769 770
    * Taxonomy terms are now Field API fields that can be added to any fieldable
      object.
771 772 773
- Installer:
    * Refactored the installer into an API that allows Drupal to be installed
      via a command line script.
774
- Page organization
775
    * Made the help text area a full featured region with blocks.
776
    * Site mission is replaced with the highlighted content block region and
777
      separate RSS feed description settings.
778
    * The footer message setting was removed in favor of custom blocks.
779 780
    * Made the main page content a block which can be moved and ordered
      with other blocks in the same region.
781
    * Blocks can now return structured arrays for later rendering just
782
      like page callbacks.
783 784
- Translation system
    * The translation system now supports message context (msgctxt).
785
    * Added support for translatable fields to Field API.
786
- JavaScript changes
787
    * Upgraded the core JavaScript library to jQuery version 1.4.4.
788
    * Upgraded the jQuery Forms library to 2.52.
789
    * Added jQuery UI 1.8.7, which allows improvements to Drupal's user
790
      experience.
791
- Better module version support
792
    * Modules now can specify which version of another module they depend on.
793 794 795 796 797 798
- Removed modules from core
    * The following modules have been removed from core, because contributed
      modules with similar functionality are available:
      * Blog API module
      * Ping module
      * Throttle module
799 800 801 802 803 804 805
- Improved node access control system.
    * All modules may now influence the access to a node at runtime, not just
      the module that defined a node.
    * Users may now be allowed to bypass node access restrictions without giving
      them complete access to the site.
    * Access control affects both published and unpublished nodes.
    * Numerous other improvements to the node access system.
806 807 808 809
- Actions system
    * Simplified definitions of actions and triggers.
    * Removed dependency on the combination of hooks and operations. Triggers
      now directly map to module hooks.
810 811 812 813 814
- Task handling
    * Added a queue API to process many or long-running tasks.
    * Added queue API support to cron API.
    * Added a locking framework to coordinate long-running operations across
      requests.
815

webchick's avatar
webchick committed
816 817 818
Drupal 6.23-dev, xxxx-xx-xx (development release)
-----------------------

webchick's avatar
webchick committed
819 820 821 822 823 824 825 826 827 828 829
Drupal 6.22, 2011-05-25
-----------------------
- Made Drupal 6 work better with IIS and Internet Explorer.
- Fixed .po file imports to work better with custom textgroups.
- Improved code documentation at various places.
- Fixed a variety of other bugs.

Drupal 6.21, 2011-05-25
----------------------
- Fixed security issues (Cross site scripting), see SA-CORE-2011-001.

830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859
Drupal 6.20, 2010-12-15
----------------------
- Fixed a variety of small bugs, improved code documentation.

Drupal 6.19, 2010-08-11
----------------------
- Fixed a variety of small bugs, improved code documentation.

Drupal 6.18, 2010-08-11
----------------------
- Fixed security issues (OpenID authentication bypass, File download access
  bypass, Comment unpublishing bypass, Actions cross site scripting),
  see SA-CORE-2010-002.

Drupal 6.17, 2010-06-02
----------------------
- Improved PostgreSQL compatibility
- Better PHP 5.3 and PHP 4 compatibility
- Better browser compatibility of CSS and JS aggregation
- Improved logging for login failures
- Fixed an incompatibility with some contributed modules and the locking system
- Fixed a variety of other bugs.

Drupal 6.16, 2010-03-03
----------------------
- Fixed security issues (Installation cross site scripting, Open redirection,
  Locale module cross site scripting, Blocked user session regeneration),
  see SA-CORE-2010-001.
- Better support for updated jQuery versions.
- Reduced resource usage of update.module.
860
- Fixed several issues relating to support of installation profiles and
861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968
  distributions.
- Added a locking framework to avoid data corruption on long operations.
- Fixed a variety of other bugs.

Drupal 6.15, 2009-12-16
----------------------
- Fixed security issues (Cross site scripting), see SA-CORE-2009-009.
- Fixed a variety of other bugs.

Drupal 6.14, 2009-09-16
----------------------
- Fixed security issues (OpenID association cross site request forgeries,
  OpenID impersonation and File upload), see SA-CORE-2009-008.
- Changed the system modules page to not run all cache rebuilds; use the
  button on the performance settings page to achieve the same effect.
- Added support for PHP 5.3.0 out of the box.
- Fixed a variety of small bugs.

Drupal 6.13, 2009-07-01
----------------------
- Fixed security issues (Cross site scripting, Input format access bypass and
  Password leakage in URL), see SA-CORE-2009-007.
- Fixed a variety of small bugs.

Drupal 6.12, 2009-05-13
----------------------
- Fixed security issues (Cross site scripting), see SA-CORE-2009-006.
- Fixed a variety of small bugs.

Drupal 6.11, 2009-04-29
----------------------
- Fixed security issues (Cross site scripting and limited information
  disclosure), see SA-CORE-2009-005
- Fixed performance issues with the menu router cache, the update
  status cache and improved cache invalidation
- Fixed a variety of small bugs.

Drupal 6.10, 2009-02-25
----------------------
- Fixed a security issue, (Local file inclusion on Windows),
  see SA-CORE-2009-003
- Fixed node_feed() so custom fields can show up in RSS feeds.
- Improved PostgreSQL compatibility.
- Fixed a variety of small bugs.

Drupal 6.9, 2009-01-14
----------------------
- Fixed security issues, (Access Bypass, Validation Bypass and Hardening
  against SQL injection), see SA-CORE-2009-001
- Made HTTP request checking more robust and informative.
- Fixed HTTP_HOST checking to work again with HTTP 1.0 clients and
  basic shell scripts.
- Removed t() calls from all schema documentation. Suggested best practice
  changed for contributed modules, see http://drupal.org/node/322731.
- Fixed a variety of small bugs.

Drupal 6.8, 2008-12-11
----------------------
- Removed a previous change incompatible with PHP 5.1.x and lower.

Drupal 6.7, 2008-12-10
----------------------
- Fixed security issues, (Cross site request forgery and Cross site scripting), see SA-2008-073
- Updated robots.txt and .htaccess to match current file use.
- Fixed a variety of small bugs.

Drupal 6.6, 2008-10-22
----------------------
- Fixed security issues, (File inclusion, Cross site scripting), see SA-2008-067
- Fixed a variety of small bugs.

Drupal 6.5, 2008-10-08
----------------------
- Fixed security issues, (File upload access bypass, Access rules bypass,
  BlogAPI access bypass), see SA-2008-060.
- Fixed a variety of small bugs.

Drupal 6.4, 2008-08-13
----------------------
- Fixed a security issue (Cross site scripting, Arbitrary file uploads via
  BlogAPI, Cross site request forgeries and Various Upload module
  vulnerabilities), see SA-2008-047.
- Improved error messages during installation.
- Fixed a bug that prevented AHAH handlers to be attached to radios widgets.
- Fixed a variety of small bugs.

Drupal 6.3, 2008-07-09
----------------------
- Fixed security issues, (Cross site scripting, cross site request forgery,
  session fixation and SQL injection), see SA-2008-044.
- Slightly modified installation process to prevent file ownership issues on
  shared hosts.
- Improved PostgreSQL compatibility (rewritten queries; custom blocks).
- Upgraded to jQuery 1.2.6.
- Performance improvements to search, menu handling and form API caches.
- Fixed Views compatibility issues (Views for Drupal 6 requires Drupal 6.3+).
- Fixed a variety of small bugs.

Drupal 6.2, 2008-04-09
----------------------
- Fixed a variety of small bugs.
- Fixed a security issue (Access bypasses), see SA-2008-026.

Drupal 6.1, 2008-02-27
----------------------
- Fixed a variety of small bugs.
- Fixed a security issue (Cross site scripting), see SA-2008-018.

969
Drupal 6.0, 2008-02-13
970
----------------------
971
- New, faster and better menu system.
972
- New watchdog as a hook functionality.
973 974 975 976 977
   * New hook_watchdog that can be implemented by any module to route log
     messages to various destinations.
   * Expands the severity levels from 3 (Error, Warning, Notice) to the 8
     levels defined in RFC 3164.
   * The watchdog module is now called dblog, and is optional, but enabled by
978
     default in the default installation profile.
979 980
   * Extended the database log module so log messages can be filtered.
   * Added syslog module: useful for monitoring large Drupal installations.
981
- Added optional e-mail notifications when users are approved, blocked, or
982
  deleted.
983
- Drupal works with error reporting set to E_ALL.
984 985
- Added scripts/drupal.sh to execute Drupal code from the command line. Useful
  to use Drupal as a framework to build command-line tools.
986
- Made signature support optional and made it possible to theme signatures.
987 988
- Made it possible to filter the URL aliases on the URL alias administration
  screen.
989
- Language system improvements:
Dries's avatar
Dries committed
990
    * Support for right to left languages.
991 992
    * Language detection based on parts of the URL.
    * Browser based language detection.
Dries's avatar
Dries committed
993
    * Made it possible to specify a node's language.
994
    * Support for translating posts on the site to different languages.
995
    * Language dependent path aliases.
996
    * Automatically import translations when adding a new language.
997
    * JavaScript interface translation.
Dries's avatar
Dries committed
998
    * Automatically import a module's translation upon enabling that module.
999
- Moved "PHP input filter" to a standalone module so it can be deleted for
1000
  security reasons.
1001 1002 1003 1004
- Usability:
    * Improved handling of teasers in posts.
    * Added sticky table headers.
    * Check for clean URL support automatically with JavaScript.
1005 1006
    * Removed default/settings.php. Instead the installer will create it from
      default.settings.php.
1007
    * Made it possible to configure your own date formats.
1008
    * Remember anonymous comment posters.
1009
    * Only allow modules and themes to be enabled that have explicitly been
1010
      ported to the correct core API version.
1011 1012
    * Can now specify the minimum PHP version required for a module within the
      .info file.
1013 1014
    * Drupal core no longer requires CREATE TEMPORARY TABLES or LOCK TABLES
      database rights.
1015
    * Dynamically check password strength and confirmation.
1016
    * Refactored poll administration.
1017
    * Implemented drag-and-drop positioning for blocks, menu items, taxonomy
1018
      vocabularies and terms, forums, profile fields, and input format filters.
1019
- Theme system:
1020 1021 1022 1023
    * Added .info files to themes and made it easier to specify regions and
      features.
    * Added theme registry: modules can directly provide .tpl.php files for
      their themes without having to create theme_ functions.
1024
    * Used the Garland theme for the installation and maintenance pages.
1025
    * Added theme preprocess functions for themes that are templates.
1026
    * Added support for themeable functions in JavaScript.
1027
- Refactored update.php to a generic batch API to be able to run time-consuming
1028
  operations in multiple subsequent HTTP requests.
1029 1030 1031 1032
- Installer:
    * Themed the installer with the Garland theme.
    * Added form to provide initial site information during installation.
    * Added ability to provide extra installation steps programmatically.
1033
    * Made it possible to import interface translations during installation.
1034 1035 1036
- Added the HTML corrector filter:
    * Fixes faulty and chopped off HTML in postings.
    * Tags are now automatically closed at the end of the teaser.
1037
- Performance:
1038
    * Made it easier to conditionally load .include files and split up many core
1039
      modules.
1040
    * Added a JavaScript aggregator.
1041 1042 1043 1044
    * Added block-level caching, improving performance for both authenticated
      and anonymous users.
    * Made Drupal work correctly when running behind a reverse proxy like
      Squid or Pound.
1045
- File handling improvements:
1046 1047
    * Entries in the files table are now keyed to a user instead of a node.
    * Added reusable validation functions to check for uploaded file sizes,
1048 1049
      extensions, and image resolution.
    * Added ability to create and remove temporary files during a cron job.
1050
- Forum improvements:
1051
    * Any node type may now be posted in a forum.
1052
- Taxonomy improvements:
1053
    * Descriptions for terms are now shown on taxonomy/term pages as well
1054 1055 1056
      as RSS feeds.
    * Added versioning support to categories by associating them with node
      revisions.
1057
- Added support for OpenID.
1058 1059 1060
- Added support for triggering configurable actions.
- Added the Update status module to automatically check for available updates
  and warn sites if they are missing security updates or newer versions.
1061 1062
  Sites deploying from CVS should use http://drupal.org/project/cvs_deploy.
  Advanced settings provided by http://drupal.org/project/update_advanced.
1063
- Upgraded the core JavaScript library to jQuery version 1.2.3.
1064 1065
- Added a new Schema API, which provides built-in support for core and
  contributed modules to work with databases other than MySQL.
1066 1067
- Removed drupal.module. The functionality lives on as the Site network
  contributed module (http://drupal.org/project/site_network).
1068 1069
- Removed old system updates. Updates from Drupal versions prior to 5.x will
  require upgrading to 5.x before upgrading to 6.x.
Steven Wittens's avatar
Steven Wittens committed
1070

1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159
Drupal 5.23, 2010-08-11
-----------------------
- Fixed security issues (File download access bypass, Comment unpublishing
  bypass), see SA-CORE-2010-002.

Drupal 5.22, 2010-03-03
-----------------------
- Fixed security issues (Open redirection, Locale module cross site scripting,
  Blocked user session regeneration), see SA-CORE-2010-001.

Drupal 5.21, 2009-12-16
-----------------------
- Fixed a security issue (Cross site scripting), see SA-CORE-2009-009.
- Fixed a variety of small bugs.

Drupal 5.20, 2009-09-16
-----------------------
- Avoid security problems resulting from writing Drupal 6-style menu
  declarations.
- Fixed security issues (session fixation), see SA-CORE-2009-008.
- Fixed a variety of small bugs.

Drupal 5.19, 2009-07-01
-----------------------
- Fixed security issues (Cross site scripting and Password leakage in URL), see
  SA-CORE-2009-007.          
- Fixed a variety of small bugs.

Drupal 5.18, 2009-05-13
-----------------------
- Fixed security issues (Cross site scripting), see SA-CORE-2009-006.
- Fixed a variety of small bugs.

Drupal 5.17, 2009-04-29
-----------------------
- Fixed security issues (Cross site scripting and limited information
  disclosure) see SA-CORE-2009-005.
- Fixed a variety of small bugs.

Drupal 5.16, 2009-02-25
-----------------------
- Fixed a security issue, (Local file inclusion on Windows), see SA-CORE-2009-004.
- Fixed a variety of small bugs.

Drupal 5.15, 2009-01-14
-----------------------
- Fixed security issues, (Hardening against SQL injection), see
  SA-CORE-2009-001
- Fixed HTTP_HOST checking to work again with HTTP 1.0 clients and basic shell
  scripts.
- Fixed a variety of small bugs.

Drupal 5.14, 2008-12-11
-----------------------
- removed a previous change incompatible with PHP 5.1.x and lower.

Drupal 5.13, 2008-12-10
-----------------------
- fixed a variety of small bugs.
- fixed security issues, (Cross site request forgery and Cross site scripting), see SA-2008-073
- updated robots.txt and .htaccess to match current file use.

Drupal 5.12, 2008-10-22
-----------------------
- fixed security issues, (File inclusion), see SA-2008-067

Drupal 5.11, 2008-10-08
-----------------------
- fixed a variety of small bugs.
- fixed security issues, (File upload access bypass, Access rules bypass,
  BlogAPI access bypass, Node validation bypass), see SA-2008-060

Drupal 5.10, 2008-08-13
-----------------------
- fixed a variety of small bugs.
- fixed security issues, (Cross site scripting, Arbitrary file uploads via
  BlogAPI and Cross site request forgery), see SA-2008-047

Drupal 5.9, 2008-07-23
----------------------
- fixed a variety of small bugs.
- fixed security issues, (Session fixation), see SA-2008-046

Drupal 5.8, 2008-07-09
----------------------
- fixed a variety of small bugs.
- fixed security issues, (Cross site scripting, cross site request forgery, and
  session fixation), see SA-2008-044

1160 1161 1162 1163 1164
Drupal 5.7, 2008-01-28
----------------------
- fixed the input format configuration page.
- fixed a variety of small bugs.

Gábor Hojtsy's avatar
Gábor Hojtsy committed
1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176
Drupal 5.6, 2008-01-10
----------------------
- fixed a variety of small bugs.
- fixed a security issue (Cross site request forgery), see SA-2008-005
- fixed a security issue (Cross site scripting, UTF8), see SA-2008-006
- fixed a security issue (Cross site scripting, register_globals), see SA-2008-007

Drupal 5.5, 2007-12-06
----------------------
- fixed missing missing brackets in a query in the user module.
- fixed taxonomy feed bug introduced by SA-2007-031

Gábor Hojtsy's avatar
Gábor Hojtsy committed
1177 1178 1179 1180 1181
Drupal 5.4, 2007-12-05
----------------------
- fixed a variety of small bugs.
- fixed a security issue (SQL injection), see SA-2007-031

1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202
Drupal 5.3, 2007-10-17
----------------------
- fixed a variety of small bugs.
- fixed a security issue (HTTP response splitting), see SA-2007-024
- fixed a security issue (Arbitrary code execution via installer), see SA-2007-025
- fixed a security issue (Cross site scripting via uploads), see SA-2007-026
- fixed a security issue (User deletion cross site request forgery), see SA-2007-029
- fixed a security issue (API handling of unpublished comment), see SA-2007-030

Drupal 5.2, 2007-07-26
----------------------
- changed hook_link() $teaser argument to match documentation.
- fixed a variety of small bugs.
- fixed a security issue (cross-site request forgery), see SA-2007-017
- fixed a security issue (cross-site scripting), see SA-2007-018

Drupal 5.1, 2007-01-29
----------------------
- fixed security issue (code execution), see SA-2007-005
- fixed a variety of small bugs.

Steven Wittens's avatar
Steven Wittens committed
1203 1204
Drupal 5.0, 2007-01-15
----------------------
1205 1206 1207 1208 1209 1210 1211
- Completely retooled the administration page
    * /Admin now contains an administration page which may be themed
    * Reorganised administration menu items by task and by module
    * Added a status report page with detailed PHP/MySQL/Drupal information
- Added web-based installer which can:
    * Check installation and run-time requirements
    * Automatically generate the database configuration file
1212
    * Install pre-made installation profiles or distributions
1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253
    * Import the database structure with automatic table prefixing
    * Be localized
- Added new default Garland theme
- Added color module to change some themes' color schemes
- Included the jQuery JavaScript library 1.0.4 and converted all core JavaScript to use it
- Introduced the ability to alter mail sent from system
- Module system:
    * Added .info files for module meta-data
    * Added support for module dependencies
    * Improved module installation screen
    * Moved core modules to their own directories
    * Added support for module uninstalling
- Added support for different cache backends
- Added support for a generic "sites/all" directory.
- Usability:
    * Added support for auto-complete forms (AJAX) to user profiles.
    * Made it possible to instantly assign roles to newly created user accounts.
    * Improved configurability of the contact forms.
    * Reorganized the settings pages.
    * Made it easy to investigate popular search terms.
    * Added a 'select all' checkbox and a range select feature to administration tables.
    * Simplified the 'break' tag to split teasers from body.
    * Use proper capitalization for titles, menu items and operations.
- Integrated urlfilter.module into filter.module
- Block system:
    * Extended the block visibility settings with a role specific setting.
    * Made it possible to customize all block titles.
- Poll module:
    * Optionally allow people to inspect all votes.
    * Optionally allow people to cancel their vote.
- Distributed authentication:
    * Added default server option.
- Added default robots.txt to control crawlers.
- Database API:
    * Added db_table_exists().
- Blogapi module:
    * 'Blogapi new' and 'blogapi edit' nodeapi operations.
- User module:
    * Added hook_profile_alter().
    * E-mail verification is made optional.
    * Added mass editing and filtering on admin/user/user.
1254
- PHP Template engine:
1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271
    * Add the ability to look for a series of suggested templates.
    * Look for page templates based upon the path.
    * Look for block templates based upon the region, module, and delta.
- Content system:
    * Made it easier for node access modules to work well with each other.
    * Added configurable content types.
    * Changed node rendering to work with structured arrays.
- Performance:
    * Improved session handling: reduces database overhead.
    * Improved access checking: reduces database overhead.
    * Made it possible to do memcached based session management.
    * Omit sidebars when serving a '404 - Page not found': saves CPU cycles and bandwidth.
    * Added an 'aggressive' caching policy.
    * Added a CSS aggregator and compressor (up to 40% faster page loads).
- Removed the archive module.
- Upgrade system:
    * Created space for update branches.
1272
- Form API:
1273 1274 1275 1276 1277 1278
    * Made it possible to programmatically submit forms.
    * Improved api for multistep forms.
- Theme system:
    * Split up and removed drupal.css.
    * Added nested lists generation.
    * Added a self-clearing block class.
1279

Gábor Hojtsy's avatar
Gábor Hojtsy committed
1280 1281 1282 1283 1284 1285 1286 1287 1288 1289
Drupal 4.7.11, 2008-01-10
-------------------------
- fixed a security issue (Cross site request forgery), see SA-2008-005
- fixed a security issue (Cross site scripting, UTF8), see SA-2008-006
- fixed a security issue (Cross site scripting, register_globals), see SA-2008-007

Drupal 4.7.10, 2007-12-06
-------------------------
- fixed taxonomy feed bug introduced by SA-2007-031

Gábor Hojtsy's avatar
Gábor Hojtsy committed
1290 1291 1292 1293
Drupal 4.7.9, 2007-12-05
------------------------
- fixed a security issue (SQL injection), see SA-2007-031

1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307
Drupal 4.7.8, 2007-10-17
----------------------
- fixed a security issue (HTTP response splitting), see SA-2007-024
- fixed a security issue (Cross site scripting via uploads), see SA-2007-026
- fixed a security issue (API handling of unpublished comment), see SA-2007-030

Drupal 4.7.7, 2007-07-26
------------------------
- fixed security issue (XSS), see SA-2007-018

Drupal 4.7.6, 2007-01-29
------------------------
- fixed security issue (code execution), see SA-2007-005

1308 1309
Drupal 4.7.5, 2007-01-05
------------------------
1310 1311
- Fixed security issue (XSS), see SA-2007-001
- Fixed security issue (DoS), see SA-2007-002
1312 1313 1314

Drupal 4.7.4, 2006-10-18
------------------------
1315 1316 1317
- Fixed security issue (XSS), see SA-2006-024
- Fixed security issue (CSRF), see SA-2006-025
- Fixed security issue (Form action attribute injection), see SA-2006-026
1318 1319 1320

Drupal 4.7.3, 2006-08-02
------------------------
1321
- Fixed security issue (XSS), see SA-2006-011
1322 1323 1324

Drupal 4.7.2, 2006-06-01
------------------------
1325 1326 1327
- Fixed critical upload issue, see SA-2006-007
- Fixed taxonomy XSS issue, see SA-2006-008
- Fixed a variety of small bugs.
1328 1329 1330

Drupal 4.7.1, 2006-05-24
------------------------
1331 1332 1333
- Fixed critical SQL issue, see SA-2006-005
- Fixed a serious upgrade related bug.
- Fixed a variety of small bugs.
1334

Dries's avatar
Dries committed
1335
Drupal 4.7.0, 2006-05-01
1336
------------------------
1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377
- Added free tagging support.
- Added a site-wide contact form.
- Theme system:
    * Added the PHPTemplate theme engine and removed the Xtemplate engine.
    * Converted the bluemarine theme from XTemplate to PHPTemplate.
    * Converted the pushbutton theme from XTemplate to PHPTemplate.
- Usability:
    * Reworked the 'request new password' functionality.
    * Reworked the node and comment edit forms.
    * Made it easy to add nodes to the navigation menu.
    * Added site 'offline for maintenance' feature.
    * Added support for auto-complete forms (AJAX).
    * Added support for collapsible page sections (JS).
    * Added support for resizable text fields (JS).
    * Improved file upload functionality (AJAX).
    * Reorganized some settings pages.
    * Added friendly database error screens.
    * Improved styling of update.php.
- Refactored the forms API.
    * Made it possible to alter, extend or theme forms.
- Comment system:
    * Added support for "mass comment operations" to ease repetitive tasks.
    * Comment moderation has been removed.
- Node system:
    * Reworked the revision functionality.
    * Removed the bookmarklet code. Third-party modules can now handle
      This.
- Upgrade system:
    * Allows contributed modules to plug into the upgrade system.
- Profiles:
    * Added a block to display author information along with posts.
    * Added support for private profile fields.
- Statistics module:
    * Added the ability to track page generation times.
    * Made it possible to block certain IPs/hostnames.
- Block system:
    * Added support for theme-specific block regions.
- Syndication:
    * Made the aggregator module parse Atom feeds.
    * Made the aggregator generate RSS feeds.
    * Added RSS feed settings.
1378
- XML-RPC:
1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391
    * Replaced the XML-RPC library by a better one.
- Performance:
    * Added 'loose caching' option for high-traffic sites.
    * Improved performance of path aliasing.
    * Added the ability to track page generation times.
- Internationalization:
    * Improved Unicode string handling API.
    * Added support for PHP's multibyte string module.
- Added support for PHP5's 'mysqli' extension.
- Search module:
    * Made indexer smarter and more robust.
    * Added advanced search operators (e.g. phrase, node type, ...).
    * Added customizable result ranking.
1392
- PostgreSQL support:
1393 1394 1395 1396 1397
    * Removed dependency on PL/pgSQL procedural language.
- Menu system:
    * Added support for external URLs.
- Queue module:
    * Removed from core.
1398
- HTTP handling:
1399 1400
    * Added support for a tolerant Base URL.
    * Output URIs relative to the root, without a base tag.
Dries's avatar
Dries committed
1401

1402 1403
Drupal 4.6.11, 2007-01-05
-------------------------
1404 1405
- Fixed security issue (XSS), see SA-2007-001
- Fixed security issue (DoS), see SA-2007-002
1406 1407 1408

Drupal 4.6.10, 2006-10-18
------------------------
1409 1410 1411
- Fixed security issue (XSS), see SA-2006-024
- Fixed security issue (CSRF), see SA-2006-025
- Fixed security issue (Form action attribute injection), see SA-2006-026
1412 1413 1414

Drupal 4.6.9, 2006-08-02
------------------------
1415
- Fixed security issue (XSS), see SA-2006-011
1416 1417 1418

Drupal 4.6.8, 2006-06-01
------------------------
1419 1420
- Fixed critical upload issue, see SA-2006-007
- Fixed taxonomy XSS issue, see SA-2006-008
1421 1422 1423

Drupal 4.6.7, 2006-05-24
------------------------
1424
- Fixed critical SQL issue, see SA-2006-005
1425

1426 1427
Drupal 4.6.6, 2006-03-13
------------------------
1428
- Fixed bugs, including 4 security vulnerabilities.
1429

Dries's avatar
Dries committed
1430 1431
Drupal 4.6.5, 2005-12-12
------------------------
1432
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
1433

Dries's avatar
Dries committed
1434
Drupal 4.6.4, 2005-11-30
1435
------------------------
1436
- Fixed bugs, including 3 security vulnerabilities.
1437

Dries's avatar
Dries committed
1438 1439
Drupal 4.6.3, 2005-08-15
------------------------
1440
- Fixed bugs, including a critical "arbitrary PHP code execution" bug.
Dries's avatar
Dries committed
1441

Dries's avatar
Dries committed
1442 1443
Drupal 4.6.2, 2005-06-29
------------------------
1444
- Fixed bugs, including two critical "arbitrary PHP code execution" bugs.
Dries's avatar
Dries committed
1445

Dries's avatar
Dries committed
1446
Drupal 4.6.1, 2005-06-01
Dries's avatar
Dries committed
1447
------------------------
1448
- Fixed bugs, including a critical input validation bug.
Dries's avatar
Dries committed
1449

Dries's avatar
Dries committed
1450 1451
Drupal 4.6.0, 2005-04-15
------------------------
1452
- PHP5 compliance
1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492
- Search:
    * Added UTF-8 support to make it work with all languages.
    * Improved search indexing algorithm.
    * Improved search output.
    * Impose a throttle on indexing of large sites.
    * Added search block.
- Syndication:
    * Made the ping module ping pingomatic.com which, in turn, will ping all the major ping services.
    * Made Drupal generate RSS 2.0 feeds.
    * Made RSS feeds extensible.
    * Added categories to RSS feeds.
    * Added enclosures to RSS feeds.
- Flood control mechanism:
    * Added a mechanism to throttle certain operations.
- Usability:
    * Refactored the block configuration pages.
    * Refactored the statistics pages.
    * Refactored the watchdog pages.
    * Refactored the throttle module configuration.
    * Refactored the access rules page.
    * Refactored the content administration page.
    * Introduced forum configuration pages.
    * Added a 'add child page' link to book pages.
- Contact module:
    * Added a simple contact module that allows users to contact each other using e-mail.
- Multi-site configuration:
    * Made it possible to run multiple sites from a single code base.
- Added an image API: enables better image handling.
- Block system:
    * Extended the block visibility settings.
- Theme system:
    * Added new theme functions.
- Database backend:
    * The PEAR database backend is no longer supported.
- Performance:
    * Improved performance of the forum topics block.
    * Improved performance of the tracker module.
    * Improved performance of the node pages.
- Documentation:
    * Improved and extended PHPDoc/Doxygen comments.
1493

1494 1495
Drupal 4.5.8, 2006-03-13
------------------------
1496
- Fixed bugs, including 3 security vulnerabilities.
1497

Dries's avatar
Dries committed
1498 1499
Drupal 4.5.7, 2005-12-12
------------------------
1500
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
1501

Dries's avatar
Dries committed
1502
Drupal 4.5.6, 2005-11-30
1503
------------------------
1504
- Fixed bugs, including 3 security vulnerabilities.
1505

Dries's avatar
Dries committed
1506 1507
Drupal 4.5.5, 2005-08-15
------------------------
1508
- Fixed bugs, including a critical "arbitrary PHP code execution" bug.
Dries's avatar
Dries committed
1509

Dries's avatar
Dries committed
1510 1511
Drupal 4.5.4, 2005-06-29
------------------------
1512
- Fixed bugs, including two critical