From 3344bc2d6ab53d576503f4314d16a2a18aa31f56 Mon Sep 17 00:00:00 2001 From: Benjamin Gaussorgues Date: Wed, 26 Aug 2026 17:01:21 +0200 Subject: [PATCH 1/2] chore(tests): update test master PHP version Signed-off-by: Benjamin Gaussorgues --- .github/workflows/test-master.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-master.yml b/.github/workflows/test-master.yml index 4e1a3894..08c78133 100644 --- a/.github/workflows/test-master.yml +++ b/.github/workflows/test-master.yml @@ -22,7 +22,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - php-versions: ["8.2", "8.3"] + php-versions: ["8.3", "8.5"] name: test-master From b81d1f8b2d6957c7c33e632a32203b8ca761eb2d Mon Sep 17 00:00:00 2001 From: Benjamin Gaussorgues Date: Wed, 26 Aug 2026 17:11:30 +0200 Subject: [PATCH 2/2] chore(deprecated): remove curl_close function Signed-off-by: Benjamin Gaussorgues --- index.php | 4 ---- lib/Updater.php | 4 ---- tests/features/bootstrap/FeatureContext.php | 2 -- updater.phar | Bin 977111 -> 977039 bytes 4 files changed, 10 deletions(-) diff --git a/index.php b/index.php index ee07e2e5..5d7775e5 100644 --- a/index.php +++ b/index.php @@ -611,12 +611,10 @@ private function fetchUpdateServerResponse(string $updateURL): array { if ($response === false) { $curlError = curl_error($curl); - curl_close($curl); throw new \Exception('Could not do request to updater server: ' . $curlError); } $httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); - curl_close($curl); if ($httpCode !== 200 && $httpCode !== 204) { $this->silentLog('[warn] update server returned HTTP ' . $httpCode); @@ -789,7 +787,6 @@ private function downloadArchive(string $fromUrl, string $toLocation): bool { fclose($fp); unlink($toLocation); $this->silentLog('[warn] fail to download archive from ' . $fromUrl . '. Error: ' . $httpCode . ' ' . curl_error($ch)); - curl_close($ch); return false; } @@ -798,7 +795,6 @@ private function downloadArchive(string $fromUrl, string $toLocation): bool { $info = curl_getinfo($ch); $this->silentLog('[info] download stats: size=' . $this->formatBytes((int)$info['size_download']) . ' bytes; total_time=' . round($info['total_time'], 2) . ' secs; avg speed=' . $this->formatBytes((int)$info['speed_download']) . '/sec'); - curl_close($ch); fclose($fp); $this->silentLog('[info] end of downloadUpdate()'); diff --git a/lib/Updater.php b/lib/Updater.php index 848f4eb5..335d1c24 100644 --- a/lib/Updater.php +++ b/lib/Updater.php @@ -599,12 +599,10 @@ private function fetchUpdateServerResponse(string $updateURL): array { if ($response === false) { $curlError = curl_error($curl); - curl_close($curl); throw new \Exception('Could not do request to updater server: ' . $curlError); } $httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); - curl_close($curl); if ($httpCode !== 200 && $httpCode !== 204) { $this->silentLog('[warn] update server returned HTTP ' . $httpCode); @@ -777,7 +775,6 @@ private function downloadArchive(string $fromUrl, string $toLocation): bool { fclose($fp); unlink($toLocation); $this->silentLog('[warn] fail to download archive from ' . $fromUrl . '. Error: ' . $httpCode . ' ' . curl_error($ch)); - curl_close($ch); return false; } @@ -786,7 +783,6 @@ private function downloadArchive(string $fromUrl, string $toLocation): bool { $info = curl_getinfo($ch); $this->silentLog('[info] download stats: size=' . $this->formatBytes((int)$info['size_download']) . ' bytes; total_time=' . round($info['total_time'], 2) . ' secs; avg speed=' . $this->formatBytes((int)$info['speed_download']) . '/sec'); - curl_close($ch); fclose($fp); $this->silentLog('[info] end of downloadUpdate()'); diff --git a/tests/features/bootstrap/FeatureContext.php b/tests/features/bootstrap/FeatureContext.php index 30d529f7..79f4d1dd 100644 --- a/tests/features/bootstrap/FeatureContext.php +++ b/tests/features/bootstrap/FeatureContext.php @@ -122,7 +122,6 @@ public function theCurrentInstalledVersionIs($installed, $version) { throw new \Exception('Download failed for ' . $url . ' - HTTP code: ' . $httpCode); } - curl_close($ch); fclose($fp); } @@ -237,7 +236,6 @@ public function theArchiveForVersionIsAvailableLocally(string $version): void { throw new \Exception('Download failed for ' . $url . ' - HTTP code: ' . $httpCode); } - curl_close($ch); fclose($fp); } } diff --git a/updater.phar b/updater.phar index 97123c618321f944f7f9bbf955dbb9bcb6fd674f..26f869222601a6cbec98a743edb96dbc9d362945 100755 GIT binary patch delta 3158 zcmY*bdsLKV8vka#VZOODGcXJ=49qYH3=DD^8Ls0Dx8Wjp6>n@_k~9L=)ylHW}yQ=6S#8etYNA za8Ac?PVbi@cHfl_azm5}XcH#^&KJi6ZV~4Lek{%wu!~JqQD}UgVVGHixp8EiHSlc_ zqA+f^m|+A(>seIrGMfs5|6p?fgC(;8izImeq{I#MaY+H-&ysY&i~yuJ2NZ#&J=D_f zWZk1gD@`Cj1gLXf>QDU$@B?h-qnF9BJQpRZiwHFf7C}3bv-J@ho z83hrw(}*^7Oy?81$^_hTDhGVHN>dnl=f&^Ha#b>X=v2)Gyr@F80cxauY7BRW+6&)5 zRcC{OH7vvQo?QJlxuBj!w!SUX?vTJ%^j}_!(QV=;5=m2}?0;>V7S`RQ?*~lJsZru7K!Y)gBAmOc`#ykaGgMR87kqr#;^eJb;DB7 zwuV-r{pR!{^0QkAMoG3AWMtgH@zq;cGg%QL0WP12Vg8=hQbCRx()p<^Y^b&Y2cS_v zYsE(okdBX)4F5$20b7%`@CJ;SsZx0aE^b{qfrbsEmN z1SOvh{SEj#5xP(*jG{upFmmHA^6$79zT+mV!OU93BoTcZV+lycUjQ<1&>)u(l|MxjLe@kjXF`|A%(g%$=j*3t@b2ng<-; z(y)4pHpdccEO4kveS{ixHAR#I4n$M|s?CVY%}@o>Z^m9yMk2jB63a0ViE@gl`5?C< z3ad8|g(GUPRD$JwwD_YF4i}m7n#g6Vo=jPS$We<7gics6n|0K^>5CVi5&|F|s}&?& zMutgTe=d~t2HQx7H31~vw_?6@(aV7TZ8VzuEP6T6i8ge9v(4YZHmqM@3~q+{7^DyT z>4}&^Fm{Q0Q0X1mL&i)tvSJo)f(L09rDuLr0Ii`f*9iu>bX`*qp<17gRaS{acrgQY~2$7*J*?ct*&(gGSe{%$vG z)K1{EHVPQIWIo;Dw0f6QuzER4hLP+%atAt3*m{>!6#L$wQgXkPfa$keuaJ}Rf|Q)U ztCOg>LxDIt2U9U^w^A|d*=d-*5xPG*=QVr|O%a}EP;A<;R!L0><2IazEnsotcJ84T z?4H5B!sa7~ofgPWIqjeBjo+7m*-2*@q*gfxQ@4|TyqA!+Qy5e->6G$vgG9@nibws2 z=HUA|HV5q_rPqSWE7Xo+XsPfD*!CGEq1-hLk(^D(jbV5Bfbmr|!#sE9)??JRiHx~I z$eS)D*gxUIgmW4AWR+#$Q?@4q=Oc}_=FrNwGO1rCvMpE6r<`E}i6&D4(xyzDwudv( zjDtq8<9Txlja%T>@aKnF8M&FM2X0Xou7+H?87rge+|+Aua~c5ooZkT|b8!;tb8+I1=H@}P_uUYjUg6dgyITtaxo+GZ``wtHJ8m?z zc|WB_`M>30a$g)80JW7#xByCY$DY@j-1aA0e5fYFVkHc74T{vU8A6YuRg{q_@;N*U~L!uB)mofKGvyUbD!lmk>J53P#hC%1_meSg)kFR{|h)QnVTN?)^{J$X!qgyJdk z(xjoU-Xhv5;xBx{KJI7YEzzPAy!jNX`^ANU|1ny$p4Y@n?%xi4%Kl|W@0KBUv3Q2P zHAWQD_s!qfq57Gd591`uXMW#K6BYeZPkU>;gq{F;r1Ws~$mo&Nqo7AgkBT03Uu(QZ z^I^%b{JsCYndZ20{wr_T#F3E(-y`pQaJog`&?6n}X|-PM+!UIBu>9g{2R2=Ijf_r7 do!T#+_RO2#e5pGlGW+_SK{FjlrZ~SM|Np^**}?z- delta 3221 zcmY*bc~nzZ8h^=qge@$Auq5nZNeGLCC1FuO+_#DgRLX#*T1V7lZKWKn=pfwM zH}#Cm)OPIATIiVt3y#&PGo@4OIvvX&BcL<2XDp!8#oA(>`@S!<_K$mh`R@Jp?WOxl z-t{Ya{r{1$+o!w8=aL*ii!=przSIi%oU|D5eQBZ4!}~2<0nqPqC4i5(Y(S?U(%bz!V5y5*+MO2g zEYZml$+v!LVB%$kfEBVLz`Zgw@{uebXeD0;xPY$$eBFm%@$-PLkS_;3CSL}~DUe>H zSPb-Og$M7IUcf3PIz^O~K#wUi0fST+tXGA>ZC0hj{c%;SE_N>@q)Eh=TMkW<8>%RX zsFOydd(wHIDAXq4PEaSq!!4S^je*`sQm0OXhaUATz^iIh>!(55tHE$z)VSgO15GX{ zSjRF<|GE0N$z@F(+3~hqw?~FPi1;;UeTh_RGl8>yCBtkR9G@mHX)%I#wW#vG7R!+4 zUki+_)Y-gc?<>i&r}})gUL`I*jb3ZZQ5Wp~f>r2Xf3jKxFQC7$I^4MYz^%Wph5x5Ar zuTUTFM7!saLX$ssRiz&DM{K-)T6 zh0ZS?EGCZ%#9&n9d83?+8hK&sEjEIz3gUpvD`A*_WUQ|u?-;X%H=koebPYHFO(I5D z{beOtJ?lq#;k|#ek$fX9k2oUcVD!H^7`wMW7-ox11Y z4kh=7JORE=ge+8vW2jUzj3Rg!8Bd56%Z=OIR3a+a0zP@Ut+S7KdpL#Au0Pm|NF0W-=9OAvNI|a>ir;#!pPMf#FLU& zcoH2iGN88R@HxOV6kY?Ui9oE2fV7iS5!gJcNTll{G5Z;UenUgR57!iLMK0yV(exBN$THBx2Hr ziy@@n0574!*Ff$_w6~J}Zk6{iqkgYRZ z8!0zcF{k zxP-ZKPDXTzexx8N0HkY^aJjykgsGnN(T-#%ytgJ}+(XH}21@ZYP>QdCQpzEc9dxO+ zwguWqHLbB(%kje0QC81y@l~=W71bO_#T_%5ifY_xXnt23R_a0;RxUIhcTW#hJ7NnP zA(3XE+Atj#tee2$Z4xnZ>HKG*kYnjs$UGIpa2-d#fu0l>;8?m+NDrW53ZIyW+4o+! zNzPd<^i@H+>^g|{kR5Y3X~)#(W?&Al(KXUDyWtb)jj#-(a_h!M6*VI^>6HxZ1al@X z=@V4Bt?cZQg<0&NY!4GNI>Z?k z*?2+q7VFQSx1y=TS@=c0k%cBxvgd*Jo7ALoc$xTJun1{EoR*x<)737gK z6a-Bf3H}*8Rf5SXDEIk_hxDF-x)Dr?+UwRyX z$zF7^*}D+v^F9nO!{ymfhO4Tt414Ec8LqIxa%jHxo#mZ7%OwLl%cYhU<=Rafn(Nj! zKfSR*_{|@s`*c6i)>!fPfbCCGPOtshb>l$du+%L1Id7vaZ=m8s=?|q!d&)Y;n#`=M z`qcxqTJ|C<%XZjZcIQBxo;~-D90}z%^4lrnzzVaZLn7?@EBi|ylVFaK3<_F38}QhL zQTRSavO$O%{^@p$MbakR`GEDzD0d9AOQbV0FT_fM29E!o9bPeW)0V*1&HTQXA@Mw} ztkY%X=<%aRMh{PqoE`-|N_tfEsOixRxU5?3+44JGXFWzCcERjN)2{34@pP@>_e0+m z9DnlO`G;S<{>