Wowpedia

We have moved to Warcraft Wiki. Click here for information and the new URL.

READ MORE

Wowpedia
(→‎Done but not yet released: Virtual objects will now create Lua global variables like they do in WoW.)
mNo edit summary
(16 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<small>[[WoWBench]] &raquo; To do</small>{{tocright}}
+
{{tocright}}
 
{{spc}}
 
 
Feel free to add to the wish list or bug list. Please don't go poking around in the version history section unless you're a contributor to the project though (or otherwise ''know'' what you're doing).
 
Feel free to add to the wish list or bug list. Please don't go poking around in the version history section unless you're a contributor to the project though (or otherwise ''know'' what you're doing).
{{spc}}
 
 
 
* Note that a missing API is '''not''' a bug. WoWBench is simply not finished! (And we do welcome any and all WoW AddOn developers to help out!)
 
* Note that a missing API is '''not''' a bug. WoWBench is simply not finished! (And we do welcome any and all WoW AddOn developers to help out!)
   
Line 12: Line 8:
   
   
== To do / wish list == <div style="margin: 1em 0em 3em 2%;">
+
== To do / wish list ==
  +
* <big>'''Make WoWBench WoW 2.0 compatible!'''</big>
 
 
* For the terminally bored: Run under [http://luacheia.lua-users.org/ LuaCheia] (or perhaps rather, [http://luaforge.net/projects/iup/ IUP]) and actually display frames on screen (possibly with a VERY simplistic unit and object view in the background -- think "blocks" here; not at all 3D, just to get things to click on) --[[User:Mikk|Mikk]] 19:48, 14 June 2006 (EDT)
 
* For the terminally bored: Run under [http://luacheia.lua-users.org/ LuaCheia] (or perhaps rather, [http://luaforge.net/projects/iup/ IUP]) and actually display frames on screen (possibly with a VERY simplistic unit and object view in the background -- think "blocks" here; not at all 3D, just to get things to click on) --[[User:Mikk|Mikk]] 19:48, 14 June 2006 (EDT)
 
{{spc}}
 
 
* Save addon variables according to .toc (But do we really want to dump it in the live directory? A local set perhaps?) --[[User:Mikk|Mikk]] 19:48, 14 June 2006 (EDT)
 
* Save addon variables according to .toc (But do we really want to dump it in the live directory? A local set perhaps?) --[[User:Mikk|Mikk]] 19:48, 14 June 2006 (EDT)
 
{{spc}}
 
 
* '''Aliases in commandline''' (something like "alias l look $1") --[[User:Mikk|Mikk]] 19:48, 14 June 2006 (EDT)
 
* '''Aliases in commandline''' (something like "alias l look $1") --[[User:Mikk|Mikk]] 19:48, 14 June 2006 (EDT)
 
{{spc}}
 
 
* '''Implement lots more APIs :-)''' --[[User:Mikk|Mikk]] 19:48, 14 June 2006 (EDT)
 
* '''Implement lots more APIs :-)''' --[[User:Mikk|Mikk]] 19:48, 14 June 2006 (EDT)
 
{{spc}}
 
 
* '''Implement saving of SavedVariables.''' (Might want to make SavedVariables path configurable separately and [[WoWBench/Installing|instruct people]] to make a copy of their WTF and point to that instead.) --[[User:Mikk|Mikk]] 16:06, 16 June 2006 (EDT)
 
* '''Implement saving of SavedVariables.''' (Might want to make SavedVariables path configurable separately and [[WoWBench/Installing|instruct people]] to make a copy of their WTF and point to that instead.) --[[User:Mikk|Mikk]] 16:06, 16 June 2006 (EDT)
 
{{spc}}
 
 
* Implement a very bloaty item scanner to run on a select couple of items in-game and get all tooltip info / everything else that comes out of APIs, and save to a table to use in WoWBench for item testing purposes. Using an existing ItemDB probably won't provide enough info. --[[User:Mikk|Mikk]] 05:59, 31 July 2006 (EDT)
 
* Implement a very bloaty item scanner to run on a select couple of items in-game and get all tooltip info / everything else that comes out of APIs, and save to a table to use in WoWBench for item testing purposes. Using an existing ItemDB probably won't provide enough info. --[[User:Mikk|Mikk]] 05:59, 31 July 2006 (EDT)
 
{{spc}}
 
 
* '''"WoWBench -r"''' to simulate a reload rather than a login. (No, can't do this as a commandline command, and there's no point to do it either. The Lua environment in WoW does a full restart on reload, and all we have is Lua.) --[[User:Mikk|Mikk]] 20:29, 19 June 2006 (EDT)
 
* '''"WoWBench -r"''' to simulate a reload rather than a login. (No, can't do this as a commandline command, and there's no point to do it either. The Lua environment in WoW does a full restart on reload, and all we have is Lua.) --[[User:Mikk|Mikk]] 20:29, 19 June 2006 (EDT)
  +
* Luac still barfs on UTF-8 lead bytes, which only means some console spam and a little performance loss. Might be nice if we could fix that. --[[User:Mikk|Mikk]] 10:45, 31 July 2006 (EDT)
   
  +
== API wish list ==
{{spc}}
 
* Find a Lua parser that understands '''Unicode source files'''. Unfortunately, Blizzard's does, and some localized addons use unicode in their localization files. Note that it's not just a matter of the translations going wrong; the AddOn refuses to load when the Lua parser encounters the Unicode lead bytes (FF FE). --[[User:Mikk|Mikk]] 19:48, 24 June 2006 (EDT)
 
** Optionally: Test for Unicode lead bytes before dofile() and, if encountered, load the file into a string, cut out the 2 first bytes, and compile the string as a chunk. A bit ugly, and will cause problems with .luac generation. Maybe they can be worked around. --[[User:Mikk|Mikk]] 19:48, 24 June 2006 (EDT)
 
 
 
 
 
</div>
 
 
== API wish list == <div style="margin: 1em 0em 3em 2%;">
 
 
 
Want something but can't fix it yourself? Add it here, or sign an existing entry if it's already here.
 
Want something but can't fix it yourself? Add it here, or sign an existing entry if it's already here.
   
 
Looking for something to do? Pick the ones with the most signatures!
 
Looking for something to do? Pick the ones with the most signatures!
   
  +
== Reported bugs ==
* bool UnitIsPartyLeader("unit") implementation --[[User:Tarog|Tarog]] 04:40, 16 June 2006 (EDT)
 
 
 
</div>
 
== Reported bugs == <div style="margin: 1em 0em 3em 2%;">
 
 
 
* Blizzard's [[API CreateFrame]] will accept e.g. "frame". WoWBench's will only accept e.g. "Frame". --[[User:Mikk|Mikk]] 08:34, 15 June 2006 (EDT)
 
* Blizzard's [[API CreateFrame]] will accept e.g. "frame". WoWBench's will only accept e.g. "Frame". --[[User:Mikk|Mikk]] 08:34, 15 June 2006 (EDT)
  +
* If there are errors in an XML file the first time the addon is loaded (or on "-f"), they will not be included in the dependency list. It will not be re-scanned until the next "-f". &nbsp; --[[User:Mikk|<span style="border-bottom: 1px dotted; cursor: help;" title="Mikk is a WoWWiki Admin">Mikk</span>]] <small>([[User talk:Mikk|T]])</small> 12:32, 29 September 2006 (EDT)
   
  +
=== Portability bugs ===
 
 
 
=== Portability bugs === <div style="margin: 1em 0em 1em 2%;">
 
 
''(Anything that does '''not''' happen under Windows)''
 
''(Anything that does '''not''' happen under Windows)''
   
Line 66: Line 34:
 
:: Can you still get this to happen in the latest version from SVN? --[[User:Mikk|Mikk]] 23:30, 30 June 2006 (EDT)
 
:: Can you still get this to happen in the latest version from SVN? --[[User:Mikk|Mikk]] 23:30, 30 June 2006 (EDT)
   
 
== Done but not yet released ==
 
These fixes/changes have been done in the source code, but have not yet been released as a complete package. You can get them via the sf.net subversion database, either with a [http://subversion.tigris.org/ SubVersion client] such as [http://tortoisesvn.sourceforge.net/downloads TortoiseSVN], or by manually downloading files via their [http://svn.sourceforge.net/viewcvs.cgi/wowbench/ web-based repository access]. (More at [[WoWBench/Contributing]].)
   
  +
* Implemented a dud [[API LoadAddOn|LoadAddOn]]() - needed if player has enabled Blizzard Combat Text. &nbsp; --[[User:Mikk|Mikk]] <small>([[User talk:Mikk|T]])</small> 12:30, 1 September 2006 (EDT)
  +
* Fixed the newly introduced "EVENT" debugging, which was dereferencing "this" rather than "self". Would usually do the right thing, but could cause errors with some addons. &nbsp; --[[User:Mikk|Mikk]] <small>([[User talk:Mikk|T]])</small> 12:30, 1 September 2006 (EDT)
  +
* XML parser will now also accept single-quoted argument quoting. &nbsp; --[[User:Mikk|<span style="border-bottom: 1px dotted; cursor: help;" title="Mikk is a WoWWiki Admin">Mikk</span>]] <small>([[User talk:Mikk|T]])</small> 12:33, 29 September 2006 (EDT)
  +
* SendAddonMessage() will now deliver messages to the sender also. &nbsp; --[[User:Mikk|<span style="border-bottom: 1px dotted; cursor: help;" title="Mikk is a WoWWiki Admin">Mikk</span>]] <small>([[User talk:Mikk|T]])</small> 14:59, 12 October 2006 (EDT)
   
 
== Version History 1.12 ==
 
Unless otherwise noted, each release adds several new or improved API implementations. It's the whole purpose of WoWBench!
   
  +
=== v1.12.0.a2 ===
</div></div>
 
  +
''Released Aug 27 2006''
 
== Done but not yet released == <div style="margin: 1em 0em 3em 2%;">
 
These fixes/changes have been done in the source code, but have not yet been released as a complete package. You can get them via the sf.net subversion database, either with a [http://subversion.tigris.org/ SubVersion client] such as [http://tortoisesvn.sourceforge.net/downloads TortoiseSVN], or by manually downloading files via their [http://svn.sourceforge.net/viewcvs.cgi/wowbench/ web-based repository access]. (More at [[WoWBench/Contributing]].)
 
   
  +
* Includes release 1.12 [[FrameXML]]
  +
* (Re-)implemented "say" and "whisper" console commands that somehow disappeared some time during early alpha.
  +
* The player can now target units properly via TargetByName(), "/target" as well as clicking with the mouse. The Unit___() functions accept "target" as a unitId.
  +
* ChatFrames will now actually register for reception of e.g. CHAT_MSG_SAY, _WHISPER, etc. GetChatWindowMessage() was broken since 1.11.0.a4.
  +
* New "EVENT" debugging category. '''Hint:''' Use e.g. <tt>WOWB_DEBUGCAT.EVENT=2</tt> to enable only event debugging without using the "-d" switch (which turns on everything according to config.lua).
  +
* Clicking/mousing over players will now work with FrameXML-lite ("-q")
 
* Wishlist: bool UnitIsPartyLeader("unit") implementation --[[User:Tarog|Tarog]] 04:40, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 15:32, 27 August 2006 (EDT)
 
* SendAddonMessage() no longer delivers messages to the player that sent them. --[[User:Mikk|Mikk]] 04:08, 30 July 2006 (EDT)
 
* SendAddonMessage() no longer delivers messages to the player that sent them. --[[User:Mikk|Mikk]] 04:08, 30 July 2006 (EDT)
 
 
* Virtual objects will now create Lua global variables like they do in WoW. --[[User:Mikk|Mikk]] 06:05, 31 July 2006 (EDT)
 
* Virtual objects will now create Lua global variables like they do in WoW. --[[User:Mikk|Mikk]] 06:05, 31 July 2006 (EDT)
  +
* dofile() will now detect and strip UTF-8 lead bytes before the Lua parser gets to see them (and bail out). --[[User:Mikk|Mikk]] 10:45, 31 July 2006 (EDT)
  +
* fixed the dofile() fix. it'd cause the debugger to bug. oops. --[[User:Mikk|Mikk]] 05:07, 2 August 2006 (EDT)
  +
* CreateFrame() with parent=nil while inheriting something would cause crashes in WOWB_ParseXML_InheritObj. Fixed. --[[User:Mikk|Mikk]] 05:17, 2 August 2006 (EDT)
   
  +
==== Portability bugs ====
</div>
 
  +
* Will now check for "wow.exe" as well as "WoW.exe", which matters on case sensitive filesystems.
 
== Version History 1.12 ==
 
 
Unless otherwise noted, each release adds several new or improved API implementations. It's the whole purpose of WoWBench!
 
 
=== v1.12.0.a1 === <div style="margin: 0em 0em 1em 2%;">
 
   
  +
=== v1.12.0.a1 ===
 
* '''Now comes with Win32 Lua binaries and complete FrameXML in the package. Also a standalone "wow" directory with a rudimentary WTF directory.''' This directory is used by default unless config.lua is modified to point at your existing WoW directory.
 
* '''Now comes with Win32 Lua binaries and complete FrameXML in the package. Also a standalone "wow" directory with a rudimentary WTF directory.''' This directory is used by default unless config.lua is modified to point at your existing WoW directory.
 
 
* The only new API from 1.11.0.a4 is [[API SendAddonMessage|SendAddonMessage]].
 
* The only new API from 1.11.0.a4 is [[API SendAddonMessage|SendAddonMessage]].
 
 
</div>
 
   
 
== Version History 1.11 ==
 
== Version History 1.11 ==
 
 
Unless otherwise noted, each release adds several new or improved API implementations. It's the whole purpose of WoWBench!
 
Unless otherwise noted, each release adds several new or improved API implementations. It's the whole purpose of WoWBench!
   
  +
=== v1.11.0.a4 ===
 
=== v1.11.0.a4 === <div style="margin: 0em 0em 1em 2%;">
 
 
 
* '''Additional .txt command files can now be given on the command line!''' Very useful for testing repetitions of a sequence of events. --[[User:Mikk|Mikk]] 22:25, 2 July 2006 (EDT)
 
* '''Additional .txt command files can now be given on the command line!''' Very useful for testing repetitions of a sequence of events. --[[User:Mikk|Mikk]] 22:25, 2 July 2006 (EDT)
 
 
* '''Implement "FrameXML-lite" which loads in ~2 seconds instead of ~9.''' The "-q" commandline switch will now use FrameXML-lite and otherwise act like a full execution. The new "-x" (syntax check only) switch will act like "-q" used to. &nbsp; --[[User:Mikk|Mikk]] 05:10, 28 July 2006 (EDT)
 
* '''Implement "FrameXML-lite" which loads in ~2 seconds instead of ~9.''' The "-q" commandline switch will now use FrameXML-lite and otherwise act like a full execution. The new "-x" (syntax check only) switch will act like "-q" used to. &nbsp; --[[User:Mikk|Mikk]] 05:10, 28 July 2006 (EDT)
 
 
 
* Removed stray WOWB_Debugger() call left in SendChatMessage() in the 1.11.0.a3 release. Oops! &nbsp; [&radic;] --[[User:Mikk|Mikk]] 01:24, 2 July 2006 (EDT)
 
* Removed stray WOWB_Debugger() call left in SendChatMessage() in the 1.11.0.a3 release. Oops! &nbsp; [&radic;] --[[User:Mikk|Mikk]] 01:24, 2 July 2006 (EDT)
 
 
* Blank lines at prompt will now cause a minimum delay of _MINDELAY (default 0.2s) for scripting purposes. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 21:41, 2 July 2006 (EDT)
 
* Blank lines at prompt will now cause a minimum delay of _MINDELAY (default 0.2s) for scripting purposes. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 21:41, 2 July 2006 (EDT)
 
 
* Ctrl-C while the debugger is running, will cause the debugger to bug ''"BUG IN DEBUGGER: cmdline.lua:48: interrupted!"'' --[[User:Kaso|Kaso]] 13:25, 15 June 2006 (EDT) &nbsp; [&radic;] Debugger will now simply exit. --[[User:Mikk|Mikk]] 03:27, 28 July 2006 (EDT)
 
* Ctrl-C while the debugger is running, will cause the debugger to bug ''"BUG IN DEBUGGER: cmdline.lua:48: interrupted!"'' --[[User:Kaso|Kaso]] 13:25, 15 June 2006 (EDT) &nbsp; [&radic;] Debugger will now simply exit. --[[User:Mikk|Mikk]] 03:27, 28 July 2006 (EDT)
 
 
* Import new CVars and defaults from [[Config.wtf defaults]]. --[[User:Mikk|Mikk]] 05:21, 28 July 2006 (EDT)
 
* Import new CVars and defaults from [[Config.wtf defaults]]. --[[User:Mikk|Mikk]] 05:21, 28 July 2006 (EDT)
   
  +
=== v1.11.0.a3 ===
 
</div>
 
=== v1.11.0.a3 === <div style="margin: 0em 0em 1em 2%;">
 
 
 
* '''WoWBench now supports logging in multiple, separate users, and allows them to communicate. Perfect for developing and debugging addons with inter-addon communication!''' &nbsp; [&radic;] --[[User:Mikk|Mikk]] 16:00, 1 July 2006 (EDT)
 
* '''WoWBench now supports logging in multiple, separate users, and allows them to communicate. Perfect for developing and debugging addons with inter-addon communication!''' &nbsp; [&radic;] --[[User:Mikk|Mikk]] 16:00, 1 July 2006 (EDT)
 
* Update gender enumeration to match 1.11 (1=unknown, 2=male, 3=female) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 10:50, 25 June 2006 (EDT)
 
 
* Update gender enumration to match 1.11 (1=unknown, 2=male, 3=female) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 10:50, 25 June 2006 (EDT)
 
 
 
* Get account and realm name from Config.wtf by default (if not specified in config.lua) &nbsp; (note that account name is not saved unless that box is checked in the login screen) --[[User:Mikk|Mikk]] 12:32, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 13:37, 25 June 2006 (EDT)
 
* Get account and realm name from Config.wtf by default (if not specified in config.lua) &nbsp; (note that account name is not saved unless that box is checked in the login screen) --[[User:Mikk|Mikk]] 12:32, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 13:37, 25 June 2006 (EDT)
 
 
* Include installation instructions in download. Whoops. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 08:26, 26 June 2006 (EDT)
 
* Include installation instructions in download. Whoops. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 08:26, 26 June 2006 (EDT)
 
 
* A '''DPC''' (deferred procedure call) mechanism is needed. Some APIs will recursively generate events before the calling function has returned. This should happen after AddOn code has finished running (right before WoWBench displays the next prompt). --[[User:Mikk|Mikk]] 06:43, 20 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 12:22, 26 June 2006 (EDT)
 
* A '''DPC''' (deferred procedure call) mechanism is needed. Some APIs will recursively generate events before the calling function has returned. This should happen after AddOn code has finished running (right before WoWBench displays the next prompt). --[[User:Mikk|Mikk]] 06:43, 20 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 12:22, 26 June 2006 (EDT)
 
** <tt>WOWB_QueueDPC(WOWB_FireEvent, "SOMEEVENT", more, args, here);</tt>
 
** <tt>WOWB_QueueDPC(WOWB_FireEvent, "SOMEEVENT", more, args, here);</tt>
 
 
* Doesn't create "tmp" dir if it doesn't exist. This leads to all sorts of horrible bugs. Just create the dir. --[[User:Mikk|Mikk]] 08:46, 15 June 2006 (EDT) &nbsp; [&radic;] --Endx7 15:09, 27 June 2006 (EDT)
 
* Doesn't create "tmp" dir if it doesn't exist. This leads to all sorts of horrible bugs. Just create the dir. --[[User:Mikk|Mikk]] 08:46, 15 June 2006 (EDT) &nbsp; [&radic;] --Endx7 15:09, 27 June 2006 (EDT)
 
 
* Precompilation of XML->Lua->Compiled Lua does not work properly under non-windows, since the file age checking uses the cmd.exe "dir" command. Add in code to use "ls" if necessary. --[[User:Mikk|Mikk]] 20:38, 15 June 2006 (EDT) &nbsp; [&radic;] --Endx7 15:09, 27 June 2006 (EDT)
 
* Precompilation of XML->Lua->Compiled Lua does not work properly under non-windows, since the file age checking uses the cmd.exe "dir" command. Add in code to use "ls" if necessary. --[[User:Mikk|Mikk]] 20:38, 15 June 2006 (EDT) &nbsp; [&radic;] --Endx7 15:09, 27 June 2006 (EDT)
 
 
* Will now accept UTF-8 encoded TOC files (by simply ignoring the UTF-8 lead bytes) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 15:30, 27 June 2006 (EDT)
 
* Will now accept UTF-8 encoded TOC files (by simply ignoring the UTF-8 lead bytes) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 15:30, 27 June 2006 (EDT)
 
 
* [[API CreateFrame]], [[API Frame CreateFontString]] and [[API Frame CreateTexture]] now accept the new inheritance parameter introduced in 1.11. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 23:28, 30 June 2006 (EDT)
 
* [[API CreateFrame]], [[API Frame CreateFontString]] and [[API Frame CreateTexture]] now accept the new inheritance parameter introduced in 1.11. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 23:28, 30 June 2006 (EDT)
 
 
* Added more &lt;On....&gt; handlers. &nbsp; [&radic;] --[[User:Lego|Lego]]
 
* Added more &lt;On....&gt; handlers. &nbsp; [&radic;] --[[User:Lego|Lego]]
 
 
* [[API CheckButton SetChecked]]() now checks the button as per the 1.11 change. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 23:28, 30 June 2006 (EDT)
 
* [[API CheckButton SetChecked]]() now checks the button as per the 1.11 change. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 23:28, 30 June 2006 (EDT)
 
 
* _EDITDUMPONERROR (config.lua) works again. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 23:28, 30 June 2006 (EDT)
 
* _EDITDUMPONERROR (config.lua) works again. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 23:28, 30 June 2006 (EDT)
 
 
* _TOCFILES[] defined in config.lua is now ignored. You can remove it, but having it around does no harm either. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 23:28, 30 June 2006 (EDT)
 
* _TOCFILES[] defined in config.lua is now ignored. You can remove it, but having it around does no harm either. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 23:28, 30 June 2006 (EDT)
   
 
==== Portability bugs ====
 
==== Portability bugs ====
 
 
* Will now look in (wowdir)/Interface/AddOns rather than (wowdir)/interface/addons for addons. Oops. &nbsp; [&radic;] --[[User:Lego|Lego]]
 
* Will now look in (wowdir)/Interface/AddOns rather than (wowdir)/interface/addons for addons. Oops. &nbsp; [&radic;] --[[User:Lego|Lego]]
   
  +
=== v1.11.0.a2 ===
 
</div>
 
=== v1.11.0.a2 === <div style="margin: 0em 0em 1em 2%;">
 
 
 
* '''Remake of Widget API to match Iriel's 1.11 [[Widget API]] page.''' &nbsp; [&radic;] --[[User:Mikk|Mikk]] 08:49, 25 June 2006 (EDT)
 
* '''Remake of Widget API to match Iriel's 1.11 [[Widget API]] page.''' &nbsp; [&radic;] --[[User:Mikk|Mikk]] 08:49, 25 June 2006 (EDT)
 
 
* More APIs added (as always).
 
* More APIs added (as always).
 
 
* Add <tt>sqrt = math.sqrt</tt> alias --[[User:Tarog|Tarog]] 04:37, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 11:59, 16 June 2006 (EDT)
 
* Add <tt>sqrt = math.sqrt</tt> alias --[[User:Tarog|Tarog]] 04:37, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 11:59, 16 June 2006 (EDT)
 
 
* Organize lua.api --[[User:Tarog|Tarog]] 17:48, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Tarog|Tarog]] 20:09, 17 June 2006 (EDT)
 
* Organize lua.api --[[User:Tarog|Tarog]] 17:48, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Tarog|Tarog]] 20:09, 17 June 2006 (EDT)
 
 
* Widgets.lua:813 WBClass_MessageFrame needs to inherit WBClass_FontStringBase, not just FontStringBase. --[[User:Tarog|Tarog]] 04:13, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Tarog|Tarog]] 20:09, 17 June 2006 (EDT)
 
* Widgets.lua:813 WBClass_MessageFrame needs to inherit WBClass_FontStringBase, not just FontStringBase. --[[User:Tarog|Tarog]] 04:13, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Tarog|Tarog]] 20:09, 17 June 2006 (EDT)
 
 
* [[WoWBench/Progress]] page using source tags: [DUD], [HALF], [FULL] to indicate whether a function is just a dummy, or whether it sort of does something useful, or if it's emulating the actual API "well enough". --[[User:Mikk|Mikk]] 12:59, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 07:11, 18 June 2006 (EDT)
 
