[root]/Tests/MVC
CLI
(0 files, 0 lines)
Controller
(0 files, 0 lines)
Fixture
(0 files, 0 lines)
Controller
(0 files, 0 lines)
Web
(0 files, 0 lines)
Routing
(0 files, 0 lines)
View
(0 files, 0 lines)
Helper
(0 files, 0 lines)
Web
(0 files, 0 lines)
Routing
(0 files, 0 lines)

| Author | Changes | Lines of Code | Lines per Change |
|---|---|---|---|
| Totals | 108 (100.0%) | 1255 (100.0%) | 11.6 |
| robert | 37 (34.3%) | 753 (60.0%) | 20.3 |
| k-fish | 68 (63.0%) | 386 (30.8%) | 5.6 |
| andi | 3 (2.8%) | 116 (9.2%) | 38.6 |
Removed everything in trunk after move to git.
0 lines of code changed in 17 files:
[+BUGFIX] FLOW3 (MVC): When calling a controller on an inactive package the user no longer simply get's a 404 but a helpful hint. Fixes #3699.
87 lines of code changed in 2 files:
[+FEAT] FLOW3 (MVC): The format of a request may now contain any character which allows to specify formats like "rss.xml" or "foo.bar.baz.html" instead of just "xml".
[~TASK] FLOW3 (Validation): Fixed an exception message in the Validator Resolver.
[+FEAT] Fluid (View): While resolving the path and file name of a template, Fluid now takes the request's format into account. By default it is ".html" and now others, like ".xml" or even ".rss.xml" are possible.
[+FEAT] Fluid (ViewHelper): The Action View Helper and the URI Builder now support rendering of absolute URIs. This comes in handy if you need an URI pointing to your feed or the like. Absolute URIs can be generated by specifying the "absolute" property: <f:link.action action="index" controller="Post" absolute="TRUE" />...
0 lines of code changed in 1 file:
[+TASK] FLOW3: Removed file level docblocks and @package/@subpackage annotations.
[+TASK] Fluid: Removed file level docblocks and @package/@subpackage annotations.
[+TASK] Kickstart: Removed file level docblocks and @package/@subpackage annotations.
[+TASK] PHP6: Removed file level docblocks and @package/@subpackage annotations.
[+TASK] PHPUnit: Removed file level docblocks and @package/@subpackage annotations.
[+TASK] Testing: Removed file level docblocks and @package/@subpackage annotations.
[+TASK] Welcome: Removed file level docblocks and @package/@subpackage annotations.
[+TASK] YAML: Removed file level docblocks and @package/@subpackage annotations.
0 lines of code changed in 3 files:
* 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.
4 lines of code changed in 1 file:
* FLOW3: (MVC) Test for #3034
4 lines of code changed in 1 file:
FLOW3:
* renamed redirect() to redirectToURI() in AbstractController
* implemented redirect() to behave like forward(), fixes #2816
* arguments to MVC requests are arrays now, no longer ArrayObject
2 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.
25 lines of code changed in 1 file:
FLOW3:
* removed controllerObjectNamePattern and viewObjectNamePattern from some places, refs #2444
* added caching to routing, based on work by Bastian and Sebastian, fixes #1791
* the Router resolve()s in lowercase and matches case-insensitive now, refs #2237
TYPO3CR:
* adjustments to Routes.yaml suggestion
4 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.
2 lines of code changed in 1 file:
!!! Globally renamed all class files to the new shorter version. Resolves #2524
FLOW3: (Resource) Adapted the class loader and other related parts of FLOW3 to the new class filename convention
FLOW3: Moved the FLOW3 bootstrap into the F3\FLOW3 namepace
81 lines of code changed in 3 files:
* FLOW3: (MVC) Moved the ViewInterface into the View sub namespace. Addresses #2515
* FLOW3: (MVC) Added a ControllerInterface to decouple classes using controllers from the AbstractController
* FLOW3: (MVC) Merged the RequestHandlingController into the AbstractController. Still needs further cleanup and some tests are currently disabled.
* FLOW3: (MVC) Wrote a proper testcase for the dispatcher
28 lines of code changed in 1 file:
* FLOW3: (Security) Renamed the aspect InterceptorInvocation to PolicyEnforcementAspect
* FLOW3: (Security) Completely removed the security code from the MVC dispatcher. Instead it is now woven in by advices in the new RequestDispatchingAspect. Resolves #2118
* FLOW3: (Security) The old and the new aspect are now only active if security is enabled. That means: No security related proxies are generated if security is turned off. Addresses #2118
* FLOW3: (Security) Security is now (again) enabled by default. But that doesn't mean that everything is secure yet ...
* FLOW3: (AOP) Fixed the "Setting" poinctut designator by adding the class to the Objects configuration.
2 lines of code changed in 1 file:
* 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
70 lines of code changed in 1 file:
FLOW3:
* fixed license name in @license annotation, fixes #2454
3 lines of code changed in 3 files:
FLOW3:
* changed license to LGPL v3 or later
42 lines of code changed in 3 files:
FLOW3:
* some MVC tests refactored
2 lines of code changed in 1 file:
FLOW3 (Security):
* Implemented the possibility to disable the security framework by configuration
60 lines of code changed in 1 file:
!!! 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
109 lines of code changed in 3 files:
* FLOW3: Optimized the Class Loader. Now it doesn't check anymore if the class file exists because if it doesn't, this would be a fatal error anyway. Speed gain for class loading: 60%.
* FLOW3: (Reflection) Added an option to enable Class Alteration Monitoring in the Reflection Service. In development context changes to class files are now detected automatically while these checks are skipped in production context.
0 lines of code changed in 1 file:
* Fixed several global typehints (eg. DateTime > ::DateTime)
* Removed / fixed non existent classes used in some typehints
* FLOW3: (Object) Optimized the setter autowiring method: It now uses the Reflection Service instead of its own reflection
* FLOW3: (Reflection) Implemented a new API method "getMethodParameters"
* FLOW3: (MVC) Fixed a few Dispatcher tests which were not providing proper mock objects (and now exploded)
* PHPCR: Fixed type hinting in QueryObjectModelFactoryInterface::join()
16 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"
1 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.
55 lines of code changed in 3 files:
* Fixed FLOW3's yaml configuration: exceptional errors were defined as plain strings instead of constants resulting in even (catchable) fatal errors being ignored
* Fixed several tests which still used the object configuration instead of arrays
2 lines of code changed in 1 file:
* FLOW3: (Component) Renamed the method Component::Factory->getComponent() to Component::Factory->create(). Resolves #1846
* FLOW3: (Component) Component::Factory->create() will now throw an exception on trying to create a component of scope != prototype
* FLOW3: (Component) The Component::Manager->getComponent() method can still be used as a last resort to retrieve components of any scope. However dependency injection for singletons and the component factory for prototype should always be the first choice!
Refactored all packages of the TYPO3 distribution to match the above changes.
Note: The test "F3::TYPO3CR::NodeTest::setPropertySetsValue" currently fails on my machine with the following message:
Error in setPropertySetsValue with data set #34 Detail
TYPO3CR/Classes/F3_TYPO3CR_Node.php:577
Unable to convert value of type string to Name: Namespace prefix is invalid
16 lines of code changed in 2 files:
FLOW3: (MVC) Implemented the new naming conventions for controllers and actions as discussed in the mailing list.
The convention for controller names now is F3::Foo::Controller::BarController (note the trailing "Controller").
The convention for the default action is now "index" instead of "default" (method name: "indexAction" instead of "defaultAction")
FLOW3: (MVC) Added a new option "viewComponentNamePattern" analogue to "controllerComponentNamePattern" which allows for customising the building of the view component name.
33 lines of code changed in 2 files:
!!! Major change, will break existing code.
Part 3 - Packages
FLOW3, most other packages:
* added namespaces to the code of FLOW3 and all packages in the current TYPO3v5 distribution.
PHPUnit:
* some changes to make PHPUnit (more) namespace-compatible.
Some notes:
* Documentation updates will follow
* you might need to change your class names when adapting namespaces to avoid using "Class", "Empty", "Default", ...
* expect FLOW3CGL and/or PHPCodeSniffer to be broken (I'll have a look)
* some parts might still be broken, especially in edge-cases where the global namespace needs to explicitly used
101 lines of code changed in 3 files:
* FLOW3: (MVC) If the name of a valid controller component could not be resolved, the Request will now throw a "No Such Controller" exception. Earlier, the default controller was chosen which made debugging quite hard in some situations.
* FLOW3: (MVC) Removed the Presentation Controller which had no functionality (yet) anyway and wasn't used either.
* FLOW3: (MVC) Added a new method "initializeArguments" to the Request Handling Controller. Please define your arguments in this method now instead of using the initializeController() or initializeAction() method.
* FLOW3: (MVC) Added the initial implementation of a REST controller which automatically chooses the right action method based on the HTTP request.
* FLOW3: (Property) Corrected at least some misbehaviour / bug in the Property Mapper (mapping results were not used properly). However, the whole Property Editor mechanism seems still to be unstable.
* TYPO3: (Service) Further experiments with the REST services. A site service can for example be accessed via http://yourhost/typo3/service/v1/sites.json
11 lines of code changed in 1 file:
* FLOW3: (MVC) More features for the Web Response object - it is now possible to set custom headers
* FLOW3: (MVC) Improvement of the forward() method in the RequestHandlingController: After calling forward(), the control is returned to the dispatcher and lines in the controller following after the forward() method are not executed anymore.
* FLOW3: (MVC) Implemented the redirect() method for the RequestHandlingController
58 lines of code changed in 1 file:
* FLOW3: (MVC) Implemented support for case insensitve URLs. The package key and controller component name can now be any case, the action name must still be studly caps (like the action method name). Resolves #1253.
* FLOW3: (Package) Added new method getCaseSensitivePackageKey() to the package manager
* FLOW3: (Session) Exceptions which occur during session_write are now converted into FLOW3 exceptions
* TYPO3: Added some helpful output to the different controller stubs and adapted the routes configuration to the recent changes in the MVC routing.
61 lines of code changed in 2 files:
FLOW3, PHP6:
* bumped PHP version requirement to 5.3.0alpha1
* replaced dirname(__FILE__) with __DIR__
* removed definitions of FILE_BINARY, FILE_TEXT in F3_PHP6_Functions.php
* replaced phpversion() with PHP_VERSION
2 lines of code changed in 2 files:
* FLOW3: (Configuration) Configuration containers are now locked recursively. Fixes #1064.
* FLOW3: (MVC) Since recently it was allowed to set keys like "FLOW3_MVC" as package key in the Request object in order to route into sub packages. That was kind of dirty. Now there's a new option setControllerComponentNamePattern() which can be reached from the routes configuration. This doesn't work in CLI mode though (routing into sub packages that is)
* FLOW3: (Package) The package object did not check if the specified package key is valid - now it does.
* TYPO3: Further experiments with the routing and the different controllers.
45 lines of code changed in 2 files:
* FLOW3: (MVC) Added support for representation formats to the Request object
* FLOW3: (MVC) Roughly implemented path segement parts (or whatever we call it): the URL path is not split by forward slash and dot
* FLOW3: (MVC) Added the special route segment @format
* FLOW3: Made the production exception handler the default exception handler in production context again
* TYPO3: Further routing experiments.
20 lines of code changed in 1 file:
* FLOW3: (MVC) Renamed the Default Controller. Addresses #474
* FLOW3: (MVC) Implemented the dispatch loop: The request object now contains a flag which tells if the dispatcher needs to dispatch the request again because it contains new information about the responsible controller.
* FLOW3: (MVC) The Request object now works differently in terms of specifying the controller: Instead of passing the controller component name, it is now specified by setting the package key and controller name. Addresses #474
* FLOW3: (MVC) Implemented support for forwarding requests (see Request Handling Controller). Resolves #88 and resolves #215.
* FLOW3: (MVC) Removed the locking feature from the Request object - otherwise forwarding would not be possible.
* FLOW3: (MVC) Refactored mmost of the controller-related tests and fixtures.
* FLOW3: Adapted the standard routes
* FLOW3 + TYPO3: Updated the Package Meta information
44 lines of code changed in 3 files:
* FLOW3: (MVC) Implemented tests for the F3_FLOW3_MVC_Request class.
* FLOW3: (Utility + MVC) Added support for PUT, DELETE, HEAD and OPTIONS request methods.
108 lines of code changed in 1 file:
* Global Configuration: Moved the default routes configuration to within the FLOW3 package
* FLOW3: (Configuration) Refactored the configuration manager. Now there's a dedicated method getSettings() for retrieving settings for a certain package. You will most likely want to use this method instead of the now called "getSpecialConfiguration()" method.
* FLOW3: (Configuration) Converted the configuration source into a non-static class.
* FLOW3: (Configuration) Implemented proper tests for the Configuration Manager
* TYPO3CR and TYPO3: Adapted the code to use the new configuration manager methods
* FLOW3: The special "FLOW3 configuration" (as defined in FLOW3.php) technically are now just settings for the package "FLOW3" with the only difference that they are loaded earlier than other settings and can only be set in the FLOW3 package and the global configuration.
* FLOW3: (MVC) Refactored the Routing mechanism - mainly cosmetic changes. Among other things removed the Route Interface.
* FLOW3: (MVC) Refactored the Web Request Builder a bit.
* FLOW3: (Security) Fixed the Context Holder Session destructor which was throwing uncatched exceptions while trying to close an uninitalized session. Needs further cleanup / handling.
10 lines of code changed in 1 file:
Implemented the first part of the security framework.
* FLOW3 (Security): Implemented the session security context holder
* FLOW3 (Security): Implemented the security context that provides the current context based on request patterns and the configured authentication strategy
* FLOW3 (Security): Implemented a basic filter firewall that can be configured in the FLOW3 configuration file
* FLOW3 (Security): Implemented a basic security interceptor, that triggers the authentication process and can be placed in the firewall
* FLOW3 (Security): Implemented the authentication (provider) manager and a very basic username/password provider with its token
* FLOW3 (MVC): Changed some tests to use mock objects (firewall and security context holder)
* FLOW3 (Validation): Fixed a bug in the alphanumeric validator
48 lines of code changed in 1 file:
!!! Important global change !!!
Extracted the getComponent() method from the Component Manager into its own class, the Component Factory. From now on, use the factory if you only need the getComponent() functionality and use the manager if you need the more advanced functions.
14 lines of code changed in 2 files:
* FLOW3: (MVC) The Dispatcher now injects the package's settings before calling the processRequest() method of a controller. That means you can always access the settings from within your controller with $this->settings.
43 lines of code changed in 1 file:
fixed failing tests.
8 lines of code changed in 1 file:
(3 more)