Permalink
Commits on Jan 16, 2017
  1. feature #21306 [DependencyInjection] Always autowire the constructor …

    …(dunglas)
    
    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [DependencyInjection] Always autowire the constructor
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | no
    | New feature?  | no
    | BC breaks?    | no (because method autowiring has been introduced in 3.3)
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets | n/a
    | License       | MIT
    | Doc PR        | n/a
    
    Always try to autowire the constructor even if it has not been configured explicitly. It doesn't make sense to autowire some methods but not the constructor. It will also allow to write shorter definitions when using method autowiring:
    
    ```yaml
    services:
        Foo\Bar: { autowire: ['set*'] }
    ```
    
    instead of
    
    ```yaml
    services:
        Foo\Bar: { autowire: ['__construct', 'set*'] }
    ```
    
    Commits
    -------
    
    be3d11f [DependencyInjection] Always autowire the constructor
    fabpot committed Jan 16, 2017
  2. [DependencyInjection] Always autowire the constructor

    dunglas committed Jan 16, 2017
Commits on Jan 15, 2017
  1. feature #20493 [Debug] Trigger deprecation on `@final` annotation in …

    …DebugClassLoader - prepare making some classes final (GuilhemN)
    
    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [Debug] Trigger deprecation on `@final` annotation in DebugClassLoader - prepare making some classes final
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | no
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | yes
    | Tests pass?   | yes
    | Fixed tickets | follows #19734
    | License       | MIT
    | Doc PR        |  |
    
    BC promises become quickly huge but making classes `final` can limit these promises.
    At the same time, many classes of the symfony codebase are not meant to be extended and could be  `final`; that's the goal of this PR: prepare making them final in 4.0 by triggering deprecations in their constructor:
    ```php
    public function __construct()
    {
        if (__CLASS__ !== get_class($this)) {
            @trigger_error(sprintf('Extending %s is deprecated since 3.3 and won\'t be supported in 4.0 as it will be final.', __CLASS__), E_USER_DEPRECATED);
        }
    }
    ```
    
    I updated two classes for now but we can do much more if you like it.
    
    Commits
    -------
    
    c2ff111 [Debug] Trigger deprecation on `@final` annotation in DebugClassLoader
    fabpot committed Jan 15, 2017
  2. feature #21244 [DI] Remove synthetic services from methodMap + genera…

    …ted methods (nicolas-grekas)
    
    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [DI] Remove synthetic services from methodMap + generated methods
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | no
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets | -
    | License       | MIT
    | Doc PR        | -
    
    For synthetic services, the generated methods are just dead code to fill opcache ;)
    And having them in "methodMap" prevents using the property for checking if a service comes from a (non-synthetic) definition or not.
    This prepares some changes that we'd like to do in 4.0, see #19668.
    
    Commits
    -------
    
    c1e1e99 [DI] Remove synthetic services from methodMap + generated methods
    fabpot committed Jan 15, 2017
  3. feature #21238 [VarDumper] Add search keyboard shortcuts (ogizanagi)

    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [VarDumper] Add search keyboard shortcuts
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | no
    | New feature?  | yes
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets | #21174
    | License       | MIT
    | Doc PR        | Worth to mention?
    
    So, this PR simply adds the following shortcuts to navigate between matches, based on main browsers conventions:
    
    - <kbd>CTRL/CMD</kbd> + (<kbd>shift</kbd>* +) <kbd>G</kbd>
    - (<kbd>shift</kbd>* +) <kbd>ENTER</kbd>
    - (<kbd>shift</kbd>* +) <kbd>F3</kbd>
    
    _* <kbd>shift</kbd> allows to go backwards_
    
    At first, I wanted to add a help box somewhere, but:
    - I don't know where to place it. As the var dumper is now used everywhere in the profiler, it should not be importune and should work in narrowed places.
    - We use those shortcuts in order to replicate the main softwares/browsers behavior. So we may not need it at all.
    
    This PR also fixes a minor issue where pressing a key not changing the input would have restarted the search query.
    
    Commits
    -------
    
    58fe431 [VarDumper] Add search keyboard shortcuts
    fabpot committed Jan 15, 2017
  4. feature #21290 [FrameworkBundle] Fix debug:container --show-arguments…

    … missing cases (chalasr)
    
    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [FrameworkBundle] Fix debug:container --show-arguments missing cases
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 3.3
    | Bug fix?      | yes
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets | #20861 (comment)
    | License       | MIT
    | Doc PR        | n/a
    
    Fixes the new `--show-arguments` option for per-service describing
    (i.e. `debug:container foo_service --show-arguments`, doesn't work at all right now).
    
    Commits
    -------
    
    57b17f4 [FrameworkBundle] Fix debug:container --show-arguments missing cases
    fabpot committed Jan 15, 2017
  5. [Debug] Trigger deprecation on `@final` annotation in DebugClassLoader

    GuilhemN committed Jan 15, 2017
  6. feature #21263 [DI] Mark generated containers as final (nicolas-grekas)

    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [DI] Mark generated containers as final
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | no
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | yes
    | Tests pass?   | no
    | Fixed tickets | -
    | License       | MIT
    | Doc PR        | -
    
    So that we don't have to care anymore about BC for protected methods in generated containers.
    Will leverage deprecations triggered in #20493
    
    Commits
    -------
    
    ce0ee1e [DI] Mark generated containers as final
    fabpot committed Jan 15, 2017
  7. minor #21298 [WebServerBundle] add missing use (mykiwi)

    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [WebServerBundle] add missing use
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | yes
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | License       | MIT
    
    ```
    $ bin/console server:run 0.0.0.0:80 -vvv
    
     [OK] Server listening on http://0.0.0.0:80
    
     // Quit the server with CONTROL-C.
    
    [2017-01-15 14:41:59] php.DEBUG: Warning: proc_open(/dev/tty): failed to open stream: No such device or address {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\SilencedErrorContext: {\"severity\":2,\"file\":\"/srv/vendor/symfony/symfony/src/Symfony/Component/Process/Process.php\",\"line\":1000})"}
    
      [Symfony\Component\Debug\Exception\ClassNotFoundException]
      Attempted to load class "Process" from namespace "Symfony\Bundle\WebServerB
      undle\Command".
      Did you forget a "use" statement for "Symfony\Component\Process\Process"?
    
    Exception trace:
     () at /srv/vendor/symfony/symfony/src/Symfony/Bundle/WebServerBundle/Command/ServerRunCommand.php:121
     Symfony\Bundle\WebServerBundle\Command\ServerRunCommand->Symfony\Bundle\WebServerBundle\Command\{closure}() at n/a:n/a
     call_user_func() at /srv/vendor/symfony/symfony/src/Symfony/Component/Process/Process.php:1345
     Symfony\Component\Process\Process->Symfony\Component\Process\{closure}() at /srv/vendor/symfony/symfony/src/Symfony/Component/Process/Process.php:1450
     Symfony\Component\Process\Process->readPipes() at /srv/vendor/symfony/symfony/src/Symfony/Component/Process/Process.php:388
     Symfony\Component\Process\Process->wait() at /srv/vendor/symfony/symfony/src/Symfony/Component/Process/Process.php:210
     Symfony\Component\Process\Process->run() at /srv/vendor/symfony/symfony/src/Symfony/Bundle/WebServerBundle/WebServer.php:47
     Symfony\Bundle\WebServerBundle\WebServer->run() at /srv/vendor/symfony/symfony/src/Symfony/Bundle/WebServerBundle/Command/ServerRunCommand.php:135
     Symfony\Bundle\WebServerBundle\Command\ServerRunCommand->execute() at /srv/vendor/symfony/symfony/src/Symfony/Component/Console/Command/Command.php:262
     Symfony\Component\Console\Command\Command->run() at /srv/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:860
     Symfony\Component\Console\Application->doRunCommand() at /srv/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:190
     Symfony\Component\Console\Application->doRun() at /srv/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:80
     Symfony\Bundle\FrameworkBundle\Console\Application->doRun() at /srv/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:121
     Symfony\Component\Console\Application->run() at /srv/bin/console:27
    
    server:run [-d|--docroot DOCROOT] [-r|--router ROUTER] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-e|--env ENV] [--no-debug] [--] <command> [<addressport>]
    
    ```
    <!--
    - Bug fixes must be submitted against the lowest branch where they apply
      (lowest branches are regularly merged to upper ones so they get the fixes too).
    - Features and deprecations must be submitted against the master branch.
    - Please fill in this template according to the PR you're about to submit.
    - Replace this comment by a description of what your PR is solving.
    -->
    
    Commits
    -------
    
    2ae5834 add missing use
    nicolas-grekas committed Jan 15, 2017
  8. [DI] Remove synthetic services from methodMap + generated methods

    nicolas-grekas committed Jan 12, 2017
  9. add missing use

    mykiwi committed Jan 15, 2017
  10. minor #21294 [VarDumper] Fixed typo in new search input (ro0NL)

    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [VarDumper] Fixed typo in new search input
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | yes
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
    | License       | MIT
    | Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->
    
    I guess both work out.. but using `of` notation is way more common.
    
    Btw chrome search doesnt show `0 of 0` (at least not initially).. maybe worth it?
    
    /cc @ogizanagi
    
    Commits
    -------
    
    f8d63a6 [VarDumper] Fixed typo in new search input
    nicolas-grekas committed Jan 15, 2017
  11. minor #21295 [DependencyInjection] add missing expectedDeprecation on…

    … testLegacyGet (Simperfit)
    
    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [DependencyInjection] add missing expectedDeprecation on testLegacyGet
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | no
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets |
    | License       | MIT
    | Doc PR        |
    
    Missing expectedDeprecation on testLegacyGet
    
    Commits
    -------
    
    bd3f770 [DependencyInjection] add missing expectedDeprecation on testLegacyGet
    nicolas-grekas committed Jan 15, 2017
  12. [DependencyInjection] add missing expectedDeprecation on testLegacyGet

    Simperfit committed Jan 15, 2017
  13. [VarDumper] Fixed typo in new search input

    ro0NL committed on GitHub Jan 15, 2017
Commits on Jan 14, 2017
  1. minor #21268 [Cache] Relax binary-constraint on Memcached connections…

    … (nicolas-grekas)
    
    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [Cache] Relax binary-constraint on Memcached connections
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | no
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets | -
    | License       | MIT
    | Doc PR        | -
    
    If it's green then it's PSR-6 compliant.
    
    Commits
    -------
    
    284d363 [Cache] Relax binary-constraint on Memcached connections
    nicolas-grekas committed Jan 14, 2017
  2. [FrameworkBundle] Fix debug:container --show-arguments missing cases

    chalasr committed Jan 14, 2017
Commits on Jan 13, 2017
  1. Merge branch '3.2'

    * 3.2:
      [Cache] Using strpbrk() instead of strcspn() is faster
      bumped Symfony version to 3.2.3
      updated VERSION for 3.2.2
      updated CHANGELOG for 3.2.2
      bumped Symfony version to 3.1.10
      updated VERSION for 3.1.9
      updated CHANGELOG for 3.1.9
    nicolas-grekas committed Jan 13, 2017
  2. Merge branch '3.1' into 3.2

    * 3.1:
      [Cache] Using strpbrk() instead of strcspn() is faster
      bumped Symfony version to 3.1.10
      updated VERSION for 3.1.9
      updated CHANGELOG for 3.1.9
    nicolas-grekas committed Jan 13, 2017
  3. bug #21269 [Cache] Using strpbrk() instead of strcspn() is faster (ni…

    …colas-grekas)
    
    This PR was merged into the 3.1 branch.
    
    Discussion
    ----------
    
    [Cache] Using strpbrk() instead of strcspn() is faster
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 3.1
    | Bug fix?      | no
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets | -
    | License       | MIT
    | Doc PR        | -
    
    Keys validation using strpbrk is faster.
    Eg on some micro bench:
    - `isset($a[strcspn($a, '{}()/\@:')])`: 278ms
    - `false !== strpbrk($a, '{}()/\@:')`: 183ms
    
    Commits
    -------
    
    d68c451 [Cache] Using strpbrk() instead of strcspn() is faster
    nicolas-grekas committed Jan 13, 2017
  4. [Cache] Using strpbrk() instead of strcspn() is faster

    nicolas-grekas committed Jan 13, 2017
  5. minor #21255 [Profiler] Fix inline dump rendering (ogizanagi)

    This PR was merged into the 3.3-dev branch.
    
    Discussion
    ----------
    
    [Profiler] Fix inline dump rendering
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | yes
    | New feature?  | no
    | BC breaks?    | no
    | Deprecations? | no
    | Tests pass?   | yes
    | Fixed tickets | N/A
    | License       | MIT
    | Doc PR        | N/A
    
    I introduced a minor rendering issue in #21109 when adding a clearfix behavior to the `pre.sf-dump` element:
    
    |Before|After|
    |-------|-----|
    |
    <img width="890" alt="screenshot 2017-01-12 a 19 57 34" src="https://cloud.githubusercontent.com/assets/2211145/21903782/6989eb36-d901-11e6-8f02-99c4a8356725.PNG">|<img width="892" alt="screenshot 2017-01-12 a 19 52 56" src="https://cloud.githubusercontent.com/assets/2211145/21903721/407d3bbc-d901-11e6-901b-3f5b65bee650.PNG">|
    
    This will fix the issue by removing it, as we don't need this behavior for inline dumps.
    
    Commits
    -------
    
    81e2641 [Profiler] Fix inline dump rendering
    nicolas-grekas committed Jan 13, 2017
  6. [Cache] Relax binary-constraint on Memcached connections

    nicolas-grekas committed Jan 13, 2017
  7. [DI] Mark generated containers as final

    nicolas-grekas committed Jan 12, 2017
Commits on Jan 12, 2017
  1. bumped Symfony version to 3.2.3

    fabpot committed Jan 12, 2017
  2. Merge pull request #21261 from fabpot/release-3.2.2

    released v3.2.2
    fabpot committed on GitHub Jan 12, 2017
  3. updated VERSION for 3.2.2

    fabpot committed Jan 12, 2017
  4. updated CHANGELOG for 3.2.2

    fabpot committed Jan 12, 2017
  5. bumped Symfony version to 3.1.10

    fabpot committed Jan 12, 2017
  6. Merge pull request #21260 from fabpot/release-3.1.9

    released v3.1.9
    fabpot committed on GitHub Jan 12, 2017
  7. updated VERSION for 3.1.9

    fabpot committed Jan 12, 2017
  8. updated CHANGELOG for 3.1.9

    fabpot committed Jan 12, 2017
  9. Merge branch '3.2'

    * 3.2:
      Fix test
    nicolas-grekas committed Jan 12, 2017
  10. Fix test

    nicolas-grekas committed Jan 12, 2017
  11. Merge branch '3.2'

    * 3.2:
      [Profiler][Form] Fix form profiler errors profiler_dump
    nicolas-grekas committed Jan 12, 2017