import * as semver from 'semver' import { getTag, type TagPointer } from '#/src/utils/git/get-tag.js' export function byReleaseVersion(left: string, right: string): number { return semver.rcompare(left, right) } export async function getLatestRelease( tags: string[], ): Promise { const allTags = tags .filter((tag) => { return semver.valid(tag) }) .sort(byReleaseVersion) const [latestTag] = allTags if (!latestTag) { return } return getTag(latestTag) }