I think I have.

The old abstract base method is still there but now as a protected method that just calls the new abstract method (with projections set to null).

You can find the old abstract method below with the comment
"// Old abstract method signature"

I think I kept all old methods and just added a new abstract base method that takes the projection parameter. All old methods calls this new abstract method.