CHANGELOG.txt 47.7 KB
Newer Older
1 2
// $Id$

webchick's avatar
webchick committed
3
Drupal 7.0 beta 2, 2010-10-22 (development version)
4
----------------------
5 6
- Database:
    * Fully rewritten database layer utilizing PHP 5's PDO abstraction layer.
7
    * Drupal now requires MySQL >= 5.0.15 or PostgreSQL >= 8.3.
8
    * Added query builders for INSERT, UPDATE, DELETE, MERGE, and SELECT queries.
9
    * Support for master/slave replication, transactions, multi-insert queries,
10
      and other features.
11
    * Added support for the SQLite database engine.
12 13
    * Default to InnoDB engine, rather than MyISAM, on MySQL when available.
      This offers increased scalability and data integrity.
14 15
- Security:
    * Protected cron.php -- cron will only run if the proper key is provided.
16 17 18 19 20
    * 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.
21 22
    * Transformed the "Update status" module into the "Update manager" which
      can securely install or update modules and themes via a web interface.
23
- Usability:
24 25 26
    * 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.
27
    * Improved installer requirements check.
28
    * Improved support for integration of WYSIWYG editors.
29
    * Implemented drag-and-drop positioning for input format listings.
30
    * Implemented drag-and-drop positioning for language listing.
31
    * Implemented drag-and-drop positioning for poll options.
32
    * Provided descriptions and human-readable names for user permissions.
33
    * Removed comment controls for users.
34
    * Removed display order settings for comment module. Comment display
35
      order can now be customized using the Views module.
36 37
    * Removed the 'related terms' feature from taxonomy module since this can
      now be achieved with Field API.
38 39
    * Added additional features to the default install profile, and implemented
      a "slimmed down" install profile designed for developers.
40 41
    * Added a built-in, automated cron run feature, which is triggered by site
      visitors.
42
    * Added an administrator role which is assigned all permissions for
43
      installed modules automatically.
44 45
    * Image toolkits are now provided by modules (rather than requiring a
      manual file copy to the includes directory).
46
    * Added an edit tab to taxonomy term pages.
47
    * Redesigned password strength validator.
48
    * Redesigned the add content type screen.
49
    * Highlight duplicate URL aliases.
50
    * Renamed "input formats" to "text formats".
51
    * Moved text format permissions to the main permissions page.
52
    * Added configurable ability for users to cancel their own accounts.
53 54
    * Added "vertical tabs", a reusable interface component that features
      automatic summaries and increases usability.
55
    * Replaced fieldsets on node edit and add pages with vertical tabs.
56 57 58
- Performance:
    * Improved performance on uncached page views by loading multiple core
      objects in a single database query.
59 60
    * Improved performance for logged-in users by reducing queries for path
      alias lookups.
61
    * Improved support for HTTP proxies (including reverse proxies), allowing
62
      anonymous page views to be served entirely from the proxy.
63 64
- Documentation:
    * Hook API documentation now included in Drupal core.
65 66
- News aggregator:
    * Added OPML import functionality for RSS feeds.
67
    * Optionally, RSS feeds may be configured to not automatically generate feed blocks.
68
- Search:
69
    * Added support for language-aware searches.
70
- Aggregator:
Dries's avatar
Dries committed
71
    * Introduced architecture that allows pluggable parsers and processors for
72
      syndicating RSS and Atom feeds.
73
    * Added options to suspend updating specific feeds and never discard feeds
74
      items.
75 76
- Testing:
    * Added test framework and tests.
77 78 79 80 81 82
- 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
83
      corrected at admin/config/regional/settings.
84 85 86
    * 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.
87 88
    * User-configured time zones now serve as the default time zone for PHP
      date/time functions.
89
- Filter system:
90
    * Revamped the filter API and text format storage.
91
    * Added support for default text formats to be assigned on a per-role basis.
92
    * Refactored the HTML corrector to take advantage of PHP 5 features.
93 94 95 96 97 98 99 100 101 102 103
- 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.
104 105 106 107 108
- OpenID:
    * Added support for Gmail and Google Apps for Domain identifiers. Users can
      now login with their user@domain.com identifier when domain.com is powered
      by Google.
    * Made the OpenID module more pluggable.
