feat: error reporting with logs (#45)

* feat: add ability to get logs file from ui

* test: add unit test for log line parsing in logs_provider

* refactor: update all logs to obfuscate sensitive information

* feat: generate dynamic zip file name for logs export

* feat: enhance logging in audiobook player and provider for better debugging

* refactor: extract user display logic into UserBar widget for offline access of settings and logs

* feat: add About section with app metadata and source code link in YouPage
This commit is contained in:
Dr.Blank 2024-10-03 05:54:29 -04:00 committed by GitHub
parent 7b0c2c4b88
commit 35a2d7cfce
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
44 changed files with 861 additions and 176 deletions

View file

@ -518,7 +518,7 @@ Future<void> libraryItemPlayButtonOnPressed({
required shelfsdk.BookExpanded book,
shelfsdk.MediaProgress? userMediaProgress,
}) async {
debugPrint('Pressed play/resume button');
appLogger.info('Pressed play/resume button');
final player = ref.watch(audiobookPlayerProvider);
final isCurrentBookSetInPlayer = player.book == book;
@ -527,8 +527,8 @@ Future<void> libraryItemPlayButtonOnPressed({
Future<void>? setSourceFuture;
// set the book to the player if not already set
if (!isCurrentBookSetInPlayer) {
debugPrint('Setting the book ${book.libraryItemId}');
debugPrint('Initial position: ${userMediaProgress?.currentTime}');
appLogger.info('Setting the book ${book.libraryItemId}');
appLogger.info('Initial position: ${userMediaProgress?.currentTime}');
final downloadManager = ref.watch(simpleDownloadManagerProvider);
final libItem =
await ref.read(libraryItemProvider(book.libraryItemId).future);
@ -539,9 +539,9 @@ Future<void> libraryItemPlayButtonOnPressed({
downloadedUris: downloadedUris,
);
} else {
debugPrint('Book was already set');
appLogger.info('Book was already set');
if (isPlayingThisBook) {
debugPrint('Pausing the book');
appLogger.info('Pausing the book');
await player.pause();
return;
}

View file

@ -383,7 +383,7 @@ class _BookCover extends HookConsumerWidget {
: themeData,
);
} catch (e) {
appLogger.shout('Error changing theme: $e');
appLogger.severe('Error changing theme: $e');
}
});
}