Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

refactor: cleanup platform mocking #2730

Open
wants to merge 11 commits into
base: v9
Choose a base branch
from

Merge branch 'v9' into refactor/cleanup-platform-mocking

8411978
Select commit
Loading
Failed to load commit list.
# for the full log view
Open

refactor: cleanup platform mocking #2730

Merge branch 'v9' into refactor/cleanup-platform-mocking
8411978
Select commit
Loading
Failed to load commit list.
GitHub Actions / Analysis of sentry_flutter succeeded Feb 19, 2025 in 1m 58s

Package analysis results for sentry_flutter

Score

160/160 points
(100.0%)

Supported platforms

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

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 (20/20)

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

785 out of 1287 API elements (61.0 %) have documentation comments.

Some symbols that are missing documentation: sentry_flutter.AdditionalInfoExtractor, sentry_flutter.Breadcrumb.Breadcrumb.console, sentry_flutter.Breadcrumb.Breadcrumb.http, sentry_flutter.Breadcrumb.Breadcrumb.userInteraction, sentry_flutter.Breadcrumb.copyWith.

✔ 10/10 points: Package has an example

Platform support (20/20)

✔ 20/20 points: Supports 6 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

  • ✓ Web

These issues are present but do not affect the score, because they may not originate in your package:

Package does not support platform `Android`.

Because:

  • package:sentry_flutter/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/integrations/integrations.dart that imports:
  • package:sentry_flutter/src/integrations/load_release_integration.dart that imports:
  • package:package_info_plus/package_info_plus.dart that imports:
  • package:package_info_plus/src/package_info_plus_windows.dart that imports:
  • package:package_info_plus/src/file_version_info.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `iOS`.

Because:

  • package:sentry_flutter/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/native/factory.dart that imports:
  • package:sentry_flutter/src/native/factory_real.dart that imports:
  • package:sentry_flutter/src/native/java/sentry_native_java.dart that imports:
  • package:sentry_flutter/src/native/java/android_replay_recorder.dart that imports:
  • package:sentry_flutter/src/native/java/binding.dart that imports:
  • package:jni/jni.dart that declares support for platforms: Android, Windows, Linux.
Package does not support platform `Linux`.

Because:

  • package:sentry_flutter/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/integrations/integrations.dart that imports:
  • package:sentry_flutter/src/integrations/load_release_integration.dart that imports:
  • package:package_info_plus/package_info_plus.dart that imports:
  • package:package_info_plus/src/package_info_plus_windows.dart that imports:
  • package:package_info_plus/src/file_version_info.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `macOS`.

Because:

  • package:sentry_flutter/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/native/factory.dart that imports:
  • package:sentry_flutter/src/native/factory_real.dart that imports:
  • package:sentry_flutter/src/native/java/sentry_native_java.dart that imports:
  • package:sentry_flutter/src/native/java/android_replay_recorder.dart that imports:
  • package:sentry_flutter/src/native/java/binding.dart that imports:
  • package:jni/jni.dart that declares support for platforms: Android, Windows, Linux.
Package not compatible with platform Web

Because:

  • package:sentry_flutter/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/integrations/integrations.dart that imports:
  • package:sentry_flutter/src/integrations/load_release_integration.dart that imports:
  • package:package_info_plus/package_info_plus.dart that imports:
  • package:package_info_plus/src/package_info_plus_linux.dart that imports:
  • dart:io

❌ 0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:sentry_flutter/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/sentry_flutter.dart that imports:
  • package:sentry_flutter/src/integrations/integrations.dart that imports:
  • package:sentry_flutter/src/integrations/load_release_integration.dart that imports:
  • package:package_info_plus/package_info_plus.dart that imports:
  • package:package_info_plus/src/package_info_plus_linux.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 (50/50)

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

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

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

Package Constraint Compatible Latest
collection ^1.16.0 1.18.0 1.19.1
ffi ^2.0.0 2.1.3 2.1.4
flutter flutter 0.0.0 0.0.0
flutter_web_plugins flutter 0.0.0 0.0.0
jni 0.14.0 0.14.0 0.14.0
meta ^1.3.0 1.15.0 1.16.0
package_info_plus >=1.0.0 8.2.1 8.2.1
sentry /github/workspace/dart 8.13.0 8.13.0
web ^1.1.0 1.1.0 1.1.0
Transitive dependencies
Package Constraint Compatible Latest
args - 2.6.0 2.6.0
async - 2.13.0 2.13.0
characters - 1.3.0 1.4.0
clock - 1.1.2 1.1.2
crypto - 3.0.6 3.0.6
fixnum - 1.1.1 1.1.1
http - 1.3.0 1.3.0
http_parser - 4.0.2 4.1.2
material_color_utilities - 0.11.1 0.12.0
package_config - 2.1.1 2.1.1
package_info_plus_platform_interface - 3.1.0 3.1.0
path - 1.9.1 1.9.1
plugin_platform_interface - 2.1.8 2.1.8
sky_engine - 0.0.99 0.0.99
source_span - 1.10.1 1.10.1
sprintf - 7.0.0 7.0.0
stack_trace - 1.12.1 1.12.1
string_scanner - 1.4.1 1.4.1
term_glyph - 1.2.2 1.2.2
typed_data - 1.4.0 1.4.0
uuid - 4.5.1 4.5.1
vector_math - 2.1.4 2.1.4
win32 - 5.10.1 5.11.0

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.

Versions