All page names need to be in English.
en da  de  fr  it  ja  km  nl  ru  zh

FLOW3 1.0.0 alpha4

From TYPO3Wiki
Jump to: navigation, search
This page belongs to the Flow Team (category Flow)

Release Notes for FLOW3 1.0.0 alpha4

This document contains information about FLOW3 version 1.0.0 alpha4 which was released on September 8th, 2009.


notice - Note

As an alpha release, FLOW3 1.0.0-alpha4 is naturally not recommended for production use

News article on

What's New?

We focused on TYPO3 v5 the last three weeks, thus relatively small changes were done to FLOW3. A slew of changes aims to make FLOW3 even easier to use, mostly based on feedback to the Getting Stated tutorial. And we did some bug fixes to persistence and MVC regarding the handling of domain objects.

And, as we promised to focus on speed, we managed to achieve a huge speedup by restructuring the FLOW3 bootstrap and related parts of the configuration component to cache configuration and avoid even looking at the YAML files in production context.

For a full list of new features and improvements please see our Changelog below.


Again, as an alpha release, FLOW3 1.0.0-alpha4 is naturally not recommended for production use. Be warned: It's a bit slow, eats more memory than is perhaps healthy and has not yet undergone a full security review. However these issues will be addressed in the upcoming alpha releases and we're confident that FLOW3 1.0.0 final will be a rock solid framework which performs well in production environments.

Next Release

FLOW3 1.0.0 alpha 5 is scheduled for 1st of October 2009. It will mostly see the ironing out of small and large issues of all kinds. Remember it's holiday (and conference) time, so things will be a little slower than usual...

Your Feedback

We want to hear your opinions! What's your experience with this release? What went well, what didn't? What features are you missing? Join our discussions in the mailing list, IRC channel and twitter ... Check out for ways to get involved and get in touch. Get into the FLOW3! - Your FLOW3 Core Team


MD5 checksums

MD5 (FLOW3-1.0.0-alpha4.bz2) = c35c54083610d80439e686fc791deb0e
MD5 (FLOW3-1.0.0-alpha4.tgz) = e99c82c3106092209069b663ca0f8bc7
MD5 ( = 8bb3ce8c711c2fa50e74ed0495471de9


Most of the possible breaking changes are internal, caches should be cleared automatically. If you run into strange errors while using an existing database, try with an empty one. Although there were no changes to the internal way of storing data, something might have been broken which now breaks because of a fix...

For user-visible changes see the "Important Changes" part of the ChangeLog below.



FLOW3 (MVC): URIBuilder is now UriBuilder - r3132
FLOW3 (Utility): Removed the getSAPIType() method from the Environment class. Just use the constant FLOW3_SAPITYPE instead. Resolves #3567 and relates to #2117 - r3107


(AOP) Parse errors in AOP proxy code (introduced by a potential bug) will now be treated properly by throwing a meaningful exception - r3107
(Configuration) Implemented support for cached ("compiled") configuration. When the new FLOW3.yaml option "configuration: comileConfigurationFiles" is turned on, all configuration will be compiled into a PHP file which from then on is read instead of parsing the YAML files everytime. Please see the updated documentation for more information. Resolves #4460 - r3107
(Configuration) Removed support for PHP-based configuration files. This caused a lot of overhead and in practice we want everyone to use YAML files anyway - r3107
(Core) now checks if is called from the FLOW3 root directory. Resolves #4279 - r3124
(Core) For now disabled the Lock Manager which caused too much hassle for the developers in Development context. Will enable it again once it is more mature - r3115
(Property) When mapping to objects, UUIDs and identity arrays are now mapped to objects recursively - r3120

(Log) Added some safeguard to the backtrace function of the Logger - r3102
(MVC) resolve() in Router now handles (nested) domain objects correctly, fixes #4441 - r3134
(MVC) setRequest() in UriBuilder accepts generic RequestInterface instances again, need to make CLI controllers work - r3133
(Monitor) monitorDirectory() now detects new files. Hopefully resolves #4454 - r3129
(Property) Mapping to plain arrays is now possible, fixes #4443 - r3120
(Security) Resources are now considered as denied, if no ACL entry is configured. Resolves #4381 - r3108
(Utility) Reverted the patch from #3029 which resulted in routing problems with URLs like http://localhost/foo/bar/Web. Relates to #3029 - r3082

(MVC) Added a few @api annotations to properties of the AbstractController and ActionController - r3107
(Property) The map() method of the Mapper now accepts a class name as $target and tries to do the right thing (fetch, fetch/clone or create the right object) - r3120

(Configuration) Completely refactored the Configuration Manager and a few related classes. Its methods now each fullfil a clear purpose and work more effective. The method names now also better describe what each method is doing. Resolves #2711 - r3107
[~TASK] FLOW3 (Object): Session scope is implemented. Adjusted the documentation accordingly - r3111
[~TASK] FLOW3 (Documentation): Updated PHP 5.3 installation instructions for MacPorts - r3112
[~TASK] FLOW3 (Documentation): Added mbstring install to PHP 5.3 installation instructions for MacPorts - r3113


(TemplateParser) Now, multiple nesting levels are possible for nested ViewHelpers, instead of just one. Resolves #4231 - r3104
(TemplateView) Made templateRootPath configurable. Related to #3296 - r3105
(ViewHelpers) Added checkbox and radio form viewHelpers. Resolves #3661 - r3109
(ViewHelpers) Added fieldNamePrefix to FormViewHelper as a preparation for namespaced forms. Relates to #3717 - r3109
(ViewHelpers) Added reset() method to TagBuilder. This is called in all TagBasedViewHelper's initialize() method. This resolves #4051 - r3119


Compared against latest JSR-283 API and cleaned up some differences, added @api annotations to a whole bunch of constants and some methods - r3089


(Domain) Added an isset() check to the AccountRepository's find* method - r3101


(Admin) the setup controller now works again, fixes #4313 - r3126
(FLOW3 Persistence) objects in a SplObjectStorage are now no longer stored again when their parent property is dirty, fixes #3819 - r3086

(Query) adjusted TYPO3CR to the recent changes to the PHPCR interfaces (specifically the removal of PreparedQuery) - r3090


A warning is shown if the Development context is not active, fixes #4280 - r3130

Past Release Notes

If you have skipped one version while upgrading to this version, please make sure to read those ReleaseNotes (see list) also.