diff options
Diffstat (limited to 'meta/classes-recipe/npm.bbclass')
-rw-r--r-- | meta/classes-recipe/npm.bbclass | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/meta/classes-recipe/npm.bbclass b/meta/classes-recipe/npm.bbclass index 91da3295f2..344e8b4bec 100644 --- a/meta/classes-recipe/npm.bbclass +++ b/meta/classes-recipe/npm.bbclass | |||
@@ -72,8 +72,10 @@ def npm_pack(env, srcdir, workdir): | |||
72 | j = json.load(f) | 72 | j = json.load(f) |
73 | 73 | ||
74 | # base does not really matter and is for documentation purposes | 74 | # base does not really matter and is for documentation purposes |
75 | # only. But the 'version' part must exist because other parts of | 75 | # only. But the 'version' part must exist because other parts of |
76 | # the bbclass rely on it. | 76 | # the bbclass rely on it. |
77 | if 'version' not in j: | ||
78 | j['version'] = '0.0.0-unknown' | ||
77 | base = j['name'].split('/')[-1] | 79 | base = j['name'].split('/')[-1] |
78 | tarball = os.path.join(workdir, "%s-%s.tgz" % (base, j['version'])); | 80 | tarball = os.path.join(workdir, "%s-%s.tgz" % (base, j['version'])); |
79 | 81 | ||
@@ -152,6 +154,9 @@ python npm_do_configure() { | |||
152 | has_shrinkwrap_file = False | 154 | has_shrinkwrap_file = False |
153 | 155 | ||
154 | if has_shrinkwrap_file: | 156 | if has_shrinkwrap_file: |
157 | if int(orig_shrinkwrap.get("lockfileVersion", 0)) < 2: | ||
158 | bb.fatal("%s: lockfileVersion version 2 or later is required" % orig_shrinkwrap_file) | ||
159 | |||
155 | cached_shrinkwrap = copy.deepcopy(orig_shrinkwrap) | 160 | cached_shrinkwrap = copy.deepcopy(orig_shrinkwrap) |
156 | for package in orig_shrinkwrap["packages"]: | 161 | for package in orig_shrinkwrap["packages"]: |
157 | if package != "": | 162 | if package != "": |