npcx 0.0.2 npcx: ^0.0.2 copied to clipboard
Near Procedure Call between flutter and native.
We analyzed this package 9 days ago, and awarded it 70 pub points (of a possible 160):
0/10 points: Provide a valid pubspec.yaml
The package description is too short.
Add more detail to the description
field of pubspec.yaml
. Use 60 to 180 characters to describe the package, what it does, and its target use case.
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
.
10/10 points: 20% or more of the public API has dartdoc comments
29 out of 44 API elements (65.9 %) have documentation comments.
Some symbols that are missing documentation: npcx
, npcx.Npcx
, npcx.Npcx.Npcx
, npcx.Npcx.deliver
, npcx.Npcx.emit
.
10/10 points: Package has an example
20/20 points: Supports 3 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)
-
✓ Android
-
✓ iOS
-
✓ macOS
These platforms are not supported:
Package does not support platform `Windows`.
Because:
package:npcx/npcx.dart
that declares support for platforms:Android
,iOS
,macOS
.
Package does not support platform `Linux`.
Because:
package:npcx/npcx.dart
that declares support for platforms:Android
,iOS
,macOS
.
Package does not support platform `Web`.
Because:
package:npcx/npcx.dart
that declares support for platforms:Android
,iOS
,macOS
.
0/0 points: WASM compatibility
Unable to detect compatibility with runtime wasm
, and this package will not be rewarded full points in a future version of the scoring model.
See https://dart.dev/web/wasm for details.
0/50 points: code has no errors, warnings, lints, or formatting issues
ERROR: The type of '_npc' can't be inferred because it depends on itself through the cycle: _messenger, _npc.
lib/npcx_method_channel.dart:40:16
╷
40 │ static final _npc = NPC((message) async {
│ ^^^^
╵
To reproduce make sure you are using the lints_core and run flutter analyze lib/npcx_method_channel.dart
ERROR: The type of '_messenger' can't be inferred because it depends on itself through the cycle: _messenger, _npc.
lib/npcx_method_channel.dart:68:16
╷
68 │ static final _messenger = () {
│ ^^^^^^^^^^
╵
To reproduce make sure you are using the lints_core and run flutter analyze lib/npcx_method_channel.dart
0/10 points: All of the package dependencies are supported in the latest version
Package | Constraint | Compatible | Latest |
---|---|---|---|
flutter |
flutter |
0.0.0 | 0.0.0 |
npc |
^1.0.0 |
1.0.0 | 4.3.0 |
plugin_platform_interface |
^2.0.0 |
2.1.8 | 2.1.8 |
Transitive dependencies
Package | Constraint | Compatible | Latest |
---|---|---|---|
cancelable |
- | 1.0.2 | 4.2.1 |
characters |
- | 1.3.0 | 1.4.0 |
collection |
- | 1.19.0 | 1.19.1 |
material_color_utilities |
- | 0.11.1 | 0.12.0 |
meta |
- | 1.15.0 | 1.16.0 |
sky_engine |
- | 0.0.0 | 0.0.0 |
vector_math |
- | 2.1.4 | 2.1.4 |
To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides
.
The constraint `^1.0.0` on npc does not support the stable version `2.0.0`.
Try running dart pub upgrade --major-versions npc
to update the constraint.
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 2 errors:
TOP_LEVEL_CYCLE
-lib/npcx_method_channel.dart:40:16
- The type of '_npc' can't be inferred because it depends on itself through the cycle: _messenger, _npc.TOP_LEVEL_CYCLE
-lib/npcx_method_channel.dart:68:16
- The type of '_messenger' can't be inferred because it depends on itself through the cycle: _messenger, _npc.
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.22.17
, Flutter 3.27.0
, Dart 3.6.0
.
Check the analysis log for details.