* [[WoWBench/Progress]] page using source tags: [DUD], [HALF], [FULL] to indicate whether a function is just a dummy, or whether it sort of does something useful, or if it's emulating the actual API "well enough". --[[User:Mikk|Mikk]] 12:59, 16 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 07:11, 18 June 2006 (EDT)
 
 
* Add deg &rarr; rad conversion wrappers for trig functions. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 07:11, 18 June 2006 (EDT)
 
* Add deg &rarr; rad conversion wrappers for trig functions. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 07:11, 18 June 2006 (EDT)
   
  +
=== v1.11.0.a1 ===
 
</div>
 
=== v1.11.0.a1 === <div style="margin: 0em 0em 1em 2%;">
 
 
 
* Add XML elements: ButtonText, DisabledFont, HighlightFont, NormalFont
 
* Add XML elements: ButtonText, DisabledFont, HighlightFont, NormalFont
 
 
* Add [[API HasKey]]() - dud, always returns false
 
* Add [[API HasKey]]() - dud, always returns false
 
* Add [[API CanShowResetInstances]]() - dud, always returns false
 
* Add [[API CanShowResetInstances]]() - dud, always returns false
Line 178: Line 114:
 
* Add [[API CheckReadyCheckTime]]() - dud, does absolutely nothing
 
