Skip to content

Releases: AndrewDongminYoo/flutter_calculator_app

Release 1.0.1

31 May 10:32

Choose a tag to compare

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.json for dependency management and project scripts.
    • Added .gitignore to exclude unnecessary files from version control.
  • 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_good to standard flutter commands.
    • Added a posttest command for coverage report generation.
    • Improved and updated several build and upgrade scripts.
  • 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_analysis package and updated linting rules.
    • Excluded generated localization files from analysis.
  • Dart & Flutter Dependencies
    • Updated multiple dependencies in pubspec.yaml and pubspec.lock, including analyzer, archive, connectivity_plus, coverage, flutter_bloc, http, mockito, provider, and web_socket.

🔧 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.1 in both pubspec.yaml and package.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

06 Apr 10:22

Choose a tag to compare

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)

Documentation

  • 📝 update README with project overview, features, and CLI usage instructions (8d99af5)
  • 📸 add screenshots section to README with examples of app functionality (4ba3b80)
  • create MIT License documents (0a3a561)
  • show in README.md if recent Actions CI passes (8b54596)