Commit Graph

54765 Commits

Author SHA1 Message Date
Nicolas Grekas
5ad6f6934b Merge branch '5.2' into 5.x
* 5.2:
  [SecurityBundle] add missing type-hint
  [SecurityBundle] Remove invalid unused service
  [Security] [DataCollector] Remove allows anonymous information in datacollector
  [Workflow] Remove dead call to `Defnition#addTag()`
  add chinese translation
2021-05-19 12:09:36 +02:00
Nicolas Grekas
d1d83c29b9 [SecurityBundle] add missing type-hint 2021-05-19 12:09:09 +02:00
Nicolas Grekas
a660c1c68f Merge branch '4.4' into 5.2
* 4.4:
  add chinese translation
2021-05-19 11:59:29 +02:00
Fabien Potencier
69a0b29fab feature #41175 [Security] [RememberMe] Add support for parallel requests doing remember-me re-authentication (Seldaek)
This PR was squashed before being merged into the 5.3-dev branch.

Discussion
----------

[Security] [RememberMe] Add support for parallel requests doing remember-me re-authentication

| Q             | A
| ------------- | ---
| Branch?       | 5.x
| Bug fix?      | yes
| New feature?  | yes ish <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #40971, Fix #28314, Fix #18384
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

This is a possible implementation to gather feedback mostly..

`TokenVerifierInterface` naming is kinda bad perhaps.. But my goal would be to merge it in TokenProviderInterface for 6.0 so it's not so important. Not sure if/how to best indicate this in terms of deprecation notices.

