We realize that migrating to the wonderful upcoming version 3 is a difficult path. So, we wanna publish a version 2.1 to mitigate these issues.
The main issues that we faced during our migration were:
some classes use models, some don't, sometimes the presenter (in MVP) is used as a model. It makes it difficult to apply the same fixes to all activities
sometimes the models are used as navigation models, sometimes there are also used as state holders, using icepick for instance. In DH3 we would love to separate the concerns, but it's hard to migrate, quite error prone and it will require separate pojos for states and navigation models, and a way to copy them field by field cleanly, which is not that easy. The process is also very error prone and errors will appear at runtime.
We want to improve DH2, by enabling the following features:
support of inheritance across modules:
a model can extend from another model located in a different module
an activity can extend from another activity located in a different module
the model of an @HensonNavigable activity can be located in a different module than the activity.
Basically this will provide better support for modularization, and also lay the foundation of a better incremental annotation processing...
The main version with DH3 will be:
DH3 will support navigation cycles between modules: by separating the navigation apis in different modules, we will fix this issue
DH3 will introduce a gradle plugin to generate the HensonNavigator class on a source basis instead of the target basis generation of Henson
DH3 will probably support @InjectExtra annotations + its renamed @BindExtra and @DartModel, to ease migration
We realize that migrating to the wonderful upcoming version 3 is a difficult path. So, we wanna publish a version 2.1 to mitigate these issues.
The main issues that we faced during our migration were:
We want to improve DH2, by enabling the following features:
@HensonNavigable
activity can be located in a different module than the activity.Basically this will provide better support for modularization, and also lay the foundation of a better incremental annotation processing...
The main version with DH3 will be: