Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-1602

Remove uses of deprecated APIs

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • avatica-1.10.0, 1.12.0
    • None
    • None

    Description

      Calcite should not use deprecated methods and classes, especially in third-party libraries. I propose that we adopt a zero-tolerance policy, fixing deprecated calls as soon as they occur. As long as the third-party libraries use semantic versioning, this should give us prior warning before things disappear.

      You can find the calls to deprecated APIs by adding <compilerArgument>-Xlint:deprecation</compilerArgument> then running mvn clean package -DskipTests | grep 'has been deprecated' | grep -v 'in org.apache.calcite'. Currently there are 51 when you run in JDK9 and Guava 20.0. Here are the first few:

      [WARNING] /home/jhyde/open1/calcite.2/linq4j/src/main/java/org/apache/calcite/linq4j/tree/Types.java:[254,38] getPackage(java.lang.String) in java.lang.Package has been deprecated
      [WARNING] /home/jhyde/open1/calcite.2/linq4j/src/test/java/org/apache/calcite/linq4j/test/Linq4jTest.java:[736,25] Integer(int) in java.lang.Integer has been deprecated
      [WARNING] /home/jhyde/open1/calcite.2/linq4j/src/test/java/org/apache/calcite/linq4j/test/Linq4jTest.java:[737,26] Integer(int) in java.lang.Integer has been deprecated
      [WARNING] /home/jhyde/open1/calcite.2/linq4j/src/test/java/org/apache/calcite/linq4j/test/Linq4jTest.java:[738,25] Integer(int) in java.lang.Integer has been deprecated
      [WARNING] /home/jhyde/open1/calcite.2/core/src/main/java/org/apache/calcite/rex/RexBuilder.java:[539,47] ROUND_HALF_DOWN in java.math.BigDecimal has been deprecated
      

      We should fix these (and other deprecated APIs when we run on other JDK versions and other Guava versions), then add a nightly check that none are added back.

      Attachments

        Activity

          People

            julianhyde Julian Hyde
            julianhyde Julian Hyde
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: