Skip to content

Commit 805cfae

Browse files
committed
Merge upstream/master into globby-to-tinyglobby
2 parents 9f396ce + 14f7aaa commit 805cfae

File tree

8 files changed

+2185
-2090
lines changed

8 files changed

+2185
-2090
lines changed

.github/workflows/release.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,13 @@ jobs:
1818
name: release
1919
runs-on: ubuntu-latest
2020
steps:
21-
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
22-
- uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
21+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
22+
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
2323
with:
2424
cache: npm
2525
node-version: lts/*
2626
- run: npm clean-install
27+
- run: npm install --global corepack@latest
2728
- run: corepack npm audit signatures
2829
- run: npx semantic-release
2930
env:

.github/workflows/test.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,14 @@ jobs:
2626
- ubuntu-latest
2727
runs-on: "${{ matrix.os }}"
2828
steps:
29-
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
29+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
3030
- name: "Use Node.js ${{ matrix.node-version }}"
31-
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
31+
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
3232
with:
3333
node-version: "${{ matrix.node-version }}"
3434
cache: npm
3535
- run: npm clean-install
36+
- run: npm install --global corepack@latest
3637
- run: corepack npm audit signatures
3738
- run: npm test
3839

@@ -42,15 +43,16 @@ jobs:
4243
timeout-minutes: 5
4344

4445
steps:
45-
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
46+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4647
- run: git config --global user.name github-actions
4748
- run: git config --global user.email [email protected]
4849
- name: Use Node.js from .nvmrc
49-
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
50+
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
5051
with:
5152
node-version-file: .nvmrc
5253
cache: npm
5354
- run: npm clean-install
55+
- run: npm install --global corepack@latest
5456
- run: corepack npm audit signatures
5557
- run: npm test
5658

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20
1+
22

lib/success.js

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ export default async function success(pluginConfig, context, { Octokit }) {
8888
for (const { nodes, pageInfo } of responseAssociatedPRs) {
8989
if (nodes.length === 0) continue;
9090

91-
responsePRs.push(...buildIssuesOrPRsFromResponseNode(nodes, "PR"));
91+
responsePRs.push(...buildIssuesOrPRsFromResponseNode(nodes));
9292
if (pageInfo.hasNextPage) {
9393
let cursor = pageInfo.endCursor;
9494
let hasNextPage = true;
@@ -171,7 +171,7 @@ export default async function success(pluginConfig, context, { Octokit }) {
171171
if (!isEmpty(parsedIssues)) {
172172
const uniqueParsedIssues = uniqBy(flatten(parsedIssues), "number");
173173

174-
// Get relatedIssues
174+
// Get relatedIssues (or relatedPRs i.e. Issues/PRs that are closed by an associatedPR)
175175
issues = await inChunks(uniqueParsedIssues, 100, async (chunk) => {
176176
const { repository } = await octokit.graphql(
177177
buildRelatedIssuesQuery(chunk.map((issue) => issue.number)),
@@ -360,6 +360,7 @@ async function inChunks(items, chunkSize, callback) {
360360
* Fields common accross PRs and Issue
361361
*/
362362
const baseFields = `
363+
__typename
363364
id
364365
title
365366
body
@@ -420,8 +421,25 @@ function buildRelatedIssuesQuery(numbers) {
420421
repository(owner: $owner, name: $repo) {
421422
${numbers
422423
.map((num) => {
423-
return `issue${num}: issue(number: ${num}) {
424-
${baseFields}
424+
return `issue${num}: issueOrPullRequest(number: ${num}) {
425+
... on Issue {
426+
${baseFields}
427+
}
428+
... on PullRequest {
429+
${baseFields}
430+
mergeable
431+
changedFiles
432+
mergedAt
433+
isDraft
434+
mergedBy {
435+
login
436+
avatarUrl
437+
url
438+
}
439+
commits {
440+
totalCount
441+
}
442+
}
425443
}`;
426444
})
427445
.join("")}
@@ -513,10 +531,9 @@ const loadSingleCommitAssociatedPRs = `#graphql
513531
/**
514532
* Build associatedPRs or RelatedIssues object (into issue-like object with `pull_request` property) from the GraphQL repository response
515533
* @param {object} responseNodes
516-
* @param {"ISSUE" | "PR"} type
517534
* @returns {object[]}
518535
*/
519-
function buildIssuesOrPRsFromResponseNode(responseNodes, type = "ISSUE") {
536+
function buildIssuesOrPRsFromResponseNode(responseNodes) {
520537
const resultArray = [];
521538
for (const node of responseNodes) {
522539
let baseProps = {
@@ -569,7 +586,7 @@ function buildIssuesOrPRsFromResponseNode(responseNodes, type = "ISSUE") {
569586

570587
let result = baseProps;
571588

572-
if (type === "PR") {
589+
if (node.__typename === "PullRequest") {
573590
const prProps = {
574591
pull_request: true,
575592
mergeable: node.mergeable,

0 commit comments

Comments
 (0)