Merge branch '4.4'

* 4.4:
  [Mailer] fixed tests on Windows
  [PhpUnitBridge] fix tests
  [Mailer] fixed error message when connecting to a stream raises an error before connect()
  [Mailer] fixed timeout type hint
  improve error messages in the event dispatcher
  [Security/Core] work around sodium_compat issue
  bumped Symfony version to 4.3.3
  updated VERSION for 4.3.2
  updated CHANGELOG for 4.3.2
  bumped Symfony version to 4.2.11
  updated VERSION for 4.2.10
  updated CHANGELOG for 4.2.10
  bumped Symfony version to 3.4.30
  updated VERSION for 3.4.29
  update CONTRIBUTORS for 3.4.29
  updated CHANGELOG for 3.4.29
  Fixed type annotation.
This commit is contained in:
Nicolas Grekas 2019-06-27 18:53:23 +02:00
commit 7f7c142a3b
22 changed files with 259 additions and 48 deletions

View File

@ -7,6 +7,41 @@ in 4.2 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/v4.2.0...v4.2.1 To get the diff between two versions, go to https://github.com/symfony/symfony/compare/v4.2.0...v4.2.1
* 4.2.10 (2019-06-26)
* bug #31972 Add missing rendering of form help block. (alexsegura)
* bug #32137 [HttpFoundation] fix accessing session bags (xabbuh)
* bug #32164 [EventDispatcher] collect called listeners information only once (xabbuh)
* bug #32173 [FrameworkBundle] Fix calling Client::getProfile() before sending a request (dunglas)
* bug #32163 [DoctrineBridge] Fix type error (norkunas)
* bug #32170 [Security/Core] Don't use ParagonIE_Sodium_Compat (nicolas-grekas)
* bug #32094 [Validator] Use LogicException for missing Property Access Component in comparison constraints (Lctrs)
* bug #32123 [Form] fix translation domain (xabbuh)
* bug #32116 [FrameworkBundle] tag the FileType service as a form type (xabbuh)
* bug #32090 [Debug] workaround BC break in PHP 7.3 (nicolas-grekas)
* bug #32076 [Lock] Fix PDO prune not called (jderusse)
* bug #32071 Fix expired lock not cleaned (jderusse)
* bug #32057 [HttpFoundation] Fix SA/phpdoc JsonResponse (ro0NL)
* bug #32025 SimpleCacheAdapter fails to cache any item if a namespace is used (moufmouf)
* bug #32037 [Form] validate composite constraints in all groups (xabbuh)
* bug #32007 [Serializer] Handle true and false appropriately in CSV encoder (battye)
* bug #32000 [Routing] fix absolute url generation when scheme is not known (Tobion)
* bug #32024 [VarDumper] fix dumping objects that implement __debugInfo() (nicolas-grekas)
* bug #31962 Fix reporting unsilenced deprecations from insulated tests (nicolas-grekas)
* bug #31925 [Form] fix usage of legacy TranslatorInterface (nicolas-grekas)
* bug #31908 [Validator] fix deprecation layer of ValidatorBuilder (nicolas-grekas)
* bug #31894 Fix wrong requirements for ocramius/proxy-manager in root composer.json (henrikvolmer)
* bug #31865 [Form] Fix wrong DateTime on outdated ICU library (aweelex)
* bug #31879 [Cache] Pass arg to get callback everywhere (fancyweb)
* bug #31863 [HttpFoundation] Fixed case-sensitive handling of cache-control header in RedirectResponse constructor (Ivo)
* bug #31869 Fix json-encoding when JSON_THROW_ON_ERROR is used (nicolas-grekas)
* bug #31868 [HttpKernel] Fix handling non-catchable fatal errors (nicolas-grekas)
* bug #31860 [HttpFoundation] work around PHP 7.3 bug related to json_encode() (nicolas-grekas)
* bug #31407 [Security] added support for updated "distinguished name" format in x509 authentication (Robert Kopera)
* bug #31786 [Translation] Fixed case sensitivity of lint:xliff command (javiereguiluz)
* bug #31757 [DomCrawler] Fix type error with null Form::$currentUri (chalasr)
* bug #31654 [HttpFoundation] Do not set X-Accel-Redirect for paths outside of X-Accel-Mapping (vilius-g)
* 4.2.9 (2019-05-28) * 4.2.9 (2019-05-28)
* bug #31584 [Workflow] Do not trigger extra guards (lyrixx) * bug #31584 [Workflow] Do not trigger extra guards (lyrixx)

View File

@ -7,6 +7,69 @@ in 4.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/v4.3.0...v4.3.1 To get the diff between two versions, go to https://github.com/symfony/symfony/compare/v4.3.0...v4.3.1
* 4.3.2 (2019-06-26)
* bug #31954 [PhpunitBridge] Read environment variable from superglobals (greg0ire)
* bug #32131 [Mailgun Mailer] fixed issue when using html body (alOneh)
* bug #31730 [PhpUnitBridge] More accurate grouping (greg0ire)
* bug #31966 [Messenger] Doctrine Connection find and findAll now correctly decode headers (TimoBakx)
* bug #31972 Add missing rendering of form help block. (alexsegura)
* bug #32141 [HttpClient] fix dealing with 1xx informational responses (nicolas-grekas)
* bug #32138 [Filesystem] fix mirroring directory into parent directory (xabbuh)
* bug #32137 [HttpFoundation] fix accessing session bags (xabbuh)
* bug #32147 [HttpClient] fix timing measurements with NativeHttpClient (nicolas-grekas)
* bug #32165 revert #30525 due to performance penalty (bendavies)
* bug #32164 [EventDispatcher] collect called listeners information only once (xabbuh)
* bug #32173 [FrameworkBundle] Fix calling Client::getProfile() before sending a request (dunglas)
* bug #32163 [DoctrineBridge] Fix type error (norkunas)
* bug #32154 [Messenger] fix retrying handlers using DoctrineTransactionMiddleware (Tobion)
* bug #32169 [Security/Core] require libsodium >= 1.0.14 (nicolas-grekas)
* bug #32170 [Security/Core] Don't use ParagonIE_Sodium_Compat (nicolas-grekas)
* bug #32156 [Workflow] re-add workflow.definition tag to workflow services (nikossvnk)
* bug #32053 [Messenger] No need for retry to require SentStamp (Tobion)
* bug #32083 [HttpClient] fixing passing debug info to progress callback (nicolas-grekas)
* bug #32129 [DebugBundle] fix register ReflectionCaster::unsetClosureFileInfo caster in var cloner service (alekitto)
* bug #32027 [Messenger] Remove DispatchAfterCurrentBusStamp when message is put on internal queue (Nyholm)
* bug #32125 [Form] accept floats for input="string" in NumberType (xabbuh)
* bug #32094 [Validator] Use LogicException for missing Property Access Component in comparison constraints (Lctrs)
* bug #32136 [FrameworkBundle] sync `require-dev` and `conflict` constraints (xabbuh)
* bug #32123 [Form] fix translation domain (xabbuh)
* bug #32115 [SecurityBundle] don't validate IP addresses from env var placeholders (xabbuh)
* bug #32116 [FrameworkBundle] tag the FileType service as a form type (xabbuh)
* bug #32109 [Messenger] fix delay exchange recreation after disconnect (Tobion)
* bug #32090 [Debug] workaround BC break in PHP 7.3 (nicolas-grekas)
* bug #32076 [Lock] Fix PDO prune not called (jderusse)
* bug #32071 Fix expired lock not cleaned (jderusse)
* bug #32052 [Messenger] fix AMQP delay queue to be per exchange (Tobion)
* bug #32065 [HttpClient] throw DecodingExceptionInterface when toArray() fails because of content-type error (nicolas-grekas)
* bug #32057 [HttpFoundation] Fix SA/phpdoc JsonResponse (ro0NL)
* bug #32040 [DI] Show the right class autowired when providing a non-existing class (Simperfit)
* bug #32035 [Messenger] fix delay delivery for non-fanout exchanges (Tobion)
* bug #32025 SimpleCacheAdapter fails to cache any item if a namespace is used (moufmouf)
* bug #32022 [HttpClient] Don't use CurlHttpClient on Windows when curl.cainfo is not set (nicolas-grekas)
* bug #32037 [Form] validate composite constraints in all groups (xabbuh)
* bug #32007 [Serializer] Handle true and false appropriately in CSV encoder (battye)
* bug #32036 [Messenger] improve logs (Tobion)
* bug #31998 Parameterize Mailgun's region (jderusse)
* bug #32000 [Routing] fix absolute url generation when scheme is not known (Tobion)
* bug #32012 Add statement to fileLink to ignore href code when no fileLink. (bmxmale)
* bug #32024 [VarDumper] fix dumping objects that implement __debugInfo() (nicolas-grekas)
* bug #32014 Do not log or call the proxy function when the locale is the same (gmponos)
* bug #32011 [HttpClient] fix closing debug stream prematurely (nicolas-grekas)
* bug #32017 [Contracts] add missing required dependencies (mbessolov)
* bug #31992 Fix sender/recipients in SMTP Envelope (fabpot)
* bug #31999 [PhpunitBridge] Restore php 5.5 compat (greg0ire)
* bug #31991 [EventDispatcher] collect called listeners information only once (xabbuh)
* bug #31988 [TwigBridge] add back possibility to use form themes without translations (xabbuh)
* bug #31982 [HttpClient] fix Psr18Client handling of non-200 response codes (nicolas-grekas)
* bug #31953 [DoctrineBridge] fix handling nested embeddables (xabbuh)
* bug #31962 Fix reporting unsilenced deprecations from insulated tests (nicolas-grekas)
* bug #31936 PropertyInfoLoader should not try to add validation to non-existent property (weaverryan)
* bug #31923 [Serializer] Fix DataUriNormalizer deprecation (MIME type guesser is optional) (ogizanagi)
* bug #31928 [FrameworkBundle] avoid service id conflicts with Swiftmailer (xabbuh)
* bug #31925 [Form] fix usage of legacy TranslatorInterface (nicolas-grekas)
* bug #31908 [Validator] fix deprecation layer of ValidatorBuilder (nicolas-grekas)
* 4.3.1 (2019-06-06) * 4.3.1 (2019-06-06)
* bug #31894 Fix wrong requirements for ocramius/proxy-manager in root composer.json (henrikvolmer) * bug #31894 Fix wrong requirements for ocramius/proxy-manager in root composer.json (henrikvolmer)

View File

