From a12923600ebfcb62f4b980535189ae34948706db Mon Sep 17 00:00:00 2001 From: Netkas Date: Sun, 18 Jun 2023 17:22:57 -0400 Subject: [PATCH] Updated CHANGELOG.md --- CHANGELOG.md | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b7eca7b..dd0f6c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,9 +5,30 @@ 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). -## [2.0.0] - Unreleased +## [2.0.0] - 2023-06-18 -Major rewrite +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. ## [1.0.1] - 2022-02-28