flutter_awesome_logger 1.0.0
flutter_awesome_logger: ^1.0.0 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.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
loggingUsingLoggergetter toFlutterAwesomeLoggerwidget 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:
// 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
enableShakeToToggletoenableShakeToShowHideFloatingButtonandenableShakeToEnabletoenableShakeToEnableLogger - ๐จ 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 -
enabledparameter now acceptsFutureOr<bool>for conditional initialization - ๐๏ธ Simplified API - Removed unnecessary
storeLogsandautoInitializeparameters
Changed #
- ๐ Unified Control - Single
enabledparameter 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.storeLogsremoved - UseFlutterAwesomeLogger.enabledto control storage - โ ๏ธ
FlutterAwesomeLogger.autoInitializeremoved - No longer needed - โ ๏ธ
FlutterAwesomeLogger.enabledtype 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