Author: ebourg Date: Fri Apr 25 22:41:32 2014 New Revision: 1590178 URL: http://svn.apache.org/r1590178 Log: Release notes for BCEL 6.0
Modified: commons/proper/bcel/trunk/RELEASE-NOTES.txt Modified: commons/proper/bcel/trunk/RELEASE-NOTES.txt URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/RELEASE-NOTES.txt?rev=1590178&r1=1590177&r2=1590178&view=diff ============================================================================== --- commons/proper/bcel/trunk/RELEASE-NOTES.txt (original) +++ commons/proper/bcel/trunk/RELEASE-NOTES.txt Fri Apr 25 22:41:32 2014 @@ -1,43 +1,112 @@ -BCEL 5.3 RELEASE NOTES -===================== + Apache Commons BCEL 6.0 RELEASE NOTES + +The Apache Commons team is pleased to announce the release of BCEL 6.0! + +The Byte Code Engineering Library (BCEL) is intended to give users a convenient +way to analyze, create, and manipulate compiled .class files. Classes are +represented by objects containing all the symbolic information of the given +class: methods, fields and byte code instructions. + +BCEL 6.0 is a major release supporting the new features introduced in Java 6, 7 +and 8. It requires Java 5 or higher to run. Compatibility with 5.2 ---------------------- + Binary compatible - Yes -Source compatible - Yes +Source compatible - Yes, except for org.apache.bcel.classfile.Visitor (see below) Semantic compatible - Yes +The org.apache.bcel.classfile.Visitor interface has been enhanced with +additional methods. If you implemented it directly instead of extending +the EmptyVisitor class you'll have to implement the new methods. -Deprecations from 5.2 + +Enhancements from 5.2 --------------------- -public org.apache.bcel.util.ClassVector implements java.io.Serializable +[BCEL-76] Add parent type processing for ClassPath class. +[BCEL-83] Add support for getResource and getResourceAsStream to ClassPath +[BCEL-92] Properly parse StackMapTable attributes in Java 6 classfiles +[BCEL-104] Javadoc overhaul +[BCEL-119] BCEL is unnecessarily slow +[BCEL-157] Add support for INVOKEDYNAMIC and MethodHandles +[BCEL-160] Why using unstable sort at MethodGen.getLocalVariables() ? +[BCEL-163] Incorporate patch file from Findbugs +[BCEL-175] Implement the MethodParameters attribute Bug fixes from 5.2 ------------------ -BCEL-53 - Examples with enum breaks Gump (JDK1.5) - - -Enhancements from 5.2 ---------------------- - -BCEL-55 - Wrap JavaClass repository class (map values) with SoftReferences -BCEL-163 - Incorporate patch file from Findbugs +[BCEL-28] Mistake in "Peephole optimizer" example at http://commons.apache.org/bcel/manual.html +[BCEL-74] BCEL cannot be used as java.system.class.loader +[BCEL-77] XSLT transforms broken in Turkish Locale. +[BCEL-79] java.lang.ClassFormatError: LVTT entry for 'local' in class file org/shiftone/jrat/test/dummy/CrashTestDummy does not match any LVT entry +[BCEL-81] ClassParser.parse() throws NullPointerException if class does not exist and ClassParser(String) constructor is used +[BCEL-85] ArrayOutOfBoundsException in InstructionFinder +[BCEL-87] Website: Incorrect URL for source; version 5.2 is not in the bug page +[BCEL-88] bcelified method doesn't pass verification +[BCEL-89] return type not verified by JustIce +[BCEL-94] @since tag incorrect for Annotation classes in BCEL trunk +[BCEL-95] InstructionFactory missing % operator for Float, Double +[BCEL-96] Fields in Annotations and AnnotationEntry are inaccessible to subclasses +[BCEL-97] Add support for getResources to ClassPath +[BCEL-98] Two source files in repository are empty +[BCEL-99] Maven POM file calls in apache regex but code does not use it +[BCEL-100] ClassParser throws unintelligible Exception +[BCEL-101] verifier raises ....AssertionViolatedException when done against Java5 files with generics/annotations +[BCEL-102] Verifier fails in pass 2 with "Number of LocalVariableTable attributes of Code attribute" on static methods. +[BCEL-107] ParameterAnnotationEntries are read not dumped +[BCEL-108] RuntimeVisible Annotations duplicated +[BCEL-112] ARRAYLENGTH incorrectly not StackConsumer +[BCEL-114] Error in method search() defined in org.apache.bcel.util.InstructionFinder +[BCEL-115] Deleting all instructions of a list shows wrong behaviour +[BCEL-120] Make BCEL JAR OSGi compatible +[BCEL-122] ArrayIndexOutOfBoundsException thrown from TABLESWITCH.initFromFile +[BCEL-124] tableswitch/lookupswitch invalid alignment of 4-byte operands +[BCEL-125] Incorrect size calculation in InstructionFinder +[BCEL-130] Class files containing "ParameterAnnotations" are dumped incorrectly +[BCEL-131] Class files containing "StackMapTable" attributes (on method code) are dumped incorrectly +[BCEL-132] org.apache.bcel.classfile.ClassParser: NullPointerException caused by fileopen failed +[BCEL-133] org.apache.bcel.classfile.ClassParser: NullPointerException caused by invalid filename +[BCEL-134] ExecutionVisitor doesn't support Class constant type for LDC and LDC_W +[BCEL-135] BCELifier issue: BCELFactory fails to handle float and long constants +[BCEL-137] "Invalid method signature: TT;" when using MethodGen for a method having a generic parameter +[BCEL-138] FieldInstruction.getFieldSize() doesn't decode Type.getTypeSize() output +[BCEL-140] org.apache.bcel.generic.Instruction.equals(Object) does not follow Object.equals(Object) rules +[BCEL-141] Select instructions should implement StackConsumer instead of StackProducer +[BCEL-143] Fix CPL License issues with EnclosingMethod.java and LocalVariableTypeTable.java +[BCEL-145] Type.getReturnTypeSize() doesn't decode Type.getTypeSize() output +[BCEL-146] SyntheticRepository.loadClass() fails to close the inputStream +[BCEL-148] BCELifier produces incorrect code for methods containing loads of class literals from constant pool +[BCEL-151] Code attribute size not updated +[BCEL-152] Incorrect link for Jasmin assembler language +[BCEL-153] Examples not present in source or binary downloads +[BCEL-154] ClassParser.parse() generates NPE if it cannot open the file +[BCEL-155] InstConstraintVisitor does not handle class constants +[BCEL-156] Pass3bVerifier crashes on empty methods +[BCEL-159] LocalVariableGen.getLocalVariable() computes incorrect length +[BCEL-164] Method does not have a method to access parameter annotations +[BCEL-167] ClassPath.getResource does not correctly perform URL escaping +[BCEL-173] ClassParser fails to parse JDK classes in Java 8: ClassFormatException: Invalid byte tag in constant pool +[BCEL-174] Verification of interfaces with default methods fails with Java 8 Feedback -------- + Open source works best when you give feedback: -http://commons.apache.org/bcel + + http://commons.apache.org/bcel Please direct all bug reports to JIRA: -https://issues.apache.org/jira/browse/BCEL + + https://issues.apache.org/jira/browse/BCEL Or subscribe to the commons-user mailing list -The BCEL Team +The Apache Commons Team