Hello, On 2/28/2016 6:30 PM, Thomas Moschny wrote: > Hello, > > 2016-02-27 15:25 GMT+01:00 Christian Boos <[email protected]>: >> Also, we would have to explain what still works and what no >> longer works, as 100% backward compatibility is not possible >> (ITemplateStreamFilter will no longer be supported). > > maybe I missed that part if it was already explained: Will there be > some sort of replacement for the ITemplateStreamFilter mechanism, i.e. > will plugins have a way of modifiying existing pages? >
You're right, I wasn't that clear yet about the alternative. I think that the best way to modify existing pages would be to delegate this to the client, using JavaScript. The advantage of this approach is that it's fully backward-compatible, i.e. it would work for Trac < 1.3 as well. See https://trac.edgewall.org/wiki/TracDev/PortingFromGenshiToJinja#ReplacingITemplateStreamFilter for details. Yes, this will make Trac increasingly dependent on having JavaScript enabled, but it is a trend I want to encourage anyway, as it facilitates the development of new features. In the past, for every bit of functionality added by JavaScript, we added a fallback method that would also make it work *without* JavaScript. But in recent years, we're getting away from that approach, for example the batch ticket modification feature is not available without JavaScript. I'm also willing to evaluate the "performance killer" part of my argument against supporting ITemplateStreamFilter, maybe it's not so terrible after all, and maybe I can come up with a way to support ITemplateStreamFilter even for the pages generated by Jinja2. But at best that's going to be an interim solution for the "grace" period during which we would support both engines, so the earlier you consider migrating, the better. Probably there are issues I don't see yet that will require us to add more extension mechanisms. -- Christian -- You received this message because you are subscribed to the Google Groups "Trac Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/trac-dev. For more options, visit https://groups.google.com/d/optout.