* Add [[API CheckReadyCheckTime]]() - dud, does absolutely nothing
   
 
</div>
 
 
== Version History 1.10 ==
 
== Version History 1.10 ==
  +
=== v1.10.2.a3 ===
 
=== v1.10.2.a3 === <div style="margin: 0em 0em 1em 2%;">
 
 
 
* Implemented [[API GetCVarDefault]] using [[Config.wtf defaults]]. --[[User:Mikk|Mikk]] 15:14, 15 June 2006 (EDT)
 
* Implemented [[API GetCVarDefault]] using [[Config.wtf defaults]]. --[[User:Mikk|Mikk]] 15:14, 15 June 2006 (EDT)
 
 
* Fixed: [[API UnitHealth]] and [[API UnitHealthMax]] were returning nil as of the invention of world.xml to configure player objects. --[[User:Mikk|Mikk]] 11:41, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 11:41, 15 June 2006 (EDT)
 
* Fixed: [[API UnitHealth]] and [[API UnitHealthMax]] were returning nil as of the invention of world.xml to configure player objects. --[[User:Mikk|Mikk]] 11:41, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 11:41, 15 June 2006 (EDT)
 
 
* Fixed: WoWBench assumes that the lua compiler is called "luac50". It should be configurable. --[[User:Mikk|Mikk]] 08:45, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 15:14, 15 June 2006 (EDT)
 
