CHANGELOG.txt 53.4 KB
Newer Older
1

2
3
Drupal 8.0, xxxx-xx-xx (development version)
----------------------
4
5
6
- Improved entity system.
    * Added support for saving and deleting entities through the controller.
    * Entities are now classed objects, implementing EntityInterface.
7
8
9
    * Drupal now understands the concept of a "default" revision, tracked
      independently from the latest revision, allowing for the creation of
      drafts while the current revision stays published.
10
    * All entity types, not just nodes, now have support for revisions.
11
- Replaced the core routing system with one built on the Symfony2 framework.
12
13
14
15
- Configuration:
    * Added a centralized file-based configuration system.
    * Allows module authors to provide configuration in a standard format.
    * Implements functionality to get, set, add and remove configuration.
16
    * Includes ability to override configuration values with language variants
17
      and other runtime values.
18
- Added the CKEditor WYSIWYG editor. Provides a drag-and-drop configuration UI.
19
- Included the HTML5 Shiv library to support HTML5 elements in IE 8 and below.
20
21
- Included the following Symfony2 components:
    * ClassLoader - PSR-0-compatible autoload routines.
22
23
    * DependencyInjection - Flexible dependency injection container.
    * EventDispatcher - Object-oriented lightweight event handling system.
24
    * HttpFoundation - Abstraction objects for HTTP requests and responses.
25
    * HttpKernel - Core system for managing incoming HTTP request and responses.
webchick's avatar
webchick committed
26
27
28
    * Process - Allows for executing commands in a sub-process.
    * Routing - Framework for mapping incoming requests to controller
      information.
29
    * Yaml - Parser for YAML files.
webchick's avatar
webchick committed
30
- Included the Assetic asset management framework for PHP.
31
- Included Backbone.js and Underscore.js JavaScript frameworks.
32
- Support added for making HTTP requests through a proxy server.
33
- Removed modules from core.
34
35
36
    * The following modules have been removed from core, because contributed
      modules with similar functionality are available:
      * Blog
37
      * Dashboard
38
      * Profile
39
      * Trigger
40
- Removed the Garland theme from core.
41
- Removed the Statistics module's accesslog functionality and reports from core.
42
43
- Removed backwards-compatibility with 'magic_quotes_gpc'/'magic_quotes_runtime'
  PHP configuration settings. Both are required to be disabled.
44
45
- Universally Unique IDentifier (UUID):
    * Support for generating and validating UUIDs.
46
- JavaScript changes:
47
    * Updated to jQuery 1.7
48
    * Updated to jQuery UI 1.9
49
50
51
52
53
54
55
56
57
58
59
- Tremendously improved language support all around.
    * Great language improvements for users:
      * Improved language selection with user preference detection in the
        installer.
      * Moved base language support to Language module.
      * Greatly simplified the interface for setting up languages.
      * Improved browser language detection considerably.
      * Language domain and path prefix configuraton simplified and centralized;
        path prefix detection is now default.
      * Added HTML 5 language markup; language information added in markup in
        several more places.
60
      * Made it possible to assign external language codes to local languages.
61
62
      * Introduced the possibility of an administration-specific language
        preference for users.
63
64
65
66
    * Simplified and added new features in interface translation:
      * Made interface translation directly accessible from language list.
      * Centralized interface translation import to one directory.
      * Drupal can now be translated to English and English can be deleted.
67
      * Much improved built-in translation interface.
68
      * Added support for singular/plural discovery and translation.
69
70
      * Customized translations are tracked so your modifications can
        be identified and protected from translation update overwrites.
71
72
      * All Gettext files are now imported in chunks, better for low resource
        environments.
73
74
75
76
    * Improved content language support:
      * Freely orderable language selector in forms.
      * Made it possible to assign language to taxonomy terms, vocabularies
        and files.
77
      * Node type specific default language assignment is much more versatile.
78
      * Added entity language variance support to search module.
