Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ckb-contracts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
- name: check audit
run: |
cargo install --force cargo-audit
for c in $(ls contracts); do echo "enter $c"; cd contracts/$c; cargo audit; echo "audit done"; cd ../..; done
for c in $(ls contracts); do echo "enter $c"; cd contracts/$c; cargo audit --ignore RUSTSEC-2021-0103; echo "audit done"; cd ../..; done
- name: Cache cargo crate and target
id: cache-contract-target
uses: actions/cache@v2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/code-coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly-2022-01-21
toolchain: nightly
override: true
components: rustfmt, clippy
- name: install-tarpaulin
Expand Down
2 changes: 1 addition & 1 deletion ckb-contracts/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ fmt:

update-and-audit:
cargo update
for c in $$(ls contracts); do echo "enter $$c"; cd contracts/$$c; cargo update; cargo audit; echo "update and audit scan done"; cd ../..; done
for c in $$(ls contracts); do echo "enter $$c"; cd contracts/$$c; cargo update; cargo audit --ignore RUSTSEC-2021-0103; echo "update and audit scan done"; cd ../..; done

build-contract:
capsule build
Expand Down
9 changes: 6 additions & 3 deletions ckb-contracts/types/src/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,13 @@ cfg_if::cfg_if! {
pub const SUDT_HASH_TYPE: u8 = 1;
} else if #[cfg(feature = "devnet")] {
pub const SUDT_CODE_HASH: [u8; 32] = [
225, 227, 84, 214, 214, 67, 173, 66, 114, 77, 64, 150, 126, 51, 73, 132, 83, 78, 3, 103,
64, 92, 90, 228, 42, 157, 125, 99, 215, 125, 244, 25,
246, 133, 205, 19, 187, 166, 22,
202, 200, 125, 162, 19, 177, 84,
182, 234, 225, 250, 79, 0, 118,
228, 185, 55, 81, 252, 66, 178,
228, 166, 244, 108
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

use the code hash instead of the type hash to make it keep the same between different devnets

];
pub const SUDT_HASH_TYPE: u8 = 0;
pub const SUDT_HASH_TYPE: u8 = 1;
}
}

Expand Down
2 changes: 1 addition & 1 deletion docker/Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
build:
cd ckb && docker build -t tockb/ckb-dev:v0.100.0 .
cd ckb && docker build -t nervos/ckb:v0.111.0 .
cd ckb-indexer && docker build -t tockb/ckb-indexer:v0.3.0 .
cd geth && docker build -t tockb/geth-priv:v1.10.10 .
cd bitcoin && docker build -t tockb/btc-regtest .
Expand Down
2 changes: 1 addition & 1 deletion docker/ckb/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM nervos/ckb:v0.100.0
FROM nervos/ckb:v0.111.0

ENV CKB_CHAIN=dev
ENV BA_ARG=0x839f6f4d6fdf773d3e015f8b19fe5c4ccb07723d
Expand Down
166 changes: 166 additions & 0 deletions docker/ckb/ckb.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
# Config generated by `ckb init --chain dev`

data_dir = "data"

[chain]
# Choose the kind of chains to run, possible values:
# - { file = "specs/dev.toml" }
# - { bundled = "specs/testnet.toml" }
# - { bundled = "specs/mainnet.toml" }
spec = { file = "specs/dev.toml" }

[logger]
filter = "info,ckb-script=debug"
color = true
log_to_file = true
log_to_stdout = true

[sentry]
# set to blank to disable sentry error collection
dsn = ""
# if you are willing to help us to improve,
# please leave a way to contact you when we have troubles to reproduce the errors.
# org_contact = ""

# # **Experimental** Monitor memory changes.
# [memory_tracker]
# # Seconds between checking the process, 0 is disable, default is 0.
# interval = 600

[db]
# The capacity of RocksDB cache, which caches uncompressed data blocks, indexes and filters, default is 128MB.
# Rocksdb will automatically create and use an 8MB internal cache if you set this value to 0.
# To turning off cache, you need to set this value to 0 and set `no_block_cache = true` in the options_file,
# however, we strongly discourage this setting, it may lead to severe performance degradation.
cache_size = 134217728

# Provide an options file to tune RocksDB for your workload and your system configuration.
# More details can be found in [the official tuning guide](https://github.com/facebook/rocksdb/wiki/RocksDB-Tuning-Guide).
options_file = "default.db-options"

[network]
listen_addresses = ["/ip4/0.0.0.0/tcp/8115"]
### Specify the public and routable network addresses
# public_addresses = []

# Node connects to nodes listed here to discovery other peers when there's no local stored peers.
# When chain.spec is changed, this usually should also be changed to the bootnodes in the new chain.
bootnodes = []

