ds_common 0.1.39 copy "ds_common: ^0.1.39" to clipboard
ds_common: ^0.1.39 copied to clipboard

Common library SectDev of Flutter projects (https://sect.dev/) - wraps Yandex Metrica, Adjust, Firebase, Fimber, etc.

3
likes
140/ 160
pub points
1.25k
downloads

We analyzed this package 2 days ago, and awarded it 140 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: BSD-3-Clause.

OK
Provide documentation
20 / 20trigger folding of the section

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

65 out of 197 API elements (33.0 %) have documentation comments.

Some symbols that are missing documentation: ds_adjust, ds_adjust.DSAdjust, ds_adjust.DSAdjust.DSAdjust, ds_adjust.DSAdjust.getAdid, ds_adjust.DSAdjust.isInitialized.

10/10 points: Package has 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)

  • ✓ Android

  • ✓ iOS

  • ✓ Web

These platforms are not supported:

Package does not support platform `Windows`.

Because:

  • package:ds_common/ds_common.dart that declares support for platforms: Android, iOS, Web.
Package does not support platform `Linux`.

Because:

  • package:ds_common/ds_common.dart that declares support for platforms: Android, iOS, Web.
Package does not support platform `macOS`.

Because:

  • package:ds_common/ds_common.dart that declares support for platforms: Android, iOS, 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:ds_common/ds_common.dart that imports:
  • package:ds_common/widgets/ds_scale_limiter.dart that imports:
  • package:ds_common/core/ds_metrica.dart that imports:
  • package:ds_common/core/ds_remote_config.dart that imports:
  • package:ds_common/core/ds_constants.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:ds_common/ds_common.dart that imports:
  • package:ds_common/widgets/ds_scale_limiter.dart that imports:
  • package:ds_common/core/ds_metrica.dart that imports:
  • package:ds_common/core/ds_remote_config.dart that imports:
  • package:ds_common/core/ds_constants.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 `Web`.

Because:

  • package:ds_common/ds_common.dart that imports:
  • package:ds_common/widgets/ds_scale_limiter.dart that imports:
  • package:ds_common/core/ds_metrica.dart that imports:
  • package:ds_common/core/ds_adjust.dart that imports:
  • package:adjust_sdk/adjust_config.dart that declares support for platforms: Android, iOS.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:ds_common/ds_common.dart that imports:
  • package:ds_common/widgets/ds_scale_limiter.dart that imports:
  • package:ds_common/core/ds_metrica.dart that imports:
  • package:ds_common/core/ds_remote_config.dart that imports:
  • package:ds_common/core/ds_constants.dart that imports:
  • package:ds_common/core/ds_logging.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 iOS

It does not contain ios/ds_common/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 16 issues. Showing the first 2:

INFO: 'deviceId' is deprecated and shouldn't be used. Legacy only. Prefer to use adjustId in new apps.

lib/core/ds_metrica.dart:129:32

    ╷
129 │       case DSMetricaUserIdType.deviceId:
    │                                ^^^^^^^^
    ╵

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

INFO: 'textScaleFactor' is deprecated and shouldn't be used. Use textScaler instead. Use of textScaleFactor was deprecated in preparation for the upcoming nonlinear text scaling support. This feature was deprecated after v3.12.0-2.0.pre.

lib/widgets/ds_scale_limiter.dart:29:39

   ╷
29 │     final origFactor = mediaQueryData.textScaleFactor;
   │                                       ^^^^^^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/widgets/ds_scale_limiter.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
