Skip to main content

Chromia CLI release notes

The release notes lists all new features, resolved issues, and known issues of Chromia CLI in chronological order.

Chromia CLI 0.20.13

Released on November 6, 2024.

New featuresFixed issues
Error messaging
- Improved error messages.

Static web building
- Enables building static web content without Rell sources.

GTV data tool
- New chr tools gtv command added for GTV data decoding and conversion.
- Static web hosting support in chr node.
- Prevents invalid XML characters in blockchain configuration.
- Explicit file type and name selection required for key storage to avoid accidental key overwrites.
- Corrected help text formatting.

Chromia CLI 0.21.0

Released on October 23, 2024.

New featuresFixed issues
Multi-signature transaction support
- chr multi-signature create for creating multi-signature transactions with specified signers and signature initialization.
- chr multi-signature sign enables users to add signatures with customizable keypair options.
- chr multi-signature send allows submission of fully signed transactions.
- chr multi-signature view to display multi-signature transaction details.

Static web content packaging
- Static web content can be packaged into blockchain configurations for direct Chromia node serving (requires Postchain 3.21+).

Java 21 dependency
- Updated package managers now include a Java 21 dependency for chr execution. Users can control the Java version via the RELL_JAVA environment variable.
- Exit status code is now 1 instead of 0 when the project settings file is not found.
- Prevents escaping of non-ASCII and regular Unicode characters in query command raw output.

Formatter fixes
- Fixed extra space after the first parenthesis in at expressions.
- Doc comments are no longer lifted onto the same line as the previous definition when lacking additional newline.

Chromia CLI 0.20.14

Released on September 26, 2024.

New featuresFixed issues
Client stub documentation
- Rell docs comments are now transformed into JS/TS/Kotlin docs comments when generating client stubs.

Test flag
- A new --timestamp flag for tests allows including timestamps in terminal output for execution duration tracking.

Deployment renaming
- New command chr deployment proposal rename creates a proposal to change the name of a deployed blockchain.
- Fixed an issue where whitespace was incorrectly added after the first and before the last parenthesis in a multiline "where" expression.
- Updated Chromia model to disallow hyphens in blockchain names, ensuring compatibility with directory chain specification.

Chromia CLI 0.20.13

Released on September 11, 2024.

New featuresFixed issues
YAML anchoring
- Anchored values in the config file now respect the original type when included in attributes.
- Recursively anchored values in the config file now respect the original type when included in attributes.

Formatter improvements
- Rell files created with chr create-rell-dapp are now formatted according to default settings.
Removed unsupported SQL modules from the chromia.yml schema.

Formatter fixes
- Fixed an issue where the formatter added an extra newline after a Rell docs comment when followed by an annotation.
- Resolved an issue where whitespace was incorrectly added after the first and before the last parenthesis in a multiline "what" expression.

Chromia CLI 0.20.12

Released on August 30, 2024.

New featuresFixed issues
Java 21 upgrade
- Upgraded to Java 21, which is now required for chr.
Rell version update
- Updated to Rell 0.14.1.

Documentation generation
- Excludes all libraries from navigation pages by default when generating docs with chr generate docs-site. To include a library, use --include=lib.<name of lib>.

Custom GTX modules
- Allows custom GTX modules in blockchain config to be deployed.

New command: chr deployment voterset add-dapp-provider
- Enables users with the Dapp Provider role to add others to the role within the network.
Resolved an issue displaying null bridges after failed deployments.

Plugins and package upgrades
- Updated several plugins and packages:
-- Dokka plugin 0.2.7
-- Rell Maven plugin 0.12.3
-- Rell Gradle plugin 0.3.3
-- Codegen 0.14.2
- Java 21 and Rell 0.14.1 upgrades applied across plugins.

Chromia CLI 0.20.9

Released on August 20, 2024.

New featuresFixed issues
Voterset and proposal functions
- Adds two functions (experimental) for interacting with votersets and proposals for deployed dapps:
-- chr deployment voterset to manage your own votersets and view others' votersets.
-- chr deployment proposal to manage proposals within votersets accessible to your pubkey.

Rell compile version
- Updated the default Rell compile version to 0.13.14, aligning with mainnet. Custom target versions can be specified in chromia.yml under compile:rellVersion.
N/A

Chromia CLI 0.20.8

Released on August 12, 2024.

