On Friday, October 18, 2013 7:21:48 AM UTC+2, Colin Alworth wrote: > > Just wandered by https://gwt-review.googlesource.com/#/c/1040/ and > noticed that with this change, any downstream generator/linker using the > static helper methods in Name will no longer build across 2.5.1 to 2.6.0. > With the other discussions going on about JRE and browser support, perhaps > we could discuss something policy-like around 'internal' code like this? > > If the policy that internal public methods are not actually for public > consumption, or subject to breakage across minor releases, we should note > that somewhere to keep people away. My inclination is that we want to > encourage downstream code to use utility methods like this rather than > copying them into their own projects. >
This is what the c.g.g.util is for AFAICT, with c.g.g.util.tools.shared being for things usable "on server-side" (included in gwt-servlet); and as a rule of thumb any class not listed in the javadocs we generate should be considered "private". AFAICT, the rule has always been to first make those utilities private as "incubators" and then move them to a "public" place when they're ready for prime-time. Re. this specific change, we could do the move in 2 steps though: make the c.g.g.dev.util classes simply call to the new c.g.g.tools.util.shared ones, and deprecate them; and remove them in a later release. > And again on the side of discouraging use of code like this, how far and > wide can public code be expected to be 'usable by downstream'? The > com.google.gwt.editor.rebind.model.ModelUtils class is very handy for > getting specifics about generic types, but from its package it is clearly > part of editor so could change with modifications to that framework, > whereas Name and StringKey seem to be in the relatively 'safe' package of > com.google.gwt.dev.util with other benign classes like Util. > > Thoughts? > ModelUtils should clearly be moved to a "util" package and made "public" (possibly with some cleanup). It's used by AutoBeans and RequestFactory too. In the mean time, you should cherry-pick those classes into your own source tree. That's the current "unwritten policy" as I understand it. -- http://groups.google.com/group/Google-Web-Toolkit-Contributors --- You received this message because you are subscribed to the Google Groups "GWT Contributors" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