adjust_sdk ^5.0.1 5.0.3 5.0.3
appmetrica_plugin ^2.1.1 2.1.1 3.1.0
cloud_firestore >=4.0.0 <6.0.0 5.6.0 5.6.0
cloud_functions >=4.0.0 <6.0.0 5.2.0 5.2.0
decimal ^2.3.0 2.3.3 3.1.0
device_info >=2.0.0 <2.0.3 2.0.2 2.0.3
fimber ^0.7.0 0.7.0 0.7.0
firebase_analytics >=10.0.0 <12.0.0 11.3.6 11.3.6
firebase_app_installations >=0.2.0 <0.4.0 0.3.1+7 0.3.1+7
firebase_core >=2.3.0 <5.0.0 3.9.0 3.9.0
firebase_crashlytics >=3.2.0 <6.0.0 4.2.0 4.2.0
firebase_remote_config >=4.0.0 <7.0.0 5.2.0 5.2.0
flutter flutter 0.0.0 0.0.0
flutter_web_plugins flutter 0.0.0 0.0.0
meta ^1.9.0 1.15.0 1.16.0
package_info_plus ^4.0.2 4.2.0 8.1.2
sentry_flutter ^8.4.0 8.11.2 8.11.2
shared_preferences ^2.0.17 2.3.4 2.3.4
userx_flutter ^1.1.2 1.3.0 1.3.0
Transitive dependencies
Package Constraint Compatible Latest
_flutterfire_internals - 1.3.48 1.3.48
async - 2.11.0 2.12.0
boolean_selector - 2.1.1 2.1.2
characters - 1.3.0 1.4.0
clock - 1.1.1 1.1.2
cloud_firestore_platform_interface - 6.6.0 6.6.0
cloud_firestore_web - 4.4.0 4.4.0
cloud_functions_platform_interface - 5.5.40 5.5.40
cloud_functions_web - 4.10.5 4.10.5
collection - 1.19.0 1.19.1
crypto - 3.0.6 3.0.6
device_info_platform_interface - 2.0.1 2.0.1
fake_async - 1.3.1 1.3.2
ffi - 2.1.3 2.1.3
file - 7.0.1 7.0.1
firebase_analytics_platform_interface - 4.2.8 4.2.8
firebase_analytics_web - 0.5.10+5 0.5.10+5
firebase_app_installations_platform_interface - 0.1.4+47 0.1.4+47
firebase_app_installations_web - 0.1.6+5 0.1.6+5
firebase_core_platform_interface - 5.4.0 5.4.0
firebase_core_web - 2.19.0 2.19.0
firebase_crashlytics_platform_interface - 3.7.0 3.7.0
firebase_remote_config_platform_interface - 1.4.47 1.4.47
firebase_remote_config_web - 1.7.5 1.7.5
fixnum - 1.1.1 1.1.1
flutter_test - 0.0.0 0.0.0
http - 1.2.2 1.2.2
http_parser - 4.1.1 4.1.1
leak_tracker - 10.0.7 10.0.8
leak_tracker_flutter_testing - 3.0.8 3.0.9
leak_tracker_testing - 3.0.1 3.0.1
logging - 1.3.0 1.3.0
matcher - 0.12.16+1 0.12.17
material_color_utilities - 0.11.1 0.12.0
package_info_plus_platform_interface - 2.0.1 3.0.2
path - 1.9.0 1.9.1
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.6 3.1.6
plugin_platform_interface - 2.1.8 2.1.8
rational - 2.2.3 2.2.3
sentry - 8.11.2 8.11.2
shared_preferences_android - 2.4.0 2.4.0
shared_preferences_foundation - 2.5.4 2.5.4
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
sky_engine - 0.0.0 0.0.0
source_span - 1.10.0 1.10.1
sprintf - 7.0.0 7.0.0
stack_trace - 1.12.0 1.12.1
stream_channel - 2.1.2 2.1.3
string_scanner - 1.3.0 1.4.1
term_glyph - 1.2.1 1.2.2
test_api - 0.7.3 0.7.4
typed_data - 1.4.0 1.4.0
uuid - 4.5.1 4.5.1
vector_math - 2.1.4 2.1.4
vm_service - 14.3.0 15.0.0
web - 1.1.0 1.1.0
win32 - 5.9.0 5.9.0
xdg_directories - 1.1.0 1.1.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 `^2.1.1` on appmetrica_plugin does not support the stable version `3.0.0`.

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

The constraint `^2.3.0` on decimal does not support the stable version `3.0.0`.

Try running dart pub upgrade --major-versions decimal 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.17, Flutter 3.27.0, Dart 3.6.0.

Check the analysis log for details.