Skip to content

Commit

Permalink
fix: don't try to get published versions of private package (#404)
Browse files Browse the repository at this point in the history
  • Loading branch information
blaugold committed Oct 12, 2022
1 parent 511d0a9 commit 9ea87a3
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 2 deletions.
6 changes: 5 additions & 1 deletion packages/melos/lib/src/package.dart
Expand Up @@ -835,7 +835,11 @@ class Package {
/// Queries the pub.dev registry for published versions of this package.
/// Primarily used for publish filters and versioning.
Future<List<String>> getPublishedVersions() async {
final pubHosted = pubSpec.publishTo ?? pubUrl;
if (isPrivate) {
return [];
}

final pubHosted = publishTo ?? pubUrl;

final url = pubHosted.replace(path: '/packages/$name.json');
final response = await http.get(url);
Expand Down
35 changes: 34 additions & 1 deletion packages/melos/test/package_test.dart
Expand Up @@ -6,6 +6,7 @@ import 'package:melos/melos.dart';
import 'package:melos/src/common/http.dart';
import 'package:mockito/mockito.dart';
import 'package:platform/platform.dart';
import 'package:pub_semver/pub_semver.dart';
import 'package:test/test.dart';

import 'mock_env.dart';
Expand Down Expand Up @@ -34,7 +35,12 @@ void main() {

final config = await MelosWorkspaceConfig.fromDirectory(
createMockWorkspaceFs(
packages: [MockPackageFs(name: 'melos')],
packages: [
MockPackageFs(
name: 'melos',
version: Version(0, 0, 0),
)
],
),
);
workspace = await MelosWorkspace.fromConfig(
Expand Down Expand Up @@ -75,6 +81,33 @@ void main() {
..environment['PUB_HOSTED_URL'] = 'http://localhost:8080',
),
);

test(
'do not request published versions for private package',
() async {
final workspaceBuilder = VirtualWorkspaceBuilder('name: test');
workspaceBuilder.addPackage('''
name: a
''');
workspaceBuilder.addPackage('''
name: b
version: 0.0.0
publish_to: none
''');
final workspace = workspaceBuilder.build();

expect(
await workspace.allPackages['a']!.getPublishedVersions(),
isEmpty,
);
expect(
await workspace.allPackages['b']!.getPublishedVersions(),
isEmpty,
);

verifyNever(httpClientMock.get(any));
},
);
});

group('Package', () {
Expand Down

0 comments on commit 9ea87a3

Please sign in to comment.