- The package is marked as abandoned and will no longer be maintained. Fix all deprecations and
depend on the
qossmic/rich-model-forms-bundle
package instead. - Deprecated the
SensioLabs
namespace, use the equivalent classes from theQossmic
namespace instead. - Deprecated all services whose id starts with
sensiolabs.
, use their equivalent ids starting withqossmic.
instead. - Deprecated the
sensiolabs.rich_model_forms.exception_handler
tag, use theqossmic.rich_model_forms.exception_handler
tag instead.
- Fixed compatibility with
symfony/form
5.3.
- Allow the bundle to be used on PHP 8.
- [BC BREAK] When closures (anonymous functions) are used for the
factory
option, the submitted form data is no longer passed as an array, but each child form is passed as a single argument instead (use thefactory_argument
option of the child forms if form names and argument names of the closure differ).
- Added a
factory_argument
allowing to use field names differing from the name of the actual factory argument (#82). - Fixed using the
read_property_path
option with value objects (#89). - Both the
read_property_path
andwrite_property_path
options can now be used without configuring the other one (#88). - Added handling for
TypeError
instances thrown for typed properties on PHP 7.4+ (#85).
- Fixed dealing with non-mapped fields when mapping to value objects (#81).
- Fixed compatibility with
symfony/translation
5.0. - Dropped support for Symfony components < 4.4.
- Allow to use the bundle with Symfony 5 components.
- Added support for mapping several form fields to a single method of the underlying model.
- Exceptions thrown during instantiating value objects are now caught and mapped back to the form as transformation failures.
- [BC BREAK] The
ValueObjectTransformer
requires anExceptionHandlerRegistry
instance. - [BC BREAK] The first argument's type of the
ExceptionHandlerInterface::getError()
method has been changed fromFormInterface
toFormConfigInterface
. - [BC BREAK] The return type of
ExceptionHandlerInterface::getError()
has been changed toSensioLabs\RichModelForms\ExceptionHandling\Error
. - [BC BREAK] A
TranslatorInterface
and the translation domain to be used must now be passed to theFormExceptionHandler
instead of passing to the individualExceptionHandlerInterface
implementations.
- Fix to actually use a configured factory when submitting non-compound forms.
- Fixed passing submitted data to the configured factory for compound forms.
- Abstain from trying to map buttons to the data when creating value objects.
- Raise an error when the
data_class
option is used while theimmutable
option is enabled.
- [BC BREAK] renamed
SensioLabs\RichModelForms\ExceptionHandling\ExceptionHandler
toSensioLabs\RichModelForms\ExceptionHandling\ExceptionHandlerInterface
- Added a
PropertyMapperInterface
whose implementations can be passed to forms using the newproperty_mapper
option to map data to forms and vice versa programmatically. - The
expected_exception
option is deprecated and will be removed in 0.3. Usehandle_exception
instead.
Initial release of the bundle.