[Composer] Bump guzzlehttp/guzzle to version 7 to suppress deprecation notices

- Bump divineomega/password_exposed to version 3 to remove dependency on Guzzle version 6
- Add new ICanHandleHttpResponses->getBodyString method to solve inheritance mismatch with GuzzleHttp\Psr7\ResponseInterface->getBody return type
This commit is contained in:
Hypolite Petovan 2024-01-12 01:12:48 -05:00
parent 728130908e
commit e8c256bcff
34 changed files with 450 additions and 381 deletions

View file

@ -29,12 +29,12 @@
"ext-xml": "*", "ext-xml": "*",
"asika/simple-console": "^1.0", "asika/simple-console": "^1.0",
"bacon/bacon-qr-code": "^2.0.0", "bacon/bacon-qr-code": "^2.0.0",
"divineomega/password_exposed": "^2.8", "divineomega/password_exposed": "^3",
"enyo/dropzone": "^5.9", "enyo/dropzone": "^5.9",
"ezyang/htmlpurifier": "^4.7", "ezyang/htmlpurifier": "^4.7",
"friendica/json-ld": "^1.0", "friendica/json-ld": "^1.0",
"geekwright/po": "^2.0", "geekwright/po": "^2.0",
"guzzlehttp/guzzle": "^6.5", "guzzlehttp/guzzle": "^7",
"guzzlehttp/oauth-subscriber": "^0.6", "guzzlehttp/oauth-subscriber": "^0.6",
"kornrunner/blurhash": "^1.2", "kornrunner/blurhash": "^1.2",
"league/html-to-markdown": "^4.8", "league/html-to-markdown": "^4.8",

