|
1 | | -## TBD |
| 1 | +## 1.x |
| 2 | + |
| 3 | +### 1.0.0 |
| 4 | + |
| 5 | + - Added `EventLoop::getIdentifiers` (#62) |
| 6 | + - Added `EventLoop::getType` (#62) |
| 7 | + - Added `EventLoop::isEnabled` (#62) |
| 8 | + - Added `EventLoop::isReferenced` (#62) |
| 9 | + - Fixed `EventLoop::getErrorHandler` missing the `static` modifier |
| 10 | + - Fixed double wrapping in `UncaughtThrowable` if a decorating event loop driver throws an `UncaughtThrowable` (#61) |
| 11 | + - Removed `EventLoop::getInfo`, use `EventLoop::getIdentifiers()` in combination with `EventLoop::isEnabled`, `EventLoop::isReferenced`, and `EventLoop::getType` instead (#62) |
| 12 | + - Removed `EventLoop::createSuspension`, use `EventLoop::getSuspension` instead |
| 13 | + |
| 14 | +## 0.2.x |
| 15 | + |
| 16 | +### 0.2.5 |
| 17 | + |
| 18 | + - PHP 8.1 is now required (#55) |
| 19 | + - Fixed compatibility with 8.2 by fixing a deprecation notice (#58) |
| 20 | + - Fixed an integer overflow on timers if a large (e.g. `PHP_INT_MAX`) timeout is requested (#49) |
| 21 | + - Removed the reference kept to microtask (`EventLoop::queue()`) callback arguments so passed objects may be garbage collected if a resulting fiber unsets all references to the argument (#60) |
| 22 | + |
| 23 | +### 0.2.4 |
| 24 | + |
| 25 | + - Fixed the fiber reference in `DriverSuspension` being nulled early during shutdown, leading to an assertion error when attempting to resume the suspension |
| 26 | + |
| 27 | +### 0.2.3 |
| 28 | + |
| 29 | + - Fixed `Undefined property: Revolt\EventLoop\Internal\DriverSuspension::$fiber` in an error path |
| 30 | + |
| 31 | +### 0.2.2 |
| 32 | + |
| 33 | + - Fixed memory leak with suspensions keeping a reference to fibers (#42, #52) |
| 34 | + Similar leaks might still happen if suspensions are never resumed, so ensure your suspensions are eventually resumed. |
| 35 | + |
| 36 | +### 0.2.1 |
| 37 | + |
| 38 | + - Added template type to `Suspension` (#44) |
| 39 | + - Added `FiberLocal::unset()` (#45) |
| 40 | + - Added stacktrace to all current suspensions on early exit of the event loop (#46) |
| 41 | + |
| 42 | +### 0.2.0 |
| 43 | + |
| 44 | + - Added `FiberLocal` to store data specific to each fiber, e.g. logging context (#40) |
| 45 | + - Added throwing `UnhandledThrowable` if event loop stops due to an exception (#32) |
| 46 | + - Added `EventLoop::getErrorHandler()` to get the currently set error handler |
| 47 | + - Improved performance by reducing fiber switches by queueing callbacks for each tick (#34) |
| 48 | + - Improved performance by not creating unnecessary fibers if exceptions are thrown from callbacks |
| 49 | + - Removed return value of `EventLoop::setErrorHandler()`, use `EventLoop::getErrorHandler()` instead |
| 50 | + - Removed default value for first argument of `EventLoop::setErrorHandler()` (#30) |
| 51 | + - Cache suspensions and always return the same value for a specific fiber (#37) |
| 52 | + - `EventLoop::getSuspension()` has been added as replacement for `EventLoop::createSuspension()` |
| 53 | + - `EventLoop::createSuspension()` has been deprecated and will be removed in the next version |
| 54 | + - Fixed multiple interrupts on double resumption leading to an assertion error instead of an exception (#41) |
| 55 | + - Fixed suspensions keeping their pending state after the event loop exceptionally stopped |
| 56 | + |
| 57 | +## 0.1.x |
| 58 | + |
| 59 | +### 0.1.1 |
| 60 | + |
| 61 | + - Fixed exceptions being hidden if the event loop stopped due to an uncaught exception (#31) |
| 62 | + |
| 63 | +### 0.1.0 |
| 64 | + |
| 65 | +Initial development release. |
0 commit comments