Skip to content

Commit 6b8eb60

Browse files
committed
Upgrade Byte Buddy to 1.9.0
1 parent 707685e commit 6b8eb60

10 files changed

Lines changed: 28 additions & 13 deletions

File tree

.circleci/config.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,6 @@ jobs:
182182
# Reset the cache approx every release
183183
keys:
184184
- dd-trace-java-version-scan-{{ checksum "dd-trace-java.gradle" }}
185-
- dd-trace-java-version-scan
186185

187186
- run:
188187
name: Verify Version Scan and Muzzle

buildSrc/build.gradle

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,6 @@ dependencies {
1313
compile group: 'org.apache.maven', name: 'maven-aether-provider', version: '3.3.9'
1414

1515
compile group: 'com.google.guava', name: 'guava', version: '20.0'
16-
compile group: 'org.ow2.asm', name: 'asm-all', version: '5.2'
16+
compile group: 'org.ow2.asm', name: 'asm', version: '7.0-beta'
17+
compile group: 'org.ow2.asm', name: 'asm-tree', version: '7.0-beta'
1718
}

dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/DDCachingPoolStrategy.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ public void clear() {
9090
cache.invalidateAll();
9191
}
9292

93-
private class ResolutionProvider implements Callable<TypePool.Resolution> {
93+
private static class ResolutionProvider implements Callable<TypePool.Resolution> {
9494
private final TypePool.Resolution value;
9595

9696
private ResolutionProvider(final TypePool.Resolution value) {

dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/Instrumenter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ public AgentBuilder instrument(final AgentBuilder parentAgentBuilder) {
9696
.transform(DDTransformers.defaultTransformers());
9797
agentBuilder = injectHelperClasses(agentBuilder);
9898
agentBuilder = applyInstrumentationTransformers(agentBuilder);
99-
return agentBuilder.asDecorator();
99+
return agentBuilder;
100100
}
101101

102102
private AgentBuilder.Identified.Extendable injectHelperClasses(

dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/Utils.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,9 @@ public class Utils {
3131
// jackson
3232
"org.msgpack",
3333
"com.fasterxml.jackson",
34-
"org.yaml.snakeyaml"
34+
"org.yaml.snakeyaml",
35+
// modules
36+
"module-info",
3537
};
3638

3739
private static Method findLoadedClassMethod = null;

dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/MuzzleGradlePlugin.java

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
package datadog.trace.agent.tooling.muzzle;
22

33
import datadog.trace.agent.tooling.Instrumenter;
4+
import java.io.IOException;
45
import net.bytebuddy.build.Plugin;
56
import net.bytebuddy.description.type.TypeDefinition;
67
import net.bytebuddy.description.type.TypeDescription;
8+
import net.bytebuddy.dynamic.ClassFileLocator;
79
import net.bytebuddy.dynamic.DynamicType.Builder;
810

911
/** Bytebuddy gradle plugin which creates muzzle-references at compile time. */
@@ -30,10 +32,16 @@ public boolean matches(final TypeDescription target) {
3032
}
3133

3234
@Override
33-
public Builder<?> apply(final Builder<?> builder, final TypeDescription typeDescription) {
35+
public Builder<?> apply(
36+
final Builder<?> builder,
37+
final TypeDescription typeDescription,
38+
final ClassFileLocator classFileLocator) {
3439
return builder.visit(new MuzzleVisitor());
3540
}
3641

42+
@Override
43+
public void close() throws IOException {}
44+
3745
/** Compile-time Optimization used by gradle buildscripts. */
3846
public static class NoOp implements Plugin {
3947
@Override
@@ -42,8 +50,14 @@ public boolean matches(final TypeDescription target) {
4250
}
4351

4452
@Override
45-
public Builder<?> apply(final Builder<?> builder, final TypeDescription typeDescription) {
53+
public Builder<?> apply(
54+
final Builder<?> builder,
55+
final TypeDescription typeDescription,
56+
final ClassFileLocator classFileLocator) {
4657
return builder;
4758
}
59+
60+
@Override
61+
public void close() throws IOException {}
4862
}
4963
}

dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/MuzzleVisitor.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public static class InsertSafetyMatcher extends ClassVisitor {
5454
private Instrumenter.Default instrumenter;
5555

5656
public InsertSafetyMatcher(ClassVisitor classVisitor) {
57-
super(Opcodes.ASM6, classVisitor);
57+
super(Opcodes.ASM7, classVisitor);
5858
}
5959

6060
@Override
@@ -461,7 +461,7 @@ public void visitEnd() {
461461
/** Append a field initializer to the end of a method. */
462462
public class InitializeFieldVisitor extends MethodVisitor {
463463
public InitializeFieldVisitor(MethodVisitor methodVisitor) {
464-
super(Opcodes.ASM6, methodVisitor);
464+
super(Opcodes.ASM7, methodVisitor);
465465
}
466466

467467
@Override

dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ private static Type underlyingType(Type type) {
169169
private boolean createFromMethodBodiesOnly;
170170

171171
private ReferenceCreator(ClassVisitor classVisitor, boolean createFromMethodBodiesOnly) {
172-
super(Opcodes.ASM6, classVisitor);
172+
super(Opcodes.ASM7, classVisitor);
173173
this.createFromMethodBodiesOnly = createFromMethodBodiesOnly;
174174
}
175175

@@ -229,7 +229,7 @@ private class AdviceReferenceMethodVisitor extends MethodVisitor {
229229
private int currentLineNumber = -1;
230230

231231
public AdviceReferenceMethodVisitor(MethodVisitor methodVisitor) {
232-
super(Opcodes.ASM6, methodVisitor);
232+
super(Opcodes.ASM7, methodVisitor);
233233
}
234234

235235
@Override

dd-java-agent/agent-tooling/src/test/groovy/datadog/trace/agent/test/ExceptionHandlerTest.groovy

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ class ExceptionHandlerTest extends Specification {
3838
.advice(
3939
isMethod().and(named("smallStack").or(named("largeStack"))),
4040
BadAdvice.NoOpAdvice.getName()))
41-
.asDecorator()
4241

4342
ByteBuddyAgent.install()
4443
builder.installOn(ByteBuddyAgent.getInstrumentation())

gradle/dependencies.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ ext {
1515
junit : "4.12",
1616
logback : "1.2.3",
1717
lombok : "1.18.0",
18-
bytebuddy : "1.8.14",
18+
bytebuddy : "1.9.0",
1919
]
2020

2121
deps = [

0 commit comments

Comments
 (0)