Added missing icon in t3skin for the divider content element
[Packages/TYPO3.CMS.git] / NEWS.txt
index dd9bb60..d0e10c8 100644 (file)
--- a/NEWS.txt
+++ b/NEWS.txt
 ************************************************************************
-CHANGES & IMPROVEMENTS in TYPO3 4.0
+CHANGES & IMPROVEMENTS between TYPO3 4.2 and 4.3
 (for technical details see ChangeLog)
 ************************************************************************
 
-Installation/Upgrade
-====================
+General
+=======
 
-       * TYPO3 4.0 ships with an empty typo3/ext folder. Sites which depend on them must reinstall this extensions.
-       * TYPO3 4.0 uses a new localization scheme (typo3conf/l10n/). To install language packs use the extension managers function for translation handling. (Exensions csh_<language> are obsolete!)
-       * TYPO3 4.0  doesn't need symbolic links anymore (on Unix systems); no more duplicate files (on Windows systems)
-       * Existing symbolic links from index.php to <TYPO3_root>/tslib/index_ts.php must be changed to <TYPO3_src>/index.php (Unix).
-       * The symbolic links from nimbus.ttf and vera.ttf to arial.ttf and verdana.ttf have been removed. If you need those fonts create the symbolic links manually (Unix) or copy the fonts (Windows).
+       * TYPO3 requires PHP 5.2 now
 
-New features
-============
+       * Support for OpenID auhentication with a new system extension for both FE and BE.
+         Any user with a valid OpenID identifier may log in when the OpenID authentication
+         is successful.
 
-       * Workspaces: this new system extension brings offline editing to TYPO3 (using the built-in versioning) - add/change content in a "draft" workspace and publish the changes into the "live" workspace
-       * DBAL 1.0: this new system extension offers database independence (currently working with Oracle and PostgreSQL)
-       * The 1-2-3 quick install has been enhanced
-       * a new update wizard of the installer handles compatibility issues
-       * the new default RTE (rtehtmlarea) is compatible with more browsers and operating systems (Firefox, Opera; Linux, BSD, Mac OS X)
-       * "sliding" of content elements similar to TypoScript's getText level* feature (integration of extension "kb_cont_slide" by Bernhard Kraft)
-       * User admin module: switch back to admin user after user switch (SU-mode), "create new user" link
-       * System log (eg DB errors; configured via $CONF_VARS['SYS']['systemLog']
-       * Sharing of sessions between subdomains (configured via $CONF_VARS['SYS']['domainCookie'])
-
-Improvements
-============
+       * The JavaScript framework ExtJS was integrated as common widget library. This
+         collection offers developers an easy but powerful option to create nice looking
+         user interfaces by reusing predefined objects. For example, ExtJS supports grid
+         views, dialog windows and dynamic panels. It is currently used in the TYPO3 Core
+         for the dialog showing that a session in the backend has expired and for the
+         new recycler.
 
-       * the undo and history feature has been enhanced: rollback/preview on page and record level; history includes now inserts and deletes
-       * improved indexed search (template support, faster) - many thanks to Udo von Eynern for implementing the template support!
-       * The import/export tool now automatically resolves extension dependencies of T3D files (.t3d)
-       * the page type "external link" supports HTTPS (thanks to Marc Bastian Heinrichs)
-       * the extension manager has been overhauled and benefits from new enhancements of TER 2.0
-       * the GIFBUILDER objects may create true colour images (PNG and JPEG)
-       * typolinks and HMENUs (type "language") may preserve the query parameters
+       * The JavaScript libraries are updated to prototype 1.6.0.3 and script.aculo.us 1.8.2.
 
-Usability
-=========
+       * Integration of RSA Authentication Service: Using a the public-key cryptography allows
+         to transfer sensitive data over a secure channel, even if the website does not support
+         HTTPS. This feature allows to store password data as salted hash value. The RSA
+         authentication service can be used in frontend and backend by enabling the system
+         extension rsaauth.
+         Note: The service requires either the openssl PHP extension, or the openssl binary.
 
-       * pages can be moved by drag and drop within the page tree (thanks to Stephane Schitter)
-       * faster context menues (implemented with AJAX)
-       * fixed fonts are used in BE configuration fields for increased readability
-       * tab indenting in BE configuration fields for enhanced layout
-       * files can be created or uploaded with buttons in the Web>List content frame
-       * improved content element wizard (eg empty categories are removed)
-       * RTE wizard has now a save-and-close button
-       * the admin panel uses HTTP GET instead of POST (no more browser warnings when reloading a previewed page)
+       * Integration of PHP Autoloader:  This feature allows to have only those files in memory
+         that are really required for an accordant application. The performace improves
+         dramatically. The PHP files are looked up using a registry file returns a simple array
+         mapping PHP class names to accordant file names:
+               + t3lib/core_autoload.php contains all classes in t3lib/tslib or the TYPO3 Core
+               + [extension_key]/ext_autoload.php contains all classes of that TYPO3 extension
 
-Access Control
-==============
+       * Extbase and Fluid integration: Extbase and Fluid are backports from FLOW3 to bring MVC
+         and a very flexible templating engine to TYPO3 4.x. Extbase can be used in TYPO3 4.3 for
+         frontend extensions only. The techniques used by these two packages are the same as in
+         FLOW3/TYPO3 5.0 - thus, it's possible to develop future-proof extensions now and migrate
+         them easily when TYPO3 5.0 is released.
 
-       * FE-groups may now be nested (integration of extension "fenestgrp" by Glenn Gibb)
-       * pages and content elements can have more than one group assigned (integration of extension "ingmar_accessctrl" by Ingmar Schlecht)
+Backend
+=======
 
-Security
-=========
+       * Extension Manager: You can now set a new option "excludeFromUpdates" in every
+         extensions' ext_emconf.php array. This way, it is a) not shown in the
+         list of extensions to update and b) is shown a exclamation mark in order to
+         prevent updates for this extension. This is very useful if you made local changes
+         to an extension and don't want any admin to overwrite them.
 
