Skip to content

KSCrash 2.5.1 Decision Making

Alexander Cohen edited this page Jan 27, 2026 · 4 revisions

KSCrash 2.5.1 Decision Making

Included in 2.5.1

PR Description Category
#717 Fix uninitialized g_stackCursor crash in background threads Bug Fix
#723 Fix memory safety issues and buffer handling bugs Bug Fix
#725 Fix memory monitor safety improvements Bug Fix
#727 Fix flaky tests and test isolation issues Bug Fix
#728 Update CI runners from macos-13 to macos-14 CI
#734 Delete namespace-check.yml CI
#737 Add cpu info to backtrace symbolication Improvement
#742 Fix thread safety issues in memory tracking Bug Fix
#744 Add CI workflow for Clang static analyzer CI
#749 Fix static analyzer warnings Bug Fix
#751 Fix undefined behavior issues detected by UBSan Bug Fix
#755 Fix flaky testOtherThreadSymbolicate test Bug Fix
#763 Fix unsigned integer underflow in imageContainingAddress Bug Fix
8c7849c Fix integration test expectations for Swift demangler output Bug Fix

Not Included (Deferred to 2.6.0)

Major Features

PR Description Reason
#726 Add Watchdog Monitor Major new feature
#729 Add Report Swift target for type safe crash report structure Major new feature
#732 Introducing Sampling Profiler Major new feature
#753 __cxa_throw swapper upgrades Large feature change

Performance Optimizations

PR Description Reason
#721 Add performance benchmarks New infrastructure
#722 Optimize KSBinaryImageCache and KSDynamicLinker performance Large performance change

Depends on Excluded PRs

PR Description Depends On
#730 Add test to verify watchdog reports contain threads #726 (Watchdog Monitor)
#731 Fix symbolication regression in KSBinaryImageCache #722 (KSBinaryImageCache optimization)
#735 Add standard deviation column to benchmark results #721 (benchmarks.yml)
#736 Fix sanitizer issues and Mach port leak #726 (Watchdog Monitor)
#738 Fix benchmarks workflow for fork PRs #721 (benchmarks.yml)
#740 Fix memory leaks, optimize binary image cache #722 (KSBinaryImageCache optimization)
#750 Make leaks CI failable on real memory leaks #740 (leaks.yml)

Intentionally Skipped

PR Description Reason
#733 Fix sanitizer compatibility and add sanitizer CI Significant code changes beyond CI
#741 Use lock-free atomic container for userInfoJSON thread safety Too large (750+ lines, adds new KSSpinLock component)