frx_generator 1.0.5 copy "frx_generator: ^1.0.5" to clipboard
frx_generator: ^1.0.5 copied to clipboard

Code generator for frx_annotation package that generates pattern matching methods for union types in Dart

110/ 160
pub points
19
downloads

We analyzed this package in the last hour, and awarded it 110 pub points (of a possible 160):

Passed report section
Follow Dart file conventions
30 / 30trigger folding of the section

Passed check 10/10 points: Provide a valid pubspec.yaml

Passed check 5/5 points: Provide a valid README.md

Passed check 5/5 points: Provide a valid CHANGELOG.md

Passed check 10/10 points: Use an OSI-approved license

Detected license: MIT.

Failed report section
Provide documentation
10 / 20trigger folding of the section

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

5 out of 10 API elements (50.0 %) have documentation comments.

Some symbols that are missing documentation: frx_generator.FrxGenerator.FrxGenerator.new, frx_generator.FrxGenerator.throwOnUnresolved, frx_generator.FrxGenerator.typeChecker, frx_generator.StringExtension, frx_generator.StringExtension.capitalize.

Failed check 0/10 points: Package has an example

No example found.

See package layout guidelines on how to add an example.

Failed report section
Platform support
20 / 20trigger folding of the section

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

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

  • ✓ Web

These issues are present but do not affect the score, because they may not originate in your package:

Package does not support platform `Android`.

Because:

  • package:frx_generator/frx_generator.dart that imports:
  • package:frx_generator/src/frx_generator.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/utils.dart that imports:
  • package:build/build.dart that imports:
  • package:build/src/generate/run_post_process_builder.dart that imports:
  • package:build_runner_core/build_runner_core.dart that declares support for platforms: Windows, Linux, macOS.
Package does not support platform `iOS`.

Because:

  • package:frx_generator/frx_generator.dart that imports:
  • package:frx_generator/src/frx_generator.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/utils.dart that imports:
  • package:build/build.dart that imports:
  • package:build/src/generate/run_post_process_builder.dart that imports:
  • package:build_runner_core/build_runner_core.dart that declares support for platforms: Windows, Linux, macOS.
Package not compatible with platform Windows

Because:

  • package:frx_generator/frx_generator.dart that imports:
  • package:frx_generator/src/frx_generator.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/utils.dart that imports:
  • package:build/build.dart that imports:
  • package:build/src/generate/run_post_process_builder.dart that imports:
  • package:build_runner_core/build_runner_core.dart that imports:
  • package:build_runner_core/src/generate/build_runner.dart that imports:
  • package:build_runner_core/src/generate/build_series.dart that imports:
  • package:build_runner_core/src/generate/build_definition.dart that imports:
  • package:build_runner_core/src/changes/build_script_updates.dart that imports:
  • dart:mirrors
Package not compatible with platform Linux

Because:

  • package:frx_generator/frx_generator.dart that imports:
  • package:frx_generator/src/frx_generator.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/utils.dart that imports:
  • package:build/build.dart that imports:
  • package:build/src/generate/run_post_process_builder.dart that imports:
  • package:build_runner_core/build_runner_core.dart that imports:
  • package:build_runner_core/src/generate/build_runner.dart that imports:
  • package:build_runner_core/src/generate/build_series.dart that imports:
  • package:build_runner_core/src/generate/build_definition.dart that imports:
  • package:build_runner_core/src/changes/build_script_updates.dart that imports:
  • dart:mirrors
Package not compatible with platform macOS

Because:

  • package:frx_generator/frx_generator.dart that imports:
  • package:frx_generator/src/frx_generator.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/utils.dart that imports:
  • package:build/build.dart that imports:
  • package:build/src/generate/run_post_process_builder.dart that imports:
  • package:build_runner_core/build_runner_core.dart that imports:
  • package:build_runner_core/src/generate/build_runner.dart that imports:
  • package:build_runner_core/src/generate/build_series.dart that imports:
  • package:build_runner_core/src/generate/build_definition.dart that imports:
  • package:build_runner_core/src/changes/build_script_updates.dart that imports:
  • dart:mirrors
Package does not support platform `Web`.

Because:

  • package:frx_generator/frx_generator.dart that imports:
  • package:frx_generator/src/frx_generator.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/utils.dart that imports:
  • package:build/build.dart that imports:
  • package:build/src/generate/run_post_process_builder.dart that imports:
  • package:build_runner_core/build_runner_core.dart that declares support for platforms: Windows, Linux, macOS.

Failed check 0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:frx_generator/frx_generator.dart that imports:
  • package:frx_generator/src/frx_generator.dart that imports:
  • package:source_gen/source_gen.dart that imports:
  • package:source_gen/src/utils.dart that imports:
  • package:build/build.dart that imports:
  • package:build/src/generate/run_post_process_builder.dart that imports:
  • package:build/src/asset/reader.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

This package is not compatible with runtime wasm, and will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

Partially passed report section
Pass static analysis
40 / 50trigger folding of the section

Partially passed check 40/50 points: code has no errors, warnings, lints, or formatting issues

Found 30 issues. Showing the first 2:

INFO: Dangling library doc comment.

lib/frx_generator.dart:1:1

  ╷
