 |
History
29 October 2007: ASM 3.1 (cvs-tag: ASM_3_1)
- extended semantic of 'internal name' to array classes (internal
name equal to descriptor in this case); renamed 'desc' parameter of
'visitTypeInsn' to 'type'
- new readLabel method in ClassReader
- new getLabelNode method in MethodNode (see bug 306920)
- new resetLabel(s) methods in LabelNode and InsnList (feature
request 306499)
- new checks in CheckMethodVisitor (for stack frames)
- new CheckSignatureAdapter class
- new Remapper* classes in commons
- support for primitive types in GeneratorAdaptor.push (feature
request 307378)
- new build options (no writer, no frames support, etc)
- new tests
- bug fixes
- 307600 StackOverflowError in org.objectweb.asm.MethodWriter.findSubroutine()
- 307392 MethodWriter generates invalid RuntimeInvisibleParameterAnnotations
for enum constructors
- 307242 Patch to compile ASM 2.2.3 against Java 1.4
- 307011 Typo error in ASM 3.0 User Guide
- 306921 SignatureReader does not handle inner class extends of
other inner class
- 306920 MethodNode.labelNode(label) smashes "user" data Label.info
- 306521 Parameter local of visitFrame() is lost when using a ClassNode
- 306503 CheckClassAdapter doesn't flush its output
- 306422 Another code cleanup patch
- 306349 SerialVersionUIDAdder breaks compile if using JDK 1.4
- bug fix related to xSTORE in tree.analysis.Frame
- bug fix in LocalVariableSorter
- javadoc fixes
1 November 2006: ASM 3.0 (cvs-tag: ASM_3_0)
- visit*Annotation methods can now return null
- COMPUTE_MAXS now works with all subroutines, even very weird ones
that cannot be produced by javac
- new getters in ClassReader, SKIP_DEBUG now skips visitSource
- new methods in Type: getObjectType, getConstructorDescriptor
- InsnList now supports ListIterator interface
- new insertBefore() and insert*() methods in InsnList class
- improved Analyzer API, support for abstract and native methods
- improved Method class behavior with default package
- minor bug fixes
- 305716 bug in floating point constant handling in constant pool
writing
- 305917 optimizer.ClassConstantsCollector generates an invalid
class constant
- 306058 FieldNode.accept() cannot handle ClassVisitors yielding
null as FieldVisitor
- new tests
- javadoc improvements
06 July 2006: ASM 3.0 RC1 (cvs-tag: ASM_3_0_RC1)
- new API for instruction lists in tree package
- new JSRInliner class in commons
- new CodeSizeEvaluator class in commons
- changes and optimizations in AnalyzerAdapter
- DataflowInterpreter renamed into SourceInterpreter
- port of changes from ASM 2.x
06 July 2006: ASM 2.2.3 (cvs-tag: ASM_2_2_3)
- compute maxs option now takes visitLocalVariable into account
- bug fix in TraceSignatureVisitor
- minor Javadoc improvements
20 April 2006: ASM 3.0 beta2 (cvs-tag: ASM_3_0_BETA2)
- visitFrame is now called after visitLabel in ClassReader
- new SKIP_FRAMES and SKIP_CODE flags in ClassReader
- fixed issue with dead code and COMPUTE_FRAMES option in ClassWriter
- port of bug fixes from ASM_2_2_2
- refactorings in core package to get same performances as in ASM 2.x
(3.0 beta was slightly less performant than 2.x)
- refactored tests and added many new tests. Tests now cover 100%
of the code, except in commons package.
7 April 2006: ASM 2.2.2 (cvs-tag: ASM_2_2_2)
- bug fix in ClassWriter for SourceDebugExtension attribute
- bug fix in LocalVariableSorter when same variable slot is used to
save different types
- all fields in classes ClassNode, MethodNode, LookupSwitchInsnNode
and TableSwitchInsnNode of the tree package are mutable (non-final)
- additional checks in CheckClassAdapter, CheckMethodAdapter and
CheckAnnotationAdapter
- new constructor in SimpleVerifier with list of interfaces of the
class being verified to allow isAssignableFrom check without
loading this class (which may be invalid)
14 December 2005: ASM 3.0 beta (cvs-tag: ASM_3_0_BETA)
- Major changes for the new Java 6 StackMapTable attribute
- StackMapTable support integrated in core package (new
visitFrame method in MethodVisitor)
- asm.attrs package removed
- new commons.AnalyzerAdapter class
- incremental stack map frames update in LocalVariablesSorter
- ClassReader and ClassWriter constructors changed
- ...
14 December 2005: ASM 2.2.1 (cvs-tag: ASM_2_2_1)
- bug fix in ClassReader for empty annotation array values
- new accept method in MethodNode
- new checks in asm.util
- performance optimizations in LocalVariablesSorter
- more precise type system used in analysis package
- javadoc fixes and improvements
24 November 2005: ASM 2.2 (cvs-tag: ASM_2_2)
- pass through behavior for unknown attributes
- optimizations for "mostly add" transformations (new ClassWriter constructor)
- removed constraint for visitTryCatchBlock call order with respect to visitLabel
- visitTryCatchBlock can be called before or after its labels are visited
- ClassReader now calls visitTryCatchBloc at the beginning of the method body
- new AdviceAdapter class in commons
- new constructor in GeneratorAdapter for better integration with the plain visitors/adapters
- fixed potential endles loop in IntMap.get()
- bug fixes in xml package
- improved javadocs (commons, tree)
- new tests
- corbertura added to the build
25 August 2005: ASM 2.1 (cvs-tag: ASM_2_1)
- support for StackMapTable attribute in asm.attrs
- restructured StackMap attribute implementation (SM and SMT are using the same frames)
- addition of Traceable interface in asm.util.attrs
- new "dependencies" example
- improved commons.Method
- deprecated asm.tree.Insn.getByOpcode()
- public constructor in InsnNode
- better exception handling in analyzer
- added Opcodes.V1_6 constant
- javadoc improvements
- changed code style (Eclipse formatter + Sun conventions with minor changes)
- asm-all jar
- bug fixes
- correct handling of synthetic attribute vs. synthetic flag
- bug in TraceClassVisitor
- bug in analyzer.Frame for ASTORE
- added BasicValue.hashCode() and DataflowValue.hashCode()
- bug about size calculation for custom attributes
17 May 2005: ASM 2.0 (cvs-tag: ASM_2_0)
7 February 2005: ASM 2.0.RC1 (cvs-tag: ASM_2_0_RC1)
- Bug fixes
- New visitCode() method in MethodVisitor to easily detect first instruction
- signature support (contribution from Thomas Hallgren)
- commons package (contribution from CLIB and other projects; not yet stable)
- memory usage optimization in tree package (contribution from Rene Treffer)
- performance improvements in core package
- performance improvements in analysis package (dataflowinterpreter is now two times faster)
- asm library plugin for Eclipse, used by Bytecode Outline plugin
21 January 2005: ASM 1.5.3 (cvs-tag: ASM_1_5_3)
- Bug fixes
- New behavior for visitLineNumber
8 November 2004: ASM 2.0 alpha (cvs-tag: ASM_2_0_ALPHA)
- Major API changes for Java 5 attributes
- added new FieldVisitor interface
- added new AnnotationVisitor interface
- renamed CodeVisitor into MethodVisitor
- renamed Constants into Opcodes
- added and changed methods in ClassVisitor and CodeVisitor
- removed almost all classes in attrs package
- removed TreeClassAdapter and TreeCodeAdapter
- added new MemberNode, AnnotationNode and LabelNode classes
- many changes in asm.util package
- Added many new tests, reorganized tests classes and scripts
8 November 2004: ASM 1.5.2 (cvs-tag: ASM_1_5_2)
23 September 2004: ASM 1.5.1 (cvs-tag: ASM_1_5_1)
- Cleaned up ASMifierClassVisitor
- Removed AnnotationElementValue
- Added more tests for attributes and Java 5 annotations
- Added new annotations example
- Build package for Maven's ibiblio repository
- Bug fixes
30 August 2004: ASM 1.5 (cvs-tag: ASM_1_5)
- Added support for class version in ClassVisitor
- Changed behavior for unrecognized attributes
- Added new analyzer in tree.analysis package (contribution from Bing Ran)
- Improved build files
- Bug fixes
11 May 2004: ASM 1.4.3 (cvs-tag: ASM_1_4_3)
- Added tree.analysis package
- Added xml package, contributed by Eugene Kuleshov
- Bug fixes
1 March 2004: ASM 1.4.2 (cvs-tag: ASM_1_4_2)
- Improved build files to facilitate Linux packaging
- Bug fixes
12 December 2003: ASM 1.4.1 (cvs-tag: ASM_1_4_1)
- Added attrs package, contributed by Eugene Kuleshov
13 November 2003: ASM 1.4 (cvs-tag: ASM_1_4)
3 November 2003: ASM 1.3.6 (cvs-tag: ASM_1_3_6)
- Changed license from LGPL to BSD
8 October 2003: ASM 1.3.5 (cvs-tag: ASM_1_3_5)
- Bug fixes
- Added thread safety support in ClassReader
- Added equals and hashcode in Type
- Added FAQ
9 July 2003: ASM 1.3.4 (cvs-tag: ASM_1_3_4)
- Added kASM jar (needed a small refactoring)
3 October 2002: ASM 1.3.3 (cvs-tag: ASM_1_3_3)
- Added tree package
- Added support for GOTO_W and JSR_W
- Added an ant target to create a debian package
6 September 2002: ASM 1.3.2 (cvs-tag: ASM_1_3_2)
6 September 2002: ASM 1.3.1 (cvs-tag: ASM_1_3_1)
11 July 2002: ASM 1.3 (cvs-tag: ASM_1_3)
|