On 12/04/2012 01:10 PM, Vincent Massol wrote:
Hi devs,
I'd like to propose that we stop shading Rendering Standalone. The reasons are:
1) It's far from perfect. For example we have at least 3 libs we cannot shade:
<!-- We don't relocate the following packages since they cause runtime issues: - javax.xml - org.w3c - org.apache.xerces -->
2) As we added some libs to our deps we forgot to relocate them so right now we don't shade (to cite a few): com.steadystate.css, javax.validation, ant, aspectj, slf4j, etc 3) There are lots of resources coming from dependent jars and those are not shaded. For example:
283 Tue Dec 04 18:50:42 CET 2012 javacc.class 286 Tue Dec 04 18:50:42 CET 2012 jjdoc.class 235 Tue Dec 04 18:50:42 CET 2012 jjtree.class 0 Tue Dec 04 18:50:42 CET 2012 org/xwiki/shaded/javacc/
or
3783 Tue Dec 04 18:50:42 CET 2012 org/xwiki/shaded/javacc/utils/JavaFileGenerator.class 3693 Tue Dec 04 18:50:42 CET 2012 templates/CharStream.template 15990 Tue Dec 04 18:50:42 CET 2012 templates/JavaCharStream.template 867 Tue Dec 04 18:50:42 CET 2012 templates/MultiNode.template 1317 Tue Dec 04 18:50:42 CET 2012 templates/Node.template 5962 Tue Dec 04 18:50:42 CET 2012 templates/ParseException.template 12711 Tue Dec 04 18:50:42 CET 2012 templates/SimpleCharStream.template 3227 Tue Dec 04 18:50:42 CET 2012 templates/SimpleNode.template 4005 Tue Dec 04 18:50:42 CET 2012 templates/Token.template 368 Tue Dec 04 18:50:42 CET 2012 templates/TokenManager.template 4244 Tue Dec 04 18:50:42 CET 2012 templates/TokenMgrError.template 48 Tue Dec 04 18:50:42 CET 2012 version.properties
So I'd like to keep a standalone distribution to make it easy to test XWiki Rendering but without any shading.
Here's my +1
+0. I believe that it will be a good idea to shade a few critical libraries that are likely to appear in incompatible version, and which are known to cause problems otherwise and which work fine when shaded. I did a quick check on dependency:tree and there doesn't seem to be any such library, but we've had such problems with rhino and asm in the xwiki-platform, and even log4j when the container prefers to use its own version. -- Sergiu Dumitriu http://purl.org/net/sergiu