29 lines
1.0 KiB
PHP
29 lines
1.0 KiB
PHP
<?php
|
|||
|
|
|
||
|
|
/**
|
||
|
|
* Runtime requirements — single source of truth.
|
||
|
|
*
|
||
|
|
* Consumed by:
|
||
|
|
* - scripts/check_requirements.php (CI: fails the build if unmet)
|
||
|
|
* - api/health.php (production: surfaces drift to monitoring)
|
||
|
|
*
|
||
|
|
* This exists because a PHP upgrade once silently dropped the ldap extension,
|
||
|
|
* which broke avatars with no visible error. Keep this list in sync with the
|
||
|
|
* extensions the code actually relies on.
|
||
|
|
*/
|
||
|
|
|
||
|
|
return [
|
||
|
|
// Minimum supported PHP version (production runs 8.4).
|
||
|
|
'min_php_version' => '8.2',
|
||
|
|
|
||
|
|
// Extensions the application requires to function.
|
||
|
|
'required_extensions' => [
|
||
|
|
'ldap', // api/user_avatar.php — lldap avatar lookups
|
||
|
|
'mysqli', // helpers/Database.php — all data access
|
||
|
|
'curl', // helpers/NotificationHelper.php, SynapseHelper.php — Matrix
|
||
|
|
'mbstring', // multibyte string handling
|
||
|
|
'fileinfo', // api/upload_attachment.php — MIME validation
|
||
|
|
'json', // request/response encoding (bundled, but assert anyway)
|
||
|
|
],
|
||
|
|
];
|