@ -19,8 +19,8 @@ Symfony is the result of the work of many people who made the code better
- Jakub Zalas (jakubzalas) - Jakub Zalas (jakubzalas)
- Johannes S (johannes) - Johannes S (johannes)
- Javier Eguiluz (javier.eguiluz) - Javier Eguiluz (javier.eguiluz)
- Kris Wallsmith (kriswallsmith)
- Roland Franssen (ro0) - Roland Franssen (ro0)
- Kris Wallsmith (kriswallsmith)
- Grégoire Pineau (lyrixx) - Grégoire Pineau (lyrixx)
- Hugo Hamon (hhamon) - Hugo Hamon (hhamon)
- Abdellatif Ait boudad (aitboudad) - Abdellatif Ait boudad (aitboudad)
@ -31,9 +31,9 @@ Symfony is the result of the work of many people who made the code better
- Joseph Bielawski (stloyd) - Joseph Bielawski (stloyd)
- Karma Dordrak (drak) - Karma Dordrak (drak)
- Lukas Kahwe Smith (lsmith) - Lukas Kahwe Smith (lsmith)
- Yonel Ceruto (yonelceruto)
- Martin Hasoň (hason) - Martin Hasoň (hason)
- Jeremy Mikola (jmikola) - Jeremy Mikola (jmikola)
- Yonel Ceruto (yonelceruto)
- Jean-François Simon (jfsimon) - Jean-François Simon (jfsimon)
- Jules Pietri (heah) - Jules Pietri (heah)
- Benjamin Eberlei (beberlei) - Benjamin Eberlei (beberlei)
@ -45,35 +45,35 @@ Symfony is the result of the work of many people who made the code better
- Jonathan Wage (jwage) - Jonathan Wage (jwage)
- Tobias Nyholm (tobias) - Tobias Nyholm (tobias)
- Lynn van der Berg (kjarli) - Lynn van der Berg (kjarli)
- Jérémy DERUSSÉ (jderusse)
- Diego Saint Esteben (dosten) - Diego Saint Esteben (dosten)
- Alexandre Salomé (alexandresalome) - Alexandre Salomé (alexandresalome)
- William Durand (couac) - William Durand (couac)
- ornicar - ornicar
- Jérémy DERUSSÉ (jderusse) - Alexander M. Turek (derrabus)
- Dany Maillard (maidmaid) - Dany Maillard (maidmaid)
- Francis Besset (francisbesset) - Francis Besset (francisbesset)
- stealth35 (stealth35) - stealth35 (stealth35)
- Alexander Mols (asm89) - Alexander Mols (asm89)
- Matthias Pigulla (mpdude) - Matthias Pigulla (mpdude)
- Bulat Shakirzyanov (avalanche123) - Bulat Shakirzyanov (avalanche123)
- Alexander M. Turek (derrabus)
- Saša Stamenković (umpirsky) - Saša Stamenković (umpirsky)
- Peter Rehm (rpet) - Peter Rehm (rpet)
- Kevin Bond (kbond)
- Pierre du Plessis (pierredup) - Pierre du Plessis (pierredup)
- Kevin Bond (kbond)
- Henrik Bjørnskov (henrikbjorn) - Henrik Bjørnskov (henrikbjorn)
- Miha Vrhovnik - Miha Vrhovnik
- Diego Saint Esteben (dii3g0) - Diego Saint Esteben (dii3g0)
- Grégoire Paris (greg0ire)
- Konstantin Kudryashov (everzet) - Konstantin Kudryashov (everzet)
- Gábor Egyed (1ed) - Gábor Egyed (1ed)
- Grégoire Paris (greg0ire)
- Bilal Amarni (bamarni)
- Titouan Galopin (tgalopin) - Titouan Galopin (tgalopin)
- Konstantin Myakshin (koc)
- Bilal Amarni (bamarni)
- Mathieu Piot (mpiot) - Mathieu Piot (mpiot)
- David Maicher (dmaicher) - David Maicher (dmaicher)
- Florin Patan (florinpatan) - Florin Patan (florinpatan)
- Valentin Udaltsov (vudaltsov) - Valentin Udaltsov (vudaltsov)
- Konstantin Myakshin (koc)
- Gabriel Ostrolucký (gadelat) - Gabriel Ostrolucký (gadelat)
- Vladimir Reznichenko (kalessil) - Vladimir Reznichenko (kalessil)
- Jáchym Toušek (enumag) - Jáchym Toušek (enumag)
@ -95,12 +95,12 @@ Symfony is the result of the work of many people who made the code better
- Luis Cordova (cordoval) - Luis Cordova (cordoval)
- Graham Campbell (graham) - Graham Campbell (graham)
- Daniel Holmes (dholmes) - Daniel Holmes (dholmes)
- Thomas Calvet (fancyweb)
- Toni Uebernickel (havvg) - Toni Uebernickel (havvg)
- Bart van den Burg (burgov) - Bart van den Burg (burgov)
- Jordan Alliot (jalliot) - Jordan Alliot (jalliot)
- Jérôme Tamarelle (gromnan) - Jérôme Tamarelle (gromnan)
- John Wards (johnwards) - John Wards (johnwards)
- Thomas Calvet (fancyweb)
- Fran Moreno (franmomu) - Fran Moreno (franmomu)
- Antoine Hérault (herzult) - Antoine Hérault (herzult)
- Paráda József (paradajozsef) - Paráda József (paradajozsef)
@ -120,6 +120,7 @@ Symfony is the result of the work of many people who made the code better
- Peter Kokot (maastermedia) - Peter Kokot (maastermedia)
- Jacob Dreesen (jdreesen) - Jacob Dreesen (jdreesen)
- Florian Voutzinos (florianv) - Florian Voutzinos (florianv)
- Jan Schädlich (jschaedl)
- Colin Frei - Colin Frei
- Javier Spagnoletti (phansys) - Javier Spagnoletti (phansys)
- Adrien Brault (adrienbrault) - Adrien Brault (adrienbrault)
@ -152,7 +153,6 @@ Symfony is the result of the work of many people who made the code better
- Arnaud Kleinpeter (nanocom) - Arnaud Kleinpeter (nanocom)
- Jannik Zschiesche (apfelbox) - Jannik Zschiesche (apfelbox)
- Guilherme Blanco (guilhermeblanco) - Guilherme Blanco (guilhermeblanco)
- Jan Schädlich (jschaedl)
- SpacePossum - SpacePossum
- Pablo Godel (pgodel) - Pablo Godel (pgodel)
- Jérémie Augustin (jaugustin) - Jérémie Augustin (jaugustin)
@ -175,13 +175,17 @@ Symfony is the result of the work of many people who made the code better
- Alessandro Chitolina (alekitto) - Alessandro Chitolina (alekitto)
- Hiromi Hishida (77web) - Hiromi Hishida (77web)
- Matthieu Ouellette-Vachon (maoueh) - Matthieu Ouellette-Vachon (maoueh)
- Massimiliano Arione (garak)
- Michał Pipa (michal.pipa) - Michał Pipa (michal.pipa)
- Dawid Nowak - Dawid Nowak
- George Mponos (gmponos)
- Amal Raghav (kertz) - Amal Raghav (kertz)
- Jonathan Ingram (jonathaningram) - Jonathan Ingram (jonathaningram)
- Artur Kotyrba - Artur Kotyrba
- Tyson Andre - Tyson Andre
- GDIBass - GDIBass
- Samuel NELA (snela)
- Vincent Touzet (vincenttouzet)
- Alexander Schranz (alexander-schranz) - Alexander Schranz (alexander-schranz)
- jeremyFreeAgent (Jérémy Romey) (jeremyfreeagent) - jeremyFreeAgent (Jérémy Romey) (jeremyfreeagent)
- James Halsall (jaitsu) - James Halsall (jaitsu)
@ -194,15 +198,12 @@ Symfony is the result of the work of many people who made the code better
- Daniel Espendiller - Daniel Espendiller
- Possum - Possum
- Dorian Villet (gnutix) - Dorian Villet (gnutix)
- George Mponos (gmponos)
- Sergey Linnik (linniksa) - Sergey Linnik (linniksa)
- Richard Miller (mr_r_miller) - Richard Miller (mr_r_miller)
- Albert Casademont (acasademont) - Albert Casademont (acasademont)
- Mario A. Alvarez Garcia (nomack84) - Mario A. Alvarez Garcia (nomack84)
- Dennis Benkert (denderello) - Dennis Benkert (denderello)
- DQNEO - DQNEO
- Samuel NELA (snela)
- Vincent Touzet (vincenttouzet)
- Gregor Harlan (gharlan) - Gregor Harlan (gharlan)
- Gary PEGEOT (gary-p) - Gary PEGEOT (gary-p)
- Ruben Gonzalez (rubenrua) - Ruben Gonzalez (rubenrua)
@ -242,12 +243,12 @@ Symfony is the result of the work of many people who made the code better
- Sven Paulus (subsven) - Sven Paulus (subsven)
- Maxime Veber (nek-) - Maxime Veber (nek-)
- Rui Marinho (ruimarinho) - Rui Marinho (ruimarinho)
- Massimiliano Arione (garak)
- Eugene Wissner - Eugene Wissner
- Pascal Montoya - Pascal Montoya
- Julien Brochet (mewt) - Julien Brochet (mewt)
- Leo Feyer - Leo Feyer
- Tristan Darricau (nicofuma) - Tristan Darricau (nicofuma)
- Victor Bocharsky (bocharsky_bw)
- Marcel Beerta (mazen) - Marcel Beerta (mazen)
- Pavel Batanov (scaytrase) - Pavel Batanov (scaytrase)
- Mantis Development - Mantis Development
@ -300,7 +301,6 @@ Symfony is the result of the work of many people who made the code better
- Chekote - Chekote
- Antoine Makdessi (amakdessi) - Antoine Makdessi (amakdessi)
- Thomas Adam - Thomas Adam
- Viktor Bocharskyi (bocharsky_bw)
- Jhonny Lidfors (jhonne) - Jhonny Lidfors (jhonne)
- Diego Agulló (aeoris) - Diego Agulló (aeoris)
- jdhoek - jdhoek
@ -374,6 +374,7 @@ Symfony is the result of the work of many people who made the code better
- Berny Cantos (xphere81) - Berny Cantos (xphere81)
- Thierry Thuon (lepiaf) - Thierry Thuon (lepiaf)
- Ricard Clau (ricardclau) - Ricard Clau (ricardclau)
- dFayet
- Mark Challoner (markchalloner) - Mark Challoner (markchalloner)
- Gennady Telegin (gtelegin) - Gennady Telegin (gtelegin)
- Erin Millard - Erin Millard
@ -438,6 +439,7 @@ Symfony is the result of the work of many people who made the code better
- Joe Lencioni - Joe Lencioni
- Daniel Tschinder - Daniel Tschinder
- vladimir.reznichenko - vladimir.reznichenko
- Ruud Kamphuis (ruudk)
- Kai - Kai
- Lee Rowlands - Lee Rowlands
- Krzysztof Piasecki (krzysztek) - Krzysztof Piasecki (krzysztek)
@ -458,6 +460,7 @@ Symfony is the result of the work of many people who made the code better
- Karel Souffriau - Karel Souffriau
- Christophe L. (christophelau) - Christophe L. (christophelau)
- Anthon Pang (robocoder) - Anthon Pang (robocoder)
- Michael Käfer (michael_kaefer)
- Sébastien Santoro (dereckson) - Sébastien Santoro (dereckson)
- Brian King - Brian King
- Michel Salib (michelsalib) - Michel Salib (michelsalib)
@ -539,6 +542,7 @@ Symfony is the result of the work of many people who made the code better
- Sergio Santoro - Sergio Santoro
- Robin van der Vleuten (robinvdvleuten) - Robin van der Vleuten (robinvdvleuten)
- Philipp Rieber (bicpi) - Philipp Rieber (bicpi)
- Tomas Norkūnas (norkunas)
- Manuel de Ruiter (manuel) - Manuel de Ruiter (manuel)
- Eduardo Oliveira (entering) - Eduardo Oliveira (entering)
- Ilya Antipenko (aivus) - Ilya Antipenko (aivus)
@ -563,6 +567,7 @@ Symfony is the result of the work of many people who made the code better
- Jakub Škvára (jskvara) - Jakub Škvára (jskvara)
- Andrew Udvare (audvare) - Andrew Udvare (audvare)
- alexpods - alexpods
- Saif Eddin G
- Adam Szaraniec (mimol) - Adam Szaraniec (mimol)
- Dariusz Ruminski - Dariusz Ruminski
- Erik Trapman (eriktrapman) - Erik Trapman (eriktrapman)
@ -597,7 +602,6 @@ Symfony is the result of the work of many people who made the code better
- Martin Morávek (keeo) - Martin Morávek (keeo)
- Steven Surowiec - Steven Surowiec
- Kevin Saliou (kbsali) - Kevin Saliou (kbsali)
- Ruud Kamphuis (ruudk)
- Shawn Iwinski - Shawn Iwinski
- Gawain Lynch (gawain) - Gawain Lynch (gawain)
- NothingWeAre - NothingWeAre
@ -630,6 +634,7 @@ Symfony is the result of the work of many people who made the code better
- Baptiste Leduc (bleduc) - Baptiste Leduc (bleduc)
- Jean-Christophe Cuvelier [Artack] - Jean-Christophe Cuvelier [Artack]
- Simon DELICATA - Simon DELICATA
- Dmitry Simushev
- alcaeus - alcaeus
- Fred Cox - Fred Cox
- vitaliytv - vitaliytv
@ -688,7 +693,6 @@ Symfony is the result of the work of many people who made the code better
- Vincent Simonin - Vincent Simonin
- Alex Bogomazov (alebo) - Alex Bogomazov (alebo)
- maxime.steinhausser - maxime.steinhausser
- dFayet
- adev - adev
- Stefan Warman - Stefan Warman
- Arkadius Stefanski (arkadius) - Arkadius Stefanski (arkadius)
@ -722,6 +726,7 @@ Symfony is the result of the work of many people who made the code better
- Jaroslav Kuba - Jaroslav Kuba
- Stephan Vock - Stephan Vock
- Benjamin Zikarsky (bzikarsky) - Benjamin Zikarsky (bzikarsky)
- battye
- Simon Schick (simonsimcity) - Simon Schick (simonsimcity)
- redstar504 - redstar504
- Tristan Roussel - Tristan Roussel
@ -763,10 +768,10 @@ Symfony is the result of the work of many people who made the code better
- Arturas Smorgun (asarturas) - Arturas Smorgun (asarturas)
- Alexander Volochnev (exelenz) - Alexander Volochnev (exelenz)
- Michael Piecko - Michael Piecko
- Toni Peric (tperic)
- yclian - yclian
- Alan Poulain - Alan Poulain
- Aleksey Prilipko - Aleksey Prilipko
- Tomas Norkūnas (norkunas)
- Andrew Berry - Andrew Berry
- twifty - twifty
- Indra Gunawan (guind) - Indra Gunawan (guind)
@ -816,6 +821,7 @@ Symfony is the result of the work of many people who made the code better
- John Bohn (jbohn) - John Bohn (jbohn)
- Marc Morera (mmoreram) - Marc Morera (mmoreram)
- Saif Eddin Gmati (azjezz) - Saif Eddin Gmati (azjezz)
- BENOIT POLASZEK (bpolaszek)
- Andrew Hilobok (hilobok) - Andrew Hilobok (hilobok)
- Noah Heck (myesain) - Noah Heck (myesain)
- Christian Soronellas (theunic) - Christian Soronellas (theunic)
@ -837,6 +843,7 @@ Symfony is the result of the work of many people who made the code better
- Olivier Maisonneuve (olineuve) - Olivier Maisonneuve (olineuve)
- Pedro Miguel Maymone de Resende (pedroresende) - Pedro Miguel Maymone de Resende (pedroresende)
- Masterklavi - Masterklavi
- Franco Traversaro (belinde)
- Francis Turmel (fturmel) - Francis Turmel (fturmel)
- Nikita Nefedov (nikita2206) - Nikita Nefedov (nikita2206)
- cgonzalez - cgonzalez
@ -851,6 +858,7 @@ Symfony is the result of the work of many people who made the code better
- Antoine Lamirault - Antoine Lamirault
- Adrien Lucas (adrienlucas) - Adrien Lucas (adrienlucas)
- Zhuravlev Alexander (scif) - Zhuravlev Alexander (scif)
- Stefano Degenkamp (steef)
- James Michael DuPont - James Michael DuPont
- Tom Klingenberg - Tom Klingenberg
- Christopher Hall (mythmakr) - Christopher Hall (mythmakr)
@ -904,6 +912,7 @@ Symfony is the result of the work of many people who made the code better
- Benoît Bourgeois - Benoît Bourgeois
- mantulo - mantulo
- Stefan Kruppa - Stefan Kruppa
- mmokhi
- corphi - corphi
- grizlik - grizlik
- Derek ROTH - Derek ROTH
@ -912,6 +921,7 @@ Symfony is the result of the work of many people who made the code better
- Dmytro Boiko (eagle) - Dmytro Boiko (eagle)
- Shin Ohno (ganchiku) - Shin Ohno (ganchiku)
- Geert De Deckere (geertdd) - Geert De Deckere (geertdd)
- Jacek Jędrzejewski (jacek.jedrzejewski)
- Jan Kramer (jankramer) - Jan Kramer (jankramer)
- abdul malik ikhsan (samsonasik) - abdul malik ikhsan (samsonasik)
- Henry Snoek (snoek09) - Henry Snoek (snoek09)
@ -922,7 +932,6 @@ Symfony is the result of the work of many people who made the code better
- Morgan Auchede (mauchede) - Morgan Auchede (mauchede)
- Sascha Dens (saschadens) - Sascha Dens (saschadens)
- Don Pinkster - Don Pinkster
- Saif Eddin G
- Maksim Muruev - Maksim Muruev
- Emil Einarsson - Emil Einarsson
- Thomas Landauer - Thomas Landauer
@ -933,13 +942,14 @@ Symfony is the result of the work of many people who made the code better
- Tony Tran - Tony Tran
- Jacques Moati - Jacques Moati
- Balazs Csaba (balazscsaba2006) - Balazs Csaba (balazscsaba2006)
- Bill Hance (billhance)
- Douglas Reith (douglas_reith) - Douglas Reith (douglas_reith)
- Forfarle (forfarle) - Forfarle (forfarle)
- Harry Walter (haswalt) - Harry Walter (haswalt)
- Johnson Page (jwpage) - Johnson Page (jwpage)
- Michael Käfer (michael_kaefer)
- Ruben Gonzalez (rubenruateltek) - Ruben Gonzalez (rubenruateltek)
- Michael Roterman (wtfzdotnet) - Michael Roterman (wtfzdotnet)
- Andrii Dembitskyi
- Arno Geurts - Arno Geurts
- Adán Lobato (adanlobato) - Adán Lobato (adanlobato)
- Ian Jenkins (jenkoian) - Ian Jenkins (jenkoian)
@ -986,7 +996,6 @@ Symfony is the result of the work of many people who made the code better
- d-ph - d-ph
- Renan Taranto (renan-taranto) - Renan Taranto (renan-taranto)
- Thomas Talbot (ioni) - Thomas Talbot (ioni)
- Dmitry Simushev
- Rikijs Murgs - Rikijs Murgs
- Uladzimir Tsykun - Uladzimir Tsykun
- Ben Ramsey (ramsey) - Ben Ramsey (ramsey)
@ -1132,7 +1141,6 @@ Symfony is the result of the work of many people who made the code better
- hugofonseca (fonsecas72) - hugofonseca (fonsecas72)
- Martynas Narbutas - Martynas Narbutas
- Toon Verwerft (veewee) - Toon Verwerft (veewee)
- battye
- Bailey Parker - Bailey Parker
- Eddie Jaoude - Eddie Jaoude
- Antanas Arvasevicius - Antanas Arvasevicius
@ -1269,6 +1277,7 @@ Symfony is the result of the work of many people who made the code better
- Pablo Schläpfer - Pablo Schläpfer
- Gert de Pagter - Gert de Pagter
- Jelte Steijaert (jelte) - Jelte Steijaert (jelte)
- David Négrier (moufmouf)
- Quique Porta (quiqueporta) - Quique Porta (quiqueporta)
- stoccc - stoccc
- Andrea Quintino (dirk39) - Andrea Quintino (dirk39)
@ -1290,7 +1299,6 @@ Symfony is the result of the work of many people who made the code better
- Lars Ambrosius Wallenborn (larsborn) - Lars Ambrosius Wallenborn (larsborn)
- Oriol Mangas Abellan (oriolman) - Oriol Mangas Abellan (oriolman)
- Sebastian Göttschkes (sgoettschkes) - Sebastian Göttschkes (sgoettschkes)
- Toni Peric (tperic)
- Tatsuya Tsuruoka - Tatsuya Tsuruoka
- Ross Tuck - Ross Tuck
- Kévin Gomez (kevin) - Kévin Gomez (kevin)
@ -1324,7 +1332,6 @@ Symfony is the result of the work of many people who made the code better
- Sébastien HOUZÉ - Sébastien HOUZÉ
- Jingyu Wang - Jingyu Wang
- steveYeah - steveYeah
- BENOIT POLASZEK (bpolaszek)
- Samy Dindane (dinduks) - Samy Dindane (dinduks)
- Keri Henare (kerihenare) - Keri Henare (kerihenare)
- Cédric Lahouste (rapotor) - Cédric Lahouste (rapotor)
@ -1431,6 +1438,7 @@ Symfony is the result of the work of many people who made the code better
- BilgeXA - BilgeXA
- r1pp3rj4ck - r1pp3rj4ck
- phydevs - phydevs
- mmokhi
- Robert Queck - Robert Queck
- Peter Bouwdewijn - Peter Bouwdewijn
- mlively - mlively
@ -1455,6 +1463,7 @@ Symfony is the result of the work of many people who made the code better
- Mike Meier - Mike Meier
- Tim Jabs - Tim Jabs
- Sebastian Ionescu - Sebastian Ionescu
- Robert Kopera
- Pablo Ogando Ferreira - Pablo Ogando Ferreira
- Thomas Ploch - Thomas Ploch
- Simon Neidhold - Simon Neidhold
@ -1490,6 +1499,7 @@ Symfony is the result of the work of many people who made the code better
- LubenZA - LubenZA
- Olivier - Olivier
- Cyril PASCAL - Cyril PASCAL
- Michael Bessolov
- pscheit - pscheit
- Wybren Koelmans - Wybren Koelmans
- Zdeněk Drahoš - Zdeněk Drahoš
@ -1651,6 +1661,7 @@ Symfony is the result of the work of many people who made the code better
- downace - downace
- Aarón Nieves Fernández - Aarón Nieves Fernández
- Mike Meier - Mike Meier
- Vilius Grigaliūnas
- Kirill Saksin - Kirill Saksin
- Julien Pauli - Julien Pauli
- Koalabaerchen - Koalabaerchen
@ -1698,6 +1709,7 @@ Symfony is the result of the work of many people who made the code better
- Nicole Cordes - Nicole Cordes
- Martin Kirilov - Martin Kirilov
- amcastror - amcastror
- Alexander Li (aweelex)
- Bram Van der Sype (brammm) - Bram Van der Sype (brammm)
- Guile (guile) - Guile (guile)
- Julien Moulin (lizjulien) - Julien Moulin (lizjulien)
@ -1717,6 +1729,7 @@ Symfony is the result of the work of many people who made the code better
- Sam Ward - Sam Ward
- Walther Lalk - Walther Lalk
- Adam - Adam
- Ivo
- Sören Bernstein - Sören Bernstein
- devel - devel
- taiiiraaa - taiiiraaa
@ -1751,7 +1764,6 @@ Symfony is the result of the work of many people who made the code better
- Hans Nilsson (hansnilsson) - Hans Nilsson (hansnilsson)
- Andrew Marcinkevičius (ifdattic) - Andrew Marcinkevičius (ifdattic)
- Ioana Hazsda (ioana-hazsda) - Ioana Hazsda (ioana-hazsda)
- Jacek Jędrzejewski (jacek.jedrzejewski)
- Jan Marek (janmarek) - Jan Marek (janmarek)
- Mark de Haan (markdehaan) - Mark de Haan (markdehaan)
- Dan Patrick (mdpatrick) - Dan Patrick (mdpatrick)
@ -1760,6 +1772,7 @@ Symfony is the result of the work of many people who made the code better
- tante kinast (tante) - tante kinast (tante)
- Ahmed Hannachi (tiecoders) - Ahmed Hannachi (tiecoders)
- Vincent LEFORT (vlefort) - Vincent LEFORT (vlefort)
- Walid BOUGHDIRI (walidboughdiri)
- Darryl Hein (xmmedia) - Darryl Hein (xmmedia)
- Sadicov Vladimir (xtech) - Sadicov Vladimir (xtech)
- Kevin EMO (zarcox) - Kevin EMO (zarcox)
@ -1774,6 +1787,7 @@ Symfony is the result of the work of many people who made the code better
- Vincent Chalnot - Vincent Chalnot
- James Hudson - James Hudson
- Tom Maguire - Tom Maguire
- Mateusz Lerczak
- Richard Quadling - Richard Quadling
- David Zuelke - David Zuelke
- Adrian - Adrian
@ -1948,6 +1962,7 @@ Symfony is the result of the work of many people who made the code better
- Ulf Reimers (ureimers) - Ulf Reimers (ureimers)
- Wotre - Wotre
- goohib - goohib
- Chi-teck
- Tom Counsell - Tom Counsell
- Xavier HAUSHERR - Xavier HAUSHERR
- Ron Gähler - Ron Gähler
@ -2007,6 +2022,7 @@ Symfony is the result of the work of many people who made the code better
- Cédric Bertolini - Cédric Bertolini
- n-aleha - n-aleha
- Anatol Belski - Anatol Belski
- Anderson Müller
- Şəhriyar İmanov - Şəhriyar İmanov
- Alexis BOYER - Alexis BOYER
- Kaipi Yann - Kaipi Yann
@ -2019,7 +2035,6 @@ Symfony is the result of the work of many people who made the code better
- Tammy D - Tammy D
- Daniel STANCU - Daniel STANCU
- Ryan Rud - Ryan Rud
- mmokhi
- Ondrej Slinták - Ondrej Slinták
- vlechemin - vlechemin
- Brian Corrigan - Brian Corrigan
@ -2110,10 +2125,10 @@ Symfony is the result of the work of many people who made the code better
- Alex Olmos (alexolmos) - Alex Olmos (alexolmos)
- Antonio Mansilla (amansilla) - Antonio Mansilla (amansilla)
- Robin Kanters (anddarerobin) - Robin Kanters (anddarerobin)
- Andrii Popov (andrii-popov)
- Juan Ases García (ases) - Juan Ases García (ases)
- Siragusa (asiragusa) - Siragusa (asiragusa)
- Daniel Basten (axhm3a) - Daniel Basten (axhm3a)
- Bill Hance (billhance)
- Bernd Matzner (bmatzner) - Bernd Matzner (bmatzner)
- Bram Tweedegolf (bram_tweedegolf) - Bram Tweedegolf (bram_tweedegolf)
- Brandon Kelly (brandonkelly) - Brandon Kelly (brandonkelly)
@ -2150,6 +2165,7 @@ Symfony is the result of the work of many people who made the code better
- Justin Rainbow (jrainbow) - Justin Rainbow (jrainbow)
- Juan Luis (juanlugb) - Juan Luis (juanlugb)
- JuntaTom (juntatom) - JuntaTom (juntatom)
- Julien Manganne (juuuuuu)
- Ismail Faizi (kanafghan) - Ismail Faizi (kanafghan)
- Sébastien Armand (khepin) - Sébastien Armand (khepin)
- Pierre-Chanel Gauthier (kmecnin) - Pierre-Chanel Gauthier (kmecnin)

View File

@ -115,7 +115,7 @@
"psr/http-client": "^1.0", "psr/http-client": "^1.0",
"psr/simple-cache": "^1.0", "psr/simple-cache": "^1.0",
"egulias/email-validator": "~1.2,>=1.2.8|~2.0", "egulias/email-validator": "~1.2,>=1.2.8|~2.0",
"symfony/phpunit-bridge": "~3.4|~4.0", "symfony/phpunit-bridge": "~3.4|~4.0|~5.0",
"symfony/security-acl": "~2.8|~3.0", "symfony/security-acl": "~2.8|~3.0",
"phpdocumentor/reflection-docblock": "^3.0|^4.0" "phpdocumentor/reflection-docblock": "^3.0|^4.0"
}, },

View File

@ -3,7 +3,9 @@ Test DeprecationErrorHandler in default mode
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
unset($_SERVER[$k], $_ENV[$k]);
putenv($k);
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler in weak mode
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=/foo/'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = '/foo/');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler in weak mode
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=disabled'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'disabled');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test eval()'d deprecation is not considered as self
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=max[self]=0'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'max[self]=0');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler in weak vendors mode on vendor file
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=max[self]=0&max[direct]=0'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'max[self]=0&max[direct]=0');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler with quiet output
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=verbose=0'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'verbose=0');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler with no self deprecations on self deprecation
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=max[self]=0'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'max[self]=0');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,9 @@ Test DeprecationErrorHandler in default mode
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
unset($_SERVER[$k], $_ENV[$k]);
putenv($k);
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler in weak mode
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=weak'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'weak');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler in weak vendors mode on eval()'d deprecation
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=max[self]=0'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'max[self]=0');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler in weak vendors mode on a non vendor file
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=max[self]=0'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'max[self]=0');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -4,7 +4,8 @@ The phar can be regenerated by running php src/Symfony/Bridge/PhpUnit/Tests/Depr
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=max[self]=0'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'max[self]=0');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -3,7 +3,8 @@ Test DeprecationErrorHandler with no self deprecations on vendor deprecation
--FILE-- --FILE--
<?php <?php
putenv('SYMFONY_DEPRECATIONS_HELPER=max[self]=0'); $k = 'SYMFONY_DEPRECATIONS_HELPER';
putenv($k.'='.$_SERVER[$k] = $_ENV[$k] = 'max[self]=0');
putenv('ANSICON'); putenv('ANSICON');
putenv('ConEmuANSI'); putenv('ConEmuANSI');
putenv('TERM'); putenv('TERM');

