[root]/Documentation/Manual/en

| Author | Changes | Lines of Code | Lines per Change |
|---|---|---|---|
| Totals | 172 (100.0%) | 12995 (100.0%) | 75.5 |
| robert | 65 (37.8%) | 10162 (78.2%) | 156.3 |
| k-fish | 105 (61.0%) | 2132 (16.4%) | 20.3 |
| andi | 2 (1.2%) | 701 (5.4%) | 350.5 |
Removed everything in trunk after move to git.
0 lines of code changed in 22 files:
* FLOW3: (Documentation) Created an (empty) installation chapter
14 lines of code changed in 2 files:
FLOW3:
* added better examples and more explanations about namespace/class naming to CGL, refs #2515
232 lines of code changed in 1 file:
* FLOW3: (MVC) Introduced a RequestInterface and a ResponseInterface and made sure those are used everywhere where the Request class was used before.
* FLOW3: (Documentation) Continued writing documentation for the MVC framework.
196 lines of code changed in 1 file:
FLOW3:
* changed $viewObjectNamePattern in ActionController to expect views classes in a namespace reflecting the controller name
* renamed DefaultController to StandardController to follow suit
* renamed DefaultView to StandardView to follow suit
* updated documentation
FLOW3 Distribution:
* updated Routes.yaml
Fluid:
* renamed DefaultController to StandardController
Testing:
* renamed DefaultController to StandardController
TYPO3CR:
* renamed DefaultController to StandardController in Admin subpackage
* moved view classes to new location
29 lines of code changed in 4 files:
* FLOW3: Raised required PHP version to 5.3.0RC1
* FLOW3: (Error) The \F3\FLOW3\Error\Error class now supports __toString()
* FLOW3: (MVC) Finished implementation of validation rules in the action methods. Now these rules are actually enforced. Now really resolves #3092.
* FLOW3: (MVC) The ActionController now checks if it can process the request ? didn't do that before. Fixes #3121.
* FLOW3: (Property) The property mapper's mapAndValidate() method now actually validates the source.
* FLOW3: (Reflection) The Reflection Service now detects class file changes again. (Problem was that the settings were not injected anymore because autowiring was turned off for the Reflection Service in the Objects.yaml) Fixes #3152.
* FLOW3: (Validation) Removed the Validation\Errors class - now a simple array is used instead.
* FLOW3: (Validation) Removed the $errors argument from FilterInterface::filter(). More changes to this interface will follow.
* FLOW3: (Validation) Validation options must be set with the new setOptions() method instead of passing them to the isValid() method.
* FLOW3: (Validation) The errors array is not passed to the isValid() method of a validator anymore - instead it can be retrieved by a new getErrors() method which is defined in the ValidatorInterface.
* FLOW3: (Validation) Validators may now be singleton or prototype. Marked all those validators as prototype which require options and let others be singletons.
* FLOW3: (Validation) Removed the public resolveValidatorClassName() method from the ValidatorResolver class.
* FLOW3: (Validation) !!! changed the option names of the StringLength validator: now they are "minimum" and "maximum"
* FLOW3: (Validation) Changed the ObjectValidatorInterface: canValidateType() is now canValidate() and asks for an objects instead of a class name.
* FLOW3: (Validation) The first argument of the Validator Resolver's createMethodValidator() has changed: Now either the short name or a fully qualified object name of a _validator_ is expected (instead of the data type)! Maybe also addresses #3130.
* FLOW3: (Documentation) Added a few lines of documentation and an example for the validation rules feature. More to come.
* Fluid: (Core) Fixed a test which was referring to the \F3\FLOW3\Validation\Errors class.
31 lines of code changed in 1 file:
FLOW3:
* ClassSchema and ClassSchemataBuilder now handle the @lazy annotation
TYPO3CR:
* the persistence DataMapper obeys the @lazy annotation for \SplObjectStorage properties
* the persistence backend ignores properties holding a LazyLoadingProxy
59 lines of code changed in 1 file:
FLOW3:
* some documentation nitpicking
8 lines of code changed in 2 files:
This commit mostly consists of speed optimizations.
* FLOW3: (AOP) Fixed a few pointcut filters which crashed while trying to match against an automatically created constructor which didn't existing originally in the target class.
* FLOW3: (AOP) The ProxyClassBuilder won't add a __wakeup() method to each proxy class anymore. Instead such a method must be introduced manually.
* FLOW3: (Object) Removed the check for abstract classes in the Object Manager's registerObject() method. It's still not allowed to do that but omitting the check means less use of reflection = more speed and PHP will complain about the abstract class anyway.
* FLOW3: (Object) Optimized the use of the reflection service in the Object Manager's registerObject() method.* FLOW3: (Cache) The FileBackend now logs if entries are set instead of removed. Still not the final solution (for logging in general that is)
* FLOW3: (Object) Optimized the instantiation of classes in the ObejctBuilder: The use of ReflectionClass::newInstanceArgs() is now avoided in most cases
* FLOW3: (Object) !!! changed the name of the autowiring setting: it is now "autowiring" instead of "autoWiringMode"
* FLOW3: (Reflection) Optimized the caching of reflection data: All classes which were reflected after the cache has been loaded will be added to the cache during shutdown. Therefore they will be available earlier on the next script run.
* FLOW3: (Reflection) The reflection service now logs important actions for debugging.
* FLOW3: (Log) Enabled the Production log by default (see .../Data/Logs/FLOW3_Production.log)
* FLOW3: Switched autowiring off for a few objects which are loaded at a time when the Reflection Service is not yet initialized and therefore costy to use.
1 lines of code changed in 1 file:
FLOW3:
* some updates to the coding guidelines, fixes #2536
78 lines of code changed in 2 files:
FLOW3 (AOP):
* Changed the setting filter to use the '.' as separator.
* Adjusted the documentation accordingly.
9 lines of code changed in 1 file:
FLOW3:
* small fix to AOP documentation
8 lines of code changed in 1 file:
* FLOW3: (MVC) Moved the logic for the NotFound mechanism from the dispatcher into the request.
* FLOW3: (MVC) Wrote test case for the NotFoundController fallback
* FLOW3: (MVC) Improved the NotFoundView a bit
* FLOW3: (MVC) Made the object name of the NotFoundController configurable in the FLOW3 settings.
Resolves #1511.
15 lines of code changed in 1 file:
FLOW3:
* restructured documentation to fit new rendering scheme
* a slew of (markup) fixes to the documentation
217 lines of code changed in 16 files:
FLOW3:
* fixed some long filenames in the documentation.
15 lines of code changed in 2 files:
FLOW3:
* added support for @identity to ClassSchema and ClassSchemataBuilder
13 lines of code changed in 1 file:
FLOW3:
* replaced @identifier annotation by @uuid
* fixed getUUID() on Persistence\Manager
3 lines of code changed in 1 file:
* FLOW3: (Monitor) Fixed the automatic flushing of the Class File Monitor. This didn't work anymore since class filenames have been shortened to the unqualified class name.
* FLOW3: (MVC) Removed a few unused methods and fixed the signature of canProcessRequest()
* FLOW3: (MVC) Implemented support for definition of a default view: If $this->objectViewName is set to the object name of a view (eg. F3\Fluid\View\TemplateView), this view is used instead of the view suggested by the Router.
* FLOW3: (Object) Implemented support for Property Injection! Refer to the FLOW3 Reference for some examples.
* FLOW3: (Resource) Fixed the Resource Publisher testcase.
64 lines of code changed in 2 files:
FLOW3: (Documentation) Fixed a typo.
1 lines of code changed in 1 file:
* FLOW3: (Documentation) Updated the documentation for the Package system explaining in short the new Packages folder structure.
130 lines of code changed in 1 file:
FLOW3 Documentation:
* fixed markup for some code listings
* fixed file header to reflect current practice
* some small changes and clarifications
135 lines of code changed in 8 files:
* FLOW3: (MVC) The Request Handler Resolver now automatically registers all classes implementing the RequestHandlerInterface as request handlers. Resolves #2505
* FLOW3: (MVC) Wrote test case for the Request Handler Resolver
* FLOW3: (Documentation) Updated documentation for how to implement custom request handlers
8 lines of code changed in 1 file:
FLOW3:
* (Documentation) added some explanation on the inner workings of the persistence subpackage
70 lines of code changed in 4 files:
* FLOW3: Fixed license comments in a few sub packages.
3 lines of code changed in 1 file:
* FLOW3: (Documentation) Added documentation about configuring the name of the shutdownObject lifecycle method.
* FLOW3: (Documentation) Revised and spell-checked the chapters about AOP and configuration.
1233 lines of code changed in 3 files:
This is a big commit (sorry - not exactly Continuous Integration ...)
While all seems to be fine and stable, many features introduced in this commit are not complete. Especially AOP Proxy Caching, Logging (API), the System Logger and the Signal Slots mechanism need some further work.
* TYPO3 Distribution: Added a Log directory
* TYPO3 Distribution: Disabled security (for now) because some thing need to be refactored and tested again after this commit
* FLOW3: Further cleanup of the bootstrap. Addresses #2117
* FLOW3: Removed manual registration of objects from all classes and created an Objects.yaml configuration instead which declares the objects and configures their dependencies. This manual registration is necessary for objects such as the AOP Framework because at the time it is created, the Object Manager is not yet fully initialized.
* FLOW3: (AOP) Refactored and cleaned up the AOP initialization process. Resolves #441.
* FLOW3: (AOP) Completely rewrote all unit tests and added many new ones. Now no AOP test relies on the TestPackage anymore. Addresses #1868
* FLOW3: (AOP) Improved the automatic documentation rendering of the Proxy Class Builder. Resolves #35.
* FLOW3: (AOP) Externalized the creation of the AOP proxy and instead use the Caches.yaml configuration.
* FLOW3: (AOP) Removed all use of PHP's Reflection classes and replaced them with calls to the Reflection Service
* FLOW3: (AOP) Converted all classes involved in the proxy building process from static into dynamic calls
* FLOW3: (Cache) Introduced an (semi) automatic cache registration feature which assures that all necessary caches are registered when file changes are detected. In order to register a cache, just define it in the new "Caches.yaml" configuration file. See the FLOW3 package for examples. Resolves #1787
* FLOW3: (Cache) Wrote more tests for the File Backend. Resolves #1843
* FLOW3: (Configuration) Improved the performance of the special configuration management
* FLOW3: (Configuration) Added support for Caches.* configuration
* FLOW3: (Error) The exception handlers now log uncaught exceptions to the System Logger
* FLOW3: (Monitor) Introduced a new sub package "Monitor" which provides a mechanism for automatic detection of changes on monitored files. If monitored files or directories (the latter not yet implemented) change, a signal is emitted which can be catched by a slot taking further action. Currently all cache entries tagged with a class tag are flushed automatically if a class file changes.
* FLOW3: (Log) Introduced a special System Logger which is created automatically and can be injected if needed. Although it works quite well already, the general concept of injecting the logger and the LoggerInterface itself is not final! Watch for log files in the Data/Log/ directory when running TYPO3 / FLOW3 in development context.
* FLOW3: (Log) Introduced a Logger Factory for use in Objects configuration. Warning: the API might still change
* FLOW3: (Log) Made the SEVERITY constants conform to RFC3164 and PHP's LOG_* constants
* FLOW3: (Object) Refactored and detached more unit tests from the TestPackage. Addresses #2123
* FLOW3: (Object) Implemented an early configuration parse step which allows for configuring objects in the Objects.yaml file of the FLOW3 package even before the Package Manager is initialized.
* FLOW3: (Object) Introduced a lifecycle shutdown method (default is "shutdownObject") which can be used as a clean alternative to __destruct().
* FLOW3: (Reflection) Added new API methods: isClassReflected, getInterfaceNamesImplementedByClass, isMethodFinal, isMethodStatic, isMethodPublic, isMethodProtected, isMethodPrivate
* FLOW3: (Reflection) getMethods() now returns information about the method visibility
* FLOW3: (Security) Refactored the ACL Policy Service - might still need some final work
* FLOW3: (SignalSlot) Fixed some small issues in the Dispatcher and implemented support for System Logger
* FLOW3: (Utility) Fixed a bug in Arrays::getValueByPath
* Testing: Implemented a method buildAccessibleProxy() in the BaseTestCase which allows for conveniently calling protected methods of a class. See FLOW3 unit tests for examples.
* TestPackage: Removed many classes which became obsolete due to the AOP tests refactoring. refs #1868
899 lines of code changed in 2 files:
* FLOW3: (Object) Implemented a new feature which allows for indirect injection of objects. Instead of specifying the name of the object to be injected directly in the objects configuration, a reference to a setting can be made by using the setting path as the object name.
* FLOW3: (Documentation) Updated the documentation accordingly.
24 lines of code changed in 1 file:
* FLOW3: (Documentation) Fixed a few typos and other glitches. Thanks to Peter Beernink for reporting them.
26 lines of code changed in 2 files:
* FLOW3: (Object) Implemented support for magic injectSettings() methods. Resolves #2297
* FLOW3: (Documentation) Added documentation for the injectSettings feature.
36 lines of code changed in 1 file:
* FLOW3: (Documentation) Completely reworked and updated the Object Framework section of the reference. Added documentation for the new custom factory and nested object configuration features.
1072 lines of code changed in 2 files:
* FLOW3: (Documentation) Revised and spell-checked (AmE) the following sections: Introduction, Bootstrap, Package Manager.
57 lines of code changed in 3 files:
* FLOW3: (Cache) Introduced two new interfaces - for Cache frontends and backends
* FLOW3: (Cache) Fixed an issue with the File Backend: initializeObject() overrode the cacheDirectory setting even if it has been set through setter injection
* FLOW3: (Object) The property / argument type "reference" has been renamed to "object" (see also updated documentation)
* FLOW3: (Object) The object configuration option "constructorArguments" has been renamed to "arguments"
* FLOW3: (Object) In the code "Constructor Arguments" are now referred to simply as "Arguments"
* FLOW3: (Object) Implemented support for custom factories. Resolves #2110
* FLOW3: (Object) Implemented support for specifying arguments / properties for objects which are injected. Resolves #2109
* FLOW3: (Resource) Added the file_exists() check again to the Class Loader. Ommitting the check resulted in hard-to-track error messages
* FLOW3: (Documentation) Updated the documentation. Still missing: custom factories and syntax of feature #2109
* FLOW3: (TestPackage) Adopted and cleaned up the Object related tests
925 lines of code changed in 1 file:
FLOW3 (AOP):
* Renamed the ConfigurationFilter to SettingFilter
* Implemented conditions. Resolves #2365.
* Adjusted the documentation.
692 lines of code changed in 1 file:
* FLOW3: (AOP) Implemented new pointcut designator methodTaggedWith(). Resolves #2138
803 lines of code changed in 1 file:
FLOW3, TypoScript:
* adapted the MVC-documentation to the viewObjectNamePattern and added an example of the standard resolving of the URI, fixes #2266. Thanks to Irene H?ppner.
* adjusted documentation a little more to fit the new namespaces syntax
227 lines of code changed in 9 files:
!!! 5.3.0alpha3 namespaces refactoring:
* changed namespace delimiter from :: to \
* all class references in namespaced code prepended by \
PHPUnit:
* adapted mock object handling to the new namespaces syntax
FLOW3:
* PropertyReflection now uses setAccessible() instead of array cast to access protected properties
PHPCR:
* added a missing interface already used for type hints
225 lines of code changed in 7 files:
FLOW3, TYPO3CR:
* the persistence framework no longer needs the @reference annotation, fixes #1620
TYPO3:
* removed @reference annotations
3 lines of code changed in 1 file:
* FLOW3: (Object) Refactored the Object Manager and mostly rewrote all related unit tests. They now don't depend on the TestPackage anymore, are true unit tests and reach a code coverage close to 100%. Addresses #2123
* FLOW3: (Object) Rename the "Object Cache" to "Object Registry"
2 lines of code changed in 1 file:
* FLOW3: (Component) Renamed "component" to "object" - everywhere. That means we now have an Object Manager instead of a Component Manager, an Object Factory etc. Resolves #2119
Globally adjusted all code for the above change.
1467 lines of code changed in 9 files:
* FLOW3: (Documentation) Updated the manual to reflect the new configuration format (YAML)
1151 lines of code changed in 2 files:
(19 more)