Changelog
New Features
- a45e979: feat(car): add catalog inspection and export (@blacktop)
- 47d6019: feat(syms): bump comparison facts policy to v2 (@blacktop)
Performance improvements
- 0606340: perf(diff): skip the generated-counter regex when it cannot match (@blacktop)
- f46be40: perf(disass): decode FindSwiftStrings instructions in batches of 64 (@blacktop)
- 25e4be3: perf(disass): read instruction words directly in FindSwiftStrings (@blacktop)
- 72f2fa1: perf(dyld): cache slide headers and page tables per mapping (@blacktop)
- d779a18: perf(dyld): cache the last unslid mapping per image (@blacktop)
- 7933604: perf(dyld): index image segment addresses lazily (@blacktop)
- c4c50f4: perf(dyld): pack A2S string table in address order (@blacktop)
- 3f7eb31: perf(dyld): read the dylibs trie once per cache (@blacktop)
- 67d296b: perf(dyld): retain two unslid pointer mapping hints (@blacktop)
- 032d227: perf(dyld): reuse measured stub names across unchanged images (@blacktop)
- 1177a8d: perf(dyld): reuse one buffered reader in offsetsToMap (@blacktop)
- 1610c6f: perf(dyld): size the a2s string table before saving (@blacktop)
- e74665f: perf(dyld): skip discarded mapping error in SlidePointer (@blacktop)
- 9b1238b: perf(dyld): sort a2s entries with slices.SortFunc (@blacktop)
- d6894a0: perf(dyld): stop preallocating a 7M-entry address-to-symbol map (@blacktop)
- b99d2b9: perf(macho): reduce normalized set diff allocations (@blacktop)
- ae40d28: perf(macho): scan generated symbol suffixes without regexp (@blacktop)
Bug fixes
- 4c57d00: fix(bench): isolate benchmark overlays and interleave compiled runs (@blacktop)
- 26b5929: fix(car): exclude AppKit renderer on iOS (@blacktop)
- 783f399: fix(ci): restore macOS Go builds and add fixture-free tests (@blacktop)
- 4a91276: fix(diff): hash each image's own load commands (@blacktop)
- c5dbde9: fix(diff): walk load commands by cmdsize when hashing (@blacktop)
- ca43f0f: fix(dyld): bound dylibs-trie and prebuilt-loader indexes (@blacktop)
- d23f944: fix(dyld): bound local symbols to their section range (@blacktop)
- 02043de: fix(dyld): bound non-mmap string table cache unions (@blacktop)
- 3b11a80: fix(dyld): bound prebuilt array allocations before reading (@blacktop)
- 4ce22a6: fix(dyld): build image segment index incrementally (@blacktop)
- 417d425: fix(dyld): drop zero-target stub islands and absolute-symbol addresses (@blacktop)
- e01ec45: fix(dyld): emit extracted stub-island symbols in address order (@blacktop)
- 9d8471e: fix(dyld): guard all prebuilt ObjC tables against empty loaders (@blacktop)
- aa5e702: fix(dyld): keep address names owned by the defining image (@blacktop)
- ef7e493: fix(dyld): preserve linear image lookup precedence (@blacktop)
- 2d35f7f: fix(dyld): release slide-info cache on close (@blacktop)
- abdc4a3: fix(dyld): skip local symbols of zero-size sections (@blacktop)
- 50bb493: fix(dyld): treat loaded A2S tables with additions as a union (@blacktop)
- 160d325: fix(dyld): validate prebuilt selector and twin indexes (@blacktop)
- 380d5a0: fix(release): migrate retained Linux GoReleaser config (@blacktop)
- ee8e0c1: fix(syms): pin facts policy v2 to the corrected load-command hash (@blacktop)
- b2fdc4c: fix(syms): repin facts policy v2 reference after rebase (@blacktop)
Dependency updates
- a9981f1: chore(deps): bump Go module dependencies (@blacktop)
- f25be60: chore(deps): bump arm64-cgo to v1.0.73 (@blacktop)
- 02abced: chore(deps): bump bubbletea to v2.0.10 (@blacktop)
- 5896f41: chore(deps): bump go-macho to v1.1.287 (@blacktop)
- e1f88bb: chore(deps): bump go-macho to v1.1.288 (@blacktop)
- 4796465: chore(deps): bump go-macho to v1.1.289 (@blacktop)
- 2eeb983: chore(deps): bump go-macho to v1.1.290 (@blacktop)
Summary
Full Changelog: v3.1.724...v3.1.725
What to do next?
- Read the documentation
- Follow us on Twitter
- Follow us on Mastodon
- Follow us on Bluesky