catcher 0.8.0 copy "catcher: ^0.8.0" to clipboard
catcher: ^0.8.0 copied to clipboard

Plugin for error catching which provides multiple handlers for dealing with errors when they are not caught by the developer.

592
likes
140/ 160
pub points
94%
popularity

We analyzed this package 3 hours ago, and awarded it 140 pub points (of a possible 160):

partial
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

Issue tracker URL doesn't exist.

At the time of the analysis https://github.com/jhomlala/catcher/issues was unreachable. Make sure that the website is reachable via HEAD requests.

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.

OK
Provide documentation
20 / 20trigger folding of the section

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

157 out of 358 API elements (43.9 %) have documentation comments.

Some symbols that are missing documentation: application_profile, application_profile_manager, application_profile_manager.ApplicationProfileManager, application_profile_manager.ApplicationProfileManager.ApplicationProfileManager, base_email_handler.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

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:catcher/catcher.dart that imports:
  • package:catcher/core/catcher_screenshot.dart that imports:
  • package:catcher/core/catcher.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:catcher/catcher.dart that imports:
  • package:catcher/core/catcher_screenshot.dart that imports:
  • package:catcher/core/catcher.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 `Windows`.

Because:

  • package:catcher/catcher.dart that imports:
  • package:catcher/handlers/toast_handler.dart that imports:
  • package:fluttertoast/fluttertoast.dart that declares support for platforms: Android, iOS, Web.
Package does not support platform `Linux`.

Because:

  • package:catcher/catcher.dart that imports:
  • package:catcher/handlers/toast_handler.dart that imports:
  • package:fluttertoast/fluttertoast.dart that declares support for platforms: Android, iOS, Web.
Package does not support platform `macOS`.

Because:

  • package:catcher/catcher.dart that imports:
  • package:catcher/handlers/toast_handler.dart that imports:
  • package:fluttertoast/fluttertoast.dart that declares support for platforms: Android, iOS, Web.
Package does not support platform `Web`.

Because:

  • package:catcher/catcher.dart that imports:
  • package:catcher/handlers/email_manual_handler.dart that imports:
  • package:flutter_mailer/flutter_mailer.dart that declares support for platforms: Android, iOS.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:catcher/catcher.dart that imports:
  • package:catcher/model/report_mode.dart that imports:
  • package:catcher/model/report.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.

0/0 points: Swift Package Manager support

Package does not support the Swift Package Manager on macOS

It does not contain macos/catcher/Package.swift.

This package for iOS or macOS does not support the Swift Package Manager. It will not receive full points in a future version of the scoring model.

See https://docs.flutter.dev/to/spm for details.

partial
Pass static analysis
40 / 50trigger folding of the section

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

Found 10 issues. Showing the first 2:

INFO: 'describeEnum' is deprecated and shouldn't be used. Use the `name` getter on enums instead. This feature was deprecated after v3.14.0-2.0.pre.

lib/core/catcher.dart:413:9

    ╷
413 │         describeEnum(ApplicationProfileManager.getApplicationProfile());
    │         ^^^^^^^^^^^^
    ╵

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

INFO: 'describeEnum' is deprecated and shouldn't be used. Use the `name` getter on enums instead. This feature was deprecated after v3.14.0-2.0.pre.

lib/core/catcher.dart:565:45

    ╷
565 │         '$reportMode in not supported for ${describeEnum(report.platformType)}'
    │                                             ^^^^^^^^^^^^
    ╵

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

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

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

Package Constraint Compatible Latest
device_info_plus ^9.1.0 9.1.2 11.1.1
device_info_plus_platform_interface ^7.0.0 7.0.1 7.0.1
dio ^5.3.3 5.7.0 5.7.0
flutter flutter 0.0.0 0.0.0
flutter_mailer ^2.0.0 2.1.2 2.1.2
flutter_web_plugins flutter 0.0.0 0.0.0
fluttertoast ^8.2.3 8.2.8 8.2.8
logging ^1.0.2 1.3.0 1.3.0
mailer ^6.0.1 6.2.0 6.2.0
package_info_plus ^4.2.0 4.2.0 8.1.1
sentry ^7.12.0 7.20.2 8.10.1
universal_io ^2.0.4 2.2.2 2.2.2
very_good_analysis ^5.1.0 5.1.0 6.0.0
Transitive dependencies
Package Constraint Compatible Latest
async - 2.12.0 2.12.0
characters - 1.3.0 1.3.1
clock - 1.1.2 1.1.2
collection - 1.18.0 1.19.1
crypto - 3.0.6 3.0.6
dio_web_adapter - 2.0.0 2.0.0
ffi - 2.1.3 2.1.3
file - 7.0.1 7.0.1
fixnum - 1.1.1 1.1.1
http - 1.2.2 1.2.2
http_parser - 4.0.2 4.1.1
intl - 0.19.0 0.20.0
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
mime - 1.0.6 2.0.0
package_info_plus_platform_interface - 2.0.1 3.0.1
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.0 1.10.0
sprintf - 7.0.0 7.0.0
stack_trace - 1.12.0 1.12.0
string_scanner - 1.4.0 1.4.0
term_glyph - 1.2.1 1.2.1
typed_data - 1.4.0 1.4.0
uuid - 4.5.1 4.5.1
vector_math - 2.1.4 2.1.4
web - 1.1.0 1.1.0
win32 - 5.8.0 5.8.0
win32_registry - 1.1.5 2.0.0

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

Found 4 issues. Showing the first 2:

The constraint `^9.1.0` on device_info_plus does not support the stable version `10.0.0`.

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

The constraint `^4.2.0` on package_info_plus does not support the stable version `5.0.0`.

Try running dart pub upgrade --major-versions package_info_plus 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.15, Flutter 3.24.5, Dart 3.5.4.

Check the analysis log for details.