File tree Expand file tree Collapse file tree 2 files changed +27
-8
lines changed
Expand file tree Collapse file tree 2 files changed +27
-8
lines changed Original file line number Diff line number Diff line change @@ -693,13 +693,19 @@ export class GitHubCache {
693693 const { data : changelogResult } = await this . #octokit. rest . repos . getContent ( {
694694 owner,
695695 repo,
696- ref :
697- owner === "sveltejs" &&
698- repo === "prettier-plugin-svelte" && // this repo is a bit of a mess (https://github.com/sveltejs/prettier-plugin-svelte/issues/497)
699- tags [ 0 ] &&
700- semver . major ( repository . metadataFromTag ( tags [ 0 ] . name ) [ 1 ] ) === 3
701- ? "version-3" // a temporary fix to get the changelog from the right branch while v4 isn't out yet
702- : undefined ,
696+ ref : ( ( ) => {
697+ try {
698+ return owner === "sveltejs" &&
699+ repo === "prettier-plugin-svelte" && // this repo is a bit of a mess (https://github.com/sveltejs/prettier-plugin-svelte/issues/497)
700+ tags [ 0 ] &&
701+ semver . major ( repository . metadataFromTag ( tags [ 0 ] . name ) [ 1 ] ) === 3
702+ ? "version-3" // a temporary fix to get the changelog from the right branch while v4 isn't out yet
703+ : undefined ;
704+ } catch {
705+ // handle oopsies for invalid versions returned from `metadataFromTag` (or others)
706+ return undefined ;
707+ }
708+ } ) ( ) ,
703709 path : "CHANGELOG.md"
704710 } ) ;
705711
Original file line number Diff line number Diff line change @@ -78,7 +78,20 @@ export async function getPackageReleases(
7878 console . warn ( `Empty release tag name: ${ JSON . stringify ( release ) } ` ) ;
7979 return false ;
8080 }
81- const [ name ] = repo . metadataFromTag ( release . tag_name ) ;
81+ const [ name , version ] = repo . metadataFromTag ( release . tag_name ) ;
82+ if ( semver . valid ( version ) === null ) {
83+ posthog ?. captureException ( new Error ( "Invalid version" ) , undefined , {
84+ repo : `${ repo . repoOwner } /${ repo . repoName } ` ,
85+ packageName,
86+ tag : release . tag_name ,
87+ parsedName : name ,
88+ parsedVersion : version
89+ } ) ;
90+ console . warn (
91+ `Invalid version from \`metadataFromTag\` "${ version } " gotten from ${ release . tag_name } `
92+ ) ;
93+ return false ;
94+ }
8295 return (
8396 ( repo . dataFilter ?.( release ) ?? true ) &&
8497 repo . pkg . name . localeCompare ( name , undefined , { sensitivity : "base" } ) === 0
You can’t perform that action at this time.
0 commit comments