ZAM's Minion, currently in open beta, is a new AddOn manager optimized for use with ESO. Install, update & manage AddOns... Learn more!
Download
(167 Kb)
Download
Updated: 06/01/14 05:50 AM
Pictures
File Info
Compatibility:
Live (1.0)
Updated:06/01/14 05:50 AM
Created:04/23/14 12:20 PM
Downloads:3,321
Favorites:60
MD5:
BugEater (formerly LibDebug)
Version: 1.0 - R10
by: thelegendaryof [More]
IMPORTANT! Since this is no longer a simple Library rather an full Standalone Addon with an API

This has been renamed to BugEater instead of LibDebug !!!


Please do no longer include a local copy of this Addon with your own rather use it as an Dependency to access it 's API!


What 's new in 1.0 - R10:

  • Renamed to BugEater instead of LibDebug

  • Finally catches Syntax Errors as well. Yay.

  • Avoid Error-Flood. Makes Errors Unique and stops them from spamming
    your Chat and Buffer. Enabled by Default (turn it off in Settings -> Debug Settings).

  • Updated for the new API-Version (100004)

  • Revamped UI. Look and feel as well as Features:
    Monospace Font - AnkaCoder, support for unlimited Textlength, proper Line-Width Calculation as in automatically
    splitting long lines (the native API doesn't do that), Scrollbar, Mousewheel, Scroll to Bottom, Copy all to Clipboard

  • Added Custom Filters. Supporting Lua-Style Regex-Patterns (more info).
    Use it to e.g. hide "Looted Sword 123" while still showing "Looted Axe".
    Or use it to hide only specific Errors from the Chat Window.

  • Added option to Suppress all Gui-Warnings
    Including the famous To many Anchors Processed
    (all of them are still shown in /error or /debug)

  • EditBuffer Component to get around native API-Limitations of TextBufferControl and EditControl.
    Known limitations for now: No CTRL+A and no way to select all lines at once with the Mouse
    (use the "COPY ALL TO CLIPBOARD" button instead)

  • Copy long Text over 1000 Characters to Clipboard (also found in: LibOrangUtils)

  • Renamed Debug-Suppression to Addon-Output-Suppression
    to make it more clear that this should be disabled by default.

  • Some small fixes and code tweaking ...

Addon-Description:

BugEater v1.0 - Debugging Addon for Users & Debugging API for Developers ...


What it does for the User:

  • Suppress the native Error Dialog (thrown from any Addon or native code!)

  • Output Error-Messages in Chat (optional - enabled by default)

  • Catch any Addon Output before the Chat has been loaded and display it when it 's ready

  • Suppress any Addon Output in Chat - disabled by default
    Will hide loot messages from Addons and similiar so beware with using this mindlessly!
    Use LibDebug.d() for important messages to get around any filtering / suppression

  • /error and /debug command to open an Error- and Debug-Log with Copy & Paste functionality.
    A single Window that opens only when you type the respective commands.

  • Debugging Output via d() is buffered (or simply said: Saved in the Memory). Even before the Addons
    are loaded completely. So all Messages that have been output before the ChatWindow have been initialized
    can be stored and displayed later on when the Chat is ready (Settings -> Debug Settings -> Show Pre-Init Debug).

What it does for the Developer:

  • Have a look at the Source and the API-Funcs below
    to get an idea what you can do. Or just have a look with Zgoo (if it 's a Global)

  • All messages are stored in BugEater.Buffer - for example all d()-dump messages
    are to be found in LibDebug.Buffer.DEBUG and all Error Messages are to be found
    in LibDebug.Buffer.ERROR - those are stored here no matter if suppressed or not!

  • Add your own BUFFERS! Use the provided API-Functions for that ...

To get access to the API - add this to your Addon:

local BugEater = LibStub("BugEaterAPI-1.0")

API-Functions:

  • function BugEater:d(...) -- copy of the original and unmodified d()
  • function BugEater:AddMessage(string msg, string buffer = "DEBUG")
  • function BugEater:GetMessage(int index, string buffer)
  • function BugEater:GetNumMessages(string buffer)
  • function BugEater:PrintMessages(string buffer)
  • function BugEater:AddBuffer(string buffer)
  • function BugEater:GetBuffer(string buffer)
  • function BugEater:FlushBuffer(string buffer)
  • function BugEater:EnableErrorDialog()
  • function BugEater:DisableErrorDialog()

Credits:

- Andrey Makarov for AnkaCoder Monospace Font.
- Seerah for LibStub and LibAddonMenu as well as some UI setup inspiration from ZAM Notebook.

Cheers!
Known issues:
  • Somehow the native Error-Window can't be showed anymore.
    I don't know what 's causing this right now but it has a small priority
    because it 's useless to begin with and this aims at delivering a better UI.

Version 1.0 - R10 (Current):
  • Slightly improved Pre-Init Error-Detection and Suppression.

Version 1.0 - R9:
  • Cleaned up d() - it now takes multiple arguments and tables like before.
    f.e.: d("this", "is", "a", "test", {["TEST123"] = true })

Version 1.0 - R8:
  • Now properly strips colors before calculating line-width
  • Renamed "Error catched:" to "Error caught:"

Version 1.0 - R7:
  • Avoid Error-Flood. Makes Errors Unique and stops them from spamming
    your Chat and Buffer. Enabled by Default (turn it off in Settings -> Debug Settings).

Version 1.0 - R6:
  • Finally catches Syntax Errors as well. Yay.

Version 1.0 - R5:
  • Added Custom Filters. Supporting LUA-Style Regex-Patterns.
    Use it to e.g. hide "Looted Sword 123" while still showing "Looted Axe".
    Or use it to hide only specific Errors from the Chat Window.
  • Settings are now saved Account-Wide rather then Character-Specific.

Version 1.0 - R4:
  • Added option to Suppress all Gui-Warnings including the famous
    "To many Anchors processed" (they are still shown in /error or /debug)
  • Updated for the new API-Version (100004)

Version 1.0 - R3:
  • Renamed from LibDebug to BugEater
  • Fixed small Bug with the Scrollbar

Version 1.0 - R2:
  • Revamed UI. Look and feel as well as features:
    Monospace Font - AnkaCoder, Support for unlimited Textlength,
    Scrollbar, Mousewheel, Scroll to Bottom, Copy All Button, ...
  • Implemented EditBuffer Component to get around native API-Limitations
    of TextBufferControl and EditControl. Known limitations for now (workaround in progress):
    No CTRL+A and no way to select all lines at once with the Mouse (use the "COPY ALL" button instead)
  • Implemented method to copy long text over 1000 characters to clipboard
  • Renamed Debug-Surpression to Addon-Output-Surpression
    to make it more clear that this should be disabled by default.
  • Some small fixes and code tweaking

Version 1.0 - R1:
  • Small Hotfix / Bugfix

Version 1.0:
  • Initial Release
Optional Files (2)
File Name
Version
Size
Author
Date
Type
1.0.11.1
185kB
10/14/14 02:41 PM
Patch
1.0 - R10 - Update 4
164kB
09/22/14 01:21 PM
Patch


Archived Files (10)
File Name
Version
Size
Author
Date
1.0 - R9
167kB
thelegendaryof
05/31/14 07:58 AM
1.0 - R8
167kB
thelegendaryof
05/30/14 10:01 AM
1.0 - R7
167kB
thelegendaryof
05/25/14 06:21 AM
1.0 - R6
166kB
thelegendaryof
05/24/14 11:09 AM
1.0 - R5
166kB
thelegendaryof
05/23/14 09:10 AM
1.0 - R4
166kB
thelegendaryof
05/22/14 01:47 PM
1.0 - R3
166kB
thelegendaryof
05/20/14 06:12 PM
1.0 - R2
166kB
thelegendaryof
05/20/14 12:21 PM
1.0 - R1
8kB
thelegendaryof
04/23/14 03:07 PM
1.0
8kB
thelegendaryof
04/23/14 12:20 PM


Post A Reply Comment Options
Unread 09/15/14, 09:19 PM  
Ayantir
 
Ayantir's Avatar
AddOn Author - Click to view AddOns

Forum posts: 51
File comments: 92
Uploads: 7
BugEater suppress d() message and Binder use d() messages
You can disable this feature in BugEater options
Ayantir is offline Report comment to moderator  
Reply With Quote
Unread 09/15/14, 09:08 PM  
MurkyMais

Forum posts: 0
File comments: 1
Uploads: 0
Binder Addon - Will not display

I was not sure where to post this. I did not find a bug log.

I use Binder http://www.esoui.com/downloads/info215-Binder.html

When I run your addon it suppresses the output from Binder in the chat window.

Please will provide some insight or a work around.

Thanks

Your add on is great!
Last edited by MurkyMais : 09/15/14 at 09:08 PM.
MurkyMais is offline Report comment to moderator  
Reply With Quote
Unread 05/25/14, 05:19 PM  
thelegendaryof
 
thelegendaryof's Avatar
AddOn Author - Click to view AddOns

Forum posts: 161
File comments: 90
Uploads: 7
Originally Posted by Rhynchelma
"Error catched" should be "Error caught" - sorry.
Nvm. You're right, I'll change that. Thanks.
Last edited by thelegendaryof : 05/25/14 at 05:21 PM.
thelegendaryof is offline Report comment to moderator  
Reply With Quote
Unread 05/25/14, 03:42 PM  
Rhynchelma
Premium Member
Premium Member

Forum posts: 21
File comments: 11
Uploads: 0
"Error catched" should be "Error caught" - sorry.
Rhynchelma is offline Report comment to moderator  
Reply With Quote
Unread 05/21/14, 11:37 AM  
AstroCat
 
AstroCat's Avatar

Forum posts: 12
File comments: 103
Uploads: 0
Originally Posted by thelegendaryof
Originally Posted by AstroCat
For some reason your mod is not showing up in Minion any more as either LibDebug or BugEater. Any ideas? Thanks.
I requested it to be moved to Developer Utilities - seems like that Category isn't grabbed correctly by Minion. I'll forward that Info to Seerah!
Sounds good. Thanks.
AstroCat is offline Report comment to moderator  
Reply With Quote
Unread 05/21/14, 05:01 AM  
thelegendaryof
 
thelegendaryof's Avatar
AddOn Author - Click to view AddOns

Forum posts: 161
File comments: 90
Uploads: 7
Originally Posted by AstroCat
For some reason your mod is not showing up in Minion any more as either LibDebug or BugEater. Any ideas? Thanks.
I requested it to be moved to Developer Utilities - seems like that Category isn't grabbed correctly by Minion. I'll forward that Info to Seerah!
Last edited by thelegendaryof : 05/21/14 at 05:02 AM.
thelegendaryof is offline Report comment to moderator  
Reply With Quote
Unread 05/21/14, 04:51 AM  
AstroCat
 
AstroCat's Avatar

Forum posts: 12
File comments: 103
Uploads: 0
For some reason your mod is not showing up in Minion any more as either LibDebug or BugEater. Any ideas? Thanks.
AstroCat is offline Report comment to moderator  
Reply With Quote
Unread 05/18/14, 07:19 AM  
thelegendaryof
 
thelegendaryof's Avatar
AddOn Author - Click to view AddOns

Forum posts: 161
File comments: 90
Uploads: 7
EditBuffer done with the ability to add unlimited text, scroll and copy over 1000 characters (as partial copy and paste). All that 's missing is a visual scrollbar for now (which should be a cake, scrolling via mousewheel is already enabled):



http://www.esoui.com/forums/showthread.php?t=1538

Release soon.

Edit: Update R2 released! Have fun.
Last edited by thelegendaryof : 05/20/14 at 12:23 PM.
thelegendaryof is offline Report comment to moderator  
Reply With Quote
Unread 05/09/14, 11:55 AM  
thelegendaryof
 
thelegendaryof's Avatar
AddOn Author - Click to view AddOns

Forum posts: 161
File comments: 90
Uploads: 7
Update coming soon:

I got what you guys ment. For anyone else that has a blockhead like me:

d() like DUMP or /dump and not debug.

I'll properly rename everything, make it more clear, hide it a bit more for the simple user and refrain from hooking it further and will move onto providing own debugging functions with levels/filters like suggested instead in future versions.

Also:

Rewritten Dumps with an own emulated EditBuffer that tries to work around the limitation of 1000 chars for Edit-Fields (Windows 98 I ****ing greet you) and scroll support as well as usage of a custom Monospace-Font which will look more ugly but is ultimatively better for coding as I can correctly calculate the line-width and number of lines in case of to long lines (funnly the native client isn't able to do that even for the TextBuffer control).
Last edited by thelegendaryof : 05/09/14 at 11:56 AM.
thelegendaryof is offline Report comment to moderator  
Reply With Quote
Unread 05/03/14, 12:06 PM  
thelegendaryof
 
thelegendaryof's Avatar
AddOn Author - Click to view AddOns

Forum posts: 161
File comments: 90
Uploads: 7
Originally Posted by Sinful Soul
I got this error after I disabled another add-on that was giving me errors, and upon /reloadui I got this message:

Seems like a smaller error due to insufficient variable checking.
Seems no gamebreaker thought, I'll try to fix that in the next few days together with the next update.
Last edited by thelegendaryof : 05/03/14 at 12:06 PM.
thelegendaryof is offline Report comment to moderator  
Reply With Quote
Unread 05/03/14, 10:52 AM  
Sinful Soul

Forum posts: 1
File comments: 65
Uploads: 0
I got this error after I disabled another add-on that was giving me errors, and upon /reloadui I got this message:

Sinful Soul is offline Report comment to moderator  
Reply With Quote
Unread 04/29/14, 09:30 AM  
thelegendaryof
 
thelegendaryof's Avatar
AddOn Author - Click to view AddOns

Forum posts: 161
File comments: 90
Uploads: 7
Originally Posted by Lichbane
I think the debug window is in need of a scroll bar.
Indeed ...

I'm still waiting for the rest of my Hardware to get delivered before I can / will start playing and developing again.

My PSU und CPU-Cooler are missing with the status that the package has been
"wrongly labeled and will be corrected, enabling it to be delivered to the correct recipient"
Last edited by thelegendaryof : 04/29/14 at 09:31 AM.
thelegendaryof is offline Report comment to moderator  
Reply With Quote
Unread 04/28/14, 09:01 PM  
Lichbane

Forum posts: 8
File comments: 37
Uploads: 0
I think the debug window is in need of a scroll bar.
Lichbane is offline Report comment to moderator  
Reply With Quote
Unread 04/28/14, 10:54 AM  
thelegendaryof
 
thelegendaryof's Avatar
AddOn Author - Click to view AddOns

Forum posts: 161
File comments: 90
Uploads: 7
Originally Posted by MartinL
Getting a few error.
Do you have the 1.0.1 version?

Lua Code:
  1. if(_G["ZO_ChatWindowTemplate1Buffer"]) then ZO_ChatWindowTemplate1Buffer:AddMessage("\r\n") end

Is line 260, which I modified for 1.0.1 - if it 's still producing errors I'll have to have a closer look at it and change it to be more strict

Also does the error dialogue popup with suppression enabled or do they get thrown in the buffer / chat correctly?
Last edited by thelegendaryof : 04/28/14 at 10:55 AM.
thelegendaryof is offline Report comment to moderator  
Reply With Quote
Unread 04/28/14, 09:11 AM  
MartinL

Forum posts: 5
File comments: 59
Uploads: 0
Getting a few error.

user:/AddOns/CraftResearchTimer/lua/CraftResearchTimer.lua:201: attempt to index a nil value
stack traceback:
user:/AddOns/CraftResearchTimer/lua/CraftResearchTimer.lua:201: in function 'initmessage'
user:/AddOns/CraftResearchTimer/lua/CraftResearchTimer.lua:183: in function 'Setup_craft'
user:/AddOns/CraftResearchTimer/lua/CraftResearchTimer.lua:129: in function 'cratftimerupdate'
5049221232296909379:3: in function '(main chunk)'

user:/AddOns/LibDebug/LibDebug.lua:260: attempt to index a nil value
stack traceback:
user:/AddOns/LibDebug/LibDebug.lua:260: in function 'LibDebug_OnUIError'
user:/AddOns/LibDebug/LibDebug.lua:260: attempt to index a nil value
stack traceback:
user:/AddOns/LibDebug/LibDebug.lua:260: in function 'LibDebug_OnUIError'
user:/AddOns/LibDebug/LibDebug.lua:260: attempt to index a nil value
stack traceback:
user:/AddOns/LibDebug/LibDebug.lua:260: in function 'LibDebug_OnUIError'
user:/AddOns/LibDebug/LibDebug.lua:260: attempt to index a nil value
stack traceback:
user:/AddOns/LibD
MartinL is offline Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: