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.
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.mdfile 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
As of December 2020, these notable features are marked as deprecated:
contextToDataSourceIdconfiguration option has been replaced by
contextToOrchestratorId. It was removed in v0.25.0, released in December 2020
CUBEJS_ENABLE_TLSconfiguration option will be removed in favor of using load balancers or reverse proxies. It will be removed in v0.26.0, expected in January 2021
- Support for Node.js 8 due to it reaching end-of-life. It will be removed in v0.26.0, expected in January 2021
- Embedding Cube.js within Express in favor of stand-alone microservice deployments. It will be removed in June 2021
Please refer to the Deprecation Policy on GitHub for detailed info.