1. 04 Jul, 2013 7 commits
  2. 03 Jul, 2013 12 commits
  3. 02 Jul, 2013 1 commit
  4. 30 Jun, 2013 1 commit
    • Fabien Potencier's avatar
      merged branch hhamon/phpdoc (PR #738) · 2ba7d326
      Fabien Potencier authored
      This PR was merged into the 1.0 branch.
      
      Discussion
      ----------
      
      Fixed typo in the ServiceProviderInterface interface PHPDoc block.
      
      Commits
      -------
      
      8bf3f788 Fixed typo in the ServiceProviderInterface interface PHPDoc block.
      2ba7d326
  5. 29 Jun, 2013 1 commit
  6. 24 Jun, 2013 1 commit
  7. 19 Jun, 2013 2 commits
    • Fabien Potencier's avatar
      merged branch TomAdam/pr-update-middleware-doc (PR #725) · d8776876
      Fabien Potencier authored
      This PR was submitted for the master branch but it was merged into the 1.0 branch instead (closes #725).
      
      Discussion
      ----------
      
      Alter app references in middleware doc
      
      I use ControllerProvider's and functions for my controllers, and I rely on the ````Application```` and ````Request```` being injected via the parameters of each function. Today I happened to need to build some middleware, but found that ````public function before(Application $app)```` resulted in a fatal as the middleware does not use type hinting to set parameters like controllers do. On digging a bit deeper I found in ````Silex\EventListener\MiddlewareListener.php::onKernelRequest```` the following line:
      ````
      $ret = call_user_func($callback, $request, $this->app);
      ````
      This injects application as the second parameter. I'm really happy that it does do this, but the parameter order seems a little strange to me. It's a bit at odds with the rest of the documentation on controllers - the general method prototype is ````method(Application $app, Request $request)````. Given this, I would have expected the app to come first in the parameter list. The same applies to the after callback, except it has ````Response```` between ````Request```` and ````Application````.
      
      The global middleware defined in ````Application```` do not inject the app in any of the callbacks, confusing the matter further. My pattern doesn't actually require this, but some people's might. Is there a reason this hasn't been done? It would be very simple to add, given the three methods are inside the ````Application```` class itself.
      
      The ideal fix to this would be that the middleware use type hinting to apply the parameters, but this is complicated by the callbacks occurring in two classes, neither of which are local to the existing type hinting code. At the very least I think this functionality should be documented, so this is what I have provided in the PR.
      
      Commits
      -------
      
      ddc9b92 Alter app references in middleware doc
      d8776876
    • Tom Adam's avatar
      Alter app references in middleware doc · 120bfa9a
      Tom Adam authored
      120bfa9a
  8. 06 Jun, 2013 4 commits
  9. 04 Jun, 2013 1 commit
  10. 25 May, 2013 4 commits
    • Fabien Potencier's avatar
      tweaked changelog · c2148890
      Fabien Potencier authored
      c2148890
    • Fabien Potencier's avatar
      merged branch igorw/lazy-dispatcher (PR #705) · d61569b6
      Fabien Potencier authored
      This PR was submitted for the 1.0 branch but it was merged into the master branch instead (closes #705).
      
      Discussion
      ----------
      
      Make dispatcher lazy, do not trigger its creation on middleware definition
      
      The dispatcher has quite a few dependencies due to all of the subscribers
      that are added to it. One of these is the logger, several other services
      are affected as well though.
      
      The listener shortcut methods like on(), before(), after(), error() all
      force creation of the dispatcher and thus all of its dependencies. This
      makes it impossible to have lazy configuration of those services.
      
      The specific issue that triggered this was lazy configuration of the logger,
      which simply does not work once you have before() or after().
      
      By using extend(), all of those shortcut calls can delay the creation of
      the dispatcher and thus solve the issue. It will add a slight overhead, but
      it should be relatively small, since the results of creating a service are
      memoized through share().
      
      Commits
      -------
      
      efa0383 Add changelog entry for lazy dispatcher proxies
      59b56b0 Make dispatcher lazy, do not trigger its creation on middleware definition
      d61569b6
    • Igor Wiedler's avatar
      41fc16a6
    • Igor Wiedler's avatar
      Make dispatcher lazy, do not trigger its creation on middleware definition · 237ed42d
      Igor Wiedler authored
      The dispatcher has quite a few dependencies due to all of the subscribers
      that are added to it. One of these is the logger, several other services
      are affected as well though.
      
      The listener shortcut methods like on(), before(), after(), error() all
      force creation of the dispatcher and thus all of its dependencies. This
      makes it impossible to have lazy configuration of those services.
      
      The specific issue that triggered this was lazy configuration of the logger,
      which simply does not work once you have before() or after().
      
      By using extend(), all of those shortcut calls can delay the creation of
      the dispatcher and thus solve the issue. It will add a slight overhead, but
      it should be relatively small, since the results of creating a service are
      memoized through share().
      237ed42d
  11. 16 May, 2013 1 commit
  12. 08 May, 2013 2 commits
  13. 07 May, 2013 2 commits
  14. 04 May, 2013 1 commit
    • Fabien Potencier's avatar
      merged branch igorw/1.1-deps (PR #695) · e9e1b209
      Fabien Potencier authored
      This PR was merged into the master branch.
      
      Discussion
      ----------
      
      [1.1] Drop support for symfony/* <2.3
      
      I've left the ranges in, because it's likely that we will extend them in the future.
      
      Commits
      -------
      
      54be4f51 [1.1] Remove symfony <2.3 hacks
      2b45f600 [1.1] Add minimum-stability of dev
      8f8ba416 [1.1] Update all symfony version references in the docs to 2.3
      7a14b209 [1.1] Update symfony versions in fat composer.json
      e9478ddd Drop support for symfony/* <2.3
      e9e1b209