Skip to content
This repository has been archived by the owner on Oct 14, 2021. It is now read-only.
/ apidiff Public archive

Generate API diffs as markdown for Objective-C, Swift, and Android libraries.

License

Notifications You must be signed in to change notification settings

material-motion/apidiff

Repository files navigation

API diff

Build Status codecov

An API diff tool for Objective-C, Swift, and Android code that outputs markdown.

Requirements

Objective-C and Swift engines both require:

Usage

Run apidiff from within a git repository like so:

apidiff <old git ref> <new git ref> objc <umbrella header>
apidiff <old git ref> <new git ref> swift <workspace path> <scheme name>
apidiff <old git ref> <new git ref> android <library>

Note that all paths must be relative to the root of the git repository. For example:

apidiff v1.0.0 v2.0.0 objc src/MaterialMotionRuntime.h

Example output

Auto-generated by running:

apidiff 734d43e406f53143c2cf8440f43d858d125f0a11 6f7a52744751e511d0daf119642446c46bed1f5c objc src/MaterialMotionRuntime.h

NewClass

new class: NewClass

new constructor: NewClass()

new field: text

new method: getText()

MDMPlanPerforming

removed method: -addPlan: in MDMPlanPerforming

modified protocol: MDMPlanPerforming

Type swift declaration
From protocol MDMPlanPerforming : MDMPerforming
To protocol PlanPerforming : Performing

MDMScheduler

modified property: delegate in MDMScheduler

Type swift declaration
From weak var delegate: MDMSchedulerDelegate? { get set }
To weak var delegate: SchedulerDelegate? { get set }

modified class: MDMScheduler

Type swift declaration
From class MDMScheduler : NSObject
To class Scheduler : NSObject

License

Licensed under the Apache 2.0 license. See LICENSE for details.