# API compatibility report for the firebase-ui-database library between 3.3.1 and 4.0.0 versions

Binary
Compatibility Source
Compatibility

## Test Info

Library Name | firebase-ui-database
Version #1 | 3.3.1
Version #2 | 4.0.0
Subject | Binary Compatibility

## Test Results

Total JARs | 1
Total Methods / Classes | 81 / 15
Compatibility | 71.6%

## Problem Summary

| Severity | Count
--- | --- | ---
Added Methods | - | 0
Removed Methods | High | 1
Problems with Data Types | High | 4
Medium | 0
Low | 1
Problems with Methods | High | 0
Medium | 0
Low | 0

## Removed Methods 1

classes.jar, ObservableSnapshotArray.class
package com.firebase.ui.database
ObservableSnapshotArray<T>.notifyListenersOnCancelled ( DatabaseError error ) : void *DEPRECATED*
com/firebase/ui/database/ObservableSnapshotArray<T>.notifyListenersOnCancelled:(Lcom/google/firebase/database/DatabaseError;)V
to the top

## Problems with Data Types, High Severity 4

classes.jar
package com.firebase.ui.database
[+] class FirebaseListOptions.Builder<T> 1

| Change | Effect
--- | --- | ---
1 | This class became final. | A client program may be interrupted by VerifyError exception.

[+] affected methods: 9 (11.1%)
FirebaseListOptions.Builder<T>.build ( )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.FirebaseListOptions.Builder ( )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setIndexedQuery ( Query keyQuery, DatabaseReference dataRef, SnapshotParser<T> parser )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setIndexedQuery ( Query keyQuery, DatabaseReference dataRef, Class<T> modelClass )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setLayout ( int layout )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setLifecycleOwner ( LifecycleOwner owner )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setQuery ( Query query, SnapshotParser<T> parser )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setQuery ( Query query, Class<T> modelClass )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setSnapshotArray ( ObservableSnapshotArray<T> snapshots )
This method is from 'FirebaseListOptions.Builder<T>' class.
[+] class FirebaseListOptions<T> 1

| Change | Effect
--- | --- | ---
1 | This class became final. | A client program may be interrupted by VerifyError exception.

[+] affected methods: 4 (4.9%)
FirebaseListOptions.Builder<T>.build ( )
Return value of this method is of type 'FirebaseListOptions<T>'.
FirebaseListOptions<T>.getLayout ( )
This method is from 'FirebaseListOptions<T>' class.
FirebaseListOptions<T>.getOwner ( )
This method is from 'FirebaseListOptions<T>' class.
FirebaseListOptions<T>.getSnapshots ( )
This method is from 'FirebaseListOptions<T>' class.
[+] class FirebaseRecyclerOptions.Builder<T> 1

| Change | Effect
--- | --- | ---
1 | This class became final. | A client program may be interrupted by VerifyError exception.

[+] affected methods: 8 (9.9%)
FirebaseRecyclerOptions.Builder<T>.build ( )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.FirebaseRecyclerOptions.Builder ( )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setIndexedQuery ( Query keyQuery, DatabaseReference dataRef, SnapshotParser<T> snapshotParser )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setIndexedQuery ( Query keyQuery, DatabaseReference dataRef, Class<T> modelClass )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setLifecycleOwner ( LifecycleOwner owner )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setQuery ( Query query, SnapshotParser<T> snapshotParser )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setQuery ( Query query, Class<T> modelClass )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setSnapshotArray ( ObservableSnapshotArray<T> snapshots )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
[+] class FirebaseRecyclerOptions<T> 1

| Change | Effect
--- | --- | ---
1 | This class became final. | A client program may be interrupted by VerifyError exception.

[+] affected methods: 3 (3.7%)
FirebaseRecyclerOptions.Builder<T>.build ( )
Return value of this method is of type 'FirebaseRecyclerOptions<T>'.
FirebaseRecyclerOptions<T>.getOwner ( )
This method is from 'FirebaseRecyclerOptions<T>' class.
FirebaseRecyclerOptions<T>.getSnapshots ( )
This method is from 'FirebaseRecyclerOptions<T>' class.
to the top

## Problems with Data Types, Low Severity 1

classes.jar
package com.firebase.ui.database
[+] class BuildConfig 1

| Change | Effect
--- | --- | ---
1 | Value of final field VERSION_NAME of type java.lang.String has been changed from "3.3.1" to "4.0.0-SNAPSHOT". | Old value of the field will be inlined to the client code at compile-time and will be used instead of a new one.

[+] affected methods: 1 (1.2%)
BuildConfig.BuildConfig ( )
This constructor is from 'BuildConfig' class.
to the top

