After installing this package, I ran into an issue that was a bit tricky to source, but it ultimately comes back here.
In short, the service provider for this package injects NovaRequest as a dependency to the service provider's boot method. Booting a form request early in the lifecycle of a Laravel application causes unintended side-effects.
This PR simply changes the service provider to inject the NovaRequest instance as its needed, which is inside of macros exclusively. In other words, until one of these macros is called, the NovaRequest instance isn't resolved out of the container. This prevents said side-effects.
Additionally, macros are loaded statically, so you don't need to register them on the ServingNova event; you can just register them.
After installing this package, I ran into an issue that was a bit tricky to source, but it ultimately comes back here.
In short, the service provider for this package injects
NovaRequest
as a dependency to the service provider's boot method. Booting a form request early in the lifecycle of a Laravel application causes unintended side-effects.This PR simply changes the service provider to inject the
NovaRequest
instance as its needed, which is inside of macros exclusively. In other words, until one of these macros is called, theNovaRequest
instance isn't resolved out of the container. This prevents said side-effects.Additionally, macros are loaded statically, so you don't need to register them on the
ServingNova
event; you can just register them.