Commit Graph

1759 Commits

Author SHA1 Message Date
Nicolas Grekas
7f640123cb feature #40554 [Contracts] Add TranslatorInterface::getLocale() (nicolas-grekas)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[Contracts] Add `TranslatorInterface::getLocale()`

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

As discussed in https://github.com/symfony/symfony/issues/40380

Commits
-------

45d9a36794 [Contracts/Translation] Add `TranslatorInterface::getLocale()`
2021-03-23 22:10:30 +01:00
Nicolas Grekas
019e29b339 Merge branch '5.2' into 5.x
* 5.2:
  [travis] use packagist API v2
  [translation] Fix update existing key with existing +int-icu domain
  [Contracts] Fix branch name in README.md links
2021-03-23 20:34:00 +01:00
Nicolas Grekas
7a972c43c2 Merge branch '4.4' into 5.2
* 4.4:
  [travis] use packagist API v2
  [translation] Fix update existing key with existing +int-icu domain
  [Contracts] Fix branch name in README.md links
2021-03-23 20:33:48 +01:00
Nicolas Grekas
45d9a36794 [Contracts/Translation] Add TranslatorInterface::getLocale() 2021-03-23 17:28:16 +01:00
Alexis
2a196ca0dc [translation] Fix update existing key with existing +int-icu domain 2021-03-23 17:25:01 +01:00
Nicolas Grekas
7cc5cef1c3 feature #40468 Deprecate configuring tag names and service ids in compiler passes (nicolas-grekas)
This PR was merged into the 5.3-dev branch.

Discussion
----------

Deprecate configuring tag names and service ids in compiler passes

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

This PR is aimed at reducing the code complexity by hardcoding the name of tags and service ids that compiler passes have to deal with.

I think making these names configurable only adds boilerplate and maintenance overhead for no benefit:
- for the practice: the need to use a pass with a renamed tag/id should be extremely rare (do yo know any?)
- for the theory: a decorating pass could still rename before/after the processing, so this use case is still supported.

Side note: I skipped updating changelog+upgrade files. This would be just noise to me (nobody uses this possibility anyway ;) )

Commits
-------

6fe82d8be7 Deprecate configuring tag names and service ids in compiler passes
2021-03-16 10:12:04 +01:00
Nicolas Grekas
5850f3d4ea Merge branch '5.2' into 5.x
* 5.2:
  [ErrorHandler] Fix error caused by `include` + open_basedir
  [FrameworkBundle] Make the TestBrowserToken interchangeable with other tokens
  [Console] ProgressBar clears too many lines on update
  [FrameworkBundle] Exclude unreadable files when executing About command
  [Bridge\Twig] Add 'form-control-range' for range input type
  Be explicit about transparent background color of links in toolbar
  [Translation] fix test case name
  [Cache] Fix wrong namespace in test
  [DependencyInjection] Fix return type
2021-03-16 10:10:58 +01:00
Nicolas Grekas
ca06651235 Merge branch '4.4' into 5.2
* 4.4:
  [Console] ProgressBar clears too many lines on update
  [FrameworkBundle] Exclude unreadable files when executing About command
  [Bridge\Twig] Add 'form-control-range' for range input type
  Be explicit about transparent background color of links in toolbar
  [Translation] fix test case name
  [Cache] Fix wrong namespace in test
  [DependencyInjection] Fix return type
2021-03-16 10:10:13 +01:00
Nicolas Grekas
6fe82d8be7 Deprecate configuring tag names and service ids in compiler passes 2021-03-15 19:33:21 +01:00
Nicolas Grekas
e2dffea49d [Translation] fix test case name 2021-03-15 13:54:07 +01:00
Fabien Potencier
e53bb8b4f2 Merge branch '5.2' into 5.x
* 5.2:
  Fix #36973: Command description consistency
  Render email once
2021-03-06 09:05:19 +01:00
Fabien Potencier
7ed3d36f53 Merge branch '4.4' into 5.2
* 4.4:
  Fix #36973: Command description consistency
  Render email once
2021-03-06 08:59:01 +01:00
Dane Powell
01e18b039a
Fix #36973: Command description consistency 2021-03-05 09:58:50 -08:00
Fabien Potencier
33791925af Merge branch '5.2' into 5.x
* 5.2:
  [Validator] Fix return types
  Add translation for Belarusian
  fix parsing calls of methods named "method"
  [Security] Remove unnecessary inherited doc annotation
  deal with indented heredoc/nowdoc tokens
  Adding templates for Belarusian
