@sgohlke/stryker-log-ignorer 2.0.2 → 2.0.4

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";AAEA;AAAA,EAGI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,OAAO,QAAQ;AAmBR,IAAM,aAAN,MAAoC;AAAA,EACvC,OAAc,SAAS,CAAC,aAAa,OAAO;AAAA,EACzB;AAAA,EAEnB,YAAY,SAAsC;AAC9C,SAAK,UAAU,SAAS;AAAA,EAC5B;AAAA,EAEA,aAAa,MAAoC;AAC7C,UAAM,oBAAoB,KAAK,SAAS,eAAe,CAAC,SAAS;AACjE,QACI,KAAK,sBAAsB,KAC3B,KAAK,KAAK,WAAW,SAAS,oBAC9B,KAAK,KAAK,WAAW,OAAO,SAAS,sBACrC,KAAK,KAAK,WAAW,OAAO,OAAO,SAAS,gBAC5C,kBAAkB,SAAS,KAAK,KAAK,WAAW,OAAO,OAAO,IAAI,GACpE;AACE,aAAO,oCAAoC,iBAAiB;AAAA,IAChE;AAAA,EACJ;AACJ;AAEA,kBAAkB,SAAS,OAAO,aAAa,QAAQ;AAEhD,SAAS,kBACZ,UACU;AACV,SAAO,SAAS,YAAY,UAAU;AAC1C;AAEO,SAAS,0BAGd;AACE,SAAO;AACX;AAEO,IAAM,iBAAiB;AAAA,EAC1B;AAAA,IACI,WAAW;AAAA,IACX;AAAA,IACA,wBAAwB;AAAA,EAC5B;AACJ;AAEO,IAAM,0BACT,KAAK;AAAA;AAAA,EAED,GAAG;AAAA,IACC,IAAI,IAAI,sCAAsC,YAAY,GAAG;AAAA,IAC7D;AAAA,EACJ;AACJ","sourcesContent":["import { StrykerOptions } from '@stryker-mutator/api/core'\nimport { Ignorer, NodePath } from '@stryker-mutator/api/ignore'\nimport {\n Injector,\n PluginContext,\n PluginKind,\n commonTokens,\n declareFactoryPlugin,\n tokens,\n} from '@stryker-mutator/api/plugin'\nimport fs from 'node:fs'\n\n/**\n * Configuration for @sgohlke/stryker-log-ignorer\n */\nexport interface IgnorerOptions {\n /**\n * Specify the object names of the logger objects to be ignored. Defaults to [\"console\"]\n */\n objectNames?: string[]\n}\n\nexport interface LogIgnorerOptions extends StrykerOptions {\n logignore?: IgnorerOptions\n}\n\n/*\n * LogIgnorer provides functionality to ignore log calls for provided logger object names.\n */\nexport class LogIgnorer implements Ignorer {\n public static inject = [commonTokens.options] as const\n protected readonly options?: IgnorerOptions\n\n constructor(options?: Partial<LogIgnorerOptions>) {\n this.options = options?.logignore\n }\n\n shouldIgnore(path: NodePath): string | undefined {\n const loggerObjectNames = this.options?.objectNames ?? ['console']\n if (\n path.isExpressionStatement() &&\n path.node.expression.type === 'CallExpression' &&\n path.node.expression.callee.type === 'MemberExpression' &&\n path.node.expression.callee.object.type === 'Identifier' &&\n loggerObjectNames.includes(path.node.expression.callee.object.name)\n ) {\n return `We are not interested in testing ${loggerObjectNames} statements.`\n }\n }\n}\n\nlogIgnorerFactory.inject = tokens(commonTokens.injector)\n\nexport function logIgnorerFactory(\n injector: Injector<PluginContext>,\n): LogIgnorer {\n return injector.injectClass(LogIgnorer)\n}\n\nexport function createLogIgnorerFactory(): {\n (injector: Injector<PluginContext>): LogIgnorer\n inject: ['$injector']\n} {\n return logIgnorerFactory\n}\n\nexport const strykerPlugins = [\n declareFactoryPlugin(\n PluginKind.Ignore,\n 'log-ignore',\n createLogIgnorerFactory(),\n ),\n]\n\nexport const strykerValidationSchema: typeof import('../schema/log-ignorer-options.json') =\n JSON.parse(\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n fs.readFileSync(\n new URL('../schema/log-ignorer-options.json', import.meta.url),\n 'utf8',\n ),\n )\n"]}
1
+ {"version":3,"sources":["/home/runner/work/stryker-log-ignorer/stryker-log-ignorer/build/index.cjs","../src/index.ts"],"names":[],"mappings":"AAAA;ACIA;AACI;AACA;AACA;AACA;AAAA,qDACG;AAEP,gEAAe;AAmBf,IAAM,WAAA,YAAN,MAAoC;AAAA,EAChC,4BAAc,OAAA,EAAS,CAAC,oBAAA,CAAa,OAAO,EAAA;AAAA,EACzB;AAAA,EAEnB,WAAA,CAAY,OAAA,EAAsC;AAC9C,IAAA,IAAA,CAAK,QAAA,kBAAU,OAAA,2BAAS,WAAA;AAAA,EAC5B;AAAA,EAEA,YAAA,CAAa,IAAA,EAAoC;AAC7C,IAAA,MAAM,kBAAA,mCAAoB,IAAA,qBAAK,OAAA,6BAAS,aAAA,UAAe,CAAC,SAAS,GAAA;AACjE,IAAA,GAAA,CACI,IAAA,CAAK,qBAAA,CAAsB,EAAA,GAC3B,IAAA,CAAK,IAAA,CAAK,UAAA,CAAW,KAAA,IAAS,iBAAA,GAC9B,IAAA,CAAK,IAAA,CAAK,UAAA,CAAW,MAAA,CAAO,KAAA,IAAS,mBAAA,GACrC,IAAA,CAAK,IAAA,CAAK,UAAA,CAAW,MAAA,CAAO,MAAA,CAAO,KAAA,IAAS,aAAA,GAC5C,iBAAA,CAAkB,QAAA,CAAS,IAAA,CAAK,IAAA,CAAK,UAAA,CAAW,MAAA,CAAO,MAAA,CAAO,IAAI,CAAA,EACpE;AACE,MAAA,OAAO,CAAA,iCAAA,EAAoC,iBAAiB,CAAA,YAAA,CAAA;AAAA,IAChE;AAAA,EACJ;AACJ,iCAAA;AAEA,iBAAA,CAAkB,OAAA,EAAS,4BAAA,oBAAO,CAAa,QAAQ,CAAA;AAEvD,SAAS,iBAAA,CAAkB,QAAA,EAA+C;AACtE,EAAA,OAAO,QAAA,CAAS,WAAA,CAAY,UAAU,CAAA;AAC1C;AAEA,SAAS,uBAAA,CAAA,EAGP;AACE,EAAA,OAAO,iBAAA;AACX;AAEA,IAAM,eAAA,EAAiB;AAAA,EACnB,0CAAA;AAAA,IACI,kBAAA,CAAW,MAAA;AAAA,IACX,YAAA;AAAA,IACA,uBAAA,CAAwB;AAAA,EAC5B;AACJ,CAAA;AAGA,IAAM,wBAAA,EACF,IAAA,CAAK,KAAA;AAAA;AAAA,EAED,YAAA,CAAG,YAAA;AAAA,IACC,IAAI,GAAA,CAAI,oCAAA,EAAsC,MAAA,CAAA,IAAA,CAAY,GAAG,CAAA;AAAA,IAC7D;AAAA,EACJ;AACJ,CAAA;ADvCJ;AACE;AACA;AACA;AACA;AACA;AACF,8OAAC","file":"/home/runner/work/stryker-log-ignorer/stryker-log-ignorer/build/index.cjs","sourcesContent":[null,"import type { StrykerOptions } from '@stryker-mutator/api/core'\nimport type { Ignorer, NodePath } from '@stryker-mutator/api/ignore'\n// eslint-disable-next-line @typescript-eslint/no-duplicate-imports\nimport type { Injector, PluginContext } from '@stryker-mutator/api/plugin'\nimport {\n PluginKind,\n commonTokens,\n declareFactoryPlugin,\n tokens,\n} from '@stryker-mutator/api/plugin'\n\nimport fs from 'node:fs'\n\n/**\n * Configuration for @sgohlke/stryker-log-ignorer\n */\ninterface IgnorerOptions {\n /**\n * Specify the object names of the logger objects to be ignored. Defaults to [\"console\"]\n */\n objectNames?: string[]\n}\n\ninterface LogIgnorerOptions extends StrykerOptions {\n logignore?: IgnorerOptions\n}\n\n/*\n * LogIgnorer provides functionality to ignore log calls for provided logger object names.\n */\nclass LogIgnorer implements Ignorer {\n public static inject = [commonTokens.options] as const\n protected readonly options?: IgnorerOptions\n\n constructor(options?: Partial<LogIgnorerOptions>) {\n this.options = options?.logignore\n }\n\n shouldIgnore(path: NodePath): string | undefined {\n const loggerObjectNames = this.options?.objectNames ?? ['console']\n if (\n path.isExpressionStatement() &&\n path.node.expression.type === 'CallExpression' &&\n path.node.expression.callee.type === 'MemberExpression' &&\n path.node.expression.callee.object.type === 'Identifier' &&\n loggerObjectNames.includes(path.node.expression.callee.object.name)\n ) {\n return `We are not interested in testing ${loggerObjectNames} statements.`\n }\n }\n}\n\nlogIgnorerFactory.inject = tokens(commonTokens.injector)\n\nfunction logIgnorerFactory(injector: Injector<PluginContext>): LogIgnorer {\n return injector.injectClass(LogIgnorer)\n}\n\nfunction createLogIgnorerFactory(): {\n (injector: Injector<PluginContext>): LogIgnorer\n inject: ['$injector']\n} {\n return logIgnorerFactory\n}\n\nconst strykerPlugins = [\n declareFactoryPlugin(\n PluginKind.Ignore,\n 'log-ignore',\n createLogIgnorerFactory(),\n ),\n]\n\n// eslint-disable-next-line @typescript-eslint/consistent-type-imports\nconst strykerValidationSchema: typeof import('../schema/log-ignorer-options.json') =\n JSON.parse(\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n fs.readFileSync(\n new URL('../schema/log-ignorer-options.json', import.meta.url),\n 'utf8',\n ),\n )\n\nexport {\n LogIgnorer,\n createLogIgnorerFactory,\n logIgnorerFactory,\n strykerPlugins,\n strykerValidationSchema,\n}\nexport type { IgnorerOptions, LogIgnorerOptions }\n"]}
package/build/index.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  declareFactoryPlugin,
6
6
  tokens
