Skip to content

build: upgrade Flutter packages and migrate client integrations - #139

Merged
Eoic merged 1 commit into
developmentfrom
maintenance/138-flutter-package-upgrades
Nov 7, 2026
Merged

Eoic merged 1 commit into
developmentfrom
maintenance/138-flutter-package-upgrades

Conversation

@Eoic

@Eoic Eoic commented Nov 7, 2026

Copy link
Copy Markdown
Member

Issue and requirements

Closes #138. Maintenance task; no new product requirement or server contract change.

Summary

The client was using older package versions despite the Flutter 3.47.9 SDK upgrade. Refresh the dependency graph to the newest mutually resolvable versions and migrate the affected integrations.

  • Update file picking, import/photo reads, bounded attachment streams, and file saving. Preserve Android content URIs and let the picker write downloaded bytes once.
  • Migrate chart tooltip radii and PowerSync status fixtures; stop test transport events before injecting simulated sync states.
  • Refresh PowerSync 2.6.1 browser assets, generated native registrations, and the iOS Podfile lock. Raise Android Gradle Plugin to 8.12.1 for package_info_plus.

Testing

Passed locally with the pinned SDK:

  • flutter pub get --enforce-lockfile and tools/papyrus check client: formatting, analysis, 21 JavaScript tests.
  • Full flutter test --no-pub --reporter expanded: 2,264 passed, 19 skipped.
  • Follow-up tests for native saves, attachments, and book import: 20 passed, including added regressions for unknown-length streams, selection order, cancellation, and content URIs.
  • Chrome cover-storage and drag-and-drop tests: 3 passed.
  • flutter build apk --debug --flavor direct --no-pub and flutter build web --no-pub --dart-define-from-file=.dart_defines.
  • pod install --project-directory=ios; Chrome startup and hot restart.
  • git diff --check.

UI evidence

Not applicable; no intentional visual redesign.

Compatibility and migration

Flutter 3.47.9, app version 0.4.0+8, and the reader/unrar Git pins remain unchanged. No application schema migration.

File-picker 13 returns file objects/lists and saved URIs. Secure-storage 11 removes legacy algorithms and options deprecated in version 10; this client already used version 10 defaults.

desktop_drop remains at 0.8.4 because file-picker requires cross_file 0.3.x. Syncfusion PDF remains at 33.2.13 and XML at 6.6.1 because epub_pro requires XML 6.

Notes

The large generated diff is the upstream PowerSync worker and SQLite WASM refresh. CI is pending. iOS/macOS/Windows/Linux builds, physical-device interactions, and live sync/provider smoke tests were not run. Android builds retain forward-looking Gradle/Kotlin support warnings; CocoaPods reports the existing custom-configuration warning.

Checklist

  • The branch, commits, and pull request title follow the repository conventions.
  • The change is complete and limited to the agreed scope.
  • Relevant tests have been added or updated.
  • Formatting, analysis, and tests pass.
  • Documentation, UI evidence, and migration notes are included where relevant.
  • No credentials, personal data, copyrighted fixtures, or unrelated generated files are included.
  • The branch is up to date with its target branch.

Copilot AI balanced review requested due to automatic review settings November 7, 2026 23:18

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 7, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-07T23:20:25.060915Z eb64394 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@codecov

codecov Bot commented Nov 7, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 53.65854% with 19 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
app/lib/widgets/book_edit/cover_image_picker.dart 0.00% 17 Missing ⚠️
app/lib/folders/directory_access_native.dart 0.00% 1 Missing ⚠️
app/lib/widgets/statistics/reading_charts.dart 50.00% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@Eoic
Eoic merged commit 050a71d into development Nov 7, 2026
10 checks passed
@Eoic
Eoic deleted the maintenance/138-flutter-package-upgrades branch November 7, 2026 23:50
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.

Upgrade Flutter dependencies and migrate affected client integrations

2 participants