renovate 43.26.5 → 43.27.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.
@@ -1,3 +1,6 @@
1
+ import { createHash } from "node:crypto";
2
+ import { stringify } from "safe-stable-stringify";
3
+
1
4
  //#region lib/logger/once.ts
2
5
  /**
3
6
  * Get the single frame of this function's callers stack.
@@ -26,10 +29,11 @@ function getCallSite(omitFn) {
26
29
  return result;
27
30
  }
28
31
  const keys = /* @__PURE__ */ new Set();
29
- function once(callback, omitFn = once) {
30
- const key = getCallSite(omitFn);
32
+ function once(callback, omitFn = once, p1, p2) {
33
+ const callsite = getCallSite(omitFn);
31
34
  /* v8 ignore next 3 -- should not happen */
32
- if (!key) return;
35
+ if (!callsite) return;
36
+ const key = `${callsite}|${hashParams(p1, p2)}`;
33
37
  if (!keys.has(key)) {
34
38
  keys.add(key);
35
39
  callback();
@@ -42,6 +46,10 @@ function once(callback, omitFn = once) {
42
46
  function reset() {
43
47
  keys.clear();
44
48
  }
49
+ function hashParams(p1, p2) {
50
+ const data = p2 === void 0 ? stringify(p1) : `${stringify(p1)}|${stringify(p2)}`;
51
+ return createHash("sha256").update(data).digest("hex");
52
+ }
45
53
 
46
54
  //#endregion
47
55
  export { once, reset };
@@ -1 +1 @@
1
- {"version":3,"file":"once.js","names":[],"sources":["../../lib/logger/once.ts"],"sourcesContent":["type OmitFn = (...args: any[]) => any;\n\n// TODO: use `callsite` package instead?\n\n/**\n * Get the single frame of this function's callers stack.\n *\n * @param omitFn Starting from this function, stack frames will be ignored.\n * @returns The string containing file name, line number and column name.\n *\n * @example getCallSite() // => 'Object.<anonymous> (/path/to/file.js:10:15)'\n */\nfunction getCallSite(omitFn: OmitFn): string | null {\n const stackTraceLimitOrig = Error.stackTraceLimit;\n // We don't use `Error.captureStackTrace` directly, we simply restore it later.\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const prepareStackTraceOrig = Error.prepareStackTrace;\n\n let result: string | null = null;\n try {\n const res: { stack: string[] } = { stack: [] };\n\n Error.stackTraceLimit = 1;\n Error.prepareStackTrace = (_err, stack) => stack;\n Error.captureStackTrace(res, omitFn);\n\n const [callsite] = res.stack;\n // v8 ignore else -- TODO: add test #40625\n if (callsite) {\n result = callsite.toString();\n }\n /* v8 ignore next 2 -- should not happen */\n } catch {\n // no-op\n } finally {\n Error.stackTraceLimit = stackTraceLimitOrig;\n Error.prepareStackTrace = prepareStackTraceOrig;\n }\n\n return result;\n}\n\nconst keys = new Set<string>();\n\nexport function once(callback: () => void, omitFn: OmitFn = once): void {\n const key = getCallSite(omitFn);\n\n /* v8 ignore next 3 -- should not happen */\n if (!key) {\n return;\n }\n\n if (!keys.has(key)) {\n keys.add(key);\n callback();\n }\n}\n\n/**\n * Before processing each repository,\n * all keys are supposed to be reset.\n */\nexport function reset(): void {\n keys.clear();\n}\n"],"mappings":";;;;;;;;;AAYA,SAAS,YAAY,QAA+B;CAClD,MAAM,sBAAsB,MAAM;CAGlC,MAAM,wBAAwB,MAAM;CAEpC,IAAI,SAAwB;AAC5B,KAAI;EACF,MAAM,MAA2B,EAAE,OAAO,EAAE,EAAE;AAE9C,QAAM,kBAAkB;AACxB,QAAM,qBAAqB,MAAM,UAAU;AAC3C,QAAM,kBAAkB,KAAK,OAAO;EAEpC,MAAM,CAAC,YAAY,IAAI;;AAEvB,MAAI,SACF,UAAS,SAAS,UAAU;SAGxB,WAEE;AACR,QAAM,kBAAkB;AACxB,QAAM,oBAAoB;;AAG5B,QAAO;;AAGT,MAAM,uBAAO,IAAI,KAAa;AAE9B,SAAgB,KAAK,UAAsB,SAAiB,MAAY;CACtE,MAAM,MAAM,YAAY,OAAO;;AAG/B,KAAI,CAAC,IACH;AAGF,KAAI,CAAC,KAAK,IAAI,IAAI,EAAE;AAClB,OAAK,IAAI,IAAI;AACb,YAAU;;;;;;;AAQd,SAAgB,QAAc;AAC5B,MAAK,OAAO"}
1
+ {"version":3,"file":"once.js","names":[],"sources":["../../lib/logger/once.ts"],"sourcesContent":["import { createHash } from 'node:crypto';\nimport { stringify } from 'safe-stable-stringify';\n\ntype OmitFn = (...args: any[]) => any;\n\n// TODO: use `callsite` package instead?\n\n/**\n * Get the single frame of this function's callers stack.\n *\n * @param omitFn Starting from this function, stack frames will be ignored.\n * @returns The string containing file name, line number and column name.\n *\n * @example getCallSite() // => 'Object.<anonymous> (/path/to/file.js:10:15)'\n */\nfunction getCallSite(omitFn: OmitFn): string | null {\n const stackTraceLimitOrig = Error.stackTraceLimit;\n // We don't use `Error.captureStackTrace` directly, we simply restore it later.\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const prepareStackTraceOrig = Error.prepareStackTrace;\n\n let result: string | null = null;\n try {\n const res: { stack: string[] } = { stack: [] };\n\n Error.stackTraceLimit = 1;\n Error.prepareStackTrace = (_err, stack) => stack;\n Error.captureStackTrace(res, omitFn);\n\n const [callsite] = res.stack;\n // v8 ignore else -- TODO: add test #40625\n if (callsite) {\n result = callsite.toString();\n }\n /* v8 ignore next 2 -- should not happen */\n } catch {\n // no-op\n } finally {\n Error.stackTraceLimit = stackTraceLimitOrig;\n Error.prepareStackTrace = prepareStackTraceOrig;\n }\n\n return result;\n}\n\nconst keys = new Set<string>();\n\nexport function once(\n callback: () => void,\n omitFn: OmitFn = once,\n p1: string | Record<string, any>,\n p2?: string,\n): void {\n const callsite = getCallSite(omitFn);\n\n /* v8 ignore next 3 -- should not happen */\n if (!callsite) {\n return;\n }\n\n const paramsKey = hashParams(p1, p2);\n const key = `${callsite}|${paramsKey}`;\n\n if (!keys.has(key)) {\n keys.add(key);\n callback();\n }\n}\n\n/**\n * Before processing each repository,\n * all keys are supposed to be reset.\n */\nexport function reset(): void {\n keys.clear();\n}\n\nfunction hashParams(p1: string | Record<string, any>, p2?: string): string {\n const data =\n p2 === undefined ? stringify(p1) : `${stringify(p1)}|${stringify(p2)}`;\n return createHash('sha256').update(data).digest('hex');\n}\n"],"mappings":";;;;;;;;;;;;AAeA,SAAS,YAAY,QAA+B;CAClD,MAAM,sBAAsB,MAAM;CAGlC,MAAM,wBAAwB,MAAM;CAEpC,IAAI,SAAwB;AAC5B,KAAI;EACF,MAAM,MAA2B,EAAE,OAAO,EAAE,EAAE;AAE9C,QAAM,kBAAkB;AACxB,QAAM,qBAAqB,MAAM,UAAU;AAC3C,QAAM,kBAAkB,KAAK,OAAO;EAEpC,MAAM,CAAC,YAAY,IAAI;;AAEvB,MAAI,SACF,UAAS,SAAS,UAAU;SAGxB,WAEE;AACR,QAAM,kBAAkB;AACxB,QAAM,oBAAoB;;AAG5B,QAAO;;AAGT,MAAM,uBAAO,IAAI,KAAa;AAE9B,SAAgB,KACd,UACA,SAAiB,MACjB,IACA,IACM;CACN,MAAM,WAAW,YAAY,OAAO;;AAGpC,KAAI,CAAC,SACH;CAIF,MAAM,MAAM,GAAG,SAAS,GADN,WAAW,IAAI,GAAG;AAGpC,KAAI,CAAC,KAAK,IAAI,IAAI,EAAE;AAClB,OAAK,IAAI,IAAI;AACb,YAAU;;;;;;;AAQd,SAAgB,QAAc;AAC5B,MAAK,OAAO;;AAGd,SAAS,WAAW,IAAkC,IAAqB;CACzE,MAAM,OACJ,OAAO,SAAY,UAAU,GAAG,GAAG,GAAG,UAAU,GAAG,CAAC,GAAG,UAAU,GAAG;AACtE,QAAO,WAAW,SAAS,CAAC,OAAO,KAAK,CAAC,OAAO,MAAM"}
@@ -98,7 +98,7 @@ var RenovateLogger = class RenovateLogger {
98
98
  const logFn = this[level].bind(this);
99
99
  if (isString(p1)) logFn(p1);
100
100
  else logFn(p1, p2);
101
- }, logOnceFn);
101
+ }, logOnceFn, p1, p2);
102
102
  };
103
103
  return logOnceFn;
104
104
  }
@@ -1 +1 @@
1
- {"version":3,"file":"renovate-logger.js","names":["onceReset"],"sources":["../../lib/logger/renovate-logger.ts"],"sourcesContent":["import { isString } from '@sindresorhus/is';\nimport type * as bunyan from 'bunyan';\nimport { once, reset as onceReset } from './once.ts';\nimport { getRemappedLevel } from './remap.ts';\nimport type { Logger } from './types.ts';\nimport { getMessage, toMeta, withSanitizer } from './utils.ts';\n\nconst loggerLevels: bunyan.LogLevelString[] = [\n 'trace',\n 'debug',\n 'info',\n 'warn',\n 'error',\n 'fatal',\n];\n\ntype LoggerFunction = (p1: string | Record<string, any>, p2?: string) => void;\n\nexport class RenovateLogger implements Logger {\n readonly logger: Logger = { once: { reset: onceReset } } as any;\n readonly once = this.logger.once;\n private readonly bunyanLogger: bunyan;\n private context: string;\n private meta: Record<string, unknown>;\n\n constructor(\n bunyanLogger: bunyan,\n context: string,\n meta: Record<string, unknown>,\n ) {\n this.bunyanLogger = bunyanLogger;\n this.context = context;\n this.meta = meta;\n for (const level of loggerLevels) {\n this.logger[level] = this.logFactory(level) as never;\n this.logger.once[level] = this.logOnceFn(level);\n }\n }\n\n trace(p1: string): void;\n trace(p1: Record<string, any>, p2?: string): void;\n trace(p1: string | Record<string, any>, p2?: string): void {\n this.log('trace', p1, p2);\n }\n\n debug(p1: string): void;\n debug(p1: Record<string, any>, p2?: string): void;\n debug(p1: string | Record<string, any>, p2?: string): void {\n this.log('debug', p1, p2);\n }\n\n info(p1: string): void;\n info(p1: Record<string, any>, p2?: string): void;\n info(p1: string | Record<string, any>, p2?: string): void {\n this.log('info', p1, p2);\n }\n\n warn(p1: string): void;\n warn(p1: Record<string, any>, p2?: string): void;\n warn(p1: string | Record<string, any>, p2?: string): void {\n this.log('warn', p1, p2);\n }\n\n error(p1: string): void;\n error(p1: Record<string, any>, p2?: string): void;\n error(p1: string | Record<string, any>, p2?: string): void {\n this.log('error', p1, p2);\n }\n\n fatal(p1: string): void;\n fatal(p1: Record<string, any>, p2?: string): void;\n fatal(p1: string | Record<string, any>, p2?: string): void {\n this.log('fatal', p1, p2);\n }\n\n addSerializers(serializers: bunyan.Serializers): void {\n this.bunyanLogger.addSerializers(serializers);\n }\n\n addStream(stream: bunyan.Stream): void {\n this.bunyanLogger.addStream(withSanitizer(stream));\n }\n\n childLogger(): RenovateLogger {\n return new RenovateLogger(\n this.bunyanLogger.child({}),\n this.context,\n this.meta,\n );\n }\n\n get logContext(): string {\n return this.context;\n }\n\n set logContext(context: string) {\n this.context = context;\n }\n\n setMeta(obj: Record<string, unknown>): void {\n this.meta = { ...obj };\n }\n\n addMeta(obj: Record<string, unknown>): void {\n this.meta = { ...this.meta, ...obj };\n }\n\n removeMeta(fields: string[]): void {\n for (const key of Object.keys(this.meta)) {\n if (fields.includes(key)) {\n delete this.meta[key];\n }\n }\n }\n\n private logFactory(_level: bunyan.LogLevelString): LoggerFunction {\n return (p1: string | Record<string, any>, p2?: string): void => {\n const meta: Record<string, unknown> = {\n logContext: this.context,\n ...this.meta,\n ...toMeta(p1),\n };\n const msg = getMessage(p1, p2);\n let level = _level;\n\n if (isString(msg)) {\n const remappedLevel = getRemappedLevel(msg);\n /* v8 ignore next 4 -- not easily testable */\n if (remappedLevel) {\n meta.oldLevel = level;\n level = remappedLevel;\n }\n this.bunyanLogger[level](meta, msg);\n } else {\n this.bunyanLogger[level](meta);\n }\n };\n }\n\n private logOnceFn(level: bunyan.LogLevelString): LoggerFunction {\n const logOnceFn = (p1: string | Record<string, any>, p2?: string): void => {\n once(() => {\n const logFn = this[level].bind(this); // bind to the instance.\n if (isString(p1)) {\n logFn(p1);\n } else {\n logFn(p1, p2);\n }\n }, logOnceFn);\n };\n return logOnceFn;\n }\n\n private log(\n level: bunyan.LogLevelString,\n p1: string | Record<string, any>,\n p2?: string,\n ): void {\n const logFn = this.logger[level];\n if (isString(p1)) {\n logFn(p1);\n } else {\n logFn(p1, p2);\n }\n }\n}\n"],"mappings":";;;;;;AAOA,MAAM,eAAwC;CAC5C;CACA;CACA;CACA;CACA;CACA;CACD;AAID,IAAa,iBAAb,MAAa,eAAiC;CAC5C,AAAS,SAAiB,EAAE,MAAM,EAASA,OAAW,EAAE;CACxD,AAAS,OAAO,KAAK,OAAO;CAC5B,AAAiB;CACjB,AAAQ;CACR,AAAQ;CAER,YACE,cACA,SACA,MACA;AACA,OAAK,eAAe;AACpB,OAAK,UAAU;AACf,OAAK,OAAO;AACZ,OAAK,MAAM,SAAS,cAAc;AAChC,QAAK,OAAO,SAAS,KAAK,WAAW,MAAM;AAC3C,QAAK,OAAO,KAAK,SAAS,KAAK,UAAU,MAAM;;;CAMnD,MAAM,IAAkC,IAAmB;AACzD,OAAK,IAAI,SAAS,IAAI,GAAG;;CAK3B,MAAM,IAAkC,IAAmB;AACzD,OAAK,IAAI,SAAS,IAAI,GAAG;;CAK3B,KAAK,IAAkC,IAAmB;AACxD,OAAK,IAAI,QAAQ,IAAI,GAAG;;CAK1B,KAAK,IAAkC,IAAmB;AACxD,OAAK,IAAI,QAAQ,IAAI,GAAG;;CAK1B,MAAM,IAAkC,IAAmB;AACzD,OAAK,IAAI,SAAS,IAAI,GAAG;;CAK3B,MAAM,IAAkC,IAAmB;AACzD,OAAK,IAAI,SAAS,IAAI,GAAG;;CAG3B,eAAe,aAAuC;AACpD,OAAK,aAAa,eAAe,YAAY;;CAG/C,UAAU,QAA6B;AACrC,OAAK,aAAa,UAAU,cAAc,OAAO,CAAC;;CAGpD,cAA8B;AAC5B,SAAO,IAAI,eACT,KAAK,aAAa,MAAM,EAAE,CAAC,EAC3B,KAAK,SACL,KAAK,KACN;;CAGH,IAAI,aAAqB;AACvB,SAAO,KAAK;;CAGd,IAAI,WAAW,SAAiB;AAC9B,OAAK,UAAU;;CAGjB,QAAQ,KAAoC;AAC1C,OAAK,OAAO,EAAE,GAAG,KAAK;;CAGxB,QAAQ,KAAoC;AAC1C,OAAK,OAAO;GAAE,GAAG,KAAK;GAAM,GAAG;GAAK;;CAGtC,WAAW,QAAwB;AACjC,OAAK,MAAM,OAAO,OAAO,KAAK,KAAK,KAAK,CACtC,KAAI,OAAO,SAAS,IAAI,CACtB,QAAO,KAAK,KAAK;;CAKvB,AAAQ,WAAW,QAA+C;AAChE,UAAQ,IAAkC,OAAsB;GAC9D,MAAM,OAAgC;IACpC,YAAY,KAAK;IACjB,GAAG,KAAK;IACR,GAAG,OAAO,GAAG;IACd;GACD,MAAM,MAAM,WAAW,IAAI,GAAG;GAC9B,IAAI,QAAQ;AAEZ,OAAI,SAAS,IAAI,EAAE;IACjB,MAAM,gBAAgB,iBAAiB,IAAI;;AAE3C,QAAI,eAAe;AACjB,UAAK,WAAW;AAChB,aAAQ;;AAEV,SAAK,aAAa,OAAO,MAAM,IAAI;SAEnC,MAAK,aAAa,OAAO,KAAK;;;CAKpC,AAAQ,UAAU,OAA8C;EAC9D,MAAM,aAAa,IAAkC,OAAsB;AACzE,cAAW;IACT,MAAM,QAAQ,KAAK,OAAO,KAAK,KAAK;AACpC,QAAI,SAAS,GAAG,CACd,OAAM,GAAG;QAET,OAAM,IAAI,GAAG;MAEd,UAAU;;AAEf,SAAO;;CAGT,AAAQ,IACN,OACA,IACA,IACM;EACN,MAAM,QAAQ,KAAK,OAAO;AAC1B,MAAI,SAAS,GAAG,CACd,OAAM,GAAG;MAET,OAAM,IAAI,GAAG"}
1
+ {"version":3,"file":"renovate-logger.js","names":["onceReset"],"sources":["../../lib/logger/renovate-logger.ts"],"sourcesContent":["import { isString } from '@sindresorhus/is';\nimport type * as bunyan from 'bunyan';\nimport { once, reset as onceReset } from './once.ts';\nimport { getRemappedLevel } from './remap.ts';\nimport type { Logger } from './types.ts';\nimport { getMessage, toMeta, withSanitizer } from './utils.ts';\n\nconst loggerLevels: bunyan.LogLevelString[] = [\n 'trace',\n 'debug',\n 'info',\n 'warn',\n 'error',\n 'fatal',\n];\n\ntype LoggerFunction = (p1: string | Record<string, any>, p2?: string) => void;\n\nexport class RenovateLogger implements Logger {\n readonly logger: Logger = { once: { reset: onceReset } } as any;\n readonly once = this.logger.once;\n private readonly bunyanLogger: bunyan;\n private context: string;\n private meta: Record<string, unknown>;\n\n constructor(\n bunyanLogger: bunyan,\n context: string,\n meta: Record<string, unknown>,\n ) {\n this.bunyanLogger = bunyanLogger;\n this.context = context;\n this.meta = meta;\n for (const level of loggerLevels) {\n this.logger[level] = this.logFactory(level) as never;\n this.logger.once[level] = this.logOnceFn(level);\n }\n }\n\n trace(p1: string): void;\n trace(p1: Record<string, any>, p2?: string): void;\n trace(p1: string | Record<string, any>, p2?: string): void {\n this.log('trace', p1, p2);\n }\n\n debug(p1: string): void;\n debug(p1: Record<string, any>, p2?: string): void;\n debug(p1: string | Record<string, any>, p2?: string): void {\n this.log('debug', p1, p2);\n }\n\n info(p1: string): void;\n info(p1: Record<string, any>, p2?: string): void;\n info(p1: string | Record<string, any>, p2?: string): void {\n this.log('info', p1, p2);\n }\n\n warn(p1: string): void;\n warn(p1: Record<string, any>, p2?: string): void;\n warn(p1: string | Record<string, any>, p2?: string): void {\n this.log('warn', p1, p2);\n }\n\n error(p1: string): void;\n error(p1: Record<string, any>, p2?: string): void;\n error(p1: string | Record<string, any>, p2?: string): void {\n this.log('error', p1, p2);\n }\n\n fatal(p1: string): void;\n fatal(p1: Record<string, any>, p2?: string): void;\n fatal(p1: string | Record<string, any>, p2?: string): void {\n this.log('fatal', p1, p2);\n }\n\n addSerializers(serializers: bunyan.Serializers): void {\n this.bunyanLogger.addSerializers(serializers);\n }\n\n addStream(stream: bunyan.Stream): void {\n this.bunyanLogger.addStream(withSanitizer(stream));\n }\n\n childLogger(): RenovateLogger {\n return new RenovateLogger(\n this.bunyanLogger.child({}),\n this.context,\n this.meta,\n );\n }\n\n get logContext(): string {\n return this.context;\n }\n\n set logContext(context: string) {\n this.context = context;\n }\n\n setMeta(obj: Record<string, unknown>): void {\n this.meta = { ...obj };\n }\n\n addMeta(obj: Record<string, unknown>): void {\n this.meta = { ...this.meta, ...obj };\n }\n\n removeMeta(fields: string[]): void {\n for (const key of Object.keys(this.meta)) {\n if (fields.includes(key)) {\n delete this.meta[key];\n }\n }\n }\n\n private logFactory(_level: bunyan.LogLevelString): LoggerFunction {\n return (p1: string | Record<string, any>, p2?: string): void => {\n const meta: Record<string, unknown> = {\n logContext: this.context,\n ...this.meta,\n ...toMeta(p1),\n };\n const msg = getMessage(p1, p2);\n let level = _level;\n\n if (isString(msg)) {\n const remappedLevel = getRemappedLevel(msg);\n /* v8 ignore next 4 -- not easily testable */\n if (remappedLevel) {\n meta.oldLevel = level;\n level = remappedLevel;\n }\n this.bunyanLogger[level](meta, msg);\n } else {\n this.bunyanLogger[level](meta);\n }\n };\n }\n\n private logOnceFn(level: bunyan.LogLevelString): LoggerFunction {\n const logOnceFn = (p1: string | Record<string, any>, p2?: string): void => {\n once(\n () => {\n const logFn = this[level].bind(this); // bind to the instance.\n if (isString(p1)) {\n logFn(p1);\n } else {\n logFn(p1, p2);\n }\n },\n logOnceFn,\n p1,\n p2,\n );\n };\n return logOnceFn;\n }\n\n private log(\n level: bunyan.LogLevelString,\n p1: string | Record<string, any>,\n p2?: string,\n ): void {\n const logFn = this.logger[level];\n if (isString(p1)) {\n logFn(p1);\n } else {\n logFn(p1, p2);\n }\n }\n}\n"],"mappings":";;;;;;AAOA,MAAM,eAAwC;CAC5C;CACA;CACA;CACA;CACA;CACA;CACD;AAID,IAAa,iBAAb,MAAa,eAAiC;CAC5C,AAAS,SAAiB,EAAE,MAAM,EAASA,OAAW,EAAE;CACxD,AAAS,OAAO,KAAK,OAAO;CAC5B,AAAiB;CACjB,AAAQ;CACR,AAAQ;CAER,YACE,cACA,SACA,MACA;AACA,OAAK,eAAe;AACpB,OAAK,UAAU;AACf,OAAK,OAAO;AACZ,OAAK,MAAM,SAAS,cAAc;AAChC,QAAK,OAAO,SAAS,KAAK,WAAW,MAAM;AAC3C,QAAK,OAAO,KAAK,SAAS,KAAK,UAAU,MAAM;;;CAMnD,MAAM,IAAkC,IAAmB;AACzD,OAAK,IAAI,SAAS,IAAI,GAAG;;CAK3B,MAAM,IAAkC,IAAmB;AACzD,OAAK,IAAI,SAAS,IAAI,GAAG;;CAK3B,KAAK,IAAkC,IAAmB;AACxD,OAAK,IAAI,QAAQ,IAAI,GAAG;;CAK1B,KAAK,IAAkC,IAAmB;AACxD,OAAK,IAAI,QAAQ,IAAI,GAAG;;CAK1B,MAAM,IAAkC,IAAmB;AACzD,OAAK,IAAI,SAAS,IAAI,GAAG;;CAK3B,MAAM,IAAkC,IAAmB;AACzD,OAAK,IAAI,SAAS,IAAI,GAAG;;CAG3B,eAAe,aAAuC;AACpD,OAAK,aAAa,eAAe,YAAY;;CAG/C,UAAU,QAA6B;AACrC,OAAK,aAAa,UAAU,cAAc,OAAO,CAAC;;CAGpD,cAA8B;AAC5B,SAAO,IAAI,eACT,KAAK,aAAa,MAAM,EAAE,CAAC,EAC3B,KAAK,SACL,KAAK,KACN;;CAGH,IAAI,aAAqB;AACvB,SAAO,KAAK;;CAGd,IAAI,WAAW,SAAiB;AAC9B,OAAK,UAAU;;CAGjB,QAAQ,KAAoC;AAC1C,OAAK,OAAO,EAAE,GAAG,KAAK;;CAGxB,QAAQ,KAAoC;AAC1C,OAAK,OAAO;GAAE,GAAG,KAAK;GAAM,GAAG;GAAK;;CAGtC,WAAW,QAAwB;AACjC,OAAK,MAAM,OAAO,OAAO,KAAK,KAAK,KAAK,CACtC,KAAI,OAAO,SAAS,IAAI,CACtB,QAAO,KAAK,KAAK;;CAKvB,AAAQ,WAAW,QAA+C;AAChE,UAAQ,IAAkC,OAAsB;GAC9D,MAAM,OAAgC;IACpC,YAAY,KAAK;IACjB,GAAG,KAAK;IACR,GAAG,OAAO,GAAG;IACd;GACD,MAAM,MAAM,WAAW,IAAI,GAAG;GAC9B,IAAI,QAAQ;AAEZ,OAAI,SAAS,IAAI,EAAE;IACjB,MAAM,gBAAgB,iBAAiB,IAAI;;AAE3C,QAAI,eAAe;AACjB,UAAK,WAAW;AAChB,aAAQ;;AAEV,SAAK,aAAa,OAAO,MAAM,IAAI;SAEnC,MAAK,aAAa,OAAO,KAAK;;;CAKpC,AAAQ,UAAU,OAA8C;EAC9D,MAAM,aAAa,IAAkC,OAAsB;AACzE,cACQ;IACJ,MAAM,QAAQ,KAAK,OAAO,KAAK,KAAK;AACpC,QAAI,SAAS,GAAG,CACd,OAAM,GAAG;QAET,OAAM,IAAI,GAAG;MAGjB,WACA,IACA,GACD;;AAEH,SAAO;;CAGT,AAAQ,IACN,OACA,IACA,IACM;EACN,MAAM,QAAQ,KAAK,OAAO;AAC1B,MAAI,SAAS,GAAG,CACd,OAAM,GAAG;MAET,OAAM,IAAI,GAAG"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "renovate",
3
3
  "description": "Automated dependency updates. Flexible so you don't need to be.",
4
- "version": "43.26.5",
4
+ "version": "43.27.0",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "renovate": "dist/renovate.js",
@@ -1,7 +1,7 @@
1
1
  {
2
- "title": "JSON schema for Renovate 43.26.5 config files (https://renovatebot.com/)",
2
+ "title": "JSON schema for Renovate 43.27.0 config files (https://renovatebot.com/)",
3
3
  "$schema": "http://json-schema.org/draft-07/schema#",
4
- "x-renovate-version": "43.26.5",
4
+ "x-renovate-version": "43.27.0",
5
5
  "allowComments": true,
6
6
  "type": "object",
7
7
  "properties": {