diff --git a/pkgs/dart_services/lib/server.dart b/pkgs/dart_services/lib/server.dart index 0da546c36..563093ca3 100644 --- a/pkgs/dart_services/lib/server.dart +++ b/pkgs/dart_services/lib/server.dart @@ -41,7 +41,7 @@ Future main(List args) async { print('warning: no redis server specified.\n'); } - final sdk = Sdk(); + final sdk = Sdk.fromLocalFlutter(); final int port; diff --git a/pkgs/dart_services/lib/src/sdk.dart b/pkgs/dart_services/lib/src/sdk.dart index 7ec96247c..dc09c40ca 100644 --- a/pkgs/dart_services/lib/src/sdk.dart +++ b/pkgs/dart_services/lib/src/sdk.dart @@ -60,7 +60,10 @@ final class Sdk { required this.engineVersion, }) : _flutterBinPath = flutterBinPath; - factory Sdk() { + /// Create an [Sdk] to track the location and version information + /// of the Flutter SDK used to run `dart_services`, or if not valid, + /// the one configured using the `FLUTTER_ROOT` environment variable. + factory Sdk.fromLocalFlutter() { // Note below, 'Platform.resolvedExecutable' will not lead to a real SDK if // we've been compiled into an AOT binary. In those cases we fall back to // looking for a 'FLUTTER_ROOT' environment variable. diff --git a/pkgs/dart_services/test/analysis_test.dart b/pkgs/dart_services/test/analysis_test.dart index 46b95550c..9b47aff8a 100644 --- a/pkgs/dart_services/test/analysis_test.dart +++ b/pkgs/dart_services/test/analysis_test.dart @@ -13,7 +13,7 @@ void main() => defineTests(); void defineTests() { group('analysis', () { - final sdk = Sdk(); + final sdk = Sdk.fromLocalFlutter(); late AnalysisServerWrapper analysisServer; setUpAll(() async { @@ -183,7 +183,7 @@ void defineTests() { }); group('analysis flutter', () { - final sdk = Sdk(); + final sdk = Sdk.fromLocalFlutter(); late AnalysisServerWrapper analysisServer; setUpAll(() async { diff --git a/pkgs/dart_services/test/caching_test.dart b/pkgs/dart_services/test/caching_test.dart index b0371fa8f..4026f7a62 100644 --- a/pkgs/dart_services/test/caching_test.dart +++ b/pkgs/dart_services/test/caching_test.dart @@ -51,7 +51,7 @@ void defineTests(bool hasRedis) { setUpAll(() async { redisProcess = await startRedisProcessAndDrainIO(9501); - sdk = Sdk(); + sdk = Sdk.fromLocalFlutter(); log.onRecord.listen((LogRecord rec) { logMessages.add('${rec.level.name}: ${rec.time}: ${rec.message}'); }); diff --git a/pkgs/dart_services/test/compiling_test.dart b/pkgs/dart_services/test/compiling_test.dart index 85d9e9f35..b03a7789c 100644 --- a/pkgs/dart_services/test/compiling_test.dart +++ b/pkgs/dart_services/test/compiling_test.dart @@ -15,7 +15,8 @@ void defineTests() { late Compiler compiler; setUpAll(() async { - compiler = Compiler(Sdk(), storageBucket: 'nnbd_artifacts'); + compiler = + Compiler(Sdk.fromLocalFlutter(), storageBucket: 'nnbd_artifacts'); }); tearDownAll(() async { diff --git a/pkgs/dart_services/test/project_creator_test.dart b/pkgs/dart_services/test/project_creator_test.dart index 839af4947..f17bbd953 100644 --- a/pkgs/dart_services/test/project_creator_test.dart +++ b/pkgs/dart_services/test/project_creator_test.dart @@ -10,7 +10,7 @@ import 'package:test_descriptor/test_descriptor.dart' as d; void main() => defineTests(); void defineTests() { - final sdk = Sdk(); + final sdk = Sdk.fromLocalFlutter(); final languageVersion = sdk.dartVersion; diff --git a/pkgs/dart_services/test/server_test.dart b/pkgs/dart_services/test/server_test.dart index b3310b710..56d88de40 100644 --- a/pkgs/dart_services/test/server_test.dart +++ b/pkgs/dart_services/test/server_test.dart @@ -19,7 +19,7 @@ void defineTests() { late final ServicesClient client; setUpAll(() async { - sdk = Sdk(); + sdk = Sdk.fromLocalFlutter(); server = await EndpointsServer.serve(0, sdk, null, 'nnbd_artifacts'); httpClient = Client(); diff --git a/pkgs/dart_services/tool/grind.dart b/pkgs/dart_services/tool/grind.dart index 3333f16e6..c4803bcfa 100644 --- a/pkgs/dart_services/tool/grind.dart +++ b/pkgs/dart_services/tool/grind.dart @@ -31,7 +31,7 @@ final List compilationArtifacts = [ 'google storage') void validateStorageArtifacts() async { final args = context.invocation.arguments; - final sdk = Sdk(); + final sdk = Sdk.fromLocalFlutter(); final version = sdk.dartVersion; final bucket = switch (args.hasOption('bucket')) { true => args.getOption('bucket'), @@ -72,7 +72,7 @@ void buildProjectTemplates() async { await templatesDirectory.delete(recursive: true); } - final sdk = Sdk(); + final sdk = Sdk.fromLocalFlutter(); final projectCreator = ProjectCreator( sdk, templatesPath, @@ -87,7 +87,7 @@ void buildProjectTemplates() async { @Task('build the sdk compilation artifacts for upload to google storage') @Depends(updatePubDependencies) void buildStorageArtifacts() async { - final sdk = Sdk(); + final sdk = Sdk.fromLocalFlutter(); delete(getDir('artifacts')); final instructions = []; @@ -268,7 +268,7 @@ Future _run( @Task('Update pubspec dependency versions') @Depends(buildProjectTemplates) void updatePubDependencies() async { - final sdk = Sdk(); + final sdk = Sdk.fromLocalFlutter(); await _updateDependenciesFile(channel: sdk.channel, sdk: sdk); }