Cannot assign Kdyby\Events\Event to property Nette\Http\Session::$onStart of type array

Member | 504


$ composer info

nette/application                  v3.1.14            🏆 Nette Application: a full-stack component-based MVC kernel for PHP that helps you write powerful and modern web applications. Write les...
nette/bootstrap                    v3.2.3             🅱  Nette Bootstrap: the simple way to configure and bootstrap your Nette application.
nette/caching                      v3.3.0             ⏱ Nette Caching: library with easy-to-use API and many cache backends.
nette/component-model              v3.1.0             ⚛ Nette Component Model
nette/database                     v3.2.0             💾 Nette Database: layer with a familiar PDO-like API but much more powerful. Building queries, advanced joins, drivers for MySQL, Postgre...
nette/di                           v3.1.10            💎 Nette Dependency Injection Container: Flexible, compiled and full-featured DIC with perfectly usable autowiring and support for all new...
nette/finder                       v3.0.0             🔍 Nette Finder: find files and directories with an intuitive API.
nette/forms                        v3.2.2             📝 Nette Forms: generating, validating and processing secure forms in PHP. Handy API, fully customizable, server & client side validation ...
nette/http                         v3.3.0             🌐 Nette Http: abstraction for HTTP request, response and session. Provides careful data sanitization and utility for URL and cookies mani...
nette/mail                         v4.0.2             📧 Nette Mail: handy email creation and transfer library for PHP with both text and MIME-compliant support.
nette/neon                         v3.4.1             🍸 Nette NEON: encodes and decodes NEON file format.
nette/nette                        v3.2.1             👪 Nette Framework - innovative framework for fast and easy development of secured web applications in PHP (metapackage)
nette/php-generator                v4.1.4             🐘 Nette PHP Generator: generates neat PHP code for you. Supports new PHP 8.3 features.
nette/robot-loader                 v4.0.1             🍀 Nette RobotLoader: high performance and comfortable autoloader that will search and autoload classes within your application.
nette/routing                      v3.1.0             Nette Routing: two-ways URL conversion
nette/safe-stream                  v3.0.1             Nette SafeStream: provides isolation for thread safe manipulation with files via native PHP functions.
nette/schema                       v1.3.0             📐 Nette Schema: validating data structures against a given Schema.
nette/security                     v3.2.0             🔑 Nette Security: provides authentication, authorization and a role-based access control management via ACL (Access Control List)
nette/tokenizer                    v3.1.1             Nette Tokenizer
nette/utils                        v4.0.4             🛠  Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or s...

$service->on is always type of array, but nette/DI creates container like this

1805:        public function createServiceFakeSession__original(): Nette\Http\Session
1806:        {
1807:            $service = new Nette\Http\Session($this->getService('http.request'), $this->getService('http.response'));
1808:            $service->setExpiration('14 days');
1809:            $service->setOptions(['cookieSamesite' => 'Lax']);
1810:            $service->onStart = $this->getService('events.manager')->createEvent(['Nette\Http\Session', 'onStart'], $service->onStart, null, false);

correct should be

$service->onStart = [$this->getService('events.manager')->createEvent(['Nette\Http\Session', 'onStart'], $service->onStart, null, false)];

is it bug? or?

Member | 504

better to say kdyby/events do this, and there is no, upgrade, is there any working alternative to kdyby/events?

Nette Core | 1190