@forge/lint 5.9.0-next.4 → 5.9.0-next.6

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.
Files changed (26) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/out/lint/lint.d.ts +3 -2
  3. package/out/lint/lint.d.ts.map +1 -1
  4. package/out/lint/lint.js +7 -7
  5. package/out/lint/linters/manifest-linter/abstract-manifest-linter.d.ts +4 -1
  6. package/out/lint/linters/manifest-linter/abstract-manifest-linter.d.ts.map +1 -1
  7. package/out/lint/linters/manifest-linter/abstract-manifest-linter.js +14 -3
  8. package/out/lint/linters/manifest-linter/basic-manifest-linter.d.ts +2 -1
  9. package/out/lint/linters/manifest-linter/basic-manifest-linter.d.ts.map +1 -1
  10. package/out/lint/linters/manifest-linter/basic-manifest-linter.js +2 -2
  11. package/out/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.d.ts +2 -1
  12. package/out/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.d.ts.map +1 -1
  13. package/out/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.js +2 -2
  14. package/out/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.d.ts +2 -1
  15. package/out/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.d.ts.map +1 -1
  16. package/out/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.js +2 -2
  17. package/out/lint/linters/manifest-linter/full-manifest-linter.d.ts +2 -1
  18. package/out/lint/linters/manifest-linter/full-manifest-linter.d.ts.map +1 -1
  19. package/out/lint/linters/manifest-linter/full-manifest-linter.js +2 -2
  20. package/out/lint/linters/manifest-linter/permissions-manifest-linter.d.ts +2 -1
  21. package/out/lint/linters/manifest-linter/permissions-manifest-linter.d.ts.map +1 -1
  22. package/out/lint/linters/manifest-linter/permissions-manifest-linter.js +2 -2
  23. package/out/lint/linters/manifest-linter/remote-compute-manifest-linter.d.ts +2 -1
  24. package/out/lint/linters/manifest-linter/remote-compute-manifest-linter.d.ts.map +1 -1
  25. package/out/lint/linters/manifest-linter/remote-compute-manifest-linter.js +2 -2
  26. package/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # @forge/lint
2
2
 
3
+ ## 5.9.0-next.6
4
+
5
+ ### Minor Changes
6
+
7
+ - 9f050ff: Removed support for Sandbox Runtime and Sanpshots
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [9f050ff]
12
+ - @forge/cli-shared@7.1.0-next.6
13
+ - @forge/manifest@9.5.0-next.5
14
+
15
+ ## 5.9.0-next.5
16
+
17
+ ### Minor Changes
18
+
19
+ - 64befbb: Refactor runtime version manifest check into a linter
20
+
21
+ ### Patch Changes
22
+
23
+ - dd7cad7: Fix deprecated egress manifest linter
24
+ - Updated dependencies [75b7732]
25
+ - Updated dependencies [64befbb]
26
+ - @forge/cli-shared@7.1.0-next.5
27
+ - @forge/manifest@9.5.0-next.4
28
+
3
29
  ## 5.9.0-next.4
4
30
 
5
31
  ### Patch Changes
@@ -1,3 +1,4 @@
1
+ import { StatsigService } from '@forge/cli-shared';
1
2
  import { ManifestSchema as Manifest } from '@forge/manifest';
2
3
  import fs from 'fs';
3
4
  import { tsParser } from '../parse';
