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:
Nicolas Grekas 2015-09-03 13:42:45 +02:00
commit 22b17b2c93
14 changed files with 123 additions and 40 deletions

View File

@ -14,9 +14,12 @@ matrix:
- php: 5.4 - php: 5.4
- php: 5.5 - php: 5.5
- php: 5.6 - php: 5.6
env: deps=low
- php: 7.0
env: deps=high env: deps=high
- php: 7
- php: 5.6
env: deps=low
allow_failures:
- php: 7
fast_finish: true fast_finish: true
services: mongodb services: mongodb

View File

@ -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 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 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) * 2.3.31 (2015-07-13)
* bug #15248 Added 'default' color (jaytaph) * bug #15248 Added 'default' color (jaytaph)

View File

@ -14,8 +14,8 @@ Symfony is the result of the work of many people who made the code better
- Kris Wallsmith (kriswallsmith) - Kris Wallsmith (kriswallsmith)
- Christophe Coevoet (stof) - Christophe Coevoet (stof)
- Jakub Zalas (jakubzalas) - Jakub Zalas (jakubzalas)
- Pascal Borreli (pborreli)
- Christian Flothmann (xabbuh) - Christian Flothmann (xabbuh)
- Pascal Borreli (pborreli)
- Hugo Hamon (hhamon) - Hugo Hamon (hhamon)
- Joseph Bielawski (stloyd) - Joseph Bielawski (stloyd)
- Karma Dordrak (drak) - 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) - Jean-François Simon (jfsimon)
- Benjamin Eberlei (beberlei) - Benjamin Eberlei (beberlei)
- Igor Wiedler (igorw) - Igor Wiedler (igorw)
- Martin Hasoň (hason)
- Abdellatif Ait boudad (aitboudad) - Abdellatif Ait boudad (aitboudad)
- Martin Hasoň (hason)
- Eriksen Costa (eriksencosta) - Eriksen Costa (eriksencosta)
- Grégoire Pineau (lyrixx) - Grégoire Pineau (lyrixx)
- Wouter De Jong (wouterj) - Wouter De Jong (wouterj)
- Jonathan Wage (jwage) - Jonathan Wage (jwage)
- Javier Eguiluz (javier.eguiluz)
- Kévin Dunglas (dunglas)
- Alexandre Salomé (alexandresalome) - Alexandre Salomé (alexandresalome)
- William Durand (couac) - William Durand (couac)
- Kévin Dunglas (dunglas)
- ornicar - ornicar
- stealth35 (stealth35) - stealth35 (stealth35)
- Alexander Mols (asm89) - Alexander Mols (asm89)
@ -84,43 +85,42 @@ Symfony is the result of the work of many people who made the code better
- excelwebzone - excelwebzone
- Jacob Dreesen (jdreesen) - Jacob Dreesen (jdreesen)
- Matthias Pigulla (mpdude) - Matthias Pigulla (mpdude)
- Javier Eguiluz (javier.eguiluz)
- Fabien Pennequin (fabienpennequin) - Fabien Pennequin (fabienpennequin)
- Peter Rehm (rpet) - Peter Rehm (rpet)
- Peter Kokot (maastermedia) - Peter Kokot (maastermedia)
- Gordon Franke (gimler) - Gordon Franke (gimler)
- Robert Schönthal (digitalkaoz) - Robert Schönthal (digitalkaoz)
- Jérémy DERUSSÉ (jderusse)
- Dariusz Ruminski - Dariusz Ruminski
- Michal Piotrowski (eventhorizon) - Michal Piotrowski (eventhorizon)
- Stefano Sala (stefano.sala) - Stefano Sala (stefano.sala)
- David Buchmann (dbu)
- Juti Noppornpitak (shiroyuki) - Juti Noppornpitak (shiroyuki)
- Sebastian Hörl (blogsh) - Sebastian Hörl (blogsh)
- Daniel Gomes (danielcsgomes) - Daniel Gomes (danielcsgomes)
- Hidenori Goto (hidenorigoto) - Hidenori Goto (hidenorigoto)
- David Buchmann (dbu) - Alexander Schwenn (xelaris)
- Guilherme Blanco (guilhermeblanco) - Guilherme Blanco (guilhermeblanco)
- Jérémy DERUSSÉ (jderusse)
- Pablo Godel (pgodel) - Pablo Godel (pgodel)
- Eric GELOEN (gelo) - Eric GELOEN (gelo)
- Vladimir Reznichenko (kalessil)
- Jérémie Augustin (jaugustin) - Jérémie Augustin (jaugustin)
- Alexander Schwenn (xelaris) - Issei Murasawa (issei_m)
- Rafael Dohms (rdohms) - Rafael Dohms (rdohms)
- Arnaud Kleinpeter (nanocom) - Arnaud Kleinpeter (nanocom)
- Iltar van der Berg (kjarli)
- Joshua Thijssen - Joshua Thijssen
- Vladimir Reznichenko (kalessil)
- Tigran Azatyan (tigranazatyan) - Tigran Azatyan (tigranazatyan)
- Issei Murasawa (issei_m) - Sebastiaan Stok (sstok)
- Richard Shank (iampersistent) - Richard Shank (iampersistent)
- Clemens Tolboom - Clemens Tolboom
- Helmer Aaviksoo - Helmer Aaviksoo
- Sebastiaan Stok (sstok)
- Hiromi Hishida (77web) - Hiromi Hishida (77web)
- Matthieu Ouellette-Vachon (maoueh) - Matthieu Ouellette-Vachon (maoueh)
- Michał Pipa (michal.pipa) - Michał Pipa (michal.pipa)
- Amal Raghav (kertz) - Amal Raghav (kertz)
- Jonathan Ingram (jonathaningram) - Jonathan Ingram (jonathaningram)
- Artur Kotyrba - Artur Kotyrba
- Iltar van der Berg
- Rouven Weßling (realityking) - Rouven Weßling (realityking)
- Andréia Bohner (andreia) - Andréia Bohner (andreia)
- Dmitrii Chekaliuk (lazyhammer) - Dmitrii Chekaliuk (lazyhammer)
@ -146,6 +146,7 @@ Symfony is the result of the work of many people who made the code better
- fivestar - fivestar
- Dominique Bongiraud - Dominique Bongiraud
- Leszek Prabucki (l3l0) - Leszek Prabucki (l3l0)
- Alexander M. Turek (derrabus)
- François Zaninotto (fzaninotto) - François Zaninotto (fzaninotto)
- Dustin Whittle (dustinwhittle) - Dustin Whittle (dustinwhittle)
- jeff - jeff
@ -164,7 +165,6 @@ Symfony is the result of the work of many people who made the code better
- Francois Zaninotto - Francois Zaninotto
- Alexander Kotynia (olden) - Alexander Kotynia (olden)
- Daniel Tschinder - Daniel Tschinder
- Alexander M. Turek (derrabus)
- Elnur Abdurrakhimov (elnur) - Elnur Abdurrakhimov (elnur)
- John Kary (johnkary) - John Kary (johnkary)
- Manuel Reinhard (sprain) - 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) - Robert Kiss (kepten)
- Ruben Gonzalez (rubenrua) - Ruben Gonzalez (rubenrua)
- Kim Hemsø Rasmussen (kimhemsoe) - Kim Hemsø Rasmussen (kimhemsoe)
- Diego Saint Esteben (dosten)
- Florian Lonqueu-Brochard (florianlb) - Florian Lonqueu-Brochard (florianlb)
- Tom Van Looy (tvlooy) - Tom Van Looy (tvlooy)
- Wouter Van Hecke - 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) - Andrew Moore (finewolf)
- Bertrand Zuchuat (garfield-fr) - Bertrand Zuchuat (garfield-fr)
- Gabor Toth (tgabi333) - Gabor Toth (tgabi333)
- Grégoire Paris (greg0ire)
- Alex Pott - Alex Pott
- realmfoo - realmfoo
- Thomas Tourlourat (armetiz) - 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) - Thomas Schulz (king2500)
- Marco Pivetta (ocramius) - Marco Pivetta (ocramius)
- Ricard Clau (ricardclau) - Ricard Clau (ricardclau)
- Lorenz Schori
- Giorgio Premi
- Erin Millard - Erin Millard
- Matthew Lewinski (lewinski) - Matthew Lewinski (lewinski)
- Marcos Sánchez
- alquerci - alquerci
- Francesco Levorato - Francesco Levorato
- Vitaliy Zakharov (zakharovvi) - 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) - Kirill chEbba Chebunin (chebba)
- Greg Thornton (xdissent) - Greg Thornton (xdissent)
- Baptiste Clavié (talus) - Baptiste Clavié (talus)
- Grégoire Paris (greg0ire)
- Costin Bereveanu (schniper) - Costin Bereveanu (schniper)
- Loïc Chardonnet (gnusat) - Loïc Chardonnet (gnusat)
- Marek Kalnik (marekkalnik) - Marek Kalnik (marekkalnik)
- Vyacheslav Salakhutdinov (megazoll) - Vyacheslav Salakhutdinov (megazoll)
- Hassan Amouhzi - Hassan Amouhzi
- Tamas Szijarto - Tamas Szijarto
- Michaël Perrin (michael.perrin)
- Pavel Volokitin (pvolok) - Pavel Volokitin (pvolok)
- Endre Fejes - Endre Fejes
- Tobias Naumann (tna) - Tobias Naumann (tna)
@ -297,8 +302,8 @@ Symfony is the result of the work of many people who made the code better
- Brian King - Brian King
- Michel Salib (michelsalib) - Michel Salib (michelsalib)
- geoffrey - geoffrey
- Lorenz Schori
- Jeanmonod David (jeanmonod) - Jeanmonod David (jeanmonod)
- Thomas Lallement (raziel057)
- Jan Schumann - Jan Schumann
- Niklas Fiekas - Niklas Fiekas
- lancergr - lancergr
@ -370,6 +375,7 @@ Symfony is the result of the work of many people who made the code better
- Florian Rey (nervo) - Florian Rey (nervo)
- Rodrigo Borrego Bernabé (rodrigobb) - Rodrigo Borrego Bernabé (rodrigobb)
- Denis Gorbachev (starfall) - Denis Gorbachev (starfall)
- Titouan Galopin (tgalopin)
- Steven Surowiec - Steven Surowiec
- Kevin Saliou (kbsali) - Kevin Saliou (kbsali)
- Daniel Tschinder - Daniel Tschinder
@ -393,7 +399,6 @@ Symfony is the result of the work of many people who made the code better
- Mantas Var (mvar) - Mantas Var (mvar)
- Sebastian Krebs - Sebastian Krebs
- Christopher Davis (chrisguitarguy) - Christopher Davis (chrisguitarguy)
- Thomas Lallement (raziel057)
- alcaeus - alcaeus
- vitaliytv - vitaliytv
- Markus Bachmann (baachi) - 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) - Simon Schick (simonsimcity)
- redstar504 - redstar504
- Hossein Bukhamsin - Hossein Bukhamsin
- origaminal
- Paweł Wacławczyk (pwc) - Paweł Wacławczyk (pwc)
- Oleg Zinchenko (cystbear) - Oleg Zinchenko (cystbear)
- Johannes Klauss (cloppy) - Johannes Klauss (cloppy)
@ -538,6 +544,7 @@ Symfony is the result of the work of many people who made the code better
- Tony Malzhacker - Tony Malzhacker
- Cyril Quintin (cyqui) - Cyril Quintin (cyqui)
- Gerard van Helden (drm) - Gerard van Helden (drm)
- Johnny Peck (johnnypeck)
- David Romaní - David Romaní
- Patrick Allaert - Patrick Allaert
- Gustavo Falco (gfalco) - Gustavo Falco (gfalco)
@ -545,6 +552,7 @@ Symfony is the result of the work of many people who made the code better
- Aleksey Podskrebyshev - Aleksey Podskrebyshev
- David Marín Carreño (davefx) - David Marín Carreño (davefx)
- Jörn Lang (j.lang) - Jörn Lang (j.lang)
- Leo Feyer
- mwsaz - mwsaz
- Benoît Bourgeois - Benoît Bourgeois
- corphi - corphi
@ -562,7 +570,6 @@ Symfony is the result of the work of many people who made the code better
- Christian Morgan - Christian Morgan
- Alexander Miehe (engerim) - Alexander Miehe (engerim)
- Morgan Auchede (mauchede) - Morgan Auchede (mauchede)
- Titouan Galopin (tgalopin)
- Don Pinkster - Don Pinkster
- Maksim Muruev - Maksim Muruev
- Emil Einarsson - Emil Einarsson
@ -595,6 +602,7 @@ Symfony is the result of the work of many people who made the code better
- Reece Fowell (reecefowell) - Reece Fowell (reecefowell)
- stefan.r - stefan.r
- Matthieu Napoli (mnapoli) - Matthieu Napoli (mnapoli)
- Alexandru Furculita (afurculita)
- Ben Ramsey (ramsey) - Ben Ramsey (ramsey)
- Christian Jul Jensen - Christian Jul Jensen
- The Whole Life to Learn - 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 - Sander Marechal
- Radosław Benkel - Radosław Benkel
- Gennady Telegin (gtelegin) - Gennady Telegin (gtelegin)
- Marcos Sánchez
- ttomor - ttomor
- Mei Gwilym (meigwilym) - Mei Gwilym (meigwilym)
- Michael H. Arieli (excelwebzone) - 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) - Per Sandström (per)
- Goran Juric - Goran Juric
- Laurent Ghirardotti (laurentg) - Laurent Ghirardotti (laurentg)
- Nicolas Macherey
- Jan Rosier (rosier) - Jan Rosier (rosier)
- Lin Clark - Lin Clark
- Jeremy David (jeremy.david) - 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) - Jochen Bayer (jocl)
- Jeremy Bush - Jeremy Bush
- wizhippo - wizhippo
- Diego Saint Esteben (dosten)
- rpg600 - rpg600
- Péter Buri (burci) - Péter Buri (burci)
- Davide Borsatto (davide.borsatto) - 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 - Jakub Kulhan
- Mo Di (modi) - Mo Di (modi)
- Jeroen van den Enden (stoefke) - Jeroen van den Enden (stoefke)
- origaminal
- Quique Porta (quiqueporta) - Quique Porta (quiqueporta)
- Tomasz Szymczyk (karion) - Tomasz Szymczyk (karion)
- ConneXNL - ConneXNL
@ -782,8 +788,10 @@ Symfony is the result of the work of many people who made the code better
- Adrien Gallou (agallou) - Adrien Gallou (agallou)
- Karol Sójko (karolsojko) - Karol Sójko (karolsojko)
- sl_toto (sl_toto) - sl_toto (sl_toto)
- Walter Dal Mut (wdalmut)
- Sébastien HOUZÉ - Sébastien HOUZÉ
- Jingyu Wang - Jingyu Wang
- Daniel Espendiller
- steveYeah - steveYeah
- Samy Dindane (dinduks) - Samy Dindane (dinduks)
- Keri Henare (kerihenare) - Keri Henare (kerihenare)
@ -823,10 +831,12 @@ Symfony is the result of the work of many people who made the code better
- Tadcka - Tadcka
- Beth Binkovitz - Beth Binkovitz
- Romain Geissler - Romain Geissler
- Tomaz Ahlin
- Benjamin Cremer (bcremer) - Benjamin Cremer (bcremer)
- Marcus Stöhr (dafish) - Marcus Stöhr (dafish)
- Emmanuel Vella (emmanuel.vella) - Emmanuel Vella (emmanuel.vella)
- Carsten Nielsen (phreaknerd) - Carsten Nielsen (phreaknerd)
- Mathieu Rochette
- Jay Severson - Jay Severson
- René Kerner - René Kerner
- Nathaniel Catchpole - Nathaniel Catchpole
@ -861,6 +871,7 @@ Symfony is the result of the work of many people who made the code better
- Sebastian Ionescu - Sebastian Ionescu
- Thomas Ploch - Thomas Ploch
- Simon Neidhold - Simon Neidhold
- Valentin VALCIU
- Kevin Dew - Kevin Dew
- James Cowgill - James Cowgill
- Nicolas Schwartz (nicoschwartz) - Nicolas Schwartz (nicoschwartz)
@ -911,6 +922,7 @@ Symfony is the result of the work of many people who made the code better
- 2manypeople - 2manypeople
- Wing - Wing
- Thomas Bibb - Thomas Bibb
- Matt Farmer
- catch - catch
- Alexandre Segura - Alexandre Segura
- Josef Cech - Josef Cech
@ -936,11 +948,11 @@ Symfony is the result of the work of many people who made the code better
- Manatsawin Hanmongkolchai - Manatsawin Hanmongkolchai
- Gunther Konig - Gunther Konig
- Maciej Schmidt - Maciej Schmidt
- nuncanada
- flack - flack
- František Bereň - František Bereň
- Christoph Nissle (derstoffel) - Christoph Nissle (derstoffel)
- Ionel Scutelnicu (ionelscutelnicu) - Ionel Scutelnicu (ionelscutelnicu)
- Johnny Peck (johnnypeck)
- Nicolas Tallefourtané (nicolab) - Nicolas Tallefourtané (nicolab)
- Botond Dani (picur) - Botond Dani (picur)
- Thierry Marianne (thierrymarianne) - 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) - Florian Pfitzer (marmelatze)
- Martin Mayer (martin) - Martin Mayer (martin)
- Grzegorz Łukaszewicz (newicz) - Grzegorz Łukaszewicz (newicz)
- Veres Lajos
- grifx - grifx
- Robert Campbell - Robert Campbell
- Matt Lehner - Matt Lehner
@ -1095,11 +1108,11 @@ Symfony is the result of the work of many people who made the code better
- Kevin Herrera (kherge) - Kevin Herrera (kherge)
- Luis Ramón López López (lrlopez) - Luis Ramón López López (lrlopez)
- Muriel (metalmumu) - Muriel (metalmumu)
- Michaël Perrin (michael.perrin)
- Michael Pohlers (mick_the_big) - Michael Pohlers (mick_the_big)
- Cayetano Soriano Gallego (neoshadybeat) - Cayetano Soriano Gallego (neoshadybeat)
- Pablo Monterde Perez (plebs) - Pablo Monterde Perez (plebs)
- Jimmy Leger (redpanda) - Jimmy Leger (redpanda)
- Pavel Batanov (scaytrase)
- Cyrille Jouineau (tuxosaurus) - Cyrille Jouineau (tuxosaurus)
- Yorkie Chadwick (yorkie76) - Yorkie Chadwick (yorkie76)
- Yanick Witschi - Yanick Witschi
@ -1123,6 +1136,7 @@ Symfony is the result of the work of many people who made the code better
- Ismail Asci (ismailasci) - Ismail Asci (ismailasci)
- Simon CONSTANS (kosssi) - Simon CONSTANS (kosssi)
- Kristof Van Cauwenbergh (kristofvc) - Kristof Van Cauwenbergh (kristofvc)
- Tristan Darricau (nicofuma)
- Ramon Henrique Ornelas (ramonornela) - Ramon Henrique Ornelas (ramonornela)
- Markus S. (staabm) - Markus S. (staabm)
- Till Klampaeckel (till) - Till Klampaeckel (till)
@ -1180,6 +1194,7 @@ Symfony is the result of the work of many people who made the code better
- Skorney - Skorney
- mieszko4 - mieszko4
- Neophy7e - Neophy7e
- bokonet
- Arrilot - Arrilot
- Markus Staab - Markus Staab
- Pierre-Louis LAUNAY - 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. - Abdulkadir N. A.
- Yevgen Kovalienia - Yevgen Kovalienia
- Sema - Sema
- Elan Ruusamäe
- Thorsten Hallwas - Thorsten Hallwas
- Michael Squires - Michael Squires
- Norman Soetbeer - Norman Soetbeer
@ -1203,7 +1219,6 @@ Symfony is the result of the work of many people who made the code better
- Penny Leach - Penny Leach
- Richard Trebichavský - Richard Trebichavský
- g123456789l - g123456789l
- Giorgio Premi
- oscartv - oscartv
- DanSync - DanSync
- Peter Zwosta - Peter Zwosta
@ -1261,6 +1276,7 @@ Symfony is the result of the work of many people who made the code better
- samuel laulhau (lalop) - samuel laulhau (lalop)
- Laurent Bachelier (laurentb) - Laurent Bachelier (laurentb)
- Jérôme Parmentier (lctrs) - Jérôme Parmentier (lctrs)
- Florent Viel (luxifer)
- Matthieu Moquet (mattketmo) - Matthieu Moquet (mattketmo)
- Moritz Borgmann (mborgmann) - Moritz Borgmann (mborgmann)
- Matt Drollette (mdrollette) - 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) - Rich Sage (richsage)
- Ruud Kamphuis (ruudk) - Ruud Kamphuis (ruudk)
- Bart Ruysseveldt (ruyss) - Bart Ruysseveldt (ruyss)
- Sascha Dens (saschadens)
- scourgen hung (scourgen) - scourgen hung (scourgen)
- Sebastian Busch (sebu) - Sebastian Busch (sebu)
- André Filipe Gonçalves Neves (seven) - André Filipe Gonçalves Neves (seven)

