Commit Graph

22232 Commits

Author SHA1 Message Date
Fabien Potencier
74461cc2db feature #28244 [FrameworkBundle] Added new "auto" mode for framework.session.cookie_secure to turn it on when https is used (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[FrameworkBundle] Added new "auto" mode for `framework.session.cookie_secure` to turn it on when https is used

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

I'm pretty sure we're many forgetting to make session cookies "secure".
Here is an "auto" mode that makes them secure automatically when the session is started on requests with the "https" scheme.

Commits
-------

4f7b41a83d [FrameworkBundle] Added new "auto" mode for `framework.session.cookie_secure` to turn it on when https is used
2018-08-27 18:19:09 +02:00
Nicolas Grekas
4f7b41a83d [FrameworkBundle] Added new "auto" mode for framework.session.cookie_secure to turn it on when https is used 2018-08-27 18:13:55 +02:00
Fabien Potencier
53ffa6674a feature #28277 [Serializer] AbstractObjectNormalizer improve performance (martiis)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Serializer] AbstractObjectNormalizer improve performance

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #28276
| License       | MIT

Check ticket for description

Commits
-------

4224145a69 [Serializer] AbstractObjectNormalizer improve perf when checking types
2018-08-27 17:56:01 +02:00
Fabien Potencier
6cc2bd680e minor #28281 [Serializer] Update changelog about the new $encoderIgnoredNodeTypes arg in XmlEncoder contrustor (maidmaid)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Serializer] Update changelog about the new $encoderIgnoredNodeTypes arg in XmlEncoder contrustor

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/27926
| License       | MIT
| Doc PR        | /

Commits
-------

49f3bfc823 Update changelog
2018-08-27 17:45:46 +02:00
Fabien Potencier
93bb665272 feature #28247 [Messenger] Don't make EnvelopeItemInterface extend Serializable (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Messenger] Don't make EnvelopeItemInterface extend Serializable

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | yes (on experimental API)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

`Serializable` is a broken interface, see e.g. https://externals.io/message/98834
I don't think we should force ppl to implement it anywhere.
Actually, it isn't required to be able to serialize an object, and it doesn't enforce making a class serializable (as the `serialize()` method can throw).

What was the purpose of the removed logic? ping @sroze @ogizanagi

Commits
-------

2beda894f2 [Messenger] Don't make EnvelopeItemInterface extend Serializable
2018-08-27 17:40:47 +02:00
Dany Maillard
49f3bfc823 Update changelog 2018-08-27 17:10:45 +02:00
Martynas Sudintas
4224145a69 [Serializer] AbstractObjectNormalizer improve perf when checking types 2018-08-26 19:46:07 +03:00
Nicolas Grekas
ff1727e2ee Merge branch '4.1'
* 4.1:
  [HttpFoundation] cleanup test case
  [HttpFoundation] Allow RedisCluster class for RedisSessionHandler
2018-08-26 10:35:20 +02:00
Nicolas Grekas
620dfdec13 [HttpFoundation] cleanup test case 2018-08-26 10:29:34 +02:00
Michaël Perrin
d2ecea0b6e [HttpFoundation] Allow RedisCluster class for RedisSessionHandler 2018-08-26 10:23:26 +02:00
Dany Maillard
2223fcc5b9 Allow to ignore PI while encoding 2018-08-24 19:15:24 +02:00
Nicolas Grekas
4e4b21668a Merge branch '4.1'
* 4.1:
  [HttpKernel] fix forwarding trusted headers as server parameters
2018-08-24 16:41:28 +02:00
Nicolas Grekas
3ac90c172a Merge branch '3.4' into 4.1
* 3.4:
  [HttpKernel] fix forwarding trusted headers as server parameters
2018-08-24 16:41:24 +02:00
Nicolas Grekas
96e0833b93 Merge branch '2.8' into 3.4
* 2.8:
  [HttpKernel] fix forwarding trusted headers as server parameters
2018-08-24 16:37:40 +02:00
Nicolas Grekas
2554ad0698 bug #28241 [HttpKernel] fix forwarding trusted headers as server parameters (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[HttpKernel] fix forwarding trusted headers as server parameters

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #28233, #28226, #28225, #28240
| License       | MIT
| Doc PR        | -

Commits
-------

92953485a5 [HttpKernel] fix forwarding trusted headers as server parameters
2018-08-24 16:33:48 +02:00
Nicolas Grekas
2beda894f2 [Messenger] Don't make EnvelopeItemInterface extend Serializable 2018-08-24 15:12:11 +02:00
Nicolas Grekas
c099d8675f Merge branch '4.1'
* 4.1:
  [travis] fix composer.lock invalidation for deps=low
  fix typo
2018-08-24 14:41:40 +02:00
Nicolas Grekas
b6c2c46865 fix typo 2018-08-24 13:47:58 +02:00
Nicolas Grekas
ec51b2cc26 Merge branch '4.1'
* 4.1:
  [DoctrineBridge] support __toString as documented for UniqueEntityValidator
  [travis] enable Redis cluster
  [Cache] enable Memcached::OPT_TCP_NODELAY to fix perf of misses
  fix data mapper return type in docblock
  fix type error handling when writing values
2018-08-24 12:22:37 +02:00
Nicolas Grekas
51525e63f8 Merge branch '3.4' into 4.1
* 3.4:
  [DoctrineBridge] support __toString as documented for UniqueEntityValidator
  [travis] enable Redis cluster
  [Cache] enable Memcached::OPT_TCP_NODELAY to fix perf of misses
  fix data mapper return type in docblock
  fix type error handling when writing values
2018-08-24 12:22:26 +02:00
Nicolas Grekas
8b66cfca5a Merge branch '2.8' into 3.4
* 2.8:
  fix data mapper return type in docblock
  fix type error handling when writing values
2018-08-24 12:16:13 +02:00
Nicolas Grekas
b959d8594c feature #28218 Improve support for anonymous classes (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

Improve support for anonymous classes

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

