[BUGFIX] Image viewhelper clears $GLOBALS['TSFE'] in backend context
[Packages/TYPO3.CMS.git] / typo3 / sysext / fluid / ChangeLog.txt
1 ChangeLog for Fluid
2 ===================
3
4 Changes for 1.4.0:
5 ==================
6 included in TYPO3 4.6.0
7
8 This change features numerous cleanups, and the following new features:
9
10 Compilation of Fluid Templates to PHP files
11 -------------------------------------------
12
13 This adds a compile step to the parsing process of templates, layouts and
14 partials.
15 If no compiled cache file exists, Fluid will create it while parsing the
16 respective Fluid template.
17 The cache file is invalidated as soon as the template/layout/partial
18 has been modified (or if caches are flushed).
19 This speeds up the rendering process by factor 2-5, and reduces memory
20 consumption drastically.
21
22 !!! $this->arguments->hasArgument() removed
23 -------------------------------------------
24
25 AbstractViewHelper::$arguments are no longer an object but an array.
26
27 If you used $this->arguments->hasArgument() in your custom ViewHelpers,
28 you'll have to replace this with $this->hasArgument().
29
30 THIS IS A BREAKING CHANGE.
31
32 !!! Introduction of {_all} Variable
33 -----------------------------------
34
35 You can now use {_all} inside your template to access all variables available
36 right now. This is especially helpful for debugging:
37
38     {_all -> f:debug()}
39
40 or for passing all currently available variables to a partial:
41
42     <f:render partial="..." arguments="{_all}" />
43
44 This is only a breaking change if you used a variable _all inside your own
45 templates.
46
47 Widgets: Allow overriding templateRootPath
48 ------------------------------------------
49 It is now possible to override the widget template root path via the framework
50 configuration, for example:
51
52     plugin.tx_extension.view {
53       widget.<WidgetViewHelperClassName>.templateRootPath=...
54     }
55
56 Full Changes from 1.4.0 beta1 to 1.4.0:
57 =======================================
58 [TASK] Update version to 1.4.0-rc1
59 [TASK] Increase version number
60 [BUGFIX] Create new CObject in CObject ViewHelper
61 [BUGFIX] Fix Doc comment in format.padding ViewHelper
62 [BUGFIX] ViewHelper: Make SelectViewHelper use property paths as arguments
63 [FEATURE] Add parameter to RenderViewHelper for optional sections
64 [BUGFIX] Sanitize identifier when compiling templates
65 [BUGFIX] use $for only when not empty and not NULL
66 [+BUGFIX] disable cache when displaying FlashMessages in frontend
67 [+FEATURE] Comment ViewHelper
68 [TASK] Remove fluid autoloader
69 [+TASK] Marking Fluid as "stable" instead of "beta"
70 [+BUGFIX] Incorrect type of Error thrown (FLOW3 Error)
71 [BUGFIX] Make textfield view helper handle zero (not empty) values
72
73 Full Changes for 1.4.0 beta1:
74 =============================
75
76 [!!!][FEATURE] Compilation of Fluid templates to PHP files. Resolves: #28545
77 [TASK] Minor cleanups
78 [TASK] Tweak inline comment in TemplateView
79 [!!!][+FEATURE] Add a reserved variable {_all} returning all template variables
80 [BUGFIX] Deactivate EscapeInterceptor for certain ViewHelpers. Related: #27678
81 [TASK] Split escape ViewHelper into dedicated format ViewHelpers. Related: #27628
82 [BUGFIX] Whitespace fixes
83 [FEATURE] IconViewHelper (BE) should support CSS-sprites. Resolves: #9957
84 [TASK] Code Cleanup in TemplateView
85 [+BUGFIX] Use of depreciated function debug in debugViewHelper. Fixes: #27970
86 [BUGFIX] Fix Widget support. Resolves: #27783
87 [TASK] Recreate ext_autoload.php. Related: #27680
88 [+FEATURE] (ViewHelpers): Adjust Fluid to new Property Mapper. Related: #27656
89 [+TASK] Fluid: Make use of newly introduced Extension Service. Related: #13864
90 [+BUGFIX] Fix unit tests
91 [TASK] Fluid: Use strpos() instead of strstr() where possible
92 [TASK] Make TextboxViewHelper a subclass of TextFieldViewHelper
93 [TASK] (ViewHelper): Code Cleanup to AbstractFormField ViewHelper
94 [TASK] (Core): Code Cleanup in AbstractTagBasedViewHelper
95 [+BUGFIX] (Core): Condition improvements. Resolves: #27557
96 [TASK] Cleanup and small improvements to Interceptors
97 [TASK] Comment and non-functional changes
98 [+BUGFIX] Empty a tag ends with /> instead of </a>. Resolves: #27556
99 [BUGFIX] Better error message for "unknown section" exception
100 [+BUGFIX] Fluid (Core): Simplify debugging of exceptions thrown during render
101 [+BUGFIX] Fluid: Fix CObjViewHelper. Fixes: #26138
102 [+FEATURE] Widgets: Allow overriding templateRootPath. Thanks to Peter B├╝cker. Resolves: #10823
103 [FEATURE] PaddingViewHelper: allow padding-type right/left/both. Resolves: #9283
104 [BUGFIX] Fix documentation for BE-ViewHelpers. Resolves: #9942
105 [~TASK] Update jQuery versions
106 [+BUGFIX] CObjViewHelper: fixed using numeric values as data argument. Fixes: #12891
107 [+BUGFIX] ActionMenuItemViewHelper: XHTML compliance in "selected" attribute value. Fixes: #8744
108 [+BUGFIX] Fluid: CObjViewHelper fix deprecated call "getAccessibleProperties". Fixes: #26138
109 [!!!][+TASK] Fluid v4 (Core): Make layout UpperCamelCase (with fallback)
110 [~TASK] Fluid: Raising version from 1.3.0 to 1.4.0-devel
111 [+FEATURE] Fluid (ViewHelpers): Add RawViewHelper
112 [+FEATURE] Fluid v4 (Core): Set layoutName by variable
113
114
115
116 Changes for 1.3.0:
117 ==================
118 included in TYPO3 4.5.0 LTS.
119
120 Here, only smaller bugs and inconsistencies have been fixed. For a description of bigger features, see below to the versions where they were introduced.
121
122 Full Changes for 1.3.0:
123 =======================
124
125 [+TASK] Fluid (ViewHelpers): fixed typo in doc comment examples of emailViewhelper
126 [+BUGFIX] Fluid (Tests): Fixed CropViewHelper unit test
127 [+BUGFIX] Fixed comparison of Objects
128         Objects in comparison expressions were compared lazily
129         with == before this change. Now, they are compared with
130         ===, which is the expected behavior on objects.
131 [+TASK] Fluid (ViewHelpers): Extended inline documentation of FlashMessages ViewHelper
132 [+BUGFIX] Fluid (Tests): Fixed Fluid unit tests!
133
134 Changes for 1.3.0 RC1:
135 ======================
136 included in TYPO3 4.5.0 RC1.
137
138 This change contains numerous bugfixes, most notably fixes the Widget
139 Bootstrap and the Standalone View (which is used in "FLUIDTEMPLATE").
140
141 Full Changes for 1.3.0 RC1:
142 ===========================
143
144 [+BUGFIX] Fluid (View): Fix StandaloneView
145         Since implementation of Dependency Injection the Fluid
146         Standalone view was broken in some cases, cause it did not
147         properly initialize all needed objects.
148         Fixes: #11520
149 [+BUGFIX] Fluid (Core): Allow ViewHelpers to be placed in t3lib and tslib
150         The Fluid template parser does now recognize ViewHelpers inside t3lib/
151         or sysext/cms/tslib/, so Fluid can now be used inside the TYPO3 core.
152         Thanks to Andreas Wolf for the patch!
153         Resolves: #12061
154 [+BUGFIX] Fluid (Widget): Adopt Widget Bootstrap to Extbase Bootstrap changes
155         Problem: The configureObjectManager method in Tx_Fluid_Core_Widget_Bootstrap
156         uses a call on a static method Tx_Extbase_Object_Container_Container::getContainer()
157         which doesn't exist anymore. The Container has become a t3lib_Singleton.
158         This patch changes the behavior, and makes it work again.
159         Thanks to Thomas Maroschik for the patch!
160         Resolves: #11991
161
162 Changes for 1.3.0 Beta 4:
163 =========================
164 included in TYPO3 4.5.0 Beta 4.
165
166 This change contains numerous bugfixes.
167
168 Full Changes for 1.3.0 Beta 4:
169 ==============================
170
171 [~TASK] Fluid (Tests): Fixed some testcase class names
172 [+FEATURE] Fluid (ViewHelpers): prepend URIs with scheme if it's not specified in link.external / uri.external ViewHelpers. Resolves #10401
173 [+TASK] Fluid (ViewHelpers): Fix, cleanup and extend inline documentation of ViewHelpers
174 [+BUGFIX] Fluid (View): Fixed deprecation message about lowercase template files names
175
176 Changes for 1.3.0 Beta 2:
177 =========================
178 included in TYPO3 4.5.0 Beta 2.
179
180 The main change is the updating of the FlashMessage ViewHelper and concept:
181
182 Since r3062 Extbase uses the t3lib_FlashMessageQueue to store flashmessages.
183 Now you can output them including title and severity, making it possible
184 to render flashmessages just like the ones from the core in BE mode.
185 To keep backwards compatibility, the default rendering still outputs
186 only the message bodies in an unordered list. Set the renderMode argument
187 to "div" in order to display the new style:
188 <f:flashMessages renderMode="div" />
189
190 **********************************************************************************************
191 *Extbase / Fluid 1.3.0 can now ONLY BE USED WITH TYPO3 4.5, as the older versions do not have*
192 *the FlashMessageQueue available!                                                            *
193 **********************************************************************************************
194
195 Full Changes for 1.3.0 Beta 2:
196 ==============================
197 [+BUGFIX] Fluid (ViewHelpers/Widget): widget.link and widget.uri no create relative URLs
198 [+FEATURE] Fluid (ViewHelpers): Add render mode to FlashMessage ViewHelper
199 [-TASK] Fluid: Removed all @scope annotations as they are not used in v4
200 [+TASK] Fluid (View): Added additional check for deprecated lower case template filenames that works on case insensitive file systems (Windows) too. Watch your deprecation log in typo3conf and fix your template filenames if they're still lower case.
201 [+BUGFIX]: explicitly cast offset to integer to avoid exceptions in paginate view helper
202
203
204 Changes for 1.3.0 Beta 1a:
205 ==========================
206 included in TYPO3 4.5.0 Beta 1.
207
208 This Fluid Release contains the following main features, along with the usual bunch of bugfixes:
209
210 * Fluid Widgets (see below)
211 * Fluid Standalone View (in Fluid 1.3.0 Alpha 3, but has not been inside a TYPO3 Release yet)
212         In order to be able to use Fluid templates beyond the Extbase plugin context
213         (e.g. to render E-Mail templates or to use the new FLUIDTEMPLATE content object)
214         we created a new template view, that encapsulates inner workings and provides
215         an easy-to-use API:
216
217         $view = t3lib_div::makeInstance('Tx_Fluid_View_StandaloneView');
218         $view->setTemplatePathAndFilename('foo/Bar.html');
219         print $view->render();
220
221 Fluid Widgets
222 -------------
223
224 Widgets are special ViewHelpers which encapsulate complex functionality. It can be best understood
225 what widgets are by giving some examples:
226 * <f:widget.paginate> renders a Paginator, i.e. can be used to display large amounts of objects. This
227   is best known from search engines.
228 * <f:widget.autocomplete> adds autocompletion functionality to a text field.
229 * More widgets could include a Google Maps widget, a sortable grid, ...
230
231 Internally, widgets consist of an own Controller and View part.
232
233 Using widgets inside your templates is really simple: Just use them like standard ViewHelpers,
234 and consult their documentation for usage examples. An example for the <f:widget.paginate> follows below:
235
236 <f:widget.paginate itemsPerPage="10" objects="{blogs}" as="paginatedBlogs">
237         // use {paginatedBlogs} as you used {blogs} before, most certainly inside
238         // a <f:for> loop.
239 </f:widget.paginate>
240
241 In the above example, it looks like {blogs} contains all Blog objects, thus you might wonder if all
242 objects were fetched from the database. However, the blogs are NOT fetched from the database until
243 you actually use them, so the paginate ViewHelper will adjust the query sent to the database and
244 receive only the small subset of objects. So, there is no negative performance overhead in using
245 the Paginate Widget.
246
247 For more details on how to write widgets, consult the Fluid manual, section "Fluid Widgets".
248
249 Full Changes for 1.3.0 Beta 1a:
250 ===============================
251 [+FEATURE] Fluid (ViewHelpers): the subject argument of the count ViewHelper is now optional so you can use it like {objects -> f:count()}
252 [+BUGFIX] Fluid (ViewHelpers): Fixed inline documentation of widget.autocomplete ViewHelper. This fixes #10882
253 [+TASK] Fluid (ViewHelpers): Added some more inline documentation for cObject, widget.paginate, widget.autocomplete & count ViewHelpers
254 [+BUGFIX] Fluid (ViewHelpers): replaced two occurrences of Tx_Extbase_Dispatcher::*() by using the injected ConfigurationManager
255 [+TASK] Fluid (ViewHelpers): uri.image now works in BE mode too
256 [+BUGFIX] Fluid (ViewHelpers): Adjustment to skinning api change
257 [+FEATURE] Fluid (ViewHelpers/Widget): Slightly improved paginate widget: The link to the first page now skips the currentPage argument resulting in nicer URLs and less cHashes
258 [+FEATURE] Fluid (ViewHelpers): excluding obsolete widget arguments & cHash from widget links if they're not explicitly set
259 [+BUGFIX] Fluid (Core/Widget): AjaxWidgetContextHolder now uses a unique id for the Ajax WidgetContext. This makes sure, that the ajax response gets the right context, even if you open multiple browser windows in the same session
260 [+BUGFIX] Fluid (Core): The Fluid Widget Bootstrap now initializes the object manager in order to respect "config.tx_extbase.object" configuration.. TODO: this should be somehow refactored to avoid code duplication
261 [+BUGFIX] Fluid: Reduced the typeNum for the fluidAjaxWidgetResponse page. Apparently 7076857368 was too large ;) TODO: the typeNum should be somehow configurable
262 [~TASK] Fluid (ViewHelpers/Widget): removed $GLOBALS['TSFE']->additionalHeaderData call from AutocompleteViewHelper as this is not configurable like this. Moved the jQuery includes to Configuration/TypoScript/setup.txt which can be included in your main TS template
263 [+BUGFIX] Fluid (ViewHelpers): Fixed Widget URI generation in widget.link/widget.uri ViewHelpers/Link/WidgetViewHelpers
264 [~TASK] Fluid (ViewHelpers/Widget): Tweaked PaginateViewHelper: Minor refactoring of controller & template
265 [-TASK] Fluid (Compatibility): Forgot to remove obsolete Tx_Fluid_Compatibility_ObjectManager in previous commit
266 [+FEATURE] Fluid (Core/Widget): Added Tx_Fluid_Core_Widget_Bootstrap that is used to dispatch Ajax requests (see ext_typoscript_setup.txt).
267 [~TASK] Fluid (Compatibility): Removed Tx_Fluid_Compatibility_ObjectManager and replaced instances by Tx_Extbase_Object_ObjectManagerInterface instances
268 [~TASK] Fluid (Core/Widget): AbstractWidgetController has to be a singleton so it can be injected in the WidgetViewHelper.. To be discussed!
269 [+TASK] Fluid (Core/Widget): AjaxWidgetContextHolder is now correctly stored in the BE/FE Users session if the ajaxWidget of the corresponding Widget is TRUE.
270 [+TASK] Fluid (Core/Widget): The WidgetContext now contains a reference to the parent extension & plugin name. That's needed for the widgetAjaxResponse.
271 [+BUGFIX] Fluid (Core/Widget): WidgetRequestBuilder now correctly interprets GET parameters and dispatches Ajax requests
272 [+BUGFIX] Fluid (ViewHelpers): Modified ViewHelpers cObject, format.crop, format.html, image, uri.image so that they use dependency injection in order to retrieve the current cObject instance from the configurationManager
273 [+BUGFIX] Fluid (ViewHelpers): Fixed form ViewHelper to respect configured pluginNamespace in field name prefixes
274 [+BUGFIX] Fluid (ViewHelpers): link.widget/uri.widget ViewHelpers now create correct URIs
275 [+BUGFIX] Fluid (ViewHelpers): replaced @inject annotation by injectController method in AutocompleteViewHelper.
276 [+FEATURE] First step of "Fluid widget" backport
277         This is the first step of the Widget backport (#8773). This contains all the core classes that are required for the widget implementation and two exemplary Widget ViewHelpers "widget.paginate" and "widget.autocomplete".
278         Note: Ajax widgets are not yet working!!
279         Relates to: #8773
280         Relates to: #10568
281 [!!!][+BUGFIX] Fluid (View): Adjust fluid to recent resolveView() backport
282         Tx_Fluid_View_AbstractTemplateView now implements the Tx_Extbase_MVC_View_ViewInterface that was changed in r2675.
283         NOTE: This is a breaking change because the API method Tx_Fluid_View_TemplateView::hasTemplate was renamed to canRender(). Besides I deleted the TemplateViewInterface that is no longer needed. Implement Tx_Extbase_MVC_View_ViewInterface or simply extend Tx_Fluid_View_AbstractTemplateView if you want to write your own view implementation
284         Relates to: #8990
285 [+BUGFIX] Fluid: Adjust Fluid to Dependency Injection changes. Relates to: #9062
286
287 Changes for 1.3.0 Alpha 3:
288 ==========================
289 [+BUGFIX] Fluid (ViewHelpers): ImageViewHelper supports additionalAttributes argument
290         The image view helper did not call the parent constructor, which registeres the "additionalAttributes" argument. Thanks to Michael Knoll.
291 [+FEATURE] Fluid (View): Fluid Standalone view (#10473)
292 [+TASK] Fluid (ViewHelpers): Minor tweak in CObject ViewHelper
293         Make sure, that the configurationManager is initialized.
294         This is just a preliminary solution that will be replaced as soon
295         as the Extbase dispatcher refactoring (#7153) is done.
296
297 Changes for 1.3.0 Alpha 2:
298 ==========================
299 included in TYPO3 4.5.0 Alpha 2.
300
301 In this release, mostly small bugfixes have been made in Fluid. Highlights are:
302
303  * {settings} is now automatically in partials. (#6289)
304
305  * You can now use <f:security.ifAuthenticated> and <f:security.ifHasRole role="foo"> (#9143)
306    in your Fluid templates to check whether an FE user is currently logged in / belongs to the
307    specified usergroup.
308    Note: if "role" is a numeric value the uid of the usergroup is compared, otherwise the title
309    of the usergroup.
310    To deal with BE users you can use the respective be.security.* view helpers
311
312  * Boolean expressions can now contain negative numbers. Resolves #9434.
313
314 Full Changes:
315 -------------
316
317 [+FEATURE] Fluid (Core): {settings} is available in Partials
318 Now, the {settings} are automatically available in partials and sections.
319 Before, they had to be passed explicitely, i.e. by calling
320 <f:render section="..." arguments="{settings: settings}" />.
321 If somebody defined his own "settings"-argument, this still takes precedence:
322 <f:render section="..." arguments="{settings: some.different.settings}" />
323 This means that this change is completely backwards compatible.
324 NOTE: The settings are NOT merged together, like it has been suggested in #6289,
325 as this will lead to un-obvious behavior for the user.
326
327 [-API] Fluid (Core): Remove getTemplateParser() method.
328 This method has accidentally gotten an @api annotation,
329 and was only needed for the Viewhelpertest package.
330 Now, this package is cleaned up, and this method can be
331 completely thrown away.
332
333 [+BUGFIX] Fluid (ViewHelpers): Fix bug in Form ViewHelper
334 Since #6521 you can use the "objectName" argument to specify the name of a bound object rather then using the "name" attribute.
335 But if you do so, the rendered hidden identity field is not correct anymore. This behavior is fixed with this commit.
336 Resolves: #9515
337
338 * Documentation Cleanup
339
340 [+FEATURE] Fluid (ViewHelpers): Backported ifAuthenticated & ifHasRole security ViewHelpers
341 you can now use <f:security.ifAuthenticated> and <f:security.ifHasRole role="foo">
342 in your Fluid templates to check whether an FE user is currently logged in / belongs to the
343 specified usergroup.
344 Note: if role is a numeric value the uid of the usergroup is compared, otherwise the title
345 of the usergroup.
346 to deal with BE users you can use the respective be.security.* view helpers
347 Resolves #9143
348
349 [TASK] Fluid (Core): Regular Expression performance improvements
350 In rare cases, on some systems (like mine), the
351 PCRE parser reproducably crashes if one passes very
352 long argument strings into it, or very complex ones.
353 With this patch, the parser is slightly modified
354 to decrease the use of backtracking; which then avoids
355 the crashes mostly.
356
357 [TASK] Fluid (Core): Formatted Regular Expressions more nicely
358 There were some undocumented regular expressions
359 in the parser, which needed to be formatted nicely.
360
361 [+BUGFIX] Fluid (Core): Boolean expressions can now contain negative numbers. Resolves #9434.
362 Boolean expressions with negative numbers did not work so far.
363 Now, they work as expected. Example from Viewhelpertest which displayed
364 a wrong result before, and now displays the correct result:
365 <f:if condition="{testVariables.number.minusOne} < -1.1">
366         <f:then>Then part!</f:then>
367         <f:else>Else part!</f:else>
368 </f:if>
369 Issue: #9434
370
371
372
373 Changes for 1.3.0 Alpha 1
374 =========================
375 included in TYPO3 4.5.0 Alpha 1.
376
377 In this release, numerous bugs have been fixed, making Fluid more stable than ever. Below are some nice features which have been introduced:
378
379 * Instead of <f:form name="...">, you should now write write <f:form objectName="...">, to create an XHTML compliant form (#6521)
380
381 * The <f:for>-ViewHelper has now Iteration Information available, if you want that:
382   <f:for each="{objects}" as="object" iteration="iteration">
383      {iteration.index} is a counter which starts at 0
384      {iteration.cycle} is a counter which starts at 1
385      {iteration.isEven} / {iteration.isOdd} is a boolean variable which is true if the index is even/odd
386      {iteration.isFirst} / {iteration.isLast} is a boolean variable which is true if it is the first or last element in the list.
387   </f:for>
388
389 !!! Refactored all Condition-ViewHelpers like f:if, f:security.if* to use a newly created base class F3\Fluid\Core\ViewHelper\ConditionViewHelper. This greatly simplifies the implementation of custom conditions.
390   THIS IS A BREAKING CHANGE in case you copied the f:if ViewHelper to create a custom condition ViewHelper, as the internal workings changed. Please check the new f:if ViewHelper to see how to adjust your ViewHelper -- you basically just have to throw away a lot of code. Resolves #8824.
391
392 * Fixed section, partial and layout rendering to function in all cases as expected now, and tested this behavior also.
393   !!! Removed renderSection() and renderWithLayout() from public API in Tx_Fluid_View_TemplateView, as this should only be called from inside Fluid.
394
395 * Fixing checkbox, radio and select-ViewHelpers, but this task is not finished yet.
396   !!! The value argument is required again in form.checkbox and form.radio ViewHelpers. This is a breaking change, as the value argument has not been mandatory for a while. But it probably won't break existing templates as omitting the value makes no sense at all.
397
398 * Fixed BE support of ViewHelpers (cObject, format.crop, uri.resource, format.html, image)
399
400 * Negative numeric values are now properly converted to FALSE when used in boolean ViewHelper arguments.
401
402 * added f:uri.image ViewHelper, working just like f:image, but returning the URL and not the full image tag.
403
404 Full Changes:
405 -------------
406 [~TASK] Fluid: Changed version of Extbase dependency from '1.2.0-1.2.999' to '1.3.0.devel' to reflect the version scheme defined in the wiki. Relates to #9152.
407 [+BUGFIX] Fluid (View): AbstractTemplateView now correctly implements F3\FLOW3\MVC\View\ViewInterface and assign() and assignMultiple() will return an instance of $this to allow chaining again like $this->view->assign()->assign()... This fixes #9090 (backported from Fluid package r4931)
408 [~TASK] Fluid (Tests): committing modified AbstractFormFieldViewHelperTest that I forgot to add in previous commit
409 [+TASK] Fluid (ViewHelpers): Small performance improvement in ForViewHelper: Objects will only be converted to arrays if reverse is TRUE. Relates to #8732 (backported from Fluid package r4907)
410 [+TASK] Fluid (View): Added getter for template parser to AbstractTemplateView. This is useful if you want to use the parser from within your custom ViewHelper (creating a new instance would skip interceptor registration) (backported from Fluid package r4907)
411 [~TASK] Fluid (ViewHelpers): Added argument "objectName" to form ViewHelper. This is now the recommended way to specify the name of the object that is bound to a form! If objectName is not specified, the name attribute will be used as object name for backwards-compatibility reasons. This resolves #6521 (backported from Fluid package r4905)
412 * Raised Fluid version in trunk to 1.3.0-devel
413 [+BUGFIX] Fluid (ViewHelpers): Fixed a possible security issue where the content inside the Fluid a is not properly HTML escaped.
414 [+FEATURE] Fluid (ViewHelpers): Added iteration information to for ViewHelper. Thanks to all the contributors for your input and patches! This resolves #6149 (backported from Fluid package r4904)
415 [~TASK] Fluid (ViewHelpers): Fresh backport from Fluid package r4899 (Mostly fixed typos. slightly improved count ViewHelper)
416 [~TASK] Fluid (ViewHelpers): Replaced custom convertToArray() method by PHPs iterator_to_array() function in cycle, for and groupedFor ViewHelpers. This resolves #8732. (backport from Fluid package r4898)
417 [+BUGFIX] Fluid (ViewHelpers): Now, it is possible to "unselect" checkboxes and multiselect fields in editing forms. This fixes #5638. This fixes #8535. This fixes #6897 (improved forward-backport from Fluid package r4874)
418 [+TASK] Fluid (Tests): Backported FormViewHelperTest from Fluid package
419 [+BUGFIX] Fluid (ViewHelpers): FormViewHelper wraps hidden fields with a div tag to create XHTML valid output. This fixes #5512 (backported from Fluid package)
420 [~TASK] Fluid (ViewHelpers): Fixed BE support of the ViewHelpers cObject, format.crop, uri.resource. Relates to #8947
421 [~TASK] Fluid (ViewHelpers): Added BE support in the ViewHelpers format.html and image. Relates to #8947
422 [!!!][+TASK] Fluid (ViewHelpers): The value argument is required again in form.checkbox and form.radio ViewHelpers. This is a breaking change, as the value argument has not been mandatory for a while. But it probably won't break existing templates as omitting the value makes no sense at all. Relates to #8852 (backported from Fluid package r4864)
423 [+FEATURE] Fluid (Core): implemented overrideArgument() method in AbstractViewHelper to be able to override previously registered arguments in subclasses. This resolves #8852 (backported from Fluid package r4864)
424 [+BUGFIX] Fluid (Core): Negative numeric values are properly converted to FALSE when used in boolean ViewHelper arguments. This resolves #8893 (backported from Fluid package r4864)
425 [+BUGFIX] Fluid (ViewHelpers): Reversed the rendering order of header and childNodes in be.container ViewHelper to enable child nodes to modify the pageRenderer. This resolves #8880 (thanks to Andreas Wolf)
426 [+BUGFIX] Fluid: Removed leading slash from @var annotations that were backported by mistake
427 [+BUGFIX] Fluid: Replaced SplObjectStorage by Tx_Extbase_Persistence_ObjectStorage to be PHP 5.2-compatible (which ships with a broken implementation of SplObjectStorage)
428 [!!!][~TASK] Fluid (Core): Renamed ConditionViewHelper and TagBasedViewHelper to Abstract*ViewHelper as per CGL. (backported from Fluid package r4840). To be backwards-compatible, TagBasedViewHelper.php still exists and will write an entry to TYPO3s deprecation log if used. Please adapt your custom ViewHelpers and inherit from AbstractTagBasedViewHelper instead of TagBasedViewHelper. This resolves #8834
429 [~TASK] Fluid: Marked vfs unit tests to be skipped, as vfs is not part of v4 (yet)
430 [-TASK] Fluid: Removed @package/@subpackage annotations from all Fluid classes. They have already been removed in FLOW3 packages in r2813.
431 [-TASK] Fluid: Removed @version annotation from all Fluid classes to ease the backporting process. Relates to #8835 (backported from Fluid package)
432 [+BUGFIX] Fluid (View): fixed method signature of AbstractTemplateView:getTemplateSource() that was different from the concrete implementation (backported from Fluid package)
433 Fluid in v5 and v4 are now synchronized again!
434 [+FEATURE] Fluid: The TemplateVariableContainer now provides a method to retrieve all variables.
435 [~TASK] Fluid (Core): Introduced a RenderingContextInterface to more cleanly decouple Fluid's rendering context from the TypoScript rendering context. Note that view helpers (and other code) should now refer to that interface instead of the concrete Fluid implementation!
436 [!!!][+BUGFIX] Fluid (Core): Refactored all Condition-ViewHelpers like f:if, f:security.if* to use a newly created base class F3\Fluid\Core\ViewHelper\ConditionViewHelper. This greatly simplifies the implementation of custom conditions. However, THIS IS A BREAKING CHANGE in case you copied the f:if ViewHelper to create a custom condition ViewHelper, as the internal workings changed. Please check the new f:if ViewHelper to see how to adjust your ViewHelper -- you basically just have to throw away a lot of code. Resolves #8824.
437 [!!!][-API] Fluid (TemplateView): Removed renderSection() and renderWithLayout() from public API in Tx_Fluid_View_TemplateView, as this should only be called from inside Fluid.
438 [!!!][TASK] Fluid (ViewHelpers): the <f:section />-ViewHelper now does NOT render itself anymore when encountered in a normal template. Example: Before the change, the template "before <f:section name='...'> middle </f:section> after" was rendered as "before middle after", but now it is only rendered as "before after". Although this is a breaking change, it is quite unlikely that anybody relied on this behavior, as it was inconsistent beforehand.
439 [TASK] Fluid (TemplateView): Major refactoring of the layout, partial and section rendering mechanism. This also induces a speedup as retundant rendering is eliminated.
440 [+FEATURE] Fluid (ViewHelpers): The <f:render>-ViewHelper can be now used to render sections in the same partial and template. In these cases, all arguments need to be specified explicitely. Additionally, it can now be used to render a section recursively.
441 [~TASK] Fluid (Core): Removed some non-API-methods which were never called.
442 [+FEATURE] Fluid (ViewHelpers): format.crop ViewHelper now supports all features in Backend mode. Relates to #8648
443 [+TASK] Fluid: Set dependency to Extbase 1.2.x in ext_emconf.php to avoid confusions when working with different versions
444 [+TASK] Fluid: Backported recent changes from Fluid package:
445 [+FEATURE] Fluid (ViewHelpers): added "selectAllByDefault" argument to form.select ViewHelper. Resolves #4984
446 ~TASK] Fluid (Parser): Got rid of the constructor in Parser\Configuration.
447 [+FEATURE] Fluid (ViewHelpers): Added uri.image ViewHelper. This resolves #8233
448 [+FEATURE] Fluid (ViewHelpers): Added URI options noCache, noCacheHash, section, format, additionalParams, absolute, addQueryString & argumentsToBeExcludedFromQueryString to FormViewHelper. Resolves #8247 [+BUGFIX] Fluid: Removed a leading backslash in ViewHelperBaseTestcase that led to an error with PHP < 5.3
449 [+TASK] Fluid: Backported some recent Fluid changes (Note: this is not a complete backport, there are still changes in Fluid Package that are not backported yet):
450 [+BUGFIX] Fluid (ViewHelpers): form.select ViewHelper did only check whether "multiple" attribute was set and not whether it was empty or not. Resolves #5879
451 [+FEATURE] Fluid (ViewHelpers): GroupedForViewHelper can now group by object. Resolves #7389
452
453
454 HOW TO CREATE THE CHANGELOG
455 ===========================
456 git log [startRevision]..HEAD --pretty=format:"%s%n%b%n" | grep -v "^$" | grep -v "git-svn-id"