Commit Graph

46962 Commits

Author SHA1 Message Date
Jan Rosier
500a075673 Update year in license files 2020-01-01 15:47:03 +01:00
Christophe Meneses
5374d4f210 [TwigBridge][Form] Added missing help messages in form themes 2020-01-01 13:53:32 +01:00
Jan Rosier
0d7a8bdd0a Update year in license files 2020-01-01 12:51:43 +01:00
Jan Rosier
889a110e74 Update year in license files 2020-01-01 12:03:25 +01:00
Christian Flothmann
c280a01724 fix version when "anonymous: lazy" was introduced 2020-01-01 10:41:58 +01:00
Nicolas Grekas
8e9aafc84f bug #35125 [Translator] fix performance issue in MessageCatalogue and catalogue operations (ArtemBrovko)
This PR was merged into the 3.4 branch.

Discussion
----------

[Translator] fix performance issue in MessageCatalogue and catalogue operations

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

In our project we use lots of catalogue operations during importing of translations to our system and we ran into performance issue. Code profiler showed lots or `array_replace` calls in  [MessageCatalogue::add](https://github.com/symfony/symfony/blob/3.4/src/Symfony/Component/Translation/MessageCatalogue.php#L128) method. This method is actually called by [MessageCatalogue::set](https://github.com/symfony/symfony/blob/3.4/src/Symfony/Component/Translation/MessageCatalogue.php#L70), which is quite an overkill, because `MessageCatalogue::set` is meant to set only one translation at a time. Method was reworked. `MergeOperation` and `TargetOperation` was reworked as well to use this improved `MessageCatalogue::set` method instead of constructing array with only one translation and passing it to `MessageCatalogue::add` method.

Table shows execution time before and after

|  | Time in seconds (avg. of 10 executions)
----------- | ------
Before | 50
After | 8

Looks like 4.* and 5.* versions can also be improved by the same changes.
<!--
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/roadmap):
 - 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 master.
-->

Commits
-------

5179af4796 [Translator] Performance improvement in MessageCatalogue and catalogue operations.
2019-12-31 15:31:48 +01:00
Nicolas Grekas
f35935f050 minor #35133 [DebugBundle] Drop RemoveWebServerBundleLoggerPass (chalasr)
This PR was merged into the 5.0 branch.

Discussion
----------

[DebugBundle] Drop RemoveWebServerBundleLoggerPass

| Q             | A
| ------------- | ---
| Branch?       | 5.0
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -
<!--
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/roadmap):
 - 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 master.
-->

Commits
-------

167411c194 [DebugBundle] Drop RemoveWebServerBundleLoggerPass
2019-12-31 15:30:00 +01:00
Nicolas Grekas
3415224479 minor #35132 [DebugBundle] Make RemoveWebServerBundleLoggerPass internal (chalasr)
This PR was merged into the 4.4 branch.

Discussion
----------

[DebugBundle] Make RemoveWebServerBundleLoggerPass internal

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -
<!--
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/roadmap):
 - 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 master.
-->

Commits
-------

86afefed3b [DebugBundle] Make RemoveWebServerBundleLoggerPass internal
2019-12-31 15:28:17 +01:00
Nicolas Grekas
c9767520d5 minor #35141 [Console][FormatterHelper] Use helper strlen statically and remove duplicated code (fancyweb)
This PR was merged into the 3.4 branch.

Discussion
----------

[Console][FormatterHelper] Use helper strlen statically and remove duplicated code

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

All those helpers methods are static and are accessed with `self::` everywhere else. They are not an extension point.

Commits
-------

f0d227db2f [Console][FormatterHelper] Use helper strlen statically and remove duplicated code
2019-12-31 15:27:06 +01:00
Nicolas Grekas
3a51e0143a minor #35148 [HttpClient] fix typo (nicolas-grekas)
This PR was merged into the 4.3 branch.

Discussion
----------

[HttpClient] fix typo

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

Commits
-------

