Skip to content

Commit c8ab53e

Browse files
committed
Opt-in async downloads
1 parent 79fd5fe commit c8ab53e

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

src/nimblepkg/nimblesat.nim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1444,7 +1444,7 @@ proc solvePackages*(rootPkg: PackageInfo, pkgList: seq[PackageInfo], pkgsToInsta
14441444
var root: PackageMinimalInfo = rootPkg.getMinimalInfo(options)
14451445
root.isRoot = true
14461446
var pkgVersionTable: Table[system.string, packageinfotypes.PackageVersions]
1447-
if options.isLegacy:
1447+
if options.isLegacy or options.useAsyncDownloads:
14481448
pkgVersionTable = initTable[string, PackageVersions]()
14491449
pkgVersionTable[root.name] = PackageVersions(pkgName: root.name, versions: @[root])
14501450
collectAllVersions(pkgVersionTable, root, options, downloadMinimalPackage, pkgList.mapIt(it.getMinimalInfo(options)), nimBin)

src/nimblepkg/options.nim

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ type
7979
filePathPkgs*: seq[PackageInfo] #Packages loaded from file:// requires. Top level is always included.
8080
isFilePathDiscovering*: bool # Whether we are discovering file:// requires to fill up filePathPkgs. If true, it wont validate file:// requires.
8181
visitedHooks*: seq[VisitedHook] # Whether we are executing hooks.
82+
useAsyncDownloads*: bool # Whether to use async downloads (temporary flag)
8283

8384
ActionType* = enum
8485
actionNil, actionRefresh, actionInit, actionDump, actionPublish, actionUpgrade
@@ -784,6 +785,8 @@ proc parseFlag*(flag, val: string, result: var Options, kind = cmdLongOption) =
784785
result.features = val.split(";").mapIt(it.strip)
785786
of "ignoresubmodules":
786787
result.ignoreSubmodules = true
788+
of "asyncdownloads":
789+
result.useAsyncDownloads = true
787790
else: isGlobalFlag = false
788791

789792
var wasFlagHandled = true
@@ -918,7 +921,8 @@ proc initOptions*(): Options =
918921
useDeclarativeParser: false,
919922
legacy: false, #default to legacy code path for nimble < 1.0.0
920923
satResult: SatResult(),
921-
localDeps: true
924+
localDeps: true,
925+
useAsyncDownloads: false
922926
)
923927

924928
# Load visited hooks from environment variable to prevent recursive hook execution

0 commit comments

Comments
 (0)