## Java Archives 1

classes.jar
to the top

## Test Info

Library Name | firebase-ui-database
Version #1 | 3.3.1
Version #2 | 4.0.0
Subject | Source Compatibility

## Test Results

Total JARs | 1
Total Methods / Classes | 81 / 15
Compatibility | 71.6%

## Problem Summary

| Severity | Count
--- | --- | ---
Added Methods | - | 0
Removed Methods | High | 1
Problems with Data Types | High | 4
Medium | 0
Low | 0
Problems with Methods | High | 0
Medium | 0
Low | 0

## Removed Methods 1

classes.jar, ObservableSnapshotArray.class
package com.firebase.ui.database
ObservableSnapshotArray<T>.notifyListenersOnCancelled ( DatabaseError error ) : void *DEPRECATED*
com/firebase/ui/database/ObservableSnapshotArray<T>.notifyListenersOnCancelled:(Lcom/google/firebase/database/DatabaseError;)V
to the top

## Problems with Data Types, High Severity 4

classes.jar
package com.firebase.ui.database
[+] class FirebaseListOptions.Builder<T> 1

| Change | Effect
--- | --- | ---
1 | This class became final. | Recompilation of a client program may be terminated with the message: cannot inherit from final FirebaseListOptions.Builder<T>.

[+] affected methods: 9 (11.1%)
FirebaseListOptions.Builder<T>.build ( )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.FirebaseListOptions.Builder ( )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setIndexedQuery ( Query keyQuery, DatabaseReference dataRef, SnapshotParser<T> parser )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setIndexedQuery ( Query keyQuery, DatabaseReference dataRef, Class<T> modelClass )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setLayout ( int layout )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setLifecycleOwner ( LifecycleOwner owner )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setQuery ( Query query, SnapshotParser<T> parser )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setQuery ( Query query, Class<T> modelClass )
This method is from 'FirebaseListOptions.Builder<T>' class.
FirebaseListOptions.Builder<T>.setSnapshotArray ( ObservableSnapshotArray<T> snapshots )
This method is from 'FirebaseListOptions.Builder<T>' class.
[+] class FirebaseListOptions<T> 1

| Change | Effect
--- | --- | ---
1 | This class became final. | Recompilation of a client program may be terminated with the message: cannot inherit from final FirebaseListOptions<T>.

[+] affected methods: 4 (4.9%)
FirebaseListOptions.Builder<T>.build ( )
Return value of this method is of type 'FirebaseListOptions<T>'.
FirebaseListOptions<T>.getLayout ( )
This method is from 'FirebaseListOptions<T>' class.
FirebaseListOptions<T>.getOwner ( )
This method is from 'FirebaseListOptions<T>' class.
FirebaseListOptions<T>.getSnapshots ( )
This method is from 'FirebaseListOptions<T>' class.
[+] class FirebaseRecyclerOptions.Builder<T> 1

| Change | Effect
--- | --- | ---
1 | This class became final. | Recompilation of a client program may be terminated with the message: cannot inherit from final FirebaseRecyclerOptions.Builder<T>.

[+] affected methods: 8 (9.9%)
FirebaseRecyclerOptions.Builder<T>.build ( )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.FirebaseRecyclerOptions.Builder ( )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setIndexedQuery ( Query keyQuery, DatabaseReference dataRef, SnapshotParser<T> snapshotParser )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setIndexedQuery ( Query keyQuery, DatabaseReference dataRef, Class<T> modelClass )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setLifecycleOwner ( LifecycleOwner owner )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setQuery ( Query query, SnapshotParser<T> snapshotParser )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setQuery ( Query query, Class<T> modelClass )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
FirebaseRecyclerOptions.Builder<T>.setSnapshotArray ( ObservableSnapshotArray<T> snapshots )
This method is from 'FirebaseRecyclerOptions.Builder<T>' class.
[+] class FirebaseRecyclerOptions<T> 1

| Change | Effect
--- | --- | ---
1 | This class became final. | Recompilation of a client program may be terminated with the message: cannot inherit from final FirebaseRecyclerOptions<T>.

[+] affected methods: 3 (3.7%)
FirebaseRecyclerOptions.Builder<T>.build ( )
Return value of this method is of type 'FirebaseRecyclerOptions<T>'.
FirebaseRecyclerOptions<T>.getOwner ( )
This method is from 'FirebaseRecyclerOptions<T>' class.
FirebaseRecyclerOptions<T>.getSnapshots ( )
This method is from 'FirebaseRecyclerOptions<T>' class.
to the top

## Java Archives 1

classes.jar
to the top