2021-03-04 16:41:30 +01:00
Fabien Potencier
5fea563f4a Merge branch '4.4' into 5.2
* 4.4:
  [Validator] Fix return types
  Add translation for Belarusian
  fix parsing calls of methods named "method"
  deal with indented heredoc/nowdoc tokens
  Adding templates for Belarusian
2021-03-04 16:41:09 +01:00
Christian Flothmann
4721097cab deal with indented heredoc/nowdoc tokens 2021-02-26 14:53:48 +01:00
Robin Chalas
adbb34115c Merge branch '5.2' into 5.x
* 5.2:
  [TwigBridge] Install symfony/intl to run tests on Travis
  [Translation] Make `name` attribute optional in xliff2
  [Security] #[CurrentUser] argument should resolve to null when it is anonymous
2021-02-25 14:42:49 +01:00
Robin Chalas
f4c9feeb75 Merge branch '4.4' into 5.2
* 4.4:
  [TwigBridge] Install symfony/intl to run tests on Travis
  [Translation] Make `name` attribute optional in xliff2
2021-02-25 14:42:30 +01:00
Marie Minasyan
97058559cc [Translation] Make name attribute optional in xliff2
Do not set a fake `name` attribute on `unit` element from xliff2 to allow using `source` attribute and avoid missing translation error
2021-02-24 17:01:00 +01:00
Christian Flothmann
f50e6afd7d Merge branch '5.2' into 5.x
* 5.2:
  install compatible versions of mongodb/mongodb only
  fix taking error message from the correct violation
  fix resolving parent/self/static type annotations
  [Console] fix QuestionHelper::getHiddenResponse() not working with space in project directory name
  [WebLink] Escape double quotes in attributes values
  [String] Check if function exists before declaring it
2021-02-17 16:27:35 +01:00
Nicolas Grekas
7dcf156242 bug #40203 [String] Check if function exists before declaring it (Nyholm)
This PR was squashed before being merged into the 5.2 branch.

Discussion
----------

[String] Check if function exists before declaring it

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

If you installed a command line tool like `psalm` with composer and then try to run it on a project that included the String component you will get an error like:

> Fatal error: Cannot redeclare Symfony\Component\String\u() (previously declared in /Workspace/symfony/src/Symfony/Component/String/Resources/functions.php:14) in /user/.composer/vendor/symfony/string/Resources/functions.php on line 14

That is because we are loading two installations of the string component.

Commits
-------

cc00e0eb78 [String] Check if function exists before declaring it
2021-02-16 11:20:41 +01:00
Nyholm
cc00e0eb78 [String] Check if function exists before declaring it 2021-02-16 11:20:28 +01:00
Nicolas Grekas
857cf336a1 Merge branch '5.2' into 5.x
* 5.2:
  Ignore indirect deprecation triggered by doctrine/orm
  Symfony Armenian Translations
  [Translation] Allow using dashes in locale when linting Xliff files
  use the right context for properties defined in traits
2021-02-16 11:14:08 +01:00
Nicolas Grekas
00b4b76460 Merge branch '4.4' into 5.2
* 4.4:
  Ignore indirect deprecation triggered by doctrine/orm
  Symfony Armenian Translations
  [Translation] Allow using dashes in locale when linting Xliff files
  use the right context for properties defined in traits
2021-02-16 11:13:48 +01:00
Fabien Potencier
aa21944d37 bug #40172 [Translation] Allow using dashes in locale when linting Xliff files (localheinz)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Translation] Allow using dashes in locale when linting Xliff files

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

This pull request

* [x] asserts that the `XliffLintCommand` succeeds linting an Xliff file where both the the target language and the locale in the file name use dashes as separators
* [x] adjusts the `XliffLintCommand` to allow using the same value for target language and locale in the corresponding file name

Commits
-------

d106aa3f2d [Translation] Allow using dashes in locale when linting Xliff files
2021-02-16 07:36:55 +01:00
Andreas Möller
d106aa3f2d [Translation] Allow using dashes in locale when linting Xliff files 2021-02-16 07:36:48 +01:00
Robin Chalas
a4c5edc5ff Merge branch '5.2' into 5.x
* 5.2:
  [Workflow] Re-add InvalidTokenConfigurationException for BC
  Fix PHP 8.1 null values
  [Console] Fix PHP 8.1 null error for preg_match flag
  Fix: Article
  Definition::removeMethodCall should remove all matching calls
  [HttpFoundation] Fix typo in exception message
  mark the LazyIterator class as internal
  fix extracting mixed type-hinted property types
  [Worflow] Fixed GuardListener when using the new Security system
  keep valid submitted choices when additional choices are submitted