-       * New option for lockSSL: get redirected to standard http after BE login with SSL
+       * The TypoScript editor "t3editor" was enhanced with code-completion. Now you get
+         context-sensitive suggestions about possible properties while entering TypoScript.
 
-Accessibility
-=============
+       * The recycling of deleted records is improved since most elements were not removed
+         physically in TYPO3. The recycler offers the possibilities of cleaning up the garbage
+         collection and to restore data again. Based on an ExtJS interface it's possible to
+         get a quick overview of the accordant elements, filter the resultset and execute the
+         desired actions. This new feature is the modernized and core-specific version of the
+         kj_recycler extension, that has been available in the TER for years now.
+
+       * The permissions on file operations can now be set on a per-group basis. New back-end
+         users now don't have any file permissions by default, since this has moved to back-end
+         user groups and will apply automatically for each new group being created.
+         The default settings for new groups are the following:
+               + Move, delete, rename and create new directories
+               + Upload, copy, move, delete and rename files
+               + Unzip files
+
+       * The popup telling an user that his session has expired was replaced by a dialog window.
+
+       * The workspace selector has been turned to an item in the toolbar menu.
+
+       * The elements shown when creating new content elements (like "regular text element" etc.)
+         can be configured, modified and extended by Page TSconfig "mod.wizards.newContentElement".
+
+       * The tables shown when creating new records in the Web>List module are grouped by their scope
+         or extension now. The order can be modified by Page TSconfig "mod.wizards.newRecord.order".
+
+       * Elements on each table in the Web>List module can be collapsed or expanded now.
+         In the view showing a single table with many elements, a pagination helps to
+         get through them.
+
+       * Uploading files is now available with an optional Flash Uploader which shows a 
+         nice widget with information on the upload progress. It makes it possible to select
+         multiple files at once. Enable the Flash Uploader by checking the appropriate checkbox 
+         in the User Setup, reload the Backend and make sure that your browser has the 
+         latest version of Flash (Flash v9+) installed.
+
+       * It is possible now to temporarily lock down the backend for system maintenance. Editors
+         will see an overlay with an message notifying them that the backend is locked. When the
+         lock is removed, editors can continue without having to re-login.
+         The lock is enabled by placing this file:
+               typo3conf/LOCK_BACKEND
+
+       * The backend gateway for manipulating files (uploading, renaming, copying) TCEfile is now
+         separated from the file typo3/tce_file.php and put in a new file and class in
+         typo3/classes/class.typo3_tcefile.php. There is now also a new AJAXid (TYPO3_tcefile::process)
+         to use this functionality in AJAX-based environments as well.
 
