[TikiWiki-commits] [Git][tikiwiki/tiki][master] [DOC] Added stability-ignore in composer.json for packages with unstable...

Benoit Grégoire (@benoitg) via TikiWiki-cvs <[email protected]>
Newsgroups gmane.comp.cms.tiki.cvs
Message-ID <68bb3899f2d64_2cdd42864774@gitlab-sidekiq-low-urgency-cpu-bound-v2-78859c6f75-bk9q8.mail>

Benoit Grégoire pushed to branch master at Tiki Wiki CMS Groupware / Tiki


Commits:
54d18adc by Joseph Lwanzo Kausi at 2025-09-05T19:14:53+00:00
[DOC] Added stability-ignore in composer.json for packages with unstable...
---
* restore composer

* [REF] Added stability-ignore in composer.json for packages with unstable versions, detailing reasons and mitigations.

See merge request tikiwiki/tiki!8422

- - - - -


2 changed files:

- vendor_bundled/composer.json
- vendor_bundled/composer.lock


Changes:

=====================================
vendor_bundled/composer.json
=====================================
@@ -61,6 +61,11 @@
         "    We use version ~8.0 instead of ~9.0 because new version of this uses ",
         "    \"lcobucci/jwt\": >= 5.4 which requires php > 8.2.0 our php version is 8.1 .",
         "",
+        "  monolog/monolog:",
+        "    We use version ~2.0 instead of ~3.0 because Monolog 3 requires psr/log ~2.0 or ~3.0,",
+        "    while montefuscolo/xmpp still depends on psr/log version 1, causing a conflict.",
+        "    Monolog 2 is compatible with psr/log version 1, so it works without issues for now.",
+        "",
         "  paragonie/sodium_compat: ",
         "    This is https://github.com/paragonie/sodium_compat",
         "    A pure php polyfill for ",
@@ -112,12 +117,6 @@
         "    Currently no actively maintained PHP alternative.",
         "    Replacing it would require a custom solution or migration to token-based auth",
         "",
-        "  garethp/php-ews: ",
-        "    Active package but using dev-master despite having a stable v0.11.0 release.",
-        "    Required for Microsoft Exchange Web Services (EWS) integration via SOAP.",
-        "    No alternative package available for Exchange server interaction.",
-        "    Recommendation: Consider migrating to stable v0.11.0 unless dev-master features are needed.",
-        "",
         "  laminas/laminas-loader: ",
         "    ABANDONNED package.",
         "    Required transitively by laminas/laminas-http but will be solved in 3.0 https://github.com/laminas/laminas-http/pull/110",
