Cube.js was open-sourced in March 2019, and ever since then we've been adding more features to support diverse use cases and provide better developer experience. However, as the pace of Cube.js development accelerates, we have reached a point where it's time to do some house cleaning and improve how things are done while being transparent with our plans.

As part of this effort, we're very pleased to announce our new Deprecation Policy, which can be found in the Cube.js repository on GitHub. In this blog post, we'd like to explain the deprecation policy and highlight some of the features that are planned to be deprecated.

Deprecation Policy

A feature to be deprecated can really be anything, e.g., an obsolete configuration option, the support for an undesirable architecture pattern, or an ability to work with a certain runtime. We're going to apply the same policy to all deprecated features regardless of their kind or scale.

In order to deprecate a feature, we'll follow this procedure:

  • a feature is marked as deprecated within the documentation and in the release notes
  • a relevant entry is added to the DEPRECATION.md file on GitHub with a deprecation date or release clearly specified and migration instructions provided
  • the feature remains in Cube.js for at least one stable release and usually longer, as specified
  • the feature will most probably be removed from Cube.js after specified date or release, so all users are expected to migrate prior to this happening

Deprecated Features

As of December 2020, these notable features are marked as deprecated:

Please refer to the Deprecation Policy on GitHub for detailed info.

As always, we appreciate all the feedback we get from our community. Feel free to share on Slack, GitHub, or Stack Overflow.