2021-02-15 19:57:44 +01:00
Robin Chalas
4365af6ce8 Merge branch '4.4' into 5.2
* 4.4:
  Fix PHP 8.1 null values
  [Console] Fix PHP 8.1 null error for preg_match flag
  Fix: Article
  Definition::removeMethodCall should remove all matching calls
  mark the LazyIterator class as internal
  fix extracting mixed type-hinted property types
  keep valid submitted choices when additional choices are submitted
2021-02-15 19:55:04 +01:00
Andreas Möller
34b320ba97
Fix: Article 2021-02-14 13:29:41 +01:00
Nicolas Grekas
20bb3cb3ab Merge branch '5.2' into 5.x
* 5.2:
  merge translation parameters with value configured for parent form
  scan directories for translations sequentially
  Fix kafka tests
  Fix "provide" declarations
  Provide implemented packages of replaced dependencies
  Always autoload string functions on symfony/symfony
2021-02-08 11:24:30 +01:00
Nicolas Grekas
36e5051171 Fix "provide" declarations 2021-02-06 09:54:26 +01:00
Nicolas Grekas
6891550582 Merge branch '4.4' into 5.2
* 4.4:
  Provide implemented packages of replaced dependencies
2021-02-06 09:52:42 +01:00
Nicolas Grekas
47da6640f8 Merge branch '5.2' into 5.x
* 5.2:
  Allow psr/cache v3 but on symfony/cache
  [DI] fix tracking of changes to vendor/ dirs
  Remove EOLed 5.1 branch from PR template
  [HttpKernel] [Kernel] Silence deprecations logs writes
  Update PULL_REQUEST_TEMPLATE.md
  fix typo
  [Mailer][Mime] Update inline part names with newly generated ContentId
  Fixed updating catalogue metadata from intl domain
  [HttpFoundation] Setting `REQUEST_TIME_FLOAT` when constructing a Request object
2021-02-05 18:04:25 +01:00
Nicolas Grekas
382b10fc7c Merge branch '4.4' into 5.2
* 4.4:
  Allow psr/cache v3 but on symfony/cache
  [DI] fix tracking of changes to vendor/ dirs
  Remove EOLed 5.1 branch from PR template
  [HttpKernel] [Kernel] Silence deprecations logs writes
  Update PULL_REQUEST_TEMPLATE.md
  [Mailer][Mime] Update inline part names with newly generated ContentId
  Fixed updating catalogue metadata from intl domain
  [HttpFoundation] Setting `REQUEST_TIME_FLOAT` when constructing a Request object
2021-02-05 18:02:58 +01:00
Yonel Ceruto
33e6af5850 Fixed updating catalogue metadata from intl domain 2021-01-31 21:39:35 -05:00
Nicolas Grekas
e7966c099b Merge branch '5.2' into 5.x
* 5.2:
  Use createMock() and use import instead of FQCN
2021-01-27 11:19:48 +01:00
Nicolas Grekas
854de3cc2e Merge branch '5.1' into 5.2
* 5.1:
  Use createMock() and use import instead of FQCN
2021-01-27 11:15:41 +01:00
Nicolas Grekas
28f1ab67ca Merge branch '4.4' into 5.1
* 4.4:
  Use createMock() and use import instead of FQCN
2021-01-27 11:01:46 +01:00
Oskar Stark
e7e61ee551 Use createMock() and use import instead of FQCN 2021-01-27 10:09:26 +01:00
Nicolas Grekas
b8ab4ec721 Merge branch '5.2' into 5.x
* 5.2:
  Fix transient tests
  Fix class resolution in Doctrine EventListenerPass
  [SecurityBundle] Fix referencing aliases from RegisterEntryPointPass
  [Serializer] Fix tests  marked as incomplete
  propagate the object being validated to sub-constraints
  [Translator] fix handling plural for floating numbers
  fix redis messenger options with dsn
  Update ConsoleEvents.php
  allow Doctrine persistence 2 too
  [Messenger] Fix transporting non-UTF8 payloads by encoding them using base 64
  add doctrine/persistence as a dev requirement
  Exclude non-initialized properties accessed with getters
