projen 0.77.0 → 0.77.2

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 (205) hide show
  1. package/.jsii +22 -22
  2. package/lib/awscdk/auto-discover.js +5 -5
  3. package/lib/awscdk/awscdk-app-java.js +1 -1
  4. package/lib/awscdk/awscdk-app-py.js +1 -1
  5. package/lib/awscdk/awscdk-app-ts.js +1 -1
  6. package/lib/awscdk/awscdk-construct.js +2 -2
  7. package/lib/awscdk/awscdk-deps-java.js +1 -1
  8. package/lib/awscdk/awscdk-deps-js.js +1 -1
  9. package/lib/awscdk/awscdk-deps-py.js +1 -1
  10. package/lib/awscdk/awscdk-deps.js +1 -1
  11. package/lib/awscdk/cdk-config.js +1 -1
  12. package/lib/awscdk/cdk-tasks.js +1 -1
  13. package/lib/awscdk/integration-test.js +1 -1
  14. package/lib/awscdk/lambda-extension.js +1 -1
  15. package/lib/awscdk/lambda-function.js +2 -2
  16. package/lib/build/build-workflow.js +1 -1
  17. package/lib/cdk/auto-discover-base.js +2 -2
  18. package/lib/cdk/construct-lib.js +1 -1
  19. package/lib/cdk/integration-test-base.js +1 -1
  20. package/lib/cdk/jsii-docgen.js +1 -1
  21. package/lib/cdk/jsii-project.js +1 -1
  22. package/lib/cdk8s/auto-discover.js +2 -2
  23. package/lib/cdk8s/cdk8s-app-py.js +1 -1
  24. package/lib/cdk8s/cdk8s-app-ts.js +1 -1
  25. package/lib/cdk8s/cdk8s-construct.js +1 -1
  26. package/lib/cdk8s/cdk8s-deps-py.js +1 -1
  27. package/lib/cdk8s/cdk8s-deps.js +1 -1
  28. package/lib/cdk8s/integration-test.js +1 -1
  29. package/lib/cdktf/cdktf-construct.js +1 -1
  30. package/lib/circleci/circleci.js +1 -1
  31. package/lib/component.js +1 -1
  32. package/lib/dependencies.js +1 -1
  33. package/lib/dev-env.js +1 -1
  34. package/lib/docker-compose/docker-compose-service.js +1 -1
  35. package/lib/docker-compose/docker-compose.js +1 -1
  36. package/lib/file.js +1 -1
  37. package/lib/gitattributes.js +1 -1
  38. package/lib/github/actions-provider.js +1 -1
  39. package/lib/github/auto-approve.js +1 -1
  40. package/lib/github/auto-merge.js +1 -1
  41. package/lib/github/dependabot.js +1 -1
  42. package/lib/github/github-credentials.js +1 -1
  43. package/lib/github/github-project.js +1 -1
  44. package/lib/github/github.js +1 -1
  45. package/lib/github/mergify.js +1 -1
  46. package/lib/github/pr-template.js +1 -1
  47. package/lib/github/pull-request-lint.js +1 -1
  48. package/lib/github/stale.js +1 -1
  49. package/lib/github/task-workflow.js +1 -1
  50. package/lib/github/workflow-actions.js +1 -1
  51. package/lib/github/workflow-jobs.js +1 -1
  52. package/lib/github/workflows.js +1 -1
  53. package/lib/gitlab/configuration.js +1 -1
  54. package/lib/gitlab/gitlab-configuration.js +1 -1
  55. package/lib/gitlab/nested-configuration.js +1 -1
  56. package/lib/gitpod.js +1 -1
  57. package/lib/ignore-file.js +1 -1
  58. package/lib/ini.js +1 -1
  59. package/lib/java/java-project.js +1 -1
  60. package/lib/java/junit.js +1 -1
  61. package/lib/java/maven-compile.js +1 -1
  62. package/lib/java/maven-packaging.js +1 -1
  63. package/lib/java/maven-sample.js +1 -1
  64. package/lib/java/pom.js +1 -1
  65. package/lib/java/projenrc.js +1 -1
  66. package/lib/javascript/bundler.js +1 -1
  67. package/lib/javascript/eslint.js +1 -1
  68. package/lib/javascript/jest.js +4 -4
  69. package/lib/javascript/node-package.js +1 -1
  70. package/lib/javascript/node-project.js +1 -1
  71. package/lib/javascript/npm-config.js +1 -1
  72. package/lib/javascript/prettier.js +1 -1
  73. package/lib/javascript/projenrc.js +1 -1
  74. package/lib/javascript/typescript-config.js +2 -2
  75. package/lib/javascript/upgrade-dependencies.js +22 -10
  76. package/lib/javascript/yarnrc.js +1 -1
  77. package/lib/json-patch.js +1 -1
  78. package/lib/json.js +1 -1
  79. package/lib/license.js +1 -1
  80. package/lib/logger.js +1 -1
  81. package/lib/makefile.js +1 -1
  82. package/lib/object-file.js +1 -1
  83. package/lib/project-build.js +1 -1
  84. package/lib/project-tree.js +1 -1
  85. package/lib/project.js +1 -1
  86. package/lib/projects.js +1 -1
  87. package/lib/projenrc-json.js +2 -2
  88. package/lib/projenrc.js +1 -1
  89. package/lib/python/pip.js +1 -1
  90. package/lib/python/poetry.js +2 -2
  91. package/lib/python/projenrc.js +1 -1
  92. package/lib/python/pytest-sample.js +1 -1
  93. package/lib/python/pytest.js +1 -1
  94. package/lib/python/python-project.js +1 -1
  95. package/lib/python/python-sample.js +1 -1
  96. package/lib/python/requirements-file.js +1 -1
  97. package/lib/python/setuppy.js +1 -1
  98. package/lib/python/setuptools.js +1 -1
  99. package/lib/python/venv.js +1 -1
  100. package/lib/readme.js +1 -1
  101. package/lib/release/publisher.js +1 -1
  102. package/lib/release/release-trigger.js +1 -1
  103. package/lib/release/release.js +1 -1
  104. package/lib/renovatebot.js +1 -1
  105. package/lib/run-task.js +1894 -1
  106. package/lib/sample-file.js +2 -2
  107. package/lib/semver.js +1 -1
  108. package/lib/source-code.js +1 -1
  109. package/lib/task-runtime.js +1 -1
  110. package/lib/task.js +1 -1
  111. package/lib/tasks.js +1 -1
  112. package/lib/testing.js +1 -1
  113. package/lib/textfile.js +1 -1
  114. package/lib/toml.js +1 -1
  115. package/lib/typescript/projenrc-ts.js +1 -1
  116. package/lib/typescript/projenrc.js +1 -1
  117. package/lib/typescript/typescript-typedoc.js +1 -1
  118. package/lib/typescript/typescript.js +3 -3
  119. package/lib/version.js +2 -2
  120. package/lib/vscode/devcontainer.js +1 -1
  121. package/lib/vscode/extensions.js +1 -1
  122. package/lib/vscode/launch-config.js +1 -1
  123. package/lib/vscode/settings.js +1 -1
  124. package/lib/vscode/vscode.js +1 -1
  125. package/lib/web/next.js +3 -3
  126. package/lib/web/postcss.js +1 -1
  127. package/lib/web/react.js +4 -4
  128. package/lib/web/tailwind.js +1 -1
  129. package/lib/xmlfile.js +1 -1
  130. package/lib/yaml.js +1 -1
  131. package/node_modules/brace-expansion/README.md +0 -6
  132. package/node_modules/brace-expansion/index.js +84 -86
  133. package/node_modules/brace-expansion/package.json +4 -3
  134. package/node_modules/{minimatch → glob}/node_modules/brace-expansion/README.md +6 -0
  135. package/node_modules/{minimatch → glob}/node_modules/brace-expansion/index.js +86 -84
  136. package/node_modules/{minimatch → glob}/node_modules/brace-expansion/package.json +3 -4
  137. package/package.json +5 -6
  138. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/LICENSE +0 -0
  139. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/README.md +0 -0
  140. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/index.js +0 -0
  141. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/append/constant.js +0 -0
  142. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/append.js +0 -0
  143. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/count.js +0 -0
  144. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/help.js +0 -0
  145. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/store/constant.js +0 -0
  146. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/store/false.js +0 -0
  147. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/store/true.js +0 -0
  148. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/store.js +0 -0
  149. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/subparsers.js +0 -0
  150. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action/version.js +0 -0
  151. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action.js +0 -0
  152. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/action_container.js +0 -0
  153. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/argparse.js +0 -0
  154. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/argument/error.js +0 -0
  155. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/argument/exclusive.js +0 -0
  156. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/argument/group.js +0 -0
  157. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/argument_parser.js +0 -0
  158. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/const.js +0 -0
  159. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/help/added_formatters.js +0 -0
  160. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/help/formatter.js +0 -0
  161. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/namespace.js +0 -0
  162. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/lib/utils.js +0 -0
  163. /package/node_modules/{xmlbuilder2/node_modules/argparse → argparse}/package.json +0 -0
  164. /package/node_modules/{brace-expansion → glob/node_modules/brace-expansion}/.github/FUNDING.yml +0 -0
  165. /package/node_modules/{minimatch → glob}/node_modules/brace-expansion/LICENSE +0 -0
  166. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/LICENSE +0 -0
  167. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/README.md +0 -0
  168. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/bin/js-yaml.js +0 -0
  169. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/dist/js-yaml.js +0 -0
  170. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/dist/js-yaml.min.js +0 -0
  171. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/index.js +0 -0
  172. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/common.js +0 -0
  173. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/dumper.js +0 -0
  174. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/exception.js +0 -0
  175. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/loader.js +0 -0
  176. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/mark.js +0 -0
  177. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/schema/core.js +0 -0
  178. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/schema/default_full.js +0 -0
  179. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/schema/default_safe.js +0 -0
  180. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/schema/failsafe.js +0 -0
  181. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/schema/json.js +0 -0
  182. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/schema.js +0 -0
  183. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/binary.js +0 -0
  184. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/bool.js +0 -0
  185. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/float.js +0 -0
  186. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/int.js +0 -0
  187. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/js/function.js +0 -0
  188. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/js/regexp.js +0 -0
  189. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/js/undefined.js +0 -0
  190. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/map.js +0 -0
  191. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/merge.js +0 -0
  192. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/null.js +0 -0
  193. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/omap.js +0 -0
  194. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/pairs.js +0 -0
  195. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/seq.js +0 -0
  196. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/set.js +0 -0
  197. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/str.js +0 -0
  198. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type/timestamp.js +0 -0
  199. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml/type.js +0 -0
  200. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/lib/js-yaml.js +0 -0
  201. /package/node_modules/{xmlbuilder2/node_modules/js-yaml → js-yaml}/package.json +0 -0
  202. /package/node_modules/{semver/node_modules/lru-cache → lru-cache}/LICENSE +0 -0
  203. /package/node_modules/{semver/node_modules/lru-cache → lru-cache}/README.md +0 -0
  204. /package/node_modules/{semver/node_modules/lru-cache → lru-cache}/index.js +0 -0
  205. /package/node_modules/{semver/node_modules/lru-cache → lru-cache}/package.json +0 -0
package/lib/yaml.js CHANGED
@@ -30,5 +30,5 @@ class YamlFile extends object_file_1.ObjectFile {
30
30
  }
31
31
  exports.YamlFile = YamlFile;
32
32
  _a = JSII_RTTI_SYMBOL_1;
33
- YamlFile[_a] = { fqn: "projen.YamlFile", version: "0.77.0" };
33
+ YamlFile[_a] = { fqn: "projen.YamlFile", version: "0.77.2" };
34
34
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFtbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy95YW1sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsNkJBQTZCO0FBRTdCLCtDQUE4RDtBQWM5RDs7R0FFRztBQUNILE1BQWEsUUFBUyxTQUFRLHdCQUFVO0lBTXRDLFlBQVksS0FBaUIsRUFBRSxRQUFnQixFQUFFLE9BQXdCO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVTLGlCQUFpQixDQUFDLFFBQW1CO1FBQzdDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxPQUFPO1lBQ0wsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzVDLEVBQUU7WUFDRixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQy9CLE1BQU0sRUFBRSxDQUFDO2dCQUNULFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUzthQUMxQixDQUFDO1NBQ0gsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDZixDQUFDOztBQXpCSCw0QkEwQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCAqIGFzIFlBTUwgZnJvbSBcInlhbWxcIjtcbmltcG9ydCB7IElSZXNvbHZlciB9IGZyb20gXCIuL2ZpbGVcIjtcbmltcG9ydCB7IE9iamVjdEZpbGUsIE9iamVjdEZpbGVPcHRpb25zIH0gZnJvbSBcIi4vb2JqZWN0LWZpbGVcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgSnNvbkZpbGVgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFlhbWxGaWxlT3B0aW9ucyBleHRlbmRzIE9iamVjdEZpbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIE1heGltdW0gbGluZSB3aWR0aCAoc2V0IHRvIDAgdG8gZGlzYWJsZSBmb2xkaW5nKS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSAwXG4gICAqL1xuICByZWFkb25seSBsaW5lV2lkdGg/OiBudW1iZXI7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIFlBTUwgZmlsZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFlhbWxGaWxlIGV4dGVuZHMgT2JqZWN0RmlsZSB7XG4gIC8qKlxuICAgKiBNYXhpbXVtIGxpbmUgd2lkdGggKHNldCB0byAwIHRvIGRpc2FibGUgZm9sZGluZykuXG4gICAqL1xuICBwdWJsaWMgbGluZVdpZHRoOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IElDb25zdHJ1Y3QsIGZpbGVQYXRoOiBzdHJpbmcsIG9wdGlvbnM6IFlhbWxGaWxlT3B0aW9ucykge1xuICAgIHN1cGVyKHNjb3BlLCBmaWxlUGF0aCwgb3B0aW9ucyk7XG4gICAgdGhpcy5saW5lV2lkdGggPSBvcHRpb25zLmxpbmVXaWR0aCA/PyAwO1xuICB9XG5cbiAgcHJvdGVjdGVkIHN5bnRoZXNpemVDb250ZW50KHJlc29sdmVyOiBJUmVzb2x2ZXIpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGpzb24gPSBzdXBlci5zeW50aGVzaXplQ29udGVudChyZXNvbHZlcik7XG4gICAgaWYgKCFqc29uKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiBbXG4gICAgICAuLi4odGhpcy5tYXJrZXIgPyBbYCMgJHt0aGlzLm1hcmtlcn1gXSA6IFtdKSxcbiAgICAgIFwiXCIsXG4gICAgICBZQU1MLnN0cmluZ2lmeShKU09OLnBhcnNlKGpzb24pLCB7XG4gICAgICAgIGluZGVudDogMixcbiAgICAgICAgbGluZVdpZHRoOiB0aGlzLmxpbmVXaWR0aCxcbiAgICAgIH0pLFxuICAgIF0uam9pbihcIlxcblwiKTtcbiAgfVxufVxuIl19
@@ -104,12 +104,6 @@ This module is proudly supported by my [Sponsors](https://github.com/juliangrube
104
104
 
105
105
  Do you want to support modules like this to improve their quality, stability and weigh in on new features? Then please consider donating to my [Patreon](https://www.patreon.com/juliangruber). Not sure how much of my modules you're using? Try [feross/thanks](https://github.com/feross/thanks)!
106
106
 
107
- ## Security contact information
108
-
109
- To report a security vulnerability, please use the
110
- [Tidelift security contact](https://tidelift.com/security).
111
- Tidelift will coordinate the fix and disclosure.
112
-
113
107
  ## License
114
108
 
115
109
  (MIT)
@@ -1,3 +1,4 @@
1
+ var concatMap = require('concat-map');
1
2
  var balanced = require('balanced-match');
2
3
 
3
4
  module.exports = expandTop;
@@ -78,6 +79,10 @@ function expandTop(str) {
78
79
  return expand(escapeBraces(str), true).map(unescapeBraces);
79
80
  }
80
81
 
82
+ function identity(e) {
83
+ return e;
84
+ }
85
+
81
86
  function embrace(str) {
82
87
  return '{' + str + '}';
83
88
  }
@@ -96,7 +101,42 @@ function expand(str, isTop) {
96
101
  var expansions = [];
97
102
 
98
103
  var m = balanced('{', '}', str);
99
- if (!m) return [str];
104
+ if (!m || /\$$/.test(m.pre)) return [str];
105
+
106
+ var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
107
+ var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
108
+ var isSequence = isNumericSequence || isAlphaSequence;
109
+ var isOptions = m.body.indexOf(',') >= 0;
110
+ if (!isSequence && !isOptions) {
111
+ // {a},b}
112
+ if (m.post.match(/,.*\}/)) {
113
+ str = m.pre + '{' + m.body + escClose + m.post;
114
+ return expand(str);
115
+ }
116
+ return [str];
117
+ }
118
+
119
+ var n;
120
+ if (isSequence) {
121
+ n = m.body.split(/\.\./);
122
+ } else {
123
+ n = parseCommaParts(m.body);
124
+ if (n.length === 1) {
125
+ // x{{a,b}}y ==> x{a}y x{b}y
126
+ n = expand(n[0], false).map(embrace);
127
+ if (n.length === 1) {
128
+ var post = m.post.length
129
+ ? expand(m.post, false)
130
+ : [''];
131
+ return post.map(function(p) {
132
+ return m.pre + n[0] + p;
133
+ });
134
+ }
135
+ }
136
+ }
137
+
138
+ // at this point, n is the parts, and we know it's not a comma set
139
+ // with a single entry.
100
140
 
101
141
  // no need to expand pre, since it is guaranteed to be free of brace-sets
102
142
  var pre = m.pre;
@@ -104,97 +144,55 @@ function expand(str, isTop) {
104
144
  ? expand(m.post, false)
105
145
  : [''];
106
146
 
107
- if (/\$$/.test(m.pre)) {
108
- for (var k = 0; k < post.length; k++) {
109
- var expansion = pre+ '{' + m.body + '}' + post[k];
110
- expansions.push(expansion);
111
- }
112
- } else {
113
- var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
114
- var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
115
- var isSequence = isNumericSequence || isAlphaSequence;
116
- var isOptions = m.body.indexOf(',') >= 0;
117
- if (!isSequence && !isOptions) {
118
- // {a},b}
119
- if (m.post.match(/,.*\}/)) {
120
- str = m.pre + '{' + m.body + escClose + m.post;
121
- return expand(str);
122
- }
123
- return [str];
124
- }
125
-
126
- var n;
127
- if (isSequence) {
128
- n = m.body.split(/\.\./);
129
- } else {
130
- n = parseCommaParts(m.body);
131
- if (n.length === 1) {
132
- // x{{a,b}}y ==> x{a}y x{b}y
133
- n = expand(n[0], false).map(embrace);
134
- if (n.length === 1) {
135
- return post.map(function(p) {
136
- return m.pre + n[0] + p;
137
- });
138
- }
139
- }
147
+ var N;
148
+
149
+ if (isSequence) {
150
+ var x = numeric(n[0]);
151
+ var y = numeric(n[1]);
152
+ var width = Math.max(n[0].length, n[1].length)
153
+ var incr = n.length == 3
154
+ ? Math.abs(numeric(n[2]))
155
+ : 1;
156
+ var test = lte;
157
+ var reverse = y < x;
158
+ if (reverse) {
159
+ incr *= -1;
160
+ test = gte;
140
161
  }
141
-
142
- // at this point, n is the parts, and we know it's not a comma set
143
- // with a single entry.
144
- var N;
145
-
146
- if (isSequence) {
147
- var x = numeric(n[0]);
148
- var y = numeric(n[1]);
149
- var width = Math.max(n[0].length, n[1].length)
150
- var incr = n.length == 3
151
- ? Math.abs(numeric(n[2]))
152
- : 1;
153
- var test = lte;
154
- var reverse = y < x;
155
- if (reverse) {
156
- incr *= -1;
157
- test = gte;
158
- }
159
- var pad = n.some(isPadded);
160
-
161
- N = [];
162
-
163
- for (var i = x; test(i, y); i += incr) {
164
- var c;
165
- if (isAlphaSequence) {
166
- c = String.fromCharCode(i);
167
- if (c === '\\')
168
- c = '';
169
- } else {
170
- c = String(i);
171
- if (pad) {
172
- var need = width - c.length;
173
- if (need > 0) {
174
- var z = new Array(need + 1).join('0');
175
- if (i < 0)
176
- c = '-' + z + c.slice(1);
177
- else
178
- c = z + c;
179
- }
162
+ var pad = n.some(isPadded);
163
+
164
+ N = [];
165
+
166
+ for (var i = x; test(i, y); i += incr) {
167
+ var c;
168
+ if (isAlphaSequence) {
169
+ c = String.fromCharCode(i);
170
+ if (c === '\\')
171
+ c = '';
172
+ } else {
173
+ c = String(i);
174
+ if (pad) {
175
+ var need = width - c.length;
176
+ if (need > 0) {
177
+ var z = new Array(need + 1).join('0');
178
+ if (i < 0)
179
+ c = '-' + z + c.slice(1);
180
+ else
181
+ c = z + c;
180
182
  }
181
183
  }
182
- N.push(c);
183
- }
184
- } else {
185
- N = [];
186
-
187
- for (var j = 0; j < n.length; j++) {
188
- N.push.apply(N, expand(n[j], false));
189
184
  }
185
+ N.push(c);
190
186
  }
187
+ } else {
188
+ N = concatMap(n, function(el) { return expand(el, false) });
189
+ }
191
190
 
192
- for (var j = 0; j < N.length; j++) {
193
- for (var k = 0; k < post.length; k++) {
194
- var expansion = pre + N[j] + post[k];
195
- if (!isTop || isSequence || expansion)
196
- expansions.push(expansion);
197
- }
191
+ for (var j = 0; j < N.length; j++) {
192
+ for (var k = 0; k < post.length; k++) {
193
+ var expansion = pre + N[j] + post[k];
194
+ if (!isTop || isSequence || expansion)
195
+ expansions.push(expansion);
198
196
  }
199
197
  }
200
198
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "brace-expansion",
3
3
  "description": "Brace expansion as known from sh/bash",
4
- "version": "2.0.1",
4
+ "version": "1.1.11",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "git://github.com/juliangruber/brace-expansion.git"
@@ -14,10 +14,11 @@
14
14
  "bench": "matcha test/perf/bench.js"
15
15
  },
16
16
  "dependencies": {
17
- "balanced-match": "^1.0.0"
17
+ "balanced-match": "^1.0.0",
18
+ "concat-map": "0.0.1"
18
19
  },
19
20
  "devDependencies": {
20
- "@c4312/matcha": "^1.3.1",
21
+ "matcha": "^0.7.0",
21
22
  "tape": "^4.6.0"
22
23
  },
23
24
  "keywords": [],
@@ -104,6 +104,12 @@ This module is proudly supported by my [Sponsors](https://github.com/juliangrube
104
104
 
105
105
  Do you want to support modules like this to improve their quality, stability and weigh in on new features? Then please consider donating to my [Patreon](https://www.patreon.com/juliangruber). Not sure how much of my modules you're using? Try [feross/thanks](https://github.com/feross/thanks)!
106
106
 
107
+ ## Security contact information
108
+
109
+ To report a security vulnerability, please use the
110
+ [Tidelift security contact](https://tidelift.com/security).
111
+ Tidelift will coordinate the fix and disclosure.
112
+
107
113
  ## License
108
114
 
109
115
  (MIT)
@@ -1,4 +1,3 @@
1
- var concatMap = require('concat-map');
2
1
  var balanced = require('balanced-match');
3
2
 
4
3
  module.exports = expandTop;
@@ -79,10 +78,6 @@ function expandTop(str) {
79
78
  return expand(escapeBraces(str), true).map(unescapeBraces);
80
79
  }
81
80
 
82
- function identity(e) {
83
- return e;
84
- }
85
-
86
81
  function embrace(str) {
87
82
  return '{' + str + '}';
88
83
  }
@@ -101,42 +96,7 @@ function expand(str, isTop) {
101
96
  var expansions = [];
102
97
 
103
98
  var m = balanced('{', '}', str);
104
- if (!m || /\$$/.test(m.pre)) return [str];
105
-
106
- var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
107
- var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
108
- var isSequence = isNumericSequence || isAlphaSequence;
109
- var isOptions = m.body.indexOf(',') >= 0;
110
- if (!isSequence && !isOptions) {
111
- // {a},b}
112
- if (m.post.match(/,.*\}/)) {
113
- str = m.pre + '{' + m.body + escClose + m.post;
114
- return expand(str);
115
- }
116
- return [str];
117
- }
118
-
119
- var n;
120
- if (isSequence) {
121
- n = m.body.split(/\.\./);
122
- } else {
123
- n = parseCommaParts(m.body);
124
- if (n.length === 1) {
125
- // x{{a,b}}y ==> x{a}y x{b}y
126
- n = expand(n[0], false).map(embrace);
127
- if (n.length === 1) {
128
- var post = m.post.length
129
- ? expand(m.post, false)
130
- : [''];
131
- return post.map(function(p) {
132
- return m.pre + n[0] + p;
133
- });
134
- }
135
- }
136
- }
137
-
138
- // at this point, n is the parts, and we know it's not a comma set
139
- // with a single entry.
99
+ if (!m) return [str];
140
100
 
141
101
  // no need to expand pre, since it is guaranteed to be free of brace-sets
142
102
  var pre = m.pre;
@@ -144,55 +104,97 @@ function expand(str, isTop) {
144
104
  ? expand(m.post, false)
145
105
  : [''];
146
106
 
147
- var N;
148
-
149
- if (isSequence) {
150
- var x = numeric(n[0]);
151
- var y = numeric(n[1]);
152
- var width = Math.max(n[0].length, n[1].length)
153
- var incr = n.length == 3
154
- ? Math.abs(numeric(n[2]))
155
- : 1;
156
- var test = lte;
157
- var reverse = y < x;
158
- if (reverse) {
159
- incr *= -1;
160
- test = gte;
107
+ if (/\$$/.test(m.pre)) {
108
+ for (var k = 0; k < post.length; k++) {
109
+ var expansion = pre+ '{' + m.body + '}' + post[k];
110
+ expansions.push(expansion);
111
+ }
112
+ } else {
113
+ var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
114
+ var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
115
+ var isSequence = isNumericSequence || isAlphaSequence;
116
+ var isOptions = m.body.indexOf(',') >= 0;
117
+ if (!isSequence && !isOptions) {
118
+ // {a},b}
119
+ if (m.post.match(/,.*\}/)) {
120
+ str = m.pre + '{' + m.body + escClose + m.post;
121
+ return expand(str);
122
+ }
123
+ return [str];
124
+ }
125
+
126
+ var n;
127
+ if (isSequence) {
128
+ n = m.body.split(/\.\./);
129
+ } else {
130
+ n = parseCommaParts(m.body);
131
+ if (n.length === 1) {
132
+ // x{{a,b}}y ==> x{a}y x{b}y
133
+ n = expand(n[0], false).map(embrace);
134
+ if (n.length === 1) {
135
+ return post.map(function(p) {
136
+ return m.pre + n[0] + p;
137
+ });
138
+ }
139
+ }
161
140
  }
162
- var pad = n.some(isPadded);
163
-
164
- N = [];
165
-
166
- for (var i = x; test(i, y); i += incr) {
167
- var c;
168
- if (isAlphaSequence) {
169
- c = String.fromCharCode(i);
170
- if (c === '\\')
171
- c = '';
172
- } else {
173
- c = String(i);
174
- if (pad) {
175
- var need = width - c.length;
176
- if (need > 0) {
177
- var z = new Array(need + 1).join('0');
178
- if (i < 0)
179
- c = '-' + z + c.slice(1);
180
- else
181
- c = z + c;
141
+
142
+ // at this point, n is the parts, and we know it's not a comma set
143
+ // with a single entry.
144
+ var N;
145
+
146
+ if (isSequence) {
147
+ var x = numeric(n[0]);
148
+ var y = numeric(n[1]);
149
+ var width = Math.max(n[0].length, n[1].length)
150
+ var incr = n.length == 3
151
+ ? Math.abs(numeric(n[2]))
152
+ : 1;
153
+ var test = lte;
154
+ var reverse = y < x;
155
+ if (reverse) {
156
+ incr *= -1;
157
+ test = gte;
158
+ }
159
+ var pad = n.some(isPadded);
160
+
161
+ N = [];
162
+
163
+ for (var i = x; test(i, y); i += incr) {
164
+ var c;
165
+ if (isAlphaSequence) {
166
+ c = String.fromCharCode(i);
167
+ if (c === '\\')
168
+ c = '';
169
+ } else {
170
+ c = String(i);
171
+ if (pad) {
172
+ var need = width - c.length;
173
+ if (need > 0) {
174
+ var z = new Array(need + 1).join('0');
175
+ if (i < 0)
176
+ c = '-' + z + c.slice(1);
177
+ else
178
+ c = z + c;
179
+ }
182
180
  }
183
181
  }
182
+ N.push(c);
183
+ }
184
+ } else {
185
+ N = [];
186
+
187
+ for (var j = 0; j < n.length; j++) {
188
+ N.push.apply(N, expand(n[j], false));
184
189
  }
185
- N.push(c);
186
190
  }
187
- } else {
188
- N = concatMap(n, function(el) { return expand(el, false) });
189
- }
190
191
 
191
- for (var j = 0; j < N.length; j++) {
192
- for (var k = 0; k < post.length; k++) {
193
- var expansion = pre + N[j] + post[k];
194
- if (!isTop || isSequence || expansion)
195
- expansions.push(expansion);
192
+ for (var j = 0; j < N.length; j++) {
193
+ for (var k = 0; k < post.length; k++) {
194
+ var expansion = pre + N[j] + post[k];
195
+ if (!isTop || isSequence || expansion)
196
+ expansions.push(expansion);
197
+ }
196
198
  }
197
199
  }
198
200
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "brace-expansion",
3
3
  "description": "Brace expansion as known from sh/bash",
4
- "version": "1.1.11",
4
+ "version": "2.0.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "git://github.com/juliangruber/brace-expansion.git"
@@ -14,11 +14,10 @@
14
14
  "bench": "matcha test/perf/bench.js"
15
15
  },
16
16
  "dependencies": {
17
- "balanced-match": "^1.0.0",
18
- "concat-map": "0.0.1"
17
+ "balanced-match": "^1.0.0"
19
18
  },
20
19
  "devDependencies": {
21
- "matcha": "^0.7.0",
20
+ "@c4312/matcha": "^1.3.1",
22
21
  "tape": "^4.6.0"
23
22
  },
24
23
  "keywords": [],
package/package.json CHANGED
@@ -53,12 +53,12 @@
53
53
  "@types/ini": "^1.3.33",
54
54
  "@types/jest": "^27",
55
55
  "@types/node": "^16",
56
- "@types/semver": "^7.5.5",
57
- "@types/yargs": "^16.0.8",
56
+ "@types/semver": "^7.5.6",
57
+ "@types/yargs": "^16.0.9",
58
58
  "@typescript-eslint/eslint-plugin": "^6",
59
59
  "@typescript-eslint/parser": "^6",
60
60
  "all-contributors-cli": "^6.26.1",
61
- "esbuild": "^0.19.5",
61
+ "esbuild": "^0.19.7",
62
62
  "eslint": "^8",
63
63
  "eslint-config-prettier": "^8.10.0",
64
64
  "eslint-import-resolver-typescript": "^2.7.1",
@@ -68,11 +68,10 @@
68
68
  "jest-junit": "^15",
69
69
  "jsii": "5.1.x",
70
70
  "jsii-diff": "^1.92.0",
71
- "jsii-docgen": "^10.1.4",
71
+ "jsii-docgen": "^10.2.1",
72
72
  "jsii-pacmak": "^1.92.0",
73
73
  "jsii-rosetta": "5.1.x",
74
74
  "markmac": "^0.1.146",
75
- "npm-check-updates": "^16",
76
75
  "prettier": "^2.8.8",
77
76
  "standard-version": "^9",
78
77
  "ts-jest": "^29",
@@ -125,7 +124,7 @@
125
124
  },
126
125
  "main": "lib/index.js",
127
126
  "license": "Apache-2.0",
128
- "version": "0.77.0",
127
+ "version": "0.77.2",
129
128
  "jest": {
130
129
  "maxWorkers": "50%",
131
130
  "testMatch": [