diff options
author | 2023-01-11 16:18:45 -0800 | |
---|---|---|
committer | 2023-01-11 16:18:45 -0800 | |
commit | c03f7c998dd22689412658177e3a5736ce6b9034 (patch) | |
tree | 0d6e4e576b243d8c705d5896cc97e8f85fbd7b4e /src/install/install.zig | |
parent | beb03c3c54c1fec4cdbec5440e0ab595351317f6 (diff) | |
download | bun-c03f7c998dd22689412658177e3a5736ce6b9034.tar.gz bun-c03f7c998dd22689412658177e3a5736ce6b9034.tar.zst bun-c03f7c998dd22689412658177e3a5736ce6b9034.zip |
git url parsing
Diffstat (limited to 'src/install/install.zig')
-rw-r--r-- | src/install/install.zig | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/install/install.zig b/src/install/install.zig index c4248aca7..3221605cd 100644 --- a/src/install/install.zig +++ b/src/install/install.zig @@ -2578,7 +2578,7 @@ pub const PackageManager = struct { return &task.threadpool_task; } - fn enqueueCloneGitHubPackage( + fn enqueueCloneGitPackage( this: *PackageManager, task_id: u64, repository: Repository, @@ -2746,7 +2746,7 @@ pub const PackageManager = struct { } switch (dependency.version.tag) { - .github => { + .github, .git => { var resolve_result = this.getOrPutResolvedPackage( name_hash, name, @@ -2765,13 +2765,19 @@ pub const PackageManager = struct { if (resolve_result == null) { const lockfile = this.lockfile; - const repo = dependency.version.value.github; + + const repo = if (version.tag == .github) version.value.github else version.value.git; const task_id = Task.Id.forGitHubPackage(lockfile.str(repo.repo), lockfile.str(repo.owner)); const network_id = try this.network_dedupe_map.getOrPutContext(this.allocator, task_id, .{}); if (!network_id.found_existing) { var batch = ThreadPool.Batch{}; - batch.push(ThreadPool.Batch.from(this.enqueueCloneGitHubPackage(task_id, version.value.github, id, dependency.version))); + batch.push(ThreadPool.Batch.from(this.enqueueCloneGitPackage( + task_id, + repo, + id, + dependency.version, + ))); const count = batch.len; this.pending_tasks += @truncate(u32, count); |