-       * TYPO3's output is now valid XHTML (the conforming DTD is configurable)
-       * the overall DTD and the XHTML-DTD may be set indepenently (config.docytpe and config.xhtmlDoctype)
-       * output of CSS styled content is now accessible by default (mailforms, menus, sitemaps) - many thanks to Ernesto Baschny, kudos also to Sebastian Kurfuerst and Michael Stucki
-       * images have accessibility features (integration of extension "cron_cssstyledimgtext" by Ernesto Baschny)
-       * the "table" content element has now limited accessibility support (integration of extension "accessible_tables" by Rupert Germann)
-       * indexed search comes with an additional template without any HTML tables - thanks to Robert Markula and Michael Stucki
+       * The backend login page is now localized. The language for the login page where no
+         user-defined language is available yet is detected by the preferred browser language. If you
+         have previously changed the login labels via $TYPO3_CONF_VARS['BE']['loginLabels'] then
+         these will be used, however it is recommended to overload the XML file with your own XML file
+         and $TYPO3_CONF_VARS['BE']['XLLfile']['EXT:lang/locallang_login.xml']. These will only be used
+         once you remove the altered "loginLabels" configuration option from typo3conf/localconf.php.
 
-Configuration
+Frontend
+========
+
+       * The message log of the admin panel will report failures to set the locale
+
+       * Integrated functionality of extension jb_status_code into core:
+         It is now possible to specify a redirection code (301, 302, 303 or
+         307) together with a domain redirection in a sys_domain record.
+
+       * Added option named "additionalAbsRefPrefixDirectories" for Frontend in the Install tool.
+         This option is useful if the installation uses non-TYPO3 applications and links to
+         them from extensions. Earlier TYPO3 prepended only media/, typo3conf/ext/ and
+         fileadmin/ directories automatically with config.absRefPrefix. Using the new variable
+         administrators can tell TYPO3 to prepend also other directories inside the site root
+         with config.absRefPrefix.
+
+       * Added new Install tool option named "dbClientCompress". This option will
+         enable MySQL compression for network traffic. This is useful if
+         MySQl is not on the same host as the web server. Do not use this option if MySQL
+         is on the same host because it will only slow down the process. However if MySQL
+         is on another host, this option may improve performance significally.
+
+       * CSS styled content was split into separate files for each compatibility versions of TYPO3
+         (3.8, 3.9, 4.2 and current). When including the static template of css_styled_content,
+         a specific version must be chosen (also see Compatibility below).
+
+       * The GIFBUILDER now supports automatic line breaks by defining a maximum width of the
+         element to be rendered. The new TypoScript properties are "breakWidth" and "breakSpace".
+
+       * Image rendering now cuts off the profile data of images by default to reduce file sizes.
+         This behaviour can be modified or disabled by changing [GFX][im_stripProfileCommand] in
+         the install tool or by setting the TypoScript property "stripProfile" on IMAGE objects.
+
+Compatibility
 =============
 
-       * the new := assignment for Typoscript allows now parse time maniplation of TS values (eg "obj.val := appendString(foobar)", "obj.list := addToList(3,5,9)")
-       * TypoScript conditions may be combined with OR and AND
+       * A deprecation log has been introduced to track calls to deprecated/outdated methods
+         in the TYPO3 Core. Developers have to make sure to adjust their code to avoid using
+         this old functionality since deprecated methods will be removed in future TYPO3 releases!
+         The information can be found in /typo3conf/deprecation_[hash-value].log
+
+       * The caching system has been revamped. It is not possible to query the cache tables directly.
+         Any compliant extension has to use the new caching framework.
+
+       * The simulateStaticDocument functionality (URLs like "MyPage.13.0.html" instead of "index.php?id=13")
+         was extracted and put to a separate system extension "simulatestatic".
+
+       * The frontend editing functionality was extracted into a separate system extension "fe_edit".
+
+       * The help modules "about" and "cshmanual" were extracted into separate system extensions with the same name.
 
-API
-===
+       * As mentioned in "Frontend" CSS styled content has been split into several files.
+         The update wizard can switch the versions of the static includes by refering to
+         the TYPO3 compatibility version.
 
-       * loading of scripts into the default URL with index.php?eID=<key> (using this feature showpic.php has been removed from the TYPO3 root directory)
-       * TCA form fields may have custom PHP and Javascript evaluation (thanks to Thomas Hempel)
-       * TCA form fields may be set to readonly (HTML attribute)
-       * TCA fields of type "none" have new rendering options (date and other formats)
-       * Direct mail has been removed from the core (t3lib/class.t3lib_dmailer.php)
-       * the currenty XHTML-DTD setting may be queried via $GLOBALS['TSFE']->xhtmlDoctype
-       * t3lib_div::sysLog() may be used to log errors
+Development
+===========
 
