ckb

The Nervos CKB is a public permissionless blockchain, and the layer 1 of Nervos network.

MIT License

Downloads
8.2M
Stars
1.1K
Committers
49

Bot releases are visible (Hide)

ckb - 0.39.2 (2d56a24 2021-01-30)

Published by nervos-bot-user over 3 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

This version has fixed several bugs, including the one that ckb complains that pool is full when sending conflicting transactions.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

Improvements

  • Upgrade tentacle to 0.3.7 (@driftluo).

Bug Fixes

  • #2532: Update statics for removing tx (@zhangsoledad)
  • #2546: Resolve rocksdb cache size issue when using default.db-options (@quake)
ckb - v0.40.0-rc1

Published by nervos-bot-user almost 4 years ago

This is an RC version to preview the changes in the next release.

RPC Deprecation

Pay attention that following RPC methods will be removed from v0.40.0:

  • The method get_cells_by_lock_hash in the module Chain.
  • The whole module Indexer.

The following methods will be disabled by default from v0.40.0 and will be removed from v0.41.0:

  • The method get_cellbase_output_capacity_details in the module Chain.
  • The method get_peers_state in the module Stats.
  • The methods _compute_transaction_hash, _compute_script_hash and estimate_fee_rate in the module Experiment.

Config Changes

Because of deleted RPC methods, following keys must be deleted from the existing config file ckb.toml:

  • Indexer is no longer a valid RPC module in [rpc] modules.
  • The whole section [indexer] is removed.
OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

Features

  • #2501: chore: remove deprecated RPC and add deprecated to some RPC.

    Resolve #2487

  • #2297: Chain freezer (@zhangsoledad)

    Introduce chain freezer, Inspired by [Splitting the data directory] and [geth-v1-9-0]

    Now, separated database into two parts, recent block and ancient history. If your data directory is located on a magnetic disk, you can link db to an SSD drive to improve performance. If your data directory is on an SSD: you can link ancient to an HDD drive to save space.

    Freezer is disabled by default. It has some performance bottlenecks that we are fixing.

  • #2365: Tx pool callback (@zhangsoledad)

Bug Fixes

  • #2455: Relay and sync should be order independent (@yangby-cryptape)

    Fix #2450.

  • #2484: Don't do sync before sync connected (@yangby-cryptape)

    This issue was introduced since #2455.

  • #2458: Fix potential failure in integration test TransactionRelayLowFeeRate (@yangby-cryptape)

  • #2454: Fix the log output of integration tests and output more logs (@yangby-cryptape)

  • #2502: Skip RUSTSEC-2020-0095 temporarily (@yangby-cryptape)

ckb - ckb 0.39.1 (7f5d486 2021-01-06)

Published by nervos-bot-user almost 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

  • Upgrade tentacle to 0.3.4 (@driftluo).

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

ckb - ckb 0.39.0 (709862f 2020-12-24)

Published by nervos-bot-user almost 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

Pay attention that following RPC methods will be removed from v0.40.0:

  • The method get_cells_by_lock_hash in the module Chain.
  • The whole module Indexer.

The following methods will be disabled by default from v0.40.0 and will be removed from v0.41.0:

  • The method get_cellbase_output_capacity_details in the module Chain.
  • The method get_peers_state in the module Stats.
  • The methods _compute_transaction_hash, _compute_script_hash and estimate_fee_rate in the module Experiment.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

Features

  • #2382: Permit load cell data from memory (@zhangsoledad)

  • #2343: Add RPC get_raw_tx_pool (@zhangsoledad)

  • #2347: Add RPC to get consensus parameters (@zhangsoledad)

  • #2280: Add assume valid target config (@driftluo)

    Added option to skip verification for faster synchronization of trusted node data to a specified height

    Please know exactly what you are doing before you use it!

  • #2351: Add with_sentry feature (@quake)

    Move sentry to optional dependency, reduce dependency libs on other target (wasm32, etc)

  • #2334: Migrate check (@zhangsoledad)

    Add command ckb migrate --check. If migration is in need 0 will be return,otherwise 64.

  • #2379: Let the consensus params orphan_rate_target to be configurable (@yangby-cryptape)

