Skip to content

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 28 Jan 16:42
· 2 commits to master since this release
696f3cb
fix: Add print caching to reduce recursion in edge case demangling (#8)

* fix: Add print caching to reduce recursion in edge case demangling

- Convert SwiftSymbol convenience initializers to class initializers
- Add printCache and symbolRegistry to SymbolPrinter for caching print results
- Cache PrintCacheKey/PrintCacheValue to avoid redundant recursive printing
- Remove duplicate .name encoding in SwiftSymbolResult

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor: Keep SwiftSymbol as struct with nodeId-based caching

- Revert SwiftSymbol from class back to struct to preserve value semantics
- Add nodeId field to SwiftSymbol for unique identification
- Update PrintCacheKey to use UInt64 nodeId instead of ObjectIdentifier
- Simplify PrintCacheValue to store SwiftSymbol directly
- Add JSON encoding tests for SwiftSymbolResult

This maintains the performance improvement while avoiding the breaking
change from struct to class.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* test: Improve JSON encoding test assertions

Add specific value checks for all JSON fields instead of just
checking for non-nil:
- testName array contents
- typeName value
- description string content verification

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fixes

* test: Add JSON encoding tests and simplify test code

Add tests for additional symbol types:
- testJSONEncodingAllocator: struct initializer
- testJSONEncodingGetter: property getter
- testJSONEncodingClosure: closure in function
- testJSONEncodingTypeMetadata: type metadata accessor

Simplify existing tests by removing redundant comments.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Fix Linux CI by using Swift 6.2.3 Docker container

The ubuntu-latest runner updated to Swift 6.2.3, which was incompatible
with the static Linux SDK compiled with Swift 6.1.1. Using the official
swift:6.2.3 Docker image and matching SDK ensures version consistency
and prevents future breakage from runner updates.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>