···88}
8990const downloadPkg = (pkg, verbose) => {
91+ const fileMarker = '@file:'
92+ const split = pkg.key.split(fileMarker)
93+ if (split.length == 2) {
94+ console.info(`ignoring lockfile entry "${split[0]}" which points at path "${split[1]}"`)
95 return
96+ } else if (split.length > 2) {
97+ throw new Error(`The lockfile entry key "${pkg.key}" contains "${fileMarker}" more than once. Processing is not implemented.`)
98+ }
99+100+ if (pkg.resolved === undefined) {
101+ throw new Error(`The lockfile entry with key "${pkg.key}" cannot be downloaded because it is missing the "resolved" attribute, which should contain the URL to download from. The lockfile might be invalid.`)
102 }
103104 const [ url, hash ] = pkg.resolved.split('#')
···1+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2+# yarn lockfile v1
3+4+5+"@org/somepack@file:vendor/orgpacks/somepack/assets":
6+ version "1.0.0"
7+8+"otherpack@file:vendor/otherpack":
9+ version "1.0.0"