File tree 7 files changed +17
-2
lines changed
7 files changed +17
-2
lines changed Original file line number Diff line number Diff line change 1
1
{
2
+ "name" : " @fixtures/dependencies" ,
2
3
"scripts" : {
3
4
"start" : " start-server" ,
4
5
"test" : " jest"
Original file line number Diff line number Diff line change 1
1
{
2
+ "name" : " @fixtures/ava" ,
2
3
"ava" : {
3
4
"files" : [
4
5
" **/*.test.*"
Original file line number Diff line number Diff line change 1
1
{
2
+ "name" : " @fixtures/ava2" ,
2
3
"knip" : {
3
4
"ava" : true
4
5
}
Original file line number Diff line number Diff line change 1
1
{
2
+ "name" : " @fixtures/ava3" ,
2
3
"knip" : {
3
4
"ava" : true
4
5
}
Original file line number Diff line number Diff line change 1
1
{
2
- "name" : " @fixtures/typescript -extends" ,
2
+ "name" : " @fixtures/tsconfig -extends" ,
3
3
"workspaces" : [
4
4
" packages/*"
5
5
],
Original file line number Diff line number Diff line change 1
1
{
2
+ "name" : " @tsconfig-extends/frontend" ,
2
3
"dependencies" : {
3
4
"hastscript" : " *"
4
5
},
Original file line number Diff line number Diff line change @@ -246,7 +246,7 @@ export class ConfigurationChief {
246
246
. map ( dir => join ( this . cwd , dir ) ) ;
247
247
248
248
this . availableWorkspaceManifests = this . getAvailableWorkspaceManifests ( this . availableWorkspaceDirs ) ;
249
- this . availableWorkspacePkgNames = new Set ( this . availableWorkspaceManifests . map ( w => w . manifest . name ) ) ;
249
+ this . availableWorkspacePkgNames = this . getAvailableWorkspacePkgNames ( this . availableWorkspaceManifests ) ;
250
250
this . workspacesGraph = createPkgGraph ( this . availableWorkspaceManifests ) ;
251
251
this . enabledWorkspaces = this . getEnabledWorkspaces ( ) ;
252
252
}
@@ -316,6 +316,16 @@ export class ConfigurationChief {
316
316
} ) ;
317
317
}
318
318
319
+ private getAvailableWorkspacePkgNames ( availableWorkspaceManifests : { dir : string ; manifest : PackageJson } [ ] ) {
320
+ const pkgNames = new Set < string > ( ) ;
321
+ for ( const { dir, manifest } of availableWorkspaceManifests ) {
322
+ if ( ! manifest . name ) throw new ConfigurationError ( `Missing package name in ${ join ( dir , 'package.json' ) } ` ) ;
323
+ if ( pkgNames . has ( manifest . name ) ) throw new ConfigurationError ( `Duplicate package name: ${ manifest . name } ` ) ;
324
+ pkgNames . add ( manifest . name ) ;
325
+ }
326
+ return pkgNames ;
327
+ }
328
+
319
329
private getEnabledWorkspaces ( ) {
320
330
if ( workspaceArg && ! existsSync ( workspaceArg ) ) {
321
331
throw new ConfigurationError ( `Directory does not exist: ${ workspaceArg } ` ) ;
You can’t perform that action at this time.
0 commit comments