snyk-nuget-plugin 1.22.0 → 1.23.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,29 +19,34 @@ async function getTargetFrameworksFromProjFile(rootDir) {
19
19
  }
20
20
  debug('Checking .net framework version in .csproj file ' + csprojPath);
21
21
  const csprojContents = fs.readFileSync(csprojPath);
22
- let frameworks = [];
22
+ let targetFrameworks = [];
23
23
  parseXML.parseString(csprojContents, (err, parsedCsprojContents) => {
24
- var _a, _b, _c, _d, _e;
24
+ var _a, _b;
25
25
  if (err) {
26
26
  reject(new errors_1.FileNotProcessableError(err));
27
27
  return;
28
28
  }
29
- const versionLoc = (_b = (_a = parsedCsprojContents === null || parsedCsprojContents === void 0 ? void 0 : parsedCsprojContents.Project) === null || _a === void 0 ? void 0 : _a.PropertyGroup) === null || _b === void 0 ? void 0 : _b[0];
30
- const versions = []
31
- .concat((((_c = versionLoc === null || versionLoc === void 0 ? void 0 : versionLoc.TargetFrameworkVersion) === null || _c === void 0 ? void 0 : _c[0]) || ((_d = versionLoc === null || versionLoc === void 0 ? void 0 : versionLoc.TargetFramework) === null || _d === void 0 ? void 0 : _d[0]) || ((_e = versionLoc === null || versionLoc === void 0 ? void 0 : versionLoc.TargetFrameworks) === null || _e === void 0 ? void 0 : _e[0]) ||
32
- '').split(';'))
33
- .filter(Boolean);
34
- if (versions.length < 1) {
29
+ const parsedTargetFrameworks = ((_b = (_a = parsedCsprojContents === null || parsedCsprojContents === void 0 ? void 0 : parsedCsprojContents.Project) === null || _a === void 0 ? void 0 : _a.PropertyGroup) === null || _b === void 0 ? void 0 : _b.reduce((targetFrameworks, propertyGroup) => {
30
+ var _a, _b, _c;
31
+ const targetFrameworkSource = ((_a = propertyGroup === null || propertyGroup === void 0 ? void 0 : propertyGroup.TargetFrameworkVersion) === null || _a === void 0 ? void 0 : _a[0]) || ((_b = propertyGroup === null || propertyGroup === void 0 ? void 0 : propertyGroup.TargetFramework) === null || _b === void 0 ? void 0 : _b[0]) || ((_c = propertyGroup === null || propertyGroup === void 0 ? void 0 : propertyGroup.TargetFrameworks) === null || _c === void 0 ? void 0 : _c[0]) ||
32
+ '';
33
+ return targetFrameworks
34
+ .concat(targetFrameworkSource.split(';'))
35
+ .filter(Boolean);
36
+ }, [])) || [];
37
+ if (parsedTargetFrameworks.length < 1) {
35
38
  debug('Could not find TargetFrameworkVersion/TargetFramework' +
36
39
  '/TargetFrameworks defined in the Project.PropertyGroup field of ' +
37
40
  'your .csproj file');
38
41
  }
39
- frameworks = versions.map(framework_1.toReadableFramework).filter(Boolean);
40
- if (versions.length > 1 && frameworks.length < 1) {
42
+ targetFrameworks = parsedTargetFrameworks
43
+ .map(framework_1.toReadableFramework)
44
+ .filter(Boolean);
45
+ if (parsedTargetFrameworks.length > 1 && targetFrameworks.length < 1) {
41
46
  debug('Could not find valid/supported .NET version in csproj file located at' +
42
47
  csprojPath);
43
48
  }
44
- resolve(frameworks[0]);
49
+ resolve(targetFrameworks[0]);
45
50
  });
46
51
  });
