clirr-devel Mailing List for Clirr (Page 11)
Status: Alpha
Brought to you by:
lkuehne
You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(15) |
Oct
(23) |
Nov
|
Dec
(25) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(9) |
Feb
|
Mar
|
Apr
|
May
(76) |
Jun
(207) |
Jul
(242) |
Aug
(42) |
Sep
(33) |
Oct
|
Nov
(7) |
Dec
(1) |
2005 |
Jan
|
Feb
|
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
(66) |
Sep
(38) |
Oct
(6) |
Nov
|
Dec
(2) |
2006 |
Jan
(17) |
Feb
(5) |
Mar
(28) |
Apr
(6) |
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
(7) |
2007 |
Jan
|
Feb
|
Mar
|
Apr
(7) |
May
(33) |
Jun
(4) |
Jul
(3) |
Aug
|
Sep
(5) |
Oct
|
Nov
|
Dec
|
2008 |
Jan
(4) |
Feb
(3) |
Mar
(2) |
Apr
|
May
(1) |
Jun
|
Jul
(6) |
Aug
(8) |
Sep
(5) |
Oct
(20) |
Nov
(7) |
Dec
(9) |
2009 |
Jan
(8) |
Feb
(3) |
Mar
(20) |
Apr
(10) |
May
(40) |
Jun
(11) |
Jul
(23) |
Aug
(4) |
Sep
(1) |
Oct
(1) |
Nov
|
Dec
(2) |
2010 |
Jan
(5) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
(6) |
May
(22) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
(1) |
Dec
(2) |
2014 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2015 |
Jan
(1) |
Feb
(2) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <lk...@us...> - 2006-01-09 21:40:37
|
Update of /cvsroot/clirr/clirr/core/src/testinput/testlib-v1/testlib/regressions/bug1373831 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16817/src/testinput/testlib-v1/testlib/regressions/bug1373831 Added Files: XMLConfiguration.java Log Message: added regression test for bug 1373831 (currently not fixed, uncomment assertions to enable) --- NEW FILE --- package testlib.regression.bug1373831; import java.io.File; import java.io.InputStream; import java.io.Reader; import java.net.URL; public class XMLConfiguration { public void load() { } public void load(String fileName) { } public void load(File file) { } public void load(URL url) { } public void load(InputStream in) { } public void load(InputStream in, String encoding) { } public void load(Reader in) { } } |
From: <lk...@us...> - 2006-01-09 21:40:37
|
Update of /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16817/src/test/net/sf/clirr/core/internal/checks Added Files: Regression1373831Test.java Log Message: added regression test for bug 1373831 (currently not fixed, uncomment assertions to enable) --- NEW FILE --- package net.sf.clirr.core.internal.checks; import java.util.regex.Matcher; import java.util.regex.Pattern; import net.sf.clirr.core.Severity; /** * Regression test for bug * <a href="https://sourceforge.net/tracker/index.php?func=detail&aid=1373831&group_id=89627&atid=590799">1373831</a>. * * @author lkuehne */ public class Regression1373831Test extends AbstractRegressionTestCase { Pattern STD_REGRESSION_TEST_PATTERN = Pattern.compile("^.*Regression(.*)Test$"); protected String getTrackerId() { final String fqTestName = this.getClass().getName(); final Matcher matcher = STD_REGRESSION_TEST_PATTERN.matcher(fqTestName); if (matcher.matches()) { final String group = matcher.group(1); return group; } throw new UnsupportedOperationException("The default implementation works only for classes that follow the naming scheme 'Regression<id>Test'"); } public void testRegression() { runChecker(); final TestDiffListener testDiffListener = getTestDiffListener(); // TODO: fix the bug and enable the following assertions // assertEquals("false alarm (binary error)", 0, testDiffListener.countBinaryCompatibilityDiffs(Severity.ERROR)); // assertEquals("false alarm (source error)", 0, testDiffListener.countSourceCompatibilityDiffs(Severity.ERROR)); assertEquals("false alarm (binary warning)", 0, testDiffListener.countBinaryCompatibilityDiffs(Severity.WARNING)); assertEquals("false alarm (source warning)", 0, testDiffListener.countSourceCompatibilityDiffs(Severity.WARNING)); } } |
From: <lk...@us...> - 2006-01-09 21:40:37
|
Update of /cvsroot/clirr/clirr/core/src/testinput/testlib-v2/testlib/regressions/bug1373831 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16817/src/testinput/testlib-v2/testlib/regressions/bug1373831 Added Files: XMLConfiguration.java AbstractHierarchicalFileConfiguration.java Log Message: added regression test for bug 1373831 (currently not fixed, uncomment assertions to enable) --- NEW FILE --- package testlib.regression.bug1373831; import java.io.InputStream; import java.io.Reader; import org.xml.sax.InputSource; public class XMLConfiguration extends AbstractHierarchicalFileConfiguration { public void load(InputStream in) { } public void load(Reader in) { } private void load(InputSource source) { } } --- NEW FILE --- package testlib.regression.bug1373831; import java.io.Reader; import java.io.File; import java.io.InputStream; import java.net.URL; public abstract class AbstractHierarchicalFileConfiguration { public void load() { } public void load(String fileName) { } public void load(File file) { } public void load(URL url) { } public void load(InputStream in) { } public void load(InputStream in, String encoding) { } } |
From: <lk...@us...> - 2006-01-09 21:40:36
|
Update of /cvsroot/clirr/clirr/core/src/testinput/testlib-v1/testlib/regressions/bug1373831 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16680/src/testinput/testlib-v1/testlib/regressions/bug1373831 Log Message: Directory /cvsroot/clirr/clirr/core/src/testinput/testlib-v1/testlib/regressions/bug1373831 added to the repository |
From: <lk...@us...> - 2006-01-09 21:40:35
|
Update of /cvsroot/clirr/clirr/core/src/testinput/testlib-v2/testlib/regressions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16680/src/testinput/testlib-v2/testlib/regressions Log Message: Directory /cvsroot/clirr/clirr/core/src/testinput/testlib-v2/testlib/regressions added to the repository |
From: <lk...@us...> - 2006-01-09 21:40:35
|
Update of /cvsroot/clirr/clirr/core/src/testinput/testlib-v2/testlib/regressions/bug1373831 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16680/src/testinput/testlib-v2/testlib/regressions/bug1373831 Log Message: Directory /cvsroot/clirr/clirr/core/src/testinput/testlib-v2/testlib/regressions/bug1373831 added to the repository |
From: <lk...@us...> - 2006-01-09 21:40:34
|
Update of /cvsroot/clirr/clirr/core/src/testinput/testlib-v1/testlib/regressions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16680/src/testinput/testlib-v1/testlib/regressions Log Message: Directory /cvsroot/clirr/clirr/core/src/testinput/testlib-v1/testlib/regressions added to the repository |
Update of /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16302/src/test/net/sf/clirr/core/internal/checks Modified Files: GenderChangeCheckTest.java FieldSetCheckTest.java ClassHierarchyCheckTest.java InterfaceSetCheckTest.java AbstractCheckTestCase.java ClassScopeCheckTest.java ClassAddedRemovedTest.java ClassModifierCheckTest.java TestDiffListener.java MethodSetCheckTest.java Added Files: AbstractCheckerTestCase.java AbstractRegressionTestCase.java Log Message: changed class hierarchy of check testcases to allow easy addition of regression tests --- NEW FILE --- package net.sf.clirr.core.internal.checks; import java.io.File; import java.net.URL; import java.net.URLClassLoader; import net.sf.clirr.core.Checker; import net.sf.clirr.core.ClassFilter; import net.sf.clirr.core.internal.bcel.BcelTypeArrayBuilder; import net.sf.clirr.core.spi.JavaType; import junit.framework.TestCase; /** * Abstract baseclass for unit tests that check the output of the {@link Checker}. * * @author lk */ public abstract class AbstractCheckerTestCase extends TestCase { private TestDiffListener tdl = new TestDiffListener(); /** * Returns the directory where test input jars are located. * <p> * Note that this method requires a System property 'testinput' to point to the directory. * This is handled automatically during by the normal build but * requires manual intervention so it the tests can be run from the IDE. * <p> * For example in Eclipse, you need to add a VM argument like * <code>-Dtestinput=target/testinput</code> in your JUnit launch configuration. */ protected final File getTestInputDir() { // property is set in project.properties return new File(System.getProperty("testinput")); } /** * Returns the baseline jar files to test agaoinst (the old version). */ protected File[] getBaseLine() { return new File[]{ new File(getTestInputDir(), "testlib-v1.jar") }; } /** * Returns the current set of jar files (the new version). */ protected File[] getCurrent() { return new File[]{ new File(getTestInputDir(), "testlib-v2.jar") }; } /** * Call runChecker and verifies the comparison results. * @param expected the expected differences */ protected void verify(ExpectedDiff[] expected) throws Exception { runChecker(); tdl.checkExpected(expected); } /** * Creates a Checker, wires it with a test listener, executes the * checker. */ protected void runChecker() { Checker checker = createChecker(); ClassFilter classSelector = createClassFilter(); final JavaType[] origClasses = BcelTypeArrayBuilder.createClassSet(getBaseLine(), new URLClassLoader(new URL[]{}), classSelector); final JavaType[] newClasses = BcelTypeArrayBuilder.createClassSet(getCurrent(), new URLClassLoader(new URL[]{}), classSelector); checker.reportDiffs(origClasses, newClasses); } /** * Creates a filter which selects the appropriate classes from the * test jars for this unit test. */ protected abstract ClassFilter createClassFilter(); /** * Createas the Checker that is configured to run this test. * * @param tdl a */ protected abstract Checker createChecker(); protected final TestDiffListener getTestDiffListener() { return tdl; } } --- NEW FILE --- package net.sf.clirr.core.internal.checks; import net.sf.clirr.core.Checker; import net.sf.clirr.core.ClassFilter; import net.sf.clirr.core.ClassSelector; /** * Abstract Baseclass for a regression test that covers a bug reported in our bug tracker. * @author lk */ public abstract class AbstractRegressionTestCase extends AbstractCheckerTestCase { protected abstract String getTrackerId(); protected ClassFilter createClassFilter() { ClassSelector classSelector = new ClassSelector(ClassSelector.MODE_IF); classSelector.addPackageTree("testlib.regressions.bug" + getTrackerId()); return classSelector; } protected Checker createChecker() { final Checker checker = new Checker(); checker.addDiffListener(getTestDiffListener()); return checker; } } Index: GenderChangeCheckTest.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/GenderChangeCheckTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- GenderChangeCheckTest.java 11 Jul 2004 10:29:24 -0000 1.1 +++ GenderChangeCheckTest.java 9 Jan 2006 21:38:37 -0000 1.2 @@ -2,9 +2,6 @@ import net.sf.clirr.core.Severity; import net.sf.clirr.core.internal.ClassChangeCheck; -import net.sf.clirr.core.internal.checks.GenderChangeCheck; -import net.sf.clirr.core.internal.checks.AbstractCheckTestCase; -import net.sf.clirr.core.internal.checks.ExpectedDiff; public class GenderChangeCheckTest extends AbstractCheckTestCase { @@ -17,8 +14,9 @@ verify(expected); } - protected final ClassChangeCheck createCheck(TestDiffListener tdl) { - return new GenderChangeCheck(tdl); + protected final ClassChangeCheck createCheck() + { + return new GenderChangeCheck(getTestDiffListener()); } } Index: FieldSetCheckTest.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/FieldSetCheckTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- FieldSetCheckTest.java 23 Jul 2004 08:13:06 -0000 1.3 +++ FieldSetCheckTest.java 9 Jan 2006 21:38:38 -0000 1.4 @@ -1,11 +1,8 @@ package net.sf.clirr.core.internal.checks; -import net.sf.clirr.core.Severity; import net.sf.clirr.core.ScopeSelector; +import net.sf.clirr.core.Severity; import net.sf.clirr.core.internal.ClassChangeCheck; -import net.sf.clirr.core.internal.checks.FieldSetCheck; -import net.sf.clirr.core.internal.checks.AbstractCheckTestCase; -import net.sf.clirr.core.internal.checks.ExpectedDiff; /** * Tests FieldSetCheck. @@ -41,10 +38,10 @@ } - protected final ClassChangeCheck createCheck(TestDiffListener tdl) + protected final ClassChangeCheck createCheck() { ScopeSelector scopeSelector = new ScopeSelector(); - return new FieldSetCheck(tdl, scopeSelector); + return new FieldSetCheck(getTestDiffListener(), scopeSelector); } } Index: ClassHierarchyCheckTest.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/ClassHierarchyCheckTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- ClassHierarchyCheckTest.java 11 Jul 2004 10:29:24 -0000 1.1 +++ ClassHierarchyCheckTest.java 9 Jan 2006 21:38:38 -0000 1.2 @@ -20,8 +20,8 @@ verify(expected); } - protected ClassChangeCheck createCheck(TestDiffListener tdl) + protected ClassChangeCheck createCheck() { - return new ClassHierarchyCheck(tdl); + return new ClassHierarchyCheck(getTestDiffListener()); } } Index: InterfaceSetCheckTest.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/InterfaceSetCheckTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- InterfaceSetCheckTest.java 22 Aug 2005 04:05:24 -0000 1.1 +++ InterfaceSetCheckTest.java 9 Jan 2006 21:38:38 -0000 1.2 @@ -16,9 +16,9 @@ verify(expected); } - protected ClassChangeCheck createCheck(TestDiffListener tdl) + protected ClassChangeCheck createCheck() { - return new InterfaceSetCheck(tdl); + return new InterfaceSetCheck(getTestDiffListener()); } } Index: AbstractCheckTestCase.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/AbstractCheckTestCase.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- AbstractCheckTestCase.java 5 Sep 2005 21:14:52 -0000 1.3 +++ AbstractCheckTestCase.java 9 Jan 2006 21:38:38 -0000 1.4 @@ -1,82 +1,34 @@ package net.sf.clirr.core.internal.checks; -import junit.framework.TestCase; import net.sf.clirr.core.Checker; import net.sf.clirr.core.ClassSelector; -import net.sf.clirr.core.ApiDifference; import net.sf.clirr.core.CheckerFactory; import net.sf.clirr.core.ClassFilter; import net.sf.clirr.core.internal.ClassChangeCheck; -import net.sf.clirr.core.internal.bcel.BcelTypeArrayBuilder; -import net.sf.clirr.core.spi.JavaType; - -import org.apache.bcel.util.ClassSet; - -import java.io.File; -import java.net.URL; -import java.net.URLClassLoader; /** * Abstract Baseclass to test individual Checks. * @author lkuehne */ -public abstract class AbstractCheckTestCase extends TestCase +public abstract class AbstractCheckTestCase extends AbstractCheckerTestCase { - protected final File getTestInputDir() - { - // property is set in project.properties - return new File(System.getProperty("testinput")); - } - - protected void verify( - Checker checker, - ClassSet baseline, ClassSet current, - ApiDifference[] expected) - { - } - - protected File[] getBaseLine() - { - return new File[]{ - new File(getTestInputDir(), "testlib-v1.jar") - }; - } - - protected File[] getCurrent() - { - return new File[]{ - new File(getTestInputDir(), "testlib-v2.jar") - }; - } - - protected void verify(ExpectedDiff[] expected) - throws Exception + /** + * Createas the Checker that is configured to run this test. + * + * @param tdl a + */ + protected Checker createChecker() { - TestDiffListener tdl = new TestDiffListener(); - Checker checker = CheckerFactory.createChecker(createCheck(tdl)); - ClassFilter classSelector = createClassSelector(); - - final JavaType[] origClasses = - BcelTypeArrayBuilder.createClassSet(getBaseLine(), new URLClassLoader(new URL[]{}), classSelector); - - final JavaType[] newClasses = - BcelTypeArrayBuilder.createClassSet(getCurrent(), new URLClassLoader(new URL[]{}), classSelector); - - checker.reportDiffs(origClasses, newClasses); - - tdl.checkExpected(expected); + return CheckerFactory.createChecker(createCheck()); } /** - * Creates an object which selects the appropriate classes from the - * test jars for this test. - * <p> - * This base implementation returns a selector which selects all classes + * This base implementation returns a filter which selects all classes * in the base "testlib" package (but no sub-packages). Tests which wish * to select different classes from the test jars should override this * method. */ - protected ClassFilter createClassSelector() + protected ClassFilter createClassFilter() { // only check classes in the base "testlib" package of the jars ClassSelector classSelector = new ClassSelector(ClassSelector.MODE_IF); @@ -90,5 +42,5 @@ * @param tdl the test diff listener that records the recognized api changes. * @return the confiured check */ - protected abstract ClassChangeCheck createCheck(TestDiffListener tdl); + protected abstract ClassChangeCheck createCheck(); } Index: ClassScopeCheckTest.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/ClassScopeCheckTest.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- ClassScopeCheckTest.java 26 Aug 2005 05:35:53 -0000 1.4 +++ ClassScopeCheckTest.java 9 Jan 2006 21:38:38 -0000 1.5 @@ -5,8 +5,6 @@ import net.sf.clirr.core.ClassSelector; import net.sf.clirr.core.ScopeSelector; import net.sf.clirr.core.ClassFilter; -import net.sf.clirr.core.internal.checks.ClassScopeCheck; -import net.sf.clirr.core.internal.checks.AbstractCheckTestCase; import net.sf.clirr.core.spi.Scope; /** @@ -39,13 +37,13 @@ verify(expected); } - protected ClassChangeCheck createCheck(TestDiffListener tdl) + protected ClassChangeCheck createCheck() { ScopeSelector scopeSelector = new ScopeSelector(Scope.PRIVATE); - return new ClassScopeCheck(tdl, scopeSelector); + return new ClassScopeCheck(getTestDiffListener(), scopeSelector); } - protected ClassFilter createClassSelector() + protected ClassFilter createClassFilter() { // only check the testlib/scope/ClassScopeChange class. ClassSelector classSelector = new ClassSelector(ClassSelector.MODE_IF); Index: ClassAddedRemovedTest.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/ClassAddedRemovedTest.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ClassAddedRemovedTest.java 5 Sep 2005 21:14:52 -0000 1.2 +++ ClassAddedRemovedTest.java 9 Jan 2006 21:38:38 -0000 1.3 @@ -5,11 +5,11 @@ import net.sf.clirr.core.Checker; import net.sf.clirr.core.CheckerFactory; +import net.sf.clirr.core.ClassFilter; import net.sf.clirr.core.Severity; import net.sf.clirr.core.internal.ClassChangeCheck; import net.sf.clirr.core.internal.bcel.BcelTypeArrayBuilder; import net.sf.clirr.core.spi.JavaType; -import net.sf.clirr.core.ClassFilter; public class ClassAddedRemovedTest extends AbstractCheckTestCase { @@ -19,7 +19,7 @@ TestDiffListener tld = new TestDiffListener(); checker.addDiffListener(tld); - ClassFilter classSelector = createClassSelector(); + ClassFilter classSelector = createClassFilter(); final JavaType[] origClasses = BcelTypeArrayBuilder.createClassSet(getBaseLine(), new URLClassLoader(new URL[]{}), classSelector); @@ -37,7 +37,7 @@ tld.checkExpected(expected); } - protected ClassChangeCheck createCheck(TestDiffListener tdl) + protected ClassChangeCheck createCheck() { // changes are reported directly by the Checker return null; Index: ClassModifierCheckTest.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/ClassModifierCheckTest.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ClassModifierCheckTest.java 6 Mar 2005 17:01:35 -0000 1.2 +++ ClassModifierCheckTest.java 9 Jan 2006 21:38:38 -0000 1.3 @@ -21,12 +21,12 @@ verify(expected); } - protected ClassChangeCheck createCheck(TestDiffListener tdl) + protected ClassChangeCheck createCheck() { - return new ClassModifierCheck(tdl); + return new ClassModifierCheck(getTestDiffListener()); } - protected ClassFilter createClassSelector() + protected ClassFilter createClassFilter() { // only apply the check to classes in the testlib.modifiers package. ClassSelector classSelector = new ClassSelector(ClassSelector.MODE_IF); Index: TestDiffListener.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/TestDiffListener.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- TestDiffListener.java 26 Aug 2005 05:35:53 -0000 1.5 +++ TestDiffListener.java 9 Jan 2006 21:38:38 -0000 1.6 @@ -9,103 +9,132 @@ import net.sf.clirr.core.ApiDifference; import net.sf.clirr.core.DiffListener; import net.sf.clirr.core.MessageTranslator; +import net.sf.clirr.core.Severity; import junit.framework.TestCase; class TestDiffListener implements ApiDiffDispatcher, DiffListener { - private MessageTranslator translator = new MessageTranslator(); - - private Set diffs = new HashSet(); - - public void fireDiff(ApiDifference difference) + private MessageTranslator translator = new MessageTranslator(); + + private Set diffs = new HashSet(); + + public void fireDiff(ApiDifference difference) + { + diffs.add(difference); + } + + public void checkExpected(ExpectedDiff[] expectedDiffs) + { + for (int i=0; i<expectedDiffs.length; ++i) { - diffs.add(difference); - } + ExpectedDiff expected = expectedDiffs[i]; - public void checkExpected(ExpectedDiff[] expectedDiffs) - { - for (int i=0; i<expectedDiffs.length; ++i) + // now see if the expected diff is in fact in the set of + // diffs that occurred during the test comparison + boolean found = false; + for(Iterator j = diffs.iterator(); j.hasNext() && !found;) { - ExpectedDiff expected = expectedDiffs[i]; - - // now see if the expected diff is in fact in the set of - // diffs that occurred during the test comparison - boolean found = false; - for(Iterator j = diffs.iterator(); j.hasNext() && !found;) - { - ApiDifference actual = (ApiDifference) j.next(); - found = expected.matches(actual); - } - - if (!found) - { - // build a useful failure message - MessageTranslator translator = new MessageTranslator(); - - StringBuffer buf = new StringBuffer(); - buf.append("Expected diff " + expected + " was not generated.\n"); - if (diffs.size() == 0) - { - buf.append("No diffs were generated."); - } - else - { - buf.append("Actual diffs generated were: \n"); - for(Iterator diffIter = diffs.iterator(); diffIter.hasNext();) - { - ApiDifference diff = (ApiDifference) diffIter.next(); - - buf.append(" * "); - buf.append(diff.toString(translator)); - buf.append("\n"); - } - } - - TestCase.fail(buf.toString()); - } + ApiDifference actual = (ApiDifference) j.next(); + found = expected.matches(actual); } - StringBuffer buf = null; - for (Iterator it = diffs.iterator(); it.hasNext();) + if (!found) { - ApiDifference actual = (ApiDifference) it.next(); - - // see if the actual (generated) diff is in the expected set - boolean found = false; - for(int i=0; i<expectedDiffs.length && !found; ++i) + // build a useful failure message + MessageTranslator translator = new MessageTranslator(); + + StringBuffer buf = new StringBuffer(); + buf.append("Expected diff " + expected + " was not generated.\n"); + if (diffs.size() == 0) { - found = expectedDiffs[i].matches(actual); + buf.append("No diffs were generated."); } - - if (!found) + else { - if (buf == null) + buf.append("Actual diffs generated were: \n"); + for(Iterator diffIter = diffs.iterator(); diffIter.hasNext();) { - buf = new StringBuffer(); - buf.append("Unexpected diffs:\n"); + ApiDifference diff = (ApiDifference) diffIter.next(); + + buf.append(" * "); + buf.append(diff.toString(translator)); + buf.append("\n"); } - buf.append(" * "); - buf.append(actual.toString(translator)); - buf.append("\n"); } + + TestCase.fail(buf.toString()); } - - if (buf != null) + } + + StringBuffer buf = null; + for (Iterator it = diffs.iterator(); it.hasNext();) + { + ApiDifference actual = (ApiDifference) it.next(); + + // see if the actual (generated) diff is in the expected set + boolean found = false; + for(int i=0; i<expectedDiffs.length && !found; ++i) { - // we must have found at least one unexpected diff - TestCase.fail(buf.toString()); + found = expectedDiffs[i].matches(actual); + } + + if (!found) + { + if (buf == null) + { + buf = new StringBuffer(); + buf.append("Unexpected diffs:\n"); + } + buf.append(" * "); + buf.append(actual.toString(translator)); + buf.append("\n"); } } - - public void start() + + if (buf != null) { + // we must have found at least one unexpected diff + TestCase.fail(buf.toString()); } + } - public void reportDiff(ApiDifference difference) { - diffs.add(difference); + public int countBinaryCompatibilityDiffs(Severity severity) + { + int ret = 0; + for (Iterator it = diffs.iterator(); it.hasNext();) + { + ApiDifference diff = (ApiDifference) it.next(); + if (diff.getBinaryCompatibilitySeverity().equals(severity)) + { + ret += 1; + } } - - public void stop() + return ret; + } + + public int countSourceCompatibilityDiffs(Severity severity) + { + int ret = 0; + for (Iterator it = diffs.iterator(); it.hasNext();) { + ApiDifference diff = (ApiDifference) it.next(); + if (diff.getSourceCompatibilitySeverity().equals(severity)) + { + ret += 1; + } } + return ret; + } + + public void start() + { + } + + public void reportDiff(ApiDifference difference) { + diffs.add(difference); + } + + public void stop() + { + } } Index: MethodSetCheckTest.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/test/net/sf/clirr/core/internal/checks/MethodSetCheckTest.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- MethodSetCheckTest.java 1 Aug 2005 07:21:43 -0000 1.4 +++ MethodSetCheckTest.java 9 Jan 2006 21:38:38 -0000 1.5 @@ -1,11 +1,8 @@ package net.sf.clirr.core.internal.checks; -import net.sf.clirr.core.internal.ClassChangeCheck; -import net.sf.clirr.core.Severity; import net.sf.clirr.core.ScopeSelector; -import net.sf.clirr.core.internal.checks.MethodSetCheck; -import net.sf.clirr.core.internal.checks.AbstractCheckTestCase; -import net.sf.clirr.core.internal.checks.ExpectedDiff; +import net.sf.clirr.core.Severity; +import net.sf.clirr.core.internal.ClassChangeCheck; /** * TODO: Docs. @@ -77,8 +74,8 @@ verify(expected); } - protected final ClassChangeCheck createCheck(TestDiffListener tdl) + protected final ClassChangeCheck createCheck() { - return new MethodSetCheck(tdl, new ScopeSelector()); + return new MethodSetCheck(getTestDiffListener(), new ScopeSelector()); } } |
From: SourceForge.net <no...@so...> - 2005-12-11 04:10:11
|
Bugs item #1377978, was opened at 2005-12-10 22:10 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590799&aid=1377978&group_id=89627 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Ant Task Group: None Status: Open Resolution: None Priority: 5 Submitted By: Curt Arnold (carnold) Assigned to: Lars Kühne (lkuehne) Summary: NullPointerException during report generation Initial Comment: I've been adding a clirr target to the log4j build file and have been encountering a NullPointerException when attempting to generate a compatibility report. The kludgy patch attached fix the problem for me, but doesn't explain why BCEL was throwing a NPE. The underlying problem may be in BCEL. Stack trace as follows: C:\workspace\trunk\build.xml:804: java.lang.NullPointerException at org.apache.tools.ant.Task.perform(Task.java:373) at org.apache.tools.ant.Target.execute(Target.java:341) at org.apache.tools.ant.Target.performTasks(Target.java:369) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216) at org.apache.tools.ant.Project.executeTarget(Project.java:1185) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40) at org.apache.tools.ant.Project.executeTargets(Project.java:1068) at org.apache.tools.ant.Main.runBuild(Main.java:668) at org.apache.tools.ant.Main.startAnt(Main.java:187) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67) Caused by: java.lang.NullPointerException at org.apache.bcel.classfile.JavaClass.getAllInterfaces(JavaClass.java:808) at net.sf.clirr.core.internal.bcel.BcelJavaType.getAllInterfaces(BcelJavaType.java:78) at net.sf.clirr.core.internal.checks.InterfaceSetCheck.check(InterfaceSetCheck.java:58) at net.sf.clirr.core.Checker.runClassChecks(Checker.java:190) at net.sf.clirr.core.Checker.reportDiffs(Checker.java:136) at net.sf.clirr.ant.AntTask.execute(AntTask.java:303) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275) at org.apache.tools.ant.Task.perform(Task.java:364) ... 10 more --- Nested Exception --- java.lang.NullPointerException at org.apache.bcel.classfile.JavaClass.getAllInterfaces(JavaClass.java:808) at net.sf.clirr.core.internal.bcel.BcelJavaType.getAllInterfaces(BcelJavaType.java:78) at net.sf.clirr.core.internal.checks.InterfaceSetCheck.check(InterfaceSetCheck.java:58) at net.sf.clirr.core.Checker.runClassChecks(Checker.java:190) at net.sf.clirr.core.Checker.reportDiffs(Checker.java:136) at net.sf.clirr.ant.AntTask.execute(AntTask.java:303) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275) at org.apache.tools.ant.Task.perform(Task.java:364) at org.apache.tools.ant.Target.execute(Target.java:341) at org.apache.tools.ant.Target.performTasks(Target.java:369) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216) at org.apache.tools.ant.Project.executeTarget(Project.java:1185) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40) at org.apache.tools.ant.Project.executeTargets(Project.java:1068) at org.apache.tools.ant.Main.runBuild(Main.java:668) at org.apache.tools.ant.Main.startAnt(Main.java:187) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67) Total time: 2 seconds ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590799&aid=1377978&group_id=89627 |
From: SourceForge.net <no...@so...> - 2005-12-05 20:33:14
|
Bugs item #1373831, was opened at 2005-12-05 21:33 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590799&aid=1373831&group_id=89627 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Checker Group: None Status: Open Resolution: None Priority: 5 Submitted By: Oliver Heger (oheger) Assigned to: Nobody/Anonymous (nobody) Summary: Wrong error message about changed method signature Initial Comment: When I prepared the 1.2 release of Jakarta Commons Configuration I created a clirr report to compare the current release jar with the last 1.1 release. This report contains two error messages related to the load(String) method of XMLConfiguration, which I believe to be wrong. Basically the following changes were made: XMLConfiguration contained a couple of overloaded load() methods. In the 1.2 release a new base class for XMLConfiguration was introduced, which now implements most of these load() methods, among them the mentioned load(String) method; the corresponding methods of XMLConfiguration were removed. Further a private helper method - also called load() - with a new signature was added to XMLConfiguration. It seems that clirr somehow gets confused by this constellation. I attach the jar with the new version of Commons-Configuration. The 1.1 release that served as reference can be found at ibiblio at http://www.ibiblio.org/maven/commons-configuration/jars/commons-configuration-1.1.jar The clirr report is available at http://people.apache.org/~oheger/commons-configuration-1.2RC1-docs/clirr.xml My version of clirr is 0.6. The report was created under Win XP SP 2. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590799&aid=1373831&group_id=89627 |
From: <lk...@us...> - 2005-10-02 23:40:47
|
Update of /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/ant In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12431/src/java/net/sf/clirr/ant Modified Files: AntTask.java PatternSetFilter.java Log Message: BCEL was leaking into the Clirr API via ClassFilter/ClassSelector Index: AntTask.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/ant/AntTask.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- AntTask.java 13 Sep 2005 03:56:09 -0000 1.7 +++ AntTask.java 2 Oct 2005 09:26:21 -0000 1.8 @@ -35,7 +35,6 @@ import net.sf.clirr.core.internal.bcel.BcelTypeArrayBuilder; import net.sf.clirr.core.spi.JavaType; -import org.apache.bcel.classfile.JavaClass; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.DirectoryScanner; import org.apache.tools.ant.Project; @@ -105,7 +104,7 @@ this.scopeSelector = scopeSelector; } - public boolean isSelected(JavaClass clazz) + public boolean isSelected(JavaType clazz) { return patternSetFilter.isSelected(clazz) && scopeSelector.isSelected(clazz); } Index: PatternSetFilter.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/ant/PatternSetFilter.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- PatternSetFilter.java 27 Aug 2005 10:34:22 -0000 1.4 +++ PatternSetFilter.java 2 Oct 2005 09:26:21 -0000 1.5 @@ -20,11 +20,11 @@ package net.sf.clirr.ant; import net.sf.clirr.core.ClassFilter; +import net.sf.clirr.core.spi.JavaType; import java.util.List; import java.io.File; -import org.apache.bcel.classfile.JavaClass; import org.apache.tools.ant.types.selectors.SelectorUtils; import org.apache.tools.ant.types.PatternSet; import org.apache.tools.ant.Project; @@ -52,11 +52,11 @@ } - public boolean isSelected(JavaClass clazz) + public boolean isSelected(JavaType clazz) { // The patternset evaluation code below was copied from Apache Ant's Expand task. // I feel this code should be available as a library function inside Ant somewhere... - String className = clazz.getClassName(); + String className = clazz.getName(); String name = className.replace('.', File.separatorChar); |
From: <lk...@us...> - 2005-10-02 23:32:16
|
Update of /cvsroot/clirr/clirr/core/xdocs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12431/xdocs Modified Files: changes.xml Log Message: BCEL was leaking into the Clirr API via ClassFilter/ClassSelector Index: changes.xml =================================================================== RCS file: /cvsroot/clirr/clirr/core/xdocs/changes.xml,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- changes.xml 26 Sep 2005 18:32:57 -0000 1.14 +++ changes.xml 2 Oct 2005 09:26:21 -0000 1.15 @@ -7,6 +7,12 @@ </properties> <body> + <release version="0.7-dev" date="in CVS"> + <action dev="lkuehne" type="fix"> + BCEL was leaking into the Clirr API via our ClassFilter/ClassSelector. + </action> + </release> + <release version="0.6" date="2005-09-27"> <action dev="lkuehne" type="add"> Clirr now provides a SPI to represent the java code structure, the checks |
From: <lk...@us...> - 2005-10-02 23:29:56
|
Update of /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core/internal/bcel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12431/src/java/net/sf/clirr/core/internal/bcel Modified Files: BcelTypeArrayBuilder.java Log Message: BCEL was leaking into the Clirr API via ClassFilter/ClassSelector Index: BcelTypeArrayBuilder.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core/internal/bcel/BcelTypeArrayBuilder.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- BcelTypeArrayBuilder.java 5 Sep 2005 21:14:52 -0000 1.1 +++ BcelTypeArrayBuilder.java 2 Oct 2005 09:26:21 -0000 1.2 @@ -80,9 +80,10 @@ if (!zipEntry.isDirectory() && zipEntry.getName().endsWith(".class")) { JavaClass clazz = extractClass(zipEntry, zip, repository); - if (classSelector.isSelected(clazz)) + final BcelJavaType bcelJavaType = new BcelJavaType(clazz); + if (classSelector.isSelected(bcelJavaType)) { - selected.add(new BcelJavaType(clazz)); + selected.add(bcelJavaType); repository.storeClass(clazz); } } |
From: <lk...@us...> - 2005-10-02 22:57:34
|
Update of /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core/spi In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11940/src/java/net/sf/clirr/core/spi Modified Files: JavaType.java Log Message: improved javadoc Index: JavaType.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core/spi/JavaType.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- JavaType.java 26 Aug 2005 05:29:52 -0000 1.1 +++ JavaType.java 2 Oct 2005 09:24:11 -0000 1.2 @@ -8,7 +8,7 @@ public interface JavaType extends Named, Scoped { /** - * Type fully qualified class name. + * The type's fully qualified class name. * * @return a fully qualified class name, * like <code>"my.company.procuct.SampleClass"</code>. |
From: <lk...@us...> - 2005-10-02 21:24:43
|
Update of /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12431/src/java/net/sf/clirr/core Modified Files: ClassSelector.java ClassFilter.java Log Message: BCEL was leaking into the Clirr API via ClassFilter/ClassSelector Index: ClassSelector.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core/ClassSelector.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- ClassSelector.java 3 Aug 2005 17:16:11 -0000 1.3 +++ ClassSelector.java 2 Oct 2005 09:26:21 -0000 1.4 @@ -18,7 +18,7 @@ ////////////////////////////////////////////////////////////////////////////// package net.sf.clirr.core; -import org.apache.bcel.classfile.JavaClass; +import net.sf.clirr.core.spi.JavaType; import java.util.ArrayList; import java.util.Iterator; @@ -97,7 +97,7 @@ * Return true if this class is one selected by the criteria stored * in this object. */ - public boolean isSelected(JavaClass clazz) + public boolean isSelected(JavaType clazz) { if (isAnonymousInnerClass(clazz)) { @@ -120,9 +120,9 @@ * Not even developers working on a package would be interested * in API changes in these classes... */ - private boolean isAnonymousInnerClass(JavaClass clazz) + private boolean isAnonymousInnerClass(JavaType clazz) { - String name = clazz.getClassName(); + String name = clazz.getName(); int dollarPos = name.indexOf('$'); if (dollarPos == -1) { @@ -146,9 +146,12 @@ * Return true if this class matches one of the criteria stored * in this object. */ - private boolean matchesCriteria(JavaClass clazz) + private boolean matchesCriteria(JavaType clazz) { - String packageName = clazz.getPackageName(); + String className = clazz.getName(); + int index = className.lastIndexOf('.'); + String packageName = (index < 0) ? "" : className.substring(0, index); + if (packages.contains(packageName)) { return true; @@ -175,7 +178,6 @@ } } - String className = clazz.getClassName(); for (Iterator i = classes.iterator(); i.hasNext();) { String entry = (String) i.next(); Index: ClassFilter.java =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core/ClassFilter.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- ClassFilter.java 3 Aug 2005 17:16:11 -0000 1.3 +++ ClassFilter.java 2 Oct 2005 09:26:21 -0000 1.4 @@ -19,7 +19,7 @@ package net.sf.clirr.core; -import org.apache.bcel.classfile.JavaClass; +import net.sf.clirr.core.spi.JavaType; /** * A filter for Java classes. @@ -42,5 +42,5 @@ * @return true if clazz should be considered by the Checker * in this object. */ - boolean isSelected(JavaClass clazz); + boolean isSelected(JavaType clazz); } |
From: <lk...@us...> - 2005-10-02 17:42:12
|
Update of /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7128/src/java/net/sf/clirr/core Modified Files: package.html Log Message: improved package description Index: package.html =================================================================== RCS file: /cvsroot/clirr/clirr/core/src/java/net/sf/clirr/core/package.html,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- package.html 10 Jul 2004 13:37:26 -0000 1.1 +++ package.html 2 Oct 2005 08:56:09 -0000 1.2 @@ -1,5 +1,5 @@ <html> <body> -Clirr throws events when it finds api changes. +The API to use for implementing a Clirr frontend - main checker class, event system and utilities. </body> </html> \ No newline at end of file |
From: <lak...@t-...> - 2005-09-27 19:16:58
|
The Clirr team is proud to announce the immediate availability of Clirr 0.6. Clirr is a tool that checks Java libraries for binary and source compatibility with older releases. This version contains several bug fixes and usability improvements. It also introduces an API that should allow the creation of Clirr IDE plugins. As usual, the detailed list of changes to the core checker can be found at http://clirr.sourceforge.net/clirr-core/changes-report.html Enjoy, Lars |
From: <lk...@us...> - 2005-09-26 18:33:10
|
Update of /cvsroot/clirr/clirr/core/xdocs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17760/core/xdocs Modified Files: changes.xml Log Message: prepare for release tomorrow Index: changes.xml =================================================================== RCS file: /cvsroot/clirr/clirr/core/xdocs/changes.xml,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- changes.xml 10 Sep 2005 11:00:20 -0000 1.13 +++ changes.xml 26 Sep 2005 18:32:57 -0000 1.14 @@ -7,7 +7,7 @@ </properties> <body> - <release version="0.6-dev" date="in CVS"> + <release version="0.6" date="2005-09-27"> <action dev="lkuehne" type="add"> Clirr now provides a SPI to represent the java code structure, the checks now work against this SPI. Clirr provides a SPI implementation that works @@ -27,7 +27,7 @@ </action> <action dev="lkuehne" type="fix"> <!-- Bug #1284303--> - CLI: Allow specitication of 3rd party jars via new options -ocp and -ncp. + CLI: Allow specification of 3rd party jars via new options -ocp and -ncp. </action> <action dev="lkuehne" type="update"> Improved test coverage. |
From: <lk...@us...> - 2005-09-26 18:33:06
|
Update of /cvsroot/clirr/clirr/maven/xdocs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17760/maven/xdocs Modified Files: changes.xml Log Message: prepare for release tomorrow Index: changes.xml =================================================================== RCS file: /cvsroot/clirr/clirr/maven/xdocs/changes.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- changes.xml 4 Aug 2005 13:32:13 -0000 1.2 +++ changes.xml 26 Sep 2005 18:32:58 -0000 1.3 @@ -7,6 +7,14 @@ <body> + <release version="0.6" date="2005-09-27"> + <action dev="lkuehne" type="add"> + Upgraded to version 0.6 of clirr-core. + The new apiclasses feature in the Ant task is currently + not supported by the maven plugin. + </action> + </release> + <release version="0.5" date="2005-08-07"> <action dev="lkuehne" type="add"> Upgraded to version 0.5 of clirr-core. |
From: Simon K. <ski...@ap...> - 2005-09-22 08:57:44
|
On Mon, 2005-09-19 at 16:22 +0200, Vincent Massol wrote: > > > -----Original Message----- > > From: cli...@li... [mailto:clirr-devel- > > ad...@li...] On Behalf Of Lars Kühne > > Sent: lundi 19 septembre 2005 16:29 > > To: cli...@li... > > Subject: [Clirr-devel] [VOTE] Release Clirr 0.6 > > > > Hi, > > > > I'd like to release version 0.6. Here is my > > > > +1 > > +1 (even though I've not followed too closely and my vote is probably > non-binding as I haven't participated lately) :-) Same for me :-). But it's nice to see clirr forging ahead. +1 Regards, Simon |
From: Vincent M. <vm...@pi...> - 2005-09-19 14:22:31
|
> -----Original Message----- > From: cli...@li... [mailto:clirr-devel- > ad...@li...] On Behalf Of Lars K=FChne > Sent: lundi 19 septembre 2005 16:29 > To: cli...@li... > Subject: [Clirr-devel] [VOTE] Release Clirr 0.6 >=20 > Hi, >=20 > I'd like to release version 0.6. Here is my >=20 > +1 +1 (even though I've not followed too closely and my vote is probably non-binding as I haven't participated lately) :-) Thanks -Vincent |
From: <lak...@t-...> - 2005-09-19 14:15:43
|
Hi, I'd like to release version 0.6. Here is my +1 Thanks, Lars |
From: SourceForge.net <no...@so...> - 2005-09-19 13:43:42
|
Feature Requests item #1295433, was opened at 2005-09-19 15:43 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590802&aid=1295433&group_id=89627 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Lars Kühne (lkuehne) Assigned to: Nobody/Anonymous (nobody) Summary: Add support for Java5 generics Initial Comment: Clirr currently does not handle Java5 generics at all. Need to investigate which changes trigger a source incompatibility and which changes trigger a binary incompatibility. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590802&aid=1295433&group_id=89627 |
From: SourceForge.net <no...@so...> - 2005-09-19 13:41:39
|
Feature Requests item #1295430, was opened at 2005-09-19 15:41 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590802&aid=1295430&group_id=89627 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Lars Kühne (lkuehne) Assigned to: Nobody/Anonymous (nobody) Summary: Add support for Java5 varargs Initial Comment: Clirr currently does not handle Java5 varargs at all. I don't have much experience with Java 5 but there should be some special cases, like going from arg type String to String... (technically a String array?) is no longer a source incompatibility (?). Need to test a few combinations. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590802&aid=1295430&group_id=89627 |
From: SourceForge.net <no...@so...> - 2005-09-19 13:38:46
|
Feature Requests item #1295424, was opened at 2005-09-19 15:38 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590802&aid=1295424&group_id=89627 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Lars Kühne (lkuehne) Assigned to: Nobody/Anonymous (nobody) Summary: Add support for Java5 enums Initial Comment: Clirr currently does not handle Java5 enums at all. I don't have much experience with Java 5 but there should be lots of potential errors, like adding a new constant, removing a constant, changing the value of a constant, etc. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=590802&aid=1295424&group_id=89627 |