View File

@ -479,7 +479,7 @@ class FrameworkExtension extends Extension
'sublime' => 'subl://open?url=file://%%f&line=%%l', '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']); $container->setParameter('fragment.renderer.hinclude.global_template', $config['hinclude_default_template']);

View File

@ -520,7 +520,7 @@ class Command
*/ */
public function getHelp() public function getHelp()
{ {
return $this->help; return $this->help ?: $this->description;
} }
/** /**

View File

@ -131,6 +131,8 @@ class CommandTest extends \PHPUnit_Framework_TestCase
$ret = $command->setHelp('help1'); $ret = $command->setHelp('help1');
$this->assertEquals($command, $ret, '->setHelp() implements a fluent interface'); $this->assertEquals($command, $ret, '->setHelp() implements a fluent interface');
$this->assertEquals('help1', $command->getHelp(), '->setHelp() sets the help'); $this->assertEquals('help1', $command->getHelp(), '->setHelp() sets the help');
$command->setHelp('');
$this->assertEquals('description', $command->getHelp(), '->getHelp() fallback to the description');
} }
public function testGetProcessedHelp() public function testGetProcessedHelp()

View File

@ -106,7 +106,7 @@
<usage>afoobar</usage> <usage>afoobar</usage>
</usages> </usages>
<description>The foo:bar command</description> <description>The foo:bar command</description>
<help/> <help>The foo:bar command</help>
<arguments/> <arguments/>
<options> <options>
<option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0"> <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">

View File

@ -7,7 +7,7 @@
<usage>afoobar</usage> <usage>afoobar</usage>
</usages> </usages>
<description>The foo:bar command</description> <description>The foo:bar command</description>
<help/> <help>The foo:bar command</help>
<arguments/> <arguments/>
<options> <options>
<option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0"> <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">

View File

@ -29,7 +29,7 @@ class TimeZoneTransformer extends Transformer
{ {
$timeZone = substr($dateTime->getTimezone()->getName(), 0, 3); $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.'); throw new NotImplementedException('Time zone different than GMT or UTC is not supported as a formatting output.');
} }

View File

@ -811,7 +811,7 @@ class NumberFormatter
* @param mixed $value The value to be converted * @param mixed $value The value to be converted
* @param int $type The type to convert. Can be TYPE_DOUBLE (float) or TYPE_INT32 (int) * @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) private function convertValueDataType($value, $type)
{ {
@ -831,7 +831,7 @@ class NumberFormatter
* *
* @param mixed $value The value to be converted * @param mixed $value The value to be converted
* *
* @return int The converted value * @return int|false The converted value
*/ */
private function getInt32Value($value) private function getInt32Value($value)
{ {
@ -847,7 +847,7 @@ class NumberFormatter
* *
* @param mixed $value The value to be converted * @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 * @see https://bugs.php.net/bug.php?id=59597 Bug #59597
*/ */

View File

@ -385,14 +385,21 @@ abstract class AbstractIntlDateFormatterTest extends \PHPUnit_Framework_TestCase
); );
} }
public function testFormatWithDateTimeZone() public function testFormatWithDateTimeZoneGmt()
{ {
if (PHP_VERSION_ID < 50500) { if (PHP_VERSION_ID < 50500) {
$this->markTestSkipped('Only in PHP 5.5+ IntlDateFormatter allows to use DateTimeZone objects.'); $this->markTestSkipped('Only in PHP 5.5+ IntlDateFormatter allows to use DateTimeZone objects.');
} }
if (defined('HHVM_VERSION_ID')) { $formatter = $this->getDateFormatter('en', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, new \DateTimeZone('GMT'), IntlDateFormatter::GREGORIAN, 'zzzz');
$this->markTestSkipped('This test cannot work on HHVM. See https://github.com/facebook/hhvm/issues/5875 for the issue.');
$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'); $formatter = $this->getDateFormatter('en', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, new \DateTimeZone('GMT+03:00'), IntlDateFormatter::GREGORIAN, 'zzzz');

View File

@ -190,6 +190,13 @@ class MessageCatalogue implements MessageCatalogueInterface, MetadataAwareInterf
public function addFallbackCatalogue(MessageCatalogueInterface $catalogue) public function addFallbackCatalogue(MessageCatalogueInterface $catalogue)
{ {
// detect circular references // 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; $c = $this;
do { do {
if ($c->getLocale() === $catalogue->getLocale()) { if ($c->getLocale() === $catalogue->getLocale()) {

View File

@ -127,7 +127,7 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
/** /**
* @expectedException \LogicException * @expectedException \LogicException
*/ */
public function testAddFallbackCatalogueWithCircularReference() public function testAddFallbackCatalogueWithParentCircularReference()
{ {
$main = new MessageCatalogue('en_US'); $main = new MessageCatalogue('en_US');
$fallback = new MessageCatalogue('fr_FR'); $fallback = new MessageCatalogue('fr_FR');
@ -136,6 +136,20 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
$main->addFallbackCatalogue($fallback); $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 * @expectedException \LogicException
*/ */
@ -178,10 +192,10 @@ class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
$this->assertEquals(array(), $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 is array'); $this->assertEquals(array(), $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 is array');
$catalogue->deleteMetadata('key2', 'messages'); $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'); $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() public function testMetadataMerge()

View File

@ -449,8 +449,9 @@ EOF
$this->doLoadCatalogue($fallback); $this->doLoadCatalogue($fallback);
} }
$current->addFallbackCatalogue($this->catalogues[$fallback]); $fallbackCatalogue = new MessageCatalogue($fallback, $this->catalogues[$fallback]->all());
$current = $this->catalogues[$fallback]; $current->addFallbackCatalogue($fallbackCatalogue);
$current = $fallbackCatalogue;
} }
} }