aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Picheta <dominikp@kainos.com>2015-09-01 17:55:41 +0100
committerDominik Picheta <dominikp@kainos.com>2015-09-01 17:55:41 +0100
commiteb5ca129603e4169aaf51a6152a8ceea91073d1a (patch)
treec85a4a24284c8e2ec9fb1c89d2066b571d340ced
parent11fb1a8857fa5651ec4e60a29978011392aa85ce (diff)
downloadpackages-eb5ca129603e4169aaf51a6152a8ceea91073d1a.tar.gz
packages-eb5ca129603e4169aaf51a6152a8ceea91073d1a.zip
Package_scanner will now check for duplicate pkg names.
-rw-r--r--package_scanner.nim9
1 files changed, 9 insertions, 0 deletions
diff --git a/package_scanner.nim b/package_scanner.nim
index c3312bf..094cbd3 100644
--- a/package_scanner.nim
+++ b/package_scanner.nim
@@ -20,6 +20,8 @@ import httpclient
import net
import json
import os
+import sets
+import strutils
const
@@ -72,6 +74,8 @@ proc check(): int =
let
pkg_list = parseJson(readFile(getCurrentDir() / "packages.json"))
+ var names = initSet[string]()
+
for pdata in pkg_list:
name = if pdata.hasKey("name"): pdata["name"].str else: nil
@@ -111,6 +115,11 @@ proc check(): int =
if not (pdata["license"].str in LICENSES):
echo "W: ", name, " has an unexpected license: ", pdata["license"]
+ if name.normalize notin names:
+ names.incl(name.normalize)
+ else:
+ echo("E: ", name, ": a package by that name already exists.")
+ result.inc()
echo ""
echo "Problematic packages count: ", result