Releases: raphw/byte-buddy
Releases · raphw/byte-buddy
Byte Buddy 0.6.4
- Extended public API to accept more general argument types when appropriate.
- Extended
@Origin
annotation to allow for accepting modifiers.
Byte Buddy 0.6.3
- Made the TypeDescription.ForLoadedType class loader agnostic. Before, a class that was loaded by multiple class loaders would have been considered inequal what is not true for the byte code level.
Byte Buddy 0.6.2
- Added additional class validation such that it becomes impossible to define members on classes that do not fit the class's structure, i.e. default methods on Java interfaces in version seven.
- Added a default
Assigner
singleton.
Byte Buddy 0.6.1
- Added
AnnotationDescription.Builder
to allow easy definition of annotation values without loading any values. - Added possibility to define enumerations at runtime.
- Added possibility to dynamically read enumerations for the
MethodCall
andInvokeDynamic
implementations. - Further API clean-up.
Byte Buddy 0.6
- Renamed the
Instrumentation
interface toImplementation
to avoid naming conflicts with Java types. - Renamed the
Field
annotation toFieldProxy
to avoid naming conflicts with Java types. - Refactored package structure to make the implementation more readable.
- Added possibility to define annotation default values.
- Avoid creation of an auxiliary placeholder type for method rebasements if it is not required.
- Avoid rebasing of methods if they are not instrumented.
- Reimplemented
TypeWriter
,MethodRegistry
and other supporting infrastructure to make the code simpler. - Refactored testing that is related to the previous infrastructure.
Byte Buddy 0.5.6
- Added possibility to write parameter meta information to created classes if it is fully available for a method.
Byte Buddy 0.5.5
- Retrofitted method parameters to be represented by
ParameterDescription
s and added possibility to extract names and modifiers for these parameters, either by using the Java 8 API (if available) or by reading this information from the underlying class file. - Fixed a
NullPointerException
being thrown due to accidental return of anull
value from a method.
Byte Buddy 0.5.4
- Fixed missing retention of method annotations of instrumented types.
- Allowed dynamic lookup of methods for the
MethodCall
instrumentation.
Byte Buddy 0.5.3
- Changed the
SuperMethodCall
instrumentation to fall back to a default method call if required as different behavior
is surprising and introduces subtle bugs in user code. - Added a
MethodCall
instrumentation that allows hard-coding a method call. - Added an
InvokeDynamic
instrumentation that allows runtime dispatching by bootstrap methods. - Fixed the default
TypePool
to retain generic signatures in order to avoid that agents delete such signatures. - Fixed a bug in all of the the default
ConstructorStrategy
that effectively prevented intercepting of constructors.
Byte Buddy 0.5.2
- Fixed a bug where interface generation would result in a
NullPointerException
. - Added additional
ElementMatcher
s that allow to identify class loaders.