release-please 15.10.5 → 15.11.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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,26 @@
4
4
 
5
5
  [1]: https://www.npmjs.com/package/release-please?activeTab=versions
6
6
 
7
+ ## [15.11.1](https://github.com/googleapis/release-please/compare/v15.11.0...v15.11.1) (2023-07-10)
8
+
9
+
10
+ ### Bug Fixes
11
+
12
+ * **deps:** Update dependency conventional-commits-filter to v3 ([#1976](https://github.com/googleapis/release-please/issues/1976)) ([20b8f34](https://github.com/googleapis/release-please/commit/20b8f345624f2a7e639df1a50ebda2719f9c2423))
13
+ * **python:** Warn on dynamic pyproject.toml versioning ([#1983](https://github.com/googleapis/release-please/issues/1983)) ([5ee5baa](https://github.com/googleapis/release-please/commit/5ee5baa0932d3435034b96183fed308eaf47ef73))
14
+
15
+ ## [15.11.0](https://github.com/googleapis/release-please/compare/v15.10.5...v15.11.0) (2023-05-31)
16
+
17
+
18
+ ### Features
19
+
20
+ * **node:** Support package-lock.json version 3 ([#1940](https://github.com/googleapis/release-please/issues/1940)) ([77d80fb](https://github.com/googleapis/release-please/commit/77d80fb0c324cfadb91fd4a7ec656b2eb8eaeccb)), closes [#1939](https://github.com/googleapis/release-please/issues/1939)
21
+
22
+
23
+ ### Bug Fixes
24
+
25
+ * **helm:** Maintain any existing comments in Chart.yaml ([#1968](https://github.com/googleapis/release-please/issues/1968)) ([77de40e](https://github.com/googleapis/release-please/commit/77de40e6f8ceaac87d90948c0d7fa618dcd01163))
26
+
7
27
  ## [15.10.5](https://github.com/googleapis/release-please/compare/v15.10.4...v15.10.5) (2023-05-26)
8
28
 
9
29
 
package/README.md CHANGED
@@ -139,6 +139,8 @@ recommend using squash-merge instead](#linear-git-commit-history-use-squash-merg
139
139
 
140
140
  ## Release Please bot does not create a release PR. Why?
141
141
 
142
+ ### Releasable Units
143
+
142
144
  Release Please creates a release pull request after it notices the default branch
143
145
  contains "releasable units" since the last release.
144
146
  A releasable unit is a commit to the branch with one of the following
@@ -148,12 +150,24 @@ prefixes: "feat", "fix", and "deps".
148
150
  Some languages have their specific releasable unit configuration. For example,
149
151
  "docs" is a prefix for releasable units in Java and Python.
150
152
 
153
+ ### Re-run Release Please
154
+
151
155
  If you think Release Please missed creating a release PR after a pull request
152
156
  with a releasable unit has been merged, please re-run `release-please`. If you are using
153
157
  the GitHub application, add `release-please:force-run` label to the merged pull request. If
154
158
  you are using the action, look for the failed invocation and retry the workflow run.
155
159
  Release Please will process the pull request immediately to find releasable units.
156
160
 
161
+ ### Existing Pull Requests with "autorelease: pending" label
162
+
163
+ For the GitHub application users, Release Please will not create a new pull request
164
+ if there's an existing pull request labeled as `autorelease: pending`.
165
+ To confirm this case, search for a pull request with the label.
166
+ (It's very likely it's the latest release pull request.)
167
+ If you find a release pull request with the label and it is not going to be released
168
+ (or already released), then remove the `autorelease: pending` label and re-run Release
169
+ Please.
170
+
157
171
  ## Strategy (Language) types supported
158
172
 
159
173
  Release Please automates releases for the following flavors of repositories:
@@ -14,7 +14,7 @@
14
14
  // limitations under the License.
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.ChartYaml = void 0;
17
- const yaml = require("js-yaml");
17
+ const yaml = require("yaml");
18
18
  const logger_1 = require("../../util/logger");
19
19
  const default_1 = require("../default");
20
20
  /**
@@ -27,14 +27,14 @@ class ChartYaml extends default_1.DefaultUpdater {
27
27
  * @returns {string} The updated content
28
28
  */
29
29
  updateContent(content, logger = logger_1.logger) {
30
- const data = yaml.load(content, { json: true });
31
- if (data === null || data === undefined) {
30
+ const chart = yaml.parseDocument(content);
31
+ if (chart === null || chart === undefined) {
32
32
  return '';
33
33
  }
34
- const parsed = JSON.parse(JSON.stringify(data));
35
- logger.info(`updating from ${parsed.version} to ${this.version}`);
36
- parsed.version = this.version.toString();
37
- return yaml.dump(parsed);
34
+ const oldVersion = chart.get('version');
35
+ logger.info(`updating from ${oldVersion} to ${this.version}`);
36
+ chart.set('version', this.version.toString());
37
+ return chart.toString();
38
38
  }
39
39
  }
40
40
  exports.ChartYaml = ChartYaml;
@@ -26,7 +26,7 @@ class PackageLockJson extends default_1.DefaultUpdater {
26
26
  const parsed = JSON.parse(content);
27
27
  logger.info(`updating from ${parsed.version} to ${this.version}`);
28
28
  parsed.version = this.version.toString();
29
- if (parsed.lockfileVersion === 2) {
29
+ if (parsed.lockfileVersion === 2 || parsed.lockfileVersion === 3) {
30
30
  parsed.packages[''].version = this.version.toString();
31
31
  }
32
32
  return (0, json_stringify_1.jsonStringify)(parsed, content);
@@ -3,6 +3,7 @@ import { DefaultUpdater } from '../default';
3
3
  interface PyProjectContent {
4
4
  name: string;
5
5
  version: string;
6
+ dynamic?: string[];
6
7
  }
7
8
  /**
8
9
  * A subset of the contents of a `pyproject.toml`
@@ -15,8 +15,8 @@
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.PyProjectToml = exports.parsePyProject = void 0;
17
17
  const TOML = require("@iarna/toml");
18
- const toml_edit_1 = require("../../util/toml-edit");
19
18
  const logger_1 = require("../../util/logger");
19
+ const toml_edit_1 = require("../../util/toml-edit");
20
20
  const default_1 = require("../default");
21
21
  function parsePyProject(content) {
22
22
  return TOML.parse(content);
@@ -36,6 +36,12 @@ class PyProjectToml extends default_1.DefaultUpdater {
36
36
  const parsed = parsePyProject(content);
37
37
  const project = parsed.project || ((_a = parsed.tool) === null || _a === void 0 ? void 0 : _a.poetry);
38
38
  if (!(project === null || project === void 0 ? void 0 : project.version)) {
39
+ // Throw warning if the version is dynamically generated.
40
+ if ((project === null || project === void 0 ? void 0 : project.dynamic) && project.dynamic.includes('version')) {
41
+ const msg = "dynamic version found in 'pyproject.toml'. Skipping update.";
42
+ logger.warn(msg);
43
+ return content;
44
+ }
39
45
  const msg = 'invalid file';
40
46
  logger.error(msg);
41
47
  throw new Error(msg);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "release-please",
3
- "version": "15.10.5",
3
+ "version": "15.11.1",
4
4
  "description": "generate release PRs based on the conventionalcommits.org spec",
5
5
  "main": "./build/src/index.js",
6
6
  "bin": "./build/src/bin/release-please.js",
@@ -63,7 +63,7 @@
63
63
  "gts": "^3.1.0",
64
64
  "mocha": "^9.2.2",
65
65
  "nock": "^13.0.0",
66
- "sinon": "15.1.0",
66
+ "sinon": "15.2.0",
67
67
  "snap-shot-it": "^7.0.0"
68
68
  },
69
69
  "dependencies": {
@@ -84,7 +84,7 @@
84
84
  "code-suggester": "^4.2.0",
85
85
  "conventional-changelog-conventionalcommits": "^5.0.0",
86
86
  "conventional-changelog-writer": "^5.0.0",
87
- "conventional-commits-filter": "^2.0.2",
87
+ "conventional-commits-filter": "^3.0.0",
88
88
  "detect-indent": "^6.1.0",
89
89
  "diff": "^5.0.0",
90
90
  "figures": "^3.0.0",
@@ -100,6 +100,7 @@
100
100
  "unist-util-visit": "^2.0.3",
101
101
  "unist-util-visit-parents": "^3.1.1",
102
102
  "xpath": "^0.0.32",
103
+ "yaml": "^2.2.2",
103
104
  "yargs": "^17.0.0"
104
105
  },
105
106
  "engines": {