3a25878e98 [HttpClient] fix typo
2019-12-31 15:25:38 +01:00
Nicolas Grekas
3db9090e73 minor #35149 doctrine/doctrine-bundle ^1.5 is not compatible with Symfony 5 (nicolas-grekas)
This PR was merged into the 5.0 branch.

Discussion
----------

doctrine/doctrine-bundle ^1.5 is not compatible with Symfony 5

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

Commits
-------

4c790b0589 doctrine/doctrine-bundle ^1.5 is not compatible with Symfony 5
2019-12-31 15:23:48 +01:00
Nicolas Grekas
3ba6f8de80 minor #35152 Fix Nexmo notifier bridge namespace (thePanz)
This PR was submitted for the master branch but it was merged into the 5.0 branch instead.

Discussion
----------

Fix Nexmo notifier bridge namespace

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

Fix the Nexmo notifier bridge namespace

Commits
-------

879ba76a6a Fix Nexmo notifier bridge namespace
2019-12-31 15:17:00 +01:00
Emanuele Panzeri
879ba76a6a Fix Nexmo notifier bridge namespace 2019-12-31 15:16:53 +01:00
Nicolas Grekas
4c790b0589 doctrine/doctrine-bundle ^1.5 is not compatible with Symfony 5 2019-12-30 18:22:15 +01:00
Nicolas Grekas
3a25878e98 [HttpClient] fix typo 2019-12-30 18:19:47 +01:00
Thomas Calvet
f0d227db2f [Console][FormatterHelper] Use helper strlen statically and remove duplicated code 2019-12-29 18:51:53 +01:00
Thomas Calvet
cd40bb8604 [Routing] Fix i18n routing when the url contains the locale 2019-12-29 11:48:40 +01:00
Jaapio
bad07ec557
Fix BC issue in phpDoc Reflection library
The used phpDocumentor library DocBlockReflection contained an BC break
that broke this component. The patch was applied in the recent released v4.3.4
version. But since it is unclear how long this issue existed it is not possible
to exclude a certain version. Therefor also `\RuntimeExpception` needs to be catched.

The BC break is possibly caused by a change in the TypeResolver library used by the
DocBlockReflection which is now supporting the more populair generics notation for arrays.
2019-12-28 22:02:19 +01:00
Robin Chalas
167411c194 [DebugBundle] Drop RemoveWebServerBundleLoggerPass 2019-12-28 20:04:16 +01:00
Robin Chalas
86afefed3b [DebugBundle] Make RemoveWebServerBundleLoggerPass internal 2019-12-28 19:58:08 +01:00
Nicolas Grekas
aa9ccf8825 Merge branch '5.0'
* 5.0:
  [DI] fix merge
2019-12-28 16:31:23 +01:00
Nicolas Grekas
291d1f3a84 [DI] fix merge 2019-12-28 16:31:08 +01:00
Nicolas Grekas
392d0b01f3 Merge branch '5.0'
* 5.0: (24 commits)
  Removing unused variable
  Fixed #35084
  Add missing use statement
  [HttpClient] fix scheduling pending NativeResponse
  do not overwrite variable value
  [Profiler] wording
  Use spaces correctly to display options in DebugCommand
  Add supported schemes doc blocks type
  X-Accel Nginx URL updated
  ticket-30197 [Validator] Add the missing translations for the Chinese (Taiwan) ("zh_TW") locale
  Fixed test added in #35022
  Use locale_parse for computing fallback locales
  [Console] Fix filtering out identical alternatives when there is a command loader
  [String][UnicodeString] Remove unneeded flag in chunk regex pattern
  add note about HTTP status code change
  Migrate server:log command away from WebServerBundle
  [DependencyInjection][CheckTypeDeclarationsPass] Handle \Closure for callable
  [Security] Fix missing defaults for auto-migrating encoders
  bumped Symfony version to 5.0.3
  updated VERSION for 5.0.2
  ...
2019-12-28 16:12:20 +01:00
Nicolas Grekas
db32ef0d9d minor #35118 [DI] Removing unused variable (alirezamirsepassi)
This PR was submitted for the master branch but it was merged into the 5.0 branch instead.

Discussion
----------

[DI] Removing unused variable

| Q             | A
| ------------- | ---
| Branch?       | master <!-- 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       | - <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | - <!-- 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/roadmap):
 - 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 master.
-->

Commits
-------

12d3aa80ec Removing unused variable
2019-12-28 16:11:40 +01:00
Alireza Mirsepassi
12d3aa80ec Removing unused variable 2019-12-28 16:11:31 +01:00
Nicolas Grekas
725da2f218 Merge branch '4.4' into 5.0
* 4.4:
  Fixed #35084
  Add missing use statement
  [HttpClient] fix scheduling pending NativeResponse
  do not overwrite variable value
  [Profiler] wording
  Use spaces correctly to display options in DebugCommand
  X-Accel Nginx URL updated
  ticket-30197 [Validator] Add the missing translations for the Chinese (Taiwan) ("zh_TW") locale
  Fixed test added in #35022
  Use locale_parse for computing fallback locales
  [Console] Fix filtering out identical alternatives when there is a command loader
  add note about HTTP status code change
  Migrate server:log command away from WebServerBundle
  [DependencyInjection][CheckTypeDeclarationsPass] Handle \Closure for callable
  [Security] Fix missing defaults for auto-migrating encoders
  bumped Symfony version to 4.4.3
  updated VERSION for 4.4.2
  updated CHANGELOG for 4.4.2
2019-12-28 16:09:49 +01:00
Nicolas Grekas
47f7cdc848 Merge branch '4.3' into 4.4
* 4.3:
  Fixed #35084
  Add missing use statement
  [HttpClient] fix scheduling pending NativeResponse
  do not overwrite variable value
  [Profiler] wording
  Use spaces correctly to display options in DebugCommand
  X-Accel Nginx URL updated
  ticket-30197 [Validator] Add the missing translations for the Chinese (Taiwan) ("zh_TW") locale
  Fixed test added in #35022
  Use locale_parse for computing fallback locales
  [Console] Fix filtering out identical alternatives when there is a command loader
2019-12-28 16:00:14 +01:00
Artem Brovko
5179af4796 [Translator] Performance improvement in MessageCatalogue and catalogue operations. 2019-12-28 16:59:49 +02:00
Nicolas Grekas
f3d8fd2521 bug #35120 [HttpClient] fix scheduling pending NativeResponse (nicolas-grekas)
This PR was merged into the 4.3 branch.

Discussion
----------

[HttpClient] fix scheduling pending NativeResponse

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

There must be one pending list per `ResponseStream` instance.
Currently, we start unrelated responses and this can lead to broken iterators when the unrelated response throws because it is a 3/4/5xx.

Commits
-------

a90a6c9c48 [HttpClient] fix scheduling pending NativeResponse
2019-12-28 15:54:06 +01:00
Nicolas Grekas
b6403d88c2 bug #35117 [Cache] do not overwrite variable value (xabbuh)
This PR was merged into the 4.3 branch.

Discussion
----------

[Cache] do not overwrite variable value

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

Commits
-------

e379dbbf21 do not overwrite variable value
2019-12-28 15:53:10 +01:00
Nicolas Grekas
9876de2a28 bug #35113 [VarDumper] Fix "Undefined index: argv" when using CliContextProvider (xepozz)
This PR was submitted for the master branch but it was merged into the 4.3 branch instead.

Discussion
----------

[VarDumper] Fix "Undefined index: argv" when using CliContextProvider

| Q             | A
| ------------- | ---
| Branch?       | 4.1, 4.2, 4.3, 4.4 or 5.0<!-- see below -->
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #35084
| License       | MIT
<!--
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/roadmap):
 - 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 master.
-->

Commits
-------

