07 January 2011

whats new in drupal7

So finally Drupal 7 has been released, following 3 years' intensive development. Hundreds of developers have contributed to make Drupal easier and more powerful than ever.
Drupal is an open source Content Management System written in PHP. Yes, another one. However, Drupal was one of the first good CMSs and it became a popular blogging and social community platform following its launch in 2001. Many popular sites use it today including The White House, The Economist, The New York Observer, HowToDoThings.com and Linux Journal.
  • Changes for site builders
    • new minimum requirements: PHP 5.2, MySQL 5.0, PostgreSQL 8.3
    • installation profiles (minimal / default)
    • SQLite support
    • new password strength indicator
    • time zone handling in core
    • story content type renamed article
    • default taxonomy tags
    • add-a-menu link
    • permission screen easier to read, each has descriptions that can be translated, grouped by content type
    • users can cancel own accounts
    • improved translation interface
    • forums have new pretty icons
    • content types now under site building, some new options available
    • modules page contains links to help pages
    • Ping and Throttle modules removed; user-customizable comment settings removed
    • configurable error reporting with easy to understand options
    • Advanced Help moved into core
    • usability testing by Mark Boulton Design, U of Baltimore
  • Changes for designers
    • page.tpl.php redesigned with wrapper classes, better CSS development without hacking PHP files, based on Zen theme
    • new theme: Stark -- like Chameleon, but with even less defined
    • improved javascript functions
    • cross-library compatibility (for jQuery) -- already works in D6
  • Changes for coders
    • SimpleTest module greatly improved (also in D6)
      • writing tests causes you to think problems through, find obscure bugs
      • know instantly if you've broken something
      • fix a test along with your bug fix, and it will never break again
    • http://testing.drupal.org can test patches for you before you contribute them! notifies you in 24 hours if patch doesn't work
    • Database: the Next Generation (DB:TNG)
      • uses PHP Database Objects (PDO)
      • dynamic query builder replaces hook_db_rewrite_sql()
    • FieldAPI (CCK in core)
      • swappable storage back-ends
      • CCK today makes each field its own table only if multiple values or multiple content types
      • FieldAPI makes each field its own table always -- means performance hit
    • Performance
      • registry table holds cache of every function, class, etc. from all modules for faster hook calls, better break-up of code in modules
      • new operation-specific hooks to remove need for $op parameter (also works in D6)
      • new _load_multiple hooks to load multiple items at once
      • file API improvements, image handling in core, native file fields, file management console
    • new hooks in D7
      • allow modules to see which other modules, taxonomy, etc. installed
      • improvements to Aggregator API
      • hook_page_alter() -- modules can alter other modules' generated pages!


Download the latest release version if you would like to test it out now.

Here is a summary of changes introduced to Drupal 7. You can also see the complete Drupal change log.