Skip to content

Merge pull request #66 from team-telnyx/IS/Fix/implementation #227

Merge pull request #66 from team-telnyx/IS/Fix/implementation

Merge pull request #66 from team-telnyx/IS/Fix/implementation #227

GitHub Actions / Analysis of telnyx_webrtc succeeded Sep 25, 2024 in 1m 43s

Package analysis results for telnyx_webrtc

Score

110/160 points
(68.75%)

Supported platforms

  • Flutter
    • android
    • ios
    • windows
    • linux
    • macos

Details

Follow Dart file conventions (30/30)

✔ 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.

Provide documentation (0/20)

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

22 out of 561 API elements (3.9 %) 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: attach_call_message, attach_call_message.AttachCallMessage, attach_call_message.AttachCallMessage.AttachCallMessage, attach_call_message.AttachCallMessage.AttachCallMessage.fromJson, attach_call_message.AttachCallMessage.id.

❌ 0/10 points: Package has an example

No example found.

See package layout guidelines on how to add an example.

Platform support (20/20)

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

Because:

  • package:telnyx_webrtc/telnyx_webrtc.dart that imports:
  • package:telnyx_webrtc/peer/peer.dart that imports:
  • package:flutter_webrtc/flutter_webrtc.dart that declares support for platforms: Android, iOS, Windows, Linux, macOS.

❌ 0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:telnyx_webrtc/telnyx_webrtc.dart that imports:
  • package:telnyx_webrtc/peer/peer.dart that imports:
  • package:telnyx_webrtc/model/verto/receive/received_message_body.dart that imports:
  • package:logger/logger.dart that imports:
  • package:logger/src/outputs/file_output_stub.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.

Pass static analysis (30/50)

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

Found 26 issues. Showing the first 2:

WARNING: Unused import: 'package:logger/logger.dart'.

lib/model/verto/receive/received_message_body.dart:1:8

  ╷
1 │ import 'package:logger/logger.dart';
  │        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/model/verto/receive/received_message_body.dart

WARNING: Unused import: 'package:flutter/foundation.dart'.

lib/peer/peer.dart:4:8

  ╷
4 │ import 'package:flutter/foundation.dart';
  │        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  ╵

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

Support up-to-date dependencies (30/40)

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

Package Constraint Compatible Latest
assets_audio_player ^3.1.1 3.1.1 3.1.1
audioplayers ^5.2.1 5.2.1 6.1.0
build_runner ^2.2.0 2.4.12 2.4.12
flutter flutter 0.0.0 0.0.0
flutter_lints ^2.0.1 2.0.3 4.0.0
flutter_webrtc ^0.11.1 0.11.7 0.11.7
logger ^1.1.0 1.4.0 2.4.0
mockito ^5.2.0 5.4.4 5.4.4
shared_preferences ^2.2.3 2.3.2 2.3.2
uuid ^3.0.6 3.0.7 4.5.0
Transitive dependencies
Package Constraint Compatible Latest
_fe_analyzer_shared - 72.0.0 74.0.0
_macros - 0.3.2 0.3.2
analyzer - 6.7.0 6.9.0
args - 2.5.0 2.5.0
assets_audio_player_web - 3.1.1 3.1.1
async - 2.11.0 2.11.0
audioplayers_android - 4.0.3 5.0.0
audioplayers_darwin - 5.0.2 6.0.0
audioplayers_linux - 3.1.0 4.0.0
audioplayers_platform_interface - 6.1.0 7.0.0
audioplayers_web - 4.1.0 5.0.1
audioplayers_windows - 3.1.0 4.0.0
boolean_selector - 2.1.1 2.1.1
build - 2.4.1 2.4.1
build_config - 1.1.1 1.1.1
build_daemon - 4.0.2 4.0.2
build_resolvers - 2.4.2 2.4.2
build_runner_core - 7.3.2 7.3.2
built_collection - 5.1.1 5.1.1
built_value - 8.9.2 8.9.2
characters - 1.3.0 1.3.0
checked_yaml - 2.0.3 2.0.3
code_builder - 4.10.0 4.10.0
collection - 1.18.0 1.19.0
convert - 3.1.1 3.1.1
crypto - 3.0.5 3.0.5
dart_style - 2.3.7 2.3.7
dart_webrtc - 1.4.9 1.4.9
ffi - 2.1.3 2.1.3
file - 7.0.0 7.0.0
fixnum - 1.1.0 1.1.0
flutter_web_plugins - 0.0.0 0.0.0
frontend_server_client - 4.0.0 4.0.0
glob - 2.1.2 2.1.2
graphs - 2.3.2 2.3.2
http - 1.2.2 1.2.2
http_multi_server - 3.2.1 3.2.1
http_parser - 4.0.2 4.1.0
io - 1.0.4 1.0.4
js - 0.6.7 0.7.1
json_annotation - 4.9.0 4.9.0
lints - 2.1.1 4.0.0
logging - 1.2.0 1.2.0
macros - 0.1.2-main.4 0.1.3-main.0
matcher - 0.12.16+1 0.12.16+1
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
mime - 1.0.6 1.0.6
package_config - 2.1.0 2.1.0
path - 1.9.0 1.9.0
path_provider - 2.1.4 2.1.4
path_provider_android - 2.2.10 2.2.10
path_provider_foundation - 2.4.0 2.4.0
path_provider_linux - 2.2.1 2.2.1
path_provider_platform_interface - 2.1.2 2.1.2
path_provider_windows - 2.3.0 2.3.0
platform - 3.1.5 3.1.5
platform_detect - 2.1.0 2.1.0
plugin_platform_interface - 2.1.8 2.1.8
pool - 1.5.1 1.5.1
pub_semver - 2.1.4 2.1.4
pubspec_parse - 1.3.0 1.3.0
rxdart - 0.27.7 0.28.0
shared_preferences_android - 2.3.2 2.3.2
shared_preferences_foundation - 2.5.2 2.5.2
shared_preferences_linux - 2.4.1 2.4.1
shared_preferences_platform_interface - 2.4.1 2.4.1
shared_preferences_web - 2.4.2 2.4.2
shared_preferences_windows - 2.4.1 2.4.1
shelf - 1.4.1 1.4.2
shelf_web_socket - 2.0.0 2.0.0
sky_engine - 0.0.99 0.0.99
source_gen - 1.5.0 1.5.0
source_span - 1.10.0 1.10.0
stack_trace - 1.11.1 1.11.1
stream_channel - 2.1.2 2.1.2
stream_transform - 2.1.0 2.1.0
string_scanner - 1.3.0 1.3.0
synchronized - 3.3.0+2 3.3.0+2
term_glyph - 1.2.1 1.2.1
test_api - 0.7.3 0.7.3
timing - 1.0.1 1.0.1
typed_data - 1.3.2 1.3.2
vector_math - 2.1.4 2.1.4
watcher - 1.1.0 1.1.0
web - 1.1.0 1.1.0
web_socket - 0.1.6 0.1.6
web_socket_channel - 3.0.1 3.0.1
webrtc_interface - 1.2.0 1.2.0
xdg_directories - 1.0.4 1.0.4
yaml - 3.1.2 3.1.2

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

Found 4 issues. Showing the first 2:

The constraint `^5.2.1` on audioplayers does not support the stable version `6.0.0`.

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

The constraint `^2.0.1` on flutter_lints does not support the stable version `3.0.0`.

Try running dart pub upgrade --major-versions flutter_lints 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.

Versions