1 │ /// A code generator for frx_annotation package that generates pattern matching
  │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/frx_generator.dart

INFO: 'Element' is deprecated and shouldn't be used. This is part of the old analyzer element model. Please see\nhttps://github.com/dart-lang/sdk/blob/main/pkg/analyzer/doc/element_model_migration_guide.md\nfor information about how to migrate to the new element model.

lib/src/exceptions/generator_error.dart:5:53

  ╷
5 │   static InvalidGenerationSourceError invalidTarget(Element element) {
  │                                                     ^^^^^^^
  ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/exceptions/generator_error.dart

Failed report section
Support up-to-date dependencies
10 / 40trigger folding of the section

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

Package Constraint Compatible Latest Notes
analyzer >=5.13.0 <8.0.0 7.7.1 10.0.1
build ^2.4.1 2.5.4 4.0.4
frx_annotation ^1.0.2 1.0.3 1.0.3
source_gen >=1.0.0 <3.0.0 2.0.0 4.2.0
source_helper ^1.3.4 1.3.7 1.3.10
Transitive dependencies
Package Constraint Compatible Latest Notes
_fe_analyzer_shared - 85.0.0 93.0.0
args - 2.7.0 2.7.0
async - 2.13.0 2.13.0
boolean_selector - 2.1.2 2.1.2
build_config - 1.1.2 1.2.0
build_daemon - 4.1.1 4.1.1
build_resolvers - 2.5.4 3.0.4 Discontinued
build_runner - 2.5.4 2.10.5
build_runner_core - 9.1.2 9.3.2 Discontinued
built_collection - 5.1.1 5.1.1
built_value - 8.12.3 8.12.3
characters - 1.4.0 1.4.1
checked_yaml - 2.0.4 2.0.4
code_builder - 4.11.1 4.11.1
collection - 1.19.1 1.19.1
convert - 3.1.2 3.1.2
crypto - 3.0.7 3.0.7
dart_style - 3.1.1 3.1.5
file - 7.0.1 7.0.1
fixnum - 1.1.1 1.1.1
frontend_server_client - 4.0.0 4.0.0
glob - 2.1.3 2.1.3
graphs - 2.3.2 2.3.2
http - 1.6.0 1.6.0
http_multi_server - 3.2.2 3.2.2
http_parser - 4.1.2 4.1.2
io - 1.0.5 1.0.5
js - 0.7.2 0.7.2 Discontinued
json_annotation - 4.10.0 4.10.0
logging - 1.3.0 1.3.0
matcher - 0.12.18 0.12.18
material_color_utilities - 0.11.1 0.13.0
meta - 1.17.0 1.18.1
mime - 2.0.0 2.0.0
package_config - 2.2.0 2.2.0
path - 1.9.1 1.9.1
pool - 1.5.2 1.5.2
pub_semver - 2.2.0 2.2.0
pubspec_parse - 1.5.0 1.5.0
shelf - 1.4.2 1.4.2
shelf_web_socket - 3.0.0 3.0.0
source_span - 1.10.1 1.10.1
stack_trace - 1.12.1 1.12.1
stream_channel - 2.1.4 2.1.4
stream_transform - 2.1.1 2.1.1
string_scanner - 1.4.1 1.4.1
term_glyph - 1.2.2 1.2.2
test_api - 0.7.9 0.7.9
timing - 1.0.2 1.0.2
typed_data - 1.4.0 1.4.0
vector_math - 2.2.0 2.2.0
watcher - 1.2.1 1.2.1
web - 1.1.1 1.1.1
web_socket - 1.0.1 1.0.1
web_socket_channel - 3.0.3 3.0.3
yaml - 3.1.3 3.1.3

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

Found 3 issues. Showing the first 2:

The constraint `>=5.13.0 <8.0.0` on analyzer does not support the stable version `8.0.0`.

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

The constraint `^2.4.1` on build does not support the stable version `3.0.0`.

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

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

Failed check 0/20 points: Compatible with dependency constraint lower bounds

downgrade analysis failed failed with 2 errors:

  • MISSING_REQUIRED_ARGUMENT - lib/src/frx_generator.dart:183:60 - The named parameter 'withNullability' is required, but there's no corresponding argument.
  • MISSING_REQUIRED_ARGUMENT - lib/src/frx_generator.dart:187:60 - The named parameter 'withNullability' is required, but there's no corresponding argument.

Run flutter pub downgrade and then flutter analyze to reproduce the above problem.

You may run dart pub upgrade --tighten to update your dependency constraints, see dart.dev/go/downgrade-testing for details.

Analyzed with Pana 0.23.8, Flutter 3.38.8, Dart 3.10.7.

Check the analysis log for details.

Weekly downloads

Display as:
By versions:
2
likes
110
points
19
downloads

Publisher

unverified uploader

Weekly Downloads

Code generator for frx_annotation package that generates pattern matching methods for union types in Dart

Repository (GitHub)
View/report issues

Topics

#codegen #pattern-matching #union-types #generator

Documentation

API reference

License

MIT (license)

Dependencies

analyzer, build, flutter, frx_annotation, source_gen, source_helper

More

Packages that depend on frx_generator