flutter_awesome_logger 1.1.1
flutter_awesome_logger: ^1.1.1 copied to clipboard
Awesome debugging with floating logger, automatic API logging (using interceptor), and a beautiful UI for viewing logs.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.1.1 - 2024-10-16 #
- updated README.md for better clarity, readability and formatting
1.1.0 - 2024-10-16 #
- updated example app pubspec.yaml with sdk: ">=3.0.0 <4.0.0"
1.0.10 - 2024-10-16 #
- updated README.md to show screenshots properly
1.0.9 - 2024-10-16 #
Improved README Documentation #
- ๐ Enhanced README Documentation - Complete overhaul of README with professional formatting and responsive design
- โก Easiest Setup Guide - Added ultra-simple 2-line setup instructions with MaterialApp example
- ๐ฑ Mobile-Responsive Screenshots - Images now stack vertically on mobile devices with CSS media queries
- ๐ฏ Professional Layout - Replaced centered table layouts with clean, left-aligned professional sections
- ๐ Comprehensive Logging Guides - Detailed explanations for both API logs and general logs tabs
- โจ Enhanced Features Table - Added long press floating button feature with 4 detailed interaction methods
- ๐จ Modern Badges and Styling - Updated to for-the-badge style badges with Flutter/Dart technology indicators
- ๐ Improved Navigation - Added collapsible table of contents and better section organization
- ๐ง Better Code Examples - More practical examples with real-world usage patterns and best practices
1.0.8 - 2024-10-16 #
Added #
- ๐ฌ Simple Error Display - Shows navigation error directly in the floating logger widget when navigation fails
- ๐ Better Developer Experience - Navigation errors now show both console output and visual in-widget message
Fixed #
- ๐ง Navigation Context Issues - Simplified error handling with reliable in-widget display and console output
- ๐ฏ Error Visibility - Users will always see navigation errors with clear instructions and code examples
1.0.7 - 2024-10-16 #
Added #
- ๐ฌ User-Friendly Error Dialog - Added helpful dialog that appears when navigation fails, showing step-by-step solution
- ๐ Better Developer Experience - Navigation errors now show both console output and visual dialog with code examples
Improved #
- ๐ฏ Error Handling - Enhanced navigation error reporting with clear instructions and selectable documentation link
1.0.6 - 2024-10-16 #
Fixed #
- ๐ง Navigator Key Handling - Improved navigation logic to properly handle cases where
navigatorKey.currentState
is null - ๐ฑ Navigation Robustness - Better fallback mechanism when provided navigator key is not ready yet
1.0.5 - 2024-10-16 #
Fixed #
- ๐ง Flutter Compatibility - Replaced
Color.withValues()
withColor.withOpacity()
for better compatibility with older Flutter versions - ๐ฑ iOS Build Fix - Fixed Xcode build errors related to undefined
withValues
method
1.0.4 - 2024-10-16 #
Fixed #
- ๐ง Path Dependency Compatibility - Changed
path
dependency from^1.9.1
to^1.9.0
to be compatible with Flutter SDK 3.24.5 - ๐ฆ Flutter SDK Compatibility - Fixed version solving issues with flutter_test dependency conflicts
1.0.3 - 2024-10-16 #
Changed #
- ๐ง Dart SDK Compatibility - Lowered minimum Dart SDK requirement from
^3.8.1
to>=3.0.0 <4.0.0
- ๐ฆ Wider Compatibility - Package now works with Dart SDK 3.0.0 and above, including 3.5.x versions
Fixed #
- ๐ Dependency Resolution - Fixed version solving issues for projects using Dart SDK < 3.8.1
1.0.2 - 2024-10-15 #
Changed #
- โจ Synchronous Methods - Removed unnecessary async/await from visibility and preference methods
- ๐ Better Performance - Visibility methods are now synchronous since they don't perform async operations
- ๐ฏ Cleaner API - No need for
await
when checking visibility or toggling
1.0.1 - 2024-10-15 #
Added #
- ๐ Additional Methods -
getSavedPosition()
,savePosition()
,clearPreferences()
,initialize()
now available throughFlutterAwesomeLogger
## [1.0.0] (2024-10-15)
### ๐ Major Release - Stable API
This release marks the first stable version of Flutter Awesome Logger with a clean, production-ready API.
### Added
- ๐ญ **Factory Pattern Implementation** - Clean access to logger through `FlutterAwesomeLogger.loggingUsingLogger`
- ๐ฏ **Simplified API** - Single entry point for logger access without exposing internal implementation
- ๐ **Enhanced Documentation** - Updated README with comprehensive factory pattern examples
- ๐ง **Better Encapsulation** - Internal logging classes are no longer directly exposed
### Changed
- ๐ **New Recommended Usage** - `final logger = FlutterAwesomeLogger.loggingUsingLogger;`
- ๐ฆ **Cleaner Exports** - Only necessary classes and configs are exported
- ๐ **Updated Examples** - All code examples now use the new factory pattern
- ๐จ **Improved Developer Experience** - More intuitive API design
### Technical
- ๐๏ธ **Static Getter Implementation** - Added static `loggingUsingLogger` getter to `FlutterAwesomeLogger` widget class
- ๐งน **Code Cleanup** - Removed unnecessary factory classes and simplified architecture
- ๐ **Maintainability** - Easier to maintain and extend in future versions
### Migration Guide
If you were using the logger directly:
```dart
// Old way (still works but not recommended)
import 'package:flutter_awesome_logger/src/core/logging_using_logger.dart';
final logger = LoggingUsingLogger();
// New way (recommended)
import 'package:flutter_awesome_logger/flutter_awesome_logger.dart';
final logger = FlutterAwesomeLogger.loggingUsingLogger;
All existing functionality remains the same - only the access pattern has been improved.
0.1.9 - 2024-10-14 #
Added #
- ๐คณ Shake to Enable Logger - Shake your device to enable the entire logger system when it's disabled (perfect for production builds)
- ๐ฏ Dual Shake Detection System - Separate detectors for toggle visibility vs enable logger functionality
- ๐๏ธ Smart State Management - Automatic switching between shake detectors based on logger state
Changed #
- ๐ Updated Shake Package - Upgraded to shake ^3.0.0 with improved callback signatures
- ๐ Clearer Property Names - Renamed
enableShakeToToggle
toenableShakeToShowHideFloatingButton
andenableShakeToEnable
toenableShakeToEnableLogger
- ๐จ Enhanced Configuration - More descriptive parameter names for better developer experience
Fixed #
- ๐ Flutter Analyze Issues - Fixed all linting errors and warnings
- ๐ง Callback Type Compatibility - Updated shake detector callbacks to match new package API
- ๐ Documentation Updates - Corrected interceptor class name and updated version references
Technical #
- ๐๏ธ Proper Resource Management - Only one shake detector active at a time for optimal performance
- ๐ฏ Type Safety - Improved type checking and eliminated unnecessary type assertions
- ๐ Code Quality - All Flutter analyze checks pass with zero issues
0.1.8 - 2024-10-14 #
Added #
- ๐ฏ Shake to Toggle - Shake your device to show/hide the floating logger button(Only active when logger is enabled)
0.1.7 - 2024-10-14 #
Added #
- โธ๏ธ Pause/Resume Logging - Global pause state that temporarily stops all logging (console output and storage)
- ๐ฏ Visual Pause Indicators - Floating button changes color/icon when logging is paused, plus banner in logger history
- ๐ฎ Pause Controls - Long press floating button opens options menu with pause/resume, plus dedicated button in app bar
- ๐ Async Logger Initialization -
enabled
parameter now acceptsFutureOr<bool>
for conditional initialization - ๐๏ธ Simplified API - Removed unnecessary
storeLogs
andautoInitialize
parameters
Changed #
- ๐ Unified Control - Single
enabled
parameter now controls both floating logger visibility AND log storage - ๐ฑ Enhanced Floating Logger - Better visual feedback and more intuitive controls
- ๐จ Improved UI - Pause banner in logger history page with clear messaging and quick resume action
- ๐ Updated Documentation - Cleaner examples and better explanations of async capabilities
Fixed #
- ๐ API Logging Pause Issue - API logs now properly respect the global pause state
- ๐ฏ Configuration Simplification - Removed confusing parameters that served no real purpose
- ๐ง Code Cleanup - Removed dead code and unnecessary complexity
Breaking Changes #
- โ ๏ธ
AwesomeLoggerConfig.storeLogs
removed - UseFlutterAwesomeLogger.enabled
to control storage - โ ๏ธ
FlutterAwesomeLogger.autoInitialize
removed - No longer needed - โ ๏ธ
FlutterAwesomeLogger.enabled
type changed - Now acceptsFutureOr<bool>
instead ofbool
Technical #
- ๐๏ธ Future Resolution - Proper async handling in widget lifecycle
- ๐ฏ State Management - Improved pause state synchronization across UI components
- ๐ Performance - Cleaner initialization logic and reduced unnecessary operations
0.1.6 - 2024-10-14 #
- updated dependencies and flutter analysis fixes.
0.1.5 - 2024-10-13 #
Added #
- added screenshots showcasing the flutter_awesome_logger capabilities to README.md
0.1.4 - 2024-10-13 #
Added #
- ๐ฏ Comprehensive unfocus functionality - Search field unfocuses on all interactions
- ๐ Smart keyboard management - Dismisses keyboard when scrolling, tapping buttons, or interacting with UI
- ๐ฑ Enhanced mobile UX - Follows platform conventions for keyboard behavior
Fixed #
- ๐ง Layout issues in example app - Fixed ParentDataWidget errors and pixel overflow
- ๐จ Responsive design improvements - Better layout handling for different screen sizes
- ๐ SingleChildScrollView integration - Proper scrolling behavior without layout conflicts
Improved #
- โจ๏ธ Keyboard interaction patterns - Consistent unfocus behavior across all tabs
- ๐ฏ Touch interactions - All buttons, filters, and controls dismiss keyboard automatically
- ๐ User experience - Smoother navigation and interaction flow
Technical #
- ๐๏ธ Widget hierarchy fixes - Resolved Expanded/Flex widget constraint issues
- ๐ฑ Scroll view optimization - Proper handling of unbounded height constraints
- ๐ฏ Event handling - Added FocusScope management to all interactive elements
0.1.3 - 2024-10-13 #
Changed #
- ๐ซ Removed SharedPreferences dependency - No longer stores logs or preferences locally
- ๐ In-memory storage - Visibility and position are now stored only for current session
- ๐ฆ Lighter package - Reduced dependencies for better performance
Breaking Changes #
- โ ๏ธ Persistent storage removed - Floating logger position and visibility reset on app restart
- ๐ฑ Session-only state - All preferences are cleared when app closes
0.1.2 - 2024-10-13 #
- added correct usage of navigator key in debug print and example app
0.1.1 - 2024-10-13 #
- refactor: rename AwesomeLoggerInterceptor to FlutterAwesomeLoggerDioInterceptor
0.1.0 - 2024-10-13 #
Added #
- Initial release of Flutter Awesome Logger
- Core logging functionality with configurable options
- Floating logger button with draggable interface
- Automatic API logging with Dio interceptor
- Beautiful UI for viewing log history
- Support for multiple log levels (debug, info, warning, error, verbose)
- Persistent log storage using SharedPreferences
- Search and filter capabilities in log viewer
- Customizable floating button appearance
- Comprehensive configuration options
- Example app demonstrating all features
Features #
- ๐ฑ Floating logger button that stays accessible
- ๐ Automatic API request/response logging
- ๐จ Modern, clean UI design
- ๐ Multiple log levels with color coding
- ๐พ Persistent storage across app sessions
- ๐ Search and filter functionality
- ๐ฏ Highly configurable settings
- ๐ฑ Responsive design for all screen sizes