Comments (8)
Hi @zackrowe and @freekmurze
I've bumped the package to the latest version in the example repo I've provided. And now it works!
Thanks @zackrowe for providing a fix for this issue.
from laravel-event-sourcing.
To my knowledge, our packages wouldn't call a custom method like two
.
Could you create a minimal Laravel app in which the problem is reproduced?
from laravel-event-sourcing.
Please see https://github.com/fabianpnke/laravel-event-sourcing-issue-341-demo
I've managed to reproduce a behaviour in that the problem results in a 500 Server error by removing a type hint from the method.
from laravel-event-sourcing.
Hi,
same here, when there is a public method in an aggregate with non typed params the app totally breaks.
The break occurs exactly inside the apply function of AggregateRoot.php, in the Handlers section.
from laravel-event-sourcing.
mixed doesnt work as a type either.
from laravel-event-sourcing.
I've also ran into this bug. I believe the issue is in the AggregateRoot
class line 259
. The method doesn't get filtered when the event gets passed to the accepts()
method since the method argument is defined as mixed
.
Possible Fix Maybe a method could be added to Handlers
to filter methods that don't take a specific argument type? In this case ShouldBeStored
?
Temporary Solution I added a second unused argument to my function to get things working. Not ideal but will work for now until this is addressed.
from laravel-event-sourcing.
I've opened a PR in the better-types repository that can hopefully help address this issue. spatie/better-types#3
from laravel-event-sourcing.
@freekmurze I've tested the latest changes in version 7.2.3
in my project and I believe this issue has been resolved.
from laravel-event-sourcing.
Related Issues (20)
- Multi-instance event handlers HOT 1
- Cannot retrieve() cause of failing instantiate Enum
- Snapshots table exploding HOT 2
- Allowed memory size of x bytes exhausted
- Recording events from AggregatePartial
- from v4 to v7 test failed when using mock()->makePartial()
- Search is not working HOT 1
- Replay events HOT 2
- vendor:publish not working
- Lock wait timeout exceeded
- Docs - versions cross linked HOT 2
- Attribute EventSerializer is not used for serialize HOT 1
- Outdated Docs question HOT 1
- Prevent loops when sending events into Aggregate methods HOT 2
- The "auto_discover_projectors_and_reactors" config works regardless of "dont-discover" in composer.json HOT 3
- Deprecation notice: $firedFromAggregateRoot is deprecated HOT 2
- Memory allocated exception on version 7.3.7 HOT 1
- Version 7.3.7 tries to apply events to variadic and untyped functions in the aggregate root HOT 5
- created_at field is always updated when saving a EloquentStoredEvent HOT 1
- Projector and Reactor discovery fails due to incorrect namespace resolution
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from laravel-event-sourcing.