79
      * Search indexing and query preprocessors now get language information.
80
81
      * Unified content translation permission granularity with content editing
        permissions.
82
83
    * Better language based configuration
      * Added language options to block visibility.
84
85
    * Much improved language APIs for developers:
      * Added simple APIs and hooks to save/delete/update languages.
86
      * New Language class wraps language information, used universally.
87
88
89
90
91
92
93
94
95
96
97
      * Unified database schemas and APIs to make it easier to spot where
        language codes are referenced.
      * Made the language negotiation system APIs more consistent for
        developers.
      * Made it possible for users to have a preferred language separate from
        their user entity language.
      * The text formatter from t() is now available as format_string().
      * Added support for interface translation contexts in Drupal.t() and
        Drupal.formatPlural() in JavaScript.
      * Removed textgroups support from interface translation in favor of
        native configuration language support.
98
      * Reworked Gettext PO support to use pluggable read/write handlers.
99
      * Added language select form element in the Form API.
100
- Added E-mail field type to core.
101
- Added Link field type to core.
102
- Added Phone number field type to core.
103
- Added local image input filter, to enable secure image posting.
104
- Added Views and Views UI module to core.
105
- Added Entity Reference field type to core.
106
107

Drupal 7.0, 2011-01-05
webchick's avatar
webchick committed
108
----------------------
109
110
- Database:
    * Fully rewritten database layer utilizing PHP 5's PDO abstraction layer.
111
    * Drupal now requires MySQL >= 5.0.15 or PostgreSQL >= 8.3.
112
    * Added query builders for INSERT, UPDATE, DELETE, MERGE, and SELECT queries.
113
    * Support for master/slave replication, transactions, multi-insert queries,
114
      and other features.
115
    * Added support for the SQLite database engine.
116
117
    * Default to InnoDB engine, rather than MyISAM, on MySQL when available.
      This offers increased scalability and data integrity.
118
119
- Security:
    * Protected cron.php -- cron will only run if the proper key is provided.
120
121
122
123
124
    * 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.
125
126
    * Transformed the "Update status" module into the "Update manager" which
      can securely install or update modules and themes via a web interface.
127
- Usability:
128
129
130
    * 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.
131
    * Improved installer requirements check.
132
    * Improved support for integration of WYSIWYG editors.
133
    * Implemented drag-and-drop positioning for input format listings.
134
    * Implemented drag-and-drop positioning for language listing.
135
    * Implemented drag-and-drop positioning for poll options.
136
    * Provided descriptions and human-readable names for user permissions.
137
    * Removed comment controls for users.
138
    * Removed display order settings for comment module. Comment display
139
      order can now be customized using the Views module.
140
141
    * Removed the 'related terms' feature from taxonomy module since this can
      now be achieved with Field API.
142
143
    * Added additional features to the default installation profile, and
      implemented a "slimmed down" profile designed for developers.
144
145
    * Added a built-in, automated cron run feature, which is triggered by site
      visitors.
146
    * Added an administrator role which is assigned all permissions for
147
      installed modules automatically.
148
149
    * Image toolkits are now provided by modules (rather than requiring a
      manual file copy to the includes directory).
150
    * Added an edit tab to taxonomy term pages.
151
    * Redesigned password strength validator.
152
    * Redesigned the add content type screen.
153
    * Highlight duplicate URL aliases.
154
    * Renamed "input formats" to "text formats".
155
    * Moved text format permissions to the main permissions page.
156
    * Added configurable ability for users to cancel their own accounts.
157
158
    * Added "vertical tabs", a reusable interface component that features
      automatic summaries and increases usability.
159
    * Replaced fieldsets on node edit and add pages with vertical tabs.
160
161
162
- Performance:
    * Improved performance on uncached page views by loading multiple core
      objects in a single database query.
163
164
    * Improved performance for logged-in users by reducing queries for path
      alias lookups.