* Fixed: WoWBench assumes that the lua compiler is called "luac50". It should be configurable. --[[User:Mikk|Mikk]] 08:45, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 15:14, 15 June 2006 (EDT)
 
 
* Fixed: If some key values were missing in Config.wtf, it would cause problems in FrameXML since [[API GetCVarDefault]] was not implemented. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 15:14, 15 June 2006 (EDT)
 
* Fixed: If some key values were missing in Config.wtf, it would cause problems in FrameXML since [[API GetCVarDefault]] was not implemented. &nbsp; [&radic;] --[[User:Mikk|Mikk]] 15:14, 15 June 2006 (EDT)
   
  +
=== v1.10.2.a2 ===
 
</div>
 
=== v1.10.2.a2 === <div style="margin: 0em 0em 1em 2%;">
 
 
 
* Fixed: It'd choke on loading world.xml:"Murloc Warrior" because of a broken bugfix in .a1. My bad. --[[User:Mikk|Mikk]] 11:00, 15 June 2006 (EDT)
 
* Fixed: It'd choke on loading world.xml:"Murloc Warrior" because of a broken bugfix in .a1. My bad. --[[User:Mikk|Mikk]] 11:00, 15 June 2006 (EDT)
 
 
* Fixed: Version actually reports as "1.10.2.something" now, not "v0.01" =) --[[User:Mikk|Mikk]] 11:00, 15 June 2006 (EDT)
 
