Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: symfony/symfony
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 7.4
Choose a base ref
...
head repository: symfony/symfony
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 7.3
Choose a head ref
  • 18 commits
  • 18 files changed
  • 8 contributors

Commits on Jun 6, 2025

  1. Configuration menu
    Copy the full SHA
    321bdf8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    eb289c7 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2025

  1. Configuration menu
    Copy the full SHA
    6c964e7 View commit details
    Browse the repository at this point in the history
  2. bug #60638 [Form] Fix keep_as_list when data is not an array (MatTh…

    …eCat)
    
    This PR was merged into the 7.2 branch.
    
    Discussion
    ----------
    
    [Form] Fix `keep_as_list` when data is not an array
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 7.2
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Issues        | Fix part of #57430
    | License       | MIT
    
    The `CollectionType` handles not only arrays but also `ArrayAccess&Traversable`. However when setting its `keep_as_list` option, `array_values` would then be called and crash.
    
    To avoid this, this PR reindexes the data by getting its keys and unsetting them. This is because unsetting in a loop can produce counter-intuitive results; e.g. [`ArrayIterator` would skip indexes](https://www.php.net/manual/en/arrayiterator.offsetunset.php).
    
    Note that #57430 mentions another issue that would be fixed by #59910.
    
    Commits
    -------
    
    6c964e7 [Form] Fix `keep_as_list` when data is not an array
    xabbuh committed Jun 10, 2025
    Configuration menu
    Copy the full SHA
    455a7e2 View commit details
    Browse the repository at this point in the history

Commits on Jun 11, 2025

  1. [Form] Keep submitted values when keep_as_list option of collection t…

    …ype is enabled
    
    Co-authored-by: mariecharles marie.charles@hetic.net
    kells committed Jun 11, 2025
    Configuration menu
    Copy the full SHA
    bac56de View commit details
    Browse the repository at this point in the history
  2. bug #59910 [Form] Keep submitted values when keep_as_list option of…

    … collection type is enabled (kells)
    
    This PR was merged into the 7.2 branch.
    
    Discussion
    ----------
    
    [Form] Keep submitted values when `keep_as_list` option of collection type is enabled
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 7.2
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Issues        | Fix #57430
    | License       | MIT
    
    When the `keep_as_list` option of `CollectionType` is true, its entries lose their values when re-displaying the form with submitted data.
    
    This fix only concerns the 2nd point of the [linked issue](#57430 (comment)).
    
    Commits
    -------
    
    bac56de [Form] Keep submitted values when keep_as_list option of collection type is enabled
    xabbuh committed Jun 11, 2025
    Configuration menu
    Copy the full SHA
    ac794a7 View commit details
    Browse the repository at this point in the history
  3. bug #60719 [JsonPath] Fix support for comma separated indices (alexan…

    …dre-daubois)
    
    This PR was merged into the 7.3 branch.
    
    Discussion
    ----------
    
    [JsonPath] Fix support for comma separated indices
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 7.3
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Issues        | -
    | License       | MIT
    
    Fix supporting multiple indices separated with commas with expressions like `$[0, 2, 'a,b,c', -1]` (which would fetch, respectively the first, third, last elements and the one with index `a,b,c`).
    
    Commits
    -------
    
    321bdf8 [JsonPath] Fix support for comma separated indices
    chalasr committed Jun 11, 2025
    Configuration menu
    Copy the full SHA
    623c52b View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2025

  1. Configuration menu
    Copy the full SHA
    d39a7ac View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2025

  1. bug #60771 [Runtime] fix compatibility with Symfony 7.4 (xabbuh)

    This PR was merged into the 6.4 branch.
    
    Discussion
    ----------
    
    [Runtime] fix compatibility with Symfony 7.4
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 6.4
    | Bug fix?      | no
    | New feature?  | no
    | Deprecations? | no
    | Issues        |
    | License       | MIT
    
    Since #60394 using `add()` is deprecated. This means that our tests can trigger deprecations on older branches when the high deps job is run. This usually is not an issue as we silence them with the `SYMFONY_DEPRECATIONS_HELPER` env var. However, phpt tests are run in a child process where the deprecation error handler of the PHPUnit bridge doesn't step in. Thus, for them deprecations are not silenced leading to failures.
    
    We did something similar before in #60376.
    
    Commits
    -------
    
    d39a7ac fix compatibility with Symfony 7.4
    nicolas-grekas committed Jun 13, 2025
    Configuration menu
    Copy the full SHA
    c69e4ab View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    df064b0 View commit details
    Browse the repository at this point in the history
  3. bug #60502 [HttpCache] Hit the backend only once after waiting for th…

    …e cache lock (mpdude)
    
    This PR was squashed before being merged into the 6.4 branch.
    
    Discussion
    ----------
    
    [HttpCache] Hit the backend only once after waiting for the cache lock
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 6.4
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Issues        |
    | License       | MIT
    
    When the `HttpCache` has to wait for a lock held by another, concurrent process, the `lock()` method wants to make sure we continue operation based on the most recent cache entry, possibly updated by the concurrent process.
    
    So, after waiting for lock release, it calls `lookup()` to obtain this cache entry. This is, in fact, a reentrant call up into the current call stack.
    
    Having `lookup()` multiple times on the call stack opens up a way to call the backend for validation multiple times. I have observed this in practice at least in combination with the `no-cache` cache-control header, causing surprising side effects™️ ✨.
    
    Also without `no-cache` you can get strange-looking cache traces like `stale, valid, store, fresh`. Those occur only when concurrent locking is a issue.
    
    I am not super happy with using an exception for a control flow issue like this. But, rolling back to `lookup` seems to be the most sensible decision for me, and using special return values to indicate this condition isn't really pretty either.
    
    Commits
    -------
    
    df064b0 [HttpCache] Hit the backend only once after waiting for the cache lock
    nicolas-grekas committed Jun 13, 2025
    Configuration menu
    Copy the full SHA
    aaa67ea View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f21b2f4 View commit details
    Browse the repository at this point in the history
  5. bug #60779 Silence E_DEPRECATED and E_USER_DEPRECATED (nicolas-grekas)

    This PR was merged into the 6.4 branch.
    
    Discussion
    ----------
    
    Silence E_DEPRECATED and E_USER_DEPRECATED
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 6.4
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Issues        | Fix #60528
    | License       | MIT
    
    This change works around php/php-src#17422
    
    This shouldn't change much in practice because we report both not-silenced and silenced deprecations, except for the case when the native php error handler is triggered, which is what happens at this opcache stage, see php/php-src#18541 also.
    
    Commits
    -------
    
    f21b2f4 Silence E_DEPRECATED and E_USER_DEPRECATED
    nicolas-grekas committed Jun 13, 2025
    Configuration menu
    Copy the full SHA
    9a7f7a3 View commit details
    Browse the repository at this point in the history
  6. Merge branch '6.4' into 7.2

    * 6.4:
      Silence E_DEPRECATED and E_USER_DEPRECATED
      [HttpCache] Hit the backend only once after waiting for the cache lock
      fix compatibility with Symfony 7.4
    nicolas-grekas committed Jun 13, 2025
    Configuration menu
    Copy the full SHA
    ec77126 View commit details
    Browse the repository at this point in the history
  7. Merge branch '7.2' into 7.3

    * 7.2:
      Silence E_DEPRECATED and E_USER_DEPRECATED
      [HttpCache] Hit the backend only once after waiting for the cache lock
      fix compatibility with Symfony 7.4
      [Form] Keep submitted values when keep_as_list option of collection type is enabled
      [Form] Fix `keep_as_list` when data is not an array
    nicolas-grekas committed Jun 13, 2025
    Configuration menu
    Copy the full SHA
    20895e2 View commit details
    Browse the repository at this point in the history
  8. bug #60504 [JsonPath] Fix subexpression evaluation in filters (alexan…

    …dre-daubois)
    
    This PR was merged into the 7.3 branch.
    
    Discussion
    ----------
    
    [JsonPath] Fix subexpression evaluation in filters
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 7.3
    | Bug fix?      | yes
    | New feature?  | no
    | Deprecations? | no
    | Issues        | -
    | License       | MIT
    
    This PR fixes complex expressions in filters evaluation like `$.store.book[?(@.publisher.address.city == "Springfield")]` or `$.store.book[?match(@.publisher.*.city, "Spring.+")]`.
    
    It also brings better support to the `@` operator when used alone.
    
    Commits
    -------
    
    eb289c7 [JsonPath] Fix subexpression evaluation in filters
    nicolas-grekas committed Jun 13, 2025
    Configuration menu
    Copy the full SHA
    9915db5 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    7d16676 View commit details
    Browse the repository at this point in the history
  10. minor #60695 [JsonPath] Test against official compliance test suite (…

    …mttsch)
    
    This PR was squashed before being merged into the 7.3 branch.
    
    Discussion
    ----------
    
    [JsonPath] Test against official compliance test suite
    
    Close #60669
    
    | Q             | A
    | ------------- | ---
    | Branch?       | 7.3
    | Bug fix?      | no
    | New feature?  | no
    | Deprecations? | no
    | Issues        | Fix #60669
    | License       | MIT
    
    <!--
    Replace this notice by a description of your feature/bugfix.
    This will help reviewers and should be a good start for the documentation.
    
    Additionally (see https://symfony.com/releases):
     - Always add tests and ensure they pass.
     - Bug fixes must be submitted against the lowest maintained 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 latest branch.
     - For new features, provide some code snippets to help understand usage.
     - Changelog entry should follow https://symfony.com/doc/current/contributing/code/conventions.html#writing-a-changelog-entry
     - Never break backward compatibility (see https://symfony.com/bc).
    -->
    
    Commits
    -------
    
    7d16676 [JsonPath] Test against official compliance test suite
    nicolas-grekas committed Jun 13, 2025
    Configuration menu
    Copy the full SHA
    488ff19 View commit details
    Browse the repository at this point in the history
Loading