[root]/Tests/MVC/Web
Routing
(0 files, 0 lines)

| Author | Changes | Lines of Code | Lines per Change |
|---|---|---|---|
| Totals | 64 (100.0%) | 891 (100.0%) | 13.9 |
| k-fish | 31 (48.4%) | 467 (52.4%) | 15.0 |
| robert | 29 (45.3%) | 375 (42.1%) | 12.9 |
| bwaidelich | 3 (4.7%) | 36 (4.0%) | 12.0 |
| networkteam_hlubek | 1 (1.6%) | 13 (1.5%) | 13.0 |
Removed everything in trunk after move to git.
0 lines of code changed in 8 files:
[+FEATURE] FLOW3 (AOP): Parse errors in AOP proxy code (introduced by a potential bug) will now be treated properly by throwing a meaningful exception.
[-FEATURE] FLOW3 (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.
[+FEATURE] FLOW3 (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
[~TASK] FLOW3 (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
[-TASK] FLOW3 (Configuration): Removed the WritableSourceInterface - this is now a standard feature of a configuration source.
[+TASK] FLOW3 (Core): Refactored and cleaned up the FLOW3 Bootstrap. Constants are now defined by a static method and all configuration related functionality has been moved to the Configuration sub package. Also replaced the evil die() calls by more handsome exit() calls. Relates to #2117
[+TASK] FLOW3 (Object): Moved some object initialization code from the Bootstrap to the Object Manager and further cleaned up the Object Manager's code. Wrote additional tests - now this class has 100% test coverage. Relates to #2117
[+API] FLOW3 (MVC): Added a few @api annotations to properties of the AbstractController and ActionController.
[-API] FLOW3 (Utility): Removed the getSAPIType() method from the Environment class. Just use the constant FLOW3_SAPITYPE instead. Resolves #3567 and relates to #2117.
2 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 4 files:
* [FIX] FLOW3 (MVC): Arguments are reset on each call to processRequest, fixes #3795
* [FIX] FLOW3 (MVC): Fixed wrong type hints in AbstractController and added the param for redirect arguments
* [+FEAT] FLOW3 (MVC): Implemented a generic error action for the ActionController with automatic forwarding to the referrer action and with storage of errors in the request. Resolves #3790
13 lines of code changed in 1 file:
FLOW3:
* Removed FLOW3\Utility\GenericCollection from repository, it's currently not needed. Resolves #3400
* Moved method setArgumentsFromRawRequestData() from Router to RequestBuilder. Resolves #3368
* Renamed URIHelper to URIBuilder. Removed Classes HelperInterface, AbstractHelper and InvalidViewHelper Exception. Adapted AbstractView & ViewInterface. Resolves #3303
* Added section parameter to URIFor() method of the URIBuilder
* Refactored Base controllers - controllerContext is no instance variable anymore and will be created when passed to view in initializeView(). Resolves #3404
* ControllerContext is of scope prototype now. Added setter/getter for URIBuilder. Some cosmetic changes.
* Added getRequestPath() to Request.
* ControllerKeys (@controller, @action, @package, @subpackage and @format) can now be set by request arguments. Resolves #2853
33 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:
!!! 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
20 lines of code changed in 4 files:
* FLOW3: (MVC) Renamed the setSettings() method of the AbstractController to injectSettings() in order to use the new settings injection feature
* FLOW3: (MVC) Moved the Controller Interface to the Controller namespace. Addresses #2515
* FLOW3: (Utility) Removed the REQUEST_METHOD_* constants in the Environment class
* FLOW3: (Utility) Renamed the getPOSTArguments and getGETArguments methods to getRawPOSTArguments and getRawGETArguments respectively
* FLOW3: (Utility) Introduced a new method getRawServerEnvironment to the Environment API
6 lines of code changed in 1 file:
* FLOW3: (MVC) Removed the Request Processor Chain and its manager
* FLOW3: (MVC) Wrote a test case for the yet untested Web Request Handler
67 lines of code changed in 2 files:
FLOW3:
* fixed license name in @license annotation, fixes #2454
3 lines of code changed in 3 files:
FLOW3, Lucene, PHP6, PHPCR, Smarty, Testing, TYPO3, TYPO3CR, TypoScript:
* fixed broken @version $Id$ annotations that got hosed during new namespace refactoring. Sorry!
6 lines of code changed in 3 files:
FLOW3:
* changed license to LGPL v3 or later
43 lines of code changed in 3 files:
FLOW3:
* some MVC tests refactored
2 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
52 lines of code changed in 3 files:
* 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"
6 lines of code changed in 3 files:
* 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.
13 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
1 lines of code changed in 1 file:
* FLOW3: Fixed a few tests which only failed when run from the CLI
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
5 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
53 lines of code changed in 3 files:
* 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
52 lines of code changed in 1 file:
* FLOW3: (MVC) Started implementing more features for the Web Response: It now supports custom HTTP status headers
* TYPO3: Commit of the latest backend experiments
54 lines of code changed in 1 file:
* FLOW3: (MVC) Implemented first version of a "reverse routing" mechanism which is the first step for creating proper URLs in FLOW3. Now you can generate links like this:
$router->resolve(array('@package' => 'myPackage', '@controller' => 'myController'));
But beware, naming will probably change and we're working on a link-helper to be able to create correct URLs more conveniently.
1 lines of code changed in 1 file:
* FLOW3: (MVC) Implemented tests for the F3_FLOW3_MVC_Request class.
* FLOW3: (Utility + MVC) Added support for PUT, DELETE, HEAD and OPTIONS request methods.
43 lines of code changed in 2 files:
* 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.
57 lines of code changed in 2 files:
* FLOW3: (Utility) If no writable temporary directory could be determined, FLOW3 will now use /tmp on Unix and \WINDOWS\TEMP on Windows systems.
* FLOW3: (MVC) Refactored the (previously disabled) tests of the Web Request Builder
36 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.
7 lines of code changed in 2 files:
* FLOW3: (MVC) First implementation of the new routing mechanism. Routes can be set up in the FLOW3 configuration. See configuration/Routes.php for an example. By default the former URLs (package/controller/action) should still work. Don't forget to clear the cache in order to use the routing functionality.
* FLOW3: (Configuration) Added magic method to F3_FLOW3_Configuration_Container to allow setting of configuration options via dummy setters in the format "$c->foo->set[OptionName]([optionValue])".
2 lines of code changed in 1 file:
* FLOW3: (Utility) Changed the way the temporary directory is created and made it configurable. By default FLOW3 tries to use a temp directory as defined in the system's environment (defined in TMPDIR, TEMP or the like). If that doesn't work you can still set a temp dir explicitly with the option $c->utility->environment->temporaryDirectoryBase.
* FLOW3: (Resource) The Resource Publisher testcase was leaving some empty directories behind in the temporary directory. The test now cleans up.
4 lines of code changed in 2 files:
Making FLOW3 run green(er) in FLOW3CGL, part 2. Down to 40 errors and 0 warnings from hundreds each...
306 lines of code changed in 2 files: