Julian Hyde created CALCITE-6552:
------------------------------------
Summary: Enable checkerframework in 'server' module
Key: CALCITE-6552
URL: https://issues.apache.org/jira/browse/CALCITE-6552
Project: Calcite
Issue Type: Improvement
Reporter: Julian Hyde
In CALCITE-4199 we enabled CheckerFramework (via annotations and CI jobs) in
the 'core' and 'linq4j' modules; this change further enables CheckerFramework
in the 'server' module, and fixes all violations.
There are also a large number of 'cosmetic' modifications to improve code
quality without changing behavior, including:
* Replace '{{{}this.x = x; assert x != null;{}}}' by '{{{}this.x =
requireNonNull(x);{}}}' in constructors
* Replace {{assert}} in other code locations where it implements an invariant.
We don't use {{requireNonNull}} because it throws {{{}NullPointerException{}}};
we would prefer to throw {{AssertionError}} or {{IllegalStateException}}
* Replace {{x.equals("")}} and {{x.size() == 0}} with {{x.isEmpty()}}
* Make fields {{final}} where possible
* Make private methods and inner classes {{static}} where possible
* In {{class Pair<K, V>}} make the type variables {{K}} and {{V}} no longer
{{@Nullable}} by default (you can make each of them nullable if you need)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)