mirror of
https://github.com/opensourcepos/opensourcepos.git
synced 2026-09-13 13:57:34 -04:00
* Implement atomic updates for gift card and reward point decrements, enhance error handling for insufficient balances, and add regression tests for concurrency safety. * Add translations for insufficient gift card balance and reward points error messages across all supported languages. * Reorder `clear_suspended_sale_detail` call to ensure transactional consistency. * Reorder `clear_all` call to align with success and error handling logic. * Ensure soft-deleted gift cards are excluded in balance updates. * Refactor change_quantity logic with atomic upserts, improve error handling for insufficient stock, and update related tests and constants. * Added check for NEW_ENTRY * Added unit tests to test changes. * Fix class name casing in ItemQuantityTest for consistency. * Fix Bulgarian translations for insufficient balance error messages in Sales module. * Fix Greek translations for insufficient balance error messages in Sales module. * Fix Armenian translations for insufficient balance error messages in Sales module. * Fix Tamil translations for insufficient balance error messages in Sales module. * Implement race condition testing for database methods with concurrent process support. * Fix class name casing in ItemTest for consistency. * Improve concurrent process handling in race condition tests; add readiness and synchronization barriers. * Improve handling of process I/O streams and timeout management in race condition tests. * Add test for decrementing gift card value when marked as deleted * Add `finally` block to ensure proper cleanup in async database race condition tests * Improve error handling and timeout management in async database race condition tests. * Refactor test utilities to use shared `EmployeeFixtureTrait` and `ItemFixtureTrait`. * Track process exit codes explicitly in race condition tests for improved error detection and debugging. * Improve error handling in `ConcurrentDbRaceTrait` by adding exceptions for `mysqli_poll` and `mysqli_reap_async_query`. Signed-off-by: objecttothis <17935339+objecttothis@users.noreply.github.com> --------- Signed-off-by: objecttothis <17935339+objecttothis@users.noreply.github.com>
80 lines
2.3 KiB
JSON
80 lines
2.3 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",
|
|
"ext-intl": "*",
|
|
"codeigniter4/framework": "4.7.4",
|
|
"dompdf/dompdf": "^3.1.6",
|
|
"ezyang/htmlpurifier": "^4.17",
|
|
"laminas/laminas-escaper": "2.18.0",
|
|
"paragonie/random_compat": "^2.0.21",
|
|
"picqer/php-barcode-generator": "^2.4.0",
|
|
"tamtamchik/namecase": "^3.0.0"
|
|
},
|
|
"require-dev": {
|
|
"codeigniter/coding-standard": "^1.8",
|
|
"fakerphp/faker": "^1.23.0",
|
|
"friendsofphp/php-cs-fixer": "^3.47.1",
|
|
"kint-php/kint": "^5.0.4",
|
|
"mikey179/vfsstream": "^1.6",
|
|
"nexusphp/cs-config": "^3.6",
|
|
"phpunit/phpunit": "^10.5.16 || ^11.2",
|
|
"predis/predis": "^1.1 || ^2.0"
|
|
},
|
|
"replace": {
|
|
"psr/log": "*"
|
|
},
|
|
"autoload": {
|
|
"psr-4": {
|
|
"App\\": "app/",
|
|
"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"
|
|
}
|
|
}
|