Releases: prwnr/laravel-streamer
v4.4.0
4.3.0
v4.3.0 (09.10.2024)
- Converted \Throwable into \Exception to support a method signature. by @yuriy-sorokin
- Removed xRead deprecation exceptions by @yuriy-sorokin
4.2.0
v4.2.0 (29.08.2024)
- changed the way how consumer name is generated when only
--group
option is provided tostream:listen
command. Previously it was timestamp-based, not it is random string. This change is to avoid generating the same names for different processes if they start at the same time.
4.1.0
What's Changed
- Add PHP 8.2 to version requirements (alongside 8.1) for a compatibility with clean Laravel 11 applications.
Full Changelog: 4.0.0...4.1.0
4.0.0
v4.0.0 (15.03.2024)
- Dropping support of Laravel 7, 8 and 9
- Laravel 11 support added
- Dropping support for PHP 7.4 and 8.0 and making minimum PHP requirement of v8.1
- removed deprecated
Waitable
interface - readonly properties introduced to classes across the whole code pool
- promoted properties introduced to classes across the whole code pool
- added
declare(strict_types=1);
to all files undersrc
andtests
directories, making every part of the package strictly typed - all methods are now with typed parameters and return types
3.5.1
What's Changed
- Fixed inconsistent exceptions so that printError method can also accept
\Error
by @yuriy-sorokin in #57
New Contributors
- @yuriy-sorokin made their first contribution in #57
Full Changelog: 3.5.0...3.5.1
3.5.0
v3.4.1
v3.4.1 (14.09.2022)
Fixed
Potential cause of uncaught errors, when phpredis lib for some reason (yet unknown to me) returns a boolean value from xRead/xReadGroup method, instead of documented array|Redis value - where my code expected array - so a bool causes a wrong return type error.
patched xRange and xRevRange just in case, as they are also expected to return arrays.
v2.7.1
v2.7.1 (14.09.2022)
Fixed
Potential cause of uncaught errors, when phpredis lib for some reason (yet unknown to me) returns a boolean value from xRead/xReadGroup method, instead of documented array|Redis value - where my code expected array - so a bool cause a wrong return type error.
patched xRange and xRevRange just in case, as they are also expected to return arrays.
v3.4.0
v3.4.0 (31.08.2022)
Added MultiStreams functionality
- Streamer dispatcher got changed that it can accept either one stream and one handler or multiple streams and multiple (or one) handler.
- Listen command can work in two ways:
a) with its first arg passed as list of events like:foo.bar,foobar,some.bar
b) skipping the arg and using option--all
that will use all events that are registered in Listener Stack
using other command arguments with multiple streams will always apply them to all of the streams (so, like last_id for example). - Claiming pending messages also happens for all the streams.
This command can have bottlenecks for multiple streams, as it will have to process every message for every stream and every listener before coming back to awaiting for new messages.
There's internal sorting "algorithm" included, that sorts incoming messages by their IDs, which are timestamps. This processes the messages in order they were sent to Stream.
! Disclaimer !
This is almost 99% addition with no breaking changes.
The only thing that may require work on the user side, is when:
- you used
Waitable
interface, which is now deprecated - you used
Listener
interface and now itslisten
method arguments dont have typings, so you will need to remove yours on your end.
Tagging final release, as no problems were seen so far with it.