Andrea and I talked this morning about where we are with 6.0 development
and planning the next Alpha as well as moving the work branch back
upstream. Next week we will see how far we are on the tasks we are
currently working on. The triggers for the release/move are:
1. WRT inheritance, SINGLE_TABLE and TABLE_PER_CLASS are implemented,
though TABLE_PER_CLASS is somewhat hacked. Either add support for JOINED,
or finish up TABLE_PER_CLASS support
2. Support for all "model part" mappings should be implemented in the
mapping model (though its ok for ANY to slide). Currently only to-one and
ANY-mappings are the only ones missing and Koen has started working on
to-ones already.
3. Conversion of LoadPlans to use the new mapping model. LoadPlans are
what gets used for any direct loading of an entity or collection via
loading, subsequent fetching, etc. This would unify both Query and loading
to use the SQL AST approach. At that point the walking model that
LoadPlans currently use would no longer be used at all internally so we
should discuss removal of those contracts. That may need to simply be
deprecated for now and removed later, but at the least we should offer a
way to enable/disable the actual generation of that model for performance
(boot-time time-based performance as well as runtime performance by
reducing memory usage). Another option would be to try to have the mapping
model also implement the walking model contracts; no idea yet how feasible
that is.
Thoughts?