renovate 44.46.2 → 44.46.3

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.
@@ -14,13 +14,17 @@ const bunyanFields = [
14
14
  "msg",
15
15
  "start_time"
16
16
  ];
17
+ /**
18
+ * If a log contains any of these meta fields in the meta, promote them up to the log line, rather than rendering them with other meta fields.
19
+ *
20
+ * This only applies when these fields have a string value, otherwise they are treated as a regular meta field.
21
+ */
17
22
  const metaFields = [
18
23
  "repository",
19
24
  "baseBranch",
20
25
  "packageFile",
21
26
  "depType",
22
27
  "dependency",
23
- "dependencies",
24
28
  "branch"
25
29
  ];
26
30
  const levels = {
@@ -45,7 +49,7 @@ function indent(str, leading = false) {
45
49
  function getMeta(rec, colorize = true) {
46
50
  if (!rec) return "";
47
51
  let res = rec.module ? ` [${rec.module}]` : ``;
48
- const filteredMeta = metaFields.filter((elem) => rec[elem]);
52
+ const filteredMeta = metaFields.filter((elem) => isString(rec[elem]));
49
53
  if (!filteredMeta.length) return res;
50
54
  res = ` (${filteredMeta.map((field) => `${field}=${String(rec[field])}`).join(", ")})${res}`;
51
55
  return colorize ? util$1.styleText("gray", res) : res;
@@ -55,7 +59,7 @@ function getDetails(rec) {
55
59
  const recFiltered = { ...rec };
56
60
  delete recFiltered.module;
57
61
  Object.keys(recFiltered).forEach((key) => {
58
- if (key === "logContext" || bunyanFields.includes(key) || metaFields.includes(key)) delete recFiltered[key];
62
+ if (key === "logContext" || bunyanFields.includes(key) || metaFields.includes(key) && isString(recFiltered[key])) delete recFiltered[key];
59
63
  });
60
64
  const remainingKeys = Object.keys(recFiltered);
61
65
  if (remainingKeys.length === 0) return "";
@@ -1 +1 @@
1
- {"version":3,"file":"pretty-stdout.js","names":["util"],"sources":["../../lib/logger/pretty-stdout.ts"],"sourcesContent":["// Code originally derived from https://github.com/hadfieldn/node-bunyan-prettystream but since heavily edited\n// Neither fork nor original repo appear to be maintained\n\nimport { Writable } from 'node:stream';\nimport * as util from 'node:util';\nimport { isNonEmptyObject, isPlainObject, isString } from '@sindresorhus/is';\nimport stringify from 'json-stringify-pretty-compact';\nimport { regEx } from '../util/regex.ts';\nimport type { BunyanRecord } from './types.ts';\n\nconst bunyanFields = [\n 'name',\n 'hostname',\n 'pid',\n 'level',\n 'v',\n 'time',\n 'msg',\n 'start_time',\n];\nconst metaFields = [\n 'repository',\n 'baseBranch',\n 'packageFile',\n 'depType',\n 'dependency',\n 'dependencies',\n 'branch',\n];\n\nconst levels: Record<number, string> = {\n 10: 'TRACE',\n 20: 'DEBUG',\n 30: ' INFO',\n 40: ' WARN',\n 50: 'ERROR',\n 60: 'FATAL',\n};\n\nconst colorizedLevels: Record<number, string> = {\n 10: util.styleText('gray', 'TRACE'),\n 20: util.styleText('blue', 'DEBUG'),\n 30: util.styleText('green', ' INFO'),\n 40: util.styleText('magenta', ' WARN'),\n 50: util.styleText('red', 'ERROR'),\n 60: util.styleText('bgRed', 'FATAL'),\n};\n\nexport function indent(str: string, leading = false): string {\n const prefix = leading ? ' ' : '';\n return prefix + str.split(regEx(/\\r?\\n/)).join('\\n ');\n}\n\nexport function getMeta(rec: BunyanRecord, colorize = true): string {\n if (!rec) {\n return '';\n }\n let res = rec.module ? ` [${rec.module}]` : ``;\n const filteredMeta = metaFields.filter((elem) => rec[elem]);\n if (!filteredMeta.length) {\n return res;\n }\n const metaStr = filteredMeta\n .map((field) => `${field}=${String(rec[field])}`)\n .join(', ');\n res = ` (${metaStr})${res}`;\n return colorize ? util.styleText('gray', res) : res;\n}\n\nexport function getDetails(rec: BunyanRecord): string {\n if (!rec) {\n return '';\n }\n const recFiltered = { ...rec };\n delete recFiltered.module;\n Object.keys(recFiltered).forEach((key) => {\n if (\n key === 'logContext' ||\n bunyanFields.includes(key) ||\n metaFields.includes(key)\n ) {\n delete recFiltered[key];\n }\n });\n const remainingKeys = Object.keys(recFiltered);\n if (remainingKeys.length === 0) {\n return '';\n }\n\n // Handle err.stack specially for readable multi-line output\n const err = recFiltered.err;\n if (isPlainObject(err) && isString(err.stack)) {\n const { stack, ...errRest } = err;\n recFiltered.err = isNonEmptyObject(errRest) ? errRest : undefined;\n const parts: string[] = [];\n for (const key of remainingKeys) {\n if (key === 'err' && recFiltered.err === undefined) {\n continue;\n }\n parts.push(indent(`\"${key}\": ${stringify(recFiltered[key])}`, true));\n }\n const jsonPart = parts.join(',\\n');\n const stackPart = indent(stack, true);\n return jsonPart ? `${jsonPart}\\n${stackPart}\\n` : `${stackPart}\\n`;\n }\n\n return `${remainingKeys\n .map((key) => `${indent(`\"${key}\": ${stringify(recFiltered[key])}`, true)}`)\n .join(',\\n')}\\n`;\n}\n\nexport function formatRecord(rec: BunyanRecord, colorize = true): string {\n const level = colorize ? colorizedLevels[rec.level] : levels[rec.level];\n const msg = `${indent(rec.msg)}`;\n const meta = getMeta(rec, colorize);\n const details = getDetails(rec);\n return util.format('%s: %s%s\\n%s', level, msg, meta, details);\n}\n\nexport class PrettyStdoutStream extends Writable {\n constructor() {\n super({ objectMode: true });\n }\n\n override _write(\n data: BunyanRecord,\n _encoding: string,\n callback: (error?: Error | null) => void,\n ): void {\n process.stdout.write(formatRecord(data));\n callback();\n }\n}\n"],"mappings":";;;;;;AAUA,MAAM,eAAe;CACnB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AACA,MAAM,aAAa;CACjB;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAEA,MAAM,SAAiC;CACrC,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;AACN;AAEA,MAAM,kBAA0C;CAC9C,IAAIA,OAAK,UAAU,QAAQ,OAAO;CAClC,IAAIA,OAAK,UAAU,QAAQ,OAAO;CAClC,IAAIA,OAAK,UAAU,SAAS,OAAO;CACnC,IAAIA,OAAK,UAAU,WAAW,OAAO;CACrC,IAAIA,OAAK,UAAU,OAAO,OAAO;CACjC,IAAIA,OAAK,UAAU,SAAS,OAAO;AACrC;AAEA,SAAgB,OAAO,KAAa,UAAU,OAAe;CAE3D,QADe,UAAU,YAAY,MACrB,IAAI,MAAM,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,WAAW;AAC5D;AAEA,SAAgB,QAAQ,KAAmB,WAAW,MAAc;CAClE,IAAI,CAAC,KACH,OAAO;CAET,IAAI,MAAM,IAAI,SAAS,KAAK,IAAI,OAAO,KAAK;CAC5C,MAAM,eAAe,WAAW,QAAQ,SAAS,IAAI,KAAK;CAC1D,IAAI,CAAC,aAAa,QAChB,OAAO;CAKT,MAAM,KAHU,aACb,KAAK,UAAU,GAAG,MAAM,GAAG,OAAO,IAAI,MAAM,GAAG,CAAC,CAChD,KAAK,IACS,EAAE,GAAG;CACtB,OAAO,WAAWA,OAAK,UAAU,QAAQ,GAAG,IAAI;AAClD;AAEA,SAAgB,WAAW,KAA2B;CACpD,IAAI,CAAC,KACH,OAAO;CAET,MAAM,cAAc,EAAE,GAAG,IAAI;CAC7B,OAAO,YAAY;CACnB,OAAO,KAAK,WAAW,CAAC,CAAC,SAAS,QAAQ;EACxC,IACE,QAAQ,gBACR,aAAa,SAAS,GAAG,KACzB,WAAW,SAAS,GAAG,GAEvB,OAAO,YAAY;CAEvB,CAAC;CACD,MAAM,gBAAgB,OAAO,KAAK,WAAW;CAC7C,IAAI,cAAc,WAAW,GAC3B,OAAO;CAIT,MAAM,MAAM,YAAY;CACxB,IAAI,cAAc,GAAG,KAAK,SAAS,IAAI,KAAK,GAAG;EAC7C,MAAM,EAAE,OAAO,GAAG,YAAY;EAC9B,YAAY,MAAM,iBAAiB,OAAO,IAAI,UAAU,KAAA;EACxD,MAAM,QAAkB,CAAC;EACzB,KAAK,MAAM,OAAO,eAAe;GAC/B,IAAI,QAAQ,SAAS,YAAY,QAAQ,KAAA,GACvC;GAEF,MAAM,KAAK,OAAO,IAAI,IAAI,KAAK,UAAU,YAAY,IAAI,KAAK,IAAI,CAAC;EACrE;EACA,MAAM,WAAW,MAAM,KAAK,KAAK;EACjC,MAAM,YAAY,OAAO,OAAO,IAAI;EACpC,OAAO,WAAW,GAAG,SAAS,IAAI,UAAU,MAAM,GAAG,UAAU;CACjE;CAEA,OAAO,GAAG,cACP,KAAK,QAAQ,GAAG,OAAO,IAAI,IAAI,KAAK,UAAU,YAAY,IAAI,KAAK,IAAI,GAAG,CAAC,CAC3E,KAAK,KAAK,EAAE;AACjB;AAEA,SAAgB,aAAa,KAAmB,WAAW,MAAc;CACvE,MAAM,QAAQ,WAAW,gBAAgB,IAAI,SAAS,OAAO,IAAI;CACjE,MAAM,MAAM,GAAG,OAAO,IAAI,GAAG;CAC7B,MAAM,OAAO,QAAQ,KAAK,QAAQ;CAClC,MAAM,UAAU,WAAW,GAAG;CAC9B,OAAOA,OAAK,OAAO,gBAAgB,OAAO,KAAK,MAAM,OAAO;AAC9D;AAEA,IAAa,qBAAb,cAAwC,SAAS;CAC/C,cAAc;EACZ,MAAM,EAAE,YAAY,KAAK,CAAC;CAC5B;CAEA,OACE,MACA,WACA,UACM;EACN,QAAQ,OAAO,MAAM,aAAa,IAAI,CAAC;EACvC,SAAS;CACX;AACF"}
1
+ {"version":3,"file":"pretty-stdout.js","names":["util"],"sources":["../../lib/logger/pretty-stdout.ts"],"sourcesContent":["// Code originally derived from https://github.com/hadfieldn/node-bunyan-prettystream but since heavily edited\n// Neither fork nor original repo appear to be maintained\n\nimport { Writable } from 'node:stream';\nimport * as util from 'node:util';\nimport { isNonEmptyObject, isPlainObject, isString } from '@sindresorhus/is';\nimport stringify from 'json-stringify-pretty-compact';\nimport { regEx } from '../util/regex.ts';\nimport type { BunyanRecord } from './types.ts';\n\nconst bunyanFields = [\n 'name',\n 'hostname',\n 'pid',\n 'level',\n 'v',\n 'time',\n 'msg',\n 'start_time',\n];\n/**\n * If a log contains any of these meta fields in the meta, promote them up to the log line, rather than rendering them with other meta fields.\n *\n * This only applies when these fields have a string value, otherwise they are treated as a regular meta field.\n */\nconst metaFields = [\n 'repository',\n 'baseBranch',\n 'packageFile',\n 'depType',\n 'dependency',\n 'branch',\n];\n\nconst levels: Record<number, string> = {\n 10: 'TRACE',\n 20: 'DEBUG',\n 30: ' INFO',\n 40: ' WARN',\n 50: 'ERROR',\n 60: 'FATAL',\n};\n\nconst colorizedLevels: Record<number, string> = {\n 10: util.styleText('gray', 'TRACE'),\n 20: util.styleText('blue', 'DEBUG'),\n 30: util.styleText('green', ' INFO'),\n 40: util.styleText('magenta', ' WARN'),\n 50: util.styleText('red', 'ERROR'),\n 60: util.styleText('bgRed', 'FATAL'),\n};\n\nexport function indent(str: string, leading = false): string {\n const prefix = leading ? ' ' : '';\n return prefix + str.split(regEx(/\\r?\\n/)).join('\\n ');\n}\n\nexport function getMeta(rec: BunyanRecord, colorize = true): string {\n if (!rec) {\n return '';\n }\n let res = rec.module ? ` [${rec.module}]` : ``;\n const filteredMeta = metaFields.filter((elem) => isString(rec[elem]));\n if (!filteredMeta.length) {\n return res;\n }\n const metaStr = filteredMeta\n .map((field) => `${field}=${String(rec[field])}`)\n .join(', ');\n res = ` (${metaStr})${res}`;\n return colorize ? util.styleText('gray', res) : res;\n}\n\nexport function getDetails(rec: BunyanRecord): string {\n if (!rec) {\n return '';\n }\n const recFiltered = { ...rec };\n delete recFiltered.module;\n Object.keys(recFiltered).forEach((key) => {\n if (\n key === 'logContext' ||\n bunyanFields.includes(key) ||\n (metaFields.includes(key) && isString(recFiltered[key]))\n ) {\n delete recFiltered[key];\n }\n });\n const remainingKeys = Object.keys(recFiltered);\n if (remainingKeys.length === 0) {\n return '';\n }\n\n // Handle err.stack specially for readable multi-line output\n const err = recFiltered.err;\n if (isPlainObject(err) && isString(err.stack)) {\n const { stack, ...errRest } = err;\n recFiltered.err = isNonEmptyObject(errRest) ? errRest : undefined;\n const parts: string[] = [];\n for (const key of remainingKeys) {\n if (key === 'err' && recFiltered.err === undefined) {\n continue;\n }\n parts.push(indent(`\"${key}\": ${stringify(recFiltered[key])}`, true));\n }\n const jsonPart = parts.join(',\\n');\n const stackPart = indent(stack, true);\n return jsonPart ? `${jsonPart}\\n${stackPart}\\n` : `${stackPart}\\n`;\n }\n\n return `${remainingKeys\n .map((key) => `${indent(`\"${key}\": ${stringify(recFiltered[key])}`, true)}`)\n .join(',\\n')}\\n`;\n}\n\nexport function formatRecord(rec: BunyanRecord, colorize = true): string {\n const level = colorize ? colorizedLevels[rec.level] : levels[rec.level];\n const msg = `${indent(rec.msg)}`;\n const meta = getMeta(rec, colorize);\n const details = getDetails(rec);\n return util.format('%s: %s%s\\n%s', level, msg, meta, details);\n}\n\nexport class PrettyStdoutStream extends Writable {\n constructor() {\n super({ objectMode: true });\n }\n\n override _write(\n data: BunyanRecord,\n _encoding: string,\n callback: (error?: Error | null) => void,\n ): void {\n process.stdout.write(formatRecord(data));\n callback();\n }\n}\n"],"mappings":"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"}
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": "44.46.2",
4
+ "version": "44.46.3",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "renovate": "dist/renovate.js",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$id": "https://docs.renovatebot.com/renovate-schema.json",
3
- "title": "JSON schema for Renovate 44.46.2 config files (https://renovatebot.com/)",
3
+ "title": "JSON schema for Renovate 44.46.3 config files (https://renovatebot.com/)",
4
4
  "$schema": "http://json-schema.org/draft-07/schema#",
5
- "x-renovate-version": "44.46.2",
5
+ "x-renovate-version": "44.46.3",
6
6
  "allowComments": true,
7
7
  "type": "object",
8
8
  "definitions": {