Skip to main content
Alpha flags are experimental features that are in an early testing phase and is likely to change or be removed without prior notice. Do not use the product or functionality in production systems.
The Cognite Toolkit uses alpha flags to enable experimental functionality that we often plan to support in the next minor release. By default, alpha flags aren’t enabled. To enable them, you must update the cdf.toml file. For example, to enable the module-repeat alpha flag, add the following to your cdf.toml file:
[alpha_flags]
module-repeat = true

Cognite Toolkit versioning and releases

The Cognite Toolkit uses semantic versioning to manage versions as major, minor, and patch (for example, 0.3.17).
  • A major version increases with breaking changes in the CLI or the format of modules and configuration files. Installing a new major toolkit version may require updating your configuration files or modules.
  • Minor versions increase with new features and patch versions with bug fixes.
As long as the major version is 0, breaking changes may happen between minor versions. The Cognite Toolkit follows a release cycle of alpha, beta, and stable releases, shown by ‘a’ and ‘b’ in the version number.
  • Alpha releases (for example, 0.3.0a1) test new features, may contain breaking changes, and aren’t recommended for production.
  • Beta releases (0.3.0b1) focus on stability and bug fixes and are suitable for non-production testing.
  • Stable releases (0.3.0) are production-ready.
Introducing new functionality in stable versions can lead to new bugs. Alpha flags allow you to selectively enable new functionality, minimizing the risk of introducing new bugs. The state of alpha flags vary, with some planned for future releases and others being experimental, requiring further testing.

Alpha flag: module-repeat

Status: experimental
[alpha_flags]
module-repeat = true
This flag enables you to deploy the same module multiple times, for example, if you have multiple locations that should all have the same module deployed. To deploy the same module multiple times, you must define a list of variables in the config.[env].yaml file. For example, if you have a module my_module with a data set resource:
modules/
  my_module/
    data_sets/
      location.DataSet.yaml

config.dev.yaml
The location.DataSet.yaml file looks like this:
location.DataSet.yaml
- externalId: ds_{{ location }}_assets
  name: Dataset for assets on {{ location }}
  description: This is the dataset for all assets on {{ location }}
In the config.dev.yaml file, define a list under the my_module key:
config.dev.yaml
environment: ...

variables:
  modules:
    to_repeat:
      - location: oslo
      - location: new_york
This creates two data sets, one for Oslo and one for New York. In the build directory, you’ll get these two files:
1.location.DataSet.yaml
- externalId: ds_oslo_assets
  name: Dataset for assets on oslo
  description: This is the dataset for all assets on oslo
2.location.DataSet.yaml
- externalId: ds_new_york_assets
  name: Dataset for assets on new_york
  description: This is the dataset for all assets on new_york

Alpha flag: import-cmd

Status: experimental
[alpha_flags]
import-cmd = true
This flag enables the cdf import command. The only subcommand available is transformation-cli. The command converts the transformation-cli manifest files to the Cognite API (Toolkit) format. Use this, for example, if you have transformations managed by the transformation-cli and want to convert them to the Cognite Toolkit format.

Alpha flag: infield

Status: planned for 0.8.0 Available from: 0.5.10
[alpha_flags]
infield = true
This flag enables the infield configuration resource. See cdf.toml for more information about the infield configuration resource.

Alpha flag: migrate

Status: experimental Available from: 0.5.45
[alpha_flags]
migrate = true
This flag enables the cdf migrate command. This command migrates asset-centric resources to data modeling. This is currently an experimental feature and isn’t recommended for production use.

Alpha flag: profile

Status: experimental Available from: 0.5.27
[alpha_flags]
profile = true
This flag enables the cdf profile command. This command allows you to profile CDF resources and their dependencies. Use the cdf profile --help command to see the available options. Note that this command is currently in development and will change in future releases.

Alpha flag: streams

Status: planned for 0.8.0 Available from: 0.6.105
[alpha_flags]
streams = true
This flag enables the Streams resource, which allows you to create streams. The YAML Reference Library has more information about the Streams resource.

Alpha flag: create

Status: planned for 0.8.0 Available from: 0.7.3
[alpha_flags]
create = true
This flag enables the create subcommand under the dev plugin, which allows you to create resource YAML files from the CLI. To use this subcommand, you need to enable the dev plugin. Once enabled, you can create resource YAML files with cdf dev create. To get more information about the subcommand, use the --help flag.
cdf dev create --help