165
    * Improved support for HTTP proxies (including reverse proxies), allowing
166
      anonymous page views to be served entirely from the proxy.
167
168
- Documentation:
    * Hook API documentation now included in Drupal core.
169
170
- News aggregator:
    * Added OPML import functionality for RSS feeds.
171
    * Optionally, RSS feeds may be configured to not automatically generate feed blocks.
172
- Search:
173
    * Added support for language-aware searches.
174
- Aggregator:
Dries's avatar
Dries committed
175
    * Introduced architecture that allows pluggable parsers and processors for
176
      syndicating RSS and Atom feeds.
177
    * Added options to suspend updating specific feeds and never discard feeds
178
      items.
179
180
- Testing:
    * Added test framework and tests.
181
182
183
184
185
186
- 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
187
      corrected at admin/config/regional/settings.
188
189
190
    * 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.
191
192
    * User-configured time zones now serve as the default time zone for PHP
      date/time functions.
193
- Filter system:
194
    * Revamped the filter API and text format storage.
195
    * Added support for default text formats to be assigned on a per-role basis.
196
    * Refactored the HTML corrector to take advantage of PHP 5 features.
197
198
199
200
201
202
203
204
205
206
207
- 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.
208
209
- OpenID:
    * Added support for Gmail and Google Apps for Domain identifiers. Users can
210
      now login with their user@example.com identifier when example.com is powered
211
212
      by Google.
    * Made the OpenID module more pluggable.
213
- Added code registry:
214
    * Using the registry, modules declare their includable files via their .info file,
215
      allowing Drupal to lazy-load classes and interfaces as needed.
216
- Theme system:
217
218
219
220
    * 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.
221
    * Added Seven as the default administration theme.
222
223
224
225
226
227
    * 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.
228
    * Added Bartik as the default theme.
229
230
231
232
233
234
235
236
237
238
- 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_*().
239
    * Rewrote file handling to use PHP stream wrappers to enable support for
240
241
      both public and private files and to support pluggable storage mechanisms
      and access to remote resources (e.g. S3 storage or Flickr photos).
242
243
244
    * 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().
245
246
    * Added the hook_file_url_alter() hook, which makes it possible to serve
      files from a CDN.
247
    * Added a field specifically for uploading files, previously provided by
248
      the contributed module FileField.
249
250
251
252
253
- 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.
254
    * Added a field specifically for uploading images, previously provided by
255
      the contributed module ImageField.
256
257
- Added aliased multi-site support:
    * Added support for mapping domain names to sites directories.
258
259
260
- Added RDF support:
    * Modules can declare RDF namespaces which are serialized in the <html> tag
      for RDFa support.
261
262
263
    * Modules can specify how their data structure maps to RDF.
    * Added support for RDFa export of nodes, comments, terms, users, etc. and
      their fields.
264
265
266
267
268
269
- 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.
270
- Field API:
271
272
    * Custom data fields may be attached to nodes, users, comments and taxonomy
      terms.
273
274
    * Node bodies and teasers are now Field API fields instead of
      being a hard-coded property of node objects.
275
276
    * In addition, any other object type may register with Field API
      and allow custom data fields to be attached to itself.
277
    * Provides most of the features of the former Content Construction
278
      Kit (CCK) module.
279
280
    * Taxonomy terms are now Field API fields that can be added to any fieldable
      object.
281
282
283
- Installer:
    * Refactored the installer into an API that allows Drupal to be installed
      via a command line script.
284
- Page organization
285
    * Made the help text area a full featured region with blocks.
286
    * Site mission is replaced with the highlighted content block region and
287
      separate RSS feed description settings.
288
    * The footer message setting was removed in favor of custom blocks.
289
290
    * Made the main page content a block which can be moved and ordered
      with other blocks in the same region.
291
    * Blocks can now return structured arrays for later rendering just
292
      like page callbacks.
293
294
- Translation system
    * The translation system now supports message context (msgctxt).
