|
| 1 | +# MobDebug Changelog |
| 2 | + |
| 3 | +## v0.60 (Aug 30 2014) |
| 4 | + - Added support for nginx debugging using internal coroutine API. |
| 5 | + - Fixed localizaton in breakpoint handling function. |
| 6 | + - Added path processing for chunk names that look like file names. |
| 7 | + - Added line mapping support for debugging Lua-based languages. |
| 8 | + - Fixed compatibility with Lua 5.2 (#13). |
| 9 | + |
| 10 | +## v0.56 (May 11 2014) |
| 11 | + - Added `pause` method to suspend debugging from the application. |
| 12 | + - Added DONE command to stop debugging and continue execution. |
| 13 | + - Updated handling of `os.getenv` that may return multiple values (fixes #13). |
| 14 | + - Updated coroutine debugging to avoid using `require` calls. |
| 15 | + - Added support for setting/deleting breakpoints at run-time. |
| 16 | + - Added number conversion for MOBDEBUG_PORT. |
| 17 | + - Added check for loading 'os' module that may be absent on some systems. |
| 18 | + - Updated Serpent (0.272) to fix array indexes serialization. |
| 19 | + - Added closing Lua state during os.exit() for Lua 5.2+ (closes #11). |
| 20 | + - explicit load Lua standard library (thanks to Alexey Melnichuk) |
| 21 | + - Added explicit loading of `table` table (fixes #9). |
| 22 | + |
| 23 | +## v0.55 (Dec 14 2013) |
| 24 | + - Added `setbreakpoint` and `removebreakpoint` public methods (closes #8). |
| 25 | + - Fixed complex values 'captured' by redirected 'print' and not collected. |
| 26 | + - Fixed error reporting on debugging non-existing file. |
| 27 | + - Added ability to overwrite `line` and `dump` methods for serialization. |
| 28 | + - Added handling of case-sensitive partitions on OSX (fixes #6, closes #7). |
| 29 | + - Fixed Step Over/Out commands to stay in the same coroutine. |
| 30 | + - Updated LICENSE information. |
| 31 | + - Added optimization and limiting elements in a table in serializer (Serpent 0.25). |
| 32 | + - Added support for `MOAICoroutine.new().run` to enable coroutine debugging. |
| 33 | + - Added reporting of socket error for failed start()/loop() calls. |
| 34 | + - Fixed debugging on/off handling in 'main' thread for LuaJIT. |
| 35 | + - Fixed stepping through blocks with `nil` variables when 'strict' is in effect. |
| 36 | + |
| 37 | +## v0.54 (Aug 30 2013) |
| 38 | + - Added reset of hook visits in case earlier start() call is refused. |
| 39 | + - Added saving host/port configuration to reuse in start/loop calls. |
| 40 | + - Added handling of code fragments reported as 'source'. |
| 41 | + - Improved handling of done() in environments that reuse VMs. |
| 42 | + - Reset state to allow multiple start()/done() calls from the same process. |
| 43 | + - Replaces `unpack` with `table.unpack` for Lua 5.2 compatibility. |
| 44 | + - Updated filenames/source code heuristic to avoid serializing filenames. |
| 45 | + - Upgraded Serpent to 0.24 to fix table serialization issue. |
| 46 | + - Upgraded Serpent to 0.231 to fix luaffi issue. |
| 47 | + - Fixed debugging of zero length scripts. |
| 48 | + |
| 49 | +## v0.53 (May 06 2013) |
| 50 | + - Added handling of case-insensitive filenames on OSX. |
| 51 | + - Allowed start() to be called inside other functions (like assert). |
| 52 | + - Improved debugging performance. |
| 53 | + - Replaced socket.select with non-blocking .receive as it is faster. |
| 54 | + - Upgraded serializer to add notification on incomplete output. |
| 55 | + - Upgraded serializer (v0.224) to add support for __tostring and __serialize metamethods. |
| 56 | + - Updated to allow `debug.traceback()` to be called under debugger. |
| 57 | + - Fixed 'breaking' after executing OUT command that never reaches the target level. |
| 58 | + - Fixed terminating debugging of an empty script. |
| 59 | + - Fixed resetting cached source as it may change when basedir changes. |
| 60 | + - Fix stack trace when LuaJIT FFI data is present (add `cdata` handling). |
| 61 | + |
| 62 | +## v0.52 (Mar 04 2013) |
| 63 | + - Added `done()` method to finish debugging and to allow the script to continue. |
| 64 | + - Added support for cross-platform remote debugging. |
| 65 | + - Added support for code reloading and coroutine debugging under LuaJIT (v2.0.1). |
| 66 | + - Added using `socket.connect4` when available. |
| 67 | + - Added support for debugging Lua 5.2 scripts. |
| 68 | + - Added check for `os.getenv` for those platforms that don't implement it. |
| 69 | + - Improved handling of run-time errors in serialized data (__tostring method). |
| 70 | + - Improved reporting of debugger errors to the application. |
| 71 | + - Moved mosync/mobileLua code into a separate module. |
| 72 | + - Fixed an issue with `eval/exec` commands not working immediately after `start()`. |
| 73 | + |
| 74 | +## v0.51 (Dec 13 2012) |
| 75 | + - Added yield callback to customize event loop call during debugging. |
| 76 | + - Added custom error handler for start() call to report errors remotely. |
| 77 | + - Added serialization of remote 'print' results. |
| 78 | + - Added 'output' command to redirect 'print' remotely. |
| 79 | + - Added turning JIT off under LuaJIT to get reliable debug hook calls. |
| 80 | + - Added setting/using global vars in a way that is 'strict.lua' friendly. |
| 81 | + - Changed default port to 8172. Added setting port # using MOBDEBUG_PORT. |
| 82 | + - Updated license to add remdebug license information. |
| 83 | + - Upgraded to Serpent v0.20 to add serialization of metatables with |
| 84 | + __tostring and fix serialization of functions as shared keys. |
| 85 | + - Fixed using correct environment after the main script is done. |
| 86 | + |
| 87 | +## v0.50 (Oct 05 2012) |
| 88 | + - Improved path matching when absolute and relative paths are used. |
| 89 | + - Improved performance; thanks to Stephen Nichols for profiling and |
| 90 | + detailed suggestions. |
| 91 | + - Added conversion of file names on Windows to lower case to make |
| 92 | + x:\Foo and X:\foo to match in breakpoint checks. |
| 93 | + - Added reporting errors in deserializing stack data. |
| 94 | + - Fixed an issue with returning stack values with circular references. |
| 95 | + - Fixed serialization of usedata values that don't provide tostring(). |
| 96 | + - Fixed an issue with wx IDLE event on Linux. |
| 97 | + |
| 98 | +## v0.49 (Sep 03 2012) |
| 99 | + - Added support for unicode names in load and breakpoint commands. |
| 100 | + - Added conversion to short path for unicode names on windows. |
| 101 | + - Added handling of exit/load/reload commands after watch condition is fired. |
| 102 | + - Added support for moai breakpoints and callback debugging. |
| 103 | + - Fixed an issue of starting debugging too early in some cases using start(). |
| 104 | + - Fixed an issue with coroutine debugging. |
| 105 | + - Fixed an issue with yielding to wxwidgets apps while running main loop. |
| 106 | + |
| 107 | +## v0.48 (Aug 05 2012) |
| 108 | + - Added support for coroutine debugging. Added methods (coro/moai) to |
| 109 | + support coroutine debugging without adding 'on()' calls to all coroutines. |
| 110 | + - Added on/off methods to turn debugging on and off (to improve performance). |
| 111 | + - Fixed an issue with localized variables not being properly restored |
| 112 | + if there are multiple variables with the same name in the environment. |
| 113 | + - Added restoring variables between stack calls to make them reflect changes |
| 114 | + that can be caused by EXEC/EVAL commands. |
| 115 | + - Fixed compilation errors on scripts with a shebang line. |
| 116 | + |
| 117 | +## v0.47 (Jun 28 2012) |
| 118 | + - Added special handling to debug clients running under LuaJIT. |
| 119 | + - Fixed an issue when a remote client could not suspend/exit. |
| 120 | + - Added default configuration for start/loop/listen methods. |
| 121 | + - Relaxed safety checks to allow debugging lua code called from C |
| 122 | + functions (to support debugging Love2d and similar applications). |
| 123 | + - Fixed incorrect initial stack level when started with start() command. |
| 124 | + - Added short_src field to the reported stack data. |
| 125 | + |
| 126 | +## v0.46 (Jun 19 2012) |
| 127 | + - Added reporting of stack and variable (local/upvalue) information. |
| 128 | + - Added support for multiple results returned by EXEC/EVAL commands. |
| 129 | + - Added serialization/pretty-printing of results from EXEC/EVAL. |
| 130 | + |
| 131 | +## v0.45 (May 28 2012) |
| 132 | + - Added select() implementation to mosync client to abort/break a running |
| 133 | + mosync app. |
| 134 | + - Added support for scratchpad. |
| 135 | + - Added SUSPEND command to suspend execution of a running script. |
| 136 | + - Added 'loadstring' command to load chunks of code to run under debugger. |
| 137 | + - Added safety mechanism to LOAD/RELOAD to avoid aborting when there are |
| 138 | + C functions in the stack. |
| 139 | + - Added reset for loaded modules to get 'require' to be processed correctly |
| 140 | + after LOAD/RELOAD commands. |
| 141 | + - Added integration with MobileLua event loop to allow debugging of |
| 142 | + applications that require event loop processing. |
| 143 | + - Improved handling and reporting of run-time errors during debugging. |
| 144 | + - Fixed handling of multi-line fragments with comments executed with EXEC/EVAL. |
| 145 | + - Fixed exit from the debugger when the application throws an error. |
| 146 | + - Fixed an issue with saving/restoring internal local variables. |
| 147 | + - Fixed an issue with local variables not being updated after EXEC/EVAL |
| 148 | + commands. |
| 149 | + |
| 150 | +## v0.44 (Mar 20 2012) |
| 151 | + - Updated to work with "mosync" namespace (MobileLua 20120319 and MoSync 3.0). |
| 152 | + - Removed the use of "module()". |
| 153 | + |
| 154 | +## v0.43 (Jan 16 2012) |
| 155 | + - Fixed errors from LOAD/RELOAD commands when used with start() method. |
| 156 | + - Added reporting of a file name and a line number to properly display |
| 157 | + source code when attach to a debugger. |
| 158 | + |
| 159 | +## v0.42 (Dec 30 2011) |
| 160 | + - Added support for debugging of wxwidgets applications. |
| 161 | + - Added ability to break an application being debugged; this requires |
| 162 | + socket.select and async processing (doesn't work from the command line). |
| 163 | + |
| 164 | +## v0.41 (Dec 17 2011) |
| 165 | + - Added slash conversion in filenames to make breakpoints work regardless |
| 166 | + of how slashes are specified in file names and in setb/delb commands. |
| 167 | + - Added tests with breakpoints in files in subfolders. |
| 168 | + - Added optimization for filename processing in the debug hook |
| 169 | + (Christoph Kubisch). |
| 170 | + - Added conversion of newlines for EVAL/EXEC commands to make them work |
| 171 | + with multiline expressions. |
| 172 | + - Allowed 'setb' and 'delb' commands to accept '-' as the filename. |
| 173 | + The last referenced (checked/stopped at/etc.) filename is used. |
| 174 | + |
| 175 | +## v0.40 (Dec 02 2011) |
| 176 | + - First public release. |
0 commit comments