109
- Added code registry:
110
    * Using the registry, modules declare their includable files via their .info file,
111
      allowing Drupal to lazy-load classes and interfaces as needed.
112
- Theme system:
113 114 115 116
    * 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.
117
    * Added Seven theme as the default administration interface theme.
118 119 120 121 122 123
    * 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.
124 125 126 127 128 129 130 131 132 133
- 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_*().
134
    * Rewrote file handling to use PHP stream wrappers to enable support for
135 136
      both public and private files and to support pluggable storage mechanisms
      and access to remote resources (e.g. S3 storage or Flickr photos).
137 138 139
    * 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().
140 141
    * Added the hook_file_url_alter() hook, which makes it possible to serve
      files from a CDN.
142
    * Added a field specifically for uploading files, previously provided by
143
      the contributed module FileField.
144 145 146 147 148
- 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.
149
    * Added a field specifically for uploading images, previously provided by
150
      the contributed module ImageField.
151 152
- Added aliased multi-site support:
    * Added support for mapping domain names to sites directories.
153 154 155
- Added RDF support:
    * Modules can declare RDF namespaces which are serialized in the <html> tag
      for RDFa support.
156 157 158
    * Modules can specify how their data structure maps to RDF.
    * Added support for RDFa export of nodes, comments, terms, users, etc. and
      their fields.
159 160 161 162 163 164
- 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.
165
- Field API:
166 167
    * Custom data fields may be attached to nodes, users, comments and taxonomy
      terms.
168 169
    * Node bodies and teasers are now Field API fields instead of
      being a hard-coded property of node objects.
170 171
    * In addition, any other object type may register with Field API
      and allow custom data fields to be attached to itself.
172
    * Provides most of the features of the former Content Construction
173
      Kit (CCK) module.
174 175
    * Taxonomy terms are now Field API fields that can be added to any fieldable
      object.
176 177 178
- Installer:
    * Refactored the installer into an API that allows Drupal to be installed
      via a command line script.
179
- Page organization
180
    * Made the help text area a full featured region with blocks.
181
    * Site mission is replaced with the highlighted content block region and
182
      separate RSS feed description settings.
183
    * The footer message setting was removed in favor of custom blocks.
184 185
    * Made the main page content a block which can be moved and ordered
      with other blocks in the same region.
186
    * Blocks can now return structured arrays for later rendering just
187
      like page callbacks.
188 189
- Translation system
    * The translation system now supports message context (msgctxt).
190
    * Added support for translatable fields to Field API.
191
- JavaScript changes
192
    * Upgraded the core JavaScript library to jQuery version 1.4.2.
193
    * Upgraded the jQuery Forms library to 2.36.
194
    * Added jQuery UI 1.8, which allows improvements to Drupal's user
195
      experience.
196
- Better module version support
197
    * Modules now can specify which version of another module they depend on.
198 199 200 201 202 203
- 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
204 205 206 207 208 209 210
- 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.
211 212 213 214
- Actions system
    * Simplified definitions of actions and triggers.
    * Removed dependency on the combination of hooks and operations. Triggers
      now directly map to module hooks.
215 216 217 218 219
- 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.
220 221

Drupal 6.0, 2008-02-13
222
----------------------
223
- New, faster and better menu system.
224
- New watchdog as a hook functionality.
225 226 227 228 229 230
   * 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
     default in the default install profile.
231 232
   * Extended the database log module so log messages can be filtered.
   * Added syslog module: useful for monitoring large Drupal installations.
233
- Added optional e-mail notifications when users are approved, blocked, or
234
  deleted.
235
- Drupal works with error reporting set to E_ALL.
236 237
- Added scripts/drupal.sh to execute Drupal code from the command line. Useful
  to use Drupal as a framework to build command-line tools.
238
- Made signature support optional and made it possible to theme signatures.
239 240
- Made it possible to filter the URL aliases on the URL alias administration
  screen.
241
- Language system improvements:
Dries's avatar
Dries committed
242
    * Support for right to left languages.
243 244
    * Language detection based on parts of the URL.
    * Browser based language detection.
Dries's avatar
Dries committed
245
    * Made it possible to specify a node's language.
246
    * Support for translating posts on the site to different languages.
247
    * Language dependent path aliases.
248
    * Automatically import translations when adding a new language.
249
    * JavaScript interface translation.
Dries's avatar
Dries committed
250
    * Automatically import a module's translation upon enabling that module.
251
- Moved "PHP input filter" to a standalone module so it can be deleted for
252
  security reasons.
253 254 255 256
- Usability:
    * Improved handling of teasers in posts.
    * Added sticky table headers.
    * Check for clean URL support automatically with JavaScript.
257 258
    * Removed default/settings.php. Instead the installer will create it from
      default.settings.php.
259
    * Made it possible to configure your own date formats.
260
    * Remember anonymous comment posters.
261
    * Only allow modules and themes to be enabled that have explicitly been
262
      ported to the correct core API version.
263 264
    * Can now specify the minimum PHP version required for a module within the
      .info file.
265 266
    * Drupal core no longer requires CREATE TEMPORARY TABLES or LOCK TABLES
      database rights.
267
    * Dynamically check password strength and confirmation.
268
    * Refactored poll administration.
269
    * Implemented drag-and-drop positioning for blocks, menu items, taxonomy
270
      vocabularies and terms, forums, profile fields, and input format filters.
271
- Theme system:
272 273 274 275
    * 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.
276
    * Used the Garland theme for the installation and maintenance pages.
277
    * Added theme preprocess functions for themes that are templates.
278
    * Added support for themeable functions in JavaScript.
279
- Refactored update.php to a generic batch API to be able to run time-consuming
280
  operations in multiple subsequent HTTP requests.
281 282 283 284
- 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.
285
    * Made it possible to import interface translations at install time.
286 287 288
- Added the HTML corrector filter:
    * Fixes faulty and chopped off HTML in postings.
    * Tags are now automatically closed at the end of the teaser.
289
- Performance:
290
    * Made it easier to conditionally load .include files and split up many core
291
      modules.
292
    * Added a JavaScript aggregator.
293 294 295 296
    * 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.
297
- File handling improvements:
298 299
    * 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,
300 301
      extensions, and image resolution.
    * Added ability to create and remove temporary files during a cron job.
302
- Forum improvements:
303
    * Any node type may now be posted in a forum.
304
- Taxonomy improvements:
305
    * Descriptions for terms are now shown on taxonomy/term pages as well
306 307 308
      as RSS feeds.
    * Added versioning support to categories by associating them with node
      revisions.
309
- Added support for OpenID.
310 311 312
- 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.
313 314
  Sites deploying from CVS should use http://drupal.org/project/cvs_deploy.
  Advanced settings provided by http://drupal.org/project/update_advanced.
315
- Upgraded the core JavaScript library to jQuery version 1.2.3.
316 317
- Added a new Schema API, which provides built-in support for core and
  contributed modules to work with databases other than MySQL.
