json_serializable 5.0.2 copy "json_serializable: ^5.0.2" to clipboard
json_serializable: ^5.0.2 copied to clipboard

SDKDart
outdated

Automatically generate code for converting to and from JSON by annotating Dart classes.

3341
likes
110/ 140
pub points
99%
popularity

We analyzed this package 3 days ago, and awarded it 110 pub points (of a possible 140):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: BSD-3-Clause.

OK
Provide documentation
20 / 20trigger folding of the section

10/10 points: 20% or more of the public API has dartdoc comments

60 out of 106 API elements (56.6 %) have documentation comments.

Some symbols that are missing documentation: json_serializable, json_serializable.JsonLiteralGenerator, json_serializable.JsonLiteralGenerator.JsonLiteralGenerator, json_serializable.JsonLiteralGenerator.typeChecker, json_serializable.JsonSerializableGenerator.

10/10 points: Package has an example

OK
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 3 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Windows
  • ✓ Linux
  • ✓ macOS

These platforms are not supported:

Package not compatible with platform Android

Because:

  • package:json_serializable/json_serializable.dart that imports:
  • package:json_serializable/src/json_serializable_generator.dart that imports:
  • package:json_serializable/src/type_helpers/uri_helper.dart that imports:
  • package:json_serializable/src/type_helpers/to_from_string.dart that imports:
  • package:json_serializable/src/type_helper.dart that imports:
  • package:json_serializable/src/utils.dart that imports:
  • package:json_serializable/src/helper_core.dart that imports:
  • package:json_serializable/src/type_helper_ctx.dart that imports:
  • package:json_serializable/src/type_helpers/convert_helper.dart that imports:
  • package:json_serializable/src/shared_checkers.dart that imports:
  • package:source_helper/source_helper.dart that imports:
  • package:source_helper/src/dart_type_extension.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/type_checker.dart that imports:
  • dart:mirrors
Package not compatible with platform iOS

Because:

  • package:json_serializable/json_serializable.dart that imports:
  • package:json_serializable/src/json_serializable_generator.dart that imports:
  • package:json_serializable/src/type_helpers/uri_helper.dart that imports:
  • package:json_serializable/src/type_helpers/to_from_string.dart that imports:
  • package:json_serializable/src/type_helper.dart that imports:
  • package:json_serializable/src/utils.dart that imports:
  • package:json_serializable/src/helper_core.dart that imports:
  • package:json_serializable/src/type_helper_ctx.dart that imports:
  • package:json_serializable/src/type_helpers/convert_helper.dart that imports:
  • package:json_serializable/src/shared_checkers.dart that imports:
  • package:source_helper/source_helper.dart that imports:
  • package:source_helper/src/dart_type_extension.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/type_checker.dart that imports:
  • dart:mirrors
Package not compatible with platform Web

Because:

  • package:json_serializable/json_serializable.dart that imports:
  • package:json_serializable/src/json_serializable_generator.dart that imports:
  • package:json_serializable/src/type_helpers/uri_helper.dart that imports:
  • package:json_serializable/src/type_helpers/to_from_string.dart that imports:
  • package:json_serializable/src/type_helper.dart that imports:
  • package:json_serializable/src/utils.dart that imports:
  • package:json_serializable/src/helper_core.dart that imports:
  • package:json_serializable/src/unsupported_type_error.dart that imports:
  • package:analyzer/dart/element/type.dart that imports:
  • package:analyzer/src/dart/element/type.dart that imports:
  • package:analyzer/src/generated/utilities_dart.dart that imports:
  • package:analyzer/src/dart/element/element.dart that imports:
  • package:analyzer/src/summary2/reference.dart that imports:
  • package:analyzer/dart/element/element.dart that imports:
  • package:analyzer/src/task/api/model.dart that imports:
  • package:analyzer/src/generated/source.dart that imports:
  • package:analyzer/src/generated/engine.dart that imports:
  • package:analyzer/src/services/lint.dart that imports:
  • package:analyzer/src/lint/linter.dart that imports:
  • package:glob/glob.dart that imports:
  • package:glob/src/list_tree.dart that imports:
  • package:file/file.dart that imports:
  • package:file/src/interface.dart that imports:
  • package:file/src/io.dart that imports:
  • dart:io
failed
Pass static analysis
30 / 50trigger folding of the section

30/50 points: code has no errors, warnings, lints, or formatting issues

WARNING: Unnecessary type check; the result is always 'true'.

lib/src/type_helpers/json_converter_helper.dart:182:12

    ╷
182 │     (e) => e is InterfaceType && _jsonConverterChecker.isExactly(e.element),
    │            ^^^^^^^^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/type_helpers/json_converter_helper.dart

failed
Support up-to-date dependencies
10 / 20trigger folding of the section

0/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
analyzer ^2.0.0 2.8.0 6.4.1
build ^2.0.0 2.4.1 2.4.1
build_config >=0.4.4 <2.0.0 1.0.0 1.1.1
collection ^1.14.0 1.18.0 1.18.0
json_annotation >=4.1.0 <4.2.0 4.1.0 4.9.0
meta ^1.3.0 1.14.0 1.14.0
path ^1.8.0 1.9.0 1.9.0
source_gen ^1.0.0 1.2.2 1.5.0
source_helper ^1.2.1 1.3.2 1.3.4
Transitive dependencies
Package Constraint Compatible Latest
_fe_analyzer_shared - 31.0.0 67.0.0
args - 2.5.0 2.5.0
async - 2.11.0 2.11.0
checked_yaml - 2.0.1 2.0.3
cli_util - 0.3.5 0.4.1
convert - 3.1.1 3.1.1
crypto - 3.0.3 3.0.3
dart_style - 2.2.1 2.3.6
file - 7.0.0 7.0.0
glob - 2.1.2 2.1.2
logging - 1.2.0 1.2.0
package_config - 2.1.0 2.1.0
pub_semver - 2.1.4 2.1.4
pubspec_parse - 1.1.0 1.2.3
source_span - 1.10.0 1.10.0
string_scanner - 1.2.0 1.2.0
term_glyph - 1.2.1 1.2.1
typed_data - 1.3.2 1.3.2
watcher - 1.1.0 1.1.0
yaml - 3.1.2 3.1.2

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

The constraint `^2.0.0` on analyzer does not support the stable version `3.0.0`.

Try running dart pub upgrade --major-versions analyzer to update the constraint.

The constraint `>=4.1.0 <4.2.0` on json_annotation does not support the stable version `4.2.0`.

Try running dart pub upgrade --major-versions json_annotation to update the constraint.

10/10 points: Package supports latest stable Dart and Flutter SDKs

Analyzed with Pana 0.22.3, Dart 3.3.3.

Check the analysis log for details.

3341
likes
110
pub points
99%
popularity

Publisher

verified publishergoogle.dev

Automatically generate code for converting to and from JSON by annotating Dart classes.

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (LICENSE)

Dependencies

analyzer, build, build_config, collection, json_annotation, meta, path, source_gen, source_helper

More

Packages that depend on json_serializable