MCPcopy Create free account
hub / github.com/dmno-dev/bumpy / loadWorkspacePackage

Function loadWorkspacePackage

packages/bumpy/src/core/workspace.ts:117–150  ·  view source on GitHub ↗
(
  dir: string,
  rootDir: string,
  config: BumpyConfig,
)

Source from the content-addressed store, hash-verified

115}
116
117async function loadWorkspacePackage(
118 dir: string,
119 rootDir: string,
120 config: BumpyConfig,
121): Promise<WorkspacePackage | null> {
122 const pkgPath = resolve(dir, 'package.json');
123 if (!(await exists(pkgPath))) return null;
124
125 let pkg: Record<string, unknown>;
126 try {
127 pkg = await readJson<Record<string, unknown>>(pkgPath);
128 } catch {
129 return null;
130 }
131
132 const name = pkg.name as string;
133 if (!name) return null;
134
135 const bumpy = await loadPackageConfig(dir, config, name);
136
137 return {
138 name,
139 version: (pkg.version as string) || '0.0.0',
140 dir: resolve(dir),
141 relativeDir: relative(rootDir, dir) || '.',
142 packageJson: pkg,
143 private: !!pkg.private,
144 dependencies: (pkg.dependencies as Record<string, string>) || {},
145 devDependencies: (pkg.devDependencies as Record<string, string>) || {},
146 peerDependencies: (pkg.peerDependencies as Record<string, string>) || {},
147 optionalDependencies: (pkg.optionalDependencies as Record<string, string>) || {},
148 bumpy,
149 };
150}

Callers 1

discoverWorkspaceFunction · 0.85

Calls 2

existsFunction · 0.90
loadPackageConfigFunction · 0.90

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…