Skip to content

Releases: WheretIB/LuaDkmDebugger

v0.9.9

19 Nov 21:05
Compare
Choose a tag to compare

Added

  • Added filter to the script list panel
  • Columns in the script list are now sortable
  • Added support for Visual Studio 2022

Changed

  • Fixed the order of locals lookup to preserve shadowing

Known issues

In Visual Studio 2022, hover over complex expressions no longer works. For example, if you hover over prop in tbl.prop, there is no tool tip. However, now when you hover over tbl, you will have a tool tip with a tree view where you can explore inside.
As a work-around, use Watch or Pin the expression from the root expression tool tip.
When the solution for updated behavior of Visual Studio 2022 arrives, a new release will be made.

v0.9.8

18 Jul 21:40
Compare
Choose a tag to compare

Added

  • Mouse hover evaluation over members access after array indexing
  • Added support for __index function evaluation
    • Mouse hover performs this by default. Evaluation could have side-effects, new menu item can be used to disable auto-evaluation

Changed

  • Fixed inability to open files from temp folder which have spaces in the name

  • Fixed helper library load from paths with non-ASCII characters

  • Table indexing will no longer lookup members of a metatable, __index will be used immediately

  • Fixed value writes in Lua 5.1

  • Fixed written string type tag in Lua 5.2/5.3/5.4 to include 'collectible' flag

  • Array length operator will report element count until first 'nil'

  • Improvements for LuaJIT support (2.0.5 x86/x64, 2.1.0 x86/x64):

    • Global variable lookup
    • Fixed breaking on internal runtime errors
    • Breakpoint and stepping support in multiple global states
    • Fixed missing call stack in error handling
    • Additional internal LuaJIT functions are hidden
    • Value write support
    • Fixed launch without 'Compatibility Mode' enabled
    • Function upvalue lookup support
    • Stability improvements
  • Remaining LuaJIT limitations include:

    • Scripts loaded from a file are not captured for breakpoint placement/stepping immediately
    • Conditional breakpoints are not supported
    • Breakpoints based on function name are not supported (Add Breakpoint menu)

v0.9.7

13 Jun 23:11
Compare
Choose a tag to compare
v0.9.7 Pre-release
Pre-release

Added

  • Experimental support for LuaJIT (2.0.5 x86/x64, 2.1.0 x86/x64). Limitations include:
    • Scripts loaded from a file are not captured for breakpoint placement/stepping immediately
    • Only writes to 'number' are supported with LUA_GC64
    • Conditional breakpoints are not supported
    • Only one global state is supported for breakpoints/stepping
    • Breakpoints based on function name are not supported
  • Status bar for information about detected Lua library and helper attachment state

Changed

  • Fixed a case when failed helper attachment to x64 process could suspend thread indefinitely

v0.9.6

06 Apr 17:02
Compare
Choose a tag to compare

Added

  • Lua Script List panel can be opened from menu

Changed

  • Improved script name mapping to potential file name

v0.9.5

21 Mar 18:59
Compare
Choose a tag to compare

Added

  • String values can be modified
  • Support for assignments in watch and immediate windows
  • Support for table and string length operator

Changed

  • Watch values are refreshed after modification of a related value
  • Fixed bool value modification in Lua 5.4
  • Fixed nested linear array indexing
  • Fixed breakpoints not being activated immediately after script load
  • Fixed invalid call error display location
  • Fixed error display location in Lua 5.1
  • Fixed table size and content display in Lua 5.2 (nil entries)

v0.9.4

01 Sep 21:46
Compare
Choose a tag to compare

Changed

  • Added handler for unexpected exceptions in DIA SDK symbol load functions

v0.9.3

20 Jul 21:05
Compare
Choose a tag to compare

Changed

  • Fixed performance issue with Lua error handling

v0.9.2

06 Jul 21:36
Compare
Choose a tag to compare

Added

  • Optimization for table summary and element lookups using batched memory reads and lazy evaluation
  • Optimization for function locals list using batched memory reads
  • Function location display now works with Lua 5.1
  • Function name caching for Lua 5.1 stack frames
  • Conditional breakpoint support for Lua 5.4

Changed

  • Fixed Lua version lookup and hook setup when Lua library is built with optimization
  • Fixed crash on function data lookup when debugging Lua 5.1
  • Fix for Lua state creation hook when library is built with optimization
  • Fix for internal Lua function display on 'Step Out' when debugging Lua 5.1
  • Fixed conditional breakpoints

v0.9.1

23 Jun 20:29
Compare
Choose a tag to compare

Added

  • Support for full process dump debug

v0.9.0

22 Jun 14:03
Compare
Choose a tag to compare

Added

  • Support for Lua 5.4
  • Lookup in __index metadata table in expression evaluation
  • Location display for Lua function values and Jump to Source context menu option
  • Alternative name is generated for unnamed scripts

Changed

  • Fixes for Lua libraries built with optimizations
  • Fix for Lua sources without a valid name
  • Compatibility Mode improvements
  • Lua table address is now displayed in Watch
  • Stability fixes
  • Additional source file search locations
  • '.lua' is added to temporary file names if the Lua source name doesn't contain it already
  • Fixed long debugger startup when application is linked with /DEBUG:FULL and symbol file is large