Search
You can find a list of release notes for Chainlink nodes in the smartcontractkit GitHub repository. Docker images are available in the Chainlink Docker hub.
hexencode
and base64encode
tasks (pipeline). See the Hex Encode Task and Base64 Encode Task pages for examples.forwardingAllowed
per job attribute to allow forwarding txs submitted by the job.Arbitrum Goerli
configuration support.NODE_SELECTION_MODE
(EVM.NodePool.SelectionMode
) environment variable, which controls node picking strategy. Supported values are:HighestHead
is the default mode, which picks a node that has the highest reported head number among other alive nodes. When several nodes have the same latest head number, the strategy sticks to the last used node. This mode requires NODE_NO_NEW_HEADS_THRESHOLD
to be configured, otherwise it will always use the first alive node.RoundRobin
mode iterates among available alive nodes. This was the default behavior prior to this release.evm keys chain
command. This can also be accessed at /v2/keys/evm/chain
. This command has the following uses:chainlink evm keys chain --address "0xEXAMPLE" --evmChainID 99 --setNextNonce 42
chainlink evm keys chain --address "0xEXAMPLE" --evmChainID 99 --setEnabled true
chainlink evm keys chain --address "0xEXAMPLE" --evmChainID 99 --setEnabled false
chainlink admin users update
command is replaced with chainlink admin users chrole
. Only the role can be changed for a user.Arbitrum
chains are no longer restricted to only FixedPrice
GAS_ESTIMATOR_MODE
.Arbitrum Rinkeby & Mainnet
configurations for Nitro.setnextnonce
local client command is removed and is replaced by the more general evm keys chain
command client command.p2pv2Bootstrappers
is added as a new optional property of OCR1 job specs. The default can still be specified with the P2PV2_BOOTSTRAPPERS
environment variable.
Added official support for the Sepolia testnet on Chainlink nodes.
Added hexdecode
task and the base64decode
task (pipeline).
Added support for the Besu execution client. Although Chainlink supports Besu, Besu itself has several issues that can make it unreliable. For additional context, see the following issues:
Added Multi-user and Role Based Access Control functionality. This allows the root admin CLI user and additional admin users to create and assign tiers of role-based access to new users. These new API users are able to log in to the Operator UI independently and can each have specific roles tied to their account. There are four roles: admin
, edit
, run
, and view
.
chainlink admin users
. Be sure to run chainlink adamin login
. For example, a readonly user can be created with: chainlink admin users create --email=operator-ui-read-only@test.com --role=view
.Added gas limit control for individual job specs and individual job types. The following rule of precedence is applied:
The task-specific parameter gasLimit
overrides anything else when specified. For example, the ethtx
task has a gasLimit
parameter that overrides the other defaults for this specific task.
The job-spec attribute gasLimit
applies only to a specific job spec.
The job-type limits affect any jobs of the corresponding type. The following environment variables are available:
The global ETH_GAS_LIMIT_DEFAULT
(EVM.GasEstimator.LimitDefault
) value is used only when the preceding rules are not set.
Chainlink will not boot if the Postgres database password is missing or insecure. Passwords must conform to the following rules:
For backward compatibility, you can bypass this check at your own risk by setting SKIP_DATABASE_PASSWORD_COMPLEXITY_CHECK=true
.
The following environment variables are deprecated and will be removed in a future release. They are are replaced by the following command line arguments:
INSECURE_SKIP_VERIFY
: Replaced by the --insecure-skip-verify
CLI argumentCLIENT_NODE_URL
: Replaced by the --remote-node-url URL
CLI argumentADMIN_CREDENTIALS_FILE
: Replaced by the --admin-credentials-file FILE
CLI argumentRun ./chainlink --help
to learn more about these CLI arguments.
The Optimism2
GAS_ESTIMATOR_MODE
has been renamed to L2Suggested
. The old name is still supported for now.
The p2pBootstrapPeers
property on OCR2 job specs has been renamed to p2pv2Bootstrappers
.
Added the ETH_USE_FORWARDERS
config option to enable transactions forwarding contracts.
In the directrequest
job pipeline, three new block variables are available:
$(jobRun.blockReceiptsRoot)
: the root of the receipts trie of the block (hash)$(jobRun.blockTransactionsRoot)
: the root of the transaction trie of the block (hash)$(jobRun.blockStateRoot)
: the root of the final state trie of the block (hash)ethtx
tasks can now be configured to error if the transaction reverts on-chain. You must set failOnRevert=true
on the task to enable this behavior:
foo [type=ethtx failOnRevert=true ...]
The ethtx
task now works as follows:
minConfirmations == 0
, task always succeeds and nil is passed as output.minConfirmations > 0
, the receipt is passed through as output.minConfirmations > 0
and failOnRevert=true
then the ethtx
task will error on revert.minConfirmations
is not set on the task, the chain default will be used which is usually 12 and always greater than 0.http
task now allows specification of request headers. Use it like the following example:
foo [type=http headers="[\\"X-Header-1\\", \\"value1\\", \\"X-Header-2\\", \\"value2\\"]"]
.
Fixed max_unconfirmed_age
metric. Previously this would incorrectly report the max time since the last rebroadcast, capping the upper limit to the EthResender interval. This now reports the correct value of total time elapsed since the first broadcast.
Correctly handle the case where bumped gas would exceed the RPC node's configured maximum on Fantom. Note that node operators should check their Fantom RPC node configuration and remove the fee cap if there is one.
Fixed handling of the Metis internal fee change.
The Optimism
OVM 1.0 GAS_ESTIMATOR_MODE
has been removed and the Optimism2
GAS_ESTIMATOR_MODE
has been renamed to L2Suggested
.
MIN_OUTGOING_CONFIRMATIONS
has been removed and no longer has any effect. The ETH_FINALITY_DEPTH
environment variable is now used as the default for ethtx
confirmations instead. You can override this on a per-task basis by setting minConfirmations
in the task definition. For example, foo [type=ethtx minConfirmations=42 ...]
.
This setting might have a minor impact on performance for very high throughput chains. If you don't care about reporting task status in the UI, set minConfirmations=0
in your job specs. For more details, see the Optimizing EVM Performance page.
EthSubscribe
does not register (*rpc.ClientSubscription)(nil)
, which leads to a panic when unsubscribing.separator
parameter to substitute for the default ,
.force
flag on the chainlink blocks replay
CLI command. If set to true, already consumed logs that would otherwise be skipped will be rebroadcasted.bypass-version-check
flag skips this check.ERROR 0106_evm_node_uniqueness.sql: failed to run SQL migration
, you have multiple nodes specified with the same URL and you must fix this before proceeding with the upgrade.checkUpkeep()
. To enable the feature, set KEEPER_CHECK_UPKEEP_GAS_PRICE_FEATURE_ENABLED to true
. Use this setting only on Polygon networks.Not for use on Solana or Terra
Although this release provides SOLANA_ENABLED
and TERRA_ENABLED
environment variables, these are not intended for use on Solana or Terra mainnets.
Significant changes:
deleteuser
CLI command.LOG_TO_DISK
environment variable.See the v1.2.0 release notes for a complete list of changes and fixes.
The v1.1.0 release includes several substantial changes to the way you configure and operate Chainlink nodes:
With multliple chain support, eth node configuration is stored in the database.
The following environment variables are DEPRECATED:
Setting ETH_URL will cause Chainlink to automatically overwrite the database records with the given ENV values every time Chainlink boots. This behavior is used mainly to ease the process of upgrading from older versions, and on subsequent runs (once your old settings have been written to the database) it is recommended to unset these ENV vars and use the API commands exclusively to administer chains and nodes.
If you wish to continue using these environment variables (as it used to work in 1.0.0 and below) you must ensure that the following are set:
If, instead, you wish to use the API/CLI/GUI to configure your chains and eth nodes (recommended) you must REMOVE the following environment variables:
This will cause Chainlink to use the database for its node configuration.
NOTE: ETH_CHAIN_ID does not need to be removed, since it now performs the additional duty of specifying the default chain in a multichain environment (if you leave ETH_CHAIN_ID unset, the default chain is simply the "first").
For more information on configuring your node, check the configuration variables in the docs.
Before you upgrade your nodes to v1.1.0, be aware of the following requirements:
See the v1.1.0 release notes for a complete list of changes and fixes.
v1.0.0 release notes
v1.0.1 release notes
Before you upgrade your nodes to v1.0.0 or v1.0.1, be aware of the following requirements: