这是indexloc提供的服务,不要输入任何密码

src_lint 1.0.0 copy "src_lint: ^1.0.0" to clipboard
src_lint: ^1.0.0 copied to clipboard

A custom lint that prevents imports from unrelated src directories.

4
likes
130/ 160
pub points
54
downloads

We analyzed this package 7 hours ago, and awarded it 130 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
0 / 20trigger folding of the section

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

0 out of 2 API elements (0.0 %) have documentation comments.

Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API. Document at least 20% of the public API elements.

To highlight public API members missing documentation consider enabling the public_member_api_docs lint.

Some symbols that are missing documentation: src_lint, src_lint.createPlugin.

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 5 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

These platforms are not supported:

Package not compatible with platform Web

Because:

  • package:src_lint/src_lint.dart that imports:
  • package:src_lint/src/no_unrelated_src_imports_lint.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/utilities/extensions/element.dart that imports:
  • package:analyzer/src/dart/element/member.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/element2.dart that imports:
  • package:analyzer/src/dart/resolver/scope.dart that imports:
  • package:analyzer/src/generated/engine.dart that imports:
  • package:analyzer/src/dart/analysis/analysis_options.dart that imports:
  • package:analyzer/src/task/options.dart that imports:
  • package:analyzer/src/plugin/options.dart that imports:
  • package:analyzer/error/listener.dart that imports:
  • package:analyzer/dart/element/element.dart that imports:
  • package:analyzer/src/dart/constant/evaluation.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/ast/visitor.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/named_type_builder.dart that imports:
  • package:analyzer/src/summary2/link.dart that imports:
  • package:analyzer/src/summary2/top_level_inference.dart that imports:
  • package:analyzer/src/summary2/library_builder.dart that imports:
  • package:analyzer/src/summary2/reference_resolver.dart that imports:
  • package:analyzer/src/dart/element/scope.dart that imports:
  • package:analyzer/src/fine/requirements.dart that imports:
  • package:analyzer/src/summary2/linked_element_factory.dart that imports:
  • package:analyzer/src/summary2/bundle_reader.dart that imports:
  • package:analyzer/src/fine/library_manifest.dart that imports:
  • package:analyzer/src/dart/analysis/file_state.dart that imports:
  • package:analyzer/src/workspace/workspace.dart that imports:
  • package:analyzer/src/workspace/blaze.dart that imports:
  • package:analyzer/src/workspace/blaze_watcher.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

Failed check 0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:src_lint/src_lint.dart that imports:
  • package:src_lint/src/no_unrelated_src_imports_lint.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/utilities/extensions/element.dart that imports:
  • package:analyzer/src/dart/element/member.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/element2.dart that imports:
  • package:analyzer/src/dart/resolver/scope.dart that imports:
  • package:analyzer/src/generated/engine.dart that imports:
  • package:analyzer/src/dart/analysis/analysis_options.dart that imports:
  • package:analyzer/src/task/options.dart that imports:
  • package:analyzer/src/plugin/options.dart that imports:
  • package:analyzer/error/listener.dart that imports:
  • package:analyzer/dart/element/element.dart that imports:
  • package:analyzer/src/dart/constant/evaluation.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/ast/visitor.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/named_type_builder.dart that imports:
  • package:analyzer/src/summary2/link.dart that imports:
  • package:analyzer/src/summary2/top_level_inference.dart that imports:
  • package:analyzer/src/summary2/library_builder.dart that imports:
  • package:analyzer/src/summary2/reference_resolver.dart that imports:
  • package:analyzer/src/dart/element/scope.dart that imports:
  • package:analyzer/src/fine/requirements.dart that imports:
  • package:analyzer/src/summary2/linked_element_factory.dart that imports:
  • package:analyzer/src/summary2/bundle_reader.dart that imports:
  • package:analyzer/src/fine/library_manifest.dart that imports:
  • package:analyzer/src/dart/analysis/file_state.dart that imports:
  • package:analyzer/src/workspace/workspace.dart that imports:
  • package:analyzer/src/workspace/blaze.dart that imports:
  • package:analyzer/src/workspace/blaze_watcher.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.

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 3 issues. Showing the first 2:

INFO: Statements in an if should be enclosed in a block.

lib/src/no_unrelated_src_imports_lint.dart:77:9

   ╷
77 │         return; // Not importing from src after resolution
   │         ^^^^^^^
   ╵

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

/tmp/pana_JZIQGG/lib/src/no_unrelated_src_imports_lint.dart doesn't match the Dart formatter.

To format your files run: dart format .

Partially passed report section
Support up-to-date dependencies
40 / 40trigger folding of the section

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

Package Constraint Compatible Latest Notes
analyzer ^7.4.5 7.6.0 8.0.0
custom_lint_builder ^0.7.5 0.7.6 0.8.0
path ^1.9.1 1.9.1 1.9.1
Transitive dependencies
Package Constraint Compatible Latest Notes
_fe_analyzer_shared - 85.0.0 86.0.0
analyzer_plugin - 0.13.4 0.13.5
args - 2.7.0 2.7.0
async - 2.13.0 2.13.0
boolean_selector - 2.1.2 2.1.2
checked_yaml - 2.0.4 2.0.4
ci - 0.1.0 0.1.0
cli_util - 0.4.2 0.4.2
collection - 1.19.1 1.19.1
convert - 3.1.2 3.1.2
crypto - 3.0.6 3.0.6
custom_lint - 0.7.6 0.8.0
custom_lint_core - 0.7.5 0.8.0
custom_lint_visitor - 1.0.0+7.7.0 1.0.0+7.7.0
dart_style - 3.1.1 3.1.1
file - 7.0.1 7.0.1
fixnum - 1.1.1 1.1.1
freezed_annotation - 3.1.0 3.1.0
glob - 2.1.3 2.1.3
hotreloader - 4.3.0 4.3.0
json_annotation - 4.9.0 4.9.0
logging - 1.3.0 1.3.0
matcher - 0.12.17 0.12.17
meta - 1.17.0 1.17.0
package_config - 2.2.0 2.2.0
pub_semver - 2.2.0 2.2.0
pubspec_parse - 1.5.0 1.5.0
rxdart - 0.28.0 0.28.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.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.7 0.7.7
typed_data - 1.4.0 1.4.0
uuid - 4.5.1 4.5.1
vm_service - 15.0.2 15.0.2
watcher - 1.1.2 1.1.2
yaml - 3.1.3 3.1.3

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

The constraint `^7.4.5` on analyzer does not support the stable version `8.0.0`, that was published 7 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.7.5` on custom_lint_builder does not support the stable version `0.8.0`, that was published 0 days ago.

When custom_lint_builder is 30 days old, this package will no longer be awarded points in this category.

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

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

Passed check 20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.21, Dart 3.8.1.

Check the analysis log for details.

Weekly downloads

Display as:
By versions:
4
likes
130
points
54
downloads

Publisher

verified publishersonerik.dev

Weekly Downloads

A custom lint that prevents imports from unrelated src directories.

Repository (GitHub)

Topics

#lint #structure #protected #visibility

Documentation

API reference

License

MIT (license)

Dependencies

analyzer, custom_lint_builder, path

More

Packages that depend on src_lint