Binary compatibility report for the dropwizard-protobuf library between 3.0.6 and 4.0.0-1 versions
Test Info
Library Name | dropwizard-protobuf |
Version #1 | 3.0.6 |
Version #2 | 4.0.0-1 |
Test Results
Total Java Modules | 1 |
Total Methods / Classes | 138 / 9 |
Compatibility |
85.8% |
Problem Summary
| Severity | Count |
Added Methods | - | 18 |
Removed Methods | High | 11 |
Problems with Data Types | High | 6 |
Medium | 0 |
Low | 3 |
Problems with Methods | High | 5 |
Medium | 0 |
Low | 0 |
Added Methods 18
dropwizard-protobuf-4.0.0-1.jar, Builder.class
package io.dropwizard.jersey.protobuf.protos
DropwizardProtos.ErrorMessage.Builder.clear ( ) : GeneratedMessageV3.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.clear:()Lcom/google/protobuf/GeneratedMessageV3$Builder;
DropwizardProtos.ErrorMessage.Builder.mergeUnknownFields ( UnknownFieldSet p1 ) : AbstractMessage.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.mergeUnknownFields:(Lcom/google/protobuf/UnknownFieldSet;)Lcom/google/protobuf/AbstractMessage$Builder;
DropwizardProtos.ErrorMessage.Builder.mergeUnknownFields ( UnknownFieldSet p1 ) : GeneratedMessageV3.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.mergeUnknownFields:(Lcom/google/protobuf/UnknownFieldSet;)Lcom/google/protobuf/GeneratedMessageV3$Builder;
DropwizardProtos.ErrorMessage.Builder.mergeUnknownFields ( UnknownFieldSet p1 ) : Message.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.mergeUnknownFields:(Lcom/google/protobuf/UnknownFieldSet;)Lcom/google/protobuf/Message$Builder;
DropwizardProtos.ErrorMessage.Builder.mergeUnknownFields ( UnknownFieldSet unknownFields ) : DropwizardProtos.ErrorMessage.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.mergeUnknownFields:(Lcom/google/protobuf/UnknownFieldSet;)Lio/dropwizard/jersey/protobuf/protos/DropwizardProtos$ErrorMessage$Builder;
DropwizardProtos.ErrorMessage.Builder.setUnknownFields ( UnknownFieldSet p1 ) : GeneratedMessageV3.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.setUnknownFields:(Lcom/google/protobuf/UnknownFieldSet;)Lcom/google/protobuf/GeneratedMessageV3$Builder;
DropwizardProtos.ErrorMessage.Builder.setUnknownFields ( UnknownFieldSet p1 ) : Message.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.setUnknownFields:(Lcom/google/protobuf/UnknownFieldSet;)Lcom/google/protobuf/Message$Builder;
DropwizardProtos.ErrorMessage.Builder.setUnknownFields ( UnknownFieldSet unknownFields ) : DropwizardProtos.ErrorMessage.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.setUnknownFields:(Lcom/google/protobuf/UnknownFieldSet;)Lio/dropwizard/jersey/protobuf/protos/DropwizardProtos$ErrorMessage$Builder;
dropwizard-protobuf-4.0.0-1.jar, InvalidProtocolBufferExceptionMapper.class
package io.dropwizard.jersey.protobuf
InvalidProtocolBufferExceptionMapper.toResponse ( InvalidProtocolBufferException exception ) : Response
io/dropwizard/jersey/protobuf/InvalidProtocolBufferExceptionMapper.toResponse:(Lcom/google/protobuf/InvalidProtocolBufferException;)Ljakarta/ws/rs/core/Response;
InvalidProtocolBufferExceptionMapper.toResponse ( Throwable p1 ) : Response
io/dropwizard/jersey/protobuf/InvalidProtocolBufferExceptionMapper.toResponse:(Ljava/lang/Throwable;)Ljakarta/ws/rs/core/Response;
dropwizard-protobuf-4.0.0-1.jar, ProtocolBufferMessageBodyProvider.class
package io.dropwizard.jersey.protobuf
ProtocolBufferMessageBodyProvider.getSize ( Message m, Class<?> type, Type genericType, Annotation[ ] annotations, MediaType mediaType ) : long
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.getSize:(Lcom/google/protobuf/Message;Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljakarta/ws/rs/core/MediaType;)J
ProtocolBufferMessageBodyProvider.getSize ( Object p1, Class p2, Type p3, Annotation[ ] p4, MediaType p5 ) : long
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.getSize:(Ljava/lang/Object;Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljakarta/ws/rs/core/MediaType;)J
ProtocolBufferMessageBodyProvider.isReadable ( Class<?> type, Type genericType, Annotation[ ] annotations, MediaType mediaType ) : boolean
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.isReadable:(Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljakarta/ws/rs/core/MediaType;)Z
ProtocolBufferMessageBodyProvider.isWriteable ( Class<?> type, Type genericType, Annotation[ ] annotations, MediaType mediaType ) : boolean
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.isWriteable:(Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljakarta/ws/rs/core/MediaType;)Z
ProtocolBufferMessageBodyProvider.readFrom ( Class p1, Type p2, Annotation[ ] p3, MediaType p4, MultivaluedMap p5, InputStream p6 ) : Object
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.readFrom:(Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljakarta/ws/rs/core/MediaType;Ljakarta/ws/rs/core/MultivaluedMap;Ljava/io/InputStream;)Ljava/lang/Object;
ProtocolBufferMessageBodyProvider.readFrom ( Class<Message> type, Type genericType, Annotation[ ] annotations, MediaType mediaType, MultivaluedMap<String,String> httpHeaders, InputStream entityStream ) : Message
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.readFrom:(Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljakarta/ws/rs/core/MediaType;Ljakarta/ws/rs/core/MultivaluedMap;Ljava/io/InputStream;)Lcom/google/protobuf/Message;
ProtocolBufferMessageBodyProvider.writeTo ( Message m, Class<?> type, Type genericType, Annotation[ ] annotations, MediaType mediaType, MultivaluedMap<String,Object> httpHeaders, OutputStream entityStream ) : void
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.writeTo:(Lcom/google/protobuf/Message;Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljakarta/ws/rs/core/MediaType;Ljakarta/ws/rs/core/MultivaluedMap;Ljava/io/OutputStream;)V
ProtocolBufferMessageBodyProvider.writeTo ( Object p1, Class p2, Type p3, Annotation[ ] p4, MediaType p5, MultivaluedMap p6, OutputStream p7 ) : void
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.writeTo:(Ljava/lang/Object;Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljakarta/ws/rs/core/MediaType;Ljakarta/ws/rs/core/MultivaluedMap;Ljava/io/OutputStream;)V
to the top
Removed Methods 11
dropwizard-protobuf-3.0.6.jar, Builder.class
package io.dropwizard.jersey.protobuf.protos
DropwizardProtos.ErrorMessage.Builder.clear ( ) : GeneratedMessage.Builder
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.clear:()Lcom/google/protobuf/GeneratedMessage$Builder;
dropwizard-protobuf-3.0.6.jar, InvalidProtocolBufferExceptionMapper.class
package io.dropwizard.jersey.protobuf
InvalidProtocolBufferExceptionMapper.toResponse ( InvalidProtocolBufferException exception ) : Response
io/dropwizard/jersey/protobuf/InvalidProtocolBufferExceptionMapper.toResponse:(Lcom/google/protobuf/InvalidProtocolBufferException;)Ljavax/ws/rs/core/Response;
InvalidProtocolBufferExceptionMapper.toResponse ( Throwable p1 ) : Response
io/dropwizard/jersey/protobuf/InvalidProtocolBufferExceptionMapper.toResponse:(Ljava/lang/Throwable;)Ljavax/ws/rs/core/Response;
dropwizard-protobuf-3.0.6.jar, ProtocolBufferMessageBodyProvider.class
package io.dropwizard.jersey.protobuf
ProtocolBufferMessageBodyProvider.getSize ( Message m, Class<?> type, Type genericType, Annotation[ ] annotations, MediaType mediaType ) : long
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.getSize:(Lcom/google/protobuf/Message;Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljavax/ws/rs/core/MediaType;)J
ProtocolBufferMessageBodyProvider.getSize ( Object p1, Class p2, Type p3, Annotation[ ] p4, MediaType p5 ) : long
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.getSize:(Ljava/lang/Object;Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljavax/ws/rs/core/MediaType;)J
ProtocolBufferMessageBodyProvider.isReadable ( Class<?> type, Type genericType, Annotation[ ] annotations, MediaType mediaType ) : boolean
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.isReadable:(Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljavax/ws/rs/core/MediaType;)Z
ProtocolBufferMessageBodyProvider.isWriteable ( Class<?> type, Type genericType, Annotation[ ] annotations, MediaType mediaType ) : boolean
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.isWriteable:(Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljavax/ws/rs/core/MediaType;)Z
ProtocolBufferMessageBodyProvider.readFrom ( Class p1, Type p2, Annotation[ ] p3, MediaType p4, MultivaluedMap p5, InputStream p6 ) : Object
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.readFrom:(Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljavax/ws/rs/core/MediaType;Ljavax/ws/rs/core/MultivaluedMap;Ljava/io/InputStream;)Ljava/lang/Object;
ProtocolBufferMessageBodyProvider.readFrom ( Class<Message> type, Type genericType, Annotation[ ] annotations, MediaType mediaType, MultivaluedMap<String,String> httpHeaders, InputStream entityStream ) : Message
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.readFrom:(Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljavax/ws/rs/core/MediaType;Ljavax/ws/rs/core/MultivaluedMap;Ljava/io/InputStream;)Lcom/google/protobuf/Message;
ProtocolBufferMessageBodyProvider.writeTo ( Message m, Class<?> type, Type genericType, Annotation[ ] annotations, MediaType mediaType, MultivaluedMap<String,Object> httpHeaders, OutputStream entityStream ) : void
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.writeTo:(Lcom/google/protobuf/Message;Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljavax/ws/rs/core/MediaType;Ljavax/ws/rs/core/MultivaluedMap;Ljava/io/OutputStream;)V
ProtocolBufferMessageBodyProvider.writeTo ( Object p1, Class p2, Type p3, Annotation[ ] p4, MediaType p5, MultivaluedMap p6, OutputStream p7 ) : void
io/dropwizard/jersey/protobuf/ProtocolBufferMessageBodyProvider.writeTo:(Ljava/lang/Object;Ljava/lang/Class;Ljava/lang/reflect/Type;[Ljava/lang/annotation/Annotation;Ljavax/ws/rs/core/MediaType;Ljavax/ws/rs/core/MultivaluedMap;Ljava/io/OutputStream;)V
to the top
Problems with Data Types, High Severity 6
dropwizard-protobuf-3.0.6.jar
package io.dropwizard.jersey.protobuf
[+] class InvalidProtocolBufferExceptionMapper 1
| Change | Effect |
---|
1 |
Removed super-interface javax.ws.rs.ext.ExceptionMapper<com.google.protobuf.InvalidProtocolBufferException>. |
A client program may be interrupted by NoSuchMethodError exception. |
[+] affected methods: 1 (0.7%)
InvalidProtocolBufferExceptionMapper.InvalidProtocolBufferExceptionMapper ( )This constructor is from 'InvalidProtocolBufferExceptionMapper' class.
[+] class ProtocolBufferMediaType 3
| Change | Effect |
---|
1 |
Type of field APPLICATION_PROTOBUF_JSON_TYPE has been changed from javax.ws.rs.core.MediaType to jakarta.ws.rs.core.MediaType. |
A client program may be interrupted by NoSuchFieldError exception. |
2 |
Type of field APPLICATION_PROTOBUF_TEXT_TYPE has been changed from javax.ws.rs.core.MediaType to jakarta.ws.rs.core.MediaType. |
A client program may be interrupted by NoSuchFieldError exception. |
3 |
Type of field APPLICATION_PROTOBUF_TYPE has been changed from javax.ws.rs.core.MediaType to jakarta.ws.rs.core.MediaType. |
A client program may be interrupted by NoSuchFieldError exception. |
[+] affected methods: 1 (0.7%)
ProtocolBufferMediaType.ProtocolBufferMediaType ( )This constructor is from 'ProtocolBufferMediaType' class.
[+] class ProtocolBufferMessageBodyProvider 2
| Change | Effect |
---|
1 |
Removed super-interface javax.ws.rs.ext.MessageBodyReader<com.google.protobuf.Message>. |
A client program may be interrupted by NoSuchMethodError exception. |
2 |
Removed super-interface javax.ws.rs.ext.MessageBodyWriter<com.google.protobuf.Message>. |
A client program may be interrupted by NoSuchMethodError exception. |
[+] affected methods: 1 (0.7%)
ProtocolBufferMessageBodyProvider.ProtocolBufferMessageBodyProvider ( )This constructor is from 'ProtocolBufferMessageBodyProvider' class.
to the top
Problems with Methods, High Severity 5
dropwizard-protobuf-3.0.6.jar, Builder.class
package io.dropwizard.jersey.protobuf.protos
[+] DropwizardProtos.ErrorMessage.Builder.clear ( ) : DropwizardProtos.ErrorMessage.Builder 1
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.clear:()Lio/dropwizard/jersey/protobuf/protos/DropwizardProtos$ErrorMessage$Builder;
| Change | Effect |
---|
1 |
Return value type has been changed from DropwizardProtos.ErrorMessage.Builder to com.google.protobuf.GeneratedMessageV3.Builder. |
This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
[+] DropwizardProtos.ErrorMessage.Builder.internalGetFieldAccessorTable ( ) : GeneratedMessage.FieldAccessorTable 1
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.Builder.internalGetFieldAccessorTable:()Lcom/google/protobuf/GeneratedMessage$FieldAccessorTable;
| Change | Effect |
---|
1 |
Return value type has been changed from com.google.protobuf.GeneratedMessage.FieldAccessorTable to com.google.protobuf.GeneratedMessageV3.FieldAccessorTable. |
This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
dropwizard-protobuf-3.0.6.jar, ErrorMessage.class
package io.dropwizard.jersey.protobuf.protos
[+] DropwizardProtos.ErrorMessage.internalGetFieldAccessorTable ( ) : GeneratedMessage.FieldAccessorTable 1
io/dropwizard/jersey/protobuf/protos/DropwizardProtos.ErrorMessage.internalGetFieldAccessorTable:()Lcom/google/protobuf/GeneratedMessage$FieldAccessorTable;
| Change | Effect |
---|
1 |
Return value type has been changed from com.google.protobuf.GeneratedMessage.FieldAccessorTable to com.google.protobuf.GeneratedMessageV3.FieldAccessorTable. |
This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
dropwizard-protobuf-3.0.6.jar, InvalidProtocolBufferExceptionMapper.class
package io.dropwizard.jersey.protobuf
[+] InvalidProtocolBufferExceptionMapper.toResponse ( InvalidProtocolBufferException exception ) : Response 1
io/dropwizard/jersey/protobuf/InvalidProtocolBufferExceptionMapper.toResponse:(Lcom/google/protobuf/InvalidProtocolBufferException;)Ljavax/ws/rs/core/Response;
| Change | Effect |
---|
1 |
Return value type has been changed from javax.ws.rs.core.Response to jakarta.ws.rs.core.Response. |
This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
[+] InvalidProtocolBufferExceptionMapper.toResponse ( Throwable p1 ) : Response 1
io/dropwizard/jersey/protobuf/InvalidProtocolBufferExceptionMapper.toResponse:(Ljava/lang/Throwable;)Ljavax/ws/rs/core/Response;
| Change | Effect |
---|
1 |
Return value type has been changed from javax.ws.rs.core.Response to jakarta.ws.rs.core.Response. |
This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
to the top
Problems with Data Types, Low Severity 3
dropwizard-protobuf-3.0.6.jar
package io.dropwizard.jersey.protobuf
[+] class ProtocolBufferMediaType 1
| Change | Effect |
---|
1 |
Superclass has been changed from javax.ws.rs.core.MediaType to jakarta.ws.rs.core.MediaType. |
1) Access of a client program to the fields or methods of the old super-class may be interrupted by NoSuchFieldError or NoSuchMethodError exceptions. 2) A static field from a super-interface of a client class may hide a field (with the same name) inherited from new super-class and cause IncompatibleClassChangeError exception. |
[+] affected methods: 1 (0.7%)
ProtocolBufferMediaType.ProtocolBufferMediaType ( )This constructor is from 'ProtocolBufferMediaType' class.
dropwizard-protobuf-3.0.6.jar
package io.dropwizard.jersey.protobuf.protos
[+] class DropwizardProtos.ErrorMessage 1
| Change | Effect |
---|
1 |
Superclass has been changed from com.google.protobuf.GeneratedMessage to com.google.protobuf.GeneratedMessageV3. |
1) Access of a client program to the fields or methods of the old super-class may be interrupted by NoSuchFieldError or NoSuchMethodError exceptions. 2) A static field from a super-interface of a client class may hide a field (with the same name) inherited from new super-class and cause IncompatibleClassChangeError exception. |
[+] affected methods: 44 (31.9%)
DropwizardProtos.ErrorMessage.Builder.build ( )Return value of this method is of type 'DropwizardProtos.ErrorMessage'.
DropwizardProtos.ErrorMessage.Builder.buildPartial ( )Return value of this method is of type 'DropwizardProtos.ErrorMessage'.
DropwizardProtos.ErrorMessage.Builder.getDefaultInstanceForType ( )Return value of this method is of type 'DropwizardProtos.ErrorMessage'.
DropwizardProtos.ErrorMessage.Builder.mergeFrom ( DropwizardProtos.ErrorMessage other )1st parameter 'other' of this method is of type 'DropwizardProtos.ErrorMessage'.
DropwizardProtos.ErrorMessage.equals ( Object obj )This method is from 'DropwizardProtos.ErrorMessage' class.
...
[+] class DropwizardProtos.ErrorMessage.Builder 1
| Change | Effect |
---|
1 |
Superclass has been changed from com.google.protobuf.GeneratedMessage.Builder<DropwizardProtos.ErrorMessage.Builder> to com.google.protobuf.GeneratedMessageV3.Builder<DropwizardProtos.ErrorMessage.Builder>. |
1) Access of a client program to the fields or methods of the old super-class may be interrupted by NoSuchFieldError or NoSuchMethodError exceptions. 2) A static field from a super-interface of a client class may hide a field (with the same name) inherited from new super-class and cause IncompatibleClassChangeError exception. |
[+] affected methods: 45 (32.6%)
DropwizardProtos.ErrorMessage.Builder.build ( )This method is from 'DropwizardProtos.ErrorMessage.Builder' class.
DropwizardProtos.ErrorMessage.Builder.build ( )This method is from 'DropwizardProtos.ErrorMessage.Builder' class.
DropwizardProtos.ErrorMessage.Builder.build ( )This method is from 'DropwizardProtos.ErrorMessage.Builder' class.
DropwizardProtos.ErrorMessage.Builder.buildPartial ( )This method is from 'DropwizardProtos.ErrorMessage.Builder' class.
DropwizardProtos.ErrorMessage.Builder.buildPartial ( )This method is from 'DropwizardProtos.ErrorMessage.Builder' class.
...
to the top
Java Archives 1
dropwizard-protobuf-3.0.6.jar
to the top