* Fixed: Version actually reports as "1.10.2.something" now, not "v0.01" =) --[[User:Mikk|Mikk]] 11:00, 15 June 2006 (EDT)
   
  +
=== v1.10.2.a1 ===
 
</div>
 
=== v1.10.2.a1 === <div style="margin: 0em 0em 1em 2%;">
 
 
 
* Fixed: WoWBench puts virtual (correctly named) objects in global scope. It can't do that. Conflicts with some mods. --[[User:Mikk|Mikk]] 09:18, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 09:27, 15 June 2006 (EDT)
 
* Fixed: WoWBench puts virtual (correctly named) objects in global scope. It can't do that. Conflicts with some mods. --[[User:Mikk|Mikk]] 09:18, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 09:27, 15 June 2006 (EDT)
   
 
==== Portability bugs ====
 
==== Portability bugs ====
 
* Fixed: Errors out if it can't open "tmp/dir.txt" --[[User:Mikk|Mikk]] 08:46, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 08:48, 15 June 2006 (EDT)
 
* Fixed: Errors out if it can't open "tmp/dir.txt" --[[User:Mikk|Mikk]] 08:46, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 08:48, 15 June 2006 (EDT)
 
 
* Fixed: Need to fix backslashes in TOC files. --[[User:Mikk|Mikk]] 08:48, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 08:48, 15 June 2006 (EDT)
 
