Hi Stephen, I accidentally raw your message and noticed you need to shade commons-* stuff; I don't know if it could help for your purposes, but I suggest you jarjar'ing[1] commons-* jars via the proposed plugin because you can even relocate classes inside packages and really avoid any kind of conflict. HTH and sorry for interfering! All the best, have a nice day, Simo
[1] http://sonatype.github.com/jarjar-maven-plugin/ http://people.apache.org/~simonetripodi/ http://www.99soft.org/ On Wed, May 25, 2011 at 11:32 AM, Stephen Connolly <stephen.alan.conno...@gmail.com> wrote: > FYI > > here is my thinking on the release plan > > first release will shade all the commons-* stuff inside so that we > don't conflict with anyone using older versions of commons-* and > should be 100% compatibile (warts and all) with plexus-utils > > for the second release we will add a MethodRule that flips the > @ReproducesPlexusBug test cases so that we can fix them! (i.e. remove > all the hack code like my infinite loop generator). At this point all > the methods will be @deprecated with the suggested commons-* > replacement method (because we will have removed the bugs) > > for the third release we will remove the shading > > at that point we should have a nice pure shim layer > > On 25 May 2011 10:10, <steph...@apache.org> wrote: >> Author: stephenc >> Date: Wed May 25 09:10:46 2011 >> New Revision: 1127446 >> >> URL: http://svn.apache.org/viewvc?rev=1127446&view=rev >> Log: >> Adding an annotation to mark test cases that are verifying (warts and all) >> compatibility with Plexus Utils by ensuring the same buggy behaviour >> >> Added: >> >> maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/apache/maven/tck/ReproducesPlexusBug.java >> Modified: >> >> maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/codehaus/plexus/util/IOUtilTest.java >> >> Added: >> maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/apache/maven/tck/ReproducesPlexusBug.java >> URL: >> http://svn.apache.org/viewvc/maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/apache/maven/tck/ReproducesPlexusBug.java?rev=1127446&view=auto >> ============================================================================== >> --- >> maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/apache/maven/tck/ReproducesPlexusBug.java >> (added) >> +++ >> maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/apache/maven/tck/ReproducesPlexusBug.java >> Wed May 25 09:10:46 2011 >> @@ -0,0 +1,17 @@ >> +package org.apache.maven.tck; >> + >> +import java.lang.annotation.ElementType; >> +import java.lang.annotation.Retention; >> +import java.lang.annotation.RetentionPolicy; >> +import java.lang.annotation.Target; >> + >> +/** >> + * This annotation marks test cases where we are testing buggy behaviour we >> will want to fix but need to reproduce >> + * to establish compatibility. >> + */ >> +@Retention( RetentionPolicy.RUNTIME ) >> +@Target( ElementType.METHOD ) >> +public @interface ReproducesPlexusBug >> +{ >> + String value(); >> +} >> >> Modified: >> maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/codehaus/plexus/util/IOUtilTest.java >> URL: >> http://svn.apache.org/viewvc/maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/codehaus/plexus/util/IOUtilTest.java?rev=1127446&r1=1127445&r2=1127446&view=diff >> ============================================================================== >> --- >> maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/codehaus/plexus/util/IOUtilTest.java >> (original) >> +++ >> maven/sandbox/trunk/plexus-utils-commons-bridge/plexus-utils-tck/src/test/java/org/codehaus/plexus/util/IOUtilTest.java >> Wed May 25 09:10:46 2011 >> @@ -19,6 +19,7 @@ package org.codehaus.plexus.util; >> * under the License. >> */ >> >> +import org.apache.maven.tck.ReproducesPlexusBug; >> import org.junit.Test; >> >> import java.io.BufferedInputStream; >> @@ -393,6 +394,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void toStringEmptyByteArrayZeroBufSz() >> throws Exception >> { >> @@ -420,6 +422,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void toStringByteArrayZeroBufSz() >> throws Exception >> { >> @@ -655,6 +658,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void toStringEmptyByteArrayValidEncodingZeroBufSz() >> throws Exception >> { >> @@ -682,6 +686,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void toStringByteArrayValidEncodingZeroBufSz() >> throws Exception >> { >> @@ -966,6 +971,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void copyInputStreamValidOutputStreamZeroBufSz() >> throws Exception >> { >> @@ -1085,6 +1091,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void toStringEmptyInputStreamZeroBufSz() >> throws Exception >> { >> @@ -1112,6 +1119,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void toStringInputStreamZeroBufSz() >> throws Exception >> { >> @@ -1356,6 +1364,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void toStringEmptyInputStreamValidEncodingZeroBufSz() >> throws Exception >> { >> @@ -1383,6 +1392,7 @@ public class IOUtilTest >> } >> >> @Test( timeout = 150 ) >> + @ReproducesPlexusBug( "Should not infinite loop" ) >> public void toStringInputStreamValidEncodingZeroBufSz() >> throws Exception >> { >> >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org > For additional commands, e-mail: dev-h...@maven.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org