Thanks everyone. Since we don't really have much of a consensus on this, perhaps we can take some middle ground here?
I certainly agree that we want people to move away from generators in general, though without finished solutions for some of the tricks generators can do, this will be tricky. Additionally, APT is not exactly a terribly user-friendly option - while I have managed to port a very small GWT generator, I wasn't enjoying myself, and am unsure how a larger project would be addressed and sanity retained. I have heard great things about JavaPoet, but have not yet had the time to learn enough of it to make another attempt.
Neither, apparently, has anyone else - AutoBeans/RequestFactionr, I18n, UiBinder, ClientBundle, and even the base UserAgent wiring are all generator-based - in fact, my
SafeHtmlTemplates generator is the only one that I'm aware of that has been ported, at least publicly. If weren't not prepared to set an example on how to generally solve this, I'm unsure how strong of a position we can hold.
Along the same lines, I agree that official work toward generators doesn't make any sense, and that instead work generally should be directed toward general solutions to our property/permutation and linker problems (features which will vanish with APT and J2CL as far as I can tell, with nothing yet set up to replace them). I'll generally agree that we should stop updating GWT-provided generators, though we certainly haven't yet stopped - over the past 12 months at a very brief glance at history, Thomas made changes in a year ago and in October, Julien made changes in June, October, December, I made changes in Feb. Some of these were purely bug-fixes, but about half of the changes actually appear to be introducing new features. It doesn't appear to be our position that further enhancing generators is contrary to our message.
My proposal is that first, the change I've submitted only removes unneeded (and arguably broken/meaningless) code - I don't see a position where it makes sense to keep it and refuse the patch.
Second, future work can be discussed, but actively forbidding contributions for fixing or improving existing code would require deprecating these classes and aiming to have them moved to their own jars, perhaps to be maintained externally. As opposed to my first point, I can see some wiggle room in this policy, but refusing changes merely because they improve a generator seems silly at best, especially when we have actively improved existing generators up until now. (Most of the examples I can come up with are pretty gratuitous and don't really make sense, but static or default methods in place of categories seems a natural fit for a hacked in feature that can be replaced with the real thing.)
Finally, if we are to be serious about this, as a GWT user, contributor, and steering committee member, I have to expect to see usable solutions in the near future to move away from these tools. This has to include tutorials on setting up APT to play nicely with SDM in reasonable development environments, a pathway for non-GWT generators to move in, and clear evidence that we are not simply abandoning all existing generators that are part of GWT itself. More than any other thing we are doing around this topic, _this_ is our messaging problem, and efforts to solve it there will be a lot clearer for users than closing bugs as WONTFIX or refusing patches.
The first is to allow the community the freedom to continue to improve before new tools are available, the second recognizes that contributor time is not a zero sum game whereby refusing commits will make other work magically work faster, and the third brings these new tools into the limelight as soon as possible. Ten years of constantly improving generators aren't going to be counteracted by ignoring fixes - we need a better approach.