Releases: raphw/byte-buddy
Releases · raphw/byte-buddy
Byte Buddy 0.5.4
- Fixed missing retention of method annotations of instrumented types.
- Allowed dynamic lookup of methods for the
MethodCallinstrumentation.
Byte Buddy 0.5.3
- Changed the
SuperMethodCallinstrumentation to fall back to a default method call if required as different behavior
is surprising and introduces subtle bugs in user code. - Added a
MethodCallinstrumentation that allows hard-coding a method call. - Added an
InvokeDynamicinstrumentation that allows runtime dispatching by bootstrap methods. - Fixed the default
TypePoolto retain generic signatures in order to avoid that agents delete such signatures. - Fixed a bug in all of the the default
ConstructorStrategythat effectively prevented intercepting of constructors.
Byte Buddy 0.5.2
- Fixed a bug where interface generation would result in a
NullPointerException. - Added additional
ElementMatchers that allow to identify class loaders.
Byte Buddy 0.5.1
- Added the
andThenmethod to theSuperMethodCallinstrumentation in order to allow for a more convenient constructor interception where a hard-coded super method call is required by the Java verifier.
Byte Buddy 0.5
- Added the
DeclaringTypeResolveras a component in the default chain which selects the most specific method out of two. This is mainly meant to avoid the accidental matching of the methods that are declared by theObjecttype. - Added
TypeInitializers in order to allowInstrumentations to define type initializer blocks. - Replaced the
MethodMatcherAPI with theElementMatcherAPI which allows for a more sophisticated matching DSL. - Added a
ClassLoadingStrategyfor Android in its own module. - Introduced an
AgentBuilderAPI and implementation.
Byte Buddy 0.4.1
- Refactored the implementation of the
VoidAwareAssignerwhich would otherwise cause unexpected behavior in its
default state. - Added a missing boxing instruction to the
InvocationHandlerAdapter.
Byte Buddy 0.4
- Extended
Instrumentation.Contextto support field accessors. - Added the
TypePoolabstraction and added a default implementation. - Refactored annotations to have an intermediate form as
AnnotationDescriptionwhich does not need to represent loaded values. - Refactored several built-in
Instrumentation, among others, all implementations now supportTypeDescriptionin addition to loadedClassas their arguments - Added several annotations that apply to the
MethodDelegation.
Byte Buddy 0.3.1
- Added support for optionally specifying a
ProtectionDomainfor the built-inClassLoadingStrategyimplementations. - Fixed a bug in the resolution of resources of the
ByteArrayClassLoaderand its child-first implementation.
Byte Buddy 0.3
- Added basic support for Java 7 types
MethodHandleandMethodTypewhich are available from Java 7 for injection. - Added support for type redefinition and type rebasing.
- Added support for accessing a JVM's HotSwap features and a Java agent.
- Added latent a child-first
ClassLoadingStrategyand manifest versions of theWRAPPERandCHILD_FIRSTdefault class loading strategies.
Byte Buddy 0.2.1
- Added proper support for defining class initializers. Added support for field caching from method instrumentations, mainly for allowing the reuse of
Methodinstances for the@Originannotation and theInvocationHandlerAdapter.