Releases: AndrewDongminYoo/flutter_calculator_app
Releases · AndrewDongminYoo/flutter_calculator_app
Release 1.0.1
Release Notes – Version 1.0.1
Overview
This release includes the initial setup of the calculator project and a series of enhancements, fixes, refactors, and dependency/tooling upgrades. The update focuses on improving localization support, code quality tooling, dependency management, and developer experience.
✨ New Features
- Project Initialization
- Added
package.jsonfor dependency management and project scripts. - Added
.gitignoreto exclude unnecessary files from version control.
- Added
- Localization Configuration
- Set up localization files and configuration.
- Updated import paths for localization resources.
🐛 Bug Fixes
- Fixed documentation error and updated import statement in
CalculatorRemoteDatasource. - Corrected return type documentation and used project import paths for localization.
- Updated dart import sorter pre-commit hook to correctly check and enforce sorted imports.
♻️ Refactoring & Chores
- Command and Script Updates
- Migrated derry commands from
very_goodto standardfluttercommands. - Added a
posttestcommand for coverage report generation. - Improved and updated several build and upgrade scripts.
- Migrated derry commands from
- Import Management
- Centralized and clarified import paths for localization files in app and test helpers.
- Buffer Management
- Ensured tokenization buffers are cleared to prevent calculation errors.
⬆️ Dependency & Tooling Upgrades
- Trunk and Linting Tools
- Upgraded Trunk CLI, plugins, and several static analysis and CI tools (e.g., cspell, checkov, ktlint, markdownlint, trufflehog).
- Upgraded
very_good_analysispackage and updated linting rules. - Excluded generated localization files from analysis.
- Dart & Flutter Dependencies
- Updated multiple dependencies in
pubspec.yamlandpubspec.lock, includinganalyzer,archive,connectivity_plus,coverage,flutter_bloc,http,mockito,provider, andweb_socket.
- Updated multiple dependencies in
🔧 Other Improvements
- Added a dart formatter definition to Trunk for code style consistency.
- Improved calculator logic by validating input expressions and enhancing tokenization with constants for maintainability.
- Added a pre-commit hook for automatically sorting Dart imports.
Internal
- Version incremented to
1.0.1in bothpubspec.yamlandpackage.json. - Added a changelog entry to reflect the above changes.
Thanks for using the calculator project! For any issues, feedback, or contributions, please check the repository guidelines.
Release v1.0.0
1.0.0 (2025-04-06)
Features
- ✨ add command-line functionality for immediate calculations with usage instructions (632d923)
- ✨ add mockito for unit testing and implement connectivity-aware repository tests (6d4c1ba)
- ✨ enhance calculator logic with tokenization and expression evaluation (17d4851)
- ✨ enhance CLI calculator with command history, help instructions, and console clearing functionality (a4e3619)
- ✨ implement calculator with clean architectures (34a30a0)
- ✨ implement CLI calculator and local datasource for basic arithmetic operations (ba45ee1)
- ✨ implement remote datasource for expression evaluation with unit tests (8fd0dfe)
- ✨ improve error handling in CLI calculator for better user feedback (2848320)
- ✨ integrate CalculatorRepository into CalculatorBloc for improved evaluation handling (1a7308b)
- ✨ integrate connectivity_plus for network-aware calculations in CalculatorRepository (c8d1bff)
- ➕ add auto_size_text dependency (79b0a4a)
- ➕ add connectivity_plus dependency and configure for iOS and macOS (55e7f44)
- ➕ add math_expressions dependency to pubspec.yaml and update pubspec.lock (69a2542)
- ➕ implement calculator screen with button types and functionality (ca579c7)
- ⬆️ upgrade multiple dependencies including bloc, flutter_bloc, and freezed (acc3d07)
- 🎯 add logging for internet connection status in calculate method (fc823c8)
Bug Fixes
- ✅ update division by zero handling to return double.infinity instead of throwing ArgumentError (5f7b096)
- ✅ update error handling in calculator_local_datasource_test to throw UnsupportedError for invalid number format (4f3148a)
- ✅ update test to render CalculatorScreen instead of CounterPage (66df7e3)
- 🐛 correct minus button representation in ButtonType enum (e1c2533)
- 🐛 use ShuntingYardParser instead of Parser in CalculatorRemoteDatasource (ab71907)
- 💄 optimize layout structure in CalculatorButton widget (ad67ebd)