Releases: Washi1337/AsmResolver
Releases · Washi1337/AsmResolver
4.5.0
New Features
- Automatic detection of .NET Core / .NET 5+ installation folders (#105)
- Add support for .NET Core / .NET 5+
runtimeconfig.json
file parsing and interpretation (#137). - Significant improvements in assembly and member resolution (#104)
- Add RSDS CodeView Debug Data read/write support (#140, thanks @dr4k0nia)
- Add final token mapping as an artifact of the module serialization. This allows for easy lookup of members in the constructed PEImage for post processing (#121 #148).
- Add
TypeMemoryLayout.IsPlatformDependent
flag to easily determine whether a memory layout is dependent on the bitness of the environment (#143 #153) - Add better CIL assembler/disassembler diagnostics, allowing for better support of invalid instruction streams without crashing the main readers/writers of AsmResolver (fb31c42)
- Add
ICilOperandResolver
toCilDisassembler
. - Significant performance improvements in CIL disassembling, making it possible to easily parse 100k+ instructions per method body with less memory usage (7662a41).
- Add CIL label verification, providing writer diagnostics when invalid labels exist in the method body (#146)
- Improved CIL instruction formatting with escaped strings literals (55c81cd)
- Add
ITypeSignatureVisitor<in TSTate, out TResult>
variant (#147, thanks @JPaja) - Add read support for x64 SEH PE data directory (#139)
Bug Fixes
- Fixed a thread safety issue regarding reading metadata tables (#135)
- Fixed a bug where System.Type CustomAttribute arguments with
=
in their full name would result in an incorrect parsing of the CA signature (460bcf2) - Fixed a bug where System.Type and enum typed CustomAttribute arguments that don't have a resolution scope explicitly defined, would not be looked up correctly (31fc864)
- Fixed a bug where
TryLookupString
returnedfalse
even if the string was found successfully (5fcc4d2) - Fixed a bug where
GenericParameter.Index
would not be updated before serialization toPEImage
(#145, thanks @Charterino) - Fixed a bug where cloning instance methods with
ldarg
would result in the wrong operand being selected (#155, thanks @oSumAtrIX) - Fixed a bug with token preservation where methods and parameter list tokens were incorrectly assigned, resulting in methods (re)defining parameter definitions incorrectly (#150)