Commit Graph

  • 016c212063 fix(doc): remove hide symbol Sergey Penkovsky 2025-08-11 21:54:24 +03:00
  • d93d4173a2 chore(release): publish packages cherrypick_generator-v1.1.1 cherrypick_flutter-v1.1.3-dev.7 cherrypick_annotations-v1.1.1 cherrypick-v3.0.0-dev.7 Sergey Penkovsky 2025-08-11 12:38:17 +03:00
  • 85aa23d7ed Update README.md Sergey Penkovsky 2025-08-11 12:35:02 +03:00
  • 51cf4a0dc0 docs(readme): add comprehensive section on annotations and DI code generation Sergey Penkovsky 2025-08-11 12:24:44 +03:00
  • 8f980ff111 docs(readme): add detailed section and examples for automatic Disposable resource cleanup\n\n- Added a dedicated section with English description and code samples on using Disposable for automatic resource management.\n- Updated Features to include automatic resource cleanup for Disposable dependencies.\n\nHelps developers understand and implement robust DI resource management practices. Sergey Penkovsky 2025-08-11 12:02:32 +03:00
  • 4d872d7c25 docs(disposable): add detailed English documentation and usage examples for Disposable interface; chore: update binding_resolver and add explanatory comment in scope_test for deprecated usage.\n\n- Expanded Disposable interface docs, added sync & async example classes, and CherryPick integration sample.\n- Clarified how to implement and use Disposable in DI context.\n- Updated binding_resolver for internal improvements.\n- Added ignore for deprecated member use in scope_test for clarity and future upgrades.\n\nBREAKING CHANGE: Documentation style enhancement and clearer API usage for Disposable implementations. Sergey Penkovsky 2025-08-11 11:53:25 +03:00
  • 450f4231cb Merge pull request #14 from pese-git/dispose Sergey Penkovsky 2025-08-11 11:40:57 +03:00
  • cd1b9cf49d fix(comment): fix warnings Sergey Penkovsky 2025-08-08 23:42:35 +03:00
  • 33775f5748 fix(license): correct urls Sergey Penkovsky 2025-08-08 23:24:05 +03:00
  • e5848784ac refactor(core): make closeRootScope async and await dispose Sergey Penkovsky 2025-08-08 16:56:37 +03:00
  • 40b3cbb422 chore(release): publish packages cherrypick_flutter-v1.1.3-dev.6 cherrypick-v3.0.0-dev.6 Sergey Penkovsky 2025-08-08 16:23:13 +03:00
  • a4b0ddfa54 docs(faq): add best practice FAQ about using await with scope disposal Sergey Penkovsky 2025-08-04 10:47:33 +03:00
  • 547a15fa4e docs(faq): add best practice FAQ about using await with scope disposal Sergey Penkovsky 2025-08-04 10:39:36 +03:00
  • a9c95f6a89 docs+feat: add Disposable interface source and usage example Sergey Penkovsky 2025-08-01 15:07:12 +03:00
  • 61f2268d63 fix(riverpod-adapter): update implementation in riverpod_adapter.dart Sergey Penkovsky 2025-08-08 15:08:27 +03:00
  • f6fcb76730 docs(benchmark): update DI benchmark reports with new scenario tables and updated explanations Sergey Penkovsky 2025-08-08 15:00:55 +03:00
  • f8bbaf6c2c Merge pull request #18 from pese-git/logger Sergey Penkovsky 2025-08-08 14:27:53 +03:00
  • 2ebc997fea docs(readme): add comprehensive DI state and action logging to features Sergey Penkovsky 2025-08-08 13:40:10 +03:00
  • d15f3063fc hotfix Sergey Penkovsky 2025-08-08 12:49:12 +03:00
  • 1e8b8db64a docs(helper): add complete DartDoc with real usage examples for CherryPick class Sergey Penkovsky 2025-08-08 12:42:22 +03:00
  • c3ec52823e fix: improve global cycle detector logic Sergey Penkovsky 2025-08-08 12:24:07 +03:00
  • 16e05d27c5 docs(log_format): add detailed English documentation for formatLogMessage function Sergey Penkovsky 2025-08-08 11:28:12 +03:00
  • 1131be44da feat(core): refactor root scope API, improve logger injection, helpers, and tests Sergey Penkovsky 2025-08-08 11:23:14 +03:00
  • c971b59483 feat(postly): add explicit PrintLogger setup in main.dart for debug builds Sergey Penkovsky 2025-08-08 08:21:19 +03:00
  • aa97632add feat(logger): add extensible logging API, usage examples, and bilingual documentation - Introduce CherryPickLogger interface, PrintLogger and SilentLogger implementations - Add setGlobalLogger() to CherryPick API for custom DI logging - Log key events (scope, module, error) via logger throughout DI lifecycle - Comprehensive comments and code documentation in both English and Russian - Document usage of logging system in quick_start and full_tutorial documentation (EN/RU) - Provide usage examples in docs and code comments - No logging inside GlobalCycleDetectionMixin (design choice: exceptions handled at Scope, not detector/mixin level) and detailed architectural reasoning - Update helper.dart, logger.dart: comments, examples, API doc improvements BREAKING CHANGE: Projects can now inject any logger via CherryPick.setGlobalLogger; default log behavior clarified and docstrings/usage examples enhanced Sergey Penkovsky 2025-08-08 08:13:58 +03:00
  • 41d49e98d0 docs(report): update comparative DI benchmark results and conclusions for cherrypick, get_it, riverpod (eng, ru) Sergey Penkovsky 2025-08-07 16:46:53 +03:00
  • 44a8a3fcb2 chore(pubspec): update pubspec and lock files for all packages, version bump and deps sync Sergey Penkovsky 2025-08-07 16:28:47 +03:00
  • 475deac1e0 chore(release): publish packages cherrypick_flutter-v1.1.3-dev.5 cherrypick-v3.0.0-dev.5 Sergey Penkovsky 2025-08-07 16:23:12 +03:00
  • f06f4564d9 Merge pull request #15 from pese-git/improve Sergey Penkovsky 2025-08-07 16:19:11 +03:00
  • 70731c7e94 refactor(scope): simplify _findBindingResolver<T> with one-liner and optional chaining Sergey Penkovsky 2025-08-07 15:48:04 +03:00
  • 4d5f96705f Merge pull request #17 from pese-git/impr/complex_benchmark_impr Sergey Penkovsky 2025-08-07 15:01:27 +03:00
  • d23d06f98e impr: BENCHMARK - fix for CherrypickDIAdapter. yarashevich_kv 2025-08-07 14:54:57 +03:00
  • e1371f7038 docs: update architecture diagram in README to show adapter-centric universalRegistration pattern Sergey Penkovsky 2025-08-07 14:37:34 +03:00
  • 75db42428c docs: update README (en/ru) to reflect adapter-based universalRegistration pattern Sergey Penkovsky 2025-08-07 14:23:06 +03:00
  • 5336c22550 test: validate all benchmark scenarios and stress runs for all DI adapters Sergey Penkovsky 2025-08-07 14:18:16 +03:00
  • 56bdb3946e refactor: full generic DIAdapter workflow & universalRegistration abstraction Sergey Penkovsky 2025-08-07 14:11:29 +03:00
  • 54446868e4 refactor: unify DIAdapter with generics, ensure type-safety & scalability in benchmark_di Sergey Penkovsky 2025-08-07 13:44:39 +03:00
  • 590b876cf4 feat: add Riverpod adapter, async-chain support via FutureProvider, full DI CLI/bench integration, benchmarking, ascii performance graphs in markdown Sergey Penkovsky 2025-08-07 13:12:56 +03:00
  • f7a7ea4384 feat: full di benchmarks report (en/ru) + get_it scope+override support fix; fresh results for all scenarios and settings Sergey Penkovsky 2025-08-07 12:11:16 +03:00
  • 6b6564f8c3 refactor: rename benchmark_cherrypick to benchmark_di, update paths, pubspec, imports, and documentation Sergey Penkovsky 2025-08-07 10:34:50 +03:00
  • da79f1e546 docs: update README.md and README.ru.md for universal DI benchmarks, scenarios, CLI options, and architecture diagram Sergey Penkovsky 2025-08-07 10:16:14 +03:00
  • 64f33b20a7 fix: universal benchmarks and DI registration; proper named binding; robust override support for cherrypick and get_it; improved CLI args Sergey Penkovsky 2025-08-07 09:15:26 +03:00
  • d523a5f261 refactor: simplify DIAdapter interface with a single registration callback; update benchmarks and cherrypick adapter accordingly Sergey Penkovsky 2025-08-07 08:28:23 +03:00
  • b72dec9944 Обновлен README.ru.md: новые современные сценарии, параметры CLI, форматы отчётов, инструкция по расширению Sergey Penkovsky 2025-08-06 23:22:05 +03:00
  • 352442e52d Update README.md with current benchmark scenarios, CLI options, and report formats (EN) Sergey Penkovsky 2025-08-06 23:19:37 +03:00
  • 134fc5207a Add English documentation comments to all benchmark_cherrypick source files (adapters, scenarios, CLI, reporters, runner) Sergey Penkovsky 2025-08-06 23:15:28 +03:00
  • 01d82e1cd3 feat(report): add legend to MarkdownReport output with explanation of columns Sergey Penkovsky 2025-08-06 22:53:33 +03:00
  • 1e6375f5ae refactor(report): round numeric values to 2 decimal places in MarkdownReport output Sergey Penkovsky 2025-08-06 22:41:08 +03:00
  • 3da71674d4 chore: fix current status, all implemented features and refactors Sergey Penkovsky 2025-08-06 22:35:49 +03:00
  • ea39b9d0e1 feat(report): align MarkdownReport columns for readable ASCII/markdown output Sergey Penkovsky 2025-08-06 22:31:41 +03:00
  • 09ed186544 refactor(cli): modularize CLI — extract parser, runner, report and main logic into dedicated files Sergey Penkovsky 2025-08-06 22:19:13 +03:00
  • 3ce21f55e4 refactor(report): extract ReportGenerator abstraction for pretty/csv/json; simplify report rendering in main Sergey Penkovsky 2025-08-06 22:02:41 +03:00
  • bae940f374 refactor(main): extract BenchmarkRunner and BenchmarkResult, simplify main loop, unify sync/async cases Sergey Penkovsky 2025-08-06 21:53:13 +03:00
  • 0fc1907173 chore(cleanup): remove unused legacy benchmarks and scenario files Sergey Penkovsky 2025-08-06 18:36:11 +03:00
  • 4d41266135 refactor(benchmark): clean up UniversalChainBenchmark, remove async logic, keep only sync scenario logic Sergey Penkovsky 2025-08-06 18:26:05 +03:00
  • 3a75bd5b28 feat(benchmark): add UniversalScenario enum and extend UniversalChainModule to support chain, register, named, override, async scenarios Sergey Penkovsky 2025-08-06 17:01:55 +03:00
  • b27a7df161 refactor(structure): move benchmarks, scenarios, adapters, utils to dedicated folders; update imports/project layout Sergey Penkovsky 2025-08-06 16:21:31 +03:00
  • 553dbb6539 refactor(benchmarks): introduce DIAdapter abstraction, migrate all scenarios to use DIAdapter Sergey Penkovsky 2025-08-06 14:44:12 +03:00
  • 18905a068d docs(benchmarks): document memory_diff_kb, delta_peak_kb, peak_rss_kb in README files (EN+RU) Sergey Penkovsky 2025-08-06 14:07:44 +03:00
  • 6928daa50e docs(benchmarks): update README files with stability options, repeat/warmup params, stat fields, and usage examples Sergey Penkovsky 2025-08-06 13:48:51 +03:00
  • 7f488f873e docs(benchmarks): update README files with new CLI, matrix run, output formats, and usage instructions (EN+RU) Sergey Penkovsky 2025-08-06 13:35:39 +03:00
  • 926bbf15f4 refactor(benchmarks): unify benchmark structure, enable CLI parameterization, run matrix, add CSV/JSON/pretty output Sergey Penkovsky 2025-08-06 13:29:23 +03:00
  • a5ef0dc437 impr: BENCHMARK - complex benchmark improvements. yarashevich_kv 2025-08-06 09:41:17 +03:00
  • 05cfca5977 docs(perf): clarify Map-based resolver optimization applies since v3.0.0 in all docs Sergey Penkovsky 2025-08-06 08:29:00 +03:00
  • 52a55219ab docs: update EN/RU quick start and tutorial with Fast Map-based lookup section; clarify performance benefit in README Sergey Penkovsky 2025-08-05 19:41:24 +03:00
  • ffff33c744 perf(scope): speed up dependency lookup with Map-based binding resolver index Sergey Penkovsky 2025-08-05 17:20:35 +03:00
  • a4573ce8ef Add package topics to all pubspec.yaml files Sergey Penkovsky 2025-08-05 06:46:26 +03:00
  • 62868477fb chore(release): publish packages cherrypick_flutter-v1.1.3-dev.2 cherrypick-v3.0.0-dev.2 Sergey Penkovsky 2025-08-04 08:54:37 +03:00
  • a889cf0d40 Resolved all Dart analyzer warnings across multiple files Sergey Penkovsky 2025-08-01 11:20:23 +03:00
  • 123ed6ce02 Merge pull request #13 from pese-git/impr/binding_resolver Sergey Penkovsky 2025-08-01 11:01:30 +03:00
  • 7cc0743d94 Update benchmark results in README.ru.md with latest timings (RU version) Sergey Penkovsky 2025-08-01 08:48:27 +03:00
  • 63dae76ea9 Update benchmark results in README.md with latest timings Sergey Penkovsky 2025-08-01 08:47:55 +03:00
  • a74c34876d feat(binding): add deprecated proxy async methods for backward compatibility and highlight transition to modern API Sergey Penkovsky 2025-07-31 14:26:59 +03:00
  • 9f0a8a84aa impr: fix after rebase. yarashevich_kv 2025-07-29 09:39:35 +03:00
  • 2cba7f2675 impr: add binding resolver class. yarashevich_kv 2025-05-19 21:02:33 +03:00
  • 1682ed9c08 Update benchmarks, lock files, and related documentation Sergey Penkovsky 2025-08-01 08:40:10 +03:00
  • 882ee92000 Update benchmark results in README.md with fresh timings Sergey Penkovsky 2025-08-01 08:39:12 +03:00
  • 9a3576f76d chore(release): publish packages Sergey Penkovsky 2025-07-30 13:17:19 +03:00
  • f7cc86ea66 docs: add quick guide for circular dependency detection to README Sergey Penkovsky 2025-07-30 13:16:23 +03:00
  • 1c8e38b0c9 chore(release): publish packages Sergey Penkovsky 2025-07-30 13:06:09 +03:00
  • d4af82ba01 Remove dead code: _createDependencyKey (no longer used, cycle detection not affected) Sergey Penkovsky 2025-07-30 08:17:49 +03:00
  • 5630efccfe feat: enable CherryPick cycle detection in debug mode and use safe root scope Sergey Penkovsky 2025-07-29 17:16:22 +03:00
  • d63d52b817 feat: implement comprehensive circular dependency detection system Sergey Penkovsky 2025-06-13 16:50:27 +03:00
  • 724dc9b3b5 Update lock files for dependency consistency Sergey Penkovsky 2025-08-01 08:30:53 +03:00
  • 6bdb9472b5 Update melos.yaml: add benchmark_cherrypick to managed packages Sergey Penkovsky 2025-08-01 08:30:12 +03:00
  • 23683119c2 Add complex DI benchmarks, main runner, and English README with summarized results for cherrypick core Sergey Penkovsky 2025-08-01 08:26:33 +03:00
  • 9baf6f8d33 chore(release): publish packages cherrypick_flutter-v1.1.3-dev.1 cherrypick-v3.0.0-dev.1 Sergey Penkovsky 2025-07-30 13:17:19 +03:00
  • 4e97a39501 docs: add quick guide for circular dependency detection to README Sergey Penkovsky 2025-07-30 13:16:23 +03:00
  • 58daf668c5 chore(release): publish packages cherrypick_flutter-v1.1.3-dev.0 cherrypick-v3.0.0-dev.0 Sergey Penkovsky 2025-07-30 13:06:09 +03:00
  • b57ca797e1 Merge pull request #12 from pese-git/cycle-detector Sergey Penkovsky 2025-07-30 12:37:40 +03:00
  • 38fd356ec3 Remove dead code: _createDependencyKey (no longer used, cycle detection not affected) Sergey Penkovsky 2025-07-30 08:17:49 +03:00
  • 8fd18df811 feat: enable CherryPick cycle detection in debug mode and use safe root scope Sergey Penkovsky 2025-07-29 17:16:22 +03:00
  • 06c0dd60c0 feat: implement comprehensive circular dependency detection system Sergey Penkovsky 2025-06-13 16:50:27 +03:00
  • 2c1f9d5969 doc: update manual Sergey Penkovsky 2025-07-29 08:10:08 +03:00
  • e609c44f90 fix: update deps Sergey Penkovsky 2025-07-28 12:53:47 +03:00
  • eb8cc1f566 update gitignore Sergey Penkovsky 2025-07-28 12:53:27 +03:00
  • 8fcb61ef3e chore(release): publish packages cherrypick_generator-v1.1.0 cherrypick_flutter-v1.1.2 cherrypick_annotations-v1.1.0 cherrypick-v2.2.0 Sergey Penkovsky 2025-07-28 12:34:54 +03:00
  • 69e166644a fix(tests): update expected outputs in generator tests to match new formatting Sergey Penkovsky 2025-07-25 12:44:25 +03:00
  • feb7258302 chore(generator): improve annotation validation, unify async type handling, and refactor BindSpec creation Sergey Penkovsky 2025-07-25 11:58:56 +03:00
  • 76c77b1f6d feat(cli): pretty build.yaml generation, full English docs, robust init command\n\n- build.yaml is always formatted\n- CLI help and output in English\n- README with usage and examples\n- Custom output dir and build.yaml supported\n- Safe update of existing configs\n- json2yaml for pretty YAML output cli Sergey Penkovsky 2025-07-16 18:05:48 +03:00