following a problem I had with rendering diffs between wiki pages, I
upgraded to r4612.
BUT: Now all installed Macros do not work anymore, as they are not
Error: Failed to load processor HelloWorld
No macro or processor named 'HelloWorld' found
They are installed in [project_env]/wiki-macros.
They worked until r4450.
I found out, that the macros have now to be redesigned and placed into
the plugin folder.
I tried that with the WikiInclude Macro. But I didn't get it to work,
since there was no easy
way to map the parameters of the execute and render_macro methods.
Has anybody a quick fix or
a pointer to where I can get a "mapping" between the old and the
is there a way to make the old macros work?
As you've noticed, macros must now be implemented as plugins.
Check out trac/wiki/macros.py. TitleIndexMacro is a good example.
Your "macro" plugin can use WikiMacroBase as a foundation.
Evolution: Taking care of those too stupid to take care of themselves.
thanks for the quick reply. I already looked at the source code, but
that didn't help me as much as needed.
The main problem is/was the mapping between the parameters.
It seems that the following mappings work:
execute:txt -> render_macro:args
execute:env -> render_macro:self.env
render_macro(0.10):req -> render_macro(0.11):formatter.req
At least, using these mappings, I got the WikiInclude Macro and the
Graphviz Plugin to work in our environment.
I hope these mappings are correct and they help other users facing this