-Notable Bugfixes
+       * t3lib_div::makeInstance now supports singletons. To mark a class as a
+         singleton it must implement the t3lib_singleton interface.
+
+       * A new caching framework has been added. It allows extensions to store temporary data
+         transparently to different cache back ends (database, file system or memory).
+
+       * Frontend plugins now can convert themselves from USER to USER_INT on the fly. This
+         is useful for plugins who can disallow caching using a TSConfig option (for example,
+         tt_news). Earlier plugins had to use $GLOBALS['TSFE']->set_no_cache(), which caused
+         huge performance problems. Now plugin simply need to call
+         $this->cObj->convertToUserIntObject() and return immediately without generating any
+         content.
+         Objects can find their current execution mode by calling $this->cObj->getUserObjectType().
+         This function can return either tslib_cObj::OBJECTTYPE_USER (if object runs as USER)
+         or tslib_cObj::OBJECTTYPE_USER_INT (if object is running as USER_INT). Here the code
+         example:
+               function main() {
+                       ....
+                       if (!$this->conf['allowCaching'] && $this->cObj->getUserObjectType() == tslib_cObj::OBJECTTYPE_USER) {
+                               $this->cObj->convertToUserIntObject();
+                               return '';
+                       }
+
+       * Class tslib_eidtools is enhanced with new methods for eID/AJAX applications:
+               static function initLanguage($language = 'default');
+                       Creates $GLOBALS['LANG'] for the given language
+               static function initTCA();
+                       Loads 'ctrl' sections for TCA tables from all installed extensions
+               static function initExtensionTCA($extensionKey);
+                       Similar to initTCA() but loads the table only for the given extension
+
+       * Class t3lib_extMgm has new methods to enhance palettes:
+               t3lib_extMgm::addFieldsToAllPalettesOfField($table, $field, $addFields, $insertionPosition = '');
+                       Adds new fields to all palettes of an existing field.
+               t3lib_extMgm::addFieldsToPalette($table, $palette, $addFields, $insertionPosition = '');
+                       Adds new fields to a palette.
+
+       * A random byte generator has been added to t3lib_div::generateRandomBytes() which can
+         be used for cryptographic operations in the TYPO3 Core or in any other extension.
+
+TypoScript changes
+==================
+
+       * Custom sub categories can be used in TypoScript constants like the following:
+               #customsubcategory=limits=LLL:EXT:devlog/locallang.xml:limits
+
+Database changes
 ================
 
-       * versioning works with all MySQL versions (3.23.x and higher)
-       * the relogin popup on session timeout in BE won't appear again after clicking "No"
-       * when copying a file into the same folder in the "Filelist" module, it is automatically renamed
-       * JSMENU, editPanel and feAdmin works now with multi-byte character sets (eg UTF-8)
+       * The database tables cache_hash, cache_pagesections and cache_pages have been
+         changed due to a move to the new caching framework.
+
+       * Reference indexes storing table names have been extended from 40 to 255 chars
+
+       * The database table pages_language_overlay was extended by several fields to
+         support an alternative URL or a shortcut dependent on localization.
+
+       * The field t3ver_label has been extended from 40 to 255 chars in the tables
+         pages, pages_language_overlay, sys_template and tt_content.
+
+DBAL
+====
+
+       * ...
+
+
+Backend skin
+============
+
+       * ...
+
+
+Speed improvements
+==================
+
+       * PHP classes for frontend plugins are now loaded only if they are used to render
+         content by enabling the "includeLibs" property also for USER objects in TypoScript.
+         In the past, all available class files for frontend plugins were loaded so this new
+         feature increases performance by reducing memory consumption.
+
+       * TYPO3 now enables client caching of JavaScript, CSS and image files by using .htaccess
+         files in various directories. This may cause problems if mod_expires is not enabled
+         in the Apache configuration. See the FAQ section in the INSTALL.txt about disabling
+         these files if necessary.
+
+Important bugfixes
+==================
+
+       * ...
+
+Currently unsupported
+=====================
 
+       * Missing features concerning the disposal of Inline Relational Record Editing (IRRE)
+               -> Workspaces and Versioning are currently not supported
+               -> FlexForms using the TCA type 'inline' are currently not supported/tested
+               -> Import/Export (sysext tx_impexp) might not work correctly in special cases