1.7.0
Introduce Package::build()
The new method allows building a container out of the package without running any ExecutableModule::run()
, simplifying unit tests.
Passing default modules to Package::boot()
is now deprecated, for a better separation of the "building" and "booting" steps, but it continues to work while emitting a deprecation notice.
There's an edge case in which passing modules to Package::boot()
causes an exception, but one of the conditions is that Package::container()
was called before Package::boot()
which caused an exception before anyway, so the change is 100% backward compatible.
Two new package statuses have been added:
Package::STATUS_MODULES_ADDED
Package::STATUS_READY
The first is necessary to distinguish the status after build()
was called but boot()
was not. The second was a missing status between initialized and ready.
Documentation and tests were added: /docs/Applicaton-flow.md
QoL
- Update for phpunit with it's dependencies to 8 to 9 and correctly work with PHP8.*.
PluginProperties
- Add
PluginProperties::pluginMainFile()
method. - Fix plugin active state detection