As a part of Lift 4 I think we should consider removing some things that haven't been well maintained in quite a while. Or things that maybe don't provide as much differentiating value as they once did. Specifically I have my eye on the following:
- core/json-scalaz7 - I don't know about others but I don't feel that I have a good enough grip on scalaz to continue to maintain a bridge here.
- core/json - The json4s project forked from lift/json awhile ago. I think we should seriously ask whether or not maintaining our own JSON library is still worth it, or if we should consider leaning on json4s.
- persistence/* - This one I expect to be a bit controversial, but nonetheless - there are lots of good persistence libraries in the wider ecosystem. If you're not using a sql-ish or mongo database, odds are you're already using client libraries specific to whatever thing you're using under the hood (Dynamo, Spanner, etc). I think I would make the argument that our time is better spent documenting how to use the wider ecosystem of options well with Lift, not maintaining our own persistence libraries.
I think webkit, actors, common, and util continue to be the places where we really can shine, and my inclination is to prune some of the source tree in its current form to allow us more time to focus on making those really good.
Of course, I expect much discussion on this topic. :-)
Looking forward to thoughts here.
Matt