summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorT.C. Hollingsworth <tchollingsworth@gmail.com>2013-03-12 20:13:25 +0100
committerTill Maas <opensource@till.name>2013-03-12 20:13:25 +0100
commit5f7b2db05a17bf2797c58fbc39f6183d596d0937 (patch)
tree92ee4e879b1b529199eb91b65030db3f83c1547d
parent7cbba103420740edffcc9e8d050e3266d8106e03 (diff)
downloadcnucnu-5f7b2db05a17bf2797c58fbc39f6183d596d0937.tar.gz
cnucnu-5f7b2db05a17bf2797c58fbc39f6183d596d0937.tar.xz
cnucnu-5f7b2db05a17bf2797c58fbc39f6183d596d0937.zip
package_list: Support NPM-DEFAULT regex and URL
-rwxr-xr-xcnucnu/package_list.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/cnucnu/package_list.py b/cnucnu/package_list.py
index d5d6e88..637a009 100755
--- a/cnucnu/package_list.py
+++ b/cnucnu/package_list.py
@@ -158,6 +158,10 @@ class Package(object):
# strip "rubygem-" prefix only if name was not overridden
if not name_override and name.startswith("rubygem-"):
name = name[len("rubygem-"):]
+ elif regex == "NPM-DEFAULT":
+ # strip "nodejs-" prefix only if name was not overridden
+ if not name_override and name.startswith("nodejs-"):
+ name = name[len("nodejs-"):]
# no elif here, because the previous regex aliases are only for name altering
if regex == "DEFAULT":
@@ -176,6 +180,8 @@ class Package(object):
regex = 'href="([0-9][0-9.]*)/"'
elif regex == "RUBYGEMS-DEFAULT":
regex = '"gem_uri":"http:\/\/rubygems.org\/gems\/%s-([0-9.]*?)\.gem"' % re.escape(name)
+ elif regex == "NPM-DEFAULT":
+ regex = '"version":"([0-9.]*?)"'
self.__regex = regex
self._invalidate_caches()
@@ -234,6 +240,12 @@ class Package(object):
if not name_override and name.startswith("rubygem-"):
name = name[len("rubygem-"):]
url = "http://rubygems.org/api/v1/gems/%s.json" % name
+ elif url == "NPM-DEFAULT":
+ # strip "nodejs-" prefix only if name was not overridden
+ if not name_override and name.startswith("nodejs-"):
+ name = name[len("nodejs-"):]
+ url = "http://registry.npmjs.org/%s" % name
+
self.__url = url
self.html = None