View File

@ -14,7 +14,7 @@ namespace Symfony\Component\EventDispatcher;
use Symfony\Contracts\EventDispatcher\EventDispatcherInterface; use Symfony\Contracts\EventDispatcher\EventDispatcherInterface;
/** /**
* An helper class to provide BC/FC with the legacy signature of EventDispatcherInterface::dispatch(). * A helper class to provide BC/FC with the legacy signature of EventDispatcherInterface::dispatch().
* *
* This class should be deprecated in Symfony 5.1 * This class should be deprecated in Symfony 5.1
* *

View File

@ -397,6 +397,33 @@ class EventDispatcherTest extends TestCase
$this->assertTrue($testLoaded); $this->assertTrue($testLoaded);
} }
/**
* @group legacy
* @expectedDeprecation Calling the "Symfony\Component\EventDispatcher\EventDispatcherInterface::dispatch()" method with the event name as the first argument is deprecated since Symfony 4.3, pass it as the second argument and provide the event object as the first argument instead.
*/
public function testLegacySignatureWithoutEvent()
{
$this->dispatcher->dispatch('foo');
}
/**
* @group legacy
* @expectedDeprecation Calling the "Symfony\Component\EventDispatcher\EventDispatcherInterface::dispatch()" method with the event name as the first argument is deprecated since Symfony 4.3, pass it as the second argument and provide the event object as the first argument instead.
*/
public function testLegacySignatureWithEvent()
{
$this->dispatcher->dispatch('foo', new Event());
}
/**
* @expectedException \TypeError
* @expectedExceptionMessage Argument 1 passed to "Symfony\Component\EventDispatcher\EventDispatcherInterface::dispatch()" must be an object, string given.
*/
public function testLegacySignatureWithNewEventObject()
{
$this->dispatcher->dispatch('foo', new ContractsEvent());
}
} }
class CallableClass class CallableClass

