@@ -27,13 +27,13 @@ const git = simpleGit(root);
27
27
* Identify modified packages.
28
28
*/
29
29
async function getDiffData ( ) : Promise < {
30
- changedPackages : string [ ] ;
30
+ changedPackages : Set < string > ;
31
31
changesetFile : string ;
32
32
} | null > {
33
33
const diff = await git . diff ( [ '--name-only' , 'origin/master...HEAD' ] ) ;
34
34
const changedFiles = diff . split ( '\n' ) ;
35
35
let changesetFile = '' ;
36
- const changedPackagesMap = new Set ( ) ;
36
+ const changedPackages = new Set < string > ( ) ;
37
37
for ( const filename of changedFiles ) {
38
38
// Check for an existing .changeset
39
39
const changesetMatch = filename . match ( / ^ \. c h a n g e s e t \/ [ a - z A - Z - ] + \. m d / ) ;
@@ -50,14 +50,14 @@ async function getDiffData(): Promise<{
50
50
) ) ;
51
51
if ( changedPackage ) {
52
52
// Add the package itself.
53
- changedPackagesMap . add ( changedPackage . name ) ;
53
+ changedPackages . add ( changedPackage . name ) ;
54
54
}
55
55
}
56
56
}
57
- if ( ! changesetFile || Object . keys ( changedPackagesMap ) . length === 0 ) {
57
+ if ( ! changesetFile || changedPackages . size === 0 ) {
58
58
return null ;
59
59
}
60
- return { changedPackages : Object . keys ( changedPackagesMap ) , changesetFile } ;
60
+ return { changedPackages, changesetFile } ;
61
61
}
62
62
63
63
async function parseChangesetFile ( changesetFile : string ) {
@@ -81,7 +81,7 @@ async function main() {
81
81
} else {
82
82
const { changedPackages, changesetFile } = diffData ;
83
83
const changesetPackages = await parseChangesetFile ( changesetFile ) ;
84
- const missingPackages = changedPackages . filter (
84
+ const missingPackages = [ ... changedPackages ] . filter (
85
85
changedPkg => ! changesetPackages . includes ( changedPkg )
86
86
) ;
87
87
if ( missingPackages . length > 0 ) {
0 commit comments