aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorAndreas Gohr <andi@splitbrain.org>2025-03-15 10:13:05 +0100
committerAndreas Gohr <andi@splitbrain.org>2025-03-15 10:13:05 +0100
commit83bbbbbe80e83566fddb651affb54e5ca8aac179 (patch)
tree34b6b14823d9126f7ab2254c1714483db667e228
parent91c051b578b6f689d63885c95ea2d73e0e46f39a (diff)
downloaddokuwiki-83bbbbbe80e83566fddb651affb54e5ca8aac179.tar.gz
dokuwiki-83bbbbbe80e83566fddb651affb54e5ca8aac179.zip
updated php-cli #4384
-rw-r--r--composer.lock12
-rw-r--r--vendor/composer/InstalledVersions.php20
-rw-r--r--vendor/composer/installed.json14
-rw-r--r--vendor/composer/installed.php10
-rw-r--r--vendor/splitbrain/php-cli/src/Colors.php3
-rw-r--r--vendor/splitbrain/php-cli/src/TableFormatter.php19
6 files changed, 55 insertions, 23 deletions
diff --git a/composer.lock b/composer.lock
index fd97a6373..da1d53a9c 100644
--- a/composer.lock
+++ b/composer.lock
@@ -686,16 +686,16 @@
},
{
"name": "splitbrain/php-cli",
- "version": "1.3.3",
+ "version": "1.3.4",
"source": {
"type": "git",
"url": "https://github.com/splitbrain/php-cli.git",
- "reference": "8189c68cbde3fd8c3e0fc26295b776b143b6e481"
+ "reference": "4e669f38f660b0e9f76ed14dda7f12bff390f94f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/splitbrain/php-cli/zipball/8189c68cbde3fd8c3e0fc26295b776b143b6e481",
- "reference": "8189c68cbde3fd8c3e0fc26295b776b143b6e481",
+ "url": "https://api.github.com/repos/splitbrain/php-cli/zipball/4e669f38f660b0e9f76ed14dda7f12bff390f94f",
+ "reference": "4e669f38f660b0e9f76ed14dda7f12bff390f94f",
"shasum": ""
},
"require": {
@@ -735,9 +735,9 @@
],
"support": {
"issues": "https://github.com/splitbrain/php-cli/issues",
- "source": "https://github.com/splitbrain/php-cli/tree/1.3.3"
+ "source": "https://github.com/splitbrain/php-cli/tree/1.3.4"
},
- "time": "2024-12-18T08:16:26+00:00"
+ "time": "2025-03-15T09:02:01+00:00"
},
{
"name": "splitbrain/php-jsstrip",
diff --git a/vendor/composer/InstalledVersions.php b/vendor/composer/InstalledVersions.php
index 07b32ed6e..6d29bff66 100644
--- a/vendor/composer/InstalledVersions.php
+++ b/vendor/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;
}
/**
@@ -325,7 +336,9 @@ class InstalledVersions
$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')) {
@@ -333,11 +346,14 @@ class InstalledVersions
$required = require $vendorDir.'/composer/installed.php';
self::$installedByVendor[$vendorDir] = $required;
$installed[] = $required;
- if (strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
+ if (self::$installed === null && $vendorDir.'/composer' === $selfDir) {
self::$installed = $required;
- $copiedLocalDir = true;
+ self::$installedIsLocalDir = true;
}
}
+ if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) {
+ $copiedLocalDir = true;
+ }
}
}
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index adaa41636..f31fd3661 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -709,17 +709,17 @@
},
{
"name": "splitbrain/php-cli",
- "version": "1.3.3",
- "version_normalized": "1.3.3.0",
+ "version": "1.3.4",
+ "version_normalized": "1.3.4.0",
"source": {
"type": "git",
"url": "https://github.com/splitbrain/php-cli.git",
- "reference": "8189c68cbde3fd8c3e0fc26295b776b143b6e481"
+ "reference": "4e669f38f660b0e9f76ed14dda7f12bff390f94f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/splitbrain/php-cli/zipball/8189c68cbde3fd8c3e0fc26295b776b143b6e481",
- "reference": "8189c68cbde3fd8c3e0fc26295b776b143b6e481",
+ "url": "https://api.github.com/repos/splitbrain/php-cli/zipball/4e669f38f660b0e9f76ed14dda7f12bff390f94f",
+ "reference": "4e669f38f660b0e9f76ed14dda7f12bff390f94f",
"shasum": ""
},
"require": {
@@ -731,7 +731,7 @@
"suggest": {
"psr/log": "Allows you to make the CLI available as PSR-3 logger"
},
- "time": "2024-12-18T08:16:26+00:00",
+ "time": "2025-03-15T09:02:01+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
@@ -761,7 +761,7 @@
],
"support": {
"issues": "https://github.com/splitbrain/php-cli/issues",
- "source": "https://github.com/splitbrain/php-cli/tree/1.3.3"
+ "source": "https://github.com/splitbrain/php-cli/tree/1.3.4"
},
"install-path": "../splitbrain/php-cli"
},
diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php
index adae283ba..057d4856e 100644
--- a/vendor/composer/installed.php
+++ b/vendor/composer/installed.php
@@ -3,7 +3,7 @@
'name' => 'dokuwiki/dokuwiki',
'pretty_version' => 'dev-master',
'version' => 'dev-master',
- 'reference' => 'c408a2af01195b7a0821b224bb0e83b4c623ae0f',
+ 'reference' => '91c051b578b6f689d63885c95ea2d73e0e46f39a',
'type' => 'project',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
@@ -22,7 +22,7 @@
'dokuwiki/dokuwiki' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
- 'reference' => 'c408a2af01195b7a0821b224bb0e83b4c623ae0f',
+ 'reference' => '91c051b578b6f689d63885c95ea2d73e0e46f39a',
'type' => 'project',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
@@ -122,9 +122,9 @@
'dev_requirement' => false,
),
'splitbrain/php-cli' => array(
- 'pretty_version' => '1.3.3',
- 'version' => '1.3.3.0',
- 'reference' => '8189c68cbde3fd8c3e0fc26295b776b143b6e481',
+ 'pretty_version' => '1.3.4',
+ 'version' => '1.3.4.0',
+ 'reference' => '4e669f38f660b0e9f76ed14dda7f12bff390f94f',
'type' => 'library',
'install_path' => __DIR__ . '/../splitbrain/php-cli',
'aliases' => array(),
diff --git a/vendor/splitbrain/php-cli/src/Colors.php b/vendor/splitbrain/php-cli/src/Colors.php
index d57de1581..dd1fd0462 100644
--- a/vendor/splitbrain/php-cli/src/Colors.php
+++ b/vendor/splitbrain/php-cli/src/Colors.php
@@ -31,6 +31,9 @@ class Colors
const C_LIGHTGRAY = 'lightgray';
const C_WHITE = 'white';
+ // Regex pattern to match color codes
+ const C_CODE_REGEX = "/(\33\[[0-9;]+m)/";
+
/** @var array known color names */
protected $colors = array(
self::C_RESET => "\33[0m",
diff --git a/vendor/splitbrain/php-cli/src/TableFormatter.php b/vendor/splitbrain/php-cli/src/TableFormatter.php
index 23bb89472..20d71c62a 100644
--- a/vendor/splitbrain/php-cli/src/TableFormatter.php
+++ b/vendor/splitbrain/php-cli/src/TableFormatter.php
@@ -293,6 +293,7 @@ class TableFormatter
protected function wordwrap($str, $width = 75, $break = "\n", $cut = false)
{
$lines = explode($break, $str);
+ $color_reset = $this->colors->getColorCode(Colors::C_RESET);
foreach ($lines as &$line) {
$line = rtrim($line);
if ($this->strlen($line) <= $width) {
@@ -301,18 +302,30 @@ class TableFormatter
$words = explode(' ', $line);
$line = '';
$actual = '';
+ $color = '';
foreach ($words as $word) {
+ if (preg_match_all(Colors::C_CODE_REGEX, $word, $color_codes) ) {
+ # Word contains color codes
+ foreach ($color_codes[0] as $code) {
+ if ($code == $color_reset) {
+ $color = '';
+ } else {
+ # Remember color so we can reapply it after a line break
+ $color = $code;
+ }
+ }
+ }
if ($this->strlen($actual . $word) <= $width) {
$actual .= $word . ' ';
} else {
if ($actual != '') {
$line .= rtrim($actual) . $break;
}
- $actual = $word;
+ $actual = $color . $word;
if ($cut) {
while ($this->strlen($actual) > $width) {
$line .= $this->substr($actual, 0, $width) . $break;
- $actual = $this->substr($actual, $width);
+ $actual = $color . $this->substr($actual, $width);
}
}
$actual .= ' ';
@@ -322,4 +335,4 @@ class TableFormatter
}
return implode($break, $lines);
}
-} \ No newline at end of file
+}