295
    * Added support for translatable fields to Field API.
296
- JavaScript changes
297
    * Upgraded the core JavaScript library to jQuery version 1.4.4.
298
    * Upgraded the jQuery Forms library to 2.52.
299
    * Added jQuery UI 1.8.7, which allows improvements to Drupal's user
300
      experience.
301
- Better module version support
302
    * Modules now can specify which version of another module they depend on.
303
304
305
306
307
308
- 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
309
310
311
312
313
314
315
- 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.
316
317
318
319
- Actions system
    * Simplified definitions of actions and triggers.
    * Removed dependency on the combination of hooks and operations. Triggers
      now directly map to module hooks.
320
321
322
323
324
- 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.
325
326

Drupal 6.0, 2008-02-13
Steven Wittens's avatar
Steven Wittens committed
327
----------------------
328
- New, faster and better menu system.
329
- New watchdog as a hook functionality.
330
331
332
333
334
   * 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
335
     default in the default installation profile.
336
337
   * Extended the database log module so log messages can be filtered.
   * Added syslog module: useful for monitoring large Drupal installations.
338
- Added optional e-mail notifications when users are approved, blocked, or
339
  deleted.
Steven Wittens's avatar
Steven Wittens committed
340
- Drupal works with error reporting set to E_ALL.
341
342
- Added scripts/drupal.sh to execute Drupal code from the command line. Useful
  to use Drupal as a framework to build command-line tools.
343
- Made signature support optional and made it possible to theme signatures.
344
345
- Made it possible to filter the URL aliases on the URL alias administration
  screen.
346
- Language system improvements:
Dries's avatar
Dries committed
347
    * Support for right to left languages.
348
349
    * Language detection based on parts of the URL.
    * Browser based language detection.
Dries's avatar
Dries committed
350
    * Made it possible to specify a node's language.
351
    * Support for translating posts on the site to different languages.
352
    * Language dependent path aliases.
353
    * Automatically import translations when adding a new language.
354
    * JavaScript interface translation.
Dries's avatar
Dries committed
355
    * Automatically import a module's translation upon enabling that module.
356
- Moved "PHP input filter" to a standalone module so it can be deleted for
357
  security reasons.
358
359
360
361
- Usability:
    * Improved handling of teasers in posts.
    * Added sticky table headers.
    * Check for clean URL support automatically with JavaScript.
362
363
    * Removed default/settings.php. Instead the installer will create it from
      default.settings.php.
364
    * Made it possible to configure your own date formats.
365
    * Remember anonymous comment posters.
366
    * Only allow modules and themes to be enabled that have explicitly been
367
      ported to the correct core API version.
368
369
    * Can now specify the minimum PHP version required for a module within the
      .info file.
370
371
    * Drupal core no longer requires CREATE TEMPORARY TABLES or LOCK TABLES
      database rights.
372
    * Dynamically check password strength and confirmation.
373
    * Refactored poll administration.
374
    * Implemented drag-and-drop positioning for blocks, menu items, taxonomy
375
      vocabularies and terms, forums, profile fields, and input format filters.
376
- Theme system:
377
378
379
380
    * 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.
381
    * Used the Garland theme for the installation and maintenance pages.
382
    * Added theme preprocess functions for themes that are templates.
383
    * Added support for themeable functions in JavaScript.
384
- Refactored update.php to a generic batch API to be able to run time-consuming
385
  operations in multiple subsequent HTTP requests.
386
387
388
389
- 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.
390
    * Made it possible to import interface translations during installation.
391
392
393
- Added the HTML corrector filter:
    * Fixes faulty and chopped off HTML in postings.
    * Tags are now automatically closed at the end of the teaser.
394
- Performance:
395
    * Made it easier to conditionally load .include files and split up many core
396
      modules.
397
    * Added a JavaScript aggregator.
398
399
400
401
    * 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.
