relizy 1.4.0-beta.0 → 1.4.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 +65 -6
- package/dist/index.d.ts +65 -6
- package/dist/index.mjs +1 -1
- package/dist/shared/{relizy.CxbwJj6k.mjs → relizy.-haCClxZ.mjs} +74 -47
- 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 { aq as isInCI, ar as getCIName, b as bump, c as changelog, g as publish, e as providerRelease, h as social, p as prComment, r as release } from './shared/relizy.-haCClxZ.mjs';
|
|
9
9
|
import 'node:child_process';
|
|
10
10
|
import '@maz-ui/utils';
|
|
11
11
|
import 'c12';
|
package/dist/index.d.mts
CHANGED
|
@@ -62,6 +62,7 @@ declare function getDefaultConfig(): {
|
|
|
62
62
|
onlyStable: boolean;
|
|
63
63
|
postMaxLength: number;
|
|
64
64
|
noAuthors: boolean;
|
|
65
|
+
noPackages: boolean;
|
|
65
66
|
};
|
|
66
67
|
};
|
|
67
68
|
prComment: Required<PrCommentConfig>;
|
|
@@ -280,6 +281,37 @@ declare function publishPackage({ pkg, config, packageManager, dryRun, }: {
|
|
|
280
281
|
dryRun: boolean;
|
|
281
282
|
}): Promise<void>;
|
|
282
283
|
|
|
284
|
+
/**
|
|
285
|
+
* A package entry as consumed by release-summary renderers (PR comments, Slack messages, etc.).
|
|
286
|
+
* Normalizes the three possible shapes of "which packages shipped and at what version":
|
|
287
|
+
* - `bumpedPackages` from a monorepo bump (has both `oldVersion` and `newVersion`)
|
|
288
|
+
* - `packages` in standalone CLI mode (only `version`, no transition)
|
|
289
|
+
* - a mixed case where a bumped package didn't produce a new version
|
|
290
|
+
*/
|
|
291
|
+
interface PackageBumpEntry {
|
|
292
|
+
/** Package name (e.g. `@acme/ui`) */
|
|
293
|
+
name: string;
|
|
294
|
+
/** Version before the release — only set when a real transition happened */
|
|
295
|
+
oldVersion?: string;
|
|
296
|
+
/** Version after the release — only set when a real transition happened */
|
|
297
|
+
newVersion?: string;
|
|
298
|
+
/** Fallback version when there is no old→new transition (standalone mode, graduations) */
|
|
299
|
+
version: string;
|
|
300
|
+
/** True when `oldVersion` and `newVersion` are both set AND differ */
|
|
301
|
+
hasTransition: boolean;
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Collect package release data in a renderer-agnostic shape.
|
|
305
|
+
* Shared by the PR-comment GFM table and the Slack mrkdwn list.
|
|
306
|
+
*/
|
|
307
|
+
declare function collectPackageBumps({ bumpedPackages, packages, }: {
|
|
308
|
+
bumpedPackages?: BumpResultTruthy['bumpedPackages'];
|
|
309
|
+
packages?: Array<{
|
|
310
|
+
name: string;
|
|
311
|
+
version: string;
|
|
312
|
+
}>;
|
|
313
|
+
}): PackageBumpEntry[];
|
|
314
|
+
|
|
283
315
|
interface PullRequestInfo {
|
|
284
316
|
/**
|
|
285
317
|
* PR/MR number
|
|
@@ -370,10 +402,16 @@ declare function getSlackWebhookUrl(options: {
|
|
|
370
402
|
* Format changelog for Slack (convert markdown to Slack's mrkdwn format)
|
|
371
403
|
*/
|
|
372
404
|
declare function formatChangelogForSlack(changelog: string, maxLength?: number): string;
|
|
405
|
+
/**
|
|
406
|
+
* Render a list of bumped packages as a Slack mrkdwn bullet list.
|
|
407
|
+
* Each entry becomes `• \`name\`: \`old\` → \`new\`` when a transition is detected,
|
|
408
|
+
* otherwise falls back to `• \`name\`: \`version\``.
|
|
409
|
+
*/
|
|
410
|
+
declare function formatPackagesForSlack(packages: PackageBumpEntry[]): string;
|
|
373
411
|
/**
|
|
374
412
|
* Format the Slack message using blocks
|
|
375
413
|
*/
|
|
376
|
-
declare function formatSlackMessage({ projectName, version, changelog, releaseUrl, changelogUrl, template, contributors, postMaxLength }: {
|
|
414
|
+
declare function formatSlackMessage({ projectName, version, changelog, releaseUrl, changelogUrl, template, contributors, packages, postMaxLength }: {
|
|
377
415
|
template?: string;
|
|
378
416
|
projectName: string;
|
|
379
417
|
version: string;
|
|
@@ -381,6 +419,7 @@ declare function formatSlackMessage({ projectName, version, changelog, releaseUr
|
|
|
381
419
|
releaseUrl?: string;
|
|
382
420
|
changelogUrl?: string;
|
|
383
421
|
contributors?: string[];
|
|
422
|
+
packages?: PackageBumpEntry[];
|
|
384
423
|
postMaxLength?: number;
|
|
385
424
|
}): any[];
|
|
386
425
|
/**
|
|
@@ -388,7 +427,7 @@ declare function formatSlackMessage({ projectName, version, changelog, releaseUr
|
|
|
388
427
|
* Dispatches to Incoming Webhook (if `webhookUrl` is set) or Web API (`token` + `channel`).
|
|
389
428
|
* When both are provided, the webhook takes priority.
|
|
390
429
|
*/
|
|
391
|
-
declare function postReleaseToSlack({ version, projectName, changelog, releaseUrl, changelogUrl, channel, token, webhookUrl, template, contributors, postMaxLength, dryRun, }: SlackOptions): Promise<{
|
|
430
|
+
declare function postReleaseToSlack({ version, projectName, changelog, releaseUrl, changelogUrl, channel, token, webhookUrl, template, contributors, packages, postMaxLength, dryRun, }: SlackOptions): Promise<{
|
|
392
431
|
ok: true;
|
|
393
432
|
transport: "webhook";
|
|
394
433
|
} | _slack_web_api.ChatPostMessageResponse | undefined>;
|
|
@@ -1280,7 +1319,7 @@ interface TwitterSocialConfig {
|
|
|
1280
1319
|
/**
|
|
1281
1320
|
* Custom message template
|
|
1282
1321
|
* Available variables: {{projectName}}, {{newVersion}}, {{changelog}}, {{releaseUrl}}, {{changelogUrl}}
|
|
1283
|
-
* @default '
|
|
1322
|
+
* @default '📣 {{projectName}} {{newVersion}} is out!\n\n{{changelog}}\n\n{{releaseUrl}}\n{{changelogUrl}}'
|
|
1284
1323
|
*/
|
|
1285
1324
|
template?: string;
|
|
1286
1325
|
/**
|
|
@@ -1347,6 +1386,11 @@ interface SlackSocialConfig {
|
|
|
1347
1386
|
* @default false
|
|
1348
1387
|
*/
|
|
1349
1388
|
noAuthors?: boolean;
|
|
1389
|
+
/**
|
|
1390
|
+
* Hide the packages block (list of bumped packages with their before → after versions).
|
|
1391
|
+
* @default false
|
|
1392
|
+
*/
|
|
1393
|
+
noPackages?: boolean;
|
|
1350
1394
|
}
|
|
1351
1395
|
type AIProviderName = 'claude-code';
|
|
1352
1396
|
interface ClaudeCodeProviderOptions {
|
|
@@ -1534,12 +1578,27 @@ interface SlackOptions {
|
|
|
1534
1578
|
* Contributor names (plain strings, no email/handle). Empty array or undefined → no contributors block.
|
|
1535
1579
|
*/
|
|
1536
1580
|
contributors?: string[];
|
|
1581
|
+
/**
|
|
1582
|
+
* Packages bumped in this release. Empty array or undefined → no packages block.
|
|
1583
|
+
*/
|
|
1584
|
+
packages?: SlackPackageEntry[];
|
|
1537
1585
|
/**
|
|
1538
1586
|
* Run without side effects
|
|
1539
1587
|
* @default false
|
|
1540
1588
|
*/
|
|
1541
1589
|
dryRun?: boolean;
|
|
1542
1590
|
}
|
|
1591
|
+
/**
|
|
1592
|
+
* A bumped-package entry in a Slack message (derived from PackageBumpEntry in src/core/packages.ts).
|
|
1593
|
+
* Duplicated here to avoid a core→types back-import; kept in sync by design.
|
|
1594
|
+
*/
|
|
1595
|
+
interface SlackPackageEntry {
|
|
1596
|
+
name: string;
|
|
1597
|
+
oldVersion?: string;
|
|
1598
|
+
newVersion?: string;
|
|
1599
|
+
version: string;
|
|
1600
|
+
hasTransition: boolean;
|
|
1601
|
+
}
|
|
1543
1602
|
interface TemplatesConfig {
|
|
1544
1603
|
/**
|
|
1545
1604
|
* Commit message template (title).
|
|
@@ -1584,7 +1643,7 @@ interface TemplatesConfig {
|
|
|
1584
1643
|
/**
|
|
1585
1644
|
* Twitter message template
|
|
1586
1645
|
* Available variables: {{projectName}}, {{newVersion}}, {{changelog}}, {{releaseUrl}}, {{changelogUrl}}
|
|
1587
|
-
* @default '
|
|
1646
|
+
* @default '📣 {{projectName}} {{newVersion}} is out!\n\n{{changelog}}\n\n{{releaseUrl}}\n{{changelogUrl}}'
|
|
1588
1647
|
*/
|
|
1589
1648
|
twitterMessage?: string;
|
|
1590
1649
|
/**
|
|
@@ -1815,5 +1874,5 @@ declare function socialSafetyCheck({ config }: {
|
|
|
1815
1874
|
}): Promise<void>;
|
|
1816
1875
|
declare function social(options?: Partial<SocialOptions>): Promise<SocialResult>;
|
|
1817
1876
|
|
|
1818
|
-
export { NEW_PACKAGE_MARKER, PR_COMMENT_MARKER, buildChangelogBody, buildCommentBody, buildCompareLink, buildContributors, bump, capReleaseTypeForZeroMajor, changelog, checkGitStatusIfDirty, collectContributorNames, confirmBump, createCommitAndTags, createGitlabRelease, defineConfig, detectGitProvider, detectPackageManager, detectPullRequest, determinePublishTag, determineReleaseType, determineSemverChange, executeBuildCmd, executeFormatCmd, executeHook, expandPackagesToBumpWithDependents, extractChangelogSummary, extractVersionFromPackageTag, extractVersionFromTag, fetchGitTags, filterOutPrivatePackages, findGitHubPR, findGitLabMR, formatChangelogForSlack, formatSlackMessage, formatTweetMessage, generateChangelog, generateMarkDown, getAuthCommand, getBumpedIndependentPackages, getBumpedPackageIndependently, getCIName, getCanaryVersion, getCurrentGitBranch, getCurrentGitRef, getDefaultConfig, getDependentsOf, getFirstCommit, getGitStatus, getIndependentTag, getLastPackageTag, getLastRepoTag, getLastStableTag, getLastTag, getModifiedReleaseFilePatterns, getPackageCommits, getPackageDependencies, getPackageNewVersion, getPackages, getPackagesOrBumpedPackages, getPackagesToPublishInIndependentMode, getPackagesToPublishInSelectiveMode, getPreid, getReleaseUrl, getRootPackage, getShortCommitSha, getSlackToken, getSlackWebhookUrl, getTwitterCredentials, github, gitlab, hasLernaJson, isBumpedPackage, isChangedPreid, isGraduating, isGraduatingToStableBetweenVersion, isInCI, isPrerelease, isPrereleaseReleaseType, isStableReleaseType, isTagVersionCompatibleWithCurrent, loadRelizyConfig, mergeTypes, parseChangelogMarkdown, parseGitRemoteUrl, postPrComment, postReleaseToSlack, postReleaseToTwitter, prComment, providerRelease, providerReleaseSafetyCheck, publish, publishPackage, publishSafetyCheck, pushCommitAndTags, readPackageJson, readPackages, release, resolveTags, rollbackModifiedFiles, shouldFilterPrereleaseTags, social, socialSafetyCheck, topologicalSort, updateLernaVersion, writeChangelogToFile, writeVersion };
|
|
1819
|
-
export type { AIConfig, AIPromptTarget, AIProviderName, AISocialConfig, AISystemPromptOverrides, AITargetConfig, BumpConfig, BumpOptions, BumpResult, BumpResultFalsy, BumpResultTruthy, ChangelogConfig, ChangelogOptions, ClaudeCodeProviderOptions, ConfigType, GitProvider, GitlabRelease, GitlabReleaseResponse, HookConfig, HookStep, HookType, MonorepoConfig, PackageBase, PackageManager, PostedRelease, PrCommentConfig, PrCommentMode, PrCommentOptions, PrCommentStatus, ProviderReleaseOptions, ProviderReleaseResult, PublishConfig, PublishOptions, PublishResponse, PullRequestInfo, ReadPackage, Reference, ReleaseConfig, ReleaseContext, ReleaseOptions, RelizyConfig, RepoConfig, ResolvedConfig, ResolvedRelizyConfig, ResolvedTags, ResolvedTwitterCredentials, RootPackage, SlackCredentials, SlackOptions, SlackSocialConfig, SocialConfig, SocialNetworkResult, SocialOptions, SocialResult, Step, TemplatesConfig, TokensConfig, TwitterCredentials, TwitterOptions, TwitterSocialConfig, VersionMode };
|
|
1877
|
+
export { NEW_PACKAGE_MARKER, PR_COMMENT_MARKER, buildChangelogBody, buildCommentBody, buildCompareLink, buildContributors, 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, formatChangelogForSlack, formatPackagesForSlack, formatSlackMessage, formatTweetMessage, generateChangelog, generateMarkDown, getAuthCommand, getBumpedIndependentPackages, getBumpedPackageIndependently, getCIName, getCanaryVersion, getCurrentGitBranch, getCurrentGitRef, getDefaultConfig, getDependentsOf, getFirstCommit, getGitStatus, getIndependentTag, getLastPackageTag, getLastRepoTag, getLastStableTag, getLastTag, getModifiedReleaseFilePatterns, getPackageCommits, getPackageDependencies, getPackageNewVersion, getPackages, getPackagesOrBumpedPackages, getPackagesToPublishInIndependentMode, getPackagesToPublishInSelectiveMode, getPreid, getReleaseUrl, getRootPackage, getShortCommitSha, getSlackToken, getSlackWebhookUrl, getTwitterCredentials, github, gitlab, hasLernaJson, isBumpedPackage, isChangedPreid, isGraduating, isGraduatingToStableBetweenVersion, isInCI, isPrerelease, isPrereleaseReleaseType, isStableReleaseType, isTagVersionCompatibleWithCurrent, loadRelizyConfig, mergeTypes, parseChangelogMarkdown, parseGitRemoteUrl, postPrComment, postReleaseToSlack, postReleaseToTwitter, prComment, providerRelease, providerReleaseSafetyCheck, publish, publishPackage, publishSafetyCheck, pushCommitAndTags, readPackageJson, readPackages, release, resolveTags, rollbackModifiedFiles, shouldFilterPrereleaseTags, social, socialSafetyCheck, topologicalSort, updateLernaVersion, writeChangelogToFile, writeVersion };
|
|
1878
|
+
export type { AIConfig, AIPromptTarget, AIProviderName, AISocialConfig, AISystemPromptOverrides, AITargetConfig, BumpConfig, BumpOptions, BumpResult, BumpResultFalsy, BumpResultTruthy, ChangelogConfig, ChangelogOptions, ClaudeCodeProviderOptions, ConfigType, GitProvider, GitlabRelease, GitlabReleaseResponse, HookConfig, HookStep, HookType, MonorepoConfig, PackageBase, PackageBumpEntry, PackageManager, PostedRelease, PrCommentConfig, PrCommentMode, PrCommentOptions, PrCommentStatus, ProviderReleaseOptions, ProviderReleaseResult, PublishConfig, PublishOptions, PublishResponse, PullRequestInfo, ReadPackage, Reference, 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
|
@@ -62,6 +62,7 @@ declare function getDefaultConfig(): {
|
|
|
62
62
|
onlyStable: boolean;
|
|
63
63
|
postMaxLength: number;
|
|
64
64
|
noAuthors: boolean;
|
|
65
|
+
noPackages: boolean;
|
|
65
66
|
};
|
|
66
67
|
};
|
|
67
68
|
prComment: Required<PrCommentConfig>;
|
|
@@ -280,6 +281,37 @@ declare function publishPackage({ pkg, config, packageManager, dryRun, }: {
|
|
|
280
281
|
dryRun: boolean;
|
|
281
282
|
}): Promise<void>;
|
|
282
283
|
|
|
284
|
+
/**
|
|
285
|
+
* A package entry as consumed by release-summary renderers (PR comments, Slack messages, etc.).
|
|
286
|
+
* Normalizes the three possible shapes of "which packages shipped and at what version":
|
|
287
|
+
* - `bumpedPackages` from a monorepo bump (has both `oldVersion` and `newVersion`)
|
|
288
|
+
* - `packages` in standalone CLI mode (only `version`, no transition)
|
|
289
|
+
* - a mixed case where a bumped package didn't produce a new version
|
|
290
|
+
*/
|
|
291
|
+
interface PackageBumpEntry {
|
|
292
|
+
/** Package name (e.g. `@acme/ui`) */
|
|
293
|
+
name: string;
|
|
294
|
+
/** Version before the release — only set when a real transition happened */
|
|
295
|
+
oldVersion?: string;
|
|
296
|
+
/** Version after the release — only set when a real transition happened */
|
|
297
|
+
newVersion?: string;
|
|
298
|
+
/** Fallback version when there is no old→new transition (standalone mode, graduations) */
|
|
299
|
+
version: string;
|
|
300
|
+
/** True when `oldVersion` and `newVersion` are both set AND differ */
|
|
301
|
+
hasTransition: boolean;
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Collect package release data in a renderer-agnostic shape.
|
|
305
|
+
* Shared by the PR-comment GFM table and the Slack mrkdwn list.
|
|
306
|
+
*/
|
|
307
|
+
declare function collectPackageBumps({ bumpedPackages, packages, }: {
|
|
308
|
+
bumpedPackages?: BumpResultTruthy['bumpedPackages'];
|
|
309
|
+
packages?: Array<{
|
|
310
|
+
name: string;
|
|
311
|
+
version: string;
|
|
312
|
+
}>;
|
|
313
|
+
}): PackageBumpEntry[];
|
|
314
|
+
|
|
283
315
|
interface PullRequestInfo {
|
|
284
316
|
/**
|
|
285
317
|
* PR/MR number
|
|
@@ -370,10 +402,16 @@ declare function getSlackWebhookUrl(options: {
|
|
|
370
402
|
* Format changelog for Slack (convert markdown to Slack's mrkdwn format)
|
|
371
403
|
*/
|
|
372
404
|
declare function formatChangelogForSlack(changelog: string, maxLength?: number): string;
|
|
405
|
+
/**
|
|
406
|
+
* Render a list of bumped packages as a Slack mrkdwn bullet list.
|
|
407
|
+
* Each entry becomes `• \`name\`: \`old\` → \`new\`` when a transition is detected,
|
|
408
|
+
* otherwise falls back to `• \`name\`: \`version\``.
|
|
409
|
+
*/
|
|
410
|
+
declare function formatPackagesForSlack(packages: PackageBumpEntry[]): string;
|
|
373
411
|
/**
|
|
374
412
|
* Format the Slack message using blocks
|
|
375
413
|
*/
|
|
376
|
-
declare function formatSlackMessage({ projectName, version, changelog, releaseUrl, changelogUrl, template, contributors, postMaxLength }: {
|
|
414
|
+
declare function formatSlackMessage({ projectName, version, changelog, releaseUrl, changelogUrl, template, contributors, packages, postMaxLength }: {
|
|
377
415
|
template?: string;
|
|
378
416
|
projectName: string;
|
|
379
417
|
version: string;
|
|
@@ -381,6 +419,7 @@ declare function formatSlackMessage({ projectName, version, changelog, releaseUr
|
|
|
381
419
|
releaseUrl?: string;
|
|
382
420
|
changelogUrl?: string;
|
|
383
421
|
contributors?: string[];
|
|
422
|
+
packages?: PackageBumpEntry[];
|
|
384
423
|
postMaxLength?: number;
|
|
385
424
|
}): any[];
|
|
386
425
|
/**
|
|
@@ -388,7 +427,7 @@ declare function formatSlackMessage({ projectName, version, changelog, releaseUr
|
|
|
388
427
|
* Dispatches to Incoming Webhook (if `webhookUrl` is set) or Web API (`token` + `channel`).
|
|
389
428
|
* When both are provided, the webhook takes priority.
|
|
390
429
|
*/
|
|
391
|
-
declare function postReleaseToSlack({ version, projectName, changelog, releaseUrl, changelogUrl, channel, token, webhookUrl, template, contributors, postMaxLength, dryRun, }: SlackOptions): Promise<{
|
|
430
|
+
declare function postReleaseToSlack({ version, projectName, changelog, releaseUrl, changelogUrl, channel, token, webhookUrl, template, contributors, packages, postMaxLength, dryRun, }: SlackOptions): Promise<{
|
|
392
431
|
ok: true;
|
|
393
432
|
transport: "webhook";
|
|
394
433
|
} | _slack_web_api.ChatPostMessageResponse | undefined>;
|
|
@@ -1280,7 +1319,7 @@ interface TwitterSocialConfig {
|
|
|
1280
1319
|
/**
|
|
1281
1320
|
* Custom message template
|
|
1282
1321
|
* Available variables: {{projectName}}, {{newVersion}}, {{changelog}}, {{releaseUrl}}, {{changelogUrl}}
|
|
1283
|
-
* @default '
|
|
1322
|
+
* @default '📣 {{projectName}} {{newVersion}} is out!\n\n{{changelog}}\n\n{{releaseUrl}}\n{{changelogUrl}}'
|
|
1284
1323
|
*/
|
|
1285
1324
|
template?: string;
|
|
1286
1325
|
/**
|
|
@@ -1347,6 +1386,11 @@ interface SlackSocialConfig {
|
|
|
1347
1386
|
* @default false
|
|
1348
1387
|
*/
|
|
1349
1388
|
noAuthors?: boolean;
|
|
1389
|
+
/**
|
|
1390
|
+
* Hide the packages block (list of bumped packages with their before → after versions).
|
|
1391
|
+
* @default false
|
|
1392
|
+
*/
|
|
1393
|
+
noPackages?: boolean;
|
|
1350
1394
|
}
|
|
1351
1395
|
type AIProviderName = 'claude-code';
|
|
1352
1396
|
interface ClaudeCodeProviderOptions {
|
|
@@ -1534,12 +1578,27 @@ interface SlackOptions {
|
|
|
1534
1578
|
* Contributor names (plain strings, no email/handle). Empty array or undefined → no contributors block.
|
|
1535
1579
|
*/
|
|
1536
1580
|
contributors?: string[];
|
|
1581
|
+
/**
|
|
1582
|
+
* Packages bumped in this release. Empty array or undefined → no packages block.
|
|
1583
|
+
*/
|
|
1584
|
+
packages?: SlackPackageEntry[];
|
|
1537
1585
|
/**
|
|
1538
1586
|
* Run without side effects
|
|
1539
1587
|
* @default false
|
|
1540
1588
|
*/
|
|
1541
1589
|
dryRun?: boolean;
|
|
1542
1590
|
}
|
|
1591
|
+
/**
|
|
1592
|
+
* A bumped-package entry in a Slack message (derived from PackageBumpEntry in src/core/packages.ts).
|
|
1593
|
+
* Duplicated here to avoid a core→types back-import; kept in sync by design.
|
|
1594
|
+
*/
|
|
1595
|
+
interface SlackPackageEntry {
|
|
1596
|
+
name: string;
|
|
1597
|
+
oldVersion?: string;
|
|
1598
|
+
newVersion?: string;
|
|
1599
|
+
version: string;
|
|
1600
|
+
hasTransition: boolean;
|
|
1601
|
+
}
|
|
1543
1602
|
interface TemplatesConfig {
|
|
1544
1603
|
/**
|
|
1545
1604
|
* Commit message template (title).
|
|
@@ -1584,7 +1643,7 @@ interface TemplatesConfig {
|
|
|
1584
1643
|
/**
|
|
1585
1644
|
* Twitter message template
|
|
1586
1645
|
* Available variables: {{projectName}}, {{newVersion}}, {{changelog}}, {{releaseUrl}}, {{changelogUrl}}
|
|
1587
|
-
* @default '
|
|
1646
|
+
* @default '📣 {{projectName}} {{newVersion}} is out!\n\n{{changelog}}\n\n{{releaseUrl}}\n{{changelogUrl}}'
|
|
1588
1647
|
*/
|
|
1589
1648
|
twitterMessage?: string;
|
|
1590
1649
|
/**
|
|
@@ -1815,5 +1874,5 @@ declare function socialSafetyCheck({ config }: {
|
|
|
1815
1874
|
}): Promise<void>;
|
|
1816
1875
|
declare function social(options?: Partial<SocialOptions>): Promise<SocialResult>;
|
|
1817
1876
|
|
|
1818
|
-
export { NEW_PACKAGE_MARKER, PR_COMMENT_MARKER, buildChangelogBody, buildCommentBody, buildCompareLink, buildContributors, bump, capReleaseTypeForZeroMajor, changelog, checkGitStatusIfDirty, collectContributorNames, confirmBump, createCommitAndTags, createGitlabRelease, defineConfig, detectGitProvider, detectPackageManager, detectPullRequest, determinePublishTag, determineReleaseType, determineSemverChange, executeBuildCmd, executeFormatCmd, executeHook, expandPackagesToBumpWithDependents, extractChangelogSummary, extractVersionFromPackageTag, extractVersionFromTag, fetchGitTags, filterOutPrivatePackages, findGitHubPR, findGitLabMR, formatChangelogForSlack, formatSlackMessage, formatTweetMessage, generateChangelog, generateMarkDown, getAuthCommand, getBumpedIndependentPackages, getBumpedPackageIndependently, getCIName, getCanaryVersion, getCurrentGitBranch, getCurrentGitRef, getDefaultConfig, getDependentsOf, getFirstCommit, getGitStatus, getIndependentTag, getLastPackageTag, getLastRepoTag, getLastStableTag, getLastTag, getModifiedReleaseFilePatterns, getPackageCommits, getPackageDependencies, getPackageNewVersion, getPackages, getPackagesOrBumpedPackages, getPackagesToPublishInIndependentMode, getPackagesToPublishInSelectiveMode, getPreid, getReleaseUrl, getRootPackage, getShortCommitSha, getSlackToken, getSlackWebhookUrl, getTwitterCredentials, github, gitlab, hasLernaJson, isBumpedPackage, isChangedPreid, isGraduating, isGraduatingToStableBetweenVersion, isInCI, isPrerelease, isPrereleaseReleaseType, isStableReleaseType, isTagVersionCompatibleWithCurrent, loadRelizyConfig, mergeTypes, parseChangelogMarkdown, parseGitRemoteUrl, postPrComment, postReleaseToSlack, postReleaseToTwitter, prComment, providerRelease, providerReleaseSafetyCheck, publish, publishPackage, publishSafetyCheck, pushCommitAndTags, readPackageJson, readPackages, release, resolveTags, rollbackModifiedFiles, shouldFilterPrereleaseTags, social, socialSafetyCheck, topologicalSort, updateLernaVersion, writeChangelogToFile, writeVersion };
|
|
1819
|
-
export type { AIConfig, AIPromptTarget, AIProviderName, AISocialConfig, AISystemPromptOverrides, AITargetConfig, BumpConfig, BumpOptions, BumpResult, BumpResultFalsy, BumpResultTruthy, ChangelogConfig, ChangelogOptions, ClaudeCodeProviderOptions, ConfigType, GitProvider, GitlabRelease, GitlabReleaseResponse, HookConfig, HookStep, HookType, MonorepoConfig, PackageBase, PackageManager, PostedRelease, PrCommentConfig, PrCommentMode, PrCommentOptions, PrCommentStatus, ProviderReleaseOptions, ProviderReleaseResult, PublishConfig, PublishOptions, PublishResponse, PullRequestInfo, ReadPackage, Reference, ReleaseConfig, ReleaseContext, ReleaseOptions, RelizyConfig, RepoConfig, ResolvedConfig, ResolvedRelizyConfig, ResolvedTags, ResolvedTwitterCredentials, RootPackage, SlackCredentials, SlackOptions, SlackSocialConfig, SocialConfig, SocialNetworkResult, SocialOptions, SocialResult, Step, TemplatesConfig, TokensConfig, TwitterCredentials, TwitterOptions, TwitterSocialConfig, VersionMode };
|
|
1877
|
+
export { NEW_PACKAGE_MARKER, PR_COMMENT_MARKER, buildChangelogBody, buildCommentBody, buildCompareLink, buildContributors, 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, formatChangelogForSlack, formatPackagesForSlack, formatSlackMessage, formatTweetMessage, generateChangelog, generateMarkDown, getAuthCommand, getBumpedIndependentPackages, getBumpedPackageIndependently, getCIName, getCanaryVersion, getCurrentGitBranch, getCurrentGitRef, getDefaultConfig, getDependentsOf, getFirstCommit, getGitStatus, getIndependentTag, getLastPackageTag, getLastRepoTag, getLastStableTag, getLastTag, getModifiedReleaseFilePatterns, getPackageCommits, getPackageDependencies, getPackageNewVersion, getPackages, getPackagesOrBumpedPackages, getPackagesToPublishInIndependentMode, getPackagesToPublishInSelectiveMode, getPreid, getReleaseUrl, getRootPackage, getShortCommitSha, getSlackToken, getSlackWebhookUrl, getTwitterCredentials, github, gitlab, hasLernaJson, isBumpedPackage, isChangedPreid, isGraduating, isGraduatingToStableBetweenVersion, isInCI, isPrerelease, isPrereleaseReleaseType, isStableReleaseType, isTagVersionCompatibleWithCurrent, loadRelizyConfig, mergeTypes, parseChangelogMarkdown, parseGitRemoteUrl, postPrComment, postReleaseToSlack, postReleaseToTwitter, prComment, providerRelease, providerReleaseSafetyCheck, publish, publishPackage, publishSafetyCheck, pushCommitAndTags, readPackageJson, readPackages, release, resolveTags, rollbackModifiedFiles, shouldFilterPrereleaseTags, social, socialSafetyCheck, topologicalSort, updateLernaVersion, writeChangelogToFile, writeVersion };
|
|
1878
|
+
export type { AIConfig, AIPromptTarget, AIProviderName, AISocialConfig, AISystemPromptOverrides, AITargetConfig, BumpConfig, BumpOptions, BumpResult, BumpResultFalsy, BumpResultTruthy, ChangelogConfig, ChangelogOptions, ClaudeCodeProviderOptions, ConfigType, GitProvider, GitlabRelease, GitlabReleaseResponse, HookConfig, HookStep, HookType, MonorepoConfig, PackageBase, PackageBumpEntry, PackageManager, PostedRelease, PrCommentConfig, PrCommentMode, PrCommentOptions, PrCommentStatus, ProviderReleaseOptions, ProviderReleaseResult, PublishConfig, PublishOptions, PublishResponse, PullRequestInfo, ReadPackage, Reference, 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 {
|
|
1
|
+
export { ak as NEW_PACKAGE_MARKER, $ as PR_COMMENT_MARKER, M as buildChangelogBody, a as buildCommentBody, L as buildCompareLink, O as buildContributors, b as bump, ay as capReleaseTypeForZeroMajor, c as changelog, v as checkGitStatusIfDirty, N as collectContributorNames, X as collectPackageBumps, aM as confirmBump, B as createCommitAndTags, J as createGitlabRelease, k as defineConfig, y as detectGitProvider, R as detectPackageManager, _ as detectPullRequest, S as determinePublishTag, aA as determineReleaseType, az as determineSemverChange, at as executeBuildCmd, as as executeFormatCmd, ap as executeHook, q as expandPackagesToBumpWithDependents, ad as extractChangelogSummary, aE as extractVersionFromPackageTag, aP as extractVersionFromTag, x as fetchGitTags, av as filterOutPrivatePackages, Y as findGitHubPR, Z as findGitLabMR, a9 as formatChangelogForSlack, aa as formatPackagesForSlack, ab as formatSlackMessage, an as formatTweetMessage, i as generateChangelog, P as generateMarkDown, V as getAuthCommand, aN as getBumpedIndependentPackages, aL as getBumpedPackageIndependently, ar as getCIName, aQ as getCanaryVersion, F as getCurrentGitBranch, G as getCurrentGitRef, j as getDefaultConfig, o as getDependentsOf, E as getFirstCommit, u as getGitStatus, af as getIndependentTag, aj as getLastPackageTag, ai as getLastRepoTag, ag as getLastStableTag, ah as getLastTag, A as getModifiedReleaseFilePatterns, a5 as getPackageCommits, n as getPackageDependencies, aC as getPackageNewVersion, a4 as getPackages, aw as getPackagesOrBumpedPackages, U as getPackagesToPublishInIndependentMode, T as getPackagesToPublishInSelectiveMode, aJ as getPreid, ae as getReleaseUrl, a2 as getRootPackage, H as getShortCommitSha, a7 as getSlackToken, a8 as getSlackWebhookUrl, am as getTwitterCredentials, I as github, K as gitlab, a6 as hasLernaJson, au as isBumpedPackage, aK as isChangedPreid, aI as isGraduating, ax as isGraduatingToStableBetweenVersion, aq as isInCI, aF as isPrerelease, aH as isPrereleaseReleaseType, aG as isStableReleaseType, aR as isTagVersionCompatibleWithCurrent, l as loadRelizyConfig, m as mergeTypes, Q as parseChangelogMarkdown, z as parseGitRemoteUrl, a0 as postPrComment, ac as postReleaseToSlack, ao as postReleaseToTwitter, p as prComment, e as providerRelease, d as providerReleaseSafetyCheck, g as publish, W as publishPackage, f as publishSafetyCheck, C as pushCommitAndTags, a1 as readPackageJson, a3 as readPackages, r as release, al as resolveTags, D as rollbackModifiedFiles, aO as shouldFilterPrereleaseTags, h as social, s as socialSafetyCheck, t as topologicalSort, aD as updateLernaVersion, w as writeChangelogToFile, aB as writeVersion } from './shared/relizy.-haCClxZ.mjs';
|
|
2
2
|
import '@maz-ui/node';
|
|
3
3
|
import 'node:child_process';
|
|
4
4
|
import 'node:process';
|
|
@@ -420,24 +420,6 @@ function isAllowedCommit({
|
|
|
420
420
|
}
|
|
421
421
|
return false;
|
|
422
422
|
}
|
|
423
|
-
function isCommitOfTrackedPackages({
|
|
424
|
-
commit,
|
|
425
|
-
config
|
|
426
|
-
}) {
|
|
427
|
-
if (!config.monorepo?.packages?.length) {
|
|
428
|
-
return true;
|
|
429
|
-
}
|
|
430
|
-
const packages = readPackages({
|
|
431
|
-
cwd: config.cwd,
|
|
432
|
-
patterns: config.monorepo.packages,
|
|
433
|
-
ignorePackageNames: config.monorepo?.ignorePackageNames,
|
|
434
|
-
includePrivates: config.monorepo?.includePrivates
|
|
435
|
-
});
|
|
436
|
-
return packages.some((pkg) => {
|
|
437
|
-
const path = relative(config.cwd, pkg.path).split(sep).join("/");
|
|
438
|
-
return commit.body.includes(path);
|
|
439
|
-
});
|
|
440
|
-
}
|
|
441
423
|
async function getPackageCommits({
|
|
442
424
|
pkg,
|
|
443
425
|
from,
|
|
@@ -470,18 +452,17 @@ async function getPackageCommits({
|
|
|
470
452
|
if (!rootPackage) {
|
|
471
453
|
throw new Error("Failed to read root package.json");
|
|
472
454
|
}
|
|
455
|
+
const isRootPackage = pkg.path === changelogConfig.cwd || pkg.name === rootPackage.name;
|
|
473
456
|
const commits = allCommits.filter((commit) => {
|
|
474
457
|
const type = changelogConfig?.types[commit.type];
|
|
475
458
|
if (!isAllowedCommit({ commit, type, changelog })) {
|
|
476
459
|
return false;
|
|
477
460
|
}
|
|
478
|
-
|
|
479
|
-
if ((pkg.path === changelogConfig.cwd || pkg.name === rootPackage.name) && isTrackedPackage) {
|
|
461
|
+
if (isRootPackage) {
|
|
480
462
|
return true;
|
|
481
463
|
}
|
|
482
464
|
const packageRelativePath = relative(changelogConfig.cwd, pkg.path).split(sep).join("/");
|
|
483
|
-
|
|
484
|
-
return bodyContainsPath && isTrackedPackage;
|
|
465
|
+
return commit.body.includes(packageRelativePath);
|
|
485
466
|
});
|
|
486
467
|
logger.debug(`Found ${commits.length} commit(s) for ${pkg.name} from ${from} to ${to}`);
|
|
487
468
|
if (commits.length > 0) {
|
|
@@ -1847,7 +1828,7 @@ function getDefaultConfig() {
|
|
|
1847
1828
|
tagMessage: "Bump version to {{newVersion}}",
|
|
1848
1829
|
tagBody: "v{{newVersion}}",
|
|
1849
1830
|
emptyChangelogContent: "No relevant changes for this release",
|
|
1850
|
-
twitterMessage: "\u{
|
|
1831
|
+
twitterMessage: "\u{1F4E3} {{projectName}} {{newVersion}} is out!\n\n{{changelog}}\n\n{{releaseUrl}}\n{{changelogUrl}}",
|
|
1851
1832
|
slackMessage: void 0,
|
|
1852
1833
|
// Use rich blocks format by default (no template)
|
|
1853
1834
|
changelogTitle: "{{oldVersion}}...{{newVersion}}"
|
|
@@ -1916,7 +1897,8 @@ function getDefaultConfig() {
|
|
|
1916
1897
|
enabled: false,
|
|
1917
1898
|
onlyStable: true,
|
|
1918
1899
|
postMaxLength: 2500,
|
|
1919
|
-
noAuthors: false
|
|
1900
|
+
noAuthors: false,
|
|
1901
|
+
noPackages: false
|
|
1920
1902
|
}
|
|
1921
1903
|
},
|
|
1922
1904
|
prComment: {
|
|
@@ -3318,6 +3300,32 @@ async function gitlab(options = {}) {
|
|
|
3318
3300
|
}
|
|
3319
3301
|
}
|
|
3320
3302
|
|
|
3303
|
+
function collectPackageBumps({
|
|
3304
|
+
bumpedPackages,
|
|
3305
|
+
packages
|
|
3306
|
+
}) {
|
|
3307
|
+
if (bumpedPackages && bumpedPackages.length > 0) {
|
|
3308
|
+
return bumpedPackages.map((pkg) => {
|
|
3309
|
+
const hasTransition = Boolean(pkg.newVersion && pkg.oldVersion !== pkg.newVersion);
|
|
3310
|
+
return {
|
|
3311
|
+
name: pkg.name,
|
|
3312
|
+
oldVersion: pkg.oldVersion,
|
|
3313
|
+
newVersion: pkg.newVersion,
|
|
3314
|
+
version: pkg.newVersion || pkg.version,
|
|
3315
|
+
hasTransition
|
|
3316
|
+
};
|
|
3317
|
+
});
|
|
3318
|
+
}
|
|
3319
|
+
if (packages && packages.length > 0) {
|
|
3320
|
+
return packages.map((pkg) => ({
|
|
3321
|
+
name: pkg.name,
|
|
3322
|
+
version: pkg.version,
|
|
3323
|
+
hasTransition: false
|
|
3324
|
+
}));
|
|
3325
|
+
}
|
|
3326
|
+
return [];
|
|
3327
|
+
}
|
|
3328
|
+
|
|
3321
3329
|
function getGitHubApiBase(domain) {
|
|
3322
3330
|
const apiDomain = domain === "github.com" || !domain ? "api.github.com" : domain;
|
|
3323
3331
|
return apiDomain === "api.github.com" ? `https://${apiDomain}` : `https://${apiDomain}/api/v3`;
|
|
@@ -3738,7 +3746,7 @@ function getSlackWebhookUrl(options) {
|
|
|
3738
3746
|
return options.socialWebhookUrl || process.env.RELIZY_SLACK_WEBHOOK_URL || process.env.SLACK_WEBHOOK_URL || null;
|
|
3739
3747
|
}
|
|
3740
3748
|
function formatChangelogForSlack(changelog, maxLength = 2500) {
|
|
3741
|
-
let formatted = changelog.replace(/^### (.+)$/gm, "*$1*").replace(/^## (.+)$/gm, "*$1*").replace(/^# (.+)$/gm, "*$1*").replace(/\*\*(.+?)\*\*/g, "*$1*");
|
|
3749
|
+
let formatted = changelog.replace(/^### (.+)$/gm, "*$1*").replace(/^## (.+)$/gm, "*$1*").replace(/^# (.+)$/gm, "*$1*").replace(/\*\*(.+?)\*\*/g, "*$1*").replace(/^([ \t]*)-[ \t]+/gm, "$1\u2022 ");
|
|
3742
3750
|
const linkPattern = /\[([^\]]*)]\(([^)]*)\)/g;
|
|
3743
3751
|
formatted = formatted.replace(linkPattern, (_, text, url) => `<${url}|${text}>`);
|
|
3744
3752
|
if (formatted.length > maxLength) {
|
|
@@ -3746,11 +3754,20 @@ function formatChangelogForSlack(changelog, maxLength = 2500) {
|
|
|
3746
3754
|
}
|
|
3747
3755
|
return formatted;
|
|
3748
3756
|
}
|
|
3749
|
-
function
|
|
3757
|
+
function formatPackagesForSlack(packages) {
|
|
3758
|
+
if (packages.length === 0) {
|
|
3759
|
+
return "";
|
|
3760
|
+
}
|
|
3761
|
+
return packages.map(
|
|
3762
|
+
(pkg) => pkg.hasTransition ? `\u2022 **${pkg.name}** : \`${pkg.oldVersion}\` \u2192 \`${pkg.newVersion}\`` : `\u2022 **${pkg.name}** : \`${pkg.version}\``
|
|
3763
|
+
).join("\n");
|
|
3764
|
+
}
|
|
3765
|
+
function formatSlackMessage({ projectName, version, changelog, releaseUrl, changelogUrl, template, contributors = [], packages = [], postMaxLength = 2500 }) {
|
|
3750
3766
|
const contributorsLine = contributors.length > 0 ? contributors.map((n) => `\u2022 ${n}`).join("\n") : "";
|
|
3767
|
+
const packagesLine = formatPackagesForSlack(packages);
|
|
3751
3768
|
if (template) {
|
|
3752
3769
|
const summary = extractChangelogSummary(changelog, { maxLength: postMaxLength });
|
|
3753
|
-
let message = template.replace("{{projectName}}", projectName).replace("{{newVersion}}", version).replace("{{changelog}}", summary).replace("{{contributors}}", contributorsLine);
|
|
3770
|
+
let message = template.replace("{{projectName}}", projectName).replace("{{newVersion}}", version).replace("{{changelog}}", summary).replace("{{contributors}}", contributorsLine).replace("{{packages}}", packagesLine);
|
|
3754
3771
|
if (releaseUrl) {
|
|
3755
3772
|
message = message.replace("{{releaseUrl}}", releaseUrl);
|
|
3756
3773
|
} else {
|
|
@@ -3776,7 +3793,7 @@ function formatSlackMessage({ projectName, version, changelog, releaseUrl, chang
|
|
|
3776
3793
|
type: "header",
|
|
3777
3794
|
text: {
|
|
3778
3795
|
type: "plain_text",
|
|
3779
|
-
text: `\u{
|
|
3796
|
+
text: `\u{1F4E3} ${projectName} ${version} is out!`,
|
|
3780
3797
|
emoji: true
|
|
3781
3798
|
}
|
|
3782
3799
|
}
|
|
@@ -3791,6 +3808,17 @@ function formatSlackMessage({ projectName, version, changelog, releaseUrl, chang
|
|
|
3791
3808
|
}
|
|
3792
3809
|
});
|
|
3793
3810
|
}
|
|
3811
|
+
if (packages.length > 0) {
|
|
3812
|
+
blocks.push({
|
|
3813
|
+
type: "section",
|
|
3814
|
+
text: {
|
|
3815
|
+
type: "mrkdwn",
|
|
3816
|
+
text: `*\u{1F4E6} Packages*
|
|
3817
|
+
|
|
3818
|
+
${packagesLine}`
|
|
3819
|
+
}
|
|
3820
|
+
});
|
|
3821
|
+
}
|
|
3794
3822
|
if (contributors.length > 0) {
|
|
3795
3823
|
blocks.push({
|
|
3796
3824
|
type: "section",
|
|
@@ -3913,6 +3941,7 @@ async function postReleaseToSlack({
|
|
|
3913
3941
|
webhookUrl,
|
|
3914
3942
|
template,
|
|
3915
3943
|
contributors,
|
|
3944
|
+
packages,
|
|
3916
3945
|
postMaxLength,
|
|
3917
3946
|
dryRun = false
|
|
3918
3947
|
}) {
|
|
@@ -3933,6 +3962,7 @@ async function postReleaseToSlack({
|
|
|
3933
3962
|
releaseUrl,
|
|
3934
3963
|
changelogUrl,
|
|
3935
3964
|
contributors,
|
|
3965
|
+
packages,
|
|
3936
3966
|
postMaxLength
|
|
3937
3967
|
});
|
|
3938
3968
|
const fallbackText = `${projectName} ${version} is out!`;
|
|
@@ -4773,23 +4803,15 @@ function buildMetadataLines({
|
|
|
4773
4803
|
return lines;
|
|
4774
4804
|
}
|
|
4775
4805
|
function buildPackageTableLines(bumpedPackages, packages) {
|
|
4776
|
-
const
|
|
4777
|
-
|
|
4778
|
-
|
|
4779
|
-
lines.push(...header);
|
|
4780
|
-
for (const pkg of bumpedPackages) {
|
|
4781
|
-
const hasTransition = pkg.newVersion && pkg.oldVersion !== pkg.newVersion;
|
|
4782
|
-
lines.push(
|
|
4783
|
-
hasTransition ? `| \`${pkg.name}\` | \`${pkg.oldVersion}\` \u2192 \`${pkg.newVersion}\` |` : `| \`${pkg.name}\` | \`${pkg.version}\` |`
|
|
4784
|
-
);
|
|
4785
|
-
}
|
|
4786
|
-
return lines;
|
|
4806
|
+
const entries = collectPackageBumps({ bumpedPackages, packages });
|
|
4807
|
+
if (entries.length === 0) {
|
|
4808
|
+
return [];
|
|
4787
4809
|
}
|
|
4788
|
-
|
|
4789
|
-
|
|
4790
|
-
|
|
4791
|
-
|
|
4792
|
-
|
|
4810
|
+
const lines = ["", "### Packages", "", "| Package | Version |", "| --- | --- |"];
|
|
4811
|
+
for (const entry of entries) {
|
|
4812
|
+
lines.push(
|
|
4813
|
+
entry.hasTransition ? `| \`${entry.name}\` | \`${entry.oldVersion}\` \u2192 \`${entry.newVersion}\` |` : `| \`${entry.name}\` | \`${entry.version}\` |`
|
|
4814
|
+
);
|
|
4793
4815
|
}
|
|
4794
4816
|
return lines;
|
|
4795
4817
|
}
|
|
@@ -5372,7 +5394,8 @@ async function handleSlackPost({
|
|
|
5372
5394
|
dryRun,
|
|
5373
5395
|
newVersion,
|
|
5374
5396
|
tag,
|
|
5375
|
-
commits
|
|
5397
|
+
commits,
|
|
5398
|
+
bumpedPackages
|
|
5376
5399
|
}) {
|
|
5377
5400
|
const slackConfig = config.social?.slack;
|
|
5378
5401
|
if (!slackConfig?.enabled) {
|
|
@@ -5420,6 +5443,8 @@ async function handleSlackPost({
|
|
|
5420
5443
|
const shouldHideContributors = config.noAuthors === true || slackConfig.noAuthors === true;
|
|
5421
5444
|
const contributors = shouldHideContributors ? [] : collectContributorNames({ commits, config });
|
|
5422
5445
|
logger.debug(`Contributors: ${contributors.length}`);
|
|
5446
|
+
const packages = slackConfig.noPackages === true ? [] : collectPackageBumps({ bumpedPackages });
|
|
5447
|
+
logger.debug(`Packages: ${packages.length}`);
|
|
5423
5448
|
const response = await postReleaseToSlack({
|
|
5424
5449
|
version: newVersion,
|
|
5425
5450
|
projectName: config.projectName || rootPackageBase.name,
|
|
@@ -5431,6 +5456,7 @@ async function handleSlackPost({
|
|
|
5431
5456
|
webhookUrl: webhookUrl ?? void 0,
|
|
5432
5457
|
template,
|
|
5433
5458
|
contributors,
|
|
5459
|
+
packages,
|
|
5434
5460
|
postMaxLength: slackConfig.postMaxLength ?? 2500,
|
|
5435
5461
|
dryRun
|
|
5436
5462
|
});
|
|
@@ -5547,7 +5573,8 @@ ${twitterChangelog}`);
|
|
|
5547
5573
|
dryRun,
|
|
5548
5574
|
newVersion,
|
|
5549
5575
|
tag: to,
|
|
5550
|
-
commits: rootPackage.commits
|
|
5576
|
+
commits: rootPackage.commits,
|
|
5577
|
+
bumpedPackages: options.bumpResult?.bumpedPackages
|
|
5551
5578
|
});
|
|
5552
5579
|
const results = [];
|
|
5553
5580
|
if (config.social?.twitter?.enabled) {
|
|
@@ -5917,4 +5944,4 @@ Git provider: ${provider}`);
|
|
|
5917
5944
|
}
|
|
5918
5945
|
}
|
|
5919
5946
|
|
|
5920
|
-
export {
|
|
5947
|
+
export { PR_COMMENT_MARKER as $, getModifiedReleaseFilePatterns as A, createCommitAndTags as B, pushCommitAndTags as C, rollbackModifiedFiles as D, getFirstCommit as E, getCurrentGitBranch as F, getCurrentGitRef as G, getShortCommitSha as H, github as I, createGitlabRelease as J, gitlab as K, buildCompareLink as L, buildChangelogBody as M, collectContributorNames as N, buildContributors as O, generateMarkDown as P, parseChangelogMarkdown as Q, detectPackageManager as R, determinePublishTag as S, getPackagesToPublishInSelectiveMode as T, getPackagesToPublishInIndependentMode as U, getAuthCommand as V, publishPackage as W, collectPackageBumps as X, findGitHubPR as Y, findGitLabMR as Z, detectPullRequest as _, buildCommentBody as a, postPrComment as a0, readPackageJson as a1, getRootPackage as a2, readPackages as a3, getPackages as a4, getPackageCommits as a5, hasLernaJson as a6, getSlackToken as a7, getSlackWebhookUrl as a8, formatChangelogForSlack as a9, determineReleaseType as aA, writeVersion as aB, getPackageNewVersion as aC, updateLernaVersion as aD, extractVersionFromPackageTag as aE, isPrerelease as aF, isStableReleaseType as aG, isPrereleaseReleaseType as aH, isGraduating as aI, getPreid as aJ, isChangedPreid as aK, getBumpedPackageIndependently as aL, confirmBump as aM, getBumpedIndependentPackages as aN, shouldFilterPrereleaseTags as aO, extractVersionFromTag as aP, getCanaryVersion as aQ, isTagVersionCompatibleWithCurrent as aR, formatPackagesForSlack as aa, formatSlackMessage as ab, postReleaseToSlack as ac, extractChangelogSummary as ad, getReleaseUrl as ae, getIndependentTag as af, getLastStableTag as ag, getLastTag as ah, getLastRepoTag as ai, getLastPackageTag as aj, NEW_PACKAGE_MARKER as ak, resolveTags as al, getTwitterCredentials as am, formatTweetMessage as an, postReleaseToTwitter as ao, executeHook as ap, isInCI as aq, getCIName as ar, executeFormatCmd as as, executeBuildCmd as at, isBumpedPackage as au, filterOutPrivatePackages as av, getPackagesOrBumpedPackages as aw, isGraduatingToStableBetweenVersion as ax, capReleaseTypeForZeroMajor as ay, determineSemverChange as az, bump as b, changelog as c, providerReleaseSafetyCheck as d, providerRelease as e, publishSafetyCheck as f, publish as g, social as h, generateChangelog as i, getDefaultConfig as j, defineConfig as k, loadRelizyConfig as l, mergeTypes as m, getPackageDependencies as n, getDependentsOf as o, prComment as p, expandPackagesToBumpWithDependents as q, release as r, socialSafetyCheck as s, topologicalSort as t, getGitStatus as u, checkGitStatusIfDirty as v, writeChangelogToFile as w, fetchGitTags as x, detectGitProvider as y, parseGitRemoteUrl as z };
|
package/package.json
CHANGED