fix(commands): incorrect changelog version generation

This commit is contained in:
2023-08-20 03:48:54 +03:00
parent b05591a316
commit 7a5880d211
3 changed files with 72 additions and 39 deletions

View File

@@ -1,37 +1,39 @@
{ {
"name": "@resultium/rcz", "name": "@resultium/rcz",
"version": "1.1.0", "version": "1.1.0",
"description": "Resultium commit standardization library, based on conventional commits", "description": "Resultium commit standardization library, based on conventional commits",
"main": "./dist/index.js", "main": "./dist/index.js",
"bin": { "bin": {
"rcz": "./dist/index.js" "rcz": "./dist/index.js"
}, },
"files": [ "files": [
"dist" "dist"
], ],
"scripts": { "scripts": {
"build": "tsc" "build": "tsc"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://git.resultium.net/technology/rcz.git" "url": "https://git.resultium.net/technology/rcz.git"
}, },
"keywords": [ "keywords": [
"conventional", "conventional",
"commits" "commits"
], ],
"author": { "author": {
"name": "Resultium", "name": "Resultium",
"email": "contact@resultium.io", "email": "contact@resultium.io",
"url": "https://www.resultium.io" "url": "https://www.resultium.io"
}, },
"dependencies": { "dependencies": {
"@clack/prompts": "^0.7.0", "@clack/prompts": "^0.7.0",
"commander": "^11.0.0", "commander": "^11.0.0",
"simple-git": "^3.19.1" "semver": "^7.5.4",
}, "simple-git": "^3.19.1"
"devDependencies": { },
"@types/node": "^20.5.1", "devDependencies": {
"typescript": "^5.1.6" "@types/node": "^20.5.1",
} "@types/semver": "^7.5.0",
} "typescript": "^5.1.6"
}
}

29
pnpm-lock.yaml generated
View File

@@ -11,6 +11,9 @@ dependencies:
commander: commander:
specifier: ^11.0.0 specifier: ^11.0.0
version: 11.0.0 version: 11.0.0
semver:
specifier: ^7.5.4
version: 7.5.4
simple-git: simple-git:
specifier: ^3.19.1 specifier: ^3.19.1
version: 3.19.1 version: 3.19.1
@@ -19,6 +22,9 @@ devDependencies:
'@types/node': '@types/node':
specifier: ^20.5.1 specifier: ^20.5.1
version: 20.5.1 version: 20.5.1
'@types/semver':
specifier: ^7.5.0
version: 7.5.0
typescript: typescript:
specifier: ^5.1.6 specifier: ^5.1.6
version: 5.1.6 version: 5.1.6
@@ -58,6 +64,10 @@ packages:
resolution: {integrity: sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg==} resolution: {integrity: sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg==}
dev: true dev: true
/@types/semver@7.5.0:
resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==}
dev: true
/commander@11.0.0: /commander@11.0.0:
resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==} resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==}
engines: {node: '>=16'} engines: {node: '>=16'}
@@ -75,6 +85,13 @@ packages:
ms: 2.1.2 ms: 2.1.2
dev: false dev: false
/lru-cache@6.0.0:
resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
engines: {node: '>=10'}
dependencies:
yallist: 4.0.0
dev: false
/ms@2.1.2: /ms@2.1.2:
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
dev: false dev: false
@@ -83,6 +100,14 @@ packages:
resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
dev: false dev: false
/semver@7.5.4:
resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
engines: {node: '>=10'}
hasBin: true
dependencies:
lru-cache: 6.0.0
dev: false
/simple-git@3.19.1: /simple-git@3.19.1:
resolution: {integrity: sha512-Ck+rcjVaE1HotraRAS8u/+xgTvToTuoMkT9/l9lvuP5jftwnYUp6DwuJzsKErHgfyRk8IB8pqGHWEbM3tLgV1w==} resolution: {integrity: sha512-Ck+rcjVaE1HotraRAS8u/+xgTvToTuoMkT9/l9lvuP5jftwnYUp6DwuJzsKErHgfyRk8IB8pqGHWEbM3tLgV1w==}
dependencies: dependencies:
@@ -102,3 +127,7 @@ packages:
engines: {node: '>=14.17'} engines: {node: '>=14.17'}
hasBin: true hasBin: true
dev: true dev: true
/yallist@4.0.0:
resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
dev: false

View File

@@ -13,8 +13,9 @@ import {
import fs from "fs"; import fs from "fs";
import path from "path"; import path from "path";
import { CommitStack, Config } from "./types"; import { CommitStack, Config } from "./types";
import simpleGit, { DefaultLogFields, ListLogLine } from "simple-git"; import simpleGit from "simple-git";
import { Command } from "commander"; import { Command } from "commander";
import semver from "semver";
const GetConfig = async () => { const GetConfig = async () => {
if (fs.existsSync(path.join(process.cwd(), ".rczrc"))) { if (fs.existsSync(path.join(process.cwd(), ".rczrc"))) {
@@ -209,8 +210,9 @@ program
console.log("# Changelog"); console.log("# Changelog");
for (const commit of commits) { for (const commit of commits) {
const tag = (await simpleGit().tags([`--contains=${commit.hash}`])) const tag = semver.sort(
.latest!; (await simpleGit().tags([`--contains=${commit.hash}`])).all
)[0]!;
const currentCommitStack = parsedCommitStacks.find( const currentCommitStack = parsedCommitStacks.find(
(commitStack) => commitStack.version === tag (commitStack) => commitStack.version === tag
) || { ) || {