From 706ae7dc58f13b33e1c32703a9f46ab4c094b725 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Fri, 14 Mar 2025 15:36:58 +0400 Subject: [PATCH 1/9] deps de dev --- composer.json | 6 +++++- composer.lock | 20 ++++++++++++-------- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/composer.json b/composer.json index 1d0c13c..329e133 100644 --- a/composer.json +++ b/composer.json @@ -3,6 +3,10 @@ "type": "library", "description": "wrapper pour openspout/openspout", "repositories": [ + { + "type": "path", + "url": "../nulib" + }, { "type": "composer", "url": "https://repos.univ-reunion.fr/composer" @@ -18,7 +22,7 @@ "openspout/openspout": "v3.7.4" }, "require": { - "nulib/php": "^0.4.0p74", + "nulib/php": "^7.4-dev", "ext-dom": "*", "ext-filter": "*", "ext-libxml": "*", diff --git a/composer.lock b/composer.lock index b088ee9..8f0b4cf 100644 --- a/composer.lock +++ b/composer.lock @@ -4,15 +4,15 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "fa3bdcdf89054b7afba88c4ed3e09db4", + "content-hash": "1096948ae214037700effae248ef800b", "packages": [ { "name": "nulib/php", - "version": "0.4.0p74", - "source": { - "type": "git", - "url": "https://git.univ-reunion.fr/sda-php/nulib.git", - "reference": "559feda663fc99f8baee2ba32f164b19bdd01927" + "version": "dev-dev74", + "dist": { + "type": "path", + "url": "../nulib", + "reference": "927915093af5196099ae26645c07e90ddf1b2330" }, "require": { "ext-json": "*", @@ -50,7 +50,9 @@ } ], "description": "fonctions et classes essentielles", - "time": "2025-03-14T11:23:41+00:00" + "transport-options": { + "relative": true + } }, { "name": "symfony/deprecation-contracts", @@ -4568,7 +4570,9 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": [], + "stability-flags": { + "nulib/php": 20 + }, "prefer-stable": false, "prefer-lowest": false, "platform": { From 65c74a1db6dda718aa20970ede3dfa4b4d32c791 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Fri, 14 Mar 2025 15:40:48 +0400 Subject: [PATCH 2/9] Init changelog & version 0.4.0p82 --- CHANGES.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 3a24c49..1ed7c17 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,5 @@ +## Release 0.4.0p82 du 14/03/2025-15:40 + ## Release 0.4.0p74 du 14/03/2025-15:35 * `7e90311` tracer le hook From 8d7512e2bff3dc333bb58130ac5500017db700ca Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Sun, 23 Mar 2025 08:22:08 +0400 Subject: [PATCH 3/9] maj projet --- .pman.yml => .composer.pman.yml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .pman.yml => .composer.pman.yml (100%) diff --git a/.pman.yml b/.composer.pman.yml similarity index 100% rename from .pman.yml rename to .composer.pman.yml From 3cdcf4958dacc48ca4225d743bd4a36ec3a959de Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Tue, 29 Apr 2025 11:06:50 +0400 Subject: [PATCH 4/9] =?UTF-8?q?support=20de=20multiples=20d=C3=A9finitions?= =?UTF-8?q?=20pour=20border?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ext/spout/SpoutBuilder.php | 41 ++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/src/ext/spout/SpoutBuilder.php b/src/ext/spout/SpoutBuilder.php index 5abdade..ad1035c 100644 --- a/src/ext/spout/SpoutBuilder.php +++ b/src/ext/spout/SpoutBuilder.php @@ -86,20 +86,23 @@ class SpoutBuilder extends AbstractBuilder { if (($wrap = $cell["wrap"] ?? null) !== null) $style->setShouldWrapText($wrap); if (($format = $cell["format"] ?? null) !== null) $style->setFormat($format); if (($border = $cell["border"] ?? null) !== null) { - if (is_string($border)) { - $parts = explode(" ", $border); - $border = []; + if (is_array($border)) $borderDefs = $border; + else $borderDefs = preg_split('/\s*,\s*/', trim(strval($border))); + $border = null; + foreach ($borderDefs as $borderDef) { + $parts = preg_split('/\s+/', $borderDef); + $borderDef = []; $styleAll = null; $widthAll = null; $colorAll = null; foreach ($parts as $part) { if ($part === "all") { - $border["left"] = []; - $border["top"] = []; - $border["right"] = []; - $border["bottom"] = []; + $borderDef["left"] = []; + $borderDef["top"] = []; + $borderDef["right"] = []; + $borderDef["bottom"] = []; } elseif (preg_match('/^(left|top|right|bottom)$/', $part)) { - $border[$part] = []; + $borderDef[$part] = []; } elseif (preg_match('/^(none|solid|dashed|dotted|double)$/', $part)) { $styleAll = $part; } elseif (preg_match('/^(thin|medium|thick)$/', $part)) { @@ -108,22 +111,22 @@ class SpoutBuilder extends AbstractBuilder { $colorAll = $part; } } - foreach ($border as &$part) { + foreach ($borderDef as &$part) { if ($styleAll !== null) $part["style"] = $styleAll; if ($widthAll !== null) $part["width"] = $widthAll; if ($colorAll !== null) $part["color"] = $colorAll; }; unset($part); - } - $top = $border["top"] ?? null; - $right = $border["right"] ?? null; - $bottom = $border["bottom"] ?? null; - $left = $border["left"] ?? null; - $border = null; - self::add_border_part($border, "top", $top); - self::add_border_part($border, "right", $right); - self::add_border_part($border, "bottom", $bottom); - self::add_border_part($border, "left", $left); + $top = $borderDef["top"] ?? null; + $right = $borderDef["right"] ?? null; + $bottom = $borderDef["bottom"] ?? null; + $left = $borderDef["left"] ?? null; + + self::add_border_part($border, "top", $top); + self::add_border_part($border, "right", $right); + self::add_border_part($border, "bottom", $bottom); + self::add_border_part($border, "left", $left); + } if ($border !== null) $style->setBorder($border); } return $style; From 6c1c85bcd26d8f4814360f94e9869d285394bb09 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Tue, 29 Apr 2025 11:07:02 +0400 Subject: [PATCH 5/9] remplacer nur_func par func --- src/ext/spout/SpoutBuilder.php | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/src/ext/spout/SpoutBuilder.php b/src/ext/spout/SpoutBuilder.php index ad1035c..83ba5e1 100644 --- a/src/ext/spout/SpoutBuilder.php +++ b/src/ext/spout/SpoutBuilder.php @@ -6,7 +6,6 @@ use nulib\file\tab\AbstractBuilder; use nulib\file\tab\TAbstractBuilder; use nulib\os\path; use nulib\php\func; -use nulib\php\nur_func; use nulib\php\time\Date; use nulib\php\time\DateTime; use nulib\ref\ext\spout\ref_builder; @@ -324,13 +323,8 @@ class SpoutBuilder extends AbstractBuilder { } if (array_key_exists("cook_func", $sheetParams)) { $cookFunc = $sheetParams["cook_func"] ?? null; - $cookCtx = $cookArgs = null; - if ($cookFunc !== null) { - nur_func::ensure_func($cookFunc, $this, $cookArgs); - $cookCtx = nur_func::_prepare($cookFunc); - } - $this->cookCtx = $cookCtx; - $this->cookArgs = $cookArgs; + if ($cookFunc !== null) $cookFunc = func::with($cookFunc)->bind($this); + $this->cookFunc = $cookFunc; } } return $this; From 8c570b425ddbff1fc369b2c8aabeb9466088adcc Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Tue, 29 Apr 2025 12:35:18 +0400 Subject: [PATCH 6/9] modifs.mineures sans commentaires --- .idea/nulib-spout.iml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.idea/nulib-spout.iml b/.idea/nulib-spout.iml index 461be9e..8f2160d 100644 --- a/.idea/nulib-spout.iml +++ b/.idea/nulib-spout.iml @@ -4,7 +4,7 @@ - + From a471dbbc22c205b9da038f07dada89d2a03d8a08 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Wed, 30 Apr 2025 04:39:27 +0400 Subject: [PATCH 7/9] maj projet --- .composer.pman.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.composer.pman.yml b/.composer.pman.yml index 0786fbb..6c9491f 100644 --- a/.composer.pman.yml +++ b/.composer.pman.yml @@ -9,4 +9,4 @@ composer: dist: link: false require: - nulib/php: ^0.4.0p74 + nulib/php: ^0.5.0p74 From 480d2d91c595bc3305646b68f1a39a2a9fea9a62 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Wed, 30 Apr 2025 04:39:52 +0400 Subject: [PATCH 8/9] Init changelog & version 0.5.0p74 --- CHANGES.md | 5 +++++ VERSION.txt | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index 1ed7c17..56b0369 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,8 @@ +## Release 0.5.0p74 du 30/04/2025-04:39 + +* `6c1c85b` remplacer nur_func par func +* `3cdcf49` support de multiples définitions pour border + ## Release 0.4.0p82 du 14/03/2025-15:40 ## Release 0.4.0p74 du 14/03/2025-15:35 diff --git a/VERSION.txt b/VERSION.txt index 1d0ba9e..8f0916f 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -0.4.0 +0.5.0 From 24ecf5d19952c27ef070f33077227dc588123624 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Wed, 30 Apr 2025 04:40:11 +0400 Subject: [PATCH 9/9] deps de dist --- composer.json | 6 +----- composer.lock | 57 +++++++++++++++++++++++++-------------------------- 2 files changed, 29 insertions(+), 34 deletions(-) diff --git a/composer.json b/composer.json index 329e133..2c8395b 100644 --- a/composer.json +++ b/composer.json @@ -3,10 +3,6 @@ "type": "library", "description": "wrapper pour openspout/openspout", "repositories": [ - { - "type": "path", - "url": "../nulib" - }, { "type": "composer", "url": "https://repos.univ-reunion.fr/composer" @@ -22,7 +18,7 @@ "openspout/openspout": "v3.7.4" }, "require": { - "nulib/php": "^7.4-dev", + "nulib/php": "^0.5.0p74", "ext-dom": "*", "ext-filter": "*", "ext-libxml": "*", diff --git a/composer.lock b/composer.lock index 8f0b4cf..2b6478e 100644 --- a/composer.lock +++ b/composer.lock @@ -4,15 +4,15 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "1096948ae214037700effae248ef800b", + "content-hash": "fe6b4daee2e700fcdc3dc40c9ffe935d", "packages": [ { "name": "nulib/php", - "version": "dev-dev74", - "dist": { - "type": "path", - "url": "../nulib", - "reference": "927915093af5196099ae26645c07e90ddf1b2330" + "version": "0.5.0p74", + "source": { + "type": "git", + "url": "https://git.univ-reunion.fr/sda-php/nulib.git", + "reference": "4037bf20424eb48708e5fdf9fc8e10f2ef71d134" }, "require": { "ext-json": "*", @@ -22,6 +22,8 @@ "require-dev": { "ext-curl": "*", "ext-pcntl": "*", + "ext-pdo": "*", + "ext-pgsql": "*", "ext-posix": "*", "ext-sqlite3": "*", "nulib/tests": "^7.4" @@ -50,9 +52,7 @@ } ], "description": "fonctions et classes essentielles", - "transport-options": { - "relative": true - } + "time": "2025-04-30T00:32:10+00:00" }, { "name": "symfony/deprecation-contracts", @@ -747,16 +747,16 @@ }, { "name": "friendsofphp/php-cs-fixer", - "version": "v3.72.0", + "version": "v3.75.0", "source": { "type": "git", "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", - "reference": "900389362c43d116fee1ffc51f7878145fa61b57" + "reference": "399a128ff2fdaf4281e4e79b755693286cdf325c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/900389362c43d116fee1ffc51f7878145fa61b57", - "reference": "900389362c43d116fee1ffc51f7878145fa61b57", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/399a128ff2fdaf4281e4e79b755693286cdf325c", + "reference": "399a128ff2fdaf4281e4e79b755693286cdf325c", "shasum": "" }, "require": { @@ -764,6 +764,7 @@ "composer/semver": "^3.4", "composer/xdebug-handler": "^3.0.3", "ext-filter": "*", + "ext-hash": "*", "ext-json": "*", "ext-tokenizer": "*", "fidry/cpu-core-counter": "^1.2", @@ -838,7 +839,7 @@ ], "support": { "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", - "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.72.0" + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.75.0" }, "funding": [ { @@ -846,20 +847,20 @@ "type": "github" } ], - "time": "2025-03-13T11:25:37+00:00" + "time": "2025-03-31T18:40:42+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.13.0", + "version": "1.13.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "024473a478be9df5fdaca2c793f2232fe788e414" + "reference": "1720ddd719e16cf0db4eb1c6eca108031636d46c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/024473a478be9df5fdaca2c793f2232fe788e414", - "reference": "024473a478be9df5fdaca2c793f2232fe788e414", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/1720ddd719e16cf0db4eb1c6eca108031636d46c", + "reference": "1720ddd719e16cf0db4eb1c6eca108031636d46c", "shasum": "" }, "require": { @@ -898,7 +899,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.13.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.13.1" }, "funding": [ { @@ -906,7 +907,7 @@ "type": "tidelift" } ], - "time": "2025-02-12T12:17:51+00:00" + "time": "2025-04-29T12:36:36+00:00" }, { "name": "nikic/php-parser", @@ -1124,16 +1125,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.12.21", + "version": "1.12.25", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "14276fdef70575106a3392a4ed553c06a984df28" + "reference": "e310849a19e02b8bfcbb63147f495d8f872dd96f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/14276fdef70575106a3392a4ed553c06a984df28", - "reference": "14276fdef70575106a3392a4ed553c06a984df28", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e310849a19e02b8bfcbb63147f495d8f872dd96f", + "reference": "e310849a19e02b8bfcbb63147f495d8f872dd96f", "shasum": "" }, "require": { @@ -1178,7 +1179,7 @@ "type": "github" } ], - "time": "2025-03-09T09:24:50+00:00" + "time": "2025-04-27T12:20:45+00:00" }, { "name": "phpstan/phpstan-phpunit", @@ -4570,9 +4571,7 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": { - "nulib/php": 20 - }, + "stability-flags": [], "prefer-stable": false, "prefer-lowest": false, "platform": {