projen 0.71.97 → 0.71.98

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 (135) hide show
  1. package/.jsii +3 -3
  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 +2 -2
  76. package/lib/json-patch.js +1 -1
  77. package/lib/json.js +1 -1
  78. package/lib/license.js +1 -1
  79. package/lib/logger.js +1 -1
  80. package/lib/makefile.js +1 -1
  81. package/lib/object-file.js +1 -1
  82. package/lib/project-build.js +1 -1
  83. package/lib/project.js +1 -1
  84. package/lib/projects.js +1 -1
  85. package/lib/projenrc-json.js +2 -2
  86. package/lib/projenrc.js +1 -1
  87. package/lib/python/pip.js +1 -1
  88. package/lib/python/poetry.js +2 -2
  89. package/lib/python/projenrc.js +1 -1
  90. package/lib/python/pytest-sample.js +1 -1
  91. package/lib/python/pytest.js +1 -1
  92. package/lib/python/python-project.js +1 -1
  93. package/lib/python/python-sample.js +1 -1
  94. package/lib/python/requirements-file.js +1 -1
  95. package/lib/python/setuppy.js +1 -1
  96. package/lib/python/setuptools.js +1 -1
  97. package/lib/python/venv.js +1 -1
  98. package/lib/readme.js +1 -1
  99. package/lib/release/publisher.js +1 -1
  100. package/lib/release/release-trigger.js +1 -1
  101. package/lib/release/release.js +1 -1
  102. package/lib/renovatebot.js +1 -1
  103. package/lib/sample-file.js +2 -2
  104. package/lib/semver.js +1 -1
  105. package/lib/source-code.js +1 -1
  106. package/lib/task-runtime.js +1 -1
  107. package/lib/task.js +1 -1
  108. package/lib/tasks.js +1 -1
  109. package/lib/testing.js +1 -1
  110. package/lib/textfile.js +1 -1
  111. package/lib/toml.js +1 -1
  112. package/lib/typescript/projenrc-ts.js +1 -1
  113. package/lib/typescript/projenrc.js +1 -1
  114. package/lib/typescript/typescript-typedoc.js +1 -1
  115. package/lib/typescript/typescript.js +3 -3
  116. package/lib/version.js +1 -1
  117. package/lib/vscode/devcontainer.js +1 -1
  118. package/lib/vscode/extensions.js +1 -1
  119. package/lib/vscode/launch-config.js +1 -1
  120. package/lib/vscode/settings.js +1 -1
  121. package/lib/vscode/vscode.js +1 -1
  122. package/lib/web/next.js +3 -3
  123. package/lib/web/postcss.js +1 -1
  124. package/lib/web/react.js +4 -4
  125. package/lib/web/tailwind.js +1 -1
  126. package/lib/xmlfile.js +1 -1
  127. package/lib/yaml.js +1 -1
  128. package/node_modules/semver/classes/comparator.js +2 -1
  129. package/node_modules/semver/classes/range.js +37 -27
  130. package/node_modules/semver/classes/semver.js +5 -3
  131. package/node_modules/semver/functions/coerce.js +1 -1
  132. package/node_modules/semver/functions/diff.js +31 -20
  133. package/node_modules/semver/internal/re.js +11 -0
  134. package/node_modules/semver/package.json +4 -4
  135. package/package.json +3 -3
@@ -13,6 +13,35 @@ const diff = (version1, version2) => {
13
13
  const highVersion = v1Higher ? v1 : v2
14
14
  const lowVersion = v1Higher ? v2 : v1
15
15
  const highHasPre = !!highVersion.prerelease.length
16
+ const lowHasPre = !!lowVersion.prerelease.length
17
+
18
+ if (lowHasPre && !highHasPre) {
19
+ // Going from prerelease -> no prerelease requires some special casing
20
+
21
+ // If the low version has only a major, then it will always be a major
22
+ // Some examples:
23
+ // 1.0.0-1 -> 1.0.0
24
+ // 1.0.0-1 -> 1.1.1
25
+ // 1.0.0-1 -> 2.0.0
26
+ if (!lowVersion.patch && !lowVersion.minor) {
27
+ return 'major'
28
+ }
29
+
30
+ // Otherwise it can be determined by checking the high version
31
+
32
+ if (highVersion.patch) {
33
+ // anything higher than a patch bump would result in the wrong version
34
+ return 'patch'
35
+ }
36
+
37
+ if (highVersion.minor) {
38
+ // anything higher than a minor bump would result in the wrong version
39
+ return 'minor'
40
+ }
41
+
42
+ // bumping major/minor/patch all have same result
43
+ return 'major'
44
+ }
16
45
 
17
46
  // add the `pre` prefix if we are going to a prerelease version
18
47
  const prefix = highHasPre ? 'pre' : ''
@@ -29,26 +58,8 @@ const diff = (version1, version2) => {
29
58
  return prefix + 'patch'
30
59
  }
31
60
 
32
- // at this point we know stable versions match but overall versions are not equal,
33
- // so either they are both prereleases, or the lower version is a prerelease
34
-
35
- if (highHasPre) {
36
- // high and low are preleases
37
- return 'prerelease'
38
- }
39
-
40
- if (lowVersion.patch) {
41
- // anything higher than a patch bump would result in the wrong version
42
- return 'patch'
43
- }
44
-
45
- if (lowVersion.minor) {
46
- // anything higher than a minor bump would result in the wrong version
47
- return 'minor'
48
- }
49
-
50
- // bumping major/minor/patch all have same result
51
- return 'major'
61
+ // high and low are preleases
62
+ return 'prerelease'
52
63
  }