340bb145d9 Fixed #35084
2019-12-28 15:52:21 +01:00
Dmitriy Derepko
340bb145d9 Fixed #35084 2019-12-28 15:52:14 +01:00
Nicolas Grekas
af4f99f52b Merge branch '3.4' into 4.3
* 3.4:
  Add missing use statement
  [Profiler] wording
  X-Accel Nginx URL updated
  ticket-30197 [Validator] Add the missing translations for the Chinese (Taiwan) ("zh_TW") locale
  Fixed test added in #35022
  Use locale_parse for computing fallback locales
  [Console] Fix filtering out identical alternatives when there is a command loader
2019-12-28 15:48:01 +01:00
Nicolas Grekas
7aba9cf753 minor #35122 [Translation] Add missing use statement (odolbeau)
This PR was merged into the 3.4 branch.

Discussion
----------

[Translation] Add missing use statement

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| License       | MIT

Add missing use for `Data` class used in PHPDoc
https://github.com/symfony/symfony/blob/3.4/src/Symfony/Component/Translation/DataCollector/TranslationDataCollector.php#L64

Commits
-------

6fd266dba6 Add missing use statement
2019-12-28 14:49:39 +01:00
Olivier Dolbeau
6fd266dba6 Add missing use statement 2019-12-27 12:18:21 +01:00
Nicolas Grekas
a90a6c9c48 [HttpClient] fix scheduling pending NativeResponse 2019-12-27 12:01:41 +01:00
Fabien Potencier
63dd7a310f bug #34673 Migrate server:log command away from WebServerBundle (jderusse)
This PR was merged into the 4.4 branch.

Discussion
----------

Migrate server:log command away from WebServerBundle

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

Duplicate ServerLogCommand in MonologBridge (currently in deprecated WebServerBundle) which does not have alternative in `symfony` bin.

Targeted 4.4 in order to provide a migration path to users.

Commits
-------

3bfa8dbb18 Migrate server:log command away from WebServerBundle
2019-12-27 10:06:25 +01:00
Christian Flothmann
e379dbbf21 do not overwrite variable value 2019-12-27 10:03:19 +01:00
Fabien Potencier
cee47cec05 bug #35103 [Translation] Use locale_parse for computing fallback locales (alanpoulain)
This PR was merged into the 3.4 branch.

Discussion
----------

[Translation] Use `locale_parse` for computing fallback locales

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

As done in this PR https://github.com/symfony/symfony/pull/24157 for the `Intl` component, the `Translation` component should use `locale_parse` as well when available.