New featuresFixed issues
N/AUpdated to the latest formatter to fix syntax errors.

Chromia CLI 0.20.7

Released on August 12, 2024.

New featuresFixed issues
Code lint and format updates
- chr code lint and chr code format commands now ignore libraries defined in chromia.yml by default. To run these commands on external libraries, use the --source-dir option to specify the library path.
N/A

Chromia CLI 0.20.6

Released on August 1, 2024.

New featuresFixed issues
Rell linter and formatter
- chr code lint analyzes Rell code for potential issues and coding style violations, configurable via .rell_lint file.
- chr code format automatically formats Rell code, configurable via .rell_format file.
- Documentation generator now includes doc comments of child attributes on the parent page.
- Improved formatter handling of newlines after single-line comments.
- Enhanced error message when attempting to create a deployment for an already defined chain in chromia.yml.

Chromia CLI 0.20.4

Released on July 11, 2024.

New featuresFixed issues
N/AFixed an issue in docs generation where the @see tag in user Rell docs caused duplicate text.

Chromia CLI 0.20.3

Released on July 08, 2024.

New featuresFixed issues
User-defined docs
- chr generate docs-site now includes user-defined docs comments in the generated documentation site.
chr tx now waits for transaction confirmation by default. Use --no-await to skip waiting.

Chromia CLI 0.20.2

Released on June 18, 2024.

New featuresFixed issues
Example usage documentation
- Added documentation for query and tx commands, including examples of how to use complex argument types.
- Fixed code generation for boolean Rell types, now correctly typed as number in TypeScript queries and operations (input and return).
- Code generation now exits with a non-zero exit code if unsuccessful.

Chromia CLI 0.20.1

Released on June 05, 2024.

New featuresFixed issues
New config property
- Added add_primary_key_to_header to config, defaulting to true (impacts brid for chains).
JSON output support
- deployment inspect and deployment info commands now support JSON output with the new argument --output-format=(table |JSON), defaulting to table format. Automatically defaults to JSON when output is piped.
- Renamed --url flag to --api-url for deployment info/inspect commands for consistency.
- Improved chr install speed by up to 15%.

Chromia CLI 0.20.0

Released on May 30, 2024.

New featuresFixed issues
Enhanced output formatting
- Added pretty print for chr query results.
- New --output-format flag for chr repl and chr query, supporting JSON, XML, and raw output.
- chr repl command now supports input piping.

Configuration validation
- chr deployment update now signs configuration validation requests to restrict execution to blockchain owners.

Documentation generation
- chr generate docs-site now includes source links in generated documentation.

Blockchain RID configuration
- Blockchain RIDs can now be configured as either strings or byte arrays in the deployment model.
- Fixed issue where deployment update with multiple chains only validated the first chain in the input.
- Clarified JSON schema descriptions for Chromia model and corrected typos.
- Updated deployment commands to use the target network to define default chains if no blockchains are specified.
- Improved TypeScript stubs in chr generate client-stubs to better align with postchain-client, reducing linter warnings.

Chromia CLI 0.19.1

Released on May 16, 2024.

New featuresFixed issues
N/AResolved a bug in chr node start where library chains caused a null pointer exception (NPE). Library chains are now filtered out from chr node start and chr node update.

Chromia CLI 0.19.0

Released on May 13, 2024.

New featuresFixed issues
Library support
- New YAML field (blockchains::type) now supports configuration as either blockchain or library.
- chr create-rell-dapp --template plain-library creates a library skeleton.
- Libraries can now be compiled by configuring a blockchain as a library, e.g., blockchains.my_lib.type: library.

Library structure requirements
- Libraries must be located in lib/<name> and match the blockchain name in the YAML.
- Root module (lib.<name>) must exist, and everything in lib/<name> is considered part of the library.

Configuration setting update
- revolt_when_should_build_block is set to true by default to align with upcoming directory chain requirements.

Dependency updates
- Updated dependencies:
-- Rell 0.13.12
-- Postchain 3.15.19
-- Postchain-Chromia 3.15.19
This version impacts previously calculated blockchain RIDs due to updated configuration.

Chromia CLI 0.18.2

Released on May 02, 2024.

New featuresFixed issues
Internal improvements
- Added exposed function to easily print configuration properties (internal use).
Properly reads from the key.id property when loading configuration.

Chromia CLI 0.18.1

Released on May 02, 2024.

