Features
- Drastically improved hot reload speed. Now, only changed classes are recompiled. This results in huge speedups during development, when deep template hierarchies are adjusted and hot reloaded.
- Fixed a bug that tags shared between multiple templates were only hot reloaded for one template.
- Removed side effects from
DirectoryCodeResolver
Breaking changes
To improve hot reloading, changes had to be made to the CodeResolver interface.
In case you use one of the supplied implementations DirectoryCodeResolver or ResourceCodeResolver, no changes are required.
In case you have your own CodeResolver implementation, you need to make the following adjustments:
boolean hasChanged(String name);was removed from the interface, you will need to delete this method from your implementation.long getLastModified(String name);was added to the interface, you will need to implement this method:- In case your previous method always returned
false, simply return0L. - Otherwise, you need to return the last modified timestamp in milliseconds. For example, if you'd use the File API, that would be
File::lastModified().
- In case your previous method always returned