7
7
  } from "@stryker-mutator/api/plugin";
8
- import fs from "node:fs";
8
+ import fs from "fs";
9
9
  var LogIgnorer = class {
10
10
  static inject = [commonTokens.options];
11
11
  options;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { StrykerOptions } from '@stryker-mutator/api/core'\nimport { Ignorer, NodePath } from '@stryker-mutator/api/ignore'\nimport {\n Injector,\n PluginContext,\n PluginKind,\n commonTokens,\n declareFactoryPlugin,\n tokens,\n} from '@stryker-mutator/api/plugin'\nimport fs from 'node:fs'\n\n/**\n * Configuration for @sgohlke/stryker-log-ignorer\n */\nexport interface IgnorerOptions {\n /**\n * Specify the object names of the logger objects to be ignored. Defaults to [\"console\"]\n */\n objectNames?: string[]\n}\n\nexport interface LogIgnorerOptions extends StrykerOptions {\n logignore?: IgnorerOptions\n}\n\n/*\n * LogIgnorer provides functionality to ignore log calls for provided logger object names.\n */\nexport class LogIgnorer implements Ignorer {\n public static inject = [commonTokens.options] as const\n protected readonly options?: IgnorerOptions\n\n constructor(options?: Partial<LogIgnorerOptions>) {\n this.options = options?.logignore\n }\n\n shouldIgnore(path: NodePath): string | undefined {\n const loggerObjectNames = this.options?.objectNames ?? ['console']\n if (\n path.isExpressionStatement() &&\n path.node.expression.type === 'CallExpression' &&\n path.node.expression.callee.type === 'MemberExpression' &&\n path.node.expression.callee.object.type === 'Identifier' &&\n loggerObjectNames.includes(path.node.expression.callee.object.name)\n ) {\n return `We are not interested in testing ${loggerObjectNames} statements.`\n }\n }\n}\n\nlogIgnorerFactory.inject = tokens(commonTokens.injector)\n\nexport function logIgnorerFactory(\n injector: Injector<PluginContext>,\n): LogIgnorer {\n return injector.injectClass(LogIgnorer)\n}\n\nexport function createLogIgnorerFactory(): {\n (injector: Injector<PluginContext>): LogIgnorer\n inject: ['$injector']\n} {\n return logIgnorerFactory\n}\n\nexport const strykerPlugins = [\n declareFactoryPlugin(\n PluginKind.Ignore,\n 'log-ignore',\n createLogIgnorerFactory(),\n ),\n]\n\nexport const strykerValidationSchema: typeof import('../schema/log-ignorer-options.json') =\n JSON.parse(\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n fs.readFileSync(\n new URL('../schema/log-ignorer-options.json', import.meta.url),\n 'utf8',\n ),\n )\n"],"mappings":";AAEA;AAAA,EAGI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,OAAO,QAAQ;AAmBR,IAAM,aAAN,MAAoC;AAAA,EACvC,OAAc,SAAS,CAAC,aAAa,OAAO;AAAA,EACzB;AAAA,EAEnB,YAAY,SAAsC;AAC9C,SAAK,UAAU,SAAS;AAAA,EAC5B;AAAA,EAEA,aAAa,MAAoC;AAC7C,UAAM,oBAAoB,KAAK,SAAS,eAAe,CAAC,SAAS;AACjE,QACI,KAAK,sBAAsB,KAC3B,KAAK,KAAK,WAAW,SAAS,oBAC9B,KAAK,KAAK,WAAW,OAAO,SAAS,sBACrC,KAAK,KAAK,WAAW,OAAO,OAAO,SAAS,gBAC5C,kBAAkB,SAAS,KAAK,KAAK,WAAW,OAAO,OAAO,IAAI,GACpE;AACE,aAAO,oCAAoC,iBAAiB;AAAA,IAChE;AAAA,EACJ;AACJ;AAEA,kBAAkB,SAAS,OAAO,aAAa,QAAQ;AAEhD,SAAS,kBACZ,UACU;AACV,SAAO,SAAS,YAAY,UAAU;AAC1C;AAEO,SAAS,0BAGd;AACE,SAAO;AACX;AAEO,IAAM,iBAAiB;AAAA,EAC1B;AAAA,IACI,WAAW;AAAA,IACX;AAAA,IACA,wBAAwB;AAAA,EAC5B;AACJ;AAEO,IAAM,0BACT,KAAK;AAAA;AAAA,EAED,GAAG;AAAA,IACC,IAAI,IAAI,sCAAsC,YAAY,GAAG;AAAA,IAC7D;AAAA,EACJ;AACJ;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { StrykerOptions } from '@stryker-mutator/api/core'\nimport type { Ignorer, NodePath } from '@stryker-mutator/api/ignore'\n// eslint-disable-next-line @typescript-eslint/no-duplicate-imports\nimport type { Injector, PluginContext } from '@stryker-mutator/api/plugin'\nimport {\n PluginKind,\n commonTokens,\n declareFactoryPlugin,\n tokens,\n} from '@stryker-mutator/api/plugin'\n\nimport fs from 'node:fs'\n\n/**\n * Configuration for @sgohlke/stryker-log-ignorer\n */\ninterface IgnorerOptions {\n /**\n * Specify the object names of the logger objects to be ignored. Defaults to [\"console\"]\n */\n objectNames?: string[]\n}\n\ninterface LogIgnorerOptions extends StrykerOptions {\n logignore?: IgnorerOptions\n}\n\n/*\n * LogIgnorer provides functionality to ignore log calls for provided logger object names.\n */\nclass LogIgnorer implements Ignorer {\n public static inject = [commonTokens.options] as const\n protected readonly options?: IgnorerOptions\n\n constructor(options?: Partial<LogIgnorerOptions>) {\n this.options = options?.logignore\n }\n\n shouldIgnore(path: NodePath): string | undefined {\n const loggerObjectNames = this.options?.objectNames ?? ['console']\n if (\n path.isExpressionStatement() &&\n path.node.expression.type === 'CallExpression' &&\n path.node.expression.callee.type === 'MemberExpression' &&\n path.node.expression.callee.object.type === 'Identifier' &&\n loggerObjectNames.includes(path.node.expression.callee.object.name)\n ) {\n return `We are not interested in testing ${loggerObjectNames} statements.`\n }\n }\n}\n\nlogIgnorerFactory.inject = tokens(commonTokens.injector)\n\nfunction logIgnorerFactory(injector: Injector<PluginContext>): LogIgnorer {\n return injector.injectClass(LogIgnorer)\n}\n\nfunction createLogIgnorerFactory(): {\n (injector: Injector<PluginContext>): LogIgnorer\n inject: ['$injector']\n} {\n return logIgnorerFactory\n}\n\nconst strykerPlugins = [\n declareFactoryPlugin(\n PluginKind.Ignore,\n 'log-ignore',\n createLogIgnorerFactory(),\n ),\n]\n\n// eslint-disable-next-line @typescript-eslint/consistent-type-imports\nconst strykerValidationSchema: typeof import('../schema/log-ignorer-options.json') =\n JSON.parse(\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n fs.readFileSync(\n new URL('../schema/log-ignorer-options.json', import.meta.url),\n 'utf8',\n ),\n )\n\nexport {\n LogIgnorer,\n createLogIgnorerFactory,\n logIgnorerFactory,\n strykerPlugins,\n strykerValidationSchema,\n}\nexport type { IgnorerOptions, LogIgnorerOptions }\n"],"mappings":";AAIA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AAEP,OAAO,QAAQ;AAmBf,IAAM,aAAN,MAAoC;AAAA,EAChC,OAAc,SAAS,CAAC,aAAa,OAAO;AAAA,EACzB;AAAA,EAEnB,YAAY,SAAsC;AAC9C,SAAK,UAAU,SAAS;AAAA,EAC5B;AAAA,EAEA,aAAa,MAAoC;AAC7C,UAAM,oBAAoB,KAAK,SAAS,eAAe,CAAC,SAAS;AACjE,QACI,KAAK,sBAAsB,KAC3B,KAAK,KAAK,WAAW,SAAS,oBAC9B,KAAK,KAAK,WAAW,OAAO,SAAS,sBACrC,KAAK,KAAK,WAAW,OAAO,OAAO,SAAS,gBAC5C,kBAAkB,SAAS,KAAK,KAAK,WAAW,OAAO,OAAO,IAAI,GACpE;AACE,aAAO,oCAAoC,iBAAiB;AAAA,IAChE;AAAA,EACJ;AACJ;AAEA,kBAAkB,SAAS,OAAO,aAAa,QAAQ;AAEvD,SAAS,kBAAkB,UAA+C;AACtE,SAAO,SAAS,YAAY,UAAU;AAC1C;AAEA,SAAS,0BAGP;AACE,SAAO;AACX;AAEA,IAAM,iBAAiB;AAAA,EACnB;AAAA,IACI,WAAW;AAAA,IACX;AAAA,IACA,wBAAwB;AAAA,EAC5B;AACJ;AAGA,IAAM,0BACF,KAAK;AAAA;AAAA,EAED,GAAG;AAAA,IACC,IAAI,IAAI,sCAAsC,YAAY,GAAG;AAAA,IAC7D;AAAA,EACJ;AACJ;","names":[]}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@sgohlke/stryker-log-ignorer",
3
- "version": "2.0.2",
3
+ "version": "2.0.4",
4
4
  "description": "Log Ignorer for Stryker",
5
5
  "scripts": {
6
6
  "build": "tsup-node",
7
7
  "check": "tsc --noEmit --pretty",
8
8
  "checkformat": "prettier --check .",
9
9
  "format": "prettier --cache --write .",
10
- "lint": "eslint src/*.ts tests/*.ts",
11
- "lintfix": "eslint --fix src/*.ts tests/*.ts",
10
+ "lint": "oxlint -c .oxlintrc.json",
11
+ "lintfix": "oxlint -c .oxlintrc.json --fix",
12
12
  "prepack": "npm run build",
13
13
  "test": "vitest run --coverage"
14
14
  },
@@ -41,24 +41,21 @@
41
41
  },
42
42
  "homepage": "https://github.com/sgohlke/stryker-log-ignorer#readme",
43
43
  "devDependencies": {
44
- "@babel/parser": "7.24.4",
45
- "@babel/traverse": "7.24.1",
44
+ "@babel/parser": "7.28.4",
45
+ "@babel/traverse": "7.28.4",
46
+ "@swc/core": "1.13.5",
46
47
  "@types/babel__core": "7.20.5",
47
- "@types/node": "20.12.7",
48
- "@vitest/coverage-v8": "1.5.2",
49
- "eslint-plugin-deprecation": "2.0.0",
50
- "eslint-plugin-import": "2.29.1",
51
- "eslint-plugin-security": "3.0.0",
52
- "eslint-plugin-unicorn": "52.0.0",
53
- "prettier": "3.2.5",
54
- "prettier-plugin-organize-imports": "3.2.4",
55
- "tsup": "8.0.2",
56
- "typescript": "5.4.5",
57
- "typescript-eslint": "7.7.1",
58
- "vite-tsconfig-paths": "4.3.2",
59
- "vitest": "1.5.2"
48
+ "@types/node": "24.3.1",
49
+ "@vitest/coverage-v8": "3.2.4",
50
+ "oxlint": "1.15.0",
51
+ "prettier": "3.6.2",
52
+ "prettier-plugin-organize-imports": "4.2.0",
53
+ "tsup": "8.5.0",
54
+ "typescript": "5.9.2",
55
+ "vite-tsconfig-paths": "5.1.4",
56
+ "vitest": "3.2.4"
60
57
  },
61
58
  "dependencies": {
62
- "@stryker-mutator/api": "8.2.6"
59
+ "@stryker-mutator/api": "9.1.1"
63
60
  }
64
61
  }