Files
WoWee/tests
Kelsi 1064b96f7e fix(framexml): every file's generated Lua now compiles
Asked Lua itself whether the output compiles, one real file at a time, instead
of only checking its shape against cases I had thought of. That found two faults
the unit tests could not have, and both lose a whole file rather than degrading.

An empty function attribute — <OnMouseWheel function=""/> — passed the
present-or-not check and emitted SetScript("OnMouseWheel", ), which is a syntax
error. Six files carried one.

And every widget was declared as a local. Lua allows 200 per function, and a
large file declares far more: FriendsFrame and InterfaceOptionsPanels both went
over, and the chunk simply refuses to compile. Temporaries now live in one
table, so there is a single local however many widgets a file declares.

140 of 140 FrameXML files now produce Lua that compiles, up from 132 before the
first of these and considerably fewer before the second. The checker is kept as
a tool, because the question it asks is worth being able to ask again.
2026-08-01 13:23:38 -07:00
..
2026-08-01 11:54:43 -07:00