@stoplight/spectral-core 1.15.0 → 1.15.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.
@@ -3,7 +3,7 @@ import { Ruleset } from './ruleset';
3
3
  import { Format } from './format';
4
4
  import type { HumanReadableDiagnosticSeverity, IRuleThen, RuleDefinition, Stringifable } from './types';
5
5
  import { Formats } from './formats';
6
- import type { Stringified } from './types';
6
+ import type { Stringified, FileRulesetSeverityDefinition } from './types';
7
7
  export interface IRule {
8
8
  description: string | null;
9
9
  message: string | null;
@@ -43,6 +43,7 @@ export declare class Rule implements IRule {
43
43
  };
44
44
  get enabled(): boolean;
45
45
  set enabled(enabled: boolean);
46
+ static isEnabled(rule: IRule, severity: FileRulesetSeverityDefinition): boolean;
46
47
  getSeverityForSource(source: string, path: JsonPath): DiagnosticSeverity | -1;
47
48
  get severity(): DiagnosticSeverity;
48
49
  set severity(severity: Optional<HumanReadableDiagnosticSeverity | DiagnosticSeverity>);
@@ -38,6 +38,9 @@ class Rule {
38
38
  set enabled(enabled) {
39
39
  (0, tslib_1.__classPrivateFieldSet)(this, _Rule_enabled, enabled, "f");
40
40
  }
41
+ static isEnabled(rule, severity) {
42
+ return severity === 'all' || (severity === 'recommended' && rule.recommended);
43
+ }
41
44
  getSeverityForSource(source, path) {
42
45
  if (this.overrides === void 0 || this.overrides.definition.size === 0) {
43
46
  return this.severity;
@@ -1 +1 @@
1
- {"version":3,"file":"rule.js","sourceRoot":"","sources":["../../src/ruleset/rule.ts"],"names":[],"mappings":";;;;;AAAA,mCAAkC;AAElC,0CAAoD;AACpD,0CAAgD;AAChD,kEAAyD;AAEzD,+CAAiF;AAIjF,iDAA8C;AAC9C,uCAAoC;AACpC,mCAAuC;AAwBvC,MAAa,IAAI;IAYf,YACkB,IAAY,EACZ,UAA0B,EAC1B,KAAc;;QAFd,SAAI,GAAJ,IAAI,CAAQ;QACZ,eAAU,GAAV,UAAU,CAAgB;QAC1B,UAAK,GAAL,KAAK,CAAS;QAZhC,iCAA+B;QAG/B,gCAAkB;QAGlB,6BAAoB;QACpB,8BAAkB;QAOhB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,KAAK,KAAK,CAAC;QACpD,oCAAA,IAAI,iBAAY,IAAI,CAAC,WAAW,MAAA,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,MAAA,UAAU,CAAC,WAAW,mCAAI,IAAI,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,MAAA,UAAU,CAAC,OAAO,mCAAI,IAAI,CAAC;QAC1C,IAAI,CAAC,gBAAgB,GAAG,MAAA,UAAU,CAAC,gBAAgB,mCAAI,IAAI,CAAC;QAC5D,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,KAAK,KAAK,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,iBAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChF,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAID,IAAW,OAAO;QAChB,OAAO,oCAAA,IAAI,qBAAS,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,IAAW,OAAO,CAAC,OAAgB;QACjC,oCAAA,IAAI,iBAAY,OAAO,MAAA,CAAC;IAC1B,CAAC;IAEM,oBAAoB,CAAC,MAAc,EAAE,IAAc;QACxD,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE;YACrE,OAAO,IAAI,CAAC,QAAQ,CAAC;SACtB;QAED,MAAM,cAAc,GAAG,IAAA,eAAQ,EAAC,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;QAC/E,MAAM,iBAAiB,GAA2C,EAAE,CAAC;QAErE,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE;YACpE,IAAI,IAAA,qBAAS,EAAC,cAAc,EAAE,MAAM,CAAC,EAAE;gBACrC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAClC;SACF;QAED,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;YAClC,OAAO,IAAI,CAAC,QAAQ,CAAC;SACtB;QAED,IAAI,QAAQ,GAAuB,IAAI,CAAC,QAAQ,CAAC;QACjD,IAAI,cAAc,GAAG,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,IAAA,oBAAa,EAAC,IAAI,CAAC,CAAC;QAEpC,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE;YAChD,KAAK,MAAM,CAAC,YAAY,EAAE,gBAAgB,CAAC,IAAI,gBAAgB,CAAC,OAAO,EAAE,EAAE;gBACzE,IAAI,YAAY,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;oBACpF,cAAc,GAAG,YAAY,CAAC;oBAC9B,QAAQ,GAAG,gBAAgB,CAAC;iBAC7B;aACF;SACF;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,oCAAA,IAAI,sBAAU,CAAC;IACxB,CAAC;IAED,IAAW,QAAQ,CAAC,QAAwE;QAC1F,IAAI,QAAQ,KAAK,KAAK,CAAC,EAAE;YACvB,oCAAA,IAAI,kBAAa,iCAAsB,MAAA,CAAC;SACzC;aAAM;YACL,oCAAA,IAAI,kBAAa,IAAA,gCAAqB,EAAC,QAAQ,CAAC,MAAA,CAAC;SAClD;IACH,CAAC;IAED,IAAW,IAAI;QACb,OAAO,oCAAA,IAAI,kBAAM,CAAC;IACpB,CAAC;IAED,IAAW,IAAI,CAAC,IAA4B;QAC1C,oCAAA,IAAI,cAAS,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAA,CAAC;IACnD,CAAC;IAED,IAAW,KAAK;QACd,OAAO,oCAAA,IAAI,mBAAO,CAAC;IACrB,CAAC;IAED,IAAW,KAAK,CAAC,KAA8B;QAC7C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC3D,oCAAA,IAAI,eAAU,IAAI,CAAC,KAAK,CAAC,iBAAiB;YACxC,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAQ,CAAC,MAAA,CAAC;IACjG,CAAC;IAEM,kBAAkB,CAAC,OAA2B;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB;YACjC,CAAC,CAAC,oCAAA,IAAI,mBAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAC9E,CAAC,CAAC,oCAAA,IAAI,mBAAO,CAAC;IAClB,CAAC;IAEM,aAAa,CAAC,OAA2B;QAC9C,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE;YACzB,OAAO,IAAI,CAAC;SACb;QAED,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,OAAO,KAAK,CAAC;SACd;QAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBAC5B,OAAO,IAAI,CAAC;aACb;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAEM,MAAM;QACX,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC3B,GAAG,IAAI,CAAC,QAAQ;gBAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;gBAC5B,GAAG,CAAC,iBAAiB,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAA,6BAAU,EAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAC9F,CAAC,CAAC;YACH,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAC7F,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;SACrB,CAAC;IACJ,CAAC;CACF;AAxJD,oBAwJC"}
1
+ {"version":3,"file":"rule.js","sourceRoot":"","sources":["../../src/ruleset/rule.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,12 @@ import type { FileRulesetSeverityDefinition, ParserOptions, RulesetAliasesDefini
3
3
  import { Formats } from './formats';
4
4
  import type { Stringified } from './types';
5
5
  declare const STACK_SYMBOL: unique symbol;
6
+ declare const EXPLICIT_SEVERITY: unique symbol;
6
7
  declare type RulesetContext = {
7
8
  readonly severity?: FileRulesetSeverityDefinition;
8
9
  readonly source?: string;
9
10
  readonly [STACK_SYMBOL]?: Map<RulesetDefinition, Ruleset>;
11
+ readonly [EXPLICIT_SEVERITY]?: boolean;
10
12
  };
11
13
  declare type RulesetJson = {
12
14
  id: number;
@@ -6,6 +6,7 @@ const tslib_1 = require("tslib");
6
6
  const path_1 = require("@stoplight/path");
7
7
  const json_1 = require("@stoplight/json");
8
8
  const minimatch_1 = require("./utils/minimatch");
9
+ const rule_1 = require("./rule");
9
10
  const index_1 = require("./validation/index");
10
11
  const rules_1 = require("./mergers/rules");
11
12
  const __1 = require("..");
@@ -13,6 +14,7 @@ const rulesets_1 = require("./mergers/rulesets");
13
14
  const formats_1 = require("./formats");
14
15
  const guards_1 = require("./utils/guards");
15
16
  const STACK_SYMBOL = Symbol('@stoplight/spectral/ruleset/#stack');
17
+ const EXPLICIT_SEVERITY = Symbol('@stoplight/spectral/ruleset/#explicit-severity');
16
18
  const DEFAULT_RULESET_FILE = /^\.?spectral\.(ya?ml|json|m?js)$/;
17
19
  let SEED = 1;
18
20
  class Ruleset {
@@ -62,7 +64,8 @@ class Ruleset {
62
64
  ? (Array.isArray(definition.extends) ? definition.extends : [definition.extends]).reduce((extensions, extension) => {
63
65
  let actualExtension;
64
66
  let severity = 'recommended';
65
- if (Array.isArray(extension)) {
67
+ const explicitSeverity = Array.isArray(extension);
68
+ if (explicitSeverity) {
66
69
  [actualExtension, severity] = extension;
67
70
  }
68
71
  else {
@@ -72,7 +75,11 @@ class Ruleset {
72
75
  if (existingInstance !== void 0) {
73
76
  return extensions;
74
77
  }
75
- extensions.push(new Ruleset(actualExtension, { severity, [STACK_SYMBOL]: stack }));
78
+ extensions.push(new Ruleset(actualExtension, {
79
+ severity,
80
+ [STACK_SYMBOL]: stack,
81
+ [EXPLICIT_SEVERITY]: explicitSeverity,
82
+ }));
76
83
  return extensions;
77
84
  }, [])
78
85
  : null;
@@ -199,6 +206,9 @@ _Ruleset_context = new WeakMap(), _Ruleset_instances = new WeakSet(), _Ruleset_g
199
206
  continue;
200
207
  for (const rule of Object.values(extendedRuleset.rules)) {
201
208
  rules[rule.name] = rule;
209
+ if ((0, tslib_1.__classPrivateFieldGet)(this, _Ruleset_context, "f")[STACK_SYMBOL] !== void 0 && (0, tslib_1.__classPrivateFieldGet)(this, _Ruleset_context, "f")[EXPLICIT_SEVERITY] === true) {
210
+ rule.enabled = rule_1.Rule.isEnabled(rule, (0, tslib_1.__classPrivateFieldGet)(this, _Ruleset_context, "f").severity);
211
+ }
202
212
  }
203
213
  }
204
214
  }
@@ -207,8 +217,7 @@ _Ruleset_context = new WeakMap(), _Ruleset_instances = new WeakSet(), _Ruleset_g
207
217
  const rule = (0, rules_1.mergeRule)(rules[name], name, definition, this);
208
218
  rules[name] = rule;
209
219
  if (rule.owner === this) {
210
- rule.enabled =
211
- (0, tslib_1.__classPrivateFieldGet)(this, _Ruleset_context, "f").severity === 'all' || ((0, tslib_1.__classPrivateFieldGet)(this, _Ruleset_context, "f").severity === 'recommended' && rule.recommended);
220
+ rule.enabled = rule_1.Rule.isEnabled(rule, (0, tslib_1.__classPrivateFieldGet)(this, _Ruleset_context, "f").severity);
212
221
  }
213
222
  if (rule.formats !== null) {
214
223
  for (const format of rule.formats) {
@@ -1 +1 @@
1
- {"version":3,"file":"ruleset.js","sourceRoot":"","sources":["../../src/ruleset/ruleset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ruleset.js","sourceRoot":"","sources":["../../src/ruleset/ruleset.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { IDocument } from '../document';
2
2
  import { DocumentInventory } from '../documentInventory';
3
3
  import { IRuleResult } from '../types';
4
- import { ComputeFingerprintFunc } from '../utils';
5
4
  import { Ruleset } from '../ruleset/ruleset';
6
5
  export declare class Runner {
7
6
  protected readonly inventory: DocumentInventory;
@@ -10,5 +9,5 @@ export declare class Runner {
10
9
  protected get document(): IDocument;
11
10
  addResult(result: IRuleResult): void;
12
11
  run(ruleset: Ruleset): Promise<void>;
13
- getResults(computeFingerprint: ComputeFingerprintFunc): IRuleResult[];
12
+ getResults(): IRuleResult[];
14
13
  }
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Runner = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const utils_1 = require("../utils");
5
+ const results_1 = require("./utils/results");
6
6
  const lintNode_1 = require("./lintNode");
7
7
  const legacy_1 = (0, tslib_1.__importDefault)(require("nimma/legacy"));
8
8
  const fallbacks_1 = require("nimma/fallbacks");
@@ -57,8 +57,8 @@ class Runner {
57
57
  await Promise.all(runnerContext.promises);
58
58
  }
59
59
  }
60
- getResults(computeFingerprint) {
61
- return (0, utils_1.prepareResults)(this.results, computeFingerprint);
60
+ getResults() {
61
+ return (0, results_1.prepareResults)(this.results);
62
62
  }
63
63
  }
64
64
  exports.Runner = Runner;
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner/runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { IPosition } from '@stoplight/types';
2
+ import type { ISpectralDiagnostic } from '../../types';
3
+ export declare const prepareResults: (results: ISpectralDiagnostic[]) => ISpectralDiagnostic[];
4
+ export declare const comparePosition: (left: IPosition, right: IPosition) => -1 | 0 | 1;
5
+ export declare const compareResults: (left: ISpectralDiagnostic, right: ISpectralDiagnostic) => -1 | 0 | 1;
6
+ export declare const sortResults: (results: ISpectralDiagnostic[]) => ISpectralDiagnostic[];
@@ -1,6 +1,37 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sortResults = exports.compareResults = exports.comparePosition = void 0;
3
+ exports.sortResults = exports.compareResults = exports.comparePosition = exports.prepareResults = void 0;
4
+ const computeResultFingerprint = (rule) => {
5
+ let id = String(rule.code);
6
+ if (rule.path.length > 0) {
7
+ id += JSON.stringify(rule.path);
8
+ }
9
+ else {
10
+ id += JSON.stringify(rule.range);
11
+ }
12
+ if (rule.source !== void 0) {
13
+ id += rule.source;
14
+ }
15
+ if (rule.message !== void 0) {
16
+ id += rule.message;
17
+ }
18
+ return id;
19
+ };
20
+ const prepareResults = (results) => {
21
+ return (0, exports.sortResults)(deduplicateResults(results));
22
+ };
23
+ exports.prepareResults = prepareResults;
24
+ const deduplicateResults = (results) => {
25
+ const fingerprints = new Set();
26
+ return results.filter(result => {
27
+ const fingerprint = computeResultFingerprint(result);
28
+ if (fingerprints.has(fingerprint)) {
29
+ return false;
30
+ }
31
+ fingerprints.add(fingerprint);
32
+ return true;
33
+ });
34
+ };
4
35
  const compareCode = (left, right) => {
5
36
  if (left === void 0 && right === void 0) {
6
37
  return 0;
@@ -64,4 +95,4 @@ const sortResults = (results) => {
64
95
  return [...results].sort(exports.compareResults);
65
96
  };
66
97
  exports.sortResults = sortResults;
67
- //# sourceMappingURL=sortResults.js.map
98
+ //# sourceMappingURL=results.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../../../src/runner/utils/results.ts"],"names":[],"mappings":";;;AAGA,MAAM,wBAAwB,GAAG,CAAC,IAAyB,EAAU,EAAE;IACrE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE3B,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACxB,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACjC;SAAM;QACL,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,EAAE;QAC1B,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC;KACnB;IAED,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE;QAC3B,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC;KACpB;IAED,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAEK,MAAM,cAAc,GAAG,CAAC,OAA8B,EAAyB,EAAE;IACtF,OAAO,IAAA,mBAAW,EAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC;AAFW,QAAA,cAAc,kBAEzB;AAEF,MAAM,kBAAkB,GAAG,CAAC,OAA8B,EAAyB,EAAE;IACnF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;QAC7B,MAAM,WAAW,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACjC,OAAO,KAAK,CAAC;SACd;QAED,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,IAAiC,EAAE,KAAkC,EAAU,EAAE;IACpG,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE;QACvC,OAAO,CAAC,CAAC;KACV;IAED,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE;QACnB,OAAO,CAAC,CAAC,CAAC;KACX;IAED,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE;QACpB,OAAO,CAAC,CAAC;KACV;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9E,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAwB,EAAE,KAAyB,EAAU,EAAE;IACpF,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE;QACvC,OAAO,CAAC,CAAC;KACV;IAED,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE;QACnB,OAAO,CAAC,CAAC,CAAC;KACX;IAED,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE;QACpB,OAAO,CAAC,CAAC;KACV;IAED,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,KAAa,EAAc,EAAE;IAC9C,IAAI,KAAK,GAAG,CAAC,EAAE;QACb,OAAO,CAAC,CAAC,CAAC;KACX;IAED,IAAI,KAAK,GAAG,CAAC,EAAE;QACb,OAAO,CAAC,CAAC;KACV;IAED,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAEK,MAAM,eAAe,GAAG,CAAC,IAAe,EAAE,KAAgB,EAAc,EAAE;IAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IAExC,IAAI,QAAQ,KAAK,CAAC,EAAE;QAClB,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;KAC5B;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAElD,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC;AAVW,QAAA,eAAe,mBAU1B;AAEK,MAAM,cAAc,GAAG,CAAC,IAAyB,EAAE,KAA0B,EAAc,EAAE;IAClG,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE5D,IAAI,UAAU,KAAK,CAAC,EAAE;QACpB,OAAO,SAAS,CAAC,UAAU,CAAC,CAAC;KAC9B;IAED,MAAM,SAAS,GAAG,IAAA,uBAAe,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEvE,IAAI,SAAS,KAAK,CAAC,EAAE;QACnB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEpD,IAAI,QAAQ,KAAK,CAAC,EAAE;QAClB,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;KAC5B;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAEnE,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC;AAtBW,QAAA,cAAc,kBAsBzB;AAEK,MAAM,WAAW,GAAG,CAAC,OAA8B,EAAyB,EAAE;IACnF,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,sBAAc,CAAC,CAAC;AAC3C,CAAC,CAAC;AAFW,QAAA,WAAW,eAEtB"}
@@ -1,13 +1,12 @@
1
1
  import { IDocument, IParsedResult } from './document';
2
- import { IConstructorOpts, IRunOpts, ISpectralDiagnostic, ISpectralFullResult } from './types';
2
+ import type { IConstructorOpts, IRunOpts, ISpectralDiagnostic, ISpectralFullResult } from './types';
3
+ import type { RulesetDefinition } from './ruleset/index';
3
4
  import { Ruleset } from './ruleset/ruleset';
4
- import { RulesetDefinition } from './ruleset/types';
5
5
  export * from './types';
6
6
  export declare class Spectral {
7
7
  protected readonly opts?: IConstructorOpts | undefined;
8
8
  private readonly _resolver;
9
9
  ruleset?: Ruleset;
10
- private readonly _computeFingerprint;
11
10
  constructor(opts?: IConstructorOpts | undefined);
12
11
  protected parseDocument(target: IParsedResult | IDocument | Record<string, unknown> | string): IDocument;
13
12
  runWithResolved(target: IParsedResult | IDocument | Record<string, unknown> | string, opts?: IRunOpts): Promise<ISpectralFullResult>;
package/dist/spectral.js CHANGED
@@ -6,20 +6,16 @@ const json_1 = require("@stoplight/json");
6
6
  const types_1 = require("@stoplight/types");
7
7
  const Parsers = (0, tslib_1.__importStar)(require("@stoplight/spectral-parsers"));
8
8
  const spectral_ref_resolver_1 = require("@stoplight/spectral-ref-resolver");
9
- const lodash_1 = require("lodash");
10
9
  const document_1 = require("./document");
11
10
  const documentInventory_1 = require("./documentInventory");
12
11
  const runner_1 = require("./runner");
13
- const utils_1 = require("./utils");
14
12
  const ruleset_1 = require("./ruleset/ruleset");
15
13
  const generateDocumentWideResult_1 = require("./utils/generateDocumentWideResult");
16
14
  const ruleset_2 = require("./ruleset");
17
- lodash_1.memoize.Cache = WeakMap;
18
15
  (0, tslib_1.__exportStar)(require("./types"), exports);
19
16
  class Spectral {
20
17
  constructor(opts) {
21
18
  this.opts = opts;
22
- this._computeFingerprint = (0, lodash_1.memoize)(utils_1.defaultComputeResultFingerprint);
23
19
  if ((opts === null || opts === void 0 ? void 0 : opts.resolver) !== void 0) {
24
20
  this._resolver = opts.resolver;
25
21
  }
@@ -57,7 +53,7 @@ class Spectral {
57
53
  }
58
54
  }
59
55
  await runner.run(ruleset);
60
- const results = runner.getResults(this._computeFingerprint);
56
+ const results = runner.getResults();
61
57
  return {
62
58
  resolved: inventory.resolved,
63
59
  results,
@@ -1 +1 @@
1
- {"version":3,"file":"spectral.js","sourceRoot":"","sources":["../src/spectral.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spectral.js","sourceRoot":"","sources":["../src/spectral.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stoplight/spectral-core",
3
- "version": "1.15.0",
3
+ "version": "1.15.2",
4
4
  "sideEffects": false,
5
5
  "homepage": "https://github.com/stoplightio/spectral",
6
6
  "bugs": "https://github.com/stoplightio/spectral/issues",
@@ -49,7 +49,6 @@
49
49
  "ajv": "^8.6.0",
50
50
  "ajv-errors": "~3.0.0",
51
51
  "ajv-formats": "~2.1.0",
52
- "blueimp-md5": "2.18.0",
53
52
  "es-aggregate-error": "^1.0.7",
54
53
  "jsonpath-plus": "7.1.0",
55
54
  "lodash": "~4.17.21",
@@ -1,2 +0,0 @@
1
- export * from './prepareResults';
2
- export * from './sortResults';
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- (0, tslib_1.__exportStar)(require("./prepareResults"), exports);
5
- (0, tslib_1.__exportStar)(require("./sortResults"), exports);
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,gEAAiC;AACjC,6DAA8B"}
@@ -1,4 +0,0 @@
1
- import { IRuleResult } from '../types';
2
- export declare type ComputeFingerprintFunc = (rule: IRuleResult, hash: (val: string) => string) => string;
3
- export declare const defaultComputeResultFingerprint: ComputeFingerprintFunc;
4
- export declare const prepareResults: (results: IRuleResult[], computeFingerprint: ComputeFingerprintFunc) => IRuleResult[];
@@ -1,43 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.prepareResults = exports.defaultComputeResultFingerprint = void 0;
4
- const md5 = require('blueimp-md5');
5
- const lodash_1 = require("lodash");
6
- const sortResults_1 = require("./sortResults");
7
- const defaultComputeResultFingerprint = (rule, hash) => {
8
- let id = String(rule.code);
9
- if (rule.path.length > 0) {
10
- id += JSON.stringify(rule.path);
11
- }
12
- else {
13
- id += JSON.stringify(rule.range);
14
- }
15
- if (rule.source !== void 0) {
16
- id += rule.source;
17
- }
18
- if (rule.message !== void 0) {
19
- id += rule.message;
20
- }
21
- return hash(id);
22
- };
23
- exports.defaultComputeResultFingerprint = defaultComputeResultFingerprint;
24
- const prepareResults = (results, computeFingerprint) => {
25
- decorateResultsWithFingerprint(results, computeFingerprint);
26
- return sortResults(deduplicateResults(results));
27
- };
28
- exports.prepareResults = prepareResults;
29
- const decorateResultsWithFingerprint = (results, computeFingerprint) => {
30
- for (const r of results) {
31
- Object.defineProperty(r, 'fingerprint', {
32
- value: computeFingerprint(r, md5),
33
- });
34
- }
35
- return results;
36
- };
37
- const deduplicateResults = (results) => {
38
- return (0, lodash_1.uniqBy)([...results], 'fingerprint');
39
- };
40
- const sortResults = (results) => {
41
- return [...results].sort(sortResults_1.compareResults);
42
- };
43
- //# sourceMappingURL=prepareResults.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prepareResults.js","sourceRoot":"","sources":["../../src/utils/prepareResults.ts"],"names":[],"mappings":";;;AACA,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEnC,mCAAgC;AAGhC,+CAA+C;AAIxC,MAAM,+BAA+B,GAA2B,CAAC,IAAI,EAAE,IAAI,EAAU,EAAE;IAC5F,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE3B,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACxB,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACjC;SAAM;QACL,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,EAAE;QAC1B,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC;KACnB;IAED,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE;QAC3B,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC;KACpB;IAED,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC,CAAC;AAlBW,QAAA,+BAA+B,mCAkB1C;AAEK,MAAM,cAAc,GAAG,CAAC,OAAsB,EAAE,kBAA0C,EAAiB,EAAE;IAClH,8BAA8B,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAE5D,OAAO,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC;AAJW,QAAA,cAAc,kBAIzB;AAEF,MAAM,8BAA8B,GAAG,CACrC,OAAsB,EACtB,kBAA0C,EAC3B,EAAE;IACjB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;QACvB,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,aAAa,EAAE;YACtC,KAAK,EAAE,kBAAkB,CAAC,CAAC,EAAE,GAAG,CAAC;SAClC,CAAC,CAAC;KACJ;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,OAAsB,EAAiB,EAAE;IACnE,OAAO,IAAA,eAAM,EAAC,CAAC,GAAG,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,OAAsB,EAAiB,EAAE;IAC5D,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,4BAAc,CAAC,CAAC;AAC3C,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- import { IPosition } from '@stoplight/types';
2
- import { IRuleResult } from '../types';
3
- export declare const comparePosition: (left: IPosition, right: IPosition) => -1 | 0 | 1;
4
- export declare const compareResults: (left: IRuleResult, right: IRuleResult) => -1 | 0 | 1;
5
- export declare const sortResults: (results: IRuleResult[]) => IRuleResult[];
@@ -1 +0,0 @@
1
- {"version":3,"file":"sortResults.js","sourceRoot":"","sources":["../../src/utils/sortResults.ts"],"names":[],"mappings":"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"}