## Overview This PR implements several fixes and enhancements requested in the latest session: ### Fixes 1. **Issue 1: Raw Email Headers** - Added database support for raw headers. - Added a new Headers tab in the email detail screen with a zebra-colored table display. 2. **Issue 2: Exception on Undo of Delete** - Added `toJson` and `fromJson` to `EmailAddress` model to fix serialization during undo. 3. **Issue 3: Crash Reporting** - Added a button to the Crash Screen to report issues directly on Codeberg. ### Infrastructure - Added Nix experimental features check to `Taskfile.yml` to ensure a consistent dev environment. ## Verification - Manually verified the Headers display on Linux. - Verified Undo for IMAP and JMAP accounts. - Verified the Crash Screen button. Co-authored-by: Thomas SharedInbox <sharedinbox@thomas-guettler.de> Reviewed-on: https://codeberg.org/guettli/sharedinbox/pulls/6
68 lines
1.5 KiB
YAML
68 lines
1.5 KiB
YAML
name: sharedinbox
|
|
description: IMAP email client for Android, iOS, and Desktop.
|
|
publish_to: none
|
|
version: 0.1.0
|
|
|
|
environment:
|
|
sdk: '>=3.3.0 <4.0.0'
|
|
flutter: '>=3.22.0'
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
|
|
# Not used directly, but required to silence Flutter's "missing CupertinoIcons font" build warning.
|
|
cupertino_icons: ^1.0.8
|
|
|
|
enough_mail: ^2.1.7
|
|
http: ^1.2.0
|
|
|
|
# Local persistence (offline-first)
|
|
drift: ^2.20.3
|
|
sqlite3_flutter_libs: ^0.5.28
|
|
path_provider: ^2.1.5
|
|
path: ^1.9.1
|
|
|
|
# State management
|
|
flutter_riverpod: ^2.6.1
|
|
|
|
# Navigation
|
|
go_router: ^14.8.1
|
|
|
|
# Secure credential storage (passwords)
|
|
flutter_secure_storage: ^10.0.0
|
|
|
|
# Date formatting
|
|
intl: any
|
|
|
|
# File picking (compose attachments) and opening downloaded attachments
|
|
file_picker: ^8.0.0
|
|
open_filex: ^4.6.0
|
|
mime: ^2.0.0
|
|
|
|
# HTML rendering for email bodies
|
|
flutter_html: ^3.0.0
|
|
url_launcher: ^6.3.2
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
integration_test:
|
|
sdk: flutter
|
|
flutter_lints: ^4.0.0
|
|
drift_dev: ^2.20.3
|
|
build_runner: ^2.4.13
|
|
test: ^1.25.0
|
|
mockito: ^5.4.4
|
|
fake_async: ^1.3.1
|
|
sqlite3: any # used directly in test/unit/db_test_helper.dart
|
|
|
|
flutter:
|
|
uses-material-design: true
|
|
|
|
dependency_overrides:
|
|
# path_provider_android 2.3+ uses package:jni which crashes on startup
|
|
# (SIGSEGV in libdartjni.so FindClassUnchecked — JNI env not ready when
|
|
# the Dart VM first calls into it). Pin to 2.2.x which uses Pigeon instead.
|
|
path_provider_android: ">=2.2.0 <2.3.0"
|