runtime_named_locks 1.0.0-beta.6 copy "runtime_named_locks: ^1.0.0-beta.6" to clipboard
runtime_named_locks: ^1.0.0-beta.6 copied to clipboard

A library for creating and managing named locks which leverages Dart FFI and Native Named Semaphores across across macOS, Linux, and Windows.

4
likes
120/ 160
pub points
2.56k
downloads

We analyzed this package 4 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: Apache-2.0.

failed
Provide documentation
0 / 20trigger folding of the section

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

0 out of 167 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: runtime_named_locks, runtime_named_locks.CapturedCallFrame, runtime_named_locks.CapturedCallFrame.CapturedCallFrame, runtime_named_locks.CapturedCallFrame.caller, runtime_named_locks.CapturedCallFrame.current.

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 does not support platform `Android`.

Because:

  • package:runtime_named_locks/runtime_named_locks.dart that declares support for platforms: Windows, Linux, macOS.
Package does not support platform `iOS`.

Because:

  • package:runtime_named_locks/runtime_named_locks.dart that declares support for platforms: Windows, Linux, macOS.
Package does not support platform `Web`.

Because:

  • package:runtime_named_locks/runtime_named_locks.dart that declares support for platforms: Windows, Linux, macOS.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:runtime_named_locks/runtime_named_locks.dart that imports:
  • package:runtime_named_locks/src/lock_identity.dart that imports:
  • package:runtime_native_semaphores/runtime_native_semaphores.dart that imports:
  • package:runtime_native_semaphores/src/windows_semaphore.dart that imports:
  • package:runtime_native_semaphores/src/ffi/windows.dart that imports:
  • package:ffi/ffi.dart that imports:
  • package:ffi/src/utf8.dart that imports:
  • dart:ffi

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.

failed
Pass static analysis
30 / 50trigger folding of the section

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

Found 21 issues. Showing the first 2:

WARNING: The value of the field '_counters' isn't used.

lib/src/lock_counter.dart:47:30

   ╷
47 │   final Map<String, dynamic> _counters = LockCounters.__counters;
   │                              ^^^^^^^^^
   ╵

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

WARNING: The declaration '_instances' isn't referenced.

lib/src/lock_counter.dart:55:15

   ╷
55 │   dynamic get _instances => LockCounter.__instances;
   │               ^^^^^^^^^^
   ╵

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

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

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

Package Constraint Compatible Latest
runtime_native_semaphores ^1.0.0-beta.6 1.0.0-beta.6 1.0.0-beta.6
stack_trace ^1.11.1 1.12.1 1.12.1
Transitive dependencies
Package Constraint Compatible Latest
ffi - 2.1.3 2.1.3
meta - 1.16.0 1.16.0
path - 1.9.1 1.9.1

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

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.

4
likes
120
points
2.56k
downloads

Publisher

verified publisherruntime.dev

Weekly Downloads

A library for creating and managing named locks which leverages Dart FFI and Native Named Semaphores across across macOS, Linux, and Windows.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache-2.0 (license)

Dependencies

runtime_native_semaphores, stack_trace

More

Packages that depend on runtime_named_locks