@dvashim/changesets-gitlab
Advanced tools
| export declare const comment: () => Promise<import("@gitbeaker/core").DiscussionSchema | import("@gitbeaker/core").MergeRequestNoteSchema | import("@gitbeaker/core").MergeRequestDiscussionNoteSchema | undefined>; |
| import { ValidationError } from '@changesets/errors'; | ||
| import { GitbeakerRequestError } from '@gitbeaker/rest'; | ||
| import { humanId } from 'human-id'; | ||
| import { createApi } from "../api.js"; | ||
| import * as context from "../context.js"; | ||
| import { env } from "../env.js"; | ||
| import { getChangedPackages } from "../get-changed-packages.js"; | ||
| import { HTTP_STATUS_NOT_FOUND, TRUTHY_VALUES } from "../utils/constants.js"; | ||
| import { VERBOSE_LOGGER } from "./constants.js"; | ||
| import { getAbsentMessage } from "./getAbsentMessage.js"; | ||
| import { getApproveMessage } from "./getApproveMessage.js"; | ||
| import { getNewChangesetTemplate } from "./getNewChangesetTemplate.js"; | ||
| import { getNoteInfo } from "./getNoteInfo.js"; | ||
| import { hasChangesetBeenAdded } from "./hasChangesetBeenAdded.js"; | ||
| export const comment = async () => { | ||
| if (env.GITLAB_CHANGESETS_DEBUG) { | ||
| VERBOSE_LOGGER.enable(); | ||
| VERBOSE_LOGGER.print('running comment'); | ||
| } | ||
| const mrBranch = env.CI_MERGE_REQUEST_SOURCE_BRANCH_NAME; | ||
| if (!mrBranch) { | ||
| console.warn('[changesets-gitlab:comment] It should only be used on MR'); | ||
| return; | ||
| } | ||
| if (mrBranch.startsWith('changeset-release')) { | ||
| VERBOSE_LOGGER.print('Wrong branch', mrBranch); | ||
| return; | ||
| } | ||
| const { CI_MERGE_REQUEST_IID: mrIid, GITLAB_COMMENT_TYPE: commentType, GITLAB_ADD_CHANGESET_MESSAGE: commitMessage, CI_MERGE_REQUEST_SOURCE_BRANCH_SHA: latestCommitSha, } = env; | ||
| VERBOSE_LOGGER.print('env', { | ||
| mrIid, | ||
| commentType, | ||
| commitMessage, | ||
| latestCommitSha, | ||
| }); | ||
| const api = createApi(); | ||
| let errFromFetchingChangedFiles = ''; | ||
| try { | ||
| const changedFilesPromise = api.MergeRequests.allDiffs(context.projectId, mrIid).catch(async (err) => { | ||
| VERBOSE_LOGGER.print('error 0', err); | ||
| if (!(err instanceof GitbeakerRequestError) | ||
| || err.cause?.response.status !== HTTP_STATUS_NOT_FOUND) { | ||
| throw err; | ||
| } | ||
| const { changes } = await api.MergeRequests.showChanges(context.projectId, mrIid); | ||
| return changes; | ||
| }); | ||
| const [noteInfo, hasChangeset, { changedPackages, releasePlan }] = await Promise.all([ | ||
| getNoteInfo(api, mrIid, commentType), | ||
| hasChangesetBeenAdded(changedFilesPromise), | ||
| getChangedPackages({ | ||
| changedFiles: changedFilesPromise.then((changedFiles) => changedFiles.map(({ new_path }) => new_path)), | ||
| api, | ||
| }).catch((err) => { | ||
| VERBOSE_LOGGER.print('error 1', err); | ||
| if (err instanceof ValidationError) { | ||
| errFromFetchingChangedFiles = `<details><summary>💥 An error occurred when fetching the changed packages and changesets in this MR</summary>\n\n\`\`\`\n${err.message}\n\`\`\`\n\n</details>\n`; | ||
| } | ||
| else { | ||
| console.error(err); | ||
| } | ||
| return { | ||
| changedPackages: ['@fake-scope/fake-pkg'], | ||
| releasePlan: null, | ||
| }; | ||
| }), | ||
| ]); | ||
| const newChangesetFileName = `.changeset/${humanId({ | ||
| separator: '-', | ||
| capitalize: false, | ||
| })}.md`; | ||
| const newChangesetTemplate = getNewChangesetTemplate(changedPackages, env.CI_MERGE_REQUEST_TITLE); | ||
| const addChangesetUrl = `${env.CI_MERGE_REQUEST_PROJECT_URL}/-/new/${mrBranch}?file_name=${newChangesetFileName}&file=${encodeURIComponent(newChangesetTemplate)}${commitMessage | ||
| ? `&commit_message=${encodeURIComponent(commitMessage)}` | ||
| : ''}`; | ||
| const newChangesetTemplateFallback = ` | ||
| If the above link doesn't fill the changeset template file name and content which is [a known regression on GitLab >= 16.11](https://gitlab.com/gitlab-org/gitlab/-/issues/532221), you can copy and paste the following template into ${newChangesetFileName} instead: | ||
| \`\`\`yaml | ||
| ${newChangesetTemplate} | ||
| \`\`\` | ||
| `.trim(); | ||
| const prComment = (hasChangeset | ||
| ? getApproveMessage(latestCommitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan) | ||
| : getAbsentMessage(latestCommitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan)) + errFromFetchingChangedFiles; | ||
| switch (commentType) { | ||
| case 'discussion': { | ||
| if (noteInfo) { | ||
| if (hasChangeset | ||
| && TRUTHY_VALUES.has(env.GITLAB_COMMENT_DISCUSSION_AUTO_RESOLVE || '1')) { | ||
| await api.MergeRequestDiscussions.resolve(context.projectId, mrIid, noteInfo.discussionId, true); | ||
| } | ||
| return api.MergeRequestDiscussions.editNote(context.projectId, mrIid, noteInfo.discussionId, noteInfo.noteId, { | ||
| body: prComment, | ||
| }); | ||
| } | ||
| return api.MergeRequestDiscussions.create(context.projectId, mrIid, prComment); | ||
| } | ||
| case 'note': { | ||
| if (noteInfo) { | ||
| return api.MergeRequestNotes.edit(context.projectId, mrIid, noteInfo.noteId, { body: prComment }); | ||
| } | ||
| return api.MergeRequestNotes.create(context.projectId, mrIid, prComment); | ||
| } | ||
| default: { | ||
| VERBOSE_LOGGER.print('error 2', `Invalid comment type "${commentType}", should be "discussion" or "note"`); | ||
| throw new Error(`Invalid comment type "${commentType}", should be "discussion" or "note"`); | ||
| } | ||
| } | ||
| } | ||
| catch (err) { | ||
| VERBOSE_LOGGER.print('error 3', err); | ||
| if (err instanceof GitbeakerRequestError && err.cause) { | ||
| const { description, request, response } = err.cause; | ||
| console.error(description); | ||
| try { | ||
| console.error('request:', await request.text()); | ||
| } | ||
| catch { | ||
| console.error("The error's request could not be used as plain text"); | ||
| } | ||
| try { | ||
| console.error('response:', await response.text()); | ||
| } | ||
| catch { | ||
| console.error("The error's response could not be used as plain text"); | ||
| } | ||
| } | ||
| throw err; | ||
| } | ||
| }; | ||
| //# sourceMappingURL=comment.js.map |
| {"version":3,"file":"comment.js","sourceRoot":"","sources":["../../src/comment/comment.ts"],"names":[],"mappings":"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"} |
| import { Logger } from '../Logger.ts'; | ||
| export declare const CUSTOM_LINKS: string | undefined; | ||
| export declare const ADD_CHANGESET_URL_PLACEHOLDER_REGEXP: RegExp; | ||
| export declare const RANDOM_BOT_NAME_PATTERN: RegExp; | ||
| export declare const GENERATED_BY_BOT_NOTE = "Generated By Changesets GitLab Bot"; | ||
| export declare const VERBOSE_LOGGER: Logger; |
| import { env } from "../env.js"; | ||
| import { Logger } from "../Logger.js"; | ||
| export const CUSTOM_LINKS = env.GITLAB_COMMENT_CUSTOM_LINKS?.trim(); | ||
| export const ADD_CHANGESET_URL_PLACEHOLDER_REGEXP = /\{\{\s*addChangesetUrl\s*\}\}/u; | ||
| export const RANDOM_BOT_NAME_PATTERN = /^((?:project|group)_\d+_bot\w*)_[\da-z]+$/iu; | ||
| export const GENERATED_BY_BOT_NOTE = 'Generated By Changesets GitLab Bot'; | ||
| export const VERBOSE_LOGGER = new Logger('comment'); | ||
| //# sourceMappingURL=constants.js.map |
| {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/comment/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAC,2BAA2B,EAAE,IAAI,EAAE,CAAA;AAEnE,MAAM,CAAC,MAAM,oCAAoC,GAC/C,gCAAgC,CAAA;AAElC,MAAM,CAAC,MAAM,uBAAuB,GAClC,6CAA6C,CAAA;AAE/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,oCAAoC,CAAA;AAEzE,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,CAAA"} |
| import type { ReleasePlan } from '@changesets/types'; | ||
| export declare const getAbsentMessage: (commitSha: string, addChangesetUrl: string, newChangesetTemplateFallback: string, releasePlan: ReleasePlan | null) => string; |
| import { ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, CUSTOM_LINKS, GENERATED_BY_BOT_NOTE, } from "./constants.js"; | ||
| import { getReleasePlanMessage } from "./getReleasePlanMessage.js"; | ||
| export const getAbsentMessage = (commitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan) => `### ⚠️ No Changeset found | ||
| Latest commit: ${commitSha} | ||
| Merging this MR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. **If these changes should result in a version bump, you need to add a changeset.** | ||
| ${getReleasePlanMessage(releasePlan)} | ||
| ${CUSTOM_LINKS | ||
| ? CUSTOM_LINKS.replace(ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, addChangesetUrl) | ||
| : `[Click here to learn what changesets are, and how to add one](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | ||
| [Click here if you're a maintainer who wants to add a changeset to this MR](${addChangesetUrl})`} | ||
| ${newChangesetTemplateFallback} | ||
| __${GENERATED_BY_BOT_NOTE}__ | ||
| `; | ||
| //# sourceMappingURL=getAbsentMessage.js.map |
| {"version":3,"file":"getAbsentMessage.js","sourceRoot":"","sources":["../../src/comment/getAbsentMessage.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oCAAoC,EACpC,YAAY,EACZ,qBAAqB,GACtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,SAAiB,EACjB,eAAuB,EACvB,4BAAoC,EACpC,WAA+B,EAC/B,EAAE,CAAC;;iBAEY,SAAS;;;;EAIxB,qBAAqB,CAAC,WAAW,CAAC;;EAGlC,YAAY;IACV,CAAC,CAAC,YAAY,CAAC,OAAO,CAClB,oCAAoC,EACpC,eAAe,CAChB;IACH,CAAC,CAAC;;8EAEwE,eAAe,GAC7F;;EAEE,4BAA4B;;IAE1B,qBAAqB;CACxB,CAAA"} |
| import type { ReleasePlan } from '@changesets/types'; | ||
| export declare const getApproveMessage: (commitSha: string, addChangesetUrl: string, newChangesetTemplateFallback: string, releasePlan: ReleasePlan | null) => string; |
| import { ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, CUSTOM_LINKS, GENERATED_BY_BOT_NOTE, } from "./constants.js"; | ||
| import { getReleasePlanMessage } from "./getReleasePlanMessage.js"; | ||
| export const getApproveMessage = (commitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan) => `### 🦋 Changeset detected | ||
| Latest commit: ${commitSha} | ||
| **The changes in this MR will be included in the next version bump.** | ||
| ${getReleasePlanMessage(releasePlan)} | ||
| ${CUSTOM_LINKS | ||
| ? CUSTOM_LINKS.replace(ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, addChangesetUrl) | ||
| : `Not sure what this means? [Click here to learn what changesets are](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | ||
| [Click here if you're a maintainer who wants to add another changeset to this MR](${addChangesetUrl})`} | ||
| ${newChangesetTemplateFallback} | ||
| __${GENERATED_BY_BOT_NOTE}__ | ||
| `; | ||
| //# sourceMappingURL=getApproveMessage.js.map |
| {"version":3,"file":"getApproveMessage.js","sourceRoot":"","sources":["../../src/comment/getApproveMessage.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oCAAoC,EACpC,YAAY,EACZ,qBAAqB,GACtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,SAAiB,EACjB,eAAuB,EACvB,4BAAoC,EACpC,WAA+B,EAC/B,EAAE,CAAC;;iBAEY,SAAS;;;;EAIxB,qBAAqB,CAAC,WAAW,CAAC;;EAGlC,YAAY;IACV,CAAC,CAAC,YAAY,CAAC,OAAO,CAClB,oCAAoC,EACpC,eAAe,CAChB;IACH,CAAC,CAAC;;oFAE8E,eAAe,GACnG;;EAEE,4BAA4B;;IAE1B,qBAAqB;CACxB,CAAA"} |
| export declare const getNewChangesetTemplate: (changedPackages: string[], title: string) => string; |
| export const getNewChangesetTemplate = (changedPackages, title) => `--- | ||
| ${changedPackages.map((x) => `"${x}": patch`).join('\n')} | ||
| --- | ||
| ${title} | ||
| `; | ||
| //# sourceMappingURL=getNewChangesetTemplate.js.map |
| {"version":3,"file":"getNewChangesetTemplate.js","sourceRoot":"","sources":["../../src/comment/getNewChangesetTemplate.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,eAAyB,EACzB,KAAa,EACb,EAAE,CAAC;EACH,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;EAGtD,KAAK;CACN,CAAA"} |
| import type { Gitlab } from '@gitbeaker/core'; | ||
| import type { LooseString } from '../types.ts'; | ||
| declare function getNoteInfo(api: Gitlab, mrIid: number | string, commentType: LooseString<'discussion'>, random?: boolean): Promise<{ | ||
| discussionId: string; | ||
| noteId: number; | ||
| } | null | undefined>; | ||
| declare function getNoteInfo(api: Gitlab, mrIid: number | string, commentType: LooseString<'note'>, random?: boolean): Promise<{ | ||
| noteId: number; | ||
| } | null | undefined>; | ||
| export { getNoteInfo }; |
| import * as context from '../context.js'; | ||
| import { getUsername } from '../utils/index.js'; | ||
| import { isChangesetBotNote } from "./isChangesetBotNote.js"; | ||
| import { isMrNote } from "./isMrNote.js"; | ||
| async function getNoteInfo(api, mrIid, commentType, random) { | ||
| const discussionOrNotes = commentType === 'discussion' | ||
| ? await api.MergeRequestDiscussions.all(context.projectId, mrIid) | ||
| : await api.MergeRequestNotes.all(context.projectId, +mrIid); | ||
| const username = await getUsername(api); | ||
| for (const discussionOrNote of discussionOrNotes) { | ||
| if (isMrNote(discussionOrNote)) { | ||
| if (isChangesetBotNote(discussionOrNote, username, random)) { | ||
| return { | ||
| noteId: discussionOrNote.id, | ||
| }; | ||
| } | ||
| continue; | ||
| } | ||
| if (!discussionOrNote.notes) { | ||
| continue; | ||
| } | ||
| const changesetBotNote = discussionOrNote.notes.find((note) => isChangesetBotNote(note, username)); | ||
| if (changesetBotNote) { | ||
| return { | ||
| discussionId: discussionOrNote.id, | ||
| noteId: changesetBotNote.id, | ||
| }; | ||
| } | ||
| } | ||
| return random ? null : getNoteInfo(api, mrIid, commentType, true); | ||
| } | ||
| export { getNoteInfo }; | ||
| //# sourceMappingURL=getNoteInfo.js.map |
| {"version":3,"file":"getNoteInfo.js","sourceRoot":"","sources":["../../src/comment/getNoteInfo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAgBxC,KAAK,UAAU,WAAW,CACxB,GAAW,EACX,KAAsB,EACtB,WAA+C,EAC/C,MAAgB;IAOhB,MAAM,iBAAiB,GACrB,WAAW,KAAK,YAAY;QAC1B,CAAC,CAAC,MAAM,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC;QACjE,CAAC,CAAC,MAAM,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAA;IAEhE,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAA;IAEvC,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;QACjD,IAAI,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/B,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC3D,OAAO;oBACL,MAAM,EAAE,gBAAgB,CAAC,EAAE;iBAC5B,CAAA;YACH,CAAC;YACD,SAAQ;QACV,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAC5B,SAAQ;QACV,CAAC;QAED,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5D,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CACnC,CAAA;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO;gBACL,YAAY,EAAE,gBAAgB,CAAC,EAAE;gBACjC,MAAM,EAAE,gBAAgB,CAAC,EAAE;aAC5B,CAAA;QACH,CAAC;IACH,CAAC;IASD,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;AACnE,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"} |
| import type { ReleasePlan } from '@changesets/types'; | ||
| export declare const getReleasePlanMessage: (releasePlan: ReleasePlan | null) => string; |
| import { markdownTable } from 'markdown-table'; | ||
| export const getReleasePlanMessage = (releasePlan) => { | ||
| if (!releasePlan) { | ||
| return ''; | ||
| } | ||
| const publishableReleases = releasePlan.releases.filter((x) => x.type !== 'none'); | ||
| const table = markdownTable([ | ||
| ['Name', 'Type'], | ||
| ...publishableReleases.map((x) => [ | ||
| x.name, | ||
| { | ||
| major: 'Major', | ||
| minor: 'Minor', | ||
| patch: 'Patch', | ||
| }[x.type], | ||
| ]), | ||
| ]); | ||
| return `<details><summary>This MR includes ${releasePlan.changesets.length > 0 | ||
| ? `changesets to release ${publishableReleases.length === 1 | ||
| ? '1 package' | ||
| : `${publishableReleases.length} packages`}` | ||
| : 'no changesets'}</summary> | ||
| ${publishableReleases.length > 0 | ||
| ? table | ||
| : "When changesets are added to this MR, you'll see the packages that this MR includes changesets for and the associated semver types"} | ||
| </details>`; | ||
| }; | ||
| //# sourceMappingURL=getReleasePlanMessage.js.map |
| {"version":3,"file":"getReleasePlanMessage.js","sourceRoot":"","sources":["../../src/comment/getReleasePlanMessage.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,WAA+B,EAAE,EAAE;IACvE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,mBAAmB,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CACrD,CAAC,CAAC,EAAsE,EAAE,CACxE,CAAC,CAAC,IAAI,KAAK,MAAM,CACpB,CAAA;IAED,MAAM,KAAK,GAAG,aAAa,CAAC;QAC1B,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAChC,CAAC,CAAC,IAAI;YACN;gBACE,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,OAAO;aACf,CAAC,CAAC,CAAC,IAAI,CAAC;SACV,CAAC;KACH,CAAC,CAAA;IAEF,OAAO,sCACL,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;QAC/B,CAAC,CAAC,yBACE,mBAAmB,CAAC,MAAM,KAAK,CAAC;YAC9B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,GAAG,mBAAmB,CAAC,MAAM,WACnC,EAAE;QACJ,CAAC,CAAC,eACN;;IAGE,mBAAmB,CAAC,MAAM,GAAG,CAAC;QAC5B,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,oIACN;;WAES,CAAA;AACX,CAAC,CAAA"} |
| import type { CommitDiffSchema, MergeRequestDiffSchema } from '@gitbeaker/core'; | ||
| export declare const hasChangesetBeenAdded: (changedFilesPromise: Promise<CommitDiffSchema[] | MergeRequestDiffSchema[]>) => Promise<boolean>; |
| export const hasChangesetBeenAdded = async (changedFilesPromise) => { | ||
| const changedFiles = await changedFilesPromise; | ||
| return changedFiles.some((file) => file.new_file | ||
| && /^\.changeset\/.+\.md$/u.test(file.new_path) | ||
| && file.new_path !== '.changeset/README.md'); | ||
| }; | ||
| //# sourceMappingURL=hasChangesetBeenAdded.js.map |
| {"version":3,"file":"hasChangesetBeenAdded.js","sourceRoot":"","sources":["../../src/comment/hasChangesetBeenAdded.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EACxC,mBAA2E,EAC3E,EAAE;IACF,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAA;IAC9C,OAAO,YAAY,CAAC,IAAI,CACtB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,QAAQ;WACV,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;WAC5C,IAAI,CAAC,QAAQ,KAAK,sBAAsB,CAC9C,CAAA;AACH,CAAC,CAAA"} |
| export * from './comment.ts'; |
| export * from "./comment.js"; | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/comment/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"} |
| import type { DiscussionNoteSchema, NoteSchema } from '@gitbeaker/core'; | ||
| export declare const isChangesetBotNote: (note: DiscussionNoteSchema | NoteSchema, username: string, random?: boolean) => boolean | undefined; |
| import { GENERATED_BY_BOT_NOTE, RANDOM_BOT_NAME_PATTERN } from "./constants.js"; | ||
| export const isChangesetBotNote = (note, username, random) => (note.author.username === username | ||
| || (random | ||
| && RANDOM_BOT_NAME_PATTERN.exec(note.author.username)?.[1] === username)) | ||
| && note.body.includes(GENERATED_BY_BOT_NOTE); | ||
| //# sourceMappingURL=isChangesetBotNote.js.map |
| {"version":3,"file":"isChangesetBotNote.js","sourceRoot":"","sources":["../../src/comment/isChangesetBotNote.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAE/E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,IAAuC,EACvC,QAAgB,EAChB,MAAgB,EAChB,EAAE,CACF,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ;OAC7B,CAAC,MAAM;WACL,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC;OAC1E,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAA"} |
| import type { DiscussionSchema, MergeRequestNoteSchema } from '@gitbeaker/core'; | ||
| export declare const isMrNote: (discussionOrNote: DiscussionSchema | MergeRequestNoteSchema) => discussionOrNote is MergeRequestNoteSchema; |
| export const isMrNote = (discussionOrNote) => 'noteable_type' in discussionOrNote | ||
| && discussionOrNote.noteable_type === 'MergeRequest'; | ||
| //# sourceMappingURL=isMrNote.js.map |
| {"version":3,"file":"isMrNote.js","sourceRoot":"","sources":["../../src/comment/isMrNote.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,gBAA2D,EACf,EAAE,CAC9C,eAAe,IAAI,gBAAgB;OAChC,gBAAgB,CAAC,aAAa,KAAK,cAAc,CAAA"} |
| export declare class Logger { | ||
| context: string; | ||
| isEnabled: boolean; | ||
| constructor(context: 'api' | 'comment' | 'cli'); | ||
| enable(value?: boolean): void; | ||
| getMessage(...messages: unknown[]): unknown[]; | ||
| print(...message: unknown[]): void; | ||
| } |
| export class Logger { | ||
| context; | ||
| isEnabled = false; | ||
| constructor(context) { | ||
| this.context = context; | ||
| } | ||
| enable(value = true) { | ||
| this.isEnabled = value; | ||
| } | ||
| getMessage(...messages) { | ||
| return [ | ||
| `[changesets-gitlab:${this.context}]`, | ||
| ...messages.map((w) => w instanceof Error ? `${w.name}: ${w.message}` : w), | ||
| ]; | ||
| } | ||
| print(...message) { | ||
| if (this.isEnabled) { | ||
| console.log(...this.getMessage(...message)); | ||
| } | ||
| } | ||
| } | ||
| //# sourceMappingURL=Logger.js.map |
| {"version":3,"file":"Logger.js","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,MAAM;IACjB,OAAO,CAAQ;IACf,SAAS,GAAG,KAAK,CAAA;IAEjB,YAAY,OAAkC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,MAAM,CAAC,KAAK,GAAG,IAAI;QACjB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IACxB,CAAC;IAED,UAAU,CAAC,GAAG,QAAmB;QAC/B,OAAO;YACL,sBAAsB,IAAI,CAAC,OAAO,GAAG;YACrC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CACnD;SACF,CAAA;IACH,CAAC;IAED,KAAK,CAAC,GAAG,OAAkB;QACzB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,CAAC,CAAA;QAC7C,CAAC;IACH,CAAC;CACF"} |
| export declare const cjsRequire: NodeJS.Require; |
| import { createRequire } from 'node:module'; | ||
| export const cjsRequire = typeof require === 'undefined' ? createRequire(import.meta.url) : require; | ||
| //# sourceMappingURL=cjsRequire.js.map |
| {"version":3,"file":"cjsRequire.js","sourceRoot":"","sources":["../../src/utils/cjsRequire.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE3C,MAAM,CAAC,MAAM,UAAU,GACrB,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA"} |
| export declare const BumpLevels: { | ||
| readonly dep: 0; | ||
| readonly patch: 1; | ||
| readonly minor: 2; | ||
| readonly major: 3; | ||
| }; | ||
| export declare const FALSY_VALUES: Set<string>; | ||
| export declare const TRUTHY_VALUES: Set<string>; | ||
| export declare const GITLAB_MAX_TAGS = 4; | ||
| export declare const HTTP_STATUS_NOT_FOUND = 404; |
| export const BumpLevels = { | ||
| dep: 0, | ||
| patch: 1, | ||
| minor: 2, | ||
| major: 3, | ||
| }; | ||
| export const FALSY_VALUES = new Set(['false', '0']); | ||
| export const TRUTHY_VALUES = new Set(['true', '1']); | ||
| export const GITLAB_MAX_TAGS = 4; | ||
| export const HTTP_STATUS_NOT_FOUND = 404; | ||
| //# sourceMappingURL=constants.js.map |
| {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,GAAG,EAAE,CAAC;IACN,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAA;AAEV,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;AAEnD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;AAEnD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAA;AAEhC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA"} |
| export declare const execSync: (command: string) => NonSharedBuffer; |
| import { execSync as execSync_ } from 'node:child_process'; | ||
| export const execSync = (command) => execSync_(command, { stdio: 'inherit' }); | ||
| //# sourceMappingURL=execSync.js.map |
| {"version":3,"file":"execSync.js","sourceRoot":"","sources":["../../src/utils/execSync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE1D,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE,CAC1C,SAAS,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA"} |
| export declare function execWithOutput(command: string, args?: string[], options?: { | ||
| ignoreReturnCode?: boolean; | ||
| cwd?: string; | ||
| }): Promise<{ | ||
| code: number; | ||
| stdout: string; | ||
| stderr: string; | ||
| }>; |
| import { exec } from '@actions/exec'; | ||
| export async function execWithOutput(command, args, options) { | ||
| let myOutput = ''; | ||
| let myError = ''; | ||
| return { | ||
| code: await exec(command, args, { | ||
| listeners: { | ||
| stdout: (data) => { | ||
| myOutput += data.toString(); | ||
| }, | ||
| stderr: (data) => { | ||
| myError += data.toString(); | ||
| }, | ||
| }, | ||
| ...options, | ||
| }), | ||
| stdout: myOutput, | ||
| stderr: myError, | ||
| }; | ||
| } | ||
| //# sourceMappingURL=execWithOutput.js.map |
| {"version":3,"file":"execWithOutput.js","sourceRoot":"","sources":["../../src/utils/execWithOutput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEpC,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAe,EACf,IAAe,EACf,OAAsD;IAEtD,IAAI,QAAQ,GAAG,EAAE,CAAA;IACjB,IAAI,OAAO,GAAG,EAAE,CAAA;IAEhB,OAAO;QACL,IAAI,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE;YAC9B,SAAS,EAAE;gBACT,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;oBACvB,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;gBAC7B,CAAC;gBACD,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;oBACvB,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;gBAC5B,CAAC;aACF;YACD,GAAG,OAAO;SACX,CAAC;QACF,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,OAAO;KAChB,CAAA;AACH,CAAC"} |
| export declare function getAllFiles(dir: string, base?: string): Promise<string[]>; |
| import fs from 'node:fs'; | ||
| import path from 'node:path'; | ||
| export async function getAllFiles(dir, base = dir) { | ||
| const direntList = await fs.promises.readdir(dir, { withFileTypes: true }); | ||
| const files = await Promise.all(direntList.map((dirent) => { | ||
| const res = path.resolve(dir, dirent.name); | ||
| return dirent.isDirectory() | ||
| ? getAllFiles(res, base) | ||
| : [path.relative(base, res)]; | ||
| })); | ||
| return files.flat(); | ||
| } | ||
| //# sourceMappingURL=getAllFiles.js.map |
| {"version":3,"file":"getAllFiles.js","sourceRoot":"","sources":["../../src/utils/getAllFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAW,EAAE,IAAI,GAAG,GAAG;IACvD,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAC1C,OAAO,MAAM,CAAC,WAAW,EAAE;YACzB,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC;YACxB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;IAChC,CAAC,CAAC,CACH,CAAA;IACD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAA;AACrB,CAAC"} |
| import type { Package } from '@manypkg/get-packages'; | ||
| export declare function getChangedPackages(cwd: string, previousVersions: Map<string, string>): Promise<Package[]>; |
| import { getPackages } from '@manypkg/get-packages'; | ||
| export async function getChangedPackages(cwd, previousVersions) { | ||
| const { packages } = await getPackages(cwd); | ||
| const changedPackages = new Set(); | ||
| for (const pkg of packages) { | ||
| const previousVersion = previousVersions.get(pkg.dir); | ||
| if (previousVersion !== pkg.packageJson.version) { | ||
| changedPackages.add(pkg); | ||
| } | ||
| } | ||
| return [...changedPackages]; | ||
| } | ||
| //# sourceMappingURL=getChangedPackages.js.map |
| {"version":3,"file":"getChangedPackages.js","sourceRoot":"","sources":["../../src/utils/getChangedPackages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAW,EACX,gBAAqC;IAErC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,eAAe,GAAG,IAAI,GAAG,EAAW,CAAA;IAE1C,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,eAAe,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACrD,IAAI,eAAe,KAAK,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YAChD,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,eAAe,CAAC,CAAA;AAC7B,CAAC"} |
| export declare function getChangelogEntry(changelog: string, version: string): { | ||
| content: string; | ||
| highestLevel: number; | ||
| }; |
| import { toString as mdastToString } from 'mdast-util-to-string'; | ||
| import remarkParse from 'remark-parse'; | ||
| import remarkStringify from 'remark-stringify'; | ||
| import { unified } from 'unified'; | ||
| import { BumpLevels } from "./constants.js"; | ||
| export function getChangelogEntry(changelog, version) { | ||
| const ast = unified().use(remarkParse).parse(changelog); | ||
| let highestLevel = BumpLevels.dep; | ||
| const nodes = ast.children; | ||
| let headingStartInfo; | ||
| let endIndex; | ||
| for (const [i, node] of nodes.entries()) { | ||
| if (node.type === 'heading') { | ||
| const stringified = mdastToString(node); | ||
| const match = /(major|minor|patch)/u.exec(stringified.toLowerCase()); | ||
| if (match !== null) { | ||
| const level = BumpLevels[match[0]]; | ||
| highestLevel = Math.max(level, highestLevel); | ||
| } | ||
| if (headingStartInfo === undefined && stringified === version) { | ||
| headingStartInfo = { | ||
| index: i, | ||
| depth: node.depth, | ||
| }; | ||
| continue; | ||
| } | ||
| if (endIndex === undefined | ||
| && headingStartInfo !== undefined | ||
| && headingStartInfo.depth === node.depth) { | ||
| endIndex = i; | ||
| break; | ||
| } | ||
| } | ||
| } | ||
| if (headingStartInfo) { | ||
| ast.children = ast.children.slice(headingStartInfo.index + 1, endIndex); | ||
| } | ||
| return { | ||
| content: unified().use(remarkStringify).stringify(ast), | ||
| highestLevel, | ||
| }; | ||
| } | ||
| //# sourceMappingURL=getChangelogEntry.js.map |
| {"version":3,"file":"getChangelogEntry.js","sourceRoot":"","sources":["../../src/utils/getChangelogEntry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,WAAW,MAAM,cAAc,CAAA;AACtC,OAAO,eAAe,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAE3C,MAAM,UAAU,iBAAiB,CAAC,SAAiB,EAAE,OAAe;IAClE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAEvD,IAAI,YAAY,GAAW,UAAU,CAAC,GAAG,CAAA;IAEzC,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAA;IAC1B,IAAI,gBAKS,CAAA;IACb,IAAI,QAA4B,CAAA;IAEhC,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;YACvC,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAA;YACpE,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAgC,CAAC,CAAA;gBACjE,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;YAC9C,CAAC;YACD,IAAI,gBAAgB,KAAK,SAAS,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;gBAC9D,gBAAgB,GAAG;oBACjB,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB,CAAA;gBACD,SAAQ;YACV,CAAC;YACD,IACE,QAAQ,KAAK,SAAS;mBACnB,gBAAgB,KAAK,SAAS;mBAC9B,gBAAgB,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EACxC,CAAC;gBACD,QAAQ,GAAG,CAAC,CAAA;gBACZ,MAAK;YACP,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,gBAAgB,EAAE,CAAC;QACrB,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAA;IACzE,CAAC;IACD,OAAO;QACL,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC;QACtD,YAAY;KACb,CAAA;AACH,CAAC"} |
| export declare const getOptionalInput: (name: string) => string | undefined; |
| import { getInput } from '@actions/core'; | ||
| export const getOptionalInput = (name) => getInput(name) || undefined; | ||
| //# sourceMappingURL=getOptionalInput.js.map |
| {"version":3,"file":"getOptionalInput.js","sourceRoot":"","sources":["../../src/utils/getOptionalInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,CAAA"} |
| import type { Gitlab } from '@gitbeaker/core'; | ||
| export declare const getUsername: (api: Gitlab) => Promise<string>; |
| import { env } from '../env.js'; | ||
| export const getUsername = async (api) => env.GITLAB_CI_USER_NAME ?? (await api.Users.showCurrentUser()).username; | ||
| //# sourceMappingURL=getUsername.js.map |
| {"version":3,"file":"getUsername.js","sourceRoot":"","sources":["../../src/utils/getUsername.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAE/B,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,GAAW,EAAmB,EAAE,CAChE,GAAG,CAAC,mBAAmB,IAAI,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,QAAQ,CAAA"} |
| export declare function getVersionsByDirectory(cwd: string): Promise<Map<string, string>>; |
| import { getPackages } from '@manypkg/get-packages'; | ||
| export async function getVersionsByDirectory(cwd) { | ||
| const { packages } = await getPackages(cwd); | ||
| return new Map(packages.map((x) => [x.dir, x.packageJson.version])); | ||
| } | ||
| //# sourceMappingURL=getVersionsByDirectory.js.map |
| {"version":3,"file":"getVersionsByDirectory.js","sourceRoot":"","sources":["../../src/utils/getVersionsByDirectory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,GAAW;IACtD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAA;IAC3C,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AACrE,CAAC"} |
| export declare const identify: <T>(_: T) => _ is Exclude<T, "" | (T extends boolean ? false : boolean) | null | undefined>; |
| export const identify = (_) => !!_; | ||
| //# sourceMappingURL=identify.js.map |
| {"version":3,"file":"identify.js","sourceRoot":"","sources":["../../src/utils/identify.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,CAAI,EAIJ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA"} |
| export * from './cjsRequire.ts'; | ||
| export * from './constants.ts'; | ||
| export * from './execSync.ts'; | ||
| export * from './execWithOutput.ts'; | ||
| export * from './getAllFiles.ts'; | ||
| export * from './getChangedPackages.ts'; | ||
| export * from './getChangelogEntry.ts'; | ||
| export * from './getOptionalInput.ts'; | ||
| export * from './getUsername.ts'; | ||
| export * from './getVersionsByDirectory.ts'; | ||
| export * from './identify.ts'; | ||
| export * from './sortTheThings.ts'; |
| export * from "./cjsRequire.js"; | ||
| export * from "./constants.js"; | ||
| export * from "./execSync.js"; | ||
| export * from "./execWithOutput.js"; | ||
| export * from "./getAllFiles.js"; | ||
| export * from "./getChangedPackages.js"; | ||
| export * from "./getChangelogEntry.js"; | ||
| export * from "./getOptionalInput.js"; | ||
| export * from "./getUsername.js"; | ||
| export * from "./getVersionsByDirectory.js"; | ||
| export * from "./identify.js"; | ||
| export * from "./sortTheThings.js"; | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,kBAAkB,CAAA;AAChC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA"} |
| export declare function sortTheThings(a: { | ||
| private: boolean; | ||
| highestLevel: number; | ||
| }, b: { | ||
| private: boolean; | ||
| highestLevel: number; | ||
| }): number; |
| export function sortTheThings(a, b) { | ||
| if (a.private === b.private) { | ||
| return b.highestLevel - a.highestLevel; | ||
| } | ||
| if (a.private) { | ||
| return 1; | ||
| } | ||
| return -1; | ||
| } | ||
| //# sourceMappingURL=sortTheThings.js.map |
| {"version":3,"file":"sortTheThings.js","sourceRoot":"","sources":["../../src/utils/sortTheThings.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,aAAa,CAC3B,CAA6C,EAC7C,CAA6C;IAE7C,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAA;IACxC,CAAC;IACD,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,CAAC,CAAA;IACV,CAAC;IACD,OAAO,CAAC,CAAC,CAAA;AACX,CAAC"} |
+1
-3
@@ -1,3 +0,1 @@ | ||
| import changesetsGitlab from './lib/index.js' | ||
| export = changesetsGitlab | ||
| export { default } from './lib/index.js' |
+23
-1
@@ -0,6 +1,28 @@ | ||
| import process from 'node:process'; | ||
| import { Gitlab } from '@gitbeaker/rest'; | ||
| import { bootstrap } from 'global-agent'; | ||
| import { env } from "./env.js"; | ||
| import { Logger } from "./Logger.js"; | ||
| const PROXY_PROPS = ['http_proxy', 'https_proxy', 'no_proxy']; | ||
| let bootstrapped = false; | ||
| const API_VERBOSE_LOGGER = new Logger('api'); | ||
| const enableApiVerboseLogging = () => { | ||
| API_VERBOSE_LOGGER.enable(); | ||
| const originalFetch = globalThis.fetch; | ||
| globalThis.fetch = async (input, init) => { | ||
| const url = typeof input === 'string' | ||
| ? input | ||
| : input instanceof URL | ||
| ? input.href | ||
| : input.url; | ||
| const method = init?.method ?? 'GET'; | ||
| API_VERBOSE_LOGGER.print(method, url); | ||
| const response = await originalFetch(input, init); | ||
| API_VERBOSE_LOGGER.print(method, url, response.status); | ||
| return response; | ||
| }; | ||
| }; | ||
| if (env.GITLAB_CHANGESETS_DEBUG) { | ||
| enableApiVerboseLogging(); | ||
| } | ||
| export const createApi = (gitlabToken) => { | ||
@@ -18,3 +40,3 @@ if (!bootstrapped) { | ||
| } | ||
| const token = gitlabToken || env.GITLAB_TOKEN; | ||
| const token = gitlabToken ?? env.GITLAB_TOKEN; | ||
| const host = env.GITLAB_HOST; | ||
@@ -21,0 +43,0 @@ if (env.GITLAB_TOKEN_TYPE === 'oauth') { |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAE9B,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,UAAU,CAAU,CAAA;AAEtE,IAAI,YAAY,GAAG,KAAK,CAAA;AAExB,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,WAAoB,EAAE,EAAE;IAChD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,GAAG,IAAI,CAAA;QAEnB,SAAS,EAAE,CAAA;QAEX,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAuC,CAAA;YACrE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACrD,IAAI,KAAK,EAAE,CAAC;gBACV,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,IAAI,GAAG,CAAC,YAAY,CAAA;IAC7C,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,CAAA;IAE5B,IAAI,GAAG,CAAC,iBAAiB,KAAK,OAAO,EAAE,CAAC;QACtC,OAAO,IAAI,MAAM,CAAC;YAChB,IAAI;YACJ,UAAU,EAAE,KAAK;SAClB,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,IAAI,MAAM,CAAC;QAChB,IAAI;QACJ,KAAK;KACN,CAAC,CAAA;AACJ,CAAC,CAAA"} | ||
| {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,UAAU,CAAU,CAAA;AAEtE,IAAI,YAAY,GAAG,KAAK,CAAA;AAExB,MAAM,kBAAkB,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,CAAA;AAE5C,MAAM,uBAAuB,GAAG,GAAG,EAAE;IACnC,kBAAkB,CAAC,MAAM,EAAE,CAAA;IAE3B,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAA;IACtC,UAAU,CAAC,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACvC,MAAM,GAAG,GACP,OAAO,KAAK,KAAK,QAAQ;YACvB,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,KAAK,YAAY,GAAG;gBACpB,CAAC,CAAC,KAAK,CAAC,IAAI;gBACZ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAA;QACjB,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,KAAK,CAAA;QACpC,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAErC,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAEjD,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtD,OAAO,QAAQ,CAAA;IACjB,CAAC,CAAA;AACH,CAAC,CAAA;AAED,IAAI,GAAG,CAAC,uBAAuB,EAAE,CAAC;IAChC,uBAAuB,EAAE,CAAA;AAC3B,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,WAAoB,EAAE,EAAE;IAChD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,GAAG,IAAI,CAAA;QAEnB,SAAS,EAAE,CAAA;QAEX,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAuC,CAAA;YACrE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACrD,IAAI,KAAK,EAAE,CAAC;gBAEV,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,IAAI,GAAG,CAAC,YAAY,CAAA;IAC7C,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,CAAA;IAE5B,IAAI,GAAG,CAAC,iBAAiB,KAAK,OAAO,EAAE,CAAC;QACtC,OAAO,IAAI,MAAM,CAAC;YAChB,IAAI;YACJ,UAAU,EAAE,KAAK;SAClB,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,IAAI,MAAM,CAAC;QAChB,IAAI;QACJ,KAAK;KACN,CAAC,CAAA;AACJ,CAAC,CAAA"} |
+6
-5
| #!/usr/bin/env node | ||
| import process from 'node:process'; | ||
| import { program } from 'commander'; | ||
| import { comment } from './comment/comment.js'; | ||
| import './env.js'; | ||
| import { program } from 'commander'; | ||
| import { comment } from './comment.js'; | ||
| import { main } from './main.js'; | ||
| import { cjsRequire, getOptionalInput } from './utils.js'; | ||
| const run = async () => { | ||
| program.version(cjsRequire('../package.json').version); | ||
| import { cjsRequire, getOptionalInput } from './utils/index.js'; | ||
| const run = () => { | ||
| program.version(cjsRequire('../../package.json').version); | ||
| program.command('comment').action(async () => { | ||
@@ -10,0 +11,0 @@ await comment(); |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,UAAU,CAAA;AACjB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAEzD,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE;IACrB,OAAO,CAAC,OAAO,CACZ,UAAU,CAAC,iBAAiB,CAAyB,CAAC,OAAO,CAC/D,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;QAC3C,MAAM,OAAO,EAAE,CAAA;IACjB,CAAC,CAAC,CAAA;IAEF,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CACvD,IAAI,CAAC;QACH,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC;QACxC,cAAc,EAAE,gBAAgB,CAAC,iBAAiB,CAAC;KACpD,CAAC,CACH,CAAA;IAED,OAAO,OAAO,CAAC,kBAAkB,EAAE,CAAC,UAAU,EAAE,CAAA;AAClD,CAAC,CAAA;AAED,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;IACzB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;AACtB,CAAC,CAAC,CAAA"} | ||
| {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,UAAU,CAAA;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAE/D,MAAM,GAAG,GAAG,GAAG,EAAE;IACf,OAAO,CAAC,OAAO,CACZ,UAAU,CAAC,oBAAoB,CAAyB,CAAC,OAAO,CAClE,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;QAC3C,MAAM,OAAO,EAAE,CAAA;IACjB,CAAC,CAAC,CAAA;IAEF,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CACvD,IAAI,CAAC;QACH,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC;QACxC,cAAc,EAAE,gBAAgB,CAAC,iBAAiB,CAAC;KACpD,CAAC,CACH,CAAA;IAED,OAAO,OAAO,CAAC,kBAAkB,EAAE,CAAC,UAAU,EAAE,CAAA;AAClD,CAAC,CAAA;AAED,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;IACzB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;AACtB,CAAC,CAAC,CAAA"} |
+1
-0
@@ -0,3 +1,4 @@ | ||
| import process from 'node:process'; | ||
| export const projectId = process.env.CI_PROJECT_ID; | ||
| export const ref = process.env.CI_COMMIT_REF_NAME; | ||
| //# sourceMappingURL=context.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,aAAc,CAAA;AAEnD,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAmB,CAAA"} | ||
| {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,aAAc,CAAA;AAEnD,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAmB,CAAA"} |
+3
-0
@@ -0,3 +1,5 @@ | ||
| import process from 'node:process'; | ||
| import { setFailed } from '@actions/core'; | ||
| import dotenv from 'dotenv'; | ||
| import { TRUTHY_VALUES } from "./utils/constants.js"; | ||
| dotenv.config(); | ||
@@ -13,2 +15,3 @@ let isGitlabTokenValidated = false; | ||
| GITLAB_COMMENT_TYPE: process.env.GITLAB_COMMENT_TYPE ?? 'discussion', | ||
| GITLAB_CHANGESETS_DEBUG: TRUTHY_VALUES.has(process.env.GITLAB_CHANGESETS_DEBUG), | ||
| get GITLAB_TOKEN() { | ||
@@ -15,0 +18,0 @@ if (!isGitlabTokenValidated) { |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,MAAM,MAAM,QAAQ,CAAA;AAG3B,MAAM,CAAC,MAAM,EAAE,CAAA;AAEf,IAAI,sBAAsB,GAAG,KAAK,CAAA;AAElC,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,GAAG,OAAO,CAAC,GAAG;IAEd,oBAAoB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAqB;IACxD,WAAW,EACT,OAAO,CAAC,GAAG,CAAC,WAAW;WACpB,OAAO,CAAC,GAAG,CAAC,aAAa;WACzB,oBAAoB;IACzB,oBAAoB,EAClB,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,sCAAsC;IAC5E,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,YAAY;IAIpE,IAAI,YAAY;QACd,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,sBAAsB,GAAG,IAAI,CAAA;YAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;gBAC9B,SAAS,CAAC,wDAAwD,CAAC,CAAA;YACrE,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,YAAa,CAAA;IAClC,CAAC;CACK,CAAA"} | ||
| {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,MAAM,CAAC,MAAM,EAAE,CAAA;AAEf,IAAI,sBAAsB,GAAG,KAAK,CAAA;AAElC,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,GAAG,OAAO,CAAC,GAAG;IAEd,oBAAoB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAqB;IACxD,WAAW,EACT,OAAO,CAAC,GAAG,CAAC,WAAW;WACpB,OAAO,CAAC,GAAG,CAAC,aAAa;WACzB,oBAAoB;IACzB,oBAAoB,EAClB,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,sCAAsC;IAC5E,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,YAAY;IACpE,uBAAuB,EAAE,aAAa,CAAC,GAAG,CACxC,OAAO,CAAC,GAAG,CAAC,uBAAwB,CACrC;IAID,IAAI,YAAY;QACd,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,sBAAsB,GAAG,IAAI,CAAA;YAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;gBAC9B,SAAS,CAAC,wDAAwD,CAAC,CAAA;YACrE,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,YAAa,CAAA;IAClC,CAAC;CACK,CAAA"} |
| import fs from 'node:fs/promises'; | ||
| import nodePath from 'node:path'; | ||
| import process from 'node:process'; | ||
| import assembleReleasePlan from '@changesets/assemble-release-plan'; | ||
@@ -8,3 +9,3 @@ import { parse as parseConfig } from '@changesets/config'; | ||
| import { parse } from 'yaml'; | ||
| import { getAllFiles } from './utils.js'; | ||
| import { getAllFiles } from './utils/index.js'; | ||
| function fetchFile(path) { | ||
@@ -66,7 +67,7 @@ return fs.readFile(path, 'utf8'); | ||
| && changedFiles.includes(item)) { | ||
| const res = /\.changeset\/([^.]+)\.md/.exec(item); | ||
| const res = /\.changeset\/([^.]+)\.md/u.exec(item); | ||
| if (!res) { | ||
| throw new Error('could not get name from changeset filename'); | ||
| } | ||
| const id = res[1]; | ||
| const [, id] = res; | ||
| changesetPromises.push(fetchTextFile(item).then((text) => ({ | ||
@@ -112,4 +113,4 @@ ...parseChangeset(text), | ||
| if (tool) { | ||
| if (!Array.isArray(tool.globs) | ||
| || !tool.globs.every((x) => typeof x === 'string')) { | ||
| if (!(Array.isArray(tool.globs) | ||
| && tool.globs.every((x) => typeof x === 'string'))) { | ||
| throw new Error(`globs are not valid: ${JSON.stringify(tool.globs)}`); | ||
@@ -116,0 +117,0 @@ } |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"get-changed-packages.js","sourceRoot":"","sources":["../src/get-changed-packages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,mBAAmB,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,cAAc,MAAM,mBAAmB,CAAA;AAQ9C,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AAClC,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,EACvC,YAAY,EAAE,mBAAmB,GAIlC,EAAE,EAAE;IACH,IAAI,UAAU,GAAG,KAAK,CAAA;IAEtB,KAAK,UAAU,aAAa,CAAc,IAAY;QACpD,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;YAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAM,CAAA;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,UAAU,GAAG,IAAI,CAAA;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,OAAO,EAAkB,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,KAAK,UAAU,aAAa,CAAC,IAAY;QACvC,IAAI,CAAC;YACH,OAAO,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,UAAU,GAAG,IAAI,CAAA;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,KAAK,UAAU,UAAU,CAAC,OAAe;QACvC,MAAM,WAAW,GAAG,MAAM,aAAa,CACrC,GAAG,OAAO,eAAe,CAC1B,CAAA;QACD,OAAO;YACL,WAAW,EAAE,WAAW;YACxB,GAAG,EAAE,OAAO;SACb,CAAA;IACH,CAAC;IAED,MAAM,8BAA8B,GAAG,aAAa,CAWlD,cAAc,CAAC,CAAA;IACjB,MAAM,aAAa,GAAG,aAAa,CAAgB,wBAAwB,CAAC,CAAA;IAE5E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IAE7C,IAAI,eAA8C,CAAA;IAClD,MAAM,iBAAiB,GAAiC,EAAE,CAAA;IAC1D,MAAM,6BAA6B,GAAa,EAAE,CAAA;IAClD,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAA;IAE9C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACtC,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC7C,CAAC;aAAM,IAAI,IAAI,KAAK,qBAAqB,EAAE,CAAC;YAC1C,MAAM,GAAG,IAAI,CAAA;QACf,CAAC;aAAM,IAAI,IAAI,KAAK,qBAAqB,EAAE,CAAC;YAC1C,eAAe,GAAG,aAAa,CAAC,qBAAqB,CAAC,CAAA;QACxD,CAAC;aAAM,IACL,IAAI,KAAK,sBAAsB;eAC5B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;eAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;eACpB,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAC9B,CAAC;YACD,MAAM,GAAG,GAAG,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjD,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;YAC/D,CAAC;YACD,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;YACjB,iBAAiB,CAAC,IAAI,CACpB,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClC,GAAG,cAAc,CAAC,IAAI,CAAC;gBACvB,EAAE;aACH,CAAC,CAAC,CACJ,CAAA;QACH,CAAC;IACH,CAAC;IAED,IAAI,IAAqE,CAAA;IAEzE,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,GAAG;YACL,IAAI,EAAE,MAAM;YACZ,KAAK,EACH,KAAK,CAAC,MAAM,aAAa,CAAC,qBAAqB,CAAC,CAGjD,CAAC,QAAQ;SACX,CAAA;IACH,CAAC;SAAM,CAAC;QACN,MAAM,sBAAsB,GAAG,MAAM,8BAA8B,CAAA;QAEnE,IAAI,sBAAsB,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,GAAG;gBACL,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,UAAU,CAAC;oBACrD,CAAC,CAAC,sBAAsB,CAAC,UAAU;oBACnC,CAAC,CAAC,sBAAsB,CAAC,UAAU,CAAC,QAAQ;aAC/C,CAAA;QACH,CAAC;aAAM,IAAI,sBAAsB,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC;YACnD,IAAI,GAAG;gBACL,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,sBAAsB,CAAC,IAAI,CAAC,UAAU;aAC9C,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,sBAAsB,GAAG,MAAM,8BAA8B,CAAA;IAEnE,MAAM,QAAQ,GAAG;QACf,IAAI,EAAE;YACJ,GAAG,EAAE,GAAG;YACR,WAAW,EAAE,sBAAsB;SACpC;QACD,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAsC;QACtE,QAAQ,EAAE,EAAiD;KAC5D,CAAA;IAED,IAAI,IAAI,EAAE,CAAC;QACT,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;eACvB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAClD,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACvE,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,CAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QACrE,QAAQ,CAAC,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC9E,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CACpD,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CACjC,CAAA;IAED,MAAM,WAAW,GAAG,mBAAmB,CACrC,MAAM,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EACpC,QAAQ,EACR,MAAM,EACN,MAAM,eAAe,CACtB,CAAA;IAED,OAAO;QACL,eAAe,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM;YACxC,CAAC,CAAC,QAAQ,CAAC,QAAQ;YACnB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAC/B,YAAY,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAClE,CACJ;aACE,MAAM,CACL,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,WAAW,CAAC,OAAO,KAAK,IAAI;eAC7B,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CACnD;aACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACjC,WAAW;KACZ,CAAA;AACH,CAAC,CAAA"} | ||
| {"version":3,"file":"get-changed-packages.js","sourceRoot":"","sources":["../src/get-changed-packages.ts"],"names":[],"mappings":"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"} |
+3
-3
| import { exec } from '@actions/exec'; | ||
| import { env } from './env.js'; | ||
| import { execWithOutput, identify } from './utils.js'; | ||
| import { execWithOutput, identify } from './utils/index.js'; | ||
| export const setupUser = async () => { | ||
@@ -28,4 +28,4 @@ await exec('git', [ | ||
| }); | ||
| const isCreatingBranch = !stderr.includes(`Switched to branch '${branch}'`) | ||
| && !stderr.includes(`Switched to a new branch '${branch}'`); | ||
| const isCreatingBranch = !(stderr.includes(`Switched to branch '${branch}'`) | ||
| || stderr.includes(`Switched to a new branch '${branch}'`)); | ||
| if (isCreatingBranch) { | ||
@@ -32,0 +32,0 @@ await exec('git', ['checkout', '-b', branch]); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"git-utils.js","sourceRoot":"","sources":["../src/git-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErD,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE;IAClC,MAAM,IAAI,CAAC,KAAK,EAAE;QAChB,QAAQ;QACR,WAAW;QACX,GAAG,CAAC,mBAAmB,IAAI,GAAG,CAAC,gBAAgB;KAChD,CAAC,CAAA;IACF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAA;AACvE,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;IACjD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;AAC/C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EACvB,MAAc,EACd,EAAE,KAAK,KAA0B,EAAE,EACnC,EAAE;IACF,MAAM,IAAI,CACR,KAAK,EACL,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,MAAM,EAAE,EAAE,KAAK,IAAI,SAAS,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC1E,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;IACjC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;AACjD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,GAAW,EAAE,EAAE;IAC3C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAA;AAC5C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;IAClE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE;QACnE,gBAAgB,EAAE,IAAI;KACvB,CAAC,CAAA;IACF,MAAM,gBAAgB,GACpB,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,MAAM,GAAG,CAAC;WAC/C,CAAC,MAAM,CAAC,QAAQ,CAAC,6BAA6B,MAAM,GAAG,CAAC,CAAA;IAC7D,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;IAC/C,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,EACxB,QAAgB,EAChB,OAAkC,MAAM,EACxC,EAAE;IACF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAA;AACrD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IACjD,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;IACrC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA;AAC9C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAAsB,EAAE;IACvD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAA;IACzE,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAA;AAC5B,CAAC,CAAA"} | ||
| {"version":3,"file":"git-utils.js","sourceRoot":"","sources":["../src/git-utils.ts"],"names":[],"mappings":"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"} |
+237
-147
| 'use strict'; | ||
| var process = require('node:process'); | ||
| var rest = require('@gitbeaker/rest'); | ||
@@ -9,3 +10,2 @@ var globalAgent = require('global-agent'); | ||
| var humanId = require('human-id'); | ||
| var markdownTable = require('markdown-table'); | ||
| var fs$1 = require('node:fs/promises'); | ||
@@ -18,6 +18,6 @@ var path = require('node:path'); | ||
| var yaml = require('yaml'); | ||
| var node_module = require('node:module'); | ||
| var node_child_process = require('node:child_process'); | ||
| var exec = require('@actions/exec'); | ||
| var fs = require('node:fs'); | ||
| var node_module = require('node:module'); | ||
| var exec = require('@actions/exec'); | ||
| var getPackages = require('@manypkg/get-packages'); | ||
@@ -28,2 +28,3 @@ var mdastUtilToString = require('mdast-util-to-string'); | ||
| var unified = require('unified'); | ||
| var markdownTable = require('markdown-table'); | ||
| var node_url = require('node:url'); | ||
@@ -56,2 +57,13 @@ var pre = require('@changesets/pre'); | ||
| const BumpLevels = { | ||
| dep: 0, | ||
| patch: 1, | ||
| minor: 2, | ||
| major: 3 | ||
| }; | ||
| const FALSY_VALUES = /* @__PURE__ */ new Set(["false", "0"]); | ||
| const TRUTHY_VALUES = /* @__PURE__ */ new Set(["true", "1"]); | ||
| const GITLAB_MAX_TAGS = 4; | ||
| const HTTP_STATUS_NOT_FOUND = 404; | ||
| dotenv.config(); | ||
@@ -65,2 +77,5 @@ let isGitlabTokenValidated = false; | ||
| GITLAB_COMMENT_TYPE: process.env.GITLAB_COMMENT_TYPE ?? "discussion", | ||
| GITLAB_CHANGESETS_DEBUG: TRUTHY_VALUES.has( | ||
| process.env.GITLAB_CHANGESETS_DEBUG | ||
| ), | ||
| // only check for the token if we are explicitly using it | ||
@@ -78,4 +93,47 @@ get GITLAB_TOKEN() { | ||
| var __defProp = Object.defineProperty; | ||
| var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; | ||
| var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); | ||
| class Logger { | ||
| constructor(context) { | ||
| __publicField(this, "context"); | ||
| __publicField(this, "isEnabled", false); | ||
| this.context = context; | ||
| } | ||
| enable(value = true) { | ||
| this.isEnabled = value; | ||
| } | ||
| getMessage(...messages) { | ||
| return [ | ||
| `[changesets-gitlab:${this.context}]`, | ||
| ...messages.map( | ||
| (w) => w instanceof Error ? `${w.name}: ${w.message}` : w | ||
| ) | ||
| ]; | ||
| } | ||
| print(...message) { | ||
| if (this.isEnabled) { | ||
| console.log(...this.getMessage(...message)); | ||
| } | ||
| } | ||
| } | ||
| const PROXY_PROPS = ["http_proxy", "https_proxy", "no_proxy"]; | ||
| let bootstrapped = false; | ||
| const API_VERBOSE_LOGGER = new Logger("api"); | ||
| const enableApiVerboseLogging = () => { | ||
| API_VERBOSE_LOGGER.enable(); | ||
| const originalFetch = globalThis.fetch; | ||
| globalThis.fetch = async (input, init) => { | ||
| const url = typeof input === "string" ? input : input instanceof URL ? input.href : input.url; | ||
| const method = init?.method ?? "GET"; | ||
| API_VERBOSE_LOGGER.print(method, url); | ||
| const response = await originalFetch(input, init); | ||
| API_VERBOSE_LOGGER.print(method, url, response.status); | ||
| return response; | ||
| }; | ||
| }; | ||
| if (env.GITLAB_CHANGESETS_DEBUG) { | ||
| enableApiVerboseLogging(); | ||
| } | ||
| const createApi = (gitlabToken) => { | ||
@@ -93,3 +151,3 @@ if (!bootstrapped) { | ||
| } | ||
| const token = gitlabToken || env.GITLAB_TOKEN; | ||
| const token = gitlabToken ?? env.GITLAB_TOKEN; | ||
| const host = env.GITLAB_HOST; | ||
@@ -111,12 +169,37 @@ if (env.GITLAB_TOKEN_TYPE === "oauth") { | ||
| const BumpLevels = { | ||
| dep: 0, | ||
| patch: 1, | ||
| minor: 2, | ||
| major: 3 | ||
| }; | ||
| async function getVersionsByDirectory(cwd) { | ||
| const { packages } = await getPackages.getPackages(cwd); | ||
| return new Map(packages.map((x) => [x.dir, x.packageJson.version])); | ||
| const cjsRequire = typeof require === "undefined" ? node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href))) : require; | ||
| const execSync = (command) => node_child_process.execSync(command, { stdio: "inherit" }); | ||
| async function execWithOutput(command, args, options) { | ||
| let myOutput = ""; | ||
| let myError = ""; | ||
| return { | ||
| code: await exec.exec(command, args, { | ||
| listeners: { | ||
| stdout: (data) => { | ||
| myOutput += data.toString(); | ||
| }, | ||
| stderr: (data) => { | ||
| myError += data.toString(); | ||
| } | ||
| }, | ||
| ...options | ||
| }), | ||
| stdout: myOutput, | ||
| stderr: myError | ||
| }; | ||
| } | ||
| async function getAllFiles(dir, base = dir) { | ||
| const direntList = await fs.promises.readdir(dir, { withFileTypes: true }); | ||
| const files = await Promise.all( | ||
| direntList.map((dirent) => { | ||
| const res = path.resolve(dir, dirent.name); | ||
| return dirent.isDirectory() ? getAllFiles(res, base) : [path.relative(base, res)]; | ||
| }) | ||
| ); | ||
| return files.flat(); | ||
| } | ||
| async function getChangedPackages$1(cwd, previousVersions) { | ||
@@ -133,2 +216,3 @@ const { packages } = await getPackages.getPackages(cwd); | ||
| } | ||
| function getChangelogEntry(changelog, version) { | ||
@@ -143,3 +227,3 @@ const ast = unified.unified().use(remarkParse).parse(changelog); | ||
| const stringified = mdastUtilToString.toString(node); | ||
| const match = /(major|minor|patch)/.exec(stringified.toLowerCase()); | ||
| const match = /(major|minor|patch)/u.exec(stringified.toLowerCase()); | ||
| if (match !== null) { | ||
@@ -170,21 +254,14 @@ const level = BumpLevels[match[0]]; | ||
| } | ||
| async function execWithOutput(command, args, options) { | ||
| let myOutput = ""; | ||
| let myError = ""; | ||
| return { | ||
| code: await exec.exec(command, args, { | ||
| listeners: { | ||
| stdout: (data) => { | ||
| myOutput += data.toString(); | ||
| }, | ||
| stderr: (data) => { | ||
| myError += data.toString(); | ||
| } | ||
| }, | ||
| ...options | ||
| }), | ||
| stdout: myOutput, | ||
| stderr: myError | ||
| }; | ||
| const getOptionalInput = (name) => core.getInput(name) || void 0; | ||
| const getUsername = async (api) => env.GITLAB_CI_USER_NAME ?? (await api.Users.showCurrentUser()).username; | ||
| async function getVersionsByDirectory(cwd) { | ||
| const { packages } = await getPackages.getPackages(cwd); | ||
| return new Map(packages.map((x) => [x.dir, x.packageJson.version])); | ||
| } | ||
| const identify = (_) => !!_; | ||
| function sortTheThings(a, b) { | ||
@@ -199,23 +276,2 @@ if (a.private === b.private) { | ||
| } | ||
| const identify = (_) => !!_; | ||
| async function getAllFiles(dir, base = dir) { | ||
| const direntList = await fs.promises.readdir(dir, { withFileTypes: true }); | ||
| const files = await Promise.all( | ||
| direntList.map((dirent) => { | ||
| const res = path.resolve(dir, dirent.name); | ||
| return dirent.isDirectory() ? getAllFiles(res, base) : [path.relative(base, res)]; | ||
| }) | ||
| ); | ||
| return files.flat(); | ||
| } | ||
| const execSync = (command) => node_child_process.execSync(command, { stdio: "inherit" }); | ||
| const getOptionalInput = (name) => core.getInput(name) || void 0; | ||
| const getUsername = async (api) => { | ||
| return env.GITLAB_CI_USER_NAME ?? (await api.Users.showCurrentUser()).username; | ||
| }; | ||
| const cjsRequire = typeof require === "undefined" ? node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href))) : require; | ||
| const FALSY_VALUES = /* @__PURE__ */ new Set(["false", "0"]); | ||
| const TRUTHY_VALUES = /* @__PURE__ */ new Set(["true", "1"]); | ||
| const GITLAB_MAX_TAGS = 4; | ||
| const HTTP_STATUS_NOT_FOUND = 404; | ||
@@ -274,7 +330,7 @@ function fetchFile(path) { | ||
| } else if (item !== ".changeset/README.md" && item.startsWith(".changeset") && item.endsWith(".md") && changedFiles.includes(item)) { | ||
| const res = /\.changeset\/([^.]+)\.md/.exec(item); | ||
| const res = /\.changeset\/([^.]+)\.md/u.exec(item); | ||
| if (!res) { | ||
| throw new Error("could not get name from changeset filename"); | ||
| } | ||
| const id = res[1]; | ||
| const [, id] = res; | ||
| changesetPromises.push( | ||
@@ -318,3 +374,3 @@ fetchTextFile(item).then((text) => ({ | ||
| if (tool) { | ||
| if (!Array.isArray(tool.globs) || !tool.globs.every((x) => typeof x === "string")) { | ||
| if (!(Array.isArray(tool.globs) && tool.globs.every((x) => typeof x === "string"))) { | ||
| throw new Error(`globs are not valid: ${JSON.stringify(tool.globs)}`); | ||
@@ -349,3 +405,8 @@ } | ||
| const generatedByBotNote = "Generated By Changesets GitLab Bot"; | ||
| const CUSTOM_LINKS = env.GITLAB_COMMENT_CUSTOM_LINKS?.trim(); | ||
| const ADD_CHANGESET_URL_PLACEHOLDER_REGEXP = /\{\{\s*addChangesetUrl\s*\}\}/u; | ||
| const RANDOM_BOT_NAME_PATTERN = /^((?:project|group)_\d+_bot\w*)_[\da-z]+$/iu; | ||
| const GENERATED_BY_BOT_NOTE = "Generated By Changesets GitLab Bot"; | ||
| const VERBOSE_LOGGER = new Logger("comment"); | ||
| const getReleasePlanMessage = (releasePlan) => { | ||
@@ -375,4 +436,3 @@ if (!releasePlan) { | ||
| }; | ||
| const customLinks = env.GITLAB_COMMENT_CUSTOM_LINKS?.trim(); | ||
| const ADD_CHANGESET_URL_PLACEHOLDER_REGEXP = /\{\{\s*addChangesetUrl\s*\}\}/; | ||
| const getAbsentMessage = (commitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan) => `### \u26A0\uFE0F No Changeset found | ||
@@ -386,3 +446,6 @@ | ||
| ${customLinks ? customLinks.replace(ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, addChangesetUrl) : `[Click here to learn what changesets are, and how to add one](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | ||
| ${CUSTOM_LINKS ? CUSTOM_LINKS.replace( | ||
| ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, | ||
| addChangesetUrl | ||
| ) : `[Click here to learn what changesets are, and how to add one](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | ||
@@ -393,4 +456,5 @@ [Click here if you're a maintainer who wants to add a changeset to this MR](${addChangesetUrl})`} | ||
| __${generatedByBotNote}__ | ||
| __${GENERATED_BY_BOT_NOTE}__ | ||
| `; | ||
| const getApproveMessage = (commitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan) => `### \u{1F98B} Changeset detected | ||
@@ -404,3 +468,6 @@ | ||
| ${customLinks ? customLinks.replace(ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, addChangesetUrl) : `Not sure what this means? [Click here to learn what changesets are](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | ||
| ${CUSTOM_LINKS ? CUSTOM_LINKS.replace( | ||
| ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, | ||
| addChangesetUrl | ||
| ) : `Not sure what this means? [Click here to learn what changesets are](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | ||
@@ -411,4 +478,5 @@ [Click here if you're a maintainer who wants to add another changeset to this MR](${addChangesetUrl})`} | ||
| __${generatedByBotNote}__ | ||
| __${GENERATED_BY_BOT_NOTE}__ | ||
| `; | ||
| const getNewChangesetTemplate = (changedPackages, title) => `--- | ||
@@ -420,7 +488,9 @@ ${changedPackages.map((x) => `"${x}": patch`).join("\n")} | ||
| `; | ||
| const isChangesetBotNote = (note, username, random) => (note.author.username === username || random && RANDOM_BOT_NAME_PATTERN.exec(note.author.username)?.[1] === username) && note.body.includes(GENERATED_BY_BOT_NOTE); | ||
| const isMrNote = (discussionOrNote) => "noteable_type" in discussionOrNote && discussionOrNote.noteable_type === "MergeRequest"; | ||
| const RANDOM_BOT_NAME_PATTERN = /^((?:project|group)_\d+_bot\w*)_[\da-z]+$/i; | ||
| const isChangesetBotNote = (note, username, random) => (note.author.username === username || random && RANDOM_BOT_NAME_PATTERN.exec(note.author.username)?.[1] === username) && note.body.includes(generatedByBotNote); | ||
| async function getNoteInfo(api, mrIid, commentType, random) { | ||
| const discussionOrNotes = await (commentType === "discussion" ? api.MergeRequestDiscussions.all(projectId, mrIid) : api.MergeRequestNotes.all(projectId, +mrIid)); | ||
| const discussionOrNotes = commentType === "discussion" ? await api.MergeRequestDiscussions.all(projectId, mrIid) : await api.MergeRequestNotes.all(projectId, +mrIid); | ||
| const username = await getUsername(api); | ||
@@ -451,9 +521,15 @@ for (const discussionOrNote of discussionOrNotes) { | ||
| } | ||
| const hasChangesetBeenAdded = async (changedFilesPromise) => { | ||
| const changedFiles = await changedFilesPromise; | ||
| return changedFiles.some((file) => { | ||
| return file.new_file && /^\.changeset\/.+\.md$/.test(file.new_path) && file.new_path !== ".changeset/README.md"; | ||
| }); | ||
| return changedFiles.some( | ||
| (file) => file.new_file && /^\.changeset\/.+\.md$/u.test(file.new_path) && file.new_path !== ".changeset/README.md" | ||
| ); | ||
| }; | ||
| const comment = async () => { | ||
| if (env.GITLAB_CHANGESETS_DEBUG) { | ||
| VERBOSE_LOGGER.enable(); | ||
| VERBOSE_LOGGER.print("running comment"); | ||
| } | ||
| const mrBranch = env.CI_MERGE_REQUEST_SOURCE_BRANCH_NAME; | ||
@@ -464,14 +540,21 @@ if (!mrBranch) { | ||
| } | ||
| if (mrBranch.startsWith("changeset-release")) { | ||
| VERBOSE_LOGGER.print("Wrong branch", mrBranch); | ||
| return; | ||
| } | ||
| const { | ||
| CI_MERGE_REQUEST_IID: mrIid, | ||
| GITLAB_COMMENT_TYPE: commentType, | ||
| GITLAB_ADD_CHANGESET_MESSAGE: commitMessage | ||
| GITLAB_ADD_CHANGESET_MESSAGE: commitMessage, | ||
| CI_MERGE_REQUEST_SOURCE_BRANCH_SHA: latestCommitSha | ||
| } = env; | ||
| if (mrBranch.startsWith("changeset-release")) { | ||
| return; | ||
| } | ||
| VERBOSE_LOGGER.print("env", { | ||
| mrIid, | ||
| commentType, | ||
| commitMessage, | ||
| latestCommitSha | ||
| }); | ||
| const api = createApi(); | ||
| let errFromFetchingChangedFiles = ""; | ||
| try { | ||
| const latestCommitSha = env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA; | ||
| const changedFilesPromise = api.MergeRequests.allDiffs( | ||
@@ -481,2 +564,3 @@ projectId, | ||
| ).catch(async (err) => { | ||
| VERBOSE_LOGGER.print("error 0", err); | ||
| if (!(err instanceof rest.GitbeakerRequestError) || err.cause?.response.status !== HTTP_STATUS_NOT_FOUND) { | ||
@@ -500,2 +584,3 @@ throw err; | ||
| }).catch((err) => { | ||
| VERBOSE_LOGGER.print("error 1", err); | ||
| if (err instanceof errors.ValidationError) { | ||
@@ -587,2 +672,6 @@ errFromFetchingChangedFiles = `<details><summary>\u{1F4A5} An error occurred when fetching the changed packages and changesets in this MR</summary> | ||
| default: { | ||
| VERBOSE_LOGGER.print( | ||
| "error 2", | ||
| `Invalid comment type "${commentType}", should be "discussion" or "note"` | ||
| ); | ||
| throw new Error( | ||
@@ -594,2 +683,3 @@ `Invalid comment type "${commentType}", should be "discussion" or "note"` | ||
| } catch (err) { | ||
| VERBOSE_LOGGER.print("error 3", err); | ||
| if (err instanceof rest.GitbeakerRequestError && err.cause) { | ||
@@ -637,3 +727,3 @@ const { description, request, response } = err.cause; | ||
| }); | ||
| const isCreatingBranch = !stderr.includes(`Switched to branch '${branch}'`) && !stderr.includes(`Switched to a new branch '${branch}'`); | ||
| const isCreatingBranch = !(stderr.includes(`Switched to branch '${branch}'`) || stderr.includes(`Switched to a new branch '${branch}'`)); | ||
| if (isCreatingBranch) { | ||
@@ -669,3 +759,17 @@ await exec.exec("git", ["checkout", "-b", branch]); | ||
| const limit = pLimit(2 * 3); | ||
| const MAGIC_NUMBER = 3; | ||
| const limit = pLimit(2 * MAGIC_NUMBER); | ||
| const requireChangesetsCliPkgJson = (cwd) => { | ||
| try { | ||
| return cjsRequire(resolveFrom(cwd, "@changesets/cli/package.json")); | ||
| } catch (err) { | ||
| if (err?.code === "MODULE_NOT_FOUND") { | ||
| throw new Error( | ||
| `Have you forgotten to install \`@changesets/cli\` in "${cwd}"?`, | ||
| { cause: err } | ||
| ); | ||
| } | ||
| throw err; | ||
| } | ||
| }; | ||
| const createRelease = async (api, { pkg, tagName }) => { | ||
@@ -700,3 +804,3 @@ try { | ||
| const api = createApi(gitlabToken); | ||
| const [publishCommand, ...publishArgs] = script.split(/\s+/); | ||
| const [publishCommand, ...publishArgs] = script.split(/\s+/u); | ||
| const changesetPublishOutput = await execWithOutput( | ||
@@ -719,7 +823,7 @@ publishCommand, | ||
| throw new Error( | ||
| `No package found.This is probably a bug in the action, please open an issue` | ||
| "No package found.This is probably a bug in the action, please open an issue" | ||
| ); | ||
| } | ||
| const pkg = packages[0]; | ||
| const newTagRegex = /New tag:/; | ||
| const [pkg] = packages; | ||
| const newTagRegex = /New tag:/u; | ||
| for (const line of changesetPublishOutput.stdout.split("\n")) { | ||
@@ -737,3 +841,3 @@ const match = newTagRegex.exec(line); | ||
| } else { | ||
| const newTagRegex = /New tag:\s+(@[^/]+\/[^@]+|[^/]+)@(\S+)/; | ||
| const newTagRegex = /New tag:\s+(@[^/]+\/[^@]+|[^/]+)@(\S+)/u; | ||
| const packagesByName = new Map(packages.map((x) => [x.packageJson.name, x])); | ||
@@ -745,3 +849,3 @@ for (const line of changesetPublishOutput.stdout.split("\n")) { | ||
| } | ||
| const pkgName = match[1]; | ||
| const [, pkgName] = match; | ||
| const pkg = packagesByName.get(pkgName); | ||
@@ -786,14 +890,2 @@ if (pkg === void 0) { | ||
| } | ||
| const requireChangesetsCliPkgJson = (cwd) => { | ||
| try { | ||
| return cjsRequire(resolveFrom(cwd, "@changesets/cli/package.json")); | ||
| } catch (err) { | ||
| if (err?.code === "MODULE_NOT_FOUND") { | ||
| throw new Error( | ||
| `Have you forgotten to install \`@changesets/cli\` in "${cwd}"?` | ||
| ); | ||
| } | ||
| throw err; | ||
| } | ||
| }; | ||
| async function runVersion({ | ||
@@ -819,3 +911,3 @@ script, | ||
| if (script) { | ||
| const [versionCommand, ...versionArgs] = script.split(/\s+/); | ||
| const [versionCommand, ...versionArgs] = script.split(/\s+/u); | ||
| await exec.exec(versionCommand, versionArgs, { cwd }); | ||
@@ -918,3 +1010,3 @@ } else { | ||
| "origin", | ||
| `${url.protocol}//${encodeURIComponent(username)}:${GITLAB_TOKEN}@${url.host}${url.pathname.replace(/\/$/, "")}/${env.CI_PROJECT_PATH}.git` | ||
| `${url.protocol}//${encodeURIComponent(username)}:${GITLAB_TOKEN}@${url.host}${url.pathname.replace(/\/$/u, "")}/${env.CI_PROJECT_PATH}.git` | ||
| ], | ||
@@ -928,59 +1020,57 @@ { silent: !TRUTHY_VALUES.has(env.DEBUG_GITLAB_CREDENTIAL) } | ||
| const hasPublishScript = !!publishScript; | ||
| switch (true) { | ||
| case (!hasChangesets && !hasPublishScript): { | ||
| console.log("No changesets found"); | ||
| return; | ||
| } | ||
| case (!hasChangesets && hasPublishScript): { | ||
| console.log( | ||
| "No changesets found, attempting to publish any unpublished packages to npm" | ||
| if (!(hasChangesets || hasPublishScript)) { | ||
| console.log("No changesets found"); | ||
| return; | ||
| } | ||
| if (!hasChangesets && hasPublishScript) { | ||
| console.log( | ||
| "No changesets found, attempting to publish any unpublished packages to npm" | ||
| ); | ||
| const npmrcPath = `${env.HOME}/.npmrc`; | ||
| if (fs.existsSync(npmrcPath)) { | ||
| console.log("Found existing .npmrc file"); | ||
| } else if (NPM_TOKEN) { | ||
| console.log("No .npmrc file found, creating one"); | ||
| await fs.promises.writeFile( | ||
| npmrcPath, | ||
| `//registry.npmjs.org/:_authToken=${NPM_TOKEN}` | ||
| ); | ||
| const npmrcPath = `${env.HOME}/.npmrc`; | ||
| if (fs.existsSync(npmrcPath)) { | ||
| console.log("Found existing .npmrc file"); | ||
| } else if (NPM_TOKEN) { | ||
| console.log("No .npmrc file found, creating one"); | ||
| await fs.promises.writeFile( | ||
| npmrcPath, | ||
| `//registry.npmjs.org/:_authToken=${NPM_TOKEN}` | ||
| ); | ||
| } else { | ||
| core.setFailed( | ||
| "No `.npmrc` found nor `NPM_TOKEN` provided, unable to publish packages" | ||
| ); | ||
| return; | ||
| } | ||
| const result = await runPublish({ | ||
| script: publishScript, | ||
| gitlabToken: GITLAB_TOKEN, | ||
| createGitlabReleases: !FALSY_VALUES.has( | ||
| core.getInput("create_gitlab_releases") | ||
| ) | ||
| }); | ||
| if (result.published) { | ||
| core.setOutput("published", true); | ||
| core.setOutput("publishedPackages", result.publishedPackages); | ||
| core.exportVariable("PUBLISHED", true); | ||
| core.exportVariable("PUBLISHED_PACKAGES", result.publishedPackages); | ||
| if (published) { | ||
| execSync(published); | ||
| } | ||
| } | ||
| } else { | ||
| core.setFailed( | ||
| "No `.npmrc` found nor `NPM_TOKEN` provided, unable to publish packages" | ||
| ); | ||
| return; | ||
| } | ||
| case hasChangesets: { | ||
| await runVersion({ | ||
| script: getOptionalInput("version"), | ||
| gitlabToken: GITLAB_TOKEN, | ||
| mrTitle: getOptionalInput("title"), | ||
| mrTargetBranch: getOptionalInput("target_branch"), | ||
| commitMessage: getOptionalInput("commit"), | ||
| removeSourceBranch: core.getInput("remove_source_branch") === "true", | ||
| hasPublishScript | ||
| }); | ||
| if (onlyChangesets) { | ||
| execSync(onlyChangesets); | ||
| const result = await runPublish({ | ||
| script: publishScript, | ||
| gitlabToken: GITLAB_TOKEN, | ||
| createGitlabReleases: !FALSY_VALUES.has( | ||
| core.getInput("create_gitlab_releases") | ||
| ) | ||
| }); | ||
| if (result.published) { | ||
| core.setOutput("published", true); | ||
| core.setOutput("publishedPackages", result.publishedPackages); | ||
| core.exportVariable("PUBLISHED", true); | ||
| core.exportVariable("PUBLISHED_PACKAGES", result.publishedPackages); | ||
| if (published) { | ||
| execSync(published); | ||
| } | ||
| } | ||
| return; | ||
| } | ||
| if (hasChangesets) { | ||
| await runVersion({ | ||
| script: getOptionalInput("version"), | ||
| gitlabToken: GITLAB_TOKEN, | ||
| mrTitle: getOptionalInput("title"), | ||
| mrTargetBranch: getOptionalInput("target_branch"), | ||
| commitMessage: getOptionalInput("commit"), | ||
| removeSourceBranch: core.getInput("remove_source_branch") === "true", | ||
| hasPublishScript | ||
| }); | ||
| if (onlyChangesets) { | ||
| execSync(onlyChangesets); | ||
| } | ||
| } | ||
| }; | ||
@@ -987,0 +1077,0 @@ |
+2
-2
| export * from './api.js'; | ||
| export * from './comment.js'; | ||
| export * from './comment/comment.ts'; | ||
| export * from './context.js'; | ||
@@ -9,2 +9,2 @@ export * from './env.js'; | ||
| export type * from './types.js'; | ||
| export type * from './utils.js'; | ||
| export type * from './utils/index.js'; |
+1
-1
| export * from './api.js'; | ||
| export * from './comment.js'; | ||
| export * from "./comment/comment.js"; | ||
| export * from './context.js'; | ||
@@ -4,0 +4,0 @@ export * from './env.js'; |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,2BAA2B,CAAA;AACzC,cAAc,UAAU,CAAA"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,2BAA2B,CAAA;AACzC,cAAc,UAAU,CAAA"} |
+44
-46
@@ -10,3 +10,3 @@ import fs from 'node:fs'; | ||
| import { runPublish, runVersion } from './run.js'; | ||
| import { execSync, FALSY_VALUES, getOptionalInput, getUsername, TRUTHY_VALUES, } from './utils.js'; | ||
| import { execSync, FALSY_VALUES, getOptionalInput, getUsername, TRUTHY_VALUES, } from './utils/index.js'; | ||
| export const main = async ({ published, onlyChangesets, } = {}) => { | ||
@@ -26,3 +26,3 @@ const { GITLAB_TOKEN, NPM_TOKEN } = env; | ||
| 'origin', | ||
| `${url.protocol}//${encodeURIComponent(username)}:${GITLAB_TOKEN}@${url.host}${url.pathname.replace(/\/$/, '')}/${env.CI_PROJECT_PATH}.git`, | ||
| `${url.protocol}//${encodeURIComponent(username)}:${GITLAB_TOKEN}@${url.host}${url.pathname.replace(/\/$/u, '')}/${env.CI_PROJECT_PATH}.git`, | ||
| ], { silent: !TRUTHY_VALUES.has(env.DEBUG_GITLAB_CREDENTIAL) }); | ||
@@ -34,53 +34,51 @@ } | ||
| const hasPublishScript = !!publishScript; | ||
| switch (true) { | ||
| case !hasChangesets && !hasPublishScript: { | ||
| console.log('No changesets found'); | ||
| return; | ||
| if (!(hasChangesets || hasPublishScript)) { | ||
| console.log('No changesets found'); | ||
| return; | ||
| } | ||
| if (!hasChangesets && hasPublishScript) { | ||
| console.log('No changesets found, attempting to publish any unpublished packages to npm'); | ||
| const npmrcPath = `${env.HOME}/.npmrc`; | ||
| if (fs.existsSync(npmrcPath)) { | ||
| console.log('Found existing .npmrc file'); | ||
| } | ||
| case !hasChangesets && hasPublishScript: { | ||
| console.log('No changesets found, attempting to publish any unpublished packages to npm'); | ||
| const npmrcPath = `${env.HOME}/.npmrc`; | ||
| if (fs.existsSync(npmrcPath)) { | ||
| console.log('Found existing .npmrc file'); | ||
| } | ||
| else if (NPM_TOKEN) { | ||
| console.log('No .npmrc file found, creating one'); | ||
| await fs.promises.writeFile(npmrcPath, `//registry.npmjs.org/:_authToken=${NPM_TOKEN}`); | ||
| } | ||
| else { | ||
| setFailed('No `.npmrc` found nor `NPM_TOKEN` provided, unable to publish packages'); | ||
| return; | ||
| } | ||
| const result = await runPublish({ | ||
| script: publishScript, | ||
| gitlabToken: GITLAB_TOKEN, | ||
| createGitlabReleases: !FALSY_VALUES.has(getInput('create_gitlab_releases')), | ||
| }); | ||
| if (result.published) { | ||
| setOutput('published', true); | ||
| setOutput('publishedPackages', result.publishedPackages); | ||
| exportVariable('PUBLISHED', true); | ||
| exportVariable('PUBLISHED_PACKAGES', result.publishedPackages); | ||
| if (published) { | ||
| execSync(published); | ||
| } | ||
| } | ||
| else if (NPM_TOKEN) { | ||
| console.log('No .npmrc file found, creating one'); | ||
| await fs.promises.writeFile(npmrcPath, `//registry.npmjs.org/:_authToken=${NPM_TOKEN}`); | ||
| } | ||
| else { | ||
| setFailed('No `.npmrc` found nor `NPM_TOKEN` provided, unable to publish packages'); | ||
| return; | ||
| } | ||
| case hasChangesets: { | ||
| await runVersion({ | ||
| script: getOptionalInput('version'), | ||
| gitlabToken: GITLAB_TOKEN, | ||
| mrTitle: getOptionalInput('title'), | ||
| mrTargetBranch: getOptionalInput('target_branch'), | ||
| commitMessage: getOptionalInput('commit'), | ||
| removeSourceBranch: getInput('remove_source_branch') === 'true', | ||
| hasPublishScript, | ||
| }); | ||
| if (onlyChangesets) { | ||
| execSync(onlyChangesets); | ||
| const result = await runPublish({ | ||
| script: publishScript, | ||
| gitlabToken: GITLAB_TOKEN, | ||
| createGitlabReleases: !FALSY_VALUES.has(getInput('create_gitlab_releases')), | ||
| }); | ||
| if (result.published) { | ||
| setOutput('published', true); | ||
| setOutput('publishedPackages', result.publishedPackages); | ||
| exportVariable('PUBLISHED', true); | ||
| exportVariable('PUBLISHED_PACKAGES', result.publishedPackages); | ||
| if (published) { | ||
| execSync(published); | ||
| } | ||
| } | ||
| return; | ||
| } | ||
| if (hasChangesets) { | ||
| await runVersion({ | ||
| script: getOptionalInput('version'), | ||
| gitlabToken: GITLAB_TOKEN, | ||
| mrTitle: getOptionalInput('title'), | ||
| mrTargetBranch: getOptionalInput('target_branch'), | ||
| commitMessage: getOptionalInput('commit'), | ||
| removeSourceBranch: getInput('remove_source_branch') === 'true', | ||
| hasPublishScript, | ||
| }); | ||
| if (onlyChangesets) { | ||
| execSync(onlyChangesets); | ||
| } | ||
| } | ||
| }; | ||
| //# sourceMappingURL=main.js.map |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"} |
| import type { NewChangeset, PreState } from '@changesets/types'; | ||
| export interface ChangesetState { | ||
| export type ChangesetState = { | ||
| preState: PreState | undefined; | ||
| changesets: NewChangeset[]; | ||
| } | ||
| }; | ||
| export default function readChangesetState(cwd?: string): Promise<ChangesetState>; |
@@ -0,1 +1,2 @@ | ||
| import process from 'node:process'; | ||
| import { readPreState } from '@changesets/pre'; | ||
@@ -2,0 +3,0 @@ import readChangesets from '@changesets/read'; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"read-changeset-state.js","sourceRoot":"","sources":["../src/read-changeset-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAQ7C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,kBAAkB,CAC9C,MAAc,OAAO,CAAC,GAAG,EAAE;IAE3B,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,CAAA;IACxC,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAA;IAErE,IAAI,UAAU,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAA;IAE1C,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QACvD,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACtE,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAC5C,UAAU;KACX,CAAA;AACH,CAAC"} | ||
| {"version":3,"file":"read-changeset-state.js","sourceRoot":"","sources":["../src/read-changeset-state.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAQ7C,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,kBAAkB,CAC9C,MAAc,OAAO,CAAC,GAAG,EAAE;IAE3B,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,CAAA;IACxC,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAA;IAErE,IAAI,UAAU,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAA;IAE1C,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QACvD,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACtE,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAC5C,UAAU;KACX,CAAA;AACH,CAAC"} |
+6
-6
@@ -7,3 +7,3 @@ import type { Gitlab } from '@gitbeaker/core'; | ||
| }) => Promise<void>; | ||
| export interface PublishOptions { | ||
| export type PublishOptions = { | ||
| script: string; | ||
@@ -13,7 +13,7 @@ gitlabToken: string; | ||
| cwd?: string; | ||
| } | ||
| export interface PublishedPackage { | ||
| }; | ||
| export type PublishedPackage = { | ||
| name: string; | ||
| version: string; | ||
| } | ||
| }; | ||
| export type PublishResult = { | ||
@@ -26,3 +26,3 @@ published: false; | ||
| export declare function runPublish({ script, gitlabToken, createGitlabReleases, cwd, }: PublishOptions): Promise<PublishResult>; | ||
| export interface VersionOptions { | ||
| export type VersionOptions = { | ||
| script?: string; | ||
@@ -36,3 +36,3 @@ gitlabToken: string; | ||
| hasPublishScript?: boolean; | ||
| } | ||
| }; | ||
| export declare function runVersion({ script, gitlabToken, cwd, mrTitle, mrTargetBranch, commitMessage, removeSourceBranch, hasPublishScript, }: VersionOptions): Promise<void>; |
+22
-20
| import fs from 'node:fs/promises'; | ||
| import path from 'node:path'; | ||
| import process from 'node:process'; | ||
| import { exec } from '@actions/exec'; | ||
@@ -12,4 +13,16 @@ import { getPackages } from '@manypkg/get-packages'; | ||
| import readChangesetState from './read-changeset-state.js'; | ||
| import { cjsRequire, execWithOutput, GITLAB_MAX_TAGS, getChangedPackages, getChangelogEntry, getOptionalInput, getVersionsByDirectory, sortTheThings, } from './utils.js'; | ||
| const limit = pLimit(2 * 3); | ||
| import { cjsRequire, execWithOutput, GITLAB_MAX_TAGS, getChangedPackages, getChangelogEntry, getOptionalInput, getVersionsByDirectory, sortTheThings, } from './utils/index.js'; | ||
| const MAGIC_NUMBER = 3; | ||
| const limit = pLimit(2 * MAGIC_NUMBER); | ||
| const requireChangesetsCliPkgJson = (cwd) => { | ||
| try { | ||
| return cjsRequire(resolveFrom(cwd, '@changesets/cli/package.json')); | ||
| } | ||
| catch (err) { | ||
| if (err?.code === 'MODULE_NOT_FOUND') { | ||
| throw new Error(`Have you forgotten to install \`@changesets/cli\` in "${cwd}"?`, { cause: err }); | ||
| } | ||
| throw err; | ||
| } | ||
| }; | ||
| export const createRelease = async (api, { pkg, tagName }) => { | ||
@@ -38,3 +51,3 @@ try { | ||
| const api = createApi(gitlabToken); | ||
| const [publishCommand, ...publishArgs] = script.split(/\s+/); | ||
| const [publishCommand, ...publishArgs] = script.split(/\s+/u); | ||
| const changesetPublishOutput = await execWithOutput(publishCommand, publishArgs, { cwd }); | ||
@@ -52,7 +65,7 @@ const { packages, tool } = await getPackages(cwd); | ||
| if (packages.length !== 1) { | ||
| throw new Error(`No package found.` | ||
| throw new Error('No package found.' | ||
| + 'This is probably a bug in the action, please open an issue'); | ||
| } | ||
| const pkg = packages[0]; | ||
| const newTagRegex = /New tag:/; | ||
| const [pkg] = packages; | ||
| const newTagRegex = /New tag:/u; | ||
| for (const line of changesetPublishOutput.stdout.split('\n')) { | ||
@@ -71,3 +84,3 @@ const match = newTagRegex.exec(line); | ||
| else { | ||
| const newTagRegex = /New tag:\s+(@[^/]+\/[^@]+|[^/]+)@(\S+)/; | ||
| const newTagRegex = /New tag:\s+(@[^/]+\/[^@]+|[^/]+)@(\S+)/u; | ||
| const packagesByName = new Map(packages.map((x) => [x.packageJson.name, x])); | ||
@@ -79,3 +92,3 @@ for (const line of changesetPublishOutput.stdout.split('\n')) { | ||
| } | ||
| const pkgName = match[1]; | ||
| const [, pkgName] = match; | ||
| const pkg = packagesByName.get(pkgName); | ||
@@ -109,13 +122,2 @@ if (pkg === undefined) { | ||
| } | ||
| const requireChangesetsCliPkgJson = (cwd) => { | ||
| try { | ||
| return cjsRequire(resolveFrom(cwd, '@changesets/cli/package.json')); | ||
| } | ||
| catch (err) { | ||
| if (err?.code === 'MODULE_NOT_FOUND') { | ||
| throw new Error(`Have you forgotten to install \`@changesets/cli\` in "${cwd}"?`); | ||
| } | ||
| throw err; | ||
| } | ||
| }; | ||
| export async function runVersion({ script, gitlabToken, cwd = process.cwd(), mrTitle = 'Version Packages', mrTargetBranch = context.ref, commitMessage = 'Version Packages', removeSourceBranch = false, hasPublishScript = false, }) { | ||
@@ -134,3 +136,3 @@ const currentBranch = context.ref; | ||
| if (script) { | ||
| const [versionCommand, ...versionArgs] = script.split(/\s+/); | ||
| const [versionCommand, ...versionArgs] = script.split(/\s+/u); | ||
| await exec(versionCommand, versionArgs, { cwd }); | ||
@@ -137,0 +139,0 @@ } |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"} |
+20
-19
@@ -1,20 +0,1 @@ | ||
| export interface MainCommandOptions { | ||
| published?: string; | ||
| onlyChangesets?: string; | ||
| } | ||
| export type LooseString<T extends string> = T | (string & {}); | ||
| export type Env = GitLabCIPredefinedVariables & MergeRequestVariables & { | ||
| GITLAB_HOST: string; | ||
| GITLAB_TOKEN: string; | ||
| GITLAB_TOKEN_TYPE: LooseString<'job' | 'oauth'>; | ||
| GITLAB_CI_USER_NAME?: string; | ||
| GITLAB_CI_USER_EMAIL: string; | ||
| GITLAB_COMMENT_TYPE: LooseString<'discussion' | 'note'>; | ||
| GITLAB_COMMENT_DISCUSSION_AUTO_RESOLVE?: LooseString<'1' | 'true'>; | ||
| GITLAB_ADD_CHANGESET_MESSAGE?: string; | ||
| DEBUG_GITLAB_CREDENTIAL?: LooseString<'1' | 'true'>; | ||
| GITLAB_COMMENT_CUSTOM_LINKS?: string; | ||
| HOME: string; | ||
| NPM_TOKEN?: string; | ||
| }; | ||
| type MergeRequestVariables = { | ||
@@ -38,2 +19,22 @@ CI_MERGE_REQUEST_SOURCE_BRANCH_NAME: undefined; | ||
| }); | ||
| export type MainCommandOptions = { | ||
| published?: string; | ||
| onlyChangesets?: string; | ||
| }; | ||
| export type LooseString<T extends string> = T | (string & {}); | ||
| export type Env = GitLabCIPredefinedVariables & MergeRequestVariables & { | ||
| GITLAB_HOST: string; | ||
| GITLAB_TOKEN: string; | ||
| GITLAB_TOKEN_TYPE: LooseString<'job' | 'oauth'>; | ||
| GITLAB_CI_USER_NAME?: string; | ||
| GITLAB_CI_USER_EMAIL: string; | ||
| GITLAB_COMMENT_TYPE: LooseString<'discussion' | 'note'>; | ||
| GITLAB_COMMENT_DISCUSSION_AUTO_RESOLVE?: LooseString<'1' | 'true'>; | ||
| GITLAB_ADD_CHANGESET_MESSAGE?: string; | ||
| DEBUG_GITLAB_CREDENTIAL?: LooseString<'1' | 'true'>; | ||
| GITLAB_COMMENT_CUSTOM_LINKS?: string; | ||
| HOME: string; | ||
| NPM_TOKEN?: string; | ||
| GITLAB_CHANGESETS_DEBUG?: boolean; | ||
| }; | ||
| export {}; |
+1
-1
| { | ||
| "name": "@dvashim/changesets-gitlab", | ||
| "version": "0.0.4", | ||
| "version": "0.1.0", | ||
| "description": "GitLab CI CLI for changesets — automate versioning, changelogs, and publishing via merge requests", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
| import { type DiscussionSchema, type MergeRequestNoteSchema } from '@gitbeaker/rest'; | ||
| export declare const comment: () => Promise<DiscussionSchema | MergeRequestNoteSchema | import("@gitbeaker/core").MergeRequestDiscussionNoteSchema | undefined>; |
-228
| import { ValidationError } from '@changesets/errors'; | ||
| import { GitbeakerRequestError, } from '@gitbeaker/rest'; | ||
| import { humanId } from 'human-id'; | ||
| import { markdownTable } from 'markdown-table'; | ||
| import { createApi } from "./api.js"; | ||
| import * as context from './context.js'; | ||
| import { env } from './env.js'; | ||
| import { getChangedPackages } from './get-changed-packages.js'; | ||
| import { getUsername, HTTP_STATUS_NOT_FOUND, TRUTHY_VALUES } from './utils.js'; | ||
| const generatedByBotNote = 'Generated By Changesets GitLab Bot'; | ||
| const getReleasePlanMessage = (releasePlan) => { | ||
| if (!releasePlan) { | ||
| return ''; | ||
| } | ||
| const publishableReleases = releasePlan.releases.filter((x) => x.type !== 'none'); | ||
| const table = markdownTable([ | ||
| ['Name', 'Type'], | ||
| ...publishableReleases.map((x) => [ | ||
| x.name, | ||
| { | ||
| major: 'Major', | ||
| minor: 'Minor', | ||
| patch: 'Patch', | ||
| }[x.type], | ||
| ]), | ||
| ]); | ||
| return `<details><summary>This MR includes ${releasePlan.changesets.length > 0 | ||
| ? `changesets to release ${publishableReleases.length === 1 | ||
| ? '1 package' | ||
| : `${publishableReleases.length} packages`}` | ||
| : 'no changesets'}</summary> | ||
| ${publishableReleases.length > 0 | ||
| ? table | ||
| : "When changesets are added to this MR, you'll see the packages that this MR includes changesets for and the associated semver types"} | ||
| </details>`; | ||
| }; | ||
| const customLinks = env.GITLAB_COMMENT_CUSTOM_LINKS?.trim(); | ||
| const ADD_CHANGESET_URL_PLACEHOLDER_REGEXP = /\{\{\s*addChangesetUrl\s*\}\}/; | ||
| const getAbsentMessage = (commitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan) => `### ⚠️ No Changeset found | ||
| Latest commit: ${commitSha} | ||
| Merging this MR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. **If these changes should result in a version bump, you need to add a changeset.** | ||
| ${getReleasePlanMessage(releasePlan)} | ||
| ${customLinks | ||
| ? customLinks.replace(ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, addChangesetUrl) | ||
| : `[Click here to learn what changesets are, and how to add one](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | ||
| [Click here if you're a maintainer who wants to add a changeset to this MR](${addChangesetUrl})`} | ||
| ${newChangesetTemplateFallback} | ||
| __${generatedByBotNote}__ | ||
| `; | ||
| const getApproveMessage = (commitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan) => `### 🦋 Changeset detected | ||
| Latest commit: ${commitSha} | ||
| **The changes in this MR will be included in the next version bump.** | ||
| ${getReleasePlanMessage(releasePlan)} | ||
| ${customLinks | ||
| ? customLinks.replace(ADD_CHANGESET_URL_PLACEHOLDER_REGEXP, addChangesetUrl) | ||
| : `Not sure what this means? [Click here to learn what changesets are](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | ||
| [Click here if you're a maintainer who wants to add another changeset to this MR](${addChangesetUrl})`} | ||
| ${newChangesetTemplateFallback} | ||
| __${generatedByBotNote}__ | ||
| `; | ||
| const getNewChangesetTemplate = (changedPackages, title) => `--- | ||
| ${changedPackages.map((x) => `"${x}": patch`).join('\n')} | ||
| --- | ||
| ${title} | ||
| `; | ||
| const isMrNote = (discussionOrNote) => 'noteable_type' in discussionOrNote | ||
| && discussionOrNote.noteable_type === 'MergeRequest'; | ||
| const RANDOM_BOT_NAME_PATTERN = /^((?:project|group)_\d+_bot\w*)_[\da-z]+$/i; | ||
| const isChangesetBotNote = (note, username, random) => (note.author.username === username | ||
| || (random | ||
| && RANDOM_BOT_NAME_PATTERN.exec(note.author.username)?.[1] === username)) | ||
| && note.body.includes(generatedByBotNote); | ||
| async function getNoteInfo(api, mrIid, commentType, random) { | ||
| const discussionOrNotes = await (commentType === 'discussion' | ||
| ? api.MergeRequestDiscussions.all(context.projectId, mrIid) | ||
| : api.MergeRequestNotes.all(context.projectId, +mrIid)); | ||
| const username = await getUsername(api); | ||
| for (const discussionOrNote of discussionOrNotes) { | ||
| if (isMrNote(discussionOrNote)) { | ||
| if (isChangesetBotNote(discussionOrNote, username, random)) { | ||
| return { | ||
| noteId: discussionOrNote.id, | ||
| }; | ||
| } | ||
| continue; | ||
| } | ||
| if (!discussionOrNote.notes) { | ||
| continue; | ||
| } | ||
| const changesetBotNote = discussionOrNote.notes.find((note) => isChangesetBotNote(note, username)); | ||
| if (changesetBotNote) { | ||
| return { | ||
| discussionId: discussionOrNote.id, | ||
| noteId: changesetBotNote.id, | ||
| }; | ||
| } | ||
| } | ||
| return random ? null : getNoteInfo(api, mrIid, commentType, true); | ||
| } | ||
| const hasChangesetBeenAdded = async (changedFilesPromise) => { | ||
| const changedFiles = await changedFilesPromise; | ||
| return changedFiles.some((file) => { | ||
| return (file.new_file | ||
| && /^\.changeset\/.+\.md$/.test(file.new_path) | ||
| && file.new_path !== '.changeset/README.md'); | ||
| }); | ||
| }; | ||
| export const comment = async () => { | ||
| const mrBranch = env.CI_MERGE_REQUEST_SOURCE_BRANCH_NAME; | ||
| if (!mrBranch) { | ||
| console.warn('[changesets-gitlab:comment] It should only be used on MR'); | ||
| return; | ||
| } | ||
| const { CI_MERGE_REQUEST_IID: mrIid, GITLAB_COMMENT_TYPE: commentType, GITLAB_ADD_CHANGESET_MESSAGE: commitMessage, } = env; | ||
| if (mrBranch.startsWith('changeset-release')) { | ||
| return; | ||
| } | ||
| const api = createApi(); | ||
| let errFromFetchingChangedFiles = ''; | ||
| try { | ||
| const latestCommitSha = env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA; | ||
| const changedFilesPromise = api.MergeRequests.allDiffs(context.projectId, mrIid).catch(async (err) => { | ||
| if (!(err instanceof GitbeakerRequestError) | ||
| || err.cause?.response.status !== HTTP_STATUS_NOT_FOUND) { | ||
| throw err; | ||
| } | ||
| const { changes } = await api.MergeRequests.showChanges(context.projectId, mrIid); | ||
| return changes; | ||
| }); | ||
| const [noteInfo, hasChangeset, { changedPackages, releasePlan }] = await Promise.all([ | ||
| getNoteInfo(api, mrIid, commentType), | ||
| hasChangesetBeenAdded(changedFilesPromise), | ||
| getChangedPackages({ | ||
| changedFiles: changedFilesPromise.then((changedFiles) => changedFiles.map(({ new_path }) => new_path)), | ||
| api, | ||
| }).catch((err) => { | ||
| if (err instanceof ValidationError) { | ||
| errFromFetchingChangedFiles = `<details><summary>💥 An error occurred when fetching the changed packages and changesets in this MR</summary>\n\n\`\`\`\n${err.message}\n\`\`\`\n\n</details>\n`; | ||
| } | ||
| else { | ||
| console.error(err); | ||
| } | ||
| return { | ||
| changedPackages: ['@fake-scope/fake-pkg'], | ||
| releasePlan: null, | ||
| }; | ||
| }), | ||
| ]); | ||
| const newChangesetFileName = `.changeset/${humanId({ | ||
| separator: '-', | ||
| capitalize: false, | ||
| })}.md`; | ||
| const newChangesetTemplate = getNewChangesetTemplate(changedPackages, env.CI_MERGE_REQUEST_TITLE); | ||
| const addChangesetUrl = `${env.CI_MERGE_REQUEST_PROJECT_URL}/-/new/${mrBranch}?file_name=${newChangesetFileName}&file=${encodeURIComponent(newChangesetTemplate)}${commitMessage | ||
| ? `&commit_message=${encodeURIComponent(commitMessage)}` | ||
| : ''}`; | ||
| const newChangesetTemplateFallback = ` | ||
| If the above link doesn't fill the changeset template file name and content which is [a known regression on GitLab >= 16.11](https://gitlab.com/gitlab-org/gitlab/-/issues/532221), you can copy and paste the following template into ${newChangesetFileName} instead: | ||
| \`\`\`yaml | ||
| ${newChangesetTemplate} | ||
| \`\`\` | ||
| `.trim(); | ||
| const prComment = (hasChangeset | ||
| ? getApproveMessage(latestCommitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan) | ||
| : getAbsentMessage(latestCommitSha, addChangesetUrl, newChangesetTemplateFallback, releasePlan)) + errFromFetchingChangedFiles; | ||
| switch (commentType) { | ||
| case 'discussion': { | ||
| if (noteInfo) { | ||
| if (hasChangeset | ||
| && TRUTHY_VALUES.has(env.GITLAB_COMMENT_DISCUSSION_AUTO_RESOLVE || '1')) { | ||
| await api.MergeRequestDiscussions.resolve(context.projectId, mrIid, noteInfo.discussionId, true); | ||
| } | ||
| return api.MergeRequestDiscussions.editNote(context.projectId, mrIid, noteInfo.discussionId, noteInfo.noteId, { | ||
| body: prComment, | ||
| }); | ||
| } | ||
| return api.MergeRequestDiscussions.create(context.projectId, mrIid, prComment); | ||
| } | ||
| case 'note': { | ||
| if (noteInfo) { | ||
| return api.MergeRequestNotes.edit(context.projectId, mrIid, noteInfo.noteId, { body: prComment }); | ||
| } | ||
| return api.MergeRequestNotes.create(context.projectId, mrIid, prComment); | ||
| } | ||
| default: { | ||
| throw new Error(`Invalid comment type "${commentType}", should be "discussion" or "note"`); | ||
| } | ||
| } | ||
| } | ||
| catch (err) { | ||
| if (err instanceof GitbeakerRequestError && err.cause) { | ||
| const { description, request, response } = err.cause; | ||
| console.error(description); | ||
| try { | ||
| console.error('request:', await request.text()); | ||
| } | ||
| catch { | ||
| console.error("The error's request could not be used as plain text"); | ||
| } | ||
| try { | ||
| console.error('response:', await response.text()); | ||
| } | ||
| catch { | ||
| console.error("The error's response could not be used as plain text"); | ||
| } | ||
| } | ||
| throw err; | ||
| } | ||
| }; | ||
| //# sourceMappingURL=comment.js.map |
| {"version":3,"file":"comment.js","sourceRoot":"","sources":["../src/comment.ts"],"names":[],"mappings":"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"} |
| import type { Gitlab } from '@gitbeaker/core'; | ||
| import type { Package } from '@manypkg/get-packages'; | ||
| export declare const BumpLevels: { | ||
| readonly dep: 0; | ||
| readonly patch: 1; | ||
| readonly minor: 2; | ||
| readonly major: 3; | ||
| }; | ||
| export declare function getVersionsByDirectory(cwd: string): Promise<Map<string, string>>; | ||
| export declare function getChangedPackages(cwd: string, previousVersions: Map<string, string>): Promise<Package[]>; | ||
| export declare function getChangelogEntry(changelog: string, version: string): { | ||
| content: string; | ||
| highestLevel: number; | ||
| }; | ||
| export declare function execWithOutput(command: string, args?: string[], options?: { | ||
| ignoreReturnCode?: boolean; | ||
| cwd?: string; | ||
| }): Promise<{ | ||
| code: number; | ||
| stdout: string; | ||
| stderr: string; | ||
| }>; | ||
| export declare function sortTheThings(a: { | ||
| private: boolean; | ||
| highestLevel: number; | ||
| }, b: { | ||
| private: boolean; | ||
| highestLevel: number; | ||
| }): number; | ||
| export declare const identify: <T>(_: T) => _ is Exclude<T, "" | (T extends boolean ? false : boolean) | null | undefined>; | ||
| export declare function getAllFiles(dir: string, base?: string): Promise<string[]>; | ||
| export declare const execSync: (command: string) => NonSharedBuffer; | ||
| export declare const getOptionalInput: (name: string) => string | undefined; | ||
| export declare const getUsername: (api: Gitlab) => Promise<string>; | ||
| export declare const cjsRequire: NodeJS.Require; | ||
| export declare const FALSY_VALUES: Set<string>; | ||
| export declare const TRUTHY_VALUES: Set<string>; | ||
| export declare const GITLAB_MAX_TAGS = 4; | ||
| export declare const HTTP_STATUS_NOT_FOUND = 404; |
-120
| import { execSync as execSync_ } from 'node:child_process'; | ||
| import fs from 'node:fs'; | ||
| import { createRequire } from 'node:module'; | ||
| import path from 'node:path'; | ||
| import { getInput } from '@actions/core'; | ||
| import { exec } from '@actions/exec'; | ||
| import { getPackages } from '@manypkg/get-packages'; | ||
| import { toString as mdastToString } from 'mdast-util-to-string'; | ||
| import remarkParse from 'remark-parse'; | ||
| import remarkStringify from 'remark-stringify'; | ||
| import { unified } from 'unified'; | ||
| import { env } from './env.js'; | ||
| export const BumpLevels = { | ||
| dep: 0, | ||
| patch: 1, | ||
| minor: 2, | ||
| major: 3, | ||
| }; | ||
| export async function getVersionsByDirectory(cwd) { | ||
| const { packages } = await getPackages(cwd); | ||
| return new Map(packages.map((x) => [x.dir, x.packageJson.version])); | ||
| } | ||
| export async function getChangedPackages(cwd, previousVersions) { | ||
| const { packages } = await getPackages(cwd); | ||
| const changedPackages = new Set(); | ||
| for (const pkg of packages) { | ||
| const previousVersion = previousVersions.get(pkg.dir); | ||
| if (previousVersion !== pkg.packageJson.version) { | ||
| changedPackages.add(pkg); | ||
| } | ||
| } | ||
| return [...changedPackages]; | ||
| } | ||
| export function getChangelogEntry(changelog, version) { | ||
| const ast = unified().use(remarkParse).parse(changelog); | ||
| let highestLevel = BumpLevels.dep; | ||
| const nodes = ast.children; | ||
| let headingStartInfo; | ||
| let endIndex; | ||
| for (const [i, node] of nodes.entries()) { | ||
| if (node.type === 'heading') { | ||
| const stringified = mdastToString(node); | ||
| const match = /(major|minor|patch)/.exec(stringified.toLowerCase()); | ||
| if (match !== null) { | ||
| const level = BumpLevels[match[0]]; | ||
| highestLevel = Math.max(level, highestLevel); | ||
| } | ||
| if (headingStartInfo === undefined && stringified === version) { | ||
| headingStartInfo = { | ||
| index: i, | ||
| depth: node.depth, | ||
| }; | ||
| continue; | ||
| } | ||
| if (endIndex === undefined | ||
| && headingStartInfo !== undefined | ||
| && headingStartInfo.depth === node.depth) { | ||
| endIndex = i; | ||
| break; | ||
| } | ||
| } | ||
| } | ||
| if (headingStartInfo) { | ||
| ast.children = ast.children.slice(headingStartInfo.index + 1, endIndex); | ||
| } | ||
| return { | ||
| content: unified().use(remarkStringify).stringify(ast), | ||
| highestLevel, | ||
| }; | ||
| } | ||
| export async function execWithOutput(command, args, options) { | ||
| let myOutput = ''; | ||
| let myError = ''; | ||
| return { | ||
| code: await exec(command, args, { | ||
| listeners: { | ||
| stdout: (data) => { | ||
| myOutput += data.toString(); | ||
| }, | ||
| stderr: (data) => { | ||
| myError += data.toString(); | ||
| }, | ||
| }, | ||
| ...options, | ||
| }), | ||
| stdout: myOutput, | ||
| stderr: myError, | ||
| }; | ||
| } | ||
| export function sortTheThings(a, b) { | ||
| if (a.private === b.private) { | ||
| return b.highestLevel - a.highestLevel; | ||
| } | ||
| if (a.private) { | ||
| return 1; | ||
| } | ||
| return -1; | ||
| } | ||
| export const identify = (_) => !!_; | ||
| export async function getAllFiles(dir, base = dir) { | ||
| const direntList = await fs.promises.readdir(dir, { withFileTypes: true }); | ||
| const files = await Promise.all(direntList.map((dirent) => { | ||
| const res = path.resolve(dir, dirent.name); | ||
| return dirent.isDirectory() | ||
| ? getAllFiles(res, base) | ||
| : [path.relative(base, res)]; | ||
| })); | ||
| return files.flat(); | ||
| } | ||
| export const execSync = (command) => execSync_(command, { stdio: 'inherit' }); | ||
| export const getOptionalInput = (name) => getInput(name) || undefined; | ||
| export const getUsername = async (api) => { | ||
| return env.GITLAB_CI_USER_NAME ?? (await api.Users.showCurrentUser()).username; | ||
| }; | ||
| export const cjsRequire = typeof require === 'undefined' ? createRequire(import.meta.url) : require; | ||
| export const FALSY_VALUES = new Set(['false', '0']); | ||
| export const TRUTHY_VALUES = new Set(['true', '1']); | ||
| export const GITLAB_MAX_TAGS = 4; | ||
| export const HTTP_STATUS_NOT_FOUND = 404; | ||
| //# sourceMappingURL=utils.js.map |
| {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"} |
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
137212
13.42%113
156.82%2178
10.84%27
8%4
Infinity%