1. f9327b9 Add AbstractMapFactory and AbstractMapProducer to consolidate some of the implementations of framework instances of map binding. by ronshapiro · 6 years ago
  2. 56e14bf Split ComponentDescriptorFactory.forTypeElement() into three methods: one for root components, one for subcomponents, and one for fictional components made from modules for module binding validation. by dpb · 6 years ago
  3. c74e5dc Optimize to BindingGraph.componentRequirements() by passing a Stream directly instead of materializing to an intermediate ImmutableSet<ContributionBinding> that is just used to get a new stream. by ronshapiro · 6 years ago
  4. 90331fc Remove @VisibleForTesting from DaggerElements's constructor since it's used from JavacPluginModule. by dpb · 6 years ago
  5. 6b01098 Extract ComponentDescriptor.Factory to its own file. by dpb · 6 years ago
  6. 6956bda Replace annotation_processors with plugins am: 8b7f57bb50 am: ceae3bc9ee by Colin Cross · 6 years ago
  7. 4401b91 Replace annotation_processors with plugins am: 8b7f57bb50 am: ceae3bc9ee by Colin Cross · 6 years ago
  8. ceae3bc Replace annotation_processors with plugins am: 8b7f57bb50 by Colin Cross · 6 years ago
  9. 9b4a094 Cache BindingGraphFactory.Resolver.keysMatchingRequest() by ronshapiro · 6 years ago
  10. eeec5fd Switch a forEach and ::add to addAll() by ronshapiro · 6 years ago
  11. 80b847c Correctly cast expressions that are derived from framework instances that are returned from component methods in AOT. by ronshapiro · 6 years ago
  12. 8b7f57b Replace annotation_processors with plugins by Colin Cross · 6 years ago
  13. 86cb8d9 Remove ComponentDescriptor.kind(). Replace its uses with methods on ComponentDescriptor. by dpb · 6 years ago
  14. 6caef06 Cache ModuleDescriptor instances within processing rounds by ronshapiro · 6 years ago
  15. 71c471c Don't filter @Reusable @Inject bindings from binding graphs in AOT by ronshapiro · 6 years ago
  16. 08d53d8 Use shorter names for the proxy methods on factories. by ronshapiro · 6 years ago
  17. f2c9ceb Replace static methods with a class representing @Module and @ProducerModule annotations. by dpb · 6 years ago
  18. 2cbea7f Change ComponentValidationReport.referencedSubcomponents() to an ImmutableSet. by dpb · 6 years ago
  19. fa714e9 For non-abstract modules that A) are required by a component, B) can be instantiated by Dagger, and C) have no corresponding setter in the component's builder, do not add a field to the builder for the module. by cgdecker · 6 years ago
  20. e0e47f1 Fix the @GenerationOptions retrieval and enable a build_test for the dagger.functional.aot.fastinit libraries so that we catch this in presubmit. by ronshapiro · 6 years ago
  21. 13f0cbe Explicitly tell BindingGraphConverter whether it's creating a full binding graph, or else it will prune unreachable bindings. by dpb · 6 years ago
  22. e6215df Fix coverage runs by ronshapiro · 6 years ago
  23. 4612457 Propagate compiler options related to generation from a base implementation through to all of its future subclass implementations by ronshapiro · 6 years ago
  24. 6000d48 A few more minor changes to ComponentCreatorImplementation(Factory) and ComponentImplementation in preparation for factories. by cgdecker · 6 years ago
  25. fed0de5 Somewhat hacky fix for issue with missing paramters in AOTS configureInitialization/initialize methods. by cgdecker · 6 years ago
  26. b6b9dca Change isPartialBindingGraph() to look at the root component. by dpb · 6 years ago
  27. 0be7193 Make component requirement fields come first in a component. by cgdecker · 6 years ago
  28. fe232f5 Simplify ComponentCreatorImplementationFactory.maybeReturnThis() by ronshapiro · 6 years ago
  29. 88023c4 Make component requirement fields in concrete components final. by cgdecker · 6 years ago
  30. 3b61bfe Fix a bug where two component methods for the same binding request are represented by a modifiable binding. Before this fix, only one would be registered modifiable and the other one would be forgotten and never reimplemented. by ronshapiro · 6 years ago
  31. 19fe370 Ban repeated modules that have scoped bindings by ronshapiro · 6 years ago
  32. d941284 Move the common "if validation plugins return no errors and external plugins return no errors" logic into BindingGraphValidator. BindingGraphPlugins is now just for initialization. by dpb · 6 years ago
  33. 01f6612 Replace ComponentDescriptor with TypeElement in ResolvedBindings. No users of ResolvedBindings care about anything other than the type of the component. by dpb · 6 years ago
  34. 9a1036f Simplify ComponentCreatorImplementationFactory a bit further by changing how setter methods are created. by cgdecker · 6 years ago
  35. adba5c4 Fold BindingMethodImplementation into MethodBindingExpression, and instead extract the decision making of whether+how to scope into a MethodImplementationStrategy. by ronshapiro · 6 years ago
  36. 3071be1 When casting dependency expressions that are used as arguments of other expressions, update the logic to consider the type erasure model of ahead-of-time subcomponents. by ronshapiro · 6 years ago
  37. a4914c6 Deprecated internal.Producers.immediate(Failed)Producer and redirect to the non-internal version instead. by ronshapiro · 6 years ago
  38. bf79cd3 No longer consider @Produces methods and @ProductionScope bindings as modifiable, since they're no longer allowed to be redefined across component implementations. by ronshapiro · 6 years ago
  39. c60f0b8 Put builder setter methods before the build() method. by cgdecker · 6 years ago
  40. 9cedba5 Refactor ComponentCreatorImplementationFactory a bit, to use different subtypes depending on whether it's implementing a user-defined creator type or generating an automagical Builder for a root component. by cgdecker · 6 years ago
  41. 174a7a9 Simplify ComponentDescriptor.hashCode() and memoize it by ronshapiro · 6 years ago
  42. 687370f Delete BindingGraphTraverser and DependencyTrace, which are unused. by dpb · 6 years ago
  43. 4520abd Change fields for abstract component builders to be protected rather than public since they now only need to be accessible from subclasses. by cgdecker · 6 years ago
  44. 59a6535 Change component constructors and initialization methods to no longer take a single Builder argument when a Builder for the component is present, but rather to take all of their requirements as parameters in all cases. by cgdecker · 6 years ago
  45. bab8630 Automated rollback of 4695ff5115ece15f92b67c5640594f8c624e451a by jgc · 6 years ago
  46. edd966c When doing module-binding validation, resolve all bindings in all modules for included subcomponents. by dpb · 6 years ago
  47. 50d7010 Create dagger.producers.Producers.immediate(Failed)Producer, so that users don't have to refer to the internal.Producers versions of those methods (or think that they aren't meant to be used, which they are. by ronshapiro · 6 years ago
  48. e28d535 Remove stale TODO by ronshapiro · 6 years ago
  49. 4695ff5 Ban repeated modules that have scoped bindings by ronshapiro · 6 years ago
  50. 14e8727 Mandate that we only ever use DaggerTypes/DaggerElements. by ronshapiro · 6 years ago
  51. 16543f3 Replace the @Unconfigured-to-unqualified ComponentImplementation bindings with an explicit step early in ComponentImplementationBuilder. by dpb · 6 years ago
  52. 96fcce8 Undo the specific types optimization now that the javac imports regression has been fixed upstream by ronshapiro · 6 years ago
  53. ecd8301 Decouple module binding graphs' resolved keys from their actual entry points. by dpb · 6 years ago
  54. af8a6af Remove experimentalAndroidMode2 since we don't have any plans to investigate this mode in near-midterm future. It's simple enough to revert if we ever want to bring it back. by ronshapiro · 6 years ago
  55. e122a56 Pull *ComponentImplementationBuilder out of ComponentImplementationFactory, now that they are static classes. by dpb · 6 years ago
  56. 7f5500f Report duplicate bindings even if they have no incoming dependency requests. This is in preparation for module binding validation, where there may not be any incoming dependency requests for a binding. by dpb · 6 years ago
  57. f0a5393 Fix typo. by dpb · 6 years ago
  58. 68b2153 Disallow repeated @ProducerModules across components in the same ancestry by ronshapiro · 6 years ago
  59. ab9cdbc When checking for a qualifier on an element, check to make sure the element is superficially valid. by ronshapiro · 6 years ago
  60. 0ed1888 Use better names in KeyVariableNamer if it's a key for multibinding contribution. Instead of constructing a possibly unreadable name from the key type, use the binding element name instead. by ronshapiro · 6 years ago
  61. 06fa4a2 Use "root" instead of "top-level" to mean not-a-subcomponent. "top-level" should refer to unnested implementations. by dpb · 6 years ago
  62. ae5b407 Internal change by dstrasburg · 6 years ago
  63. 5e96ced Generate a proxy method for module constructors that are not public, and use them in cases where the generated component cannot reference the constructor. by ronshapiro · 6 years ago
  64. 9cb5540 Remove dagger.experimentalAndroidMode flag name. `dagger.fastInit` is now the only recognized name for the flag. by ronshapiro · 6 years ago
  65. 8373a3f Fix a weird bug where the base builder implementation used one set of disambiguated names, and the final builder implementation used another set of names. by ronshapiro · 6 years ago
  66. 61bdbb3 Factor out a type from InjectionMethods that stores TypeMirrors instead of MethodSpec/TypeNames by ronshapiro · 6 years ago
  67. 97fce1e Begin to use the self-compiled Dagger within the :writing parts of the processor by ronshapiro · 6 years ago
  68. 6fe9e81 Fix framework initialization cycles in modifiable binding expressions by ronshapiro · 6 years ago
  69. f59c53e Implement modifiable module methods for modules who's bindings have been pruned from the binding graph by ronshapiro · 6 years ago
  70. 40c9a99 Use the http_archive in @bazel_tools. The default version is going away by ronshapiro · 6 years ago
  71. 11a3b14 Use Dagger to inject more of the Kythe plugin. Generalize the module beyond Kythe. by dpb · 6 years ago
  72. 3a46e07 Run binding graph validation on subcomponents that are being processed in ahead-of-time subcomponents mode by ronshapiro · 6 years ago
  73. 924b0b0 Stop treating bindings with module instance state as modifiable, and instead consider the module itself as modifiable. by ronshapiro · 6 years ago
  74. dab3097 Run hjar testing for all functional test code by ronshapiro · 6 years ago
  75. f0e3578 Automated rollback of 15b3981b81add58527abc74b6abca8aeeae4c468 by dpb · 6 years ago
  76. 83f613c Report duplicate bindings even if they have no incoming dependency requests. This is in preparation for module binding validation, where there may not be any incoming dependency requests for a binding. by dpb · 6 years ago
  77. 8012ab5 Store a binding graph's subgraphs as a list instead of a set by ronshapiro · 6 years ago
  78. fff65e3 Make @ProductionComponent have runtime retention so tools can interpret it like all of the other component annotations by ronshapiro · 6 years ago
  79. 3b5c7a4 When detecting a child subcomponent's superclass implementation, don't assume that that it must be nested directly in the current component's superclass implementation. The child subcomponent builder may have been a pruned binding there, causing no generation of the subcomponent to occur. by ronshapiro · 6 years ago
  80. 21c3917 Update version of bazel-common by nbeck · 6 years ago
  81. 177525c Create a few more Enum.isFoo() methods by ronshapiro · 6 years ago
  82. 7534b90 Ignore all @Inject-constructed bindings when checking for incompatible scopes when validating module binding graphs. by dpb · 6 years ago
  83. c7c432a Extract ComponentDescriptor.BuilderSpec to a new top-level type, ComponentCreatorDescriptor, and change how it maps requirements to builder methods. by cgdecker · 6 years ago
  84. fd7f1b3 Don't reuse the same method name from a previously generated modifiable binding method. by ronshapiro · 6 years ago
  85. a70d079 Fix a bug where the contribution type of a @Binds method with a missing dependency was not taken into consideration by ronshapiro · 6 years ago
  86. 0f62737 When pruning framework instances, return an actual instance instead of throwing an exception. If the modifiable method is called during the initialization of a pruned binding, there must be a valid return value even thought it will never be used. by ronshapiro · 6 years ago
  87. f8e7869 Simplify the mechanism to set a delegate factory by ronshapiro · 6 years ago
  88. 186de81 Run SPI plugins for modules when dagger.moduleBindingValidation is enabled. by bcorso · 6 years ago
  89. 024755f Use delegates for modified producerFromProvider expressions too by ronshapiro · 6 years ago
  90. 14a1a94 When modifiable bindings are pruned, don't try/bother reimplementing them and instead let them be dangling methods that are never called. by ronshapiro · 6 years ago
  91. 94e7c52 Update to Bazel 0.19.2 by ronshapiro · 6 years ago
  92. 5177a06 Move ComponentDescriptor.Kind and ModuleDescriptor.Kind to top-level types, add some Javadoc for them, and make a few changes to code that uses them (or the annotations associated with them) to reduce direct hardcoded use of the enum values or annotation classes. by cgdecker · 6 years ago
  93. aeec8dc Add a TypeMirror property to ModifiableBindingMethod that records the return type of the modifiable method. by ronshapiro · 6 years ago
  94. 88666c2 Don't recancel producers that have already been cancelled in a superclass implementation by ronshapiro · 6 years ago
  95. 7b1b232 Fixes a bug where @Binds methods with a missing dependency were not properly overridden in later components by ronshapiro · 6 years ago
  96. 2e4a229 Check for accessibility for casting by ronshapiro · 6 years ago
  97. 325b516 Add module-level validation. When -Adagger.moduleBindingValidation=ERROR or =WARNING is set, then each module is processed as a kind of component (without generating any code) in order to validate the bindings installed by it and all included modules. Any binding graph errors, such as duplicate bindngs (but not including missing bindings), will be reported as errors or warnings depending on the option. SPI plugins will also run on those module-level binding graphs. by dpb · 6 years ago
  98. c940d6d Don't recancel producers that have already been cancelled in a superclass implementation by ronshapiro · 6 years ago
  99. 9c74c2c Always implement requests for Lazy<T> and Provider<Lazy<T>> in ahead-of-time subcomponents mode by ronshapiro · 6 years ago
  100. f0b5d1c Implement most of a component builder with the base component implementation in ahead-of-time subcomponents by ronshapiro · 6 years ago