From ce1478b4335686d3cf506174990c8f964c8fe8ec Mon Sep 17 00:00:00 2001 From: basemosama Date: Wed, 2 Jul 2025 15:51:13 +0300 Subject: [PATCH] chore: Bump version to 0.5.1 and update dependencies; enhance error logging --- CHANGELOG.md | 4 ++++ example/pubspec.lock | 10 +++++----- lib/src/handler/api_handler.dart | 33 ++++++++++++++++++------------- lib/src/playx_network_client.dart | 1 + pubspec.yaml | 4 ++-- 5 files changed, 31 insertions(+), 21 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 61e21b3..2a11461 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 0.5.1 +- Updated dependencies to their latest versions. +- Enhanced logging errors and exceptions to provide more detailed information. + ## 0.5.0 > Note: This version contains breaking changes. diff --git a/example/pubspec.lock b/example/pubspec.lock index 3e7527e..02f3b04 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -366,7 +366,7 @@ packages: path: ".." relative: true source: path - version: "0.5.0" + version: "0.5.1" plugin_platform_interface: dependency: transitive description: @@ -379,18 +379,18 @@ packages: dependency: transitive description: name: sentry - sha256: "4aee18ffcdb6d92db3a770764fd0034b93f27ae736cf9f39855575a36c04fe91" + sha256: "40583b61f5f4dc0ea7095a34c03cd71e17b43bd8866fba34972398f70806b464" url: "https://pub.dev" source: hosted - version: "9.1.0" + version: "9.2.0" sentry_dio: dependency: transitive description: name: sentry_dio - sha256: "967e1aeda7ba1bf5aba7f7efb265ba9d2bbe5cd3432b5220677c91403543738b" + sha256: "62836fb92b6d3b38748469c63cb60df60917d2d85214d94051c7424e960450c9" url: "https://pub.dev" source: hosted - version: "9.1.0" + version: "9.2.0" shared_preferences: dependency: transitive description: diff --git a/lib/src/handler/api_handler.dart b/lib/src/handler/api_handler.dart index 39f0a78..7301c04 100644 --- a/lib/src/handler/api_handler.dart +++ b/lib/src/handler/api_handler.dart @@ -62,15 +62,16 @@ class ApiHandler { shouldHandleUnauthorizedRequest: shouldHandleUnauthorizedRequest); _printError( header: 'Playx Network Error :', - text: exception.errorMessage, + text: 'ERROR ${response.statusCode} ${response.statusMessage}', + error: exception, ); return NetworkResult.error(exception); } else { if (isResponseBlank(response) ?? true) { _printError( header: 'Playx Network Error :', - text: exceptionMessages.unexpectedError, - stackTrace: response, + text: 'Response is blank or null', + error: response, ); return NetworkResult.error(UnexpectedErrorException( errorMessage: exceptionMessages.unexpectedError, @@ -82,6 +83,7 @@ class ApiHandler { _printError( header: 'Playx Network Error :', text: exceptionMessages.emptyResponse, + error: data, ); return NetworkResult.error(EmptyResponseException( errorMessage: exceptionMessages.emptyResponse, @@ -146,15 +148,15 @@ class ApiHandler { shouldHandleUnauthorizedRequest: shouldHandleUnauthorizedRequest); _printError( header: 'Playx Network Error :', - text: exception.errorMessage, + text: 'ERROR ${response.statusCode} ${response.statusMessage}', error: exception); return NetworkResult.error(exception); } else { if (isResponseBlank(response) ?? true) { _printError( header: 'Playx Network Error :', - text: exceptionMessages.unexpectedError, - stackTrace: response, + text: 'Response is blank or null', + error: response, ); return NetworkResult.error(UnexpectedErrorException( errorMessage: exceptionMessages.unexpectedError, @@ -166,6 +168,7 @@ class ApiHandler { _printError( header: 'Playx Network Error :', text: exceptionMessages.emptyResponse, + error: data, ); return NetworkResult.error(EmptyResponseException( errorMessage: exceptionMessages.emptyResponse, @@ -192,6 +195,7 @@ class ApiHandler { _printError( header: 'Playx Network Error :', text: exceptionMessages.emptyResponse, + error: result, ); return NetworkResult.error(EmptyResponseException( errorMessage: exceptionMessages.emptyResponse, @@ -202,8 +206,8 @@ class ApiHandler { } else { _printError( header: 'Playx Network Error :', - text: exceptionMessages.unexpectedError, - stackTrace: response, + text: 'Response is not a List', + error: response, ); return ApiHandler.unableToProcessException( e: ApiHandler.unableToProcessException, @@ -250,8 +254,8 @@ class ApiHandler { response: response, shouldHandleUnauthorizedRequest: shouldHandleUnauthorizedRequest); _printError( - header: 'Playx Network Error :', - text: exception.errorMessage, + header: 'Playx Network Error:', + text: 'ERROR ${response.statusCode} ${response.statusMessage}', error: exception, ); return NetworkResult.error(exception); @@ -259,8 +263,8 @@ class ApiHandler { if (isResponseBlank(response) ?? true) { _printError( header: 'Playx Network Error :', - text: exceptionMessages.unexpectedError, - stackTrace: response, + text: 'Response is blank or null', + error: response, ); return NetworkResult.error(UnexpectedErrorException( errorMessage: exceptionMessages.unexpectedError, @@ -272,7 +276,7 @@ class ApiHandler { // ignore: avoid_catches_without_on_clauses } on Exception catch (e, s) { _printError( - header: 'Playx Network Error :', + text: exceptionMessages.unexpectedError, error: e, stackTrace: s, ); @@ -290,7 +294,8 @@ class ApiHandler { }) { _printError( header: 'Playx Network (Dio) Error :', - text: error, + text: 'DioException occurred:', + error: error, stackTrace: stackTrace, ); return NetworkResult.error(_getDioException( diff --git a/lib/src/playx_network_client.dart b/lib/src/playx_network_client.dart index 388f9b4..6eb4eb4 100644 --- a/lib/src/playx_network_client.dart +++ b/lib/src/playx_network_client.dart @@ -52,6 +52,7 @@ class PlayxNetworkClient { ? PlayxLogger.getLogger('Playx Network')! : PlayxLogger.initLogger( name: 'Playx Network', + setAsDefault: false, ); _apiHandler = ApiHandler( diff --git a/pubspec.yaml b/pubspec.yaml index f92d68a..a1fd24c 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: playx_network description: playx_network is a Wrapper around Dio that can perform api request with better error handling and easily get the result of any api request. -version: 0.5.0 +version: 0.5.1 homepage: https://sourcya.io repository: https://github.com/playx-flutter/playx_network issue_tracker: https://github.com/playx-flutter/playx_network/issues @@ -19,7 +19,7 @@ dependencies: flutter: sdk: flutter dio: ^5.8.0+1 - sentry_dio: ^9.1.0 + sentry_dio: ^9.2.0 talker_dio_logger: ^4.9.1 playx_core: ^0.7.3 dio_web_adapter: ^2.1.1