Due to the way Umbraco caches the XSLT macro (once it is compiled), the cache is only expired if there is a change to the XSLT file itself. This doesn't apply to any included/imported XSLT files.
2 options are:
Touch/modify the 'parent' XSLT file - this can be a pain if you are re-using the imported XSLT across many macros.
Use the XSLTouch package - this will auto-touch any XSLT files that use the imported XSLT. (Warning it doesn't work on Medium Trust)
IMHO, it is not worth opening a workitem for this. The XSLT compiler/transform isn't aware of the includes/imports, treating it as 1 single XSLT file. Umbraco isn't aware when included/imported XSLT files are changed. (Which is the problem XSLTouch solves)
Also given the focus is gearing towards the Razor implementation - I doubt XSLT will be allocated any TLC in future. (Despite my best efforts) :-(
Changing an XSLT macro has no effect, old code is still used
Only when I restart the web server is the new XSLT code loaded and parsed.
For development I need to be able to 'just refresh' to see changes to my code, how can I enable this?
By the way, the XSLT macro I am changing is imported in another macro through xsl:import.
Hi Michiel,
Due to the way Umbraco caches the XSLT macro (once it is compiled), the cache is only expired if there is a change to the XSLT file itself. This doesn't apply to any included/imported XSLT files.
2 options are:
Cheers, Lee.
Thank you for this information! I'm going to install XLSTouch for development.
Do you think it makes sense to open a work item for this? Or is it not possible to expire the cache for imported macros?
IMHO, it is not worth opening a workitem for this. The XSLT compiler/transform isn't aware of the includes/imports, treating it as 1 single XSLT file. Umbraco isn't aware when included/imported XSLT files are changed. (Which is the problem XSLTouch solves)
Also given the focus is gearing towards the Razor implementation - I doubt XSLT will be allocated any TLC in future. (Despite my best efforts) :-(
is working on a reply...