Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit f852f6e

Browse files
committed
Stop writing package_config_subset
1 parent c04cd2b commit f852f6e

6 files changed

Lines changed: 5 additions & 85 deletions

File tree

packages/flutter_tools/lib/src/build_system/targets/common.dart

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -127,11 +127,6 @@ class ReleaseCopyFlutterBundle extends CopyFlutterBundle {
127127
}
128128

129129
/// Generate a snapshot of the dart code used in the program.
130-
///
131-
/// This target depends on the `.dart_tool/package_config.json` file
132-
/// even though it is not listed as an input. Pub inserts a timestamp into
133-
/// the file which causes unnecessary rebuilds, so instead a subset of the contents
134-
/// are used an input instead.
135130
class KernelSnapshot extends Target {
136131
const KernelSnapshot();
137132

@@ -140,7 +135,7 @@ class KernelSnapshot extends Target {
140135

141136
@override
142137
List<Source> get inputs => const <Source>[
143-
Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config_subset'),
138+
Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config.json'),
144139
Source.pattern(
145140
'{FLUTTER_ROOT}/packages/flutter_tools/lib/src/build_system/targets/common.dart',
146141
),

packages/flutter_tools/lib/src/build_system/targets/dart_plugin_registrant.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ class DartPluginRegistrantTarget extends Target {
6868

6969
@override
7070
List<Source> get inputs => <Source>[
71-
const Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config_subset'),
71+
const Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config.json'),
7272
];
7373

7474
@override

packages/flutter_tools/lib/src/build_system/targets/native_assets.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ abstract class DartBuild extends Target {
9090
'{FLUTTER_ROOT}/packages/flutter_tools/lib/src/build_system/targets/native_assets.dart',
9191
),
9292
// If different packages are resolved, different native assets might need to be built.
93-
Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config_subset'),
93+
Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config.json'),
9494
// TODO(mosuem): Should consume resources.json. https://github.com/flutter/flutter/issues/146263
9595
];
9696

@@ -178,7 +178,7 @@ class InstallCodeAssets extends Target {
178178
'{FLUTTER_ROOT}/packages/flutter_tools/lib/src/build_system/targets/native_assets.dart',
179179
),
180180
// If different packages are resolved, different native assets might need to be built.
181-
Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config_subset'),
181+
Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config.json'),
182182
];
183183

184184
@override

packages/flutter_tools/lib/src/build_system/targets/web.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ abstract class Dart2WebTarget extends Target {
132132
const Source.hostArtifact(HostArtifact.flutterWebSdk),
133133
const Source.artifact(Artifact.engineDartBinary),
134134
const Source.pattern('{BUILD_DIR}/main.dart'),
135-
const Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config_subset'),
135+
const Source.pattern('{WORKSPACE_DIR}/.dart_tool/package_config.json'),
136136
];
137137

138138
@override

packages/flutter_tools/lib/src/dart/pub.dart

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -698,9 +698,6 @@ class _DefaultPub implements Pub {
698698

699699
/// Update the package configuration file in [project].
700700
///
701-
/// Creates a corresponding `package_config_subset` file that is used by the
702-
/// build system to avoid rebuilds caused by an updated pub timestamp.
703-
///
704701
/// if `project.generateSyntheticPackage` is `true` then insert flutter_gen
705702
/// synthetic package into the package configuration. This is used by the l10n
706703
/// localization tooling to insert a new reference into the package_config
@@ -715,10 +712,6 @@ class _DefaultPub implements Pub {
715712
logger: _logger,
716713
);
717714

718-
packageConfigFile.parent
719-
.childFile('package_config_subset')
720-
.writeAsStringSync(_computePackageConfigSubset(packageConfig, _fileSystem));
721-
722715
// If we aren't generating localizations, short-circuit.
723716
if (!project.manifest.generateLocalizations) {
724717
return;
@@ -760,18 +753,4 @@ class _DefaultPub implements Pub {
760753

761754
packageConfigFile.writeAsStringSync(json.encode(jsonContents));
762755
}
763-
764-
// Subset the package config file to only the parts that are relevant for
765-
// rerunning the dart compiler.
766-
String _computePackageConfigSubset(PackageConfig packageConfig, FileSystem fileSystem) {
767-
final StringBuffer buffer = StringBuffer();
768-
for (final Package package in packageConfig.packages) {
769-
buffer.writeln(package.name);
770-
buffer.writeln(package.languageVersion);
771-
buffer.writeln(package.root);
772-
buffer.writeln(package.packageUriRoot);
773-
}
774-
buffer.writeln(packageConfig.version);
775-
return buffer.toString();
776-
}
777756
}

packages/flutter_tools/test/general.shard/dart/pub_get_test.dart

Lines changed: 0 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -988,60 +988,6 @@ exit code: 66
988988
expect(processManager, hasNoRemainingExpectations);
989989
});
990990

991-
testUsingContext(
992-
'package_config_subset file is generated from packages and not timestamp',
993-
() async {
994-
final FileSystem fileSystem = MemoryFileSystem.test();
995-
final Pub pub = Pub.test(
996-
fileSystem: fileSystem,
997-
logger: BufferLogger.test(),
998-
processManager: FakeProcessManager.any(),
999-
botDetector: const FakeBotDetector(false),
1000-
stdio: FakeStdio(),
1001-
platform: FakePlatform(
1002-
environment: const <String, String>{'PUB_CACHE': 'custom/pub-cache/path'},
1003-
),
1004-
);
1005-
fileSystem.file('version').createSync();
1006-
fileSystem.file('pubspec.yaml')
1007-
..createSync()
1008-
..writeAsStringSync('''
1009-
flutter:
1010-
generate: true
1011-
''');
1012-
fileSystem.file('.dart_tool/package_config.json')
1013-
..createSync(recursive: true)
1014-
..writeAsStringSync('''
1015-
{"configVersion": 2,"packages": [
1016-
{
1017-
"name": "flutter_tools",
1018-
"rootUri": "../",
1019-
"packageUri": "lib/",
1020-
"languageVersion": "2.7"
1021-
}
1022-
],"generated":"some-time"}
1023-
''');
1024-
1025-
await pub.get(
1026-
project: FlutterProject.fromDirectoryTest(fileSystem.currentDirectory),
1027-
context: PubContext.flutterTests,
1028-
);
1029-
1030-
expect(
1031-
fileSystem.file('.dart_tool/package_config_subset').readAsStringSync(),
1032-
'flutter_tools\n'
1033-
'2.7\n'
1034-
'file:///\n'
1035-
'file:///lib/\n'
1036-
'2\n',
1037-
);
1038-
},
1039-
overrides: <Type, Generator>{
1040-
// ignore: avoid_redundant_argument_values
1041-
FeatureFlags: () => TestFeatureFlags(isExplicitPackageDependenciesEnabled: false),
1042-
},
1043-
);
1044-
1045991
testUsingContext(
1046992
'cannot use `generate: true` with a workspace without --explicit-package-dependencies',
1047993
() async {

0 commit comments

Comments
 (0)