mirror of
https://github.com/pese-git/cherrypick.git
synced 2026-01-23 21:13:35 +00:00
BREAKING CHANGE: Updated file extensions and dependencies for better compatibility ## 🎯 Major Features Added: - ✅ Complete test suite for ModuleGenerator (66 integration tests) - ✅ Complete test suite for InjectGenerator (66 integration tests) - ✅ Comprehensive unit tests for BindSpec, MetadataUtils - ✅ 195 total tests across all packages (100% passing) ## 🔧 Technical Improvements: - feat(generator): add comprehensive integration tests for code generation - feat(generator): implement BindSpec unit tests with full coverage - feat(generator): add MetadataUtils unit tests for annotation processing - fix(generator): update file extensions to avoid conflicts (.module.cherrypick.g.dart) - fix(generator): correct part directive generation in templates - fix(generator): resolve dart_style 3.x formatting compatibility ## 📦 Dependencies & Configuration: - build(deps): upgrade analyzer to ^7.0.0 for Dart 3.5+ compatibility - build(deps): upgrade dart_style to ^3.0.0 for modern formatting - build(deps): upgrade source_gen to ^2.0.0 for latest features - config(build): update build.yaml with new file extensions - config(melos): optimize test commands for better performance ## 🐛 Bug Fixes: - fix(examples): correct local package paths in client_app and postly - fix(analysis): exclude generated files from static analysis - fix(generator): remove unused imports and variables - fix(tests): add missing part directives in test input files - fix(tests): update expected outputs to match dart_style 3.x format ## 🚀 Performance & Quality: - perf(tests): optimize test execution time (132 tests in ~1 second) - quality: achieve 100% test coverage for code generation - quality: eliminate all analyzer warnings and errors - quality: ensure production-ready stability ## 📋 Test Coverage Summary: - cherrypick: 61 tests ✅ - cherrypick_annotations: 1 test ✅ - cherrypick_generator: 132 tests ✅ - cherrypick_flutter: 1 test ✅ - Total: 195 tests (100% passing) ## 🔄 Compatibility: - ✅ Dart SDK 3.5.2+ - ✅ Flutter 3.24+ - ✅ melos + fvm workflow - ✅ build_runner integration - ✅ Modern analyzer and formatter This commit establishes CherryPick as a production-ready dependency injection framework with enterprise-grade testing and code generation capabilities.
36 lines
1.5 KiB
YAML
36 lines
1.5 KiB
YAML
# This file configures the analyzer, which statically analyzes Dart code to
|
|
# check for errors, warnings, and lints.
|
|
#
|
|
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled
|
|
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be
|
|
# invoked from the command line by running `flutter analyze`.
|
|
|
|
# The following line activates a set of recommended lints for Flutter apps,
|
|
# packages, and plugins designed to encourage good coding practices.
|
|
include: package:flutter_lints/flutter.yaml
|
|
|
|
analyzer:
|
|
exclude:
|
|
- "**/*.g.dart"
|
|
- "**/*.freezed.dart"
|
|
- "**/*.gr.dart"
|
|
- "**/*.config.dart"
|
|
|
|
linter:
|
|
# The lint rules applied to this project can be customized in the
|
|
# section below to disable rules from the `package:flutter_lints/flutter.yaml`
|
|
# included above or to enable additional rules. A list of all available lints
|
|
# and their documentation is published at https://dart.dev/lints.
|
|
#
|
|
# Instead of disabling a lint rule for the entire project in the
|
|
# section below, it can also be suppressed for a single line of code
|
|
# or a specific dart file by using the `// ignore: name_of_lint` and
|
|
# `// ignore_for_file: name_of_lint` syntax on the line or in the file
|
|
# producing the lint.
|
|
rules:
|
|
# avoid_print: false # Uncomment to disable the `avoid_print` rule
|
|
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule
|
|
|
|
# Additional information about this file can be found at
|
|
# https://dart.dev/guides/language/analysis-options
|