New featuresRemoved features
Key management enhancements
- New --key-id option for Keygen command allows users to store keys in .chromia folder in $SYS_HOME as "myKeyId" and "myKeyId.pubkey" (default: chromia_key).
- Config property key.id can now be set to easily switch between keys.
- Renamed --save option to --file in Keygen command.
- For deployment and transaction commands, --secret option takes precedence over key.id in configuration.
Deprecated key recovery removal
- Deprecated key recovery for keys generated pre-CLI version 0.15.0 removed. Users should test recovery of their keypair with the mnemonic.
- Users needing old key pair recovery are recommended to install an older version of Chromia CLI.

Chromia CLI 0.17.4

Released on April 16, 2024.

New featuresFixed issues
Updated Rell version to 0.13.11.N/A

Chromia CLI 0.17.3

Released on April 12, 2024.

New featuresFixed issues
Auto-configuration
- Automatically sets mininterblockinterval based on configuration rules in directory chain.
- Updates brid property under icmf to bc-rid for ICMF runtime compatibility.
- Improved Dokka generation for namespaces and mount names, where namespaces are treated as modules and mount names appear in signatures when @mount is used.
- Reduced Chromia CLI disk size by 50%.

Chromia CLI 0.17.2

Released on April 10, 2024.

New featuresFixed issues
Experimental Windows support
- Added native support for Windows users via scoop (scoop.sh).
- Command: scoop bucket add chromia https://gitlab.com/chromaway/core-tools/scoop-chromia/
- Command: scoop install chr
Compatibility and updates
- --ft-auth updated for compatibility with FT4 version 0.4.0+.
- Updated Rell code generation to 0.13.5, fixing NPE for partially named tuples in query return types.
- Updated EIF to 0.4.1 to resolve EIF configuration validation issue.
- New strictGtvConversion option in chromia.yml under compile property to configure strict GTV conversion.
- Fixed issue with repl on Mac.
- Fixed deployment bug where Rell versions higher than the target cluster supported were deployed.

Chromia CLI 0.17.1

Released on April 05, 2024.

New featuresFixed issues
- Updated Rell version to 0.13.10.
- Added --fail-on-error flag for the test command, overriding local test:failOnError configuration.
- Updated Dokka plugin to 0.1.2 to fix broken links for anonymous functions.
- Updated code generation to 0.13.4 to remove shadowing warnings in Kotlin stubs.
- Set compile:quiet default to false for more verbose build messages in the terminal. Users can set it to true to suppress warnings.

Chromia CLI 0.17.0

Released on March 25, 2024.

New featuresFixed issues
Split client stubs and graph generation
- chr generate client-stubs for client stubs and chr generate graph for mermaid graphs.
- Deprecated chr generate-client-stubs in favor of separate commands.

Documentation generation
- New command: chr generate docs-site, enabling static API reference pages for dApps.

Aggregation and expression syntax
- Added annotations for list, set, and map aggregation on at-expressions.
- New at-expression join syntax.

Dependency updates
- Updated to Postchain 3.15.5 and Rell 0.13.9.
N/A

Chromia CLI 0.16.3

Released on March 15, 2024.

New featuresFixed issues
- Added support for big integer values in chromia.yml with a capital "L" suffix (e.g., 1234L).
- Reintroduced schema validation for configuration files. See the full schema here.
- Verified that the Rell version in chromia.yml matches the highest supported version for the target cluster during deployment updates.
- Updated jgit dependency to address a security vulnerability.

Chromia CLI 0.16.2

Released on March 12, 2024.

New featuresFixed issues
- Temporarily removed support for big integer values in chromia.yml.
- Rolled back the new parsing module to the previous version that works with anchors and references in YAML files.
N/A

Chromia CLI 0.16.1

Released on March 11, 2024.

New featuresFixed issues
- Added support for big integer values in chromia.yml with a capital "L" suffix (e.g., 1234L).
- Introduced economic chain support with the "Get Lease Information" command. This feature allows users to get lease information by container ID or public key (currently hidden but available under chr deployment lease-info).
- Updated the directory-chain version to 1.35.0.
- Updated Postchain to version 3.15.3.
- Standardized the message output for chr start when all blockchains have started, now showing "Node is initialized".
- Fixed stacktrace errors in YAML parsing and improved error messages when configuration files have issues.

Chromia CLI 0.16.0