Anyway wondering if this would be an acceptable implementation (ideally in an application I would probably override the new methods from DoctrineTokenProvider to something like this which is less of a hack and does expiration properly:

```php
    public function verifyToken(PersistentTokenInterface $token, string $tokenValue)
    {
        if (hash_equals($token->getTokenValue(), $tokenValue)) {
            return true;
        }

        if (!$this->cache->hasItem('rememberme-' . $token->getSeries())) {
            return false;
        }

        /** `@var` CacheItem $item */
        $item = $this->cache->getItem('rememberme-' . $token->getSeries());
        $oldToken = $item->get();

        return hash_equals($oldToken, $tokenValue);
    }

    public function updateExistingToken(PersistentTokenInterface $token, string $tokenValue, \DateTimeInterface $lastUsed): void
    {
        $this->updateToken($token->getSeries(), $tokenValue, $lastUsed);

        /** `@var` CacheItem $item */
        $item = $this->cache->getItem('rememberme-'.$token->getSeries());
        $item->set($token->getTokenValue());
        $item->expiresAfter(60);
        $this->cache->save($item);
    }
```

If you think it'd be fine to require optionally the cache inside DoctrineTokenProvider to enable this feature instead of the hackish way I did it, that'd be ok for me too.

The current `DoctrineTokenProvider` implementation of `TokenVerifierInterface` relies on the lucky fact that series are generated using `base64_encode(random_bytes(64))` which always ends in the `==` padding of base64, so that allowed me to store an alternative token value temporarily by replacing `==` with `_`.

Alternative implementation options:

1. Inject cache in `DoctrineTokenProvider` and do a proper implementation (as shown above) that way
2. Do not implement at all in `DoctrineTokenProvider` and let users who care implement this themselves.
3. Implement as a new `token_verifier` option that could be configured on the `firewall->remember_me` key so you can pass an implementation if needed, and possibly ship a default one using cache that could be autoconfigured
4. Add events that allow modifying the token to be verified, and allow receiving the newly updated token incl series, instead of TokenVerifierInterface, but then we need to inject a dispatcher in RememberMeAuthenticator.

`@chalasr` `@wouterj` sorry for the long description but in the hope of getting this included in 5.3.0, if you can provide guidance I will happily work on this further tomorrow to try and wrap it up ASAP.

Commits
-------

1992337d87 [Security] [RememberMe] Add support for parallel requests doing remember-me re-authentication
2021-05-19 09:46:31 +02:00
Jordi Boggiano
1992337d87 [Security] [RememberMe] Add support for parallel requests doing remember-me re-authentication 2021-05-19 09:46:25 +02:00
Fabien Potencier
8ff65422b2 bug #41269 [SecurityBundle] Remove invalid unused service (chalasr)
This PR was merged into the 5.2 branch.

Discussion
----------

[SecurityBundle] Remove invalid unused service

| Q             | A
| ------------- | ---
| Branch?       | 5.2
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Leftover of a revisited experimental feature (the class defined on the service does not exist).

Commits
-------

1e6588a848 [SecurityBundle] Remove invalid unused service
2021-05-19 08:38:01 +02:00
Fabien Potencier
fef06f21a1 feature #41247 [Security] Deprecate the old authentication mechanisms (chalasr)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[Security] Deprecate the old authentication mechanisms

| Q             | A
| ------------- | ---
| Branch?       | 5.3
| Bug fix?      | no
| New feature?  | no
| Deprecations? | yes/
| Tickets       |  #39308
| License       | MIT
| Doc PR        | todo

Now that the authenticator system proven working well and is considered stable, we can deprecate the old authentication listeners as well as the Guard component (+ integrations).

Commits
-------

0bb3964a2d [Security] Deprecate the old authentication mechanisms
2021-05-19 08:36:18 +02:00
Fabien Potencier
3ae7e0a60d minor #41246 [Security] Missing translations for Chinese (zh_TW & zh_CN) (fd6130)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security] Missing translations for Chinese (zh_TW & zh_CN)

| Q             | A
| ------------- | ---
| Branch?       | 4.4 <!-- see below -->
| Bug fix?      | no
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #41037 , Fix #41038 <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License       | MIT
| Doc PR        | no <!-- required for new features -->
<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.

Additionally (see https://symfony.com/releases):
 - Always add tests and ensure they pass.
 - Never break backward compatibility (see https://symfony.com/bc).
 - 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 branch 5.x.
 - Changelog entry should follow https://symfony.com/doc/current/contributing/code/conventions.html#writing-a-changelog-entry
-->

Added missing translation for Chinese (zh_TW & zh_CN).

Commits
-------

26d156f17f add chinese translation
2021-05-19 08:29:58 +02:00
Robin Chalas
0bb3964a2d
[Security] Deprecate the old authentication mechanisms 2021-05-19 01:56:41 +02:00
Robin Chalas
1e6588a848
[SecurityBundle] Remove invalid unused service 2021-05-19 01:02:18 +02:00
Wouter de Jong
e83c9927af bug #41139 [Security] [DataCollector] Remove allows anonymous information in datacollector (ismail1432)
This PR was submitted for the 5.x branch but it was squashed and merged into the 5.2 branch instead.

Discussion
----------

[Security] [DataCollector] Remove allows anonymous information in datacollector

| Q             | A
| ------------- | ---
| Branch?       | 5.2
| Bug fix?      | no
| New feature?  | yes/no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | yes/no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #40907
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

As mentioned In https://github.com/symfony/symfony/issues/40907 there is no longer anonymous users no longer in the new authentication system. This PR remove this information **if the new system is used** as it always a red cross

With  `enable_authenticator_manager` at `false`
![image](https://user-images.githubusercontent.com/13260307/117574692-34c8d900-b0d6-11eb-9bef-a6c9abdfad2f.png)

With  `enable_authenticator_manager` at `true`
![image](https://user-images.githubusercontent.com/13260307/117574619-f3382e00-b0d5-11eb-945a-3613425ccdbe.png)

Commits
-------

92cd096763 [Security] [DataCollector] Remove allows anonymous information in datacollector
2021-05-18 15:25:32 +02:00
Smaine Milianni
92cd096763 [Security] [DataCollector] Remove allows anonymous information in datacollector 2021-05-18 15:25:25 +02:00
Nicolas Grekas
43821815ea bug #41254 [Security\Http] Fix handling secure: auto using the new RememberMeAuthenticator (chalasr)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[Security\Http] Fix handling `secure: auto` using the new RememberMeAuthenticator

| Q             | A
| ------------- | ---
| Branch?       | 5.x
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

The created cookie was always secure when using `auto` because of some missing config normalization that should have been copied from the legacy rememberme implementation.

Commits
-------

3fdc15474c [Security\Http] Fix handling `secure: auto` using the new RememberMeAuthenticator
2021-05-18 09:20:50 +02:00
Robin Chalas
2e047c9cfa
minor #41258 [Workflow] Remove useless call to Definition#addTag() (chalasr)
This PR was merged into the 5.2 branch.

Discussion
----------

[Workflow] Remove useless call to `Definition#addTag()`

| Q             | A
| ------------- | ---
| Branch?       | 5.2
| Bug fix?      |  no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Commits
-------

324dc750de [Workflow] Remove dead call to `Defnition#addTag()`
2021-05-18 00:56:52 +02:00
Alexander M. Turek
eb7068796d minor #41259 [FrameworkBundle] Fix missing unused known tag (chalasr)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[FrameworkBundle] Fix missing unused known tag

| Q             | A
| ------------- | ---
| Branch?       | 5.x
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Commits
-------

b8f20f646c [FrameworkBundle] Fix missing unused known tag
2021-05-18 00:02:56 +02:00
Robin Chalas
b8f20f646c
[FrameworkBundle] Fix missing unused known tag 2021-05-17 23:27:31 +02:00
Robin Chalas
324dc750de
[Workflow] Remove dead call to Defnition#addTag() 2021-05-17 23:23:45 +02:00
Alexander M. Turek
58ca36fb4b Merge branch '5.2' into 5.x
* 5.2:
  Fix merge
2021-05-17 22:32:20 +02:00
Alexander M. Turek
65e1226fa4 Fix merge 2021-05-17 22:21:27 +02:00
Alexander M. Turek
497f92da09 Merge branch '5.2' into 5.x
* 5.2:
  Fix deprecations from Doctrine Annotations+Cache
2021-05-17 21:55:30 +02:00
Alexander M. Turek
0c8234b50c Merge branch '4.4' into 5.2
* 4.4:
  Fix deprecations from Doctrine Annotations+Cache
2021-05-17 21:35:40 +02:00
Alexander M. Turek
373528fce2 bug #41230 [FrameworkBundle][Validator] Fix deprecations from Doctrine Annotations+Cache (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

[FrameworkBundle][Validator] Fix deprecations from Doctrine Annotations+Cache

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

* Doctrine Annotations' `CachedReader` is deprecated. Let's not use it if we don't have to.
* Doctrine Cache 2 has been released. Since we're mostly only using the interfaces, we can indicate compatibility.

Paslm is going to complain about missing classes, which is kind-of expected here. 🙂

Commits
-------

ec51c21a9d Fix deprecations from Doctrine Annotations+Cache
2021-05-17 21:13:41 +02:00
Robin Chalas
3fdc15474c
[Security\Http] Fix handling secure: auto using the new RememberMeAuthenticator 2021-05-17 17:54:17 +02:00
Alexander M. Turek
ec51c21a9d Fix deprecations from Doctrine Annotations+Cache 2021-05-16 23:41:25 +02:00
fd6130
26d156f17f add chinese translation 2021-05-16 22:49:50 +08:00
Fabien Potencier
bbb0a694fb Merge branch '5.2' into 5.x
* 5.2:
  [Finder] Fix gitignore regex build with "**"
  Fixed deprecation warnings about passing null as parameter
  [Security] Keep Bulgarian wording consistent across all texts.
  Migrate configuration file for PHP CS Fixer 2.19/3.0
  [Form] Replace broken ServerParams mock
  [Mailer] Fix SES API call with UTF-8 Addresses
2021-05-16 15:08:56 +02:00
Fabien Potencier
e7692c50bd Merge branch '4.4' into 5.2
* 4.4:
  [Finder] Fix gitignore regex build with "**"
  Fixed deprecation warnings about passing null as parameter
  [Security] Keep Bulgarian wording consistent across all texts.
  Migrate configuration file for PHP CS Fixer 2.19/3.0
  [Form] Replace broken ServerParams mock
2021-05-16 15:07:46 +02:00
Fabien Potencier
907f1033ad minor #41244 [Security] Keep Bulgarian wording consistent across all texts (Warxcell)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security] Keep Bulgarian wording consistent across all texts

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Keep wording consistent across all texts in translations:

Trans unit id=17:
Too many === Твърде много
Trans unit id=19:
Too many === Прекалено много

I put word "Твърде", because it was used before.

Commits
-------

4f1b4f993e [Security] Keep Bulgarian wording consistent across all texts.
2021-05-16 15:01:26 +02:00
Fabien Potencier
518badd980 minor #41243 Migrate configuration file for PHP CS Fixer 2.19/3.0 (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

Migrate configuration file for PHP CS Fixer 2.19/3.0

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

This PR suggests to rename the PHP CS Fixer configuration file as expected by version 2.19 and 3.0. I don't know what version Fabbot is currently running, but as soon as it is updated to 2.19, we can merge this PR.

Commits
-------

1462a3215e Migrate configuration file for PHP CS Fixer 2.19/3.0
2021-05-16 14:39:59 +02:00
Fabien Potencier
21b8cb7d4f bug #41206 [Mailer] Fix SES API call with UTF-8 Addresses (jderusse)
This PR was merged into the 5.2 branch.

Discussion
----------

[Mailer] Fix SES API call with UTF-8 Addresses

| Q             | A
| ------------- | ---
| Branch?       | 5.2
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

The address (including email and name) used in Amazon SES API (`ses+api://`) must not contain unicode chars  (https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_Destination.html)

This PR encodes name with base64 as suggested by issues in Official AWS SDKs (https://github.com/aws/aws-sdk-php/issues/1196, https://github.com/aws/aws-sdk-js/issues/1585)

note: I did not use the Base64Encoder, because the address could not be chunked (API Call failed) and it looks like addresses wider than 64 chars are allowed.

Commits
-------

05a9497230 [Mailer] Fix SES API call with UTF-8 Addresses
2021-05-16 14:29:02 +02:00
Fabien Potencier
eb3a3c1c0a bug #41240 Fixed deprecation warnings about passing null as parameter (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

Fixed deprecation warnings about passing null as parameter

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

Various built-in PHP functions will trigger a deprecation warning if `null` is passed as parameter. This PR attempts to fix all warnings that our test suite currently picks up.

Commits
-------

7d9bdf5734 Fixed deprecation warnings about passing null as parameter
2021-05-16 14:27:45 +02:00
Fabien Potencier
03519d40b8 bug #41241 [Finder] Fix gitignore regex build with "**" (mvorisek)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Finder] Fix gitignore regex build with "**"

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #41223
| License       | MIT
| Doc PR        | no

covered with tests, also faster, we do not have to explode the rule at all :)

ping `@lindelius` `@OskarStark`

Commits
-------

ce22d5ddd7 [Finder] Fix gitignore regex build with "**"
2021-05-16 14:25:11 +02:00
Michael Voříšek
ce22d5ddd7 [Finder] Fix gitignore regex build with "**" 2021-05-16 14:25:02 +02:00
Alexander M. Turek
7d9bdf5734 Fixed deprecation warnings about passing null as parameter 2021-05-16 11:52:47 +02:00
Nicolas Grekas
d3ebc5fd53 minor #41238 [Form] Replace broken ServerParams mock (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

[Form] Replace broken ServerParams mock

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

`AbstractRequestHandlerTest` creates a mocked version of the `ServerParams` class. Since `getNormalizedIniPostMaxSize()` does not have a return type declaration, PHPUnit will by default create an implementation that always returns `null`. However, the real implementation of that method guarantees to always return a string.

This becomes problematic in PHP 8.1 because the return value is sometimes passed as-is into functions like `strtolower()` which trigger a deprecation warning on `null` now.

This PR proposes to replace the mock with a dummy implementation that returns an empty string by default.

Commits
-------

77c2d69f19 [Form] Replace broken ServerParams mock
2021-05-16 10:57:09 +02:00
Warxcell
4f1b4f993e [Security] Keep Bulgarian wording consistent across all texts. 2021-05-16 11:22:39 +03:00
Alexander M. Turek
1462a3215e Migrate configuration file for PHP CS Fixer 2.19/3.0 2021-05-15 21:29:53 +02:00
Alexander M. Turek
77c2d69f19 [Form] Replace broken ServerParams mock 2021-05-15 16:44:53 +02:00
Alexander M. Turek
8ed996426d Merge branch '5.2' into 5.x
* 5.2:
  Update .github/workflows/tests.yml
  Don't call class_exists() on null
  Added and improved Bulgarian translations
  PHP 8.1 must not cause the build to fail (yet)
  Add _run_tests bash function
  Add a GitHub Action for tests against PHP 8.1
  [HttpClient] fix adding query string to relative URLs with scoped clients
  [Security] Added Ukrainian translations
2021-05-15 15:12:37 +02:00
Alexander M. Turek
ec761d6b94 Merge branch '4.4' into 5.2
* 4.4:
  Update .github/workflows/tests.yml
  Don't call class_exists() on null
  Added and improved Bulgarian translations
  PHP 8.1 must not cause the build to fail (yet)
  Add _run_tests bash function
  Add a GitHub Action for tests against PHP 8.1
  [HttpClient] fix adding query string to relative URLs with scoped clients
  [Security] Added Ukrainian translations
2021-05-15 14:42:34 +02:00
Nyholm
dffdc71adb
minor #41080 Add a GitHub Action for tests against PHP 8.1 (derrabus, Nyholm)
This PR was merged into the 4.4 branch.

Discussion
----------

Add a GitHub Action for tests against PHP 8.1

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

I'd like to monitor our compatibility with the upcoming PHP 8.1 release. Because I failed miserably at convincing Travis to run our tests with PHP 8.1 (see #40532), I tried to do the same with GitHub Actions.

Commits
-------

6a328ae01e Update .github/workflows/tests.yml
6f1c4b8c58 PHP 8.1 must not cause the build to fail (yet)
b0b45105d7 Add _run_tests bash function
de4f0170e2 Add a GitHub Action for tests against PHP 8.1
2021-05-15 10:53:02 +02:00
Jérémy Derussé
05a9497230
[Mailer] Fix SES API call with UTF-8 Addresses 2021-05-15 10:47:28 +02:00
Tobias Nyholm
6a328ae01e
Update .github/workflows/tests.yml 2021-05-15 10:42:08 +02:00
Nicolas Grekas
3b0c6f9ae7 bug #41224 [HttpClient] fix adding query string to relative URLs with scoped clients (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[HttpClient] fix adding query string to relative URLs with scoped clients

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #41220
| License       | MIT
| Doc PR        | -

Commits
-------

5ccba2c3e5 [HttpClient] fix adding query string to relative URLs with scoped clients
2021-05-15 10:05:42 +02:00
Nicolas Grekas
9e12a383ee bug #41233 [DependencyInjection][ProxyManagerBridge] Don't call class_exists() on null (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

[DependencyInjection][ProxyManagerBridge] Don't call class_exists() on null

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

PHP 8.1 complains if we pass `null` to `class_exists()` or `interface_exists()`:

> class_exists(): Passing null to parameter `#1` ($class) of type string is deprecated

Commits
-------

88520e53b2 Don't call class_exists() on null
2021-05-15 10:05:00 +02:00
Nyholm
a7d3533619
minor #41192 [Security] Added Ukrainian translations (andrii-bodnar)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security] Added Ukrainian translations

| Q             | A
| ------------- | ---
| Branch?       | 4.4 <!-- see below -->
| Bug fix?      | no
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #41088 <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License       | MIT
| Doc PR        | <!-- required for new features -->

Added some missing Ukrainian translations.

Commits
-------

8f34572a65 [Security] Added Ukrainian translations
2021-05-15 08:45:00 +02:00
Nyholm
4289ab9f77
minor #41231 [Security] Added and improved Bulgarian translations (I-Valchev)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security] Added and improved Bulgarian translations

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? |no
| Tickets       | Fix #41035
| License       | MIT
| Doc PR        | n/a

Added missing translations for id 19 and 20.
Replaced the word "incorrect" with "unsuccessful"/"failed" for id 17.
Replaced the phonetic use of "cookie" with the word for "cookie" in Bulgarian for id 5 and 10.
Fixed grammatical error, now use the definite article ("the") instead of the indefinine for id 11, 13, 15 and 16.

Commits
-------

b79962b676 Added and improved Bulgarian translations
2021-05-15 08:41:48 +02:00
Alexander M. Turek
88520e53b2 Don't call class_exists() on null 2021-05-15 01:35:14 +02:00
Alexander M. Turek
7e9c7e0dc7 Merge branch '5.2' into 5.x
* 5.2:
  Introduce SYMFONY_FEATURE_BRANCH variable in Travis config
2021-05-15 01:03:55 +02:00
Alexander M. Turek
be28e226f5 Merge branch '4.4' into 5.2
* 4.4:
  Introduce SYMFONY_FEATURE_BRANCH variable in Travis config
2021-05-15 00:55:27 +02:00