diff --git a/changelog.markdown b/changelog.markdown index a4817caf..9c575705 100644 --- a/changelog.markdown +++ b/changelog.markdown @@ -3,6 +3,12 @@ # Nimble changelog +## 0.16.3 + +- Nim dependencies now use precompiled binaries when available. One can opt-out it by using `--disableNimBinaries`. +- Improves sat error messages. Making it easier to spot conflicting dependencies. +- Other fixes and improvements. + ## 0.16.2 - Adds a `requires` flag which allows to add extra packages to the dependency resolution. diff --git a/nimble.nimble b/nimble.nimble index b9bd2a16..9254849c 100644 --- a/nimble.nimble +++ b/nimble.nimble @@ -1,6 +1,6 @@ # Package -version = "0.16.2" +version = "0.16.3" author = "Dominik Picheta" description = "Nim package manager." license = "BSD" diff --git a/src/nimblepkg/nimblesat.nim b/src/nimblepkg/nimblesat.nim index 14197f56..4a562955 100644 --- a/src/nimblepkg/nimblesat.nim +++ b/src/nimblepkg/nimblesat.nim @@ -3,7 +3,7 @@ when defined(nimNimbleBootstrap): else: import sat/[sat, satvars] import version, packageinfotypes, download, packageinfo, packageparser, options, - sha1hashes, tools, downloadnim + sha1hashes, tools, downloadnim, cli import std/[tables, sequtils, algorithm, sets, strutils, options, strformat, os] @@ -494,6 +494,14 @@ proc solvePackages*(rootPkg: PackageInfo, pkgList: seq[PackageInfo], pkgsToInsta var pkgVersionTable = initTable[string, PackageVersions]() pkgVersionTable[root.name] = PackageVersions(pkgName: root.name, versions: @[root]) collectAllVersions(pkgVersionTable, root, options, downloadMinimalPackage, pkgList.mapIt(it.getMinimalInfo(options))) + if options.verbosity <= DebugPriority: + display("Info", "Collected packages", priority = DebugPriority) + for k, v in pkgVersionTable: + display("Info", k, priority = DebugPriority) + for ver in v.versions: + for dep in ver.requires: + display("Info", &"\t {dep.name} {dep.ver}", priority = DebugPriority) + solvedPkgs = pkgVersionTable.getSolvedPackages(output).topologicalSort() for solvedPkg in solvedPkgs: