Skip to content

Update platform metadata dependencies#31

Merged
ivnbogdan merged 1 commit into
aptabase:mainfrom
leehack:codex/update-plus-deps-spm-windows-fallback
Jul 23, 2026
Merged

Update platform metadata dependencies#31
ivnbogdan merged 1 commit into
aptabase:mainfrom
leehack:codex/update-plus-deps-spm-windows-fallback

Conversation

@leehack

@leehack leehack commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Summary

This keeps the update focused on the platform metadata and storage issues I found while working on a Flutter app.

  • update device_info_plus to >=11.1.1 <11.2.0 and package_info_plus to ^8.3.1, the minimum versions I found with iOS/macOS Swift Package Manager manifests
  • raise the package floor only as far as those minimum versions require: Dart >=3.3.0 and Flutter >=3.19.0
  • fall back to platform OS metadata if device_info_plus throws while collecting metadata
  • ignore non-Aptabase and non-string SharedPreferences entries when loading queued events

Why

While working on a Flutter app, I found Aptabase.trackEvent() could fail before enqueueing/sending events on Windows ARM64 because device_info_plus threw from DeviceInfoPlusWindowsPlugin.getSystemMemoryInMegabytes during system metadata collection.

I also found the current shared-preferences storage can read app-owned preferences as event payloads. If an app stores a non-string preference, calling getString() for every key can fail. The storage manager now loads only Aptabase event keys and only accepts string payloads.

The dependency update also picks up Swift Package Manager manifests for iOS/macOS without moving all the way to the latest plus packages.

Validation

  • flutter analyze
  • flutter test
  • dart pub publish --dry-run
  • verified the selected device_info_plus and package_info_plus versions include iOS/macOS Package.swift manifests

@leehack
leehack force-pushed the codex/update-plus-deps-spm-windows-fallback branch 2 times, most recently from 669f8e6 to 4431296 Compare June 25, 2026 14:04
@leehack
leehack force-pushed the codex/update-plus-deps-spm-windows-fallback branch from 4431296 to d218047 Compare June 25, 2026 14:19
@leehack
leehack marked this pull request as ready for review June 25, 2026 15:18
@ivnbogdan
ivnbogdan merged commit bcfc693 into aptabase:main Jul 23, 2026
ivnbogdan added a commit that referenced this pull request Jul 23, 2026
Allow device_info_plus up to 13.x and package_info_plus up to 10.x so
consumers resolve the newest versions their Flutter allows (13.2.0 /
10.2.1 on Flutter 3.44) without forcing older apps off the SDK. Keep
the lower bounds at 11.1.1 / 8.3.1 as raised by #31, the minimum
versions with iOS/macOS Swift Package Manager manifests. Allow
flutter_lints up to 6.x and raise the environment floor to Dart 3.4 /
Flutter 3.22, dictated by shared_preferences 2.3.3. Drop the library
name to satisfy the unnecessary_library_name lint from flutter_lints 6.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants