UNPKG

@scaleway/changesets-renovate

Version:

Automatically create changesets for Renovate and pnpm catalogs

25 lines (24 loc) 942 B
import { simpleGit } from "simple-git"; import { createChangeset } from "./createChangeset.js"; import { getBumpsFromGit, handleChangesetFile } from "./git-utils.js"; import { getPackagesNames } from "./utils.js"; async function handlePackageChanges(diffFiles) { const files = diffFiles.filter((file) => file.includes("package.json")); if (files.length === 0) { console.log("No package.json changes to published packages, skipping"); return; } const packageNames = await getPackagesNames(files); if (packageNames.length === 0) { console.log("No packages modified, skipping"); return; } const shortHash = (await simpleGit().revparse(["--short", "HEAD"])).trim(); const fileName = `.changeset/renovate-${shortHash}.md`; const packageBumps = await getBumpsFromGit(files); await createChangeset(fileName, packageBumps, packageNames); await handleChangesetFile(fileName); } export { handlePackageChanges };