From fbaa7f892811a71ac4d97800b30eb159adb4d22c Mon Sep 17 00:00:00 2001 From: Mark Date: Tue, 14 Jul 2026 13:01:59 +0000 Subject: [PATCH] Add examples and prepare for a 0.9.1 release --- README.md | 8 ++++---- package/inject_compile/CHANGELOG.md | 3 +++ package/inject_compile/README.md | 10 ++++++++-- package/inject_compile/example/example.md | 11 +++++++++++ package/inject_compile/pubspec.yaml | 10 ++++++++-- package/inject_compile_generator/CHANGELOG.md | 3 +++ package/inject_compile_generator/README.md | 6 ++++++ package/inject_compile_generator/example/example.md | 11 +++++++++++ package/inject_compile_generator/pubspec.yaml | 10 ++++++++-- 9 files changed, 62 insertions(+), 10 deletions(-) create mode 100644 package/inject_compile/example/example.md create mode 100644 package/inject_compile_generator/example/example.md diff --git a/README.md b/README.md index 7346381..b631543 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ -# Modernized Compile-Time Dependency Injection for Dart & Flutter +# Compile-Time Dependency Injection for Dart & Flutter A compile-time, Dagger-inspired dependency injection (DI) framework for Dart and Flutter. -This repository contains a modernized port of the original [inject.dart](https://github.com/google/inject.dart/) package -from Google, updated to support modern Dart, sound null safety, the latest -analyzer, and modern build runner systems. +This repository contains a port of the original [inject.dart](https://github.com/google/inject.dart/) package +from Google, updated to support Dart 3, sound null safety, the latest +analyzer, and modern build tooling. ## Packages diff --git a/package/inject_compile/CHANGELOG.md b/package/inject_compile/CHANGELOG.md index 0e0b637..dddcb02 100644 --- a/package/inject_compile/CHANGELOG.md +++ b/package/inject_compile/CHANGELOG.md @@ -1,3 +1,6 @@ +## 0.9.1 +- Add example/example.md file + ## 0.9.0 - Initial version. diff --git a/package/inject_compile/README.md b/package/inject_compile/README.md index 607ffca..ed53a77 100644 --- a/package/inject_compile/README.md +++ b/package/inject_compile/README.md @@ -2,10 +2,10 @@ This package provides the annotations used to declare a compile-time dependency injection (DI) graph. It is a modern, sound null-safe port of the original -`inject.dart` from Google. +[inject.dart](https://github.com/google/inject.dart/) from Google. Since this library generates code at compile time, it does not rely on runtime -reflection (such as `dart:mirrors`). This ensures maximum performance and +reflection or any kind of dynamic lookup. This ensures maximum performance and minimal build sizes for Flutter and standalone Dart applications. ## Getting Started @@ -64,3 +64,9 @@ Differentiates multiple bindings of the same type by associating a symbol * To run the generator, refer to the `inject_compile_generator` package page. * For complete samples, see the workspace examples. + +## Acknowledgement + +Please note that all of the original code in [inject.dart](https://github.com/google/inject.dart/) +which these packages is heavily based on is Copyright by Google and originally licenced under a +MIT Licence which has been kept. Special thanks to Matan Lurey who was the primary original author. \ No newline at end of file diff --git a/package/inject_compile/example/example.md b/package/inject_compile/example/example.md new file mode 100644 index 0000000..71dafd6 --- /dev/null +++ b/package/inject_compile/example/example.md @@ -0,0 +1,11 @@ +## Examples + +Explore the `example/` directory on Github for sample projects: + +* [`example/coffee`](https://github.com/dropbear-software/inject_compile/tree/main/example/coffee): A basic command-line coffee + shop simulation (the classic Dagger example). +* [`example/train`](https://github.com/dropbear-software/inject_compile/tree/main/example/train): An example demonstrating multi-module + composition and asynchronous injection (`@asynchronous`). +* [`example/clean_architecture`](https://github.com/dropbear-software/inject_compile/tree/main/example/clean_architecture): A complete + command-line notes application demonstrating clean architecture (Domain, + Data, and Presentation layers) integrated with compile-time DI. \ No newline at end of file diff --git a/package/inject_compile/pubspec.yaml b/package/inject_compile/pubspec.yaml index 0d4fa0e..0caad10 100644 --- a/package/inject_compile/pubspec.yaml +++ b/package/inject_compile/pubspec.yaml @@ -1,9 +1,15 @@ name: inject_compile -description: Compile-time dependency injection for Dart -version: 0.9.0 +description: Compile-Time Dependency Injection for Dart & Flutter +version: 0.9.1 homepage: https://github.com/dropbear-software/inject_compile/tree/main/package/inject_compile repository: https://github.com/dropbear-software/inject_compile/tree/main/package/inject_compile issue_tracker: https://github.com/dropbear-software/inject_compile/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Ainject_compile +topics: + - dependency-injection + - di + - dependency-management + - dependency-injector + - build-runner environment: sdk: ^3.12.2 diff --git a/package/inject_compile_generator/CHANGELOG.md b/package/inject_compile_generator/CHANGELOG.md index 0e0b637..dddcb02 100644 --- a/package/inject_compile_generator/CHANGELOG.md +++ b/package/inject_compile_generator/CHANGELOG.md @@ -1,3 +1,6 @@ +## 0.9.1 +- Add example/example.md file + ## 0.9.0 - Initial version. diff --git a/package/inject_compile_generator/README.md b/package/inject_compile_generator/README.md index 8218c6c..18d77d0 100644 --- a/package/inject_compile_generator/README.md +++ b/package/inject_compile_generator/README.md @@ -52,3 +52,9 @@ runtime exceptions. * To learn how to define your object graph, visit the `inject_compile` annotations library. * For complete samples, see the workspace examples. + +## Acknowledgement + +Please note that all of the original code in [inject.dart](https://github.com/google/inject.dart/) +which these packages is heavily based on is Copyright by Google and originally licenced under a +MIT Licence which has been kept. Special thanks to Matan Lurey who was the primary original author. \ No newline at end of file diff --git a/package/inject_compile_generator/example/example.md b/package/inject_compile_generator/example/example.md new file mode 100644 index 0000000..71dafd6 --- /dev/null +++ b/package/inject_compile_generator/example/example.md @@ -0,0 +1,11 @@ +## Examples + +Explore the `example/` directory on Github for sample projects: + +* [`example/coffee`](https://github.com/dropbear-software/inject_compile/tree/main/example/coffee): A basic command-line coffee + shop simulation (the classic Dagger example). +* [`example/train`](https://github.com/dropbear-software/inject_compile/tree/main/example/train): An example demonstrating multi-module + composition and asynchronous injection (`@asynchronous`). +* [`example/clean_architecture`](https://github.com/dropbear-software/inject_compile/tree/main/example/clean_architecture): A complete + command-line notes application demonstrating clean architecture (Domain, + Data, and Presentation layers) integrated with compile-time DI. \ No newline at end of file diff --git a/package/inject_compile_generator/pubspec.yaml b/package/inject_compile_generator/pubspec.yaml index 212823c..29e2219 100644 --- a/package/inject_compile_generator/pubspec.yaml +++ b/package/inject_compile_generator/pubspec.yaml @@ -1,9 +1,15 @@ name: inject_compile_generator -description: Dev-time dependency for package:inject. -version: 0.9.0 +description: The dev dependency for package:inject_compile that enables compile time dependency injection. +version: 0.9.1 homepage: https://github.com/dropbear-software/inject_compile/tree/main/package/inject_compile_generator repository: https://github.com/dropbear-software/inject_compile/tree/main/package/inject_compile_generator issue_tracker: https://github.com/dropbear-software/inject_compile/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Ainject_compile_generator +topics: + - dependency-injection + - di + - dependency-management + - dependency-injector + - build-runner environment: sdk: ^3.12.2