Release: 7.3.0 (2015/11/30)

New minor release introducing TYPO3 7.6 LTS compatibility - which also means that from this point onward, the minimum supported TYPO3 version is 7.6. For those that still require critical fixes but must remain on for example TYPO3 6.2 we provide a legacy branch: https://github.com/FluidTYPO3/flux/commits/legacy

However, some notes about the legacy branch:

  1. We Provide this branch as-is, not guaranteeing compatibility.

  2. We do not actively maintain this branch:

    • We happily accept suggestions for fixes including code

    • We happily accept pull requests to the legacy branch (but please observe our contribution guidelines very closely when making patches for this branch - we aim for a minimal maintenance effort)

  3. There is no expected maximum lifetime of the branch, but you should prioritise upgrading your TYPO3 site to LTS as soon as you can. The 6.2 branch of TYPO3 no longer receives bug fixes (including security patches).

The following new changes and features are highlighted:

All ViewHelpers compilable

This change means that all Flux ViewHelpers can now be compiled to native PHP which increases the performance, in particular for templates that have many instances, such as page templates.

However, this change has required a small change to the internal API of Flux: the getComponent method on Form component ViewHelpers is now static which may yield warnings if you use custom component ViewHelpers - and depending on your PHP version. Very few should be affected since custom components are rare, only causes warnings and only warns on newer versions of PHP.

Compatibility Registry

A special registry has been introduced to facilitate easy version based dependency configuration. Essentially it allows you to provide a list of TYPO3 versions and values that apply to that version, with resolving happening in a way that the maximum viable configuration always gets returned. For example you can specify class names to return for TYPO3 versions 7.4 and 7.6, and if the active version is 7.5 the 7.4-specific class name gets returned (because the 7.6-specific one cannot be used).

\FluidTYPO3\Flux\Utility\CompatibilityRegistry::register(
    'MyVendor\MyExtension\MyClass',
    array(
        '7.4.0' => 'MyVendor\MyExtension\Legacy\MyClass',
        '7.6.0' => 'MyVendor\MyExtension\MyClass'
    )
);
\FluidTYPO3\Flux\Utility\CompatibilityRegistry::get('MyVendor\MyExtension\MyClass');

The compatibility registry is introduced to make version checks completely uniform and allow any number of alternatives to be specified, consistently returning a single value without you having to care about checking TYPO3 versions. In addition, the static signature means you can use the registry from anywhere (and manipulate it without mocking from unit tests).

On-the-fly TCA manipulation

