Files
opensourcepos/composer.json
BudsieBuds 386f976dcc feat(php): add PHP 8.5 support, resolve deprecations, and optimize CI workflows (#4776)
- Extend composer.json and composer.lock PHP requirement to include PHP 8.5
- Add PHP 8.5 to test matrix in phpunit.yml and main.yml workflows
- Modernize php-linter.yml to use setup-php@v2 with parallel matrix for PHP 8.2–8.5
- Propagate PHP 8.2 lint failures via shell loop in find -exec + while retaining batching for 8.3–8.5
- Add permissions: contents: read and cancel-in-progress concurrency to php-linter.yml
- Remove obsolete Node.js and npm install steps from phpunit.yml
- Update phpunit.yml runner to ubuntu-latest and composer cache action to v4
- Address PHP 8.5 deprecations and syntax:
  - Replace deprecated switch-case semicolon with standard colon in app/Config/Database.php
  - Replace non-standard (double) cast with (float) in app/Libraries/Token_lib.php
  - Remove obsolete curl_close() calls in app/Config/Validation/OSPOSRules.php and app/Libraries/Mailchimp_lib.php
- Update INSTALL.md, workflows README, and bug report issue template to include PHP 8.5
2026-10-28 15:58:14 +04:00

76 lines
2.2 KiB
JSON

{
"name": "opensourcepos/opensourcepos",
"description": "Open Source Point of Sale is a web based POS system written in the PHP language. It uses MySQL as backend and has a simple user interface",
"license": "MIT",
"type": "project",
"keywords": [
"point-of-sale",
"POS"
],
"authors": [
{
"name": "jekkos"
},
{
"name": "objecttothis"
}
],
"homepage": "https://opensourcepos.org",
"support": {
"issues": "https://github.com/opensourcepos/opensourcepos/issues",
"forum": "https://github.com/opensourcepos/opensourcepos/discussions",
"wiki": "https://github.com/opensourcepos/opensourcepos/wiki",
"source": "https://github.com/opensourcepos/opensourcepos",
"docs": "https://github.com/opensourcepos/opensourcepos/wiki#documentation",
"matrix": "https://matrix.to/#/#opensourcepos_Lobby:gitter.im"
},
"require": {
"php": ">=8.2.35 <8.3 || >=8.3.36 <8.4 || >=8.4.27 <8.5 || >=8.5.12 <8.6",
"ext-intl": "*",
"codeigniter4/framework": "4.7.4",
"dompdf/dompdf": "^3.1.6",
"ezyang/htmlpurifier": "^4.19",
"picqer/php-barcode-generator": "^2.4.0",
"tamtamchik/namecase": "^3.0.0"
},
"require-dev": {
"codeigniter/coding-standard": "^1.9",
"friendsofphp/php-cs-fixer": "^3.95",
"kint-php/kint": "^5.0.4",
"nexusphp/cs-config": "^3.29",
"phpunit/phpunit": "^10.5.16 || ^11.2"
},
"replace": {
"psr/log": "*"
},
"autoload": {
"psr-4": {
"App\\": "app/",
"Config\\": "app/Config/",
"CodeIgniter\\": "vendor/codeigniter4/framework/system/"
},
"exclude-from-classmap": [
"**/Database/Migrations/**"
]
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
}
},
"config": {
"allow-plugins": {
"phpstan/extension-installer": true
},
"optimize-autoloader": true,
"preferred-install": "dist",
"sort-packages": true
},
"scripts": {
"test": "phpunit"
},
"scripts-descriptions": {
"test": "Run unit tests"
}
}