Vigia

Upgrading @devicefarmer/adbkit from 3.x to 4.x

Comparison of the public API of @devicefarmer/adbkit 3.3.9 and 4.0.0, computed automatically from their TypeScript types. A changed signature is a candidate for a breaking change, not a certainty.

Summary

Removed import paths0
Removed exports0
Changed signatures0
Removed class or interface members0
Changed class or interface members64
Newly deprecated0
Requirement changes (engines, peer dependencies)1
New exports2

Removed exports

None detected.

Changed signatures

None detected.

Removed class or interface members

None detected.

Changed class or interface members

memberBeforeAfter
Client.kill(): Bluebird<boolean>(): Promise<boolean>
Client.connect(host: string, port?: number | undefined): Bluebird<string>(host: string, port?: number | undefined): Promise<string>
Client.version(): Bluebird<number>(): Promise<number>
Client.connection(): Bluebird<Connection>(): Promise<Connection>
Client.disconnect(host: string, port?: number | undefined): Bluebird<DeviceClient>(host: string, port?: number | undefined): Promise<DeviceClient>
Client.listDevices(): Bluebird<Device[]>(): Promise<Device[]>
Client.trackDevices(): Bluebird<Tracker>(): Promise<Tracker>
Client.listDevicesWithPaths(): Bluebird<DeviceWithPath[]>(): Promise<DeviceWithPath[]>
Parser.end(): Bluebird<boolean>(): Promise<boolean>
Parser.readAll(): Bluebird<Buffer>(signal?: AbortSignal | undefined): Promise<Buffer>
Parser.readLine(): Bluebird<Buffer>(signal?: AbortSignal | undefined): Promise<Buffer>
Parser.readAscii(howMany: number): Bluebird<string>(howMany: number, signal?: AbortSignal | undefined): Promise<string>
Parser.readBytes(howMany: number): Bluebird<Buffer>(howMany: number, signal?: AbortSignal | undefined): Promise<Buffer>
Parser.readError(): Bluebird<never>(signal?: AbortSignal | undefined): Promise<never>
Parser.readUntil(code: number): Bluebird<Buffer>(code: number, signal?: AbortSignal | undefined): Promise<Buffer>
Parser.readValue(): Bluebird<Buffer>(signal?: AbortSignal | undefined): Promise<Buffer>
Parser.searchLine(re: RegExp): Bluebird<RegExpExecArray>(re: RegExp, signal?: AbortSignal | undefined): Promise<RegExpExecArray>
Parser.unexpected(data: string, expected: string): Bluebird<any>(data: string, expected: string): Promise<any>
Parser.readByteFlow(howMany: number, targetStream: Duplex): Bluebird<void>(howMany: number, targetStream: Duplex, signal?: AbortSignal | undefined): Promise<void>
DeviceClient.usb(): Bluebird<boolean>(): Promise<boolean>
DeviceClient.pull(path: string): Bluebird<PullTransfer>(path: string): Promise<PullTransfer>
DeviceClient.push(contents: any, path: string, mode?: number | undefined): Bluebird<PushTransfer>(contents: any, path: string, mode?: number | undefined): Promise<PushTransfer>
DeviceClient.root(): Bluebird<boolean>(): Promise<boolean>
DeviceClient.stat(path: string): Bluebird<Stats>(path: string): Promise<Stats>
DeviceClient.clear(pkg: string): Bluebird<boolean>(pkg: string): Promise<boolean>
DeviceClient.shell(command: string | ArrayLike<WithToString>): Bluebird<Duplex>(command: string | ArrayLike<WithToString>): Promise<Duplex>
DeviceClient.tcpip(port?: number | undefined): Bluebird<number>(port?: number | undefined): Promise<number>
DeviceClient.attach(): Bluebird<boolean>(): Promise<boolean>
DeviceClient.detach(): Bluebird<boolean>(): Promise<boolean>
DeviceClient.reboot(): Bluebird<boolean>(): Promise<boolean>
DeviceClient.forward(local: string, remote: string): Bluebird<boolean>(local: string, remote: string): Promise<boolean>
DeviceClient.install(apk: any): Bluebird<boolean>(apk: any): Promise<boolean>
DeviceClient.openLog(name: string): Bluebird<Duplex>(name: string): Promise<Duplex>
DeviceClient.openTcp(port: number, host?: string | undefined): Bluebird<Duplex>(port: number, host?: string | undefined): Promise<Duplex>
DeviceClient.readdir(path: string): Bluebird<Entry[]>(path: string): Promise<Entry[]>
DeviceClient.remount(): Bluebird<boolean>(): Promise<boolean>
DeviceClient.reverse(remote: string, local: string): Bluebird<boolean>(remote: string, local: string): Promise<boolean>
DeviceClient.getState(): Bluebird<string>(): Promise<string>
DeviceClient.openLocal(path: string): Bluebird<Duplex>(path: string): Promise<Duplex>
DeviceClient.screencap(): Bluebird<Duplex>(): Promise<Duplex>
DeviceClient.trackJdwp(): Bluebird<JdwpTracker>(): Promise<JdwpTracker>
DeviceClient.transport(): Bluebird<Connection>(): Promise<Connection>
DeviceClient.uninstall(pkg: string): Bluebird<boolean>(pkg: string): Promise<boolean>
DeviceClient.openLogcat(options?: { clear?: boolean | undefined; } | undefined): Bluebird<Logcat>(options?: { clear?: boolean | undefined; } | undefined): Promise<Logcat>
DeviceClient.openMonkey(port?: number | undefined): Bluebird<Duplex>(port?: number | undefined): Promise<any>
DeviceClient.framebuffer(format?: string | undefined): Bluebird<FramebufferStreamWithMeta>(format?: string | undefined): Promise<FramebufferStreamWithMeta>
DeviceClient.getFeatures(): Bluebird<Features>(): Promise<Features>
DeviceClient.getPackages(flags?: string | undefined): Bluebird<string[]>(flags?: string | undefined): Promise<string[]>
DeviceClient.getSerialNo(): Bluebird<string>(): Promise<string>
DeviceClient.isInstalled(pkg: string): Bluebird<boolean>(pkg: string): Promise<boolean>
DeviceClient.syncService(): Bluebird<Sync>(): Promise<Sync>
DeviceClient.listForwards(): Bluebird<Forward[]>(): Promise<Forward[]>
DeviceClient.listReverses(): Bluebird<Reverse[]>(): Promise<Reverse[]>
DeviceClient.openProcStat(): Bluebird<ProcStat>(): Promise<ProcStat>
DeviceClient.startService(options: StartServiceOptions): Bluebird<boolean>(options: StartServiceOptions): Promise<boolean>
DeviceClient.getDevicePath(): Bluebird<string>(): Promise<string>
DeviceClient.getProperties(): Bluebird<Properties>(): Promise<Properties>
DeviceClient.installRemote(apk: string): Bluebird<boolean>(apk: string): Promise<boolean>
DeviceClient.startActivity(options: StartActivityOptions): Bluebird<boolean>(options: StartActivityOptions): Promise<boolean>
DeviceClient.waitForDevice(): Bluebird<string>(options?: WaitOptions | undefined): Promise<string>
DeviceClient.getDHCPIpAddress(iface?: string | undefined): Bluebird<string>(iface?: string | undefined): Promise<string>
DeviceClient.waitBootComplete(): Bluebird<boolean>(options?: WaitOptions | undefined): Promise<boolean>
ShellCommand.execute(command: string | ArrayLike<WithToString>): Bluebird<Duplex>(command: string | ArrayLike<WithToString>): Promise<Duplex>
SocketOptions.auth((key: ExtendedPublicKey) => Bluebird<boolean | void>) | undefined((key: ExtendedPublicKey) => PromiseLike<boolean | void>) | undefined

