From a9090516799f00f0a4ecc651fd71ff1d77d3110f Mon Sep 17 00:00:00 2001 From: Jessy Yameogo Date: Thu, 23 Apr 2026 13:18:18 -0700 Subject: [PATCH] [dwds][dwds_test_common] Migrate package to the SDK repository This CL migrates the `dwds` and `dwds_test_common` packages into the Dart SDK repository. Key Changes: - Monorepo Compliance: Updated the pubspecs to align with the SDK pub workspace setup. - Excluded `pkg/dwds_test_common/fixtures/` from `package_deps.dart`. - Updated pkg to status to skip `dwds/test/integration/*` & `dwds_test_common/fixtures/*` until DWDS migration is complete. - Remove package `build_daemon` from DWDS' `pubspec.yaml` as it's not approved for SDK env. - Added `@skip_package_deps_validation` to the following files to ignore import checks for package:build_daemon: `server.dart`, `utilities.dart`, `context.dart`. - Created `pkg/dwds/lib/src/utilities/test_path_utils.dart` to fix path resolution failures in tests (ie. `build_script_test.dart` and `ensure_version_test.dart`). Testing: - All tests passing locally. - CI try bots are green. Design Doc: http://goto.google.com/migrating-webdev and http://goto.google.com/migrating-dwds Fixes https://github.com/dart-lang/sdk/issues/62100 Fixes https://github.com/dart-lang/sdk/issues/62101 Fixes https://github.com/dart-lang/sdk/issues/62102 Fixes https://github.com/dart-lang/sdk/issues/62103 Cq-Include-Trybots: luci.dart.try:pkg-win-release-try,pkg-win-release-arm64-try,pkg-mac-release-try,pkg-mac-release-arm64-try,pkg-linux-release-try,pkg-linux-release-arm64-try,pkg-linux-debug-try Change-Id: I6130be8b7e0b42fbbf81b26a4950a2c4282e3a48 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/494660 Commit-Queue: Jessy Yameogo Reviewed-by: Nate Biggs Reviewed-by: Ben Konyi --- pkg/dwds/OWNERS | 3 ++ pkg/dwds/analysis_options.yaml | 5 +- pkg/dwds/lib/data/debug_event.dart | 2 +- pkg/dwds/lib/data/extension_request.dart | 8 ++-- pkg/dwds/lib/data/hot_reload_request.dart | 2 - pkg/dwds/lib/data/hot_reload_response.dart | 5 +- pkg/dwds/lib/data/hot_restart_request.dart | 2 - pkg/dwds/lib/data/utils.dart | 3 +- pkg/dwds/lib/src/loaders/ddc.dart | 4 +- .../lib/src/loaders/ddc_library_bundle.dart | 4 +- pkg/dwds/lib/src/loaders/require.dart | 4 +- pkg/dwds/pubspec.yaml | 38 ++++++--------- pkg/dwds/test/build/build_script_test.dart | 46 +++++++++++++------ pkg/dwds/test/build/ensure_version_test.dart | 7 ++- pkg/dwds/test/build/min_sdk_test.dart | 38 --------------- pkg/dwds/test/build/test_path_utils.dart | 25 ++++++++++ .../test/integration/fixtures/context.dart | 2 + .../test/integration/fixtures/server.dart | 2 + .../test/integration/fixtures/utilities.dart | 2 + pkg/dwds_test_common/LICENSE | 27 +++++++++++ pkg/dwds_test_common/OWNERS | 3 ++ pkg/dwds_test_common/pubspec.yaml | 17 +++---- pkg/pkg.status | 4 +- pubspec.yaml | 2 + tools/package_deps/bin/package_deps.dart | 1 + 25 files changed, 148 insertions(+), 108 deletions(-) create mode 100644 pkg/dwds/OWNERS delete mode 100644 pkg/dwds/test/build/min_sdk_test.dart create mode 100644 pkg/dwds/test/build/test_path_utils.dart create mode 100644 pkg/dwds_test_common/LICENSE create mode 100644 pkg/dwds_test_common/OWNERS diff --git a/pkg/dwds/OWNERS b/pkg/dwds/OWNERS new file mode 100644 index 00000000000..77bdf63de23 --- /dev/null +++ b/pkg/dwds/OWNERS @@ -0,0 +1,3 @@ +set noparent +# Dart Development Infrastructure Team +file:/tools/OWNERS_DEV_INFRA \ No newline at end of file diff --git a/pkg/dwds/analysis_options.yaml b/pkg/dwds/analysis_options.yaml index 7d9c57a1b58..6853b8e2ede 100644 --- a/pkg/dwds/analysis_options.yaml +++ b/pkg/dwds/analysis_options.yaml @@ -3,8 +3,11 @@ include: package:dart_flutter_team_lints/analysis_options.yaml analyzer: exclude: # Ignore generated files - - "lib/data/*" - "lib/src/handlers/injected_client_js.dart" + # Ignore integration fixtures to avoid analysis errors from "package:build_daemon". + - "test/integration/fixtures/context.dart" + - "test/integration/fixtures/server.dart" + - "test/integration/fixtures/utilities.dart" linter: rules: diff --git a/pkg/dwds/lib/data/debug_event.dart b/pkg/dwds/lib/data/debug_event.dart index 83ab41c6ad6..34f8d96fec5 100644 --- a/pkg/dwds/lib/data/debug_event.dart +++ b/pkg/dwds/lib/data/debug_event.dart @@ -77,7 +77,7 @@ class BatchedDebugEvents { bool _listEquals(List? a, List? b) { if (a == null) return b == null; if (b == null || a.length != b.length) return false; - for (int i = 0; i < a.length; i++) { + for (var i = 0; i < a.length; i++) { if (a[i] != b[i]) return false; } return true; diff --git a/pkg/dwds/lib/data/extension_request.dart b/pkg/dwds/lib/data/extension_request.dart index de47f0a83d7..cf87d905f10 100644 --- a/pkg/dwds/lib/data/extension_request.dart +++ b/pkg/dwds/lib/data/extension_request.dart @@ -49,7 +49,8 @@ class ExtensionRequest { @override String toString() => - 'ExtensionRequest { id=$id, command=$command, commandParams=$commandParams }'; + 'ExtensionRequest { id=$id, command=$command, ' + 'commandParams=$commandParams }'; @override bool operator ==(Object other) => @@ -111,7 +112,8 @@ class ExtensionResponse { @override String toString() => - 'ExtensionResponse { id=$id, success=$success, result=$result, error=$error }'; + 'ExtensionResponse { id=$id, success=$success, ' + 'result=$result, error=$error }'; @override bool operator ==(Object other) => @@ -195,7 +197,7 @@ class BatchedEvents { identical(this, other) || other is BatchedEvents && runtimeType == other.runtimeType && - const ListEquality().equals(events, other.events); + const ListEquality().equals(events, other.events); @override int get hashCode => Object.hashAll(events); diff --git a/pkg/dwds/lib/data/hot_reload_request.dart b/pkg/dwds/lib/data/hot_reload_request.dart index 6a93c710500..048e482a2de 100644 --- a/pkg/dwds/lib/data/hot_reload_request.dart +++ b/pkg/dwds/lib/data/hot_reload_request.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -library hot_reload_request; - /// A request to hot reload the application. class HotReloadRequest { /// A unique identifier for this request. diff --git a/pkg/dwds/lib/data/hot_reload_response.dart b/pkg/dwds/lib/data/hot_reload_response.dart index d3ca219926d..e4fd41776de 100644 --- a/pkg/dwds/lib/data/hot_reload_response.dart +++ b/pkg/dwds/lib/data/hot_reload_response.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -library hot_reload_response; - /// A response to a hot reload request. class HotReloadResponse { /// The unique identifier matching the request. @@ -50,5 +48,6 @@ class HotReloadResponse { @override String toString() => - 'HotReloadResponse(id: $id, success: $success, errorMessage: $errorMessage)'; + 'HotReloadResponse(id: $id, success: $success, ' + 'errorMessage: $errorMessage)'; } diff --git a/pkg/dwds/lib/data/hot_restart_request.dart b/pkg/dwds/lib/data/hot_restart_request.dart index 851968e5153..bd2f9a4329b 100644 --- a/pkg/dwds/lib/data/hot_restart_request.dart +++ b/pkg/dwds/lib/data/hot_restart_request.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -library hot_restart_request; - /// A request to hot restart the application. class HotRestartRequest { /// A unique identifier for this request. diff --git a/pkg/dwds/lib/data/utils.dart b/pkg/dwds/lib/data/utils.dart index 9f674e50112..ff543a47e16 100644 --- a/pkg/dwds/lib/data/utils.dart +++ b/pkg/dwds/lib/data/utils.dart @@ -23,7 +23,8 @@ Map listToMap(List list, {String? type}) { if ((list.length - startIndex).isOdd) { throw FormatException( - 'Expected an even number of elements${type != null ? " after $type" : ""}', + 'Expected an even number of elements' + '${type != null ? " after $type" : ""}', list, ); } diff --git a/pkg/dwds/lib/src/loaders/ddc.dart b/pkg/dwds/lib/src/loaders/ddc.dart index 29c2a29dbac..a1b18f6fd4d 100644 --- a/pkg/dwds/lib/src/loaders/ddc.dart +++ b/pkg/dwds/lib/src/loaders/ddc.dart @@ -146,8 +146,8 @@ class DdcStrategy extends LoadStrategy { AssetReader assetReader, this._buildSettings, this._g3RelativePath, { - String? packageConfigPath, - }) : super(assetReader, packageConfigPath: packageConfigPath); + super.packageConfigPath, + }) : super(assetReader); @override Handler get handler => (request) async { diff --git a/pkg/dwds/lib/src/loaders/ddc_library_bundle.dart b/pkg/dwds/lib/src/loaders/ddc_library_bundle.dart index f3889ef9c99..31b483e4e8e 100644 --- a/pkg/dwds/lib/src/loaders/ddc_library_bundle.dart +++ b/pkg/dwds/lib/src/loaders/ddc_library_bundle.dart @@ -146,10 +146,10 @@ class DdcLibraryBundleStrategy extends LoadStrategy { AssetReader assetReader, this._buildSettings, this._g3RelativePath, { - String? packageConfigPath, + super.packageConfigPath, this.reloadedSourcesUri, this.injectScriptLoad = true, - }) : super(assetReader, packageConfigPath: packageConfigPath); + }) : super(assetReader); @override Handler get handler => (request) async { diff --git a/pkg/dwds/lib/src/loaders/require.dart b/pkg/dwds/lib/src/loaders/require.dart index a6e9aa77862..535c39d66e3 100644 --- a/pkg/dwds/lib/src/loaders/require.dart +++ b/pkg/dwds/lib/src/loaders/require.dart @@ -139,8 +139,8 @@ class RequireStrategy extends LoadStrategy { this._moduleInfoForProvider, AssetReader assetReader, this._buildSettings, { - String? packageConfigPath, - }) : super(assetReader, packageConfigPath: packageConfigPath); + super.packageConfigPath, + }) : super(assetReader); @override Handler get handler => (request) async { diff --git a/pkg/dwds/pubspec.yaml b/pkg/dwds/pubspec.yaml index edf520152b7..06517a04402 100644 --- a/pkg/dwds/pubspec.yaml +++ b/pkg/dwds/pubspec.yaml @@ -1,13 +1,14 @@ name: dwds -# Every time this changes you need to run `dart run build_runner build`. +# Every time this changes you need to run `dart run tool/build.dart`. version: 27.1.1-wip description: >- A service that proxies between the Chrome debug protocol and the Dart VM service protocol. -repository: https://github.com/dart-lang/webdev/tree/main/dwds environment: - sdk: ^3.12.0-307.0.dev + sdk: ^3.12.0-0 + +resolution: workspace dependencies: async: ^2.9.0 @@ -24,9 +25,7 @@ dependencies: pool: ^1.5.0 pub_semver: ^2.1.1 shelf: ^1.3.0 - shelf_packages_handler: ^3.0.0 shelf_proxy: ^1.0.4 - shelf_static: ^1.1.0 shelf_web_socket: ">=2.0.0 <4.0.0" source_maps: ^0.10.10 sse: ^4.2.0 @@ -34,28 +33,17 @@ dependencies: stream_channel: ^2.1.2 vm_service: ">=14.2.4 <16.0.0" vm_service_interface: ^2.0.1 - web: ^1.1.0 web_socket: ^1.0.1 web_socket_channel: ">=2.2.0 <4.0.0" webkit_inspection_protocol: ^1.0.1 dev_dependencies: - args: ^2.4.2 - build_daemon: ^4.0.0 - dart_flutter_team_lints: ^3.5.2 - dwds_test_common: - path: ../dwds_test_common - graphs: ^2.1.0 - io: ^1.0.5 - js: ">=0.6.4 <0.8.0" - mime: ^2.0.0 - test: ^1.21.6 - webdriver: ^3.0.0 - yaml: ^3.1.3 - -dependency_overrides: - sse: - git: - url: https://github.com/dart-lang/tools.git - ref: 06493ded8ca27996d979f9f903d2bc24a1215064 - path: pkgs/sse + dart_flutter_team_lints: any + dwds_test_common: any + graphs: any + io: any + mime: any + test: any + web: any + webdriver: any + yaml: any diff --git a/pkg/dwds/test/build/build_script_test.dart b/pkg/dwds/test/build/build_script_test.dart index 7aee3e9d906..55c271da0a0 100644 --- a/pkg/dwds/test/build/build_script_test.dart +++ b/pkg/dwds/test/build/build_script_test.dart @@ -10,11 +10,13 @@ import 'package:dwds/src/handlers/injected_client_js.dart'; import 'package:path/path.dart' as p; import 'package:test/test.dart'; +import 'test_path_utils.dart'; + void main() { group('Committed file integrity tests', () { - test('injected_client_js.dart is in sync with web/client.dart', () { + test('injected_client_js.dart is in sync with web/client.dart', () async { final clientDartString = File( - 'web/client.dart', + await dwdsPath('web/client.dart'), ).readAsStringSync().replaceAll('\r\n', '\n'); final expectedHash = sha256 .convert(utf8.encode(clientDartString)) @@ -37,11 +39,17 @@ void main() { group('Build script tests', () { setUpAll(() async { - // Use Platform.executable to ensure we use the same Dart SDK - final result = await Process.run(Platform.executable, [ + // Use Platform.executable to ensure the same Dart SDK is used. Only + // resolve the absolute path if it's a local/relative path. Global + // system commands (no path separators) are passed as-is. + final executable = Platform.executable; + final resolvedExecutable = executable.contains(p.separator) + ? File(executable).absolute.path + : executable; + final result = await Process.run(resolvedExecutable, [ 'run', 'tool/build.dart', - ]); + ], workingDirectory: await dwdsPackageRoot); expect( result.exitCode, @@ -50,14 +58,18 @@ void main() { ); }); - test('generates client.js', () { - final clientJsFile = File(p.join('lib', 'src', 'injected', 'client.js')); + test('generates client.js', () async { + final clientJsFile = File( + await dwdsPath(p.join('lib', 'src', 'injected', 'client.js')), + ); expect(clientJsFile.existsSync(), isTrue); expect(clientJsFile.lengthSync(), greaterThan(0)); }); - test('generates version.dart', () { - final versionFile = File(p.join('lib', 'src', 'version.dart')); + test('generates version.dart', () async { + final versionFile = File( + await dwdsPath(p.join('lib', 'src', 'version.dart')), + ); expect(versionFile.existsSync(), isTrue); expect( versionFile.readAsStringSync(), @@ -65,23 +77,29 @@ void main() { ); }); - test('generates injected_client_js.dart', () { + test('generates injected_client_js.dart', () async { final injectedFile = File( - p.join('lib', 'src', 'handlers', 'injected_client_js.dart'), + await dwdsPath( + p.join('lib', 'src', 'handlers', 'injected_client_js.dart'), + ), ); expect(injectedFile.existsSync(), isTrue); expect(injectedFile.lengthSync(), greaterThan(0)); }); - test('injected_client_js.dart matches client.js content', () { - final clientJsFile = File(p.join('lib', 'src', 'injected', 'client.js')); + test('injected_client_js.dart matches client.js content', () async { + final clientJsFile = File( + await dwdsPath(p.join('lib', 'src', 'injected', 'client.js')), + ); final actualClientJs = clientJsFile.readAsStringSync().replaceAll( '\r\n', '\n', ); final injectedFile = File( - p.join('lib', 'src', 'handlers', 'injected_client_js.dart'), + await dwdsPath( + p.join('lib', 'src', 'handlers', 'injected_client_js.dart'), + ), ); final injectedContent = injectedFile.readAsStringSync(); diff --git a/pkg/dwds/test/build/ensure_version_test.dart b/pkg/dwds/test/build/ensure_version_test.dart index f1bd24d9cd6..1266c6d8fcb 100644 --- a/pkg/dwds/test/build/ensure_version_test.dart +++ b/pkg/dwds/test/build/ensure_version_test.dart @@ -12,9 +12,12 @@ import 'package:pub_semver/pub_semver.dart'; import 'package:test/test.dart'; import 'package:yaml/yaml.dart'; +import 'test_path_utils.dart'; + void main() { - test('dwds lib/src/version.dart matches the pubspec version', () { - final pubspec = loadYaml(File('pubspec.yaml').readAsStringSync()) as Map; + test('dwds lib/src/version.dart matches the pubspec version', () async { + final pubspecPath = await dwdsPath('pubspec.yaml'); + final pubspec = loadYaml(File(pubspecPath).readAsStringSync()) as Map; expect( Version.parse(packageVersion), Version.parse(pubspec['version'] as String), diff --git a/pkg/dwds/test/build/min_sdk_test.dart b/pkg/dwds/test/build/min_sdk_test.dart deleted file mode 100644 index 9aca707940f..00000000000 --- a/pkg/dwds/test/build/min_sdk_test.dart +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file -// for details. All rights reserved. Use of this source code is governed by a -// BSD-style license that can be found in the LICENSE file. - -@TestOn('vm') -@Skip('Intended to run in analyze stage on stable SDK only, see mono_pkg.yaml') -library; - -import 'dart:io'; - -import 'package:pub_semver/pub_semver.dart'; -import 'package:test/test.dart'; -import 'package:yaml/yaml.dart'; - -void main() { - test('dwds pubspec has the stable as min SDK constraint', () { - final pubspec = loadYaml(File('pubspec.yaml').readAsStringSync()) as Map; - var sdkVersion = Version.parse(Platform.version.split(' ')[0]); - sdkVersion = Version(sdkVersion.major, sdkVersion.minor, 0); - - final sdkConstraint = VersionConstraint.compatibleWith(sdkVersion); - final environment = pubspec['environment'] as Map? ?? {}; - final pubspecSdkConstraint = environment['sdk']; - expect(pubspecSdkConstraint, isNotNull); - final parsedConstraint = VersionConstraint.parse( - pubspecSdkConstraint as String, - ); - expect( - sdkConstraint.allowsAll(parsedConstraint), - true, - reason: - 'Min sdk constraint is outdated. Please update SDK constraint in ' - 'pubspec to allow latest stable and backwards compatible versions.' - '\n Current stable: $sdkVersion,' - '\n Dwds pubspec constraint: $pubspecSdkConstraint', - ); - }); -} diff --git a/pkg/dwds/test/build/test_path_utils.dart b/pkg/dwds/test/build/test_path_utils.dart new file mode 100644 index 00000000000..32daa716136 --- /dev/null +++ b/pkg/dwds/test/build/test_path_utils.dart @@ -0,0 +1,25 @@ +// Copyright (c) 2026, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +import 'dart:isolate'; +import 'package:path/path.dart' as p; + +/// Returns the path to the `dwds` package root directory. +Future get dwdsPackageRoot async { + final uri = await Isolate.resolvePackageUri( + Uri.parse('package:dwds/dwds.dart'), + ); + if (uri == null) { + throw StateError('Could not resolve package:dwds'); + } + // uri is file:///.../pkg/dwds/lib/dwds.dart + // We need to go up 2 levels to get to pkg/dwds + return p.dirname(p.dirname(uri.toFilePath())); +} + +/// Returns the absolute path to a file or directory relative to the `dwds` +/// package root. +Future dwdsPath(String pathFromDwds) async { + return p.normalize(p.join(await dwdsPackageRoot, pathFromDwds)); +} diff --git a/pkg/dwds/test/integration/fixtures/context.dart b/pkg/dwds/test/integration/fixtures/context.dart index ebf7bb654d4..833e83bbfb2 100644 --- a/pkg/dwds/test/integration/fixtures/context.dart +++ b/pkg/dwds/test/integration/fixtures/context.dart @@ -2,6 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// @skip_package_deps_validation + import 'dart:async'; import 'dart:convert'; import 'dart:io'; diff --git a/pkg/dwds/test/integration/fixtures/server.dart b/pkg/dwds/test/integration/fixtures/server.dart index 95d618058f9..29c455d7aeb 100644 --- a/pkg/dwds/test/integration/fixtures/server.dart +++ b/pkg/dwds/test/integration/fixtures/server.dart @@ -2,6 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// @skip_package_deps_validation + import 'dart:io'; import 'package:build_daemon/data/build_status.dart' as daemon; diff --git a/pkg/dwds/test/integration/fixtures/utilities.dart b/pkg/dwds/test/integration/fixtures/utilities.dart index 99f2f25ef54..7ca72445b19 100644 --- a/pkg/dwds/test/integration/fixtures/utilities.dart +++ b/pkg/dwds/test/integration/fixtures/utilities.dart @@ -2,6 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// @skip_package_deps_validation + import 'dart:io'; import 'package:build_daemon/client.dart'; diff --git a/pkg/dwds_test_common/LICENSE b/pkg/dwds_test_common/LICENSE new file mode 100644 index 00000000000..9035a416a31 --- /dev/null +++ b/pkg/dwds_test_common/LICENSE @@ -0,0 +1,27 @@ +Copyright 2026, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/pkg/dwds_test_common/OWNERS b/pkg/dwds_test_common/OWNERS new file mode 100644 index 00000000000..77bdf63de23 --- /dev/null +++ b/pkg/dwds_test_common/OWNERS @@ -0,0 +1,3 @@ +set noparent +# Dart Development Infrastructure Team +file:/tools/OWNERS_DEV_INFRA \ No newline at end of file diff --git a/pkg/dwds_test_common/pubspec.yaml b/pkg/dwds_test_common/pubspec.yaml index 392a12d4e70..b398daee9bb 100644 --- a/pkg/dwds_test_common/pubspec.yaml +++ b/pkg/dwds_test_common/pubspec.yaml @@ -3,16 +3,17 @@ publish_to: none description: >- Common test functionality. environment: - sdk: ^3.10.0-0.0.dev + sdk: ^3.12.0-0 + +resolution: workspace dependencies: dwds: any - file: ">=6.0.0 <8.0.0" - logging: ^1.0.1 - path: ^1.8.1 - pub_semver: ^2.1.1 - test: ^1.21.1 + file: any + logging: any + path: any + pub_semver: any + test: any dev_dependencies: - dart_flutter_team_lints: ^3.5.2 - yaml: ^3.1.2 + dart_flutter_team_lints: any diff --git a/pkg/pkg.status b/pkg/pkg.status index 3f1ab64c3ba..a3e96f963ab 100644 --- a/pkg/pkg.status +++ b/pkg/pkg.status @@ -52,6 +52,8 @@ dev_compiler/test/options/*: Skip # test needs fixes dev_compiler/test/sourcemap/*: SkipByDesign # Skip sourcemap tests dev_compiler/test/sourcemap/testfiles/*: SkipByDesign # Skip dev_compiler codegen tests dev_compiler/test/worker/*: Skip # test needs fixes +dwds/test/integration/*: SkipByDesign # Skip integration tests relying on build_daemon/build_runner. +dwds_test_common/fixtures/*: SkipByDesign # Skip fixtures relying on build_daemon/build_runner. front_end/test/analyze_git_test: Pass, Slow front_end/test/bootstrap_test: Pass, Slow front_end/test/incremental_compiler_leak_test: Pass, ExtraSlow @@ -264,8 +266,6 @@ front_end/test/incremental_dart2js_load_from_dill_test: Pass, Slow frontend_server_client/test/example/vm_client_test: SkipByDesign # Test is incompatible with Windows platform. frontend_server_client/test/example/web_client_test: SkipByDesign # Test is incompatible with Windows platform. vm_service/test/private_rpcs/dev_fs_http_put_test: Skip # Windows disallows "?" in paths -vm_service/test/private_rpcs/dev_fs_http_put_weird_char_test: Skip # Windows disallows "\r" in paths -vm_service/test/private_rpcs/dev_fs_weird_char_test: Skip # Windows disallows "\r" in paths [ $browser ] */test/analyzer_test: SkipByDesign # No need to run analysis tests on browser bots diff --git a/pubspec.yaml b/pubspec.yaml index d029b1d6818..4f4725d8f63 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -46,6 +46,8 @@ workspace: - pkg/dev_compiler - pkg/dtd - pkg/dtd_impl + - pkg/dwds + - pkg/dwds_test_common - pkg/dynamic_modules - pkg/expect - pkg/_fe_analyzer_shared diff --git a/tools/package_deps/bin/package_deps.dart b/tools/package_deps/bin/package_deps.dart index f0ea51a2ca2..f7a22bbe29f 100644 --- a/tools/package_deps/bin/package_deps.dart +++ b/tools/package_deps/bin/package_deps.dart @@ -337,6 +337,7 @@ class Package implements Comparable { const excludedPaths = { 'pkg/analyzer_cli/test/data/', 'pkg/analyzer_testing/lib/mock_packages/package_content/', + 'pkg/dwds_test_common/fixtures/', 'pkg/front_end/test/id_testing/data/', 'pkg/front_end/test/enable_non_nullable/data/', 'pkg/front_end/test/language_versioning/data/',