anchor.diff:  const codeId1 = const ShardDataId(codeId, 1);
   const jsId = const DataId("js");
   const txtId = const DataId("txt");
  +
  +String _packageConfigEntry(String name, Uri root,
  +    {Uri packageRoot, LanguageVersion version}) {
  +  var fields = [
  +    '"name": "${name}"',
  +    '"rootUri": "$root"',
  +    if (packageRoot != null) '"packageUri": "$packageRoot"',
  +    if (version != null) '"languageVersion": "$version"'
  +  ];
  +  return '{${fields.join(',')}}';
  +}
   
   // Step that compiles sources in a module to a .dill file.
   class SourceToDillStep implements IOModularStep {
  
positive.code:       }
      }
  
      // We create a .packages file which defines the location of this module if
      // it is a package.  The CFE requires that if a `package:` URI of a
      // dependency is used in an import, then we need that package entry in the
      // .packages file. However, after it checks that the definition exists, the
      // CFE will not actually use the resolved URI if a library for the import
      // URI is already found in one of the provided .dill files of the
      // dependencies. For that reason, and to ensure that a step only has access
      // to the files provided in a module, we generate a .packages with invalid
      // folders for other packages.
      // TODO(sigmund): follow up with the CFE to see if we can remove the need
      // for the .packages entry altogether if they won't need to read the
      // sources.
      var packagesContents = new StringBuffer();
      if (module.isPackage) {
        packagesContents.write('${module.name}:${module.packageBase}\n');
      }
      Set<Module> transitiveDependencies = computeTransitiveDependencies(module);
      int unusedNum = 0;
      for (Module dependency in transitiveDependencies) {
        if (dependency.isPackage) {
          unusedNum++;
          packagesContents.write('${dependency.name}:unused$unusedNum\n');
        }
      }
  
      await File.fromUri(root.resolve('.packages'))
  
negative.code: import 'package:modular_test/src/pipeline.dart';
  import 'package:modular_test/src/suite.dart';
  import 'package:modular_test/src/runner.dart';
  import 'package:package_config/package_config.dart';
  
  String packageConfigJsonPath = ".dart_tool/package_config.json";
  Uri sdkRoot = Platform.script.resolve("../../../");
  Uri packageConfigUri = sdkRoot.resolve(packageConfigJsonPath);
  Options _options;
  String _dart2jsScript;
  String _kernelWorkerScript;
  
  // TODO(joshualitt): Figure out a way to support package configs in
  // tests/modular.
  PackageConfig _packageConfig;
  main(List<String> args) async {
    _options = Options.parse(args);
    _packageConfig = await loadPackageConfigUri(packageConfigUri);
    await _resolveScripts();
    await runSuite(
        sdkRoot.resolve('tests/modular/'),
  