* Fixed: Need to fix backslashes in TOC files. --[[User:Mikk|Mikk]] 08:48, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 08:48, 15 June 2006 (EDT)
 
 
* Fixed: GetCVar() attempts to open "WTF/config.wtf". Should be "WTF/'''C'''onfig.wtf". --[[User:Mikk|Mikk]] 09:38, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 09:38, 15 June 2006 (EDT)
 
* Fixed: GetCVar() attempts to open "WTF/config.wtf". Should be "WTF/'''C'''onfig.wtf". --[[User:Mikk|Mikk]] 09:38, 15 June 2006 (EDT) &nbsp; [&radic;] --[[User:Mikk|Mikk]] 09:38, 15 June 2006 (EDT)
 
 
</div>
 
   
 
[[Category:WoWBench|To do]]
 
[[Category:WoWBench|To do]]

Revision as of 19:30, 18 December 2008

Feel free to add to the wish list or bug list. Please don't go poking around in the version history section unless you're a contributor to the project though (or otherwise know what you're doing).

  • Note that a missing API is not a bug. WoWBench is simply not finished! (And we do welcome any and all WoW AddOn developers to help out!)
  • For anything more than one-liners, or if you're not sure what to do, swing by WoWBench/Talk!


To do / wish list

  • Make WoWBench WoW 2.0 compatible!
  • For the terminally bored: Run under LuaCheia (or perhaps rather, IUP) and actually display frames on screen (possibly with a VERY simplistic unit and object view in the background -- think "blocks" here; not at all 3D, just to get things to click on) --Mikk 19:48, 14 June 2006 (EDT)
  • Save addon variables according to .toc (But do we really want to dump it in the live directory? A local set perhaps?) --Mikk 19:48, 14 June 2006 (EDT)
  • Aliases in commandline (something like "alias l look $1") --Mikk 19:48, 14 June 2006 (EDT)
  • Implement lots more APIs :-) --Mikk 19:48, 14 June 2006 (EDT)
  • Implement saving of SavedVariables. (Might want to make SavedVariables path configurable separately and instruct people to make a copy of their WTF and point to that instead.) --Mikk 16:06, 16 June 2006 (EDT)
  • Implement a very bloaty item scanner to run on a select couple of items in-game and get all tooltip info / everything else that comes out of APIs, and save to a table to use in WoWBench for item testing purposes. Using an existing ItemDB probably won't provide enough info. --Mikk 05:59, 31 July 2006 (EDT)
  • "WoWBench -r" to simulate a reload rather than a login. (No, can't do this as a commandline command, and there's no point to do it either. The Lua environment in WoW does a full restart on reload, and all we have is Lua.) --Mikk 20:29, 19 June 2006 (EDT)
  • Luac still barfs on UTF-8 lead bytes, which only means some console spam and a little performance loss. Might be nice if we could fix that. --Mikk 10:45, 31 July 2006 (EDT)

API wish list

Want something but can't fix it yourself? Add it here, or sign an existing entry if it's already here.

Looking for something to do? Pick the ones with the most signatures!

Reported bugs

  • Blizzard's API CreateFrame will accept e.g. "frame". WoWBench's will only accept e.g. "Frame". --Mikk 08:34, 15 June 2006 (EDT)
  • If there are errors in an XML file the first time the addon is loaded (or on "-f"), they will not be included in the dependency list. It will not be re-scanned until the next "-f".   --Mikk (T) 12:32, 29 September 2006 (EDT)

Portability bugs

(Anything that does not happen under Windows)

  • Loading process has a habit of getting stuck when using cygwin. Was getting stuck when parsing XMLs and Processing WorldFrame.lua. After running it once in dos command line, it ran just fine within cygwin. --Tarog 17:06, 15 June 2006 (EDT)
Can you still get this to happen in the latest version from SVN? --Mikk 23:30, 30 June 2006 (EDT)

Done but not yet released

These fixes/changes have been done in the source code, but have not yet been released as a complete package. You can get them via the sf.net subversion database, either with a SubVersion client such as TortoiseSVN, or by manually downloading files via their web-based repository access. (More at WoWBench/Contributing.)

  • Implemented a dud LoadAddOn() - needed if player has enabled Blizzard Combat Text.   --Mikk (T) 12:30, 1 September 2006 (EDT)
  • Fixed the newly introduced "EVENT" debugging, which was dereferencing "this" rather than "self". Would usually do the right thing, but could cause errors with some addons.   --Mikk (T) 12:30, 1 September 2006 (EDT)
  • XML parser will now also accept single-quoted argument quoting.   --Mikk (T) 12:33, 29 September 2006 (EDT)
  • SendAddonMessage() will now deliver messages to the sender also.   --Mikk (T) 14:59, 12 October 2006 (EDT)

Version History 1.12

Unless otherwise noted, each release adds several new or improved API implementations. It's the whole purpose of WoWBench!

v1.12.0.a2

Released Aug 27 2006

  • Includes release 1.12 FrameXML
  • (Re-)implemented "say" and "whisper" console commands that somehow disappeared some time during early alpha.
  • The player can now target units properly via TargetByName(), "/target" as well as clicking with the mouse. The Unit___() functions accept "target" as a unitId.
  • ChatFrames will now actually register for reception of e.g. CHAT_MSG_SAY, _WHISPER, etc. GetChatWindowMessage() was broken since 1.11.0.a4.
  • New "EVENT" debugging category. Hint: Use e.g. WOWB_DEBUGCAT.EVENT=2 to enable only event debugging without using the "-d" switch (which turns on everything according to config.lua).
  • Clicking/mousing over players will now work with FrameXML-lite ("-q")
  • Wishlist: bool UnitIsPartyLeader("unit") implementation --Tarog 04:40, 16 June 2006 (EDT)   [√] --Mikk 15:32, 27 August 2006 (EDT)
  • SendAddonMessage() no longer delivers messages to the player that sent them. --Mikk 04:08, 30 July 2006 (EDT)
  • Virtual objects will now create Lua global variables like they do in WoW. --Mikk 06:05, 31 July 2006 (EDT)
  • dofile() will now detect and strip UTF-8 lead bytes before the Lua parser gets to see them (and bail out). --Mikk 10:45, 31 July 2006 (EDT)
  • fixed the dofile() fix. it'd cause the debugger to bug. oops. --Mikk 05:07, 2 August 2006 (EDT)
  • CreateFrame() with parent=nil while inheriting something would cause crashes in WOWB_ParseXML_InheritObj. Fixed. --Mikk 05:17, 2 August 2006 (EDT)

Portability bugs

  • Will now check for "wow.exe" as well as "WoW.exe", which matters on case sensitive filesystems.

v1.12.0.a1

  • Now comes with Win32 Lua binaries and complete FrameXML in the package. Also a standalone "wow" directory with a rudimentary WTF directory. This directory is used by default unless config.lua is modified to point at your existing WoW directory.
  • The only new API from 1.11.0.a4 is SendAddonMessage.

Version History 1.11

Unless otherwise noted, each release adds several new or improved API implementations. It's the whole purpose of WoWBench!

v1.11.0.a4

  • Additional .txt command files can now be given on the command line! Very useful for testing repetitions of a sequence of events. --Mikk 22:25, 2 July 2006 (EDT)
  • Implement "FrameXML-lite" which loads in ~2 seconds instead of ~9. The "-q" commandline switch will now use FrameXML-lite and otherwise act like a full execution. The new "-x" (syntax check only) switch will act like "-q" used to.   --Mikk 05:10, 28 July 2006 (EDT)
  • Removed stray WOWB_Debugger() call left in SendChatMessage() in the 1.11.0.a3 release. Oops!   [√] --Mikk 01:24, 2 July 2006 (EDT)
  • Blank lines at prompt will now cause a minimum delay of _MINDELAY (default 0.2s) for scripting purposes.   [√] --Mikk 21:41, 2 July 2006 (EDT)
  • Ctrl-C while the debugger is running, will cause the debugger to bug "BUG IN DEBUGGER: cmdline.lua:48: interrupted!" --Kaso 13:25, 15 June 2006 (EDT)   [√] Debugger will now simply exit. --Mikk 03:27, 28 July 2006 (EDT)
  • Import new CVars and defaults from Config.wtf defaults. --Mikk 05:21, 28 July 2006 (EDT)

