Compare commits
30 Commits
Author | SHA1 | Date | |
---|---|---|---|
d7b462fda9 | |||
01e6c15626 | |||
94a066247f | |||
7de157ccb3 | |||
d783965b25 | |||
07f1413d5e | |||
d7bf45f6b5 | |||
3eb64bcb5d | |||
e24a027fdd | |||
3f451cfcb1 | |||
e355c51c8d | |||
b0fcaba2c3 | |||
4ea205e11b | |||
f819e7b521 | |||
d4903f32f0 | |||
34102a2544 | |||
5e2171dbfd | |||
70d4af653a | |||
06f6fdef98 | |||
b6fb7bf029 | |||
4c83725120 | |||
a060cd1a03 | |||
e8372effc7 | |||
571249705e | |||
927cd961fd | |||
63b4fcc232 | |||
4188ed7f24 | |||
1feddc6e85 | |||
499baebc18 | |||
01fc0d0c6e |
70
changelog.md
70
changelog.md
@ -1,4 +1,70 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
## 1.2.0
|
## 2024-06-23 - 1.3.10 - fix(aidocs_classes)
|
||||||
feat(aidocs_classes): Enhance changelog generation by supporting complete generation in the absence of previous changelog files
|
Fix changelog format to remove extra newline
|
||||||
|
|
||||||
|
- Updated `ts/aidocs_classes/commit.ts` to fix the changelog format.
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.3.9 - fix(aidoc)
|
||||||
|
Fix changelog generation by properly stripping markdown code fences
|
||||||
|
|
||||||
|
- Corrected the changelog generation code to ensure markdown code fences are properly stripped.
|
||||||
|
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.3.8 - fix(changelog)
|
||||||
|
Fix changelog generation by properly stripping markdown code fences
|
||||||
|
|
||||||
|
- Corrected the changelog generation code to ensure markdown code fences are properly stripped.
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.3.7 - fix(aidoc)
|
||||||
|
Update to include package-lock.json in uncommitted changes check
|
||||||
|
|
||||||
|
- Modified the getUncommittedDiff method call in commit.ts to include package-lock.json along with pnpm-lock.yaml
|
||||||
|
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.3.6 - fix(commit)
|
||||||
|
Fixed issue with retrieving uncommitted diffs in git repository
|
||||||
|
|
||||||
|
- Revised logic to correctly handle uncommitted changes by using an array for `getUncommittedDiff` method
|
||||||
|
- Ensured proper handling and representation of uncommitted changes in the output
|
||||||
|
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.3.5 - fix(aidocs_classes)
|
||||||
|
Refactor and enhance changelog formatting
|
||||||
|
|
||||||
|
- Updated the `commit.ts` file to improve the changelog formatting and ensure consistency.
|
||||||
|
- Enhanced the changelog instructions to include summarizing messages for omitted commits.
|
||||||
|
- Removed unnecessary console logging in `projectcontext.ts`.
|
||||||
|
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
## 2024-06-23 - 1.3.3 - fix(aidocs_classes)
|
||||||
|
Fix changelog formatting issue in commit class
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.3.2 - fix(aidocs_classes)
|
||||||
|
Fix minor bugs and update dependencies in aidocs_classes
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.3.1 - fix(aidocs_classes)
|
||||||
|
Fix typo in INextCommitObject interface and update date format in changelog generation.
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.3.0 - fix(aidocs_classes)
|
||||||
|
Fix typo in INextCommitObject interface
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.2.4 - feat(core)
|
||||||
|
Added smarttime dependency and improved changelog generation
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.2.3 - fix(logging)
|
||||||
|
Refactor logger initialization to use commitinfo data
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.2.2 - fix(aidocs)
|
||||||
|
Fix bug in AiDoc class causing undefined token handling
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.2.0 - fix(core)
|
||||||
|
Fixed usage of plugins in project context and readme generation
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.1.42 - feat(aidocs_classes)
|
||||||
|
Enhance changelog generation by supporting complete generation in the absence of previous changelog files
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.1.41 - fix(aidocs_classes)
|
||||||
|
Improve commit message generation by handling empty diffs and updating changelog instructions
|
||||||
|
```
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@git.zone/tsdoc",
|
"name": "@git.zone/tsdoc",
|
||||||
"version": "1.2.0",
|
"version": "1.3.10",
|
||||||
"private": false,
|
"private": false,
|
||||||
"description": "An advanced TypeScript documentation tool using AI to generate and enhance documentation for TypeScript projects.",
|
"description": "An advanced TypeScript documentation tool using AI to generate and enhance documentation for TypeScript projects.",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
@ -33,13 +33,14 @@
|
|||||||
"@push.rocks/smartcli": "^4.0.11",
|
"@push.rocks/smartcli": "^4.0.11",
|
||||||
"@push.rocks/smartdelay": "^3.0.5",
|
"@push.rocks/smartdelay": "^3.0.5",
|
||||||
"@push.rocks/smartfile": "^11.0.20",
|
"@push.rocks/smartfile": "^11.0.20",
|
||||||
"@push.rocks/smartgit": "^3.0.4",
|
"@push.rocks/smartgit": "^3.1.0",
|
||||||
"@push.rocks/smartinteract": "^2.0.15",
|
"@push.rocks/smartinteract": "^2.0.15",
|
||||||
"@push.rocks/smartlog": "^3.0.7",
|
"@push.rocks/smartlog": "^3.0.7",
|
||||||
"@push.rocks/smartlog-destination-local": "^9.0.2",
|
"@push.rocks/smartlog-destination-local": "^9.0.2",
|
||||||
"@push.rocks/smartpath": "^5.0.18",
|
"@push.rocks/smartpath": "^5.0.18",
|
||||||
"@push.rocks/smartshell": "^3.0.5",
|
"@push.rocks/smartshell": "^3.0.5",
|
||||||
"typedoc": "^0.26.0",
|
"@push.rocks/smarttime": "^4.0.6",
|
||||||
|
"typedoc": "^0.26.1",
|
||||||
"typescript": "^5.5.2"
|
"typescript": "^5.5.2"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
|
32
pnpm-lock.yaml
generated
32
pnpm-lock.yaml
generated
@ -30,8 +30,8 @@ importers:
|
|||||||
specifier: ^11.0.20
|
specifier: ^11.0.20
|
||||||
version: 11.0.20
|
version: 11.0.20
|
||||||
'@push.rocks/smartgit':
|
'@push.rocks/smartgit':
|
||||||
specifier: ^3.0.4
|
specifier: ^3.1.0
|
||||||
version: 3.0.4
|
version: 3.1.0
|
||||||
'@push.rocks/smartinteract':
|
'@push.rocks/smartinteract':
|
||||||
specifier: ^2.0.15
|
specifier: ^2.0.15
|
||||||
version: 2.0.15
|
version: 2.0.15
|
||||||
@ -47,9 +47,12 @@ importers:
|
|||||||
'@push.rocks/smartshell':
|
'@push.rocks/smartshell':
|
||||||
specifier: ^3.0.5
|
specifier: ^3.0.5
|
||||||
version: 3.0.5
|
version: 3.0.5
|
||||||
|
'@push.rocks/smarttime':
|
||||||
|
specifier: ^4.0.6
|
||||||
|
version: 4.0.6
|
||||||
typedoc:
|
typedoc:
|
||||||
specifier: ^0.26.0
|
specifier: ^0.26.1
|
||||||
version: 0.26.0(typescript@5.5.2)
|
version: 0.26.1(typescript@5.5.2)
|
||||||
typescript:
|
typescript:
|
||||||
specifier: ^5.5.2
|
specifier: ^5.5.2
|
||||||
version: 5.5.2
|
version: 5.5.2
|
||||||
@ -429,8 +432,8 @@ packages:
|
|||||||
'@push.rocks/smartfile@11.0.20':
|
'@push.rocks/smartfile@11.0.20':
|
||||||
resolution: {integrity: sha512-gJERlNE2fNah9HLq6W3srcl1GZwlz2vFVZRmb50TQLabmWF4qyTlaMYAwY8ffgf8np4TsHAa4s+kL5F0zUfUUg==}
|
resolution: {integrity: sha512-gJERlNE2fNah9HLq6W3srcl1GZwlz2vFVZRmb50TQLabmWF4qyTlaMYAwY8ffgf8np4TsHAa4s+kL5F0zUfUUg==}
|
||||||
|
|
||||||
'@push.rocks/smartgit@3.0.4':
|
'@push.rocks/smartgit@3.1.0':
|
||||||
resolution: {integrity: sha512-6uYifD4rGjTp6KO8kdaVenXeef0uZOfQSTuLuG3+ubpMXwZNSp0iQWx+XgS5pQipzG0+3p4ddnQ7/R8gm7LWOg==}
|
resolution: {integrity: sha512-a3LbECFQSURkJc9t8CGJrzv7ZzfG1c83x424nb6jfj3jVJXCqjMvs1AkmpkUiro77J7yg4CavTu8vslAfrPIOw==}
|
||||||
|
|
||||||
'@push.rocks/smarthash@3.0.4':
|
'@push.rocks/smarthash@3.0.4':
|
||||||
resolution: {integrity: sha512-HJ/fSx41jm0CvSaqMLa6b2nuNK5rHAqAeAq3dAB7Sq9BCPm2M0J5ZVDTzEAH8pS91XYniUiwuE0jwPERNn9hmw==}
|
resolution: {integrity: sha512-HJ/fSx41jm0CvSaqMLa6b2nuNK5rHAqAeAq3dAB7Sq9BCPm2M0J5ZVDTzEAH8pS91XYniUiwuE0jwPERNn9hmw==}
|
||||||
@ -1924,8 +1927,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==}
|
resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==}
|
||||||
engines: {node: '>=16'}
|
engines: {node: '>=16'}
|
||||||
|
|
||||||
isomorphic-git@1.25.10:
|
isomorphic-git@1.26.2:
|
||||||
resolution: {integrity: sha512-IxGiaKBwAdcgBXwIcxJU6rHLk+NrzYaaPKXXQffcA0GW3IUrQXdUPDXDo+hkGVcYruuz/7JlGBiuaeTCgIgivQ==}
|
resolution: {integrity: sha512-swKxfDm/GyaU5ojGwKtfs3EiHwlUf3iP1iIHPduaJHA5y1cIzMDFo3ogwdW6i00UmAjYQNKyF2BZgj/jz58/2A==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
|
|
||||||
@ -3015,8 +3018,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
|
resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
|
||||||
engines: {node: '>= 0.6'}
|
engines: {node: '>= 0.6'}
|
||||||
|
|
||||||
typedoc@0.26.0:
|
typedoc@0.26.1:
|
||||||
resolution: {integrity: sha512-OcYevjHsMN8DfpaL0dSBGAEBhOxuBB5Au8QVs9oz9iB0kRStPZwXLFWqh9gwbMUxNjW3yQuIM5GrVVauMJ2Akw==}
|
resolution: {integrity: sha512-APsVXqh93jTlpkLuw6+/IORx7n5LN8hzJV8nvMIrYYaIva0VCq0CoDN7Z3hsRThEYVExI/qoFHnAAxrhG+Wd7Q==}
|
||||||
engines: {node: '>= 18'}
|
engines: {node: '>= 18'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -3864,7 +3867,7 @@ snapshots:
|
|||||||
glob: 10.4.1
|
glob: 10.4.1
|
||||||
js-yaml: 4.1.0
|
js-yaml: 4.1.0
|
||||||
|
|
||||||
'@push.rocks/smartgit@3.0.4':
|
'@push.rocks/smartgit@3.1.0':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@push.rocks/smartenv': 5.0.12
|
'@push.rocks/smartenv': 5.0.12
|
||||||
'@push.rocks/smartfile': 11.0.20
|
'@push.rocks/smartfile': 11.0.20
|
||||||
@ -3872,10 +3875,11 @@ snapshots:
|
|||||||
'@push.rocks/smartpromise': 4.0.3
|
'@push.rocks/smartpromise': 4.0.3
|
||||||
'@push.rocks/smartshell': 3.0.5
|
'@push.rocks/smartshell': 3.0.5
|
||||||
'@push.rocks/smartstring': 4.0.15
|
'@push.rocks/smartstring': 4.0.15
|
||||||
|
'@push.rocks/smarttime': 4.0.6
|
||||||
'@types/diff': 5.2.1
|
'@types/diff': 5.2.1
|
||||||
'@types/minimatch': 5.1.2
|
'@types/minimatch': 5.1.2
|
||||||
diff: 5.2.0
|
diff: 5.2.0
|
||||||
isomorphic-git: 1.25.10
|
isomorphic-git: 1.26.2
|
||||||
|
|
||||||
'@push.rocks/smarthash@3.0.4':
|
'@push.rocks/smarthash@3.0.4':
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -5798,7 +5802,7 @@ snapshots:
|
|||||||
|
|
||||||
isexe@3.1.1: {}
|
isexe@3.1.1: {}
|
||||||
|
|
||||||
isomorphic-git@1.25.10:
|
isomorphic-git@1.26.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
async-lock: 1.4.1
|
async-lock: 1.4.1
|
||||||
clean-git-ref: 2.0.1
|
clean-git-ref: 2.0.1
|
||||||
@ -7155,7 +7159,7 @@ snapshots:
|
|||||||
media-typer: 0.3.0
|
media-typer: 0.3.0
|
||||||
mime-types: 2.1.35
|
mime-types: 2.1.35
|
||||||
|
|
||||||
typedoc@0.26.0(typescript@5.5.2):
|
typedoc@0.26.1(typescript@5.5.2):
|
||||||
dependencies:
|
dependencies:
|
||||||
lunr: 2.3.9
|
lunr: 2.3.9
|
||||||
markdown-it: 14.1.0
|
markdown-it: 14.1.0
|
||||||
|
@ -3,6 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
export const commitinfo = {
|
export const commitinfo = {
|
||||||
name: '@git.zone/tsdoc',
|
name: '@git.zone/tsdoc',
|
||||||
version: '1.2.0',
|
version: '1.3.10',
|
||||||
description: 'An advanced TypeScript documentation tool using AI to generate and enhance documentation for TypeScript projects.'
|
description: 'An advanced TypeScript documentation tool using AI to generate and enhance documentation for TypeScript projects.'
|
||||||
}
|
}
|
||||||
|
@ -6,6 +6,7 @@ export interface INextCommitObject {
|
|||||||
recommendedNextVersionLevel: 'fix' | 'feat' | 'BREAKING CHANGE'; // the recommended next version level of the project
|
recommendedNextVersionLevel: 'fix' | 'feat' | 'BREAKING CHANGE'; // the recommended next version level of the project
|
||||||
recommendedNextVersionScope: string; // the recommended scope name of the next version, like "core" or "cli", or specific class names.
|
recommendedNextVersionScope: string; // the recommended scope name of the next version, like "core" or "cli", or specific class names.
|
||||||
recommendedNextVersionMessage: string; // the commit message. Don't put fix() feat() or BREAKING CHANGE in the message. Please just the message itself.
|
recommendedNextVersionMessage: string; // the commit message. Don't put fix() feat() or BREAKING CHANGE in the message. Please just the message itself.
|
||||||
|
recommendedNextVersionDetails: string[]; // detailed bullet points for the changelog
|
||||||
recommendedNextVersion: string; // the recommended next version of the project, x.x.x
|
recommendedNextVersion: string; // the recommended next version of the project, x.x.x
|
||||||
changelog?: string; // the changelog for the next version
|
changelog?: string; // the changelog for the next version
|
||||||
}
|
}
|
||||||
@ -26,7 +27,7 @@ export class Commit {
|
|||||||
smartgitInstance,
|
smartgitInstance,
|
||||||
this.projectDir
|
this.projectDir
|
||||||
);
|
);
|
||||||
const diffString = await gitRepo.getUncommittedDiff();
|
const diffStringArray = await gitRepo.getUncommittedDiff(['pnpm-lock.yaml', 'package-lock.json']);
|
||||||
const projectContext = new ProjectContext(this.projectDir);
|
const projectContext = new ProjectContext(this.projectDir);
|
||||||
let contextString = await projectContext.update();
|
let contextString = await projectContext.update();
|
||||||
contextString = `
|
contextString = `
|
||||||
@ -34,7 +35,7 @@ ${contextString}
|
|||||||
|
|
||||||
Below is the diff of the uncommitted changes. If nothing is changed, there are no changes:
|
Below is the diff of the uncommitted changes. If nothing is changed, there are no changes:
|
||||||
|
|
||||||
${diffString || 'No changes.'}
|
${diffStringArray[0] ? diffStringArray.join('\n\n') : 'No changes.'}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
let result = await this.aiDocsRef.openaiInstance.chat({
|
let result = await this.aiDocsRef.openaiInstance.chat({
|
||||||
@ -49,13 +50,17 @@ Important: Answer only in valid JSON.
|
|||||||
Your answer should be parseable with JSON.parse() without modifying anything.
|
Your answer should be parseable with JSON.parse() without modifying anything.
|
||||||
|
|
||||||
Here is the structure of the JSON you should return:
|
Here is the structure of the JSON you should return:
|
||||||
{
|
|
||||||
|
interface {
|
||||||
recommendedNextVersionLevel: 'fix' | 'feat' | 'BREAKING CHANGE'; // the recommended next version level of the project
|
recommendedNextVersionLevel: 'fix' | 'feat' | 'BREAKING CHANGE'; // the recommended next version level of the project
|
||||||
recommendedNextVersionScope: string; // the recommended scope name of the next version, like "core" or "cli", or specific class names.
|
recommendedNextVersionScope: string; // the recommended scope name of the next version, like "core" or "cli", or specific class names.
|
||||||
recommendedNextVersionMessage: string; // the commit message. Don't put fix() feat() or BREAKING CHANGE in the message. Please just the message itself.
|
recommendedNextVersionMessage: string; // the commit message. Don't put fix() feat() or BREAKING CHANGE in the message. Please just the message itself.
|
||||||
|
recommendedNextVersionDetails: string[]; // detailed bullet points for the changelog
|
||||||
recommendedNextVersion: string; // the recommended next version of the project, x.x.x
|
recommendedNextVersion: string; // the recommended next version of the project, x.x.x
|
||||||
}
|
}
|
||||||
|
|
||||||
|
For the recommendedNextVersionDetails, please only add a detail entries to the array if it has an obvious value to the reader.
|
||||||
|
|
||||||
You are being given the files of the project. You should use them to create the commit message.
|
You are being given the files of the project. You should use them to create the commit message.
|
||||||
Also you are given a diff
|
Also you are given a diff
|
||||||
|
|
||||||
@ -69,47 +74,55 @@ Also you are given a diff
|
|||||||
result.message.replace('```json', '').replace('```', '')
|
result.message.replace('```json', '').replace('```', '')
|
||||||
);
|
);
|
||||||
|
|
||||||
// lets build the changelog based on that
|
|
||||||
const commitMessages = await gitRepo.getAllCommitMessages();
|
|
||||||
const previousChangelogPath = plugins.path.join(this.projectDir, 'changelog.md');
|
const previousChangelogPath = plugins.path.join(this.projectDir, 'changelog.md');
|
||||||
let previousChangelog: plugins.smartfile.SmartFile;
|
let previousChangelog: plugins.smartfile.SmartFile;
|
||||||
if (await plugins.smartfile.fs.fileExists(previousChangelogPath)) {
|
if (await plugins.smartfile.fs.fileExists(previousChangelogPath)) {
|
||||||
previousChangelog = await plugins.smartfile.SmartFile.fromFilePath(previousChangelogPath);
|
previousChangelog = await plugins.smartfile.SmartFile.fromFilePath(previousChangelogPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!previousChangelog) {
|
||||||
|
// lets build the changelog based on that
|
||||||
|
const commitMessages = await gitRepo.getAllCommitMessages();
|
||||||
|
console.log(JSON.stringify(commitMessages, null, 2));
|
||||||
let result2 = await this.aiDocsRef.openaiInstance.chat({
|
let result2 = await this.aiDocsRef.openaiInstance.chat({
|
||||||
messageHistory: [],
|
messageHistory: [],
|
||||||
systemMessage: `
|
systemMessage: `
|
||||||
You are building a changelog file for the projext.
|
You are building a changelog.md file for the project.
|
||||||
Omit commits and versions that lack relevant changes.
|
Omit commits and versions that lack relevant changes, but make sure to mention them as a range with a summarizing message instead.
|
||||||
|
|
||||||
You are given
|
A changelog entry should look like this:
|
||||||
* the previous changelog file (if available)
|
|
||||||
|
## yyyy-mm-dd - x.x.x - scope here
|
||||||
|
main descriptiom here
|
||||||
|
|
||||||
|
- detailed bullet points follow
|
||||||
|
|
||||||
|
You are given:
|
||||||
* the commit messages of the project
|
* the commit messages of the project
|
||||||
|
|
||||||
Only return the changelog file, so it can be written directly to changelog.md
|
Only return the changelog file, so it can be written directly to changelog.md`,
|
||||||
|
|
||||||
For the latest version, that is not yet part of the commit messages, add a placeholder entry that uses {{nextVersion}} and {{nextVersionMessage}} as variables to filled later.
|
|
||||||
Only output newer versions and their changes compared to ones already mentioned. We take of appending your output later.
|
|
||||||
If there is no previous changelog file, generate a complete changelog from commit messages with heading and everything + the placeholder section mentioned above.
|
|
||||||
`,
|
|
||||||
userMessage: `
|
userMessage: `
|
||||||
The previous changelog file is:
|
Here are the commit messages:
|
||||||
${!previousChangelog ? 'No previous changelog file found' : previousChangelog.contents.toString()}
|
|
||||||
|
|
||||||
Here are the commit messages so far:
|
${JSON.stringify(commitMessages, null, 2)}
|
||||||
|
`,
|
||||||
${commitMessages.join('\n\n')}
|
|
||||||
`,
|
|
||||||
});
|
});
|
||||||
if (previousChangelog) {
|
|
||||||
let newChangelog = result2.message;
|
previousChangelog = await plugins.smartfile.SmartFile.fromString(
|
||||||
newChangelog = newChangelog.replace('# Changelog\n\n', '');
|
previousChangelogPath,
|
||||||
let oldChangelog = previousChangelog.contents.toString().replace('# Changelog\n\n', '');
|
result2.message.replaceAll('```markdown', '').replaceAll('```', ''),
|
||||||
newChangelog = `# Changelog\n\n${newChangelog}\n\n${oldChangelog}`;
|
'utf8'
|
||||||
resultObject.changelog = newChangelog;
|
);
|
||||||
} else {
|
|
||||||
resultObject.changelog = result2.message;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let oldChangelog = previousChangelog.contents.toString().replace('# Changelog\n\n', '');
|
||||||
|
let newDateString = new plugins.smarttime.ExtendedDate().exportToHyphedSortableDate();
|
||||||
|
let newChangelog = `# Changelog\n\n${`## ${newDateString} - {{nextVersion}} - {{nextVersionScope}}
|
||||||
|
{{nextVersionMessage}}
|
||||||
|
|
||||||
|
{{nextVersionDetails}}`}\n${oldChangelog}`;
|
||||||
|
resultObject.changelog = newChangelog;
|
||||||
|
|
||||||
return resultObject;
|
return resultObject;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,9 +47,8 @@ export class ProjectContext {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public async convertFilesToContext(filesArg: plugins.smartfile.SmartFile[]) {
|
public async convertFilesToContext(filesArg: plugins.smartfile.SmartFile[]) {
|
||||||
console.log(`Using the following files for the documentation:`);
|
|
||||||
filesArg.map((fileArg) => {
|
filesArg.map((fileArg) => {
|
||||||
console.log(` -> ${fileArg.relative}`);
|
// console.log(` -> ${fileArg.relative}`);
|
||||||
});
|
});
|
||||||
return filesArg
|
return filesArg
|
||||||
.map((smartfile) => {
|
.map((smartfile) => {
|
||||||
|
@ -1,15 +1,6 @@
|
|||||||
|
import { commitinfo } from './00_commitinfo_data.js';
|
||||||
import * as plugins from './plugins.js';
|
import * as plugins from './plugins.js';
|
||||||
|
|
||||||
export const logger = new plugins.smartlog.Smartlog({
|
export const logger = plugins.smartlog.Smartlog.createForCommitinfo(commitinfo);
|
||||||
logContext: {
|
|
||||||
company: 'Some Company',
|
|
||||||
companyunit: 'Some CompanyUnit',
|
|
||||||
containerName: 'Some Containername',
|
|
||||||
environment: 'local',
|
|
||||||
runtime: 'node',
|
|
||||||
zone: 'gitzone',
|
|
||||||
},
|
|
||||||
minimumLogLevel: 'silly',
|
|
||||||
});
|
|
||||||
|
|
||||||
logger.addLogDestination(new plugins.smartlogDestinationLocal.DestinationLocal());
|
logger.addLogDestination(new plugins.smartlogDestinationLocal.DestinationLocal());
|
||||||
|
@ -16,6 +16,7 @@ import * as smartlog from '@push.rocks/smartlog';
|
|||||||
import * as smartlogDestinationLocal from '@push.rocks/smartlog-destination-local';
|
import * as smartlogDestinationLocal from '@push.rocks/smartlog-destination-local';
|
||||||
import * as smartpath from '@push.rocks/smartpath';
|
import * as smartpath from '@push.rocks/smartpath';
|
||||||
import * as smartshell from '@push.rocks/smartshell';
|
import * as smartshell from '@push.rocks/smartshell';
|
||||||
|
import * as smarttime from '@push.rocks/smarttime';
|
||||||
|
|
||||||
export {
|
export {
|
||||||
npmextra,
|
npmextra,
|
||||||
@ -30,6 +31,7 @@ export {
|
|||||||
smartlogDestinationLocal,
|
smartlogDestinationLocal,
|
||||||
smartpath,
|
smartpath,
|
||||||
smartshell,
|
smartshell,
|
||||||
|
smarttime,
|
||||||
};
|
};
|
||||||
|
|
||||||
// third party scope
|
// third party scope
|
||||||
|
Reference in New Issue
Block a user