Skip to content

Commit 1b2ecbd

Browse files
nshahanCommit Queue
authored and
Commit Queue
committed
[ddc] Cleanup JavaScript files in packaged SDK
- Removes all versions of `dart_sdk.js` and `dart_sdk.js.map` from the packaged SDK. All supported build systems compile their own versions of these files. - Removes `dart-sdk/lib/dev_compiler/kernel/common/run.js`. No supported build system uses the "common" module system. - Moves `dart-sdk/lib/dev_compiler/kernel/amd/require.js` to `dart-sdk/lib/dev_compiler/amd/require.js` cleaning up the unnecessary `kernel/` sub-directory. Issue: #50700 Change-Id: Id4173ddec31a6c0260009924bf1e1ae3d3f32abf Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/275482 Reviewed-by: Mark Zhou <[email protected]> Commit-Queue: Nicholas Shahan <[email protected]>
1 parent c140324 commit 1b2ecbd

File tree

4 files changed

+31
-70
lines changed

4 files changed

+31
-70
lines changed

pkg/dev_compiler/test/expression_compiler/expression_compiler_e2e_suite.dart

+2-2
Original file line numberDiff line numberDiff line change
@@ -380,8 +380,8 @@ class TestDriver {
380380
if (!File('$dartSdkPath.js').existsSync()) {
381381
throw Exception('Unable to find Dart SDK at $dartSdkPath.js');
382382
}
383-
var requirePath = escaped(p.join(buildDir, 'dart-sdk', 'lib',
384-
'dev_compiler', 'kernel', 'amd', 'require.js'));
383+
var requirePath = escaped(p.join(
384+
buildDir, 'dart-sdk', 'lib', 'dev_compiler', 'amd', 'require.js'));
385385
var outputPath = escaped(p.withoutExtension(output.toFilePath()));
386386
bootstrapFile.writeAsStringSync('''
387387
<script src='$requirePath'></script>

pkg/dev_compiler/test/sdk_source_map_test.dart

+7-7
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,17 @@
55
import 'dart:io';
66

77
import 'package:expect/expect.dart';
8+
import 'package:front_end/src/compute_platform_binaries_location.dart';
89
import 'package:path/path.dart' as p;
910
import 'package:source_maps/source_maps.dart' as sm;
1011

1112
void main() async {
12-
final binDir = p.dirname(Platform.resolvedExecutable);
13-
final sdkDir = p.dirname(binDir);
14-
// This test expects to run in a build SDK.
15-
Expect.isTrue(binDir.endsWith('bin'));
16-
17-
final sdkJsMapDir =
18-
p.joinAll([sdkDir, 'lib', 'dev_compiler', 'kernel', 'amd']);
13+
// This test relies on source maps for the built SDK when working inside the
14+
// Dart SDK repo.
15+
final buildDir = computePlatformBinariesLocation(forceBuildDir: true);
16+
final sdkJsMapDir = buildDir
17+
.resolve(p.joinAll(['gen', 'utils', 'dartdevc', 'sound', 'amd']))
18+
.toFilePath();
1919
final sdkJsMapFile = p.join(sdkJsMapDir, 'dart_sdk.js.map');
2020

2121
final sdkJsMapText = await File(sdkJsMapFile).readAsString();

sdk/BUILD.gn

+14-60
Original file line numberDiff line numberDiff line change
@@ -530,67 +530,21 @@ copy("copy_dev_compiler_dills") {
530530
[ "$root_out_dir/$dart_sdk_output/lib/_internal/{{source_file_part}}" ]
531531
}
532532

533-
# This rule copies DDK's JS SDK and require.js to lib/dev_compiler/kernel/amd.
534-
copy("copy_dev_compiler_js_amd_kernel") {
535-
visibility = [ ":copy_dev_compiler_js" ]
536-
deps = [ "../utils/dartdevc:dartdevc_kernel_sdk" ]
537-
gen_dir =
538-
get_label_info("../utils/dartdevc:dartdevc_kernel_sdk", "target_gen_dir")
539-
sources = [
540-
"$gen_dir/kernel/amd/dart_sdk.js",
541-
"$gen_dir/kernel/amd/dart_sdk.js.map",
542-
"../third_party/requirejs/require.js",
543-
]
544-
outputs = [ "$root_out_dir/$dart_sdk_output/lib/dev_compiler/kernel/amd/{{source_file_part}}" ]
545-
}
546-
547-
# This rule copies DDK's JS SDK to lib/dev_compiler/kernel/common.
548-
copy("copy_dev_compiler_js_common_kernel") {
549-
visibility = [ ":copy_dev_compiler_js" ]
550-
deps = [ "../utils/dartdevc:dartdevc_kernel_sdk" ]
551-
gen_dir =
552-
get_label_info("../utils/dartdevc:dartdevc_kernel_sdk", "target_gen_dir")
553-
sources = [
554-
"$gen_dir/kernel/common/dart_sdk.js",
555-
"$gen_dir/kernel/common/dart_sdk.js.map",
556-
"../pkg/dev_compiler/lib/js/common/run.js",
557-
]
558-
outputs = [ "$root_out_dir/$dart_sdk_output/lib/dev_compiler/kernel/common/{{source_file_part}}" ]
559-
}
560-
561-
# This rule copies DDK's JS SDK to lib/dev_compiler/kernel/es6.
562-
copy("copy_dev_compiler_js_es6_kernel") {
563-
visibility = [ ":copy_dev_compiler_js" ]
564-
deps = [ "../utils/dartdevc:dartdevc_kernel_sdk" ]
565-
gen_dir =
566-
get_label_info("../utils/dartdevc:dartdevc_kernel_sdk", "target_gen_dir")
567-
sources = [
568-
"$gen_dir/kernel/es6/dart_sdk.js",
569-
"$gen_dir/kernel/es6/dart_sdk.js.map",
570-
]
571-
outputs = [ "$root_out_dir/$dart_sdk_output/lib/dev_compiler/kernel/es6/{{source_file_part}}" ]
572-
}
573-
574-
# Copies all of the JS artifacts needed by DDC.
575-
group("copy_dev_compiler_js") {
576-
visibility = [
577-
":copy_dev_compiler_sdk",
578-
":copy_dev_compiler_tools",
579-
]
580-
public_deps = [
581-
":copy_dev_compiler_js_amd_kernel",
582-
":copy_dev_compiler_js_common_kernel",
583-
":copy_dev_compiler_js_es6_kernel",
533+
# Copies require.js to lib/dev_compiler/amd.
534+
# Used to load DDC compiled amd modules.
535+
copy("copy_dev_compiler_amd_require_js") {
536+
visibility = [ ":copy_dev_compiler_sdk" ]
537+
sources = [ "../third_party/requirejs/require.js" ]
538+
outputs = [
539+
"$root_out_dir/$dart_sdk_output/lib/dev_compiler/amd/{{source_file_part}}",
584540
]
585541
}
586542

587-
# This rule copies tools to go along with ddc.
588-
copy("copy_dev_compiler_tools") {
543+
# Copies stack_trace_mapper tool to lib/dev_compiler/web.
544+
# Used when running DDC compiled applicaations.
545+
copy("copy_dev_compiler_stack_trace_mapper") {
589546
visibility = [ ":copy_dev_compiler_sdk" ]
590-
deps = [
591-
":copy_dev_compiler_js",
592-
"../utils/dartdevc:stack_trace_mapper",
593-
]
547+
deps = [ "../utils/dartdevc:stack_trace_mapper" ]
594548
dart_out =
595549
get_label_info("../utils/dartdevc:stack_trace_mapper", "root_out_dir")
596550
sources = [ "$dart_out/dev_compiler/build/web/dart_stack_trace_mapper.js" ]
@@ -599,13 +553,13 @@ copy("copy_dev_compiler_tools") {
599553
]
600554
}
601555

602-
# This is the main rule for copying ddc's dependencies to lib/
556+
# Main rule for copying all of DDC's dependencies to lib.
603557
group("copy_dev_compiler_sdk") {
604558
visibility = [ ":create_full_sdk" ]
605559
public_deps = [
560+
":copy_dev_compiler_amd_require_js",
606561
":copy_dev_compiler_dills",
607-
":copy_dev_compiler_js",
608-
":copy_dev_compiler_tools",
562+
":copy_dev_compiler_stack_trace_mapper",
609563
]
610564
}
611565

utils/dartdevc/BUILD.gn

+8-1
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,14 @@ template("dartdevc_sdk_js") {
347347
"--multi-root-scheme",
348348
"org-dartlang-sdk",
349349
"--multi-root-output-path",
350-
rebase_path("$target_gen_dir/../../"),
350+
351+
# This path is intended to point to a version of source files used to
352+
# generate the SDK JavaScript modules.
353+
# The intention is that the source map locations can be linked to the
354+
# orignal source files while running SDK test suites.
355+
# These JavaScript files and source maps are no longer packaged into the
356+
# released SDK.
357+
rebase_path("$target_gen_dir/../../../dart-sdk"),
351358
"--modules",
352359
"amd",
353360
"-o",

0 commit comments

Comments
 (0)