Bug Fixes

  • #2394: Some crates invalidly assumes the memory layout of std::net::SocketAddr (@yangby-cryptape)

  • #2389: Upgrade CKB VM to fix memmap security warning (@xxuejie)

  • #2387: Skip RUSTSEC-2020-0077 temporarily (@yangby-cryptape)

  • #2392: Skip RUSTSEC-2020-0082 temporarily since not affected (@yangby-cryptape)

  • #2350: The description for the low fee rate error (@yangby-cryptape)

    The first parameter is the minimum transaction fee, not the fee rate.

  • #2357: Conflict transaction stuck in tx-pool (@zhangsoledad)

  • #2390: Don't open db when disable indexer module, fix deprecated method response (@driftluo)

Improvements

  • #2386: Replace failure by thiserror and anyhow (@yangby-cryptape)

    RUSTSEC-2020-0036: failure: failure is officially deprecated/unmaintained

  • #2373: Single instance async runtime (@zhangsoledad)

    This PR brings several refactorings. All async processes now use one single instance runtime. It makes ckb-network work as a usually library and decoupled from the runtime.

  • #2271: Add some mining utils (@keroro520)

  • #2277: Add some utils to generate spendable cells (@keroro520)

  • #2342 doc: Add some missing docs (@zhangsoledad)

  • #2369 doc: Network doc (@driftluo)

ckb - [YANKED] v0.39.0-rc2

Published by nervos-bot-user almost 4 years ago

⚠️Yanked because of the bug #2448⚠️

This is an RC version to preview the changes in the next release.

Features

  • #2382: Permit load cell data from memory (@zhangsoledad)

Bug Fixes

  • #2394: Some crates invalidly assumes the memory layout of std::net::SocketAddr (@yangby-cryptape)

Improvements

ckb - v0.39.0-rc1

Published by nervos-bot-user almost 4 years ago

⚠️Yanked because of the bug #2448⚠️

ckb v0.39.0-rc1 (6752ba1 2020-12-07)

This is an RC version to preview the changes in the next release.

Pay attention that following RPC methods will be removed from v0.40.0:

  • The method get_cells_by_lock_hash in the module Chain.
  • The whole module Indexer.

The following methods will be disabled by default from v0.40.0 and will be removed from v0.41.0:

  • The method get_cellbase_output_capacity_details in the module Chain.
  • The method get_peers_state in the module Stats.
  • The methods _compute_transaction_hash, _compute_script_hash and estimate_fee_rate in the module Experiment.

Features

  • #2343: Add RPC get_raw_tx_pool (@zhangsoledad)

  • #2255: Detect spec compatibility when booting (@zhangsoledad)

  • #2347: Add RPC to get consensus parameters (@zhangsoledad)

  • #2280: Add assume valid target config (@driftluo)

    Added option to skip verification for faster synchronization of trusted node data to a specified height

    Please know exactly what you are doing before you use it!

  • #2351: Add with_sentry feature (@quake)

    Move sentry to optional dependency, reduce dependency libs on other target (wasm32, etc)

  • #2334: Migrate check (@zhangsoledad)

    Add command ckb migrate --check. If migration is in need 0 will be return,otherwise 64.

  • #2379: Let the consensus params orphan_rate_target to be configurable (@yangby-cryptape)

Bug Fixes

  • #2389: Upgrade CKB VM to fix memmap security warning (@xxuejie)

  • #2387: Skip RUSTSEC-2020-0077 temporarily (@yangby-cryptape)

  • #2392: Skip RUSTSEC-2020-0082 temporarily since not affected (@yangby-cryptape)

  • #2350: The description for the low fee rate error (@yangby-cryptape)

    The first parameter is the minimum transaction fee, not the fee rate.

  • #2357: Conflict transaction stuck in tx-pool (@zhangsoledad)

  • #2390: Don't open db when disable indexer module, fix deprecated method response (@driftluo)

Improvements

  • #2373: Single instance async runtime (@zhangsoledad)

    This PR brings several refactorings. All async processes now use one single instance runtime. It makes ckb-network work as a usually library and decoupled from the runtime.

  • #2271: Add some mining utils (@keroro520)

  • #2277: Add some utils to generate spendable cells (@keroro520)

  • #2342 doc: Add some missing docs (@zhangsoledad)

  • #2369 doc: Network doc (@driftluo)

ckb - ckb 0.38.1 (e1fd4b0 2020-12-02)

Published by nervos-bot-user almost 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

This version backported a bug fixing:

  • #2357: Conflict transaction stuck in the tx pool (@zhangsoledad)

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

ckb - ckb 0.38.0 (8f05eb7 2020-11-17)

Published by nervos-bot-user almost 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

⚠️ Because of v0.37.0, upgrading from versions prior to v0.37.0 requires the migration which takes about half an hour.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

Features

  • #2329: Configurable block proposals limit (@zhangsoledad)
  • #2330: Migrate subcommand (@zhangsoledad)

Bug Fixes

  • #2328: Fix u256 rpc doc (@doitian)

Improvements

  • #2312: Use cargo-deny to replace cargo-audit (@yangby-cryptape)
ckb - v0.38.0-rc1

Published by nervos-bot-user almost 4 years ago

ckb v0.38.0-pre (2fc9055 2020-11-02)

This is an RC version to preview the changes in the next release.

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

Features

  • #2329: Configurable block proposals limit (@zhangsoledad)
  • #2330: Migrate subcommand (@zhangsoledad)

Bug Fixes

  • #2328: Fix u256 rpc doc (@doitian)

Improvements

  • #2312: Use cargo-deny to replace cargo-audit (@yangby-cryptape)
ckb - ckb 0.37.0 (3076ff6 2020-10-20)

Published by doitian almost 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

Starting from v0.37.0, all the crates will be published to crates.io as well. See ckb in crates.io for details.

Breaking Changes

Database

⚠️ This new version will migrate the database on first launch. Please backup the data dir if you want to use old versions later.

⚠️ The migration takes about half an hour. The node denies all RPC requests during the migration.

Config file

There is a new config option db.options_file introduced in #2299. This option provides an options file to tune RocksDB for your workload and your system configuration. More details can be found in the official tuning guide. Remove or comment this option to use the default options file, which is the behavior in previous versions.

RPC

