spreed/.patches/firebase-php-jwt-572.diff
Joas Schilling 557b657372
fix: Patch PHP-JWT for PHP 8.4 compatibility
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-11-09 04:12:22 +01:00

80 lines
2.9 KiB
Diff

diff --git a/src/CachedKeySet.php b/src/CachedKeySet.php
index 65bab74f..8e8e8d68 100644
--- a/src/CachedKeySet.php
+++ b/src/CachedKeySet.php
@@ -80,9 +80,9 @@ public function __construct(
ClientInterface $httpClient,
RequestFactoryInterface $httpFactory,
CacheItemPoolInterface $cache,
- int $expiresAfter = null,
+ ?int $expiresAfter = null,
bool $rateLimit = false,
- string $defaultAlg = null
+ ?string $defaultAlg = null
) {
$this->jwksUri = $jwksUri;
$this->httpClient = $httpClient;
@@ -180,7 +180,7 @@ private function keyIdExists(string $keyId): bool
$jwksResponse = $this->httpClient->sendRequest($request);
if ($jwksResponse->getStatusCode() !== 200) {
throw new UnexpectedValueException(
- sprintf('HTTP Error: %d %s for URI "%s"',
+ \sprintf('HTTP Error: %d %s for URI "%s"',
$jwksResponse->getStatusCode(),
$jwksResponse->getReasonPhrase(),
$this->jwksUri,
diff --git a/src/JWK.php b/src/JWK.php
index 63fb2484..6efc2fe3 100644
--- a/src/JWK.php
+++ b/src/JWK.php
@@ -52,7 +52,7 @@ class JWK
*
* @uses parseKey
*/
- public static function parseKeySet(array $jwks, string $defaultAlg = null): array
+ public static function parseKeySet(array $jwks, ?string $defaultAlg = null): array
{
$keys = [];
@@ -93,7 +93,7 @@ public static function parseKeySet(array $jwks, string $defaultAlg = null): arra
*
* @uses createPemFromModulusAndExponent
*/
- public static function parseKey(array $jwk, string $defaultAlg = null): ?Key
+ public static function parseKey(array $jwk, ?string $defaultAlg = null): ?Key
{
if (empty($jwk)) {
throw new InvalidArgumentException('JWK must not be empty');
@@ -212,7 +212,7 @@ private static function createPemFromCrvAndXYCoordinates(string $crv, string $x,
)
);
- return sprintf(
+ return \sprintf(
"-----BEGIN PUBLIC KEY-----\n%s\n-----END PUBLIC KEY-----\n",
wordwrap(base64_encode($pem), 64, "\n", true)
);
diff --git a/src/JWT.php b/src/JWT.php
index e9d75639..9100bf0f 100644
--- a/src/JWT.php
+++ b/src/JWT.php
@@ -96,7 +96,7 @@ class JWT
public static function decode(
string $jwt,
$keyOrKeyArray,
- stdClass &$headers = null
+ ?stdClass &$headers = null
): stdClass {
// Validate JWT
$timestamp = \is_null(static::$timestamp) ? \time() : static::$timestamp;
@@ -200,8 +200,8 @@ public static function encode(
array $payload,
$key,
string $alg,
- string $keyId = null,
- array $head = null
+ ?string $keyId = null,
+ ?array $head = null
): string {
$header = ['typ' => 'JWT'];
if (isset($head) && \is_array($head)) {