Skip to content

Commit df3bf71

Browse files
fix(config-lerna-scopes): ignore packages without names (#2514)
Some packages now include package.json file in sub-directories which dont contain names
1 parent 5113f22 commit df3bf71

File tree

6 files changed

+28
-0
lines changed

6 files changed

+28
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"lerna": "4",
3+
"version": "1.0.0",
4+
"packages": ["packages/*"]
5+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"name": "basic",
3+
"version": "1.0.0",
4+
"devDependencies": {
5+
"lerna": "^4.0.0"
6+
}
7+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"name": "a",
3+
"version": "1.0.0"
4+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"type": "module"
3+
}

@commitlint/config-lerna-scopes/index.js

+1
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ function getPackages(context) {
4949
.then((packages) => {
5050
return packages
5151
.map((pkg) => pkg.name)
52+
.filter(Boolean)
5253
.map((name) => (name.charAt(0) === '@' ? name.split('/')[1] : name));
5354
});
5455
}

@commitlint/config-lerna-scopes/index.test.js

+8
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,14 @@ test('returns expected value for basic lerna repository', async () => {
6060
expect(value).toEqual(['a', 'b']);
6161
});
6262

63+
test('returns expected value for lerna repository containing modules', async () => {
64+
const {'scope-enum': fn} = config.rules;
65+
const cwd = await lerna.bootstrap('modules', __dirname);
66+
67+
const [, , value] = await fn({cwd});
68+
expect(value).toEqual(['a']);
69+
});
70+
6371
test('returns expected value for scoped lerna repository', async () => {
6472
const {'scope-enum': fn} = config.rules;
6573
const cwd = await lerna.bootstrap('scoped', __dirname);

0 commit comments

Comments
 (0)