git-release-manager 0.0.4 → 0.0.5
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/dist/cli/types/BranchCliArgs.js +3 -0
- package/dist/cli/types/BranchCliArgs.js.map +1 -0
- package/dist/{src/cli/types/ChnagelogCliArgs.js → cli/types/ChangelogCliArgs.js} +1 -1
- package/dist/cli/types/ChangelogCliArgs.js.map +1 -0
- package/dist/cli/types/CliArgs.js +3 -0
- package/dist/cli/types/CliArgs.js.map +1 -0
- package/dist/cli/types/VersionCliArgs.js +3 -0
- package/dist/cli/types/VersionCliArgs.js.map +1 -0
- package/dist/config/configLoader.js +61 -0
- package/dist/config/configLoader.js.map +1 -0
- package/dist/config/configManager.js +66 -0
- package/dist/config/configManager.js.map +1 -0
- package/dist/config/constants.js +10 -0
- package/dist/config/constants.js.map +1 -0
- package/dist/config/defaults/config.json +232 -0
- package/dist/config/types/ChannelType.js +3 -0
- package/dist/config/types/ChannelType.js.map +1 -0
- package/dist/config/types/CommitType.js.map +1 -0
- package/dist/config/types/Config.js +3 -0
- package/dist/config/types/Config.js.map +1 -0
- package/dist/{src/core/types/RangeInfo.js → config/types/FileGroups.js} +1 -1
- package/dist/config/types/FileGroups.js.map +1 -0
- package/dist/{src/git → config}/types/LinkType.js.map +1 -1
- package/dist/config/types/MentionType.js.map +1 -0
- package/dist/config/types/NoteType.js +3 -0
- package/dist/config/types/NoteType.js.map +1 -0
- package/dist/config/types/Options.js +3 -0
- package/dist/config/types/Options.js.map +1 -0
- package/dist/core/changelog/app.js +40 -0
- package/dist/core/changelog/app.js.map +1 -0
- package/dist/index.js +89 -0
- package/dist/index.js.map +1 -0
- package/dist/modules/branch/BranchController.js +62 -0
- package/dist/modules/branch/BranchController.js.map +1 -0
- package/dist/modules/branch/BranchManager.js +194 -0
- package/dist/modules/branch/BranchManager.js.map +1 -0
- package/dist/modules/changelog/ChangelogValidator.js +19 -0
- package/dist/modules/changelog/ChangelogValidator.js.map +1 -0
- package/dist/modules/changelog/templateOperations.js +144 -0
- package/dist/modules/changelog/templateOperations.js.map +1 -0
- package/dist/modules/changes/types/ChangeInformation.js.map +1 -0
- package/dist/modules/changes/types/Context.js.map +1 -0
- package/dist/modules/changes/types/RangeInfo.js +8 -0
- package/dist/modules/changes/types/RangeInfo.js.map +1 -0
- package/dist/{src/core/types/RangeDetails.js → modules/changes/types/RangeSummary.js} +1 -1
- package/dist/modules/changes/types/RangeSummary.js.map +1 -0
- package/dist/modules/changes/types/ReferenceTypesEnum.js.map +1 -0
- package/dist/{src → modules}/git/commits/commitProcessor.js +5 -7
- package/dist/modules/git/commits/commitProcessor.js.map +1 -0
- package/dist/{src → modules}/git/commits/gitLogFetcher.js +2 -2
- package/dist/modules/git/commits/gitLogFetcher.js.map +1 -0
- package/dist/modules/git/commits/index.js +136 -0
- package/dist/modules/git/commits/index.js.map +1 -0
- package/dist/{src → modules}/git/commits/profileHandler.js +13 -8
- package/dist/modules/git/commits/profileHandler.js.map +1 -0
- package/dist/{src → modules}/git/commits/regexHandlers.js +5 -5
- package/dist/modules/git/commits/regexHandlers.js.map +1 -0
- package/dist/modules/git/context/branchHandler.js +18 -0
- package/dist/modules/git/context/branchHandler.js.map +1 -0
- package/dist/modules/git/context/commitHandler.js +29 -0
- package/dist/modules/git/context/commitHandler.js.map +1 -0
- package/dist/{src → modules}/git/context/index.js +6 -11
- package/dist/modules/git/context/index.js.map +1 -0
- package/dist/{src → modules}/git/context/remoteHandler.js +3 -8
- package/dist/modules/git/context/remoteHandler.js.map +1 -0
- package/dist/modules/git/context/statusHandler.js +16 -0
- package/dist/modules/git/context/statusHandler.js.map +1 -0
- package/dist/modules/git/context/tagHandler.js +28 -0
- package/dist/modules/git/context/tagHandler.js.map +1 -0
- package/dist/modules/git/gitOperations.js +56 -0
- package/dist/modules/git/gitOperations.js.map +1 -0
- package/dist/modules/git/types/Author.js.map +1 -0
- package/dist/modules/git/types/Branch.js +3 -0
- package/dist/modules/git/types/Branch.js.map +1 -0
- package/dist/modules/git/types/BranchInfo.js.map +1 -0
- package/dist/modules/git/types/CommitContent.js.map +1 -0
- package/dist/modules/git/types/CommitInfo.js.map +1 -0
- package/dist/modules/git/types/CommitType.js +3 -0
- package/dist/modules/git/types/CommitType.js.map +1 -0
- package/dist/modules/git/types/GitCommit.js.map +1 -0
- package/dist/modules/git/types/GitReference.js +3 -0
- package/dist/modules/git/types/GitReference.js.map +1 -0
- package/dist/{src → modules}/git/types/Link.js.map +1 -1
- package/dist/modules/git/types/Mention.js.map +1 -0
- package/dist/{src → modules}/git/types/Note.js.map +1 -1
- package/dist/modules/git/types/RemoteInfo.js.map +1 -0
- package/dist/modules/git/types/Repository.js.map +1 -0
- package/dist/modules/git/types/StatusInfo.js.map +1 -0
- package/dist/modules/git/types/Tag.js +3 -0
- package/dist/modules/git/types/Tag.js.map +1 -0
- package/dist/modules/git/types/TagInfo.js.map +1 -0
- package/dist/{src → modules}/git/utils/branchUtils.js +5 -7
- package/dist/modules/git/utils/branchUtils.js.map +1 -0
- package/dist/{src → modules}/git/utils/commitUtils.js +3 -5
- package/dist/modules/git/utils/commitUtils.js.map +1 -0
- package/dist/modules/git/utils/logUtils.js.map +1 -0
- package/dist/modules/git/utils/rangeOperations.js.map +1 -0
- package/dist/modules/git/utils/refUtils.js.map +1 -0
- package/dist/{src → modules}/git/utils/referenceUtils.js +19 -22
- package/dist/modules/git/utils/referenceUtils.js.map +1 -0
- package/dist/{src → modules}/git/utils/tagUtils.js +7 -6
- package/dist/modules/git/utils/tagUtils.js.map +1 -0
- package/dist/{src → modules}/output/writer.js +2 -2
- package/dist/modules/output/writer.js.map +1 -0
- package/dist/{src → modules}/sections/contributors.js +4 -4
- package/dist/modules/sections/contributors.js.map +1 -0
- package/dist/{src → modules}/sections/grouping.js +12 -18
- package/dist/modules/sections/grouping.js.map +1 -0
- package/dist/{src → modules}/sections/index.js +1 -2
- package/dist/modules/sections/index.js.map +1 -0
- package/dist/{src → modules}/sections/summarizing.js +11 -15
- package/dist/modules/sections/summarizing.js.map +1 -0
- package/dist/modules/sections/types/Contributor.js +3 -0
- package/dist/modules/sections/types/Contributor.js.map +1 -0
- package/dist/modules/sections/types/Group.js.map +1 -0
- package/dist/modules/sections/types/SectionSummary.js +3 -0
- package/dist/modules/sections/types/SectionSummary.js.map +1 -0
- package/dist/modules/sections/types/Sections.js.map +1 -0
- package/dist/modules/version/GitVersionManager.js +153 -0
- package/dist/modules/version/GitVersionManager.js.map +1 -0
- package/dist/modules/version/ReleaseManager.js +69 -0
- package/dist/modules/version/ReleaseManager.js.map +1 -0
- package/dist/modules/version/VersionManager.js +77 -0
- package/dist/modules/version/VersionManager.js.map +1 -0
- package/dist/modules/version/VersionValidator.js +31 -0
- package/dist/modules/version/VersionValidator.js.map +1 -0
- package/dist/modules/version/types/const.js +3 -0
- package/dist/modules/version/types/const.js.map +1 -0
- package/dist/modules/version/versionFormatter.js +104 -0
- package/dist/modules/version/versionFormatter.js.map +1 -0
- package/dist/modules/version/versionHelper.js +9 -0
- package/dist/modules/version/versionHelper.js.map +1 -0
- package/dist/src/cli/types/BranchCliArgs.js +3 -0
- package/dist/src/cli/types/BranchCliArgs.js.map +1 -0
- package/dist/src/cli/types/VersionCliArgs.js +3 -0
- package/dist/src/cli/types/VersionCliArgs.js.map +1 -0
- package/dist/src/config/defaults/config.json +231 -231
- package/dist/src/core/changelog/app.js +5 -4
- package/dist/src/core/changelog/app.js.map +1 -1
- package/dist/src/index.js +132 -14
- package/dist/src/index.js.map +1 -1
- package/dist/src/modules/changelog/templateOperations.js +37 -24
- package/dist/src/modules/changelog/templateOperations.js.map +1 -1
- package/dist/src/modules/git/commits/commitProcessor.js +2 -4
- package/dist/src/modules/git/commits/commitProcessor.js.map +1 -1
- package/dist/src/modules/git/commits/index.js +26 -26
- package/dist/src/modules/git/commits/index.js.map +1 -1
- package/dist/src/modules/git/commits/profileHandler.js +5 -2
- package/dist/src/modules/git/commits/profileHandler.js.map +1 -1
- package/dist/src/modules/git/context/branchHandler.js +4 -9
- package/dist/src/modules/git/context/branchHandler.js.map +1 -1
- package/dist/src/modules/git/context/commitHandler.js +9 -14
- package/dist/src/modules/git/context/commitHandler.js.map +1 -1
- package/dist/src/modules/git/context/index.js +5 -7
- package/dist/src/modules/git/context/index.js.map +1 -1
- package/dist/src/modules/git/context/remoteHandler.js +3 -8
- package/dist/src/modules/git/context/remoteHandler.js.map +1 -1
- package/dist/src/modules/git/context/statusHandler.js +3 -8
- package/dist/src/modules/git/context/statusHandler.js.map +1 -1
- package/dist/src/modules/git/context/tagHandler.js +3 -8
- package/dist/src/modules/git/context/tagHandler.js.map +1 -1
- package/dist/src/modules/git/gitOperations.js +10 -10
- package/dist/src/modules/git/gitOperations.js.map +1 -1
- package/dist/src/modules/git/utils/branchUtils.js +2 -4
- package/dist/src/modules/git/utils/branchUtils.js.map +1 -1
- package/dist/src/modules/git/utils/commitUtils.js +2 -4
- package/dist/src/modules/git/utils/commitUtils.js.map +1 -1
- package/dist/src/modules/git/utils/referenceUtils.js +9 -6
- package/dist/src/modules/git/utils/referenceUtils.js.map +1 -1
- package/dist/src/modules/git/utils/tagUtils.js +5 -4
- package/dist/src/modules/git/utils/tagUtils.js.map +1 -1
- package/dist/src/modules/sections/grouping.js +5 -5
- package/dist/src/modules/sections/grouping.js.map +1 -1
- package/dist/src/modules/sections/index.js.map +1 -1
- package/dist/src/modules/sections/summarizing.js +4 -4
- package/dist/src/modules/sections/summarizing.js.map +1 -1
- package/dist/src/templates/defaults/changelog.detailed.ejs +110 -110
- package/dist/src/templates/defaults/changelog.ejs +67 -67
- package/dist/src/utils/cmd.js +15 -0
- package/dist/src/utils/cmd.js.map +1 -1
- package/dist/templates/constants.js.map +1 -0
- package/dist/{src/modules/templates → templates}/defaults/changelog.detailed.ejs +110 -110
- package/dist/{src/modules/templates → templates}/defaults/changelog.ejs +67 -67
- package/dist/templates/templateRenderer.js.map +1 -0
- package/dist/templates/templateResolver.js.map +1 -0
- package/dist/{src → types}/PackageJson.js.map +1 -1
- package/dist/utils/cmd.js +42 -0
- package/dist/utils/cmd.js.map +1 -0
- package/dist/utils/date.js +20 -0
- package/dist/utils/date.js.map +1 -0
- package/package.json +64 -61
- package/dist/src/cli/types/ChnagelogCliArgs.js.map +0 -1
- package/dist/src/core/app-old.js +0 -35
- package/dist/src/core/app-old.js.map +0 -1
- package/dist/src/core/app.js +0 -19
- package/dist/src/core/app.js.map +0 -1
- package/dist/src/core/gitOperations.js +0 -95
- package/dist/src/core/gitOperations.js.map +0 -1
- package/dist/src/core/rangeOperations.js.map +0 -1
- package/dist/src/core/templateOperations.js +0 -157
- package/dist/src/core/templateOperations.js.map +0 -1
- package/dist/src/core/types/ChangeInformation.js.map +0 -1
- package/dist/src/core/types/Context.js.map +0 -1
- package/dist/src/core/types/RangeDetails.js.map +0 -1
- package/dist/src/core/types/RangeInfo.js.map +0 -1
- package/dist/src/core/types/ReferenceTypesEnum.js.map +0 -1
- package/dist/src/core/types/Repository.js.map +0 -1
- package/dist/src/git/commits/commitProcessor.js.map +0 -1
- package/dist/src/git/commits/gitLogFetcher.js.map +0 -1
- package/dist/src/git/commits/index.js +0 -136
- package/dist/src/git/commits/index.js.map +0 -1
- package/dist/src/git/commits/profileHandler.js.map +0 -1
- package/dist/src/git/commits/regexHandlers.js.map +0 -1
- package/dist/src/git/commits.js +0 -136
- package/dist/src/git/commits.js.map +0 -1
- package/dist/src/git/context/branchHandler.js +0 -23
- package/dist/src/git/context/branchHandler.js.map +0 -1
- package/dist/src/git/context/commitHandler.js +0 -30
- package/dist/src/git/context/commitHandler.js.map +0 -1
- package/dist/src/git/context/index.js.map +0 -1
- package/dist/src/git/context/remoteHandler.js.map +0 -1
- package/dist/src/git/context/statusHandler.js +0 -21
- package/dist/src/git/context/statusHandler.js.map +0 -1
- package/dist/src/git/context/tagHandler.js +0 -21
- package/dist/src/git/context/tagHandler.js.map +0 -1
- package/dist/src/git/context.js +0 -95
- package/dist/src/git/context.js.map +0 -1
- package/dist/src/git/types/Author.js.map +0 -1
- package/dist/src/git/types/BranchInfo.js.map +0 -1
- package/dist/src/git/types/CommitContent.js.map +0 -1
- package/dist/src/git/types/CommitInfo.js.map +0 -1
- package/dist/src/git/types/CommitType.js.map +0 -1
- package/dist/src/git/types/CommitType2.js +0 -3
- package/dist/src/git/types/CommitType2.js.map +0 -1
- package/dist/src/git/types/GitCommit.js.map +0 -1
- package/dist/src/git/types/GitContext.js +0 -3
- package/dist/src/git/types/GitContext.js.map +0 -1
- package/dist/src/git/types/LinkType-.js +0 -3
- package/dist/src/git/types/LinkType-.js.map +0 -1
- package/dist/src/git/types/Mention.js.map +0 -1
- package/dist/src/git/types/MentionType-.js +0 -3
- package/dist/src/git/types/MentionType-.js.map +0 -1
- package/dist/src/git/types/MentionType.js.map +0 -1
- package/dist/src/git/types/RemoteInfo.js.map +0 -1
- package/dist/src/git/types/StatusInfo.js.map +0 -1
- package/dist/src/git/types/TagInfo.js.map +0 -1
- package/dist/src/git/utils/branchUtils.js.map +0 -1
- package/dist/src/git/utils/commitUtils.js.map +0 -1
- package/dist/src/git/utils/logUtils.js.map +0 -1
- package/dist/src/git/utils/refUtils.js.map +0 -1
- package/dist/src/git/utils/referenceUtils.js.map +0 -1
- package/dist/src/git/utils/tagUtils.js.map +0 -1
- package/dist/src/main.js +0 -16
- package/dist/src/main.js.map +0 -1
- package/dist/src/modules/changes/types/RangeDetail.js +0 -3
- package/dist/src/modules/changes/types/RangeDetail.js.map +0 -1
- package/dist/src/modules/changes/types/RangeDetails.js +0 -3
- package/dist/src/modules/changes/types/RangeDetails.js.map +0 -1
- package/dist/src/modules/git/types/GitContext.js +0 -3
- package/dist/src/modules/git/types/GitContext.js.map +0 -1
- package/dist/src/modules/repository/types/Repository.js +0 -3
- package/dist/src/modules/repository/types/Repository.js.map +0 -1
- package/dist/src/modules/templates/constants.js.map +0 -1
- package/dist/src/modules/templates/templateRenderer.js.map +0 -1
- package/dist/src/modules/templates/templateResolver.js.map +0 -1
- package/dist/src/output/writer.js.map +0 -1
- package/dist/src/sections/contributors.js.map +0 -1
- package/dist/src/sections/grouping.js.map +0 -1
- package/dist/src/sections/index.js.map +0 -1
- package/dist/src/sections/summarizing.js.map +0 -1
- package/dist/src/sections/types/Contributor.js +0 -15
- package/dist/src/sections/types/Contributor.js.map +0 -1
- package/dist/src/sections/types/Group.js.map +0 -1
- package/dist/src/sections/types/SectionSummary.js +0 -13
- package/dist/src/sections/types/SectionSummary.js.map +0 -1
- package/dist/src/sections/types/Sections.js.map +0 -1
- package/dist/src/templates/index.js +0 -100
- package/dist/src/templates/index.js.map +0 -1
- package/dist/src/utils/git-utils.js +0 -279
- package/dist/src/utils/git-utils.js.map +0 -1
- package/dist/src/utils/helpers.js +0 -10
- package/dist/src/utils/helpers.js.map +0 -1
- /package/dist/{src/git → config}/types/CommitType.js +0 -0
- /package/dist/{src/git → config}/types/LinkType.js +0 -0
- /package/dist/{src/git → config}/types/MentionType.js +0 -0
- /package/dist/{src/core → modules/changes}/types/ChangeInformation.js +0 -0
- /package/dist/{src/core → modules/changes}/types/Context.js +0 -0
- /package/dist/{src/core → modules/changes}/types/ReferenceTypesEnum.js +0 -0
- /package/dist/{src → modules}/git/types/Author.js +0 -0
- /package/dist/{src → modules}/git/types/BranchInfo.js +0 -0
- /package/dist/{src → modules}/git/types/CommitContent.js +0 -0
- /package/dist/{src → modules}/git/types/CommitInfo.js +0 -0
- /package/dist/{src → modules}/git/types/GitCommit.js +0 -0
- /package/dist/{src → modules}/git/types/Link.js +0 -0
- /package/dist/{src → modules}/git/types/Mention.js +0 -0
- /package/dist/{src → modules}/git/types/Note.js +0 -0
- /package/dist/{src → modules}/git/types/RemoteInfo.js +0 -0
- /package/dist/{src/core → modules/git}/types/Repository.js +0 -0
- /package/dist/{src → modules}/git/types/StatusInfo.js +0 -0
- /package/dist/{src → modules}/git/types/TagInfo.js +0 -0
- /package/dist/{src → modules}/git/utils/logUtils.js +0 -0
- /package/dist/{src/core → modules/git/utils}/rangeOperations.js +0 -0
- /package/dist/{src → modules}/git/utils/refUtils.js +0 -0
- /package/dist/{src → modules}/sections/types/Group.js +0 -0
- /package/dist/{src → modules}/sections/types/Sections.js +0 -0
- /package/dist/{src/modules/templates → templates}/constants.js +0 -0
- /package/dist/{src/modules/templates → templates}/templateRenderer.js +0 -0
- /package/dist/{src/modules/templates → templates}/templateResolver.js +0 -0
- /package/dist/{src → types}/PackageJson.js +0 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BranchController = void 0;
|
|
4
|
+
const BranchManager_1 = require("../../modules/branch/BranchManager");
|
|
5
|
+
class BranchController {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.branchManager = new BranchManager_1.BranchManager();
|
|
8
|
+
}
|
|
9
|
+
async handleCommand(options) {
|
|
10
|
+
try {
|
|
11
|
+
if (options.create) {
|
|
12
|
+
await this.branchManager.createBranch(options.create, options.push);
|
|
13
|
+
}
|
|
14
|
+
else if (options.delete) {
|
|
15
|
+
await this.branchManager.deleteBranch(options.delete);
|
|
16
|
+
}
|
|
17
|
+
else if (options.list) {
|
|
18
|
+
await this.branchManager.listBranches();
|
|
19
|
+
}
|
|
20
|
+
else if (options.switch) {
|
|
21
|
+
await this.branchManager.switchBranch(options.switch);
|
|
22
|
+
}
|
|
23
|
+
else if (options.merge) {
|
|
24
|
+
await this.branchManager.mergeBranch(options.merge, options.push);
|
|
25
|
+
}
|
|
26
|
+
else if (options.release) {
|
|
27
|
+
await this.branchManager.createReleaseBranch(options.release, options.push);
|
|
28
|
+
}
|
|
29
|
+
else if (options.hotfix) {
|
|
30
|
+
await this.branchManager.createHotfixBranch(options.hotfix, options.push);
|
|
31
|
+
}
|
|
32
|
+
else if (options.feature) {
|
|
33
|
+
await this.branchManager.createFeatureBranch(options.feature, options.push);
|
|
34
|
+
}
|
|
35
|
+
else if (options.finish) {
|
|
36
|
+
await this.branchManager.finishBranch(options.finish, options.push);
|
|
37
|
+
}
|
|
38
|
+
else if (options.protect) {
|
|
39
|
+
await this.branchManager.protectBranch(options.protect);
|
|
40
|
+
}
|
|
41
|
+
else if (options.unprotect) {
|
|
42
|
+
await this.branchManager.unprotectBranch(options.unprotect);
|
|
43
|
+
}
|
|
44
|
+
else if (options.rebase) {
|
|
45
|
+
await this.branchManager.rebaseBranch(options.rebase, options.push);
|
|
46
|
+
}
|
|
47
|
+
else if (options.sync) {
|
|
48
|
+
await this.branchManager.syncBranch(options.push);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
console.log('Please specify an option for branch management.');
|
|
52
|
+
process.exit(1);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
console.error('Error:', error instanceof Error ? error.message : String(error));
|
|
57
|
+
process.exit(1);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
exports.BranchController = BranchController;
|
|
62
|
+
//# sourceMappingURL=BranchController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BranchController.js","sourceRoot":"","sources":["../../../src/modules/branch/BranchController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BranchManager = void 0;
|
|
4
|
+
const simple_git_1 = require("simple-git");
|
|
5
|
+
const GitVersionManager_1 = require("../version/GitVersionManager");
|
|
6
|
+
class BranchManager {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.git = (0, simple_git_1.simpleGit)();
|
|
9
|
+
this.gitVersionManager = new GitVersionManager_1.GitVersionManager();
|
|
10
|
+
}
|
|
11
|
+
async createBranch(branchName, push) {
|
|
12
|
+
const currentBranch = await this.getCurrentBranch();
|
|
13
|
+
await this.git.checkoutLocalBranch(branchName);
|
|
14
|
+
console.log(`Created and switched to branch '${branchName}' from '${currentBranch}'`);
|
|
15
|
+
if (push) {
|
|
16
|
+
await this.git.push('origin', branchName);
|
|
17
|
+
console.log(`Pushed branch '${branchName}' to remote`);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
async deleteBranch(branchName) {
|
|
21
|
+
const currentBranch = await this.getCurrentBranch();
|
|
22
|
+
if (currentBranch === branchName) {
|
|
23
|
+
throw new Error(`Cannot delete the current branch: ${branchName}`);
|
|
24
|
+
}
|
|
25
|
+
// Check if branch is protected
|
|
26
|
+
if (await this.isBranchProtected(branchName)) {
|
|
27
|
+
throw new Error(`Cannot delete protected branch: ${branchName}`);
|
|
28
|
+
}
|
|
29
|
+
await this.git.deleteLocalBranch(branchName, true);
|
|
30
|
+
console.log(`Deleted branch '${branchName}'`);
|
|
31
|
+
try {
|
|
32
|
+
await this.git.push(['origin', '--delete', branchName]);
|
|
33
|
+
console.log(`Deleted remote branch '${branchName}'`);
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
console.log(`Note: Remote branch '${branchName}' doesn't exist or already deleted`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
async listBranches() {
|
|
40
|
+
const branchSummary = await this.git.branch(['-a']);
|
|
41
|
+
const currentBranch = branchSummary.current;
|
|
42
|
+
const protectedBranches = await this.getProtectedBranches();
|
|
43
|
+
console.log('\nBranches:');
|
|
44
|
+
console.log('=========');
|
|
45
|
+
// Local branches
|
|
46
|
+
console.log('\nLocal branches:');
|
|
47
|
+
branchSummary.all
|
|
48
|
+
.filter(branch => !branch.includes('remotes/'))
|
|
49
|
+
.forEach(branch => {
|
|
50
|
+
const isCurrent = branch === currentBranch;
|
|
51
|
+
const isProtected = protectedBranches.includes(branch);
|
|
52
|
+
console.log(`${isCurrent ? '* ' : ' '}${branch}${isProtected ? ' (protected)' : ''}`);
|
|
53
|
+
});
|
|
54
|
+
// Remote branches
|
|
55
|
+
console.log('\nRemote branches:');
|
|
56
|
+
branchSummary.all
|
|
57
|
+
.filter(branch => branch.includes('remotes/'))
|
|
58
|
+
.map(branch => branch.replace('remotes/', ''))
|
|
59
|
+
.forEach(branch => {
|
|
60
|
+
console.log(` ${branch}`);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
async switchBranch(branchName) {
|
|
64
|
+
await this.git.checkout(branchName);
|
|
65
|
+
console.log(`Switched to branch '${branchName}'`);
|
|
66
|
+
}
|
|
67
|
+
async mergeBranch(branchName, push) {
|
|
68
|
+
const currentBranch = await this.getCurrentBranch();
|
|
69
|
+
if (await this.isBranchProtected(currentBranch)) {
|
|
70
|
+
const confirmation = await this.confirmAction(`Warning: You're merging into protected branch '${currentBranch}'. Continue?`);
|
|
71
|
+
if (!confirmation) {
|
|
72
|
+
console.log('Merge cancelled');
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
await this.git.merge([branchName]);
|
|
77
|
+
console.log(`Merged '${branchName}' into '${currentBranch}'`);
|
|
78
|
+
if (push) {
|
|
79
|
+
await this.git.push('origin', currentBranch);
|
|
80
|
+
console.log(`Pushed changes to remote '${currentBranch}'`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
async createReleaseBranch(version, push) {
|
|
84
|
+
const branchName = `release/v${version}`;
|
|
85
|
+
await this.createBranch(branchName, push);
|
|
86
|
+
await this.protectBranch(branchName);
|
|
87
|
+
console.log(`Created protected release branch '${branchName}'`);
|
|
88
|
+
}
|
|
89
|
+
async createHotfixBranch(version, push) {
|
|
90
|
+
const branchName = `hotfix/v${version}`;
|
|
91
|
+
await this.createBranch(branchName, push);
|
|
92
|
+
console.log(`Created hotfix branch '${branchName}'`);
|
|
93
|
+
}
|
|
94
|
+
async createFeatureBranch(name, push) {
|
|
95
|
+
const branchName = `feature/${name}`;
|
|
96
|
+
await this.createBranch(branchName, push);
|
|
97
|
+
console.log(`Created feature branch '${branchName}'`);
|
|
98
|
+
}
|
|
99
|
+
async finishBranch(branchName, push) {
|
|
100
|
+
const currentBranch = await this.getCurrentBranch();
|
|
101
|
+
const gitVersionManager = new GitVersionManager_1.GitVersionManager();
|
|
102
|
+
if (branchName.startsWith('feature/')) {
|
|
103
|
+
await this.mergeBranch('develop', push);
|
|
104
|
+
}
|
|
105
|
+
else if (branchName.startsWith('release/')) {
|
|
106
|
+
await this.mergeBranch('main', push);
|
|
107
|
+
await this.mergeBranch('develop', push);
|
|
108
|
+
// Create tag for release
|
|
109
|
+
const version = branchName.replace('release/v', '');
|
|
110
|
+
await gitVersionManager.createGitTag(`v${version}`);
|
|
111
|
+
}
|
|
112
|
+
else if (branchName.startsWith('hotfix/')) {
|
|
113
|
+
await this.mergeBranch('main', push);
|
|
114
|
+
await this.mergeBranch('develop', push);
|
|
115
|
+
// Create tag for hotfix
|
|
116
|
+
const version = branchName.replace('hotfix/v', '');
|
|
117
|
+
await gitVersionManager.createGitTag(`v${version}`);
|
|
118
|
+
}
|
|
119
|
+
await this.deleteBranch(branchName);
|
|
120
|
+
console.log(`Finished and cleaned up branch '${branchName}'`);
|
|
121
|
+
}
|
|
122
|
+
async protectBranch(branchName) {
|
|
123
|
+
const protectedBranches = await this.getProtectedBranches();
|
|
124
|
+
if (!protectedBranches.includes(branchName)) {
|
|
125
|
+
protectedBranches.push(branchName);
|
|
126
|
+
await this.saveProtectedBranches(protectedBranches);
|
|
127
|
+
console.log(`Protected branch '${branchName}'`);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
async unprotectBranch(branchName) {
|
|
131
|
+
const protectedBranches = await this.getProtectedBranches();
|
|
132
|
+
const index = protectedBranches.indexOf(branchName);
|
|
133
|
+
if (index > -1) {
|
|
134
|
+
protectedBranches.splice(index, 1);
|
|
135
|
+
await this.saveProtectedBranches(protectedBranches);
|
|
136
|
+
console.log(`Removed protection from branch '${branchName}'`);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
async rebaseBranch(branchName, push) {
|
|
140
|
+
const currentBranch = await this.getCurrentBranch();
|
|
141
|
+
await this.git.rebase([branchName]);
|
|
142
|
+
console.log(`Rebased '${currentBranch}' with '${branchName}'`);
|
|
143
|
+
if (push) {
|
|
144
|
+
await this.git.push('origin', currentBranch, ['--force']);
|
|
145
|
+
console.log(`Force pushed rebased changes to '${currentBranch}'`);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
async syncBranch(push) {
|
|
149
|
+
const currentBranch = await this.getCurrentBranch();
|
|
150
|
+
await this.git.pull('origin', currentBranch, ['--rebase']);
|
|
151
|
+
console.log(`Synced '${currentBranch}' with remote`);
|
|
152
|
+
if (push) {
|
|
153
|
+
await this.git.push('origin', currentBranch);
|
|
154
|
+
console.log(`Pushed local changes to remote '${currentBranch}'`);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
async getCurrentBranch() {
|
|
158
|
+
const branchSummary = await this.git.branch();
|
|
159
|
+
return branchSummary.current;
|
|
160
|
+
}
|
|
161
|
+
async isBranchProtected(branchName) {
|
|
162
|
+
const protectedBranches = await this.getProtectedBranches();
|
|
163
|
+
return protectedBranches.includes(branchName);
|
|
164
|
+
}
|
|
165
|
+
async getProtectedBranches() {
|
|
166
|
+
try {
|
|
167
|
+
const config = await this.git.listConfig();
|
|
168
|
+
const protectedBranchesConfig = config.all['branch.protected'];
|
|
169
|
+
// If it's already an array, return it
|
|
170
|
+
if (Array.isArray(protectedBranchesConfig)) {
|
|
171
|
+
return protectedBranchesConfig;
|
|
172
|
+
}
|
|
173
|
+
// If it's a string, parse it
|
|
174
|
+
if (typeof protectedBranchesConfig === 'string') {
|
|
175
|
+
return JSON.parse(protectedBranchesConfig);
|
|
176
|
+
}
|
|
177
|
+
// If it's undefined or null, return default
|
|
178
|
+
return ['main', 'master', 'develop'];
|
|
179
|
+
}
|
|
180
|
+
catch (_a) {
|
|
181
|
+
return ['main', 'master', 'develop'];
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
async saveProtectedBranches(branches) {
|
|
185
|
+
await this.git.addConfig('branch.protected', JSON.stringify(branches));
|
|
186
|
+
}
|
|
187
|
+
async confirmAction(message) {
|
|
188
|
+
// Implementation depends on your preferred CLI interaction library
|
|
189
|
+
// For example, using 'inquirer'
|
|
190
|
+
return true; // Placeholder
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
exports.BranchManager = BranchManager;
|
|
194
|
+
//# sourceMappingURL=BranchManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BranchManager.js","sourceRoot":"","sources":["../../../src/modules/branch/BranchManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ChangelogValidator = void 0;
|
|
4
|
+
class ChangelogValidator {
|
|
5
|
+
validateOptions(options) {
|
|
6
|
+
const versionIncrementOptions = [options.major, options.minor, options.patch].filter(Boolean).length;
|
|
7
|
+
if (versionIncrementOptions > 1) {
|
|
8
|
+
throw new Error('Cannot specify multiple version increment options');
|
|
9
|
+
}
|
|
10
|
+
if (options.init && (options.major || options.minor || options.patch)) {
|
|
11
|
+
throw new Error('Cannot combine --init with version increment options');
|
|
12
|
+
}
|
|
13
|
+
if (options.revert && (options.major || options.minor || options.patch)) {
|
|
14
|
+
throw new Error('Cannot combine --revert with version increment options');
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.ChangelogValidator = ChangelogValidator;
|
|
19
|
+
//# sourceMappingURL=ChangelogValidator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChangelogValidator.js","sourceRoot":"","sources":["../../../src/modules/changelog/ChangelogValidator.ts"],"names":[],"mappings":";;;AAGA,MAAa,kBAAkB;IACpB,eAAe,CAAC,OAAuB;QAC1C,MAAM,uBAAuB,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAA;QAEpG,IAAI,uBAAuB,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;QACxE,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAA;QAC3E,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;QAC7E,CAAC;IACL,CAAC;CACJ;AAhBD,gDAgBC"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getChangeInformation = getChangeInformation;
|
|
4
|
+
exports.getRangeSummary = getRangeSummary;
|
|
5
|
+
exports.renderChangelogTemplate = renderChangelogTemplate;
|
|
6
|
+
const commitProcessor_1 = require("../git/commits/commitProcessor");
|
|
7
|
+
const context_1 = require("../git/context");
|
|
8
|
+
const commitUtils_1 = require("../git/utils/commitUtils");
|
|
9
|
+
const sections_1 = require("../sections");
|
|
10
|
+
const templateRenderer_1 = require("../../templates/templateRenderer");
|
|
11
|
+
const gitOperations_1 = require("../git/gitOperations");
|
|
12
|
+
const ReferenceTypesEnum_1 = require("../changes/types/ReferenceTypesEnum");
|
|
13
|
+
async function getChangeInformation(rangeInfo) {
|
|
14
|
+
var _a;
|
|
15
|
+
let header;
|
|
16
|
+
let summary;
|
|
17
|
+
let currentReference;
|
|
18
|
+
let changeCommitsCount = await (0, commitUtils_1.getCommitCount)(rangeInfo.resolvedRange);
|
|
19
|
+
currentReference = rangeInfo.latestReference;
|
|
20
|
+
header = (_a = currentReference === null || currentReference === void 0 ? void 0 : currentReference.name) !== null && _a !== void 0 ? _a : null;
|
|
21
|
+
if (currentReference) {
|
|
22
|
+
if ((currentReference === null || currentReference === void 0 ? void 0 : currentReference.reference) != rangeInfo.resolvedTo.reference) {
|
|
23
|
+
const commitsAhead = await (0, commitUtils_1.getCommitCount)(`${currentReference === null || currentReference === void 0 ? void 0 : currentReference.reference}..${rangeInfo.resolvedTo.reference}`);
|
|
24
|
+
header += ` (+${commitsAhead} commits)`;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
// if (resolvedTo.type === ReferenceTypesEnum.commit) {}
|
|
28
|
+
// else if (resolvedTo.type === ReferenceTypesEnum.date) {}
|
|
29
|
+
// else if (resolvedTo.type === ReferenceTypesEnum.branch) {}
|
|
30
|
+
// else if (resolvedTo.type === ReferenceTypesEnum.ref) {}
|
|
31
|
+
// else if (resolvedTo.type === ReferenceTypesEnum.tag) {}
|
|
32
|
+
summary = 'Changes';
|
|
33
|
+
if (rangeInfo.resolvedFrom.value) {
|
|
34
|
+
switch (rangeInfo.resolvedFrom.type) {
|
|
35
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.commit:
|
|
36
|
+
summary += ` from commit ${rangeInfo.resolvedFrom.value}`;
|
|
37
|
+
break;
|
|
38
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.branch:
|
|
39
|
+
summary += ` from ${rangeInfo.resolvedFrom.value} branch`;
|
|
40
|
+
break;
|
|
41
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.date:
|
|
42
|
+
summary += ` after ${rangeInfo.resolvedFrom.value}`;
|
|
43
|
+
break;
|
|
44
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.tag:
|
|
45
|
+
summary += ` from ${rangeInfo.resolvedFrom.value} tag`;
|
|
46
|
+
break;
|
|
47
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.ref:
|
|
48
|
+
summary += ` from reference ${rangeInfo.resolvedFrom.value}`;
|
|
49
|
+
break;
|
|
50
|
+
default:
|
|
51
|
+
break;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
summary += ` from initial commit`;
|
|
56
|
+
}
|
|
57
|
+
if (rangeInfo.resolvedTo.value) {
|
|
58
|
+
switch (rangeInfo.resolvedTo.type) {
|
|
59
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.commit:
|
|
60
|
+
summary += ` to commit ${rangeInfo.resolvedTo.value}`;
|
|
61
|
+
break;
|
|
62
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.branch:
|
|
63
|
+
summary += ` to ${rangeInfo.resolvedTo.value} branch`;
|
|
64
|
+
break;
|
|
65
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.date:
|
|
66
|
+
summary += ` before ${rangeInfo.resolvedTo.value}`;
|
|
67
|
+
break;
|
|
68
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.tag:
|
|
69
|
+
summary += ` to ${rangeInfo.resolvedTo.value} tag`;
|
|
70
|
+
break;
|
|
71
|
+
case ReferenceTypesEnum_1.ReferenceTypesEnum.ref:
|
|
72
|
+
summary += ` to reference ${rangeInfo.resolvedTo.value}`;
|
|
73
|
+
break;
|
|
74
|
+
default:
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
summary += ` to HEAD`;
|
|
80
|
+
}
|
|
81
|
+
return {
|
|
82
|
+
header,
|
|
83
|
+
summary,
|
|
84
|
+
currentReference,
|
|
85
|
+
changeCommitsCount,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
async function getRangeSummary(resolvedFrom, resolvedTo) {
|
|
89
|
+
const gitInfo = await (0, gitOperations_1.collectGitInfo)(resolvedFrom, resolvedTo);
|
|
90
|
+
const rangeSummary = {
|
|
91
|
+
...gitInfo,
|
|
92
|
+
resolvedFrom,
|
|
93
|
+
resolvedTo,
|
|
94
|
+
};
|
|
95
|
+
return rangeSummary;
|
|
96
|
+
}
|
|
97
|
+
async function renderChangelogTemplate(templatePath, options, config) {
|
|
98
|
+
let fileData = '';
|
|
99
|
+
const date = new Date().toISOString().split('T')[0];
|
|
100
|
+
const repository = await (0, context_1.getCurrentRepositoryAsync)();
|
|
101
|
+
const { resolvedFrom, resolvedTo } = await (0, gitOperations_1.resolveGitReferences)(options);
|
|
102
|
+
if (!resolvedFrom || !resolvedTo) {
|
|
103
|
+
return fileData;
|
|
104
|
+
}
|
|
105
|
+
const rangeSummary = await getRangeSummary(resolvedFrom, resolvedTo);
|
|
106
|
+
if (options === null || options === void 0 ? void 0 : options.mergeAll) {
|
|
107
|
+
const context = await getContext(rangeSummary, config, date, repository);
|
|
108
|
+
fileData = await (0, templateRenderer_1.renderTemplate)(templatePath, options === null || options === void 0 ? void 0 : options.environment, context);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
//burda resolvedTo.type tag ise doğru, commit ise commitList, date ise dateList, branch ise branchList, ref ise refList'te bulunmalı ona göre döngü yapılmalı
|
|
112
|
+
// date ise gün gün commitleri alıp context oluşturup render etmek gerekiyor, veya opsionel olarak config'den alınacak parametreye göre bölünecek birim belirtilmeli
|
|
113
|
+
// branch ise branch'e göre commitleri alıp context oluşturup render etmek gerekiyor
|
|
114
|
+
// ref ise ref'e göre commitleri alıp context oluşturup render etmek gerekiyor, burda kaç ref alınacağı bilgisi bulunmalı
|
|
115
|
+
// commit ise commitList'te bulunan commitlerin hepsini alıp context oluşturup render etmek gerekiyor
|
|
116
|
+
for (let index = 0; index < rangeSummary.referenceList.length; index++) {
|
|
117
|
+
const { resolvedFrom, resolvedTo } = await (0, gitOperations_1.resolveGitReferencesFromRangeSummary)(rangeSummary, index);
|
|
118
|
+
if (!resolvedFrom || !resolvedTo) {
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
const newRangeSummary = await getRangeSummary(resolvedFrom, resolvedTo);
|
|
122
|
+
const context = await getContext(newRangeSummary, config, date, repository);
|
|
123
|
+
const renderedData = await (0, templateRenderer_1.renderTemplate)(templatePath, options === null || options === void 0 ? void 0 : options.environment, context);
|
|
124
|
+
fileData += `\n\n${renderedData}`;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return fileData;
|
|
128
|
+
}
|
|
129
|
+
async function getContext(rangeSummary, config, date, repository) {
|
|
130
|
+
const changeInfo = await getChangeInformation(rangeSummary);
|
|
131
|
+
const commits = await (0, commitProcessor_1.listCommitsAsync)(rangeSummary.resolvedRange, config);
|
|
132
|
+
const sections = (0, sections_1.createSections)(commits, config);
|
|
133
|
+
const context = {
|
|
134
|
+
date,
|
|
135
|
+
...rangeSummary,
|
|
136
|
+
changeInfo,
|
|
137
|
+
repository,
|
|
138
|
+
commits,
|
|
139
|
+
sections,
|
|
140
|
+
config,
|
|
141
|
+
};
|
|
142
|
+
return context;
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=templateOperations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templateOperations.js","sourceRoot":"","sources":["../../../src/modules/changelog/templateOperations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChangeInformation.js","sourceRoot":"","sources":["../../../../src/modules/changes/types/ChangeInformation.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../../src/modules/changes/types/Context.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RangeInfo.js","sourceRoot":"","sources":["../../../../src/modules/changes/types/RangeInfo.ts"],"names":[],"mappings":";AAAA,+BAA+B;AAC/B,oBAAoB;AACpB,qBAAqB;AACrB,2BAA2B;AAC3B,0BAA0B;AAC1B,IAAI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RangeSummary.js","sourceRoot":"","sources":["../../../../src/modules/changes/types/RangeSummary.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferenceTypesEnum.js","sourceRoot":"","sources":["../../../../src/modules/changes/types/ReferenceTypesEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC1B,uCAAiB,CAAA;IACjB,mCAAa,CAAA;IACb,iCAAW,CAAA;IACX,uCAAiB,CAAA;IACjB,iCAAW,CAAA;AACf,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B"}
|
|
@@ -6,11 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.listCommitsAsync = listCommitsAsync;
|
|
7
7
|
exports.getGitLogAsJson = getGitLogAsJson;
|
|
8
8
|
const regexHandlers_1 = require("./regexHandlers");
|
|
9
|
-
const child_process_1 = require("child_process");
|
|
10
|
-
const util_1 = __importDefault(require("util"));
|
|
11
9
|
const simple_git_1 = __importDefault(require("simple-git"));
|
|
12
10
|
const _1 = require(".");
|
|
13
|
-
const
|
|
11
|
+
const cmd_1 = require("../../../utils/cmd");
|
|
14
12
|
async function listCommitsAsync(range, config) {
|
|
15
13
|
const commits = await getGitLogAsJson(range);
|
|
16
14
|
const commitMessageRegex = (0, regexHandlers_1.createCommitMessageRegex)(config.commitTypes);
|
|
@@ -20,11 +18,11 @@ async function listCommitsAsync(range, config) {
|
|
|
20
18
|
const filteredCommits = commits.filter(commit => commitMessageRegex.test(commit.message));
|
|
21
19
|
const commitList = await Promise.all(filteredCommits.map(async (commit) => {
|
|
22
20
|
const parsedCommit = await (0, _1.enrichCommit)(commit, config);
|
|
23
|
-
const { stdout: filesOutput } = await
|
|
21
|
+
const { stdout: filesOutput } = await (0, cmd_1.execWithErrorHandling)(`git log --pretty=format:"" --no-commit-id --name-only -r ${parsedCommit.raw.hash}`);
|
|
24
22
|
const files = filesOutput.split('\n').filter(Boolean);
|
|
25
23
|
return {
|
|
26
24
|
...parsedCommit,
|
|
27
|
-
files
|
|
25
|
+
files,
|
|
28
26
|
};
|
|
29
27
|
}));
|
|
30
28
|
return commitList;
|
|
@@ -40,12 +38,12 @@ async function getGitLogAsJson(range = null) {
|
|
|
40
38
|
body: commit.body,
|
|
41
39
|
authorName: commit.author_name,
|
|
42
40
|
authorEmail: commit.author_email,
|
|
43
|
-
date: commit.date
|
|
41
|
+
date: commit.date,
|
|
44
42
|
}));
|
|
45
43
|
return jsonArray;
|
|
46
44
|
}
|
|
47
45
|
catch (error) {
|
|
48
|
-
console.error(
|
|
46
|
+
console.error('Error fetching git log:', error);
|
|
49
47
|
return [];
|
|
50
48
|
}
|
|
51
49
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commitProcessor.js","sourceRoot":"","sources":["../../../../src/modules/git/commits/commitProcessor.ts"],"names":[],"mappings":";;;;;AAQA,4CAwBC;AAED,0CAqBC;AAtDD,mDAA0D;AAE1D,4DAAkC;AAElC,wBAAgC;AAChC,4CAA0D;AAEnD,KAAK,UAAU,gBAAgB,CAAC,KAAoB,EAAE,MAAc;IACvE,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,CAAA;IAC5C,MAAM,kBAAkB,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAEvE,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACtB,OAAO,EAAE,CAAA;IACb,CAAC;IAED,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;IAEzF,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAC,MAAM,EAAC,EAAE;QAC/B,MAAM,YAAY,GAAG,MAAM,IAAA,eAAY,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACvD,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAA,2BAAqB,EAAC,4DAA4D,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QAChJ,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAErD,OAAO;YACH,GAAG,YAAY;YACf,KAAK;SACR,CAAA;IACL,CAAC,CAAC,CACL,CAAA;IAED,OAAO,UAAU,CAAA;AACrB,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,QAAuB,IAAI;IAC7D,MAAM,GAAG,GAAG,IAAA,oBAAS,GAAE,CAAA;IAEvB,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,CAAA;QAE5D,MAAM,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;YACtC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,UAAU,EAAE,MAAM,CAAC,WAAW;YAC9B,WAAW,EAAE,MAAM,CAAC,YAAY;YAChC,IAAI,EAAE,MAAM,CAAC,IAAI;SACpB,CAAC,CAAC,CAAA;QAEH,OAAO,SAAS,CAAA;IACpB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;QAC/C,OAAO,EAAE,CAAA;IACb,CAAC;AACL,CAAC"}
|
|
@@ -16,11 +16,11 @@ async function getGitLogAsJson(range = null) {
|
|
|
16
16
|
body: commit.body,
|
|
17
17
|
authorName: commit.author_name,
|
|
18
18
|
authorEmail: commit.author_email,
|
|
19
|
-
date: commit.date
|
|
19
|
+
date: commit.date,
|
|
20
20
|
}));
|
|
21
21
|
}
|
|
22
22
|
catch (error) {
|
|
23
|
-
console.error(
|
|
23
|
+
console.error('Error fetching git log:', error);
|
|
24
24
|
return [];
|
|
25
25
|
}
|
|
26
26
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitLogFetcher.js","sourceRoot":"","sources":["../../../../src/modules/git/commits/gitLogFetcher.ts"],"names":[],"mappings":";;;;;AAGA,0CAiBC;AApBD,4DAAkC;AAG3B,KAAK,UAAU,eAAe,CAAC,QAAuB,IAAI;IAC7D,MAAM,GAAG,GAAG,IAAA,oBAAS,GAAE,CAAA;IACvB,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,CAAA;QAC5D,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;YACtC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,UAAU,EAAE,MAAM,CAAC,WAAW;YAC9B,WAAW,EAAE,MAAM,CAAC,YAAY;YAChC,IAAI,EAAE,MAAM,CAAC,IAAI;SACpB,CAAC,CAAC,CAAA;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;QAC/C,OAAO,EAAE,CAAA;IACb,CAAC;AACL,CAAC"}
|