402
- File handling improvements:
403
404
    * 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,
405
406
      extensions, and image resolution.
    * Added ability to create and remove temporary files during a cron job.
407
- Forum improvements:
408
    * Any node type may now be posted in a forum.
409
- Taxonomy improvements:
410
    * Descriptions for terms are now shown on taxonomy/term pages as well
411
412
413
      as RSS feeds.
    * Added versioning support to categories by associating them with node
      revisions.
414
- Added support for OpenID.
415
416
417
- 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.
418
419
  Sites deploying from CVS should use http://drupal.org/project/cvs_deploy.
  Advanced settings provided by http://drupal.org/project/update_advanced.
420
- Upgraded the core JavaScript library to jQuery version 1.2.3.
421
422
- Added a new Schema API, which provides built-in support for core and
  contributed modules to work with databases other than MySQL.
423
424
- Removed drupal.module. The functionality lives on as the Site network
  contributed module (http://drupal.org/project/site_network).
425
426
- 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
427

428
429
430
431
432
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
433
434
435
436
437
438
439
440
441
442
443
444
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
445
446
447
448
449
Drupal 5.4, 2007-12-05
----------------------
- fixed a variety of small bugs.
- fixed a security issue (SQL injection), see SA-2007-031

450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
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
471
472
Drupal 5.0, 2007-01-15
----------------------
Steven Wittens's avatar
Steven Wittens committed
473
474
475
476
477
478
479
- 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
480
    * Install pre-made installation profiles or distributions
Steven Wittens's avatar
Steven Wittens 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
516
517
518
519
520
521
    * 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.
522
- PHP Template engine:
Steven Wittens's avatar
Steven Wittens committed
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
    * 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.
540
- Form API:
Steven Wittens's avatar
Steven Wittens committed
541
542
543
544
545
546
    * 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.
547

Gábor Hojtsy's avatar
Gábor Hojtsy committed
548
549
550
551
552
553
554
555
556
557
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
558
559
560
561
Drupal 4.7.9, 2007-12-05
------------------------
- fixed a security issue (SQL injection), see SA-2007-031

562
563
564
565
566
567
568
569
570
571
572
573
574
575
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

576
577
Drupal 4.7.5, 2007-01-05
------------------------
Steven Wittens's avatar
Steven Wittens committed
578
579
- Fixed security issue (XSS), see SA-2007-001
- Fixed security issue (DoS), see SA-2007-002
580
581
582

Drupal 4.7.4, 2006-10-18
------------------------
Steven Wittens's avatar
Steven Wittens committed
583
584
585
- 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
586
587
588

Drupal 4.7.3, 2006-08-02
------------------------
Steven Wittens's avatar
Steven Wittens committed
589
- Fixed security issue (XSS), see SA-2006-011
590
591
592

Drupal 4.7.2, 2006-06-01
------------------------
Steven Wittens's avatar
Steven Wittens committed
593
594
595
- Fixed critical upload issue, see SA-2006-007
- Fixed taxonomy XSS issue, see SA-2006-008
- Fixed a variety of small bugs.
596
597
598

Drupal 4.7.1, 2006-05-24
------------------------
Steven Wittens's avatar
Steven Wittens committed
599
600
601
- Fixed critical SQL issue, see SA-2006-005
- Fixed a serious upgrade related bug.
- Fixed a variety of small bugs.
602

Dries's avatar
Dries committed
603
Drupal 4.7.0, 2006-05-01
604
------------------------
Steven Wittens's avatar
Steven Wittens committed
605
606
607
608
609
610
611
612
613
614
615
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
- 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.
646
- XML-RPC:
Steven Wittens's avatar
Steven Wittens committed
647
648
649
650
651
652
653
654
655
656
657
658
659
    * 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.
660
- PostgreSQL support:
Steven Wittens's avatar
Steven Wittens committed
661
662
663
664
665
    * Removed dependency on PL/pgSQL procedural language.
- Menu system:
    * Added support for external URLs.
- Queue module:
    * Removed from core.
666
- HTTP handling:
Steven Wittens's avatar
Steven Wittens committed
667
668
    * Added support for a tolerant Base URL.
    * Output URIs relative to the root, without a base tag.
Dries's avatar
Dries committed
669

670
671
Drupal 4.6.11, 2007-01-05
-------------------------
Steven Wittens's avatar
Steven Wittens committed
672
673
- Fixed security issue (XSS), see SA-2007-001
- Fixed security issue (DoS), see SA-2007-002
674
675
676

Drupal 4.6.10, 2006-10-18
------------------------
Steven Wittens's avatar
Steven Wittens committed
677
678
679
- 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
680
681
682

Drupal 4.6.9, 2006-08-02
------------------------
Steven Wittens's avatar
Steven Wittens committed
683
- Fixed security issue (XSS), see SA-2006-011
684
685
686

Drupal 4.6.8, 2006-06-01
------------------------
Steven Wittens's avatar
Steven Wittens committed
687
688
- Fixed critical upload issue, see SA-2006-007
- Fixed taxonomy XSS issue, see SA-2006-008
689
690
691

Drupal 4.6.7, 2006-05-24
------------------------
Steven Wittens's avatar
Steven Wittens committed
692
- Fixed critical SQL issue, see SA-2006-005
693

694
695
Drupal 4.6.6, 2006-03-13
------------------------
Steven Wittens's avatar
Steven Wittens committed
696
- Fixed bugs, including 4 security vulnerabilities.
697

Dries's avatar
Dries committed
698
699
Drupal 4.6.5, 2005-12-12
------------------------
Steven Wittens's avatar
Steven Wittens committed
700
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
701

Dries's avatar
Dries committed
702
Drupal 4.6.4, 2005-11-30
Dries's avatar
Dries committed
703
------------------------
Steven Wittens's avatar
Steven Wittens committed
704
- Fixed bugs, including 3 security vulnerabilities.
Dries's avatar
Dries committed
705

Dries's avatar
Dries committed
706
707
Drupal 4.6.3, 2005-08-15
------------------------
Steven Wittens's avatar
Steven Wittens committed
708
- Fixed bugs, including a critical "arbitrary PHP code execution" bug.
Dries's avatar
Dries committed
709

Dries's avatar
Dries committed
710
711
Drupal 4.6.2, 2005-06-29
------------------------
Steven Wittens's avatar
Steven Wittens committed
712
- Fixed bugs, including two critical "arbitrary PHP code execution" bugs.
Dries's avatar
Dries committed
713

Dries's avatar
Dries committed
714
Drupal 4.6.1, 2005-06-01
Dries's avatar
Dries committed
715
------------------------
Steven Wittens's avatar
Steven Wittens committed
716
- Fixed bugs, including a critical input validation bug.
Dries's avatar
Dries committed
717

Dries's avatar
Dries committed
718
719
Drupal 4.6.0, 2005-04-15
------------------------
720
- PHP5 compliance
Steven Wittens's avatar
Steven Wittens committed
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
- 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.
761

762
763
Drupal 4.5.8, 2006-03-13
------------------------
Steven Wittens's avatar
Steven Wittens committed
764
- Fixed bugs, including 3 security vulnerabilities.
765

Dries's avatar
Dries committed
766
767
Drupal 4.5.7, 2005-12-12
------------------------
Steven Wittens's avatar
Steven Wittens committed
768
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
769

Dries's avatar
Dries committed
770
Drupal 4.5.6, 2005-11-30
Dries's avatar
Dries committed
771
------------------------
Steven Wittens's avatar
Steven Wittens committed
772
- Fixed bugs, including 3 security vulnerabilities.
Dries's avatar
Dries committed
773

Dries's avatar
Dries committed
774
775
Drupal 4.5.5, 2005-08-15
------------------------
Steven Wittens's avatar
Steven Wittens committed
776
- Fixed bugs, including a critical "arbitrary PHP code execution" bug.
Dries's avatar
Dries committed
777

Dries's avatar
Dries committed
778
779
Drupal 4.5.4, 2005-06-29
------------------------
Steven Wittens's avatar
Steven Wittens committed
780
- Fixed bugs, including two critical "arbitrary PHP code execution" bugs.
Dries's avatar
Dries committed
781
782
783

Drupal 4.5.3, 2005-06-01
------------------------
Steven Wittens's avatar
Steven Wittens committed
784
- Fixed bugs, including a critical input validation bug.
Dries's avatar
Dries committed
785

Dries's avatar
Dries committed
786
787
Drupal 4.5.2, 2005-01-15
------------------------
Steven Wittens's avatar
Steven Wittens committed
788
- Fixed bugs: a cross-site scripting (XSS) vulnerability has been fixed.
Dries's avatar
Dries committed
789

Dries's avatar
Dries committed
790
791
Drupal 4.5.1, 2004-12-01
------------------------
Steven Wittens's avatar
Steven Wittens committed
792
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
793

Dries's avatar
   
Dries committed
794
795
Drupal 4.5.0, 2004-10-18
------------------------
Steven Wittens's avatar
Steven Wittens committed
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
- 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
844
    * Added support for role-dependent filtering, through input formats
845
- UI translation:
Steven Wittens's avatar
Steven Wittens committed
846
847
    * Managing translations is now completely done through the administration interface
    * Added support for importing/exporting gettext .po files
Dries's avatar
Dries committed
848

Dries's avatar
Dries committed
849
850
Drupal 4.4.3, 2005-06-01
------------------------
Steven Wittens's avatar
Steven Wittens committed
851
- Fixed bugs, including a critical input validation bug.
Dries's avatar
Dries committed
852

Dries's avatar
Dries committed
853
854
Drupal 4.4.2, 2004-07-04
------------------------
Steven Wittens's avatar
Steven Wittens committed
855
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
856

857
Drupal 4.4.1, 2004-05-01
Dries's avatar
Dries committed
858
------------------------
Steven Wittens's avatar
Steven Wittens committed
859
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
860
861
862

Drupal 4.4.0, 2004-04-01
------------------------
Steven Wittens's avatar
Steven Wittens committed
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
- 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.
Dries's avatar
   
Dries committed
900

Dries's avatar
   
Dries committed
901
902
Drupal 4.3.2, 2004-01-01
------------------------
Steven Wittens's avatar
Steven Wittens committed
903
- Fixed bugs: no critical bugs were identified.
Dries's avatar
   
Dries committed
904

Dries's avatar
Dries committed
905
906
Drupal 4.3.1, 2003-12-01
------------------------
Steven Wittens's avatar
Steven Wittens committed
907
- Fixed bugs: no critical bugs were identified.
Dries's avatar
Dries committed
908

Kjartan's avatar
Kjartan committed
909
Drupal 4.3.0, 2003-11-01
Dries's avatar
   
Dries committed
910
------------------------
Steven Wittens's avatar
Steven Wittens committed
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
- 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.
Dries's avatar
   
Dries committed
931

Dries's avatar
   
Dries committed
932
Drupal 4.2.0, 2003-08-01
Dries's avatar
   
Dries committed
933
------------------------
Steven Wittens's avatar
Steven Wittens committed
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
- 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.
958

Dries's avatar
Dries committed
959
Drupal 4.1.0, 2003-02-01
Dries's avatar
   
Dries committed
960
------------------------
Steven Wittens's avatar
Steven Wittens committed
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
- 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.
Dries's avatar
   
Dries committed
984
985

Drupal 4.0.0, 2002-06-15
Dries's avatar
   
Dries committed
986
------------------------
Steven Wittens's avatar
Steven Wittens committed
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
- 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.