Releases: raphw/byte-buddy
Releases · raphw/byte-buddy
Byte Buddy 1.5.6
- Added possibility to configure suppression handler in
Adviceclasses.
Byte Buddy 1.5.5
- Refactored
Adviceto use stack manipulations andAssigner. - Refactored
Adviceto useReturninstead ofBoxedReturnand addedAllArgumentsinstead ofBoxedArgumentsin conjunction with allowing to use dynamic typing for assignments via the annotation. - Added fixed value instrumentation for method parameters.
- Added weak class loader referencing for
Nexusand allow registration of aReferenceQueue.
Byte Buddy 1.5.4
- Extended
MethodCallAPI. - Added additional element matchers.
- Extended
AsmVisitorWrapperAPI.
Byte Buddy 1.5.3
- Refactored
Adviceto allow usage as a wrapper for anImplementation. This allows chaining of such advices. - Allow to dynamically locate a
FieldDescriptionorParameterDescriptionfrom a customAdviceannotation which binds the field or parameter value. - Added
invokeSelfoption toMethodCallinstrumentation.
Byte Buddy 1.5.2
- Refactored
FieldAccessorto allow more flexible creation of getters and setters of particular parameters. - Create string-based hashes for random fields that depend on a value's hash value.
Byte Buddy 1.5.1
- Fixed stack size computation when using
@Advice.Origin.
Byte Buddy 1.5.0
- Refactor
Instrumentations to only delegate to fields instead of requireing their definition. ThedefineFieldAPI should be generally preferred for defining fields as it is much richer and therefore easier to extend. - Made type annotation reader more robust towards older versions of Java 8.
- Refactored lazy type resolution for generic types to no longer eagerly load generic types when navigating through a type hierarchy.
- Unified several implementation APIs and added better abstractions.
- Fixed some missing bits of validation of implementations.
- Do not replicate incompatible bridge methods.
Byte Buddy 1.4.33
- Use
IMITATE_SUPER_CLASS_OPENINGas a default constructor strategy. - Extract method visibility during method graph compilation.
- Apply a type variable's erasure if a type variable is out of scope instead of throwing an exception. This can happen when subclassing an inner type outside of its outer type or when a compiler such as scalac adds inconsistent generic type information.
- Optimize the application of the ignore matcher within an agent builder to only be applied once.
Byte Buddy 1.4.32
- Added
ConstructorStrategyfor inheriting constructors but make thempublic. - Do not instrument anonymously loaded types during redefinition unless the lambda strategy is enabled.
Byte Buddy 1.4.31
- Reuse
CircularityLockon allAgentBuilders by default to avoid that Byte Buddy agents introduce circularities to different agents. - Also allow using
AdviceasImplementation. - Added
FixedValue.self()and addedFieldPersistencefor describingvolatilefields.