Skip to content

What's new in 0.38.0 for Metabase driver authors

Cam Saul edited this page Feb 17, 2021 · 5 revisions

Changes in 0.38.0 mainly relate to the removal of deprecated methods.


If your driver worked on 0.37.x, but fails on 0.38.0 with an error like No suitable driver found for ..., then it's likely because it's implementing one of the deprecated methods mentioned below that were removed in 0.38.0.

DEPRECATED METHODS THAT WERE REMOVED IN 0.38.0

  • metabase.driver.sql.query-processor/unix-timestamp->timestamp was removed (after being deprecated since 0.35.0).
    Use metabase.driver.sql.query-processor/unix-timestamp->honeysql instead.

  • metabase.driver/date-add was removed (after being deprecated since 0.34.2). Use metabase.driver.sql.query-processor/add-interval-honeysql-form instead.

  • metabase.driver.sql.query-processor/current-datetime-fn was removed (after being deprecated since 0.34.2). Use metabase.driver.sql.query-processor/current-datetime-honeysql-form instead.

OTHER CHANGES

  • Also of note, there is now support for casting ISO8601 strings as timestamp.
    See https://github.com/metabase/metabase/pull/13860 for more details.

  • SQL-based drivers may need to add implementations for the new method metabase.driver.sql.query-processor/cast-temporal-string to support casting string columns to DATEs, TIMEs, or TIMESTAMPs. The default implementations use CAST(<column> AS <type>); provide an implementation if your driver needs to do something different.

  • For convenience, JDBC-based drivers can now implement metabase.driver.sql-jdbc.sync/db-default-timezone, which takes a Connection, rather than metabase.driver/db-default-timezone

Clone this wiki locally