53
64
 
54
65
  module.exports = diff
@@ -4,16 +4,27 @@ exports = module.exports = {}
4
4
 
5
5
  // The actual regexps go on exports.re
6
6
  const re = exports.re = []
7
+ const safeRe = exports.safeRe = []
7
8
  const src = exports.src = []
8
9
  const t = exports.t = {}
9
10
  let R = 0
10
11
 
11
12
  const createToken = (name, value, isGlobal) => {
13
+ // Replace all greedy whitespace to prevent regex dos issues. These regex are
14
+ // used internally via the safeRe object since all inputs in this library get
15
+ // normalized first to trim and collapse all extra whitespace. The original
16
+ // regexes are exported for userland consumption and lower level usage. A
17
+ // future breaking change could export the safer regex only with a note that
18
+ // all input should have extra whitespace removed.
19
+ const safe = value
20
+ .split('\\s*').join('\\s{0,1}')
21
+ .split('\\s+').join('\\s')
12
22
  const index = R++
13
23
  debug(name, index, value)
14
24
  t[name] = index
15
25
  src[index] = value
16
26
  re[index] = new RegExp(value, isGlobal ? 'g' : undefined)
27
+ safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)
17
28
  }
18
29
 
19
30
  // The following Regular Expressions can be used for tokenizing,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "semver",
3
- "version": "7.5.1",
3
+ "version": "7.5.2",
4
4
  "description": "The semantic version parser used by npm.",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -14,7 +14,7 @@
14
14
  },
15
15
  "devDependencies": {
16
16
  "@npmcli/eslint-config": "^4.0.0",
17
- "@npmcli/template-oss": "4.14.1",
17
+ "@npmcli/template-oss": "4.15.1",
18
18
  "tap": "^16.0.0"
19
19
  },
20
20
  "license": "ISC",
@@ -37,7 +37,7 @@
37
37
  "range.bnf"
38
38
  ],
39
39
  "tap": {
40
- "check-coverage": true,
40
+ "timeout": 30,
41
41
  "coverage-map": "map.js",
42
42
  "nyc-arg": [
43
43
  "--exclude",
@@ -53,7 +53,7 @@
53
53
  "author": "GitHub Inc.",
54
54
  "templateOSS": {
55
55
  "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
56
- "version": "4.14.1",
56
+ "version": "4.15.1",
57
57
  "engines": ">=10",
58
58
  "ciVersions": [
59
59
  "10.0.0",
package/package.json CHANGED
@@ -57,7 +57,7 @@
57
57
  "@typescript-eslint/eslint-plugin": "^5",
58
58
  "@typescript-eslint/parser": "^5",
59
59
  "all-contributors-cli": "^6.26.0",
60
- "esbuild": "^0.18.2",
60
+ "esbuild": "^0.18.3",
61
61
  "eslint": "^8",
62
62
  "eslint-config-prettier": "^8.8.0",
63
63
  "eslint-import-resolver-node": "^0.3.7",
@@ -86,7 +86,7 @@
86
86
  "fast-json-patch": "^3.1.1",
87
87
  "glob": "^8",
88
88
  "ini": "^2.0.0",
89
- "semver": "^7.5.1",
89
+ "semver": "^7.5.2",
90
90
  "shx": "^0.3.4",
91
91
  "xmlbuilder2": "^3.1.1",
92
92
  "yaml": "^2.2.2",
@@ -120,7 +120,7 @@
120
120
  },
121
121
  "main": "lib/index.js",
122
122
  "license": "Apache-2.0",
123
- "version": "0.71.97",
123
+ "version": "0.71.98",
124
124
  "jest": {
125
125
  "maxWorkers": "50%",
126
126
  "testMatch": [