47
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"csproj-parser.js","sourceRoot":"","sources":["../../lib/nuget-parser/csproj-parser.ts"],"names":[],"mappings":";;;AAAA,sCAAuE;AAEvE,yBAAyB;AACzB,6BAA6B;AAC7B,mCAAmC;AACnC,qCAAqC;AAErC,2CAAkD;AAClD,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE3B,KAAK,UAAU,+BAA+B,CACnD,OAAe;IAEf,OAAO,IAAI,OAAO,CAA8B,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAClE,KAAK,CAAC,mCAAmC,GAAG,OAAO,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,EAAE;YACf,KAAK,CAAC,4BAA4B,GAAG,OAAO,GAAG,GAAG,CAAC,CAAC;YACpD,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,OAAO;SACR;QAED,KAAK,CAAC,kDAAkD,GAAG,UAAU,CAAC,CAAC;QAEvE,MAAM,cAAc,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAEnD,IAAI,UAAU,GAAoC,EAAE,CAAC;QACrD,QAAQ,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,oBAAoB,EAAE,EAAE;;YACjE,IAAI,GAAG,EAAE;gBACP,MAAM,CAAC,IAAI,gCAAuB,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzC,OAAO;aACR;YACD,MAAM,UAAU,eAAG,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,OAAO,0CAAE,aAAa,0CAAG,CAAC,CAAC,CAAC;YACrE,MAAM,QAAQ,GAAG,EAAE;iBAChB,MAAM,CACL,CACE,OAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,sBAAsB,0CAAG,CAAC,aACtC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,eAAe,0CAAG,CAAC,EAAC,WAChC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,gBAAgB,0CAAG,CAAC,EAAC;gBACjC,EAAE,CACH,CAAC,KAAK,CAAC,GAAG,CAAC,CACb;iBACA,MAAM,CAAC,OAAO,CAAC,CAAC;YAEnB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACvB,KAAK,CACH,uDAAuD;oBACrD,kEAAkE;oBAClE,mBAAmB,CACtB,CAAC;aACH;YACD,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,+BAAmB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;gBAChD,KAAK,CACH,uEAAuE;oBACrE,UAAU,CACb,CAAC;aACH;YACD,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAnDD,0EAmDC;AAED,SAAS,QAAQ,CAAC,OAAO,EAAE,MAAM;IAC/B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,GAAG,OAAO,CAAC,CAAC;KACzD;IACD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAE7C,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACzB,OAAO,QAAQ,CAAC;SACjB;KACF;AACH,CAAC"}
1
+ {"version":3,"file":"csproj-parser.js","sourceRoot":"","sources":["../../lib/nuget-parser/csproj-parser.ts"],"names":[],"mappings":"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"}
@@ -68,9 +68,19 @@ async function fetchNugetInformationFromPackages(flattenedPackageList, targetFra
68
68
  // begin collecting information from .nuget files on installed packages
69
69
  debug('Trying to analyze .nuspec files');
70
70
  for (const name of Object.keys(flattenedPackageList)) {
71
- const dep = flattenedPackageList[name];
72
- debug('...' + name);
73
- nugetPackageInformation.push(await nuspec_parser_1.parseNuspec(dep, targetFramework));
71
+ try {
72
+ const dep = flattenedPackageList[name];
73
+ debug('...' + name);
74
+ const resolved = await nuspec_parser_1.parseNuspec(dep, targetFramework);
75
+ nugetPackageInformation.push(resolved);
76
+ }
77
+ catch (e) {
78
+ debug('Failed parsing nuspec file');
79
+ debug(e);
80
+ //log but make sure to rethrow the error
81
+ //why? if we cannot parse nuspec file, we got nothing to do!
82
+ throw e;
83
+ }
74
84
  }
75
85
  return nugetPackageInformation;
76
86
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dotnet-framework-parser.js","sourceRoot":"","sources":["../../lib/nuget-parser/dotnet-framework-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dotnet-framework-parser.js","sourceRoot":"","sources":["../../lib/nuget-parser/dotnet-framework-parser.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseNuspec = void 0;
3
+ exports._parsedNuspec = exports.parseNuspec = void 0;
4
4
  const JSZip = require("jszip");
5
5
  const fs = require("fs");
6
6
  const path = require("path");
@@ -9,61 +9,113 @@ const debugModule = require("debug");
9
9
  const debug = debugModule('snyk');
10
10
  const targetFrameworkRegex = /([.a-zA-Z]+)([.0-9]+)/;
11
11
  async function parseNuspec(dep, targetFramework) {
12
- return Promise.resolve()
13
- .then(() => {
14
- const nupkgPath = path.resolve(dep.path, dep.name + '.' + dep.version + '.nupkg');
15
- const nupkgData = fs.readFileSync(nupkgPath);
16
- return JSZip.loadAsync(nupkgData);
17
- })
18
- .then(nuspecZipData => {
19
- const nuspecFiles = Object.keys(nuspecZipData.files).filter(file => {
20
- return path.extname(file) === '.nuspec';
21
- });
22
- return nuspecZipData.files[nuspecFiles[0]].async('text');
23
- })
24
- .then(nuspecContent => {
25
- return new Promise((resolve, reject) => {
26
- parseXML.parseString(nuspecContent, (err, result) => {
27
- if (err) {
28
- return reject(err);
29
- }
30
- let ownDeps = [];
31
- // We are only going to check the first targetFramework we encounter
32
- // in the future we may want to support multiple, but only once
33
- // we have dependency version conflict resolution implemented
34
- result.package.metadata.forEach(metadata => {
35
- metadata.dependencies.forEach(rawDependency => {
36
- // Find and add target framework version specific dependencies
37
- const depsForTargetFramework = extractDepsForTargetFramework(rawDependency, targetFramework);
38
- if (depsForTargetFramework && depsForTargetFramework.group) {
39
- ownDeps = ownDeps.concat(extractDepsFromRaw(depsForTargetFramework.group.dependency));
40
- }
41
- // Find all groups with no targetFramework attribute
42
- // add their deps
43
- const depsFromPlainGroups = extractDepsForPlainGroups(rawDependency);
44
- if (depsFromPlainGroups) {
45
- depsFromPlainGroups.forEach(depGroup => {
46
- ownDeps = ownDeps.concat(extractDepsFromRaw(depGroup.dependency));
47
- });
48
- }
49
- // Add the default dependencies
50
- ownDeps = ownDeps.concat(extractDepsFromRaw(rawDependency.dependency));
51
- });
52
- });
53
- return resolve({
54
- children: ownDeps,
55
- name: dep.name,
56
- });
57
- });
58
- });
59
- })
60
- .catch(err => {
61
- // parsing problems are coerced into an empty nuspec
62
- debug('Error parsing dependency', JSON.stringify(dep), err);
12
+ //precaution
13
+ if (!dep) {
14
+ throw new Error('expected DependencyInfo parameter to have value but found it undefined');
15
+ }
16
+ //another precaution
17
+ if (!targetFramework) {
18
+ throw new Error('expected TargetFramework parameter to have value but found it undefined');
19
+ }
20
+ const nuspecContent = await loadNuspecFromAsync(dep);
21
+ if (nuspecContent === null) {
22
+ debug('failed to load nuspec content');
63
23
  return null;
64
- });
24
+ }
25
+ return await _parsedNuspec(nuspecContent, targetFramework, dep.name);
65
26
  }
66
27
  exports.parseNuspec = parseNuspec;
28
+ async function loadNuspecFromAsync(dep) {
29
+ const nupkgPath = path.resolve(dep.path, dep.name + '.' + dep.version + '.nupkg');
30
+ let nupkgData;
31
+ try {
32
+ nupkgData = fs.readFileSync(nupkgPath);
33
+ }
34
+ catch (err) {
35
+ if (err.code == 'ENOENT') {
36
+ debug('No nupkg file found at ' + nupkgPath);
37
+ return null; //this is needed not to break existing code flow
38
+ }
39
+ else {
40
+ throw err;
41
+ }
42
+ }
43
+ const nuspecZipData = await JSZip.loadAsync(nupkgData);
44
+ const nuspecFile = Object.keys(nuspecZipData.files).find(file => {
45
+ return path.extname(file) === '.nuspec';
46
+ });
47
+ if (!nuspecFile) {
48
+ throw new Error('`failed to read nupkg file from: ${nupkgPath}`');
49
+ }
50
+ if (!nuspecZipData) {
51
+ throw new Error(`failed to open nupkg file as an archive from: ${nupkgPath}`);
52
+ }
53
+ return await nuspecZipData.files[nuspecFile].async('text');
54
+ }
55
+ //this is exported for testing, but should not executed directly. Hence the '_' in the name.
56
+ async function _parsedNuspec(nuspecContent, targetFramework, depName) {
57
+ var _a;
58
+ const parsedNuspec = await parseXML.parseStringPromise(nuspecContent.trim());
59
+ let ownDeps = [];
60
+ //note: this will throw if assertion fails
61
+ assertNuspecSchema(parsedNuspec);
62
+ for (const metadata of parsedNuspec.package.metadata) {
63
+ (_a = metadata.dependencies) === null || _a === void 0 ? void 0 : _a.forEach(rawDependency => {
64
+ // Find and add target framework version specific dependencies
65
+ const depsForTargetFramework = extractDepsForTargetFramework(rawDependency, targetFramework);
66
+ if (depsForTargetFramework && depsForTargetFramework.group) {
67
+ ownDeps = ownDeps.concat(extractDepsFromRaw(depsForTargetFramework.group.dependency));
68
+ }
69
+ // Find all groups with no targetFramework attribute
70
+ // add their deps
71
+ const depsFromPlainGroups = extractDepsForPlainGroups(rawDependency);
72
+ if (depsFromPlainGroups) {
73
+ depsFromPlainGroups.forEach(depGroup => {
74
+ ownDeps = ownDeps.concat(extractDepsFromRaw(depGroup.dependency));
75
+ });
76
+ }
77
+ // Add the default dependencies
78
+ ownDeps = ownDeps.concat(extractDepsFromRaw(rawDependency.dependency));
79
+ });
80
+ }
81
+ return {
82
+ children: ownDeps,
83
+ name: depName,
84
+ };
85
+ }
86
+ exports._parsedNuspec = _parsedNuspec;
87
+ function assertNuspecSchema(parsedNuspec) {
88
+ var _a;
89
+ if (!((_a = parsedNuspec.package) === null || _a === void 0 ? void 0 : _a.metadata)) {
90
+ throw new Error('This is an invalid nuspec file. Package or Metadata xml section is missing. This is a required element. See https://docs.microsoft.com/en-us/nuget/reference/nuspec');
91
+ }
92
+ //just in case, this should *not* happen
93
+ if (!Array.isArray(parsedNuspec.package.metadata)) {
94
+ throw new Error('This is an invalid nuspec file; the metadata tag is supposed to be a collection of objects but it is not!');
95
+ }
96
+ for (const metadata of parsedNuspec.package.metadata) {
97
+ //just in case, this shouldn't happen as this would indicate invalid/malformed nuspec file
98
+ if (metadata == null || typeof metadata !== 'object') {
99
+ throw new Error('Expected elements in a "metadata" tag to be objects, but they were ' +
100
+ typeof metadata +
101
+ ', this is not supposed to happen and is likely due to malformed nuspec file.');
102
+ }
103
+ if (metadata.dependencies) {
104
+ //just in case, error would indicate malformed nuspec
105
+ if (!Array.isArray(metadata.dependencies)) {
106
+ throw new Error('Expected that "dependencies" tag would be an array but it isn\'t. This is not supposed to happen and is likely due to malformed nuspec file!');
107
+ }
108
+ for (const rawDependency of metadata.dependencies) {
109
+ //just in case, shouldn't happen as this would indicate malformed nuspec format
110
+ if (typeof rawDependency !== 'object') {
111
+ throw new Error('Unexpected dependency value. Expected it to be object but it was ' +
112
+ typeof rawDependency +
113
+ ', this is likely a malformed nuspec');
114
+ }
115
+ }
116
+ }
117
+ }
118
+ }
67
119
  function extractDepsForPlainGroups(rawDependency) {
68
120
  if (!rawDependency.group) {
69
121
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"nuspec-parser.js","sourceRoot":"","sources":["../../lib/nuget-parser/nuspec-parser.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,yBAAyB;AACzB,6BAA6B;AAC7B,mCAAmC;AAEnC,qCAAqC;AACrC,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAElC,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AAE9C,KAAK,UAAU,WAAW,CAAC,GAAG,EAAE,eAAe;IACpD,OAAO,OAAO,CAAC,OAAO,EAAE;SACrB,IAAI,CAAC,GAAG,EAAE;QACT,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAC5B,GAAG,CAAC,IAAI,EACR,GAAG,CAAC,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,OAAO,GAAG,QAAQ,CACxC,CAAC;QACF,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7C,OAAO,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC,CAAC;SACD,IAAI,CAAC,aAAa,CAAC,EAAE;QACpB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACjE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,OAAO,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC;SACD,IAAI,CAAC,aAAa,CAAC,EAAE;QACpB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,QAAQ,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;gBAClD,IAAI,GAAG,EAAE;oBACP,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;iBACpB;gBAED,IAAI,OAAO,GAAQ,EAAE,CAAC;gBACtB,oEAAoE;gBACpE,+DAA+D;gBAC/D,6DAA6D;gBAC7D,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACzC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;wBAC5C,8DAA8D;wBAC9D,MAAM,sBAAsB,GAAG,6BAA6B,CAC1D,aAAa,EACb,eAAe,CAChB,CAAC;wBAEF,IAAI,sBAAsB,IAAI,sBAAsB,CAAC,KAAK,EAAE;4BAC1D,OAAO,GAAG,OAAO,CAAC,MAAM,CACtB,kBAAkB,CAAC,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,CAC5D,CAAC;yBACH;wBAED,oDAAoD;wBACpD,iBAAiB;wBACjB,MAAM,mBAAmB,GAAG,yBAAyB,CACnD,aAAa,CACd,CAAC;wBAEF,IAAI,mBAAmB,EAAE;4BACvB,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gCACrC,OAAO,GAAG,OAAO,CAAC,MAAM,CACtB,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CACxC,CAAC;4BACJ,CAAC,CAAC,CAAC;yBACJ;wBAED,+BAA+B;wBAC/B,OAAO,GAAG,OAAO,CAAC,MAAM,CACtB,kBAAkB,CAAC,aAAa,CAAC,UAAU,CAAC,CAC7C,CAAC;oBACJ,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,OAAO,OAAO,CAAC;oBACb,QAAQ,EAAE,OAAO;oBACjB,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,CAAC,EAAE;QACX,oDAAoD;QACpD,KAAK,CAAC,0BAA0B,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACP,CAAC;AA1ED,kCA0EC;AAED,SAAS,yBAAyB,CAAC,aAAa;IAC9C,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;QACxB,OAAO,EAAE,CAAC;KACX;IAED,OAAO,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;QACxC,mEAAmE;QACnE,OAAO,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,6BAA6B,CAAC,aAAa,EAAE,eAAe;IACnE,IAAI,CAAC,aAAa,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;QAC1C,OAAO;KACR;IAED,OAAO,aAAa,CAAC,KAAK;SACvB,MAAM,CAAC,KAAK,CAAC,EAAE;;QACd,OAAO,CACL,OAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,CAAC,0CAAE,eAAe;YACzB,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CACnD,CAAC;IACJ,CAAC,CAAC;SACD,GAAG,CAAC,KAAK,CAAC,EAAE;QACX,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAClE,OAAO;YACL,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;YACnB,KAAK;YACL,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;SAClB,CAAC;IACJ,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS,EAAE;YAC/B,OAAO,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;SAC9C;QAED,OAAO,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC;SACD,IAAI,CAAC,KAAK,CAAC,EAAE;QACZ,OAAO,CACL,eAAe,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YAC7C,eAAe,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CACzC,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,kBAAkB,CAAC,eAAe;IACzC,IAAI,CAAC,eAAe,EAAE;QACpB,OAAO,EAAE,CAAC;KACX;IAED,MAAM,IAAI,GAA4B,EAAE,CAAC;IACzC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE;YAChB,IAAI,CAAC,IAAI,CAAC;gBACR,YAAY,EAAE,EAAE;gBAChB,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE;gBACd,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO;aACvB,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"nuspec-parser.js","sourceRoot":"","sources":["../../lib/nuget-parser/nuspec-parser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "main": "dist/index.js",
5
5
  "scripts": {
6
6
  "test": "npm run lint && npm run unit-test",
7
- "unit-test": "tap --no-coverage test/*.test.ts --timeout=300",
7
+ "unit-test": "jest && tap --no-coverage test/*.test.ts --timeout=300",
8
8
  "lint": "prettier --check \"./lib/**/*.ts\" && eslint -c .eslintrc.js \"./lib/**/*\"",
9
9
  "lint:fix": "prettier --write \"./lib/**/*.ts\" && eslint -c .eslintrc.js --fix \"./lib/**/*\"",
10
10
  "build": "tsc",
@@ -42,14 +42,17 @@
42
42
  "xml2js": "^0.4.17"
43
43
  },
44
44
  "devDependencies": {
45
+ "@types/jest": "^27.0.0",
45
46
  "@types/node": "^10",
46
47
  "@typescript-eslint/eslint-plugin": "^2.31.0",
47
48
  "@typescript-eslint/parser": "^2.31.0",
48
49
  "eslint": "^6.8.0",
49
50
  "eslint-config-prettier": "^6.15.0",
51
+ "jest": "^27.0.6",
50
52
  "prettier": "^1.19.1",
51
53
  "tap": "^14.10.7",
54
+ "ts-jest": "^27.0.4",
52
55
  "typescript": "^3.8.3"
53
56
  },
54
- "version": "1.22.0"
57
+ "version": "1.23.2"
55
58
  }