release-please 12.5.0 → 13.0.0-candidate.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 (253) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +4 -0
  3. package/build/src/bin/release-please.d.ts +55 -11
  4. package/build/src/bin/release-please.js +419 -152
  5. package/build/src/bootstrapper.d.ts +12 -0
  6. package/build/src/bootstrapper.js +60 -0
  7. package/build/src/changelog-notes/default.d.ts +17 -0
  8. package/build/src/changelog-notes/default.js +72 -0
  9. package/build/src/changelog-notes.d.ts +17 -0
  10. package/build/src/{updaters/java/readme.js → changelog-notes.js} +2 -7
  11. package/build/src/commit.d.ts +26 -0
  12. package/build/src/{util/to-conventional-changelog-format.js → commit.js} +97 -2
  13. package/build/src/errors/index.d.ts +0 -5
  14. package/build/src/errors/index.js +1 -10
  15. package/build/src/factory.d.ts +25 -37
  16. package/build/src/factory.js +160 -150
  17. package/build/src/github.d.ts +154 -884
  18. package/build/src/github.js +608 -1036
  19. package/build/src/manifest.d.ts +191 -47
  20. package/build/src/manifest.js +599 -487
  21. package/build/src/plugin.d.ts +20 -0
  22. package/build/src/{plugins/plugin.js → plugin.js} +10 -9
  23. package/build/src/plugins/cargo-workspace.d.ts +48 -18
  24. package/build/src/plugins/cargo-workspace.js +247 -328
  25. package/build/src/plugins/merge.d.ts +11 -0
  26. package/build/src/plugins/merge.js +83 -0
  27. package/build/src/plugins/node-workspace.d.ts +35 -17
  28. package/build/src/plugins/node-workspace.js +234 -271
  29. package/build/src/plugins/workspace.d.ts +102 -0
  30. package/build/src/plugins/workspace.js +170 -0
  31. package/build/src/pull-request.d.ts +10 -0
  32. package/build/src/{updaters/java/pom-xml.js → pull-request.js} +2 -7
  33. package/build/src/release-notes.d.ts +29 -0
  34. package/build/src/release-notes.js +71 -0
  35. package/build/src/release-pull-request.d.ts +13 -0
  36. package/build/src/release-pull-request.js +16 -0
  37. package/build/src/release.d.ts +6 -0
  38. package/build/src/release.js +16 -0
  39. package/build/src/repository.d.ts +5 -0
  40. package/build/src/repository.js +16 -0
  41. package/build/src/strategies/dart.d.ts +8 -0
  42. package/build/src/strategies/dart.js +63 -0
  43. package/build/src/strategies/elixir.d.ts +5 -0
  44. package/build/src/{releasers → strategies}/elixir.js +18 -14
  45. package/build/src/strategies/go-yoshi.d.ts +13 -0
  46. package/build/src/strategies/go-yoshi.js +106 -0
  47. package/build/src/strategies/go.d.ts +5 -0
  48. package/build/src/{releasers → strategies}/go.js +11 -12
  49. package/build/src/strategies/helm.d.ts +8 -0
  50. package/build/src/strategies/helm.js +63 -0
  51. package/build/src/strategies/java-yoshi.d.ts +24 -0
  52. package/build/src/strategies/java-yoshi.js +203 -0
  53. package/build/src/strategies/krm-blueprint.d.ts +7 -0
  54. package/build/src/{releasers → strategies}/krm-blueprint.js +26 -22
  55. package/build/src/strategies/node.d.ts +9 -0
  56. package/build/src/strategies/node.js +82 -0
  57. package/build/src/strategies/ocaml.d.ts +5 -0
  58. package/build/src/{releasers → strategies}/ocaml.js +34 -28
  59. package/build/src/strategies/php-yoshi.d.ts +10 -0
  60. package/build/src/strategies/php-yoshi.js +213 -0
  61. package/build/src/strategies/php.d.ts +6 -0
  62. package/build/src/{releasers → strategies}/php.js +24 -23
  63. package/build/src/strategies/python.d.ts +8 -0
  64. package/build/src/strategies/python.js +117 -0
  65. package/build/src/strategies/ruby-yoshi.d.ts +17 -0
  66. package/build/src/strategies/ruby-yoshi.js +116 -0
  67. package/build/src/strategies/ruby.d.ts +13 -0
  68. package/build/src/{releasers → strategies}/ruby.js +26 -27
  69. package/build/src/strategies/rust.d.ts +20 -0
  70. package/build/src/strategies/rust.js +120 -0
  71. package/build/src/strategies/simple.d.ts +5 -0
  72. package/build/src/{releasers → strategies}/simple.js +18 -14
  73. package/build/src/strategies/terraform-module.d.ts +7 -0
  74. package/build/src/{releasers → strategies}/terraform-module.js +29 -23
  75. package/build/src/strategy.d.ts +100 -0
  76. package/build/src/strategy.js +233 -0
  77. package/build/src/update.d.ts +23 -0
  78. package/build/src/{updaters/update.js → update.js} +1 -1
  79. package/build/src/updaters/changelog.d.ts +7 -10
  80. package/build/src/updaters/changelog.js +3 -9
  81. package/build/src/updaters/changelog.js.map +1 -1
  82. package/build/src/updaters/composite.d.ts +19 -0
  83. package/build/src/updaters/composite.js +42 -0
  84. package/build/src/updaters/dart/pubspec-yaml.d.ts +12 -0
  85. package/build/src/updaters/{pubspec-yaml.js → dart/pubspec-yaml.js} +13 -12
  86. package/build/src/updaters/default.d.ts +21 -0
  87. package/build/src/updaters/{version-txt.js → default.js} +16 -10
  88. package/build/src/updaters/dotnet/csproj.d.ts +12 -0
  89. package/build/src/updaters/{java/google-utils.js → dotnet/csproj.js} +16 -13
  90. package/build/src/updaters/elixir/elixir-mix-exs.d.ts +12 -0
  91. package/build/src/updaters/{elixir-mix-exs.js → elixir/elixir-mix-exs.js} +12 -10
  92. package/build/src/updaters/helm/chart-yaml.d.ts +10 -11
  93. package/build/src/updaters/helm/chart-yaml.js +12 -10
  94. package/build/src/updaters/java/java-update.d.ts +14 -0
  95. package/build/src/updaters/java/{java_update.js → java-update.js} +22 -22
  96. package/build/src/updaters/java/versions-manifest.d.ts +12 -2
  97. package/build/src/updaters/java/versions-manifest.js +20 -4
  98. package/build/src/updaters/krm/krm-blueprint-version.d.ts +10 -11
  99. package/build/src/updaters/krm/krm-blueprint-version.js +13 -12
  100. package/build/src/updaters/node/package-json.d.ts +12 -0
  101. package/build/src/updaters/{package-json.js → node/package-json.js} +14 -16
  102. package/build/src/updaters/node/package-lock-json.d.ts +8 -0
  103. package/build/src/updaters/node/package-lock-json.js +36 -0
  104. package/build/src/updaters/node/samples-package-json.d.ts +23 -0
  105. package/build/src/updaters/{samples-package-json.js → node/samples-package-json.js} +19 -8
  106. package/build/src/updaters/ocaml/dune-project.d.ts +10 -11
  107. package/build/src/updaters/ocaml/dune-project.js +11 -9
  108. package/build/src/updaters/ocaml/esy-json.d.ts +10 -11
  109. package/build/src/updaters/ocaml/esy-json.js +12 -10
  110. package/build/src/updaters/ocaml/opam.d.ts +10 -11
  111. package/build/src/updaters/ocaml/opam.js +11 -9
  112. package/build/src/updaters/php/php-client-version.d.ts +12 -0
  113. package/build/src/updaters/{php-client-version.js → php/php-client-version.js} +10 -9
  114. package/build/src/updaters/php/php-manifest.d.ts +13 -0
  115. package/build/src/updaters/{php-manifest.js → php/php-manifest.js} +17 -15
  116. package/build/src/updaters/php/root-composer-update-packages.d.ts +12 -0
  117. package/build/src/updaters/{root-composer-update-packages.js → php/root-composer-update-packages.js} +17 -16
  118. package/build/src/updaters/python/pyproject-toml.d.ts +10 -11
  119. package/build/src/updaters/python/pyproject-toml.js +13 -11
  120. package/build/src/updaters/python/python-file-with-version.d.ts +7 -11
  121. package/build/src/updaters/python/python-file-with-version.js +7 -8
  122. package/build/src/updaters/python/setup-cfg.d.ts +10 -11
  123. package/build/src/updaters/python/setup-cfg.js +10 -8
  124. package/build/src/updaters/python/setup-py.d.ts +10 -11
  125. package/build/src/updaters/python/setup-py.js +10 -8
  126. package/build/src/updaters/raw-content.d.ts +19 -0
  127. package/build/src/{plugins/index.js → updaters/raw-content.js} +23 -12
  128. package/build/src/updaters/release-please-config.d.ts +8 -0
  129. package/build/src/updaters/release-please-config.js +41 -0
  130. package/build/src/updaters/release-please-manifest.d.ts +2 -11
  131. package/build/src/updaters/release-please-manifest.js +11 -14
  132. package/build/src/updaters/ruby/version-rb.d.ts +12 -0
  133. package/build/src/updaters/{version-rb.js → ruby/version-rb.js} +10 -8
  134. package/build/src/updaters/rust/cargo-lock.d.ts +7 -11
  135. package/build/src/updaters/rust/cargo-lock.js +14 -16
  136. package/build/src/updaters/rust/cargo-toml.d.ts +7 -11
  137. package/build/src/updaters/rust/cargo-toml.js +19 -21
  138. package/build/src/updaters/terraform/module-version.d.ts +10 -11
  139. package/build/src/updaters/terraform/module-version.js +11 -9
  140. package/build/src/updaters/terraform/readme.d.ts +10 -11
  141. package/build/src/updaters/terraform/readme.js +11 -10
  142. package/build/src/updaters/terraform/readme.js.map +1 -1
  143. package/build/src/util/branch-name.d.ts +5 -4
  144. package/build/src/util/branch-name.js +13 -10
  145. package/build/src/{commit-split.d.ts → util/commit-split.d.ts} +2 -4
  146. package/build/src/{commit-split.js → util/commit-split.js} +4 -2
  147. package/build/src/util/indent-commit.d.ts +1 -1
  148. package/build/src/util/logger.d.ts +5 -2
  149. package/build/src/util/logger.js +9 -4
  150. package/build/src/util/pull-request-body.d.ts +20 -0
  151. package/build/src/util/pull-request-body.js +129 -0
  152. package/build/src/util/pull-request-title.d.ts +8 -6
  153. package/build/src/util/pull-request-title.js +20 -6
  154. package/build/src/util/tag-name.d.ts +9 -0
  155. package/build/src/util/tag-name.js +41 -0
  156. package/build/src/{updaters → util}/toml-edit.d.ts +0 -0
  157. package/build/src/{updaters → util}/toml-edit.js +0 -0
  158. package/build/src/version.d.ts +11 -0
  159. package/build/src/version.js +45 -0
  160. package/build/src/versioning-strategies/always-bump-patch.d.ts +7 -0
  161. package/build/src/{updaters/package-lock-json.js → versioning-strategies/always-bump-patch.js} +8 -11
  162. package/build/src/versioning-strategies/default.d.ts +15 -0
  163. package/build/src/versioning-strategies/default.js +67 -0
  164. package/build/src/versioning-strategies/dependency-manifest.d.ts +7 -0
  165. package/build/src/versioning-strategies/dependency-manifest.js +90 -0
  166. package/build/src/versioning-strategies/java-add-snapshot.d.ts +9 -0
  167. package/build/src/versioning-strategies/java-add-snapshot.js +53 -0
  168. package/build/src/versioning-strategies/java-snapshot.d.ts +9 -0
  169. package/build/src/versioning-strategies/java-snapshot.js +67 -0
  170. package/build/src/versioning-strategies/service-pack.d.ts +7 -0
  171. package/build/src/versioning-strategies/service-pack.js +40 -0
  172. package/build/src/versioning-strategy.d.ts +28 -0
  173. package/build/src/versioning-strategy.js +55 -0
  174. package/package.json +9 -8
  175. package/build/src/constants.d.ts +0 -6
  176. package/build/src/constants.js +0 -23
  177. package/build/src/conventional-commits.d.ts +0 -53
  178. package/build/src/conventional-commits.js +0 -167
  179. package/build/src/github-release.d.ts +0 -34
  180. package/build/src/github-release.js +0 -92
  181. package/build/src/graphql-to-commits.d.ts +0 -60
  182. package/build/src/graphql-to-commits.js +0 -112
  183. package/build/src/index.d.ts +0 -94
  184. package/build/src/index.js +0 -32
  185. package/build/src/plugins/index.d.ts +0 -5
  186. package/build/src/plugins/plugin.d.ts +0 -21
  187. package/build/src/release-pr.d.ts +0 -101
  188. package/build/src/release-pr.js +0 -461
  189. package/build/src/releasers/dart.d.ts +0 -9
  190. package/build/src/releasers/dart.js +0 -65
  191. package/build/src/releasers/elixir.d.ts +0 -5
  192. package/build/src/releasers/go-yoshi.d.ts +0 -10
  193. package/build/src/releasers/go-yoshi.js +0 -162
  194. package/build/src/releasers/go.d.ts +0 -6
  195. package/build/src/releasers/helm.d.ts +0 -9
  196. package/build/src/releasers/helm.js +0 -66
  197. package/build/src/releasers/index.d.ts +0 -7
  198. package/build/src/releasers/index.js +0 -76
  199. package/build/src/releasers/java/bump_type.d.ts +0 -4
  200. package/build/src/releasers/java/bump_type.js +0 -38
  201. package/build/src/releasers/java/stability.d.ts +0 -5
  202. package/build/src/releasers/java/stability.js +0 -37
  203. package/build/src/releasers/java/version.d.ts +0 -13
  204. package/build/src/releasers/java/version.js +0 -112
  205. package/build/src/releasers/java-backport.d.ts +0 -9
  206. package/build/src/releasers/java-backport.js +0 -43
  207. package/build/src/releasers/java-bom.d.ts +0 -16
  208. package/build/src/releasers/java-bom.js +0 -83
  209. package/build/src/releasers/java-lts.d.ts +0 -9
  210. package/build/src/releasers/java-lts.js +0 -47
  211. package/build/src/releasers/java-yoshi.d.ts +0 -28
  212. package/build/src/releasers/java-yoshi.js +0 -304
  213. package/build/src/releasers/krm-blueprint.d.ts +0 -6
  214. package/build/src/releasers/node.d.ts +0 -10
  215. package/build/src/releasers/node.js +0 -84
  216. package/build/src/releasers/ocaml.d.ts +0 -5
  217. package/build/src/releasers/php-yoshi.d.ts +0 -5
  218. package/build/src/releasers/php-yoshi.js +0 -191
  219. package/build/src/releasers/php.d.ts +0 -7
  220. package/build/src/releasers/python.d.ts +0 -11
  221. package/build/src/releasers/python.js +0 -127
  222. package/build/src/releasers/ruby-yoshi.d.ts +0 -5
  223. package/build/src/releasers/ruby-yoshi.js +0 -142
  224. package/build/src/releasers/ruby.d.ts +0 -11
  225. package/build/src/releasers/rust.d.ts +0 -30
  226. package/build/src/releasers/rust.js +0 -163
  227. package/build/src/releasers/simple.d.ts +0 -5
  228. package/build/src/releasers/terraform-module.d.ts +0 -6
  229. package/build/src/updaters/elixir-mix-exs.d.ts +0 -13
  230. package/build/src/updaters/java/google-utils.d.ts +0 -13
  231. package/build/src/updaters/java/java_update.d.ts +0 -13
  232. package/build/src/updaters/java/pom-xml.d.ts +0 -3
  233. package/build/src/updaters/java/readme.d.ts +0 -3
  234. package/build/src/updaters/java/readme.js.map +0 -1
  235. package/build/src/updaters/package-json.d.ts +0 -16
  236. package/build/src/updaters/package-lock-json.d.ts +0 -7
  237. package/build/src/updaters/php-client-version.d.ts +0 -13
  238. package/build/src/updaters/php-manifest.d.ts +0 -13
  239. package/build/src/updaters/pubspec-yaml.d.ts +0 -13
  240. package/build/src/updaters/root-composer-update-package.d.ts +0 -13
  241. package/build/src/updaters/root-composer-update-package.js +0 -45
  242. package/build/src/updaters/root-composer-update-packages.d.ts +0 -13
  243. package/build/src/updaters/samples-package-json.d.ts +0 -13
  244. package/build/src/updaters/update.d.ts +0 -20
  245. package/build/src/updaters/version-rb.d.ts +0 -13
  246. package/build/src/updaters/version-txt.d.ts +0 -12
  247. package/build/src/updaters/version.d.ts +0 -13
  248. package/build/src/updaters/version.js +0 -31
  249. package/build/src/util/checkpoint.d.ts +0 -6
  250. package/build/src/util/checkpoint.js +0 -33
  251. package/build/src/util/release-notes.d.ts +0 -7
  252. package/build/src/util/release-notes.js +0 -34
  253. package/build/src/util/to-conventional-changelog-format.d.ts +0 -2
