Vigia

Memperbarui chokidar dari 5.x ke 6.x

Perbandingan API publik chokidar 5.0.0 dan 6.0.0, dihitung otomatis dari tipe TypeScript-nya. Tanda tangan yang berubah adalah kemungkinan perubahan tidak kompatibel, bukan kepastian.

Ringkasan

Jalur impor yang dihapus0
Ekspor yang dihapus1
Tanda tangan yang berubah7
Anggota kelas atau antarmuka yang dihapus33
Anggota kelas atau antarmuka yang berubah4
Baru ditandai usang0
Perubahan persyaratan (engines, dependensi peer)1
Ekspor baru4

Ekspor yang dihapus

importexportkindSebelum
chokidarWatchHelperclassclass

Tanda tangan yang berubah

exportSebelumSesudah
chokidar · watch(paths: string | string[], options?: Partial<BasicOpts & { ignored: Matcher | Matcher[]; awaitWriteFinish: boolean | Partial<AWF>; }> | undefined): FSWatcher(paths: string | string[], options?: Partial<BasicOptions & { ignored: Matcher | Matcher[]; awaitWriteFinish: boolean | Partial<AWF>; }> | undefined): FSWatcher
chokidar · default{ watch: (paths: string | string[], options?: Partial<BasicOpts & { ignored: Matcher | Matcher[]; awaitWriteFinish: boolean | Partial<AWF>; }> | undefined) => FSWatcher; FSWatcher: typeof FSWatcher; }{ watch: (paths: string | string[], options?: Partial<BasicOptions & { ignored: Matcher | Matcher[]; awaitWriteFinish: boolean | Partial<AWF>; }> | undefined) => FSWatcher; FSWatcher: typeof FSWatcher; }
chokidar · Throttler{ timeoutObject: NodeJS.Timeout; clear: () => void; count: number; }{ timeoutObject: SchedulerTimer; clear: (invokeRelease?: boolean | undefined) => number; count: number; }
chokidar · ThrottleType"readdir" | "watch" | "add" | "remove" | "change""add" | "change" | "readdir" | "watch" | "remove"
chokidar · MatcherObjectinterface{ path: string; recursive?: boolean | undefined; }
chokidar · ChokidarOptions{ persistent?: boolean | undefined; ignoreInitial?: boolean | undefined; followSymlinks?: boolean | undefined; cwd?: string | undefined; usePolling?: boolean | undefined; interval?: number | undefined; binaryInterval?: number | undefined; alwaysStat?: boolean | undefined; depth?: number | undefined; ignorePermissionErrors?: boolean | undefined; atomic?: number | boolean | undefined; ignored?: Matcher | Matcher[] | undefined; awaitWriteFinish?: boolean | Partial<AWF> | undefined; }{ persistent?: boolean | undefined; ignoreInitial?: boolean | undefined; followSymlinks?: boolean | undefined; cwd?: string | undefined; backend?: WatchBackend | undefined; usePolling?: boolean | undefined; pollingInterval?: number | undefined; pollingBinaryInterval?: number | undefined; interval?: number | undefined; binaryInterval?: number | undefined; alwaysStat?: boolean | undefined; depth?: number | undefined; ignorePermissionErrors?: boolean | undefined; atomic?: number | boolean | undefined; ignored?: Matcher | Matcher[] | undefined; awaitWriteFinish?: boolean | Partial<AWF> | undefined…
chokidar · FSWInstanceOptionsBasicOpts & { ignored: Matcher[]; awaitWriteFinish: false | AWF; }BasicOptions & { ignored: readonly Matcher[]; awaitWriteFinish: false | AWF; backendStrategy: BackendStrategy; backendCapabilities: Readonly<{ kind: BackendStrategy; polling: boolean; recursive: boolean; perDirectory: boolean; }>; }

Anggota kelas atau antarmuka yang dihapus

memberimportSebelum
FSWatcher._emitchokidar(event: EventName, path: string, stats?: any): Promise<FSWatcher | undefined>
FSWatcher._removechokidar(directory: string, item: string, isDirectory?: boolean | undefined): void
FSWatcher._closerschokidarMap<string, any[]>
FSWatcher._emitRawchokidar(ev: WatchEventType, path: string, opts: unknown): void
FSWatcher._streamschokidarSet<ReaddirpStream>
FSWatcher._watchedchokidarMap<string, DirEntry>
FSWatcher._readdirpchokidar(root: string, opts?: any): any
FSWatcher._throttlechokidar(actionType: ThrottleType, path: string, timeout: number): false | Throttler
FSWatcher._closeFilechokidar(path: string): void
FSWatcher._closePathchokidar(path: string): void
FSWatcher._emitReadychokidar(): void
FSWatcher._isIgnoredchokidar(path: string, stats?: any): boolean
FSWatcher._throttledchokidarMap<ThrottleType, Map<any, any>>
FSWatcher._readyCountchokidarnumber
FSWatcher._boundRemovechokidar(dir: string, item: string): void
FSWatcher._handleErrorchokidar(error: Error): boolean | Error
FSWatcher._isntIgnoredchokidar(path: string, stat?: any): boolean
FSWatcher._userIgnoredchokidarMatchFunction | undefined
FSWatcher._closePromisechokidarPromise<void> | undefined
FSWatcher._ignoredPathschokidarSet<Matcher>
FSWatcher._readyEmittedchokidarboolean
FSWatcher._symlinkPathschokidarMap<string, string | boolean>
FSWatcher._addPathCloserchokidar(path: string, closer: () => void): void
FSWatcher._getWatchedDirchokidar(directory: string): DirEntry
FSWatcher._nodeFsHandlerchokidarNodeFsHandler
FSWatcher._pendingWriteschokidarMap<string, any>
FSWatcher._addIgnoredPathchokidar(matcher: Matcher): void
FSWatcher._incrReadyCountchokidar(): number
FSWatcher._pendingUnlinkschokidarMap<string, [event: EventName, path: string, stats?: any]>
FSWatcher._getWatchHelperschokidar(path: string): WatchHelper
FSWatcher._awaitWriteFinishchokidar(path: string, threshold: number, event: EventName, awfEmit: (err?: Error | undefined, stat?: any) => void): void
FSWatcher._removeIgnoredPathchokidar(matcher: Matcher): void
FSWatcher._hasReadPermissionschokidar(stats: Stats): boolean

Anggota kelas atau antarmuka yang berubah

memberSebelumSesudah
FSWatcher.add(paths_: string | string[], _origAdd?: string | undefined, _internal?: boolean | undefined): FSWatcher(paths_: string | string[]): FSWatcher
FSWatcher.constructor(_opts?: Partial<BasicOpts & { ignored: Matcher | Matcher[]; awaitWriteFinish: boolean | Partial<AWF>; }> | undefined): FSWatcher(_opts?: Partial<BasicOptions & { ignored: Matcher | Matcher[]; awaitWriteFinish: boolean | Partial<AWF>; }> | undefined, scheduler?: Scheduler | undefined): FSWatcher
FSWatcher.emitWithAll(event: EventName, args: EmitArgs): voidany
FSWatcherEventMap.raw[ev: WatchEventType, path: string, opts: unknown][ev: WatchEventType, path: string | null, opts: unknown]

Baru ditandai usang

Tidak ada yang terdeteksi.

Perubahan persyaratan (engines, dependensi peer)

SebelumSesudah
engines.node>= 20.19.0—
Ekspor baru (4)
importexportkind
chokidarSchedulerinterface
chokidarWatchBackendtype
chokidarSchedulerTimerinterface
chokidarBackendStrategytype

Berikan fakta ini ke agen AI Anda

Vigia adalah server MCP gratis: agen coding Anda memeriksa versi, perubahan yang merusak kompatibilitas, dan kerentanan sebelum menulis kode. Tanpa pendaftaran, tanpa kunci API.

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

Tambahkan ke CursorTambahkan ke VS Code★ Bintang di GitHub

Klien MCP lainnya
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Skill agen (SKILL.md): memberi tahu agen kapan memakai Vigia · GitHub Action untuk pull request

Pertanyaan umum

Apa saja perubahan tidak kompatibel saat memperbarui chokidar dari 5 ke 6?

Antara chokidar 5.0.0 dan 6.0.0, Vigia menemukan 1 ekspor yang dihapus, 7 tanda tangan yang berubah, dan 37 anggota kelas atau antarmuka yang dihapus atau berubah.

Apa yang ditandai usang di chokidar 6?

0 ekspor atau anggota baru ditandai usang di chokidar 6.0.0.

Untuk agen

GET https://vigia.coredls.cloud/v1/packages/npm/chokidar/upgrade?from=5.0.0&to=6.0.0