@@ -9,6 +10,6 @@ export interface ProblemCount {
9
10
  export declare const reportLintResults: (logger: LintLogger, lintResults: LintResult[], showSummary?: boolean) => void;
10
11
  export declare const problemCount: (lintResults: LintResult[]) => ProblemCount;
11
12
  export declare const parseSourceFile: (filepath: string, parser: typeof tsParser, readFilePromise?: typeof fs.readFile.__promisify__) => Promise<LintInput>;
12
- export declare const lint: (filesToLint: string[], manifest: Manifest, environment: string, logger: LintLogger, parseFunction?: (filepath: string, parser: typeof tsParser, readFilePromise?: typeof fs.readFile.__promisify__) => Promise<LintInput>, linters?: LinterInterface[]) => Promise<LintResult[]>;
13
- export declare const litelint: (logger: LintLogger, linter?: LinterInterface) => Promise<LintResult[]>;
13
+ export declare const lint: (filesToLint: string[], manifest: Manifest, environment: string, logger: LintLogger, statsigService: StatsigService, parseFunction?: (filepath: string, parser: typeof tsParser, readFilePromise?: typeof fs.readFile.__promisify__) => Promise<LintInput>, linters?: LinterInterface[]) => Promise<LintResult[]>;
14
+ export declare const litelint: (logger: LintLogger, statsigService: StatsigService, linter?: LinterInterface) => Promise<LintResult[]>;
14
15
  //# sourceMappingURL=lint.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../src/lint/lint.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,cAAc,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,MAAM,IAAI,CAAC;AAIpB,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAkB,MAAM,oBAAoB,CAAC;AAcxG,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,iBAAiB,WAAY,UAAU,eAAe,UAAU,EAAE,4BAAuB,IA+CrG,CAAC;AAEF,eAAO,MAAM,YAAY,gBAAiB,UAAU,EAAE,KAAG,YAQxD,CAAC;AAEF,eAAO,MAAM,eAAe,aAChB,MAAM,UACR,eAAe,oBACN,OAAO,GAAG,QAAQ,CAAC,aAAa,KAChD,QAAQ,SAAS,CAOnB,CAAC;AAEF,eAAO,MAAM,IAAI,gBACF,MAAM,EAAE,YACX,QAAQ,eACL,MAAM,UACX,UAAU,6BAhBR,MAAM,UACR,eAAe,oBACN,OAAO,GAAG,QAAQ,CAAC,aAAa,KAChD,QAAQ,SAAS,CAAC,YAeV,eAAe,EAAE,KAazB,QAAQ,UAAU,EAAE,CAyCtB,CAAC;AAwBF,eAAO,MAAM,QAAQ,WACX,UAAU,WACV,eAAe,KACtB,QAAQ,UAAU,EAAE,CAGtB,CAAC"}
1
+ {"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../src/lint/lint.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,MAAM,IAAI,CAAC;AAIpB,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAkB,MAAM,oBAAoB,CAAC;AAcxG,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,iBAAiB,WAAY,UAAU,eAAe,UAAU,EAAE,4BAAuB,IA+CrG,CAAC;AAEF,eAAO,MAAM,YAAY,gBAAiB,UAAU,EAAE,KAAG,YAQxD,CAAC;AAEF,eAAO,MAAM,eAAe,aAChB,MAAM,UACR,eAAe,oBACN,OAAO,GAAG,QAAQ,CAAC,aAAa,KAChD,QAAQ,SAAS,CAOnB,CAAC;AAEF,eAAO,MAAM,IAAI,gBACF,MAAM,EAAE,YACX,QAAQ,eACL,MAAM,UACX,UAAU,kBACF,cAAc,6BAjBpB,MAAM,UACR,eAAe,oBACN,OAAO,GAAG,QAAQ,CAAC,aAAa,KAChD,QAAQ,SAAS,CAAC,YAgBV,eAAe,EAAE,KAazB,QAAQ,UAAU,EAAE,CAyCtB,CAAC;AAwBF,eAAO,MAAM,QAAQ,WACX,UAAU,kBACF,cAAc,WACtB,eAAe,KACtB,QAAQ,UAAU,EAAE,CAGtB,CAAC"}
package/out/lint/lint.js CHANGED
@@ -80,18 +80,18 @@ const parseSourceFile = async (filepath, parser, readFilePromise = (0, util_1.pr
80
80
  };
81
81
  };
82
82
  exports.parseSourceFile = parseSourceFile;
83
- const lint = async (filesToLint, manifest, environment, logger, parseFunction = exports.parseSourceFile, linters = [
83
+ const lint = async (filesToLint, manifest, environment, logger, statsigService, parseFunction = exports.parseSourceFile, linters = [
84
84
  new permission_linter_1.PermissionLinter(environment, manifest, logger),
85
- new permissions_manifest_linter_1.PermissionsManifestLinter(logger),
86
- new deprecated_csp_permissions_manifest_linter_1.DeprecatedCspPermissionsManifestLinter(logger),
87
- new remote_compute_manifest_linter_1.RemoteComputeManifestLinter(logger),
88
- new full_manifest_linter_1.FullManifestLinter(logger),
85
+ new permissions_manifest_linter_1.PermissionsManifestLinter(logger, statsigService),
86
+ new deprecated_csp_permissions_manifest_linter_1.DeprecatedCspPermissionsManifestLinter(logger, statsigService),
87
+ new remote_compute_manifest_linter_1.RemoteComputeManifestLinter(logger, statsigService),
88
+ new full_manifest_linter_1.FullManifestLinter(logger, statsigService),
89
89
  new handler_linter_1.HandlerLinter(environment, manifest, logger),
90
90
  new dynamic_properties_permissions_linter_1.DynamicPropertiesPermissionsLinter(environment, manifest, logger),
91
91
  new invoke_remote_linter_1.InvokeRemoteLinter(environment, manifest, logger),
92
92
  new storage_module_linter_1.StorageModulesLinter(environment, manifest, logger),
93
93
  new frame_component_linter_1.FrameComponentLinter(environment, manifest, logger),
94
- new deprecated_egress_permissions_manifest_linter_1.DeprecatedEgressPermissionsManifestLinter(logger)
94
+ new deprecated_egress_permissions_manifest_linter_1.DeprecatedEgressPermissionsManifestLinter(logger, statsigService)
95
95
  ]) => {
96
96
  const { include, exclude } = await (0, cli_shared_1.listTSConfigIncludeExclude)(new cli_shared_1.FileSystemReader());
97
97
  const tsInclude = new Set(include);
@@ -139,7 +139,7 @@ function formatCompileErrorMessage(error) {
139
139
  }
140
140
  return errorMessage;
141
141
  }
142
- const litelint = async (logger, linter = new basic_manifest_linter_1.BasicManifestLinter(logger)) => {
142
+ const litelint = async (logger, statsigService, linter = new basic_manifest_linter_1.BasicManifestLinter(logger, statsigService)) => {
143
143
  await linter.bootstrap();
144
144
  return linter.batchExecute();
145
145
  };
@@ -1,14 +1,17 @@
1
1
  import { ValidationTypes, ManifestValidationResult, ProcessorInterface, SchemaValidationError } from '@forge/manifest';
2
2
  import { LintResult, LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
3
3
  import { AbstractLinter } from '../../abstract-linter';
4
+ import { StatsigService } from '@forge/cli-shared';
4
5
  export declare class AbstractManifestLinter extends AbstractLinter {
5
6
  private readonly type;
6
7
  private processor;
7
- constructor(type: ValidationTypes, logger: LintLogger);
8
+ private readonly statsigService;
9
+ constructor(type: ValidationTypes, logger: LintLogger, statsigService: StatsigService);
8
10
  private mapManifestResponse;
9
11
  getProcessor(): ProcessorInterface<any> | undefined;
10
12
  batchExecuteImpl(): Promise<LintResult[]>;
11
13
  bootstrap(): Promise<void>;
14
+ private getOptions;
12
15
  protected getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
13
16
  protected getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
14
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/abstract-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAGf,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAa,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,qBAAa,sBAAuB,SAAQ,cAAc;IAItD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHvB,OAAO,CAAC,SAAS,CAAsC;gBAGpC,IAAI,EAAE,eAAe,EACtC,MAAM,EAAE,UAAU;IAKpB,OAAO,CAAC,mBAAmB;IAmB3B,YAAY,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,SAAS;IAI7C,gBAAgB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAU/C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1B,SAAS,CAAC,QAAQ,IACd,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,SAAS,CAAC,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAG9F"}
1
+ {"version":3,"file":"abstract-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/abstract-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAGf,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EAEtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAa,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,sBAAuB,SAAQ,cAAc;IAKtD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJvB,OAAO,CAAC,SAAS,CAAsC;IACvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;gBAG7B,IAAI,EAAE,eAAe,EACtC,MAAM,EAAE,UAAU,EAClB,cAAc,EAAE,cAAc;IAMhC,OAAO,CAAC,mBAAmB;IAmB3B,YAAY,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,SAAS;IAI7C,gBAAgB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAUzC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;YAQlB,UAAU;IAOxB,SAAS,CAAC,QAAQ,IACd,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,SAAS,CAAC,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAG9F"}
@@ -7,9 +7,11 @@ const abstract_linter_1 = require("../../abstract-linter");
7
7
  class AbstractManifestLinter extends abstract_linter_1.AbstractLinter {
8
8
  type;
9
9
  processor;
10
- constructor(type, logger) {
10
+ statsigService;
11
+ constructor(type, logger, statsigService) {
11
12
  super(logger);
12
13
  this.type = type;
14
+ this.statsigService = statsigService;
13
15
  }
14
16
  mapManifestResponse(results, fixer) {
15
17
  const manifestLintResults = new linter_interface_1.LintResult(manifest_1.MANIFEST_FILE, fixer);
@@ -35,10 +37,19 @@ class AbstractManifestLinter extends abstract_linter_1.AbstractLinter {
35
37
  const results = await this.processor.process();
36
38
  return [this.mapManifestResponse(results, this.getFixer())];
37
39
  }
38
- bootstrap() {
39
- this.processor = manifest_1.ProcessorBuilder.instance().withValidation(this.type).build();
40
+ async bootstrap() {
41
+ this.processor = manifest_1.ProcessorBuilder.instance()
42
+ .withValidation(this.type)
43
+ .withOptions(await this.getOptions())
44
+ .build();
40
45
  return Promise.resolve();
41
46
  }
47
+ async getOptions() {
48
+ const options = {
49
+ deprecatedRuntimes: await this.statsigService.getDeprecatedRuntimes()
50
+ };
51
+ return options;
52
+ }
42
53
  getFixer() {
43
54
  return undefined;
44
55
  }
@@ -1,6 +1,7 @@
1
1
  import { AbstractManifestLinter } from './abstract-manifest-linter';
2
2
  import { LintLogger } from '../../linter-interface';
3
+ import { StatsigService } from '@forge/cli-shared';
3
4
  export declare class BasicManifestLinter extends AbstractManifestLinter {
4
- constructor(logger: LintLogger);
5
+ constructor(logger: LintLogger, statsigService: StatsigService);
5
6
  }
6
7
  //# sourceMappingURL=basic-manifest-linter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"basic-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/basic-manifest-linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,qBAAa,mBAAoB,SAAQ,sBAAsB;gBACjD,MAAM,EAAE,UAAU;CAG/B"}
1
+ {"version":3,"file":"basic-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/basic-manifest-linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,mBAAoB,SAAQ,sBAAsB;gBACjD,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc;CAG/D"}
@@ -4,8 +4,8 @@ exports.BasicManifestLinter = void 0;
4
4
  const manifest_1 = require("@forge/manifest");
5
5
  const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
6
6
  class BasicManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
7
- constructor(logger) {
8
- super(manifest_1.ValidationTypes.BASIC, logger);
7
+ constructor(logger, statsigService) {
8
+ super(manifest_1.ValidationTypes.BASIC, logger, statsigService);
9
9
  }
10
10
  }
11
11
  exports.BasicManifestLinter = BasicManifestLinter;
@@ -1,8 +1,9 @@
1
1
  import { ManifestValidationResult, SchemaValidationError } from '@forge/manifest';
2
2
  import { AbstractManifestLinter } from './abstract-manifest-linter';
3
3
  import { LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
4
+ import { StatsigService } from '@forge/cli-shared';
4
5
  export declare class DeprecatedCspPermissionsManifestLinter extends AbstractManifestLinter {
5
- constructor(logger: LintLogger);
6
+ constructor(logger: LintLogger, statsigService: StatsigService);
6
7
  getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
7
8
  getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"deprecated-csp-permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGlF,qBAAa,sCAAuC,SAAQ,sBAAsB;gBACpE,MAAM,EAAE,UAAU;IAI9B,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
1
+ {"version":3,"file":"deprecated-csp-permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,sCAAuC,SAAQ,sBAAsB;gBACpE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc;IAI9D,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
@@ -5,8 +5,8 @@ const manifest_1 = require("@forge/manifest");
5
5
  const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
6
6
  const permission_linter_1 = require("../permission-linter/permission-linter");
7
7
  class DeprecatedCspPermissionsManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
8
- constructor(logger) {
9
- super(manifest_1.ValidationTypes.DEPRECATED_CSP_METHOD, logger);
8
+ constructor(logger, statsigService) {
9
+ super(manifest_1.ValidationTypes.DEPRECATED_CSP_METHOD, logger, statsigService);
10
10
  }
11
11
  getFixer() {
12
12
  return permission_linter_1.fixMissingPermissions;
@@ -1,8 +1,9 @@
1
1
  import { ManifestValidationResult, SchemaValidationError } from '@forge/manifest';
2
2
  import { AbstractManifestLinter } from './abstract-manifest-linter';
3
3
  import { LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
4
+ import { StatsigService } from '@forge/cli-shared';
4
5
  export declare class DeprecatedEgressPermissionsManifestLinter extends AbstractManifestLinter {
5
- constructor(logger: LintLogger);
6
+ constructor(logger: LintLogger, statsigService: StatsigService);
6
7
  getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
7
8
  getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"deprecated-egress-permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGlF,qBAAa,yCAA0C,SAAQ,sBAAsB;gBACvE,MAAM,EAAE,UAAU;IAI9B,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
1
+ {"version":3,"file":"deprecated-egress-permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,yCAA0C,SAAQ,sBAAsB;gBACvE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc;IAI9D,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
@@ -5,8 +5,8 @@ const manifest_1 = require("@forge/manifest");
5
5
  const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
6
6
  const permission_linter_1 = require("../permission-linter/permission-linter");
7
7
  class DeprecatedEgressPermissionsManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
8
- constructor(logger) {
9
- super(manifest_1.ValidationTypes.DEPRECATED_EGRESS_PERMISSIONS, logger);
8
+ constructor(logger, statsigService) {
9
+ super(manifest_1.ValidationTypes.DEPRECATED_EGRESS_PERMISSIONS, logger, statsigService);
10
10
  }
11
11
  getFixer() {
12
12
  return permission_linter_1.fixMissingPermissions;
@@ -1,6 +1,7 @@
1
1
  import { AbstractManifestLinter } from './abstract-manifest-linter';
2
2
  import { LintLogger } from '../../linter-interface';
3
+ import { StatsigService } from '@forge/cli-shared';
3
4
  export declare class FullManifestLinter extends AbstractManifestLinter {
4
- constructor(logger: LintLogger);
5
+ constructor(logger: LintLogger, statsigService: StatsigService);
5
6
  }
6
7
  //# sourceMappingURL=full-manifest-linter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"full-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/full-manifest-linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,qBAAa,kBAAmB,SAAQ,sBAAsB;gBAChD,MAAM,EAAE,UAAU;CAG/B"}
1
+ {"version":3,"file":"full-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/full-manifest-linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,kBAAmB,SAAQ,sBAAsB;gBAChD,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc;CAG/D"}
@@ -4,8 +4,8 @@ exports.FullManifestLinter = void 0;
4
4
  const manifest_1 = require("@forge/manifest");
5
5
  const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
6
6
  class FullManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
7
- constructor(logger) {
8
- super(manifest_1.ValidationTypes.FULL, logger);
7
+ constructor(logger, statsigService) {
8
+ super(manifest_1.ValidationTypes.FULL, logger, statsigService);
9
9
  }
10
10
  }
11
11
  exports.FullManifestLinter = FullManifestLinter;
@@ -1,8 +1,9 @@
1
1
  import { ManifestValidationResult, SchemaValidationError } from '@forge/manifest';
2
2
  import { AbstractManifestLinter } from './abstract-manifest-linter';
3
3
  import { LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
4
+ import { StatsigService } from '@forge/cli-shared';
4
5
  export declare class PermissionsManifestLinter extends AbstractManifestLinter {
5
- constructor(logger: LintLogger);
6
+ constructor(logger: LintLogger, statsigService: StatsigService);
6
7
  getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
7
8
  getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGlF,qBAAa,yBAA0B,SAAQ,sBAAsB;gBACvD,MAAM,EAAE,UAAU;IAI9B,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
1
+ {"version":3,"file":"permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,yBAA0B,SAAQ,sBAAsB;gBACvD,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc;IAI9D,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
@@ -5,8 +5,8 @@ const manifest_1 = require("@forge/manifest");
5
5
  const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
6
6
  const permission_linter_1 = require("../permission-linter/permission-linter");
7
7
  class PermissionsManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
8
- constructor(logger) {
9
- super(manifest_1.ValidationTypes.PRODUCT_TRIGGER, logger);
8
+ constructor(logger, statsigService) {
9
+ super(manifest_1.ValidationTypes.PRODUCT_TRIGGER, logger, statsigService);
10
10
  }
11
11
  getFixer() {
12
12
  return permission_linter_1.fixMissingPermissions;
@@ -1,8 +1,9 @@
1
1
  import { ManifestValidationResult, SchemaValidationError } from '@forge/manifest';
2
2
  import { AbstractManifestLinter } from './abstract-manifest-linter';
3
3
  import { LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
4
+ import { StatsigService } from '@forge/cli-shared';
4
5
  export declare class RemoteComputeManifestLinter extends AbstractManifestLinter {
5
- constructor(logger: LintLogger);
6
+ constructor(logger: LintLogger, statsigService: StatsigService);
6
7
  getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
7
8
  getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"remote-compute-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/remote-compute-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGlF,qBAAa,2BAA4B,SAAQ,sBAAsB;gBACzD,MAAM,EAAE,UAAU;IAI9B,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
1
+ {"version":3,"file":"remote-compute-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/remote-compute-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,2BAA4B,SAAQ,sBAAsB;gBACzD,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc;IAI9D,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
@@ -5,8 +5,8 @@ const manifest_1 = require("@forge/manifest");
5
5
  const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
6
6
  const permission_linter_1 = require("../permission-linter/permission-linter");
7
7
  class RemoteComputeManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
8
- constructor(logger) {
9
- super(manifest_1.ValidationTypes.FORGE_REMOTE_COMPUTE, logger);
8
+ constructor(logger, statsigService) {
9
+ super(manifest_1.ValidationTypes.FORGE_REMOTE_COMPUTE, logger, statsigService);
10
10
  }
11
11
  getFixer() {
12
12
  return permission_linter_1.fixMissingPermissions;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/lint",
3
- "version": "5.9.0-next.4",
3
+ "version": "5.9.0-next.6",
4
4
  "description": "Linting for forge apps",
5
5
  "main": "out/index.js",
6
6
  "license": "SEE LICENSE IN LICENSE.txt",
@@ -19,10 +19,10 @@
19
19
  "eslint-plugin-import": "^2.29.1"
20
20
  },
21
21
  "dependencies": {
22
- "@forge/cli-shared": "7.1.0-next.4",
22
+ "@forge/cli-shared": "7.1.0-next.6",
23
23
  "@forge/csp": "3.9.0",
24
24
  "@forge/egress": "1.4.1",
25
- "@forge/manifest": "9.5.0-next.3",
25
+ "@forge/manifest": "9.5.0-next.5",
26
26
  "@typescript-eslint/typescript-estree": "^5.62.0",
27
27
  "array.prototype.flatmap": "^1.3.2",
28
28
  "atlassian-openapi": "^1.0.18",