TYPO3 4.5.0 alpha3

Released 20.10.2010.

Please note that this version is released as an 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.

Upgrading and compatibility

To upgrade an existing installation of 4.4 to 4.5.0alpha3, 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).

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.5alpha2 and 4.5alpha3. For technical details see ChangeLog included in the typo3_src package. For a list of all changes between the current stable 4.4 and 4.5 alpha3, please read:

General

  • HTML5 is the new TYPO3 Backend doctype (15844). This will allow us to make use of newer browser features. Of course we will still maintain compatibility with IE6, having some graceful fallback where necessary.
  • Whole new mail API based on SwiftMailer was added to replace t3lib_htmlmail (15998). t3lib_htmlmail won't be removed, just marked as "deprecated".
  • Added an easy way of creating news that are displayed below the login form in the /typo3 login screen. Just create records of type "System News" in your root folder. (15812 and 16004)

Install tool

  • Added a pre-check for required php-extensions in the 1-2-3 installer (15075)

Skin / Backend UI

  • Updated ExtJS to version 3.3.0 (15970)
  • ExtJS tabs are now styled the "TYPO3-way" (15783)
  • Added current flags from famfam in t3skin in a nice sprite (15229)
  • Implement new form layout and labels for tt_content as result of T3UXW09 (16031)
  • Implement new form layout and labels for pages as result of T3UXW09 (16015)
  • The checkbox to clear a field in TCA was removed and moved into the input field as a small "x" on the right (16006). The same checkbox used to select the default date on a date field, this can now be done in the calendar.
  • Integrated a generic notification methods to show windows and dialogs in the backend based on ExtJS (15745). Just access them with TYPO3.Window and TYPO3.Dialog.
  • RTEhtmlarea uses these new methods for creating dialogs (15879)
  • Introduced a new CSH API function and make use of it in TCEforms (15990). You will notice that there are no longer CSH icons in the forms, but underlined labels, with mouse over tool tips.

Backend

  • t3editor now also enables syntax highlighting when editing files in fileadmin, for example when editing HTML, SQL, XML files (15907 and 15950). We also updated the underlying codemirror to the latest version (0.9).
  • New translations and copies of content elements are now hidden by default (15611). This eases work of translators, in that the "[Translate to language]" elements do not appear in the frontend right away. The default of "show hidden elements" has been changed to "true".
  • Implemented a new condition for the current page record in PageTS (15696). This allows settings for example like this:
    mod.SHARED.colPos_list = 0
    [page|layout = 1]
    mod.SHARED.colPos_list = 1,0
    [global] 
    
  • Allow to add query parameters (&...) to internal links (e.g. in fields with browse_links and images) (14658). This used to be a feature of RTEhtmlarea links only.

RTEhtmlarea

  • RTEhtmlarea works on Google Chrome 7 (15863)
  • Added a word count in the status bar (16047)
  • Added option in the RemoveFormat plugin to remove typographical punctuation, which might come from Copy&Paste from MS-Word (15885)
  • Skype URLs are now preserved when adding them as "external links" (e.g. skype:someone?call) (5666)
  • Added new option "paste as plaintext" which works on all browsers except Opera. When the toggle is ON, any paste action is intercepted and clipboard content is pasted as plain text (15499)

TypoScript / Frontend

  • Added a new TypoScript cObject "FLUIDTEMPLATE" (16008). Example use:
    page = PAGE
    page.10 = FLUIDTEMPLATE
    page.10 {
        # the FLUID template, has stdWrap functionality
        file = fileadmin/mytemplates/mytemplate.html
    
        # setting a specific partials path, usually it's layouts/ underneath the template file
        partialRootPath = fileadmin/partials/
    
        # setting a specific layout path, usually it's layouts/ underneath the template file
        layoutRootPath = fileadmin/layouts/
    
        # setting variables that should be available in the fluid template
        variables {
            mytitle = TEXT
            mytitle.data = page:title
        }
    }
  • Added a new TypoScript cObject "SVG", which works on all browsers (15900). It uses svgweb library to provide cross-browser support. Example use:
    page = PAGE
    page {
        config.doctype = html_5
        javascriptLibs.SVG = 1
        10 = SVG
        10 {
            value (
                <rect x="100" y="100" width="500" height="200" fill="white" stroke="black" stroke-width="5px"/>
                    <line x1="0" y1="200" x2="700" y2="200" stroke="red" stroke-width="20px"/>
                    <polygon points="185 0 125 25 185 100" transform="rotate(135 125 25)" />
                    <circle cx="190" cy="150" r="40" stroke="black" stroke-width="2" fill="yellow"/>
    )
            noscript.cObject = TEXT
            noscript.cObject.value = NO SVG rendering possible
            width = 600
            height = 600
        }
    }
    
  • Added new "radioInputWrap" property to FORM cObject, allowing to put <div>s around individual radio boxes (3613)
  • Added a new page-option to force SSL on a page (15621). This makes extensions like "https_enforcer" obsolete.

Development

  • Added a mode to debug the backend (15966)
  • Created a new API for Trees and ContextMenus which will later be used by all trees in the backend (e.g. a future ExtJS page tree) (16033)
  • Created a new abstract class t3lib_message_abstractmessage (15989) to be used as a super-class over flashmessages and other kinds of messages to come.
  • Added hook into the marker replacement functionality for BE templates (16026)
  • Allow to override a XML file in $GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride'] using the "real" .xml filename (instead of pseudo .php file) (15942)
  • Moved TCA definitions of "pages" from typo3/sysext/cms/ext_tables.php to t3lib/stddb/tbl_pages.php (15988)

Still to come

We have had very good results during our Code Sprint in Stuttgart from 14h to 17th October. Some teams worked hard on their tasks, some of which are included in alpha3. Some projects also made lots of progress that is not yet included in alpha3.

  • The Workspaces team and lots of new stuff regarding usability in the WS-module,
  • "UTF-8 by default" is ready and will be included in beta1,
  • ExtJS page tree,
  • Usability enhancements coming from the usability team and implemented by helping developers.

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!