@@ -1,13 +1,40 @@
1
- import { GitHub } from './github';
2
- import { VersionsMap } from './updaters/update';
3
- import { ReleaseType } from './releasers';
4
- import { Commit } from './graphql-to-commits';
5
- import { BranchName } from './util/branch-name';
6
- import { ManifestConstructorOptions, ManifestPackage } from '.';
7
- import { ChangelogSection } from './conventional-commits';
8
- import { Checkpoint } from './util/checkpoint';
9
- import { GitHubReleaseResponse } from './github-release';
10
- import { PluginType } from './plugins';
1
+ import { ChangelogSection } from './changelog-notes';
2
+ import { GitHub, GitHubRelease } from './github';
3
+ import { Version } from './version';
4
+ import { PullRequest } from './pull-request';
5
+ import { ReleasePullRequest } from './release-pull-request';
6
+ import { ReleaseType, VersioningStrategyType } from './factory';
7
+ import { Release } from './release';
8
+ /**
9
+ * These are configurations provided to each strategy per-path.
10
+ */
11
+ export interface ReleaserConfig {
12
+ releaseType: ReleaseType;
13
+ versioning?: VersioningStrategyType;
14
+ bumpMinorPreMajor?: boolean;
15
+ bumpPatchForMinorPreMajor?: boolean;
16
+ changelogSections?: ChangelogSection[];
17
+ changelogPath?: string;
18
+ releaseAs?: string;
19
+ skipGithubRelease?: boolean;
20
+ draft?: boolean;
21
+ draftPullRequest?: boolean;
22
+ component?: string;
23
+ packageName?: string;
24
+ includeComponentInTag?: boolean;
25
+ versionFile?: string;
26
+ extraFiles?: string[];
27
+ }
28
+ export interface CandidateReleasePullRequest {
29
+ path: string;
30
+ pullRequest: ReleasePullRequest;
31
+ config: ReleaserConfig;
32
+ }
33
+ export interface CandidateRelease extends Release {
34
+ pullRequest: PullRequest;
35
+ draft?: boolean;
36
+ path: string;
37
+ }
11
38
  interface ReleaserConfigJson {
12
39
  'release-type'?: ReleaseType;
13
40
  'bump-minor-pre-major'?: boolean;
@@ -16,55 +43,172 @@ interface ReleaserConfigJson {
16
43
  'release-as'?: string;
17
44
  'skip-github-release'?: boolean;
18
45
  draft?: boolean;
46
+ 'draft-pull-request'?: boolean;
47
+ label?: string;
48
+ 'release-label'?: string;
49
+ 'include-component-in-tag'?: boolean;
50
+ 'version-file'?: string;
51
+ 'extra-files'?: string[];
52
+ }
53
+ export interface ManifestOptions {
54
+ bootstrapSha?: string;
55
+ lastReleaseSha?: string;
56
+ alwaysLinkLocal?: boolean;
57
+ separatePullRequests?: boolean;
58
+ plugins?: PluginType[];
59
+ fork?: boolean;
60
+ signoff?: string;
61
+ manifestPath?: string;
62
+ labels?: string[];
63
+ releaseLabels?: string[];
64
+ draft?: boolean;
65
+ draftPullRequest?: boolean;
19
66
  }
20
67
  interface ReleaserPackageConfig extends ReleaserConfigJson {
21
68
  'package-name'?: string;
69
+ component?: string;
22
70
  'changelog-path'?: string;
23
71
  }
24
- export interface Config extends ReleaserConfigJson {
72
+ export declare type PluginType = 'node-workspace' | 'cargo-workspace';
73
+ /**
74
+ * This is the schema of the manifest config json
75
+ */
76
+ export interface ManifestConfig extends ReleaserConfigJson {
25
77
  packages: Record<string, ReleaserPackageConfig>;
26
- parsedPackages: ManifestPackage[];
27
78
  'bootstrap-sha'?: string;
28
79
  'last-release-sha'?: string;
29
80
  'always-link-local'?: boolean;
30
81
  plugins?: PluginType[];
82
+ 'separate-pull-requests'?: boolean;
31
83
  }
32
- interface PackageForReleaser {
33
- config: ManifestPackage;
34
- commits: Commit[];
35
- lastVersion?: string;
84
+ export declare type ReleasedVersions = Record<string, Version>;
85
+ export declare type RepositoryConfig = Record<string, ReleaserConfig>;
86
+ export declare const DEFAULT_RELEASE_PLEASE_CONFIG = "release-please-config.json";
87
+ export declare const DEFAULT_RELEASE_PLEASE_MANIFEST = ".release-please-manifest.json";
88
+ export declare const ROOT_PROJECT_PATH = ".";
89
+ export declare const MANIFEST_PULL_REQUEST_TITLE_PATTERN = "chore: release ${branch}";
90
+ interface CreatedRelease extends GitHubRelease {
91
+ path: string;
92
+ version: string;
93
+ major: number;
94
+ minor: number;
95
+ patch: number;
36
96
  }
37
- declare type ManifestJson = Record<string, string>;
38
- export declare type ManifestGitHubReleaseResult = Record<string, GitHubReleaseResponse | undefined> | undefined;
39
97
  export declare class Manifest {
40
- gh: GitHub;
41
- configFileName: string;
42
- manifestFileName: string;
43
- checkpoint: Checkpoint;
44
- configFile?: Config;
45
- headManifest?: ManifestJson;
46
- signoff?: string;
47
- constructor(options: ManifestConstructorOptions);
48
- protected getBranchName(): Promise<BranchName>;
49
- protected getFileJson<T>(fileName: string): Promise<T>;
50
- protected getFileJson<T>(fileName: string, sha: string): Promise<T | undefined>;
51
- protected getManifestJson(): Promise<ManifestJson>;
52
- protected getManifestJson(sha: string): Promise<ManifestJson | undefined>;
53
- protected getManifestVersions(sha?: string): Promise<[VersionsMap, string]>;
54
- protected getManifestVersions(sha: false, newPaths: string[]): Promise<VersionsMap>;
55
- protected getConfigJson(): Promise<Config>;
56
- private resolveReleaseAs;
57
- protected getPackagesToRelease(allCommits: Commit[], sha?: string): Promise<PackageForReleaser[]>;
58
- private validateJsonFile;
59
- protected validate(): Promise<boolean>;
60
- private getReleasePR;
61
- private runReleasers;
62
- private getManifestChanges;
63
- private buildPRBody;
64
- private buildManifestPR;
65
- private getPlugins;
66
- private resolveLastReleaseSha;
67
- pullRequest(): Promise<number | undefined>;
68
- githubRelease(): Promise<ManifestGitHubReleaseResult>;
98
+ private repository;
99
+ private github;
100
+ readonly repositoryConfig: RepositoryConfig;
101
+ readonly releasedVersions: ReleasedVersions;
102
+ private targetBranch;
103
+ private separatePullRequests;
104
+ readonly fork: boolean;
105
+ private signoffUser?;
106
+ private labels;
107
+ private releaseLabels;
108
+ private plugins;
109
+ private _strategiesByPath?;
110
+ private _pathsByComponent?;
111
+ private manifestPath;
112
+ private bootstrapSha?;
113
+ private lastReleaseSha?;
114
+ private draft?;
115
+ private draftPullRequest?;
116
+ /**
117
+ * Create a Manifest from explicit config in code. This assumes that the
118
+ * repository has a single component at the root path.
119
+ *
120
+ * @param {GitHub} github GitHub client
121
+ * @param {string} targetBranch The releaseable base branch
122
+ * @param {RepositoryConfig} repositoryConfig Parsed configuration of path => release configuration
123
+ * @param {ReleasedVersions} releasedVersions Parsed versions of path => latest release version
124
+ * @param {ManifestOptions} manifestOptions Optional. Manifest options
125
+ * @param {string} manifestOptions.bootstrapSha If provided, use this SHA
126
+ * as the point to consider commits after
127
+ * @param {boolean} manifestOptions.alwaysLinkLocal Option for the node-workspace
128
+ * plugin
129
+ * @param {boolean} manifestOptions.separatePullRequests If true, create separate pull
130
+ * requests instead of a single manifest release pull request
131
+ * @param {PluginType[]} manifestOptions.plugins Any plugins to use for this repository
132
+ * @param {boolean} manifestOptions.fork If true, create pull requests from a fork. Defaults
133
+ * to `false`
134
+ * @param {string} manifestOptions.signoff Add a Signed-off-by annotation to the commit
135
+ * @param {string} manifestOptions.manifestPath Path to the versions manifest
136
+ * @param {string[]} manifestOptions.labels Labels that denote a pending, untagged release
137
+ * pull request. Defaults to `[autorelease: pending]`
138
+ * @param {string[]} manifestOptions.releaseLabels Labels to apply to a tagged release
139
+ * pull request. Defaults to `[autorelease: tagged]`
140
+ */
141
+ constructor(github: GitHub, targetBranch: string, repositoryConfig: RepositoryConfig, releasedVersions: ReleasedVersions, manifestOptions?: ManifestOptions);
142
+ /**
143
+ * Create a Manifest from config files in the repository.
144
+ *
145
+ * @param {GitHub} github GitHub client
146
+ * @param {string} targetBranch The releaseable base branch
147
+ * @param {string} configFile Optional. The path to the manifest config file
148
+ * @param {string} manifestFile Optional. The path to the manifest versions file
149
+ * @returns {Manifest}
150
+ */
151
+ static fromManifest(github: GitHub, targetBranch: string, configFile?: string, manifestFile?: string, manifestOptionOverrides?: ManifestOptions): Promise<Manifest>;
152
+ /**
153
+ * Create a Manifest from explicit config in code. This assumes that the
154
+ * repository has a single component at the root path.
155
+ *
156
+ * @param {GitHub} github GitHub client
157
+ * @param {string} targetBranch The releaseable base branch
158
+ * @param {ReleaserConfig} config Release strategy options
159
+ * @param {ManifestOptions} manifestOptions Optional. Manifest options
160
+ * @param {string} manifestOptions.bootstrapSha If provided, use this SHA
161
+ * as the point to consider commits after
162
+ * @param {boolean} manifestOptions.alwaysLinkLocal Option for the node-workspace
163
+ * plugin
164
+ * @param {boolean} manifestOptions.separatePullRequests If true, create separate pull
165
+ * requests instead of a single manifest release pull request
166
+ * @param {PluginType[]} manifestOptions.plugins Any plugins to use for this repository
167
+ * @param {boolean} manifestOptions.fork If true, create pull requests from a fork. Defaults
168
+ * to `false`
169
+ * @param {string} manifestOptions.signoff Add a Signed-off-by annotation to the commit
170
+ * @param {string} manifestOptions.manifestPath Path to the versions manifest
171
+ * @param {string[]} manifestOptions.labels Labels that denote a pending, untagged release
172
+ * pull request. Defaults to `[autorelease: pending]`
173
+ * @param {string[]} manifestOptions.releaseLabels Labels to apply to a tagged release
174
+ * pull request. Defaults to `[autorelease: tagged]`
175
+ * @returns {Manifest}
176
+ */
177
+ static fromConfig(github: GitHub, targetBranch: string, config: ReleaserConfig, manifestOptions?: ManifestOptions, path?: string): Promise<Manifest>;
178
+ /**
179
+ * Build all candidate pull requests for this repository.
180
+ *
181
+ * Iterates through each path and builds a candidate pull request for component.
182
+ * Applies any configured plugins.
183
+ *
184
+ * @returns {ReleasePullRequest[]} The candidate pull requests to open or update.
185
+ */
186
+ buildPullRequests(): Promise<ReleasePullRequest[]>;
187
+ /**
188
+ * Opens/updates all candidate release pull requests for this repository.
189
+ *
190
+ * @returns {number[]} Pull request numbers of release pull requests
191
+ */
192
+ createPullRequests(): Promise<(PullRequest | undefined)[]>;
193
+ private createOrUpdatePullRequest;
194
+ private findMergedReleasePullRequests;
195
+ /**
196
+ * Find merged, untagged releases and build candidate releases to tag.
197
+ *
198
+ * @returns {CandidateRelease[]} List of release candidates
199
+ */
200
+ buildReleases(): Promise<CandidateRelease[]>;
201
+ /**
202
+ * Find merged, untagged releases. For each release, create a GitHub release,
203
+ * comment on the pull request used to generated it and update the pull request
204
+ * labels.
205
+ *
206
+ * @returns {GitHubRelease[]} List of created GitHub releases
207
+ */
208
+ createReleases(): Promise<(CreatedRelease | undefined)[]>;
209
+ private createReleasesForPullRequest;
210
+ private createRelease;
211
+ private getStrategiesByPath;
212
+ private getPathsByComponent;
69
213
  }
70
214
  export {};