TYPO3 4.5.0 alpha1

Released 25.8.2010.

Upgrading and compatibility

Please note that this version is released as an very early alpha release. It shows a snapshot of our development so far on the road to 4.5.0, which will be released in january/2011. Take a look at the Release Plan for more information about the schedule.

To upgrade an existing installation of 4.4 to 4.5.0alpha1, please consider the following steps:

  • Visit the Install Tool:
    • Use the "Database COMPARE" section and apply all database schema changes.
    • Use the "Update Wizard" to enable old modules that are now system extensions (filelist, info, perm, func).
  • See typo3/sysext/fluid/ChangeLog.txt for some breaking changes in Fluid which might affect your extensions.

New installations

Try out the introduction package which provides a very easy way of installing TYPO3 and having some example setup already in place.

Changes and improvements

This will list the noteable changes and improvements between TYPO3 4.4 and 4.5. For technical details see ChangeLog included in the typo3_src package.

General

  • A sprite generator was added. This allows you to create your own sprite files, also core can generate the files if some new icons were added (15079).
  • RSA Auth now works also with special chars (e.g. umlauts in passwords).
  • The dummy-package now contains a sample _.htaccess file which comes directly from misc/advanced.htaccess. This file has been improved and enhanced with more information (15108).

Backend

  • sprites.css now contains the autogenerated sprites. This includes some last missing icons.
  • The recycler was refactored and has now the same skin as the rest of the BE (15437).
  • "Create multiple pages" Wizard improved: The user can decide the type of each page created, and it allows to create more than 9 pages at once (15524).
  • All system extensions from typo3/mod were moved to real system extensions. These modules are:
    • Extension Manager (required)
    • List module (required)
    • Filelist module
    • Info module
    • Access module
    • Workspace module
      It is possible to overwrite this setting in localconf.php e.g. if you want to deinstall the Extension Manger. Make sure you visit the Update Wizard to enable those extensions after upgrading to 4.5alpha1!
  • DB check -> page tree submodule was removed (module lowlevel) (15423).
  • Clearing cache now is logged (15305).
  • A hook now allows postprocessing of filelist and TCEforms files operations (15192 and #15221). Typical use-cases:
    • Allow editors to upload any picture (e.g., 10 Mpixels) as they don't know how to resize the pictures or do not have the software
    • Prevent fileadmin to be overflooded with huge pictures which will never be used in their original size
    • Automatically resize "huge" pictures after the upload
      Extension using it already: image_autoresize
  • New TS config option to disable the "Show secondary options" checkbox (13797). In User-TS, you can set:
    options.enableShowPalettes=0 to see this feature in action. Default is still "1" like it used to be.

Frontend

  • FE login now allows to show the logout form direct after login.

Extbase / Fluid

  • All methods trying to find an object by uid now ignore the storagePid. This changes the behavior of argument mapping and the way extbase fetches 1:1 relations. Resolves Issue #5631. You should not experience any negative side-effects of this change, i.e. if your extension worked before, it will definitely after this change. However, it makes the record handling more robust.
  • Performance improvements in TypoScript::convertTypoScriptArrayToPlainArray.
  • Numerous other bugfixes, see typo3/sysext/extbase/ChangeLog.txt or follow the extbase repository
  • Fluid contains many new features you might want to start using. There are some changes that require special attention in case you created custom condition ViewHelpers or if you call renderSection() and renderWithLayout() from Tx_Fluid_View_TemplateView.
  • Check out typo3/sysext/fluid/ChangeLog.txt for more details, or follow the fluid repository

Development

  • There is a new setting that shows all SQL queries in debug (15425): $TYPO3_CONF_VARS['SYS']['sqlDebug'] = 2;
  • Contrib libraries can be replaced now via hook (15218). This allows to test with updates of these libraries. Demo extensions are available.
  • Catch all ExtDirect Exceptions and show them in the DebugConsole. It now also allows you to call debug() (15513).

TypoScript

  • stdWrap now has a new feature: .numberFormat (13815)
        lib.myPrice = TEXT
        lib.myPrice {
            value = 0.8
            numberFormat {
                decimals = 2
                dec_point = ,
            }
            noTrimWrap = || $|
        }
        # Will result in "0,80 $" 
    
  • GIFBUILDER has a new feature: ELLIPSE (2049). Example:
        file  =  GIFBUILDER
        file  {
            XY  =  200,200
            format  =  jpg
            quality  =  100
            10  =  ELLIPSE
            10.dimensions  =  100,100,50,50
            10.color  =  red
        }
    

Database API / DBAL

  • Prepared queries are now part of the TYPO3 database API (15457). The API is mostly based on PDO's method naming and currently supports SELECT queries. TYPO3 will progressively use this new database API which is cleaner and quicker when using DBAL. Extension authors are encouraged to use it in their own extensions.
  • DBAL now supports "FIND_IN_SET()" (14818) function and maps it correct functions in case usage under AdoDB. Using FIND_IN_SET in listQuery() will provide performance improvements in all areas, as this is used in several places (backend and frontend, for example for checking the group list permissions).

Workspaces

  • There is a new Scheduler task for the automatic publication of workspaces (14994). If a publication date has been set for a given workspace, it will be published the next time the Scheduler task runs. Note that automatic "un-publication" still does not work. Replaces non-working CLI script "typo3/mod/user/ws/cli/ws_cli.phpsh".

Speed improvements

  • Added "*compress data*" options to DbBackend of the Caching framework (15141). Enable it like this:
       $TYPO3_CONF_VARS['SYS']['caching']['cacheConfigurations']['cache_pages'] = array(
            'frontend' => 't3lib_cache_frontend_VariableFrontend',
            'backend' => 't3lib_cache_backend_DbBackend',
            'options' => array(
                'cacheTable' => 'cachingframework_cache_pages',
                'tagsTable' => 'cachingframework_cache_pages_tags',
                'compression' => TRUE,
            ),
        );
  • Some often used functions of t3lib_div were speed improved.

Still to come

We are moving forward on our roadmap and there are several teams working on tasks already. The ground stone has been laid, and it's time to get our hands dirty.

Several things might happen until alpha2 (which will be released in 4 weeks):

  • A code sprint of the Workspaces team will bring us some usability improvements to the WS-module,
  • We might get finaly "UTF-8 by default" for new installations,
  • A t3editor that can be used for editing files in fileadmin (with syntax highlighting for xml, sql, Typoscript, etc),
  • Usability enhancements coming from the usability team and implemented by helping developers,
  • Maybe some more ExtJS experience and less prototype / scriptaculous.

It seems to be the right time for you to give us a help by:

  • Joining our teams,
  • Reviewing issues that are already pending on the core list,
  • Supply patches for new features or bug fixes,
  • Participate in discussions on the typo3.projects.v4 list around new features and concepts.

Thanks!