Bump dependency on json_serializable (dart-lang/pubspec_parse#72)

diff --git a/pkgs/pubspec_parse/build.yaml b/pkgs/pubspec_parse/build.yaml
index 3e642b8..ddec84e 100644
--- a/pkgs/pubspec_parse/build.yaml
+++ b/pkgs/pubspec_parse/build.yaml
@@ -19,5 +19,5 @@
         options:
           ignore_for_file:
           - deprecated_member_use_from_same_package
-          - lines_longer_than_80_chars
-          - prefer_expression_function_bodies
+          # https://github.com/google/json_serializable.dart/issues/945
+          - unnecessary_cast
diff --git a/pkgs/pubspec_parse/lib/src/dependency.dart b/pkgs/pubspec_parse/lib/src/dependency.dart
index e4996c5..20e7eb6 100644
--- a/pkgs/pubspec_parse/lib/src/dependency.dart
+++ b/pkgs/pubspec_parse/lib/src/dependency.dart
@@ -207,7 +207,7 @@
 
   HostedDetails(this.name, this.url);
 
-  factory HostedDetails.fromJson(Object? data) {
+  factory HostedDetails.fromJson(Object data) {
     if (data is String) {
       data = {'name': data};
     }
diff --git a/pkgs/pubspec_parse/lib/src/dependency.g.dart b/pkgs/pubspec_parse/lib/src/dependency.g.dart
index 95b1779..b917563 100644
--- a/pkgs/pubspec_parse/lib/src/dependency.g.dart
+++ b/pkgs/pubspec_parse/lib/src/dependency.g.dart
@@ -1,6 +1,6 @@
 // GENERATED CODE - DO NOT MODIFY BY HAND
 
-// ignore_for_file: deprecated_member_use_from_same_package, lines_longer_than_80_chars, prefer_expression_function_bodies
+// ignore_for_file: deprecated_member_use_from_same_package, unnecessary_cast
 
 part of 'dependency.dart';
 
@@ -8,51 +8,64 @@
 // JsonSerializableGenerator
 // **************************************************************************
 
-SdkDependency _$SdkDependencyFromJson(Map json) {
-  return $checkedNew('SdkDependency', json, () {
-    final val = SdkDependency(
-      $checkedConvert(json, 'sdk', (v) => v as String),
-      version: $checkedConvert(
-          json, 'version', (v) => _constraintFromString(v as String?)),
+SdkDependency _$SdkDependencyFromJson(Map json) => $checkedCreate(
+      'SdkDependency',
+      json,
+      ($checkedConvert) {
+        final val = SdkDependency(
+          $checkedConvert('sdk', (v) => v as String),
+          version: $checkedConvert(
+              'version', (v) => _constraintFromString(v as String?)),
+        );
+        return val;
+      },
     );
-    return val;
-  });
-}
 
-GitDependency _$GitDependencyFromJson(Map json) {
-  return $checkedNew('GitDependency', json, () {
-    final val = GitDependency(
-      $checkedConvert(json, 'url', (v) => parseGitUri(v as String)),
-      ref: $checkedConvert(json, 'ref', (v) => v as String?),
-      path: $checkedConvert(json, 'path', (v) => v as String?),
+GitDependency _$GitDependencyFromJson(Map json) => $checkedCreate(
+      'GitDependency',
+      json,
+      ($checkedConvert) {
+        final val = GitDependency(
+          $checkedConvert('url', (v) => parseGitUri(v as String)),
+          ref: $checkedConvert('ref', (v) => v as String?),
+          path: $checkedConvert('path', (v) => v as String?),
+        );
+        return val;
+      },
     );
-    return val;
-  });
-}
 
-HostedDependency _$HostedDependencyFromJson(Map json) {
-  return $checkedNew('HostedDependency', json, () {
-    $checkKeys(json,
-        allowedKeys: const ['version', 'hosted'],
-        disallowNullValues: const ['hosted']);
-    final val = HostedDependency(
-      version: $checkedConvert(
-          json, 'version', (v) => _constraintFromString(v as String?)),
-      hosted: $checkedConvert(json, 'hosted',
-          (v) => v == null ? null : HostedDetails.fromJson(v as Object)),
+HostedDependency _$HostedDependencyFromJson(Map json) => $checkedCreate(
+      'HostedDependency',
+      json,
+      ($checkedConvert) {
+        $checkKeys(
+          json,
+          allowedKeys: const ['version', 'hosted'],
+          disallowNullValues: const ['hosted'],
+        );
+        final val = HostedDependency(
+          version: $checkedConvert(
+              'version', (v) => _constraintFromString(v as String?)),
+          hosted: $checkedConvert('hosted',
+              (v) => v == null ? null : HostedDetails.fromJson(v as Object)),
+        );
+        return val;
+      },
     );
-    return val;
-  });
-}
 
-HostedDetails _$HostedDetailsFromJson(Map json) {
-  return $checkedNew('HostedDetails', json, () {
-    $checkKeys(json,
-        allowedKeys: const ['name', 'url'], disallowNullValues: const ['url']);
-    final val = HostedDetails(
-      $checkedConvert(json, 'name', (v) => v as String),
-      $checkedConvert(json, 'url', (v) => parseGitUriOrNull(v as String?)),
+HostedDetails _$HostedDetailsFromJson(Map json) => $checkedCreate(
+      'HostedDetails',
+      json,
+      ($checkedConvert) {
+        $checkKeys(
+          json,
+          allowedKeys: const ['name', 'url'],
+          disallowNullValues: const ['url'],
+        );
+        final val = HostedDetails(
+          $checkedConvert('name', (v) => v as String),
+          $checkedConvert('url', (v) => parseGitUriOrNull(v as String?)),
+        );
+        return val;
+      },
     );
-    return val;
-  });
-}
diff --git a/pkgs/pubspec_parse/lib/src/pubspec.g.dart b/pkgs/pubspec_parse/lib/src/pubspec.g.dart
index 72ed2a2..0231c97 100644
--- a/pkgs/pubspec_parse/lib/src/pubspec.g.dart
+++ b/pkgs/pubspec_parse/lib/src/pubspec.g.dart
@@ -1,6 +1,6 @@
 // GENERATED CODE - DO NOT MODIFY BY HAND
 
-// ignore_for_file: deprecated_member_use_from_same_package, lines_longer_than_80_chars, prefer_expression_function_bodies
+// ignore_for_file: deprecated_member_use_from_same_package, unnecessary_cast
 
 part of 'pubspec.dart';
 
@@ -8,44 +8,45 @@
 // JsonSerializableGenerator
 // **************************************************************************
 
-Pubspec _$PubspecFromJson(Map json) {
-  return $checkedNew('Pubspec', json, () {
-    final val = Pubspec(
-      $checkedConvert(json, 'name', (v) => v as String),
-      version: $checkedConvert(
-          json, 'version', (v) => _versionFromString(v as String?)),
-      publishTo: $checkedConvert(json, 'publish_to', (v) => v as String?),
-      author: $checkedConvert(json, 'author', (v) => v as String?),
-      authors: $checkedConvert(json, 'authors',
-          (v) => (v as List<dynamic>?)?.map((e) => e as String).toList()),
-      environment: $checkedConvert(
-          json, 'environment', (v) => _environmentMap(v as Map?)),
-      homepage: $checkedConvert(json, 'homepage', (v) => v as String?),
-      repository: $checkedConvert(
-          json, 'repository', (v) => v == null ? null : Uri.parse(v as String)),
-      issueTracker: $checkedConvert(json, 'issue_tracker',
-          (v) => v == null ? null : Uri.parse(v as String)),
-      documentation:
-          $checkedConvert(json, 'documentation', (v) => v as String?),
-      description: $checkedConvert(json, 'description', (v) => v as String?),
-      dependencies:
-          $checkedConvert(json, 'dependencies', (v) => parseDeps(v as Map?)),
-      devDependencies: $checkedConvert(
-          json, 'dev_dependencies', (v) => parseDeps(v as Map?)),
-      dependencyOverrides: $checkedConvert(
-          json, 'dependency_overrides', (v) => parseDeps(v as Map?)),
-      flutter: $checkedConvert(
-          json,
-          'flutter',
-          (v) => (v as Map?)?.map(
-                (k, e) => MapEntry(k as String, e),
-              )),
+Pubspec _$PubspecFromJson(Map json) => $checkedCreate(
+      'Pubspec',
+      json,
+      ($checkedConvert) {
+        final val = Pubspec(
+          $checkedConvert('name', (v) => v as String),
+          version: $checkedConvert(
+              'version', (v) => _versionFromString(v as String?)),
+          publishTo: $checkedConvert('publish_to', (v) => v as String?),
+          author: $checkedConvert('author', (v) => v as String?),
+          authors: $checkedConvert('authors',
+              (v) => (v as List<dynamic>?)?.map((e) => e as String).toList()),
+          environment:
+              $checkedConvert('environment', (v) => _environmentMap(v as Map?)),
+          homepage: $checkedConvert('homepage', (v) => v as String?),
+          repository: $checkedConvert(
+              'repository', (v) => v == null ? null : Uri.parse(v as String)),
+          issueTracker: $checkedConvert('issue_tracker',
+              (v) => v == null ? null : Uri.parse(v as String)),
+          documentation: $checkedConvert('documentation', (v) => v as String?),
+          description: $checkedConvert('description', (v) => v as String?),
+          dependencies:
+              $checkedConvert('dependencies', (v) => parseDeps(v as Map?)),
+          devDependencies:
+              $checkedConvert('dev_dependencies', (v) => parseDeps(v as Map?)),
+          dependencyOverrides: $checkedConvert(
+              'dependency_overrides', (v) => parseDeps(v as Map?)),
+          flutter: $checkedConvert(
+              'flutter',
+              (v) => (v as Map?)?.map(
+                    (k, e) => MapEntry(k as String, e),
+                  )),
+        );
+        return val;
+      },
+      fieldKeyMap: const {
+        'publishTo': 'publish_to',
+        'issueTracker': 'issue_tracker',
+        'devDependencies': 'dev_dependencies',
+        'dependencyOverrides': 'dependency_overrides'
+      },
     );
-    return val;
-  }, fieldKeyMap: const {
-    'publishTo': 'publish_to',
-    'issueTracker': 'issue_tracker',
-    'devDependencies': 'dev_dependencies',
-    'dependencyOverrides': 'dependency_overrides'
-  });
-}
diff --git a/pkgs/pubspec_parse/pubspec.yaml b/pkgs/pubspec_parse/pubspec.yaml
index c5577b0..3ca6671 100644
--- a/pkgs/pubspec_parse/pubspec.yaml
+++ b/pkgs/pubspec_parse/pubspec.yaml
@@ -11,14 +11,14 @@
 dependencies:
   checked_yaml: ^2.0.1
   collection: ^1.15.0
-  json_annotation: ^4.0.0
+  json_annotation: ^4.1.0
   pub_semver: ^2.0.0
   yaml: ^3.0.0
 
 dev_dependencies:
   build_runner: ^2.0.3
   build_verify: ^2.0.0
-  json_serializable: ^4.0.2
+  json_serializable: ^5.0.0
   path: ^1.5.1
   pedantic: ^1.4.0
   # Needed because we are configuring `combining_builder`