relizy 1.6.0 → 1.7.0
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.mjs +1 -1
- package/dist/index.d.mts +17 -1
- package/dist/index.d.ts +17 -1
- package/dist/index.mjs +1 -1
- package/dist/shared/{relizy.DhYBvZNi.mjs → relizy.uCxVVpbQ.mjs} +77 -30
- package/package.json +1 -1
package/dist/cli.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import process from 'node:process';
|
|
|
5
5
|
import { fileURLToPath } from 'node:url';
|
|
6
6
|
import { printBanner, logger } from '@maz-ui/node';
|
|
7
7
|
import { Command } from 'commander';
|
|
8
|
-
import {
|
|
8
|
+
import { aC as isInCI, V as getCIName, h as bump, j as changelog, aT as publish, aR as providerRelease, ba as social, aQ as prComment, b0 as release } from './shared/relizy.uCxVVpbQ.mjs';
|
|
9
9
|
import 'node:child_process';
|
|
10
10
|
import '@maz-ui/utils/helpers/formatJson';
|
|
11
11
|
import 'c12';
|
package/dist/index.d.mts
CHANGED
|
@@ -587,6 +587,13 @@ declare function postPrComment({ config, pr, body, }: {
|
|
|
587
587
|
*/
|
|
588
588
|
declare function redactSecrets<T>(value: T): T;
|
|
589
589
|
|
|
590
|
+
/**
|
|
591
|
+
* Resolve the commit a new package's compare link starts from: the parent of
|
|
592
|
+
* the first commit that touched the package, so the link covers the whole
|
|
593
|
+
* package history. Falls back to that first commit when it is the repository
|
|
594
|
+
* root commit (no parent). Returns null when the package has no commits yet.
|
|
595
|
+
*/
|
|
596
|
+
declare function getNewPackageCompareBase(packagePath: string, cwd: string): string | null;
|
|
590
597
|
declare function readPackageJson(packagePath: string): ReadPackage | undefined;
|
|
591
598
|
/**
|
|
592
599
|
* Resolve a set of path globs (relative to `cwd`) to the absolute directories
|
|
@@ -829,6 +836,14 @@ declare function isBumpedPackage(pkg: PackageBase): pkg is PackageBase & {
|
|
|
829
836
|
declare function filterOutPrivatePackages<T extends {
|
|
830
837
|
private: boolean;
|
|
831
838
|
}>(packages: T[]): T[];
|
|
839
|
+
/**
|
|
840
|
+
* Keep private packages only when `monorepo.includePrivates` is enabled. They
|
|
841
|
+
* are then versioned and tagged like public ones, so they also get provider
|
|
842
|
+
* releases and appear in PR comments. Publishing ignores them regardless.
|
|
843
|
+
*/
|
|
844
|
+
declare function filterPrivatePackagesUnlessIncluded<T extends {
|
|
845
|
+
private: boolean;
|
|
846
|
+
}>(packages: T[], includePrivates: boolean | undefined): T[];
|
|
832
847
|
declare function getPackagesOrBumpedPackages({ config, bumpResult, suffix, force, dryRun, }: {
|
|
833
848
|
config: ResolvedRelizyConfig;
|
|
834
849
|
bumpResult: BumpResultTruthy | undefined;
|
|
@@ -2282,6 +2297,7 @@ interface CommentBodyParams {
|
|
|
2282
2297
|
packages?: Array<{
|
|
2283
2298
|
name: string;
|
|
2284
2299
|
version: string;
|
|
2300
|
+
private: boolean;
|
|
2285
2301
|
}>;
|
|
2286
2302
|
/** Fallback root version for standalone CLI mode */
|
|
2287
2303
|
rootVersion?: string;
|
|
@@ -2339,5 +2355,5 @@ declare function socialSafetyCheck({ config }: {
|
|
|
2339
2355
|
}): Promise<void>;
|
|
2340
2356
|
declare function social(options?: Partial<SocialOptions>): Promise<SocialResult>;
|
|
2341
2357
|
|
|
2342
|
-
export { NEW_PACKAGE_MARKER, PR_COMMENT_MARKER, assertBranchUpToDateWithRemote, assertReleaseTagsAvailable, buildChangelogBody, buildCommentBody, buildCompareLink, buildContributors, buildReleaseSummary, bump, capReleaseTypeForZeroMajor, changelog, checkGitStatusIfDirty, collectContributorNames, collectPackageBumps, confirmBump, createCommitAndTags, createGitlabRelease, defineConfig, detectGitProvider, detectPackageManager, detectPullRequest, determinePublishTag, determineReleaseType, determineSemverChange, executeBuildCmd, executeFormatCmd, executeHook, expandPackagesToBumpWithDependents, extractChangelogSummary, extractVersionFromPackageTag, extractVersionFromTag, fetchGitTags, filterOutPrivatePackages, findGitHubPR, findGitLabMR, findReachableCommitBySubject, formatChangelogForSlack, formatPackagesForSlack, formatSlackMessage, formatTweetMessage, generateChangelog, generateMarkDown, getAuthCommand, getBumpedIndependentPackages, getBumpedPackageIndependently, getCIName, getCanaryVersion, getCommitChangedFiles, getCommitSubject, getCurrentGitBranch, getCurrentGitRef, getDefaultConfig, getDependentsOf, getFirstCommit, getGitDiff, getGitStatus, getGitUpstream, getIndependentTag, getLastPackageTag, getLastRepoTag, getLastStableTag, getLastTag, getModifiedReleaseFilePatterns, getNpmRegistry, getPackageCommits, getPackageDependencies, getPackageNewVersion, getPackages, getPackagesOrBumpedPackages, getPackagesToPublishInIndependentMode, getPackagesToPublishInSelectiveMode, getPreid, getReleaseTagNames, getReleaseUrl, getRootPackage, getShortCommitSha, getSlackToken, getSlackWebhookUrl, getTwitterCredentials, github, gitlab, globDirsAbsolute, hasLernaJson, isAncestor, isBumpedPackage, isChangedPreid, isCommitOnlyInIgnoredPackages, isGraduating, isGraduatingToStableBetweenVersion, isInCI, isPrerelease, isPrereleaseReleaseType, isStableReleaseType, isTagVersionCompatibleWithCurrent, isVersionAlreadyPublishedError, isVersionPublished, loadRelizyConfig, mergeTypes, parseChangelogMarkdown, parseGitRemoteUrl, postPrComment, postReleaseToSlack, postReleaseToTwitter, prComment, providerRelease, providerReleaseSafetyCheck, publish, publishPackage, publishSafetyCheck, pushCommitAndTags, pushTagForce, readPackageJson, readPackages, reconcileFromTag, redactSecrets, release, resetRewrittenTagCache, resolveAllConfiguredRegistryTargets, resolveIgnoredPackagePaths, resolveRegistryTargetsForPackage, resolveRegistryTargetsForPackages, resolveTags, retagAnnotatedLocal, rollbackModifiedFiles, shouldFilterPrereleaseTags, social, socialSafetyCheck, tagExists, topologicalSort, tryPostPrComment, updateLernaVersion, withRegistryNpmrc, writeChangelogToFile, writeVersion };
|
|
2358
|
+
export { NEW_PACKAGE_MARKER, PR_COMMENT_MARKER, assertBranchUpToDateWithRemote, assertReleaseTagsAvailable, buildChangelogBody, buildCommentBody, buildCompareLink, buildContributors, buildReleaseSummary, bump, capReleaseTypeForZeroMajor, changelog, checkGitStatusIfDirty, collectContributorNames, collectPackageBumps, confirmBump, createCommitAndTags, createGitlabRelease, defineConfig, detectGitProvider, detectPackageManager, detectPullRequest, determinePublishTag, determineReleaseType, determineSemverChange, executeBuildCmd, executeFormatCmd, executeHook, expandPackagesToBumpWithDependents, extractChangelogSummary, extractVersionFromPackageTag, extractVersionFromTag, fetchGitTags, filterOutPrivatePackages, filterPrivatePackagesUnlessIncluded, findGitHubPR, findGitLabMR, findReachableCommitBySubject, formatChangelogForSlack, formatPackagesForSlack, formatSlackMessage, formatTweetMessage, generateChangelog, generateMarkDown, getAuthCommand, getBumpedIndependentPackages, getBumpedPackageIndependently, getCIName, getCanaryVersion, getCommitChangedFiles, getCommitSubject, getCurrentGitBranch, getCurrentGitRef, getDefaultConfig, getDependentsOf, getFirstCommit, getGitDiff, getGitStatus, getGitUpstream, getIndependentTag, getLastPackageTag, getLastRepoTag, getLastStableTag, getLastTag, getModifiedReleaseFilePatterns, getNewPackageCompareBase, getNpmRegistry, getPackageCommits, getPackageDependencies, getPackageNewVersion, getPackages, getPackagesOrBumpedPackages, getPackagesToPublishInIndependentMode, getPackagesToPublishInSelectiveMode, getPreid, getReleaseTagNames, getReleaseUrl, getRootPackage, getShortCommitSha, getSlackToken, getSlackWebhookUrl, getTwitterCredentials, github, gitlab, globDirsAbsolute, hasLernaJson, isAncestor, isBumpedPackage, isChangedPreid, isCommitOnlyInIgnoredPackages, isGraduating, isGraduatingToStableBetweenVersion, isInCI, isPrerelease, isPrereleaseReleaseType, isStableReleaseType, isTagVersionCompatibleWithCurrent, isVersionAlreadyPublishedError, isVersionPublished, loadRelizyConfig, mergeTypes, parseChangelogMarkdown, parseGitRemoteUrl, postPrComment, postReleaseToSlack, postReleaseToTwitter, prComment, providerRelease, providerReleaseSafetyCheck, publish, publishPackage, publishSafetyCheck, pushCommitAndTags, pushTagForce, readPackageJson, readPackages, reconcileFromTag, redactSecrets, release, resetRewrittenTagCache, resolveAllConfiguredRegistryTargets, resolveIgnoredPackagePaths, resolveRegistryTargetsForPackage, resolveRegistryTargetsForPackages, resolveTags, retagAnnotatedLocal, rollbackModifiedFiles, shouldFilterPrereleaseTags, social, socialSafetyCheck, tagExists, topologicalSort, tryPostPrComment, updateLernaVersion, withRegistryNpmrc, writeChangelogToFile, writeVersion };
|
|
2343
2359
|
export type { AIConfig, AIPromptTarget, AIProviderName, AISocialConfig, AISystemPromptOverrides, AITargetConfig, BumpConfig, BumpOptions, BumpResult, BumpResultFalsy, BumpResultTruthy, ChangelogConfig, ChangelogInclude, ChangelogOptions, ClaudeCodeProviderOptions, ConfigType, GitProvider, GitUpstream, GitlabRelease, GitlabReleaseResponse, HookConfig, HookStep, HookType, MonorepoConfig, OnRewrittenTag, PackageBase, PackageBumpEntry, PackageManager, PostedRelease, PrCommentConfig, PrCommentMode, PrCommentOptions, PrCommentStatus, ProviderReleaseOptions, ProviderReleaseResult, PublishConfig, PublishOptions, PublishResponse, PullRequestInfo, ReadPackage, Reference, RegistryTarget, ReleaseConfig, ReleaseContext, ReleaseOptions, RelizyConfig, RepoConfig, ResolvedConfig, ResolvedRelizyConfig, ResolvedTags, ResolvedTwitterCredentials, RootPackage, SlackCredentials, SlackOptions, SlackPackageEntry, SlackSocialConfig, SocialConfig, SocialNetworkResult, SocialOptions, SocialResult, Step, TemplatesConfig, TokensConfig, TwitterCredentials, TwitterOptions, TwitterSocialConfig, VersionMode };
|
package/dist/index.d.ts
CHANGED
|
@@ -587,6 +587,13 @@ declare function postPrComment({ config, pr, body, }: {
|
|
|
587
587
|
*/
|
|
588
588
|
declare function redactSecrets<T>(value: T): T;
|
|
589
589
|
|
|
590
|
+
/**
|
|
591
|
+
* Resolve the commit a new package's compare link starts from: the parent of
|
|
592
|
+
* the first commit that touched the package, so the link covers the whole
|
|
593
|
+
* package history. Falls back to that first commit when it is the repository
|
|
594
|
+
* root commit (no parent). Returns null when the package has no commits yet.
|
|
595
|
+
*/
|
|
596
|
+
declare function getNewPackageCompareBase(packagePath: string, cwd: string): string | null;
|
|
590
597
|
declare function readPackageJson(packagePath: string): ReadPackage | undefined;
|
|
591
598
|
/**
|
|
592
599
|
* Resolve a set of path globs (relative to `cwd`) to the absolute directories
|
|
@@ -829,6 +836,14 @@ declare function isBumpedPackage(pkg: PackageBase): pkg is PackageBase & {
|
|
|
829
836
|
declare function filterOutPrivatePackages<T extends {
|
|
830
837
|
private: boolean;
|
|
831
838
|
}>(packages: T[]): T[];
|
|
839
|
+
/**
|
|
840
|
+
* Keep private packages only when `monorepo.includePrivates` is enabled. They
|
|
841
|
+
* are then versioned and tagged like public ones, so they also get provider
|
|
842
|
+
* releases and appear in PR comments. Publishing ignores them regardless.
|
|
843
|
+
*/
|
|
844
|
+
declare function filterPrivatePackagesUnlessIncluded<T extends {
|
|
845
|
+
private: boolean;
|
|
846
|
+
}>(packages: T[], includePrivates: boolean | undefined): T[];
|
|
832
847
|
declare function getPackagesOrBumpedPackages({ config, bumpResult, suffix, force, dryRun, }: {
|
|
833
848
|
config: ResolvedRelizyConfig;
|
|
834
849
|
bumpResult: BumpResultTruthy | undefined;
|
|
@@ -2282,6 +2297,7 @@ interface CommentBodyParams {
|
|
|
2282
2297
|
packages?: Array<{
|
|
2283
2298
|
name: string;
|
|
2284
2299
|
version: string;
|
|
2300
|
+
private: boolean;
|
|
2285
2301
|
}>;
|
|
2286
2302
|
/** Fallback root version for standalone CLI mode */
|
|
2287
2303
|
rootVersion?: string;
|
|
@@ -2339,5 +2355,5 @@ declare function socialSafetyCheck({ config }: {
|
|
|
2339
2355
|
}): Promise<void>;
|
|
2340
2356
|
declare function social(options?: Partial<SocialOptions>): Promise<SocialResult>;
|
|
2341
2357
|
|
|
2342
|
-
export { NEW_PACKAGE_MARKER, PR_COMMENT_MARKER, assertBranchUpToDateWithRemote, assertReleaseTagsAvailable, buildChangelogBody, buildCommentBody, buildCompareLink, buildContributors, buildReleaseSummary, bump, capReleaseTypeForZeroMajor, changelog, checkGitStatusIfDirty, collectContributorNames, collectPackageBumps, confirmBump, createCommitAndTags, createGitlabRelease, defineConfig, detectGitProvider, detectPackageManager, detectPullRequest, determinePublishTag, determineReleaseType, determineSemverChange, executeBuildCmd, executeFormatCmd, executeHook, expandPackagesToBumpWithDependents, extractChangelogSummary, extractVersionFromPackageTag, extractVersionFromTag, fetchGitTags, filterOutPrivatePackages, findGitHubPR, findGitLabMR, findReachableCommitBySubject, formatChangelogForSlack, formatPackagesForSlack, formatSlackMessage, formatTweetMessage, generateChangelog, generateMarkDown, getAuthCommand, getBumpedIndependentPackages, getBumpedPackageIndependently, getCIName, getCanaryVersion, getCommitChangedFiles, getCommitSubject, getCurrentGitBranch, getCurrentGitRef, getDefaultConfig, getDependentsOf, getFirstCommit, getGitDiff, getGitStatus, getGitUpstream, getIndependentTag, getLastPackageTag, getLastRepoTag, getLastStableTag, getLastTag, getModifiedReleaseFilePatterns, getNpmRegistry, getPackageCommits, getPackageDependencies, getPackageNewVersion, getPackages, getPackagesOrBumpedPackages, getPackagesToPublishInIndependentMode, getPackagesToPublishInSelectiveMode, getPreid, getReleaseTagNames, getReleaseUrl, getRootPackage, getShortCommitSha, getSlackToken, getSlackWebhookUrl, getTwitterCredentials, github, gitlab, globDirsAbsolute, hasLernaJson, isAncestor, isBumpedPackage, isChangedPreid, isCommitOnlyInIgnoredPackages, isGraduating, isGraduatingToStableBetweenVersion, isInCI, isPrerelease, isPrereleaseReleaseType, isStableReleaseType, isTagVersionCompatibleWithCurrent, isVersionAlreadyPublishedError, isVersionPublished, loadRelizyConfig, mergeTypes, parseChangelogMarkdown, parseGitRemoteUrl, postPrComment, postReleaseToSlack, postReleaseToTwitter, prComment, providerRelease, providerReleaseSafetyCheck, publish, publishPackage, publishSafetyCheck, pushCommitAndTags, pushTagForce, readPackageJson, readPackages, reconcileFromTag, redactSecrets, release, resetRewrittenTagCache, resolveAllConfiguredRegistryTargets, resolveIgnoredPackagePaths, resolveRegistryTargetsForPackage, resolveRegistryTargetsForPackages, resolveTags, retagAnnotatedLocal, rollbackModifiedFiles, shouldFilterPrereleaseTags, social, socialSafetyCheck, tagExists, topologicalSort, tryPostPrComment, updateLernaVersion, withRegistryNpmrc, writeChangelogToFile, writeVersion };
|
|
2358
|
+
export { NEW_PACKAGE_MARKER, PR_COMMENT_MARKER, assertBranchUpToDateWithRemote, assertReleaseTagsAvailable, buildChangelogBody, buildCommentBody, buildCompareLink, buildContributors, buildReleaseSummary, bump, capReleaseTypeForZeroMajor, changelog, checkGitStatusIfDirty, collectContributorNames, collectPackageBumps, confirmBump, createCommitAndTags, createGitlabRelease, defineConfig, detectGitProvider, detectPackageManager, detectPullRequest, determinePublishTag, determineReleaseType, determineSemverChange, executeBuildCmd, executeFormatCmd, executeHook, expandPackagesToBumpWithDependents, extractChangelogSummary, extractVersionFromPackageTag, extractVersionFromTag, fetchGitTags, filterOutPrivatePackages, filterPrivatePackagesUnlessIncluded, findGitHubPR, findGitLabMR, findReachableCommitBySubject, formatChangelogForSlack, formatPackagesForSlack, formatSlackMessage, formatTweetMessage, generateChangelog, generateMarkDown, getAuthCommand, getBumpedIndependentPackages, getBumpedPackageIndependently, getCIName, getCanaryVersion, getCommitChangedFiles, getCommitSubject, getCurrentGitBranch, getCurrentGitRef, getDefaultConfig, getDependentsOf, getFirstCommit, getGitDiff, getGitStatus, getGitUpstream, getIndependentTag, getLastPackageTag, getLastRepoTag, getLastStableTag, getLastTag, getModifiedReleaseFilePatterns, getNewPackageCompareBase, getNpmRegistry, getPackageCommits, getPackageDependencies, getPackageNewVersion, getPackages, getPackagesOrBumpedPackages, getPackagesToPublishInIndependentMode, getPackagesToPublishInSelectiveMode, getPreid, getReleaseTagNames, getReleaseUrl, getRootPackage, getShortCommitSha, getSlackToken, getSlackWebhookUrl, getTwitterCredentials, github, gitlab, globDirsAbsolute, hasLernaJson, isAncestor, isBumpedPackage, isChangedPreid, isCommitOnlyInIgnoredPackages, isGraduating, isGraduatingToStableBetweenVersion, isInCI, isPrerelease, isPrereleaseReleaseType, isStableReleaseType, isTagVersionCompatibleWithCurrent, isVersionAlreadyPublishedError, isVersionPublished, loadRelizyConfig, mergeTypes, parseChangelogMarkdown, parseGitRemoteUrl, postPrComment, postReleaseToSlack, postReleaseToTwitter, prComment, providerRelease, providerReleaseSafetyCheck, publish, publishPackage, publishSafetyCheck, pushCommitAndTags, pushTagForce, readPackageJson, readPackages, reconcileFromTag, redactSecrets, release, resetRewrittenTagCache, resolveAllConfiguredRegistryTargets, resolveIgnoredPackagePaths, resolveRegistryTargetsForPackage, resolveRegistryTargetsForPackages, resolveTags, retagAnnotatedLocal, rollbackModifiedFiles, shouldFilterPrereleaseTags, social, socialSafetyCheck, tagExists, topologicalSort, tryPostPrComment, updateLernaVersion, withRegistryNpmrc, writeChangelogToFile, writeVersion };
|
|
2343
2359
|
export type { AIConfig, AIPromptTarget, AIProviderName, AISocialConfig, AISystemPromptOverrides, AITargetConfig, BumpConfig, BumpOptions, BumpResult, BumpResultFalsy, BumpResultTruthy, ChangelogConfig, ChangelogInclude, ChangelogOptions, ClaudeCodeProviderOptions, ConfigType, GitProvider, GitUpstream, GitlabRelease, GitlabReleaseResponse, HookConfig, HookStep, HookType, MonorepoConfig, OnRewrittenTag, PackageBase, PackageBumpEntry, PackageManager, PostedRelease, PrCommentConfig, PrCommentMode, PrCommentOptions, PrCommentStatus, ProviderReleaseOptions, ProviderReleaseResult, PublishConfig, PublishOptions, PublishResponse, PullRequestInfo, ReadPackage, Reference, RegistryTarget, ReleaseConfig, ReleaseContext, ReleaseOptions, RelizyConfig, RepoConfig, ResolvedConfig, ResolvedRelizyConfig, ResolvedTags, ResolvedTwitterCredentials, RootPackage, SlackCredentials, SlackOptions, SlackPackageEntry, SlackSocialConfig, SocialConfig, SocialNetworkResult, SocialOptions, SocialResult, Step, TemplatesConfig, TokensConfig, TwitterCredentials, TwitterOptions, TwitterSocialConfig, VersionMode };
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { N as NEW_PACKAGE_MARKER, P as PR_COMMENT_MARKER, a as assertBranchUpToDateWithRemote, b as assertReleaseTagsAvailable, c as buildChangelogBody, d as buildCommentBody, e as buildCompareLink, f as buildContributors, g as buildReleaseSummary, h as bump, i as capReleaseTypeForZeroMajor, j as changelog, k as checkGitStatusIfDirty, l as collectContributorNames, m as collectPackageBumps, n as confirmBump, o as createCommitAndTags, p as createGitlabRelease, q as defineConfig, r as detectGitProvider, s as detectPackageManager, t as detectPullRequest, u as determinePublishTag, v as determineReleaseType, w as determineSemverChange, x as executeBuildCmd, y as executeFormatCmd, z as executeHook, A as expandPackagesToBumpWithDependents, B as extractChangelogSummary, C as extractVersionFromPackageTag, D as extractVersionFromTag, E as fetchGitTags, F as filterOutPrivatePackages, G as
|
|
1
|
+
export { N as NEW_PACKAGE_MARKER, P as PR_COMMENT_MARKER, a as assertBranchUpToDateWithRemote, b as assertReleaseTagsAvailable, c as buildChangelogBody, d as buildCommentBody, e as buildCompareLink, f as buildContributors, g as buildReleaseSummary, h as bump, i as capReleaseTypeForZeroMajor, j as changelog, k as checkGitStatusIfDirty, l as collectContributorNames, m as collectPackageBumps, n as confirmBump, o as createCommitAndTags, p as createGitlabRelease, q as defineConfig, r as detectGitProvider, s as detectPackageManager, t as detectPullRequest, u as determinePublishTag, v as determineReleaseType, w as determineSemverChange, x as executeBuildCmd, y as executeFormatCmd, z as executeHook, A as expandPackagesToBumpWithDependents, B as extractChangelogSummary, C as extractVersionFromPackageTag, D as extractVersionFromTag, E as fetchGitTags, F as filterOutPrivatePackages, G as filterPrivatePackagesUnlessIncluded, H as findGitHubPR, I as findGitLabMR, J as findReachableCommitBySubject, K as formatChangelogForSlack, L as formatPackagesForSlack, M as formatSlackMessage, O as formatTweetMessage, Q as generateChangelog, R as generateMarkDown, S as getAuthCommand, T as getBumpedIndependentPackages, U as getBumpedPackageIndependently, V as getCIName, W as getCanaryVersion, X as getCommitChangedFiles, Y as getCommitSubject, Z as getCurrentGitBranch, _ as getCurrentGitRef, $ as getDefaultConfig, a0 as getDependentsOf, a1 as getFirstCommit, a2 as getGitDiff, a3 as getGitStatus, a4 as getGitUpstream, a5 as getIndependentTag, a6 as getLastPackageTag, a7 as getLastRepoTag, a8 as getLastStableTag, a9 as getLastTag, aa as getModifiedReleaseFilePatterns, ab as getNewPackageCompareBase, ac as getNpmRegistry, ad as getPackageCommits, ae as getPackageDependencies, af as getPackageNewVersion, ag as getPackages, ah as getPackagesOrBumpedPackages, ai as getPackagesToPublishInIndependentMode, aj as getPackagesToPublishInSelectiveMode, ak as getPreid, al as getReleaseTagNames, am as getReleaseUrl, an as getRootPackage, ao as getShortCommitSha, ap as getSlackToken, aq as getSlackWebhookUrl, ar as getTwitterCredentials, as as github, at as gitlab, au as globDirsAbsolute, av as hasLernaJson, aw as isAncestor, ax as isBumpedPackage, ay as isChangedPreid, az as isCommitOnlyInIgnoredPackages, aA as isGraduating, aB as isGraduatingToStableBetweenVersion, aC as isInCI, aD as isPrerelease, aE as isPrereleaseReleaseType, aF as isStableReleaseType, aG as isTagVersionCompatibleWithCurrent, aH as isVersionAlreadyPublishedError, aI as isVersionPublished, aJ as loadRelizyConfig, aK as mergeTypes, aL as parseChangelogMarkdown, aM as parseGitRemoteUrl, aN as postPrComment, aO as postReleaseToSlack, aP as postReleaseToTwitter, aQ as prComment, aR as providerRelease, aS as providerReleaseSafetyCheck, aT as publish, aU as publishPackage, aV as publishSafetyCheck, aW as pushCommitAndTags, aX as pushTagForce, aY as readPackageJson, aZ as readPackages, a_ as reconcileFromTag, a$ as redactSecrets, b0 as release, b1 as resetRewrittenTagCache, b2 as resolveAllConfiguredRegistryTargets, b3 as resolveIgnoredPackagePaths, b4 as resolveRegistryTargetsForPackage, b5 as resolveRegistryTargetsForPackages, b6 as resolveTags, b7 as retagAnnotatedLocal, b8 as rollbackModifiedFiles, b9 as shouldFilterPrereleaseTags, ba as social, bb as socialSafetyCheck, bc as tagExists, bd as topologicalSort, be as tryPostPrComment, bf as updateLernaVersion, bg as withRegistryNpmrc, bh as writeChangelogToFile, bi as writeVersion } from './shared/relizy.uCxVVpbQ.mjs';
|
|
2
2
|
import '@maz-ui/node';
|
|
3
3
|
import 'node:child_process';
|
|
4
4
|
import 'node:process';
|
|
@@ -414,6 +414,24 @@ function getFirstPackageCommitHash(packagePath, cwd) {
|
|
|
414
414
|
return null;
|
|
415
415
|
}
|
|
416
416
|
}
|
|
417
|
+
function getCommitParentHash(hash, cwd) {
|
|
418
|
+
try {
|
|
419
|
+
const parent = execSync(
|
|
420
|
+
`git rev-parse --verify --quiet "${hash}^"`,
|
|
421
|
+
{ cwd, encoding: "utf8" }
|
|
422
|
+
).trim();
|
|
423
|
+
return parent || null;
|
|
424
|
+
} catch {
|
|
425
|
+
return null;
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
function getNewPackageCompareBase(packagePath, cwd) {
|
|
429
|
+
const firstPackageCommit = getFirstPackageCommitHash(packagePath, cwd);
|
|
430
|
+
if (!firstPackageCommit) {
|
|
431
|
+
return null;
|
|
432
|
+
}
|
|
433
|
+
return getCommitParentHash(firstPackageCommit, cwd) || firstPackageCommit;
|
|
434
|
+
}
|
|
417
435
|
function readPackageJson(packagePath) {
|
|
418
436
|
const packageJsonPath = join(packagePath, "package.json");
|
|
419
437
|
if (!existsSync(packageJsonPath)) {
|
|
@@ -774,13 +792,13 @@ async function getPackageCommits({
|
|
|
774
792
|
return [];
|
|
775
793
|
}
|
|
776
794
|
logger.debug(`${pkg.name} is a new package, using first package commit: ${firstPackageCommit.slice(0, 8)}`);
|
|
777
|
-
actualFrom =
|
|
795
|
+
actualFrom = getCommitParentHash(firstPackageCommit, config.cwd) ?? void 0;
|
|
778
796
|
} else {
|
|
779
797
|
actualFrom = await reconcileFromTag({ from, to, config, dryRun });
|
|
780
798
|
}
|
|
781
799
|
const changelogConfig = {
|
|
782
800
|
...config,
|
|
783
|
-
from: actualFrom,
|
|
801
|
+
from: actualFrom ?? "",
|
|
784
802
|
to
|
|
785
803
|
};
|
|
786
804
|
const rawCommits = getGitDiff(actualFrom, to, changelogConfig.cwd);
|
|
@@ -1875,6 +1893,9 @@ function isBumpedPackage(pkg) {
|
|
|
1875
1893
|
function filterOutPrivatePackages(packages) {
|
|
1876
1894
|
return packages.filter((p) => !p.private);
|
|
1877
1895
|
}
|
|
1896
|
+
function filterPrivatePackagesUnlessIncluded(packages, includePrivates) {
|
|
1897
|
+
return includePrivates ? packages : filterOutPrivatePackages(packages);
|
|
1898
|
+
}
|
|
1878
1899
|
async function getPackagesOrBumpedPackages({
|
|
1879
1900
|
config,
|
|
1880
1901
|
bumpResult,
|
|
@@ -3451,14 +3472,16 @@ function resolveChangelogTags({
|
|
|
3451
3472
|
}) {
|
|
3452
3473
|
const isIndependent = config.monorepo?.versionMode === "independent";
|
|
3453
3474
|
const gitFromRef = config.from || pkg.fromTag || getFirstCommit(config.cwd);
|
|
3454
|
-
const
|
|
3455
|
-
const
|
|
3475
|
+
const isNewPackage = gitFromRef === NEW_PACKAGE_MARKER;
|
|
3476
|
+
const isFirstCommit = !isNewPackage && gitFromRef === getFirstCommit(config.cwd);
|
|
3477
|
+
const displayFromTag = isFirstCommit || isNewPackage ? isIndependent ? getIndependentTag({ version: "0.0.0", name: pkg.name }) : config.templates.tagBody.replace("{{newVersion}}", "0.0.0") : gitFromRef;
|
|
3478
|
+
const compareFromRef = isNewPackage ? getNewPackageCompareBase(pkg.path, config.cwd) : displayFromTag;
|
|
3456
3479
|
const gitToRef = config.to || getCurrentGitRef(config.cwd);
|
|
3457
3480
|
const displayToTag = config.to || (isIndependent ? getIndependentTag({ version: newVersion, name: pkg.name }) : config.templates.tagBody.replace("{{newVersion}}", newVersion));
|
|
3458
3481
|
if (!displayToTag) {
|
|
3459
3482
|
throw new Error(`No tag found for ${pkg.name}`);
|
|
3460
3483
|
}
|
|
3461
|
-
return { gitFromRef, gitToRef, displayFromTag, displayToTag, isFirstCommit };
|
|
3484
|
+
return { gitFromRef, gitToRef, displayFromTag, displayToTag, compareFromRef, isFirstCommit };
|
|
3462
3485
|
}
|
|
3463
3486
|
function renderTitle({
|
|
3464
3487
|
fromTag,
|
|
@@ -3474,6 +3497,7 @@ async function renderChangelogParts({
|
|
|
3474
3497
|
config,
|
|
3475
3498
|
fromTag,
|
|
3476
3499
|
toTag,
|
|
3500
|
+
compareFromRef,
|
|
3477
3501
|
isFirstCommit,
|
|
3478
3502
|
sections,
|
|
3479
3503
|
minify,
|
|
@@ -3483,8 +3507,8 @@ async function renderChangelogParts({
|
|
|
3483
3507
|
if (sections.title) {
|
|
3484
3508
|
parts.push(renderTitle({ fromTag, toTag, config }));
|
|
3485
3509
|
}
|
|
3486
|
-
if (sections.compareLink && !minify) {
|
|
3487
|
-
const compareLink = buildCompareLink({ config, from:
|
|
3510
|
+
if (sections.compareLink && !minify && compareFromRef) {
|
|
3511
|
+
const compareLink = buildCompareLink({ config, from: compareFromRef, to: toTag, isFirstCommit });
|
|
3488
3512
|
if (compareLink) {
|
|
3489
3513
|
parts.push(compareLink);
|
|
3490
3514
|
}
|
|
@@ -3519,7 +3543,7 @@ async function generateChangelog({
|
|
|
3519
3543
|
transformBody
|
|
3520
3544
|
}) {
|
|
3521
3545
|
const sections = resolveSections(include);
|
|
3522
|
-
const { gitFromRef, gitToRef, displayFromTag, displayToTag, isFirstCommit } = resolveChangelogTags({ pkg, config, newVersion });
|
|
3546
|
+
const { gitFromRef, gitToRef, displayFromTag, displayToTag, compareFromRef, isFirstCommit } = resolveChangelogTags({ pkg, config, newVersion });
|
|
3523
3547
|
logger.debug(`Generating changelog for ${pkg.name} - git ${gitFromRef}..${gitToRef} - display ${displayFromTag}...${displayToTag}`);
|
|
3524
3548
|
try {
|
|
3525
3549
|
const commits = await getPackageCommits({
|
|
@@ -3536,6 +3560,7 @@ async function generateChangelog({
|
|
|
3536
3560
|
config: displayConfig,
|
|
3537
3561
|
fromTag: displayFromTag,
|
|
3538
3562
|
toTag: displayToTag,
|
|
3563
|
+
compareFromRef,
|
|
3539
3564
|
isFirstCommit,
|
|
3540
3565
|
sections,
|
|
3541
3566
|
minify,
|
|
@@ -3879,13 +3904,13 @@ async function githubIndependentMode({
|
|
|
3879
3904
|
if (!config.tokens.github && !config.repo?.token) {
|
|
3880
3905
|
throw new Error("No GitHub token specified. Set GITHUB_TOKEN or GH_TOKEN environment variable.");
|
|
3881
3906
|
}
|
|
3882
|
-
const packages =
|
|
3907
|
+
const packages = filterPrivatePackagesUnlessIncluded(await getPackagesOrBumpedPackages({
|
|
3883
3908
|
config,
|
|
3884
3909
|
bumpResult,
|
|
3885
3910
|
suffix,
|
|
3886
3911
|
force,
|
|
3887
3912
|
dryRun
|
|
3888
|
-
}));
|
|
3913
|
+
}), config.monorepo?.includePrivates);
|
|
3889
3914
|
logger.info(`Creating ${packages.length} GitHub release(s)`);
|
|
3890
3915
|
const postedReleases = [];
|
|
3891
3916
|
for (const pkg of packages) {
|
|
@@ -4089,13 +4114,13 @@ async function gitlabIndependentMode({
|
|
|
4089
4114
|
force
|
|
4090
4115
|
}) {
|
|
4091
4116
|
logger.debug(`GitLab token: ${config.tokens.gitlab || config.repo?.token ? "\u2713 provided" : "\u2717 missing"}`);
|
|
4092
|
-
const packages =
|
|
4117
|
+
const packages = filterPrivatePackagesUnlessIncluded(await getPackagesOrBumpedPackages({
|
|
4093
4118
|
config,
|
|
4094
4119
|
bumpResult,
|
|
4095
4120
|
suffix,
|
|
4096
4121
|
force,
|
|
4097
4122
|
dryRun
|
|
4098
|
-
}));
|
|
4123
|
+
}), config.monorepo?.includePrivates);
|
|
4099
4124
|
logger.info(`Creating ${packages.length} GitLab release(s) for independent packages`);
|
|
4100
4125
|
logger.debug("Getting current branch...");
|
|
4101
4126
|
const { stdout: currentBranch } = await execPromise("git rev-parse --abbrev-ref HEAD", {
|
|
@@ -5781,10 +5806,12 @@ function buildMetadataLines({
|
|
|
5781
5806
|
branch
|
|
5782
5807
|
}) {
|
|
5783
5808
|
const lines = [];
|
|
5784
|
-
|
|
5785
|
-
|
|
5786
|
-
|
|
5787
|
-
|
|
5809
|
+
if (version) {
|
|
5810
|
+
const versionChanged = oldVersion && oldVersion !== version;
|
|
5811
|
+
lines.push(
|
|
5812
|
+
versionChanged ? `- **Version**: \`${oldVersion}\` \u2192 \`${version}\`` : `- **Version**: \`${version}\``
|
|
5813
|
+
);
|
|
5814
|
+
}
|
|
5788
5815
|
if (tags.length > 0) {
|
|
5789
5816
|
lines.push(`- **Tag(s)**: ${formatTagsList(tags)}`);
|
|
5790
5817
|
}
|
|
@@ -5832,7 +5859,7 @@ function buildInstallPackages({
|
|
|
5832
5859
|
if (packages && packages.length > 0) {
|
|
5833
5860
|
return packages.map((p) => `${p.name}@${p.version}`);
|
|
5834
5861
|
}
|
|
5835
|
-
if (rootPackageName) {
|
|
5862
|
+
if (rootPackageName && version) {
|
|
5836
5863
|
return [`${rootPackageName}@${version}`];
|
|
5837
5864
|
}
|
|
5838
5865
|
return [];
|
|
@@ -5867,6 +5894,22 @@ function buildInstallLines({
|
|
|
5867
5894
|
}
|
|
5868
5895
|
return lines;
|
|
5869
5896
|
}
|
|
5897
|
+
function buildPublishedInstallLines({
|
|
5898
|
+
config,
|
|
5899
|
+
bumpedPackages,
|
|
5900
|
+
packages,
|
|
5901
|
+
version,
|
|
5902
|
+
distTag
|
|
5903
|
+
}) {
|
|
5904
|
+
const publishedBumpedPackages = filterOutPrivatePackages(bumpedPackages);
|
|
5905
|
+
const publishedPackages = packages && filterOutPrivatePackages(packages);
|
|
5906
|
+
const hasNoPackages = bumpedPackages.length === 0 && !packages?.length;
|
|
5907
|
+
const rootPackageName = hasNoPackages ? config.projectName : void 0;
|
|
5908
|
+
const installCmd = getInstallCommand(config.publish?.packageManager);
|
|
5909
|
+
const installPkgs = buildInstallPackages({ bumpedPackages: publishedBumpedPackages, packages: publishedPackages, version, rootPackageName });
|
|
5910
|
+
const pkgNames = resolvePackageNames(publishedBumpedPackages, publishedPackages, rootPackageName);
|
|
5911
|
+
return buildInstallLines({ installCmd, installPkgs, distTag, pkgNames });
|
|
5912
|
+
}
|
|
5870
5913
|
function buildSuccessComment({
|
|
5871
5914
|
config,
|
|
5872
5915
|
branch,
|
|
@@ -5876,11 +5919,15 @@ function buildSuccessComment({
|
|
|
5876
5919
|
rootVersion
|
|
5877
5920
|
}) {
|
|
5878
5921
|
const bumpResult = releaseContext?.bumpResult;
|
|
5879
|
-
const
|
|
5880
|
-
const
|
|
5922
|
+
const includePrivates = config.monorepo?.includePrivates;
|
|
5923
|
+
const allBumpedPackages = bumpResult?.bumpedPackages ?? [];
|
|
5924
|
+
const bumpedPackages = filterPrivatePackagesUnlessIncluded(allBumpedPackages, includePrivates);
|
|
5925
|
+
const listedPackages = packages && filterPrivatePackagesUnlessIncluded(packages, includePrivates);
|
|
5926
|
+
const isIndependent = config.monorepo?.versionMode === "independent";
|
|
5927
|
+
const version = isIndependent ? void 0 : bumpResult?.newVersion ?? rootVersion;
|
|
5881
5928
|
const tags = releaseContext?.tags ?? [];
|
|
5882
|
-
const
|
|
5883
|
-
const
|
|
5929
|
+
const isPublishing = config.release.publish !== false;
|
|
5930
|
+
const distTag = isPublishing ? config.publish?.tag : void 0;
|
|
5884
5931
|
const lines = [PR_COMMENT_MARKER, "", "## \u{1F680} Release published", ""];
|
|
5885
5932
|
const previousVersion = extractVersionFromTag(bumpResult?.fromTag ?? "") || bumpResult?.oldVersion;
|
|
5886
5933
|
lines.push(...buildMetadataLines({
|
|
@@ -5891,10 +5938,10 @@ function buildSuccessComment({
|
|
|
5891
5938
|
date,
|
|
5892
5939
|
branch
|
|
5893
5940
|
}));
|
|
5894
|
-
lines.push(...buildPackageTableLines(bumpedPackages,
|
|
5895
|
-
|
|
5896
|
-
|
|
5897
|
-
|
|
5941
|
+
lines.push(...buildPackageTableLines(bumpedPackages, listedPackages));
|
|
5942
|
+
if (isPublishing) {
|
|
5943
|
+
lines.push(...buildPublishedInstallLines({ config, bumpedPackages: allBumpedPackages, packages, version, distTag }));
|
|
5944
|
+
}
|
|
5898
5945
|
return lines.join("\n");
|
|
5899
5946
|
}
|
|
5900
5947
|
function buildNoReleaseComment({ branch, date }) {
|
|
@@ -5952,21 +5999,21 @@ async function prComment(options = {}) {
|
|
|
5952
5999
|
const branch = getCurrentGitBranch(config.cwd) ?? "unknown";
|
|
5953
6000
|
const date = getFormattedDate();
|
|
5954
6001
|
let packages = [];
|
|
5955
|
-
let rootVersion
|
|
6002
|
+
let rootVersion;
|
|
5956
6003
|
if (!options.releaseContext) {
|
|
5957
6004
|
const rootPackage = readPackageJson(config.cwd);
|
|
5958
6005
|
if (!rootPackage) {
|
|
5959
6006
|
throw new Error("Failed to read root package.json");
|
|
5960
6007
|
}
|
|
5961
6008
|
rootVersion = rootPackage.version;
|
|
5962
|
-
const readPkgs =
|
|
6009
|
+
const readPkgs = readPackages({
|
|
5963
6010
|
cwd: config.cwd,
|
|
5964
6011
|
patterns: config.monorepo?.packages,
|
|
5965
6012
|
ignorePackageNames: config.monorepo?.ignorePackageNames,
|
|
5966
6013
|
ignored: config.monorepo?.ignored,
|
|
5967
6014
|
includePrivates: config.monorepo?.includePrivates
|
|
5968
|
-
})
|
|
5969
|
-
packages = readPkgs.map((pkg) => ({ name: pkg.name, version: pkg.version }));
|
|
6015
|
+
});
|
|
6016
|
+
packages = readPkgs.map((pkg) => ({ name: pkg.name, version: pkg.version, private: pkg.private }));
|
|
5970
6017
|
}
|
|
5971
6018
|
const body = buildCommentBody({
|
|
5972
6019
|
config,
|
|
@@ -7137,4 +7184,4 @@ async function release(options = {}) {
|
|
|
7137
7184
|
}
|
|
7138
7185
|
}
|
|
7139
7186
|
|
|
7140
|
-
export {
|
|
7187
|
+
export { getDefaultConfig as $, expandPackagesToBumpWithDependents as A, extractChangelogSummary as B, extractVersionFromPackageTag as C, extractVersionFromTag as D, fetchGitTags as E, filterOutPrivatePackages as F, filterPrivatePackagesUnlessIncluded as G, findGitHubPR as H, findGitLabMR as I, findReachableCommitBySubject as J, formatChangelogForSlack as K, formatPackagesForSlack as L, formatSlackMessage as M, NEW_PACKAGE_MARKER as N, formatTweetMessage as O, PR_COMMENT_MARKER as P, generateChangelog as Q, generateMarkDown as R, getAuthCommand as S, getBumpedIndependentPackages as T, getBumpedPackageIndependently as U, getCIName as V, getCanaryVersion as W, getCommitChangedFiles as X, getCommitSubject as Y, getCurrentGitBranch as Z, getCurrentGitRef as _, assertBranchUpToDateWithRemote as a, redactSecrets as a$, getDependentsOf as a0, getFirstCommit as a1, getGitDiff as a2, getGitStatus as a3, getGitUpstream as a4, getIndependentTag as a5, getLastPackageTag as a6, getLastRepoTag as a7, getLastStableTag as a8, getLastTag as a9, isGraduating as aA, isGraduatingToStableBetweenVersion as aB, isInCI as aC, isPrerelease as aD, isPrereleaseReleaseType as aE, isStableReleaseType as aF, isTagVersionCompatibleWithCurrent as aG, isVersionAlreadyPublishedError as aH, isVersionPublished as aI, loadRelizyConfig as aJ, mergeTypes as aK, parseChangelogMarkdown as aL, parseGitRemoteUrl as aM, postPrComment as aN, postReleaseToSlack as aO, postReleaseToTwitter as aP, prComment as aQ, providerRelease as aR, providerReleaseSafetyCheck as aS, publish as aT, publishPackage as aU, publishSafetyCheck as aV, pushCommitAndTags as aW, pushTagForce as aX, readPackageJson as aY, readPackages as aZ, reconcileFromTag as a_, getModifiedReleaseFilePatterns as aa, getNewPackageCompareBase as ab, getNpmRegistry as ac, getPackageCommits as ad, getPackageDependencies as ae, getPackageNewVersion as af, getPackages as ag, getPackagesOrBumpedPackages as ah, getPackagesToPublishInIndependentMode as ai, getPackagesToPublishInSelectiveMode as aj, getPreid as ak, getReleaseTagNames as al, getReleaseUrl as am, getRootPackage as an, getShortCommitSha as ao, getSlackToken as ap, getSlackWebhookUrl as aq, getTwitterCredentials as ar, github as as, gitlab as at, globDirsAbsolute as au, hasLernaJson as av, isAncestor as aw, isBumpedPackage as ax, isChangedPreid as ay, isCommitOnlyInIgnoredPackages as az, assertReleaseTagsAvailable as b, release as b0, resetRewrittenTagCache as b1, resolveAllConfiguredRegistryTargets as b2, resolveIgnoredPackagePaths as b3, resolveRegistryTargetsForPackage as b4, resolveRegistryTargetsForPackages as b5, resolveTags as b6, retagAnnotatedLocal as b7, rollbackModifiedFiles as b8, shouldFilterPrereleaseTags as b9, social as ba, socialSafetyCheck as bb, tagExists as bc, topologicalSort as bd, tryPostPrComment as be, updateLernaVersion as bf, withRegistryNpmrc as bg, writeChangelogToFile as bh, writeVersion as bi, buildChangelogBody as c, buildCommentBody as d, buildCompareLink as e, buildContributors as f, buildReleaseSummary as g, bump as h, capReleaseTypeForZeroMajor as i, changelog as j, checkGitStatusIfDirty as k, collectContributorNames as l, collectPackageBumps as m, confirmBump as n, createCommitAndTags as o, createGitlabRelease as p, defineConfig as q, detectGitProvider as r, detectPackageManager as s, detectPullRequest as t, determinePublishTag as u, determineReleaseType as v, determineSemverChange as w, executeBuildCmd as x, executeFormatCmd as y, executeHook as z };
|
package/package.json
CHANGED