mirror of
https://github.com/opensourcepos/opensourcepos.git
synced 2026-09-13 13:57:34 -04:00
* refactor: standardize function and variable names to camelCase and improve naming consistency across files * refactor(config): remove spaces around `=` in configuration files for improved consistency and formatting as is required by .env formatting rules. * refactor(security): extract `.env` key management logic into reusable `writeEnvKey` helper, add throttle key provisioning logic, and streamline encryption key updates * fix(migration): improve error handling in CI3 to CI4 encryption data migration - Secure `up` and `convertCI3EncryptedData` methods with detailed exception handling for script execution and data saving. * fix(migration): ensure empty string is correctly handled in CI3 to CI4 encryption data conversion * refactor(security): enhance `.env` management with durable writes, better locking, and helper abstraction - Update `writeEnvKey` to return a success flag and handle file locks robustly. - Introduce `atomicWriteFile` for atomic writes to prevent partial file updates. - Add `applyEnvKeyReplacement` to streamline `.env` key insertion and updates. - Improve throttle key provisioning with validation and runtime persistence safeguards. * refactor(security): implement dedicated `.env` file locking for robust and cross-platform safe write operations - Add `lockEnvFile` and `unlockEnvFile` helpers to manage `.env` mutex files. - Refactor `.env` write logic to use lock helpers, improving reliability and preventing race conditions. - Enhance `atomicWriteFile` for better handling of file overwrites on Windows and POSIX systems. * fix(migration): improve encryption error handling during CI3 to CI4 data conversion - Add conditional checks for `checkEncryption` to prevent failed key persistence. - Introduce `abortEncryptionConversion` for cleanup on failure. - Update `writeEnvKey` to handle and return errors gracefully. * refactor(security): improve `atomicWriteFile` for better file locking and cross-platform durability - Replace `uniqid` with `bin2hex(random_bytes())` for more secure temp file naming. - Add explicit file permissions and locking for safe concurrent writes. - Enhance error handling to ensure atomicity on both Windows and POSIX systems. * Add env temp files to gitignore so they don't get tracked. --------- Signed-off-by: objecttothis <17935339+objecttothis@users.noreply.github.com>
21 lines
656 B
SQL
21 lines
656 B
SQL
|
|
DROP TABLE `ospos_sessions`;
|
|
|
|
CREATE TABLE IF NOT EXISTS `ospos_sessions` (
|
|
`id` varchar(128) NOT NULL,
|
|
`ip_address` varchar(45) NOT NULL,
|
|
`timestamp` timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
|
`data` blob NOT NULL,
|
|
KEY `ospos_sessions_timestamp` (`timestamp`)
|
|
);
|
|
|
|
ALTER TABLE ospos_sessions ADD PRIMARY KEY (id, ip_address);
|
|
|
|
UPDATE `ospos_app_config`
|
|
SET `value` = REPLACE(value, '|', ',')
|
|
WHERE `key` = 'image_allowed_types';
|
|
|
|
-- due to language rename, reset to english
|
|
UPDATE `ospos_app_config` SET `value` = 'en' WHERE `key` = 'language_code' ;
|
|
UPDATE `ospos_app_config` SET `value` = 'english' WHERE `key` = 'language' ;
|