### Whitelist-only mode
# whitelist_only = false
### Whitelist peers connecting from the given IP addresses
# whitelist_peers = []
### Enable `SO_REUSEPORT` feature to reuse port on Linux, not supported on other OS yet
# reuse_port_on_linux = true

max_peers = 125
max_outbound_peers = 8
# 2 minutes
ping_interval_secs = 120
# 20 minutes
ping_timeout_secs = 1200
connect_outbound_interval_secs = 15
# If set to true, try to register upnp
upnp = false
# If set to true, network service will add discovered local address to peer store, it's helpful for private net development
discovery_local_address = true
# If set to true, random cleanup when there are too many inbound nodes
# Ensure that itself can continue to serve as a bootnode node
bootnode_mode = false

# Supported protocols list, only "Sync" and "Identify" are mandatory, others are optional
support_protocols = ["Ping", "Discovery", "Identify", "Feeler", "DisconnectMessage", "Sync", "Relay", "Time", "Alert", "LightClient", "Filter"]

# [network.sync.header_map]
# memory_limit = "256MB"

[rpc]
# By default RPC only binds to localhost, thus it only allows accessing from the same machine.
#
# Allowing arbitrary machines to access the JSON-RPC port is dangerous and strongly discouraged.
# Please strictly limit the access to only trusted machines.
listen_address = "0.0.0.0:8114"

# Default is 10MiB = 10 * 1024 * 1024
max_request_body_size = 10485760

# List of API modules: ["Net", "Pool", "Miner", "Chain", "Stats", "Subscription", "Experiment", "Debug", "Indexer"]
modules = ["Net", "Pool", "Miner", "Chain", "Stats", "Subscription", "Experiment", "Debug", "Indexer"]

# By default RPC only binds to HTTP service, you can bind it to TCP and WebSocket.
# tcp_listen_address = "127.0.0.1:18114"
# ws_listen_address = "127.0.0.1:28114"
reject_ill_transactions = true

# By default deprecated rpc methods are disabled.
enable_deprecated_rpc = false

[tx_pool]
max_tx_pool_size = 180_000_000 # 180mb
min_fee_rate = 1_000 # Here fee_rate are calculated directly using size in units of shannons/KB
max_tx_verify_cycles = 70_000_000
max_ancestors_count = 25

[store]
header_cache_size = 4096
cell_data_cache_size = 128
block_proposals_cache_size = 30
block_tx_hashes_cache_size = 30
block_uncles_cache_size = 30

# [notifier]
# # Execute command when the new tip block changes, first arg is block hash.
# new_block_notify_script = "your_new_block_notify_script.sh"
# # Execute command when node received an network alert, first arg is alert message string.
# network_alert_notify_script = "your_network_alert_notify_script.sh"

# Set the lock script to protect mined CKB.
#
# CKB uses CS architecture for miner. Miner process (ckb miner) gets block
# template from the Node process (ckb run) via RPC. Thus the lock script is
# configured in ckb.toml instead of ckb-miner.toml, and the config takes effect
# after restarting Node process.
#
# The `code_hash` identifies different cryptography algorithm. Read the manual
# of the lock script provider about how to generate this config.
#
# CKB provides an secp256k1 implementation, it requires a hash on the
# compressed public key. The hash algorithm is blake2b, with personal
# "ckb-default-hash". The first 160 bits (20 bytes) are used as the only arg.
#
# You can use any tool you trust to generate a Bitcoin private key and public
# key pair, which can be used in CKB as well. CKB CLI provides the function for
# you to convert the public key into block assembler configuration parameters.
#
# Here is an example using ckb-cli to generate an account, this command will
# print the block assembler args(lock_arg) to screen:
#
# ckb-cli account new
#
# If you already have a raw secp256k1 private key, you can get the lock_arg by:
#
# ckb-cli util key-info --privkey-path <privkey-path>
#
# The command `ckb init` also accepts options to generate the block assembler
# directly. See `ckb init --help` for details.
#
# ckb init <lock_arg>
#
[block_assembler]
code_hash = "0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8"
args = "0x839f6f4d6fdf773d3e015f8b19fe5c4ccb07723d"
hash_type = "type"
message = "0x1234"
# #
# # CKB will prepend the binary version to message, to identify the block miner client. (default true, false to disable it)
# use_binary_version_as_message_prefix = true
# #
# # Block assembler will notify new block template through http post to specified endpoints when update
# notify = ["http://127.0.0.1:8888"]
# # Or you may want use more flexible scripts, block template as arg.
# notify_scripts = ["{cmd} {blocktemplate}"]
#
# [indexer_v2]
# # Indexing the pending txs in the ckb tx-pool
# index_tx_pool = false
2 changes: 1 addition & 1 deletion docker/ckb/entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

