[Security] fixed error 500 instead of 403 if previous exception is provided to AccessDeniedException
[DomCrawler] Fixed creating form objects from form nodes.
[DependencyInjection] fixed InlineServiceDefinitionsPass to not inline a service if it's part of the current definition (to avoid an infinite loop)
bug #9884 [DomCrawler] Fixed creating form objects from named form nodes (jakzal)

This PR was merged into the 2.3 branch.

Discussion
----------

[DomCrawler] Fixed creating form objects from named form nodes

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #9619
| License       | MIT
| Doc PR        | -

Commits
-------

72d6322 [DomCrawler] Fixed creating form objects from form nodes.
bug #9885 [Dependencyinjection] Fixed handling of inlined references in the AnalyzeServiceReferencesPass (fabpot)

This PR was merged into the 2.3 branch.

Discussion
----------

[Dependencyinjection] Fixed handling of inlined references in the AnalyzeServiceReferencesPass

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8299, #9829
| License       | MIT
| Doc PR        | n/a

Hopefully a better fix for #9829 (ping @jakzal). Unit tests coming soon.

In some cases `InlineServiceDefinitionsPass` replaces a Reference with a service Definition. In such scenarios `AnalyzeServiceReferencesPass` was falling into an infinite loop.

Commits
-------

d650295 [DependencyInjection] fixed InlineServiceDefinitionsPass to not inline a service if it's part of the current definition (to avoid an infinite loop)
[Security] made code easier to understand, added some missing unit tests
bug #9879 [Security] Fix ExceptionListener to catch correctly AccessDeniedException if is not first exception (fabpot)

This PR was merged into the 2.3 branch.

Discussion
----------

[Security] Fix ExceptionListener to catch correctly AccessDeniedException if is not first exception

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #9544, #8467?, #9823
| License       | MIT
| Doc PR        |

Same as #9823 but with some refactoring of the code and with some unit tests.

When merging to 2.4, the unit tests can be simplified a bit.

Commits
-------

172fd63 [Security] made code easier to understand, added some missing unit tests
616b6c5 [Security] fixed error 500 instead of 403 if previous exception is provided to AccessDeniedException
[Security] removed obsolete comment
Fix for cache-key conflict when having a \Traversable as choices
bug #9557 [DoctrineBridge] Fix for cache-key conflict when having a \Traversable as choices (DRvanR)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9557).

Discussion
----------

[DoctrineBridge] Fix for cache-key conflict when having a \Traversable as choices

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #9556
| License       | MIT
| Doc PR        | ~

Commits
-------

1119684 Fix for cache-key conflict when having a \Traversable as choices
[Security] Fixed problem with losing ROLE_PREVIOUS_ADMIN role.
bug #8997 [Security] Fixed problem with losing ROLE_PREVIOUS_ADMIN role. (pawaclawczyk)

This PR was squashed before being merged into the 2.3 branch (closes #8997).

Discussion
----------

[Security] Fixed problem with losing ROLE_PREVIOUS_ADMIN role.

<table>
  <tr>
    <td><b>Q</b></td>
    <td><b>A</b></td>
  </tr>
  <tr>
    <td>Bug fix?</td>
    <td>yes</td>
  </tr>
  <tr>
    <td>New feature</td>
    <td>no</td>
  </tr>
  <tr>
    <td>BC breaks?</td>
    <td>no</td>
  </tr>
  <tr>
    <td>Deprecations?</td>
    <td>no</td>
  </tr>
  <tr>
    <td>Tests pass?</td>
    <td>yes</td>
  </tr>
  <tr>
    <td>Fixed tickets</td>
    <td>#3085, #8974</td>
  </tr>
  <tr>
    <td>License</td>
    <td>MIT</td>
  </tr>
  <tr>
    <td>Doc PR</td>
    <td>n/a</td>
  </tr>
</table>

Problem occurs while user is impersonated. Authentication process generates new token and doeas not preserve role ```ROLE_PREVIOUS_ADMIN```. Ex. when parameter ```security.always_authenticate_before_granting``` is enabled.

Commits
-------

a7baa3b [Security] Fixed problem with losing ROLE_PREVIOUS_ADMIN role.
[Console] fixed column width when using the Table helper with some decoration in cells
fix #9321 Crawler::addHtmlContent add gbk encoding support
use restore_error_handler instead of set_error_handler($previous)
fix some cs
bug #9323 [DomCrawler]fix #9321 Crawler::addHtmlContent add gbk encoding support (bronze1man)

This PR was submitted for the 2.2 branch but it was merged into the 2.3 branch instead (closes #9323).

Discussion
----------

[DomCrawler]fix #9321 Crawler::addHtmlContent add gbk encoding support

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |  #9321
| License       | MIT
| Doc PR        | n/a

This is solution 1 in https://github.com/symfony/symfony/issues/9321#issuecomment-26508649

Commits
-------

30af288 fix some cs
9f20b24 use restore_error_handler instead of set_error_handler($previous)
53cb6ad [DomCrawler]fix #9321 Crawler::addHtmlContent add gbk encoding support
bug #9889 [Console] fixed column width when using the Table helper with some decoration in cells (fabpot)

This PR was merged into the 2.3 branch.

Discussion
----------

[Console] fixed column width when using the Table helper with some decoration in cells

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8152, #9366
| License       | MIT
| Doc PR        | n/a

This PR fixes the same issue as #9366 but works in all situations (all kind of styles, when the string is shorter than any other one or larger than any other ones, ...).

I'm not very satisfied with the fix and especially the `computeLengthWithoutDecoration` method, but the whole helper should be rethought to make it stateless (out of the scope of this PR).

Commits
-------

5b4d057 [Console] fixed column width when using the Table helper with some decoration in cells
Skips test that need full lib-intl.
minor #9896 [Intl] Skip tests that need full lib-intl when there's no lib-intl (pamil)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9896).

Discussion
----------

[Intl] Skip tests that need full lib-intl when there's no lib-intl

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

`NumberFormatter::formatCurrency` executes indirectly `Symfony\Component\Intl\ResourceBundle\Reader::read()`, which has `$bundle = new \ResourceBundle($locale, $path)` - there's Fatal Error if `\ResourceBundle` isn't found. Added availability to run unit tests if `lib-intl` isn't installed.

Commits
-------

6614b66 Skips test that need full lib-intl.