aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Appelman <robin@icewind.nl>2025-08-07 14:55:18 +0200
committerRobin Appelman <robin@icewind.nl>2025-08-07 14:55:18 +0200
commitd5b51b28c8ca1fdae6e896d4b396ff2e79ee6012 (patch)
treeee21c321a15cd992653f491d1aa107589d18b102
parent05e64418a77134e55824fc8c1a91125805428f3f (diff)
downloadnextcloud-server-backport/54125/stable31.tar.gz
nextcloud-server-backport/54125/stable31.zip
chore: update icewind/streams in files_externalbackport/54125/stable31
Signed-off-by: Robin Appelman <robin@icewind.nl>
-rw-r--r--apps/files_external/3rdparty/composer.json2
-rw-r--r--apps/files_external/3rdparty/composer.lock20
-rw-r--r--apps/files_external/3rdparty/composer/InstalledVersions.php27
-rw-r--r--apps/files_external/3rdparty/composer/installed.json22
-rw-r--r--apps/files_external/3rdparty/composer/installed.php10
-rw-r--r--apps/files_external/3rdparty/icewind/streams/src/CountWrapper.php11
6 files changed, 51 insertions, 41 deletions
diff --git a/apps/files_external/3rdparty/composer.json b/apps/files_external/3rdparty/composer.json
index 6af1429aa7f..3ae9569c3f2 100644
--- a/apps/files_external/3rdparty/composer.json
+++ b/apps/files_external/3rdparty/composer.json
@@ -9,6 +9,6 @@
},
"require": {
"icewind/smb": "3.7.0",
- "icewind/streams": "0.7.7"
+ "icewind/streams": "0.7.8"
}
}
diff --git a/apps/files_external/3rdparty/composer.lock b/apps/files_external/3rdparty/composer.lock
index b0cf919de9c..7e44f13bcca 100644
--- a/apps/files_external/3rdparty/composer.lock
+++ b/apps/files_external/3rdparty/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": "1b75bb2715ed2dae7d090ae40b9843a2",
+ "content-hash": "565bb9d1046efbd95b08a2b4df1a4efb",
"packages": [
{
"name": "icewind/smb",
@@ -55,17 +55,11 @@
},
{
"name": "icewind/streams",
- "version": "v0.7.7",
+ "version": "v0.7.8",
"source": {
"type": "git",
- "url": "https://github.com/icewind1991/Streams.git",
- "reference": "64200fd7cfcc7f550c3c695c48d8fd8bba97fecb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/icewind1991/Streams/zipball/64200fd7cfcc7f550c3c695c48d8fd8bba97fecb",
- "reference": "64200fd7cfcc7f550c3c695c48d8fd8bba97fecb",
- "shasum": ""
+ "url": "https://codeberg.org/icewind/streams",
+ "reference": "cb2bd3ed41b516efb97e06e8da35a12ef58ba48b"
},
"require": {
"php": ">=7.1"
@@ -92,11 +86,7 @@
}
],
"description": "A set of generic stream wrappers",
- "support": {
- "issues": "https://github.com/icewind1991/Streams/issues",
- "source": "https://github.com/icewind1991/Streams/tree/v0.7.7"
- },
- "time": "2023-03-16T14:52:25+00:00"
+ "time": "2024-12-05T14:36:22+00:00"
}
],
"packages-dev": [],
diff --git a/apps/files_external/3rdparty/composer/InstalledVersions.php b/apps/files_external/3rdparty/composer/InstalledVersions.php
index 51e734a774b..6d29bff66aa 100644
--- a/apps/files_external/3rdparty/composer/InstalledVersions.php
+++ b/apps/files_external/3rdparty/composer/InstalledVersions.php
@@ -33,6 +33,11 @@ class InstalledVersions
private static $installed;
/**
+ * @var bool
+ */
+ private static $installedIsLocalDir;
+
+ /**
* @var bool|null
*/
private static $canGetVendors;
@@ -309,6 +314,12 @@ class InstalledVersions
{
self::$installed = $data;
self::$installedByVendor = array();
+
+ // when using reload, we disable the duplicate protection to ensure that self::$installed data is
+ // always returned, but we cannot know whether it comes from the installed.php in __DIR__ or not,
+ // so we have to assume it does not, and that may result in duplicate data being returned when listing
+ // all installed packages for example
+ self::$installedIsLocalDir = false;
}
/**
@@ -322,19 +333,27 @@ class InstalledVersions
}
$installed = array();
+ $copiedLocalDir = false;
if (self::$canGetVendors) {
+ $selfDir = strtr(__DIR__, '\\', '/');
foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
+ $vendorDir = strtr($vendorDir, '\\', '/');
if (isset(self::$installedByVendor[$vendorDir])) {
$installed[] = self::$installedByVendor[$vendorDir];
} elseif (is_file($vendorDir.'/composer/installed.php')) {
/** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
$required = require $vendorDir.'/composer/installed.php';
- $installed[] = self::$installedByVendor[$vendorDir] = $required;
- if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
- self::$installed = $installed[count($installed) - 1];
+ self::$installedByVendor[$vendorDir] = $required;
+ $installed[] = $required;
+ if (self::$installed === null && $vendorDir.'/composer' === $selfDir) {
+ self::$installed = $required;
+ self::$installedIsLocalDir = true;
}
}
+ if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) {
+ $copiedLocalDir = true;
+ }
}
}
@@ -350,7 +369,7 @@ class InstalledVersions
}
}
- if (self::$installed !== array()) {
+ if (self::$installed !== array() && !$copiedLocalDir) {
$installed[] = self::$installed;
}
diff --git a/apps/files_external/3rdparty/composer/installed.json b/apps/files_external/3rdparty/composer/installed.json
index 275a586f4fb..9d24d06a777 100644
--- a/apps/files_external/3rdparty/composer/installed.json
+++ b/apps/files_external/3rdparty/composer/installed.json
@@ -52,18 +52,12 @@
},
{
"name": "icewind/streams",
- "version": "v0.7.7",
- "version_normalized": "0.7.7.0",
+ "version": "v0.7.8",
+ "version_normalized": "0.7.8.0",
"source": {
"type": "git",
- "url": "https://github.com/icewind1991/Streams.git",
- "reference": "64200fd7cfcc7f550c3c695c48d8fd8bba97fecb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/icewind1991/Streams/zipball/64200fd7cfcc7f550c3c695c48d8fd8bba97fecb",
- "reference": "64200fd7cfcc7f550c3c695c48d8fd8bba97fecb",
- "shasum": ""
+ "url": "https://codeberg.org/icewind/streams",
+ "reference": "cb2bd3ed41b516efb97e06e8da35a12ef58ba48b"
},
"require": {
"php": ">=7.1"
@@ -73,9 +67,9 @@
"phpstan/phpstan": "^0.12",
"phpunit/phpunit": "^9"
},
- "time": "2023-03-16T14:52:25+00:00",
+ "time": "2024-12-05T14:36:22+00:00",
"type": "library",
- "installation-source": "dist",
+ "installation-source": "source",
"autoload": {
"psr-4": {
"Icewind\\Streams\\": "src/"
@@ -92,10 +86,6 @@
}
],
"description": "A set of generic stream wrappers",
- "support": {
- "issues": "https://github.com/icewind1991/Streams/issues",
- "source": "https://github.com/icewind1991/Streams/tree/v0.7.7"
- },
"install-path": "../icewind/streams"
}
],
diff --git a/apps/files_external/3rdparty/composer/installed.php b/apps/files_external/3rdparty/composer/installed.php
index 12058ec9474..81b98dacaba 100644
--- a/apps/files_external/3rdparty/composer/installed.php
+++ b/apps/files_external/3rdparty/composer/installed.php
@@ -3,7 +3,7 @@
'name' => 'files_external/3rdparty',
'pretty_version' => 'dev-master',
'version' => 'dev-master',
- 'reference' => '101c7575ae7684a572e53740c63635cd12685995',
+ 'reference' => '05e64418a77134e55824fc8c1a91125805428f3f',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
@@ -13,7 +13,7 @@
'files_external/3rdparty' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
- 'reference' => '101c7575ae7684a572e53740c63635cd12685995',
+ 'reference' => '05e64418a77134e55824fc8c1a91125805428f3f',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
@@ -29,9 +29,9 @@
'dev_requirement' => false,
),
'icewind/streams' => array(
- 'pretty_version' => 'v0.7.7',
- 'version' => '0.7.7.0',
- 'reference' => '64200fd7cfcc7f550c3c695c48d8fd8bba97fecb',
+ 'pretty_version' => 'v0.7.8',
+ 'version' => '0.7.8.0',
+ 'reference' => 'cb2bd3ed41b516efb97e06e8da35a12ef58ba48b',
'type' => 'library',
'install_path' => __DIR__ . '/../icewind/streams',
'aliases' => array(),
diff --git a/apps/files_external/3rdparty/icewind/streams/src/CountWrapper.php b/apps/files_external/3rdparty/icewind/streams/src/CountWrapper.php
index d1427dd97af..eb2ba9a9296 100644
--- a/apps/files_external/3rdparty/icewind/streams/src/CountWrapper.php
+++ b/apps/files_external/3rdparty/icewind/streams/src/CountWrapper.php
@@ -60,6 +60,17 @@ class CountWrapper extends Wrapper {
return true;
}
+ public function stream_seek($offset, $whence = SEEK_SET) {
+ if ($whence === SEEK_SET) {
+ $this->readCount = $offset;
+ $this->writeCount = $offset;
+ } else if ($whence === SEEK_CUR) {
+ $this->readCount += $offset;
+ $this->writeCount += $offset;
+ }
+ return parent::stream_seek($offset, $whence);
+ }
+
public function dir_opendir($path, $options) {
return $this->open();
}