So far I think the patches are excellent. The use of DBIx::Class::ResultClass::HashRefInflator is a great way to move to using DBIx::Class in our modules without the need to rework all the calling code to make use of dbic objects.
For long term goals I see the following steps leading us to the most efficient use of dbic:
1) Replace all DBI deletes with DBIC
2) Replace all DBI updates with DBIC
3) Replace all DBI selects with DBIC using HashRefInflator
4) Eliminate simple module subs that do CRUD, switch to using DBIC from scripts
5) Move logic out of our perl modules and into our Result classes, and create custom ResultSet classes for operations affecting multiple rows
This course of action will lead to much more DRY code, and mean fewer bugs in the long run. Mandatory unit tests are also a given.
In summary, keep up the good work Yohann! Feel free to contact me personally for any assistance I may provide you!
Kyle