projen 0.54.57 → 0.55.1

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 (189) hide show
  1. package/.jsii +49 -19
  2. package/changelog.md +6 -1
  3. package/docs/api/API.md +14 -1
  4. package/docs/escape-hatches.md +19 -0
  5. package/lib/awscdk/auto-discover.js +4 -4
  6. package/lib/awscdk/awscdk-app-java.js +1 -1
  7. package/lib/awscdk/awscdk-app-py.js +1 -1
  8. package/lib/awscdk/awscdk-app-ts.js +1 -1
  9. package/lib/awscdk/awscdk-construct.js +2 -2
  10. package/lib/awscdk/awscdk-deps-java.js +1 -1
  11. package/lib/awscdk/awscdk-deps-js.js +1 -1
  12. package/lib/awscdk/awscdk-deps.js +1 -1
  13. package/lib/awscdk/cdk-config.js +1 -1
  14. package/lib/awscdk/cdk-tasks.js +1 -1
  15. package/lib/awscdk/integration-test.js +1 -1
  16. package/lib/awscdk/lambda-extension.js +1 -1
  17. package/lib/awscdk/lambda-function.js +2 -2
  18. package/lib/build/build-workflow.js +1 -1
  19. package/lib/cdk/auto-discover-base.js +2 -2
  20. package/lib/cdk/construct-lib.js +1 -1
  21. package/lib/cdk/integration-test-base.js +1 -1
  22. package/lib/cdk/jsii-docgen.js +1 -1
  23. package/lib/cdk/jsii-project.js +1 -1
  24. package/lib/cdk8s/auto-discover.js +2 -2
  25. package/lib/cdk8s/cdk8s-app-ts.js +1 -1
  26. package/lib/cdk8s/cdk8s-construct.js +1 -1
  27. package/lib/cdk8s/integration-test.js +1 -1
  28. package/lib/cdktf/cdktf-construct.js +1 -1
  29. package/lib/component.js +1 -1
  30. package/lib/dependencies.js +1 -1
  31. package/lib/dev-env.js +1 -1
  32. package/lib/docker-compose.js +2 -2
  33. package/lib/file.js +1 -1
  34. package/lib/gitattributes.js +1 -1
  35. package/lib/github/auto-approve.js +1 -1
  36. package/lib/github/auto-merge.js +1 -1
  37. package/lib/github/dependabot.js +1 -1
  38. package/lib/github/github-credentials.js +1 -1
  39. package/lib/github/github-project.js +1 -1
  40. package/lib/github/github.js +1 -1
  41. package/lib/github/mergify.js +1 -1
  42. package/lib/github/pr-template.js +1 -1
  43. package/lib/github/pull-request-lint.js +1 -1
  44. package/lib/github/stale.js +1 -1
  45. package/lib/github/task-workflow.js +1 -1
  46. package/lib/github/workflows.js +1 -1
  47. package/lib/gitlab/configuration.js +1 -1
  48. package/lib/gitlab/gitlab-configuration.js +1 -1
  49. package/lib/gitlab/nested-configuration.js +1 -1
  50. package/lib/gitpod.js +1 -1
  51. package/lib/ignore-file.js +1 -1
  52. package/lib/ini.js +1 -1
  53. package/lib/java/java-project.js +1 -1
  54. package/lib/java/junit.js +1 -1
  55. package/lib/java/maven-compile.js +1 -1
  56. package/lib/java/maven-packaging.js +1 -1
  57. package/lib/java/maven-sample.js +1 -1
  58. package/lib/java/pom.js +1 -1
  59. package/lib/java/projenrc.js +1 -1
  60. package/lib/javascript/bundler.js +1 -1
  61. package/lib/javascript/eslint.js +1 -1
  62. package/lib/javascript/jest.js +1 -1
  63. package/lib/javascript/node-package.js +1 -1
  64. package/lib/javascript/node-project.js +1 -1
  65. package/lib/javascript/npm-config.js +1 -1
  66. package/lib/javascript/prettier.js +1 -1
  67. package/lib/javascript/projenrc.js +1 -1
  68. package/lib/javascript/typescript-config.js +1 -1
  69. package/lib/javascript/upgrade-dependencies.js +2 -2
  70. package/lib/json.js +1 -1
  71. package/lib/license.js +1 -1
  72. package/lib/logger.js +1 -1
  73. package/lib/makefile.js +1 -1
  74. package/lib/object-file.js +1 -1
  75. package/lib/project-build.js +1 -1
  76. package/lib/project.d.ts +10 -0
  77. package/lib/project.js +28 -2
  78. package/lib/projects.js +1 -1
  79. package/lib/projenrc-json.js +1 -1
  80. package/lib/python/pip.js +1 -1
  81. package/lib/python/poetry.js +2 -2
  82. package/lib/python/projenrc.js +1 -1
  83. package/lib/python/pytest-sample.js +1 -1
  84. package/lib/python/pytest.js +1 -1
  85. package/lib/python/python-project.js +1 -1
  86. package/lib/python/python-sample.js +1 -1
  87. package/lib/python/requirements-file.js +1 -1
  88. package/lib/python/setuppy.js +1 -1
  89. package/lib/python/setuptools.js +1 -1
  90. package/lib/python/venv.js +1 -1
  91. package/lib/readme.js +1 -1
  92. package/lib/release/publisher.js +1 -1
  93. package/lib/release/release-trigger.js +1 -1
  94. package/lib/release/release.js +1 -1
  95. package/lib/sample-file.js +2 -2
  96. package/lib/semver.js +1 -1
  97. package/lib/source-code.js +1 -1
  98. package/lib/task-runtime.js +1 -1
  99. package/lib/task.js +1 -1
  100. package/lib/tasks.js +1 -1
  101. package/lib/testing.js +1 -1
  102. package/lib/textfile.js +1 -1
  103. package/lib/toml.js +1 -1
  104. package/lib/typescript/projenrc.js +1 -1
  105. package/lib/typescript/typescript-typedoc.js +1 -1
  106. package/lib/typescript/typescript.js +5 -5
  107. package/lib/util.d.ts +1 -1
  108. package/lib/version.js +1 -1
  109. package/lib/vscode/devcontainer.js +1 -1
  110. package/lib/vscode/launch-config.js +1 -1
  111. package/lib/vscode/vscode.js +1 -1
  112. package/lib/web/next.js +3 -3
  113. package/lib/web/postcss.js +1 -1
  114. package/lib/web/react.js +4 -4
  115. package/lib/web/tailwind.js +1 -1
  116. package/lib/xmlfile.js +1 -1
  117. package/lib/yaml.js +1 -1
  118. package/node_modules/xmlbuilder2/node_modules/@types/node/README.md +1 -1
  119. package/node_modules/xmlbuilder2/node_modules/@types/node/diagnostics_channel.d.ts +18 -0
  120. package/node_modules/xmlbuilder2/node_modules/@types/node/package.json +2 -2
  121. package/node_modules/yaml/README.md +1 -1
  122. package/node_modules/yaml/browser/dist/compose/compose-doc.js +1 -1
  123. package/node_modules/yaml/browser/dist/compose/compose-scalar.js +4 -4
  124. package/node_modules/yaml/browser/dist/compose/composer.js +1 -0
  125. package/node_modules/yaml/browser/dist/compose/resolve-block-map.js +2 -2
  126. package/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +3 -1
  127. package/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +4 -3
  128. package/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +2 -1
  129. package/node_modules/yaml/browser/dist/compose/resolve-props.js +1 -1
  130. package/node_modules/yaml/browser/dist/doc/Document.js +9 -5
  131. package/node_modules/yaml/browser/dist/doc/anchors.js +2 -2
  132. package/node_modules/yaml/browser/dist/doc/createNode.js +7 -4
  133. package/node_modules/yaml/browser/dist/nodes/Pair.js +2 -2
  134. package/node_modules/yaml/browser/dist/nodes/Scalar.js +1 -1
  135. package/node_modules/yaml/browser/dist/nodes/YAMLMap.js +5 -4
  136. package/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +1 -1
  137. package/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +1 -1
  138. package/node_modules/yaml/browser/dist/nodes/toJS.js +3 -1
  139. package/node_modules/yaml/browser/dist/parse/cst-visit.js +2 -2
  140. package/node_modules/yaml/browser/dist/parse/lexer.js +2 -1
  141. package/node_modules/yaml/browser/dist/parse/parser.js +50 -14
  142. package/node_modules/yaml/browser/dist/public-api.js +2 -1
  143. package/node_modules/yaml/browser/dist/schema/Schema.js +6 -2
  144. package/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +1 -1
  145. package/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +2 -1
  146. package/node_modules/yaml/browser/dist/stringify/stringify.js +8 -8
  147. package/node_modules/yaml/browser/dist/stringify/stringifyComment.js +5 -3
  148. package/node_modules/yaml/browser/dist/stringify/stringifyPair.js +4 -1
  149. package/node_modules/yaml/browser/dist/stringify/stringifyString.js +2 -2
  150. package/node_modules/yaml/dist/compose/compose-doc.js +1 -1
  151. package/node_modules/yaml/dist/compose/compose-scalar.js +4 -4
  152. package/node_modules/yaml/dist/compose/composer.js +1 -0
  153. package/node_modules/yaml/dist/compose/resolve-block-map.js +2 -2
  154. package/node_modules/yaml/dist/compose/resolve-block-scalar.js +3 -1
  155. package/node_modules/yaml/dist/compose/resolve-flow-collection.js +4 -3
  156. package/node_modules/yaml/dist/compose/resolve-flow-scalar.js +2 -1
  157. package/node_modules/yaml/dist/compose/resolve-props.d.ts +1 -1
  158. package/node_modules/yaml/dist/compose/resolve-props.js +1 -1
  159. package/node_modules/yaml/dist/doc/Document.d.ts +1 -1
  160. package/node_modules/yaml/dist/doc/Document.js +9 -5
  161. package/node_modules/yaml/dist/doc/anchors.d.ts +2 -2
  162. package/node_modules/yaml/dist/doc/anchors.js +2 -2
  163. package/node_modules/yaml/dist/doc/createNode.d.ts +1 -1
  164. package/node_modules/yaml/dist/doc/createNode.js +7 -4
  165. package/node_modules/yaml/dist/doc/directives.d.ts +1 -1
  166. package/node_modules/yaml/dist/nodes/Pair.js +2 -2
  167. package/node_modules/yaml/dist/nodes/Scalar.js +1 -1
  168. package/node_modules/yaml/dist/nodes/YAMLMap.d.ts +3 -1
  169. package/node_modules/yaml/dist/nodes/YAMLMap.js +5 -4
  170. package/node_modules/yaml/dist/nodes/YAMLSeq.js +1 -1
  171. package/node_modules/yaml/dist/nodes/addPairToJSMap.js +1 -1
  172. package/node_modules/yaml/dist/nodes/toJS.js +3 -1
  173. package/node_modules/yaml/dist/options.d.ts +1 -1
  174. package/node_modules/yaml/dist/parse/cst-visit.js +2 -2
  175. package/node_modules/yaml/dist/parse/lexer.js +2 -1
  176. package/node_modules/yaml/dist/parse/parser.js +50 -14
  177. package/node_modules/yaml/dist/public-api.js +2 -1
  178. package/node_modules/yaml/dist/schema/Schema.js +6 -2
  179. package/node_modules/yaml/dist/schema/yaml-1.1/omap.js +1 -1
  180. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +2 -1
  181. package/node_modules/yaml/dist/stringify/stringify.js +8 -8
  182. package/node_modules/yaml/dist/stringify/stringifyComment.js +5 -3
  183. package/node_modules/yaml/dist/stringify/stringifyPair.js +4 -1
  184. package/node_modules/yaml/dist/stringify/stringifyString.js +2 -2
  185. package/node_modules/yaml/dist/test-events.js +1 -1
  186. package/node_modules/yaml/package.json +2 -2
  187. package/package.json +4 -4
  188. package/releasetag.txt +1 -1
  189. package/version.txt +1 -1
@@ -6,6 +6,7 @@ var Scalar = require('../../nodes/Scalar.js');
6
6
  var YAMLSeq = require('../../nodes/YAMLSeq.js');
7
7
 
8
8
  function resolvePairs(seq, onError) {
9
+ var _a;
9
10
  if (Node.isSeq(seq)) {
10
11
  for (let i = 0; i < seq.items.length; ++i) {
11
12
  let item = seq.items[i];
@@ -20,7 +21,7 @@ function resolvePairs(seq, onError) {
20
21
  ? `${item.commentBefore}\n${pair.key.commentBefore}`
21
22
  : item.commentBefore;
22
23
  if (item.comment) {
23
- const cn = pair.value || pair.key;
24
+ const cn = (_a = pair.value) !== null && _a !== void 0 ? _a : pair.key;
24
25
  cn.comment = cn.comment
25
26
  ? `${item.comment}\n${cn.comment}`
26
27
  : item.comment;
@@ -45,26 +45,26 @@ function createStringifyContext(doc, options) {
45
45
  };
46
46
  }
47
47
  function getTagObject(tags, item) {
48
+ var _a, _b, _c, _d;
48
49
  if (item.tag) {
49
50
  const match = tags.filter(t => t.tag === item.tag);
50
51
  if (match.length > 0)
51
- return match.find(t => t.format === item.format) || match[0];
52
+ return (_a = match.find(t => t.format === item.format)) !== null && _a !== void 0 ? _a : match[0];
52
53
  }
53
54
  let tagObj = undefined;
54
55
  let obj;
55
56
  if (Node.isScalar(item)) {
56
57
  obj = item.value;
57
- const match = tags.filter(t => t.identify && t.identify(obj));
58
+ const match = tags.filter(t => { var _a; return (_a = t.identify) === null || _a === void 0 ? void 0 : _a.call(t, obj); });
58
59
  tagObj =
59
- match.find(t => t.format === item.format) || match.find(t => !t.format);
60
+ (_b = match.find(t => t.format === item.format)) !== null && _b !== void 0 ? _b : match.find(t => !t.format);
60
61
  }
61
62
  else {
62
63
  obj = item;
63
64
  tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass);
64
65
  }
65
66
  if (!tagObj) {
66
- // @ts-ignore
67
- const name = obj && obj.constructor ? obj.constructor.name : typeof obj;
67
+ const name = (_d = (_c = obj === null || obj === void 0 ? void 0 : obj.constructor) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : typeof obj;
68
68
  throw new Error(`Tag not resolved for ${name} value`);
69
69
  }
70
70
  return tagObj;
@@ -79,13 +79,13 @@ function stringifyProps(node, tagObj, { anchors: anchors$1, doc }) {
79
79
  anchors$1.add(anchor);
80
80
  props.push(`&${anchor}`);
81
81
  }
82
- const tag = node.tag || (tagObj.default ? null : tagObj.tag);
82
+ const tag = node.tag ? node.tag : tagObj.default ? null : tagObj.tag;
83
83
  if (tag)
84
84
  props.push(doc.directives.tagString(tag));
85
85
  return props.join(' ');
86
86
  }
87
87
  function stringify(item, ctx, onComment, onChompKeep) {
88
- var _a;
88
+ var _a, _b;
89
89
  if (Node.isPair(item))
90
90
  return item.toString(ctx, onComment, onChompKeep);
91
91
  if (Node.isAlias(item)) {
@@ -110,7 +110,7 @@ function stringify(item, ctx, onComment, onChompKeep) {
110
110
  tagObj = getTagObject(ctx.doc.schema.tags, node);
111
111
  const props = stringifyProps(node, tagObj, ctx);
112
112
  if (props.length > 0)
113
- ctx.indentAtStart = (ctx.indentAtStart || 0) + props.length + 1;
113
+ ctx.indentAtStart = ((_b = ctx.indentAtStart) !== null && _b !== void 0 ? _b : 0) + props.length + 1;
114
114
  const str = typeof tagObj.stringify === 'function'
115
115
  ? tagObj.stringify(node, ctx, onComment, onChompKeep)
116
116
  : Node.isScalar(node)
@@ -13,9 +13,11 @@ function indentComment(comment, indent) {
13
13
  return comment.substring(1);
14
14
  return indent ? comment.replace(/^(?! *$)/gm, indent) : comment;
15
15
  }
16
- const lineComment = (str, indent, comment) => comment.includes('\n')
17
- ? '\n' + indentComment(comment, indent)
18
- : (str.endsWith(' ') ? '' : ' ') + comment;
16
+ const lineComment = (str, indent, comment) => str.endsWith('\n')
17
+ ? indentComment(comment, indent)
18
+ : comment.includes('\n')
19
+ ? '\n' + indentComment(comment, indent)
20
+ : (str.endsWith(' ') ? '' : ' ') + comment;
19
21
 
20
22
  exports.indentComment = indentComment;
21
23
  exports.lineComment = lineComment;
@@ -98,7 +98,10 @@ function stringifyPair({ key, value }, ctx, onComment, onChompKeep) {
98
98
  const valueStr = stringify.stringify(value, ctx, () => (valueCommentDone = true), () => (chompKeep = true));
99
99
  let ws = ' ';
100
100
  if (vcb || keyComment) {
101
- ws = valueStr === '' && !ctx.inFlow ? vcb : `${vcb}\n${ctx.indent}`;
101
+ if (valueStr === '' && !ctx.inFlow)
102
+ ws = vcb === '\n' ? '\n\n' : vcb;
103
+ else
104
+ ws = `${vcb}\n${ctx.indent}`;
102
105
  }
103
106
  else if (!explicitKey && Node.isCollection(value)) {
104
107
  const flow = valueStr[0] === '[' || valueStr[0] === '{';
@@ -245,14 +245,14 @@ function plainString(item, ctx, onComment, onChompKeep) {
245
245
  // - '\n ', ': ' or ' \n' anywhere
246
246
  // - '#' not preceded by a non-space char
247
247
  // - end with ' ' or ':'
248
- return implicitKey || inFlow || value.indexOf('\n') === -1
248
+ return implicitKey || inFlow || !value.includes('\n')
249
249
  ? quotedString(value, ctx)
250
250
  : blockString(item, ctx, onComment, onChompKeep);
251
251
  }
252
252
  if (!implicitKey &&
253
253
  !inFlow &&
254
254
  type !== Scalar.Scalar.PLAIN &&
255
- value.indexOf('\n') !== -1) {
255
+ value.includes('\n')) {
256
256
  // Where allowed & type not set explicitly, prefer block style for multiline strings
257
257
  return blockString(item, ctx, onComment, onChompKeep);
258
258
  }
@@ -57,7 +57,7 @@ function testEvents(src) {
57
57
  }
58
58
  }
59
59
  catch (e) {
60
- return { events, error: error || e };
60
+ return { events, error: error !== null && error !== void 0 ? error : e };
61
61
  }
62
62
  events.push('-STR');
63
63
  return { events, error };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yaml",
3
- "version": "2.0.0-11",
3
+ "version": "2.0.0",
4
4
  "license": "ISC",
5
5
  "author": "Eemeli Aro <eemeli@gmail.com>",
6
6
  "repository": "github:eemeli/yaml",
@@ -89,6 +89,6 @@
89
89
  "typescript": "^4.3.5"
90
90
  },
91
91
  "engines": {
92
- "node": ">= 12"
92
+ "node": ">= 14"
93
93
  }
94
94
  }
package/package.json CHANGED
@@ -53,7 +53,7 @@
53
53
  "@types/glob": "^7.2.0",
54
54
  "@types/ini": "^1.3.31",
55
55
  "@types/jest": "^27.4.1",
56
- "@types/node": "^12",
56
+ "@types/node": "^14",
57
57
  "@types/semver": "^7.3.9",
58
58
  "@types/yargs": "^15.0.14",
59
59
  "@typescript-eslint/eslint-plugin": "^5",
@@ -91,7 +91,7 @@
91
91
  "semver": "^7.3.7",
92
92
  "shx": "^0.3.4",
93
93
  "xmlbuilder2": "^2.4.1",
94
- "yaml": "2.0.0-11",
94
+ "yaml": "^2.0.0",
95
95
  "yargs": "^16.2.0"
96
96
  },
97
97
  "bundledDependencies": [
@@ -117,11 +117,11 @@
117
117
  "scaffolding"
118
118
  ],
119
119
  "engines": {
120
- "node": ">= 12.7.0"
120
+ "node": ">= 14.0.0"
121
121
  },
122
122
  "main": "lib/index.js",
123
123
  "license": "Apache-2.0",
124
- "version": "0.54.57",
124
+ "version": "0.55.1",
125
125
  "jest": {
126
126
  "testMatch": [
127
127
  "<rootDir>/src/**/__tests__/**/*.ts?(x)",
package/releasetag.txt CHANGED
@@ -1 +1 @@
1
- v0.54.57
1
+ v0.55.1
package/version.txt CHANGED
@@ -1 +1 @@
1
- 0.54.57
1
+ 0.55.1