Released on February 05, 2024.

New featuresFixed issues
- Added chr node start --directory-chain-mock, which provides a directory chain mock for use in integration tests and manual testing of frontend clients.
- Enabled cross-chain transfers with FT4 and client-side usage of ICCF via node discovery features.
N/A

Chromia CLI 0.15.3

Released on January 29, 2024.

New featuresFixed issues
- Added a prefilled .gitignore file to all templates created by create-rell-dapp.
- Introduced a directory to wrap the generated code. The directory is named after the project name, or my-rell-dapp by default if no project name is provided.
Replaced all references to "hello" as the default blockchain name with my_rell_dapp if no project name is provided.

Chromia CLI 0.15.2

Released on January 25, 2024.

New featuresFixed issues
N/AAdded support for FT version 0.2.+ when using --ft-auth in chr tx.

Chromia CLI 0.15.1

Released on January 18, 2024.

New featuresFixed issues
N/AFixed bug where chr test failed for a blockchain test when ICMF was configured.

Chromia CLI 0.15.0

Released on January 17, 2024.

New featuresFixed issues
- Added support for ICCF when running a test node with chr node start.
- Enabled unit tests with ICCF using chr test.
- Introduced support for sending ICCF proofs using --iccf-tx and --iccf-source in chr tx. (Note: ICCF proof operations are not verified in the test framework).
- Improved argument parsing for chr tx/query, now supporting nested structures (e.g., dicts are encoded as [key: value]).
- Disabled git progress monitor when running chr install non-interactively (e.g., in CI).
- Fixed start script to work for Alpine Linux and Busybox Docker images (version 0.14.3).
- Reverted to using BIP for key generation in Keygen (version 0.14.3).
- Fixed issue where global config overrides command-line input for --cid in chr tx/query (version 0.14.3).

Chromia CLI 0.14.2

Released on December 18, 2023.

New featuresFixed issues
- Postchain 3.14.14, postchain-chromia 3.14.8, directory 1.30.0, postchain-client 3.12.1.
- Added Chromia.yml validation schema to the repo.
- Fixed issue with the CHR_LOG_LEVEL environment variable to properly set the log level for chr node start.
- Fixed concurrency issue where messages were lost due to a concurrency problem when using ICMF with a test node.

Chromia CLI 0.14.1

Released on December 06, 2023.

New featuresFixed issues
N/AReverted the explicit choice of test scope (-bc or no -bc), so now chr test runs all test modules and all blockchains by default.

Chromia CLI 0.14.0

Released on December 05, 2023.

New featuresFixed issues
- Added ICMF support for chr node start (EXPERIMENTAL).
(Note: Unprocessed messages will be lost during node restart, and the process may crash with an OutOfMemoryException if too many messages are sent. This is for testing, not production use.)
- Enabled compression of files for networks running the Management chain during chr deployment create/update.
- Added support for running tests on a selected module using --module for blockchain tests in chr test.
- Increased robustness of chr tx for the --ft-auth flag.
N/A

Chromia CLI 0.13.4

Released on November 28, 2023.

New featuresFixed issues
N/AFixed JavaScript typo in generate-client-stubs.

Chromia CLI 0.13.3

Released on November 28, 2023.

New featuresFixed issues
Updated Keygen to conform to BIP39 and BIP32 standards.N/A

Chromia CLI 0.13.2

Released on November 15, 2023.

New featuresFixed issues
- Added Rell 0.13.5 release notes.
- Shows unit test duration.
- REPL now uses the GTV output format.
- Exits with code 1 when a query/transaction fails in chr repl.
- Prints an info message when a blockchain is successfully removed from a container.

Chromia CLI 0.13.0 and CLI 0.13.1

Released on November 08, 2023.

New featuresFixed issues
- Reads API URL and BRID from .chromia/config file.
- Added the -c option to chr repl command to allow execution of a single command.
- New command: chr deployment remove to remove deployed blockchain from a container.
- Template flag for chr create-rell-dapp with options: Minimal, Plain, Plain-Multi.
- Codegen 0.12.0: Added option to generate mermaid entity relation diagrams.
- Fixed issue where chr repl did not print intro text when using the -c flag (bug from 0.13.0).
- Fixed chr repl to exit with status code 1 when it fails with the -c flag (bug from 0.13.0).
- Fixed default log level to be set as info instead of debug (macOS-specific bug).