MCPcopy Create free account
hub / github.com/vercel/vercel / writeUvLock

Function writeUvLock

packages/python/test/diagnostics.test.ts:27–57  ·  view source on GitHub ↗
(
  dir: string,
  packages: {
    name: string;
    version: string;
    source?: string;
    dependencies?: string[];
  }[]
)

Source from the content-addressed store, hash-verified

25}
26
27function writeUvLock(
28 dir: string,
29 packages: {
30 name: string;
31 version: string;
32 source?: string;
33 dependencies?: string[];
34 }[]
35): string {
36 const lockPath = path.join(dir, 'uv.lock');
37 const entries = packages
38 .map(p => {
39 let block = `[[package]]\nname = "${p.name}"\nversion = "${p.version}"`;
40 if (p.source) {
41 block += `\n${p.source}`;
42 }
43 if (p.dependencies && p.dependencies.length > 0) {
44 const depEntries = p.dependencies
45 .map(d => ` { name = "${d}" }`)
46 .join(',\n');
47 block += `\ndependencies = [\n${depEntries},\n]`;
48 }
49 return block;
50 })
51 .join('\n\n');
52 fs.writeFileSync(
53 lockPath,
54 `version = 1\nrequires-python = ">=3.10"\n\n${entries}\n`
55 );
56 return lockPath;
57}
58
59function makePackage(opts: {
60 name?: string;

Callers 1

Calls 2

joinMethod · 0.45
writeFileSyncMethod · 0.45

Tested by

no test coverage detected