@@ -312,7 +311,83 @@
         "umakantp/smartylint": "0.1.4-p1"
     },
     "extra": {
-        "patches-file": "../installer/composer-patches/composer-patches.json"
+        "patches-file": "../installer/composer-patches/composer-patches.json",
+        "stability-ignore": {
+            "_comment": [
+                "Packages with non-standard version constraints that require explanation.",
+                "This includes both unstable versions (dev-master, etc.) and stable versions that aren't the latest available.",
+                "",
+                "TOOL USAGE:",
+                "This list is used by the Composer Stability Checker script (doc/devtools/check_composer_stability.php).",
+                "The script analyzes package stability across Tiki versions and flags non-standard constraints.",
+                "When packages are listed here, they are marked as [MITIGATED] in the script output.",
+                "",
+                "BRANCH PRESENCE:",
+                "The stability checker script may only be present in newer versions (master/29.x+) because:",
+                "1. The script is part of the release process and development tooling",
+                "2. Since the script compares across all available Tiki versions, being only on master can be sufficient",
+                "3. The ignore list itself provides documentation for dependency decisions across all versions",
+                "4. Older branches don't need the script since they're analyzed from the master version",
+                "",
+                "SPLIT DOCUMENTATION:",
+                "Package documentation is now split between two locations in this composer.json file:",
+                "1. This stability-ignore list (under 'extra'): Documents why specific version constraints are acceptable",
+                "2. The main _comment section above: Explains package purpose, usage, and general dependency notes",
+                "This separation allows for:",
+                "  - Clear distinction between 'what' (package docs in _comment) and 'why' (stability justification here)",
+                "  - Focused stability analysis without cluttering general documentation",
+                "  - Easier maintenance of stability justifications vs. feature documentation",
+                "  - Better organization: stability concerns are isolated from general package information",
+                "",
+                "NOTE:",
+                "This stability-ignore list will be included in all supported Tiki versions because:",
+                "1. It provides valuable context for dependency decisions across all supported versions",
+                "2. Helps maintain consistency in dependency management practices",
+                "3. Enables the stability checker tool to work properly when analyzing from master",
+                "4. Documents decisions that may affect future dependency updates",
+                "5. Ensures all versions have the same understanding of acceptable version constraints",
+                "",
+                "Each entry should include:",
+                "  - reason: Why this specific version constraint is necessary/acceptable",
+                "  - mitigation: How risk is reduced or managed",
+                "  - reviewed: Date when decision was reviewed",
+                "  - reviewer: Name of person who reviewed this decision",
+                "  - alternatives: What alternatives were considered (if any)",
+                "  - impact: What functionality would be lost without this package"
+            ],
+            "candy-chat/xmpp-prebind-php": {
+                "reason": "Essential XMPP prebinding for chat system authentication and session management.",
+                "mitigation": "PHP 8 compatibility via patches. Extended with custom TIKITOKEN auth.",
+                "reviewed": "2025-08-27",
+                "reviewer": "Joseph Kausi",
+                "alternatives": "No alternatives for prebinding. Custom implementation would be complex.",
+                "impact": "XMPP chat completely non-functional. Users cannot authenticate or connect."
+            },
+            "jason-munro/cypht": {
+                "reason": "Intentionally using dev-master to align with Cypht's master branch during active development of Tiki.",
+                "mitigation": "Deep integration with custom patches. Reviewed regularly. When Tiki branches to a stable version, it should switch to the latest stable Cypht release.",
+                "reviewed": "2025-08-27",
+                "reviewer": "Joseph Kausi",
+                "alternatives": "Use latest stable in stable branches.",
+                "impact": "Webmail completely non-functional. Users lose email access."
+            },
+            "garethp/php-ews": {
+                "reason": "Required by Cypht. Currently using dev-master due to needed features not yet available in stable.",
+                "mitigation": "Monitored for upstream changes. Plan to migrate to stable once required features are released.",
+                "reviewed": "2025-08-27",
+                "reviewer": "Joseph Kausi",
+                "alternatives": "Recommendation: Consider migrating to stable v0.11.0 unless dev-master features are needed",
+                "impact": "Exchange integration may be affected if removed."
+            },
+            "symfony/polyfill-ctype": {
+                "reason": "Provides ctype_* functions when ext-ctype extension is not available.",
+                "mitigation": "Version ~1.8 required by Symfony 6.4 components. Provides fallback functionality.",
+                "reviewed": "2025-08-27",
+                "reviewer": "Joseph Kausi",
+                "alternatives": "No alternatives for ctype function polyfills.",
+                "impact": "Symfony components fail. System likely unusable due to cascading failures."
+            }
+        }
     },
     "replace": {
         "npm-asset/tslib": "*"


=====================================
vendor_bundled/composer.lock
=====================================
@@ -4,20 +4,20 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
         "This file is @generated automatically"
     ],
