firebase_rules_linter 0.1.6 firebase_rules_linter: ^0.1.6 copied to clipboard
A linter for the firebase_rules package to prevent common issues
We analyzed this package 26 hours ago, and awarded it 140 pub points (of a possible 160):
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
.
10/10 points: 20% or more of the public API has dartdoc comments
86 out of 95 API elements (90.5 %) have documentation comments.
Some symbols that are missing documentation: avoid_raw_rules
, firebase_rules_linter
, invalid_match_function
, invalid_match_path
, invalid_rules_function
.
10/10 points: Package has an example
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:firebase_rules_linter/firebase_rules_linter.dart
that imports:package:firebase_rules_linter/lints/undeclared_enum_value.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:firebase_rules_linter/firebase_rules_linter.dart
that imports:package:firebase_rules_linter/lints/undeclared_enum_value.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:firebase_rules_linter/firebase_rules_linter.dart
that imports:package:firebase_rules_linter/lints/undeclared_function.dart
that imports:package:firebase_rules_linter/util.dart
that imports:package:custom_lint_builder/custom_lint_builder.dart
that imports:package:custom_lint_core/custom_lint_core.dart
that imports:package:custom_lint_core/src/type_checker.dart
that imports:package:analyzer/dart/element/type.dart
that imports:package:analyzer/src/dart/element/type.dart
that imports:package:analyzer/src/dart/element/type_system.dart
that imports:package:analyzer/src/generated/inference_log.dart
that imports:package:analyzer/src/generated/resolver.dart
that imports:package:analyzer/src/util/ast_data_extractor.dart
that imports:package:analyzer/dart/element/element.dart
that imports:package:analyzer/src/generated/utilities_dart.dart
that imports:package:analyzer/src/dart/element/element.dart
that imports:package:analyzer/src/utilities/extensions/element.dart
that imports:package:analyzer/src/dart/element/member.dart
that imports:package:analyzer/src/generated/engine.dart
that imports:package:analyzer/error/listener.dart
that imports:package:analyzer/dart/ast/ast.dart
that imports:package:analyzer/src/dart/ast/ast.dart
that imports:package:analyzer/src/dart/resolver/typed_literal_resolver.dart
that imports:package:analyzer/src/dart/element/type_schema.dart
that imports:package:analyzer/src/dart/element/type_visitor.dart
that imports:package:analyzer/src/summary2/record_type_builder.dart
that imports:package:analyzer/src/dart/ast/extensions.dart
that imports:package:analyzer/dart/element/element2.dart
that imports:package:analyzer/dart/analysis/session.dart
that imports:package:analyzer/file_system/file_system.dart
that imports:package:watcher/watcher.dart
that imports:package:watcher/src/file_watcher/polling.dart
that imports:package:watcher/src/stat.dart
that imports:dart:io
0/0 points: WASM compatibility
Package not compatible with runtime wasm
Because:
package:firebase_rules_linter/firebase_rules_linter.dart
that imports:package:firebase_rules_linter/lints/undeclared_function.dart
that imports:package:firebase_rules_linter/util.dart
that imports:package:custom_lint_builder/custom_lint_builder.dart
that imports:package:custom_lint_core/custom_lint_core.dart
that imports:package:custom_lint_core/src/type_checker.dart
that imports:package:analyzer/dart/element/type.dart
that imports:package:analyzer/src/dart/element/type.dart
that imports:package:analyzer/src/dart/element/type_system.dart
that imports:package:analyzer/src/generated/inference_log.dart
that imports:package:analyzer/src/generated/resolver.dart
that imports:package:analyzer/src/util/ast_data_extractor.dart
that imports:package:analyzer/dart/element/element.dart
that imports:package:analyzer/src/generated/utilities_dart.dart
that imports:package:analyzer/src/dart/element/element.dart
that imports:package:analyzer/src/utilities/extensions/element.dart
that imports:package:analyzer/src/dart/element/member.dart
that imports:package:analyzer/src/generated/engine.dart
that imports:package:analyzer/error/listener.dart
that imports:package:analyzer/dart/ast/ast.dart
that imports:package:analyzer/src/dart/ast/ast.dart
that imports:package:analyzer/src/dart/resolver/typed_literal_resolver.dart
that imports:package:analyzer/src/dart/element/type_schema.dart
that imports:package:analyzer/src/dart/element/type_visitor.dart
that imports:package:analyzer/src/summary2/record_type_builder.dart
that imports:package:analyzer/src/dart/ast/extensions.dart
that imports:package:analyzer/dart/element/element2.dart
that imports:package:analyzer/dart/analysis/session.dart
that imports:package:analyzer/file_system/file_system.dart
that imports:package:watcher/watcher.dart
that imports:package:watcher/src/file_watcher/polling.dart
that imports:package:watcher/src/stat.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.
40/50 points: code has no errors, warnings, lints, or formatting issues
INFO: Statements in an if should be enclosed in a block.
lib/lints/avoid_raw_rules.dart:31:63
╷
31 │ !rulesMethodsTypeChecker.isExactlyType(targetType)) return;
│ ^^^^^^^
╵
To reproduce make sure you are using the lints_core and run dart analyze lib/lints/avoid_raw_rules.dart
INFO: Statements in an if should be enclosed in a block.
lib/lints/undeclared_enum_value.dart:42:58
╷
42 │ libraryTypeChecker.isAssignableFromType(type)) return;
│ ^^^^^^^
╵
To reproduce make sure you are using the lints_core and run dart analyze lib/lints/undeclared_enum_value.dart
0/10 points: All of the package dependencies are supported in the latest version
Package | Constraint | Compatible | Latest |
---|---|---|---|
analyzer |
^6.5.0 |
6.11.0 | 7.1.0 |
analyzer_plugin |
^0.11.3 |
0.11.3 | 0.12.0 |
collection |
^1.16.0 |
1.19.1 | 1.19.1 |
custom_lint_builder |
^0.6.2 |
0.6.10 | 0.7.0 |
source_helper |
^1.3.4 |
1.3.5 | 1.3.5 |
Transitive dependencies
Package | Constraint | Compatible | Latest |
---|---|---|---|
_fe_analyzer_shared |
- | 76.0.0 | 78.0.0 |
_macros |
- | 0.3.3 | 0.3.3 |
args |
- | 2.6.0 | 2.6.0 |
async |
- | 2.12.0 | 2.12.0 |
boolean_selector |
- | 2.1.2 | 2.1.2 |
build |
- | 2.4.2 | 2.4.2 |
checked_yaml |
- | 2.0.3 | 2.0.3 |
ci |
- | 0.1.0 | 0.1.0 |
cli_util |
- | 0.4.2 | 0.4.2 |
convert |
- | 3.1.2 | 3.1.2 |
crypto |
- | 3.0.6 | 3.0.6 |
custom_lint |
- | 0.6.10 | 0.7.0 |
custom_lint_core |
- | 0.6.10 | 0.7.0 |
dart_style |
- | 2.3.7 | 3.0.0 |
file |
- | 7.0.1 | 7.0.1 |
fixnum |
- | 1.1.1 | 1.1.1 |
freezed_annotation |
- | 2.4.4 | 2.4.4 |
glob |
- | 2.1.2 | 2.1.2 |
hotreloader |
- | 4.2.0 | 4.2.0 |
json_annotation |
- | 4.9.0 | 4.9.0 |
logging |
- | 1.3.0 | 1.3.0 |
macros |
- | 0.1.3-main.0 | 0.1.3-main.0 |
matcher |
- | 0.12.17 | 0.12.17 |
meta |
- | 1.16.0 | 1.16.0 |
package_config |
- | 2.1.1 | 2.1.1 |
path |
- | 1.9.1 | 1.9.1 |
pub_semver |
- | 2.1.5 | 2.1.5 |
pubspec_parse |
- | 1.4.0 | 1.4.0 |
rxdart |
- | 0.28.0 | 0.28.0 |
source_gen |
- | 2.0.0 | 2.0.0 |
source_span |
- | 1.10.1 | 1.10.1 |
sprintf |
- | 7.0.0 | 7.0.0 |
stack_trace |
- | 1.12.1 | 1.12.1 |
stream_channel |
- | 2.1.3 | 2.1.3 |
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.4 | 0.7.4 |
typed_data |
- | 1.4.0 | 1.4.0 |
uuid |
- | 4.5.1 | 4.5.1 |
vm_service |
- | 14.3.1 | 15.0.0 |
watcher |
- | 1.1.1 | 1.1.1 |
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 `^6.5.0` on analyzer does not support the stable version `7.0.0`, that was published 29 days ago.
When analyzer is 30 days old, this package will no longer be awarded points in this category.
Try running dart pub upgrade --major-versions analyzer
to update the constraint.
The constraint `^0.11.3` on analyzer_plugin does not support the stable version `0.12.0`, that was published 16 days ago.
When analyzer_plugin is 30 days old, this package will no longer be awarded points in this category.
Try running dart pub upgrade --major-versions analyzer_plugin
to update the constraint.
10/10 points: Package supports latest stable Dart and Flutter SDKs
20/20 points: Compatible with dependency constraint lower bounds
pub downgrade
does not expose any static analysis error.
Analyzed with Pana 0.22.17
, Dart 3.6.0
.
Check the analysis log for details.