[root]/Tests/Property
Converter
(0 files, 0 lines)
Fixture
(0 files, 0 lines)
DataType
(0 files, 0 lines)
Editor
(0 files, 0 lines)
Fixture
(0 files, 0 lines)

| Author | Changes | Lines of Code | Lines per Change |
|---|---|---|---|
| Totals | 49 (100.0%) | 1713 (100.0%) | 34.9 |
| robert | 9 (18.4%) | 720 (42.0%) | 80.0 |
| k-fish | 29 (59.2%) | 655 (38.2%) | 22.5 |
| sebastian | 5 (10.2%) | 147 (8.6%) | 29.4 |
| andi | 4 (8.2%) | 115 (6.7%) | 28.7 |
| networkteam_hlubek | 2 (4.1%) | 76 (4.4%) | 38.0 |
Removed everything in trunk after move to git.
0 lines of code changed in 6 files:
[~API] FLOW3 (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).
[+FEATURE] FLOW3 (Property): When mapping to objects, UUIDs and identity arrays are now mapped to objects recursively.
[+BUGFIX] FLOW3 (Property): Mapping to plain arrays is now possible, fixes #4443.
[~TASK] FLOW3 (MVC): Streamlined setValue() in Controller\Argument.
[~TASK] FLOW3 (Validation): UUIDValidator - moved regular expression match pattern for UUID to class constant.
[~TASK] FLOW3 (Property): Fixed inheritance chain for some exceptions.
[~TASK] FLOW3 (Cache): Changed string character access from {} to [].
151 lines of code changed in 1 file:
[+FEATURE] FLOW3 (Property): When mapping properties UUIDs in arrays being mapped to typed array-like targets get converted to objects now. Relates to #3933.
107 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 2 files:
Added svn:keywords where missing...
2 lines of code changed in 1 file:
Object validation: Introduced PropertyError for nested errors and changed property mapper and mapping results. Resolves #3401
76 lines of code changed in 2 files:
This commit is all about validation. Although the new features basically work, a few smaller features and tweak are missing before the whole concept works as intended. Documentation will follow (hopefully soon).
* FLOW3: (Validation) Implemented annotation based validation for models. That means you now can define validation rules by adding @validate annotations to class properties and these rules will be enforced when arguments of this type are passed as controller arguments. Resolves #3093 but some fine tuning and small additional features are missing.
* FLOW3: (Validation) Note that #3130 is not solved yet in this commit.
* FLOW3: (MVC) Implemented a MVC Controller Arguments Validator which is able to validate a whole Arguments object. This is used during the mapAndValidate process in the controller. Addresses #3093.
* FLOW3: (Property) The property mapper now accepts arrays as source and / or target.
* FLOW3: (Property) mapAndValidate() will now truly validate the result of the mapping. If the result does not validate, the target remains unchanged.
* FLOW3: (Validation) Removed the Filter Chain for now - it will surely come back but didn't work like it was currently implemented.
* FLOW3: (Validation) Improved the AbstractValidator and added a new AbstractObjectValidator
* FLOW3: (Validation) Adapted all validators to the new Validator interface and AbstractValidator
* FLOW3: (Validation) Implemented a new Generic Object validator which can validate properties of any object
* FLOW3: (Validation) Simplified the chaining of validators and during that process removed the ObjectValidatorChainValidator
* FLOW3: Added and adapted many tests
25 lines of code changed in 1 file:
* 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.
56 lines of code changed in 1 file:
This commit contains not yet finished features for the MVC framework which mainly address the identity array mechanism. It was just necessary to commit these changes so we don't run into integration hell later ...
* FLOW3: (MVC) The AbstractController now considers optional arguments while mapping the request arguments to the controller arguments. The absence of a non optional argument is now considered and handled as an error.
* FLOW3: (MVC) The AbstractController now stores the result of the argument mapping in $this->argumentsMappingResults
* FLOW3: (MVC) The ActionController will call an error action (whose name can be set in $this->errorMethodName) instead of the configured action if the argumentsMappingResults contains errors.
* FLOW3: (MVC) Note that the current errorAction implementation is just a stub.
* FLOW3: (MVC) Removed all methods related to errors and warning from the Argument class.
* FLOW3: (MVC) Argument: setValue() now converts an identity / properties array into the actual object. However the implementation is not complete yet, don't start using it!
* FLOW3: (MVC) !!! New arguments which are added either by addNewArgument() or by automatic argument registration are now required by default. The previous default was "not required".
* FLOW3: (MVC) Disabled the automatic mapping of PUT arguments in the Router. This helps Christoph with the WebDAV implementation. Still needs a proper solution.
* FLOW3: (Property) The PropertyMapper now provides a map() and a mapAndValidate() method. However, the mapAndValidate() method does not yet validate ... TBD
* FLOW3: (Reflection) Added a few safeguards for the ObjectAccess methods
* FLOW3: Fixed and adapted several tests for the MVC sub package
30 lines of code changed in 1 file:
This is a commit of work in progress. If you're already using FLOW3 (semi-) productively, you better skip this version because the MVC framework currently lacks validation and might lead to some other unexpected behavior. OTOH the code seems to be quite stable, so nothing to really worry about. More code related to the MVC framework and especially validation will follow soon, I just had to get rid of all these changes ...
* FLOW3: (Persistence) Made sure that the object name "...\Persistence\ManagerInterface" is used everywhere instead of "...\Persistence\Manager".
* FLOW3: (Error) Annotated the "Error" and "Warning" class as prototype and renamed *ErrorMessage() and *ErrorCode() to *Message() and *Code().
* FLOW3: (MVC) Fixed and re-enabled tests of the Abstract Controller
* FLOW3: (MVC) !!! Started rewriting the argument mapping mechanism. It should work but be aware that NO VALIDATION and NO FILTERING is active at the moment!
* FLOW3: (MVC) The automatic argument registration in the Action Controller now detects optional arguments and registers them as such.
* FLOW3: (MVC) Cleaned up the Argument(s) classes and implemented an early version of identity support in setValue()
* FLOW3: (MVC) Added initial implementation of identity support for the resolve() method of a DynamicRoutePart. I'll give more information on this topic as soon as it's completely implemented.
* FLOW3: (MVC) Removed the emit* method in the router and replaced it by a call to the System Logger: Now the log contains an entry stating which route has been chosen.
* FLOW3: (Persistence) In the ClassSchema renamed the (is)RepositoryManaged property and methods to (is)AggregateRoot.
* FLOW3: (Persistence) Added safeguard to the Persistence\Manager::getClassSchema() method
* FLOW3: (Property / MVC) For now, completely removed the concept of Property Converters!
* FLOW3: (Property) Started reimplementing the Property Mapper. Most of the old functionality has been removed but much of it will return soon.
* FLOW3: (Reflection) Changed the order of access method detection in the ObjectAccess class. Any other order causes proplems in the MVC mechanism. If a property could not be accessed, now NULL is returned (instead of throwing an exception)
* FLOW3: (Validation) Moved the AbstractValidator and Validation interfaces to the Validator sub package
* Fluid: (ViewHelpers) Added support for an "arguments" attribute in the FormViewHelper which allows for specifying arguments for the action URI.
66 lines of code changed in 1 file:
* FLOW3: (MVC) Moved the ConverterInterface into the correct namespace. Addresses #2515
* FLOW3: (Utility) Added a new function getFileContents() to the Files library. Preferibly use this function instead of PHP's built-in file_get_contents() function because it will handle warnings and errors more gracefully.
* Fluid: Cleaned up and partly refactored the TemplateView. Especially fixed the error prone comparisons (see #2536). There are still some skeletons in the closet and especially the unit tests badly need some improvements (more / proper use of mock objects, no functional test but unit tests etc.).
4 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
488 lines of code changed in 1 file:
FLOW3:
* fixed license name in @license annotation, fixes #2454
1 lines of code changed in 1 file:
FLOW3:
* (Property): Added F3\FLOW3\Property\Converter\IdentifierAwareInterface and implemented how it is used.
* (MVC): Adjusted doc comments in F3_FLOW3_MVC_Controller_Argument
22 lines of code changed in 1 file:
FLOW3:
* style fixes to recent commits. Please, mind the CGL!
* fixed license in recently committed files.
11 lines of code changed in 1 file:
FLOW3:
* (Property): Refactored PropertyEditor to PropertyConverter.
16 lines of code changed in 1 file:
FLOW3:
* changed license to LGPL v3 or later
13 lines of code changed in 1 file:
FLOW3:
_ (Property): Property Mapper should be reset if map() method is called directly.
28 lines of code changed in 1 file:
FLOW3:
* (Reflection): Added ArrayAccess handling in ObjectAccess
* (Property): Extended Property Mapper so it can map arbitary objects to other arbitary objects
77 lines of code changed in 1 file:
FLOW3:
* (Property): Rewrote the PropertyEditor interface after talking to Andi
4 lines of code changed in 1 file:
FLOW3 (Property):
* Fixed #2375.
82 lines of code changed in 1 file:
FLOW3:
* refactored a bunch of unit tests so they no longer need a real FLOW3 to run, refs #2123
103 lines of code changed in 2 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
71 lines of code changed in 2 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.
17 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
17 lines of code changed in 1 file:
Set svn:keywords property to Id on all PHP files.
2 lines of code changed in 1 file:
!!! 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
73 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
1 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.
17 lines of code changed in 1 file:
Further work to make FLOW3 run green in CGL checks:
* Renamed some abstract classes to conform to rules
* Adjusted code using those classes
119 lines of code changed in 1 file:
Making FLOW3 run green(er) in FLOW3CGL, part 1.
1 lines of code changed in 1 file:
PropertyMapper and Validation is now implemented. This fixes #66, #69 Additionally the Controller Arguments are passed through the validation framework.
33 lines of code changed in 1 file:
Pending commit, fixes #477.
0 lines of code changed in 5 files:
many changes in the validation mvc part... some further work to follow up soon
0 lines of code changed in 2 files: