Commit Graph

29426 Commits

Author SHA1 Message Date
Kévin Dunglas
190c736d3c
[PropertyInfo] Exclude static methods form properties guessing 2017-01-18 13:05:57 +01:00
Fabien Potencier
24f0fd0dda bug #21280 [Workflow] Fixed support of multiple transitions with the same name. (lyrixx)
This PR was merged into the 3.2 branch.

Discussion
----------

[Workflow] Fixed support of multiple transitions with the same name.

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

---

The previous behavior was underterministic because it took the first
transition during the `can` and the `apply` method. But the "first"
does not mean anything. Now the workflown apply all possible transitions
with the same name.

Commits
-------

edd5431e6e [Workflow] Fixed support of multiple transition with the same name.
2017-01-17 21:35:58 -08:00
Fabien Potencier
30a01437d4 bug #21271 [Workflow] Added new validator to make sure each place has unique translation names (Nyholm)
This PR was submitted for the master branch but it was merged into the 3.2 branch instead (closes #21271).

Discussion
----------

[Workflow] Added new validator to make sure each place has unique translation names

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

A definition where a place that has transitions with the same name is an invalid definition.

```yaml
invalid1:
  places: ['a', 'b', 'c']
  transitions:
    t1:
      from: a
      to: b
    t1:
      from: a
      to: c

valid1:
  places: ['a', 'b', 'c']
  transitions:
    t1:
      from: a
      to: b
    t2:
      from: a
      to: c

valid2:
  places: ['a', 'b', 'c']
  transitions:
    t1:
      from: a
      to: b
    t1:
      from: b
      to: c

valid3:
  places: ['a', 'b', 'c', 'd']
  transitions:
    t1:
      from: ['a', 'b']
      to: d
    t2:
      from: ['a', 'b']
      to: c
```

FYI @lyrixx

Commits
-------

eece8adfdd [Workflow] Added new validator to make sure each place has unique translation names
2017-01-17 21:32:36 -08:00
Tobias Nyholm
eece8adfdd [Workflow] Added new validator to make sure each place has unique translation names 2017-01-17 21:32:36 -08:00
Fabien Potencier
9d09059cb5 bug #21323 [Cache] [PdoAdapter] Fix MySQL 1170 error (blob as primary key) (akeeman)
This PR was submitted for the master branch but it was merged into the 3.2 branch instead (closes #21323).

Discussion
----------

[Cache] [PdoAdapter] Fix MySQL 1170 error (blob as primary key)

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

When using a Doctrine\DBAL\Connection to initialize the PdoAdapter, PdoAdapter::createTable tries to create a table using a blob field as primary key. [This is not an option for MySQL](https://techjourney.net/mysql-error-1170-42000-blobtext-column-used-in-key-specification-without-a-key-length/), resulting in an exeption: `Syntax error or access violation: 1170 BLOB/TEXT column 'item_id' used in key specification without a key length`. This commit supplies a way to act like the non-Connection way creates the table does.

Commits
-------

08c6a650b9 [Cache] [PdoAdapter] Fix MySQL 1170 error (blob as primary key)
2017-01-17 15:05:43 -08:00
Arjan Keeman
08c6a650b9 [Cache] [PdoAdapter] Fix MySQL 1170 error (blob as primary key) 2017-01-17 15:05:43 -08:00
Fabien Potencier
1dfb1080b2 minor #21324 [FrameworkBundle] Fix third level headers for MarkdownDescriptor (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle] Fix third level headers for MarkdownDescriptor

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

`~` is not valid as an underlining char when using markdown on the contrary of reStructuredText.
See the rendering of [builder_1_public.md (before)](https://github.com/symfony/symfony/blob/master/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.md)  vs [builder_1_public.md (after)](https://github.com/ogizanagi/symfony/blob/fix/2.7/fwb/md_third_lvl_headers/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.md) for instance.

This PR fixes it by using a third level header.

~~**EDIT:** There is no BC break. Wrong PR template information.~~

Commits
-------

ce29ab1d92 [FrameworkBundle] Fix third level headers for MarkdownDescriptor
2017-01-17 12:04:54 -08:00
Maxime Steinhausser
ce29ab1d92 [FrameworkBundle] Fix third level headers for MarkdownDescriptor 2017-01-17 19:39:37 +01:00
Fabien Potencier
84d0da2502 bug #21318 Don't add csp-headers if none are required (arjenm)
This PR was merged into the 3.2 branch.

Discussion
----------

Don't add csp-headers if none are required

| Q             | A
| ------------- | ---
| Branch?       | 3.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | This PR is also the ticket
| License       | MIT

In 3.2 a tool to adjust Content Security Policy headers in combination with the WebProfiler was added. We encountered a bug in its behavior.
We had CSP-headers that did not have a script-src/style-src nor a default-src (it was something like `form-action: https:`). In that scenario, the ContentSecurityPolicyHandler would add `script-src: 'unsafe-inline' 'nonce-....'`, but that would actually change the "everything is allowed scenario" into "only inline and nonce-... is allowed". The result was _only_ the javascript of WebProfiler was allowed, rather than everything.

This PR fixes the scenario where no default-src nor a script-src/style-src is provided. It simply continue's rather than treats it as an empty list of rules that need additional rules.

~A bug I did find, but not fix, is the fact that that `'unsafe-inline'` is ignored in at least Firefox and Chrome due to the fact there is also a nonce-element in the rule.~

Commits
-------

6fecc94103 Don't add csp-headers if none are required
2017-01-17 07:09:27 -08:00
Fabien Potencier
0dd6a906ea bug #21291 [Ldap] Ldap username case fix (quentinus95)
This PR was submitted for the master branch but it was merged into the 3.1 branch instead (closes #21291).

Discussion
----------

[Ldap] Ldap username case fix

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

Commits
-------

c91689ba2d [Ldap] Using Ldap stored username instead of form submitted one
6641b79d58 [Ldap] load users with the good username case
2017-01-17 07:06:58 -08:00
Quentin de Longraye
c91689ba2d [Ldap] Using Ldap stored username instead of form submitted one 2017-01-17 07:06:58 -08:00
Quentin de Longraye
6641b79d58 [Ldap] load users with the good username case 2017-01-17 07:06:58 -08:00
Jakub Zalas
d3b5d8efdf
Fix tests with ICU 57.1 2017-01-17 14:48:15 +00:00
Jakub Zalas
677d820874
Fix the condition checking the minimum ICU version 2017-01-17 13:59:23 +00:00
Arjen van der Meijden
6fecc94103 Don't add csp-headers if none are required 2017-01-17 09:49:30 +01:00
Nicolas Grekas
87dcda896c bug #21311 [Debug] Fix fatal error when changing ErrorHandler loggers if an exception is buffered (skalpa)
This PR was merged into the 3.2 branch.

Discussion
----------

[Debug] Fix fatal error when changing ErrorHandler loggers if an exception is buffered

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

Prevents a fatal error when setting a new logger if the bootstrapping logger buffered an exception that does not extend `ErrorException`.

@nicolas-grekas The faulty behaviour was added by 8f245493f4, so this PR is against 3.2 and not 2.8.

Commits
-------

a6527f8 [Debug] Fix fatal error when changing ErrorHandler loggers if an exception is buffered
2017-01-16 18:59:03 +01:00
skalpa
a6527f895b [Debug] Fix fatal error when changing ErrorHandler loggers if an exception is buffered 2017-01-16 17:23:42 +00:00
Fabien Potencier
d228d347b4 bug #21288 [Doctrine Bridge] fix UniqueEntityValidator for composite object primary keys (dmaicher, HeahDude)
This PR was merged into the 3.1 branch.

Discussion
----------

[Doctrine Bridge] fix UniqueEntityValidator for composite object primary keys

| Q             | A
| ------------- | ---
| Branch?       | master / 3.1
| Bug fix?      | yes
| New feature?  |no
| BC breaks?    | no
| Deprecations? |no
| Tests pass?   | yes (fail on php 7.1 unrelated?)
| Fixed tickets | https://github.com/symfony/symfony/issues/21274
| License       | MIT
| Doc PR        | -

This PR fixes an issue with the UniqueEntityValidator in case the entity being validated uses a composite primary key via relations to other entities whose classes do not have a `__toString` method.

Commits
-------

b3ced8608b [DoctrineBridge] Fixed invalid unique value as composite key
5aadce3989 [Doctrine Bridge] fix UniqueEntityValidator for composite object primary keys
2017-01-16 08:52:47 -08:00
Robin Chalas
60a0c4bf91 [Serializer] Add missing conflict for property-info<3.1 2017-01-16 16:44:34 +01:00
Christophe Coevoet
7a90fcbe22 minor #21303 simple-phpunit requires the zip extension (dbu)
This PR was merged into the 3.2 branch.

Discussion
----------

simple-phpunit requires the zip extension

without the zip extension enabled, i get `PHP Fatal error:  Uncaught Error: Class 'ZipArchive' not found in .../vendor/bin/simple-phpunit:46`

| Q             | A
| ------------- | ---
| Branch?       | 3.2 (first version containing the script)
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #21060
| License       | MIT
| Doc PR        | -

Commits
-------

6628e76e62 simple-phpunit requires the zip extension
2017-01-16 16:39:32 +01:00
David Buchmann
6628e76e62 simple-phpunit requires the zip extension 2017-01-16 15:40:47 +01:00
HeahDude
b3ced8608b [DoctrineBridge] Fixed invalid unique value as composite key
Fixed UniqueEntityValidator tests
2017-01-16 15:00:38 +01:00
Nicolas Grekas
4d247b0f89 minor #21277 [DX][Cache] Set right cacheItem type hint on AdapterInterface getters (andrerom)
This PR was merged into the 3.1 branch.

Discussion
----------

[DX][Cache] Set right cacheItem type hint on AdapterInterface getters

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

Fixes missing cache item type hint on pool getters so methods on Symfony CacheItem
is correctly suggested when using IDE's or api documentation.

As proposed here: https://github.com/symfony/symfony/issues/19728#issuecomment-269615921

_Note: Specifically sets array of CacheItems as return type of getItems as phpdoc and IDEs supports
this by now, and since this is specifically what is being returned. If Sami does not still support this we can adjust to what was originally suggested._

Commits
-------

5f7baa5 [DX][Cache] Set right type hint for cacheItem on AdapterInterface getters
2017-01-14 18:16:00 +01:00
Nicolas Grekas
b860ec33a1 bug #21285 [TwigBundle] do not lose already set method calls (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[TwigBundle] do not lose already set method calls

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

Commits
-------

cb1a4b7 [TwigBundle] do not lose already set method calls
2017-01-14 18:02:28 +01:00
Grégoire Pineau
edd5431e6e [Workflow] Fixed support of multiple transition with the same name.
The previous behavior was underterministic because it took the first
transition during the `can` and the `apply` method. But the "first"
does not mean anything. Now the workflow apply all possible
transitions with the same name.
2017-01-14 17:43:11 +01:00
David Maicher
5aadce3989 [Doctrine Bridge] fix UniqueEntityValidator for composite object primary keys 2017-01-14 12:59:07 +01:00
Christian Flothmann
cb1a4b778f [TwigBundle] do not lose already set method calls 2017-01-14 10:53:53 +01:00
Christian Flothmann
c18c93b51c bug #21279 #20411 fix Yaml parsing for very long quoted strings (RichardBradley)
This PR was merged into the 2.7 branch.

Discussion
----------

#20411 fix Yaml parsing for very long quoted strings

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

This fixes #20411, a YAML string with too many backslash escapes can trigger a `PREG_BACKTRACK_LIMIT_ERROR` error in the Yaml parser.

There should be no behavioural change other than the bug fix

I have included a test which fails before this fix and passes after this fix.

Commits
-------

51bca66 #20411 fix Yaml parsing for very long quoted strings
2017-01-14 08:26:19 +01:00
Richard Bradley
51bca66dfb #20411 fix Yaml parsing for very long quoted strings 2017-01-13 16:26:16 +00:00
André R
5f7baa5a42 [DX][Cache] Set right type hint for cacheItem on AdapterInterface getters
| Q             | A
| ------------- | ---
| Branch?       | 3.1
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Fixes missing type hint for cache item on pool getters so methods on Symfony CacheItem
is correclty suggested when using IDE's or api documentation.

As proposed here: https://github.com/symfony/symfony/issues/19728#issuecomment-269615921

Note: Specifically sets array of items as return type of getItems as phpdoc and IDEs supports
this by now, and since this is specifically what is being returned.
2017-01-13 15:33:46 +01:00
Nicolas Grekas
39d975b360 bug #21276 [Cache] Fix missing use statement in FilesystemAdapter (Lctrs)
This PR was merged into the 3.2 branch.

Discussion
----------

[Cache] Fix missing use statement in FilesystemAdapter

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

Commits
-------

cd08f7e Add missing use statement in FilesystemAdapter
2017-01-13 14:40:18 +01:00
Jérôme Parmentier
cd08f7e20e Add missing use statement in FilesystemAdapter 2017-01-13 14:35:13 +01:00
Nicolas Grekas
e7fcd28d78 Merge branch '3.1' into 3.2
* 3.1:
  [Cache] Using strpbrk() instead of strcspn() is faster
  bumped Symfony version to 3.1.10
  updated VERSION for 3.1.9
  updated CHANGELOG for 3.1.9
2017-01-13 11:11:31 +01:00
Nicolas Grekas
cbb5332b56 bug #21269 [Cache] Using strpbrk() instead of strcspn() is faster (nicolas-grekas)
This PR was merged into the 3.1 branch.

Discussion
----------

[Cache] Using strpbrk() instead of strcspn() is faster

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

Keys validation using strpbrk is faster.
Eg on some micro bench:
- `isset($a[strcspn($a, '{}()/\@:')])`: 278ms
- `false !== strpbrk($a, '{}()/\@:')`: 183ms

Commits
-------

d68c451 [Cache] Using strpbrk() instead of strcspn() is faster
2017-01-13 11:08:47 +01:00
Nicolas Grekas
d68c451711 [Cache] Using strpbrk() instead of strcspn() is faster 2017-01-13 10:53:08 +01:00
Nicolas Grekas
aebb65923b minor #21256 [FrameworkBundle] Skip test if xdebug.file_link_format is defined. (lyrixx)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle] Skip test if xdebug.file_link_format is defined.

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

---

The test suite does not pass locally because I use a custom
file_link_format. I do it because it works everywhere.

Then, Symfony tries to read this value before the default one.
We could use ini_set before the test but unfortunatelly there are no way
to define the "cfg_var". For recall, get_cfg_var allows to return the
configuration value even if the extension is not loaded. And again it's
my case: I don't enable xdebug to have better performance.

Commits
-------

7f15bc3 [FrameworkBundle] Skip test if xdebug.file_link_format is defined.
2017-01-13 09:21:07 +01:00
Nicolas Grekas
6430d539ba minor #21264 CS: apply is_null (keradus)
This PR was merged into the 2.7 branch.

Discussion
----------

CS: apply is_null

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | not related
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Commits
-------

47feb18 CS: apply is_null
2017-01-13 09:20:14 +01:00
Nicolas Grekas
2cff2f68fa minor #21262 DX: remove invalid inheritdoc (keradus)
This PR was merged into the 2.7 branch.

Discussion
----------

DX: remove invalid inheritdoc

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | not related
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

those classes do not extend anything, inherit docs on them are wrong

Commits
-------

9e36436 DX: remove invalid inheritdoc
2017-01-13 09:19:35 +01:00
Dariusz Ruminski
47feb18d31 CS: apply is_null 2017-01-12 23:27:26 +01:00
Dariusz Ruminski
9e36436703 DX: remove invalid inheritdoc 2017-01-12 23:09:43 +01:00
Fabien Potencier
364ad971c2 bumped Symfony version to 3.2.3 2017-01-12 13:51:00 -08:00
Fabien Potencier
358c59fd21 Merge pull request #21261 from fabpot/release-3.2.2
released v3.2.2
2017-01-12 13:36:55 -08:00
Fabien Potencier
2c795ba970 updated VERSION for 3.2.2 2017-01-12 13:36:33 -08:00
Fabien Potencier
a95d15b05a updated CHANGELOG for 3.2.2 2017-01-12 13:36:24 -08:00
Fabien Potencier
d63160957d bumped Symfony version to 3.1.10 2017-01-12 13:34:53 -08:00
Fabien Potencier
8d80e330ac Merge pull request #21260 from fabpot/release-3.1.9
released v3.1.9
2017-01-12 12:44:00 -08:00
Fabien Potencier
bb172ebfc5 updated VERSION for 3.1.9 2017-01-12 12:43:39 -08:00
Fabien Potencier
7e12e0ad30 updated CHANGELOG for 3.1.9 2017-01-12 12:43:31 -08:00
Fabien Potencier
e18281eef6 bumped Symfony version to 2.8.17 2017-01-12 12:42:17 -08:00
Fabien Potencier
9fef72a3ab Merge pull request #21259 from fabpot/release-2.8.16
released v2.8.16
2017-01-12 12:27:46 -08:00