From d3481ad6b24d2d2972b685c0a1d2abc2218f1293 Mon Sep 17 00:00:00 2001 From: kiannidev <156195510+kiannidev@users.noreply.github.com> Date: Fri, 26 Jun 2026 12:23:56 +0200 Subject: [PATCH] feat(signals): recognize deno.lock, bun.lock, pubspec.lock, and Podfile.lock Extend slop path-matchers so additional ecosystem lockfiles classify as lockfile instead of other. Co-authored-by: Cursor --- src/signals/path-matchers.ts | 4 ++++ test/unit/path-matchers.test.ts | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/src/signals/path-matchers.ts b/src/signals/path-matchers.ts index 94251a2505..d6c683faa4 100644 --- a/src/signals/path-matchers.ts +++ b/src/signals/path-matchers.ts @@ -29,6 +29,7 @@ const LOCKFILE_NAMES: ReadonlySet = new Set([ "npm-shrinkwrap.json", "yarn.lock", "pnpm-lock.yaml", + "bun.lock", "bun.lockb", "cargo.lock", "poetry.lock", @@ -39,6 +40,9 @@ const LOCKFILE_NAMES: ReadonlySet = new Set([ "uv.lock", "packages.lock.json", "flake.lock", + "deno.lock", + "pubspec.lock", + "podfile.lock", ]); const DEPENDENCY_MANIFEST_NAMES: ReadonlySet = new Set([ diff --git a/test/unit/path-matchers.test.ts b/test/unit/path-matchers.test.ts index 2ac26a3203..d41f884234 100644 --- a/test/unit/path-matchers.test.ts +++ b/test/unit/path-matchers.test.ts @@ -63,6 +63,10 @@ describe("isLockfile", () => { "go.sum", "uv.lock", "poetry.lock", + "bun.lock", + "deno.lock", + "pubspec.lock", + "Podfile.lock", ]) { expect(isLockfile(path)).toBe(true); } @@ -233,6 +237,10 @@ describe("classifyChangedFile", () => { ["src/api.generated.ts", "generated"], ["vendor/lib.go", "vendored"], ["package-lock.json", "lockfile"], + ["bun.lock", "lockfile"], + ["deno.lock", "lockfile"], + ["pubspec.lock", "lockfile"], + ["ios/Podfile.lock", "lockfile"], ["package.json", "dependency_manifest"], ["tsconfig.json", "config"], ["vitest.config.ts", "config"],