-    "content-hash": "b82f3cb47cf759c8510f174c6dc01c67",
+    "content-hash": "975a766ab46e7ec9493a30af53a9ceb2",
     "packages": [
         {
             "name": "amphp/amp",
-            "version": "v2.6.4",
+            "version": "v2.6.5",
             "source": {
                 "type": "git",
                 "url": "https://github.com/amphp/amp.git",
-                "reference": "ded3d9be08f526089eb7ee8d9f16a9768f9dec2d"
+                "reference": "d7dda98dae26e56f3f6fcfbf1c1f819c9a993207"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/amphp/amp/zipball/ded3d9be08f526089eb7ee8d9f16a9768f9dec2d",
-                "reference": "ded3d9be08f526089eb7ee8d9f16a9768f9dec2d",
+                "url": "https://api.github.com/repos/amphp/amp/zipball/d7dda98dae26e56f3f6fcfbf1c1f819c9a993207",
+                "reference": "d7dda98dae26e56f3f6fcfbf1c1f819c9a993207",
                 "shasum": ""
             },
             "require": {
@@ -33,11 +33,6 @@
                 "vimeo/psalm": "^3.12"
             },
             "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.x-dev"
-                }
-            },
             "autoload": {
                 "files": [
                     "lib/functions.php",
@@ -85,7 +80,7 @@
             "support": {
                 "irc": "irc://irc.freenode.org/amphp",
                 "issues": "https://github.com/amphp/amp/issues",
-                "source": "https://github.com/amphp/amp/tree/v2.6.4"
+                "source": "https://github.com/amphp/amp/tree/v2.6.5"
             },
             "funding": [
                 {
@@ -93,7 +88,7 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-03-21T18:52:26+00:00"
+            "time": "2025-09-03T19:41:28+00:00"
         },
         {
             "name": "amphp/byte-stream",
@@ -8538,20 +8533,20 @@
         },
         {
             "name": "ramsey/uuid",
-            "version": "4.9.0",
+            "version": "4.9.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/ramsey/uuid.git",
-                "reference": "4e0e23cc785f0724a0e838279a9eb03f28b092a0"
+                "reference": "81f941f6f729b1e3ceea61d9d014f8b6c6800440"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/ramsey/uuid/zipball/4e0e23cc785f0724a0e838279a9eb03f28b092a0",
-                "reference": "4e0e23cc785f0724a0e838279a9eb03f28b092a0",
+                "url": "https://api.github.com/repos/ramsey/uuid/zipball/81f941f6f729b1e3ceea61d9d014f8b6c6800440",
+                "reference": "81f941f6f729b1e3ceea61d9d014f8b6c6800440",
                 "shasum": ""
             },
             "require": {
-                "brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11 || ^0.12 || ^0.13",
+                "brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11 || ^0.12 || ^0.13 || ^0.14",
                 "php": "^8.0",
                 "ramsey/collection": "^1.2 || ^2.0"
             },
@@ -8610,9 +8605,9 @@
             ],
             "support": {
                 "issues": "https://github.com/ramsey/uuid/issues",
-                "source": "https://github.com/ramsey/uuid/tree/4.9.0"
+                "source": "https://github.com/ramsey/uuid/tree/4.9.1"
             },
-            "time": "2025-06-25T14:20:11+00:00"
+            "time": "2025-09-04T20:59:21+00:00"
         },
         {
             "name": "ratchet/pawl",
@@ -10035,16 +10030,16 @@
         },
         {
             "name": "sentry/sentry",
-            "version": "4.15.1",
+            "version": "4.15.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/getsentry/sentry-php.git",
-                "reference": "0d09baf3700869ec4b723c95eb466de56c3d74b6"
+                "reference": "61a2d918e8424b6de4a2e265c15133a00c17db51"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/0d09baf3700869ec4b723c95eb466de56c3d74b6",
-                "reference": "0d09baf3700869ec4b723c95eb466de56c3d74b6",
+                "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/61a2d918e8424b6de4a2e265c15133a00c17db51",
+                "reference": "61a2d918e8424b6de4a2e265c15133a00c17db51",
                 "shasum": ""
             },
             "require": {
@@ -10108,7 +10103,7 @@
             ],
             "support": {
                 "issues": "https://github.com/getsentry/sentry-php/issues",
-                "source": "https://github.com/getsentry/sentry-php/tree/4.15.1"
+                "source": "https://github.com/getsentry/sentry-php/tree/4.15.2"
             },
             "funding": [
                 {
@@ -10120,7 +10115,7 @@
                     "type": "custom"
                 }
             ],
-            "time": "2025-08-28T15:45:14+00:00"
+            "time": "2025-09-03T07:23:48+00:00"
         },
         {
             "name": "smalot/pdfparser",
@@ -14944,16 +14939,16 @@
         },
         {
             "name": "zbateson/mail-mime-parser",
-            "version": "3.0.3",
+            "version": "3.0.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/zbateson/mail-mime-parser.git",
-                "reference": "e0d4423fe27850c9dd301190767dbc421acc2f19"
+                "reference": "f0ccec9290a5b9cf014d7b7ea3401d2a4a626e9a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/zbateson/mail-mime-parser/zipball/e0d4423fe27850c9dd301190767dbc421acc2f19",
-                "reference": "e0d4423fe27850c9dd301190767dbc421acc2f19",
+                "url": "https://api.github.com/repos/zbateson/mail-mime-parser/zipball/f0ccec9290a5b9cf014d7b7ea3401d2a4a626e9a",
+                "reference": "f0ccec9290a5b9cf014d7b7ea3401d2a4a626e9a",
                 "shasum": ""
             },
             "require": {
@@ -15016,7 +15011,7 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-08-10T18:44:09+00:00"
+            "time": "2025-09-03T17:18:36+00:00"
         },
         {
             "name": "zbateson/mb-wrapper",
@@ -16405,22 +16400,22 @@
         },
         {
             "name": "phpcsstandards/phpcsutils",
-            "version": "1.1.1",
+            "version": "1.1.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/PHPCSStandards/PHPCSUtils.git",
-                "reference": "f7eb16f2fa4237d5db9e8fed8050239bee17a9bd"
+                "reference": "b22b59e3d9ec8fe4953e42c7d59117c6eae70eae"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/f7eb16f2fa4237d5db9e8fed8050239bee17a9bd",
-                "reference": "f7eb16f2fa4237d5db9e8fed8050239bee17a9bd",
+                "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/b22b59e3d9ec8fe4953e42c7d59117c6eae70eae",
+                "reference": "b22b59e3d9ec8fe4953e42c7d59117c6eae70eae",
                 "shasum": ""
             },
             "require": {
                 "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7 || ^1.0",
                 "php": ">=5.4",
-                "squizlabs/php_codesniffer": "^3.13.0 || ^4.0"
+                "squizlabs/php_codesniffer": "^3.13.3 || ^4.0"
             },
             "require-dev": {
                 "ext-filter": "*",
@@ -16494,7 +16489,7 @@
                     "type": "thanks_dev"
                 }
             ],