View File

@ -0,0 +1,49 @@
<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Component\Mailer\Tests\Transport\Smtp\Stream;
use PHPUnit\Framework\TestCase;
use Symfony\Component\Mailer\Transport\Smtp\Stream\SocketStream;
class SocketStreamTest extends TestCase
{
/**
* @expectedException \Symfony\Component\Mailer\Exception\TransportException
* @expectedExceptionMessageRegExp /Connection refused|unable to connect/
*/
public function testSocketErrorNoConnection()
{
$s = new SocketStream();
$s->setTimeout(0.1);
$s->setPort(9999);
$s->initialize();
}
/**
* @expectedException \Symfony\Component\Mailer\Exception\TransportException
* @expectedExceptionMessageRegExp /no valid certs found cafile stream|Unable to find the socket transport "ssl"/
*/
public function testSocketErrorBeforeConnectError()
{
$s = new SocketStream();
$s->setStreamOptions([
'ssl' => [
// not a CA file :)
'cafile' => __FILE__,
],
]);
$s->setEncryption('ssl');
$s->setHost('smtp.gmail.com');
$s->setPort(465);
$s->initialize();
}
}

View File

@ -34,14 +34,14 @@ final class SocketStream extends AbstractStream
private $sourceIp; private $sourceIp;
private $streamContextOptions = []; private $streamContextOptions = [];
public function setTimeout(int $timeout): self public function setTimeout(float $timeout): self
{ {
$this->timeout = $timeout; $this->timeout = $timeout;
return $this; return $this;
} }
public function getTimeout(): int public function getTimeout(): float
{ {
return $this->timeout; return $this->timeout;
} }
@ -144,10 +144,16 @@ final class SocketStream extends AbstractStream
$options['ssl']['crypto_method'] = $options['ssl']['crypto_method'] ?? STREAM_CRYPTO_METHOD_TLS_CLIENT | STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT | STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT; $options['ssl']['crypto_method'] = $options['ssl']['crypto_method'] ?? STREAM_CRYPTO_METHOD_TLS_CLIENT | STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT | STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT;
} }
$streamContext = stream_context_create($options); $streamContext = stream_context_create($options);
$this->stream = @stream_socket_client($this->url, $errno, $errstr, $this->timeout, STREAM_CLIENT_CONNECT, $streamContext);
if (false === $this->stream) { set_error_handler(function ($type, $msg) {
throw new TransportException(sprintf('Connection could not be established with host "%s": %s (%s)', $this->url, $errstr, $errno)); throw new TransportException(sprintf('Connection could not be established with host "%s": %s.', $this->url, $msg));
});
try {
$this->stream = stream_socket_client($this->url, $errno, $errstr, $this->timeout, STREAM_CLIENT_CONNECT, $streamContext);
} finally {
restore_error_handler();
} }
stream_set_blocking($this->stream, true); stream_set_blocking($this->stream, true);
stream_set_timeout($this->stream, $this->timeout); stream_set_timeout($this->stream, $this->timeout);
$this->in = &$this->stream; $this->in = &$this->stream;

View File

@ -48,7 +48,7 @@ final class SodiumPasswordEncoder implements PasswordEncoderInterface, SelfSalti
public static function isSupported(): bool public static function isSupported(): bool
{ {
return \function_exists('sodium_crypto_pwhash_str_needs_rehash') || \function_exists('Sodium\crypto_pwhash_str_needs_rehash'); return version_compare(\extension_loaded('sodium') ? \SODIUM_LIBRARY_VERSION : phpversion('libsodium'), '1.0.14', '>=');
} }
/** /**