@hyperfrontend/versioning 0.2.0 → 0.3.0
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 +14 -0
- package/README.md +8 -6
- package/changelog/index.cjs.js +15 -4
- package/changelog/index.cjs.js.map +1 -1
- package/changelog/index.esm.js +15 -4
- package/changelog/index.esm.js.map +1 -1
- package/changelog/parse/index.cjs.js +62 -4
- package/changelog/parse/index.cjs.js.map +1 -1
- package/changelog/parse/index.esm.js +62 -4
- package/changelog/parse/index.esm.js.map +1 -1
- package/changelog/parse/parser.d.ts +0 -6
- package/changelog/parse/parser.d.ts.map +1 -1
- package/commits/classify/index.cjs.js +8 -6
- package/commits/classify/index.cjs.js.map +1 -1
- package/commits/classify/index.d.ts +1 -1
- package/commits/classify/index.d.ts.map +1 -1
- package/commits/classify/index.esm.js +8 -7
- package/commits/classify/index.esm.js.map +1 -1
- package/commits/classify/project-scopes.d.ts +10 -0
- package/commits/classify/project-scopes.d.ts.map +1 -1
- package/commits/index.cjs.js +8 -6
- package/commits/index.cjs.js.map +1 -1
- package/commits/index.esm.js +8 -7
- package/commits/index.esm.js.map +1 -1
- package/flow/executor/index.cjs.js +12 -0
- package/flow/executor/index.cjs.js.map +1 -1
- package/flow/executor/index.esm.js +12 -0
- package/flow/executor/index.esm.js.map +1 -1
- package/flow/index.cjs.js +89 -36
- package/flow/index.cjs.js.map +1 -1
- package/flow/index.esm.js +88 -37
- package/flow/index.esm.js.map +1 -1
- package/flow/models/index.cjs.js +13 -0
- package/flow/models/index.cjs.js.map +1 -1
- package/flow/models/index.d.ts +1 -1
- package/flow/models/index.d.ts.map +1 -1
- package/flow/models/index.esm.js +13 -1
- package/flow/models/index.esm.js.map +1 -1
- package/flow/models/types.d.ts +33 -1
- package/flow/models/types.d.ts.map +1 -1
- package/flow/presets/index.cjs.js +84 -36
- package/flow/presets/index.cjs.js.map +1 -1
- package/flow/presets/index.esm.js +84 -36
- package/flow/presets/index.esm.js.map +1 -1
- package/flow/steps/analyze-commits.d.ts.map +1 -1
- package/flow/steps/generate-changelog.d.ts +5 -0
- package/flow/steps/generate-changelog.d.ts.map +1 -1
- package/flow/steps/index.cjs.js +85 -36
- package/flow/steps/index.cjs.js.map +1 -1
- package/flow/steps/index.d.ts +1 -1
- package/flow/steps/index.d.ts.map +1 -1
- package/flow/steps/index.esm.js +85 -37
- package/flow/steps/index.esm.js.map +1 -1
- package/index.cjs.js +9223 -9172
- package/index.cjs.js.map +1 -1
- package/index.d.ts +3 -1
- package/index.d.ts.map +1 -1
- package/index.esm.js +9220 -9173
- package/index.esm.js.map +1 -1
- package/package.json +14 -1
- package/workspace/discovery/changelog-path.d.ts +3 -7
- package/workspace/discovery/changelog-path.d.ts.map +1 -1
- package/workspace/discovery/index.cjs.js +84 -5
- package/workspace/discovery/index.cjs.js.map +1 -1
- package/workspace/discovery/index.esm.js +84 -5
- package/workspace/discovery/index.esm.js.map +1 -1
- package/workspace/index.cjs.js +84 -5
- package/workspace/index.cjs.js.map +1 -1
- package/workspace/index.esm.js +84 -5
- package/workspace/index.esm.js.map +1 -1
package/flow/models/index.cjs.js
CHANGED
|
@@ -23,6 +23,10 @@ const _Reflect = globalThis.Reflect;
|
|
|
23
23
|
*/
|
|
24
24
|
const createSet = (iterable) => _Reflect.construct(_Set, iterable ? [iterable] : []);
|
|
25
25
|
|
|
26
|
+
/**
|
|
27
|
+
* Default project name prefixes that can be stripped for scope matching.
|
|
28
|
+
*/
|
|
29
|
+
const DEFAULT_PROJECT_PREFIXES = ['lib-', 'app-', 'e2e-', 'tool-', 'plugin-', 'feature-', 'package-'];
|
|
26
30
|
/**
|
|
27
31
|
* Default scopes to exclude from changelogs.
|
|
28
32
|
*
|
|
@@ -109,6 +113,10 @@ const TOOL_PREFIX_MATCHER = scopePrefixMatcher(['tool-']);
|
|
|
109
113
|
*/
|
|
110
114
|
anyOf(CI_SCOPE_MATCHER, TOOLING_SCOPE_MATCHER, TOOL_PREFIX_MATCHER);
|
|
111
115
|
|
|
116
|
+
/**
|
|
117
|
+
* Default changelog filename.
|
|
118
|
+
*/
|
|
119
|
+
const DEFAULT_CHANGELOG_FILENAME = 'CHANGELOG.md';
|
|
112
120
|
/**
|
|
113
121
|
* Default scope filtering configuration.
|
|
114
122
|
*
|
|
@@ -120,6 +128,7 @@ const DEFAULT_SCOPE_FILTERING_CONFIG = {
|
|
|
120
128
|
includeScopes: [],
|
|
121
129
|
excludeScopes: DEFAULT_EXCLUDE_SCOPES,
|
|
122
130
|
trackDependencyChanges: false,
|
|
131
|
+
projectPrefixes: DEFAULT_PROJECT_PREFIXES,
|
|
123
132
|
infrastructure: undefined,
|
|
124
133
|
infrastructureMatcher: undefined,
|
|
125
134
|
};
|
|
@@ -143,8 +152,11 @@ const DEFAULT_FLOW_CONFIG = {
|
|
|
143
152
|
allowPrerelease: false,
|
|
144
153
|
prereleaseId: 'alpha',
|
|
145
154
|
releaseAs: undefined,
|
|
155
|
+
maxCommitFallback: 500,
|
|
146
156
|
repository: undefined,
|
|
147
157
|
scopeFiltering: DEFAULT_SCOPE_FILTERING_CONFIG,
|
|
158
|
+
changelogFileName: DEFAULT_CHANGELOG_FILENAME,
|
|
159
|
+
commitTypeToSection: undefined,
|
|
148
160
|
};
|
|
149
161
|
|
|
150
162
|
/**
|
|
@@ -391,6 +403,7 @@ function hasStep(flow, stepId) {
|
|
|
391
403
|
return flow.steps.some((s) => s.id === stepId);
|
|
392
404
|
}
|
|
393
405
|
|
|
406
|
+
exports.DEFAULT_CHANGELOG_FILENAME = DEFAULT_CHANGELOG_FILENAME;
|
|
394
407
|
exports.DEFAULT_FLOW_CONFIG = DEFAULT_FLOW_CONFIG;
|
|
395
408
|
exports.addStep = addStep;
|
|
396
409
|
exports.createFailedResult = createFailedResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/set/index.ts","../../../../../../../../../../libs/versioning/src/commits/classify/project-scopes.ts","../../../../../../../../../../libs/versioning/src/commits/classify/infrastructure.ts","../../../../../../../../../../libs/versioning/src/flow/models/types.ts","../../../../../../../../../../libs/versioning/src/flow/models/step.ts","../../../../../../../../../../libs/versioning/src/flow/models/flow.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":";;AAAA;;;;;;;;;;AAUG;AAEH;AACA,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG;AAC3B,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO;AAGnC;;;;;;AAMG;AACI,MAAM,SAAS,GAAG,CAAI,QAA6B,KAAqB,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;;
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/set/index.ts","../../../../../../../../../../libs/versioning/src/commits/classify/project-scopes.ts","../../../../../../../../../../libs/versioning/src/commits/classify/infrastructure.ts","../../../../../../../../../../libs/versioning/src/flow/models/types.ts","../../../../../../../../../../libs/versioning/src/flow/models/step.ts","../../../../../../../../../../libs/versioning/src/flow/models/flow.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":"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"}
|
package/flow/models/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export type { FlowConfig, FlowContext, FlowResult, FlowState, FlowStatus, FlowStepResult, FlowStepResultWithId, Logger } from './types';
|
|
2
2
|
export type { FlowStep, StepCondition, StepExecutor, CreateStepOptions } from './step';
|
|
3
|
-
export { DEFAULT_FLOW_CONFIG } from './types';
|
|
3
|
+
export { DEFAULT_FLOW_CONFIG, DEFAULT_CHANGELOG_FILENAME } from './types';
|
|
4
4
|
export type { VersionFlow, CreateFlowOptions } from './flow';
|
|
5
5
|
export { createStep, createNoopStep, createSkippedResult, createSuccessResult, createFailedResult } from './step';
|
|
6
6
|
export { createFlow, addStep, removeStep, insertStep, insertStepAfter, insertStepBefore, replaceStep, withConfig, getStep, hasStep, } from './flow';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/versioning/src/flow/models/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AACvI,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/versioning/src/flow/models/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AACvI,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AACtF,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;AACzE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AACjH,OAAO,EACL,UAAU,EACV,OAAO,EACP,UAAU,EACV,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,OAAO,EACP,OAAO,GACR,MAAM,QAAQ,CAAA"}
|
package/flow/models/index.esm.js
CHANGED
|
@@ -21,6 +21,10 @@ const _Reflect = globalThis.Reflect;
|
|
|
21
21
|
*/
|
|
22
22
|
const createSet = (iterable) => _Reflect.construct(_Set, iterable ? [iterable] : []);
|
|
23
23
|
|
|
24
|
+
/**
|
|
25
|
+
* Default project name prefixes that can be stripped for scope matching.
|
|
26
|
+
*/
|
|
27
|
+
const DEFAULT_PROJECT_PREFIXES = ['lib-', 'app-', 'e2e-', 'tool-', 'plugin-', 'feature-', 'package-'];
|
|
24
28
|
/**
|
|
25
29
|
* Default scopes to exclude from changelogs.
|
|
26
30
|
*
|
|
@@ -107,6 +111,10 @@ const TOOL_PREFIX_MATCHER = scopePrefixMatcher(['tool-']);
|
|
|
107
111
|
*/
|
|
108
112
|
anyOf(CI_SCOPE_MATCHER, TOOLING_SCOPE_MATCHER, TOOL_PREFIX_MATCHER);
|
|
109
113
|
|
|
114
|
+
/**
|
|
115
|
+
* Default changelog filename.
|
|
116
|
+
*/
|
|
117
|
+
const DEFAULT_CHANGELOG_FILENAME = 'CHANGELOG.md';
|
|
110
118
|
/**
|
|
111
119
|
* Default scope filtering configuration.
|
|
112
120
|
*
|
|
@@ -118,6 +126,7 @@ const DEFAULT_SCOPE_FILTERING_CONFIG = {
|
|
|
118
126
|
includeScopes: [],
|
|
119
127
|
excludeScopes: DEFAULT_EXCLUDE_SCOPES,
|
|
120
128
|
trackDependencyChanges: false,
|
|
129
|
+
projectPrefixes: DEFAULT_PROJECT_PREFIXES,
|
|
121
130
|
infrastructure: undefined,
|
|
122
131
|
infrastructureMatcher: undefined,
|
|
123
132
|
};
|
|
@@ -141,8 +150,11 @@ const DEFAULT_FLOW_CONFIG = {
|
|
|
141
150
|
allowPrerelease: false,
|
|
142
151
|
prereleaseId: 'alpha',
|
|
143
152
|
releaseAs: undefined,
|
|
153
|
+
maxCommitFallback: 500,
|
|
144
154
|
repository: undefined,
|
|
145
155
|
scopeFiltering: DEFAULT_SCOPE_FILTERING_CONFIG,
|
|
156
|
+
changelogFileName: DEFAULT_CHANGELOG_FILENAME,
|
|
157
|
+
commitTypeToSection: undefined,
|
|
146
158
|
};
|
|
147
159
|
|
|
148
160
|
/**
|
|
@@ -389,5 +401,5 @@ function hasStep(flow, stepId) {
|
|
|
389
401
|
return flow.steps.some((s) => s.id === stepId);
|
|
390
402
|
}
|
|
391
403
|
|
|
392
|
-
export { DEFAULT_FLOW_CONFIG, addStep, createFailedResult, createFlow, createNoopStep, createSkippedResult, createStep, createSuccessResult, getStep, hasStep, insertStep, insertStepAfter, insertStepBefore, removeStep, replaceStep, withConfig };
|
|
404
|
+
export { DEFAULT_CHANGELOG_FILENAME, DEFAULT_FLOW_CONFIG, addStep, createFailedResult, createFlow, createNoopStep, createSkippedResult, createStep, createSuccessResult, getStep, hasStep, insertStep, insertStepAfter, insertStepBefore, removeStep, replaceStep, withConfig };
|
|
393
405
|
//# sourceMappingURL=index.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/set/index.ts","../../../../../../../../../../libs/versioning/src/commits/classify/project-scopes.ts","../../../../../../../../../../libs/versioning/src/commits/classify/infrastructure.ts","../../../../../../../../../../libs/versioning/src/flow/models/types.ts","../../../../../../../../../../libs/versioning/src/flow/models/step.ts","../../../../../../../../../../libs/versioning/src/flow/models/flow.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":"AAAA;;;;;;;;;;AAUG;AAEH;AACA,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG;AAC3B,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO;AAGnC;;;;;;AAMG;AACI,MAAM,SAAS,GAAG,CAAI,QAA6B,KAAqB,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;;
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/set/index.ts","../../../../../../../../../../libs/versioning/src/commits/classify/project-scopes.ts","../../../../../../../../../../libs/versioning/src/commits/classify/infrastructure.ts","../../../../../../../../../../libs/versioning/src/flow/models/types.ts","../../../../../../../../../../libs/versioning/src/flow/models/step.ts","../../../../../../../../../../libs/versioning/src/flow/models/flow.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":"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"}
|
package/flow/models/types.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Logger } from '@hyperfrontend/logging';
|
|
2
2
|
import type { Tree } from '@hyperfrontend/project-scope';
|
|
3
3
|
import type { ChangelogEntry } from '../../changelog/models/entry';
|
|
4
|
+
import type { ChangelogSectionType } from '../../changelog/models/section';
|
|
4
5
|
import type { ClassificationResult, InfrastructureConfig, InfrastructureMatcher } from '../../commits/classify';
|
|
5
6
|
import type { ConventionalCommit } from '../../commits/models/conventional';
|
|
6
7
|
import type { GitClient } from '../../git/factory';
|
|
@@ -8,6 +9,10 @@ import type { Registry } from '../../registry/models/registry';
|
|
|
8
9
|
import type { RepositoryConfig, RepositoryResolution } from '../../repository/models';
|
|
9
10
|
import type { BumpType } from '../../semver/models/version';
|
|
10
11
|
export type { Logger } from '@hyperfrontend/logging';
|
|
12
|
+
/**
|
|
13
|
+
* Default changelog filename.
|
|
14
|
+
*/
|
|
15
|
+
export declare const DEFAULT_CHANGELOG_FILENAME = "CHANGELOG.md";
|
|
11
16
|
/**
|
|
12
17
|
* Accumulated state during flow execution.
|
|
13
18
|
* Each step can read previous state and contribute updates.
|
|
@@ -103,6 +108,13 @@ export interface ScopeFilteringConfig {
|
|
|
103
108
|
* @default false
|
|
104
109
|
*/
|
|
105
110
|
readonly trackDependencyChanges?: boolean;
|
|
111
|
+
/**
|
|
112
|
+
* Project name prefixes stripped for scope matching.
|
|
113
|
+
* Example: ['lib-', 'pkg-'] means 'lib-auth' matches scope 'auth'.
|
|
114
|
+
*
|
|
115
|
+
* @default ['lib-', 'app-', 'e2e-', 'tool-', 'plugin-', 'feature-', 'package-']
|
|
116
|
+
*/
|
|
117
|
+
readonly projectPrefixes?: readonly string[];
|
|
106
118
|
/**
|
|
107
119
|
* Infrastructure tracking configuration.
|
|
108
120
|
*
|
|
@@ -199,6 +211,15 @@ export interface FlowConfig {
|
|
|
199
211
|
readonly prereleaseId?: string;
|
|
200
212
|
/** Force a specific bump type, bypassing commit analysis */
|
|
201
213
|
readonly releaseAs?: 'major' | 'minor' | 'patch';
|
|
214
|
+
/**
|
|
215
|
+
* Maximum commits to analyze when no base commit is available.
|
|
216
|
+
* Used for first releases, history rewrites, and path-filtered queries.
|
|
217
|
+
*
|
|
218
|
+
* Set higher if you expect >500 commits between releases.
|
|
219
|
+
*
|
|
220
|
+
* @default 500
|
|
221
|
+
*/
|
|
222
|
+
readonly maxCommitFallback?: number;
|
|
202
223
|
/**
|
|
203
224
|
* Repository resolution configuration for compare URL generation.
|
|
204
225
|
*
|
|
@@ -217,11 +238,22 @@ export interface FlowConfig {
|
|
|
217
238
|
* conventional commit scope OR file changes within the project.
|
|
218
239
|
*/
|
|
219
240
|
readonly scopeFiltering?: ScopeFilteringConfig;
|
|
241
|
+
/**
|
|
242
|
+
* Changelog file name relative to project root.
|
|
243
|
+
*
|
|
244
|
+
* @default 'CHANGELOG.md'
|
|
245
|
+
*/
|
|
246
|
+
readonly changelogFileName?: string;
|
|
247
|
+
/**
|
|
248
|
+
* Custom mapping from commit type to changelog section.
|
|
249
|
+
* Merged with defaults; use `null` to exclude a type from changelog.
|
|
250
|
+
*/
|
|
251
|
+
readonly commitTypeToSection?: Partial<Record<string, ChangelogSectionType | null>>;
|
|
220
252
|
}
|
|
221
253
|
/**
|
|
222
254
|
* Default flow configuration values.
|
|
223
255
|
*/
|
|
224
|
-
export declare const DEFAULT_FLOW_CONFIG: Required<Omit<FlowConfig, 'repository' | 'scopeFiltering'>> & Pick<FlowConfig, 'repository' | 'scopeFiltering'>;
|
|
256
|
+
export declare const DEFAULT_FLOW_CONFIG: Required<Omit<FlowConfig, 'repository' | 'scopeFiltering' | 'commitTypeToSection'>> & Pick<FlowConfig, 'repository' | 'scopeFiltering' | 'commitTypeToSection'>;
|
|
225
257
|
/**
|
|
226
258
|
* Execution context passed to each step.
|
|
227
259
|
* Contains all resources and accumulated state.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/versioning/src/flow/models/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAC/G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AACrF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAE3D,YAAY,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEpD;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,8CAA8C;IAC9C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAEhC,8DAA8D;IAC9D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAEzC,oDAAoD;IACpD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAExC,8BAA8B;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAE7B,yCAAyC;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAE5B,0CAA0C;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAA;IAEhD,mFAAmF;IACnF,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAEpD;;;;;;OAMG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAE5C,gCAAgC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAA;IAExC,2CAA2C;IAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAE1C,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAE5B,2BAA2B;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IAEzB,0DAA0D;IAC1D,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IAEjC,0DAA0D;IAC1D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IAE5C;;;;;;;;OAQG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAEvC,gDAAgD;IAChD,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAChC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,CAAA;AAEvF;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAA;IAE1C;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAE1C;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAE1C;;;;;OAKG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,oBAAoB,CAAA;IAE9C;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;CACvD;AAED;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,EAAE,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,gBAAgB,GAAG,uBAAuB,CAAC,CAAC,GAAG;IAC9H,cAAc,EAAE,SAAS,CAAA;IACzB,qBAAqB,EAAE,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/versioning/src/flow/models/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -2341,12 +2341,12 @@ function shouldPreserveScope(source) {
|
|
|
2341
2341
|
* // Returns: ['app-demo', 'demo']
|
|
2342
2342
|
*/
|
|
2343
2343
|
function deriveProjectScopes(options) {
|
|
2344
|
-
const { projectName, packageName, additionalScopes = [] } = options;
|
|
2344
|
+
const { projectName, packageName, additionalScopes = [], prefixes = DEFAULT_PROJECT_PREFIXES } = options;
|
|
2345
2345
|
const scopes = createSet();
|
|
2346
2346
|
// Always include the full project name
|
|
2347
2347
|
scopes.add(projectName);
|
|
2348
2348
|
// Add variations based on common prefixes
|
|
2349
|
-
const prefixVariations = extractPrefixVariations(projectName);
|
|
2349
|
+
const prefixVariations = extractPrefixVariations(projectName, prefixes);
|
|
2350
2350
|
for (const variation of prefixVariations) {
|
|
2351
2351
|
scopes.add(variation);
|
|
2352
2352
|
}
|
|
@@ -2366,18 +2366,19 @@ function deriveProjectScopes(options) {
|
|
|
2366
2366
|
return [...scopes];
|
|
2367
2367
|
}
|
|
2368
2368
|
/**
|
|
2369
|
-
*
|
|
2369
|
+
* Default project name prefixes that can be stripped for scope matching.
|
|
2370
2370
|
*/
|
|
2371
|
-
const
|
|
2371
|
+
const DEFAULT_PROJECT_PREFIXES = ['lib-', 'app-', 'e2e-', 'tool-', 'plugin-', 'feature-', 'package-'];
|
|
2372
2372
|
/**
|
|
2373
2373
|
* Generates scope variations by stripping recognized project prefixes.
|
|
2374
2374
|
*
|
|
2375
2375
|
* @param projectName - The project name to extract variations from
|
|
2376
|
+
* @param prefixes - Prefixes to check and strip
|
|
2376
2377
|
* @returns Array of scope name variations
|
|
2377
2378
|
*/
|
|
2378
|
-
function extractPrefixVariations(projectName) {
|
|
2379
|
+
function extractPrefixVariations(projectName, prefixes) {
|
|
2379
2380
|
const variations = [];
|
|
2380
|
-
for (const prefix of
|
|
2381
|
+
for (const prefix of prefixes) {
|
|
2381
2382
|
if (projectName.startsWith(prefix)) {
|
|
2382
2383
|
const withoutPrefix = projectName.slice(prefix.length);
|
|
2383
2384
|
if (withoutPrefix) {
|
|
@@ -3221,6 +3222,10 @@ function splitLines(message) {
|
|
|
3221
3222
|
return lines;
|
|
3222
3223
|
}
|
|
3223
3224
|
|
|
3225
|
+
/**
|
|
3226
|
+
* Default changelog filename.
|
|
3227
|
+
*/
|
|
3228
|
+
const DEFAULT_CHANGELOG_FILENAME = 'CHANGELOG.md';
|
|
3224
3229
|
/**
|
|
3225
3230
|
* Default scope filtering configuration.
|
|
3226
3231
|
*
|
|
@@ -3232,6 +3237,7 @@ const DEFAULT_SCOPE_FILTERING_CONFIG = {
|
|
|
3232
3237
|
includeScopes: [],
|
|
3233
3238
|
excludeScopes: DEFAULT_EXCLUDE_SCOPES,
|
|
3234
3239
|
trackDependencyChanges: false,
|
|
3240
|
+
projectPrefixes: DEFAULT_PROJECT_PREFIXES,
|
|
3235
3241
|
infrastructure: undefined,
|
|
3236
3242
|
infrastructureMatcher: undefined,
|
|
3237
3243
|
};
|
|
@@ -3258,6 +3264,7 @@ const ANALYZE_COMMITS_STEP_ID = 'analyze-commits';
|
|
|
3258
3264
|
function createAnalyzeCommitsStep() {
|
|
3259
3265
|
return createStep(ANALYZE_COMMITS_STEP_ID, 'Analyze Commits', async (ctx) => {
|
|
3260
3266
|
const { git, projectName, projectRoot, packageName, workspaceRoot, config, logger, state } = ctx;
|
|
3267
|
+
const maxFallback = config.maxCommitFallback ?? 500;
|
|
3261
3268
|
// Use publishedCommit from registry (set by fetch-registry step)
|
|
3262
3269
|
const { publishedCommit, isFirstRelease } = state;
|
|
3263
3270
|
let rawCommits;
|
|
@@ -3274,13 +3281,13 @@ function createAnalyzeCommitsStep() {
|
|
|
3274
3281
|
logger.warn(`Published commit ${publishedCommit.slice(0, 7)} not found in history. ` +
|
|
3275
3282
|
`This may indicate a rebase or force push occurred after publishing v${state.publishedVersion}. ` +
|
|
3276
3283
|
`Falling back to recent commit analysis.`);
|
|
3277
|
-
rawCommits = git.getCommitLog({ maxCount:
|
|
3284
|
+
rawCommits = git.getCommitLog({ maxCount: maxFallback });
|
|
3278
3285
|
// effectiveBaseCommit stays null - no compare URL will be generated
|
|
3279
3286
|
}
|
|
3280
3287
|
}
|
|
3281
3288
|
else {
|
|
3282
3289
|
// First release or no published version
|
|
3283
|
-
rawCommits = git.getCommitLog({ maxCount:
|
|
3290
|
+
rawCommits = git.getCommitLog({ maxCount: maxFallback });
|
|
3284
3291
|
logger.debug(`First release - analyzing up to ${rawCommits.length} commits`);
|
|
3285
3292
|
}
|
|
3286
3293
|
// Get scope filtering configuration
|
|
@@ -3322,7 +3329,7 @@ function createAnalyzeCommitsStep() {
|
|
|
3322
3329
|
const relativePath = getRelativePath(workspaceRoot, projectRoot);
|
|
3323
3330
|
const pathFilteredCommits = effectiveBaseCommit
|
|
3324
3331
|
? git.getCommitsSince(effectiveBaseCommit, { path: relativePath })
|
|
3325
|
-
: git.getCommitLog({ maxCount:
|
|
3332
|
+
: git.getCommitLog({ maxCount: maxFallback, path: relativePath });
|
|
3326
3333
|
fileCommitHashes = createSet(pathFilteredCommits.map((c) => c.hash));
|
|
3327
3334
|
logger.debug(`Found ${fileCommitHashes.size} commits touching ${relativePath}`);
|
|
3328
3335
|
}
|
|
@@ -3331,14 +3338,15 @@ function createAnalyzeCommitsStep() {
|
|
|
3331
3338
|
projectName,
|
|
3332
3339
|
packageName,
|
|
3333
3340
|
additionalScopes: scopeFilteringConfig.includeScopes,
|
|
3341
|
+
prefixes: scopeFilteringConfig.projectPrefixes,
|
|
3334
3342
|
});
|
|
3335
3343
|
logger.debug(`Project scopes: ${projectScopes.join(', ')}`);
|
|
3336
3344
|
// Build infrastructure commit hashes for file-based infrastructure detection
|
|
3337
|
-
const infrastructureCommitHashes = buildInfrastructureCommitHashes(git, effectiveBaseCommit, rawCommits, parsedCommits, scopeFilteringConfig, logger);
|
|
3345
|
+
const infrastructureCommitHashes = buildInfrastructureCommitHashes(git, effectiveBaseCommit, rawCommits, parsedCommits, scopeFilteringConfig, logger, maxFallback);
|
|
3338
3346
|
// Build dependency commit map if tracking is enabled (Phase 4)
|
|
3339
3347
|
let dependencyCommitMap;
|
|
3340
3348
|
if (scopeFilteringConfig.trackDependencyChanges) {
|
|
3341
|
-
dependencyCommitMap = buildDependencyCommitMap(git, workspaceRoot, projectName, effectiveBaseCommit, logger);
|
|
3349
|
+
dependencyCommitMap = buildDependencyCommitMap(git, workspaceRoot, projectName, effectiveBaseCommit, logger, maxFallback);
|
|
3342
3350
|
}
|
|
3343
3351
|
// Create classification context
|
|
3344
3352
|
const classificationContext = createClassificationContext(projectScopes, fileCommitHashes, {
|
|
@@ -3471,9 +3479,10 @@ function buildSummaryMessage(includedCount, totalCount, summary, strategy) {
|
|
|
3471
3479
|
* @param config - Scope filtering configuration
|
|
3472
3480
|
* @param logger - Logger with debug method for output
|
|
3473
3481
|
* @param logger.debug - Debug logging function
|
|
3482
|
+
* @param maxFallback - Maximum commits to query when baseCommit is null
|
|
3474
3483
|
* @returns Set of commit hashes classified as infrastructure
|
|
3475
3484
|
*/
|
|
3476
|
-
function buildInfrastructureCommitHashes(git, baseCommit, rawCommits, parsedCommits, config, logger) {
|
|
3485
|
+
function buildInfrastructureCommitHashes(git, baseCommit, rawCommits, parsedCommits, config, logger, maxFallback) {
|
|
3477
3486
|
// Collect all infrastructure commit hashes
|
|
3478
3487
|
let infraHashes = createSet();
|
|
3479
3488
|
// Method 1: Path-based detection (query git for commits touching infra paths)
|
|
@@ -3482,7 +3491,7 @@ function buildInfrastructureCommitHashes(git, baseCommit, rawCommits, parsedComm
|
|
|
3482
3491
|
for (const infraPath of infraPaths) {
|
|
3483
3492
|
const pathCommits = baseCommit
|
|
3484
3493
|
? git.getCommitsSince(baseCommit, { path: infraPath })
|
|
3485
|
-
: git.getCommitLog({ maxCount:
|
|
3494
|
+
: git.getCommitLog({ maxCount: maxFallback, path: infraPath });
|
|
3486
3495
|
for (const commit of pathCommits) {
|
|
3487
3496
|
infraHashes = infraHashes.add(commit.hash);
|
|
3488
3497
|
}
|
|
@@ -3550,9 +3559,10 @@ function combineMatcher(a, b) {
|
|
|
3550
3559
|
* @param baseCommit - Base commit hash for commit range (null for first release/fallback)
|
|
3551
3560
|
* @param logger - Logger with debug method for output
|
|
3552
3561
|
* @param logger.debug - Debug logging function
|
|
3562
|
+
* @param maxFallback - Maximum commits to query when baseCommit is null
|
|
3553
3563
|
* @returns Map of dependency names to commit hashes touching that dependency
|
|
3554
3564
|
*/
|
|
3555
|
-
function buildDependencyCommitMap(git, workspaceRoot, projectName, baseCommit, logger) {
|
|
3565
|
+
function buildDependencyCommitMap(git, workspaceRoot, projectName, baseCommit, logger, maxFallback) {
|
|
3556
3566
|
let dependencyMap = createMap();
|
|
3557
3567
|
try {
|
|
3558
3568
|
// Discover all projects in workspace using lib-project-scope
|
|
@@ -3577,7 +3587,7 @@ function buildDependencyCommitMap(git, workspaceRoot, projectName, baseCommit, l
|
|
|
3577
3587
|
// Query git for commits touching this dependency's path
|
|
3578
3588
|
const depCommits = baseCommit
|
|
3579
3589
|
? git.getCommitsSince(baseCommit, { path: depRoot })
|
|
3580
|
-
: git.getCommitLog({ maxCount:
|
|
3590
|
+
: git.getCommitLog({ maxCount: maxFallback, path: depRoot });
|
|
3581
3591
|
if (depCommits.length > 0) {
|
|
3582
3592
|
const hashSet = createSet(depCommits.map((c) => c.hash));
|
|
3583
3593
|
dependencyMap = dependencyMap.set(dep.target, hashSet);
|
|
@@ -5244,11 +5254,22 @@ function isWhitespace(char) {
|
|
|
5244
5254
|
}
|
|
5245
5255
|
|
|
5246
5256
|
/**
|
|
5247
|
-
*
|
|
5257
|
+
* Validates that a URL is actually a GitHub URL by parsing it properly.
|
|
5258
|
+
* This prevents SSRF attacks where 'github.com' could appear in path/query.
|
|
5248
5259
|
*
|
|
5249
|
-
*
|
|
5250
|
-
*
|
|
5260
|
+
* @param url - The URL string to validate
|
|
5261
|
+
* @returns True if the URL host is github.com or a subdomain
|
|
5251
5262
|
*/
|
|
5263
|
+
function isGitHubUrl(url) {
|
|
5264
|
+
try {
|
|
5265
|
+
const parsed = createURL(url);
|
|
5266
|
+
// Check that the host is exactly github.com or ends with .github.com
|
|
5267
|
+
return parsed.host === 'github.com' || parsed.host.endsWith('.github.com');
|
|
5268
|
+
}
|
|
5269
|
+
catch {
|
|
5270
|
+
return false;
|
|
5271
|
+
}
|
|
5272
|
+
}
|
|
5252
5273
|
/**
|
|
5253
5274
|
* Parses a changelog markdown string into a Changelog object.
|
|
5254
5275
|
*
|
|
@@ -5316,7 +5337,7 @@ function parseHeader(state) {
|
|
|
5316
5337
|
description.push(`[${token.value}](${nextToken.value})`);
|
|
5317
5338
|
links.push({ label: token.value, url: nextToken.value });
|
|
5318
5339
|
// Try to detect repository URL
|
|
5319
|
-
if (!state.repositoryUrl && nextToken.value
|
|
5340
|
+
if (!state.repositoryUrl && isGitHubUrl(nextToken.value)) {
|
|
5320
5341
|
state.repositoryUrl = extractRepoUrl(nextToken.value);
|
|
5321
5342
|
}
|
|
5322
5343
|
advance(state); // skip link-text
|
|
@@ -6118,7 +6139,7 @@ const GENERATE_CHANGELOG_STEP_ID = 'generate-changelog';
|
|
|
6118
6139
|
/**
|
|
6119
6140
|
* Maps conventional commit types to changelog section types.
|
|
6120
6141
|
*/
|
|
6121
|
-
const
|
|
6142
|
+
const DEFAULT_COMMIT_TYPE_TO_SECTION = {
|
|
6122
6143
|
feat: 'features',
|
|
6123
6144
|
fix: 'fixes',
|
|
6124
6145
|
perf: 'performance',
|
|
@@ -6131,6 +6152,18 @@ const COMMIT_TYPE_TO_SECTION = {
|
|
|
6131
6152
|
chore: 'chores',
|
|
6132
6153
|
style: 'other',
|
|
6133
6154
|
};
|
|
6155
|
+
/**
|
|
6156
|
+
* Resolves the commit type to section mapping by merging config with defaults.
|
|
6157
|
+
*
|
|
6158
|
+
* @param configMapping - User-provided partial mapping from FlowConfig
|
|
6159
|
+
* @returns Resolved mapping with user overrides applied
|
|
6160
|
+
*/
|
|
6161
|
+
function resolveCommitTypeMapping(configMapping) {
|
|
6162
|
+
if (!configMapping) {
|
|
6163
|
+
return DEFAULT_COMMIT_TYPE_TO_SECTION;
|
|
6164
|
+
}
|
|
6165
|
+
return { ...DEFAULT_COMMIT_TYPE_TO_SECTION, ...configMapping };
|
|
6166
|
+
}
|
|
6134
6167
|
/**
|
|
6135
6168
|
* Checks if a commit source represents an indirect change.
|
|
6136
6169
|
*
|
|
@@ -6144,16 +6177,22 @@ function isIndirectSource(source) {
|
|
|
6144
6177
|
* Groups classified commits by their section type.
|
|
6145
6178
|
*
|
|
6146
6179
|
* @param commits - Array of classified commits
|
|
6180
|
+
* @param mapping - Commit type to section mapping
|
|
6147
6181
|
* @returns Record of section type to classified commits
|
|
6148
6182
|
*/
|
|
6149
|
-
function groupClassifiedCommitsBySection(commits) {
|
|
6183
|
+
function groupClassifiedCommitsBySection(commits, mapping) {
|
|
6150
6184
|
const groups = {};
|
|
6151
6185
|
for (const classified of commits) {
|
|
6152
|
-
const sectionType =
|
|
6153
|
-
if (
|
|
6154
|
-
|
|
6186
|
+
const sectionType = mapping[classified.commit.type ?? 'chore'];
|
|
6187
|
+
// Skip if explicitly excluded (null)
|
|
6188
|
+
if (sectionType === null)
|
|
6189
|
+
continue;
|
|
6190
|
+
// Fallback to 'chores' for unmapped types
|
|
6191
|
+
const resolvedSection = sectionType ?? 'chores';
|
|
6192
|
+
if (!groups[resolvedSection]) {
|
|
6193
|
+
groups[resolvedSection] = [];
|
|
6155
6194
|
}
|
|
6156
|
-
groups[
|
|
6195
|
+
groups[resolvedSection].push(classified);
|
|
6157
6196
|
}
|
|
6158
6197
|
return groups;
|
|
6159
6198
|
}
|
|
@@ -6161,16 +6200,22 @@ function groupClassifiedCommitsBySection(commits) {
|
|
|
6161
6200
|
* Groups commits by their section type.
|
|
6162
6201
|
*
|
|
6163
6202
|
* @param commits - Array of conventional commits
|
|
6203
|
+
* @param mapping - Commit type to section mapping
|
|
6164
6204
|
* @returns Record of section type to commits
|
|
6165
6205
|
*/
|
|
6166
|
-
function groupCommitsBySection(commits) {
|
|
6206
|
+
function groupCommitsBySection(commits, mapping) {
|
|
6167
6207
|
const groups = {};
|
|
6168
6208
|
for (const commit of commits) {
|
|
6169
|
-
const sectionType =
|
|
6170
|
-
if (
|
|
6171
|
-
|
|
6209
|
+
const sectionType = mapping[commit.type ?? 'chore'];
|
|
6210
|
+
// Skip if explicitly excluded (null)
|
|
6211
|
+
if (sectionType === null)
|
|
6212
|
+
continue;
|
|
6213
|
+
// Fallback to 'chores' for unmapped types
|
|
6214
|
+
const resolvedSection = sectionType ?? 'chores';
|
|
6215
|
+
if (!groups[resolvedSection]) {
|
|
6216
|
+
groups[resolvedSection] = [];
|
|
6172
6217
|
}
|
|
6173
|
-
groups[
|
|
6218
|
+
groups[resolvedSection].push(commit);
|
|
6174
6219
|
}
|
|
6175
6220
|
return groups;
|
|
6176
6221
|
}
|
|
@@ -6238,6 +6283,8 @@ function createGenerateChangelogStep() {
|
|
|
6238
6283
|
return createStep(GENERATE_CHANGELOG_STEP_ID, 'Generate Changelog Entry', async (ctx) => {
|
|
6239
6284
|
const { config, state } = ctx;
|
|
6240
6285
|
const { commits, nextVersion, bumpType } = state;
|
|
6286
|
+
// Resolve commit type to section mapping
|
|
6287
|
+
const commitTypeMapping = resolveCommitTypeMapping(config.commitTypeToSection);
|
|
6241
6288
|
// Skip if no bump needed
|
|
6242
6289
|
if (!nextVersion || bumpType === 'none') {
|
|
6243
6290
|
return createSkippedResult('No version bump, skipping changelog generation');
|
|
@@ -6299,7 +6346,7 @@ function createGenerateChangelogStep() {
|
|
|
6299
6346
|
})));
|
|
6300
6347
|
}
|
|
6301
6348
|
// Group direct commits by section
|
|
6302
|
-
const groupedDirect = groupClassifiedCommitsBySection(directCommits);
|
|
6349
|
+
const groupedDirect = groupClassifiedCommitsBySection(directCommits, commitTypeMapping);
|
|
6303
6350
|
// Add other sections in conventional order (direct commits only)
|
|
6304
6351
|
const sectionOrder = [
|
|
6305
6352
|
{ type: 'features', heading: 'Features' },
|
|
@@ -6327,7 +6374,7 @@ function createGenerateChangelogStep() {
|
|
|
6327
6374
|
}
|
|
6328
6375
|
else {
|
|
6329
6376
|
// Fallback: use commits without classification (backward compatibility)
|
|
6330
|
-
const grouped = groupCommitsBySection(commits);
|
|
6377
|
+
const grouped = groupCommitsBySection(commits, commitTypeMapping);
|
|
6331
6378
|
// Add breaking changes section first if any
|
|
6332
6379
|
const breakingCommits = commits.filter((c) => c.breaking);
|
|
6333
6380
|
if (breakingCommits.length > 0) {
|
|
@@ -6403,14 +6450,15 @@ function createWriteChangelogStep() {
|
|
|
6403
6450
|
if (!nextVersion || bumpType === 'none' || !changelogEntry || config.skipChangelog) {
|
|
6404
6451
|
return createSkippedResult('No changelog to write');
|
|
6405
6452
|
}
|
|
6406
|
-
const
|
|
6453
|
+
const changelogFileName = config.changelogFileName ?? DEFAULT_CHANGELOG_FILENAME;
|
|
6454
|
+
const changelogPath = `${projectRoot}/${changelogFileName}`;
|
|
6407
6455
|
let existingContent = '';
|
|
6408
6456
|
// Read existing changelog
|
|
6409
6457
|
try {
|
|
6410
6458
|
existingContent = tree.read(changelogPath, 'utf-8') ?? '';
|
|
6411
6459
|
}
|
|
6412
6460
|
catch {
|
|
6413
|
-
logger.debug(
|
|
6461
|
+
logger.debug(`No existing ${changelogFileName} found`);
|
|
6414
6462
|
}
|
|
6415
6463
|
// If no existing content, create new changelog
|
|
6416
6464
|
if (!existingContent.trim()) {
|
|
@@ -6428,7 +6476,7 @@ function createWriteChangelogStep() {
|
|
|
6428
6476
|
stateUpdates: {
|
|
6429
6477
|
modifiedFiles: [...(state.modifiedFiles ?? []), changelogPath],
|
|
6430
6478
|
},
|
|
6431
|
-
message: `Created
|
|
6479
|
+
message: `Created ${changelogFileName} with version ${nextVersion}`,
|
|
6432
6480
|
};
|
|
6433
6481
|
}
|
|
6434
6482
|
// Parse existing and add entry
|
|
@@ -6462,7 +6510,7 @@ function createWriteChangelogStep() {
|
|
|
6462
6510
|
stateUpdates: {
|
|
6463
6511
|
modifiedFiles: [...(state.modifiedFiles ?? []), changelogPath],
|
|
6464
6512
|
},
|
|
6465
|
-
message: `Updated
|
|
6513
|
+
message: `Updated ${changelogFileName} with version ${nextVersion}`,
|
|
6466
6514
|
};
|
|
6467
6515
|
}, {
|
|
6468
6516
|
dependsOn: ['generate-changelog'],
|