Commit Graph

31700 Commits

Author SHA1 Message Date
Florent Mata
4677bb4e4e [SecurityBundle] unhide debug security voter services 2018-11-11 11:44:36 +01:00
Nicolas Grekas
a4204cd685 Merge branch '4.1'
* 4.1:
  [DI] align IniFileLoader to PHP bugfix #76965
  Remove unused dependency
2018-11-10 16:16:42 +01:00
Nicolas Grekas
4b67acaa71 Merge branch '3.4' into 4.1
* 3.4:
  [DI] align IniFileLoader to PHP bugfix #76965
2018-11-10 16:16:08 +01:00
Nicolas Grekas
0ab87f44e6 [DI] align IniFileLoader to PHP bugfix #76965 2018-11-10 16:03:16 +01:00
Nicolas Grekas
1b82e563fe minor #29065 [OptionsResolver] Micro optimizations and simplifications (yceruto)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[OptionsResolver] Micro optimizations and simplifications

| 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/issues/29055
| License       | MIT
| Doc PR        | -

As we know, this component has a big impact on the workflow of the `Form` component. I'm a newcomer in Blackfire, so there could be other optimizations that I can't able to see, but here we go.

For now, we've less code to maintain ![commit-changes](https://user-images.githubusercontent.com/2028198/47917083-c3619d00-de7e-11e8-826a-0c3009948d93.png) and a micro-optimizacion of performance. It'd be great if someone could try these changes in a real project to see their real value.

![orbf](https://user-images.githubusercontent.com/2028198/47915644-e2116500-de79-11e8-8648-a5e619fcd3eb.png)
![metrics](https://user-images.githubusercontent.com/2028198/47917598-61a23280-de80-11e8-9153-3ea60317f1a5.png)

https://blackfire.io/profiles/compare/a04a13d3-7f60-4434-a2b8-0762efb8fbd6/graph
https://github.com/yceruto/orbf The sample takes into account only the core extensions.

Cheers!

Commits
-------

24c2213b3d Optimizations and simplifications OMG Blackfire!
2018-11-10 11:18:01 +01:00
Vladimir Reznichenko
dc1b24a8eb SCA: use 'yield from' where it does make sense 2018-11-10 11:03:47 +01:00
Robin Chalas
bbd5682c2b [FrameworkBundle] Define APP_ENV/APP_DEBUG from argv via Application::bootstrapEnv() 2018-11-10 04:07:36 +01:00
Nicolas Grekas
664a032940 bug #29129 [Dotenv] add loadEnv(), a smoother alternative to loadForEnv() (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Dotenv] add loadEnv(), a smoother alternative to loadForEnv()

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

This PR replaces the `loadForEnv()` method introduced in #28533 by a new `loadEnv()` method.
- It accepts only one mandatory argument: `$path`, which is the path to the `.env` file.
- The 2nd argument is optional and defines the name of the environment variable that defines the Symfony env. This plays better with the current practice of defining the env in `.env` (`loadForEnv()` requires knowing the env before being called, leading to a chicken-n-egg situation that `loadEnv()` avoids.)
- the possibility to load several files at once is removed. We don't have a use case for it and those who do can call `loadEnv()` in a loop anyway.

In addition to $path (.env), the following files are loaded, the latter taking precedence in this order:
.env < env.local < .env.$env < .env.$env.local

Note that `loadForEnv()` used to give higher precedence to .env.local vs .env.$env.
The new behavior is aligned with [the order used by create-react-app](https://github.com/facebook/create-react-app/blob/master/docusaurus/docs/adding-custom-environment-variables.md#what-other-env-files-can-be-used). It also allows overriding the env in .env.local, which should be convenient for DX.

Last but not least, the "test" env has this special behaviors:
- `.env.local` file is skipped for the "test" env (same as before and as in create-react-app)
- ~vars defined in .env files **override** real env vars (similar to what Rails' dotenv does: you don't want your tests to randomly fail because of some real env vars)~.

Commits
-------

0cf9acb70f [Dotenv] add loadEnv(), a smoother alternative to loadForEnv()
2018-11-09 09:14:35 +01:00
Gonzalo Vilaseca
aea5ca2788 Remove unused dependency 2018-11-08 23:19:15 +01:00
Nicolas Grekas
99856a9b08 Merge branch '4.1'
* 4.1:
  fix merge
2018-11-08 23:17:22 +01:00
Nicolas Grekas
67f3a35870 fix merge 2018-11-08 23:17:11 +01:00
Nicolas Grekas
626a61093e bug #29113 [Routing] fix dumping conditions that use the request (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Routing] fix dumping conditions that use the request

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

Commits
-------

09d5be8dac [Routing] fix dumping conditions that use the request
2018-11-08 23:02:36 +01:00
Nicolas Grekas
0aa4273b39 Merge branch '4.1'
* 4.1:
  Change button_widget class to btn-primary
  [Serializer] Allow null values when denormalizing with constructor missing data
  [Dotenv] dont use getenv() to read SYMFONY_DOTENV_VARS
  [HttpFoundation] Fixed PHP doc of ParameterBag::getBoolean
  [HttpFoundation] replace any preexisting Content-Type headers
2018-11-08 23:01:02 +01:00
Nicolas Grekas
f45252a155 Merge branch '3.4' into 4.1
* 3.4:
  Change button_widget class to btn-primary
  [Dotenv] dont use getenv() to read SYMFONY_DOTENV_VARS
  [HttpFoundation] Fixed PHP doc of ParameterBag::getBoolean
  [HttpFoundation] replace any preexisting Content-Type headers
2018-11-08 22:56:36 +01:00
neFAST
59003bf27a Change button_widget class to btn-primary 2018-11-08 22:50:22 +01:00
Nicolas Grekas
d74a4eb2fa bug #29131 [Dotenv] dont use getenv() to read SYMFONY_DOTENV_VARS (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Dotenv] dont use getenv() to read SYMFONY_DOTENV_VARS

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

Since using it is not thread safe, let's not rely on it (already done in other places.)

Commits
-------

21a909a189 [Dotenv] dont use getenv() to read SYMFONY_DOTENV_VARS
2018-11-08 22:48:38 +01:00
Nicolas Grekas
a141ab0105 Merge branch '2.8' into 3.4
* 2.8:
  [HttpFoundation] Fixed PHP doc of ParameterBag::getBoolean
  [HttpFoundation] replace any preexisting Content-Type headers
2018-11-08 22:47:40 +01:00
Nicolas Grekas
46e3745a03 bug #29057 [HttpFoundation] replace any preexisting Content-Type headers (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[HttpFoundation] replace any preexisting Content-Type headers

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

Commits
-------

de2ce58a4f [HttpFoundation] replace any preexisting Content-Type headers
2018-11-08 22:38:31 +01:00
Kévin Dunglas
ca5b64d0e0
bug #29076 [Serializer] Allow null values when denormalizing with constructor missing data (danut007ro)
This PR was squashed before being merged into the 4.1 branch (closes #29076).

Discussion
----------

[Serializer] Allow null values when denormalizing with constructor missing data

| Q             | A
| ------------- | ---
| Branch?       | 4.1
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| License       | MIT

When using `default_constructor_arguments` to denormalize objects, `null` values for a parameter weren't processed, so instantiating was failing.

Commits
-------

5fd0f3f453 [Serializer] Allow null values when denormalizing with constructor missing data
2018-11-08 22:02:02 +01:00
Daniel Gorgan
5fd0f3f453
[Serializer] Allow null values when denormalizing with constructor missing data 2018-11-08 22:01:52 +01:00
Nicolas Grekas
21a909a189 [Dotenv] dont use getenv() to read SYMFONY_DOTENV_VARS 2018-11-08 18:00:24 +01:00
Nicolas Grekas
0cf9acb70f [Dotenv] add loadEnv(), a smoother alternative to loadForEnv() 2018-11-08 12:51:43 +01:00
Yonel Ceruto
dfc7dcc00b Also fix a bug for --all option 2018-11-07 13:41:09 -05:00
Yonel Ceruto
3cbefd838f Cleaning translation commands 2018-11-07 11:54:53 -05:00
Nicolas Grekas
09d5be8dac [Routing] fix dumping conditions that use the request 2018-11-06 21:24:23 +01:00
Grégoire Pineau
1fa5a9a0bd [HttpFoundation] Fixed PHP doc of ParameterBag::getBoolean
Since the method should return a bool, then the default value should be
a bool too
2018-11-06 18:42:22 +01:00
Nicolas Grekas
8d277ce3e5 Merge branch '4.1'
* 4.1:
  [VarDumper] fix dump of closures created from callables
  [DI] fix dumping inlined services
  Add framework asset changes to upgrade 3.0 guide
  [Travis] Bump ext-mongodb to 1.5.2 on Travis
  [DI] dont track classes/interfaces used to compute autowiring error messages
  [DI] fix GraphvizDumper ignoring inline definitions
  bumped Symfony version to 4.1.8
  updated VERSION for 4.1.7
  updated CHANGELOG for 4.1.7
  bumped Symfony version to 3.4.19
  updated VERSION for 3.4.18
  updated CHANGELOG for 3.4.18
  bumped Symfony version to 2.8.48
  updated VERSION for 2.8.47
  update CONTRIBUTORS for 2.8.47
  updated CHANGELOG for 2.8.47
  Fix ini_get() for boolean values
2018-11-06 18:10:56 +01:00
Nicolas Grekas
097963fbaf Merge branch '3.4' into 4.1
* 3.4:
  [VarDumper] fix dump of closures created from callables
  [DI] fix dumping inlined services
  Add framework asset changes to upgrade 3.0 guide
  [Travis] Bump ext-mongodb to 1.5.2 on Travis
  [DI] dont track classes/interfaces used to compute autowiring error messages
  [DI] fix GraphvizDumper ignoring inline definitions
  bumped Symfony version to 3.4.19
  updated VERSION for 3.4.18
  updated CHANGELOG for 3.4.18
  bumped Symfony version to 2.8.48
  updated VERSION for 2.8.47
  update CONTRIBUTORS for 2.8.47
  updated CHANGELOG for 2.8.47
  Fix ini_get() for boolean values
2018-11-06 17:43:48 +01:00
Nicolas Grekas
6006448997 bug #29104 [DI] fix dumping inlined services (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] fix dumping inlined services

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

Same as #29103 but for 3.4.

This PR dump inline services using the call-stack to sort the code for instantiating them.
This makes easier to follow and matches the behavior one would expect (and has when using `ContainerBuiler` directly to create services.)

Commits
-------

a97606d58a [DI] fix dumping inlined services
2018-11-06 17:31:32 +01:00
Nicolas Grekas
41eaba5af5 bug #29054 [VarDumper] fix dump of closures created from callables (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] fix dump of closures created from callables

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

We are missing displaying full information about closures created using `ReflectionMethod::getClosure()` or `Closure::fromCallable()`.

This PR fixes it. For VarDumper but also other places where we have logic to display them.

Commits
-------

1c1818b876 [VarDumper] fix dump of closures created from callables
2018-11-06 17:26:47 +01:00
Yonel Ceruto
24c2213b3d Optimizations and simplifications OMG Blackfire! 2018-11-06 11:20:24 -05:00
Nicolas Grekas
1c1818b876 [VarDumper] fix dump of closures created from callables 2018-11-06 17:20:05 +01:00
Nicolas Grekas
a97606d58a [DI] fix dumping inlined services 2018-11-06 17:06:23 +01:00
Nicolas Grekas
69ae468351 bug #29102 [DI] fix GraphvizDumper ignoring inline definitions (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] fix GraphvizDumper ignoring inline definitions

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

Since SF3, inline definitions are first class citizen. I noticed that the GraphvizDumper does not inspect them. Here is the fix.

Commits
-------

ebe6265504 [DI] fix GraphvizDumper ignoring inline definitions
2018-11-06 17:03:43 +01:00
Nicolas Grekas
6cfd3de7bf minor #29041 Fix ini_get() for boolean values (deguif)
This PR was merged into the 3.4 branch.

Discussion
----------

Fix ini_get() for boolean values

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

This follows #29020 for branch 3.4

Commits
-------

65b34cb53c Fix ini_get() for boolean values
2018-11-06 17:00:34 +01:00
Nicolas Grekas
ef3be0b244 bug #29090 LoggingTranslator should implement Symfony\Contracts\Translation\TranslatorInterface (desmax)
This PR was merged into the 4.2-dev branch.

Discussion
----------

LoggingTranslator should implement Symfony\Contracts\Translation\TranslatorInterface

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

While autowiring Translator using `Symfony\Contracts\Translation\TranslatorInterface` symfony complains that wrong service was injected, because LoggingTranslator does not implement new interface.

Commits
-------

65f321f6c9 LoggingTranslator should implement Symfony\Contracts\Translation\TranslatorInterface
2018-11-06 16:56:30 +01:00
Nicolas Grekas
f9198c2aa7 bug #29095 [TwigBridge] require the needed symfony/contracts package (xabbuh)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[TwigBridge] require the needed symfony/contracts package

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

Commits
-------

4400776140 require the needed symfony/contracts package
2018-11-06 16:55:41 +01:00
Nicolas Grekas
2b7985d5e6 minor #29068 Remove unused variable (jschaedl)
This PR was merged into the 4.2-dev branch.

Discussion
----------

Remove unused variable

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

Commits
-------

246b3bf757 Remove unused variable
2018-11-06 16:44:47 +01:00
Nicolas Grekas
8cd0538a7f bug #29094 Add samesite attribute to session cookie after session migration (rpkamp)
This PR was merged into the 4.2-dev branch.

Discussion
----------

Add samesite attribute to session cookie after session migration

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

Commits
-------

df903005c1 Add samesite attribute to session cookie after session migration
2018-11-06 16:33:07 +01:00
Nicolas Grekas
23a0b2dcda minor #29100 [Messenger] Cleaning after new changes (yceruto)
This PR was squashed before being merged into the 4.2-dev branch (closes #29100).

Discussion
----------

[Messenger] Cleaning after new changes

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

See topic per commit

Commits
-------

3d31772949 [Messenger] Cleaning after new changes
2018-11-06 16:29:10 +01:00
Yonel Ceruto
3d31772949 [Messenger] Cleaning after new changes 2018-11-06 16:29:01 +01:00
Nicolas Grekas
09a0c23668 [DI] dont track classes/interfaces used to compute autowiring error messages 2018-11-06 14:23:35 +01:00
Nicolas Grekas
ebe6265504 [DI] fix GraphvizDumper ignoring inline definitions 2018-11-06 10:26:47 +01:00
Remon van de Kamp
f77970b950
Clarify deprecation of Email constraint without egulias/email-validator 2018-11-05 21:30:49 +01:00
Christian Flothmann
4400776140 require the needed symfony/contracts package 2018-11-05 11:24:20 +01:00
Remon van de Kamp
df903005c1
Add samesite attribute to session cookie after session migration 2018-11-05 10:25:33 +01:00
Maxim Pustynnikov
65f321f6c9 LoggingTranslator should implement Symfony\Contracts\Translation\TranslatorInterface 2018-11-05 14:48:19 +08:00
Fabien Potencier
4bc1cc7e43 bug #29080 [FrameworkBundle][4.2] fix deps (ro0NL)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[FrameworkBundle][4.2] fix deps

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #...   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

The bundle requires the `MetadataAwareNameConverter` added in 4.2

1fc577f2c7/src/Symfony/Bundle/FrameworkBundle/Resources/config/serializer.xml (L122-L124)

This PR fixes

```
Attempted to load interface "AdvancedNameConverterInterface" from namespace "Symfony\Component\Serializer\NameConverter".
Did you forget a "use" statement for another namespace?
```

Commits
-------

71fe97a7ab [FrameworkBundle][4.2] fix deps
2018-11-04 20:05:04 +01:00
Maxime Steinhausser
3136611d1e
[Messenger] The component is still experimental 2018-11-04 20:00:43 +01:00
Roland Franssen
71fe97a7ab
[FrameworkBundle][4.2] fix deps 2018-11-04 14:52:16 +01:00