From 575a97b6b7f7c701c816c80886a00df3a588a086 Mon Sep 17 00:00:00 2001 From: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com> Date: Mon, 28 Sep 2026 10:29:01 +0200 Subject: [PATCH] chore(deps): update resend-laravel to 1.5 (resend-php 1.16) resend-php 1.x reads the statusCode of Resend errors and knows more error names. Coolify only uses emails->send and the exception classes, which did not change. Co-Authored-By: Claude Opus 5.5 --- app/Notifications/Channels/EmailChannel.php | 4 +- composer.json | 4 +- composer.lock | 152 ++++++++++---------- 3 files changed, 80 insertions(+), 80 deletions(-) diff --git a/app/Notifications/Channels/EmailChannel.php b/app/Notifications/Channels/EmailChannel.php index d32f639095..bcf976f815 100644 --- a/app/Notifications/Channels/EmailChannel.php +++ b/app/Notifications/Channels/EmailChannel.php @@ -151,8 +151,8 @@ class EmailChannel /** * Read the status code and error name from a Resend error. * - * resend-php 0.18 reads only the legacy "code" key in getErrorCode(), while the - * API returns {"statusCode", "name", "message"}, so read the raw contents instead. + * getErrorCode() and getErrorType() fail when a body has neither "code"/"statusCode" + * nor "type"/"name" (for example the legacy nested format), so read the raw contents. * * @return array{status: int, name: ?string} */ diff --git a/composer.json b/composer.json index d5b56e3c15..85352ebb56 100644 --- a/composer.json +++ b/composer.json @@ -11,6 +11,7 @@ "server" ], "require": { + "php": "^8.4", "danharrin/livewire-rate-limiting": "^2.2.1", "doctrine/dbal": "^4.4.4", "firebase/php-jwt": "7.1.0", @@ -34,13 +35,12 @@ "log1x/laravel-webfonts": "^2.0.1", "lorisleiva/laravel-actions": "^2.10.2", "nubs/random-name-generator": "^2.2", - "php": "^8.4", "phpseclib/phpseclib": "^3.0.56", "pion/laravel-chunk-upload": "^1.6.1", "poliander/cron": "^3.3.1", "purplepixie/phpdns": "^2.3.6", "pusher/pusher-php-server": "^7.3.0", - "resend/resend-laravel": "^0.20.0", + "resend/resend-laravel": "^1.5", "sentry/sentry-laravel": "^4.27.0", "socialiteproviders/authentik": "^5.3", "socialiteproviders/clerk": "^5.1", diff --git a/composer.lock b/composer.lock index f7ac6316d4..04a8098f0e 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "ebe25735ad92bf75fc528fc0de1d894b", + "content-hash": "4bd32065e36d125896fdf4d47cadd915", "packages": [ { "name": "aws/aws-crt-php", @@ -896,27 +896,25 @@ }, { "name": "doctrine/lexer", - "version": "3.0.1", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd" + "reference": "e96fe45e92a54233726014a7cc7340abf29bb14c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", - "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/e96fe45e92a54233726014a7cc7340abf29bb14c", + "reference": "e96fe45e92a54233726014a7cc7340abf29bb14c", "shasum": "" }, "require": { "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^12", - "phpstan/phpstan": "^1.10", - "phpunit/phpunit": "^10.5", - "psalm/plugin-phpunit": "^0.18.3", - "vimeo/psalm": "^5.21" + "doctrine/coding-standard": "^14", + "phpstan/phpstan": "^2", + "phpunit/phpunit": "^10.5.58 || ^12.5.4" }, "type": "library", "autoload": { @@ -953,7 +951,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/3.0.1" + "source": "https://github.com/doctrine/lexer/tree/3.0.2" }, "funding": [ { @@ -969,7 +967,7 @@ "type": "tidelift" } ], - "time": "2024-02-05T11:56:58+00:00" + "time": "2026-06-14T20:44:06+00:00" }, { "name": "dragonmantank/cron-expression", @@ -1623,16 +1621,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "2.13.0", + "version": "2.13.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "dad89620b7a6edb60c15858442eb2e408b45d8f4" + "reference": "95e7828100de18b4e269fb1703be530082d5166d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/dad89620b7a6edb60c15858442eb2e408b45d8f4", - "reference": "dad89620b7a6edb60c15858442eb2e408b45d8f4", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/95e7828100de18b4e269fb1703be530082d5166d", + "reference": "95e7828100de18b4e269fb1703be530082d5166d", "shasum": "" }, "require": { @@ -1722,7 +1720,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.13.0" + "source": "https://github.com/guzzle/psr7/tree/2.13.1" }, "funding": [ { @@ -1738,7 +1736,7 @@ "type": "tidelift" } ], - "time": "2026-07-16T22:23:49+00:00" + "time": "2026-08-24T09:13:11+00:00" }, { "name": "guzzlehttp/uri-template", @@ -7023,30 +7021,30 @@ }, { "name": "resend/resend-laravel", - "version": "v0.20.0", + "version": "v1.5.0", "source": { "type": "git", "url": "https://github.com/resend/resend-laravel.git", - "reference": "f32c2f484df2bc65fba8ea9ab9b210cd42d9f3ed" + "reference": "3f67df5b6f61353b09d7f849e6c81df8cdbc079f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/resend/resend-laravel/zipball/f32c2f484df2bc65fba8ea9ab9b210cd42d9f3ed", - "reference": "f32c2f484df2bc65fba8ea9ab9b210cd42d9f3ed", + "url": "https://api.github.com/repos/resend/resend-laravel/zipball/3f67df5b6f61353b09d7f849e6c81df8cdbc079f", + "reference": "3f67df5b6f61353b09d7f849e6c81df8cdbc079f", "shasum": "" }, "require": { - "illuminate/http": "^10.0|^11.0|^12.0", - "illuminate/support": "^10.0|^11.0|^12.0", + "illuminate/http": "^10.0|^11.0|^12.0|^13.0", + "illuminate/support": "^10.0|^11.0|^12.0|^13.0", "php": "^8.1", - "resend/resend-php": "^0.18.0", - "symfony/mailer": "^6.2|^7.0" + "resend/resend-php": "^1.0.0", + "symfony/mailer": "^6.2|^7.0|^8.0" }, "require-dev": { "friendsofphp/php-cs-fixer": "^3.14", "mockery/mockery": "^1.5", - "orchestra/testbench": "^8.17|^9.0|^10.0", - "pestphp/pest": "^2.0|^3.7" + "orchestra/testbench": "^8.17|^9.0|^10.8|^11.0", + "pestphp/pest": "^1.0|^2.0|^3.7|^4.0|^5.0" }, "type": "library", "extra": { @@ -7086,32 +7084,34 @@ ], "support": { "issues": "https://github.com/resend/resend-laravel/issues", - "source": "https://github.com/resend/resend-laravel/tree/v0.20.0" + "source": "https://github.com/resend/resend-laravel/tree/v1.5.0" }, - "time": "2025-08-04T19:26:47+00:00" + "time": "2026-09-17T20:41:15+00:00" }, { "name": "resend/resend-php", - "version": "v0.18.1", + "version": "v1.16.0", "source": { "type": "git", "url": "https://github.com/resend/resend-php.git", - "reference": "f20a9a50a7f705294af1662995c93bfd806fed3e" + "reference": "9ebdef978287dcd8cd17a399eebc977aa21cb402" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/resend/resend-php/zipball/f20a9a50a7f705294af1662995c93bfd806fed3e", - "reference": "f20a9a50a7f705294af1662995c93bfd806fed3e", + "url": "https://api.github.com/repos/resend/resend-php/zipball/9ebdef978287dcd8cd17a399eebc977aa21cb402", + "reference": "9ebdef978287dcd8cd17a399eebc977aa21cb402", "shasum": "" }, "require": { - "guzzlehttp/guzzle": "^7.5", - "php": "^8.1.0" + "guzzlehttp/guzzle": "^7.8.2 || ^8.0", + "guzzlehttp/psr7": "^2.6.3 || ^3.0", + "php": "^8.1.0", + "psr/http-client": "^1.0" }, "require-dev": { "friendsofphp/php-cs-fixer": "^3.13", "mockery/mockery": "^1.6", - "pestphp/pest": "^2.0" + "pestphp/pest": "^1.0|^2.0|^3.0|^4.0|^5.0" }, "type": "library", "autoload": { @@ -7143,9 +7143,9 @@ ], "support": { "issues": "https://github.com/resend/resend-php/issues", - "source": "https://github.com/resend/resend-php/tree/v0.18.1" + "source": "https://github.com/resend/resend-php/tree/v1.16.0" }, - "time": "2025-07-04T00:12:53+00:00" + "time": "2026-09-25T18:18:55+00:00" }, { "name": "sentry/sentry", @@ -9161,16 +9161,16 @@ }, { "name": "symfony/event-dispatcher", - "version": "v8.1.2", + "version": "v8.1.5", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "c14c05a9e6da7f5e375e6efc28952c7e7dbddffb" + "reference": "7458da64220376b2e0dc2d8451bf43382c1ad297" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/c14c05a9e6da7f5e375e6efc28952c7e7dbddffb", - "reference": "c14c05a9e6da7f5e375e6efc28952c7e7dbddffb", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/7458da64220376b2e0dc2d8451bf43382c1ad297", + "reference": "7458da64220376b2e0dc2d8451bf43382c1ad297", "shasum": "" }, "require": { @@ -9223,7 +9223,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v8.1.2" + "source": "https://github.com/symfony/event-dispatcher/tree/v8.1.5" }, "funding": [ { @@ -9243,7 +9243,7 @@ "type": "tidelift" } ], - "time": "2026-07-22T15:42:13+00:00" + "time": "2026-08-21T17:47:34+00:00" }, { "name": "symfony/event-dispatcher-contracts", @@ -9667,16 +9667,16 @@ }, { "name": "symfony/mailer", - "version": "v7.4.15", + "version": "v7.4.19", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "68c1f27c97edd0222eb8d440a6c8c4da5354ab46" + "reference": "6f6f2441bef07a42d2617b9b3aadf04a321aa514" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/68c1f27c97edd0222eb8d440a6c8c4da5354ab46", - "reference": "68c1f27c97edd0222eb8d440a6c8c4da5354ab46", + "url": "https://api.github.com/repos/symfony/mailer/zipball/6f6f2441bef07a42d2617b9b3aadf04a321aa514", + "reference": "6f6f2441bef07a42d2617b9b3aadf04a321aa514", "shasum": "" }, "require": { @@ -9727,7 +9727,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v7.4.15" + "source": "https://github.com/symfony/mailer/tree/v7.4.19" }, "funding": [ { @@ -9747,20 +9747,20 @@ "type": "tidelift" } ], - "time": "2026-07-28T07:33:02+00:00" + "time": "2026-09-15T06:01:15+00:00" }, { "name": "symfony/mime", - "version": "v7.4.16", + "version": "v7.4.19", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "20094b76a7106dbe978d31cd3bd7aa1ed248d0e5" + "reference": "f8ac7d0a800bcabbcd1f7de56594cf05e6cd5693" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/20094b76a7106dbe978d31cd3bd7aa1ed248d0e5", - "reference": "20094b76a7106dbe978d31cd3bd7aa1ed248d0e5", + "url": "https://api.github.com/repos/symfony/mime/zipball/f8ac7d0a800bcabbcd1f7de56594cf05e6cd5693", + "reference": "f8ac7d0a800bcabbcd1f7de56594cf05e6cd5693", "shasum": "" }, "require": { @@ -9784,7 +9784,7 @@ "symfony/process": "^6.4|^7.0|^8.0", "symfony/property-access": "^6.4|^7.0|^8.0", "symfony/property-info": "^6.4|^7.0|^8.0", - "symfony/serializer": "^6.4.3|^7.0.3|^8.0" + "symfony/serializer": "^6.4.44|^7.4.17|^8.1.5" }, "type": "library", "autoload": { @@ -9816,7 +9816,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v7.4.16" + "source": "https://github.com/symfony/mime/tree/v7.4.19" }, "funding": [ { @@ -9836,7 +9836,7 @@ "type": "tidelift" } ], - "time": "2026-08-07T14:56:57+00:00" + "time": "2026-09-04T10:45:44+00:00" }, { "name": "symfony/options-resolver", @@ -10076,16 +10076,16 @@ }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.38.1", + "version": "v1.42.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "dc21118016c039a66235cf93d96b435ffb282412" + "reference": "51b5ff5ba85452b31ec6f55490b08148612339d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/dc21118016c039a66235cf93d96b435ffb282412", - "reference": "dc21118016c039a66235cf93d96b435ffb282412", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/51b5ff5ba85452b31ec6f55490b08148612339d9", + "reference": "51b5ff5ba85452b31ec6f55490b08148612339d9", "shasum": "" }, "require": { @@ -10139,7 +10139,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.38.1" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.42.0" }, "funding": [ { @@ -10159,20 +10159,20 @@ "type": "tidelift" } ], - "time": "2026-05-25T15:22:23+00:00" + "time": "2026-08-24T10:51:20+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.38.0", + "version": "v1.42.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "2d446c214bdbe5b71bde5011b060a05fece3ae6b" + "reference": "aa20edea75bd9c48cfecc8360922e5a6e5c44502" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/2d446c214bdbe5b71bde5011b060a05fece3ae6b", - "reference": "2d446c214bdbe5b71bde5011b060a05fece3ae6b", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/aa20edea75bd9c48cfecc8360922e5a6e5c44502", + "reference": "aa20edea75bd9c48cfecc8360922e5a6e5c44502", "shasum": "" }, "require": { @@ -10224,7 +10224,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.38.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.42.0" }, "funding": [ { @@ -10244,7 +10244,7 @@ "type": "tidelift" } ], - "time": "2026-05-25T13:48:31+00:00" + "time": "2026-08-07T06:33:24+00:00" }, { "name": "symfony/polyfill-mbstring", @@ -11243,16 +11243,16 @@ }, { "name": "symfony/service-contracts", - "version": "v3.7.1", + "version": "v3.7.3", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "c0a284bab1ed8aa0417e3d69250ab437739563a0" + "reference": "15e6a07ec2a2c75ceb1b21dd98105ee8456d2257" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/c0a284bab1ed8aa0417e3d69250ab437739563a0", - "reference": "c0a284bab1ed8aa0417e3d69250ab437739563a0", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/15e6a07ec2a2c75ceb1b21dd98105ee8456d2257", + "reference": "15e6a07ec2a2c75ceb1b21dd98105ee8456d2257", "shasum": "" }, "require": { @@ -11306,7 +11306,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.7.1" + "source": "https://github.com/symfony/service-contracts/tree/v3.7.3" }, "funding": [ { @@ -11326,7 +11326,7 @@ "type": "tidelift" } ], - "time": "2026-06-16T09:55:08+00:00" + "time": "2026-07-27T15:39:01+00:00" }, { "name": "symfony/string",