Title: RE: [Templates] TT in callback

> -----Original Message-----
> I'm not sure I'm following, but the difference between
> INCLUDE and PROCESS is that INCLUDE prevents the specific
> side-effect of changing data in the stash and is therefore
> slower.  If you don't need to prevent that side-effect, then
> INCLUDE is the wrong thing to use.

I don't always know the complete contents of the stash and what it is being used for and therefore when I need to use INCLUDE.  As the safe option is to use INCLUDE I use it.  I only use PROCESS where I want my templates to stomp over the content of the stash (but then I do know the difference)

In our environment we have a number of people all working on templates independently.

I cannot keep track of all the variables in use and therefore when I am likely to cause unexpected behaviour just because I happened to pick the same variable name as someone else.  In my world INCLUDE works perfectly.  I understand the issue of the performance hit in localising the stash.  I would be happy if there was a way to turn off the behaviour of stash localisation so that we can meet your performance requirements.  I presume in TT3 the way to implement this is with a grammar change that makes INCLUDE do the same as PROCESS and PERRIN_INCLUDE do the same as INCLUDE.

I still think that changing the default behaviour will cause untold mayhem for the vast number of people who have been using INCLUDE in the past.  Most of what we have here, many thousands of templates, would all have to be checked if this behaviour changes.

All of that said, I understand the difference and will simply switch the behaviour in the opposite way to that described above if the default changes.  I just think that unless there is a very good reason things should work in TT3 as they do in TT2 for most people.

We are after all talking about performance tuning here which will probably only be an issue to people running really, really big sites.

My 1p.

S

Reply via email to