2021-01-27 10:05:46 +01:00
Nicolas Grekas
98b58b4c4c Merge branch '5.1' into 5.2
* 5.1:
  Fix transient tests
  Fix class resolution in Doctrine EventListenerPass
  [Serializer] Fix tests  marked as incomplete
  propagate the object being validated to sub-constraints
  [Translator] fix handling plural for floating numbers
  fix redis messenger options with dsn
  Update ConsoleEvents.php
  allow Doctrine persistence 2 too
  [Messenger] Fix transporting non-UTF8 payloads by encoding them using base 64
  add doctrine/persistence as a dev requirement
  Exclude non-initialized properties accessed with getters
2021-01-27 10:04:53 +01:00
Nicolas Grekas
abf8010eae Merge branch '4.4' into 5.1
* 4.4:
  Fix transient tests
  Fix class resolution in Doctrine EventListenerPass
  [Serializer] Fix tests  marked as incomplete
  [Translator] fix handling plural for floating numbers
  fix redis messenger options with dsn
  Update ConsoleEvents.php
  allow Doctrine persistence 2 too
  [Messenger] Fix transporting non-UTF8 payloads by encoding them using base 64
  add doctrine/persistence as a dev requirement
  Exclude non-initialized properties accessed with getters
2021-01-27 10:04:36 +01:00
Nicolas Grekas
4b8983aef5 bug #39887 [Translator] fix handling plural for floating numbers (kylekatarnls)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Translator] fix handling plural for floating numbers

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

Commits
-------

533cd7ef6c [Translator] fix handling plural for floating numbers
2021-01-26 10:08:00 +01:00
kylekatarnls
533cd7ef6c [Translator] fix handling plural for floating numbers 2021-01-26 10:07:54 +01:00
Christian Flothmann
55e421fda3 slightly clarify command descriptions 2021-01-21 12:15:15 +01:00
Nicolas Grekas
4cb45fe834 feature #39851 [Console] enable describing commands in ways that make the list command lazy (nicolas-grekas)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[Console] enable describing commands in ways that make the `list` command lazy

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

This PR improves the way one can describe a command so that the `list` command can be made lazy:
- when provided using the `$defaultName` property or the `console.command` tag, the name of a command is now exploded using the `|` character. The first name in the list defines the name of the command, the other ones its aliases. When the first name is the empty string, the second name is used instead, and the command is declared as hidden.
- a new `$defaultDescription` static property and a new `description` tag attribute allow for defining the commands' description while registering them.

Together, this is enough to make the `list` command lazy, because this command only accesses each command's name, aliases, hidden-status, and description.

On the implementation side, this PR adds a `LazyCommand` class that proxies regular commands to make them lazy for the target purpose.

This PR will enable support for attributes for configuring a command name+description+etc.
e.g. using the concepts in #39804:
`#[CommandAutoTag(name: 'foo:bar', desc: 'boo', hidden: true)]#`

The attribute could very well split the `hidden` and `aliases` settings apart - while the underlying code and pre-PHP8 apps would use the compact form, because dealing with many static properties + methods would be a maintenance pain imho.

Commits
-------

8a1a1b8171 [Console] enable describing commands in ways that make the `list` command lazy
2021-01-20 13:56:01 +01:00
Nicolas Grekas
8a1a1b8171 [Console] enable describing commands in ways that make the list command lazy 2021-01-20 12:45:16 +01:00
Alexander M. Turek
31dcefe779 Merge branch '5.1' into 5.2
* 5.1:
  [HttpFoundation] Drop int return type from parseFilesize()
  Added $translator->addLoader()
  bug symfony/symfony#39878 [doctrine-bridge] Add username to UserNameNotFoundException
  [Uid] Clarify the format returned by getTime()
  fix spelling
  Add check for constant in Curl client
  Revert #38614, add assert to avoid regression
  Fix container injection with TypedReference
  Fix problem when SYMFONY_PHPUNIT_VERSION is empty string value
  Update PHP CS Fixer config to v2.18
2021-01-19 22:00:40 +01:00
Alexander M. Turek
c639531fe4 Merge branch '4.4' into 5.1
* 4.4:
  [HttpFoundation] Drop int return type from parseFilesize()
  Added $translator->addLoader()
  bug symfony/symfony#39878 [doctrine-bridge] Add username to UserNameNotFoundException
  fix spelling
  Add check for constant in Curl client
  Revert #38614, add assert to avoid regression
  Fix problem when SYMFONY_PHPUNIT_VERSION is empty string value
  Update PHP CS Fixer config to v2.18
2021-01-19 21:48:35 +01:00
Ser5
ba29d2a2f0
Added $translator->addLoader()
For the example to work it needs the line with $translator->addLoader().
Fixed it for request at https://github.com/symfony/symfony/issues/39854#issuecomment-762283989
2021-01-19 21:09:23 +05:00