• Fabien Potencier's avatar
    merged branch davedevelopment/form-extension-points (PR #553) · 8e6d30ac
    Fabien Potencier authored
    This PR was squashed before being merged into the master branch (closes #553).
    
    Commits
    -------
    
    7c38c9a8 Add services allowing for form type extensions and guessers
    
    Discussion
    ----------
    
    Add services allowing for form type extensions and guessers
    
    I don't like the empty `FormTypeGuesserChain`, but `PreloadedExtension` requires one to be passed until symfony/symfony#5479 gets merged.
    
    ---------------------------------------------------------------------------
    
    by fabpot at 2012-11-24T11:54:08Z
    
    symfony/symfony#5479 has been merged now.
    
    ---------------------------------------------------------------------------
    
    by davedevelopment at 2012-11-25T19:59:41Z
    
    So, do we want this documenting at this point? I'm glad to have removed the dummy TypeGuesser, but without it, people who don't have a 'dev' version of symfony/form, will need the workaround in their userland code, which may cause headaches.
    
    ---------------------------------------------------------------------------
    
    by fabpot at 2013-01-10T07:34:15Z
    
    I think we need to switch to Symfony 2.2 in Silex now. What others think? @igorw
    
    ---------------------------------------------------------------------------
    
    by davedevelopment at 2013-01-10T07:54:20Z
    
    👍 from me, though while we're on the topic, are there any plans to tag a 1.0?
    
    ---------------------------------------------------------------------------
    
    by igorw at 2013-01-10T13:52:38Z
    
    @fabpot Is there any reason why you would want to enforce users to use an unstable version?
    
    I am against it for the following reasons:
    
    * Users should be able to get stable versions if the stable versions work correctly.
    * Silex already allows you to get 2.2, simply by lowering the `minimum-stability` to `beta`.
    * Our current recommended way to install silex is `1.0.*@dev` (except on the download page, because it was not updated correctly when we changed it). This means that once they update it will blow up (due to `minimum-stability`), which will result in a lot of frustration, and a lot of support requests.
    
    IMO we should encourage our users to try 2.2 by lowering their `minimum-stability`, but not enforce it.
    
    ---------------------------------------------------------------------------
    
    by stof at 2013-01-10T13:55:34Z
    
    another solution would be to bump the requirement to 2.2 only after releasing Silex.
    
    ---------------------------------------------------------------------------
    
    by fabpot at 2013-01-11T07:51:36Z
    
    Silex has not reached 1.0 yet. So, switching to 2.2 seems logical to me. That being said, we can wait for 2.2 stable to be out if this is what you suggest.
    
    ---------------------------------------------------------------------------
    
    by igorw at 2013-01-11T16:23:06Z
    
    Bumping to 2.2 after it is stable sounds acceptable to me, but unless there is a specific change in 2.2 that silex *needs*, I still don't really see the point. Supporting 2.1+ is easy enough to do.
    
    ---------------------------------------------------------------------------
    
    by davedevelopment at 2013-03-06T13:28:19Z
    
    So the current status with this PR, is that adding a TypeExtension with anything less than 2.1.4 of the symfony components will break, unless the user also adds an FormTypeGuesserChain to the guessers array. That is, the test `testFormServiceProviderWillLoadTypeExtensions` will fail with symfony/form < 2.1.4.
    
    If we want to merge this in I guess we can:
    
    * Document the whole feature, with a note/gotcha for Symfony <2.1.4
    * Bump the minimum Symfony component versions to 2.1.4
    * Just merge it anyway
    
    ---------------------------------------------------------------------------
    
    by stof at 2013-03-06T14:13:38Z
    
    bumping to 2.1.4 as minimum is fine IMO. I don't see why someone would want to use 2.1.0 explicitly instead of using the bufix releases for 2.1
    
    ---------------------------------------------------------------------------
    
    by fabpot at 2013-03-06T21:39:29Z
    
    👍 for bumping to 2.1.4+
    
    ---------------------------------------------------------------------------
    
    by igorw at 2013-03-06T22:08:37Z
    
    In this particular case I'd say it's acceptable to bump to `2.1.4`.
    
    In the future these kind of changes will need more consideration though, as they can cause BC issues when multiple branches of symfony are supported by silex.
    
    ---------------------------------------------------------------------------
    
    by fabpot at 2013-03-08T12:05:04Z
    
    When we said bumping to 2.1.4, I thought we were talking about bumping for just the component that has problems with earlier Symfony version, not all of them.
    
    ---------------------------------------------------------------------------
    
    by davedevelopment at 2013-03-08T12:14:06Z
    
    I did that because I wasn't sure how to approach it, I'll have a think about it, but I'll probably need some guidance.
    
    I guess we may have to fall back on documenting that we have a dependency on 2.1.4 version of the Form Component, because it's not actually required? Maybe that should be in `suggest`? I don't think suggest enforces version requirements, so it either needs to be in the suggest message, or in the docs?
    
    ---------------------------------------------------------------------------
    
    by igorw at 2013-03-08T12:22:59Z
    
    It should be in both. Specifically, the form service provider docs.
    
    ---------------------------------------------------------------------------
    
    by davedevelopment at 2013-03-08T13:01:26Z
    
    Changed the requirements bump and documented, do we need to have something more specific/wordy in the docs?
    
    Squashed a little as well, can squash further if it's desirable.
    8e6d30ac
Name
Last commit
Last update
..
Silex/Tests Loading commit data...
bootstrap.php Loading commit data...