The following issues were found

src/main/java/io/reactivex/rxjava3/internal/util/ConnectConsumer.java
1 issues
Found non-transient, non-static member. Please mark as transient or provide accessors.
Error

Line: 23

               * Store the Disposable received from the connection.
 */
public final class ConnectConsumer implements Consumer<Disposable> {
    public Disposable disposable;

    @Override
    public void accept(Disposable t) {
        this.disposable = t;
    }

            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/internal/subscribers/BlockingLastSubscriber.java
1 issues
Assigning an Object to null is a code smell. Consider refactoring.
Error

Line: 30

              
    @Override
    public void onError(Throwable t) {
        value = null;
        error = t;
        countDown();
    }
}

            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/internal/operators/maybe/MaybeEmpty.java
1 issues
Avoid unused imports such as 'io.reactivex.rxjava3.core'
Design

Line: 16

              
package io.reactivex.rxjava3.internal.operators.maybe;

import io.reactivex.rxjava3.core.*;
import io.reactivex.rxjava3.internal.disposables.EmptyDisposable;
import io.reactivex.rxjava3.internal.fuseable.ScalarSupplier;

/**
 * Signals an onComplete.

            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/internal/util/EndConsumerHelper.java
1 issues
The String literal 'next is null' appears 4 times in this file; the first occurrence is on line 53
Error

Line: 53

                   * @return true if successful, false if the upstream was non null
     */
    public static boolean validate(Disposable upstream, Disposable next, Class<?> observer) {
        Objects.requireNonNull(next, "next is null");
        if (upstream != null) {
            next.dispose();
            if (upstream != DisposableHelper.DISPOSED) {
                reportDoubleSubscription(observer);
            }

            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/observers/DisposableObserver.java
1 issues
Found non-transient, non-static member. Please mark as transient or provide accessors.
Error

Line: 69

               */
public abstract class DisposableObserver<T> implements Observer<T>, Disposable {

    final AtomicReference<Disposable> upstream = new AtomicReference<>();

    @Override
    public final void onSubscribe(@NonNull Disposable d) {
        if (EndConsumerHelper.setOnce(this.upstream, d, getClass())) {
            onStart();

            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/internal/operators/observable/ObservableNever.java
1 issues
Avoid unused imports such as 'io.reactivex.rxjava3.core'
Design

Line: 16

              
package io.reactivex.rxjava3.internal.operators.observable;

import io.reactivex.rxjava3.core.*;
import io.reactivex.rxjava3.internal.disposables.EmptyDisposable;

public final class ObservableNever extends Observable<Object> {
    public static final Observable<Object> INSTANCE = new ObservableNever();


            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/internal/operators/single/SingleNever.java
1 issues
Avoid unused imports such as 'io.reactivex.rxjava3.core'
Design

Line: 16

              
package io.reactivex.rxjava3.internal.operators.single;

import io.reactivex.rxjava3.core.*;
import io.reactivex.rxjava3.internal.disposables.EmptyDisposable;

public final class SingleNever extends Single<Object> {
    public static final Single<Object> INSTANCE = new SingleNever();


            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/disposables/SerialDisposable.java
1 issues
Found non-transient, non-static member. Please mark as transient or provide accessors.
Error

Line: 27

               * handling the disposition when the container itself is disposed.
 */
public final class SerialDisposable implements Disposable {
    final AtomicReference<Disposable> resource;

    /**
     * Constructs an empty SerialDisposable.
     */
    public SerialDisposable() {

            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/internal/operators/maybe/MaybeNever.java
1 issues
Avoid unused imports such as 'io.reactivex.rxjava3.core'
Design

Line: 16

              
package io.reactivex.rxjava3.internal.operators.maybe;

import io.reactivex.rxjava3.core.*;
import io.reactivex.rxjava3.internal.disposables.EmptyDisposable;

/**
 * Doesn't signal any event other than onSubscribe.
 */

            

Reported by PMD.

src/main/java/io/reactivex/rxjava3/internal/functions/ObjectHelper.java
1 issues
Avoid using Literals in Conditional Statements
Error

Line: 66

                   * @throws IllegalArgumentException if bufferSize &lt;= 0
     */
    public static long verifyPositive(long value, String paramName) {
        if (value <= 0L) {
            throw new IllegalArgumentException(paramName + " > 0 required but it was " + value);
        }
        return value;
    }


            

Reported by PMD.