if ! [ -f ckb.toml ]; then
/bin/ckb init --chain "$CKB_CHAIN" --import-spec /var/dev.toml --ba-arg "$BA_ARG" --ba-code-hash "$BA_CODE_HASH" --ba-hash-type "$BA_HASH_TYPE" --ba-message "$BA_MESSAGE" \
&& sed -ic 's/filter = "info"/filter = "info,ckb-script=debug"/g' ckb.toml
&& sed -ic 's/filter = "info"/filter = "info,ckb-script=debug"/g' ckb.toml && sed -ic 's/modules = \[/modules = \["Indexer",/g' ckb.toml
fi

exec /bin/ckb run &
Expand Down
30 changes: 15 additions & 15 deletions docker/docker-compose.dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,28 +17,28 @@ services:
aliases:
- geth-dev
ckb-dev:
image: tockb/ckb-dev:v0.100.0
image: nervos/ckb:v0.111.0
ports:
- "3001:8114"
networks:
force-dev-net:
ipv4_address: 10.4.0.11
aliases:
- ckb-dev
ckb-indexer-dev:
image: tockb/ckb-indexer:v0.3.0
ports:
- "3002:8116"
environment:
- RUST_LOG=info
command: ckb-indexer -s /tmp/ckb-indexer-test -c http://ckb-dev:8114 -l 0.0.0.0:8116
depends_on:
- ckb-dev
networks:
force-dev-net:
ipv4_address: 10.4.0.12
aliases:
- ckb-indexer-dev
# ckb-indexer-dev:
# image: tockb/ckb-indexer:v0.3.0
# ports:
# - "3002:8116"
# environment:
# - RUST_LOG=info
# command: ckb-indexer -s /tmp/ckb-indexer-test -c http://ckb-dev:8114 -l 0.0.0.0:8116
# depends_on:
# - ckb-dev
# networks:
# force-dev-net:
# ipv4_address: 10.4.0.12
# aliases:
# - ckb-indexer-dev
volumes:
geth-dag:
networks:
Expand Down
30 changes: 15 additions & 15 deletions docker/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,28 +13,28 @@ services:
aliases:
- mysql
ckb:
image: tockb/ckb-dev:v0.100.0
image: forcebridge/ckb-dev:v0.111.0
ports:
- "8114:8114"
networks:
forcenet:
ipv4_address: 10.5.0.11
aliases:
- ckb
ckb-indexer:
image: tockb/ckb-indexer:v0.3.0
ports:
- "8116:8116"
environment:
- RUST_LOG=info
command: ckb-indexer -s /tmp/ckb-indexer-test -c http://ckb:8114 -l 0.0.0.0:8116
depends_on:
- ckb
networks:
forcenet:
ipv4_address: 10.5.0.12
aliases:
- ckb-indexer
# ckb-indexer:
# image: tockb/ckb-indexer:v0.3.0
# ports:
# - "8116:8116"
# environment:
# - RUST_LOG=info
# command: ckb-indexer -s /tmp/ckb-indexer-test -c http://ckb:8114 -l 0.0.0.0:8116
# depends_on:
# - ckb
# networks:
# forcenet:
# ipv4_address: 10.5.0.12
# aliases:
# - ckb-indexer
geth:
image: tockb/geth-priv:v1.10.10
volumes:
Expand Down
2 changes: 1 addition & 1 deletion offchain-modules/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ module.exports = {
'import/order': ['warn', { alphabetize: { order: 'asc' } }],
'no-console': 'warn',
'no-constant-condition': 'warn',
'deprecation/deprecation': 'warn'
'deprecation/deprecation': 'warn',
},
ignorePatterns: ['**/generated', '**/*.js'],
};
2 changes: 1 addition & 1 deletion offchain-modules/.eslintrc.next.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ module.exports = {
'@typescript-eslint/explicit-module-boundary-types': 'error',
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_', varsIgnorePattern: '^_' }],
'@typescript-eslint/no-floating-promises': ['error'],
'import/order': ['error', { alphabetize: { order: 'asc' } }]
'import/order': ['error', { alphabetize: { order: 'asc' } }],
},
};
4 changes: 1 addition & 3 deletions offchain-modules/lerna.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
{
"version": "0.0.38",
"workspaces": [
"packages/*"
],
"workspaces": ["packages/*"],
"npmClient": "yarn",
"useWorkspaces": true,
"command": {
Expand Down
Loading