Skip to content

Releases: raphw/byte-buddy

Byte Buddy 0.7.7

14 Dec 08:20
Compare
Choose a tag to compare
  • Fixed type resolution for anoymously loaded classes by the ClassReloadingStrategy.
  • Added additional InitiailizationStrategys for self-injection where the new default strategy loads types that are independent of the instrumented type before completing the instrumentation. This way, the resolution does not fail for types that are accessed via reflection before initializing the types if a constructor is rebased.

Byte Buddy 0.7.6

11 Dec 10:47
Compare
Choose a tag to compare
  • Fixed resolution of @Origin for constructors and added possibility to use the Executable type.
  • Fixed name resolution of types loaded by anonymous class loading.
  • Allowed alternative lookup for redefinitions to support types loaded by anonymous class loading.

Byte Buddy 0.7.5

07 Dec 09:54
Compare
Choose a tag to compare
  • Fixed generic type resolution optimization for proxies for @Super.

Byte Buddy 0.7.4

02 Dec 15:22
Compare
Choose a tag to compare
  • Added TypePool that returns precomputed TypeDescriptions for given types.
  • Fixed agent and nexus attachment and the corresponding value access.

Byte Buddy 0.7.3

30 Nov 18:57
Compare
Choose a tag to compare
  • Added visibility substitution for @Super when the instrumented type is instrumented to see changed state on a redefinition.
  • Added patch for modifier information of inner classes on a redefinition.
  • Added fallback for Nexus injection to attempt lookup of already loaded class if ressource cannot be located.

Byte Buddy 0.7.2

26 Nov 14:36
Compare
Choose a tag to compare
  • Added TypePool that falls back to class loading if a class cannot be located.
  • Added binary locator for agent builder that uses the above class pool and only parses the class file of the instrumented type.
  • Added methods for reading inner classes of a TypeDescription.
  • Fixed random naming based on random numbers to avoid signed numbers.
  • Moved Nexus and Installer types to a package-level to avoid illegal outer and inner class references which could be resolved eagerly.
  • Added validation for illegal constant pool entries.
  • Added a Premature initialization strategy for optimistically loading auxiliary types.
  • Added a ClassVisitorWrapper for translating Java class files prior to Java 5 to use explicit class loading rather than class pool constants.

Byte Buddy 0.7.1

16 Nov 06:39
Compare
Choose a tag to compare
  • Fixed injection order for types to avoid premature loading by dependant auxiliary types.
  • Added additional ClassFileLocators and refactored class file lookup to always use these locators.

Byte Buddy 0.7

11 Nov 15:57
Compare
Choose a tag to compare
  • Refactored injection strategy to always inject and load the instrumented type first to avoid premature loading by reference from auxiliary types.
  • Refactored AgentBuilder.Default to delay auxiliary type injection until load time to avoid premature loading by reference from auxiliary types.
  • Added API to add additional code to type initializers while building a type.
  • Refactored agent Nexus to allow for multiple registrations of self initializers if multiple agents are registered via Byte Buddy.
  • Fixed resolution of interface methods that were represented in the type hierarchy multiple times.
  • Implemented custom ASM class writer to allow for frame computation via Byte Buddy's type pool when this is required by a user.
  • Fallback to no allowing for instrumenting type initializers for rebased or redefined interfaces before Java 8.

Byte Buddy 0.7-rc6

29 Oct 06:01
Compare
Choose a tag to compare
Byte Buddy 0.7-rc6 Pre-release
Pre-release
  • Refactored AgentBuilder.Default to delegate exceptions during redefinitions to listener instead of throwing them.
  • Fixed bug where instrumented type would count to auxiliary types and trigger injection strategy.
  • Fixed bug where interface types would resolve to a non-generic type signature.
  • Added strategy to use redefinition or retransformation of the Instrumentation API when building agents.
  • Added lazy facade to be used by agent builder to improve performance for name-based matchers.

Byte Buddy 0.7-rc5

15 Oct 18:05
Compare
Choose a tag to compare
Byte Buddy 0.7-rc5 Pre-release
Pre-release
  • Fixed parser to supress exceptions from generic signatures which are not supposed to be included in the class file if no array type is generic.
  • Fixed class validator which did not allow <clinit> blocks in interface types.
  • Added restriction to retransformation to not attempt a retransformation at all if no class should be retransformed.
  • Added a factory for creating an Implementation.Context that is configurable. This way, it is possible to avoid a rebase of a type initializer which is not always possible.
  • Added a possibility to specify for an AgentBuilder how it should redefine or rebase a class that is intercepted.