- Added detailed async resolve tracing through CherrypickObserver in _sharedAsyncResolveCurrentScope: logs for request, cache HIT/MISS, start/success/error, and circular dependency detection.
- Improved and extended documentation (docstrings) for private cache fields, paramsToKey, cacheKey, _sharedAsyncResolveCurrentScope, and other internal Scope methods.
- Fixed an unused stack trace variable to resolve linter warning.
- Improved code readability and diagnostic coverage.
- Updated related tests: cycle_detector_test and scope_test for better clarity.
- Updated pubspec.lock as a side effect of technical changes.
BREAKING CHANGE:
Additional diagnostic log messages are now produced during async DI resolution. If you rely on log output parsing or trace handling, adjust your tools for new async trace events.
- Full English API/class/method documentation for core CherryPick classes:
* Binding<T>
* BindingResolver<T>
* CycleDetector and CycleDetectionMixin
* GlobalCycleDetector and GlobalCycleDetectionMixin
* Factory<T>
* Module
* Scope
- Each public and private method is now documented in clear DartDoc style with usages
- Added code samples for modules, scope, subscopes, DI resolve/async, cycle detection
- Russian comments completely replaced with English for consistency
- NO logic or API changes, documentation and devex improvement only
Also updated: pubspec.lock for workspace/example folders (auto by dependency changes)
- Refactor DIAdapter to generic abstract class; align interfaces for Cherrypick, GetIt, Riverpod.
- Remove all dynamic/object usage from dependency registration and bench scenarios.
- Universal getUniversalRegistration function now fully type-safe for all DIs.
- Fix teardown and lifecycle for RiverpodAdapter to prevent disposed Container errors.
- Update CLI and benchmark entry points; validated all scenarios and stress modes for each DI adapter.