TYPO3 4.5.0 beta1

Released 17.11.2010.

Please note that this version is released as a beta release. It shows a snapshot of our development so far on the road to 4.5.0, which will be released in January 2011. This release marks the beginning of the "feature freeze" phase. Take a look at the Release Plan for more information about the schedule. Read here what it means for our 4.5 project: Feature Freeze.

Upgrading and compatibility

Download the beta1 packages from the download package page at typo3.org.

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

  • Visit the Install Tool:
    1. Run through "Update wizards" which are new in 4.5
      • enable old modules that are now system extensions (filelist, info, perm, func, versions)
      • activate new modules (workspaces, pagetree)
      • flagsFromSprites
    2. Use the "Database COMPARE" section and apply all database schema changes.

New installations

Try out the introduction package(tar.gz) (zip) 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.5alpha3 and 4.5beta1. 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 beta1, please read:

General

  • UTF8 by default was introduced. This means that new installations will be automatic UTF8 (7942). This is the first step and some mechanisms were added to have this setup by default but still be able to upgrade existing installations. Keep in mind that we will be deprecating all other charsets in the release of 4.5, but still support those charsets. 4.7 or maybe even 4.6 will be the first "UTF-8 only" release.
  • Added Khmer language (Cambodian) (16258). Translations will start to be created with beta2 so they will be ready for the release!
  • Deprecated the usage of ImageMagick 4 and 5 (14449). This means that with 4.5 (and in the long term support) we will still support that ancient versions, but will drop support for it starting in 4.6 already. This will enable us to fix bugs in the graphical engine faster and more efficiently add new features to it.
  • Added a new Linkvalidator module (16420). Check all kind of links; internal, external and file links. Looks inside headers, bodytext. Provides a just-in-time and via scheduler. Development of this module done through a team which will work on the issues reported to their forge tracker.
  • A first step for the new Extension Manager was done by refactoring the classes and functionality from the existing EM (16315)
  • A improved version of misc/advanced.htaccess provides more accurate and up-to-date information and is a real working sample on how to setup your Apache to serve TYPO3 pages. This setup is now also used in the introduction package (11103)

Workspaces

  • We can proudly present the new Workspace Module (16247), completely based on ExtJS and powered by Extbase / Fluid, as the first core backend module to use this framework. Development of this module done through a team which will work on the issues reported to their forge tracker.
  • Disabled the "draft workspace" and migrate it to a real workspace (16225)
  • Migrate regular workspaces to custom-stage workspaces (16310)
  • Implemented Inline Relational Record Editing (IRRE) in Workspaces (16374)

Backend

  • We now have a ExtJS pagetree implemented as a sysext. Just install the new extension "pagetree". It provides a drop-in replacement to the standard page tree. It uses a new API for "trees" and makes use of ExtJS and ExtDirect. This is the first development snapshots, the team already has collected open issues and will continue working on making it stable until beta3. Report new issues or follow the development in their forge project page
  • Implement a Grid View + wizard to enable the backend layout to be adapted to the frontend look and feel (16396). This feature was a development from the T3UXW09 and was finished in a very good team work. Just go to the Web>Page module as usual, and select the function "Grid-View". The feature is described in the issue tracker entry and there is a video demonstrating it in action
  • Added a Live search with auto-complete / suggest to replace the old "search box" (16432)
  • Created a task to update extension list through the scheduler (16137)
  • The former "Shortcuts" feature (in the toolbar, where one could make shortcuts to different backend modules and pages) was renamed to "Bookmarks" to avoid the confusion with the "Page Shortcuts" (15537). This change was also reflected in UserTS options (16252).
  • Page module will provide a direct link to the list module when accessing SysFolders (15916)

Skin / Backend UI

  • Nicely styled page + navigation tree with drop shadows (on browsers that support it, i.e. FF3, Chrome, Safari) (16032, 16409)
  • Optimizations to the skinning and usability general (16421, 11957, 16298, 16452, 16453),
  • Add docheader to "About modules" screen to provide a consistent look (16425)
  • Backend and sys_language tables now use a collection of flags from FamFam as a sprite. (15666, 15668)
  • New style for error messages (15991)
  • We introduced Modernizr in the Backend to be able to provide graceful fallbacks in browsers that doesn't speak "CSS3" (16403)
  • Optimized the CSH pop-ups (16080, 16105, 16122)
  • Fixes in the new layout of TCEforms for pages and tt_content (16065, 16151, 16094), and enhanced the cosmetics, e.g. the thumbnails in "Images" field are now below the field (16111)
  • Support for TCA date ranges in the ExtJS date picker (16393)

