The changes listed in the old PR are pretty big compared to the changes I made, and there are no tests there to motivate the changes so it’s a bit hard to understand if my attempt to implement is just hopelessly naive or if the previous PR was over engineering or feature creeping.
Maybe someone can come up with some nasty template test cases?
Reading the old PR it seems there’s at least some feature creep. I think my proposal, being opt in, will not have some of the issues that some of the old PR tried to handle. I also think we can do this in two steps:
implement the basic thing I did above
talk about the option and have people try it but do NOT turn it on for createproject
if no problems are found, turn it on for createproject
deprecate the old thing
(very much later) hard switch and remove the old code