diff --git a/composer.json b/composer.json
index 81745b0e..f9d74fef 100644
--- a/composer.json
+++ b/composer.json
@@ -28,8 +28,7 @@
"psalm:fix": "- --issues=InvalidReturnType,InvalidNullableReturnType,MissingParamType,InvalidFalsableReturnType"
},
"require-dev": {
- "bamarni/composer-bin-plugin": "^1.8",
- "nextcloud/coding-standard": "^1.1"
+ "bamarni/composer-bin-plugin": "^1.8"
},
"extra": {
"bamarni-bin": {
diff --git a/composer.lock b/composer.lock
index 068de5b0..3784faa0 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": "936ba63ded5d1b8248cdb4d5673af0ea",
+ "content-hash": "6e5904bc2aaa546fa8b77049f5242ec4",
"packages": [
{
"name": "psr/container",
@@ -921,157 +921,17 @@
"source": "https://github.com/bamarni/composer-bin-plugin/tree/1.8.2"
},
"time": "2022-10-31T08:38:03+00:00"
- },
- {
- "name": "kubawerlos/php-cs-fixer-custom-fixers",
- "version": "v3.22.0",
- "source": {
- "type": "git",
- "url": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers.git",
- "reference": "8701394f0c7cd450ac4fa577d24589122c1d5d5e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/kubawerlos/php-cs-fixer-custom-fixers/zipball/8701394f0c7cd450ac4fa577d24589122c1d5d5e",
- "reference": "8701394f0c7cd450ac4fa577d24589122c1d5d5e",
- "shasum": ""
- },
- "require": {
- "ext-filter": "*",
- "ext-tokenizer": "*",
- "friendsofphp/php-cs-fixer": "^3.61.1",
- "php": "^7.4 || ^8.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.6.4 || ^10.5.29"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "PhpCsFixerCustomFixers\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Kuba Werłos",
- "email": "werlos@gmail.com"
- }
- ],
- "description": "A set of custom fixers for PHP CS Fixer",
- "support": {
- "issues": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/issues",
- "source": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/tree/v3.22.0"
- },
- "time": "2024-08-16T20:44:35+00:00"
- },
- {
- "name": "nextcloud/coding-standard",
- "version": "v1.3.2",
- "source": {
- "type": "git",
- "url": "https://github.com/nextcloud/coding-standard.git",
- "reference": "9c719c4747fa26efc12f2e8b21c14a9a75c6ba6d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/nextcloud/coding-standard/zipball/9c719c4747fa26efc12f2e8b21c14a9a75c6ba6d",
- "reference": "9c719c4747fa26efc12f2e8b21c14a9a75c6ba6d",
- "shasum": ""
- },
- "require": {
- "kubawerlos/php-cs-fixer-custom-fixers": "^3.22",
- "php": "^7.3|^8.0",
- "php-cs-fixer/shim": "^3.17"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Nextcloud\\CodingStandard\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Christoph Wurst",
- "email": "christoph@winzerhof-wurst.at"
- }
- ],
- "description": "Nextcloud coding standards for the php cs fixer",
- "support": {
- "issues": "https://github.com/nextcloud/coding-standard/issues",
- "source": "https://github.com/nextcloud/coding-standard/tree/v1.3.2"
- },
- "time": "2024-10-14T16:49:05+00:00"
- },
- {
- "name": "php-cs-fixer/shim",
- "version": "v3.68.5",
- "source": {
- "type": "git",
- "url": "https://github.com/PHP-CS-Fixer/shim.git",
- "reference": "4a0a5cfd39b0677017a85f0fc252d3e8a6a6c02c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/shim/zipball/4a0a5cfd39b0677017a85f0fc252d3e8a6a6c02c",
- "reference": "4a0a5cfd39b0677017a85f0fc252d3e8a6a6c02c",
- "shasum": ""
- },
- "require": {
- "ext-json": "*",
- "ext-tokenizer": "*",
- "php": "^7.4 || ^8.0"
- },
- "replace": {
- "friendsofphp/php-cs-fixer": "self.version"
- },
- "suggest": {
- "ext-dom": "For handling output formats in XML",
- "ext-mbstring": "For handling non-UTF8 characters."
- },
- "bin": [
- "php-cs-fixer",
- "php-cs-fixer.phar"
- ],
- "type": "application",
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Dariusz Rumiński",
- "email": "dariusz.ruminski@gmail.com"
- }
- ],
- "description": "A tool to automatically fix PHP code style",
- "support": {
- "issues": "https://github.com/PHP-CS-Fixer/shim/issues",
- "source": "https://github.com/PHP-CS-Fixer/shim/tree/v3.68.5"
- },
- "time": "2025-01-30T17:01:41+00:00"
}
],
"aliases": [],
"minimum-stability": "stable",
- "stability-flags": [],
+ "stability-flags": {},
"prefer-stable": false,
"prefer-lowest": false,
- "platform": [],
- "platform-dev": [],
+ "platform": {},
+ "platform-dev": {},
"platform-overrides": {
"php": "8.0"
},
- "plugin-api-version": "2.3.0"
+ "plugin-api-version": "2.6.0"
}
diff --git a/index.php b/index.php
index ada1679c..00105cfc 100644
--- a/index.php
+++ b/index.php
@@ -277,8 +277,8 @@ private function getAppDirectories(): array {
throw new \Exception('Invalid configuration in apps_paths configuration key');
}
$appDir = basename($appsPath['path']);
- if (strpos($appsPath['path'], $this->nextcloudDir.'/') === 0) {
- $relativePath = substr($appsPath['path'], strlen($this->nextcloudDir.'/'));
+ if (strpos($appsPath['path'], $this->nextcloudDir . '/') === 0) {
+ $relativePath = substr($appsPath['path'], strlen($this->nextcloudDir . '/'));
if ($relativePath !== 'apps') {
$expected[] = $relativePath;
}
@@ -305,7 +305,7 @@ private function getRecursiveDirectoryIterator(string $folder, array $excludedPa
$handle = opendir($folder);
if ($handle === false) {
- throw new \Exception('Could not open '.$folder);
+ throw new \Exception('Could not open ' . $folder);
}
/* Store first level children in an array to avoid trouble if changes happen while iterating */
@@ -323,7 +323,7 @@ private function getRecursiveDirectoryIterator(string $folder, array $excludedPa
closedir($handle);
foreach ($children as $name) {
- $path = $folder.'/'.$name;
+ $path = $folder . '/' . $name;
if (is_dir($path)) {
yield from $this->getRecursiveDirectoryIterator($path, []);
}
@@ -382,7 +382,7 @@ public function checkWritePermissions(): void {
* @throws \Exception when config.php can't be written
*/
public function setMaintenanceMode(bool $state): void {
- $this->silentLog('[info] setMaintenanceMode("' . ($state ? 'true' : 'false') . '")');
+ $this->silentLog('[info] setMaintenanceMode("' . ($state ? 'true' : 'false') . '")');
if ($dir = getenv('NEXTCLOUD_CONFIG_DIR')) {
$configFileName = rtrim($dir, '/') . '/config.php';
@@ -424,7 +424,7 @@ public function createBackup(): void {
];
// Create new folder for the backup
- $backupFolderLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid').'/backups/nextcloud-'.$this->getConfigOptionMandatoryString('version') . '-' . time() . '/';
+ $backupFolderLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/backups/nextcloud-' . $this->getConfigOptionMandatoryString('version') . '-' . time() . '/';
$this->silentLog('[info] backup folder location: ' . $backupFolderLocation);
$state = mkdir($backupFolderLocation, 0750, true);
@@ -440,7 +440,7 @@ public function createBackup(): void {
if (!file_exists($backupFolderLocation . '/' . $relativeDirectory)) {
$state = mkdir($backupFolderLocation . '/' . $relativeDirectory, 0750, true);
if ($state === false) {
- throw new \Exception('Could not create folder: '.$backupFolderLocation.'/'.$relativeDirectory);
+ throw new \Exception('Could not create folder: ' . $backupFolderLocation . '/' . $relativeDirectory);
}
}
@@ -501,7 +501,7 @@ private function getUpdateServerResponse(): array {
$this->silentLog('[info] releaseChannel: ' . $releaseChannel);
$this->silentLog('[info] internal version: ' . $this->getConfigOptionMandatoryString('version'));
- $updateURL = $updaterServer . '?version='. str_replace('.', 'x', $this->getConfigOptionMandatoryString('version')) .'xxx'.$releaseChannel.'xx'.urlencode($this->buildTime).'x'.PHP_MAJOR_VERSION.'x'.PHP_MINOR_VERSION.'x'.PHP_RELEASE_VERSION;
+ $updateURL = $updaterServer . '?version=' . str_replace('.', 'x', $this->getConfigOptionMandatoryString('version')) . 'xxx' . $releaseChannel . 'xx' . urlencode($this->buildTime) . 'x' . PHP_MAJOR_VERSION . 'x' . PHP_MINOR_VERSION . 'x' . PHP_RELEASE_VERSION;
$this->silentLog('[info] updateURL: ' . $updateURL);
// Download update response
@@ -523,7 +523,7 @@ private function getUpdateServerResponse(): array {
/** @var false|string $response */
$response = curl_exec($curl);
if ($response === false) {
- throw new \Exception('Could not do request to updater server: '.curl_error($curl));
+ throw new \Exception('Could not do request to updater server: ' . curl_error($curl));
}
curl_close($curl);
@@ -551,7 +551,7 @@ public function downloadUpdate(): void {
$response = $this->getUpdateServerResponse();
- $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/';
+ $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/';
if (file_exists($storageLocation)) {
$this->silentLog('[info] storage location exists');
$this->recursiveDelete($storageLocation);
@@ -622,7 +622,7 @@ public function downloadUpdate(): void {
* @throws \Exception
*/
private function getDownloadedFilePath(): string {
- $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/';
+ $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/';
$this->silentLog('[info] storage location: ' . $storageLocation);
$filesInStorageLocation = scandir($storageLocation);
@@ -732,7 +732,7 @@ public function extractDownload(): void {
throw new \Exception('Required PHP extension missing: zip');
}
- $libzip_version = defined("ZipArchive::LIBZIP_VERSION") ? \ZipArchive::LIBZIP_VERSION : "Unknown (but old)";
+ $libzip_version = defined('ZipArchive::LIBZIP_VERSION') ? \ZipArchive::LIBZIP_VERSION : 'Unknown (but old)';
$this->silentLog('[info] Libzip version detected: ' . $libzip_version);
$zip = new \ZipArchive;
@@ -740,15 +740,15 @@ public function extractDownload(): void {
if ($zipState === true) {
$extraction = $zip->extractTo(dirname($downloadedFilePath));
if ($extraction === false) {
- throw new \Exception('Error during unpacking zipfile: '.($zip->getStatusString()));
+ throw new \Exception('Error during unpacking zipfile: ' . ($zip->getStatusString()));
}
$zip->close();
$state = unlink($downloadedFilePath);
if ($state === false) {
- throw new \Exception("Can't unlink ". $downloadedFilePath);
+ throw new \Exception("Can't unlink " . $downloadedFilePath);
}
} else {
- throw new \Exception("Can't handle ZIP file. Error code is: ".print_r($zipState, true));
+ throw new \Exception("Can't handle ZIP file. Error code is: " . print_r($zipState, true));
}
// Ensure that the downloaded version is not lower
@@ -790,7 +790,7 @@ public function replaceEntryPoints(): void {
}
$state = file_put_contents($this->nextcloudDir . '/' . $file, $content);
if ($state === false) {
- throw new \Exception('Can\'t replace entry point: '.$file);
+ throw new \Exception('Can\'t replace entry point: ' . $file);
}
}
@@ -846,7 +846,7 @@ public function deleteOldFiles(): void {
throw new \Exception('core/shipped.json content is invalid');
}
- $newShippedAppsFile = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/core/shipped.json';
+ $newShippedAppsFile = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/core/shipped.json';
$newShippedAppsFileContent = file_get_contents($newShippedAppsFile);
if ($newShippedAppsFileContent === false) {
throw new \Exception('core/shipped.json is not available in the new release');
@@ -906,12 +906,12 @@ public function deleteOldFiles(): void {
if ($fileInfo->isFile() || $fileInfo->isLink()) {
$state = unlink($path);
if ($state === false) {
- throw new \Exception('Could not unlink: '.$path);
+ throw new \Exception('Could not unlink: ' . $path);
}
} elseif ($fileInfo->isDir()) {
$state = rmdir($path);
if ($state === false) {
- throw new \Exception('Could not rmdir: '.$path);
+ throw new \Exception('Could not rmdir: ' . $path);
}
}
}
@@ -973,7 +973,7 @@ public function moveNewVersionInPlace(): void {
'public.php',
'ocs',
];
- $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/';
+ $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/';
$this->silentLog('[info] storage location: ' . $storageLocation);
// Rename apps and other stuff
@@ -993,7 +993,7 @@ public function moveNewVersionInPlace(): void {
public function finalize(): void {
$this->silentLog('[info] finalize()');
- $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/';
+ $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/';
$this->silentLog('[info] storage location: ' . $storageLocation);
$this->moveWithExclusions($storageLocation, []);
$state = rmdir($storageLocation);
@@ -1001,7 +1001,7 @@ public function finalize(): void {
throw new \Exception('Could not rmdir $storagelocation');
}
- $state = unlink($this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/.step');
+ $state = unlink($this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/.step');
if ($state === false) {
throw new \Exception('Could not rmdir .step');
}
@@ -1018,7 +1018,7 @@ public function finalize(): void {
* @throws \Exception
*/
private function writeStep(string $state, int $step): void {
- $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid');
+ $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid');
if (!file_exists($updaterDir . '/.step')) {
if (!file_exists($updaterDir)) {
$result = mkdir($updaterDir);
@@ -1060,8 +1060,8 @@ public function endStep(int $step): void {
public function currentStep(): array {
$this->silentLog('[info] currentStep()');
- $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid');
- if (!file_exists($updaterDir. '/.step')) {
+ $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid');
+ if (!file_exists($updaterDir . '/.step')) {
return [];
}
@@ -1079,7 +1079,7 @@ public function currentStep(): array {
}
public function getUpdateStepFileLocation(): string {
- $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOption('instanceid');
+ $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOption('instanceid');
return $updaterDir . '/.step';
}
@@ -1091,7 +1091,7 @@ public function getUpdateStepFileLocation(): string {
public function rollbackChanges(int $step): void {
$this->silentLog('[info] rollbackChanges("' . $step . '")');
- $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid');
+ $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid');
if (file_exists($updaterDir . '/.step')) {
$this->silentLog('[info] unlink .step');
$state = unlink($updaterDir . '/.step');
diff --git a/lib/UpdateCommand.php b/lib/UpdateCommand.php
index 718f224b..f2586526 100644
--- a/lib/UpdateCommand.php
+++ b/lib/UpdateCommand.php
@@ -43,7 +43,7 @@ protected function configure(): void {
$this
->setName('update')
->setDescription('Updates the code of an Nextcloud instance')
- ->setHelp("This command fetches the latest code that is announced via the updater server and safely replaces the existing code with the new one.")
+ ->setHelp('This command fetches the latest code that is announced via the updater server and safely replaces the existing code with the new one.')
->addOption('no-backup', null, InputOption::VALUE_NONE, 'Skip backup of current Nextcloud version')
->addOption('no-upgrade', null, InputOption::VALUE_NONE, "Don't automatically run occ upgrade");
}
@@ -80,7 +80,7 @@ protected function execute(InputInterface $input, OutputInterface $output) {
}
if (!function_exists('posix_getuid')) {
- $output->writeln("The posix extensions are required - see http://php.net/manual/en/book.posix.php");
+ $output->writeln('The posix extensions are required - see http://php.net/manual/en/book.posix.php');
return -1;
}
@@ -92,9 +92,9 @@ protected function execute(InputInterface $input, OutputInterface $output) {
$user = posix_getpwuid(posix_getuid());
$configUser = posix_getpwuid(fileowner($configFileName));
if ($user['name'] !== $configUser['name']) {
- $output->writeln("Console has to be executed with the user that owns the file config/config.php");
- $output->writeln("Current user: " . $user['name']);
- $output->writeln("Owner of config.php: " . $configUser['name']);
+ $output->writeln('Console has to be executed with the user that owns the file config/config.php');
+ $output->writeln('Current user: ' . $user['name']);
+ $output->writeln('Owner of config.php: ' . $configUser['name']);
$output->writeln("Try adding 'sudo -u " . $configUser['name'] . " ' to the beginning of the command (without the single quotes)");
return -1;
}
@@ -252,7 +252,7 @@ protected function execute(InputInterface $input, OutputInterface $output) {
}
} else {
if (is_string($result['response'])) {
- $output->writeln('' . $result['response'] . '');
+ $output->writeln('' . $result['response'] . '');
} else {
$output->writeln('Something has gone wrong. Please check the log file in the data dir.');
}
diff --git a/lib/Updater.php b/lib/Updater.php
index 5fb21b89..0a248275 100644
--- a/lib/Updater.php
+++ b/lib/Updater.php
@@ -259,8 +259,8 @@ private function getAppDirectories(): array {
throw new \Exception('Invalid configuration in apps_paths configuration key');
}
$appDir = basename($appsPath['path']);
- if (strpos($appsPath['path'], $this->nextcloudDir.'/') === 0) {
- $relativePath = substr($appsPath['path'], strlen($this->nextcloudDir.'/'));
+ if (strpos($appsPath['path'], $this->nextcloudDir . '/') === 0) {
+ $relativePath = substr($appsPath['path'], strlen($this->nextcloudDir . '/'));
if ($relativePath !== 'apps') {
$expected[] = $relativePath;
}
@@ -287,7 +287,7 @@ private function getRecursiveDirectoryIterator(string $folder, array $excludedPa
$handle = opendir($folder);
if ($handle === false) {
- throw new \Exception('Could not open '.$folder);
+ throw new \Exception('Could not open ' . $folder);
}
/* Store first level children in an array to avoid trouble if changes happen while iterating */
@@ -305,7 +305,7 @@ private function getRecursiveDirectoryIterator(string $folder, array $excludedPa
closedir($handle);
foreach ($children as $name) {
- $path = $folder.'/'.$name;
+ $path = $folder . '/' . $name;
if (is_dir($path)) {
yield from $this->getRecursiveDirectoryIterator($path, []);
}
@@ -364,7 +364,7 @@ public function checkWritePermissions(): void {
* @throws \Exception when config.php can't be written
*/
public function setMaintenanceMode(bool $state): void {
- $this->silentLog('[info] setMaintenanceMode("' . ($state ? 'true' : 'false') . '")');
+ $this->silentLog('[info] setMaintenanceMode("' . ($state ? 'true' : 'false') . '")');
if ($dir = getenv('NEXTCLOUD_CONFIG_DIR')) {
$configFileName = rtrim($dir, '/') . '/config.php';
@@ -406,7 +406,7 @@ public function createBackup(): void {
];
// Create new folder for the backup
- $backupFolderLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid').'/backups/nextcloud-'.$this->getConfigOptionMandatoryString('version') . '-' . time() . '/';
+ $backupFolderLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/backups/nextcloud-' . $this->getConfigOptionMandatoryString('version') . '-' . time() . '/';
$this->silentLog('[info] backup folder location: ' . $backupFolderLocation);
$state = mkdir($backupFolderLocation, 0750, true);
@@ -422,7 +422,7 @@ public function createBackup(): void {
if (!file_exists($backupFolderLocation . '/' . $relativeDirectory)) {
$state = mkdir($backupFolderLocation . '/' . $relativeDirectory, 0750, true);
if ($state === false) {
- throw new \Exception('Could not create folder: '.$backupFolderLocation.'/'.$relativeDirectory);
+ throw new \Exception('Could not create folder: ' . $backupFolderLocation . '/' . $relativeDirectory);
}
}
@@ -483,7 +483,7 @@ private function getUpdateServerResponse(): array {
$this->silentLog('[info] releaseChannel: ' . $releaseChannel);
$this->silentLog('[info] internal version: ' . $this->getConfigOptionMandatoryString('version'));
- $updateURL = $updaterServer . '?version='. str_replace('.', 'x', $this->getConfigOptionMandatoryString('version')) .'xxx'.$releaseChannel.'xx'.urlencode($this->buildTime).'x'.PHP_MAJOR_VERSION.'x'.PHP_MINOR_VERSION.'x'.PHP_RELEASE_VERSION;
+ $updateURL = $updaterServer . '?version=' . str_replace('.', 'x', $this->getConfigOptionMandatoryString('version')) . 'xxx' . $releaseChannel . 'xx' . urlencode($this->buildTime) . 'x' . PHP_MAJOR_VERSION . 'x' . PHP_MINOR_VERSION . 'x' . PHP_RELEASE_VERSION;
$this->silentLog('[info] updateURL: ' . $updateURL);
// Download update response
@@ -505,7 +505,7 @@ private function getUpdateServerResponse(): array {
/** @var false|string $response */
$response = curl_exec($curl);
if ($response === false) {
- throw new \Exception('Could not do request to updater server: '.curl_error($curl));
+ throw new \Exception('Could not do request to updater server: ' . curl_error($curl));
}
curl_close($curl);
@@ -533,7 +533,7 @@ public function downloadUpdate(): void {
$response = $this->getUpdateServerResponse();
- $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/';
+ $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/';
if (file_exists($storageLocation)) {
$this->silentLog('[info] storage location exists');
$this->recursiveDelete($storageLocation);
@@ -604,7 +604,7 @@ public function downloadUpdate(): void {
* @throws \Exception
*/
private function getDownloadedFilePath(): string {
- $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/';
+ $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/';
$this->silentLog('[info] storage location: ' . $storageLocation);
$filesInStorageLocation = scandir($storageLocation);
@@ -714,7 +714,7 @@ public function extractDownload(): void {
throw new \Exception('Required PHP extension missing: zip');
}
- $libzip_version = defined("ZipArchive::LIBZIP_VERSION") ? \ZipArchive::LIBZIP_VERSION : "Unknown (but old)";
+ $libzip_version = defined('ZipArchive::LIBZIP_VERSION') ? \ZipArchive::LIBZIP_VERSION : 'Unknown (but old)';
$this->silentLog('[info] Libzip version detected: ' . $libzip_version);
$zip = new \ZipArchive;
@@ -722,15 +722,15 @@ public function extractDownload(): void {
if ($zipState === true) {
$extraction = $zip->extractTo(dirname($downloadedFilePath));
if ($extraction === false) {
- throw new \Exception('Error during unpacking zipfile: '.($zip->getStatusString()));
+ throw new \Exception('Error during unpacking zipfile: ' . ($zip->getStatusString()));
}
$zip->close();
$state = unlink($downloadedFilePath);
if ($state === false) {
- throw new \Exception("Can't unlink ". $downloadedFilePath);
+ throw new \Exception("Can't unlink " . $downloadedFilePath);
}
} else {
- throw new \Exception("Can't handle ZIP file. Error code is: ".print_r($zipState, true));
+ throw new \Exception("Can't handle ZIP file. Error code is: " . print_r($zipState, true));
}
// Ensure that the downloaded version is not lower
@@ -772,7 +772,7 @@ public function replaceEntryPoints(): void {
}
$state = file_put_contents($this->nextcloudDir . '/' . $file, $content);
if ($state === false) {
- throw new \Exception('Can\'t replace entry point: '.$file);
+ throw new \Exception('Can\'t replace entry point: ' . $file);
}
}
@@ -828,7 +828,7 @@ public function deleteOldFiles(): void {
throw new \Exception('core/shipped.json content is invalid');
}
- $newShippedAppsFile = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/core/shipped.json';
+ $newShippedAppsFile = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/core/shipped.json';
$newShippedAppsFileContent = file_get_contents($newShippedAppsFile);
if ($newShippedAppsFileContent === false) {
throw new \Exception('core/shipped.json is not available in the new release');
@@ -888,12 +888,12 @@ public function deleteOldFiles(): void {
if ($fileInfo->isFile() || $fileInfo->isLink()) {
$state = unlink($path);
if ($state === false) {
- throw new \Exception('Could not unlink: '.$path);
+ throw new \Exception('Could not unlink: ' . $path);
}
} elseif ($fileInfo->isDir()) {
$state = rmdir($path);
if ($state === false) {
- throw new \Exception('Could not rmdir: '.$path);
+ throw new \Exception('Could not rmdir: ' . $path);
}
}
}
@@ -955,7 +955,7 @@ public function moveNewVersionInPlace(): void {
'public.php',
'ocs',
];
- $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/';
+ $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/';
$this->silentLog('[info] storage location: ' . $storageLocation);
// Rename apps and other stuff
@@ -975,7 +975,7 @@ public function moveNewVersionInPlace(): void {
public function finalize(): void {
$this->silentLog('[info] finalize()');
- $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/';
+ $storageLocation = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/downloads/nextcloud/';
$this->silentLog('[info] storage location: ' . $storageLocation);
$this->moveWithExclusions($storageLocation, []);
$state = rmdir($storageLocation);
@@ -983,7 +983,7 @@ public function finalize(): void {
throw new \Exception('Could not rmdir $storagelocation');
}
- $state = unlink($this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid') . '/.step');
+ $state = unlink($this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid') . '/.step');
if ($state === false) {
throw new \Exception('Could not rmdir .step');
}
@@ -1000,7 +1000,7 @@ public function finalize(): void {
* @throws \Exception
*/
private function writeStep(string $state, int $step): void {
- $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid');
+ $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid');
if (!file_exists($updaterDir . '/.step')) {
if (!file_exists($updaterDir)) {
$result = mkdir($updaterDir);
@@ -1042,8 +1042,8 @@ public function endStep(int $step): void {
public function currentStep(): array {
$this->silentLog('[info] currentStep()');
- $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid');
- if (!file_exists($updaterDir. '/.step')) {
+ $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid');
+ if (!file_exists($updaterDir . '/.step')) {
return [];
}
@@ -1061,7 +1061,7 @@ public function currentStep(): array {
}
public function getUpdateStepFileLocation(): string {
- $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOption('instanceid');
+ $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOption('instanceid');
return $updaterDir . '/.step';
}
@@ -1073,7 +1073,7 @@ public function getUpdateStepFileLocation(): string {
public function rollbackChanges(int $step): void {
$this->silentLog('[info] rollbackChanges("' . $step . '")');
- $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-'.$this->getConfigOptionMandatoryString('instanceid');
+ $updaterDir = $this->getUpdateDirectoryLocation() . '/updater-' . $this->getConfigOptionMandatoryString('instanceid');
if (file_exists($updaterDir . '/.step')) {
$this->silentLog('[info] unlink .step');
$state = unlink($updaterDir . '/.step');
diff --git a/tests/checkSameCodeBase.php b/tests/checkSameCodeBase.php
index 2e534c25..5beb9ca6 100644
--- a/tests/checkSameCodeBase.php
+++ b/tests/checkSameCodeBase.php
@@ -76,8 +76,8 @@ function findDiffPos($original, $copy) {
}
if ($failedFiles !== []) {
- echo "Code is not the same" . PHP_EOL;
+ echo 'Code is not the same' . PHP_EOL;
exit(1);
}
-echo "Code is the same" . PHP_EOL;
+echo 'Code is the same' . PHP_EOL;
diff --git a/tests/features/bootstrap/FeatureContext.php b/tests/features/bootstrap/FeatureContext.php
index 2f222add..090f637f 100644
--- a/tests/features/bootstrap/FeatureContext.php
+++ b/tests/features/bootstrap/FeatureContext.php
@@ -113,7 +113,7 @@ public function theCurrentInstalledVersionIs($installed, $version) {
$zip->extractTo($this->serverDir);
$zip->close();
} else {
- throw new \Exception('Cant handle ZIP file. Error code is: '.$zipState);
+ throw new \Exception('Cant handle ZIP file. Error code is: ' . $zipState);
}
if ($installed === '') {
@@ -271,7 +271,7 @@ public function thereIsAnUpdateToVersionAvailable($version) {
https://download.nextcloud.com/server/releases/nextcloud-' . $version . '.zip
https://docs.nextcloud.org/server/10/admin_manual/maintenance/manual_upgrade.html
' . $this->autoupdater . '
- '.$this->getSignatureForVersion($version).'
+ ' . $this->getSignatureForVersion($version) . '
';
file_put_contents($this->updateServerDir . 'index.php', $content);
@@ -296,7 +296,7 @@ public function thereIsAnUpdateToPrereleaseVersionAvailable($version) {
https://download.nextcloud.com/server/prereleases/nextcloud-' . $version . '.zip
https://docs.nextcloud.org/server/10/admin_manual/maintenance/manual_upgrade.html
1
- '.$this->getSignatureForVersion($version).'
+ ' . $this->getSignatureForVersion($version) . '
';
file_put_contents($this->updateServerDir . 'index.php', $content);
@@ -340,7 +340,7 @@ protected function runUpdateServer() {
throw new Exception('Update server already started');
}
- $cmd = "php -S localhost:8870 -t " . $this->updateServerDir . " 2>/dev/null 1>/dev/null";
+ $cmd = 'php -S localhost:8870 -t ' . $this->updateServerDir . ' 2>/dev/null 1>/dev/null';
$this->updaterServerProcess = proc_open($cmd, [], $pipes, $this->updateServerDir);
if (!is_resource($this->updaterServerProcess)) {
@@ -399,7 +399,7 @@ public function theCurrentChannelIs($channel) {
chdir($this->serverDir . 'nextcloud');
shell_exec('chmod +x occ');
- exec('./occ config:system:set --value '.$channel.' updater.release.channel');
+ exec('./occ config:system:set --value ' . $channel . ' updater.release.channel');
}
/**
diff --git a/updater.phar b/updater.phar
index 3c086b87..101d7840 100755
Binary files a/updater.phar and b/updater.phar differ
diff --git a/vendor-bin/coding-standard/composer.lock b/vendor-bin/coding-standard/composer.lock
index b6141699..8448b897 100644
--- a/vendor-bin/coding-standard/composer.lock
+++ b/vendor-bin/coding-standard/composer.lock
@@ -7,21 +7,68 @@
"content-hash": "8252dff4c406c59d0595dcc6e03fd9d1",
"packages": [],
"packages-dev": [
+ {
+ "name": "kubawerlos/php-cs-fixer-custom-fixers",
+ "version": "v3.22.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers.git",
+ "reference": "8701394f0c7cd450ac4fa577d24589122c1d5d5e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/kubawerlos/php-cs-fixer-custom-fixers/zipball/8701394f0c7cd450ac4fa577d24589122c1d5d5e",
+ "reference": "8701394f0c7cd450ac4fa577d24589122c1d5d5e",
+ "shasum": ""
+ },
+ "require": {
+ "ext-filter": "*",
+ "ext-tokenizer": "*",
+ "friendsofphp/php-cs-fixer": "^3.61.1",
+ "php": "^7.4 || ^8.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.6.4 || ^10.5.29"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "PhpCsFixerCustomFixers\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Kuba Werłos",
+ "email": "werlos@gmail.com"
+ }
+ ],
+ "description": "A set of custom fixers for PHP CS Fixer",
+ "support": {
+ "issues": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/issues",
+ "source": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/tree/v3.22.0"
+ },
+ "time": "2024-08-16T20:44:35+00:00"
+ },
{
"name": "nextcloud/coding-standard",
- "version": "v1.1.1",
+ "version": "v1.3.2",
"source": {
"type": "git",
"url": "https://github.com/nextcloud/coding-standard.git",
- "reference": "55def702fb9a37a219511e1d8c6fe8e37164c1fb"
+ "reference": "9c719c4747fa26efc12f2e8b21c14a9a75c6ba6d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nextcloud/coding-standard/zipball/55def702fb9a37a219511e1d8c6fe8e37164c1fb",
- "reference": "55def702fb9a37a219511e1d8c6fe8e37164c1fb",
+ "url": "https://api.github.com/repos/nextcloud/coding-standard/zipball/9c719c4747fa26efc12f2e8b21c14a9a75c6ba6d",
+ "reference": "9c719c4747fa26efc12f2e8b21c14a9a75c6ba6d",
"shasum": ""
},
"require": {
+ "kubawerlos/php-cs-fixer-custom-fixers": "^3.22",
"php": "^7.3|^8.0",
"php-cs-fixer/shim": "^3.17"
},
@@ -44,22 +91,22 @@
"description": "Nextcloud coding standards for the php cs fixer",
"support": {
"issues": "https://github.com/nextcloud/coding-standard/issues",
- "source": "https://github.com/nextcloud/coding-standard/tree/v1.1.1"
+ "source": "https://github.com/nextcloud/coding-standard/tree/v1.3.2"
},
- "time": "2023-06-01T12:05:01+00:00"
+ "time": "2024-10-14T16:49:05+00:00"
},
{
"name": "php-cs-fixer/shim",
- "version": "v3.37.1",
+ "version": "v3.68.5",
"source": {
"type": "git",
"url": "https://github.com/PHP-CS-Fixer/shim.git",
- "reference": "e1f64aca03848c60d6eca5ab0dfc8b9f9678cb27"
+ "reference": "4a0a5cfd39b0677017a85f0fc252d3e8a6a6c02c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/shim/zipball/e1f64aca03848c60d6eca5ab0dfc8b9f9678cb27",
- "reference": "e1f64aca03848c60d6eca5ab0dfc8b9f9678cb27",
+ "url": "https://api.github.com/repos/PHP-CS-Fixer/shim/zipball/4a0a5cfd39b0677017a85f0fc252d3e8a6a6c02c",
+ "reference": "4a0a5cfd39b0677017a85f0fc252d3e8a6a6c02c",
"shasum": ""
},
"require": {
@@ -96,18 +143,18 @@
"description": "A tool to automatically fix PHP code style",
"support": {
"issues": "https://github.com/PHP-CS-Fixer/shim/issues",
- "source": "https://github.com/PHP-CS-Fixer/shim/tree/v3.37.1"
+ "source": "https://github.com/PHP-CS-Fixer/shim/tree/v3.68.5"
},
- "time": "2023-10-29T20:52:01+00:00"
+ "time": "2025-01-30T17:01:41+00:00"
}
],
"aliases": [],
"minimum-stability": "stable",
- "stability-flags": [],
+ "stability-flags": {},
"prefer-stable": false,
"prefer-lowest": false,
- "platform": [],
- "platform-dev": [],
+ "platform": {},
+ "platform-dev": {},
"platform-overrides": {
"php": "8.0"
},
diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php
index 9e980904..7e70e3a7 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -28,7 +28,6 @@
'NC\\Updater\\UpdateException' => $baseDir . '/lib/UpdateException.php',
'NC\\Updater\\Updater' => $baseDir . '/lib/Updater.php',
'NC\\Updater\\Version' => $baseDir . '/lib/Version.php',
- 'Nextcloud\\CodingStandard\\Config' => $vendorDir . '/nextcloud/coding-standard/src/Config.php',
'Normalizer' => $vendorDir . '/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php',
'PhpToken' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php',
'Psr\\Container\\ContainerExceptionInterface' => $vendorDir . '/psr/container/src/ContainerExceptionInterface.php',
@@ -162,6 +161,7 @@
'Symfony\\Contracts\\Service\\ServiceSubscriberInterface' => $vendorDir . '/symfony/service-contracts/ServiceSubscriberInterface.php',
'Symfony\\Contracts\\Service\\ServiceSubscriberTrait' => $vendorDir . '/symfony/service-contracts/ServiceSubscriberTrait.php',
'Symfony\\Contracts\\Service\\Test\\ServiceLocatorTest' => $vendorDir . '/symfony/service-contracts/Test/ServiceLocatorTest.php',
+ 'Symfony\\Contracts\\Service\\Test\\ServiceLocatorTestCase' => $vendorDir . '/symfony/service-contracts/Test/ServiceLocatorTestCase.php',
'Symfony\\Polyfill\\Ctype\\Ctype' => $vendorDir . '/symfony/polyfill-ctype/Ctype.php',
'Symfony\\Polyfill\\Intl\\Grapheme\\Grapheme' => $vendorDir . '/symfony/polyfill-intl-grapheme/Grapheme.php',
'Symfony\\Polyfill\\Intl\\Normalizer\\Normalizer' => $vendorDir . '/symfony/polyfill-intl-normalizer/Normalizer.php',
diff --git a/vendor/composer/autoload_psr4.php b/vendor/composer/autoload_psr4.php
index d5449397..7ed55f3c 100644
--- a/vendor/composer/autoload_psr4.php
+++ b/vendor/composer/autoload_psr4.php
@@ -16,7 +16,6 @@
'Symfony\\Component\\String\\' => array($vendorDir . '/symfony/string'),
'Symfony\\Component\\Console\\' => array($vendorDir . '/symfony/console'),
'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
- 'Nextcloud\\CodingStandard\\' => array($vendorDir . '/nextcloud/coding-standard/src'),
'NC\\Updater\\' => array($baseDir . '/lib'),
'Bamarni\\Composer\\Bin\\' => array($vendorDir . '/bamarni/composer-bin-plugin/src'),
);
diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php
index 0a268bc1..2f2dc688 100644
--- a/vendor/composer/autoload_static.php
+++ b/vendor/composer/autoload_static.php
@@ -36,7 +36,6 @@ class ComposerStaticInit936ba63ded5d1b8248cdb4d5673af0ea
),
'N' =>
array (
- 'Nextcloud\\CodingStandard\\' => 25,
'NC\\Updater\\' => 11,
),
'B' =>
@@ -86,10 +85,6 @@ class ComposerStaticInit936ba63ded5d1b8248cdb4d5673af0ea
array (
0 => __DIR__ . '/..' . '/psr/container/src',
),
- 'Nextcloud\\CodingStandard\\' =>
- array (
- 0 => __DIR__ . '/..' . '/nextcloud/coding-standard/src',
- ),
'NC\\Updater\\' =>
array (
0 => __DIR__ . '/../..' . '/lib',
@@ -123,7 +118,6 @@ class ComposerStaticInit936ba63ded5d1b8248cdb4d5673af0ea
'NC\\Updater\\UpdateException' => __DIR__ . '/../..' . '/lib/UpdateException.php',
'NC\\Updater\\Updater' => __DIR__ . '/../..' . '/lib/Updater.php',
'NC\\Updater\\Version' => __DIR__ . '/../..' . '/lib/Version.php',
- 'Nextcloud\\CodingStandard\\Config' => __DIR__ . '/..' . '/nextcloud/coding-standard/src/Config.php',
'Normalizer' => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php',
'PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php',
'Psr\\Container\\ContainerExceptionInterface' => __DIR__ . '/..' . '/psr/container/src/ContainerExceptionInterface.php',
@@ -257,6 +251,7 @@ class ComposerStaticInit936ba63ded5d1b8248cdb4d5673af0ea
'Symfony\\Contracts\\Service\\ServiceSubscriberInterface' => __DIR__ . '/..' . '/symfony/service-contracts/ServiceSubscriberInterface.php',
'Symfony\\Contracts\\Service\\ServiceSubscriberTrait' => __DIR__ . '/..' . '/symfony/service-contracts/ServiceSubscriberTrait.php',
'Symfony\\Contracts\\Service\\Test\\ServiceLocatorTest' => __DIR__ . '/..' . '/symfony/service-contracts/Test/ServiceLocatorTest.php',
+ 'Symfony\\Contracts\\Service\\Test\\ServiceLocatorTestCase' => __DIR__ . '/..' . '/symfony/service-contracts/Test/ServiceLocatorTestCase.php',
'Symfony\\Polyfill\\Ctype\\Ctype' => __DIR__ . '/..' . '/symfony/polyfill-ctype/Ctype.php',
'Symfony\\Polyfill\\Intl\\Grapheme\\Grapheme' => __DIR__ . '/..' . '/symfony/polyfill-intl-grapheme/Grapheme.php',
'Symfony\\Polyfill\\Intl\\Normalizer\\Normalizer' => __DIR__ . '/..' . '/symfony/polyfill-intl-normalizer/Normalizer.php',
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 12dbac5a..deeaacdb 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -60,105 +60,6 @@
},
"install-path": "../bamarni/composer-bin-plugin"
},
- {
- "name": "nextcloud/coding-standard",
- "version": "v1.2.1",
- "version_normalized": "1.2.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/nextcloud/coding-standard.git",
- "reference": "cf5f18d989ec62fb4cdc7fc92a36baf34b3d829e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/nextcloud/coding-standard/zipball/cf5f18d989ec62fb4cdc7fc92a36baf34b3d829e",
- "reference": "cf5f18d989ec62fb4cdc7fc92a36baf34b3d829e",
- "shasum": ""
- },
- "require": {
- "php": "^7.3|^8.0",
- "php-cs-fixer/shim": "^3.17"
- },
- "time": "2024-02-01T14:54:37+00:00",
- "type": "library",
- "installation-source": "dist",
- "autoload": {
- "psr-4": {
- "Nextcloud\\CodingStandard\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Christoph Wurst",
- "email": "christoph@winzerhof-wurst.at"
- }
- ],
- "description": "Nextcloud coding standards for the php cs fixer",
- "support": {
- "issues": "https://github.com/nextcloud/coding-standard/issues",
- "source": "https://github.com/nextcloud/coding-standard/tree/v1.2.1"
- },
- "install-path": "../nextcloud/coding-standard"
- },
- {
- "name": "php-cs-fixer/shim",
- "version": "v3.51.0",
- "version_normalized": "3.51.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/PHP-CS-Fixer/shim.git",
- "reference": "a792394f7f3934f75a4df9dca544796c6f503027"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/shim/zipball/a792394f7f3934f75a4df9dca544796c6f503027",
- "reference": "a792394f7f3934f75a4df9dca544796c6f503027",
- "shasum": ""
- },
- "require": {
- "ext-json": "*",
- "ext-tokenizer": "*",
- "php": "^7.4 || ^8.0"
- },
- "replace": {
- "friendsofphp/php-cs-fixer": "self.version"
- },
- "suggest": {
- "ext-dom": "For handling output formats in XML",
- "ext-mbstring": "For handling non-UTF8 characters."
- },
- "time": "2024-02-28T19:51:07+00:00",
- "bin": [
- "php-cs-fixer",
- "php-cs-fixer.phar"
- ],
- "type": "application",
- "installation-source": "dist",
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Dariusz Rumiński",
- "email": "dariusz.ruminski@gmail.com"
- }
- ],
- "description": "A tool to automatically fix PHP code style",
- "support": {
- "issues": "https://github.com/PHP-CS-Fixer/shim/issues",
- "source": "https://github.com/PHP-CS-Fixer/shim/tree/v3.51.0"
- },
- "install-path": "../php-cs-fixer/shim"
- },
{
"name": "psr/container",
"version": "1.1.2",
@@ -212,17 +113,17 @@
},
{
"name": "symfony/console",
- "version": "v5.4.35",
- "version_normalized": "5.4.35.0",
+ "version": "v5.4.47",
+ "version_normalized": "5.4.47.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "dbdf6adcb88d5f83790e1efb57ef4074309d3931"
+ "reference": "c4ba980ca61a9eb18ee6bcc73f28e475852bb1ed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/dbdf6adcb88d5f83790e1efb57ef4074309d3931",
- "reference": "dbdf6adcb88d5f83790e1efb57ef4074309d3931",
+ "url": "https://api.github.com/repos/symfony/console/zipball/c4ba980ca61a9eb18ee6bcc73f28e475852bb1ed",
+ "reference": "c4ba980ca61a9eb18ee6bcc73f28e475852bb1ed",
"shasum": ""
},
"require": {
@@ -260,7 +161,7 @@
"symfony/lock": "",
"symfony/process": ""
},
- "time": "2024-01-23T14:28:09+00:00",
+ "time": "2024-11-06T11:30:55+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
@@ -294,7 +195,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v5.4.35"
+ "source": "https://github.com/symfony/console/tree/v5.4.47"
},
"funding": [
{
@@ -314,31 +215,31 @@
},
{
"name": "symfony/deprecation-contracts",
- "version": "v2.5.2",
- "version_normalized": "2.5.2.0",
+ "version": "v2.5.4",
+ "version_normalized": "2.5.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/deprecation-contracts.git",
- "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66"
+ "reference": "605389f2a7e5625f273b53960dc46aeaf9c62918"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
- "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/605389f2a7e5625f273b53960dc46aeaf9c62918",
+ "reference": "605389f2a7e5625f273b53960dc46aeaf9c62918",
"shasum": ""
},
"require": {
"php": ">=7.1"
},
- "time": "2022-01-02T09:53:40+00:00",
+ "time": "2024-09-25T14:11:13+00:00",
"type": "library",
"extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
"branch-alias": {
"dev-main": "2.5-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
}
},
"installation-source": "dist",
@@ -364,7 +265,7 @@
"description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.2"
+ "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.4"
},
"funding": [
{
@@ -384,21 +285,21 @@
},
{
"name": "symfony/polyfill-ctype",
- "version": "v1.28.0",
- "version_normalized": "1.28.0.0",
+ "version": "v1.31.0",
+ "version_normalized": "1.31.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb"
+ "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb",
- "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638",
+ "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"provide": {
"ext-ctype": "*"
@@ -406,15 +307,12 @@
"suggest": {
"ext-ctype": "For best performance"
},
- "time": "2023-01-26T09:26:14+00:00",
+ "time": "2024-09-09T11:45:10+00:00",
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"installation-source": "dist",
@@ -449,7 +347,7 @@
"portable"
],
"support": {
- "source": "https://github.com/symfony/polyfill-ctype/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.0"
},
"funding": [
{
@@ -469,34 +367,31 @@
},
{
"name": "symfony/polyfill-intl-grapheme",
- "version": "v1.28.0",
- "version_normalized": "1.28.0.0",
+ "version": "v1.31.0",
+ "version_normalized": "1.31.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-grapheme.git",
- "reference": "875e90aeea2777b6f135677f618529449334a612"
+ "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/875e90aeea2777b6f135677f618529449334a612",
- "reference": "875e90aeea2777b6f135677f618529449334a612",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe",
+ "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"suggest": {
"ext-intl": "For best performance"
},
- "time": "2023-01-26T09:26:14+00:00",
+ "time": "2024-09-09T11:45:10+00:00",
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"installation-source": "dist",
@@ -533,7 +428,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.0"
},
"funding": [
{
@@ -553,34 +448,31 @@
},
{
"name": "symfony/polyfill-intl-normalizer",
- "version": "v1.28.0",
- "version_normalized": "1.28.0.0",
+ "version": "v1.31.0",
+ "version_normalized": "1.31.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
- "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92"
+ "reference": "3833d7255cc303546435cb650316bff708a1c75c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
- "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/3833d7255cc303546435cb650316bff708a1c75c",
+ "reference": "3833d7255cc303546435cb650316bff708a1c75c",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"suggest": {
"ext-intl": "For best performance"
},
- "time": "2023-01-26T09:26:14+00:00",
+ "time": "2024-09-09T11:45:10+00:00",
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"installation-source": "dist",
@@ -620,7 +512,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.0"
},
"funding": [
{
@@ -640,21 +532,21 @@
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.28.0",
- "version_normalized": "1.28.0.0",
+ "version": "v1.31.0",
+ "version_normalized": "1.31.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "42292d99c55abe617799667f454222c54c60e229"
+ "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229",
- "reference": "42292d99c55abe617799667f454222c54c60e229",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341",
+ "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"provide": {
"ext-mbstring": "*"
@@ -662,15 +554,12 @@
"suggest": {
"ext-mbstring": "For best performance"
},
- "time": "2023-07-28T09:04:16+00:00",
+ "time": "2024-09-09T11:45:10+00:00",
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"installation-source": "dist",
@@ -706,7 +595,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0"
},
"funding": [
{
@@ -726,31 +615,28 @@
},
{
"name": "symfony/polyfill-php73",
- "version": "v1.28.0",
- "version_normalized": "1.28.0.0",
+ "version": "v1.31.0",
+ "version_normalized": "1.31.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php73.git",
- "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5"
+ "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fe2f306d1d9d346a7fee353d0d5012e401e984b5",
- "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5",
+ "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/0f68c03565dcaaf25a890667542e8bd75fe7e5bb",
+ "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
- "time": "2023-01-26T09:26:14+00:00",
+ "time": "2024-09-09T11:45:10+00:00",
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"installation-source": "dist",
@@ -788,7 +674,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php73/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-php73/tree/v1.31.0"
},
"funding": [
{
@@ -808,31 +694,28 @@
},
{
"name": "symfony/polyfill-php80",
- "version": "v1.28.0",
- "version_normalized": "1.28.0.0",
+ "version": "v1.31.0",
+ "version_normalized": "1.31.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php80.git",
- "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5"
+ "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
- "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
+ "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
+ "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
- "time": "2023-01-26T09:26:14+00:00",
+ "time": "2024-09-09T11:45:10+00:00",
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"installation-source": "dist",
@@ -874,7 +757,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php80/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0"
},
"funding": [
{
@@ -894,17 +777,17 @@
},
{
"name": "symfony/service-contracts",
- "version": "v2.5.2",
- "version_normalized": "2.5.2.0",
+ "version": "v2.5.4",
+ "version_normalized": "2.5.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c"
+ "reference": "f37b419f7aea2e9abf10abd261832cace12e3300"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/4b426aac47d6427cc1a1d0f7e2ac724627f5966c",
- "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f37b419f7aea2e9abf10abd261832cace12e3300",
+ "reference": "f37b419f7aea2e9abf10abd261832cace12e3300",
"shasum": ""
},
"require": {
@@ -918,15 +801,15 @@
"suggest": {
"symfony/service-implementation": ""
},
- "time": "2022-05-30T19:17:29+00:00",
+ "time": "2024-09-25T14:11:13+00:00",
"type": "library",
"extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
"branch-alias": {
"dev-main": "2.5-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
}
},
"installation-source": "dist",
@@ -960,7 +843,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v2.5.2"
+ "source": "https://github.com/symfony/service-contracts/tree/v2.5.4"
},
"funding": [
{
@@ -980,17 +863,17 @@
},
{
"name": "symfony/string",
- "version": "v5.4.35",
- "version_normalized": "5.4.35.0",
+ "version": "v5.4.47",
+ "version_normalized": "5.4.47.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "c209c4d0559acce1c9a2067612cfb5d35756edc2"
+ "reference": "136ca7d72f72b599f2631aca474a4f8e26719799"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/c209c4d0559acce1c9a2067612cfb5d35756edc2",
- "reference": "c209c4d0559acce1c9a2067612cfb5d35756edc2",
+ "url": "https://api.github.com/repos/symfony/string/zipball/136ca7d72f72b599f2631aca474a4f8e26719799",
+ "reference": "136ca7d72f72b599f2631aca474a4f8e26719799",
"shasum": ""
},
"require": {
@@ -1010,7 +893,7 @@
"symfony/translation-contracts": "^1.1|^2",
"symfony/var-exporter": "^4.4|^5.0|^6.0"
},
- "time": "2024-01-23T13:51:25+00:00",
+ "time": "2024-11-10T20:33:58+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
@@ -1049,7 +932,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v5.4.35"
+ "source": "https://github.com/symfony/string/tree/v5.4.47"
},
"funding": [
{
@@ -1070,8 +953,6 @@
],
"dev": true,
"dev-package-names": [
- "bamarni/composer-bin-plugin",
- "nextcloud/coding-standard",
- "php-cs-fixer/shim"
+ "bamarni/composer-bin-plugin"
]
}
diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php
index c68e281a..1f3d3441 100644
--- a/vendor/composer/installed.php
+++ b/vendor/composer/installed.php
@@ -3,7 +3,7 @@
'name' => '__root__',
'pretty_version' => 'dev-master',
'version' => 'dev-master',
- 'reference' => 'c504bf596664d9b1fb3f4142da00084a05e93e0d',
+ 'reference' => 'f5496edc4ab53b1f164b5df0056355272d3911ff',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
@@ -13,7 +13,7 @@
'__root__' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
- 'reference' => 'c504bf596664d9b1fb3f4142da00084a05e93e0d',
+ 'reference' => 'f5496edc4ab53b1f164b5df0056355272d3911ff',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
@@ -28,30 +28,6 @@
'aliases' => array(),
'dev_requirement' => true,
),
- 'friendsofphp/php-cs-fixer' => array(
- 'dev_requirement' => true,
- 'replaced' => array(
- 0 => 'v3.51.0',
- ),
- ),
- 'nextcloud/coding-standard' => array(
- 'pretty_version' => 'v1.2.1',
- 'version' => '1.2.1.0',
- 'reference' => 'cf5f18d989ec62fb4cdc7fc92a36baf34b3d829e',
- 'type' => 'library',
- 'install_path' => __DIR__ . '/../nextcloud/coding-standard',
- 'aliases' => array(),
- 'dev_requirement' => true,
- ),
- 'php-cs-fixer/shim' => array(
- 'pretty_version' => 'v3.51.0',
- 'version' => '3.51.0.0',
- 'reference' => 'a792394f7f3934f75a4df9dca544796c6f503027',
- 'type' => 'application',
- 'install_path' => __DIR__ . '/../php-cs-fixer/shim',
- 'aliases' => array(),
- 'dev_requirement' => true,
- ),
'psr/container' => array(
'pretty_version' => '1.1.2',
'version' => '1.1.2.0',
@@ -68,90 +44,90 @@
),
),
'symfony/console' => array(
- 'pretty_version' => 'v5.4.35',
- 'version' => '5.4.35.0',
- 'reference' => 'dbdf6adcb88d5f83790e1efb57ef4074309d3931',
+ 'pretty_version' => 'v5.4.47',
+ 'version' => '5.4.47.0',
+ 'reference' => 'c4ba980ca61a9eb18ee6bcc73f28e475852bb1ed',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/console',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/deprecation-contracts' => array(
- 'pretty_version' => 'v2.5.2',
- 'version' => '2.5.2.0',
- 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66',
+ 'pretty_version' => 'v2.5.4',
+ 'version' => '2.5.4.0',
+ 'reference' => '605389f2a7e5625f273b53960dc46aeaf9c62918',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/deprecation-contracts',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/polyfill-ctype' => array(
- 'pretty_version' => 'v1.28.0',
- 'version' => '1.28.0.0',
- 'reference' => 'ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb',
+ 'pretty_version' => 'v1.31.0',
+ 'version' => '1.31.0.0',
+ 'reference' => 'a3cc8b044a6ea513310cbd48ef7333b384945638',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-ctype',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/polyfill-intl-grapheme' => array(
- 'pretty_version' => 'v1.28.0',
- 'version' => '1.28.0.0',
- 'reference' => '875e90aeea2777b6f135677f618529449334a612',
+ 'pretty_version' => 'v1.31.0',
+ 'version' => '1.31.0.0',
+ 'reference' => 'b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-intl-grapheme',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/polyfill-intl-normalizer' => array(
- 'pretty_version' => 'v1.28.0',
- 'version' => '1.28.0.0',
- 'reference' => '8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92',
+ 'pretty_version' => 'v1.31.0',
+ 'version' => '1.31.0.0',
+ 'reference' => '3833d7255cc303546435cb650316bff708a1c75c',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/polyfill-mbstring' => array(
- 'pretty_version' => 'v1.28.0',
- 'version' => '1.28.0.0',
- 'reference' => '42292d99c55abe617799667f454222c54c60e229',
+ 'pretty_version' => 'v1.31.0',
+ 'version' => '1.31.0.0',
+ 'reference' => '85181ba99b2345b0ef10ce42ecac37612d9fd341',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-mbstring',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/polyfill-php73' => array(
- 'pretty_version' => 'v1.28.0',
- 'version' => '1.28.0.0',
- 'reference' => 'fe2f306d1d9d346a7fee353d0d5012e401e984b5',
+ 'pretty_version' => 'v1.31.0',
+ 'version' => '1.31.0.0',
+ 'reference' => '0f68c03565dcaaf25a890667542e8bd75fe7e5bb',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-php73',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/polyfill-php80' => array(
- 'pretty_version' => 'v1.28.0',
- 'version' => '1.28.0.0',
- 'reference' => '6caa57379c4aec19c0a12a38b59b26487dcfe4b5',
+ 'pretty_version' => 'v1.31.0',
+ 'version' => '1.31.0.0',
+ 'reference' => '60328e362d4c2c802a54fcbf04f9d3fb892b4cf8',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/polyfill-php80',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/service-contracts' => array(
- 'pretty_version' => 'v2.5.2',
- 'version' => '2.5.2.0',
- 'reference' => '4b426aac47d6427cc1a1d0f7e2ac724627f5966c',
+ 'pretty_version' => 'v2.5.4',
+ 'version' => '2.5.4.0',
+ 'reference' => 'f37b419f7aea2e9abf10abd261832cace12e3300',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/service-contracts',
'aliases' => array(),
'dev_requirement' => false,
),
'symfony/string' => array(
- 'pretty_version' => 'v5.4.35',
- 'version' => '5.4.35.0',
- 'reference' => 'c209c4d0559acce1c9a2067612cfb5d35756edc2',
+ 'pretty_version' => 'v5.4.47',
+ 'version' => '5.4.47.0',
+ 'reference' => '136ca7d72f72b599f2631aca474a4f8e26719799',
'type' => 'library',
'install_path' => __DIR__ . '/../symfony/string',
'aliases' => array(),
diff --git a/vendor/nextcloud/coding-standard/.github/workflows/lint.yml b/vendor/nextcloud/coding-standard/.github/workflows/lint.yml
deleted file mode 100644
index 41f5afb1..00000000
--- a/vendor/nextcloud/coding-standard/.github/workflows/lint.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-name: Lint
-on:
- push:
- branches:
- - master
- - stable*
- pull_request:
-
-jobs:
- lint-php:
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v2
- - name: Install Dependencies
- run: composer install --prefer-dist
- - name: Load problem matcher for php -l
- uses: korelstar/phplint-problem-matcher@v1
- - name: PHP syntax check
- run: "find src/ -type f -name '*.php' -print0 | xargs -0 -L1 -P4 -- php -l -f"
- - name: PHP Coding Standards Fixer
- run: vendor/bin/php-cs-fixer fix --dry-run --diff
diff --git a/vendor/nextcloud/coding-standard/.gitignore b/vendor/nextcloud/coding-standard/.gitignore
deleted file mode 100644
index 5d11b930..00000000
--- a/vendor/nextcloud/coding-standard/.gitignore
+++ /dev/null
@@ -1,8 +0,0 @@
-composer.phar
-/composer.lock
-/vendor/
-
-/.idea
-
-.php_cs.cache
-.php-cs-fixer.cache
diff --git a/vendor/nextcloud/coding-standard/.php-cs-fixer.dist.php b/vendor/nextcloud/coding-standard/.php-cs-fixer.dist.php
deleted file mode 100644
index 48c0baff..00000000
--- a/vendor/nextcloud/coding-standard/.php-cs-fixer.dist.php
+++ /dev/null
@@ -1,15 +0,0 @@
-getFinder()
- ->ignoreVCSIgnored(true)
- ->notPath('vendor')
- ->in(__DIR__);
-return $config;
diff --git a/vendor/nextcloud/coding-standard/CHANGELOG.md b/vendor/nextcloud/coding-standard/CHANGELOG.md
deleted file mode 100644
index a71c8bc6..00000000
--- a/vendor/nextcloud/coding-standard/CHANGELOG.md
+++ /dev/null
@@ -1,41 +0,0 @@
-# Changelog
-All notable changes to this project will be documented in this file.
-
-## 1.2.1 - 2024-02-01
-### Fix
-* fix: Remove `fully_qualified_strict_types` again by @nickvergessen in https://github.com/nextcloud/coding-standard/pull/16
-
-## 1.2.0 - 2024-02-01
-### Added
-- `array_syntax`: Force short syntax for array
-- `list_syntax`: Same for list
-- ~~`fully_qualified_strict_types`: Remove namespace from classname when there is a `use` statement, and add missing backslash for global namespace~~ - Removed in 1.2.1 due to issues
-- `no_leading_import_slash`: Remove leading slash from `use` statement
-- `nullable_type_declaration_for_default_null_value`: Add missing `?` on type declaration for parameters defaulting to `null`. This will most likely be needed to avoid warnings in PHP 8.4.
-- `yoda_style`: forbid yoda style comparision. This replaces `null === $a` by `$a === null`.
-
-## 1.1.1 - 2023-06-23
-### Changed
-* feat: use php-cs-fixer/shim by @kesselb in https://github.com/nextcloud/coding-standard/pull/13
-
-## 1.1.0 - 2023-04-13
-### Changed
-* Order imports alphabetically by @come-nc in https://github.com/nextcloud/coding-standard/pull/10
-* fix(rules): Replace deprecated braces rules by @nickvergessen in https://github.com/nextcloud/coding-standard/pull/12
-
-## 1.0.0 – 2021-11-10
-### Breaking change
-* Update php-cs-fixer to 3.x
-* See https://github.com/nextcloud/coding-standard#upgrade-from-v0x-to-v10 for instructions.
-
-## 0.5.0 – 2021-01-11
-### Added
-- New rule: short list syntax
-- php7.2 support (back, for apps that support Nextclod 20 - 21)
-
-## 0.4.0 – 2020-12-14
-### Added
-- php8 support
-- New rule: binary operators should be surrounded by a single space
-### Changed
-- php-cs-fixer updated to the latest version
diff --git a/vendor/nextcloud/coding-standard/LICENSE b/vendor/nextcloud/coding-standard/LICENSE
deleted file mode 100644
index 887be185..00000000
--- a/vendor/nextcloud/coding-standard/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2020 Christoph Wurst
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/vendor/nextcloud/coding-standard/README.md b/vendor/nextcloud/coding-standard/README.md
deleted file mode 100644
index 646b6a9f..00000000
--- a/vendor/nextcloud/coding-standard/README.md
+++ /dev/null
@@ -1,56 +0,0 @@
-# Nextcloud Coding Standard
-
-Nextcloud coding standards for the [php cs fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer).
-
-## Installation
-
-Add the package to your dev dependencies
-
-```bash
-composer require --dev nextcloud/coding-standard
-```
-
-and create a `.php-cs-fixer.dist.php` like
-
-```php
-getFinder()
- ->ignoreVCSIgnored(true)
- ->notPath('build')
- ->notPath('l10n')
- ->notPath('src')
- ->notPath('vendor')
- ->in(__DIR__);
-return $config;
-```
-
-To run the fixer you first have to [install it](https://github.com/FriendsOfPhp/PHP-CS-Fixer#installation). Then you can run `php-cs-fixer fix` to apply all automated fixes.
-
-For convenience you may add it to the `scripts` section of your `composer.json`:
-
-```json
-{
- "scripts": {
- "cs:check": "php-cs-fixer fix --dry-run --diff",
- "cs:fix": "php-cs-fixer fix"
- }
-}
-```
-
-*Note: Don't forget to exclude `.php-cs-fixer.dist.php` and `.php-cs-fixer.cache` in your build scripts.*
-
-## Upgrade from v0.x to v1.0
-
-With v1.0 php-cs-fixer was updated from v2 to v3. You'll have to adjust your app slightly:
-
-* Rename `.php_cs.dist` to `.php-cs-fixer.dist.php`
-* Add `.php-cs-fixer.cache` to your ignore files
diff --git a/vendor/nextcloud/coding-standard/composer.json b/vendor/nextcloud/coding-standard/composer.json
deleted file mode 100644
index 7e825f18..00000000
--- a/vendor/nextcloud/coding-standard/composer.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "name": "nextcloud/coding-standard",
- "description": "Nextcloud coding standards for the php cs fixer",
- "type": "library",
- "require": {
- "php": "^7.3|^8.0",
- "php-cs-fixer/shim": "^3.17"
- },
- "license": "MIT",
- "authors": [
- {
- "name": "Christoph Wurst",
- "email": "christoph@winzerhof-wurst.at"
- }
- ],
- "autoload": {
- "psr-4": {
- "Nextcloud\\CodingStandard\\": "src"
- }
- }
-}
diff --git a/vendor/nextcloud/coding-standard/src/Config.php b/vendor/nextcloud/coding-standard/src/Config.php
deleted file mode 100644
index c888eaff..00000000
--- a/vendor/nextcloud/coding-standard/src/Config.php
+++ /dev/null
@@ -1,67 +0,0 @@
-setIndent("\t");
- }
-
- public function getRules() : array {
- return [
- '@PSR1' => true,
- '@PSR2' => true,
- 'align_multiline_comment' => true,
- 'array_indentation' => true,
- 'array_syntax' => true,
- 'binary_operator_spaces' => [
- 'default' => 'single_space',
- ],
- 'blank_line_after_namespace' => true,
- 'blank_line_after_opening_tag' => true,
- 'curly_braces_position' => [
- 'classes_opening_brace' => 'same_line',
- 'functions_opening_brace' => 'same_line',
- ],
- 'elseif' => true,
- 'encoding' => true,
- 'full_opening_tag' => true,
- 'function_declaration' => [
- 'closure_function_spacing' => 'one',
- ],
- 'indentation_type' => true,
- 'line_ending' => true,
- 'list_syntax' => true,
- 'lowercase_keywords' => true,
- 'method_argument_space' => [
- 'on_multiline' => 'ignore',
- ],
- 'no_closing_tag' => true,
- 'no_leading_import_slash' => true,
- 'no_spaces_after_function_name' => true,
- 'no_spaces_inside_parenthesis' => true,
- 'no_trailing_whitespace' => true,
- 'no_trailing_whitespace_in_comment' => true,
- 'no_unused_imports' => true,
- 'nullable_type_declaration_for_default_null_value' => true,
- 'ordered_imports' => [
- 'imports_order' => ['class', 'function', 'const'],
- 'sort_algorithm' => 'alpha'
- ],
- 'single_blank_line_at_eof' => true,
- 'single_class_element_per_statement' => true,
- 'single_import_per_statement' => true,
- 'single_line_after_imports' => true,
- 'switch_case_space' => true,
- 'visibility_required' => [
- 'elements' => ['property', 'method', 'const']
- ],
- 'yoda_style' => ['equal' => false, 'identical' => false, 'less_and_greater' => false],
- ];
- }
-}
diff --git a/vendor/php-cs-fixer/shim/LICENSE b/vendor/php-cs-fixer/shim/LICENSE
deleted file mode 100644
index 871def02..00000000
--- a/vendor/php-cs-fixer/shim/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2012+ Fabien Potencier, Dariusz Rumiński
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is furnished
-to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/vendor/php-cs-fixer/shim/README.md b/vendor/php-cs-fixer/shim/README.md
deleted file mode 100644
index 76ff83f9..00000000
--- a/vendor/php-cs-fixer/shim/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
-
-PHP Coding Standards Fixer
-==========================
-
-This is a *shim* package of [PHP CS Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer/).
-For any related topic, please visit the [main repo](https://github.com/FriendsOfPHP/PHP-CS-Fixer/) page.
diff --git a/vendor/php-cs-fixer/shim/composer.json b/vendor/php-cs-fixer/shim/composer.json
deleted file mode 100644
index 7ece60b0..00000000
--- a/vendor/php-cs-fixer/shim/composer.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "name": "php-cs-fixer/shim",
- "description": "A tool to automatically fix PHP code style",
- "license": "MIT",
- "type": "application",
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Dariusz Rumiński",
- "email": "dariusz.ruminski@gmail.com"
- }
- ],
- "require": {
- "php": "^7.4 || ^8.0",
- "ext-json": "*",
- "ext-tokenizer": "*"
- },
- "replace": {
- "friendsofphp/php-cs-fixer": "self.version"
- },
- "suggest": {
- "ext-dom": "For handling output formats in XML",
- "ext-mbstring": "For handling non-UTF8 characters."
- },
- "bin": [
- "php-cs-fixer",
- "php-cs-fixer.phar"
- ],
- "config": {
- "sort-packages": true
- }
-}
diff --git a/vendor/php-cs-fixer/shim/logo.md b/vendor/php-cs-fixer/shim/logo.md
deleted file mode 100644
index c2877f71..00000000
--- a/vendor/php-cs-fixer/shim/logo.md
+++ /dev/null
@@ -1,3 +0,0 @@
-The logo is © 2010+ Sensio Labs.
-
-Original resolution can be found at https://github.com/PHP-CS-Fixer/logo .
diff --git a/vendor/php-cs-fixer/shim/logo.png b/vendor/php-cs-fixer/shim/logo.png
deleted file mode 100644
index 0ee90a82..00000000
Binary files a/vendor/php-cs-fixer/shim/logo.png and /dev/null differ
diff --git a/vendor/php-cs-fixer/shim/php-cs-fixer b/vendor/php-cs-fixer/shim/php-cs-fixer
deleted file mode 100755
index 8846422f..00000000
--- a/vendor/php-cs-fixer/shim/php-cs-fixer
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/env php
-
- * Dariusz Rumiński
- *
- * This source file is subject to the MIT license that is bundled
- * with this source code in the file LICENSE.
- */
-
-declare(strict_types=1);
-
-Phar::loadPhar(__DIR__ . '/php-cs-fixer.phar', 'php-cs-fixer.phar');
-
-require 'phar://php-cs-fixer.phar/php-cs-fixer';
diff --git a/vendor/php-cs-fixer/shim/php-cs-fixer.phar b/vendor/php-cs-fixer/shim/php-cs-fixer.phar
deleted file mode 100755
index 8182b0f7..00000000
Binary files a/vendor/php-cs-fixer/shim/php-cs-fixer.phar and /dev/null differ
diff --git a/vendor/php-cs-fixer/shim/php-cs-fixer.phar.asc b/vendor/php-cs-fixer/shim/php-cs-fixer.phar.asc
deleted file mode 100644
index aa833e9a..00000000
Binary files a/vendor/php-cs-fixer/shim/php-cs-fixer.phar.asc and /dev/null differ
diff --git a/vendor/symfony/console/Application.php b/vendor/symfony/console/Application.php
index bb534188..1a7e5038 100644
--- a/vendor/symfony/console/Application.php
+++ b/vendor/symfony/console/Application.php
@@ -165,9 +165,9 @@ public function run(?InputInterface $input = null, ?OutputInterface $output = nu
}
}
- $this->configureIO($input, $output);
-
try {
+ $this->configureIO($input, $output);
+
$exitCode = $this->doRun($input, $output);
} catch (\Exception $e) {
if (!$this->catchExceptions) {
@@ -858,7 +858,7 @@ protected function doRenderThrowable(\Throwable $e, OutputInterface $output): vo
}
if (str_contains($message, "@anonymous\0")) {
- $message = preg_replace_callback('/[a-zA-Z_\x7f-\xff][\\\\a-zA-Z0-9_\x7f-\xff]*+@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/', function ($m) {
+ $message = preg_replace_callback('/[a-zA-Z_\x7f-\xff][\\\\a-zA-Z0-9_\x7f-\xff]*+@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)?[0-9a-fA-F]++/', function ($m) {
return class_exists($m[0], false) ? (get_parent_class($m[0]) ?: key(class_implements($m[0])) ?: 'class').'@anonymous' : $m[0];
}, $message);
}
diff --git a/vendor/symfony/console/Completion/CompletionInput.php b/vendor/symfony/console/Completion/CompletionInput.php
index 368b9450..2f631bcd 100644
--- a/vendor/symfony/console/Completion/CompletionInput.php
+++ b/vendor/symfony/console/Completion/CompletionInput.php
@@ -53,7 +53,7 @@ public static function fromString(string $inputStr, int $currentIndex): self
* Create an input based on an COMP_WORDS token list.
*
* @param string[] $tokens the set of split tokens (e.g. COMP_WORDS or argv)
- * @param $currentIndex the index of the cursor (e.g. COMP_CWORD)
+ * @param int $currentIndex the index of the cursor (e.g. COMP_CWORD)
*/
public static function fromTokens(array $tokens, int $currentIndex): self
{
diff --git a/vendor/symfony/console/Helper/ProgressBar.php b/vendor/symfony/console/Helper/ProgressBar.php
index 1d7b8d45..6250732e 100644
--- a/vendor/symfony/console/Helper/ProgressBar.php
+++ b/vendor/symfony/console/Helper/ProgressBar.php
@@ -169,9 +169,12 @@ public function setMessage(string $message, string $name = 'message')
$this->messages[$name] = $message;
}
+ /**
+ * @return string|null
+ */
public function getMessage(string $name = 'message')
{
- return $this->messages[$name];
+ return $this->messages[$name] ?? null;
}
public function getStartTime(): int
diff --git a/vendor/symfony/console/Helper/QuestionHelper.php b/vendor/symfony/console/Helper/QuestionHelper.php
index e236be92..7b9de922 100644
--- a/vendor/symfony/console/Helper/QuestionHelper.php
+++ b/vendor/symfony/console/Helper/QuestionHelper.php
@@ -503,19 +503,7 @@ private function isInteractiveInput($inputStream): bool
return self::$stdinIsInteractive;
}
- if (\function_exists('stream_isatty')) {
- return self::$stdinIsInteractive = @stream_isatty(fopen('php://stdin', 'r'));
- }
-
- if (\function_exists('posix_isatty')) {
- return self::$stdinIsInteractive = @posix_isatty(fopen('php://stdin', 'r'));
- }
-
- if (!\function_exists('shell_exec')) {
- return self::$stdinIsInteractive = true;
- }
-
- return self::$stdinIsInteractive = (bool) shell_exec('stty 2> '.('\\' === \DIRECTORY_SEPARATOR ? 'NUL' : '/dev/null'));
+ return self::$stdinIsInteractive = @stream_isatty(fopen('php://stdin', 'r'));
}
/**
diff --git a/vendor/symfony/console/Helper/Table.php b/vendor/symfony/console/Helper/Table.php
index 408a76d6..698f9693 100644
--- a/vendor/symfony/console/Helper/Table.php
+++ b/vendor/symfony/console/Helper/Table.php
@@ -621,9 +621,10 @@ private function buildTableRows(array $rows): TableRows
if (!strstr($cell ?? '', "\n")) {
continue;
}
- $escaped = implode("\n", array_map([OutputFormatter::class, 'escapeTrailingBackslash'], explode("\n", $cell)));
+ $eol = str_contains($cell ?? '', "\r\n") ? "\r\n" : "\n";
+ $escaped = implode($eol, array_map([OutputFormatter::class, 'escapeTrailingBackslash'], explode($eol, $cell)));
$cell = $cell instanceof TableCell ? new TableCell($escaped, ['colspan' => $cell->getColspan()]) : $escaped;
- $lines = explode("\n", str_replace("\n", ">\n", $cell));
+ $lines = explode($eol, str_replace($eol, '>'.$eol, $cell));
foreach ($lines as $lineKey => $line) {
if ($colspan > 1) {
$line = new TableCell($line, ['colspan' => $colspan]);
@@ -685,8 +686,9 @@ private function fillNextRows(array $rows, int $line): array
$nbLines = $cell->getRowspan() - 1;
$lines = [$cell];
if (strstr($cell, "\n")) {
- $lines = explode("\n", str_replace("\n", "\n>", $cell));
- $nbLines = \count($lines) > $nbLines ? substr_count($cell, "\n") : $nbLines;
+ $eol = str_contains($cell, "\r\n") ? "\r\n" : "\n";
+ $lines = explode($eol, str_replace($eol, ''.$eol.'>', $cell));
+ $nbLines = \count($lines) > $nbLines ? substr_count($cell, $eol) : $nbLines;
$rows[$line][$column] = new TableCell($lines[0], ['colspan' => $cell->getColspan(), 'style' => $cell->getStyle()]);
unset($lines[0]);
diff --git a/vendor/symfony/console/Input/InputOption.php b/vendor/symfony/console/Input/InputOption.php
index 1d8dbca3..99807f59 100644
--- a/vendor/symfony/console/Input/InputOption.php
+++ b/vendor/symfony/console/Input/InputOption.php
@@ -69,7 +69,7 @@ public function __construct(string $name, $shortcut = null, ?int $mode = null, s
throw new InvalidArgumentException('An option name cannot be empty.');
}
- if ('' === $shortcut || [] === $shortcut) {
+ if ('' === $shortcut || [] === $shortcut || false === $shortcut) {
$shortcut = null;
}
diff --git a/vendor/symfony/console/Output/StreamOutput.php b/vendor/symfony/console/Output/StreamOutput.php
index 0ef15cf3..b5395526 100644
--- a/vendor/symfony/console/Output/StreamOutput.php
+++ b/vendor/symfony/console/Output/StreamOutput.php
@@ -91,54 +91,33 @@ protected function doWrite(string $message, bool $newline)
protected function hasColorSupport()
{
// Follow https://no-color.org/
- if (isset($_SERVER['NO_COLOR']) || false !== getenv('NO_COLOR')) {
+ if ('' !== (($_SERVER['NO_COLOR'] ?? getenv('NO_COLOR'))[0] ?? '')) {
return false;
}
- if (!$this->isTty()) {
+ // Detect msysgit/mingw and assume this is a tty because detection
+ // does not work correctly, see https://github.com/composer/composer/issues/9690
+ if (!@stream_isatty($this->stream) && !\in_array(strtoupper((string) getenv('MSYSTEM')), ['MINGW32', 'MINGW64'], true)) {
return false;
}
- if (\DIRECTORY_SEPARATOR === '\\'
- && \function_exists('sapi_windows_vt100_support')
- && @sapi_windows_vt100_support($this->stream)
- ) {
+ if ('\\' === \DIRECTORY_SEPARATOR && @sapi_windows_vt100_support($this->stream)) {
return true;
}
- return 'Hyper' === getenv('TERM_PROGRAM')
+ if ('Hyper' === getenv('TERM_PROGRAM')
+ || false !== getenv('COLORTERM')
|| false !== getenv('ANSICON')
|| 'ON' === getenv('ConEmuANSI')
- || str_starts_with((string) getenv('TERM'), 'xterm');
- }
-
- /**
- * Checks if the stream is a TTY, i.e; whether the output stream is connected to a terminal.
- *
- * Reference: Composer\Util\Platform::isTty
- * https://github.com/composer/composer
- */
- private function isTty(): bool
- {
- // Detect msysgit/mingw and assume this is a tty because detection
- // does not work correctly, see https://github.com/composer/composer/issues/9690
- if (\in_array(strtoupper((string) getenv('MSYSTEM')), ['MINGW32', 'MINGW64'], true)) {
+ ) {
return true;
}
- // Modern cross-platform function, includes the fstat fallback so if it is present we trust it
- if (\function_exists('stream_isatty')) {
- return stream_isatty($this->stream);
- }
-
- // Only trusting this if it is positive, otherwise prefer fstat fallback.
- if (\function_exists('posix_isatty') && posix_isatty($this->stream)) {
- return true;
+ if ('dumb' === $term = (string) getenv('TERM')) {
+ return false;
}
- $stat = @fstat($this->stream);
-
- // Check if formatted mode is S_IFCHR
- return $stat ? 0020000 === ($stat['mode'] & 0170000) : false;
+ // See https://github.com/chalk/supports-color/blob/d4f413efaf8da045c5ab440ed418ef02dbb28bf1/index.js#L157
+ return preg_match('/^((screen|xterm|vt100|vt220|putty|rxvt|ansi|cygwin|linux).*)|(.*-256(color)?(-bce)?)$/', $term);
}
}
diff --git a/vendor/symfony/console/Resources/completion.bash b/vendor/symfony/console/Resources/completion.bash
index 64b87ccf..bb44037b 100644
--- a/vendor/symfony/console/Resources/completion.bash
+++ b/vendor/symfony/console/Resources/completion.bash
@@ -7,7 +7,7 @@
_sf_{{ COMMAND_NAME }}() {
# Use newline as only separator to allow space in completion values
- IFS=$'\n'
+ local IFS=$'\n'
local sf_cmd="${COMP_WORDS[0]}"
# for an alias, get the real script behind it
diff --git a/vendor/symfony/console/Terminal.php b/vendor/symfony/console/Terminal.php
index b91e8afc..ee178327 100644
--- a/vendor/symfony/console/Terminal.php
+++ b/vendor/symfony/console/Terminal.php
@@ -158,8 +158,7 @@ private static function readFromProcess(string $command): ?string
$cp = \function_exists('sapi_windows_cp_set') ? sapi_windows_cp_get() : 0;
- $process = proc_open($command, $descriptorspec, $pipes, null, null, ['suppress_errors' => true]);
- if (!\is_resource($process)) {
+ if (!$process = @proc_open($command, $descriptorspec, $pipes, null, null, ['suppress_errors' => true])) {
return null;
}
diff --git a/vendor/symfony/deprecation-contracts/.gitignore b/vendor/symfony/deprecation-contracts/.gitignore
deleted file mode 100644
index c49a5d8d..00000000
--- a/vendor/symfony/deprecation-contracts/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-vendor/
-composer.lock
-phpunit.xml
diff --git a/vendor/symfony/deprecation-contracts/LICENSE b/vendor/symfony/deprecation-contracts/LICENSE
index 406242ff..0ed3a246 100644
--- a/vendor/symfony/deprecation-contracts/LICENSE
+++ b/vendor/symfony/deprecation-contracts/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2020-2022 Fabien Potencier
+Copyright (c) 2020-present Fabien Potencier
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/vendor/symfony/polyfill-ctype/composer.json b/vendor/symfony/polyfill-ctype/composer.json
index e5c978f1..131ca7ad 100644
--- a/vendor/symfony/polyfill-ctype/composer.json
+++ b/vendor/symfony/polyfill-ctype/composer.json
@@ -16,7 +16,7 @@
}
],
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"provide": {
"ext-ctype": "*"
@@ -30,9 +30,6 @@
},
"minimum-stability": "dev",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
diff --git a/vendor/symfony/polyfill-intl-grapheme/composer.json b/vendor/symfony/polyfill-intl-grapheme/composer.json
index c00d4e9e..0eea417d 100644
--- a/vendor/symfony/polyfill-intl-grapheme/composer.json
+++ b/vendor/symfony/polyfill-intl-grapheme/composer.json
@@ -16,7 +16,7 @@
}
],
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"autoload": {
"psr-4": { "Symfony\\Polyfill\\Intl\\Grapheme\\": "" },
@@ -27,9 +27,6 @@
},
"minimum-stability": "dev",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
diff --git a/vendor/symfony/polyfill-intl-normalizer/composer.json b/vendor/symfony/polyfill-intl-normalizer/composer.json
index 2c4de2c8..9bd04e88 100644
--- a/vendor/symfony/polyfill-intl-normalizer/composer.json
+++ b/vendor/symfony/polyfill-intl-normalizer/composer.json
@@ -16,7 +16,7 @@
}
],
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"autoload": {
"psr-4": { "Symfony\\Polyfill\\Intl\\Normalizer\\": "" },
@@ -28,9 +28,6 @@
},
"minimum-stability": "dev",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
diff --git a/vendor/symfony/polyfill-mbstring/Mbstring.php b/vendor/symfony/polyfill-mbstring/Mbstring.php
index 2e0b9694..3d45c9d9 100644
--- a/vendor/symfony/polyfill-mbstring/Mbstring.php
+++ b/vendor/symfony/polyfill-mbstring/Mbstring.php
@@ -48,6 +48,11 @@
* - mb_strstr - Finds first occurrence of a string within another
* - mb_strwidth - Return width of string
* - mb_substr_count - Count the number of substring occurrences
+ * - mb_ucfirst - Make a string's first character uppercase
+ * - mb_lcfirst - Make a string's first character lowercase
+ * - mb_trim - Strip whitespace (or other characters) from the beginning and end of a string
+ * - mb_ltrim - Strip whitespace (or other characters) from the beginning of a string
+ * - mb_rtrim - Strip whitespace (or other characters) from the end of a string
*
* Not implemented:
* - mb_convert_kana - Convert "kana" one from another ("zen-kaku", "han-kaku" and more)
@@ -80,6 +85,15 @@ final class Mbstring
public static function mb_convert_encoding($s, $toEncoding, $fromEncoding = null)
{
+ if (\is_array($s)) {
+ $r = [];
+ foreach ($s as $str) {
+ $r[] = self::mb_convert_encoding($str, $toEncoding, $fromEncoding);
+ }
+
+ return $r;
+ }
+
if (\is_array($fromEncoding) || (null !== $fromEncoding && false !== strpos($fromEncoding, ','))) {
$fromEncoding = self::mb_detect_encoding($s, $fromEncoding);
} else {
@@ -410,12 +424,6 @@ public static function mb_encoding_aliases($encoding)
public static function mb_check_encoding($var = null, $encoding = null)
{
- if (PHP_VERSION_ID < 70200 && \is_array($var)) {
- trigger_error('mb_check_encoding() expects parameter 1 to be string, array given', \E_USER_WARNING);
-
- return null;
- }
-
if (null === $encoding) {
if (null === $var) {
return false;
@@ -437,7 +445,6 @@ public static function mb_check_encoding($var = null, $encoding = null)
}
return true;
-
}
public static function mb_detect_encoding($str, $encodingList = null, $strict = false)
@@ -827,7 +834,7 @@ public static function mb_ord($s, $encoding = null)
return $code;
}
- public static function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = \STR_PAD_RIGHT, string $encoding = null): string
+ public static function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = \STR_PAD_RIGHT, ?string $encoding = null): string
{
if (!\in_array($pad_type, [\STR_PAD_RIGHT, \STR_PAD_LEFT, \STR_PAD_BOTH], true)) {
throw new \ValueError('mb_str_pad(): Argument #4 ($pad_type) must be STR_PAD_LEFT, STR_PAD_RIGHT, or STR_PAD_BOTH');
@@ -835,17 +842,8 @@ public static function mb_str_pad(string $string, int $length, string $pad_strin
if (null === $encoding) {
$encoding = self::mb_internal_encoding();
- }
-
- try {
- $validEncoding = @self::mb_check_encoding('', $encoding);
- } catch (\ValueError $e) {
- throw new \ValueError(sprintf('mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given', $encoding));
- }
-
- // BC for PHP 7.3 and lower
- if (!$validEncoding) {
- throw new \ValueError(sprintf('mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given', $encoding));
+ } else {
+ self::assertEncoding($encoding, 'mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given');
}
if (self::mb_strlen($pad_string, $encoding) <= 0) {
@@ -871,6 +869,34 @@ public static function mb_str_pad(string $string, int $length, string $pad_strin
}
}
+ public static function mb_ucfirst(string $string, ?string $encoding = null): string
+ {
+ if (null === $encoding) {
+ $encoding = self::mb_internal_encoding();
+ } else {
+ self::assertEncoding($encoding, 'mb_ucfirst(): Argument #2 ($encoding) must be a valid encoding, "%s" given');
+ }
+
+ $firstChar = mb_substr($string, 0, 1, $encoding);
+ $firstChar = mb_convert_case($firstChar, \MB_CASE_TITLE, $encoding);
+
+ return $firstChar.mb_substr($string, 1, null, $encoding);
+ }
+
+ public static function mb_lcfirst(string $string, ?string $encoding = null): string
+ {
+ if (null === $encoding) {
+ $encoding = self::mb_internal_encoding();
+ } else {
+ self::assertEncoding($encoding, 'mb_lcfirst(): Argument #2 ($encoding) must be a valid encoding, "%s" given');
+ }
+
+ $firstChar = mb_substr($string, 0, 1, $encoding);
+ $firstChar = mb_convert_case($firstChar, \MB_CASE_LOWER, $encoding);
+
+ return $firstChar.mb_substr($string, 1, null, $encoding);
+ }
+
private static function getSubpart($pos, $part, $haystack, $encoding)
{
if (false === $pos) {
@@ -944,4 +970,76 @@ private static function getEncoding($encoding)
return $encoding;
}
+
+ public static function mb_trim(string $string, ?string $characters = null, ?string $encoding = null): string
+ {
+ return self::mb_internal_trim('{^[%s]+|[%1$s]+$}Du', $string, $characters, $encoding, __FUNCTION__);
+ }
+
+ public static function mb_ltrim(string $string, ?string $characters = null, ?string $encoding = null): string
+ {
+ return self::mb_internal_trim('{^[%s]+}Du', $string, $characters, $encoding, __FUNCTION__);
+ }
+
+ public static function mb_rtrim(string $string, ?string $characters = null, ?string $encoding = null): string
+ {
+ return self::mb_internal_trim('{[%s]+$}D', $string, $characters, $encoding, __FUNCTION__);
+ }
+
+ private static function mb_internal_trim(string $regex, string $string, ?string $characters, ?string $encoding, string $function): string
+ {
+ if (null === $encoding) {
+ $encoding = self::mb_internal_encoding();
+ } else {
+ self::assertEncoding($encoding, $function.'(): Argument #3 ($encoding) must be a valid encoding, "%s" given');
+ }
+
+ if ('' === $characters) {
+ return null === $encoding ? $string : self::mb_convert_encoding($string, $encoding);
+ }
+
+ if ('UTF-8' === $encoding) {
+ $encoding = null;
+ if (!preg_match('//u', $string)) {
+ $string = @iconv('UTF-8', 'UTF-8//IGNORE', $string);
+ }
+ if (null !== $characters && !preg_match('//u', $characters)) {
+ $characters = @iconv('UTF-8', 'UTF-8//IGNORE', $characters);
+ }
+ } else {
+ $string = iconv($encoding, 'UTF-8//IGNORE', $string);
+
+ if (null !== $characters) {
+ $characters = iconv($encoding, 'UTF-8//IGNORE', $characters);
+ }
+ }
+
+ if (null === $characters) {
+ $characters = "\\0 \f\n\r\t\v\u{00A0}\u{1680}\u{2000}\u{2001}\u{2002}\u{2003}\u{2004}\u{2005}\u{2006}\u{2007}\u{2008}\u{2009}\u{200A}\u{2028}\u{2029}\u{202F}\u{205F}\u{3000}\u{0085}\u{180E}";
+ } else {
+ $characters = preg_quote($characters);
+ }
+
+ $string = preg_replace(sprintf($regex, $characters), '', $string);
+
+ if (null === $encoding) {
+ return $string;
+ }
+
+ return iconv('UTF-8', $encoding.'//IGNORE', $string);
+ }
+
+ private static function assertEncoding(string $encoding, string $errorFormat): void
+ {
+ try {
+ $validEncoding = @self::mb_check_encoding('', $encoding);
+ } catch (\ValueError $e) {
+ throw new \ValueError(sprintf($errorFormat, $encoding));
+ }
+
+ // BC for PHP 7.3 and lower
+ if (!$validEncoding) {
+ throw new \ValueError(sprintf($errorFormat, $encoding));
+ }
+ }
}
diff --git a/vendor/symfony/polyfill-mbstring/bootstrap.php b/vendor/symfony/polyfill-mbstring/bootstrap.php
index ecf1a035..ff51ae07 100644
--- a/vendor/symfony/polyfill-mbstring/bootstrap.php
+++ b/vendor/symfony/polyfill-mbstring/bootstrap.php
@@ -136,6 +136,27 @@ function mb_str_split($string, $length = 1, $encoding = null) { return p\Mbstrin
function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); }
}
+if (!function_exists('mb_ucfirst')) {
+ function mb_ucfirst(string $string, ?string $encoding = null): string { return p\Mbstring::mb_ucfirst($string, $encoding); }
+}
+
+if (!function_exists('mb_lcfirst')) {
+ function mb_lcfirst(string $string, ?string $encoding = null): string { return p\Mbstring::mb_lcfirst($string, $encoding); }
+}
+
+if (!function_exists('mb_trim')) {
+ function mb_trim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_trim($string, $characters, $encoding); }
+}
+
+if (!function_exists('mb_ltrim')) {
+ function mb_ltrim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_ltrim($string, $characters, $encoding); }
+}
+
+if (!function_exists('mb_rtrim')) {
+ function mb_rtrim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_rtrim($string, $characters, $encoding); }
+}
+
+
if (extension_loaded('mbstring')) {
return;
}
diff --git a/vendor/symfony/polyfill-mbstring/bootstrap80.php b/vendor/symfony/polyfill-mbstring/bootstrap80.php
index 2f9fb5b4..5be7d201 100644
--- a/vendor/symfony/polyfill-mbstring/bootstrap80.php
+++ b/vendor/symfony/polyfill-mbstring/bootstrap80.php
@@ -93,7 +93,7 @@ function mb_strrpos(?string $haystack, ?string $needle, ?int $offset = 0, ?strin
function mb_strstr(?string $haystack, ?string $needle, ?bool $before_needle = false, ?string $encoding = null): string|false { return p\Mbstring::mb_strstr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); }
}
if (!function_exists('mb_get_info')) {
- function mb_get_info(?string $type = 'all'): array|string|int|false { return p\Mbstring::mb_get_info((string) $type); }
+ function mb_get_info(?string $type = 'all'): array|string|int|false|null { return p\Mbstring::mb_get_info((string) $type); }
}
if (!function_exists('mb_http_output')) {
function mb_http_output(?string $encoding = null): string|bool { return p\Mbstring::mb_http_output($encoding); }
@@ -132,6 +132,26 @@ function mb_str_split(?string $string, ?int $length = 1, ?string $encoding = nul
function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); }
}
+if (!function_exists('mb_ucfirst')) {
+ function mb_ucfirst($string, ?string $encoding = null): string { return p\Mbstring::mb_ucfirst($string, $encoding); }
+}
+
+if (!function_exists('mb_lcfirst')) {
+ function mb_lcfirst($string, ?string $encoding = null): string { return p\Mbstring::mb_lcfirst($string, $encoding); }
+}
+
+if (!function_exists('mb_trim')) {
+ function mb_trim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_trim($string, $characters, $encoding); }
+}
+
+if (!function_exists('mb_ltrim')) {
+ function mb_ltrim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_ltrim($string, $characters, $encoding); }
+}
+
+if (!function_exists('mb_rtrim')) {
+ function mb_rtrim(string $string, ?string $characters = null, ?string $encoding = null): string { return p\Mbstring::mb_rtrim($string, $characters, $encoding); }
+}
+
if (extension_loaded('mbstring')) {
return;
}
diff --git a/vendor/symfony/polyfill-mbstring/composer.json b/vendor/symfony/polyfill-mbstring/composer.json
index 943e5029..4ed241a3 100644
--- a/vendor/symfony/polyfill-mbstring/composer.json
+++ b/vendor/symfony/polyfill-mbstring/composer.json
@@ -16,7 +16,7 @@
}
],
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"provide": {
"ext-mbstring": "*"
@@ -30,9 +30,6 @@
},
"minimum-stability": "dev",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
diff --git a/vendor/symfony/polyfill-php73/composer.json b/vendor/symfony/polyfill-php73/composer.json
index 48295ef9..09d98cb8 100644
--- a/vendor/symfony/polyfill-php73/composer.json
+++ b/vendor/symfony/polyfill-php73/composer.json
@@ -16,7 +16,7 @@
}
],
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"autoload": {
"psr-4": { "Symfony\\Polyfill\\Php73\\": "" },
@@ -25,9 +25,6 @@
},
"minimum-stability": "dev",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
diff --git a/vendor/symfony/polyfill-php80/composer.json b/vendor/symfony/polyfill-php80/composer.json
index f1801f40..a503b039 100644
--- a/vendor/symfony/polyfill-php80/composer.json
+++ b/vendor/symfony/polyfill-php80/composer.json
@@ -20,7 +20,7 @@
}
],
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"autoload": {
"psr-4": { "Symfony\\Polyfill\\Php80\\": "" },
@@ -29,9 +29,6 @@
},
"minimum-stability": "dev",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
diff --git a/vendor/symfony/service-contracts/.gitignore b/vendor/symfony/service-contracts/.gitignore
deleted file mode 100644
index c49a5d8d..00000000
--- a/vendor/symfony/service-contracts/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-vendor/
-composer.lock
-phpunit.xml
diff --git a/vendor/symfony/service-contracts/LICENSE b/vendor/symfony/service-contracts/LICENSE
index 74cdc2db..7536caea 100644
--- a/vendor/symfony/service-contracts/LICENSE
+++ b/vendor/symfony/service-contracts/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2018-2022 Fabien Potencier
+Copyright (c) 2018-present Fabien Potencier
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/vendor/symfony/service-contracts/ServiceSubscriberTrait.php b/vendor/symfony/service-contracts/ServiceSubscriberTrait.php
index 16e3eb2c..6c560a42 100644
--- a/vendor/symfony/service-contracts/ServiceSubscriberTrait.php
+++ b/vendor/symfony/service-contracts/ServiceSubscriberTrait.php
@@ -98,12 +98,13 @@ public static function getSubscribedServices(): array
*/
public function setContainer(ContainerInterface $container)
{
- $this->container = $container;
-
+ $ret = null;
if (method_exists(get_parent_class(self::class) ?: '', __FUNCTION__)) {
- return parent::setContainer($container);
+ $ret = parent::setContainer($container);
}
- return null;
+ $this->container = $container;
+
+ return $ret;
}
}
diff --git a/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php b/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php
index 2a1b565f..07d12b4a 100644
--- a/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php
+++ b/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php
@@ -11,85 +11,13 @@
namespace Symfony\Contracts\Service\Test;
-use PHPUnit\Framework\TestCase;
-use Psr\Container\ContainerInterface;
-use Symfony\Contracts\Service\ServiceLocatorTrait;
+class_alias(ServiceLocatorTestCase::class, ServiceLocatorTest::class);
-abstract class ServiceLocatorTest extends TestCase
-{
+if (false) {
/**
- * @return ContainerInterface
+ * @deprecated since PHPUnit 9.6
*/
- protected function getServiceLocator(array $factories)
+ class ServiceLocatorTest
{
- return new class($factories) implements ContainerInterface {
- use ServiceLocatorTrait;
- };
- }
-
- public function testHas()
- {
- $locator = $this->getServiceLocator([
- 'foo' => function () { return 'bar'; },
- 'bar' => function () { return 'baz'; },
- function () { return 'dummy'; },
- ]);
-
- $this->assertTrue($locator->has('foo'));
- $this->assertTrue($locator->has('bar'));
- $this->assertFalse($locator->has('dummy'));
- }
-
- public function testGet()
- {
- $locator = $this->getServiceLocator([
- 'foo' => function () { return 'bar'; },
- 'bar' => function () { return 'baz'; },
- ]);
-
- $this->assertSame('bar', $locator->get('foo'));
- $this->assertSame('baz', $locator->get('bar'));
- }
-
- public function testGetDoesNotMemoize()
- {
- $i = 0;
- $locator = $this->getServiceLocator([
- 'foo' => function () use (&$i) {
- ++$i;
-
- return 'bar';
- },
- ]);
-
- $this->assertSame('bar', $locator->get('foo'));
- $this->assertSame('bar', $locator->get('foo'));
- $this->assertSame(2, $i);
- }
-
- public function testThrowsOnUndefinedInternalService()
- {
- if (!$this->getExpectedException()) {
- $this->expectException(\Psr\Container\NotFoundExceptionInterface::class);
- $this->expectExceptionMessage('The service "foo" has a dependency on a non-existent service "bar". This locator only knows about the "foo" service.');
- }
- $locator = $this->getServiceLocator([
- 'foo' => function () use (&$locator) { return $locator->get('bar'); },
- ]);
-
- $locator->get('foo');
- }
-
- public function testThrowsOnCircularReference()
- {
- $this->expectException(\Psr\Container\ContainerExceptionInterface::class);
- $this->expectExceptionMessage('Circular reference detected for service "bar", path: "bar -> baz -> bar".');
- $locator = $this->getServiceLocator([
- 'foo' => function () use (&$locator) { return $locator->get('bar'); },
- 'bar' => function () use (&$locator) { return $locator->get('baz'); },
- 'baz' => function () use (&$locator) { return $locator->get('bar'); },
- ]);
-
- $locator->get('foo');
}
}
diff --git a/vendor/symfony/string/AbstractUnicodeString.php b/vendor/symfony/string/AbstractUnicodeString.php
index 52123f50..21aa22e1 100644
--- a/vendor/symfony/string/AbstractUnicodeString.php
+++ b/vendor/symfony/string/AbstractUnicodeString.php
@@ -162,7 +162,7 @@ public function ascii(array $rules = []): self
public function camel(): parent
{
$str = clone $this;
- $str->string = str_replace(' ', '', preg_replace_callback('/\b.(?![A-Z]{2,})/u', static function ($m) use (&$i) {
+ $str->string = str_replace(' ', '', preg_replace_callback('/\b.(?!\p{Lu})/u', static function ($m) use (&$i) {
return 1 === ++$i ? ('İ' === $m[0] ? 'i̇' : mb_strtolower($m[0], 'UTF-8')) : mb_convert_case($m[0], \MB_CASE_TITLE, 'UTF-8');
}, preg_replace('/[^\pL0-9]++/u', ' ', $this->string)));
@@ -195,7 +195,7 @@ public function folded(bool $compat = true): parent
if (!$compat || \PHP_VERSION_ID < 70300 || !\defined('Normalizer::NFKC_CF')) {
$str->string = normalizer_normalize($str->string, $compat ? \Normalizer::NFKC : \Normalizer::NFC);
- $str->string = mb_strtolower(str_replace(self::FOLD_FROM, self::FOLD_TO, $this->string), 'UTF-8');
+ $str->string = mb_strtolower(str_replace(self::FOLD_FROM, self::FOLD_TO, $str->string), 'UTF-8');
} else {
$str->string = normalizer_normalize($str->string, \Normalizer::NFKC_CF);
}
diff --git a/vendor/symfony/string/Inflector/EnglishInflector.php b/vendor/symfony/string/Inflector/EnglishInflector.php
index 30b18a38..ecd51d41 100644
--- a/vendor/symfony/string/Inflector/EnglishInflector.php
+++ b/vendor/symfony/string/Inflector/EnglishInflector.php
@@ -25,8 +25,32 @@ final class EnglishInflector implements InflectorInterface
// Fourth entry: Whether the suffix may succeed a consonant
// Fifth entry: singular suffix, normal
- // bacteria (bacterium), criteria (criterion), phenomena (phenomenon)
- ['a', 1, true, true, ['on', 'um']],
+ // bacteria (bacterium)
+ ['airetcab', 8, true, true, 'bacterium'],
+
+ // corpora (corpus)
+ ['aroproc', 7, true, true, 'corpus'],
+
+ // criteria (criterion)
+ ['airetirc', 8, true, true, 'criterion'],
+
+ // curricula (curriculum)
+ ['alucirruc', 9, true, true, 'curriculum'],
+
+ // genera (genus)
+ ['areneg', 6, true, true, 'genus'],
+
+ // media (medium)
+ ['aidem', 5, true, true, 'medium'],
+
+ // memoranda (memorandum)
+ ['adnaromem', 9, true, true, 'memorandum'],
+
+ // phenomena (phenomenon)
+ ['anemonehp', 9, true, true, 'phenomenon'],
+
+ // strata (stratum)
+ ['atarts', 6, true, true, 'stratum'],
// nebulae (nebula)
['ea', 2, true, true, 'a'],
@@ -97,6 +121,9 @@ final class EnglishInflector implements InflectorInterface
// statuses (status)
['sesutats', 8, true, true, 'status'],
+ // article (articles), ancle (ancles)
+ ['sel', 3, true, true, 'le'],
+
// analyses (analysis), ellipses (ellipsis), fungi (fungus),
// neuroses (neurosis), theses (thesis), emphases (emphasis),
// oases (oasis), crises (crisis), houses (house), bases (base),
@@ -141,7 +168,7 @@ final class EnglishInflector implements InflectorInterface
// shoes (shoe)
['se', 2, true, true, ['', 'e']],
- // status (status)
+ // status (status)
['sutats', 6, true, true, 'status'],
// tags (tag)
@@ -238,7 +265,10 @@ final class EnglishInflector implements InflectorInterface
// teeth (tooth)
['htoot', 5, true, true, 'teeth'],
- // bacteria (bacterium), criteria (criterion), phenomena (phenomenon)
+ // albums (album)
+ ['mubla', 5, true, true, 'albums'],
+
+ // bacteria (bacterium), curricula (curriculum), media (medium), memoranda (memorandum), phenomena (phenomenon), strata (stratum)
['mu', 2, true, true, 'a'],
// men (man), women (woman)
@@ -247,20 +277,11 @@ final class EnglishInflector implements InflectorInterface
// people (person)
['nosrep', 6, true, true, ['persons', 'people']],
- // bacteria (bacterium), criteria (criterion), phenomena (phenomenon)
- ['noi', 3, true, true, 'ions'],
-
- // coupon (coupons)
- ['nop', 3, true, true, 'pons'],
-
- // seasons (season), treasons (treason), poisons (poison), lessons (lesson)
- ['nos', 3, true, true, 'sons'],
+ // criteria (criterion)
+ ['noiretirc', 9, true, true, 'criteria'],
- // icons (icon)
- ['noc', 3, true, true, 'cons'],
-
- // bacteria (bacterium), criteria (criterion), phenomena (phenomenon)
- ['no', 2, true, true, 'a'],
+ // phenomena (phenomenon)
+ ['nonemonehp', 10, true, true, 'phenomena'],
// echoes (echo)
['ohce', 4, true, true, 'echoes'],
@@ -271,6 +292,9 @@ final class EnglishInflector implements InflectorInterface
// atlases (atlas)
['salta', 5, true, true, 'atlases'],
+ // aliases (alias)
+ ['saila', 5, true, true, 'aliases'],
+
// irises (iris)
['siri', 4, true, true, 'irises'],
@@ -291,6 +315,12 @@ final class EnglishInflector implements InflectorInterface
// circuses (circus)
['suc', 3, true, true, 'cuses'],
+ // hippocampi (hippocampus)
+ ['supmacoppih', 11, false, false, 'hippocampi'],
+
+ // campuses (campus)
+ ['sup', 3, true, true, 'puses'],
+
// status (status)
['sutats', 6, true, true, ['status', 'statuses']],
@@ -318,14 +348,14 @@ final class EnglishInflector implements InflectorInterface
// indices (index)
['xedni', 5, false, true, ['indicies', 'indexes']],
+ // fax (faxes, faxxes)
+ ['xaf', 3, true, true, ['faxes', 'faxxes']],
+
// boxes (box)
['xo', 2, false, true, 'oxes'],
- // indexes (index), matrixes (matrix)
- ['x', 1, true, false, ['cies', 'xes']],
-
- // appendices (appendix)
- ['xi', 2, false, true, 'ices'],
+ // indexes (index), matrixes (matrix), appendices (appendix)
+ ['x', 1, true, false, ['ces', 'xes']],
// babies (baby)
['y', 1, false, true, 'ies'],
@@ -390,11 +420,11 @@ final class EnglishInflector implements InflectorInterface
// aircraft
'tfarcria',
+
+ // hardware
+ 'erawdrah',
];
- /**
- * {@inheritdoc}
- */
public function singularize(string $plural): array
{
$pluralRev = strrev($plural);
@@ -426,7 +456,7 @@ public function singularize(string $plural): array
if ($j === $suffixLength) {
// Is there any character preceding the suffix in the plural string?
if ($j < $pluralLength) {
- $nextIsVowel = false !== strpos('aeiou', $lowerPluralRev[$j]);
+ $nextIsVowel = str_contains('aeiou', $lowerPluralRev[$j]);
if (!$map[2] && $nextIsVowel) {
// suffix may not succeed a vowel but next char is one
@@ -471,9 +501,6 @@ public function singularize(string $plural): array
return [$plural];
}
- /**
- * {@inheritdoc}
- */
public function pluralize(string $singular): array
{
$singularRev = strrev($singular);
@@ -506,7 +533,7 @@ public function pluralize(string $singular): array
if ($j === $suffixLength) {
// Is there any character preceding the suffix in the plural string?
if ($j < $singularLength) {
- $nextIsVowel = false !== strpos('aeiou', $lowerSingularRev[$j]);
+ $nextIsVowel = str_contains('aeiou', $lowerSingularRev[$j]);
if (!$map[2] && $nextIsVowel) {
// suffix may not succeed a vowel but next char is one
diff --git a/vendor/symfony/string/LazyString.php b/vendor/symfony/string/LazyString.php
index 9c7a9c58..5f7e7370 100644
--- a/vendor/symfony/string/LazyString.php
+++ b/vendor/symfony/string/LazyString.php
@@ -148,7 +148,7 @@ private static function getPrettyName(callable $callback): string
} elseif ($callback instanceof \Closure) {
$r = new \ReflectionFunction($callback);
- if (false !== strpos($r->name, '{closure}') || !$class = \PHP_VERSION_ID >= 80111 ? $r->getClosureCalledClass() : $r->getClosureScopeClass()) {
+ if (str_contains($r->name, '{closure') || !$class = \PHP_VERSION_ID >= 80111 ? $r->getClosureCalledClass() : $r->getClosureScopeClass()) {
return $r->name;
}
diff --git a/vendor/symfony/string/Resources/data/wcswidth_table_wide.php b/vendor/symfony/string/Resources/data/wcswidth_table_wide.php
index 8314c8fd..6a750942 100644
--- a/vendor/symfony/string/Resources/data/wcswidth_table_wide.php
+++ b/vendor/symfony/string/Resources/data/wcswidth_table_wide.php
@@ -3,8 +3,8 @@
/*
* This file has been auto-generated by the Symfony String Component for internal use.
*
- * Unicode version: 15.1.0
- * Date: 2023-09-13T11:47:12+00:00
+ * Unicode version: 16.0.0
+ * Date: 2024-09-11T08:21:22+00:00
*/
return [
@@ -44,6 +44,10 @@
9748,
9749,
],
+ [
+ 9776,
+ 9783,
+ ],
[
9800,
9811,
@@ -52,6 +56,10 @@
9855,
9855,
],
+ [
+ 9866,
+ 9871,
+ ],
[
9875,
9875,
@@ -394,7 +402,7 @@
],
[
12736,
- 12771,
+ 12773,
],
[
12783,
@@ -452,6 +460,10 @@
13312,
19903,
],
+ [
+ 19904,
+ 19967,
+ ],
[
19968,
40959,
@@ -836,6 +848,10 @@
101120,
101589,
],
+ [
+ 101631,
+ 101631,
+ ],
[
101632,
101640,
@@ -880,6 +896,14 @@
110960,
111355,
],
+ [
+ 119552,
+ 119638,
+ ],
+ [
+ 119648,
+ 119670,
+ ],
[
126980,
126980,
@@ -1054,23 +1078,19 @@
],
[
129664,
- 129672,
- ],
- [
- 129680,
- 129725,
+ 129673,
],
[
- 129727,
- 129733,
+ 129679,
+ 129734,
],
[
129742,
- 129755,
+ 129756,
],
[
- 129760,
- 129768,
+ 129759,
+ 129769,
],
[
129776,
diff --git a/vendor/symfony/string/Resources/data/wcswidth_table_zero.php b/vendor/symfony/string/Resources/data/wcswidth_table_zero.php
index e5b26a21..fdd7f3c7 100644
--- a/vendor/symfony/string/Resources/data/wcswidth_table_zero.php
+++ b/vendor/symfony/string/Resources/data/wcswidth_table_zero.php
@@ -3,8 +3,8 @@
/*
* This file has been auto-generated by the Symfony String Component for internal use.
*
- * Unicode version: 15.1.0
- * Date: 2023-09-13T11:47:13+00:00
+ * Unicode version: 16.0.0
+ * Date: 2024-09-11T08:21:22+00:00
*/
return [
@@ -109,7 +109,7 @@
2139,
],
[
- 2200,
+ 2199,
2207,
],
[
@@ -916,12 +916,16 @@
68900,
68903,
],
+ [
+ 68969,
+ 68973,
+ ],
[
69291,
69292,
],
[
- 69373,
+ 69372,
69375,
],
[
@@ -1044,6 +1048,26 @@
70512,
70516,
],
+ [
+ 70587,
+ 70592,
+ ],
+ [
+ 70606,
+ 70606,
+ ],
+ [
+ 70608,
+ 70608,
+ ],
+ [
+ 70610,
+ 70610,
+ ],
+ [
+ 70625,
+ 70626,
+ ],
[
70712,
70719,
@@ -1122,6 +1146,10 @@
],
[
71453,
+ 71453,
+ ],
+ [
+ 71455,
71455,
],
[
@@ -1276,6 +1304,10 @@
73538,
73538,
],
+ [
+ 73562,
+ 73562,
+ ],
[
78912,
78912,
@@ -1284,6 +1316,14 @@
78919,
78933,
],
+ [
+ 90398,
+ 90409,
+ ],
+ [
+ 90413,
+ 90415,
+ ],
[
92912,
92916,
@@ -1400,6 +1440,10 @@
124140,
124143,
],
+ [
+ 124398,
+ 124399,
+ ],
[
125136,
125142,