small css adjustment to make the new image orientation icons fit in the select box...
[Packages/TYPO3.CMS.git] / NEWS.txt
index 095b3e2..c2ede5b 100644 (file)
--- a/NEWS.txt
+++ b/NEWS.txt
 ************************************************************************
-CHANGES & IMPROVEMENTS between TYPO3 4.0 and 4.1
+CHANGES & IMPROVEMENTS between TYPO3 4.1 and 4.2
 (for technical details see ChangeLog)
 ************************************************************************
 
 General
 ==================
 
-       * New PHP version requirement: You need to have at least PHP 4.3.0 in order to run TYPO3 4.1
+       * New PHP version requirement: You need to have at least PHP 5.2.0 in order to run TYPO3 4.2
+       * Workspaces allow moving of elements (for details, see Inside TYPO3, Core API, and this video: http://castor.t3o.punkt.de/files/moving_in_workspaces2.mp4 (/.mov for better quality)
+       * The new backend of the "Cleaner Backend Project" (typo3/backend.php) replaced the old module (typo3/alt_main.php)
 
 Backend
 ==================
 
-       * Inline Relational Record Editing (IRRE)
-               -> It's now possible to create and edit child records of a record as subforms inside of the form view in the backend
-               -> Therefore, the new TCA field type "inline" has been introduced
-               -> See http://wiki.typo3.org/index.php/Inline_Relational_Record_Editing for details
-
-       * Bidirectional MM relations: It's now possible to configure MM relations from both sides of the relation.
-               -> E.g. an employment relation could now be edited from both the "person" as well as the "company" side. ("employers" of "persons" and "employees" of "companies")
-
-       * BE who-is-online
-               -> The Tools->Useradmin module now displays which BE users are currently online.
-
-       * UTF-8 for filenames
-               -> You need to set $TYPO3_CONF_VARS['SYS']['UTF8filesystem'] to TRUE to enable this feature.
-
-       * Improved Extension Manager
-               -> Requires less memory
-               -> The EM now stores the list of extensions from TER in the database,
-               -> see http://bugs.typo3.org/view.php?id=2615
+       * Templates
+               -> Various enhancements to the TS object browser and TS analyzer
+               -> Added new T3Editor with syntax highlighting and other usability improvements for editing TypoScripts
+
+       * Extension Manager
+               -> Auto-update view when new back-end modules were installed
+               -> Integrate the extension ter_update_check into EM
+
+       * Workspaces
+               -> Implemented moving for elements ("Element" versions)
+               -> Workspace "swapping" for "New"-placeholders and "Deleted"-Markers is now supported
+               -> Added switch in TYPO3_CONF_VARS['BE']['elementVersioningOnly'] which allows to completely turn off page and branch versioning
+
+       * htmlArea RTE
+               -> Various bug fixes
+               -> Enable htmlArea RTE in Safari
+               -> Removed list of plugins from EM configuration
+               -> Enhancements to the block styling and text styling drop-down lists
+               -> Enhancements to the handling of inline elements: new formattext drop-down list and new inline element buttons
+               -> Enhancements to the handling of block elements: formattext, insertparagrahbefore and insertparagraphafter buttons, blockquote button, indent with div and configurable class, alignment with configurable classes
+               -> New plugin API enable TYPO3 extension to extend the RTE (to be documented separately)
+
+       * Cleaner Backend Project
+               -> Implemented new GUI with lots of usability improvements
+               -> Enable Tabs in Page Properties
+               -> Use optgroups in selectorboxes
+               -> Added "Open Documents" as optional module in top bar
+               -> Possibility to fold the page- and file-tree widgets
+
+       * TCEforms
+               -> Notify and visualize user where required elements are nested in IRRE or Tabs
+               -> The page doktypes "advanced" and "not in menu" were removed and their functionality integrated into the "normal" doktype
+               -> Date and Datetime fields now support dates starting from 01/01/1902 (dates prior to 1970 are are stored in the database as negative timestamps). The upper limited is still 01/01/2038.
 
-       * Two nice usability enhancements
-               -> Using <label> tags in tceforms where appropriate to enhance usability in the Backend forms
-               -> Increase length for titles of be_users, be_groups, and fe_groups
+       * Inline Relational Record Editing (IRRE)
+               -> Localization support for child records
+               -> Possibility to define storage page for child records on a per-table-basis (TSconfig TCAdefault.[table].pid = [page id])
 
-       * Workspace publishing is improved. Now publishing works with a limited number of records and publishes workspaces in several passes. This prevents PHP timeouts while publishing too many changes.
+       * Template Module
+               -> Improved TypoScript editor by integration of T3Editor with several extended features like code highlighting, code snippets, etc.
+               -> Improved the usability of the Constant Editor
 
 Compatibility
 =============
 
-       * Changed the default value of $TYPO3_CONF_VARS[SYS][devIPmask]
+       * t3lib_div::csvValues() now exports like Internet RFC 4180 (embedded line-breaks allowed)
+       * !!! Page doktypes "2" & "5" ("advanced" and "not in menu") were removed and merge with the "normal" doktype "1"
+               -> This behaviour can be disabled by setting the $TYPO3_CONF_VARS['SYS']['compat_version'] to '4.1'.
+               -> The update wizard allows one to perform the required database changes.
+               -> For Developers: Check your extensions and TypoScripts
+                       -> doktypes '2' and '5' are deprecated!
+                       -> change conditions like "doktype=5" to "nav_hide=1"
+                       -> remove conditions like "doktype=2"
 
 Speed improvements
 ==================
 
-       * Many TYPO3 tables (cache_*, index_*, tt_content, pages and others) are modified to use new indexes. This speeds up common queries on these pages a lot
-
-       * Some tables are changed to use InnoDB engine type for MySQL. Unlike MyISAM, which was default in previous versions, InnoDB does not lock tables for reading when another request tries to write something to table. InnoDB makes possible many reads along with many writes, while MyISAM prevents reads and writes until every single write completes. This gives huge improvement cache_*, sys_stat and index_* tables during peak visiting hours.
-         InnoDB is more stable than MyISAM and prevents database corruption at peaks when there are too many requests come to MySQL.
-         If InnoDB is not configured (not enabled), MySQL will ignore these settings use MyISAM. TYPO3 users need not to change anything if they do not use InnoDB but if InnoDB is available, it will be used by default
-
-       * TYPO3 now includes several .htaccess files in t3lib/ and typo3/ subdirectories to speed up loading of static (non-changing) images. Prior to version 4.1 all images were reloaded each time when backend user accessed any module, navigation frame, file or page tree. This used a lot of bandwidth and slowed servers down with HTTP requests for static (non-changing) images (for example, imagine how many additional requests will web server get when you use List module in extended mode and how much data it needs to transfer!).
-         Using this feature requires certain Apache configuration. Main Apache configuration file should have "AllowOverride Indexes" directive for typo3-based web site (note that there can be also other values in AllowOverride" but "Indexes" is mandatory). It is safe and usually enabled by default by web server administrator. However if it is disabled and you cannot enable it for any reason (shared hosting, etc), you need to rename or delete several .htaccess files to prevent error messages from web server. Here is a list of these files:
-               typo3/gfx/.htaccess
-               typo3/mod/user/ws/.htaccess
-               typo3/sysext/.htaccess
-               typo3/sysext/t3skin/stylesheets/.htaccess
-         This feature requires mod_expires to be installed for Apache. If mod_expires is not installed, images will not be cahced and TYPO3 will work as in previous versions. .htaccess files will detect if mod_expires is installed and use it automatically
+       * indexed_search with a huge page trees can now be a lot faster with the new TypoScript configuration option "skipExtendToSubpagesChecking"
+       * Added many calls to $GLOBALS['TYPO3_DB']->sql_free_result() free these memory resources
+       * Speed up link rendering by implementing some local caches
+       * Introduction of global variable $ACCESS_TIME (to the minute) to allow a better usage of MySQL query cache for time-based access control queries
+       * Improved caching of locallang and changed internal caching from default character set of language to required character set.
 
 Development
 ====================
 
-       * Better getRecordTitle() function
-               -> It's now possible to define a "label_userFunc"
-               -> This makes it possible to e.g. define the label of a "persons" table as displayed in the list module to be like "Lastname, Firstname". Until now you could only define one field to be the "labelfield".
-
-       * Inline Relational Record Editing (see "Backend" section above)
+       * Add new external library "RemoveXSS" for easily filtering potential Cross Site Scripting (XSS) attacks.
+               -> Can be used by any script. Usage: $filtered_string = t3lib_div::removeXSS($input_string);
+               -> Thanks to Travis Puderbaugh <kallahar@quickwired.com> for providing this nice piece of code!
+
+       * TCEforms
+               -> Setting a field of eval "timesec" as a label of a table would show an integer instead of the hh:mm:ss string
+
+       * Workspaces
+               -> Added class.wslib_gui.php to allow using WS GUI from extensions
+               -> Added "flush" command to TCEmain API for versions so versions can be completely deleted and not only released from a workspace
+
+       * AJAX/JavaScript
+               -> Added JavaScript minification feature (new function t3lib_div::minifyJavaScript)
+               -> Updated JavaScript libraries: prototype (1.6.0.2) and script.aculo.us (1.8.1)
+               -> Consistent interface for AJAX calls in the TYPO3 Backend (typo3/ajax.php)
+
+       * Hooks
+               -> Added hook to Web>Page "columns" view, allowing plugins to display "additional info" instead of "CODE:"
+               -> Added a hook to TCEforms to enable custom evaluations for input fields
+               -> Introduced a new global hook $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['GLOBAL']['recStatInfoHooks']
+                       -> allows to insert HTML before a records icon in the page tree, Web>List and Web>Page modules (and possibly more places where makes sense)
+               -> Integrate post processing hook for links handled by typoLink
+               -> Web>List module: Allow modification/addition/removal of icons for each table and its records
+               -> Hook in TCEmain after all database operations
+               -> Some Hooks for tslib_content
+               -> Added hooks to t3lib_TCEforms_inline to manipulate control items for each child record
+               -> Added hook to manipulate the cHash
+
+TypoScript changes
+==================
 
-       * It is possible to reuse List module classes in extensions (see record editing in TemplaVoila Page module, for example)
+       * Back-end
+               -> Removed TSconfig property TCEFORM.<table>.<field>.linkTitleToSelf.returnUrl
+               -> Added possibility to set TCAdefaults in Page TSconfig
+               -> Added Page TSconfig property TCEFORM.[table].[field].label to override labels
+
+       * Front-end
+               -> Added +stdWrap for the .src parameter of "FRAME"
+               -> Added +stdWrap for the .wrapItemAndSub parameter of "TMENUITEM"
+               -> Added new conditions "year" and "dayofyear"
+               -> Addes possibility to define cache expire time of HMEMUs
+               -> Introduced a new TS option that makes indexing of metatags configurable (config.index_metatags)
+               -> Added stdWrap support for minW and minH of imgResource
+               -> Added minification of JavaScripts (config.minifyJS)
+               -> Constant 'PAGE_TARGET' of CSS Styled Content is cleared when compatVersion is set to 4.2.0
 
 Database changes
 ================
 
-       * Changed many BLOB fields from int/varchar/whatever to tinyint(1) - this is the field type which is actually intended by MySQL for BLOBs
+       * Replace all TINYTEXT columns with VARCHAR(255)
+       * Change index "parent" of fe_user to (pid,username) and drop the index "pid"
+       * Added fields "crdate" and "cruser_id" to tt_content
 
 DBAL
 ====
 
-       * ...
+       * typo3/sysext/adodb: Update to upstream version 4.94
 
 Frontend features
 =================
 
-       * Autologin for Frontend users is now possible!
-               -> Users can decide on their own whether they want to "Stay logged in" using a checkbox. The latest version of the "newloginbox" extension is required for that.
-               -> Needs to be configured in the Install Tool ("All Configuration" -> "permalogin" and "lifetime")
-
-       * UTF-8 for log files
-               -> TYPO3 now logs page paths in UTF-8 if config.stat_apache_niceTitle is set to "utf-8" in the TypoScript template Setup.
-
-       * Enable $TYPO3_CONF_VARS[FE][pageNotFoundOnCHashError] by default
-               -> URLs (especially plugins) can contain the &cHash parameter. It contains a checksum of the whole paramter set and is very useful for caching.
-               -> In the past, a wrong cHash caused the website to be recreated with caching turned off.
-               -> With the new behaviour, a wrong cHash will instead trigger an error message since this usually should never happen!
-               -> Usually, the cHash is only wrong if a) someone has changed the encryptionKey (bad!) or b) someone has manually modified the requested URL
+       * New login-box System-Extension "felogin":
+               -> This is a refactored version of the "newloginbox" extension, now integrated into the core.
+               -> If you install the extension, it will replace the old login content element (CType: "Login Form").
+               -> The new plugin comes with a great new redirection framework and lots of configuration options - but still runs nicely out of the box.
+       * Roll-over (RO) on a GMENU in IE didn't work with xhtml_strict (Bug #3729)
+       * Content encoding with x-gzip is now available also for IE7
+       * Various improvements to the admin panel
+       * Whole workspaces can be previewed now for users with no backend login by a simple link you can email
+       * Enabled EXPLAIN SELECT queries in TS admin panel
 
 Backend skin
 ============
 
-       * Stylesheets are cached using mod_expires to speed up access (see "Speed improvements" section)
+       * ...
 
 Important bugfixes
 ==================
 
-       * ...
+       * Better transliteration for hebrew (using lower-cased latin letters)
+       * pageNotFound_handling used to return an empty page if the specified URL could not be retrieved (old gremlin)
+       * "Clear FE cache" didn't clear "typo3temp/cache_pages" directory
+
+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