The RPC get_cells_by_lock_hash is deprecated and now it only returns errors (#2269).

There are 4 new RPC methods: ping_peers, get_transaction_proof, verify_transaction_proof, and clear_banned_addresses.

The subscribe RPC added a new topic new_transaction.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

Features

  • #2270 rpc: Rework rpc doc (@doitian)

  • #2299: Add a default RocksDB options file (@yangby-cryptape)

    The default options file limits the maximum memory usage.

  • #2276: Improve migration progress display (@zhangsoledad)

  • #2257 rpc: Add ping_peers rpc (@quake)

  • #2260 rpc: Add get_transaction_proof and verify_transaction_proof rpc (@quake)

  • #2259 rpc: Add clear_banned_addresses rpc (@quake)

  • #2265 rpc: Add nMinimumChainWork config (@driftluo)

    The mainnet has been online for a long time, and it is time to add a minimum workload proof to prevent possible node attacks during the initial synchronization.

  • #2269: Redesign cell store (@zhangsoledad)

    Previous cell storage is inefficient. This PR proposal a new live cell storage schema, which optimized the resolve transaction bottleneck.

    Breaking Changes:

    • This PR will migrate the database.
    • The RPC get_cells_by_lock_hash is deprecated and now it only returns errors.
  • #2281 rpc: Add tx subscription RPC (@quake)

    This PR added a new_transaction topic to subscription rpc, user will get notified when new transaction is submitted to pool.

Bug Fixes

  • #2285: Fix the problem of disconnection caused by uncertainty (@driftluo)
  • #2283: Resolve network background service cleanup issue when rpc tcp server is on (@quake)
  • #2298: Skip RUSTSEC-2020-0043 temporarily (@yangby-cryptape)

Improvements

  • #2236: Rewrite discovery (@driftluo)
  • #2303: Replace legacy crate lru-cache (@zhangsoledad)
  • #2282 test: Create log monitor for integration test check status between nodes (@chuijiaolianying)
  • #2286 test: Redesign the testing framework (@keroro520)
  • #2294 test: Redesign the way of Net communicate with peers (@keroro520)
  • #2268 test: Add some transaction checking utils (@keroro520)
ckb -

Published by nervos-bot-user about 4 years ago

ckb 0.37.0-pre (9ae4b75 2020-10-12)

This is an RC version to preview the changes in the next release.

This version introduces the new RPC doc which contains detailed information about the types and errors.

Breaking Changes

Database

⚠️ This new version will migrate the database on first launch. Please backup the data dir if you want to use old versions later.

⚠️ The migration takes about half an hour. The node denies all RPC requests during the migration.

Config file

There is a new config option db.options_file introduced in #2299. This option provides an options file to tune RocksDB for your workload and your system configuration. More details can be found in the official tuning guide. Remove or comment this option to use the default options file, which is the behavior in previous versions.

RPC

The RPC get_cells_by_lock_hash is deprecated and now it only returns errors (#2269).

There are 4 new RPC methods: ping_peers, get_transaction_proof, verify_transaction_proof, and clear_banned_addresses.

The subscribe RPC added a new topic new_transaction.

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

Features

  • #2270 rpc: Rework rpc doc (@doitian)

  • #2299: Add a default RocksDB options file (@yangby-cryptape)

    The default options file limits the maximum memory usage.

  • #2276: Improve migration progress display (@zhangsoledad)

  • #2257 rpc: Add ping_peers rpc (@quake)

  • #2260 rpc: Add get_transaction_proof and verify_transaction_proof rpc (@quake)

  • #2259 rpc: Add clear_banned_addresses rpc (@quake)

  • #2265 rpc: Add nMinimumChainWork config (@driftluo)

    The mainnet has been online for a long time, and it is time to add a minimum workload proof to prevent possible node attacks during the initial synchronization.

  • #2269: Redesign cell store (@zhangsoledad)

    Previous cell storage is inefficient. This PR proposal a new live cell storage schema, which optimized the resolve transaction bottleneck.

    Breaking Changes:

    • This PR will migrate the database.
    • The RPC get_cells_by_lock_hash is deprecated and now it only returns errors.
  • #2281 rpc: Add tx subscription RPC (@quake)

    This PR added a new_transaction topic to subscription rpc, user will get notified when new transaction is submitted to pool.

Bug Fixes

  • #2285: Fix the problem of disconnection caused by uncertainty (@driftluo)
  • #2283: Resolve network background service cleanup issue when rpc tcp server is on (@quake)
  • #2298: Skip RUSTSEC-2020-0043 temporarily (@yangby-cryptape)

Improvements

  • #2236: Rewrite discovery (@driftluo)
  • #2303: Replace legacy crate lru-cache (@zhangsoledad)
  • #2282 test: Create log monitor for integration test check status between nodes (@chuijiaolianying)
  • #2286 test: Redesign the testing framework (@keroro520)
  • #2294 test: Redesign the way of Net communicate with peers (@keroro520)
  • #2268 test: Add some transaction checking utils (@keroro520)
ckb - ckb 0.36.0 (7692751 2020-09-21)

Published by doitian about 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

Breaking Changes

  • #2251 RPC: Deprecated RPC method by adding deprecated. prefix to the rpc name (@quake)

    This PR has also deprecated following RPC methods:

    • get_cells_by_lock_hash
    • All methods in the Indexer module.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

Breaking Changes

  • #2251 RPC: Deprecated RPC method by adding deprecated. prefix to the rpc name (@quake)

    This PR has also deprecated following RPC methods:

    • get_cells_by_lock_hash
    • All methods in the Indexer module.

Features

  • #2276: Improve database migration progress display (@zhangsoledad)

  • #2199: Add metrics service (@yangby-cryptape)

    How to enable the metrics service

  • #2243: Refactor identify network protocol by removing Both (@driftluo)

  • #2239: Support to control memory usage for header map (@yangby-cryptape)

  • #2248: Add verbosity param to chain related rpc (@quake)

    This PR adds an optional verbosity param to chain related rpc, returns data in hex format without calculated hash values, it will improve performance in some scenarios.

Bug Fixes

  • #2283: Resolve network background service cleanup issue when rpc tcp server is on. (@quake)

  • #2266: Use forked metrics and forked sentry to fix RUSTSEC-2020-0041 temporarily (@yangby-cryptape)

  • #2212: Advance last_common_header even the peer is worse than us (@keroro520)

  • #2238: Tx-pool block_on async oneshot (@zhangsoledad)

    Replace crossbeam-channel with async oneshot

  • #2216: Integration test random failures (@quake)

    While waiting for the get_blocks message in the integration test, we should determine whether the last block hash is equal or not.

Improvements

  • #2220: Split logger config and service (@yangby-cryptape)

  • #2213: Reduce useless field and reduce get time call (@driftluo)

  • #2245 logger: Replace lazy_static with once_cell (@zhangsoledad)

  • #2229: Rewrite the ping network protocol (@driftluo)

  • #2244: Re-export crossbeam-channel (@zhangsoledad)

    Re-export crossbeam-channel from facade wrapper, unify version specify.

    Use tilde requirements specify for crossbeam-channel, prevent automate dependency updates.

ckb - ckb 0.35.1 (9f1c1478 2020-09-14)

Published by doitian about 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

This patch version added the migration progress display (#2276) because the migration introduced in v0.35.0 is slow. However, CKB may take a long time to start because of RocksDB data compaction. We'll bundle recommended RocksDB options file in later releases to alleviate it.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

Features

  • #2276: Improve migration progress display (@zhangsoledad)
ckb -

Published by doitian about 4 years ago

ckb 0.36.0-pre (88e8d50 2020-09-14)

Bug Fixes

This is an RC version to preview the changes in the next release.

This version has deprecated the following RPC methods (#2251):

  • get_cells_by_lock_hash
  • All methods in the Indexer module.

The new config file option rpc.enable_deprecated_rpc can enable the deprecated methods.

Changes since v0.36.0-rc2

  • #2276: Improve database migration progress display (@zhangsoledad)
OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

Breaking Changes

  • #2251 RPC: Deprecated RPC method by adding deprecated. prefix to the rpc name (@quake)

    This PR has also deprecated following RPC methods:

    • get_cells_by_lock_hash
    • All methods in the Indexer module.

Features

  • #2276: Improve database migration progress display (@zhangsoledad)

  • #2199: Add metrics service (@yangby-cryptape)

    How to enable the metrics service

  • #2243: Refactor identify network protocol by removing Both (@driftluo)

  • #2239: Support to control memory usage for header map (@yangby-cryptape)

  • #2248: Add verbosity param to chain related rpc (@quake)

    This PR adds an optional verbosity param to chain related rpc, returns data in hex format without calculated hash values, it will improve performance in some scenarios.

Bug Fixes

  • #2266: Use forked metrics and forked sentry to fix RUSTSEC-2020-0041 temporarily (@yangby-cryptape)

  • #2212: Advance last_common_header even the peer is worse than us (@keroro520)

  • #2238: Tx-pool block_on async oneshot (@zhangsoledad)

    Replace crossbeam-channel with async oneshot

  • #2216: Integration test random failures (@quake)

    While waiting for the get_blocks message in the integration test, we should determine whether the last block hash is equal or not.

Improvements

  • #2220: Split logger config and service (@yangby-cryptape)

  • #2213: Reduce useless field and reduce get time call (@driftluo)

  • #2245 logger: Replace lazy_static with once_cell (@zhangsoledad)

  • #2229: Rewrite the ping network protocol (@driftluo)

  • #2244: Re-export crossbeam-channel (@zhangsoledad)

    Re-export crossbeam-channel from facade wrapper, unify version specify.

    Use tilde requirements specify for crossbeam-channel, prevent automate dependency updates.

ckb -

Published by doitian about 4 years ago

ckb 0.36.0-pre (38aacb5 2020-09-11)

Bug Fixes

This is an RC version to preview the changes in the next release.

This version has deprecated the following RPC methods (#2251):

  • get_cells_by_lock_hash
  • All methods in the Indexer module.

The new config file option rpc.enable_deprecated_rpc can enable the deprecated methods.

Changes since v0.36.0-rc1

  • #2266: Use forked metrics and forked sentry to fix RUSTSEC-2020-0041 temporarily (@yangby-cryptape)
OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

Breaking Changes

  • #2251 RPC: Deprecated RPC method by adding deprecated. prefix to the rpc name (@quake)

    This PR has also deprecated following RPC methods:

    • get_cells_by_lock_hash
    • All methods in the Indexer module.

Features

  • #2199: Add metrics service (@yangby-cryptape)

    How to enable the metrics service

  • #2243: Refactor identify network protocol by removing Both (@driftluo)

  • #2239: Support to control memory usage for header map (@yangby-cryptape)

  • #2248: Add verbosity param to chain related rpc (@quake)

    This PR adds an optional verbosity param to chain related rpc, returns data in hex format without calculated hash values, it will improve performance in some scenarios.

Bug Fixes

  • #2266: Use forked metrics and forked sentry to fix RUSTSEC-2020-0041 temporarily (@yangby-cryptape)

  • #2212: Advance last_common_header even the peer is worse than us (@keroro520)

  • #2238: Tx-pool block_on async oneshot (@zhangsoledad)

    Replace crossbeam-channel with async oneshot

  • #2216: Integration test random failures (@quake)

    While waiting for the get_blocks message in the integration test, we should determine whether the last block hash is equal or not.

Improvements

  • #2220: Split logger config and service (@yangby-cryptape)

  • #2213: Reduce useless field and reduce get time call (@driftluo)

  • #2245 logger: Replace lazy_static with once_cell (@zhangsoledad)

  • #2229: Rewrite the ping network protocol (@driftluo)

  • #2244: Re-export crossbeam-channel (@zhangsoledad)

    Re-export crossbeam-channel from facade wrapper, unify version specify.

    Use tilde requirements specify for crossbeam-channel, prevent automate dependency updates.

ckb -

Published by doitian about 4 years ago

ckb 0.36.0-pre (a2378b5 2020-09-06)

This is an RC version to preview the changes in the next release.

This version has deprecated the following RPC methods (#2251):

  • get_cells_by_lock_hash
  • All methods in the Indexer module.

The new config file option rpc.enable_deprecated_rpc can enable the deprecated methods.

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

Breaking Changes

  • #2251 RPC: Deprecated RPC method by adding deprecated. prefix to the rpc name (@quake)

    This PR has also deprecated following RPC methods:

    • get_cells_by_lock_hash
    • All methods in the Indexer module.

Features

  • #2199: Add metrics service (@yangby-cryptape)

    How to enable the metrics service

  • #2243: Refactor identify network protocol by removing Both (@driftluo)

  • #2239: Support to control memory usage for header map (@yangby-cryptape)

  • #2248: Add verbosity param to chain related rpc (@quake)

    This PR adds an optional verbosity param to chain related rpc, returns data in hex format without calculated hash values, it will improve performance in some scenarios.

Bug Fixes

  • #2212: Advance last_common_header even the peer is worse than us (@keroro520)

  • #2238: Tx-pool block_on async oneshot (@zhangsoledad)

    Replace crossbeam-channel with async oneshot

  • #2216: Integration test random failures (@quake)

    While waiting for the get_blocks message in the integration test, we should determine whether the last block hash is equal or not.

Improvements

  • #2220: Split logger config and service (@yangby-cryptape)

  • #2213: Reduce useless field and reduce get time call (@driftluo)

  • #2245 logger: Replace lazy_static with once_cell (@zhangsoledad)

  • #2229: Rewrite the ping network protocol (@driftluo)

  • #2244: Re-export crossbeam-channel (@zhangsoledad)

    Re-export crossbeam-channel from facade wrapper, unify version specify.

    Use tilde requirements specify for crossbeam-channel, prevent automate dependency updates.

ckb - ckb 0.35.0 (6caf504 2020-08-24)

Published by doitian about 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

This version has some breaking changes in RPCs. The RPC error now uses different error codes and returns the detailed error information in the data field. (#2038)

There are also a bunch of new RPCs and new fields for existing RPCs, see the CHANGELOG for details.

This version also has migrated the database schema. It will run automatically when the new version starts the first time. (#2152)

Attention: The migration is not reversible. Please backup the data directory if you want to use old versions later.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The .asc files are signatures. It is wise and more secure to check out for the files integrity.

Features

  • #2038 rpc: Re-organize RPC errors (@doitian)

    This is a breaking change: b:rpc

    This PR reworks on the RPC errors:

    • Use JSONRPC error code to differentiate different errors. Also prefix the error code in the message to be search engine friendly.
    • Make error message simple and easy to understand. The dump of the error is added as the data instead.
    • Avoid reusing the same error message for different reasons.

    Breaking Changes

    • The error object data field is always absent before, now it can be a string which contains the detailed error information.
    • The code in error object is always -3 for all the CKB internal errors, now it can have different values to differentiate different errors. Check the file rpc/src/error.rs.
    • The error messages have been updated to improve readability.
  • #2049 rpc: Improve error messages from send transaction RPC (@doitian)

  • #2178 rpc: Add generate_block RPC to IntegrationTest module (@quake)

    It allows user to generate block through RPC, it's a convenient feature for dApp integration test (like truncate RPC)

  • #2188 rpc: Add sync state RPC (@driftluo)

    Wallet can fetch the best known block header the node gets from the P2P network.

  • #2184 rpc: Tx_pool_info include tip hash (@keroro520)

  • #2144 rpc: Add set_network_active RPC (@quake)

    Allows user to pause and restart p2p network message processing through RPC.

  • #2190 rpc: Move add_node / remove_node RPC to Net module (@quake)

  • #2196 rpc: Add more fields to RPC get_peers (@quake)

    Added connected_duration, last_ping_duration, protocols and sync_state to get_peers RPC.

  • #2195 rpc: Add more fields to local_node_info RPC (@quake)

    Added active, connections and protocols fields to local_node_info.

  • #2159: Load db options from a file; support configuring column families (@yangby-cryptape)

  • #2175: Support multiple file loggers in ckb.toml (@yangby-cryptape)

  • #2182: Take full control of main logger filter via RPC (@yangby-cryptape)

Bug Fixes

  • #2158: Panic if db options is empty (@yangby-cryptape)

  • #2157: The option of db path doesn't work (@yangby-cryptape)

  • #2177: Fix the lenient logger filter parser (@yangby-cryptape)

  • #2134: Update proposal table after chain reorg (@zhangsoledad)

    Previously, proposal-table update not considered in chain rollback, it's almost impossible to happen in hashrate-based chain. But can be triggered by truncate RPC.

  • #2197: Should exit with error code when setup failed (@yangby-cryptape)

    Issue: if the config was malformed and an error was thrown in setup_app, the process wouldn't exit.

Improvements

  • #2152: Change storage molecule table to struct (@quake)

    This is a breaking change: b:database

    Storage structs HeaderView, EpochExt and TransactionInfo are fixed size, we should use molecule struct instead of table, it reduces storage size and improves the performance a little bit.

  • #2150: Don't query store twice in method chaining (@yangby-cryptape)

  • #2151: Reduce times of querying header map (@yangby-cryptape)

  • #2147: Don't cache all data of header map in memory during IBD (@yangby-cryptape)

  • #2154: Split chain iter (@zhangsoledad)

  • #2153: Decoupling migration from db (@zhangsoledad)

    Previously, migration coupling with DB, this sacrifice flexibility. In a case like this, opening a read-only DB will be trouble.
    This PR proposal split migration.

  • #2163: Add HeaderProvider trait and split DataLoader to smaller trait (@quake)

  • #1988: Use a new method to detect headers sync timeout (@yangby-cryptape)

    To avoid possible performance issues on headers synchronization.

  • #2180: Add case description and some assertion for alert_propagation integration test (@chuijiaolianying)

  • #2179: Refactor about integration service mining relate cases. (@chuijiaolianying)

  • #2189: Add case description and update case assertions for consensus related cases. (@chuijiaolianying)

  • #2204: Add some trait for integration cases (@chuijiaolianying)

  • #2164: Improve script error (@doitian)

  • #2168: Improve error when submitting block (@doitian)

  • #2169: Small tx-pool refactoring (@zhangsoledad)

    • rename ContextualTransactionVerifier -> TimeRelativeTransactionVerifier
    • split NonContextualTransactionVerifier from TransactionVerifier
    • check syntactic correctness first before
    • refactory tx-pool rejection error
    • re-broadcast when duplicated tx submit
ckb -

Published by nervos-bot-user about 4 years ago

ckb 0.35.0-pre (0c1a61c 2020-08-10)

This is an RC version to preview the changes in the next release.

This version has some breaking changes in RPCs. The RPC error now uses different error codes and returns the detailed error information in the data field. (#2038)

There are also a bunch of new RPCs and new fields for existing RPCs, see the CHANGELOG for details.

This version also has migrated the database schema. It will run automatically when the new version starts the first time. (#2152)

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

Features

  • #2038 rpc: Re-organize RPC errors (@doitian)

    This is a breaking change: b:rpc

    This PR reworks on the RPC errors:

    • Use JSONRPC error code to differentiate different errors. Also prefix the error code in the message to be search engine friendly.
    • Make error message simple and easy to understand. The dump of the error is added as the data instead.
    • Avoid reusing the same error message for different reasons.

    Breaking Changes

    • The error object data field is always absent before, now it can be a string which contains the detailed error information.
    • The code in error object is always -3 for all the CKB internal errors, now it can have different values to differentiate different errors. Check the file rpc/src/error.rs.
    • The error messages have been updated to improve readability.
  • #2049 rpc: Improve error messages from send transaction RPC (@doitian)

  • #2178 rpc: Add generate_block RPC to IntegrationTest module (@quake)

    It allows user to generate block through RPC, it's a convenient feature for dApp integration test (like truncate RPC)

  • #2188 rpc: Add sync state RPC (@driftluo)

    Wallet can fetch the best known block header the node gets from the P2P network.

  • #2184 rpc: Tx_pool_info include tip hash (@keroro520)

  • #2144 rpc: Add set_network_active RPC (@quake)

    Allows user to pause and restart p2p network message processing through RPC.

  • #2190 rpc: Move add_node / remove_node RPC to Net module (@quake)

  • #2196 rpc: Add more fields to RPC get_peers (@quake)

    Added connected_duration, last_ping_duration, protocols and sync_state to get_peers RPC.

  • #2195 rpc: Add more fields to local_node_info RPC (@quake)

    Added active, connections and protocols fields to local_node_info.

  • #2159: Load db options from a file; support configuring column families (@yangby-cryptape)

  • #2175: Support multiple file loggers in ckb.toml (@yangby-cryptape)

  • #2182: Take full control of main logger filter via RPC (@yangby-cryptape)

Bug Fixes

  • #2158: Panic if db options is empty (@yangby-cryptape)

  • #2157: The option of db path doesn't work (@yangby-cryptape)

  • #2177: Fix the lenient logger filter parser (@yangby-cryptape)

  • #2134: Update proposal table after chain reorg (@zhangsoledad)

    Previously, proposal-table update not considered in chain rollback, it's almost impossible to happen in hashrate-based chain. But can be triggered by truncate RPC.

  • #2197: Should exit with error code when setup failed (@yangby-cryptape)

    Issue: if the config was malformed and an error was thrown in setup_app, the process wouldn't exit.

Improvements

  • #2152: Change storage molecule table to struct (@quake)

    This is a breaking change: b:database

    Storage structs HeaderView, EpochExt and TransactionInfo are fixed size, we should use molecule struct instead of table, it reduces storage size and improves the performance a little bit.

  • #2150: Don't query store twice in method chaining (@yangby-cryptape)

  • #2151: Reduce times of querying header map (@yangby-cryptape)

  • #2147: Don't cache all data of header map in memory during IBD (@yangby-cryptape)

  • #2154: Split chain iter (@zhangsoledad)

  • #2153: Decoupling migration from db (@zhangsoledad)

    Previously, migration coupling with DB, this sacrifice flexibility. In a case like this, opening a read-only DB will be trouble.
    This PR proposal split migration.

  • #2163: Add HeaderProvider trait and split DataLoader to smaller trait (@quake)

  • #1988: Use a new method to detect headers sync timeout (@yangby-cryptape)

    To avoid possible performance issues on headers synchronization.

  • #2180: Add case description and some assertion for alert_propagation integration test (@chuijiaolianying)

  • #2179: Refactor about integration service mining relate cases. (@chuijiaolianying)

  • #2189: Add case description and update case assertions for consensus related cases. (@chuijiaolianying)

  • #2204: Add some trait for integration cases (@chuijiaolianying)

  • #2164: Improve script error (@doitian)

  • #2168: Improve error when submitting block (@doitian)

  • #2169: Small tx-pool refactoring (@zhangsoledad)

    • rename ContextualTransactionVerifier -> TimeRelativeTransactionVerifier
    • split NonContextualTransactionVerifier from TransactionVerifier
    • check syntactic correctness first before
    • refactory tx-pool rejection error
    • re-broadcast when duplicated tx submit
ckb - 0.34.2 (398bd3c 2020-08-08)

Published by nervos-bot-user about 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

This release contains several security issue fixings, see change log for details.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The files are signatures. It is wise and more secure to check out for the files integrity.

  • GHSA-q73f-w3h7-7wcc: Syscall to get data hash has inconsistent behaviors. (@zhangsoledad)
  • GHSA-wjxc-pjx9-4wvm: Upgrade snappy to 1.0. (@quake)
  • GHSA-3gjh-29fv-8hr6: Limit the decompressed size of p2p message. (@quake)
ckb - 0.34.1 (323e44c 2020-07-19)

Published by doitian about 4 years ago

This version is compatible with v0.25.0 and above. However, it is recommended to upgrade the node, since we will only release security patches based on the latest release.

See how to connect to various chains in Wiki.

Fixed GHSA-hjqq-29pw-96wj: CKB node panics when processing a block which parent timestamp is too new.

Downloads

OS Arch Runtime Dependencies Package Sign
macOS x64 macOS 10.12 or above zip PGP
Linux x64 glibc, libstdc++ tarball PGP
CentOS x64 glibc, libstdc++, openssl tarball PGP
Windows* x64 VC++ Redistributable zip PGP
Docker dockerhub

* Windows support is experimental.

The files are signatures. It is wise and more secure to check out for the files integrity.