625
composer.lock generated
View file

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"content-hash": "082b16e2c88895f1a03d5b0ffe678ba7", "content-hash": "356019e5d0c92aae938f5292dd0fd103",
"packages": [ "packages": [
{ {
"name": "asika/simple-console", "name": "asika/simple-console",
@ -507,38 +507,101 @@
}, },
{ {
"name": "divineomega/password_exposed", "name": "divineomega/password_exposed",
"version": "v2.8.0", "version": "v3.2.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/DivineOmega/password_exposed.git", "url": "https://github.com/DivineOmega/password_exposed.git",
"reference": "908ed8e62ef95411bd0f866e29c69cef2bbca880" "reference": "327f93ee5cab54622077bcae721412b55be16720"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/DivineOmega/password_exposed/zipball/908ed8e62ef95411bd0f866e29c69cef2bbca880", "url": "https://api.github.com/repos/DivineOmega/password_exposed/zipball/327f93ee5cab54622077bcae721412b55be16720",
"reference": "908ed8e62ef95411bd0f866e29c69cef2bbca880", "reference": "327f93ee5cab54622077bcae721412b55be16720",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"divineomega/do-file-cache-psr-6": "^2.0", "divineomega/do-file-cache-psr-6": "^2.0",
"guzzlehttp/guzzle": "^6.3", "divineomega/psr-18-guzzle-adapter": "^1.0",
"paragonie/certainty": "^1|^2", "nyholm/psr7": "^1.0",
"php": ">=5.6" "paragonie/certainty": "^2.4",
"php": "^7.1||^8.0",
"php-http/discovery": "^1.6",
"psr/cache": "^1.0",
"psr/http-client": "^1.0",
"psr/http-factory-implementation": "^1.0",
"psr/http-message": "^1.0",
"psr/http-message-implementation": "^1.0"
}, },
"require-dev": { "require-dev": {
"fzaninotto/faker": "^1.7", "fzaninotto/faker": "^1.7",
"kriswallsmith/buzz": "^1.0",
"php-coveralls/php-coveralls": "^2.1", "php-coveralls/php-coveralls": "^2.1",
"phpunit/phpunit": "^6.5", "phpunit/phpunit": "^7.0||^8.0",
"vimeo/psalm": "^1" "symfony/cache": "^4.2.12",
"vimeo/psalm": "^4"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "3.0-dev"
}
},
"autoload": {
"files": [
"src/PasswordExposedFunction.php"
],
"psr-4": {
"DivineOmega\\PasswordExposed\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"LGPL-3.0-only"
],
"authors": [
{
"name": "Jordan Hall",
"email": "jordan@hall05.co.uk"
},
{
"name": "Contributors",
"homepage": "https://github.com/DivineOmega/password_exposed/graphs/contributors"
}
],
"description": "This PHP package provides a `password_exposed` helper function, that uses the haveibeenpwned.com API to check if a password has been exposed in a data breach.",
"homepage": "https://github.com/DivineOmega/password_exposed",
"funding": [
{
"url": "https://github.com/DivineOmega",
"type": "github"
}
],
"time": "2021-04-20T09:34:23+00:00"
},
{
"name": "divineomega/psr-18-guzzle-adapter",
"version": "v1.2.0",
"source": {
"type": "git",
"url": "https://github.com/DivineOmega/psr-18-guzzle-adapter.git",
"reference": "a2bdcddd4d4a17aac460e58d1e064e6bd2de5e57"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/DivineOmega/psr-18-guzzle-adapter/zipball/a2bdcddd4d4a17aac460e58d1e064e6bd2de5e57",
"reference": "a2bdcddd4d4a17aac460e58d1e064e6bd2de5e57",
"shasum": ""
},
"require": {
"guzzlehttp/guzzle": "^6.3||^7.0",
"php": "^7.1||^8.0",
"psr/http-client": "^1.0"
}, },
"type": "library", "type": "library",
"autoload": { "autoload": {
"psr-4": { "psr-4": {
"DivineOmega\\PasswordExposed\\": "src/" "DivineOmega\\Psr18GuzzleAdapter\\": "src/"
}, }
"files": [
"src/PasswordExposedFunction.php"
]
}, },
"notification-url": "https://packagist.org/downloads/", "notification-url": "https://packagist.org/downloads/",
"license": [ "license": [
@ -550,8 +613,14 @@
"email": "jordan@hall05.co.uk" "email": "jordan@hall05.co.uk"
} }
], ],
"description": "This PHP package provides a `password_exposed` helper function, that uses the haveibeenpwned.com API to check if a password has been exposed in a data breach.", "description": "PSR-18 adapter for the Guzzle HTTP client",
"time": "2019-01-25T12:00:28+00:00" "funding": [
{
"url": "https://github.com/DivineOmega",
"type": "github"
}
],
"time": "2021-04-20T08:50:57+00:00"
}, },
{ {
"name": "enyo/dropzone", "name": "enyo/dropzone",
@ -871,37 +940,47 @@
}, },
{ {
"name": "guzzlehttp/guzzle", "name": "guzzlehttp/guzzle",
"version": "6.5.8", "version": "7.8.1",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/guzzle/guzzle.git", "url": "https://github.com/guzzle/guzzle.git",
"reference": "a52f0440530b54fa079ce76e8c5d196a42cad981" "reference": "41042bc7ab002487b876a0683fc8dce04ddce104"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/guzzle/guzzle/zipball/a52f0440530b54fa079ce76e8c5d196a42cad981", "url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104",
"reference": "a52f0440530b54fa079ce76e8c5d196a42cad981", "reference": "41042bc7ab002487b876a0683fc8dce04ddce104",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"ext-json": "*", "ext-json": "*",
"guzzlehttp/promises": "^1.0", "guzzlehttp/promises": "^1.5.3 || ^2.0.1",
"guzzlehttp/psr7": "^1.9", "guzzlehttp/psr7": "^1.9.1 || ^2.5.1",
"php": ">=5.5", "php": "^7.2.5 || ^8.0",
"symfony/polyfill-intl-idn": "^1.17" "psr/http-client": "^1.0",
"symfony/deprecation-contracts": "^2.2 || ^3.0"
},
"provide": {
"psr/http-client-implementation": "1.0"
}, },
"require-dev": { "require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
"ext-curl": "*", "ext-curl": "*",
"phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4 || ^7.0", "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999",
"psr/log": "^1.1" "php-http/message-factory": "^1.1",
"phpunit/phpunit": "^8.5.36 || ^9.6.15",
"psr/log": "^1.1 || ^2.0 || ^3.0"
}, },
"suggest": { "suggest": {
"ext-curl": "Required for CURL handler support",
"ext-intl": "Required for Internationalized Domain Name (IDN) support",
"psr/log": "Required for using the Log middleware" "psr/log": "Required for using the Log middleware"
}, },
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "bamarni-bin": {
"dev-master": "6.5-dev" "bin-links": true,
"forward-command": false
} }
}, },
"autoload": { "autoload": {
@ -954,13 +1033,14 @@
} }
], ],
"description": "Guzzle is a PHP HTTP client library", "description": "Guzzle is a PHP HTTP client library",
"homepage": "http://guzzlephp.org/",
"keywords": [ "keywords": [
"client", "client",
"curl", "curl",
"framework", "framework",
"http", "http",
"http client", "http client",
"psr-18",
"psr-7",
"rest", "rest",
"web service" "web service"
], ],
@ -978,7 +1058,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2022-06-20T22:16:07+00:00" "time": "2023-12-03T20:35:24+00:00"
}, },
{ {
"name": "guzzlehttp/oauth-subscriber", "name": "guzzlehttp/oauth-subscriber",
@ -1037,29 +1117,33 @@
}, },
{ {
"name": "guzzlehttp/promises", "name": "guzzlehttp/promises",
"version": "1.5.3", "version": "2.0.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/guzzle/promises.git", "url": "https://github.com/guzzle/promises.git",
"reference": "67ab6e18aaa14d753cc148911d273f6e6cb6721e" "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/guzzle/promises/zipball/67ab6e18aaa14d753cc148911d273f6e6cb6721e", "url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223",
"reference": "67ab6e18aaa14d753cc148911d273f6e6cb6721e", "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=5.5" "php": "^7.2.5 || ^8.0"
}, },
"require-dev": { "require-dev": {
"symfony/phpunit-bridge": "^4.4 || ^5.1" "bamarni/composer-bin-plugin": "^1.8.2",
"phpunit/phpunit": "^8.5.36 || ^9.6.15"
}, },
"type": "library", "type": "library",
"extra": {
"bamarni-bin": {
"bin-links": true,
"forward-command": false
}
},
"autoload": { "autoload": {
"files": [
"src/functions_include.php"
],
"psr-4": { "psr-4": {
"GuzzleHttp\\Promise\\": "src/" "GuzzleHttp\\Promise\\": "src/"
} }
@ -1108,42 +1192,48 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-05-21T12:31:43+00:00" "time": "2023-12-03T20:19:20+00:00"
}, },
{ {
"name": "guzzlehttp/psr7", "name": "guzzlehttp/psr7",
"version": "1.9.1", "version": "2.6.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/guzzle/psr7.git", "url": "https://github.com/guzzle/psr7.git",
"reference": "e4490cabc77465aaee90b20cfc9a770f8c04be6b" "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/e4490cabc77465aaee90b20cfc9a770f8c04be6b", "url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221",
"reference": "e4490cabc77465aaee90b20cfc9a770f8c04be6b", "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=5.4.0", "php": "^7.2.5 || ^8.0",
"psr/http-message": "~1.0", "psr/http-factory": "^1.0",
"ralouphie/getallheaders": "^2.0.5 || ^3.0.0" "psr/http-message": "^1.1 || ^2.0",
"ralouphie/getallheaders": "^3.0"
}, },
"provide": { "provide": {
"psr/http-factory-implementation": "1.0",
"psr/http-message-implementation": "1.0" "psr/http-message-implementation": "1.0"
}, },
"require-dev": { "require-dev": {
"ext-zlib": "*", "bamarni/composer-bin-plugin": "^1.8.2",
"phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.10" "http-interop/http-factory-tests": "^0.9",
"phpunit/phpunit": "^8.5.36 || ^9.6.15"
}, },
"suggest": { "suggest": {
"laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
}, },
"type": "library", "type": "library",
"extra": {
"bamarni-bin": {
"bin-links": true,
"forward-command": false
}
},
"autoload": { "autoload": {
"files": [
"src/functions_include.php"
],
"psr-4": { "psr-4": {
"GuzzleHttp\\Psr7\\": "src/" "GuzzleHttp\\Psr7\\": "src/"
} }
@ -1182,6 +1272,11 @@
"name": "Tobias Schultze", "name": "Tobias Schultze",
"email": "webmaster@tubo-world.de", "email": "webmaster@tubo-world.de",
"homepage": "https://github.com/Tobion" "homepage": "https://github.com/Tobion"
},
{
"name": "Márk Sági-Kazár",
"email": "mark.sagikazar@gmail.com",
"homepage": "https://sagikazarmark.hu"
} }
], ],
"description": "PSR-7 message implementation that also provides common utility methods", "description": "PSR-7 message implementation that also provides common utility methods",
@ -1209,7 +1304,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-04-17T16:00:37+00:00" "time": "2023-12-03T20:05:35+00:00"
}, },
{ {
"name": "kornrunner/blurhash", "name": "kornrunner/blurhash",
@ -2316,11 +2411,11 @@
}, },
{ {
"name": "npm-asset/moment", "name": "npm-asset/moment",
"version": "2.29.4", "version": "2.30.1",
"dist": { "dist": {
"type": "tar", "type": "tar",
"url": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", "url": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz",
"shasum": "3dbe052889fe7c1b2ed966fcb3a77328964ef108" "shasum": "f8c91c07b7a786e30c59926df530b4eac96974ae"
}, },
"type": "npm-asset-library", "type": "npm-asset-library",
"extra": { "extra": {
@ -2394,7 +2489,7 @@
"time", "time",
"validate" "validate"
], ],
"time": "2022-07-06T16:01:32+00:00" "time": "2023-12-27T10:38:43+00:00"
}, },
{ {
"name": "npm-asset/perfect-scrollbar", "name": "npm-asset/perfect-scrollbar",
@ -2680,6 +2775,80 @@
], ],
"time": "2018-01-24T10:49:39+00:00" "time": "2018-01-24T10:49:39+00:00"
}, },
{
"name": "nyholm/psr7",
"version": "1.8.1",
"source": {
"type": "git",
"url": "https://github.com/Nyholm/psr7.git",
"reference": "aa5fc277a4f5508013d571341ade0c3886d4d00e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Nyholm/psr7/zipball/aa5fc277a4f5508013d571341ade0c3886d4d00e",
"reference": "aa5fc277a4f5508013d571341ade0c3886d4d00e",
"shasum": ""
},
"require": {
"php": ">=7.2",
"psr/http-factory": "^1.0",
"psr/http-message": "^1.1 || ^2.0"
},
"provide": {
"php-http/message-factory-implementation": "1.0",
"psr/http-factory-implementation": "1.0",
"psr/http-message-implementation": "1.0"
},
"require-dev": {
"http-interop/http-factory-tests": "^0.9",
"php-http/message-factory": "^1.0",
"php-http/psr7-integration-tests": "^1.0",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.4",
"symfony/error-handler": "^4.4"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.8-dev"
}
},
"autoload": {
"psr-4": {
"Nyholm\\Psr7\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Tobias Nyholm",
"email": "tobias.nyholm@gmail.com"
},
{
"name": "Martijn van der Ven",
"email": "martijn@vanderven.se"
}
],
"description": "A fast PHP7 implementation of PSR-7",
"homepage": "https://tnyholm.se",
"keywords": [
"psr-17",
"psr-7"
],
"funding": [
{
"url": "https://github.com/Zegnat",
"type": "github"
},
{
"url": "https://github.com/nyholm",
"type": "github"
}
],
"time": "2023-11-13T09:31:12+00:00"
},
{ {
"name": "paragonie/certainty", "name": "paragonie/certainty",
"version": "v2.8.2", "version": "v2.8.2",
@ -3083,17 +3252,91 @@
"time": "2018-01-25T20:47:17+00:00" "time": "2018-01-25T20:47:17+00:00"
}, },
{ {
"name": "phpseclib/phpseclib", "name": "php-http/discovery",
"version": "3.0.34", "version": "1.19.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/phpseclib/phpseclib.git", "url": "https://github.com/php-http/discovery.git",
"reference": "56c79f16a6ae17e42089c06a2144467acc35348a" "reference": "61e1a1eb69c92741f5896d9e05fb8e9d7e8bb0cb"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/56c79f16a6ae17e42089c06a2144467acc35348a", "url": "https://api.github.com/repos/php-http/discovery/zipball/61e1a1eb69c92741f5896d9e05fb8e9d7e8bb0cb",
"reference": "56c79f16a6ae17e42089c06a2144467acc35348a", "reference": "61e1a1eb69c92741f5896d9e05fb8e9d7e8bb0cb",
"shasum": ""
},
"require": {
"composer-plugin-api": "^1.0|^2.0",
"php": "^7.1 || ^8.0"
},
"conflict": {
"nyholm/psr7": "<1.0",
"zendframework/zend-diactoros": "*"
},
"provide": {
"php-http/async-client-implementation": "*",
"php-http/client-implementation": "*",
"psr/http-client-implementation": "*",
"psr/http-factory-implementation": "*",
"psr/http-message-implementation": "*"
},
"require-dev": {
"composer/composer": "^1.0.2|^2.0",
"graham-campbell/phpspec-skip-example-extension": "^5.0",
"php-http/httplug": "^1.0 || ^2.0",
"php-http/message-factory": "^1.0",
"phpspec/phpspec": "^5.1 || ^6.1 || ^7.3",
"symfony/phpunit-bridge": "^6.2"
},
"type": "composer-plugin",
"extra": {
"class": "Http\\Discovery\\Composer\\Plugin",
"plugin-optional": true
},
"autoload": {
"psr-4": {
"Http\\Discovery\\": "src/"
},
"exclude-from-classmap": [
"src/Composer/Plugin.php"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Márk Sági-Kazár",
"email": "mark.sagikazar@gmail.com"
}
],
"description": "Finds and installs PSR-7, PSR-17, PSR-18 and HTTPlug implementations",
"homepage": "http://php-http.org",
"keywords": [
"adapter",
"client",
"discovery",
"factory",
"http",
"message",
"psr17",
"psr7"
],
"time": "2023-11-30T16:49:05+00:00"
},
{
"name": "phpseclib/phpseclib",
"version": "3.0.35",
"source": {
"type": "git",
"url": "https://github.com/phpseclib/phpseclib.git",
"reference": "4b1827beabce71953ca479485c0ae9c51287f2fe"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/4b1827beabce71953ca479485c0ae9c51287f2fe",
"reference": "4b1827beabce71953ca479485c0ae9c51287f2fe",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -3186,7 +3429,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-11-27T11:13:31+00:00" "time": "2023-12-29T01:59:53+00:00"
}, },
{ {
"name": "pragmarx/google2fa", "name": "pragmarx/google2fa",
@ -3922,128 +4165,35 @@
"time": "2020-11-03T09:10:25+00:00" "time": "2020-11-03T09:10:25+00:00"
}, },
{ {
"name": "symfony/polyfill-intl-idn", "name": "symfony/deprecation-contracts",
"version": "v1.28.0", "version": "v2.5.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/polyfill-intl-idn.git", "url": "https://github.com/symfony/deprecation-contracts.git",
"reference": "ecaafce9f77234a6a449d29e49267ba10499116d" "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/ecaafce9f77234a6a449d29e49267ba10499116d", "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
"reference": "ecaafce9f77234a6a449d29e49267ba10499116d", "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
"shasum": ""
},
"require": {
"php": ">=7.1",
"symfony/polyfill-intl-normalizer": "^1.10",
"symfony/polyfill-php72": "^1.10"
},
"suggest": {
"ext-intl": "For best performance"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
}
},
"autoload": {
"files": [
"bootstrap.php"
],
"psr-4": {
"Symfony\\Polyfill\\Intl\\Idn\\": ""
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Laurent Bassin",
"email": "laurent@bassin.info"
},
{
"name": "Trevor Rowbotham",
"email": "trevor.rowbotham@pm.me"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions",
"homepage": "https://symfony.com",
"keywords": [
"compatibility",
"idn",
"intl",
"polyfill",
"portable",
"shim"
],
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2023-01-26T09:30:37+00:00"
},
{
"name": "symfony/polyfill-intl-normalizer",
"version": "v1.28.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
"reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
"reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=7.1" "php": ">=7.1"
}, },
"suggest": {
"ext-intl": "For best performance"
},
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-main": "1.28-dev" "dev-main": "2.5-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/polyfill", "name": "symfony/contracts",
"url": "https://github.com/symfony/polyfill" "url": "https://github.com/symfony/contracts"
} }
}, },
"autoload": { "autoload": {
"files": [ "files": [
"bootstrap.php" "function.php"
],
"psr-4": {
"Symfony\\Polyfill\\Intl\\Normalizer\\": ""
},
"classmap": [
"Resources/stubs"
] ]
}, },
"notification-url": "https://packagist.org/downloads/", "notification-url": "https://packagist.org/downloads/",
@ -4060,16 +4210,8 @@
"homepage": "https://symfony.com/contributors" "homepage": "https://symfony.com/contributors"
} }
], ],
"description": "Symfony polyfill for intl's Normalizer class and related functions", "description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com", "homepage": "https://symfony.com",
"keywords": [
"compatibility",
"intl",
"normalizer",
"polyfill",
"portable",
"shim"
],
"funding": [ "funding": [
{ {
"url": "https://symfony.com/sponsor", "url": "https://symfony.com/sponsor",
@ -4084,7 +4226,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2023-01-26T09:26:14+00:00" "time": "2022-01-02T09:53:40+00:00"
}, },
{ {
"name": "symfony/polyfill-php56", "name": "symfony/polyfill-php56",
@ -4151,79 +4293,6 @@
], ],
"time": "2020-10-23T14:02:19+00:00" "time": "2020-10-23T14:02:19+00:00"
}, },
{
"name": "symfony/polyfill-php72",
"version": "v1.28.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php72.git",
"reference": "70f4aebd92afca2f865444d30a4d2151c13c3179"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/70f4aebd92afca2f865444d30a4d2151c13c3179",
"reference": "70f4aebd92afca2f865444d30a4d2151c13c3179",
"shasum": ""
},
"require": {
"php": ">=7.1"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
}
},
"autoload": {
"files": [
"bootstrap.php"
],
"psr-4": {
"Symfony\\Polyfill\\Php72\\": ""
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Nicolas Grekas",
"email": "p@tchwork.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions",
"homepage": "https://symfony.com",
"keywords": [
"compatibility",
"polyfill",
"portable",
"shim"
],
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2023-01-26T09:26:14+00:00"
},
{ {
"name": "ua-parser/uap-php", "name": "ua-parser/uap-php",
"version": "v3.9.14", "version": "v3.9.14",
@ -5024,25 +5093,27 @@
}, },
{ {
"name": "nikic/php-parser", "name": "nikic/php-parser",
"version": "v4.18.0", "version": "v5.0.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/nikic/PHP-Parser.git", "url": "https://github.com/nikic/PHP-Parser.git",
"reference": "1bcbb2179f97633e98bbbc87044ee2611c7d7999" "reference": "4a21235f7e56e713259a6f76bf4b5ea08502b9dc"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/1bcbb2179f97633e98bbbc87044ee2611c7d7999", "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4a21235f7e56e713259a6f76bf4b5ea08502b9dc",
"reference": "1bcbb2179f97633e98bbbc87044ee2611c7d7999", "reference": "4a21235f7e56e713259a6f76bf4b5ea08502b9dc",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"ext-ctype": "*",
"ext-json": "*",
"ext-tokenizer": "*", "ext-tokenizer": "*",
"php": ">=7.0" "php": ">=7.4"
}, },
"require-dev": { "require-dev": {
"ircmaxell/php-yacc": "^0.0.7", "ircmaxell/php-yacc": "^0.0.7",
"phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
}, },
"bin": [ "bin": [
"bin/php-parse" "bin/php-parse"
@ -5050,7 +5121,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-master": "4.9-dev" "dev-master": "5.0-dev"
} }
}, },
"autoload": { "autoload": {
@ -5072,7 +5143,7 @@
"parser", "parser",
"php" "php"
], ],
"time": "2023-12-10T21:03:43+00:00" "time": "2024-01-07T17:17:35+00:00"
}, },
{ {
"name": "phar-io/manifest", "name": "phar-io/manifest",
@ -5179,23 +5250,23 @@
}, },
{ {
"name": "phpunit/php-code-coverage", "name": "phpunit/php-code-coverage",
"version": "9.2.29", "version": "9.2.30",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
"reference": "6a3a87ac2bbe33b25042753df8195ba4aa534c76" "reference": "ca2bd87d2f9215904682a9cb9bb37dda98e76089"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/6a3a87ac2bbe33b25042753df8195ba4aa534c76", "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ca2bd87d2f9215904682a9cb9bb37dda98e76089",
"reference": "6a3a87ac2bbe33b25042753df8195ba4aa534c76", "reference": "ca2bd87d2f9215904682a9cb9bb37dda98e76089",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"ext-dom": "*", "ext-dom": "*",
"ext-libxml": "*", "ext-libxml": "*",
"ext-xmlwriter": "*", "ext-xmlwriter": "*",
"nikic/php-parser": "^4.15", "nikic/php-parser": "^4.18 || ^5.0",
"php": ">=7.3", "php": ">=7.3",
"phpunit/php-file-iterator": "^3.0.3", "phpunit/php-file-iterator": "^3.0.3",
"phpunit/php-text-template": "^2.0.2", "phpunit/php-text-template": "^2.0.2",
@ -5248,7 +5319,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2023-09-19T04:57:46+00:00" "time": "2023-12-22T06:47:57+00:00"
}, },
{ {
"name": "phpunit/php-file-iterator", "name": "phpunit/php-file-iterator",
@ -5800,20 +5871,20 @@
}, },
{ {
"name": "sebastian/complexity", "name": "sebastian/complexity",
"version": "2.0.2", "version": "2.0.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/complexity.git", "url": "https://github.com/sebastianbergmann/complexity.git",
"reference": "739b35e53379900cc9ac327b2147867b8b6efd88" "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a",
"reference": "739b35e53379900cc9ac327b2147867b8b6efd88", "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"nikic/php-parser": "^4.7", "nikic/php-parser": "^4.18 || ^5.0",
"php": ">=7.3" "php": ">=7.3"
}, },
"require-dev": { "require-dev": {
@ -5849,7 +5920,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2020-10-26T15:52:27+00:00" "time": "2023-12-22T06:19:30+00:00"
}, },
{ {
"name": "sebastian/diff", "name": "sebastian/diff",
@ -6107,20 +6178,20 @@
}, },
{ {
"name": "sebastian/lines-of-code", "name": "sebastian/lines-of-code",
"version": "1.0.3", "version": "1.0.4",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/lines-of-code.git", "url": "https://github.com/sebastianbergmann/lines-of-code.git",
"reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5",
"reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"nikic/php-parser": "^4.6", "nikic/php-parser": "^4.18 || ^5.0",
"php": ">=7.3" "php": ">=7.3"
}, },
"require-dev": { "require-dev": {
@ -6156,7 +6227,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2020-11-28T06:42:11+00:00" "time": "2023-12-22T06:20:34+00:00"
}, },
{ {
"name": "sebastian/object-enumerator", "name": "sebastian/object-enumerator",

View file

@ -80,7 +80,7 @@ class Avatar
return $fields; return $fields;
} }
$img_str = $fetchResult->getBody(); $img_str = $fetchResult->getBodyString();
if (empty($img_str)) { if (empty($img_str)) {
Logger::debug('Avatar is invalid', ['avatar' => $avatar]); Logger::debug('Avatar is invalid', ['avatar' => $avatar]);
return $fields; return $fields;

View file

@ -120,7 +120,7 @@ class OEmbed
['https://www.youtube.com/', 'https://player.vimeo.com/'], $href); ['https://www.youtube.com/', 'https://player.vimeo.com/'], $href);
$result = DI::httpClient()->fetchFull($href . '&maxwidth=' . $a->getThemeInfoValue('videowidth')); $result = DI::httpClient()->fetchFull($href . '&maxwidth=' . $a->getThemeInfoValue('videowidth'));
if ($result->getReturnCode() === 200) { if ($result->getReturnCode() === 200) {
$json_string = $result->getBody(); $json_string = $result->getBodyString();
break; break;
} }
} }

View file

@ -263,7 +263,7 @@ class ErrorHandler
public function handleError(int $code, string $message, string $file = '', int $line = 0, ?array $context = []): bool public function handleError(int $code, string $message, string $file = '', int $line = 0, ?array $context = []): bool
{ {
if ($this->handleOnlyReportedErrors && !(error_reporting() & $code)) { if ($this->handleOnlyReportedErrors && !(error_reporting() & $code)) {
return false; return true;
} }
// fatal error codes are ignored if a fatal error handler is present as well to avoid duplicate log entries // fatal error codes are ignored if a fatal error handler is present as well to avoid duplicate log entries

View file

@ -234,7 +234,7 @@ class Search
$p = $page > 1 ? 'p=' . $page : ''; $p = $page > 1 ? 'p=' . $page : '';
$curlResult = DI::httpClient()->get(self::getGlobalDirectory() . '/search/people?' . $p . '&q=' . urlencode($search), HttpClientAccept::JSON); $curlResult = DI::httpClient()->get(self::getGlobalDirectory() . '/search/people?' . $p . '&q=' . urlencode($search), HttpClientAccept::JSON);
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
$searchResult = json_decode($curlResult->getBody(), true); $searchResult = json_decode($curlResult->getBodyString(), true);
if (!empty($searchResult['profiles'])) { if (!empty($searchResult['profiles'])) {
// Converting Directory Search results into contact-looking records // Converting Directory Search results into contact-looking records
$return = array_map(function ($result) { $return = array_map(function ($result) {

View file

@ -70,12 +70,12 @@ class ExternalResource implements ICanReadFromStorage
} }
if (!empty($fetchResult) && $fetchResult->isSuccess()) { if (!empty($fetchResult) && $fetchResult->isSuccess()) {
$this->logger->debug('Got picture', ['Content-Type' => $fetchResult->getHeader('Content-Type'), 'uid' => $data->uid, 'url' => $data->url]); $this->logger->debug('Got picture', ['Content-Type' => $fetchResult->getHeader('Content-Type'), 'uid' => $data->uid, 'url' => $data->url]);
return $fetchResult->getBody(); return $fetchResult->getBodyString();
} else { } else {
if (empty($fetchResult)) { if (empty($fetchResult)) {
throw new ReferenceStorageException(sprintf('External resource failed to get %s', $reference)); throw new ReferenceStorageException(sprintf('External resource failed to get %s', $reference));
} else { } else {
throw new ReferenceStorageException(sprintf('External resource failed to get %s', $reference), $fetchResult->getReturnCode(), new Exception($fetchResult->getBody())); throw new ReferenceStorageException(sprintf('External resource failed to get %s', $reference), $fetchResult->getReturnCode(), new Exception($fetchResult->getBodyString()));
} }
} }
} }

View file

@ -230,7 +230,7 @@ class System
* @param int $offset How many calls to shave off the top of the stack, for example if * @param int $offset How many calls to shave off the top of the stack, for example if
* this is called from a centralized method that isn't relevant to the callstack * this is called from a centralized method that isn't relevant to the callstack
* @param bool $full If enabled, the callstack is not compacted * @param bool $full If enabled, the callstack is not compacted
* @param array $exclude * @param array $exclude
* @return string * @return string
*/ */
public static function callstack(int $depth = 4, int $offset = 0, bool $full = false, array $exclude = []): string public static function callstack(int $depth = 4, int $offset = 0, bool $full = false, array $exclude = []): string

View file

@ -198,11 +198,11 @@ class APContact
try { try {
$curlResult = HTTPSignature::fetchRaw($url); $curlResult = HTTPSignature::fetchRaw($url);
$failed = empty($curlResult) || empty($curlResult->getBody()) || $failed = empty($curlResult) || empty($curlResult->getBodyString()) ||
(!$curlResult->isSuccess() && ($curlResult->getReturnCode() != 410)); (!$curlResult->isSuccess() && ($curlResult->getReturnCode() != 410));
if (!$failed) { if (!$failed) {
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
$failed = empty($data) || !is_array($data); $failed = empty($data) || !is_array($data);
} }

View file

@ -2300,7 +2300,7 @@ class Contact
try { try {
$fetchResult = HTTPSignature::fetchRaw($avatar, 0, [HttpClientOptions::ACCEPT_CONTENT => [HttpClientAccept::IMAGE]]); $fetchResult = HTTPSignature::fetchRaw($avatar, 0, [HttpClientOptions::ACCEPT_CONTENT => [HttpClientAccept::IMAGE]]);
$img_str = $fetchResult->getBody(); $img_str = $fetchResult->getBodyString();
if (!empty($img_str)) { if (!empty($img_str)) {
$image = new Image($img_str, Images::getMimeTypeByData($img_str)); $image = new Image($img_str, Images::getMimeTypeByData($img_str));
if ($image->isValid()) { if ($image->isValid()) {

View file

@ -649,7 +649,7 @@ class GServer
} }
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
$json = json_decode($curlResult->getBody(), true); $json = json_decode($curlResult->getBodyString(), true);
if (!empty($json) && is_array($json)) { if (!empty($json) && is_array($json)) {
$data = self::fetchDataFromSystemActor($json, $serverdata); $data = self::fetchDataFromSystemActor($json, $serverdata);
$serverdata = $data['server']; $serverdata = $data['server'];
@ -657,7 +657,7 @@ class GServer
if (!$html_fetched && !in_array($serverdata['detection-method'], [self::DETECT_SYSTEM_ACTOR, self::DETECT_AP_COLLECTION])) { if (!$html_fetched && !in_array($serverdata['detection-method'], [self::DETECT_SYSTEM_ACTOR, self::DETECT_AP_COLLECTION])) {
$curlResult = DI::httpClient()->get($url, HttpClientAccept::HTML); $curlResult = DI::httpClient()->get($url, HttpClientAccept::HTML);
} }
} elseif (!$html_fetched && (strlen($curlResult->getBody()) < 1000)) { } elseif (!$html_fetched && (strlen($curlResult->getBodyString()) < 1000)) {
$curlResult = DI::httpClient()->get($url, HttpClientAccept::HTML); $curlResult = DI::httpClient()->get($url, HttpClientAccept::HTML);
} }
@ -667,7 +667,7 @@ class GServer
} }
} }
if (!$curlResult->isSuccess() || empty($curlResult->getBody())) { if (!$curlResult->isSuccess() || empty($curlResult->getBodyString())) {
self::setFailureByUrl($url); self::setFailureByUrl($url);
return false; return false;
} }
@ -677,7 +677,7 @@ class GServer
$serverdata['network'] = Protocol::ACTIVITYPUB; $serverdata['network'] = Protocol::ACTIVITYPUB;
$serverdata['platform'] = 'threads'; $serverdata['platform'] = 'threads';
} }
if (($serverdata['network'] == Protocol::PHANTOM) || in_array($serverdata['detection-method'], self::DETECT_UNSPECIFIC)) { if (($serverdata['network'] == Protocol::PHANTOM) || in_array($serverdata['detection-method'], self::DETECT_UNSPECIFIC)) {
$serverdata = self::detectMastodonAlikes($url, $serverdata); $serverdata = self::detectMastodonAlikes($url, $serverdata);
} }
@ -872,7 +872,7 @@ class GServer
return; return;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (!is_array($data)) { if (!is_array($data)) {
return; return;
} }
@ -967,7 +967,7 @@ class GServer
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $serverdata; return $serverdata;
} }
@ -1059,7 +1059,7 @@ class GServer
return []; return [];
} }
$nodeinfo = json_decode($httpResult->getBody(), true); $nodeinfo = json_decode($httpResult->getBodyString(), true);
if (!is_array($nodeinfo) || empty($nodeinfo['links'])) { if (!is_array($nodeinfo) || empty($nodeinfo['links'])) {
return []; return [];
@ -1114,7 +1114,7 @@ class GServer
return []; return [];
} }
$nodeinfo = json_decode($curlResult->getBody(), true); $nodeinfo = json_decode($curlResult->getBodyString(), true);
if (!is_array($nodeinfo)) { if (!is_array($nodeinfo)) {
return []; return [];
@ -1214,7 +1214,7 @@ class GServer
return []; return [];
} }
$nodeinfo = json_decode($curlResult->getBody(), true); $nodeinfo = json_decode($curlResult->getBodyString(), true);
if (!is_array($nodeinfo)) { if (!is_array($nodeinfo)) {
return []; return [];
} }
@ -1331,7 +1331,7 @@ class GServer
return []; return [];
} }
$nodeinfo = json_decode($httpResult->getBody(), true); $nodeinfo = json_decode($httpResult->getBodyString(), true);
if (!is_array($nodeinfo)) { if (!is_array($nodeinfo)) {
return []; return [];
@ -1434,7 +1434,7 @@ class GServer
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $serverdata; return $serverdata;
} }
@ -1587,11 +1587,11 @@ class GServer
{ {
$name = 'nomad'; $name = 'nomad';
$curlResult = DI::httpClient()->get($url . '/manifest', 'application/manifest+json'); $curlResult = DI::httpClient()->get($url . '/manifest', 'application/manifest+json');
if (!$curlResult->isSuccess() || ($curlResult->getBody() == '')) { if (!$curlResult->isSuccess() || ($curlResult->getBodyString() == '')) {
return $name; return $name;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $name; return $name;
} }
@ -1608,11 +1608,11 @@ class GServer
private static function getNomadVersion(string $url): string private static function getNomadVersion(string $url): string
{ {
$curlResult = DI::httpClient()->get($url . '/api/z/1.0/version', HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($url . '/api/z/1.0/version', HttpClientAccept::JSON);
if (!$curlResult->isSuccess() || ($curlResult->getBody() == '')) { if (!$curlResult->isSuccess() || ($curlResult->getBodyString() == '')) {
return ''; return '';
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return ''; return '';
} }
@ -1634,7 +1634,7 @@ class GServer
return false; return false;
} }
$xrd = XML::parseString($curlResult->getBody(), true); $xrd = XML::parseString($curlResult->getBodyString(), true);
if (!is_object($xrd)) { if (!is_object($xrd)) {
return false; return false;
} }
@ -1733,7 +1733,7 @@ class GServer
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $serverdata; return $serverdata;
} }
@ -1763,7 +1763,7 @@ class GServer
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $serverdata; return $serverdata;
} }
@ -1786,11 +1786,11 @@ class GServer
private static function detectPeertube(string $url, array $serverdata): array private static function detectPeertube(string $url, array $serverdata): array
{ {
$curlResult = DI::httpClient()->get($url . '/api/v1/config', HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($url . '/api/v1/config', HttpClientAccept::JSON);
if (!$curlResult->isSuccess() || ($curlResult->getBody() == '')) { if (!$curlResult->isSuccess() || ($curlResult->getBodyString() == '')) {
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $serverdata; return $serverdata;
} }
@ -1834,11 +1834,11 @@ class GServer
private static function detectNextcloud(string $url, array $serverdata, bool $validHostMeta): array private static function detectNextcloud(string $url, array $serverdata, bool $validHostMeta): array
{ {
$curlResult = DI::httpClient()->get($url . '/status.php', HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($url . '/status.php', HttpClientAccept::JSON);
if (!$curlResult->isSuccess() || ($curlResult->getBody() == '')) { if (!$curlResult->isSuccess() || ($curlResult->getBodyString() == '')) {
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $serverdata; return $serverdata;
} }
@ -1870,11 +1870,11 @@ class GServer
private static function fetchWeeklyUsage(string $url, array $serverdata): array private static function fetchWeeklyUsage(string $url, array $serverdata): array
{ {
$curlResult = DI::httpClient()->get($url . '/api/v1/instance/activity', HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($url . '/api/v1/instance/activity', HttpClientAccept::JSON);
if (!$curlResult->isSuccess() || ($curlResult->getBody() == '')) { if (!$curlResult->isSuccess() || ($curlResult->getBodyString() == '')) {
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $serverdata; return $serverdata;
} }
@ -1910,11 +1910,11 @@ class GServer
private static function detectMastodonAlikes(string $url, array $serverdata): array private static function detectMastodonAlikes(string $url, array $serverdata): array
{ {
$curlResult = DI::httpClient()->get($url . '/api/v1/instance', HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($url . '/api/v1/instance', HttpClientAccept::JSON);
if (!$curlResult->isSuccess() || ($curlResult->getBody() == '')) { if (!$curlResult->isSuccess() || ($curlResult->getBodyString() == '')) {
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data)) { if (empty($data)) {
return $serverdata; return $serverdata;
} }
@ -1982,11 +1982,11 @@ class GServer
private static function detectHubzilla(string $url, array $serverdata): array private static function detectHubzilla(string $url, array $serverdata): array
{ {
$curlResult = DI::httpClient()->get($url . '/api/statusnet/config.json', HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($url . '/api/statusnet/config.json', HttpClientAccept::JSON);
if (!$curlResult->isSuccess() || ($curlResult->getBody() == '')) { if (!$curlResult->isSuccess() || ($curlResult->getBodyString() == '')) {
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data) || empty($data['site'])) { if (empty($data) || empty($data['site'])) {
return $serverdata; return $serverdata;
} }
@ -2079,11 +2079,11 @@ class GServer
{ {
// Test for GNU Social // Test for GNU Social
$curlResult = DI::httpClient()->get($url . '/api/gnusocial/version.json', HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($url . '/api/gnusocial/version.json', HttpClientAccept::JSON);
if ($curlResult->isSuccess() && ($curlResult->getBody() != '{"error":"not implemented"}') && if ($curlResult->isSuccess() && ($curlResult->getBodyString() != '{"error":"not implemented"}') &&
($curlResult->getBody() != '') && (strlen($curlResult->getBody()) < 30)) { ($curlResult->getBodyString() != '') && (strlen($curlResult->getBodyString()) < 30)) {
$serverdata['platform'] = 'gnusocial'; $serverdata['platform'] = 'gnusocial';
// Remove junk that some GNU Social servers return // Remove junk that some GNU Social servers return
$serverdata['version'] = str_replace(chr(239) . chr(187) . chr(191), '', $curlResult->getBody()); $serverdata['version'] = str_replace(chr(239) . chr(187) . chr(191), '', $curlResult->getBodyString());
$serverdata['version'] = str_replace(["\r", "\n", "\t"], '', $serverdata['version']); $serverdata['version'] = str_replace(["\r", "\n", "\t"], '', $serverdata['version']);
$serverdata['version'] = trim($serverdata['version'], '"'); $serverdata['version'] = trim($serverdata['version'], '"');
$serverdata['network'] = Protocol::OSTATUS; $serverdata['network'] = Protocol::OSTATUS;
@ -2097,11 +2097,11 @@ class GServer
// Test for Statusnet // Test for Statusnet
$curlResult = DI::httpClient()->get($url . '/api/statusnet/version.json', HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($url . '/api/statusnet/version.json', HttpClientAccept::JSON);
if ($curlResult->isSuccess() && ($curlResult->getBody() != '{"error":"not implemented"}') && if ($curlResult->isSuccess() && ($curlResult->getBodyString() != '{"error":"not implemented"}') &&
($curlResult->getBody() != '') && (strlen($curlResult->getBody()) < 30)) { ($curlResult->getBodyString() != '') && (strlen($curlResult->getBodyString()) < 30)) {
// Remove junk that some GNU Social servers return // Remove junk that some GNU Social servers return
$serverdata['version'] = str_replace(chr(239).chr(187).chr(191), '', $curlResult->getBody()); $serverdata['version'] = str_replace(chr(239).chr(187).chr(191), '', $curlResult->getBodyString());
$serverdata['version'] = str_replace(["\r", "\n", "\t"], '', $serverdata['version']); $serverdata['version'] = str_replace(["\r", "\n", "\t"], '', $serverdata['version']);
$serverdata['version'] = trim($serverdata['version'], '"'); $serverdata['version'] = trim($serverdata['version'], '"');
@ -2148,7 +2148,7 @@ class GServer
return $serverdata; return $serverdata;
} }
$data = json_decode($curlResult->getBody(), true); $data = json_decode($curlResult->getBodyString(), true);
if (empty($data) || empty($data['version'])) { if (empty($data) || empty($data['version'])) {
return $serverdata; return $serverdata;
} }
@ -2466,7 +2466,7 @@ class GServer
$api = 'https://instances.social/api/1.0/instances/list?count=0'; $api = 'https://instances.social/api/1.0/instances/list?count=0';
$curlResult = DI::httpClient()->get($api, HttpClientAccept::JSON, [HttpClientOptions::HEADERS => ['Authorization' => ['Bearer ' . $accesstoken]]]); $curlResult = DI::httpClient()->get($api, HttpClientAccept::JSON, [HttpClientOptions::HEADERS => ['Authorization' => ['Bearer ' . $accesstoken]]]);
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
$servers = json_decode($curlResult->getBody(), true); $servers = json_decode($curlResult->getBodyString(), true);
if (!empty($servers['instances'])) { if (!empty($servers['instances'])) {
foreach ($servers['instances'] as $server) { foreach ($servers['instances'] as $server) {

View file

@ -597,7 +597,7 @@ class Photo
if (!empty($image_url)) { if (!empty($image_url)) {
$ret = DI::httpClient()->get($image_url, HttpClientAccept::IMAGE); $ret = DI::httpClient()->get($image_url, HttpClientAccept::IMAGE);
Logger::debug('Got picture', ['Content-Type' => $ret->getHeader('Content-Type'), 'url' => $image_url]); Logger::debug('Got picture', ['Content-Type' => $ret->getHeader('Content-Type'), 'url' => $image_url]);
$img_str = $ret->getBody(); $img_str = $ret->getBodyString();
$type = $ret->getContentType(); $type = $ret->getContentType();
} else { } else {
$img_str = ''; $img_str = '';
@ -1047,7 +1047,7 @@ class Photo
if (!empty($image_url)) { if (!empty($image_url)) {
$ret = DI::httpClient()->get($image_url, HttpClientAccept::IMAGE); $ret = DI::httpClient()->get($image_url, HttpClientAccept::IMAGE);
Logger::debug('Got picture', ['Content-Type' => $ret->getHeader('Content-Type'), 'url' => $image_url]); Logger::debug('Got picture', ['Content-Type' => $ret->getHeader('Content-Type'), 'url' => $image_url]);
$img_str = $ret->getBody(); $img_str = $ret->getBodyString();
$type = $ret->getContentType(); $type = $ret->getContentType();
} else { } else {
$img_str = ''; $img_str = '';

View file

@ -135,7 +135,7 @@ class Link
} }
$fields = ['mimetype' => $curlResult->getHeader('Content-Type')[0]]; $fields = ['mimetype' => $curlResult->getHeader('Content-Type')[0]];
$img_str = $curlResult->getBody(); $img_str = $curlResult->getBodyString();
$image = new Image($img_str, Images::getMimeTypeByData($img_str)); $image = new Image($img_str, Images::getMimeTypeByData($img_str));
if ($image->isValid()) { if ($image->isValid()) {
$fields['mimetype'] = $image->getType(); $fields['mimetype'] = $image->getType();

View file

@ -1383,7 +1383,7 @@ class User
$curlResult = DI::httpClient()->get($photo, HttpClientAccept::IMAGE); $curlResult = DI::httpClient()->get($photo, HttpClientAccept::IMAGE);
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
Logger::debug('Got picture', ['Content-Type' => $curlResult->getHeader('Content-Type'), 'url' => $photo]); Logger::debug('Got picture', ['Content-Type' => $curlResult->getHeader('Content-Type'), 'url' => $photo]);
$img_str = $curlResult->getBody(); $img_str = $curlResult->getBodyString();
$type = $curlResult->getContentType(); $type = $curlResult->getContentType();
} else { } else {
$img_str = ''; $img_str = '';
@ -1597,8 +1597,8 @@ class User
You may also wish to add some basic information to your default profile You may also wish to add some basic information to your default profile
(on the "Profiles" page) so that other people can easily find you. (on the "Profiles" page) so that other people can easily find you.
We recommend adding a profile photo, adding some profile "keywords" We recommend adding a profile photo, adding some profile "keywords"
(very useful in making new friends) - and perhaps what country you live in; (very useful in making new friends) - and perhaps what country you live in;
if you do not wish to be more specific than that. if you do not wish to be more specific than that.
We fully respect your right to privacy, and none of these items are necessary. We fully respect your right to privacy, and none of these items are necessary.

View file

@ -132,7 +132,7 @@ class MatchInterests extends BaseModule
} }
} }
$entries = $this->parseContacts(json_decode($result->getBody()), $entries, $limit); $entries = $this->parseContacts(json_decode($result->getBodyString()), $entries, $limit);
} }
if (empty($entries)) { if (empty($entries)) {

View file

@ -155,7 +155,7 @@ class Magic extends BaseModule
System::externalRedirect($dest); System::externalRedirect($dest);
} }
$j = json_decode($curlResult->getBody(), true); $j = json_decode($curlResult->getBodyString(), true);
if (empty($j) || !$j['success']) { if (empty($j) || !$j['success']) {
$this->logger->notice('Invalid JSON, redirecting to destination.', ['json' => $j, 'dest' => $dest]); $this->logger->notice('Invalid JSON, redirecting to destination.', ['json' => $j, 'dest' => $dest]);
$this->app->redirect($dest); $this->app->redirect($dest);

View file

@ -154,7 +154,7 @@ class PubSubHubBub extends \Friendica\BaseModule
$separator = parse_url($hub_callback, PHP_URL_QUERY) === null ? '?' : '&'; $separator = parse_url($hub_callback, PHP_URL_QUERY) === null ? '?' : '&';
$fetchResult = $this->httpClient->fetchFull($hub_callback . $separator . $params); $fetchResult = $this->httpClient->fetchFull($hub_callback . $separator . $params);
$body = $fetchResult->getBody(); $body = $fetchResult->getBodyString();
$returnCode = $fetchResult->getReturnCode(); $returnCode = $fetchResult->getReturnCode();
// give up if the HTTP return code wasn't a success (2xx) // give up if the HTTP return code wasn't a success (2xx)

View file

@ -96,7 +96,7 @@ class Subscribe extends \Friendica\BaseModule
return $o . $this->t('Couldn\'t fetch friends for contact.'); return $o . $this->t('Couldn\'t fetch friends for contact.');
} }
$friends = $curlResult->getBody(); $friends = $curlResult->getBodyString();
if (empty($friends)) { if (empty($friends)) {
$this->pConfig->delete($uid, 'ostatus', 'legacy_contact'); $this->pConfig->delete($uid, 'ostatus', 'legacy_contact');
return $o . $this->t('Couldn\'t fetch following contacts.'); return $o . $this->t('Couldn\'t fetch following contacts.');

View file

@ -85,7 +85,7 @@ class Proxy extends BaseModule
// Fetch the content with the local user // Fetch the content with the local user
try { try {
$fetchResult = HTTPSignature::fetchRaw($request['url'], DI::userSession()->getLocalUserId(), [HttpClientOptions::ACCEPT_CONTENT => [HttpClientAccept::IMAGE], 'timeout' => 10]); $fetchResult = HTTPSignature::fetchRaw($request['url'], DI::userSession()->getLocalUserId(), [HttpClientOptions::ACCEPT_CONTENT => [HttpClientAccept::IMAGE], 'timeout' => 10]);
$img_str = $fetchResult->getBody(); $img_str = $fetchResult->getBodyString();
if (!$fetchResult->isSuccess() || empty($img_str)) { if (!$fetchResult->isSuccess() || empty($img_str)) {
Logger::notice('Error fetching image', ['image' => $request['url'], 'return' => $fetchResult->getReturnCode(), 'empty' => empty($img_str)]); Logger::notice('Error fetching image', ['image' => $request['url'], 'return' => $fetchResult->getReturnCode(), 'empty' => empty($img_str)]);

View file

@ -97,10 +97,9 @@ interface ICanHandleHttpResponses
/** /**
* Getter for body * Getter for body
* *
* @see MessageInterface::getBody()
* @return string * @return string
*/ */
public function getBody(); public function getBodyString();
/** /**
* @return boolean * @return boolean

View file

@ -271,7 +271,7 @@ class HttpClient implements ICanSendHttpRequests
{ {
$ret = $this->fetchFull($url, $accept_content, $timeout, $cookiejar); $ret = $this->fetchFull($url, $accept_content, $timeout, $cookiejar);
return $ret->getBody(); return $ret->getBodyString();
} }
/** /**

View file

@ -330,7 +330,7 @@ class CurlResult implements ICanHandleHttpResponses
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
public function getBody(): string public function getBodyString(): string
{ {
return $this->body; return $this->body;
} }

View file

@ -163,8 +163,7 @@ class GuzzleResponse extends Response implements ICanHandleHttpResponses, Respon
return $this->isTimeout; return $this->isTimeout;
} }
/// @todo - fix mismatching use of "getBody()" as string here and parent "getBody()" as streaminterface public function getBodyString(): string
public function getBody(): string
{ {
return (string) parent::getBody(); return (string) parent::getBody();
} }

View file

@ -225,7 +225,7 @@ class Probe
$curlResult = DI::httpClient()->get($ssl_url, HttpClientAccept::XRD_XML, [HttpClientOptions::TIMEOUT => $xrd_timeout]); $curlResult = DI::httpClient()->get($ssl_url, HttpClientAccept::XRD_XML, [HttpClientOptions::TIMEOUT => $xrd_timeout]);
$ssl_connection_error = ($curlResult->getErrorNumber() == CURLE_COULDNT_CONNECT) || ($curlResult->getReturnCode() == 0); $ssl_connection_error = ($curlResult->getErrorNumber() == CURLE_COULDNT_CONNECT) || ($curlResult->getReturnCode() == 0);
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
$xml = $curlResult->getBody(); $xml = $curlResult->getBodyString();
$xrd = XML::parseString($xml, true); $xrd = XML::parseString($xml, true);
if (!empty($url)) { if (!empty($url)) {
$host_url = 'https://' . $host; $host_url = 'https://' . $host;
@ -250,7 +250,7 @@ class Probe
return []; return [];
} }
$xml = $curlResult->getBody(); $xml = $curlResult->getBodyString();
$xrd = XML::parseString($xml, true); $xrd = XML::parseString($xml, true);
$host_url = 'http://'.$host; $host_url = 'http://'.$host;
} }
@ -426,7 +426,7 @@ class Probe
if (!empty($data['baseurl']) && empty($data['gsid'])) { if (!empty($data['baseurl']) && empty($data['gsid'])) {
$data['gsid'] = GServer::getID($data['baseurl']); $data['gsid'] = GServer::getID($data['baseurl']);
} }
// Ensure that local connections always are DFRN // Ensure that local connections always are DFRN
if (($network == '') && ($data['network'] != Protocol::PHANTOM) && (self::ownHost($data['baseurl'] ?? '') || self::ownHost($data['url']))) { if (($network == '') && ($data['network'] != Protocol::PHANTOM) && (self::ownHost($data['baseurl'] ?? '') || self::ownHost($data['url']))) {
@ -459,7 +459,7 @@ class Probe
return false; return false;
} }
$body = $curlResult->getBody(); $body = $curlResult->getBodyString();
if (empty($body)) { if (empty($body)) {
return false; return false;
} }
@ -865,7 +865,7 @@ class Probe
if ($curlResult->isTimeout()) { if ($curlResult->isTimeout()) {
return $data; return $data;
} }
$content = $curlResult->getBody(); $content = $curlResult->getBodyString();
if (!$content) { if (!$content) {
return $data; return $data;
} }
@ -971,7 +971,7 @@ class Probe
self::$isTimeout = true; self::$isTimeout = true;
return []; return [];
} }
$data = $curlResult->getBody(); $data = $curlResult->getBodyString();
$webfinger = json_decode($data, true); $webfinger = json_decode($data, true);
if (!empty($webfinger)) { if (!empty($webfinger)) {
@ -1040,7 +1040,7 @@ class Probe
self::$isTimeout = true; self::$isTimeout = true;
return $data; return $data;
} }
$content = $curlResult->getBody(); $content = $curlResult->getBodyString();
if (!$content) { if (!$content) {
Logger::info('Empty body', ['url' => $noscrape_url]); Logger::info('Empty body', ['url' => $noscrape_url]);
return $data; return $data;
@ -1303,7 +1303,7 @@ class Probe
self::$isTimeout = true; self::$isTimeout = true;
return []; return [];
} }
$content = $curlResult->getBody(); $content = $curlResult->getBodyString();
if (empty($content)) { if (empty($content)) {
return []; return [];
} }
@ -1580,7 +1580,7 @@ class Probe
return $short ? false : []; return $short ? false : [];
} }
Logger::debug('Fetched public key', ['Content-Type' => $curlResult->getHeader('Content-Type'), 'url' => $pubkey]); Logger::debug('Fetched public key', ['Content-Type' => $curlResult->getHeader('Content-Type'), 'url' => $pubkey]);
$pubkey = $curlResult->getBody(); $pubkey = $curlResult->getBodyString();
} }
try { try {
@ -1612,7 +1612,7 @@ class Probe
self::$isTimeout = true; self::$isTimeout = true;
return []; return [];
} }
$feed = $curlResult->getBody(); $feed = $curlResult->getBodyString();
$feed_data = Feed::import($feed); $feed_data = Feed::import($feed);
if (!$feed_data) { if (!$feed_data) {
return []; return [];
@ -1660,12 +1660,12 @@ class Probe
private static function pumpioProfileData(string $profile_link, string $baseurl): array private static function pumpioProfileData(string $profile_link, string $baseurl): array
{ {
$curlResult = DI::httpClient()->get($profile_link, HttpClientAccept::HTML); $curlResult = DI::httpClient()->get($profile_link, HttpClientAccept::HTML);
if (!$curlResult->isSuccess() || empty($curlResult->getBody())) { if (!$curlResult->isSuccess() || empty($curlResult->getBodyString())) {
return []; return [];
} }
$doc = new DOMDocument(); $doc = new DOMDocument();
if (!@$doc->loadHTML($curlResult->getBody())) { if (!@$doc->loadHTML($curlResult->getBodyString())) {
return []; return [];
} }
@ -1887,7 +1887,7 @@ class Probe
return []; return [];
} }
$feed = $curlResult->getBody(); $feed = $curlResult->getBodyString();
$feed_data = Feed::import($feed); $feed_data = Feed::import($feed);
if (!$feed_data) { if (!$feed_data) {
@ -2112,8 +2112,8 @@ class Probe
$curlResult = DI::httpClient()->get($gserver['noscrape'] . '/' . $data['nick'], HttpClientAccept::JSON); $curlResult = DI::httpClient()->get($gserver['noscrape'] . '/' . $data['nick'], HttpClientAccept::JSON);
if ($curlResult->isSuccess() && !empty($curlResult->getBody())) { if ($curlResult->isSuccess() && !empty($curlResult->getBodyString())) {
$noscrape = json_decode($curlResult->getBody(), true); $noscrape = json_decode($curlResult->getBodyString(), true);
if (!empty($noscrape) && !empty($noscrape['updated'])) { if (!empty($noscrape) && !empty($noscrape['updated'])) {
return DateTimeFormat::utc($noscrape['updated'], DateTimeFormat::MYSQL); return DateTimeFormat::utc($noscrape['updated'], DateTimeFormat::MYSQL);
} }
@ -2187,12 +2187,12 @@ class Probe
{ {
// Search for the newest entry in the feed // Search for the newest entry in the feed
$curlResult = DI::httpClient()->get($data['poll'], HttpClientAccept::ATOM_XML); $curlResult = DI::httpClient()->get($data['poll'], HttpClientAccept::ATOM_XML);
if (!$curlResult->isSuccess() || !$curlResult->getBody()) { if (!$curlResult->isSuccess() || !$curlResult->getBodyString()) {
return ''; return '';
} }
$doc = new DOMDocument(); $doc = new DOMDocument();
@$doc->loadXML($curlResult->getBody()); @$doc->loadXML($curlResult->getBodyString());
$xpath = new DOMXPath($doc); $xpath = new DOMXPath($doc);
$xpath->registerNamespace('atom', 'http://www.w3.org/2005/Atom'); $xpath->registerNamespace('atom', 'http://www.w3.org/2005/Atom');

View file

@ -614,7 +614,7 @@ class Processor
} }
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
$object = json_decode($curlResult->getBody(), true); $object = json_decode($curlResult->getBodyString(), true);
if (!empty($object)) { if (!empty($object)) {
$activity = JsonLD::compact($object); $activity = JsonLD::compact($object);
if (JsonLD::fetchElement($activity, '@type') == 'as:Tombstone') { if (JsonLD::fetchElement($activity, '@type') == 'as:Tombstone') {
@ -1584,7 +1584,7 @@ class Processor
return ''; return '';
} }
$body = $curlResult->getBody(); $body = $curlResult->getBodyString();
if (!$curlResult->isSuccess() || empty($body)) { if (!$curlResult->isSuccess() || empty($body)) {
if (in_array($curlResult->getReturnCode(), [403, 404, 406, 410])) { if (in_array($curlResult->getReturnCode(), [403, 404, 406, 410])) {
return null; return null;

View file

@ -1012,7 +1012,7 @@ class DFRN
$content_type = ($public_batch ? 'application/magic-envelope+xml' : 'application/json'); $content_type = ($public_batch ? 'application/magic-envelope+xml' : 'application/json');
$postResult = DI::httpClient()->post($dest_url, $envelope, ['Content-Type' => $content_type]); $postResult = DI::httpClient()->post($dest_url, $envelope, ['Content-Type' => $content_type]);
$xml = $postResult->getBody(); $xml = $postResult->getBodyString();
$curl_stat = $postResult->getReturnCode(); $curl_stat = $postResult->getReturnCode();
if (!empty($contact['gsid']) && ($postResult->isTimeout() || empty($curl_stat))) { if (!empty($contact['gsid']) && ($postResult->isTimeout() || empty($curl_stat))) {

View file

@ -736,7 +736,7 @@ class OStatus
$stored = false; $stored = false;
$curlResult = DI::httpClient()->get($related, HttpClientAccept::ATOM_XML); $curlResult = DI::httpClient()->get($related, HttpClientAccept::ATOM_XML);
if (!$curlResult->isSuccess() || empty($curlResult->getBody())) { if (!$curlResult->isSuccess() || empty($curlResult->getBodyString())) {
return; return;
} }
@ -745,12 +745,12 @@ class OStatus
if ($curlResult->inHeader('Content-Type') && if ($curlResult->inHeader('Content-Type') &&
in_array('application/atom+xml', $curlResult->getHeader('Content-Type'))) { in_array('application/atom+xml', $curlResult->getHeader('Content-Type'))) {
Logger::info('Directly fetched XML for URI ' . $related_uri); Logger::info('Directly fetched XML for URI ' . $related_uri);
$xml = $curlResult->getBody(); $xml = $curlResult->getBodyString();
} }
if ($xml == '') { if ($xml == '') {
$doc = new DOMDocument(); $doc = new DOMDocument();
if (!@$doc->loadHTML($curlResult->getBody())) { if (!@$doc->loadHTML($curlResult->getBodyString())) {
return; return;
} }
$xpath = new DOMXPath($doc); $xpath = new DOMXPath($doc);
@ -770,7 +770,7 @@ class OStatus
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
Logger::info('Fetched XML for URI ' . $related_uri); Logger::info('Fetched XML for URI ' . $related_uri);
$xml = $curlResult->getBody(); $xml = $curlResult->getBodyString();
} }
} }
} }
@ -782,7 +782,7 @@ class OStatus
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
Logger::info('GNU Social workaround to fetch XML for URI ' . $related_uri); Logger::info('GNU Social workaround to fetch XML for URI ' . $related_uri);
$xml = $curlResult->getBody(); $xml = $curlResult->getBodyString();
} }
} }
@ -793,7 +793,7 @@ class OStatus
if ($curlResult->isSuccess()) { if ($curlResult->isSuccess()) {
Logger::info('GNU Social workaround 2 to fetch XML for URI ' . $related_uri); Logger::info('GNU Social workaround 2 to fetch XML for URI ' . $related_uri);
$xml = $curlResult->getBody(); $xml = $curlResult->getBodyString();
} }
} }

View file

@ -250,7 +250,7 @@ class ExAuth
return false; return false;
} }
$json = @json_decode($curlResult->getBody()); $json = @json_decode($curlResult->getBodyString());
if (!is_object($json)) { if (!is_object($json)) {
return false; return false;
} }

View file

@ -433,12 +433,12 @@ class HTTPSignature
return []; return [];
} }
if (!$curlResult->isSuccess() || empty($curlResult->getBody())) { if (!$curlResult->isSuccess() || empty($curlResult->getBodyString())) {
Logger::debug('Fetching was unsuccessful', ['url' => $request, 'return-code' => $curlResult->getReturnCode(), 'error-number' => $curlResult->getErrorNumber(), 'error' => $curlResult->getError()]); Logger::debug('Fetching was unsuccessful', ['url' => $request, 'return-code' => $curlResult->getReturnCode(), 'error-number' => $curlResult->getErrorNumber(), 'error' => $curlResult->getError()]);
return []; return [];
} }
$content = json_decode($curlResult->getBody(), true); $content = json_decode($curlResult->getBodyString(), true);
if (empty($content) || !is_array($content)) { if (empty($content) || !is_array($content)) {
return []; return [];
} }

View file

@ -238,7 +238,7 @@ class ParseUrl
} }
$curlResult = DI::httpClient()->get($url, HttpClientAccept::HTML, [HttpClientOptions::CONTENT_LENGTH => 1000000]); $curlResult = DI::httpClient()->get($url, HttpClientAccept::HTML, [HttpClientOptions::CONTENT_LENGTH => 1000000]);
if (!$curlResult->isSuccess() || empty($curlResult->getBody())) { if (!$curlResult->isSuccess() || empty($curlResult->getBodyString())) {
Logger::info('Empty body or error when fetching', ['url' => $url, 'success' => $curlResult->isSuccess(), 'code' => $curlResult->getReturnCode()]); Logger::info('Empty body or error when fetching', ['url' => $url, 'success' => $curlResult->isSuccess(), 'code' => $curlResult->getReturnCode()]);
return $siteinfo; return $siteinfo;
} }
@ -252,7 +252,7 @@ class ParseUrl
} }
} }
$body = $curlResult->getBody(); $body = $curlResult->getBodyString();
if ($do_oembed) { if ($do_oembed) {
$oembed_data = OEmbed::fetchURL($url, false, false); $oembed_data = OEmbed::fetchURL($url, false, false);

View file

@ -70,7 +70,7 @@ class CheckRelMeProfileLink
return; return;
} }
$content = $curlResult->getBody(); $content = $curlResult->getBodyString();
if (!$content) { if (!$content) {
Logger::notice('Empty body of the fetched homepage link). Cannot verify the relation to profile of UID %s.', ['uid' => $uid, 'owner homepage' => $owner['homepage']]); Logger::notice('Empty body of the fetched homepage link). Cannot verify the relation to profile of UID %s.', ['uid' => $uid, 'owner homepage' => $owner['homepage']]);
return; return;

View file

@ -172,7 +172,7 @@ class OnePoll
return false; return false;
} }
$xml = $curlResult->getBody(); $xml = $curlResult->getBodyString();
if (empty($xml)) { if (empty($xml)) {
Logger::notice('Empty content', ['id' => $contact['id'], 'url' => $contact['poll']]); Logger::notice('Empty content', ['id' => $contact['id'], 'url' => $contact['poll']]);
return false; return false;

View file

@ -45,12 +45,12 @@ class UpdateServerPeers
} }
$ret = DI::httpClient()->get($url . '/api/v1/instance/peers', HttpClientAccept::JSON); $ret = DI::httpClient()->get($url . '/api/v1/instance/peers', HttpClientAccept::JSON);
if (!$ret->isSuccess() || empty($ret->getBody())) { if (!$ret->isSuccess() || empty($ret->getBodyString())) {
Logger::info('Server is not reachable or does not offer the "peers" endpoint', ['url' => $url]); Logger::info('Server is not reachable or does not offer the "peers" endpoint', ['url' => $url]);
return; return;
} }
$peers = json_decode($ret->getBody()); $peers = json_decode($ret->getBodyString());
if (empty($peers) || !is_array($peers)) { if (empty($peers) || !is_array($peers)) {
Logger::info('Server does not have any peers listed', ['url' => $url]); Logger::info('Server does not have any peers listed', ['url' => $url]);
return; return;

View file

@ -47,7 +47,7 @@ class CurlResultTest extends TestCase
self::assertFalse($curlResult->isTimeout()); self::assertFalse($curlResult->isTimeout());
self::assertFalse($curlResult->isRedirectUrl()); self::assertFalse($curlResult->isRedirectUrl());
self::assertSame($headerArray, $curlResult->getHeaders()); self::assertSame($headerArray, $curlResult->getHeaders());
self::assertSame($body, $curlResult->getBody()); self::assertSame($body, $curlResult->getBodyString());
self::assertSame('text/html; charset=utf-8', $curlResult->getContentType()); self::assertSame('text/html; charset=utf-8', $curlResult->getContentType());
self::assertSame('https://test.local', $curlResult->getUrl()); self::assertSame('https://test.local', $curlResult->getUrl());
self::assertSame('https://test.local', $curlResult->getRedirectUrl()); self::assertSame('https://test.local', $curlResult->getRedirectUrl());
@ -76,7 +76,7 @@ class CurlResultTest extends TestCase
self::assertFalse($curlResult->isTimeout()); self::assertFalse($curlResult->isTimeout());
self::assertTrue($curlResult->isRedirectUrl()); self::assertTrue($curlResult->isRedirectUrl());
self::assertSame($headerArray, $curlResult->getHeaders()); self::assertSame($headerArray, $curlResult->getHeaders());
self::assertSame($body, $curlResult->getBody()); self::assertSame($body, $curlResult->getBodyString());
self::assertSame('text/html; charset=utf-8', $curlResult->getContentType()); self::assertSame('text/html; charset=utf-8', $curlResult->getContentType());
self::assertSame('https://test.local/test/it', $curlResult->getUrl()); self::assertSame('https://test.local/test/it', $curlResult->getUrl());
self::assertSame('https://test.other/test/it', $curlResult->getRedirectUrl()); self::assertSame('https://test.other/test/it', $curlResult->getRedirectUrl());
@ -103,7 +103,7 @@ class CurlResultTest extends TestCase
self::assertTrue($curlResult->isTimeout()); self::assertTrue($curlResult->isTimeout());
self::assertFalse($curlResult->isRedirectUrl()); self::assertFalse($curlResult->isRedirectUrl());
self::assertSame($headerArray, $curlResult->getHeaders()); self::assertSame($headerArray, $curlResult->getHeaders());
self::assertSame($body, $curlResult->getBody()); self::assertSame($body, $curlResult->getBodyString());
self::assertSame('text/html; charset=utf-8', $curlResult->getContentType()); self::assertSame('text/html; charset=utf-8', $curlResult->getContentType());
self::assertSame('https://test.local/test/it', $curlResult->getRedirectUrl()); self::assertSame('https://test.local/test/it', $curlResult->getRedirectUrl());
self::assertSame('Tested error', $curlResult->getError()); self::assertSame('Tested error', $curlResult->getError());
@ -131,7 +131,7 @@ class CurlResultTest extends TestCase
self::assertFalse($curlResult->isTimeout()); self::assertFalse($curlResult->isTimeout());
self::assertTrue($curlResult->isRedirectUrl()); self::assertTrue($curlResult->isRedirectUrl());
self::assertSame($headerArray, $curlResult->getHeaders()); self::assertSame($headerArray, $curlResult->getHeaders());
self::assertSame($body, $curlResult->getBody()); self::assertSame($body, $curlResult->getBodyString());
self::assertSame('text/html; charset=utf-8', $curlResult->getContentType()); self::assertSame('text/html; charset=utf-8', $curlResult->getContentType());
self::assertSame('https://test.local/test/it?key=value', $curlResult->getUrl()); self::assertSame('https://test.local/test/it?key=value', $curlResult->getUrl());
self::assertSame('https://test.other/some/?key=value', $curlResult->getRedirectUrl()); self::assertSame('https://test.other/some/?key=value', $curlResult->getRedirectUrl());