************************************************************************
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 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
==================

	* 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.

	* 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])

	* 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
=============

	* 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
==================

	* 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
====================

	* 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
==================

	* 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
================

	* 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
=================

	* 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
============

	* ...

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