Before:
![image](https://user-images.githubusercontent.com/243674/44276933-5c522600-a249-11e8-8bcc-6d55c9fa5a5e.png)

After:
![image](https://user-images.githubusercontent.com/243674/44276912-4cd2dd00-a249-11e8-943f-b6b0d0eb8908.png)

Same in other places, e.g. Console failures.

Commits
-------

e41ced2bfd Improve support for anonymous classes
2018-08-24 12:03:22 +02:00
Nicolas Grekas
771463123a cs fix 2018-08-24 12:01:11 +02:00
Nicolas Grekas
f03a54ed51 feature #28221 [DomCrawler] Add a way to filter direct children (Einenlum)
This PR was squashed before being merged into the 4.2-dev branch (closes #28221).

Discussion
----------

[DomCrawler] Add a way to filter direct children

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

The Dom-Crawler component only has a `filter()` method (to filter the node and all its children) and a `children()` method to return direct children.
**There is currently no way to easily filter (thanks to a selector) the direct children of a node, like jQuery allows so (with a selector passed to the `.children([selector])` method).**

**This PR adds a way to optionally filter direct children thanks to a CSS selector**. Here is an example of the usage:

```php
$html = <<<'HTML'
<html>
    <body>
        <div id="foo">
            <p class="lorem" id="p1"></p>
            <p class="lorem" id="p2"></p>
            <div id="nested">
                <p class="lorem" id="p3"></p>
            </div>
        </div>
    </body>
</html>
HTML;

$crawler = new Crawler($html);
$foo = $crawler->filter('#foo');

$foo->children() // will select `#p1`, `#p2` and `#nested`
$foo->children('p') // will select `#p1` and `p2`
$foo->children('.lorem') // will select `#p1` and `p2`
```
This PR adds only an optional parameter and adds no BC break.

Commits
-------

f634afdb6f [DomCrawler] Add a way to filter direct children
2018-08-24 12:00:10 +02:00
Einenlum
f634afdb6f [DomCrawler] Add a way to filter direct children 2018-08-24 11:59:58 +02:00
Nicolas Grekas
e18bf6eee0 bug #28220 [PropertyAccess] fix type error handling when writing values (xabbuh)
This PR was merged into the 2.8 branch.

Discussion
----------

[PropertyAccess] fix type error handling when writing values

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

Commits
-------

45754515a5 fix type error handling when writing values
2018-08-24 11:57:25 +02:00
Nicolas Grekas
d8e2af32d8 feature #28234 [DI] Allow autowiring by type + parameter name (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[DI] Allow autowiring by type + parameter name

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/issues/10206

In #27165, we introduced the possibility to bind by type+name:
```yaml
bind:
    Psr\Log\LoggerInterface $myLogger: @monolog.logger.my_logger
```

But we forgot about aliases. For consistency, they could and should allow doing the same. More importantly, this will open up interesting use cases where bundles could provide default values for typed+named arguments (using the new `ContainerBuilder::registerAliasForArgument()` method). E.g:
```yaml
services:
    Psr\Cache\CacheItemPoolInterface $appCacheForecast: @app.cache.forecast
```
Works also for controller actions and service subscribers (using the real service id as the key).

Commits
-------

c0b8f53bcb [DI] Allow autowiring by type + parameter name
2018-08-24 11:56:33 +02:00
Nicolas Grekas
8860b6691c bug #28249 [Cache] enable Memcached::OPT_TCP_NODELAY to fix perf of misses (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Cache] enable Memcached::OPT_TCP_NODELAY to fix perf of misses

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

As described in https://github.com/php-memcached-dev/php-memcached/issues/24 and because we enable the binary protocol by default.

Commits
-------

8b59d177db [Cache] enable Memcached::OPT_TCP_NODELAY to fix perf of misses
2018-08-24 11:47:29 +02:00
Nicolas Grekas
f245df404f [travis] enable Redis cluster 2018-08-24 11:22:31 +02:00
Nicolas Grekas
8b59d177db [Cache] enable Memcached::OPT_TCP_NODELAY to fix perf of misses 2018-08-23 17:04:29 +02:00
Nicolas Grekas
c0b8f53bcb [DI] Allow autowiring by type + parameter name 2018-08-23 11:47:19 +02:00
Nicolas Grekas
92953485a5 [HttpKernel] fix forwarding trusted headers as server parameters 2018-08-22 17:45:23 +02:00
Nicolas Grekas
e41ced2bfd Improve support for anonymous classes 2018-08-21 14:03:16 +02:00
Nicolas Grekas
6a4de22787 bug #28228 [Validator] Fix precision issue regarding floats and DivisibleBy constraint (apfelbox)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Validator] Fix precision issue regarding floats and DivisibleBy constraint

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

Alternative to #28212

Commits
-------

ae04b48332 [Validator] Fix precision issue regarding floats and DivisibleBy constraint
2018-08-21 13:54:23 +02:00
Jannik Zschiesche
ae04b48332 [Validator] Fix precision issue regarding floats and DivisibleBy constraint 2018-08-20 16:30:22 +02:00
Fabien Potencier
0332f861c6 minor #28230 [Form] fix data mapper return type in docblock (xabbuh)
This PR was merged into the 2.8 branch.

Discussion
----------

[Form] fix data mapper return type in docblock

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

Commits
-------

5bdc755d73 fix data mapper return type in docblock
2018-08-20 13:41:49 +02:00
Christian Flothmann
5bdc755d73 fix data mapper return type in docblock 2018-08-19 18:51:04 +02:00
Nicolas Grekas
2df7320c1c bug #28188 [Cache] make PhpMarshaller handle hard references (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Cache] make PhpMarshaller handle hard references

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

This PR makes the interface and behavior of `PhpMarshaller` cleaner and bullet-proof.
While a bug fix at this stage, I'd like to propose splitting it to a new `VarExporter` component all goes well.

Commits
-------

bc5d208584 [Cache] make PhpMarshaller handle hard references
2018-08-19 18:15:21 +02:00
Fabien Potencier
2d7aedba6e feature #28156 [Serializer] Fix the XML comments encoding (maidmaid)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Serializer] Fix the XML comments encoding

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

When we decode a XML comment, we get `['#comment' => ' foo ']`. But when we encode this same content, the result is not the expected one.

```php
$encoder->encode(['#comment' => ' foo '], 'xml');
```
```
Expected:
<response>
    <!-- foo -->
</response>

Actual:
<response>
  <item key="#comment"> foo </item>
</response>
```

Commits
-------

d94a37f395 Allow to encode xml comments
2018-08-19 13:10:28 +02:00
Dany Maillard
d94a37f395 Allow to encode xml comments 2018-08-19 12:41:43 +02:00
Nicolas Grekas
3063c62bba Merge branch '4.1'
* 4.1:
  [travis] fix composer.lock invalidation for deps=low
  [Security\Http] Restore laziness of listener iterator
  Make the `message_bus` alias public
2018-08-19 10:17:45 +02:00
Nicolas Grekas
cd14b22f18 Merge branch '3.4' into 4.1
* 3.4:
  [travis] fix composer.lock invalidation for deps=low
  [Security\Http] Restore laziness of listener iterator
2018-08-19 10:16:41 +02:00
Nicolas Grekas
2ebc75b9a1 [Security\Http] Restore laziness of listener iterator 2018-08-18 22:38:48 +02:00
Nicolas Grekas
1c248e572e Merge branch '4.1'
* 4.1:
  fix merge
  [travis][appveyor] use symfony/flex to accelerate builds
  Add missing stderr redirection
  clean up unused code
  Remove the HTML5 validation from the profiler URL search form
  [Filesystem] Add test to prevent regression when using array|resource with dumpFile
  Add help texts for checkboxes in horizontal bootstrap 4 forms
  [Security] Call AccessListener after LogoutListener
2018-08-18 18:57:16 +02:00
Nicolas Grekas
2dedacbc04 Merge branch '3.4' into 4.1
* 3.4:
  [travis][appveyor] use symfony/flex to accelerate builds
  Add missing stderr redirection
  clean up unused code
  [Filesystem] Add test to prevent regression when using array|resource with dumpFile
  [Security] Call AccessListener after LogoutListener
2018-08-18 18:52:46 +02:00
Nicolas Grekas
d351daab04 Merge branch '2.8' into 3.4
* 2.8:
  [travis][appveyor] use symfony/flex to accelerate builds
  [Security] Call AccessListener after LogoutListener
2018-08-18 18:47:20 +02:00
Christian Flothmann
45754515a5 fix type error handling when writing values 2018-08-17 19:56:06 +02:00
Kevin Grenier
91d72a67c8 Removed dead code in Kernel 2018-08-17 19:17:32 +02:00
Nicolas Grekas
f0168e3ed6 [Validator] update CHANGELOG 2018-08-15 17:46:19 +02:00
Nicolas Grekas
9f4615a7ae feature #28069 [Validator] New DivisibleBy constraint for testing divisibility (colinodell)
This PR was squashed before being merged into the 4.2-dev branch (closes #28069).

Discussion
----------

[Validator] New `DivisibleBy` constraint for testing divisibility

This introduces a new ~`MultipleOf`~ `DivisibleBy` constraint which checks whether one number is a multiple of (aka "divisible by") some other number.  Useful for enforcing specific increments on a number.

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/10121

See https://github.com/symfony/symfony-docs/pull/10121 for examples of this constraint in action.

Commits
-------

efcfb8b22d [Validator] New `DivisibleBy` constraint for testing divisibility
2018-08-15 17:44:16 +02:00