2023-02-28 21:36:48 -05:00
|
|
|
# Changelog
|
|
|
|
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
|
2023-06-30 00:59:20 -04:00
|
|
|
## [2.0.1] - 2023-06-30
|
2023-06-30 00:55:51 -04:00
|
|
|
|
|
|
|
Minor bugfixes and improvements.
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
- Fixed bug where `\TamerLib > tm > run()` would return early even if the `$timeout` is set to 0.
|
|
|
|
|
2023-06-30 00:58:08 -04:00
|
|
|
### Changed
|
|
|
|
- `\TamerLib > tm > do()` the parameter `$callback` is now optional. If not provided, the job result will not be
|
|
|
|
handled by the client and just be discarded.
|
|
|
|
|
2023-06-30 00:59:20 -04:00
|
|
|
|
2023-06-18 17:22:57 -04:00
|
|
|
## [2.0.0] - 2023-06-18
|
2023-02-28 21:36:48 -05:00
|
|
|
|
2023-06-18 17:22:57 -04:00
|
|
|
This version of TamerLib offers a comprehensive framework for implementing parallel processing in PHP applications.
|
|
|
|
With features aimed at scalability and robust handling of tasks and exceptions, it allows developers to build efficient,
|
|
|
|
reliable applications.
|
|
|
|
|
|
|
|
This makes previous versions of TamerLib obsolete, and as such, this version is not backwards compatible with previous
|
|
|
|
versions.
|
|
|
|
|
|
|
|
### Added
|
|
|
|
- Parallel Processing: Utilize the full power of your CPU by executing tasks concurrently using sub-processes or
|
|
|
|
remote processes.
|
|
|
|
- Task Queuing: Tasks are managed using a task queue and result queue, making it easy to keep track of tasks and their
|
|
|
|
results.
|
|
|
|
- Horizontal Scalability: TamerLib allows the creation of Tamer Nodes which act as supervisors for workers. Nodes and
|
|
|
|
workers communicate with a central Redis Server, enabling applications to scale horizontally.
|
|
|
|
- Exception Handling: Exception handling is built into TamerLib, allowing developers to catch and handle exceptions
|
|
|
|
thrown by workers.
|
|
|
|
- Introduced `tm::initialize`, `tm::createWorker` for client setup and worker creation respectively.
|
|
|
|
- Added methods `tm::do` and `tm::wait` to manage job execution and completion tracking.
|
|
|
|
- `tm::initialize`, `tm::addFunction` and `tm::run` have been added to help with setting up and managing workers.
|
|
|
|
- Node implementation introduced, allowing supervision of workers and horizontal scaling of applications.
|
|
|
|
- Workers can now throw exceptions which are caught and re-thrown on the client side.
|
|
|
|
This allows for robust error handling across different parts of the application.
|
2023-03-01 18:56:05 -05:00
|
|
|
|
|
|
|
## [1.0.1] - 2022-02-28
|
2023-02-28 21:38:55 -05:00
|
|
|
|
2023-03-01 18:56:05 -05:00
|
|
|
### Added
|
2023-02-28 21:36:48 -05:00
|
|
|
- Added more logging calls for Gearman Client
|
|
|
|
|
|
|
|
|
|
|
|
## [1.0.0] - 2022-02-09
|
|
|
|
|
|
|
|
### Added
|
|
|
|
- Initial release
|