Administration / Customization

  • Individual FlexForms fields can now be enabled / disabled via TSConfig and group access lists (16334)
  • In the configuration module the array keys are now sorted alphabetically (16116)
  • Checkbox at the bottom of the modules are now hideable (15645): * New User TSconfig options: options.file_list.enableDisplayBigControlPanel, options.file_list.enableDisplayThumbnails, options.file_list.enableClipBoard * New Page TSconfig options: mod.web_list.enableDisplayBigControlPanel, mod.web_list.enableClipBoard, mod.web_list.enableLocalizationView
  • TypoScript included from files (via <INCLUDE_TYPOSCRIPT ...>) can now be edited directly through the backend in the t3editor (16183)

RTEhtmlarea

  • "Clean paste" feature allows the user to paste content "unformatted", "structure only" or "fully blown" (8349)
  • Added a general element properties editing dialogue (2474), where you can add "id", "name", "lang" and other universal attributes to any tag in your content.
  • New options to configure RTE size/resize (16344, 15236)
  • Allow CSS-styles for tables without having to activate blockstyle (7872)

Security

TypoScript / Frontend

  • Add support for RDFa doctype headers (semantic web) (16395)
  • Start to implement stdWrap in all properties to enhance flexibility. Already done in these cObjects: CASE (16187), CLEARGIF (16189), COA (16192), COA_INT (16193), COLUMNS (16190), CONTENT (16191), CTABLE (16196), FILE (16197), FLUIDTEMPLATE (16198), FORM (16295), HMENU (16199), HRULER (16226),
    HTML (16227), IMAGE (16282), IMG_RESOURCE (16283), IMGTEXT (16287), LOAD_REGISTER (16284), MEDIA (16381), MULTIMEDIA (16382), RECORDS (16285). Further additions are planned in beta2 and beta3.
  • typolink now honors secure filelink configuration, so you can create jumpurl secured links using the RTE (16027)
  • stdWrap.age now differentiates between singular/plural (1333) (oldest fixed feature request, from 2005)
  • compatVersion = 4.5: css_styled_content's sitemap/menu of subpage now have a new class "csc-menu-current" for the currently active page (6147)
  • Added a config option (TypoScript) to disable the preview info box on certain page types (16133). E.g.
     config {
        disableAllHeaderCode = 1
        disablePreviewNotification = 1
    }
  • New options noRescale for IMG_RESOURCE, allowing to provide unscaled high resolution images, useful for example when transforming the rendered HTML into a PDF (11177)

Development

  • Extbase with new features:
    • Dependency Injection
    • Dispatcher Refactoring & Completely re-done Configuration Manager
    • QueryResult refactoring (needed for Fluid Widgets)
  • Fluid with new features:
    • Fluid Widgets
    • Fluid Standalone View
  • Rendering of backend modules got easier, using the PageRenderer's new facility method "render()" (16383)
  • Based on the new tree API we have a new feature called "TCA trees". You can render a "tree" to be displayed in the TCEforms using TCA only (16228). For example a tt_news category tree:
    $TCA['tt_news']['columns']['category']['config'] = array(
            'type' => 'select',
            'foreign_table' => 'tt_news_cat',
            'maxitems' => '500',
            'minitems' => '0',
            'MM' => 'tt_news_cat_mm',
            'renderMode' => 'tree',
            'treeConfig' => array(
                    'parentField' => 'parent_category',
                    'appearance' => array(
                            'expandAll' => TRUE,
                            'showHeader' => TRUE,
                    )
            )
    );
  • Big refactoring of the cObject classes and better split up (15094)

Performance

  • All the stdWrap additions and optimizations also improved the performance of rendering: The general stdWrap method now processes only existing properties in a very small loop and returns fast if there is nothing to do. New additions of stdWrap also take care not to call the stdWrap function in vain (if no stdWrap property is set for example). FE rendering should boost a lot, while gaining flexibility!
  • Caching Framework:
    • Add scheduler task to execute garbage collection (15306)
    • Implement redis as cache backend (16410)
  • Performance improvement for queries that expect just a single result row (11916)