retire 5.5.0 → 5.6.0
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.
- package/CHANGELOG.md +6 -0
- package/lib/cli.js +1 -0
- package/lib/reporters/cyclonedx-1_6-json.js +7 -8
- package/lib/reporters/cyclonedx-json.js +5 -7
- package/lib/reporters/cyclonedx.js +12 -5
- package/lib/reporters/json.js +1 -0
- package/lib/reporting.d.ts +1 -0
- package/lib/retire.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [5.6.0]
|
|
4
|
+
|
|
5
|
+
### Improvements
|
|
6
|
+
|
|
7
|
+
- Report when repository certificate errors are ignored (`--insecure`): as `ignoreRepositoryCertificateErrors` in the JSON report, and as a `retirejs:ignore-repository-certificate-errors` entry under `metadata.properties` in all CycloneDX reports. The entry is only present when the option is set.
|
|
8
|
+
|
|
3
9
|
## [5.5.0]
|
|
4
10
|
|
|
5
11
|
### Improvements
|
package/lib/cli.js
CHANGED
|
@@ -68,12 +68,16 @@ function configureCycloneDXJSONLogger(logger, writer, config, hash) {
|
|
|
68
68
|
const seen = new Map();
|
|
69
69
|
const vulnerabilitiesCyclone = new Map();
|
|
70
70
|
const includeVEX = config.outputformat === 'cyclonedxJSON1_6_VEX';
|
|
71
|
-
const
|
|
71
|
+
const vulnerabilityRepositoriesList = (0, utils_1.vulnerabilityRepositories)(config.jsRepo);
|
|
72
72
|
// Only attributable to a single URL when exactly one repository was used
|
|
73
73
|
const retireSource = {
|
|
74
74
|
name: 'Retire.js',
|
|
75
|
-
url:
|
|
75
|
+
url: vulnerabilityRepositoriesList.length === 1 ? vulnerabilityRepositoriesList[0] : undefined,
|
|
76
76
|
};
|
|
77
|
+
const properties = vulnerabilityRepositoriesList.map((repo) => ({ name: 'retirejs:vulnerability-repository', value: repo }));
|
|
78
|
+
if (config.insecure) {
|
|
79
|
+
properties.push({ name: 'retirejs:ignore-repository-certificate-errors', value: 'true' });
|
|
80
|
+
}
|
|
77
81
|
const components = finalResults.data
|
|
78
82
|
.filter((d) => d.results)
|
|
79
83
|
.map((r) => r.results
|
|
@@ -168,12 +172,7 @@ function configureCycloneDXJSONLogger(logger, writer, config, hash) {
|
|
|
168
172
|
version: retire.version,
|
|
169
173
|
},
|
|
170
174
|
],
|
|
171
|
-
properties:
|
|
172
|
-
? repositories.map((repo) => ({
|
|
173
|
-
name: 'retirejs:vulnerability-repository',
|
|
174
|
-
value: repo,
|
|
175
|
-
}))
|
|
176
|
-
: undefined,
|
|
175
|
+
properties: properties.length ? properties : undefined,
|
|
177
176
|
},
|
|
178
177
|
components: components,
|
|
179
178
|
vulnerabilities: includeVEX ? Array.from(vulnerabilitiesCyclone.values()) : undefined,
|
|
@@ -65,7 +65,10 @@ function configureCycloneDXJSONLogger(logger, writer, config, hash) {
|
|
|
65
65
|
};
|
|
66
66
|
logger.close = function (callback) {
|
|
67
67
|
const write = vulnsFound ? writer.err : writer.out;
|
|
68
|
-
const
|
|
68
|
+
const properties = (0, utils_1.vulnerabilityRepositories)(config.jsRepo).map((repo) => ({ name: 'retirejs:vulnerability-repository', value: repo }));
|
|
69
|
+
if (config.insecure) {
|
|
70
|
+
properties.push({ name: 'retirejs:ignore-repository-certificate-errors', value: 'true' });
|
|
71
|
+
}
|
|
69
72
|
const seen = new Map();
|
|
70
73
|
const components = finalResults.data
|
|
71
74
|
.filter((d) => d.results)
|
|
@@ -123,12 +126,7 @@ function configureCycloneDXJSONLogger(logger, writer, config, hash) {
|
|
|
123
126
|
version: retire.version,
|
|
124
127
|
},
|
|
125
128
|
],
|
|
126
|
-
properties:
|
|
127
|
-
? repositories.map((repo) => ({
|
|
128
|
-
name: 'retirejs:vulnerability-repository',
|
|
129
|
-
value: repo,
|
|
130
|
-
}))
|
|
131
|
-
: undefined,
|
|
129
|
+
properties: properties.length ? properties : undefined,
|
|
132
130
|
},
|
|
133
131
|
components: components,
|
|
134
132
|
}, undefined, 2));
|
|
@@ -65,9 +65,16 @@ function configureCycloneDXLogger(logger, writer, config, hash) {
|
|
|
65
65
|
};
|
|
66
66
|
logger.close = function (callback) {
|
|
67
67
|
const write = vulnsFound ? writer.err : writer.out;
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
const propertyList = (0, utils_1.vulnerabilityRepositories)(config.jsRepo).map((repo) => ({
|
|
69
|
+
name: 'retirejs:vulnerability-repository',
|
|
70
|
+
value: repo,
|
|
71
|
+
}));
|
|
72
|
+
if (config.insecure) {
|
|
73
|
+
propertyList.push({ name: 'retirejs:ignore-repository-certificate-errors', value: 'true' });
|
|
74
|
+
}
|
|
75
|
+
const properties = propertyList
|
|
76
|
+
.map((property) => `
|
|
77
|
+
<property name="${escapeXml(property.name)}">${escapeXml(property.value)}</property>`)
|
|
71
78
|
.join('');
|
|
72
79
|
const seen = new Set();
|
|
73
80
|
const components = finalResults.data
|
|
@@ -113,8 +120,8 @@ function configureCycloneDXLogger(logger, writer, config, hash) {
|
|
|
113
120
|
<name>retire.js</name>
|
|
114
121
|
<version>${retire.version}</version>
|
|
115
122
|
</tool>
|
|
116
|
-
</tools>${
|
|
117
|
-
<properties>${
|
|
123
|
+
</tools>${properties ? `
|
|
124
|
+
<properties>${properties}
|
|
118
125
|
</properties>` : ''}
|
|
119
126
|
</metadata>
|
|
120
127
|
<components>${components}
|
package/lib/reporters/json.js
CHANGED
|
@@ -47,6 +47,7 @@ exports.default = {
|
|
|
47
47
|
errors: [],
|
|
48
48
|
time: undefined,
|
|
49
49
|
vulnerabilityRepositories: (0, utils_1.vulnerabilityRepositories)(config.jsRepo),
|
|
50
|
+
ignoreRepositoryCertificateErrors: config.insecure,
|
|
50
51
|
};
|
|
51
52
|
logger.info = finalResults.messages.push;
|
|
52
53
|
logger.debug = config.verbose
|
package/lib/reporting.d.ts
CHANGED
package/lib/retire.js
CHANGED
package/package.json
CHANGED