318 319
- Removed drupal.module. The functionality lives on as the Site network
  contributed module (http://drupal.org/project/site_network).
320 321
- 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
322

323 324 325 326 327
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
328 329 330 331 332 333 334 335 336 337 338 339
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
340 341 342 343 344
Drupal 5.4, 2007-12-05
----------------------
- fixed a variety of small bugs.
- fixed a security issue (SQL injection), see SA-2007-031

345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365
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
366 367
Drupal 5.0, 2007-01-15
----------------------
368 369 370 371 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
- 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
    * Install pre-made 'install profiles' or distributions
    * 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.
417
- PHP Template engine:
418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441
    * 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.
- Forms API:
    * 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.
442

Gábor Hojtsy's avatar
Gábor Hojtsy committed
443 444 445 446 447 448 449 450 451 452
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
453 454 455 456
Drupal 4.7.9, 2007-12-05
------------------------
- fixed a security issue (SQL injection), see SA-2007-031

457 458 459 460 461 462 463 464 465 466 467 468 469 470
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

471 472
Drupal 4.7.5, 2007-01-05
------------------------
473 474
- Fixed security issue (XSS), see SA-2007-001
- Fixed security issue (DoS), see SA-2007-002
475 476 477

Drupal 4.7.4, 2006-10-18
------------------------
478 479 480
- 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
481 482 483

Drupal 4.7.3, 2006-08-02
------------------------
484
- Fixed security issue (XSS), see SA-2006-011
485 486 487

Drupal 4.7.2, 2006-06-01
------------------------
488 489 490
- Fixed critical upload issue, see SA-2006-007
- Fixed taxonomy XSS issue, see SA-2006-008
- Fixed a variety of small bugs.
491 492 493

Drupal 4.7.1, 2006-05-24
------------------------
494 495 496
- Fixed critical SQL issue, see SA-2006-005
- Fixed a serious upgrade related bug.
- Fixed a variety of small bugs.
497

Dries's avatar
Dries committed
498
Drupal 4.7.0, 2006-05-01
499
------------------------
500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540
- 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.
541
- XML-RPC:
542 543 544 545 546 547 548 549 550 551 552 553 554
    * 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.
555
- PostgreSQL support:
556 557 558 559 560
    * Removed dependency on PL/pgSQL procedural language.
- Menu system:
    * Added support for external URLs.
- Queue module:
    * Removed from core.
561
- HTTP handling:
562 563
    * Added support for a tolerant Base URL.
    * Output URIs relative to the root, without a base tag.
Dries's avatar
Dries committed
564

565 566
Drupal 4.6.11, 2007-01-05
-------------------------
567 568
- Fixed security issue (XSS), see SA-2007-001
- Fixed security issue (DoS), see SA-2007-002
569 570 571

Drupal 4.6.10, 2006-10-18
------------------------
572 573 574
- 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
575 576 577

Drupal 4.6.9, 2006-08-02
------------------------
578
- Fixed security issue (XSS), see SA-2006-011
579 580 581

Drupal 4.6.8, 2006-06-01
------------------------
582 583
- Fixed critical upload issue, see SA-2006-007
- Fixed taxonomy XSS issue, see SA-2006-008
584 585 586

Drupal 4.6.7, 2006-05-24
------------------------
587
- Fixed critical SQL issue, see SA-2006-005
588

589 590
Drupal 4.6.6, 2006-03-13
------------------------
591
- Fixed bugs, including 4 security vulnerabilities.
592

Dries's avatar
Dries committed
593 594
Drupal 4.6.5, 2005-12-12
------------------------
595
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
596

Dries's avatar
Dries committed
597
Drupal 4.6.4, 2005-11-30
598
------------------------
599
- Fixed bugs, including 3 security vulnerabilities.
600

Dries's avatar
Dries committed
601 602
Drupal 4.6.3, 2005-08-15
------------------------
603
- Fixed bugs, including a critical "arbitrary PHP code execution" bug.
Dries's avatar
Dries committed
604

Dries's avatar
Dries committed
605 606
Drupal 4.6.2, 2005-06-29
------------------------
607
- Fixed bugs, including two critical "arbitrary PHP code execution" bugs.
Dries's avatar
Dries committed
608

Dries's avatar
Dries committed
609
Drupal 4.6.1, 2005-06-01
Dries's avatar
Dries committed
610
------------------------
611
- Fixed bugs, including a critical input validation bug.
Dries's avatar
Dries committed
612

Dries's avatar
Dries committed
613 614
Drupal 4.6.0, 2005-04-15
------------------------
615
- PHP5 compliance
616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655
- 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.
656

657 658
Drupal 4.5.8, 2006-03-13
------------------------
659
- Fixed bugs, including 3 security vulnerabilities.
660

Dries's avatar
Dries committed
661 662
Drupal 4.5.7, 2005-12-12
------------------------
663
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
664

Dries's avatar
Dries committed
665
Drupal 4.5.6, 2005-11-30
666
------------------------
667
- Fixed bugs, including 3 security vulnerabilities.
668

Dries's avatar
Dries committed
669 670
Drupal 4.5.5, 2005-08-15
------------------------
671
- Fixed bugs, including a critical "arbitrary PHP code execution" bug.
Dries's avatar
Dries committed
672

Dries's avatar
Dries committed
673 674
Drupal 4.5.4, 2005-06-29
------------------------
675
- Fixed bugs, including two critical "arbitrary PHP code execution" bugs.
Dries's avatar
Dries committed
676 677 678

Drupal 4.5.3, 2005-06-01
------------------------
679
- Fixed bugs, including a critical input validation bug.
Dries's avatar
Dries committed
680

Dries's avatar
Dries committed
681 682
Drupal 4.5.2, 2005-01-15
------------------------
683
- Fixed bugs: a cross-site scripting (XSS) vulnerability has been fixed.
Dries's avatar
Dries committed
684

Dries's avatar
Dries committed
685 686
Drupal 4.5.1, 2004-12-01
------------------------
687
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
688

Dries's avatar
Dries committed
689 690
Drupal 4.5.0, 2004-10-18
------------------------
691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739
- Navigation:
    * Made it possible to add, delete, rename and move menu items.
    * Introduced tabs and subtabs for local tasks.
    * Reorganized the navigation menus.
- User management:
    * Added support for multiple roles per user.
    * Made it possible to add custom profile fields.
    * Made it possible to browse user profiles by field.
- Node system:
    * Added support for node-level permissions.
- Comment module:
    * Made it possible to leave contact information without having to register.
- Upload module:
    * Added support for uploading documents (includes images).
- Forum module:
    * Added support for sticky forum topics.
    * Made it possible to track forum topics.
- Syndication:
    * Added support for RSS ping-notifications of http://technorati.com/.
    * Refactored the categorization of syndicated news items.
    * Added an URL alias for 'rss.xml'.
    * Improved date parsing.
- Database backend:
    * Added support for multiple database connections.
    * The PostgreSQL backend does no longer require PEAR.
- Theme system:
    * Changed all GIFs to PNGs.
    * Reorganised the handling of themes, template engines, templates and styles.
    * Unified and extended the available theme settings.
    * Added theme screenshots.
- Blocks:
    * Added 'recent comments' block.
    * Added 'categories' block.
- Blogger API:
    * Added support for auto-discovery of blogger API via RSD.
- Performance:
    * Added support for sending gzip compressed pages.
    * Improved performance of the forum module.
- Accessibility:
    * Improved the accessibility of the archive module's calendar.
    * Improved form handling and error reporting.
    * Added HTTP redirects to prevent submitting twice when refreshing right after a form submission.
- Refactored 403 (forbidden) handling and added support for custom 403 pages.
- Documentation:
    * Added PHPDoc/Doxygen comments.
- Filter system:
    * Added support for using multiple input formats on the site
    * Expanded the embedded PHP-code feature so it can be used everywhere
    * Added support for role-dependant filtering, through input formats
740
- UI translation:
741 742
    * Managing translations is now completely done through the administration interface
    * Added support for importing/exporting gettext .po files
Dries's avatar
Dries committed
743

Dries's avatar
Dries committed
744 745
Drupal 4.4.3, 2005-06-01
------------------------
746
- Fixed bugs, including a critical input validation bug.
Dries's avatar
Dries committed
747

Dries's avatar
Dries committed
748 749
Drupal 4.4.2, 2004-07-04
------------------------
750
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
751

752
Drupal 4.4.1, 2004-05-01
Dries's avatar
Dries committed
753
------------------------
754
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
755 756 757

Drupal 4.4.0, 2004-04-01
------------------------
758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794
- Added support for the MetaWeblog API and MovableType extensions.
- Added a file API: enables better document management.
- Improved the watchdog and search module to log search keys.
- News aggregator:
    * Added support for conditional GET.
    * Added OPML feed subscription list.
    * Added support for <image>, <pubDate>, <dc:date>, <dcterms:created>, <dcterms:issued> and <dcterms:modified>.
- Comment module:
    * Made it possible to disable the "comment viewing controls".
- Performance:
    * Improved module loading when serving cached pages.
    * Made it possible to automatically disable modules when under heavy load.
    * Made it possible to automatically disable blocks when under heavy load.
    * Improved performance and memory footprint of the locale module.
- Theme system:
    * Made all theme functions start with 'theme_'.
    * Made all theme functions return their output.
    * Migrated away from using the BaseTheme class.
    * Added many new theme functions and refactored existing theme functions.
    * Added avatar support to 'Xtemplate'.
    * Replaced theme 'UnConeD' by 'Chameleon'.
    * Replaced theme 'Marvin' by 'Pushbutton'.
- Usability:
    * Added breadcrumb navigation to all pages.
    * Made it possible to add context-sensitive help to all pages.
    * Replaced drop-down menus by radio buttons where appropriate.
    * Removed the 'magic_quotes_gpc = 0' requirement.
    * Added a 'book navigation' block.
- Accessibility:
    * Made themes degrade gracefully in absence of CSS.
    * Grouped form elements using '<fieldset>' and '<legend>' tags.
    * Added '<label>' tags to form elements.
- Refactored 404 (file not found) handling and added support for custom 404 pages.
- Improved the filter system to prevent conflicts between filters:
    * Made it possible to change the order in which filters are applied.
- Documentation:
    * Added PHPDoc/Doxygen comments.
795

796 797
Drupal 4.3.2, 2004-01-01
------------------------
798
- Fixed bugs: no critical bugs were identified.
799

Dries's avatar
Dries committed
800 801
Drupal 4.3.1, 2003-12-01
------------------------
802
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
803

Kjartan's avatar
Kjartan committed
804
Drupal 4.3.0, 2003-11-01
805
------------------------
806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825
- Added support for configurable URLs.
- Added support for sortable table columns.
- Database backend:
    * Added support for selective database table prefixing.
- Performance:
    * Optimized many SQL queries for speed by converting left joins to inner joins.
- Comment module:
    * Rewrote the comment housekeeping code to be much more efficient and scalable.
    * Changed the comment module to use the standard pager.
- User module:
    * Added support for multiple sessions per user.
    * Added support for anonymous user sessions.
- Forum module:
    * Improved the forum views and the themability thereof.
- Book module:
    * Improved integration of non-book nodes in the book outline.
- Usability:
    * Added support for "mass node operations" to ease repetitive tasks.
    * Added support for breadcrumb navigation to several modules' user pages.
    * Integrated the administration pages with the normal user pages.
826

827
Drupal 4.2.0, 2003-08-01
Dries's avatar
Dries committed
828
------------------------
829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852
- Added support for clean URLs.
- Added textarea hook and support for onload attributes: enables integration of WYSIWYG editors.
- Rewrote the RSS/RDF parser:
    * It will now use PHP's built-in XML parser to parse news feeds.
- Rewrote the administration pages:
    * Improved the navigational elements and added breadcrumb navigation.
    * Improved the look and feel.
    * Added context-sensitive help.
- Database backend:
    * Fixed numerous SQL queries to make Drupal ANSI compliant.
    * Added MSSQL database scheme.
- Search module:
    * Changed the search module to use implicit AND'ing instead of implicit OR'ing.
- Node system:
    * Replaced the "post content" permission by more fine-grained permissions.
    * Improved content submission:
        + Improved teasers: teasers are now optional, teaser length can be configured, teaser and body are edited in a single textarea, users will no longer be bothered with teasers when the post is too short for one.
        + Added the ability to preview both the short and the full version of your posts.
    * Extended the node API which allows for better integration.
    * Added default node settings to control the behavior for promotion, moderation and other options.
- Themes:
    * Replaced theme "Goofy" by "Xtemplate", a template driven theme.
- Removed the 'register_globals = on' requirement.
- Added better installation instructions.
853

Dries's avatar
Dries committed
854
Drupal 4.1.0, 2003-02-01
855
------------------------
856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878
- Collaboratively revised and expanded the Drupal documentation.
- Rewrote comment.module:
    * Reintroduced comment rating/moderation.
    * Added support for comment paging.
    * Performance improvements: improved comment caching, faster SQL queries, etc.
- Rewrote block.module:
    * Performance improvements: blocks are no longer rendered when not displayed.
- Rewrote forum.module:
    * Added a lot of features one can find in stand-alone forum software including but not limited to support for topic paging, added support for icons, rewrote the statistics module, etc.
- Rewrote statistics.module:
    * Collects access counts for each node, referrer logs, number of users/guests.
    * Export blocks displaying top viewed nodes over last 24 hour period, top viewed nodes over all time, last nodes viewed, how many users/guest online.
- Added throttle.module:
    * Auto-throttle congestion control mechanism: Drupal can adapt itself based on the server load.
- Added profile.module:
    * Enables to extend the user and registration page.
- Added pager support to the main page.
- Replaced weblogs.module by ping.module:
    * Added support for normal and RSS notifications of http://blo.gs/.
    * Added support for RSS ping-notifications of http://weblogs.com/.
- Removed the rating module
- Themes:
    * Removed a significant portion of hard-coded mark-up.
879 880

Drupal 4.0.0, 2002-06-15
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
- Added tracker.module:
    * Replaces the previous "your [site]" links (recent comments and nodes).
- Added weblogs.module:
    * This will ping weblogs.com when new content is promoted.
- Added taxonomy module which replaces the meta module.
    * Supports relations, hierarchies and synonyms.
- Added a caching system:
    * Speeds up pages for anonymous users and reduces system load.
- Added support for external SMTP libraries.
- Added an archive extension to the calendar.
- Added support for the Blogger API.
- Themes:
    * Cleaned up the theme system.
    * Moved themes that are not maintained to contributions CVS repository.
- Database backend:
    * Changed to PEAR database abstraction layer.
    * Using ANSI SQL queries to be more portable.
- Rewrote the user system:
    * Added support for Drupal authentication through XML-RPC and through a Jabber server.
    * Added support for modules to add more user data.
    * Users may delete their own account.
    * Added who's new and who's online blocks.
- Changed block system:
    * Various hard coded blocks are now dynamic.
    * Blocks can now be enabled and/or be set by the user.
    * Blocks can be set to only show up on some pages.
    * Merged box module with block module.
- Node system:
    * Blogs can be updated.
    * Teasers (abstracts) on all node types.
    * Improved error checking.
    * Content versioning support.
    * Usability improvements.
- Improved book module to support text, HTML and PHP pages.
- Improved comment module to mark new comments.
- Added a general outliner which will let any node type be linked to a book.
- Added an update script that lets you upgrade from previous releases or on a day to day basis when using the development tree.
- Search module:
    * Improved the search system by making it context sensitive.
    * Added indexing.
- Various updates:
    * Changed output to valid XHTML.
    * Improved multiple sites using the same Drupal database support.
    * Added support for session IDs in URLs instead of cookies.
    * Made the type of content on the front page configurable.
    * Made each cloud site have its own settings.
    * Modules and themes can now be enabled/disabled using the administration pages.
    * Added URL abstraction for links.
    * Usability changes (renamed links, better UI, etc).
- Collaboratively revised and expanded the Drupal documentation.
932

933
Drupal 3.0.1, 2001-10-15
934
------------------------
935 936 937
- Various updates:
    * Added missing translations
    * Updated the themes: tidied up some HTML code and added new Drupal logos.
938

939
Drupal 3.0.0, 2001-09-15
940
------------------------
941 942 943 944 945 946 947 948 949 950 951 952 953
- Major overhaul of the entire underlying design:
    * Everything is based on nodes: nodes are a conceptual "black box" to couple and manage different types of content and that promotes reusing existing code, thus reducing the complexity and size of Drupal as well as improving long-term stability.
- Rewrote submission/moderation queue and renamed it to queue.module.
- Removed FAQ and documentation module and merged them into a "book module".
- Removed ban module and integrated it into account.module as "access control":
    * Access control is based on much more powerful regular expressions (regex) now rather than on MySQL pattern matching.
- Rewrote watchdog and submission throttle:
    * Improved watchdog messages and added watchdog filter.
- Rewrote headline code and renamed it to import.module and export.module:
    * Added various improvements, including a better parser, bundles and better control over individual feeds.
- Rewrote section code and renamed it to meta.module:
    * Supports unlimited amount of nested topics. Topics can be nested to create a multi-level hierarchy.
- Rewrote configuration file resolving:
954
    * Drupal tries to locate a configuration file that matches your domain name or uses conf.php if the former failed. Note also that the configuration files got renamed from .conf to .php for security's sake on mal-configured Drupal sites.
955 956
- Added caching support which makes Drupal extremely scalable.
- Added access.module:
957
    * Allows you to set up 'roles' (groups) and to bind a set of permissions to each group.
958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996
- Added blog.module.
- Added poll.module.
- Added system.module:
    * Moved most of the configuration options from hostname.conf to the new administration section.
    * Added support for custom "filters".
- Added statistics.module
- Added moderate.module:
    * Allows to assign users editorial/moderator rights to certain nodes or topics.
- Added page.module:
    * Allows creation of static (and dynamic) pages through the administration interface.
- Added help.module:
    * Groups all available module documentation on a single page.
- Added forum.module:
    * Added an integrated forum.
- Added cvs.module and cvs-to-sql.pl:
    * Allows to display and mail CVS log messages as daily digests.
- Added book.module:
    * Allows collaborative handbook writing: primary used for Drupal documentation.
- Removed cron.module and integrated it into conf.module.
- Removed module.module as it was no longer needed.
- Various updates:
    * Added "auto-post new submissions" feature versus "moderate new submissions".
    * Introduced links/Drupal tags: [[link]]
    * Added preview functionality when submitting new content (such as a story) from the administration pages.
    * Made the administration section only show those links a user has access to.
    * Made all modules use specific form_* functions to guarantee a rock-solid forms and more consistent layout.
    * Improved scheduler:
        + Content can be scheduled to be 'posted', 'queued' and 'hidden'.
    * Improved account module:
        + Added "access control" to allow/deny certain usernames/e-mail addresses/hostnames.
    * Improved locale module:
        + Added new overview to easy the translation process.
    * Improved comment module:
        + Made it possible to permanently delete comments.
    * Improved rating module
    * Improved story module:
        + Added preview functionality for administrators.
        + Made it possible to permanently delete stories.
    * Improved themes:
Dries's avatar
Dries committed
997
        + W3C validation on a best effort basis.
998 999 1000
        + Removed $theme->control() from themes.
        + Added theme "goofy".
- Collaboratively revised and expanded the Drupal documentation.
1001

1002
Drupal 2.0.0, 2001-03-15
1003
------------------------
1004 1005 1006 1007 1008 1009 1010 1011
- Rewrote the comment/discussion code:
    * Comment navigation should be less confusing now.
    * Additional/alternative display and order methods have been added.
    * Modules can be extended with a "comment system": modules can embed the existing comment system without having to write their own, duplicate comment system.
- Added sections and section manager:
    * Story sections can be maintained from the administration pages.
    * Story sections make the open submission more adaptive in that you can set individual post, dump and expiration thresholds for each section according to the story type and urgency level: stories in certain sections do not "expire" and might stay interesting and active as time passes by, whereas news-related stories are only considered "hot" over a short period of time.
- Multiple vhosts + multiple directories:
1012
    * You can set up multiple Drupal sites on top of the same physical source tree either by using vhosts or sub-directories.
1013 1014 1015 1016 1017
- Added "user ratings" similar to SlashCode's Karma or Scoop's Mojo:
    * All rating logic is packed into a module to ease experimenting with different rating heuristics/algorithms.
- Added "search infrastructure":
    * Improved search page and integrated search functionality in the administration pages.
- Added translation / localization / internationalization support:
1018
    * Because many people would love to see their website showing a lot less of English, and far more of their own language, Drupal provides a framework to set up a multi-lingual website or to overwrite the default English text in English.
1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035
- Added fine-grained user permission (or group) system:
    * Users can be granted access to specific administration sections. Example: a FAQ maintainer can be given access to maintain the FAQ and translators can be given access to the translation pages.
- Added FAQ module
- Changed the "open submission queue" into a (optional) module.
- Various updates:
    * Improved account module:
        + User accounts can be deleted.
        + Added fine-grained permission support.
    * Improved block module
    * Improved diary module:
        + Diary entries can be deleted
    * Improved headline module:
        + Improved parser to support more "generic" RDF/RSS/XML backend.
    * Improved module module
    * Improved watchdog module
    * Improved database abstraction layer
    * Improved themes:
Dries's avatar
Dries committed
1036
        + W3C validation on a best effort basis
1037 1038 1039 1040 1041
        + Added theme "example" (alias "Stone Age")
    * Added new scripts to directory "scripts"
    * Added directory "misc"
    * Added CREDITS file
- Revised documentation
Dries's avatar
Dries committed
1042

1043
Drupal 1.0.0, 2001-01-15
1044
------------------------
1045
- Initial release