22/08 2014
Flux 7.1 changes

Everything you need to know about changes coming in Flux 7.1 - don't worry, it's not a long read.

Dear developers

Flux 7.1 is almost ready, with just a few issues remaining in the handling of records when they are being localised and referenced. The extension is now in a state where no further behaviour changes will be made and this makes it the perfect time to write up a list of these changes to prepare you (and your templates) for the coming upgrade.

Unified grid behavior

Where earlier you were using flux:form.content inside your flux:grid.column tags when making content templates, you now must not use flux:form.content this way but instead assign the name, label etc. attributes on flux:grid.column and remove all contents of the flux:grid.column tag. This change now means that grids are defined the exact same way regardless of the template's purpose.

The flux:form.content ViewHelper has been repurposed and now can be used as a shorthand method of defining one flux:grid with one flux:grid.row with one flux:grid.column inside it. Generally speaking, this means you should never use flux:grid and flux:form.content in the same template.

Icon and Wizard tab name

For page and content templates we changed the the support for defining an icon and (for content) the name of the tab in the new content wizard in which the element will appear. The options are removed from the Form object itself and instead now reside in the options attribute on this object and wizardTab has been renamed to group in expectation of other grouping intentions than grouping in a wizard tab.

This means that your templates should now define the options attribute on flux:form to define the sub-properties icon and group. The attribute works exactly the same way as any array attribute, for example additionalAttributes on tag ViewHelpers:

<flux:form id="myForm" options="{icon: 'EXT:myext/icon.gif', group: 'My Group'}">

The ViewHelpers still support the old arguments and will continue to do so for a while, but documentation of Flux 7.1 and future versions will declare these attributes deprecated in favor of the options array. Please be aware that as soon as you use the options attribute the other two attributes will be ignored - also if your options array does not contain the icon and group sub-properties.

Workspaces support

Flux 7.1 will support basic workspaces: editing and previewing of unpublished content in workspaces and of course publishing of workspaces; tested with content and pages. Since this support is still quite young there could be edge cases that are still not supported - so please use with caution and report issues if you encounter them.

While workspaces support is not a change that you need to adapt to in your own code, it is worth mentioning in advance in case you have coming projects depending on workspaces where you had to opt out of using Fluid Powered TYPO3 because of missing workspaces support.

When?

As mentioned in the introduction we still have a few issues that need fixing before a release can be made. However, we estimate a release can be made during next week. Along with Flux 7.1 we also must release new versions of Fluidcontent and Fluidpages which implies some build testing before we finally push the update.

FluidcontentCore (FCC)

Because Flux 7.1 is a main dependency of the "fluidcontent_core" extension (our replacement for CSS Styled Content, CSC) you can expect a first official release of this extension shortly after Flux 7.1. FCC will be available on TER, of course. FCC is, assuming you practice clean templating, orders of magnitude faster than CSC and will improve TYPO3 CMS performance not only when rendering content but also in every context that consumes TypoScript, due to the ~90% reduction in TypoScript required for content rendering.

FCC is a very clean break from almost every practice of CSC and therefore no migration scripts exist - it is simply not technically feasible to even minimally support creation of Fluid template code based on TypoScript that can contain almost infinite complexity in the form of user object, wraps, option splits etc.

We encourage you to give FCC a try for fresh projects only!


Have a nice weekend
The FluidTYPO3 team