Newly deprecated

None detected.

Requirement changes (engines, peer dependencies)

BeforeAfter
engines.node>= 0.10.4>= 22.12
New exports (2)
importexportkind
@devicefarmer/adbkitWaitOptionsinterface
@devicefarmer/adbkitMonkeyClienttype

Changelog between these versions

Text published by the package authors, shown as-is.

4.0.0
* Support adb reverse through the TcpUsb bridge by @jozenstar in https://github.com/DeviceFarmer/adbkit/pull/550
* Raise the TcpUsb bridge's max payload to 1 MiB by @jozenstar in https://github.com/DeviceFarmer/adbkit/pull/551
* Support adb's delayed_ack in the TcpUsb bridge by @jozenstar in https://github.com/DeviceFarmer/adbkit/pull/552
* Don't crash the TcpUsb bridge on a signature no known key verifies by @jozenstar in https://github.com/DeviceFarmer/adbkit/pull/554
* Bump mocha from 10.2.0 to 12.0.3 by @dependabot[bot] in https://github.com/DeviceFarmer/adbkit/pull/556
* feat!: native promises, package exports, ESLint 10 and Node 22 by @koral-- in https://github.com/DeviceFarmer/adbkit/pull/567
* Bump debug from 4.3.7 to 4.4.3 by @dependabot[bot] in https://github.com/DeviceFarmer/adbkit/pull/561
* chore(deps): move to adbkit-logcat 3 and adbkit-monkey 2 by @koral-- in https://github.com/DeviceFarmer/adbkit/pull/568
* fix(tcpusb): check AUTH signatures strictly with OpenSSL by @koral-- in https://github.com/DeviceFarmer/adbkit/pull/570

### New Contributors

* @jozenstar made their first contribution in https://github.com/DeviceFarmer/adbkit/pull/550

**Full Changelog**: https://github.com/DeviceFarmer/adbkit/compare/v3.3.9...v4.0.0

Give your AI agent these facts

Vigia is a free MCP server: your coding agent checks versions, breaking changes and vulnerabilities before it writes code. No signup, no API key.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Add to CursorAdd to VS Code★ Star on GitHub

Any other MCP client
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Agent skill (SKILL.md): tells the agent when to use Vigia · GitHub Action for pull requests

Frequently asked questions

What are the breaking changes when upgrading @devicefarmer/adbkit from 3 to 4?

Between @devicefarmer/adbkit 3.3.9 and 4.0.0, Vigia found 0 removed exports, 0 changed signatures and 64 removed or changed class or interface members.

What became deprecated in @devicefarmer/adbkit 4?

0 exports or members are newly marked as deprecated in @devicefarmer/adbkit 4.0.0.

For agents

GET https://vigia.coredls.cloud/v1/packages/npm/@devicefarmer/adbkit/upgrade?from=3.3.9&to=4.0.0