Skip to content

getsentry/Reaper-iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reaper

A framework for detecting dead code at runtime - Reaper is an SDK added to your app to report which Swift and Objective-C types were used for each user session. It supports all classes written in Objective-C, most non-generic Swift classes, and some Swift structs/enums.

The framework detects the set of classes that are used, and the Scripts directory in this repo contains a program to determine the set of all possible types that reaper can detect. The difference of these sets are the unused types.

See additional resources below.

Installation

Swift Package Manager

Add Reaper as a dependency with Swift package manager using the URL https://github.com/EmergeTools/Reaper

CocoaPods

Add Reaper to your Podfile:

target 'MyApp' do
  pod 'Reaper', '~> 1.6'
end

XCFramework

Download the latest XCFramework from Github releases.

Setup

Start the SDK at app launch by adding the following code:

import Reaper

...

EMGReaper.sharedInstance().start { types in
  // Handle list of used types
}

Determining all types

Run tsc ./Scripts/main.ts then node ./Scripts/main.ts PATH_TO_YOUR_APP.app

Resources