It will allow to manage [BCP 47](https://tools.ietf.org/html/bcp47) locales, which is why it is considered a bugfix ([locale_set_default](https://www.php.net/manual/en/locale.setdefault.php) is using BCP 47 compliant locale).

As done with the forementioned PR, there is also a fallback to make it work with `-`.

Sadly, I think it will create some conflicts when merging it upstream since the modified code has changed little by little.

Commits
-------

3657c0e664 Use locale_parse for computing fallback locales
2019-12-27 09:11:50 +01:00
Fabien Potencier
be40f32798 minor #35016 [Profiler] wording (noniagriconomie)
This PR was submitted for the master branch but it was merged into the 3.4 branch instead (closes #35016).

Discussion
----------

[Profiler] wording

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

Small wording improvement

Commits
-------

e7c9a28a03 [Profiler] wording
2019-12-27 08:51:10 +01:00
noniagriconomie
e7c9a28a03 [Profiler] wording 2019-12-27 08:51:03 +01:00
Robin Chalas
9f74fb0719 minor #34869 [Console] Improve speed NullOutput (tienvx)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Console] Improve speed NullOutput

| Q             | A
| ------------- | ---
| Branch?       | master <!-- see below -->
| Bug fix?      | no
| New feature?  | yes <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | N/A <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | N/A <!-- required for new features -->

This PR improve NullOutput so that test cases that used it can be run faster.

Commits
-------

75387433be [Console] Improve speed NullOutput
2019-12-26 20:33:29 +01:00
Robin Chalas
fd81bb8137 bug #35060 [Security] Fix missing defaults for auto-migrating encoders (chalasr)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security] Fix missing defaults for auto-migrating encoders

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

Commits
-------

665ef06013 [Security] Fix missing defaults for auto-migrating encoders
2019-12-26 20:28:20 +01:00
tien.xuan.vo
75387433be [Console] Improve speed NullOutput 2019-12-26 16:51:30 +07:00
Nicolas Grekas
b138fbcb89 feature #34986 [Form] Added default inputmode attribute to Search, Email and Tel form types (fre5h)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

[Form] Added default `inputmode` attribute to Search, Email and Tel form types

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

There is an HTML5 attribute `inputmode`. See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode It is supported by most of mobile browsers.
There are such supported values for `inputmode`:
* `none`
* `text` (default value)
* `decimal`
* `numeric `
* `tel`
* `search`
* `email`
* `url`

The `url` inputmode is already implemented in UrlType https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Form/Extension/Core/Type/UrlType.php#L39

I propose to add `tel`, `search`, `email` as default form view attribute to the relevant form types. Why only these three? `url` is already implemented, `none` makes no sense as default value for any form type, `text` is a default input type for any browser.

`decimal` and `numeric` has different behaviour on iOS. iOS doesn't show `-` (minus) sign on keyboard for these input modes. Of course in cases, when only positive numbers are expected, it is normal. But it is not suitable as default value in Symfony form type. Developers can add this attribute manually in their forms, if they need only positive numbers.

But `search`, `tel` and `email` input modes don't have problems and can be added as default attributes to Symfony form types. This will improve user experience, while using web-sites developed on Symfony on mobile devices. I add it into the *Type classes inside `buildView` method, so it will be possible to override this parameter if needed.

If you are interested in how it looks like in mobile browsers, you can open this link https://inputmodes.com/ on you mobile device.

Here are screenshots, how mobile keyboard looks like on Android and iOS with using `inputmode` attribute.

## `tel` inputmode
![image](https://user-images.githubusercontent.com/815865/70866507-45256480-1f73-11ea-9e82-320ef0b978ab.png)

## `email` inputmode
![image](https://user-images.githubusercontent.com/815865/70866502-3a6acf80-1f73-11ea-8f4c-3e7faca47f54.png)

## `search` inputmode
![image](https://user-images.githubusercontent.com/815865/70866498-2cb54a00-1f73-11ea-9fdc-2bb8abed107d.png)

Commits
-------

dbc500feb7 [Form] Added default `inputmode` attribute to Search, Email and Tel form types
2019-12-26 10:32:31 +01:00
Artem Henvald
dbc500feb7 [Form] Added default inputmode attribute to Search, Email and Tel form types 2019-12-26 10:32:18 +01:00
Nicolas Grekas
40c2ce4e43 minor #34768 [FrameworkBundle] Remove env var table from AboutCommand (tuqqu)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

[FrameworkBundle] Remove env var table from AboutCommand

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

Fixed AboutCommand output by shortening environment variable value (replacing with `...`) to fit the screen width if the value is too long.

Right now all output is a mess if it does not fit in the terminal window.

Commits
-------

6962da93c1 [FrameworkBundle] Remove env var table from AboutCommand
2019-12-26 10:16:45 +01:00
tuqqu
6962da93c1 [FrameworkBundle] Remove env var table from AboutCommand 2019-12-26 10:16:39 +01:00
Nicolas Grekas
d021ff1e6e feature #35091 [String] Add the reverse() method (fancyweb)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[String] Add the reverse() method

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

Allows to easily reverse a string since `mb_strrev` does not exist.

Commits
-------

c369598b05 [String] Add the reverse method
2019-12-26 10:10:16 +01:00
Thomas Calvet
c369598b05 [String] Add the reverse method 2019-12-26 10:01:21 +01:00