v1.11.0.a3

  • WoWBench now supports logging in multiple, separate users, and allows them to communicate. Perfect for developing and debugging addons with inter-addon communication!   [√] --Mikk 16:00, 1 July 2006 (EDT)
  • Update gender enumeration to match 1.11 (1=unknown, 2=male, 3=female)   [√] --Mikk 10:50, 25 June 2006 (EDT)
  • Get account and realm name from Config.wtf by default (if not specified in config.lua)   (note that account name is not saved unless that box is checked in the login screen) --Mikk 12:32, 15 June 2006 (EDT)   [√] --Mikk 13:37, 25 June 2006 (EDT)
  • Include installation instructions in download. Whoops.   [√] --Mikk 08:26, 26 June 2006 (EDT)
  • A DPC (deferred procedure call) mechanism is needed. Some APIs will recursively generate events before the calling function has returned. This should happen after AddOn code has finished running (right before WoWBench displays the next prompt). --Mikk 06:43, 20 June 2006 (EDT)   [√] --Mikk 12:22, 26 June 2006 (EDT)
    • WOWB_QueueDPC(WOWB_FireEvent, "SOMEEVENT", more, args, here);
  • Doesn't create "tmp" dir if it doesn't exist. This leads to all sorts of horrible bugs. Just create the dir. --Mikk 08:46, 15 June 2006 (EDT)   [√] --Endx7 15:09, 27 June 2006 (EDT)
  • Precompilation of XML->Lua->Compiled Lua does not work properly under non-windows, since the file age checking uses the cmd.exe "dir" command. Add in code to use "ls" if necessary. --Mikk 20:38, 15 June 2006 (EDT)   [√] --Endx7 15:09, 27 June 2006 (EDT)
  • Will now accept UTF-8 encoded TOC files (by simply ignoring the UTF-8 lead bytes)   [√] --Mikk 15:30, 27 June 2006 (EDT)
  • API CreateFrame, API Frame CreateFontString and API Frame CreateTexture now accept the new inheritance parameter introduced in 1.11.   [√] --Mikk 23:28, 30 June 2006 (EDT)
  • Added more <On....> handlers.   [√] --Lego
  • API CheckButton SetChecked() now checks the button as per the 1.11 change.   [√] --Mikk 23:28, 30 June 2006 (EDT)
  • _EDITDUMPONERROR (config.lua) works again.   [√] --Mikk 23:28, 30 June 2006 (EDT)
  • _TOCFILES[] defined in config.lua is now ignored. You can remove it, but having it around does no harm either.   [√] --Mikk 23:28, 30 June 2006 (EDT)

Portability bugs

  • Will now look in (wowdir)/Interface/AddOns rather than (wowdir)/interface/addons for addons. Oops.   [√] --Lego

v1.11.0.a2

  • Remake of Widget API to match Iriel's 1.11 Widget API page.   [√] --Mikk 08:49, 25 June 2006 (EDT)
  • More APIs added (as always).
  • Add sqrt = math.sqrt alias --Tarog 04:37, 16 June 2006 (EDT)   [√] --Mikk 11:59, 16 June 2006 (EDT)
  • Organize lua.api --Tarog 17:48, 16 June 2006 (EDT)   [√] --Tarog 20:09, 17 June 2006 (EDT)
  • Widgets.lua:813 WBClass_MessageFrame needs to inherit WBClass_FontStringBase, not just FontStringBase. --Tarog 04:13, 16 June 2006 (EDT)   [√] --Tarog 20:09, 17 June 2006 (EDT)
  • WoWBench/Progress page using source tags: [DUD], [HALF], [FULL] to indicate whether a function is just a dummy, or whether it sort of does something useful, or if it's emulating the actual API "well enough". --Mikk 12:59, 16 June 2006 (EDT)   [√] --Mikk 07:11, 18 June 2006 (EDT)
  • Add deg → rad conversion wrappers for trig functions.   [√] --Mikk 07:11, 18 June 2006 (EDT)

v1.11.0.a1

  • Add XML elements: ButtonText, DisabledFont, HighlightFont, NormalFont
  • Add API HasKey() - dud, always returns false
  • Add API CanShowResetInstances() - dud, always returns false
  • Add API GetRaidTargetIndex() - dud, always returns 0
  • Add API CheckReadyCheckTime() - dud, does absolutely nothing

Version History 1.10

v1.10.2.a3

  • Implemented API GetCVarDefault using Config.wtf defaults. --Mikk 15:14, 15 June 2006 (EDT)
  • Fixed: API UnitHealth and API UnitHealthMax were returning nil as of the invention of world.xml to configure player objects. --Mikk 11:41, 15 June 2006 (EDT)   [√] --Mikk 11:41, 15 June 2006 (EDT)
  • Fixed: WoWBench assumes that the lua compiler is called "luac50". It should be configurable. --Mikk 08:45, 15 June 2006 (EDT)   [√] --Mikk 15:14, 15 June 2006 (EDT)
  • Fixed: If some key values were missing in Config.wtf, it would cause problems in FrameXML since API GetCVarDefault was not implemented.   [√] --Mikk 15:14, 15 June 2006 (EDT)

v1.10.2.a2

  • Fixed: It'd choke on loading world.xml:"Murloc Warrior" because of a broken bugfix in .a1. My bad. --Mikk 11:00, 15 June 2006 (EDT)
  • Fixed: Version actually reports as "1.10.2.something" now, not "v0.01" =) --Mikk 11:00, 15 June 2006 (EDT)

v1.10.2.a1

  • Fixed: WoWBench puts virtual (correctly named) objects in global scope. It can't do that. Conflicts with some mods. --Mikk 09:18, 15 June 2006 (EDT)   [√] --Mikk 09:27, 15 June 2006 (EDT)

Portability bugs

  • Fixed: Errors out if it can't open "tmp/dir.txt" --Mikk 08:46, 15 June 2006 (EDT)   [√] --Mikk 08:48, 15 June 2006 (EDT)
  • Fixed: Need to fix backslashes in TOC files. --Mikk 08:48, 15 June 2006 (EDT)   [√] --Mikk 08:48, 15 June 2006 (EDT)
  • Fixed: GetCVar() attempts to open "WTF/config.wtf". Should be "WTF/Config.wtf". --Mikk 09:38, 15 June 2006 (EDT)   [√] --Mikk 09:38, 15 June 2006 (EDT)