Releases: onflow/flow-cli
Version 0.28.3
🛠 Improvements
Tests
Add more tests for transaction imports.
(#370) @sideninja
Missing Include Flag
Implemented by the community: @tuommaki 🙌
Transaction sign command was missing the include flag and this was now fixed achieving better consistency across transactions commands.
🐞 Bug Fixes
Fix Config Syntax Error Handling
The error was wrongly reported if a configuration had a syntax error.
(#378) @sideninja
📖 Documentation
Improve Documentation with Examples
Add examples for building complex transactions with multiple authorizers and containing different accounts in the signing process.
(#389) @sideninja
Version 0.28.2
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
🐞 Bug Fixes
Default Gas Limit
The transaction gas limit is required and all CLI transactions now include the default maximum gas limit (of 9999).
Version 0.28.1
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
🐞 Bug Fixes
Inferred Argument Types Fix
The latest feature for inferring argument types introduced a bug when importing contracts. This bugfix resolves the issue.
Version 0.28.0
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
🐞 Bug Fixes
Block Transaction IDs
Fetching a block didn't include transaction IDs when using the --include transactions
flag due to a regression in the command layer.
Script Execution Error
Implemented by the community: @bjartek 🙌
Script execution error wasn't returned when using hosted gateway implementation.
Parsing Boolean in Configuration
Implemented by the community: @bluesign 🙌
Parsing booleans in the flow configuration deployment arguments weren't working properly. This bugfix addresses that problem and allows you to pass boolean type in the args
section such as:
...
"args": [
{"type": "Bool", "value": true}
]
...
Cross-referencing Composed Configuration
Cross-referencing values in the composed configuration wasn't working correctly as the validation was done per configuration instead on the higher level on the composed configuration.
🛠 Improvements
Arguments Without Types
Implemented by the community: @bluesign 🙌
Great improvement to the argument parsing. CLI now infers types from transaction parameters and script parameters, so it's not needed anymore to specify the type explicitly. This new improvement also supports passing arrays and dictionaries.
The new command format is:
flow scripts execute <filename> [<argument> <argument> ...] [flags]
Example:
> flow scripts execute script.cdc "Meow" "Woof"
In the example above the string, type is inferred from the script source code.
More complex example:
> flow transactions send tx1.cdc Foo 1 2 10.9 0x1 '[123,222]' '["a","b"]'
Transaction code:
transaction(a: String, b: Int, c: UInt16, d: UFix64, e: Address, f: [Int], g: [String]) {
prepare(authorizer: AuthAccount) {}
}
Idiomatic Accessors
Implemented by the community: @bjartek 🙌
Getter methods were rewritten in idiomatic Go, containing a value and an error. This solves some edge case bugs where the value is missing but the returned value is not checked for nil.
Configuration Loader Improvement
Implemented by the community: @bjartek 🙌
Configuration loading logic was improved, and it now only loads global configuration if local isn't present. Furthermore, it improves the configuration add
commands that now only allow passing a single config by using the -f
flag and it requires at least one local configuration to be present.
Version 0.27.0
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
🐞 Bug Fixes
Non-existing Service Account
Implemented by the community: @bjartek
The bug crashing the CLI when referencing a non-existing service account was fixed.
🛠 Improvements
Improved Event Command
Implemented by the community: @bjartek
Big improvements for the event commands. You can now specify multiple event names when you are fetching the events. The command will combine all the events together in the result.
flow events get A.1654653399040a61.FlowToken.TokensDeposited A.1654653399040a61.FlowToken.TokensWithdrawn
Command format was changed so it now requires flags for start block height (--start
), end block height (--end
), and allows a new flag for specifying the number of blocks since the last block height (--last
). Some examples of usage:
flow events get A.1654653399040a61.FlowToken.TokensDeposited --start 11559500 --end 11559600
flow events get A.1654653399040a61.FlowToken.TokensDeposited --last 20
The event fetching will be done concurrently using workers, the default worker count is 10, but you can specify the count explicitly using the --workers
flag and also the number of blocks each worker fetches with --batch
flag. This functionality brings great speed improvements and also allows you to fetch more blocks than the current limit.
Add Mainnet Alias
Implemented by the community: @bjartek
The improved config command allows you to add new mainnet aliases. Example usage:
flow config add contract --mainnet-alias Alice
Continuous Delivery
Continuous delivery with help of Github actions.
Version 0.25.1
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
🐞 Bug Fixes
Update Contract Bugfix
The update contract command introduced a bug that was fixed in this version.
Get Events Range Check
Fetching events was previously limited to a range of block heights that was bigger than the access node restriction.
📖 Documentation
Minor Documentation Improvements
v0.25.0
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
💥 Breaking Changes
🛠 Improvements
- Update to vscode-flow v0.6.1 (#307) @turbolent
Version 0.24.1
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
🐞 Bug Fixes
VSCode Update (#304) @sideninja
Version 0.24.0
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
💥 Breaking Changes
Cadence and Language Server Update
Cadence was updated to version 0.18.0 and the language server to version 0.18.2 which implements the breaking changes from flowkit library.
FlowKit API Changes
CLI implements a flowkit utility library that can be reused in other services. This is early-stage development and the API for this library was refactored and improved.
⭐ Features
Decode PEM Public Key
New command for decoding PEM encoded public key. You can use the decoding command like so:
flow keys decode pem --from-file key.pem
Public Key d479b3cdc9edbddb195cb12b35161ade826b032a64bdd4062cc87fb3ba7e71c9cf646ff23990bb4532ca45c445c7e908cef278b2c4615360039a6660a366a95f
Signature algorithm ECDSA_P256
Revoked false
🎉 Improvements
Validate Configuration
Configuration validation has been improved and will provide better feedback when there are wrong values set in the flow.json
.
Updated Cobra
Cobra library was updated to the latest version.
Refactored Testing
The testing suite was completely refactored and improved which will provide better code coverage and more reliable codebase.
🐞 Bug Fixes
Refactored Event Display
Events output on the transaction command was refactored, so it better handles special values in the events.
Flow Init Warning
Flow init command incorrectly displayed a warning which is now removed.
Transaction IDs Output
All commands that send transactions to the network now display that transaction ID for better visibility.
Version 0.23.0
⬆️ Install or Upgrade
Follow the Flow CLI installation guide for instructions on how to install or upgrade the CLI.
💥 Breaking Changes
Update Emulator Version
The emulator version was updated to v0.23.0 with Cadence v0.18.0