[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