-            "time": "2025-08-10T01:04:45+00:00"
+            "time": "2025-09-05T00:00:03+00:00"
         },
         {
             "name": "phpstan/phpstan",
@@ -17033,16 +17028,16 @@
         },
         {
             "name": "rector/rector",
-            "version": "2.1.4",
+            "version": "2.1.5",
             "source": {
                 "type": "git",
                 "url": "https://github.com/rectorphp/rector.git",
-                "reference": "fe613c528819222f8686a9a037a315ef9d4915b3"
+                "reference": "1cd6abfb5976fd4ed728d5b73ebd67c7c810cd88"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/rectorphp/rector/zipball/fe613c528819222f8686a9a037a315ef9d4915b3",
-                "reference": "fe613c528819222f8686a9a037a315ef9d4915b3",
+                "url": "https://api.github.com/repos/rectorphp/rector/zipball/1cd6abfb5976fd4ed728d5b73ebd67c7c810cd88",
+                "reference": "1cd6abfb5976fd4ed728d5b73ebd67c7c810cd88",
                 "shasum": ""
             },
             "require": {
@@ -17081,7 +17076,7 @@
             ],
             "support": {
                 "issues": "https://github.com/rectorphp/rector/issues",
-                "source": "https://github.com/rectorphp/rector/tree/2.1.4"
+                "source": "https://github.com/rectorphp/rector/tree/2.1.5"
             },
             "funding": [
                 {
@@ -17089,7 +17084,7 @@
                     "type": "github"
                 }
             ],
-            "time": "2025-08-15T14:41:36+00:00"
+            "time": "2025-09-04T14:19:07+00:00"
         },
         {
             "name": "sebastian/cli-parser",
@@ -18022,16 +18017,16 @@
         },
         {
             "name": "squizlabs/php_codesniffer",
-            "version": "3.13.2",
+            "version": "3.13.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git",
-                "reference": "5b5e3821314f947dd040c70f7992a64eac89025c"
+                "reference": "5be16e10d07a2b0c629a8fc52c653fd57458bdf8"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/5b5e3821314f947dd040c70f7992a64eac89025c",
-                "reference": "5b5e3821314f947dd040c70f7992a64eac89025c",
+                "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/5be16e10d07a2b0c629a8fc52c653fd57458bdf8",
+                "reference": "5be16e10d07a2b0c629a8fc52c653fd57458bdf8",
                 "shasum": ""
             },
             "require": {
@@ -18102,7 +18097,7 @@
                     "type": "thanks_dev"
                 }
             ],
-            "time": "2025-06-17T22:17:01+00:00"
+            "time": "2025-09-04T19:19:52+00:00"
         },
         {
             "name": "stevegrunwell/phpunit-markup-assertions",



View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/54d18adcda9f821d2ec34d3ca524011c7343a3e0

-- 
View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/54d18adcda9f821d2ec34d3ca524011c7343a3e0
You're receiving this email because of your account on gitlab.com.

_______________________________________________
TikiWiki-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tikiwiki-cvs
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.