Skip to content

Commit ab071e5

Browse files
committed
Filter issues by changed files
1 parent a684d4a commit ab071e5

6 files changed

Lines changed: 50 additions & 29 deletions

File tree

badges/coverage.svg

Lines changed: 1 addition & 1 deletion
Loading

dist/index.js

Lines changed: 35 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/index.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/diff.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ export async function listChangedFiles(
1313
]
1414
const { files } = await git.diffSummary([
1515
`--diff-filter=${statuses.join('')}`,
16-
refs.base.sha,
17-
refs.head.sha
16+
refs.base.ref,
17+
refs.head.ref
1818
])
1919
return files.filter(({ binary }) => !binary).map(({ file }) => file)
2020
}

src/issues.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ export type SourceFileIssue = Required<Issue> & { audit: AuditReport }
55
export function filterRelevantIssues({
66
currReport,
77
prevReport,
8-
reportsDiff
9-
// changedFiles
8+
reportsDiff,
9+
changedFiles
1010
}: {
1111
currReport: Report
1212
prevReport: Report
1313
reportsDiff: ReportsDiff
14-
// changedFiles: string[]
14+
changedFiles: string[]
1515
}): SourceFileIssue[] {
1616
const audits = [...reportsDiff.audits.changed, ...reportsDiff.audits.added]
1717
.map(auditLink =>
@@ -28,7 +28,7 @@ export function filterRelevantIssues({
2828

2929
return issues.filter(
3030
issue =>
31-
// changedFiles.includes(issue.source?.file) &&
31+
changedFiles.includes(issue.source?.file) &&
3232
!prevIssues.some(prevIssue => issuesAreEqual(prevIssue, issue))
3333
)
3434
}

src/main.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
import { collect } from './collect'
1414
import { commentOnPR } from './comment'
1515
import { compare } from './compare'
16+
import { listChangedFiles } from './diff'
1617
import { parseInputs } from './inputs'
1718
import { filterRelevantIssues } from './issues'
1819
import type { PersistedCliFiles } from './persist'
@@ -44,8 +45,7 @@ export async function run(
4445
}
4546

4647
if (isPullRequest(github.context.payload.pull_request)) {
47-
const { base } = github.context.payload.pull_request
48-
// const { base, head } = github.context.payload.pull_request
48+
const { base, head } = github.context.payload.pull_request
4949
core.debug(`PR detected, preparing to compare base branch ${base.ref}`)
5050

5151
let prevReport: string
@@ -92,18 +92,18 @@ export async function run(
9292
core.debug(`Commented on PR #${github.context.issue.number}`)
9393

9494
if (inputs.annotations) {
95+
await git.fetch('origin', base.ref, ['--depth=1'])
9596
const reportsDiff = await fs.readFile(diffJsonPath, 'utf8')
96-
// const changedFiles = await listChangedFiles({ base, head }, git)
97+
const changedFiles = await listChangedFiles({ base, head }, git)
9798
const issues = filterRelevantIssues({
9899
currReport: JSON.parse(currReport),
99100
prevReport: JSON.parse(prevReport),
100-
reportsDiff: JSON.parse(reportsDiff)
101-
// changedFiles
101+
reportsDiff: JSON.parse(reportsDiff),
102+
changedFiles
102103
})
103104
createAnnotationsFromIssues(issues)
104105
core.debug(
105-
// `Found ${issues.length} relevant issues for ${changedFiles.length} changed files and created GitHub annotations`
106-
`Found ${issues.length} relevant issues and created GitHub annotations`
106+
`Found ${issues.length} relevant issues for ${changedFiles.length} changed files and created GitHub annotations`
107107
)
108108
}
109109

0 commit comments

Comments
 (0)