Merge branch '2.7' into 2.8
* 2.7: [travis] Add PHP 7 to allowed failures until segfaults are fixed [Intl] Fix test [Translator][fallback catalogues] fixed circular reference. bumped Symfony version to 2.3.33 updated VERSION for 2.3.32 update CONTRIBUTORS for 2.3.32 updated CHANGELOG for 2.3.32 [FrameworkBundle] Fix templating.helper.code.file_link_format when defined by ini setting [console] Use the description when no help is available
This commit is contained in:
commit
22b17b2c93
|
@ -14,9 +14,12 @@ matrix:
|
|||
- php: 5.4
|
||||
- php: 5.5
|
||||
- php: 5.6
|
||||
env: deps=low
|
||||
- php: 7.0
|
||||
env: deps=high
|
||||
- php: 7
|
||||
- php: 5.6
|
||||
env: deps=low
|
||||
allow_failures:
|
||||
- php: 7
|
||||
fast_finish: true
|
||||
|
||||
services: mongodb
|
||||
|
|
|
@ -7,6 +7,38 @@ in 2.3 minor versions.
|
|||
To get the diff for a specific change, go to https://github.com/symfony/symfony/commit/XXX where XXX is the change hash
|
||||
To get the diff between two versions, go to https://github.com/symfony/symfony/compare/v2.3.0...v2.3.1
|
||||
|
||||
* 2.3.32 (2015-09-01)
|
||||
|
||||
* bug #15601 [console] Use the description when no help is available (Nicofuma)
|
||||
* bug #15603 [HttpKernel] Do not normalize the kernel root directory path #15567 (leofeyer)
|
||||
* bug #15428 Fix the validation of form resources to register the default theme (stof)
|
||||
* bug #15619 [Translation] Fix the string casting in the XliffFileLoader (stof)
|
||||
* bug #15575 Add appveyor.yml for C.I. on Windows (nicolas-grekas)
|
||||
* bug #15611 [Translation][Xliff Loader] Support omitting the <target> node in an .xlf file. (leofeyer)
|
||||
* bug #15549 [FrameworkBundle] Fix precedence of xdebug.file_link_format (nicolas-grekas)
|
||||
* bug #15589 made Symfony compatible with both Twig 1.x and 2.x (fabpot)
|
||||
* bug #15535 made Symfony compatible with both Twig 1.x and 2.x (fabpot)
|
||||
* bug #14372 [DoctrineBridge][Form] fix EntityChoiceList when indexing by primary foreign key (giosh94mhz)
|
||||
* bug #15489 Implement the support of timezone objects in the stub IntlDateFormatter (stof)
|
||||
* bug #15426 [Serializer] Add support for variadic arguments in the GetSetNormalizer (stof)
|
||||
* bug #15480 [Yaml] Nested merge keys (mathroc)
|
||||
* bug #15445 do not remove space between attributes (greg0ire)
|
||||
* bug #15263 [HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate() (axiac)
|
||||
* bug #15425 [Routing] Fix the retrieval of the default value for variadic arguments in the annotation loader (wdalmut, stof)
|
||||
* bug #15074 Fixing DbalSessionHandler to work with a Oracle "limitation" or bug? (nuncanada)
|
||||
* bug #15380 do not dump leading backslashes in class names (xabbuh)
|
||||
* bug #15376 [ClassMapGenerator] Skip ::class constant (WouterJ)
|
||||
* bug #15170 [Config] type specific check for emptiness (xabbuh)
|
||||
* bug #15411 Fix the handling of null as locale in the stub intl classes (stof)
|
||||
* bug #15413 Fix the return value on error for intl methods returning arrays (stof)
|
||||
* bug #15392 Fix missing _route parameter notice in RouterListener logging case (Haehnchen)
|
||||
* bug #15386 [php7] Fix for substr() always returning a string (nicolas-grekas)
|
||||
* bug #15355 [Security] Do not save the target path in the session for a stateless firewall (lyrixx)
|
||||
* bug #15330 [Console] Fix console output with closed stdout (jakzal)
|
||||
* bug #15326 [Security] fix check for empty usernames (xabbuh)
|
||||
* bug #15249 [HttpFoundation] [PSR-7] Allow to use resources as content body and to return resources from string content (dunglas)
|
||||
* bug #15282 [HttpFoundation] Behaviour change in PHP7 for substr (Nicofuma)
|
||||
|
||||
* 2.3.31 (2015-07-13)
|
||||
|
||||
* bug #15248 Added 'default' color (jaytaph)
|
||||
|
|
|
@ -14,8 +14,8 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Kris Wallsmith (kriswallsmith)
|
||||
- Christophe Coevoet (stof)
|
||||
- Jakub Zalas (jakubzalas)
|
||||
- Pascal Borreli (pborreli)
|
||||
- Christian Flothmann (xabbuh)
|
||||
- Pascal Borreli (pborreli)
|
||||
- Hugo Hamon (hhamon)
|
||||
- Joseph Bielawski (stloyd)
|
||||
- Karma Dordrak (drak)
|
||||
|
@ -26,15 +26,16 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Jean-François Simon (jfsimon)
|
||||
- Benjamin Eberlei (beberlei)
|
||||
- Igor Wiedler (igorw)
|
||||
- Martin Hasoň (hason)
|
||||
- Abdellatif Ait boudad (aitboudad)
|
||||
- Martin Hasoň (hason)
|
||||
- Eriksen Costa (eriksencosta)
|
||||
- Grégoire Pineau (lyrixx)
|
||||
- Wouter De Jong (wouterj)
|
||||
- Jonathan Wage (jwage)
|
||||
- Javier Eguiluz (javier.eguiluz)
|
||||
- Kévin Dunglas (dunglas)
|
||||
- Alexandre Salomé (alexandresalome)
|
||||
- William Durand (couac)
|
||||
- Kévin Dunglas (dunglas)
|
||||
- ornicar
|
||||
- stealth35 (stealth35)
|
||||
- Alexander Mols (asm89)
|
||||
|
@ -84,43 +85,42 @@ Symfony is the result of the work of many people who made the code better
|
|||
- excelwebzone
|
||||
- Jacob Dreesen (jdreesen)
|
||||
- Matthias Pigulla (mpdude)
|
||||
- Javier Eguiluz (javier.eguiluz)
|
||||
- Fabien Pennequin (fabienpennequin)
|
||||
- Peter Rehm (rpet)
|
||||
- Peter Kokot (maastermedia)
|
||||
- Gordon Franke (gimler)
|
||||
- Robert Schönthal (digitalkaoz)
|
||||
- Jérémy DERUSSÉ (jderusse)
|
||||
- Dariusz Ruminski
|
||||
- Michal Piotrowski (eventhorizon)
|
||||
- Stefano Sala (stefano.sala)
|
||||
- David Buchmann (dbu)
|
||||
- Juti Noppornpitak (shiroyuki)
|
||||
- Sebastian Hörl (blogsh)
|
||||
- Daniel Gomes (danielcsgomes)
|
||||
- Hidenori Goto (hidenorigoto)
|
||||
- David Buchmann (dbu)
|
||||
- Alexander Schwenn (xelaris)
|
||||
- Guilherme Blanco (guilhermeblanco)
|
||||
- Jérémy DERUSSÉ (jderusse)
|
||||
- Pablo Godel (pgodel)
|
||||
- Eric GELOEN (gelo)
|
||||
- Vladimir Reznichenko (kalessil)
|
||||
- Jérémie Augustin (jaugustin)
|
||||
- Alexander Schwenn (xelaris)
|
||||
- Issei Murasawa (issei_m)
|
||||
- Rafael Dohms (rdohms)
|
||||
- Arnaud Kleinpeter (nanocom)
|
||||
- Iltar van der Berg (kjarli)
|
||||
- Joshua Thijssen
|
||||
- Vladimir Reznichenko (kalessil)
|
||||
- Tigran Azatyan (tigranazatyan)
|
||||
- Issei Murasawa (issei_m)
|
||||
- Sebastiaan Stok (sstok)
|
||||
- Richard Shank (iampersistent)
|
||||
- Clemens Tolboom
|
||||
- Helmer Aaviksoo
|
||||
- Sebastiaan Stok (sstok)
|
||||
- Hiromi Hishida (77web)
|
||||
- Matthieu Ouellette-Vachon (maoueh)
|
||||
- Michał Pipa (michal.pipa)
|
||||
- Amal Raghav (kertz)
|
||||
- Jonathan Ingram (jonathaningram)
|
||||
- Artur Kotyrba
|
||||
- Iltar van der Berg
|
||||
- Rouven Weßling (realityking)
|
||||
- Andréia Bohner (andreia)
|
||||
- Dmitrii Chekaliuk (lazyhammer)
|
||||
|
@ -146,6 +146,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- fivestar
|
||||
- Dominique Bongiraud
|
||||
- Leszek Prabucki (l3l0)
|
||||
- Alexander M. Turek (derrabus)
|
||||
- François Zaninotto (fzaninotto)
|
||||
- Dustin Whittle (dustinwhittle)
|
||||
- jeff
|
||||
|
@ -164,7 +165,6 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Francois Zaninotto
|
||||
- Alexander Kotynia (olden)
|
||||
- Daniel Tschinder
|
||||
- Alexander M. Turek (derrabus)
|
||||
- Elnur Abdurrakhimov (elnur)
|
||||
- John Kary (johnkary)
|
||||
- Manuel Reinhard (sprain)
|
||||
|
@ -197,6 +197,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Robert Kiss (kepten)
|
||||
- Ruben Gonzalez (rubenrua)
|
||||
- Kim Hemsø Rasmussen (kimhemsoe)
|
||||
- Diego Saint Esteben (dosten)
|
||||
- Florian Lonqueu-Brochard (florianlb)
|
||||
- Tom Van Looy (tvlooy)
|
||||
- Wouter Van Hecke
|
||||
|
@ -212,6 +213,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Andrew Moore (finewolf)
|
||||
- Bertrand Zuchuat (garfield-fr)
|
||||
- Gabor Toth (tgabi333)
|
||||
- Grégoire Paris (greg0ire)
|
||||
- Alex Pott
|
||||
- realmfoo
|
||||
- Thomas Tourlourat (armetiz)
|
||||
|
@ -232,8 +234,11 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Thomas Schulz (king2500)
|
||||
- Marco Pivetta (ocramius)
|
||||
- Ricard Clau (ricardclau)
|
||||
- Lorenz Schori
|
||||
- Giorgio Premi
|
||||
- Erin Millard
|
||||
- Matthew Lewinski (lewinski)
|
||||
- Marcos Sánchez
|
||||
- alquerci
|
||||
- Francesco Levorato
|
||||
- Vitaliy Zakharov (zakharovvi)
|
||||
|
@ -260,13 +265,13 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Kirill chEbba Chebunin (chebba)
|
||||
- Greg Thornton (xdissent)
|
||||
- Baptiste Clavié (talus)
|
||||
- Grégoire Paris (greg0ire)
|
||||
- Costin Bereveanu (schniper)
|
||||
- Loïc Chardonnet (gnusat)
|
||||
- Marek Kalnik (marekkalnik)
|
||||
- Vyacheslav Salakhutdinov (megazoll)
|
||||
- Hassan Amouhzi
|
||||
- Tamas Szijarto
|
||||
- Michaël Perrin (michael.perrin)
|
||||
- Pavel Volokitin (pvolok)
|
||||
- Endre Fejes
|
||||
- Tobias Naumann (tna)
|
||||
|
@ -297,8 +302,8 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Brian King
|
||||
- Michel Salib (michelsalib)
|
||||
- geoffrey
|
||||
- Lorenz Schori
|
||||
- Jeanmonod David (jeanmonod)
|
||||
- Thomas Lallement (raziel057)
|
||||
- Jan Schumann
|
||||
- Niklas Fiekas
|
||||
- lancergr
|
||||
|
@ -370,6 +375,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Florian Rey (nervo)
|
||||
- Rodrigo Borrego Bernabé (rodrigobb)
|
||||
- Denis Gorbachev (starfall)
|
||||
- Titouan Galopin (tgalopin)
|
||||
- Steven Surowiec
|
||||
- Kevin Saliou (kbsali)
|
||||
- Daniel Tschinder
|
||||
|
@ -393,7 +399,6 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Mantas Var (mvar)
|
||||
- Sebastian Krebs
|
||||
- Christopher Davis (chrisguitarguy)
|
||||
- Thomas Lallement (raziel057)
|
||||
- alcaeus
|
||||
- vitaliytv
|
||||
- Markus Bachmann (baachi)
|
||||
|
@ -449,6 +454,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Simon Schick (simonsimcity)
|
||||
- redstar504
|
||||
- Hossein Bukhamsin
|
||||
- origaminal
|
||||
- Paweł Wacławczyk (pwc)
|
||||
- Oleg Zinchenko (cystbear)
|
||||
- Johannes Klauss (cloppy)
|
||||
|
@ -538,6 +544,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Tony Malzhacker
|
||||
- Cyril Quintin (cyqui)
|
||||
- Gerard van Helden (drm)
|
||||
- Johnny Peck (johnnypeck)
|
||||
- David Romaní
|
||||
- Patrick Allaert
|
||||
- Gustavo Falco (gfalco)
|
||||
|
@ -545,6 +552,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Aleksey Podskrebyshev
|
||||
- David Marín Carreño (davefx)
|
||||
- Jörn Lang (j.lang)
|
||||
- Leo Feyer
|
||||
- mwsaz
|
||||
- Benoît Bourgeois
|
||||
- corphi
|
||||
|
@ -562,7 +570,6 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Christian Morgan
|
||||
- Alexander Miehe (engerim)
|
||||
- Morgan Auchede (mauchede)
|
||||
- Titouan Galopin (tgalopin)
|
||||
- Don Pinkster
|
||||
- Maksim Muruev
|
||||
- Emil Einarsson
|
||||
|
@ -595,6 +602,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Reece Fowell (reecefowell)
|
||||
- stefan.r
|
||||
- Matthieu Napoli (mnapoli)
|
||||
- Alexandru Furculita (afurculita)
|
||||
- Ben Ramsey (ramsey)
|
||||
- Christian Jul Jensen
|
||||
- The Whole Life to Learn
|
||||
|
@ -610,7 +618,6 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Sander Marechal
|
||||
- Radosław Benkel
|
||||
- Gennady Telegin (gtelegin)
|
||||
- Marcos Sánchez
|
||||
- ttomor
|
||||
- Mei Gwilym (meigwilym)
|
||||
- Michael H. Arieli (excelwebzone)
|
||||
|
@ -647,6 +654,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Per Sandström (per)
|
||||
- Goran Juric
|
||||
- Laurent Ghirardotti (laurentg)
|
||||
- Nicolas Macherey
|
||||
- Jan Rosier (rosier)
|
||||
- Lin Clark
|
||||
- Jeremy David (jeremy.david)
|
||||
|
@ -695,7 +703,6 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Jochen Bayer (jocl)
|
||||
- Jeremy Bush
|
||||
- wizhippo
|
||||
- Diego Saint Esteben (dosten)
|
||||
- rpg600
|
||||
- Péter Buri (burci)
|
||||
- Davide Borsatto (davide.borsatto)
|
||||
|
@ -750,7 +757,6 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Jakub Kulhan
|
||||
- Mo Di (modi)
|
||||
- Jeroen van den Enden (stoefke)
|
||||
- origaminal
|
||||
- Quique Porta (quiqueporta)
|
||||
- Tomasz Szymczyk (karion)
|
||||
- ConneXNL
|
||||
|
@ -782,8 +788,10 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Adrien Gallou (agallou)
|
||||
- Karol Sójko (karolsojko)
|
||||
- sl_toto (sl_toto)
|
||||
- Walter Dal Mut (wdalmut)
|
||||
- Sébastien HOUZÉ
|
||||
- Jingyu Wang
|
||||
- Daniel Espendiller
|
||||
- steveYeah
|
||||
- Samy Dindane (dinduks)
|
||||
- Keri Henare (kerihenare)
|
||||
|
@ -823,10 +831,12 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Tadcka
|
||||
- Beth Binkovitz
|
||||
- Romain Geissler
|
||||
- Tomaz Ahlin
|
||||
- Benjamin Cremer (bcremer)
|
||||
- Marcus Stöhr (dafish)
|
||||
- Emmanuel Vella (emmanuel.vella)
|
||||
- Carsten Nielsen (phreaknerd)
|
||||
- Mathieu Rochette
|
||||
- Jay Severson
|
||||
- René Kerner
|
||||
- Nathaniel Catchpole
|
||||
|
@ -861,6 +871,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Sebastian Ionescu
|
||||
- Thomas Ploch
|
||||
- Simon Neidhold
|
||||
- Valentin VALCIU
|
||||
- Kevin Dew
|
||||
- James Cowgill
|
||||
- Nicolas Schwartz (nicoschwartz)
|
||||
|
@ -911,6 +922,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- 2manypeople
|
||||
- Wing
|
||||
- Thomas Bibb
|
||||
- Matt Farmer
|
||||
- catch
|
||||
- Alexandre Segura
|
||||
- Josef Cech
|
||||
|
@ -936,11 +948,11 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Manatsawin Hanmongkolchai
|
||||
- Gunther Konig
|
||||
- Maciej Schmidt
|
||||
- nuncanada
|
||||
- flack
|
||||
- František Bereň
|
||||
- Christoph Nissle (derstoffel)
|
||||
- Ionel Scutelnicu (ionelscutelnicu)
|
||||
- Johnny Peck (johnnypeck)
|
||||
- Nicolas Tallefourtané (nicolab)
|
||||
- Botond Dani (picur)
|
||||
- Thierry Marianne (thierrymarianne)
|
||||
|
@ -1035,6 +1047,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Florian Pfitzer (marmelatze)
|
||||
- Martin Mayer (martin)
|
||||
- Grzegorz Łukaszewicz (newicz)
|
||||
- Veres Lajos
|
||||
- grifx
|
||||
- Robert Campbell
|
||||
- Matt Lehner
|
||||
|
@ -1095,11 +1108,11 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Kevin Herrera (kherge)
|
||||
- Luis Ramón López López (lrlopez)
|
||||
- Muriel (metalmumu)
|
||||
- Michaël Perrin (michael.perrin)
|
||||
- Michael Pohlers (mick_the_big)
|
||||
- Cayetano Soriano Gallego (neoshadybeat)
|
||||
- Pablo Monterde Perez (plebs)
|
||||
- Jimmy Leger (redpanda)
|
||||
- Pavel Batanov (scaytrase)
|
||||
- Cyrille Jouineau (tuxosaurus)
|
||||
- Yorkie Chadwick (yorkie76)
|
||||
- Yanick Witschi
|
||||
|
@ -1123,6 +1136,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Ismail Asci (ismailasci)
|
||||
- Simon CONSTANS (kosssi)
|
||||
- Kristof Van Cauwenbergh (kristofvc)
|
||||
- Tristan Darricau (nicofuma)
|
||||
- Ramon Henrique Ornelas (ramonornela)
|
||||
- Markus S. (staabm)
|
||||
- Till Klampaeckel (till)
|
||||
|
@ -1180,6 +1194,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Skorney
|
||||
- mieszko4
|
||||
- Neophy7e
|
||||
- bokonet
|
||||
- Arrilot
|
||||
- Markus Staab
|
||||
- Pierre-Louis LAUNAY
|
||||
|
@ -1190,6 +1205,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Abdulkadir N. A.
|
||||
- Yevgen Kovalienia
|
||||
- Sema
|
||||
- Elan Ruusamäe
|
||||
- Thorsten Hallwas
|
||||
- Michael Squires
|
||||
- Norman Soetbeer
|
||||
|
@ -1203,7 +1219,6 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Penny Leach
|
||||
- Richard Trebichavský
|
||||
- g123456789l
|
||||
- Giorgio Premi
|
||||
- oscartv
|
||||
- DanSync
|
||||
- Peter Zwosta
|
||||
|
@ -1261,6 +1276,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- samuel laulhau (lalop)
|
||||
- Laurent Bachelier (laurentb)
|
||||
- Jérôme Parmentier (lctrs)
|
||||
- Florent Viel (luxifer)
|
||||
- Matthieu Moquet (mattketmo)
|
||||
- Moritz Borgmann (mborgmann)
|
||||
- Matt Drollette (mdrollette)
|
||||
|
@ -1279,6 +1295,7 @@ Symfony is the result of the work of many people who made the code better
|
|||
- Rich Sage (richsage)
|
||||
- Ruud Kamphuis (ruudk)
|
||||
- Bart Ruysseveldt (ruyss)
|
||||
- Sascha Dens (saschadens)
|
||||
- scourgen hung (scourgen)
|
||||
- Sebastian Busch (sebu)
|
||||
- André Filipe Gonçalves Neves (seven)
|
||||
|
|
|
@ -479,7 +479,7 @@ class FrameworkExtension extends Extension
|
|||
'sublime' => 'subl://open?url=file://%%f&line=%%l',
|
||||
);
|
||||
|
||||
$container->setParameter('templating.helper.code.file_link_format', ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format') ?: (isset($links[$ide]) ? $links[$ide] : $ide));
|
||||
$container->setParameter('templating.helper.code.file_link_format', str_replace('%', '%%', ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format')) ?: (isset($links[$ide]) ? $links[$ide] : $ide));
|
||||
}
|
||||
|
||||
$container->setParameter('fragment.renderer.hinclude.global_template', $config['hinclude_default_template']);
|
||||
|
|
|
@ -520,7 +520,7 @@ class Command
|
|||
*/
|
||||
public function getHelp()
|
||||
{
|
||||
return $this->help;
|
||||
return $this->help ?: $this->description;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -131,6 +131,8 @@ class CommandTest extends \PHPUnit_Framework_TestCase
|
|||
$ret = $command->setHelp('help1');
|
||||
$this->assertEquals($command, $ret, '->setHelp() implements a fluent interface');
|
||||
$this->assertEquals('help1', $command->getHelp(), '->setHelp() sets the help');
|
||||
$command->setHelp('');
|
||||
$this->assertEquals('description', $command->getHelp(), '->getHelp() fallback to the description');
|
||||
}
|
||||
|
||||
public function testGetProcessedHelp()
|
||||
|
|
|
@ -106,7 +106,7 @@
|
|||
<usage>afoobar</usage>
|
||||
</usages>
|
||||
<description>The foo:bar command</description>
|
||||
<help/>
|
||||
<help>The foo:bar command</help>
|
||||
<arguments/>
|
||||
<options>
|
||||
<option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<usage>afoobar</usage>
|
||||
</usages>
|
||||
<description>The foo:bar command</description>
|
||||
<help/>
|
||||
<help>The foo:bar command</help>
|
||||
<arguments/>
|
||||
<options>
|
||||
<option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
|
||||
|
|
|
@ -29,7 +29,7 @@ class TimeZoneTransformer extends Transformer
|
|||
{
|
||||
$timeZone = substr($dateTime->getTimezone()->getName(), 0, 3);
|
||||
|
||||
if (!in_array($timeZone, array('Etc', 'UTC'))) {
|
||||
if (!in_array($timeZone, array('Etc', 'UTC', 'GMT'))) {
|
||||
throw new NotImplementedException('Time zone different than GMT or UTC is not supported as a formatting output.');
|
||||
}
|
||||
|
||||
|
|
|
@ -811,7 +811,7 @@ class NumberFormatter
|
|||
* @param mixed $value The value to be converted
|
||||
* @param int $type The type to convert. Can be TYPE_DOUBLE (float) or TYPE_INT32 (int)
|
||||
*
|
||||
* @return int|float The converted value
|
||||
* @return int|float|false The converted value
|
||||
*/
|
||||
private function convertValueDataType($value, $type)
|
||||
{
|
||||
|
@ -831,7 +831,7 @@ class NumberFormatter
|
|||
*
|
||||
* @param mixed $value The value to be converted
|
||||
*
|
||||
* @return int The converted value
|
||||
* @return int|false The converted value
|
||||
*/
|
||||
private function getInt32Value($value)
|
||||
{
|
||||
|
@ -847,7 +847,7 @@ class NumberFormatter
|
|||
*
|
||||
* @param mixed $value The value to be converted
|
||||
*
|
||||
* @return int|float The converted value
|
||||
* @return int|float|false The converted value
|
||||
*
|
||||
* @see https://bugs.php.net/bug.php?id=59597 Bug #59597
|
||||
*/
|
||||
|
|
|
@ -385,14 +385,21 @@ abstract class AbstractIntlDateFormatterTest extends \PHPUnit_Framework_TestCase
|
|||
);
|
||||
}
|
||||
|
||||
public function testFormatWithDateTimeZone()
|
||||
public function testFormatWithDateTimeZoneGmt()
|
||||
{
|
||||
if (PHP_VERSION_ID < 50500) {
|
||||
$this->markTestSkipped('Only in PHP 5.5+ IntlDateFormatter allows to use DateTimeZone objects.');
|
||||
}
|
||||
|
||||
if (defined('HHVM_VERSION_ID')) {
|
||||
$this->markTestSkipped('This test cannot work on HHVM. See https://github.com/facebook/hhvm/issues/5875 for the issue.');
|
||||
$formatter = $this->getDateFormatter('en', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, new \DateTimeZone('GMT'), IntlDateFormatter::GREGORIAN, 'zzzz');
|
||||
|
||||
$this->assertEquals('GMT', $formatter->format(0));
|
||||
}
|
||||
|
||||
public function testFormatWithDateTimeZoneGmtOffset()
|
||||
{
|
||||
if (defined('HHVM_VERSION_ID') || PHP_VERSION_ID <= 50509) {
|
||||
$this->markTestSkipped('DateTimeZone GMT offsets are supported since 5.5.10. See https://github.com/facebook/hhvm/issues/5875 for HHVM.');
|
||||
}
|
||||
|
||||
$formatter = $this->getDateFormatter('en', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, new \DateTimeZone('GMT+03:00'), IntlDateFormatter::GREGORIAN, 'zzzz');
|
||||
|
|
|
@ -190,6 +190,13 @@ class MessageCatalogue implements MessageCatalogueInterface, MetadataAwareInterf
|
|||
public function addFallbackCatalogue(MessageCatalogueInterface $catalogue)
|
||||
{
|
||||
// detect circular references
|
||||
$c = $catalogue;
|
||||
while ($c = $c->getFallbackCatalogue()) {
|
||||
if ($c->getLocale() === $this->getLocale()) {
|
||||
throw new \LogicException(sprintf('Circular reference detected when adding a fallback catalogue for locale "%s".', $catalogue->getLocale()));
|
||||
}
|
||||
}
|
||||
|
||||
$c = $this;
|
||||
do {
|
||||
if ($c->getLocale() === $catalogue->getLocale()) {
|
||||
|
|
|
@ -127,7 +127,7 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
|
|||
/**
|
||||
* @expectedException \LogicException
|
||||
*/
|
||||
public function testAddFallbackCatalogueWithCircularReference()
|
||||
public function testAddFallbackCatalogueWithParentCircularReference()
|
||||
{
|
||||
$main = new MessageCatalogue('en_US');
|
||||
$fallback = new MessageCatalogue('fr_FR');
|
||||
|
@ -136,6 +136,20 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
|
|||
$main->addFallbackCatalogue($fallback);
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \LogicException
|
||||
*/
|
||||
public function testAddFallbackCatalogueWithFallbackCircularReference()
|
||||
{
|
||||
$fr = new MessageCatalogue('fr');
|
||||
$en = new MessageCatalogue('en');
|
||||
$es = new MessageCatalogue('es');
|
||||
|
||||
$fr->addFallbackCatalogue($en);
|
||||
$es->addFallbackCatalogue($en);
|
||||
$en->addFallbackCatalogue($fr);
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \LogicException
|
||||
*/
|
||||
|
@ -178,10 +192,10 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
|
|||
$this->assertEquals(array(), $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 is array');
|
||||
|
||||
$catalogue->deleteMetadata('key2', 'messages');
|
||||
$this->assertEquals(null, $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 should is deleted.');
|
||||
$this->assertNull($catalogue->getMetadata('key2', 'messages'), 'Metadata key2 should is deleted.');
|
||||
|
||||
$catalogue->deleteMetadata('key2', 'domain');
|
||||
$this->assertEquals(null, $catalogue->getMetadata('key2', 'domain'), 'Metadata key2 should is deleted.');
|
||||
$this->assertNull($catalogue->getMetadata('key2', 'domain'), 'Metadata key2 should is deleted.');
|
||||
}
|
||||
|
||||
public function testMetadataMerge()
|
||||
|
|
|
@ -449,8 +449,9 @@ EOF
|
|||
$this->doLoadCatalogue($fallback);
|
||||
}
|
||||
|
||||
$current->addFallbackCatalogue($this->catalogues[$fallback]);
|
||||
$current = $this->catalogues[$fallback];
|
||||
$fallbackCatalogue = new MessageCatalogue($fallback, $this->catalogues[$fallback]->all());
|
||||
$current->addFallbackCatalogue($fallbackCatalogue);
|
||||
$current = $fallbackCatalogue;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Reference in New Issue