Skip to content
Permalink
Branch: 4.4
Commits on Nov 8, 2019
  1. [EventDispatcher] dont allow event-dispatcher-contracts ^2

    nicolas-grekas committed Nov 8, 2019
  2. Merge branch '4.3' into 4.4

    nicolas-grekas committed Nov 8, 2019
    * 4.3:
      [FrameworkBundle] fix lower dep
  3. [FrameworkBundle] fix lower dep

    nicolas-grekas committed Nov 8, 2019
  4. bug #34301 [DI] fix loading env while env loaders are loaded (nicolas…

    nicolas-grekas committed Nov 8, 2019
    …-grekas)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [DI] fix loading env while env loaders are loaded
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | -
    | License       | MIT
    | Doc PR        | -
    
    Commits
    -------
    
    522bd5d [DI] fix loading env while env loaders are loaded
  5. [DI] fix loading env while env loaders are loaded

    nicolas-grekas committed Nov 8, 2019
  6. minor #34290 [DI] Remove LazyString from 4.4, before adding back to t…

    nicolas-grekas committed Nov 8, 2019
    …he String component (nicolas-grekas)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [DI] Remove LazyString from 4.4, before adding back to the String component
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | no
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | -
    | License       | MIT
    | Doc PR        | -
    
    In #34190 I'm proposing to move LazyString to the Service contracts, but String might be a better fit actually. Let's remove the class from 4.4 where it's not really needed, and add it back on 5.0 in the String component.
    
    Commits
    -------
    
    b1a3ee7 [DI] Remove LazyString from 4.4, before adding back to the String component
  7. Merge branch '4.3' into 4.4

    nicolas-grekas committed Nov 8, 2019
    * 4.3:
      [DI] fix locators with numeric keys
      Fix error when we use VO for the marking property
  8. bug #34294 [Workflow] Fix error when we use ValueObject for the marki…

    nicolas-grekas committed Nov 8, 2019
    …ng property (FabienSalles)
    
    This PR was merged into the 4.3 branch.
    
    Discussion
    ----------
    
    [Workflow] Fix error when we use ValueObject for the marking property
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.3
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | Fix #28203 #22031
    | License       | MIT
    
    Fix Illegal offset type in `MethodMarkingStore` class when we use Value Object for
    the marking property.
    
    Now, we can avoid to use only a string an we can have a Subject class with a Value Object like this :
    ```php
    final class State
    {
        public const DRAFT = 'draft';
        public const REVIEWED = 'reviewed';
        public const REJECTED = 'rejected';
        public const PUBLISHED = 'published';
    
         /** @var string */
        private $state;
    
        public function __construct(string $state)
        {
            // some validation
            $this->state = $state;
        }
    
        public function __toString()
         {
             return $this->state;
        }
    
        public static function Draft()
         {
             return new self(self::DRAFT);
         }
        ...
    }
    
    final class Subject
    {
        private $marking;
    
        public function __construct(State $marking = null)
        {
            $this->marking = $marking;
        }
    
        public function getMarking()
        {
            return $this->marking;
        }
    
        public function setMarking($marking)
        {
            $this->marking = $marking instanceof State ? $marking : new State($marking);
        }
    
    ```
    
    Commits
    -------
    
    6570d5c Fix error when we use VO for the marking property
  9. Merge branch '3.4' into 4.3

    nicolas-grekas committed Nov 8, 2019
    * 3.4:
      [DI] fix locators with numeric keys
  10. bug #34297 [DI] fix locators with numeric keys (nicolas-grekas)

    nicolas-grekas committed Nov 8, 2019
    This PR was merged into the 3.4 branch.
    
    Discussion
    ----------
    
    [DI] fix locators with numeric keys
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 3.4
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | Fix #34296
    | License       | MIT
    | Doc PR        | -
    
    Commits
    -------
    
    dad4344 [DI] fix locators with numeric keys
  11. [DI] fix locators with numeric keys

    nicolas-grekas committed Nov 8, 2019
  12. feature #34252 [Console] Add support for NO_COLOR env var (Seldaek)

    nicolas-grekas committed Nov 8, 2019
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [Console] Add support for NO_COLOR env var
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | no
    | New feature?  | yes
    | Deprecations? | no
    | License       | MIT
    | Doc PR        |
    
    Adds support for https://no-color.org/ - ideally this would be considered a bugfix and added to older releases IMO, but submitting as new feature for now.
    
    cc @johnstevenson
    
    Commits
    -------
    
    c1b0a8e Add support for NO_COLOR env var
  13. feature #34295 [DI][FrameworkBundle] add EnvVarLoaderInterface - remo…

    nicolas-grekas committed Nov 8, 2019
    …ve SecretEnvVarProcessor (nicolas-grekas)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [DI][FrameworkBundle] add EnvVarLoaderInterface - remove SecretEnvVarProcessor
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | no
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | -
    | License       | MIT
    | Doc PR        | -
    
    This PR allows encrypting any env vars - not only those using the `%env(secret:<...>)%` processor (and the processor is removed actually).
    
    It does so by introducing a new `EnvVarLoaderInterface` (and a corresponding `container.env_var_loader` tag), which are objects that should return a list of key/value pairs that will be accessible via the regular `%env(FOO)%` syntax.
    
    The PR fixes a few issues found meanwhile. One is especially important: files in the vault should end with `.php` to protect against inadvertant exposures of the document root.
    
    Commits
    -------
    
    ba2148f [DI][FrameworkBundle] add EnvVarLoaderInterface - remove SecretEnvVarProcessor
  14. [DI][FrameworkBundle] add EnvVarLoaderInterface - remove SecretEnvVar…

    nicolas-grekas committed Nov 8, 2019
    …Processor
  15. [DI] Remove LazyString from 4.4, before adding back to the String com…

    nicolas-grekas committed Nov 8, 2019
    …ponent
  16. feature #31310 [DependencyInjection] Added option `ignore_errors: not…

    nicolas-grekas committed Nov 8, 2019
    …_found` for imported config files (pulzarraider)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [DependencyInjection] Added option `ignore_errors: not_found` for imported config files
    
    | Q             | A
    | ------------- | ---
    | Branch?       | master
    | Bug fix?      | no
    | New feature?  | yes
    | BC breaks?    | no
    | Deprecations? | yes
    | Tests pass?   | yes
    | Fixed tickets | -
    | License       | MIT
    | Doc PR        | symfony/symfony-docs#11647
    
    If someone want to add optional config file. The only available choice was to add `ignore_errors: true` option
    
    e.g.
    ```
    imports:
        - { resource: parameters.yml, ignore_errors: true }
    ```
    
    But this will hide all errors in imported file. We ran in many situations that broke our Symfony applications because we had a typo in this imported files.
    
    This PR introduce new possible value `not_found` for `ignore_errors` option. It can be used for optional config files like the `ignore_errors: true`, but it will ignore only the file non-existence, not the possible syntax errors inside.
    
    Usage:
    ```
    imports:
        - { resource: parameters.yml, ignore_errors: not_found}
    ```
    
    Commits
    -------
    
    e0ee01c [DependencyInjection] Added option `ignore_errors: not_found` while importing config files
  17. bug #34285 [FrameworkBundle] fix SodiumVault after stof review (nicol…

    nicolas-grekas committed Nov 8, 2019
    …as-grekas)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [FrameworkBundle] fix SodiumVault after stof review
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | -
    | License       | MIT
    | Doc PR        | -
    
    As spotted by @stof in #34275 (review)
    
    Commits
    -------
    
    a594599 [FrameworkBundle] fix SodiumVault after stof review
  18. Merge branch '4.3' into 4.4

    nicolas-grekas committed Nov 8, 2019
    * 4.3:
      [DI] Dont cache classes with missing parents
      [HttpClient] Fix a crash when calling CurlHttpClient::__destruct()
      [Validator] Add the missing translations for the Hebrew (\"he\") locale and fix 2 typos
      [FrameworkBundle][Translation] Invalidate cached catalogues when the scanned directories change
  19. Merge branch '3.4' into 4.3

    nicolas-grekas committed Nov 8, 2019
    * 3.4:
      [DI] Dont cache classes with missing parents
      [Validator] Add the missing translations for the Hebrew (\"he\") locale and fix 2 typos
  20. bug #34282 [DI] Dont cache classes with missing parents (nicolas-grekas)

    nicolas-grekas committed Nov 8, 2019
    This PR was merged into the 3.4 branch.
    
    Discussion
    ----------
    
    [DI] Dont cache classes with missing parents
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 3.4
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | Closes #34239
    | License       | MIT
    | Doc PR        | -
    
    Commits
    -------
    
    1606430 [DI] Dont cache classes with missing parents
  21. [DI] Dont cache classes with missing parents

    nicolas-grekas committed Nov 7, 2019
  22. bug #34287 [HttpClient] Fix a crash when calling CurlHttpClient::__de…

    nicolas-grekas committed Nov 8, 2019
    …struct() (dunglas)
    
    This PR was merged into the 4.3 branch.
    
    Discussion
    ----------
    
    [HttpClient] Fix a crash when calling CurlHttpClient::__destruct()
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.3
    | Bug fix?      | yes
    | New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
    | Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
    | Tickets       | n/a
    | License       | MIT
    | Doc PR        | n/a
    
    I've not identified the exact issue, but when the profiler is enabled, an HttpClient instance is created and not used, then a crash occurs when `__destruct()` is called because `$this->mutli->handle` value is `0` has this point, while `curl_multi_setopt` expect a `resource`.
    
    This PR fixes the issue, but it's maybe not the good approach.
    
    Reproducer: symfony/mercure-bundle#14
    
    curl version: 7.67.0
    
    ```
    php -v
    PHP 7.3.11 (cli) (built: Oct 24 2019 11:29:52) ( NTS )
    Copyright (c) 1997-2018 The PHP Group
    Zend Engine v3.3.11, Copyright (c) 1998-2018 Zend Technologies
        with Zend OPcache v7.3.11, Copyright (c) 1999-2018, by Zend Technologies
        with blackfire v1.27.1~mac-x64-non_zts73, https://blackfire.io, by Blackfire
    ```
    
    Commits
    -------
    
    d2c5ffd [HttpClient] Fix a crash when calling CurlHttpClient::__destruct()
  23. minor #34286 Unallow symfony/http-kernel ^5.0 (fancyweb)

    nicolas-grekas committed Nov 8, 2019
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    Unallow symfony/http-kernel ^5.0
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | no
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | #34265 (comment)
    | License       | MIT
    | Doc PR        | -
    
    The components that have a data collector cannot be compatible with HttpKernel `DataCollectorInterface` 5.0.
    
    Commits
    -------
    
    da454db Unallow symfony/http-kernel ^5.0
Commits on Nov 7, 2019
  1. [FrameworkBundle] fix SodiumVault after stof review

    nicolas-grekas committed Nov 7, 2019
  2. feature #34216 [HttpClient] allow arbitrary JSON values in requests (…

    nicolas-grekas committed Nov 7, 2019
    …pschultz)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [HttpClient] allow arbitrary JSON values in requests
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | no
    | New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
    | Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
    | Tickets       | n/a
    | License       | MIT
    | Doc PR        | n/a
    
    Allow arbitrary values in the "json" request option. Previously values were
    limitated to arrays and objects of type JsonSerializable. This doesn't account
    for scalar values and classes with public properties (which don't need to
    implement JsonSerializable), [all of which are perfectly acceptable arguments to
    json_encode](https://www.php.net/manual/en/function.json-encode.php):
    
    > value
    > The value being encoded. Can be any type except a resource.
    
    It seems silly to expect users to add classes implementing JsonSerializable to represent, say, scalar values or an empty object.
    
    I'm not sure if you consider removed exceptional cases a BC break or not. I'm assuming "no" for now.
    
    Commits
    -------
    
    e98731a [HttpClient] allow arbitrary JSON values in requests
  3. bug #34275 [FrameworkBundle] allow using secrets when the sodium ext …

    nicolas-grekas committed Nov 7, 2019
    …is missing (nicolas-grekas)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [FrameworkBundle] allow using secrets when the sodium ext is missing
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | -
    | License       | MIT
    | Doc PR        | -
    
    When all secrets are defined as env vars, there is no need for the sodium vault, yet it chokes on instantiation currently.
    
    Commits
    -------
    
    326284a [FrameworkBundle] allow using secrets when the sodium ext is missing
Commits on Nov 6, 2019
  1. minor #34267 Skip validation of services that make the CI fail (nicol…

    nicolas-grekas committed Nov 6, 2019
    …as-grekas)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    Skip validation of services that make the CI fail
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | no
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | -
    | License       | MIT
    | Doc PR        | -
    
    Commits
    -------
    
    403fdf4 Skip validation of services that make the CI fail
  2. Skip validation of services that make the CI fail

    nicolas-grekas committed Nov 6, 2019
  3. Merge branch '4.3' into 4.4

    nicolas-grekas committed Nov 6, 2019
    * 4.3:
      [Serializer] Use context to compute MetadataAwareNameConverter cache
  4. bug #34246 [Serializer] Use context to compute MetadataAwareNameConve…

    nicolas-grekas committed Nov 6, 2019
    …rter cache (antograssiot)
    
    This PR was merged into the 4.3 branch.
    
    Discussion
    ----------
    
    [Serializer] Use context to compute MetadataAwareNameConverter cache
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.3
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Tickets       |
    | License       | MIT
    | Doc PR        |
    
    This is a follow up PR to #34035 to address @nicolas-grekas 's [comment](#34035 (comment))
    
    The static cache has been re-introduced and the context is used to compute the cache key used for denormalization
    
    Commits
    -------
    
    0ac5346 [Serializer] Use context to compute MetadataAwareNameConverter cache
  5. minor #34264 [VarDumper] Mark StubCaster as @Final (fancyweb)

    nicolas-grekas committed Nov 6, 2019
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [VarDumper] Mark StubCaster as @Final
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | no
    | New feature?  |
    | Deprecations? | yes
    | Tickets       | -
    | License       | MIT
    | Doc PR        | -
    
    Looks like it was forgotten in #33882.
    
    @lyrixx was it intentional?
    
    Commits
    -------
    
    d25b609 [VarDumper] Mark StubCaster as @Final
  6. minor #34262 [DoctrineBridge] conflict with validator < 4.4 (nicolas-…

    nicolas-grekas committed Nov 6, 2019
    …grekas)
    
    This PR was merged into the 4.4 branch.
    
    Discussion
    ----------
    
    [DoctrineBridge] conflict with validator < 4.4
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 4.4
    | Bug fix?      | no
    | New feature?  | no
    | Deprecations? | no
    | Tickets       | -
    | License       | MIT
    | Doc PR        | -
    
    Or you'll get `PHP Fatal error:  Trait 'Symfony\Component\Validator\Mapping\Loader\AutoMappingTrait' not found`.
    
    /cc @dunglas FYI
    
    Commits
    -------
    
    ca398df [DoctrineBridge] conflict with validator < 4.4
  7. [DoctrineBridge] conflict with validator < 4.4

    nicolas-grekas committed Nov 6, 2019
  8. Merge branch '4.3' into 4.4

    nicolas-grekas committed Nov 6, 2019
    * 4.3:
      fix typo (bis)
      fix typo
      [HttpKernel] backport FC compat code
Older
You can’t perform that action at this time.