Hi, I recently started looking into the o.a.j.o.spi package to figure out if it would be possible to decouple it from oak-core, but I found out that many implementation classes live there.
In particular, almost every subpackage contains default implementations of proper SPI interfaces, like CompositeEditor, CompositeHook, EmptyHook, etc. These classes should probably be part of a utility package instead. These default implementations make o.a.j.o.spi (and its subpackages) transitively depend on many other implementation packages, while I expect an SPI package to depend only on other SPI and API packages. What about moving the implementation classes into different utility packages?
