Remove special casing around injected flutter_gen package (#4604)

diff --git a/lib/src/entrypoint.dart b/lib/src/entrypoint.dart
index 1de6570..3f2be96 100644
--- a/lib/src/entrypoint.dart
+++ b/lib/src/entrypoint.dart
@@ -282,7 +282,7 @@
     // an up-to-date package-config.
     await ensureUpToDate(workspaceRoot.dir, cache: cache);
     final packages = {
-      for (var packageEntry in packageConfig.nonInjectedPackages)
+      for (var packageEntry in packageConfig.packages)
         packageEntry.name: Package.load(
           packageEntry.resolvedRootDir(packageConfigPath),
           expectedName: packageEntry.name,
@@ -952,7 +952,7 @@
 
       final packagePathsMapping = <String, String>{};
 
-      final packagesToCheck = packageConfig.nonInjectedPackages;
+      final packagesToCheck = packageConfig.packages;
       for (final pkg in packagesToCheck) {
         // Pub always makes a packageUri of lib/
         if (pkg.packageUri == null || pkg.packageUri.toString() != 'lib/') {
@@ -982,7 +982,7 @@
 
       // Check if language version specified in the `package_config.json` is
       // correct. This is important for path dependencies as these can mutate.
-      for (final pkg in packageConfig.nonInjectedPackages) {
+      for (final pkg in packageConfig.packages) {
         if (pkg.name == root.name) continue;
         final id = lockFile.packages[pkg.name];
         if (id == null) {
diff --git a/lib/src/package_config.dart b/lib/src/package_config.dart
index c5d330b..ffffe59 100644
--- a/lib/src/package_config.dart
+++ b/lib/src/package_config.dart
@@ -144,22 +144,8 @@
     'generator': generator,
     'generatorVersion': generatorVersion?.toString(),
   }..addAll(additionalProperties);
-
-  // We allow the package called 'flutter_gen' to be injected into
-  // package_config.
-  //
-  // This is somewhat a hack. But it allows flutter to generate code in a
-  // package as it likes.
-  //
-  // See https://github.com/flutter/flutter/issues/73870 .
-  Iterable<PackageConfigEntry> get nonInjectedPackages =>
-      packages.where((package) => !_isInjectedFlutterGenPackage(package));
 }
 
-bool _isInjectedFlutterGenPackage(PackageConfigEntry package) =>
-    package.name == 'flutter_gen' &&
-    package.rootUri.toString() == 'flutter_gen';
-
 class PackageConfigEntry {
   /// Package name.
   String name;
diff --git a/test/embedding/embedding_test.dart b/test/embedding/embedding_test.dart
index 83176d8..772cd5a 100644
--- a/test/embedding/embedding_test.dart
+++ b/test/embedding/embedding_test.dart
@@ -99,30 +99,6 @@
     File(snapshot).parent.deleteSync(recursive: true);
   });
 
-  test('Can depend on package:flutter_gen', () async {
-    // Regression test for https://github.com/dart-lang/pub/issues/3314.
-    final server = await servePackages();
-    server.serve(
-      'flutter_gen',
-      '1.0.0',
-      contents: [
-        d.dir('bin', [d.file('flutter_gen.dart', 'main() {print("hi");}')]),
-      ],
-    );
-
-    await d.appDir(dependencies: {'flutter_gen': '^1.0.0'}).create();
-    await pubGet();
-    final buffer = StringBuffer();
-
-    await runEmbeddingToBuffer(
-      ['run', 'flutter_gen'],
-      buffer,
-      workingDirectory: d.path(appPath),
-      environment: getPubTestEnvironment(),
-    );
-    expect(buffer.toString(), contains('hi'));
-  });
-
   testWithGolden('run works, though hidden', (ctx) async {
     await servePackages();
     await d.dir(appPath, [
diff --git a/test/embedding/ensure_pubspec_resolved.dart b/test/embedding/ensure_pubspec_resolved.dart
index a6160f1..ebc6599 100644
--- a/test/embedding/ensure_pubspec_resolved.dart
+++ b/test/embedding/ensure_pubspec_resolved.dart
@@ -7,7 +7,6 @@
 // embedding_test.dart
 
 import 'dart:async';
-import 'dart:convert';
 import 'dart:io';
 
 import 'package:path/path.dart' as p;
@@ -37,45 +36,6 @@
       await pubGet();
     });
 
-    test(
-      'does not require a pub get '
-      'if a `flutter_gen` package is injected into package_config.json',
-      () async {
-        await d.dir('bar', [
-          d.pubspec({'name': 'bar'}),
-        ]).create();
-        await d.dir(appPath, [
-          d.appPubspec(
-            dependencies: {
-              'bar': {'path': '../bar'},
-            },
-          ),
-        ]).create();
-
-        await pubGet();
-
-        final packageConfig = p.join(
-          d.sandbox,
-          'myapp',
-          '.dart_tool',
-          'package_config.json',
-        );
-        final contents =
-            json.decode(File(packageConfig).readAsStringSync()) as Map;
-        (contents['packages'] as List).add({
-          'name': 'flutter_gen',
-          'rootUri': 'flutter_gen',
-          'languageVersion': '2.8',
-        });
-        writeTextFile(packageConfig, json.encode(contents));
-
-        await runPub(
-          args: ['run', 'bin/script.dart'],
-          output: endsWith('hello!'),
-        );
-      },
-    );
-
     group('Does an implicit pub get if', () {
       test("there's no lockfile", () async {
         File(p.join(d.sandbox, 'myapp/pubspec.lock')).deleteSync();