Provider classes are fitted with a method that together with the new FormEngine allows TCA to be manipulated freely. If a Provider is triggered when editing a record, every aspect of the editing form’s composition can be manipulated. To utilise this feature all you need to do is implement public function processTableConfiguration(array $row, array $configuration) in your Provider class and make the method return the (modified) $configuration array. The $configuration array is a big array of FormEngine configuration and is at the time of writing this not fully documented. See the official TYPO3 documentation for more information about the FormEngine configuration - or debug the array and make your own experiments, it’s not too difficult except for the size.

  • 2015-11-19 [FEATURE] Add Tree/CategoryViewHelper (Commit e9ecf23 by Marc Neuhaus)

  • 2015-11-17 [BUGFIX] Arguments in flux controller were not assigned to subrequest (Commit 976d449 by Hans Höchtl)

  • 2015-11-16 [FEATURE] Add new defaultValues option (Commit bb9da38 by Marc Neuhaus)

  • 2015-11-14 [BUGFIX] Disable up and down buttons in in Web->Page and respect edit content permissions. (Commit ca6e601 by monosize)

  • 2015-11-13 [BUGFIX] Fixed incorrect cleaning of FlexForm XML (Commit 5eaa1df by Jeff Segars)

  • 2015-11-13 [FEATURE] Bring back the paste and reference buttons. (Commit e79b669 by monosize)

  • 2015-11-11 [FEATURE] Allow any Provider to manipulate any TCA detail (Commit e1af876 by Claus Due)

  • 2015-11-12 [BUGFIX] Default of ‘0’ must be ‘0’ and not NULL in TYPO3 > 7.4 (Commit e4489aa by monosize)

  • 2015-11-12 [FEATURE] Toggle for list view editing of nested content (Commit fab20a0 by Claus Due)

  • 2015-11-12 [BUGFIX] Moving parent to top column position from inside nested area (Commit 7e20161 by Claus Due)

  • 2015-11-12 [BUGFIX] Fix default value for ‘foreignUnique’ field (Commit 090ac5c by Markus Hoelzle)

  • 2015-10-14 [BUGFIX] Call provider methods for different commands. (Commit 744e53c by Jost Baron)

  • 2015-11-08 [BUGFIX] Wrong converted Csv Item list. Since TYPO3 7.5 the items in a item list must be of type array. Uncaught TYPO3 Exception #1439288036 An item in field settings.header.type of table tt_content is not an array as expected (Commit 1805b7d by monosize)

  • 2015-10-13 [BUGFIX] Fix #966 Search pageId only when need (Commit f9813ab by Johannes Pieper)

  • 2015-08-12 [FEATURE] Translate select options (Commit c5c79ea by Xaver Maierhofer)

  • 2015-11-07 [BUGFIX] Static function and remove unused lines PHP7 needs static function (Commit ab0e6d4 by Xaver Maierhofer)

  • 2015-09-26 [BUGFIX] Icon position in production and LTS (Commit f8923b6 by Xaver Maierhofer)

  • 2015-11-07 [BUGFIX] Clean empty fields/element-lists (Commit a047b0d by Stefan Neufeind)

  • 2015-11-06 [BUGFIX] Returns the correct value (Commit ba38d03 by Juan Manuel Verges Solanas)

  • 2015-11-06 [BUGFIX] Removes debug lines merged (Commit 1bde893 by Juan Manuel Verges Solanas)

  • 2015-11-06 [BUGFIX] Separating templates on two PID-Rootlines (Commit f953dbf by Marc Neuhaus)

  • 2015-10-30 [BUGFIX] Dont apply localisation to page values in default language (Commit 71ce237 by pixelbrackets)

  • 2015-10-27 [BUGFIX] Fix isForeign comparation for FCC and Fluidcontent elements (Commit 54a0109 by Juan Manuel Verges Solanas)

  • 2015-10-26 [BUGFIX] Syntax error in compiled flux:form.option (Commit 7c32264 by Claus Due)

  • 2015-10-23 [BUGFIX] Option ViewHelpers generate invalid compiled code (Commit 07e804c by Claus Due)

  • 2015-10-10 [FEATURE] Add ViewHelper API for Form options sorting, translation (Commit aa84fe1 by Claus Due)

  • 2015-10-10 [BUGFIX] Make compatible tx_flux_column TCA with latest master changes (Commit 1fcc911 by Juan Manuel Verges Solanas)

  • 2015-10-10 [FEATURE] CompatibilityRegistry for versionable variables and feature flags (Commit cc3f77f by Claus Due)

  • 2015-10-10 [BUGFIX] Vendor name not considered in Form when set in ControllerContext (Commit a00e81b by Claus Due)

  • 2015-10-06 [BUGFIX] Ensure array structure (Commit daab92d by Björn Fromme)

  • 2015-10-04 [BUGFIX] Set corret tx_flux_parent if more than one alternative language (Commit 1bd80f5 by Benjamin Beck)

Generated by:

git log --since="2015/09/29" --abbrev-commit --pretty='%ad %s (Commit %h by %an)' \
    --date=short | egrep '(\[FEATURE|BUGFIX|REMOVAL\])+'`

Full list of changes: https://github.com/FluidTYPO3/flux/compare/7.2.3…7.3.0

Please note: the change list above does not contain any TASK commits since they are considered infrastructure-only and not relevant to end users. The full list includes these!