From 0116e8407a4be6dd108b838b50ee4290a03a686c Mon Sep 17 00:00:00 2001 From: otsmr Date: Fri, 11 Jul 2025 21:38:23 +0200 Subject: [PATCH] fix logging --- lib/main.dart | 2 ++ lib/src/database/twonly_database.dart | 7 +++++++ .../twonly_safe/create_backup.twonly_safe.dart | 4 ++-- lib/src/utils/log.dart | 18 ++++++++++++++++++ lib/src/utils/misc.dart | 13 ------------- .../views/settings/help/diagnostics.view.dart | 1 - 6 files changed, 29 insertions(+), 16 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 27eb16f..ad535c5 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -54,6 +54,8 @@ void main() async { await initFileDownloader(); + cleanLogFile(); + runApp( MultiProvider( providers: [ diff --git a/lib/src/database/twonly_database.dart b/lib/src/database/twonly_database.dart index a269edf..2088b57 100644 --- a/lib/src/database/twonly_database.dart +++ b/lib/src/database/twonly_database.dart @@ -155,5 +155,12 @@ class TwonlyDatabase extends _$TwonlyDatabase { ); await delete(signalContactPreKeys).go(); await delete(signalContactSignedPreKeys).go(); + await (delete(signalPreKeyStores) + ..where((t) => (t.createdAt.isSmallerThanValue( + DateTime.now().subtract( + Duration(days: 25), + ), + )))) + .go(); } } diff --git a/lib/src/services/twonly_safe/create_backup.twonly_safe.dart b/lib/src/services/twonly_safe/create_backup.twonly_safe.dart index c673e69..eb10143 100644 --- a/lib/src/services/twonly_safe/create_backup.twonly_safe.dart +++ b/lib/src/services/twonly_safe/create_backup.twonly_safe.dart @@ -97,8 +97,8 @@ Future performTwonlySafeBackup({bool force = false}) async { await backupDatabaseFile.delete(); await backupDatabaseFileCleaned.delete(); - Log.info("twonlyDatabaseBytes = ${twonlyDatabaseBytes.lengthInBytes}"); - Log.info("secureStorageBytes = ${jsonEncode(secureStorageBackup)}"); + Log.info("twonlyDatabaseLength = ${twonlyDatabaseBytes.lengthInBytes}"); + Log.info("secureStorageLength = ${jsonEncode(secureStorageBackup).length}"); final backupProto = TwonlySafeBackupContent( secureStorageJson: jsonEncode(secureStorageBackup), diff --git a/lib/src/utils/log.dart b/lib/src/utils/log.dart index 36b3054..f18f4ec 100644 --- a/lib/src/utils/log.dart +++ b/lib/src/utils/log.dart @@ -43,6 +43,13 @@ Future loadLogFile() async { } } +Future cleanLogFile() async { + final str = await loadLogFile(); + if (str.contains("secureStorageBytes")) { + deleteLogFile(); + } +} + Future _writeLogToFile(LogRecord record) async { final directory = await getApplicationSupportDirectory(); final logFile = File('${directory.path}/app.log'); @@ -57,6 +64,17 @@ Future _writeLogToFile(LogRecord record) async { }); } +Future deleteLogFile() async { + final directory = await getApplicationSupportDirectory(); + final logFile = File('${directory.path}/app.log'); + + if (await logFile.exists()) { + await logFile.delete(); + return true; + } + return false; +} + String _getCallerSourceCodeFilename() { StackTrace stackTrace = StackTrace.current; String stackTraceString = stackTrace.toString(); diff --git a/lib/src/utils/misc.dart b/lib/src/utils/misc.dart index e299b95..cbd592e 100644 --- a/lib/src/utils/misc.dart +++ b/lib/src/utils/misc.dart @@ -1,5 +1,4 @@ import 'dart:convert'; -import 'dart:io'; import 'dart:math'; import 'package:drift/drift.dart'; import 'package:flutter/foundation.dart'; @@ -9,7 +8,6 @@ import 'package:flutter_image_compress/flutter_image_compress.dart'; import 'package:gal/gal.dart'; import 'package:intl/intl.dart'; import 'package:local_auth/local_auth.dart'; -import 'package:path_provider/path_provider.dart'; import 'package:provider/provider.dart'; import 'package:twonly/globals.dart'; import 'package:twonly/src/database/tables/messages_table.dart'; @@ -26,17 +24,6 @@ extension ShortCutsExtension on BuildContext { ColorScheme get color => Theme.of(this).colorScheme; } -Future deleteLogFile() async { - final directory = await getApplicationSupportDirectory(); - final logFile = File('${directory.path}/app.log'); - - if (await logFile.exists()) { - await logFile.delete(); - return true; - } - return false; -} - Future saveImageToGallery(Uint8List imageBytes) async { final hasAccess = await Gal.hasAccess(); if (!hasAccess) { diff --git a/lib/src/views/settings/help/diagnostics.view.dart b/lib/src/views/settings/help/diagnostics.view.dart index b1f2810..1eaa68f 100644 --- a/lib/src/views/settings/help/diagnostics.view.dart +++ b/lib/src/views/settings/help/diagnostics.view.dart @@ -3,7 +3,6 @@ import 'package:path_provider/path_provider.dart'; import 'package:flutter/services.dart'; import 'package:share_plus/share_plus.dart'; import 'package:twonly/src/utils/log.dart'; -import 'package:twonly/src/utils/misc.dart'; class DiagnosticsView extends StatefulWidget { const DiagnosticsView({super.key});