brick_build 3.2.1 copy "brick_build: ^3.2.1" to clipboard
brick_build: ^3.2.1 copied to clipboard

Code generation library and interface for Brick components. Useful for creating serdes generators for adapters.

1
likes
120/ 160
pub points
46%
popularity

We analyzed this package 7 days ago, and awarded it 120 pub points (of a possible 160):

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: MIT.

failed
Provide documentation
10 / 20trigger folding of the section

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

112 out of 160 API elements (70.0 %) have documentation comments.

Some symbols that are missing documentation: builders, builders.AdapterBuilder.generator, builders.AggregateBuilder.adapterFiles, builders.AggregateBuilder.importRegex, builders.AggregateBuilder.migrationFiles.

0/10 points: Package has an example

No example found.

See package layout guidelines on how to add an example.

failed
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:brick_build/builders.dart that imports:
  • package:brick_build/src/builders/model_dictionary_builder.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:brick_build/builders.dart that imports:
  • package:brick_build/src/builders/model_dictionary_builder.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:brick_build/builders.dart that imports:
  • package:brick_build/src/builders/model_dictionary_builder.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/builder/post_process_builder.dart that imports:
  • package:build/src/builder/builder.dart that imports:
  • package:build/src/builder/build_step.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

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:brick_build/builders.dart that imports:
  • package:brick_build/src/builders/model_dictionary_builder.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/builder/post_process_builder.dart that imports:
  • package:build/src/builder/builder.dart that imports:
  • package:build/src/builder/build_step.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.

partial
Pass static analysis
40 / 50trigger folding of the section

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

Found 16 issues. Showing the first 2:

INFO: 'withNullability' is deprecated and shouldn't be used. Only non-nullable by default mode is supported.

lib/src/utils/shared_checker.dart:184:58

    ╷
184 │         'Type argument for ${targetType.getDisplayString(withNullability: true)} is undefined.',
    │                                                          ^^^^^^^^^^^^^^^
    ╵

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

INFO: 'withNullability' is deprecated and shouldn't be used. Only non-nullable by default mode is supported.

lib/src/utils/shared_checker.dart:247:29

    ╷
247 │       type.getDisplayString(withNullability: true).replaceAll('?', '');
    │                             ^^^^^^^^^^^^^^^
    ╵

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

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

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

Package Constraint Compatible Latest
analyzer >=6.0.0 <7.0.0 6.8.0 6.11.0
brick_core ^1.1.1 1.2.1 1.2.1
build ^2.3.0 2.4.1 2.4.1
dart_style >=2.0.0 <3.0.0 2.3.7 2.3.7
glob >=2.1.0 <3.0.0 2.1.2 2.1.2
logging >=1.0.0 <2.0.0 1.3.0 1.3.0
meta >=1.3.0 <2.0.0 1.16.0 1.16.0
path >=1.8.2 <2.0.0 1.9.1 1.9.1
source_gen ^1.2.2 1.5.0 1.5.0
Transitive dependencies
Package Constraint Compatible Latest
_fe_analyzer_shared - 73.0.0 76.0.0
_macros - 0.3.2 0.3.2
args - 2.6.0 2.6.0
async - 2.12.0 2.12.0
collection - 1.19.1 1.19.1
convert - 3.1.2 3.1.2
crypto - 3.0.6 3.0.6
file - 7.0.1 7.0.1
macros - 0.1.2-main.4 0.1.3-main.0
package_config - 2.1.0 2.1.0
pub_semver - 2.1.4 2.1.4
source_span - 1.10.0 1.10.0
string_scanner - 1.4.0 1.4.0
term_glyph - 1.2.1 1.2.1
typed_data - 1.4.0 1.4.0
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.

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

0/20 points: Compatible with dependency constraint lower bounds

downgrade analysis failed failed with 12 errors:

  • URI_DOES_NOT_EXIST - lib/src/annotation_finder_with_field_rename.dart:3:8 - Target of URI doesn't exist: 'package:brick_core/field_rename.dart'.
  • BODY_MIGHT_COMPLETE_NORMALLY - lib/src/annotation_finder_with_field_rename.dart:8:10 - The body might complete normally, causing 'null' to be returned, but the return type, 'String', is a potentially non-nullable type.
  • UNDEFINED_CLASS - lib/src/annotation_finder_with_field_rename.dart:8:35 - Undefined class 'FieldRename'.

Run dart pub downgrade and then dart 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.22.15, Dart 3.5.4.

Check the analysis log for details.

1
likes
120
pub points
46%
popularity

Publisher

unverified uploader

Code generation library and interface for Brick components. Useful for creating serdes generators for adapters.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

analyzer, brick_core, build, dart_style, glob, logging, meta, path, source_gen

More

Packages that depend on brick_build