#/explorer
# - grafana: localhost:3001
# - prometheus: localhost:9090
@@ -34,9 +36,8 @@ services:
- ../../target/release/substrate:/usr/local/bin/substrate
image: parity/substrate
networks:
- - network-a
+ - internet
command:
- # Local node id: QmRpheLN4JWdAnY7HGJfWFNbfkQCb6tFf4vvA6hgjMZKrR
- "--node-key"
- "0000000000000000000000000000000000000000000000000000000000000001"
- "--base-path"
@@ -46,48 +47,38 @@ services:
- "30333"
- "--validator"
- "--alice"
- - "--sentry-nodes"
- - "/dns/sentry-a/tcp/30333/p2p/QmV7EhW6J6KgmNdr558RH1mPx2xGGznW7At4BhXzntRFsi"
- - "--reserved-nodes"
- - "/dns/sentry-a/tcp/30333/p2p/QmV7EhW6J6KgmNdr558RH1mPx2xGGznW7At4BhXzntRFsi"
+ - "--bootnodes"
+ - "/dns/validator-b/tcp/30333/p2p/12D3KooWHdiAxVd8uMQR1hGWXccidmfCwLqcMpGwR6QcTP6QRMuD"
# Not only bind to localhost.
- "--unsafe-ws-external"
- "--unsafe-rpc-external"
- # - "--log"
- # - "sub-libp2p=trace"
- # - "--log"
- # - "afg=trace"
- "--log"
- - "sub-authority-discovery=trace"
+ - "sub-libp2p=trace"
- "--no-telemetry"
- "--rpc-cors"
- "all"
- "--prometheus-external"
- sentry-a:
+ validator-b:
image: parity/substrate
ports:
- - "9946:9944"
+ - "9945:9944"
volumes:
- ../../target/release/substrate:/usr/local/bin/substrate
networks:
- - network-a
- internet
command:
- # Local node id: QmV7EhW6J6KgmNdr558RH1mPx2xGGznW7At4BhXzntRFsi
- "--node-key"
- - "0000000000000000000000000000000000000000000000000000000000000003"
+ - "0000000000000000000000000000000000000000000000000000000000000002"
- "--base-path"
- - "/tmp/sentry"
+ - "/tmp/bob"
- "--chain=local"
- "--port"
- "30333"
- - "--sentry"
- - "/dns/validator-a/tcp/30333/p2p/QmRpheLN4JWdAnY7HGJfWFNbfkQCb6tFf4vvA6hgjMZKrR"
- - "--reserved-nodes"
- - "/dns/validator-a/tcp/30333/p2p/QmRpheLN4JWdAnY7HGJfWFNbfkQCb6tFf4vvA6hgjMZKrR"
+ - "--validator"
+ - "--bob"
- "--bootnodes"
- - "/dns/validator-b/tcp/30333/p2p/QmSVnNf9HwVMT1Y4cK1P6aoJcEZjmoTXpjKBmAABLMnZEk"
+ - "/dns/validator-a/tcp/30333/p2p/12D3KooWEyoppNCUx8Yx66oV9fJnriXwCcXwDDUA2kj6vnc6iDEp"
- "--no-telemetry"
- "--rpc-cors"
- "all"
@@ -95,32 +86,30 @@ services:
- "--unsafe-ws-external"
- "--unsafe-rpc-external"
- "--log"
- - "sub-authority-discovery=trace"
+ - "sub-libp2p=trace"
- "--prometheus-external"
- validator-b:
+ light-c:
image: parity/substrate
ports:
- - "9945:9944"
+ - "9946:9944"
volumes:
- ../../target/release/substrate:/usr/local/bin/substrate
networks:
- internet
command:
- # Local node id: QmSVnNf9HwVMT1Y4cK1P6aoJcEZjmoTXpjKBmAABLMnZEk
- "--node-key"
- - "0000000000000000000000000000000000000000000000000000000000000002"
+ - "0000000000000000000000000000000000000000000000000000000000000003"
- "--base-path"
- - "/tmp/bob"
+ - "/tmp/light"
- "--chain=local"
- "--port"
- "30333"
- - "--validator"
- - "--bob"
+ - "--light"
- "--bootnodes"
- - "/dns/validator-a/tcp/30333/p2p/QmRpheLN4JWdAnY7HGJfWFNbfkQCb6tFf4vvA6hgjMZKrR"
+ - "/dns/validator-a/tcp/30333/p2p/12D3KooWEyoppNCUx8Yx66oV9fJnriXwCcXwDDUA2kj6vnc6iDEp"
- "--bootnodes"
- - "/dns/sentry-a/tcp/30333/p2p/QmV7EhW6J6KgmNdr558RH1mPx2xGGznW7At4BhXzntRFsi"
+ - "/dns/validator-b/tcp/30333/p2p/12D3KooWHdiAxVd8uMQR1hGWXccidmfCwLqcMpGwR6QcTP6QRMuD"
- "--no-telemetry"
- "--rpc-cors"
- "all"
@@ -128,20 +117,19 @@ services:
- "--unsafe-ws-external"
- "--unsafe-rpc-external"
- "--log"
- - "sub-authority-discovery=trace"
+ - "sub-libp2p=trace"
- "--prometheus-external"
prometheus:
image: prom/prometheus
networks:
- - network-a
- internet
ports:
- "9090:9090"
links:
- validator-a:validator-a
- - sentry-a:sentry-a
- validator-b:validator-b
+ - light-c:light-c
volumes:
- ./prometheus/:/etc/prometheus/
restart: always
@@ -152,7 +140,6 @@ services:
depends_on:
- prometheus
networks:
- - network-a
- internet
ports:
- 3001:3000
diff --git a/.maintain/sentry-node/grafana/provisioning/dashboards/dashboards.yml b/.maintain/local-docker-test-network/grafana/provisioning/dashboards/dashboards.yml
similarity index 100%
rename from .maintain/sentry-node/grafana/provisioning/dashboards/dashboards.yml
rename to .maintain/local-docker-test-network/grafana/provisioning/dashboards/dashboards.yml
diff --git a/.maintain/sentry-node/grafana/provisioning/datasources/datasource.yml b/.maintain/local-docker-test-network/grafana/provisioning/datasources/datasource.yml
similarity index 100%
rename from .maintain/sentry-node/grafana/provisioning/datasources/datasource.yml
rename to .maintain/local-docker-test-network/grafana/provisioning/datasources/datasource.yml
diff --git a/.maintain/sentry-node/prometheus/prometheus.yml b/.maintain/local-docker-test-network/prometheus/prometheus.yml
similarity index 89%
rename from .maintain/sentry-node/prometheus/prometheus.yml
rename to .maintain/local-docker-test-network/prometheus/prometheus.yml
index 547d4bea57ae5..f8acb7c0b8ccd 100644
--- a/.maintain/sentry-node/prometheus/prometheus.yml
+++ b/.maintain/local-docker-test-network/prometheus/prometheus.yml
@@ -7,9 +7,9 @@ scrape_configs:
- targets: ['validator-a:9615']
labels:
network: dev
- - targets: ['sentry-a:9615']
+ - targets: ['validator-b:9615']
labels:
network: dev
- - targets: ['validator-b:9615']
+ - targets: ['light-c:9615']
labels:
network: dev
diff --git a/.maintain/monitoring/alerting-rules/alerting-rules.yaml b/.maintain/monitoring/alerting-rules/alerting-rules.yaml
index 16a27c06d3e05..cf00d7e2b90f1 100644
--- a/.maintain/monitoring/alerting-rules/alerting-rules.yaml
+++ b/.maintain/monitoring/alerting-rules/alerting-rules.yaml
@@ -127,8 +127,8 @@ groups:
##############################################################################
- alert: ContinuousTaskEnded
- expr: '(polkadot_tasks_spawned_total == 1) - on(instance, task_name)
- (polkadot_tasks_ended_total == 1)'
+ expr: '(polkadot_tasks_spawned_total{task_name != "basic-authorship-proposer"} == 1)
+ - on(instance, task_name) (polkadot_tasks_ended_total == 1)'
for: 5m
labels:
severity: warning
@@ -147,3 +147,28 @@ groups:
message: 'Authority discovery on node {{ $labels.instance }} fails to
process more than 50 % of the values found on the DHT for more than 2
hours.'
+
+ - alert: UnboundedChannelPersistentlyLarge
+ expr: '(
+ (polkadot_unbounded_channel_len{action = "send"} -
+ ignoring(action) polkadot_unbounded_channel_len{action = "received"})
+ or on(instance) polkadot_unbounded_channel_len{action = "send"}
+ ) >= 200'
+ for: 5m
+ labels:
+ severity: warning
+ annotations:
+ message: 'Channel {{ $labels.entity }} on node {{ $labels.instance }} contains
+ more than 200 items for more than 5 minutes. Node might be frozen.'
+
+ - alert: UnboundedChannelVeryLarge
+ expr: '(
+ (polkadot_unbounded_channel_len{action = "send"} -
+ ignoring(action) polkadot_unbounded_channel_len{action = "received"})
+ or on(instance) polkadot_unbounded_channel_len{action = "send"}
+ ) > 15000'
+ labels:
+ severity: warning
+ annotations:
+ message: 'Channel {{ $labels.entity }} on node {{ $labels.instance }} contains more than
+ 15000 items.'
diff --git a/.maintain/monitoring/grafana-dashboards/README_dashboard.md b/.maintain/monitoring/grafana-dashboards/README_dashboard.md
index 37bebc6f8eaae..e00b89449cfaf 100644
--- a/.maintain/monitoring/grafana-dashboards/README_dashboard.md
+++ b/.maintain/monitoring/grafana-dashboards/README_dashboard.md
@@ -5,10 +5,3 @@ Shared templated Grafana dashboards.
To import the dashboards follow the [Grafana
documentation](https://grafana.com/docs/grafana/latest/reference/export_import/).
You can see an example setup [here](../../../.maintain/sentry-node).
-
-#### Required labels on Prometheus metrics
-
-- `instance` referring to a single scrape target (see [Prometheus docs for
- details](https://prometheus.io/docs/concepts/jobs_instances/)).
-
-- `network` referring to the Blockchain network e.g. Kusama.
diff --git a/.maintain/monitoring/grafana-dashboards/substrate-dashboard.json b/.maintain/monitoring/grafana-dashboards/substrate-dashboard.json
deleted file mode 100644
index 629b22617b22a..0000000000000
--- a/.maintain/monitoring/grafana-dashboards/substrate-dashboard.json
+++ /dev/null
@@ -1,1650 +0,0 @@
-{
- "annotations": {
- "list": [
- {
- "$$hashKey": "object:15",
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "type": "dashboard"
- }
- ]
- },
- "editable": true,
- "gnetId": null,
- "graphTooltip": 0,
- "iteration": 1586424254170,
- "links": [
- {
- "icon": "external link",
- "tags": [],
- "targetBlank": true,
- "title": "With love from ColmenaLabs",
- "tooltip": "",
- "type": "link",
- "url": "https://colmenalabs.org"
- },
- {
- "icon": "external link",
- "tags": [],
- "targetBlank": true,
- "title": "Polkastats.io",
- "tooltip": "",
- "type": "link",
- "url": "https://polkastats.io"
- }
- ],
- "panels": [
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 0,
- "y": 0
- },
- "hiddenSeries": false,
- "id": 8,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "rate([[metric_namespace]]_block_height{status=\"finalized\",instance=\"[[instance]]\",network=\"[[network]]\"}[10m])/rate([[metric_namespace]]_block_height{status=\"finalized\",instance=\"[[instance]]\",network=\"[[network]]\"}[1m])",
- "intervalFactor": 1,
- "legendFormat": "rate[10m] / rate[1m]",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Relative Block Production Speed",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 6,
- "y": 0
- },
- "hiddenSeries": false,
- "id": 15,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_sub_libp2p_peers_count{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Peers count",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "cacheTimeout": null,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 12,
- "y": 0
- },
- "hiddenSeries": false,
- "id": 17,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pluginVersion": "6.4.1",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "scalar([[metric_namespace]]_block_height{status=\"best\",instance=\"[[instance]]\",network=\"[[network]]\"})-scalar([[metric_namespace]]_block_height{status=\"finalized\",instance=\"[[instance]]\",network=\"[[network]]\"})",
- "intervalFactor": 2,
- "legendFormat": "[[hostname]]",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Diff -> ( Best Block - Finalized )",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "cacheTimeout": null,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 18,
- "y": 0
- },
- "hiddenSeries": false,
- "id": 18,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "rate([[metric_namespace]]_block_height{status=\"finalized\",instance=\"[[instance]]\",network=\"[[network]]\"}[10m])*60",
- "intervalFactor": 10,
- "legendFormat": "{{instance}} Blocks / minute",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Block rate",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 0,
- "y": 6
- },
- "hiddenSeries": false,
- "id": 10,
- "interval": "",
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "increase([[metric_namespace]]_block_height{instance=\"[[instance]]\",network=\"[[network]]\",status=~\"finalized|sync_target\"}[1m])",
- "intervalFactor": 5,
- "legendFormat": "{{status}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Blocks Av per min",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 6,
- "y": 6
- },
- "hiddenSeries": false,
- "id": 14,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_block_height{instance=\"[[instance]]\",network=\"[[network]]\",status=~\"finalized|sync_target\"}",
- "legendFormat": "{{instance}} {{status}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Block Finalized",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 12,
- "y": 6
- },
- "hiddenSeries": false,
- "id": 13,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_block_height{status=\"best\",instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Block height",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 18,
- "y": 6
- },
- "hiddenSeries": false,
- "id": 20,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "data": "",
- "expr": "[[metric_namespace]]_ready_transactions_number{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "hide": false,
- "legendFormat": "{{instance}}",
- "refId": "A",
- "target": "txcount",
- "type": "timeseries"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "TXs Count",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 0,
- "y": 12
- },
- "hiddenSeries": false,
- "id": 23,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_sync_extra_finality_proofs_active{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} active",
- "refId": "A"
- },
- {
- "expr": "[[metric_namespace]]_sync_extra_finality_proofs_failed{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} failed",
- "refId": "B"
- },
- {
- "expr": "[[metric_namespace]]_sync_extra_finality_proofs_importing{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} importing",
- "refId": "C"
- },
- {
- "expr": "[[metric_namespace]]_sync_extra_finality_proofs_pending{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} pending",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Sync Proof",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 6,
- "y": 12
- },
- "hiddenSeries": false,
- "id": 22,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_sync_extra_justifications_active{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} active",
- "refId": "A"
- },
- {
- "expr": "[[metric_namespace]]_sync_extra_justifications_failed{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} failed",
- "refId": "B"
- },
- {
- "expr": "[[metric_namespace]]_sync_extra_justifications_importing{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} importing",
- "refId": "C"
- },
- {
- "expr": "[[metric_namespace]]_sync_extra_justifications_pending{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} pending",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Sync justifications",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 12,
- "y": 12
- },
- "hiddenSeries": false,
- "id": 24,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_sub_libp2p_connections{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "hide": false,
- "legendFormat": "{{instance}} connections",
- "refId": "A"
- },
- {
- "expr": "[[metric_namespace]]_sub_libp2p_is_major_syncing{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "hide": false,
- "legendFormat": "{{instance}} syncing",
- "refId": "B"
- },
- {
- "expr": "[[metric_namespace]]_sub_libp2p_kbuckets_num_nodes{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "hide": false,
- "legendFormat": "{{instance}} num_nodes",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "sub_libp2p",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 18,
- "y": 12
- },
- "hiddenSeries": false,
- "id": 26,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_sub_libp2p_notifications_total{instance=\"[[instance]]\",network=\"[[network]]\",protocol=\"FRNK\",direction=\"in\"}",
- "hide": false,
- "legendFormat": "{{instance}} FRNK in",
- "refId": "A"
- },
- {
- "expr": "[[metric_namespace]]_sub_libp2p_notifications_total{instance=\"[[instance]]\",network=\"[[network]]\",protocol=\"FRNK\",direction=\"out\"}",
- "hide": false,
- "legendFormat": "{{instance}} FRNK out",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "libp2p_notifications",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 0,
- "y": 18
- },
- "hiddenSeries": false,
- "id": 28,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_cpu_usage_percentage{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "CPU usage %",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 6,
- "y": 18
- },
- "hiddenSeries": false,
- "id": 27,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_memory_usage_bytes{instance=\"[[instance]]\",network=\"[[network]]\"}",
- "legendFormat": "{{instance}} Mem bytes",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Memory",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "decimals": 2,
- "format": "bytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 12,
- "y": 18
- },
- "hiddenSeries": false,
- "id": 25,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_sub_libp2p_network_per_sec_bytes",
- "hide": false,
- "legendFormat": "{{instance}}",
- "refId": "A"
- },
- {
- "expr": "[[metric_namespace]]_sub_libp2p_notifications_total",
- "hide": true,
- "legendFormat": "{{instance}}",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "libp2p_network_per_sec_bytes",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "cacheTimeout": null,
- "dashLength": 10,
- "dashes": false,
- "datasource": null,
- "description": "",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 18,
- "y": 18
- },
- "hiddenSeries": false,
- "id": 29,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pluginVersion": "6.5.2",
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "[[metric_namespace]]_sub_libp2p_notifications_total{instance=\"[[instance]]\",network=\"[[network]]\",protocol=\"dot1\",direction=\"in\"}",
- "hide": false,
- "legendFormat": "{{instance}} dot1 in",
- "refId": "B"
- },
- {
- "expr": "[[metric_namespace]]_sub_libp2p_notifications_total{instance=\"[[instance]]\",network=\"[[network]]\",protocol=\"dot2\",direction=\"in\"}",
- "hide": false,
- "legendFormat": "{{instance}} dot2 in",
- "refId": "C"
- },
- {
- "expr": "[[metric_namespace]]_sub_libp2p_notifications_total{instance=\"[[instance]]\",network=\"[[network]]\",protocol=\"dot2\",direction=\"out\"}",
- "hide": false,
- "legendFormat": "{{instance}} dot2 out",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "libp2p_notifications",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- }
- ],
- "refresh": "5s",
- "schemaVersion": 22,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": [
- {
- "allValue": null,
- "current": {
- "selected": true,
- "text": "substrate",
- "value": "substrate"
- },
- "hide": 0,
- "includeAll": false,
- "label": null,
- "multi": false,
- "name": "metric_namespace",
- "options": [
- {
- "selected": true,
- "text": "substrate",
- "value": "substrate"
- },
- {
- "selected": false,
- "text": "polkadot",
- "value": "polkadot"
- }
- ],
- "query": "substrate, polkadot",
- "skipUrlSync": false,
- "type": "custom"
- },
- {
- "allValue": null,
- "current": {
- "selected": true,
- "text": "dev",
- "value": "dev"
- },
- "datasource": "Prometheus",
- "definition": "label_values(network)",
- "hide": 0,
- "includeAll": false,
- "index": -1,
- "label": null,
- "multi": false,
- "name": "network",
- "options": [],
- "query": "label_values(network)",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {
- "selected": false,
- "text": "validator-a:9615",
- "value": "validator-a:9615"
- },
- "datasource": "Prometheus",
- "definition": "label_values(instance)",
- "hide": 0,
- "includeAll": false,
- "index": -1,
- "label": null,
- "multi": false,
- "name": "instance",
- "options": [],
- "query": "label_values(instance)",
- "refresh": 1,
- "regex": "",
- "skipUrlSync": false,
- "sort": 0,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- }
- ]
- },
- "time": {
- "from": "now-1h",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ]
- },
- "timezone": "",
- "title": "Substrate Dashboard",
- "uid": "ColmenaLabs",
- "variables": {
- "list": []
- },
- "version": 2
-}
diff --git a/.maintain/monitoring/grafana-dashboards/substrate-networking.json b/.maintain/monitoring/grafana-dashboards/substrate-networking.json
index dfc143005493d..d2abfd1cb864e 100644
--- a/.maintain/monitoring/grafana-dashboards/substrate-networking.json
+++ b/.maintain/monitoring/grafana-dashboards/substrate-networking.json
@@ -1,13 +1,5 @@
{
"__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- },
{
"name": "VAR_METRIC_NAMESPACE",
"type": "constant",
@@ -17,11 +9,17 @@
}
],
"__requires": [
+ {
+ "type": "panel",
+ "id": "dashlist",
+ "name": "Dashboard list",
+ "version": ""
+ },
{
"type": "grafana",
"id": "grafana",
"name": "Grafana",
- "version": "6.7.3"
+ "version": "7.3.6"
},
{
"type": "panel",
@@ -29,17 +27,17 @@
"name": "Graph",
"version": ""
},
- {
- "type": "panel",
- "id": "heatmap",
- "name": "Heatmap",
- "version": ""
- },
{
"type": "datasource",
"id": "prometheus",
"name": "Prometheus",
"version": "1.0.0"
+ },
+ {
+ "type": "panel",
+ "id": "text",
+ "name": "Text",
+ "version": ""
}
],
"annotations": {
@@ -76,78 +74,162 @@
"gnetId": null,
"graphTooltip": 0,
"id": null,
- "iteration": 1600780210197,
+ "iteration": 1610462565248,
"links": [],
"panels": [
{
"datasource": null,
+ "description": "",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {}
+ },
+ "overrides": []
+ },
"gridPos": {
"h": 1,
- "w": 24,
+ "w": 12,
"x": 0,
"y": 0
},
- "id": 167,
- "title": "Sync",
+ "id": 308,
+ "options": {
+ "content": "",
+ "mode": "markdown"
+ },
+ "pluginVersion": "7.3.6",
+ "repeat": "nodename",
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "$nodename",
+ "type": "text"
+ },
+ {
+ "collapsed": false,
+ "datasource": null,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 1
+ },
+ "id": 27,
+ "panels": [],
+ "title": "Transport",
"type": "row"
},
{
"aliasColors": {},
- "bars": false,
+ "bars": true,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 1,
"fillGradient": 0,
"gridPos": {
- "h": 5,
- "w": 24,
+ "h": 6,
+ "w": 12,
"x": 0,
- "y": 1
+ "y": 2
},
"hiddenSeries": false,
- "id": 101,
+ "id": 19,
+ "interval": "1m",
"legend": {
+ "alignAsTable": false,
"avg": false,
"current": false,
+ "hideEmpty": false,
"max": false,
"min": false,
- "show": false,
+ "rightSide": false,
+ "show": true,
"total": false,
"values": false
},
- "lines": true,
+ "lines": false,
"linewidth": 1,
- "nullPointMode": "connected",
+ "maxPerRow": 12,
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "repeat": null,
- "repeatDirection": "v",
- "seriesOverrides": [],
+ "repeat": "nodename",
+ "repeatDirection": "h",
+ "seriesOverrides": [
+ {
+ "alias": "established (in)",
+ "color": "#37872D"
+ },
+ {
+ "alias": "established (out)",
+ "color": "#C4162A"
+ },
+ {
+ "alias": "pending (out)",
+ "color": "#FF7383"
+ },
+ {
+ "alias": "closed-recently",
+ "color": "#FADE2A",
+ "steppedLine": true
+ }
+ ],
"spaceLength": 10,
- "stack": false,
- "steppedLine": true,
+ "stack": true,
+ "steppedLine": false,
"targets": [
{
- "expr": "1 - (${metric_namespace}_sub_libp2p_peerset_num_requested{instance=~\"${nodename}\"} - ${metric_namespace}_sub_libp2p_peers_count{instance=~\"${nodename}\"}) / ${metric_namespace}_sub_libp2p_peerset_num_requested{instance=~\"${nodename}\"}",
+ "expr": "(\n sum(${metric_namespace}_sub_libp2p_connections_opened_total{direction=\"in\", instance=~\"${nodename}\"}) by (instance) -\n sum(${metric_namespace}_sub_libp2p_connections_closed_total{direction=\"in\", instance=~\"${nodename}\"}) by (instance)\n)\n\n# Because `closed_total` can be null, this serves as fallback\nor on(instance) sum(${metric_namespace}_sub_libp2p_connections_opened_total{direction=\"in\", instance=~\"${nodename}\"}) by (instance)",
+ "format": "time_series",
+ "hide": false,
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "established (in)",
"refId": "A"
+ },
+ {
+ "expr": "(\n sum(${metric_namespace}_sub_libp2p_connections_opened_total{direction=\"out\", instance=~\"${nodename}\"}) by (instance) -\n sum(${metric_namespace}_sub_libp2p_connections_closed_total{direction=\"out\", instance=~\"${nodename}\"}) by (instance)\n)\n\n# Because `closed_total` can be null, this serves as fallback\nor on(instance) sum(${metric_namespace}_sub_libp2p_connections_opened_total{direction=\"out\", instance=~\"${nodename}\"}) by (instance)",
+ "hide": false,
+ "instant": false,
+ "interval": "",
+ "legendFormat": "established (out)",
+ "refId": "C"
+ },
+ {
+ "expr": "sum by (instance) (${metric_namespace}_sub_libp2p_pending_connections{instance=~\"${nodename}\"})",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "pending (out)",
+ "refId": "B"
+ },
+ {
+ "expr": "sum(rate(${metric_namespace}_sub_libp2p_connections_closed_total{instance=~\"${nodename}\"}[$__interval]))",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "closed-per-sec",
+ "refId": "D"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Number of peer slots filled",
+ "title": "Average transport-level (TCP, QUIC, ...) connections",
"tooltip": {
"shared": true,
- "sort": 1,
+ "sort": 0,
"value_type": "individual"
},
"type": "graph",
@@ -160,10 +242,10 @@
},
"yaxes": [
{
- "format": "percentunit",
- "label": null,
+ "format": "short",
+ "label": "Connections",
"logBase": 1,
- "max": "1.0",
+ "max": null,
"min": null,
"show": true
},
@@ -181,63 +263,65 @@
"alignLevel": null
}
},
- {
- "collapsed": false,
- "datasource": null,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 6
- },
- "id": 29,
- "panels": [],
- "repeat": "request_protocol",
- "title": "Requests (${request_protocol})",
- "type": "row"
- },
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
- "h": 4,
+ "h": 6,
"w": 12,
"x": 0,
- "y": 7
+ "y": 8
},
"hiddenSeries": false,
- "id": 148,
+ "id": 189,
+ "interval": "1m",
"legend": {
+ "alignAsTable": false,
"avg": false,
"current": false,
+ "hideEmpty": false,
"max": false,
"min": false,
- "show": false,
+ "rightSide": false,
+ "show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null",
+ "maxPerRow": 12,
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
+ "repeatDirection": "h",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "irate(${metric_namespace}_sub_libp2p_requests_out_started_total{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])",
+ "expr": "1 - \n\navg(\n ${metric_namespace}_sub_libp2p_distinct_peers_connections_opened_total{instance=~\"${nodename}\"} - ${metric_namespace}_sub_libp2p_distinct_peers_connections_closed_total{instance=~\"${nodename}\"}\n) by (instance)\n\n/\n\navg(\r\n sum(${metric_namespace}_sub_libp2p_connections_opened_total{instance=~\"${nodename}\"}) by (instance) - sum(${metric_namespace}_sub_libp2p_connections_closed_total{instance=~\"${nodename}\"}) by (instance)\r\n) by (instance)",
+ "format": "time_series",
+ "hide": false,
"interval": "",
"legendFormat": "{{instance}}",
"refId": "A"
@@ -247,7 +331,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Requests emitted per second",
+ "title": "Percentage of peers for which we have more than one connection open",
"tooltip": {
"shared": true,
"sort": 2,
@@ -263,8 +347,8 @@
},
"yaxes": [
{
- "format": "reqps",
- "label": null,
+ "format": "percentunit",
+ "label": "",
"logBase": 1,
"max": null,
"min": null,
@@ -276,7 +360,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": true
+ "show": false
}
],
"yaxis": {
@@ -286,20 +370,28 @@
},
{
"aliasColors": {},
- "bars": false,
+ "bars": true,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 1,
"fillGradient": 0,
"gridPos": {
- "h": 4,
+ "h": 6,
"w": 12,
- "x": 12,
- "y": 7
+ "x": 0,
+ "y": 14
},
"hiddenSeries": false,
- "id": 151,
+ "id": 39,
+ "interval": "1m",
"legend": {
"avg": false,
"current": false,
@@ -309,33 +401,47 @@
"total": false,
"values": false
},
- "lines": true,
+ "lines": false,
"linewidth": 1,
- "nullPointMode": "null",
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "seriesOverrides": [],
+ "repeat": "nodename",
+ "seriesOverrides": [
+ {
+ "alias": "/.*/",
+ "color": "#FF780A"
+ }
+ ],
"spaceLength": 10,
- "stack": false,
+ "stack": true,
"steppedLine": false,
"targets": [
{
- "expr": "irate(${metric_namespace}_sub_libp2p_requests_in_success_total_count{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])",
+ "expr": "rate(${metric_namespace}_sub_libp2p_incoming_connections_handshake_errors_total{instance=~\"${nodename}\"}[$__interval])",
+ "hide": false,
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "{{reason}}",
"refId": "A"
+ },
+ {
+ "expr": "rate(${metric_namespace}_sub_libp2p_listeners_errors_total{instance=~\"${nodename}\"}[$__interval])",
+ "interval": "",
+ "legendFormat": "pre-handshake",
+ "refId": "B"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Requests served per second",
+ "title": "Number of incoming connection errors",
"tooltip": {
"shared": true,
"sort": 2,
@@ -351,8 +457,8 @@
},
"yaxes": [
{
- "format": "reqps",
- "label": null,
+ "format": "short",
+ "label": "Errors",
"logBase": 1,
"max": null,
"min": null,
@@ -364,7 +470,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": true
+ "show": false
}
],
"yaxis": {
@@ -378,56 +484,64 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
+ "description": "Each bucket represent a certain number of nodes using a certain bandwidth range.",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {}
+ },
+ "overrides": []
+ },
+ "fill": 1,
"fillGradient": 0,
"gridPos": {
- "h": 4,
+ "h": 6,
"w": 12,
"x": 0,
- "y": 11
+ "y": 20
},
"hiddenSeries": false,
- "id": 256,
+ "id": 4,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
- "show": false,
+ "show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null as zero",
+ "nullPointMode": "null",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "histogram_quantile(0.5, sum(rate(${metric_namespace}_sub_libp2p_requests_out_success_total_bucket{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (instance, le)) > 0",
- "instant": false,
+ "expr": "rate(${metric_namespace}_sub_libp2p_network_bytes_total{instance=~\"${nodename}\"}[5m])",
"interval": "",
- "legendFormat": "{{instance}}",
- "refId": "A"
+ "legendFormat": "{{direction}}",
+ "refId": "B"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Median request answer time",
+ "title": "Network bandwidth - # bytes per second",
"tooltip": {
"shared": true,
- "sort": 2,
+ "sort": 0,
"value_type": "individual"
},
"type": "graph",
@@ -440,7 +554,7 @@
},
"yaxes": [
{
- "format": "s",
+ "format": "short",
"label": null,
"logBase": 1,
"max": null,
@@ -463,48 +577,63 @@
},
{
"aliasColors": {},
- "bars": false,
+ "bars": true,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 1,
"fillGradient": 0,
"gridPos": {
- "h": 4,
+ "h": 7,
"w": 12,
- "x": 12,
- "y": 11
+ "x": 0,
+ "y": 26
},
"hiddenSeries": false,
- "id": 258,
+ "id": 81,
+ "interval": "1m",
"legend": {
+ "alignAsTable": false,
"avg": false,
"current": false,
+ "hideEmpty": true,
+ "hideZero": true,
"max": false,
"min": false,
- "show": false,
+ "rightSide": false,
+ "show": true,
"total": false,
"values": false
},
- "lines": true,
+ "lines": false,
"linewidth": 1,
- "nullPointMode": "null",
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
+ "repeatDirection": "h",
"seriesOverrides": [],
"spaceLength": 10,
- "stack": false,
+ "stack": true,
"steppedLine": false,
"targets": [
{
- "expr": "histogram_quantile(0.5, sum(rate(${metric_namespace}_sub_libp2p_requests_in_success_total_bucket{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (instance, le))",
+ "expr": "rate(${metric_namespace}_sub_libp2p_pending_connections_errors_total{instance=~\"${nodename}\"}[$__interval])",
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "{{reason}}",
"refId": "A"
}
],
@@ -512,7 +641,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Median request serving time",
+ "title": "Dialing attempt errors",
"tooltip": {
"shared": true,
"sort": 2,
@@ -528,7 +657,7 @@
},
"yaxes": [
{
- "format": "s",
+ "format": "short",
"label": null,
"logBase": 1,
"max": null,
@@ -541,7 +670,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": true
+ "show": false
}
],
"yaxis": {
@@ -551,49 +680,60 @@
},
{
"aliasColors": {},
- "bars": false,
+ "bars": true,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 1,
"fillGradient": 0,
"gridPos": {
- "h": 4,
+ "h": 7,
"w": 12,
"x": 0,
- "y": 15
+ "y": 33
},
"hiddenSeries": false,
- "id": 257,
+ "id": 46,
+ "interval": "1m",
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
- "show": false,
+ "show": true,
"total": false,
"values": false
},
- "lines": true,
+ "lines": false,
"linewidth": 1,
+ "maxPerRow": 12,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
+ "repeatDirection": "h",
"seriesOverrides": [],
"spaceLength": 10,
- "stack": false,
+ "stack": true,
"steppedLine": false,
"targets": [
{
- "expr": "histogram_quantile(0.99, sum(rate(${metric_namespace}_sub_libp2p_requests_out_success_total_bucket{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (instance, le)) > 0",
- "instant": false,
+ "expr": "rate(${metric_namespace}_sub_libp2p_connections_closed_total{instance=~\"${nodename}\"}[$__interval])",
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "{{reason}} ({{direction}})",
"refId": "A"
}
],
@@ -601,7 +741,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "99th percentile request answer time",
+ "title": "Disconnects",
"tooltip": {
"shared": true,
"sort": 2,
@@ -617,8 +757,9 @@
},
"yaxes": [
{
- "format": "s",
- "label": null,
+ "decimals": null,
+ "format": "short",
+ "label": "Disconnects",
"logBase": 1,
"max": null,
"min": null,
@@ -630,7 +771,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": true
+ "show": false
}
],
"yaxis": {
@@ -638,22 +779,44 @@
"alignLevel": null
}
},
+ {
+ "collapsed": false,
+ "datasource": null,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 40
+ },
+ "id": 167,
+ "panels": [],
+ "repeat": null,
+ "title": "Sync",
+ "type": "row"
+ },
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
- "h": 4,
+ "h": 5,
"w": 12,
- "x": 12,
- "y": 15
+ "x": 0,
+ "y": 41
},
"hiddenSeries": false,
- "id": 259,
+ "id": 101,
"legend": {
"avg": false,
"current": false,
@@ -665,34 +828,43 @@
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null as zero",
+ "nullPointMode": "connected",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
+ "repeatDirection": "h",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
- "steppedLine": false,
+ "steppedLine": true,
"targets": [
{
- "expr": "histogram_quantile(0.99, sum(rate(${metric_namespace}_sub_libp2p_requests_in_success_total_bucket{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (instance, le))",
+ "expr": "${metric_namespace}_sub_libp2p_peerset_num_requested{instance=~\"${nodename}\"}",
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "peers-requested",
"refId": "A"
+ },
+ {
+ "expr": "polkadot_sub_libp2p_peers_count{instance=~\"${nodename}.*\"}",
+ "interval": "",
+ "legendFormat": "peers-count",
+ "refId": "B"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "99th percentile request serving time",
+ "title": "Number of peer slots filled",
"tooltip": {
- "shared": false,
- "sort": 2,
+ "shared": true,
+ "sort": 1,
"value_type": "individual"
},
"type": "graph",
@@ -705,11 +877,11 @@
},
"yaxes": [
{
- "format": "s",
+ "format": "none",
"label": null,
"logBase": 1,
"max": null,
- "min": null,
+ "min": "0",
"show": true
},
{
@@ -718,7 +890,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": true
+ "show": false
}
],
"yaxis": {
@@ -726,22 +898,44 @@
"alignLevel": null
}
},
+ {
+ "collapsed": false,
+ "datasource": null,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 46
+ },
+ "id": 29,
+ "panels": [],
+ "repeat": "request_protocol",
+ "title": "Requests (${request_protocol})",
+ "type": "row"
+ },
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 4,
"w": 12,
"x": 0,
- "y": 19
+ "y": 47
},
"hiddenSeries": false,
- "id": 287,
+ "id": 148,
"legend": {
"avg": false,
"current": false,
@@ -753,24 +947,25 @@
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null as zero",
+ "nullPointMode": "null",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "avg(irate(${metric_namespace}_sub_libp2p_requests_out_failure_total{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (reason)",
- "instant": false,
+ "expr": "irate(${metric_namespace}_sub_libp2p_requests_out_started_total{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])",
"interval": "",
- "legendFormat": "{{reason}}",
+ "legendFormat": "{{instance}}",
"refId": "A"
}
],
@@ -778,7 +973,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Outgoing request failures per second",
+ "title": "Requests emitted per second",
"tooltip": {
"shared": true,
"sort": 2,
@@ -794,7 +989,7 @@
},
"yaxes": [
{
- "format": "short",
+ "format": "reqps",
"label": null,
"logBase": 1,
"max": null,
@@ -821,16 +1016,23 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 4,
"w": 12,
- "x": 12,
- "y": 19
+ "x": 0,
+ "y": 51
},
"hiddenSeries": false,
- "id": 286,
+ "id": 151,
"legend": {
"avg": false,
"current": false,
@@ -842,24 +1044,25 @@
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null as zero",
+ "nullPointMode": "null",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "avg(irate(${metric_namespace}_sub_libp2p_requests_in_failure_total{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (reason)",
- "instant": false,
+ "expr": "irate(${metric_namespace}_sub_libp2p_requests_in_success_total_count{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])",
"interval": "",
- "legendFormat": "{{reason}}",
+ "legendFormat": "{{instance}}",
"refId": "A"
}
],
@@ -867,7 +1070,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Ingoing request failures per second",
+ "title": "Requests served per second",
"tooltip": {
"shared": true,
"sort": 2,
@@ -883,7 +1086,7 @@
},
"yaxes": [
{
- "format": "short",
+ "format": "reqps",
"label": null,
"logBase": 1,
"max": null,
@@ -904,79 +1107,60 @@
"alignLevel": null
}
},
- {
- "collapsed": false,
- "datasource": null,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 40
- },
- "id": 23,
- "panels": [],
- "repeat": "notif_protocol",
- "title": "Notifications (${notif_protocol})",
- "type": "row"
- },
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
- "h": 7,
+ "h": 4,
"w": 12,
"x": 0,
- "y": 41
+ "y": 55
},
"hiddenSeries": false,
- "id": 31,
- "interval": "1m",
+ "id": 256,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
- "rightSide": true,
- "show": true,
+ "show": false,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
- "maxPerRow": 2,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "repeat": null,
- "repeatDirection": "v",
- "seriesOverrides": [
- {
- "alias": "/(in)/",
- "color": "#73BF69"
- },
- {
- "alias": "/(out)/",
- "color": "#F2495C"
- }
- ],
+ "repeat": "nodename",
+ "seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "avg by (direction) (irate(${metric_namespace}_sub_libp2p_notifications_sizes_count{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[$__interval]))",
+ "expr": "histogram_quantile(0.5, sum(rate(${metric_namespace}_sub_libp2p_requests_out_success_total_bucket{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (instance, le)) > 0",
+ "instant": false,
"interval": "",
- "legendFormat": "{{direction}}",
+ "legendFormat": "{{instance}}",
"refId": "A"
}
],
@@ -984,7 +1168,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Average network notifications per second",
+ "title": "Median request answer time",
"tooltip": {
"shared": true,
"sort": 2,
@@ -1000,8 +1184,8 @@
},
"yaxes": [
{
- "format": "cps",
- "label": "Notifs/sec",
+ "format": "s",
+ "label": null,
"logBase": 1,
"max": null,
"min": null,
@@ -1013,7 +1197,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": false
+ "show": true
}
],
"yaxis": {
@@ -1027,62 +1211,53 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
- "h": 7,
+ "h": 4,
"w": 12,
- "x": 12,
- "y": 41
+ "x": 0,
+ "y": 59
},
"hiddenSeries": false,
- "id": 37,
- "interval": "1m",
+ "id": 258,
"legend": {
- "alignAsTable": false,
"avg": false,
"current": false,
- "hideEmpty": false,
- "hideZero": false,
"max": false,
"min": false,
- "rightSide": true,
- "show": true,
+ "show": false,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
- "maxPerRow": 2,
- "nullPointMode": "null as zero",
+ "nullPointMode": "null",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "repeat": null,
- "repeatDirection": "v",
- "seriesOverrides": [
- {
- "alias": "/(in)/",
- "color": "#73BF69"
- },
- {
- "alias": "/(out)/",
- "color": "#F2495C"
- }
- ],
+ "repeat": "nodename",
+ "seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "avg(irate(${metric_namespace}_sub_libp2p_notifications_sizes_sum{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[$__interval])) by (direction)",
- "instant": false,
+ "expr": "histogram_quantile(0.5, sum(rate(${metric_namespace}_sub_libp2p_requests_in_success_total_bucket{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (instance, le))",
"interval": "",
- "legendFormat": "{{direction}}",
+ "legendFormat": "{{instance}}",
"refId": "A"
}
],
@@ -1090,7 +1265,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Average bandwidth used by notifications",
+ "title": "Median request serving time",
"tooltip": {
"shared": true,
"sort": 2,
@@ -1106,8 +1281,8 @@
},
"yaxes": [
{
- "format": "Bps",
- "label": "Bandwidth",
+ "format": "s",
+ "label": null,
"logBase": 1,
"max": null,
"min": null,
@@ -1119,7 +1294,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": false
+ "show": true
}
],
"yaxis": {
@@ -1133,16 +1308,23 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 1,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 0,
"fillGradient": 0,
"gridPos": {
- "h": 6,
+ "h": 4,
"w": 12,
"x": 0,
- "y": 48
+ "y": 63
},
"hiddenSeries": false,
- "id": 16,
+ "id": 257,
"legend": {
"avg": false,
"current": false,
@@ -1156,19 +1338,22 @@
"linewidth": 1,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
- "steppedLine": true,
+ "steppedLine": false,
"targets": [
{
- "expr": "max(${metric_namespace}_sub_libp2p_out_events_notifications_sizes{instance=~\"${nodename}\", protocol=\"${notif_protocol}\", action=\"sent\"} - ignoring(action) ${metric_namespace}_sub_libp2p_out_events_notifications_sizes{instance=~\"${nodename}\", protocol=\"${notif_protocol}\", action=\"received\"}) by (instance) > 0",
+ "expr": "histogram_quantile(0.99, sum(rate(${metric_namespace}_sub_libp2p_requests_out_success_total_bucket{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (instance, le)) > 0",
+ "instant": false,
"interval": "",
"legendFormat": "{{instance}}",
"refId": "A"
@@ -1178,10 +1363,10 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Total sizes of notifications waiting to be delivered to the rest of Substrate",
+ "title": "99th percentile request answer time",
"tooltip": {
- "shared": false,
- "sort": 1,
+ "shared": true,
+ "sort": 2,
"value_type": "individual"
},
"type": "graph",
@@ -1194,7 +1379,7 @@
},
"yaxes": [
{
- "format": "bytes",
+ "format": "s",
"label": null,
"logBase": 1,
"max": null,
@@ -1207,7 +1392,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": false
+ "show": true
}
],
"yaxis": {
@@ -1221,16 +1406,23 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 1,
- "fillGradient": 1,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 0,
+ "fillGradient": 0,
"gridPos": {
- "h": 6,
+ "h": 4,
"w": 12,
- "x": 12,
- "y": 48
+ "x": 0,
+ "y": 67
},
"hiddenSeries": false,
- "id": 21,
+ "id": 259,
"legend": {
"avg": false,
"current": false,
@@ -1244,23 +1436,23 @@
"linewidth": 1,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
- "pluginVersion": "6.4.5",
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "sum(rate(${metric_namespace}_sub_libp2p_notifications_sizes_sum{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[5m])) by (direction, protocol) / sum(rate(${metric_namespace}_sub_libp2p_notifications_sizes_count{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[5m])) by (direction, protocol)",
- "format": "time_series",
+ "expr": "histogram_quantile(0.99, sum(rate(${metric_namespace}_sub_libp2p_requests_in_success_total_bucket{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (instance, le))",
"interval": "",
- "legendFormat": "{{direction}}",
+ "legendFormat": "{{instance}}",
"refId": "A"
}
],
@@ -1268,9 +1460,9 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Average size of sent and received notifications in the past 5 minutes",
+ "title": "99th percentile request serving time",
"tooltip": {
- "shared": true,
+ "shared": false,
"sort": 2,
"value_type": "individual"
},
@@ -1284,9 +1476,9 @@
},
"yaxes": [
{
- "format": "bytes",
- "label": "Max. notification size",
- "logBase": 10,
+ "format": "s",
+ "label": null,
+ "logBase": 1,
"max": null,
"min": null,
"show": true
@@ -1297,7 +1489,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": false
+ "show": true
}
],
"yaxis": {
@@ -1311,73 +1503,65 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "description": "99.9% of the time, the output queue size for this protocol is below the given value",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
- "h": 6,
+ "h": 4,
"w": 12,
"x": 0,
- "y": 54
+ "y": 71
},
"hiddenSeries": false,
- "id": 14,
+ "id": 287,
"legend": {
- "alignAsTable": false,
"avg": false,
- "current": true,
- "hideEmpty": false,
- "hideZero": true,
- "max": true,
+ "current": false,
+ "max": false,
"min": false,
- "rightSide": true,
- "show": true,
+ "show": false,
"total": false,
- "values": true
+ "values": false
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null",
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "seriesOverrides": [
- {
- "alias": "max",
- "fill": 1,
- "linewidth": 0
- }
- ],
+ "repeat": "nodename",
+ "seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "histogram_quantile(0.99, sum(rate(${metric_namespace}_sub_libp2p_notifications_queues_size_bucket{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[2m])) by (le, instance))",
- "hide": false,
+ "expr": "avg(irate(${metric_namespace}_sub_libp2p_requests_out_failure_total{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (reason)",
+ "instant": false,
"interval": "",
- "legendFormat": "{{protocol}}",
+ "legendFormat": "{{reason}}",
"refId": "A"
- },
- {
- "expr": "max(histogram_quantile(0.99, sum(rate(${metric_namespace}_sub_libp2p_notifications_queues_size_bucket{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[2m])) by (le, instance)))",
- "interval": "",
- "legendFormat": "max",
- "refId": "B"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "99th percentile of queues sizes",
+ "title": "Outgoing request failures per second",
"tooltip": {
"shared": true,
- "sort": 0,
+ "sort": 2,
"value_type": "individual"
},
"type": "graph",
@@ -1393,8 +1577,8 @@
"format": "short",
"label": null,
"logBase": 1,
- "max": "300",
- "min": "0",
+ "max": null,
+ "min": null,
"show": true
},
{
@@ -1403,7 +1587,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": false
+ "show": true
}
],
"yaxis": {
@@ -1417,16 +1601,23 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 1,
- "fillGradient": 1,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 0,
+ "fillGradient": 0,
"gridPos": {
- "h": 6,
+ "h": 4,
"w": 12,
- "x": 12,
- "y": 54
+ "x": 0,
+ "y": 75
},
"hiddenSeries": false,
- "id": 134,
+ "id": 286,
"legend": {
"avg": false,
"current": false,
@@ -1440,23 +1631,24 @@
"linewidth": 1,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
- "pluginVersion": "6.4.5",
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "histogram_quantile(1.0, sum(rate(${metric_namespace}_sub_libp2p_notifications_sizes_bucket{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[5m])) by (direction, le))",
- "format": "time_series",
+ "expr": "avg(irate(${metric_namespace}_sub_libp2p_requests_in_failure_total{instance=~\"${nodename}\", protocol=\"${request_protocol}\"}[5m])) by (reason)",
+ "instant": false,
"interval": "",
- "legendFormat": "{{direction}}",
+ "legendFormat": "{{reason}}",
"refId": "A"
}
],
@@ -1464,7 +1656,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Maximum size of sent and received notifications in the past 5 minutes",
+ "title": "Ingoing request failures per second",
"tooltip": {
"shared": true,
"sort": 2,
@@ -1480,9 +1672,9 @@
},
"yaxes": [
{
- "format": "bytes",
- "label": "Max. notification size",
- "logBase": 10,
+ "format": "short",
+ "label": null,
+ "logBase": 1,
"max": null,
"min": null,
"show": true
@@ -1493,7 +1685,7 @@
"logBase": 1,
"max": null,
"min": null,
- "show": false
+ "show": true
}
],
"yaxis": {
@@ -1508,117 +1700,81 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 60
+ "y": 79
},
- "id": 27,
+ "id": 23,
"panels": [],
- "title": "Transport",
+ "repeat": "notif_protocol",
+ "title": "Notifications (${notif_protocol})",
"type": "row"
},
{
"aliasColors": {},
- "bars": true,
+ "bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 1,
"fillGradient": 0,
"gridPos": {
"h": 6,
- "w": 24,
+ "w": 12,
"x": 0,
- "y": 61
+ "y": 80
},
"hiddenSeries": false,
- "id": 19,
- "interval": "1m",
+ "id": 447,
"legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": false,
- "max": false,
- "min": false,
+ "alignAsTable": true,
+ "avg": true,
+ "current": true,
+ "max": true,
+ "min": true,
"rightSide": false,
"show": true,
"total": false,
- "values": false
+ "values": true
},
- "lines": false,
+ "lines": true,
"linewidth": 1,
- "maxPerRow": 2,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "repeat": null,
- "repeatDirection": "v",
- "seriesOverrides": [
- {
- "alias": "established (in)",
- "color": "#37872D"
- },
- {
- "alias": "established (out)",
- "color": "#C4162A"
- },
- {
- "alias": "pending (out)",
- "color": "#FF7383"
- },
- {
- "alias": "closed-recently",
- "color": "#FADE2A",
- "steppedLine": true
- }
- ],
+ "repeat": "nodename",
+ "repeatDirection": "h",
+ "seriesOverrides": [],
"spaceLength": 10,
- "stack": true,
+ "stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "avg(sum(${metric_namespace}_sub_libp2p_connections_opened_total{direction=\"in\", instance=~\"${nodename}\"}) by (instance) - sum(${metric_namespace}_sub_libp2p_connections_closed_total{direction=\"in\", instance=~\"${nodename}\"}) by (instance))",
- "format": "time_series",
- "hide": false,
- "interval": "",
- "legendFormat": "established (in)",
- "refId": "A"
- },
- {
- "expr": "avg(sum(${metric_namespace}_sub_libp2p_connections_opened_total{direction=\"out\", instance=~\"${nodename}\"}) by (instance) - sum(${metric_namespace}_sub_libp2p_connections_closed_total{direction=\"out\", instance=~\"${nodename}\"}) by (instance))",
- "hide": false,
- "instant": false,
- "interval": "",
- "legendFormat": "established (out)",
- "refId": "C"
- },
- {
- "expr": "avg(sum by (instance) (${metric_namespace}_sub_libp2p_pending_connections{instance=~\"${nodename}\"}))",
- "hide": false,
+ "expr": "${metric_namespace}_sub_libp2p_notifications_streams_opened_total{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"} - ${metric_namespace}_sub_libp2p_notifications_streams_closed_total{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}",
"interval": "",
- "legendFormat": "pending (out)",
+ "legendFormat": "{{instance}}",
"refId": "B"
- },
- {
- "expr": "avg(sum by(instance) (increase(${metric_namespace}_sub_libp2p_connections_closed_total{instance=~\"${nodename}\"}[$__interval])))",
- "hide": false,
- "interval": "",
- "legendFormat": "closed-recently",
- "refId": "D"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Average transport-level (TCP, QUIC, ...) connections per node",
+ "title": "Number of open substreams",
"tooltip": {
- "shared": true,
- "sort": 0,
+ "shared": false,
+ "sort": 1,
"value_type": "individual"
},
"type": "graph",
@@ -1632,7 +1788,7 @@
"yaxes": [
{
"format": "short",
- "label": "Connections",
+ "label": null,
"logBase": 1,
"max": null,
"min": null,
@@ -1658,52 +1814,66 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 6,
- "w": 24,
+ "w": 12,
"x": 0,
- "y": 67
+ "y": 86
},
"hiddenSeries": false,
- "id": 189,
+ "id": 31,
"interval": "1m",
"legend": {
- "alignAsTable": false,
"avg": false,
"current": false,
- "hideEmpty": false,
"max": false,
"min": false,
- "rightSide": false,
+ "rightSide": true,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
- "maxPerRow": 2,
+ "maxPerRow": 12,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "repeatDirection": "v",
- "seriesOverrides": [],
+ "repeat": "nodename",
+ "repeatDirection": "h",
+ "seriesOverrides": [
+ {
+ "alias": "/(in)/",
+ "color": "#73BF69"
+ },
+ {
+ "alias": "/(out)/",
+ "color": "#F2495C"
+ }
+ ],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "1 - \n\navg(\n ${metric_namespace}_sub_libp2p_distinct_peers_connections_opened_total{instance=~\"${nodename}\"} - ${metric_namespace}_sub_libp2p_distinct_peers_connections_closed_total{instance=~\"${nodename}\"}\n) by (instance)\n\n/\n\navg(\r\n sum(${metric_namespace}_sub_libp2p_connections_opened_total{instance=~\"${nodename}\"}) by (instance) - sum(${metric_namespace}_sub_libp2p_connections_closed_total{instance=~\"${nodename}\"}) by (instance)\r\n) by (instance)",
- "format": "time_series",
- "hide": false,
+ "expr": "avg by (direction) (irate(${metric_namespace}_sub_libp2p_notifications_sizes_count{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[$__interval]))",
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "{{direction}}",
"refId": "A"
}
],
@@ -1711,7 +1881,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Percentage of peers for which we have more than one connection open",
+ "title": "Average network notifications per second",
"tooltip": {
"shared": true,
"sort": 2,
@@ -1725,686 +1895,10 @@
"show": true,
"values": []
},
- "yaxes": [
- {
- "format": "percentunit",
- "label": "",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": true,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 73
- },
- "hiddenSeries": false,
- "id": 39,
- "interval": "1m",
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": false,
- "linewidth": 1,
- "nullPointMode": "null as zero",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [
- {
- "alias": "/.*/",
- "color": "#FF780A"
- }
- ],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": false,
- "targets": [
- {
- "expr": "avg(increase(${metric_namespace}_sub_libp2p_incoming_connections_handshake_errors_total{instance=~\"${nodename}\"}[$__interval])) by (reason)",
- "interval": "",
- "legendFormat": "{{reason}}",
- "refId": "A"
- },
- {
- "expr": "avg(increase(${metric_namespace}_sub_libp2p_listeners_errors_total{instance=~\"${nodename}\"}[$__interval]))",
- "interval": "",
- "legendFormat": "pre-handshake",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Number of incoming connection errors, averaged by node",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "Errors",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "cards": {
- "cardPadding": null,
- "cardRound": null
- },
- "color": {
- "cardColor": "#b4ff00",
- "colorScale": "sqrt",
- "colorScheme": "interpolateOranges",
- "exponent": 0.5,
- "max": 100,
- "min": 0,
- "mode": "spectrum"
- },
- "dataFormat": "timeseries",
- "datasource": "$data_source",
- "description": "Each bucket represent a certain number of nodes using a certain bandwidth range.",
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 73
- },
- "heatmap": {},
- "hideZeroBuckets": false,
- "highlightCards": true,
- "id": 4,
- "legend": {
- "show": false
- },
- "reverseYBuckets": false,
- "targets": [
- {
- "expr": "${metric_namespace}_network_per_sec_bytes{instance=~\"${nodename}\"}",
- "format": "time_series",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "timeFrom": null,
- "timeShift": null,
- "title": "Heatmap of network bandwidth",
- "tooltip": {
- "show": true,
- "showHistogram": false
- },
- "type": "heatmap",
- "xAxis": {
- "show": true
- },
- "xBucketNumber": null,
- "xBucketSize": "2.5m",
- "yAxis": {
- "decimals": null,
- "format": "Bps",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true,
- "splitFactor": null
- },
- "yBucketBound": "auto",
- "yBucketNumber": null,
- "yBucketSize": null
- },
- {
- "aliasColors": {},
- "bars": true,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 0,
- "y": 79
- },
- "hiddenSeries": false,
- "id": 81,
- "interval": "1m",
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": false,
- "linewidth": 1,
- "nullPointMode": "null as zero",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "repeat": null,
- "repeatDirection": "v",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": false,
- "targets": [
- {
- "expr": "avg(increase(${metric_namespace}_sub_libp2p_pending_connections_errors_total{instance=~\"${nodename}\"}[$__interval])) by (reason)",
- "interval": "",
- "legendFormat": "{{reason}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Dialing attempt errors, averaged per node",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": true,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 12,
- "y": 79
- },
- "hiddenSeries": false,
- "id": 46,
- "interval": "1m",
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": false,
- "linewidth": 1,
- "maxPerRow": 2,
- "nullPointMode": "null as zero",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "repeat": null,
- "repeatDirection": "v",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": false,
- "targets": [
- {
- "expr": "avg(increase(${metric_namespace}_sub_libp2p_connections_closed_total{instance=~\"${nodename}\"}[$__interval])) by (reason)",
- "interval": "",
- "legendFormat": "{{reason}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Disconnects, averaged per node",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "decimals": null,
- "format": "short",
- "label": "Disconnects",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "collapsed": false,
- "datasource": null,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 86
- },
- "id": 52,
- "panels": [],
- "title": "GrandPa",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": true,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
- "fill": 1,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 87
- },
- "hiddenSeries": false,
- "id": 54,
- "interval": "1m",
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": true,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": true,
- "values": true
- },
- "lines": false,
- "linewidth": 1,
- "nullPointMode": "null as zero",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "repeat": null,
- "repeatDirection": "v",
- "seriesOverrides": [
- {
- "alias": "/discard/",
- "color": "#FA6400",
- "zindex": -2
- },
- {
- "alias": "/keep/",
- "color": "#73BF69",
- "zindex": 2
- },
- {
- "alias": "/process_and_discard/",
- "color": "#5794F2"
- }
- ],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": false,
- "targets": [
- {
- "expr": "avg(increase(${metric_namespace}_finality_grandpa_communication_gossip_validator_messages{instance=~\"${nodename}\"}[$__interval])) by (action, message)",
- "interval": "",
- "legendFormat": "{{message}} => {{action}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "GrandPa messages received from the network, and action",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "collapsed": false,
- "datasource": null,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 93
- },
- "id": 25,
- "panels": [],
- "repeat": null,
- "title": "Kademlia & authority-discovery",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
- "description": "",
- "fill": 0,
- "fillGradient": 0,
- "gridPos": {
- "h": 5,
- "w": 12,
- "x": 0,
- "y": 94
- },
- "hiddenSeries": false,
- "id": 33,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": true,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(${metric_namespace}_sub_libp2p_kbuckets_num_nodes{instance=~\"${nodename}\"}) by (instance)",
- "format": "time_series",
- "instant": false,
- "interval": "",
- "legendFormat": "{{instance}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Number of entries in Kademlia k-buckets",
- "tooltip": {
- "shared": true,
- "sort": 1,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "max": 0,
- "min": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
- "fill": 0,
- "fillGradient": 7,
- "gridPos": {
- "h": 5,
- "w": 12,
- "x": 12,
- "y": 94
- },
- "hiddenSeries": false,
- "id": 35,
- "interval": "",
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "rate(${metric_namespace}_sub_libp2p_kademlia_random_queries_total{instance=~\"${nodename}\"}[5m])",
- "interval": "",
- "legendFormat": "{{instance}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Kademlia random discovery queries started per second",
- "tooltip": {
- "shared": true,
- "sort": 1,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
"yaxes": [
{
"format": "cps",
- "label": "Queries per second",
+ "label": "Notifs/sec",
"logBase": 1,
"max": null,
"min": null,
@@ -2430,44 +1924,70 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
- "h": 4,
+ "h": 6,
"w": 12,
"x": 0,
- "y": 99
+ "y": 92
},
"hiddenSeries": false,
- "id": 111,
+ "id": 37,
+ "interval": "1m",
"legend": {
+ "alignAsTable": false,
"avg": false,
"current": false,
+ "hideEmpty": false,
+ "hideZero": false,
"max": false,
"min": false,
- "show": false,
+ "rightSide": true,
+ "show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null",
+ "maxPerRow": 12,
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "seriesOverrides": [],
+ "repeat": "nodename",
+ "repeatDirection": "h",
+ "seriesOverrides": [
+ {
+ "alias": "/(in)/",
+ "color": "#73BF69"
+ },
+ {
+ "alias": "/(out)/",
+ "color": "#F2495C"
+ }
+ ],
"spaceLength": 10,
"stack": false,
- "steppedLine": true,
+ "steppedLine": false,
"targets": [
{
- "expr": "${metric_namespace}_sub_libp2p_kademlia_records_count{instance=~\"${nodename}\"}",
+ "expr": "avg(irate(${metric_namespace}_sub_libp2p_notifications_sizes_sum{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[$__interval])) by (direction)",
+ "instant": false,
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "{{direction}}",
"refId": "A"
}
],
@@ -2475,10 +1995,10 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Number of Kademlia records",
+ "title": "Average bandwidth used by notifications",
"tooltip": {
"shared": true,
- "sort": 1,
+ "sort": 2,
"value_type": "individual"
},
"type": "graph",
@@ -2491,8 +2011,8 @@
},
"yaxes": [
{
- "format": "short",
- "label": null,
+ "format": "Bps",
+ "label": "Bandwidth",
"logBase": 1,
"max": null,
"min": null,
@@ -2518,16 +2038,23 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 1,
"fillGradient": 0,
"gridPos": {
- "h": 4,
+ "h": 6,
"w": 12,
- "x": 12,
- "y": 99
+ "x": 0,
+ "y": 98
},
"hiddenSeries": false,
- "id": 112,
+ "id": 16,
"legend": {
"avg": false,
"current": false,
@@ -2539,21 +2066,23 @@
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null",
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
- "steppedLine": false,
+ "steppedLine": true,
"targets": [
{
- "expr": "${metric_namespace}_sub_libp2p_kademlia_records_sizes_total{instance=~\"${nodename}\"}",
+ "expr": "max(${metric_namespace}_sub_libp2p_out_events_notifications_sizes{instance=~\"${nodename}\", protocol=\"${notif_protocol}\", action=\"sent\"} - ignoring(action) ${metric_namespace}_sub_libp2p_out_events_notifications_sizes{instance=~\"${nodename}\", protocol=\"${notif_protocol}\", action=\"received\"}) by (instance) > 0",
"interval": "",
"legendFormat": "{{instance}}",
"refId": "A"
@@ -2563,10 +2092,10 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Total size of Kademlia records",
+ "title": "Total sizes of notifications waiting to be delivered to the rest of Substrate",
"tooltip": {
- "shared": true,
- "sort": 2,
+ "shared": false,
+ "sort": 1,
"value_type": "individual"
},
"type": "graph",
@@ -2606,19 +2135,24 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "description": "",
- "fill": 0,
- "fillGradient": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 1,
+ "fillGradient": 1,
"gridPos": {
- "h": 5,
+ "h": 6,
"w": 12,
"x": 0,
- "y": 103
+ "y": 104
},
"hiddenSeries": false,
- "id": 211,
+ "id": 21,
"legend": {
- "alignAsTable": false,
"avg": false,
"current": false,
"max": false,
@@ -2629,25 +2163,26 @@
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null",
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
- "percentage": true,
+ "percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "${metric_namespace}_authority_discovery_known_authorities_count{instance=~\"${nodename}\"}",
+ "expr": "sum(rate(${metric_namespace}_sub_libp2p_notifications_sizes_sum{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[5m])) by (direction, protocol) / sum(rate(${metric_namespace}_sub_libp2p_notifications_sizes_count{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[5m])) by (direction, protocol)",
"format": "time_series",
- "instant": false,
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "{{direction}}",
"refId": "A"
}
],
@@ -2655,17 +2190,15 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Number of authorities discovered by authority-discovery",
+ "title": "Average size of sent and received notifications in the past 5 minutes",
"tooltip": {
"shared": true,
- "sort": 1,
+ "sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
- "max": 0,
- "min": null,
"mode": "time",
"name": null,
"show": true,
@@ -2673,9 +2206,9 @@
},
"yaxes": [
{
- "format": "short",
- "label": null,
- "logBase": 1,
+ "format": "bytes",
+ "label": "Max. notification size",
+ "logBase": 10,
"max": null,
"min": null,
"show": true
@@ -2700,19 +2233,24 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "description": "",
- "fill": 0,
- "fillGradient": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 1,
+ "fillGradient": 1,
"gridPos": {
- "h": 5,
+ "h": 6,
"w": 12,
- "x": 12,
- "y": 103
+ "x": 0,
+ "y": 110
},
"hiddenSeries": false,
- "id": 233,
+ "id": 134,
"legend": {
- "alignAsTable": false,
"avg": false,
"current": false,
"max": false,
@@ -2723,25 +2261,26 @@
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "null",
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
- "percentage": true,
+ "percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "${metric_namespace}_authority_discovery_amount_external_addresses_last_published{instance=~\"${nodename}\"}",
+ "expr": "histogram_quantile(1.0, sum(rate(${metric_namespace}_sub_libp2p_notifications_sizes_bucket{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[5m])) by (direction, le))",
"format": "time_series",
- "instant": false,
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "{{direction}}",
"refId": "A"
}
],
@@ -2749,17 +2288,15 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Number of addresses published by authority-discovery",
+ "title": "Maximum size of sent and received notifications in the past 5 minutes",
"tooltip": {
"shared": true,
- "sort": 1,
+ "sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
- "max": 0,
- "min": null,
"mode": "time",
"name": null,
"show": true,
@@ -2767,9 +2304,9 @@
},
"yaxes": [
{
- "format": "short",
- "label": null,
- "logBase": 1,
+ "format": "bytes",
+ "label": "Max. notification size",
+ "logBase": 10,
"max": null,
"min": null,
"show": true
@@ -2794,47 +2331,71 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "description": "99.9% of the time, the output queue size for this protocol is below the given value",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
- "h": 5,
+ "h": 6,
"w": 12,
"x": 0,
- "y": 108
+ "y": 116
},
"hiddenSeries": false,
- "id": 68,
- "interval": "1m",
+ "id": 14,
"legend": {
+ "alignAsTable": false,
"avg": false,
- "current": false,
- "max": false,
+ "current": true,
+ "hideEmpty": false,
+ "hideZero": true,
+ "max": true,
"min": false,
- "show": false,
+ "rightSide": true,
+ "show": true,
"total": false,
- "values": false
+ "values": true
},
"lines": true,
"linewidth": 1,
- "nullPointMode": "connected",
+ "nullPointMode": "null",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "repeat": null,
- "repeatDirection": "v",
- "seriesOverrides": [],
+ "repeat": "nodename",
+ "seriesOverrides": [
+ {
+ "alias": "max",
+ "fill": 1,
+ "linewidth": 0
+ }
+ ],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "rate(${metric_namespace}_authority_discovery_dht_event_received{name=\"value_found\", instance=~\"${nodename}\"}[2h]) / ignoring(name) (\n rate(${metric_namespace}_authority_discovery_dht_event_received{name=\"value_found\", instance=~\"${nodename}\"}[2h]) +\n ignoring(name) rate(${metric_namespace}_authority_discovery_dht_event_received{name=\"value_not_found\", instance=~\"${nodename}\"}[2h])\n)",
+ "expr": "histogram_quantile(0.99, sum(rate(${metric_namespace}_sub_libp2p_notifications_queues_size_bucket{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[2m])) by (le, instance))",
+ "hide": false,
"interval": "",
- "legendFormat": "{{instance}}",
+ "legendFormat": "{{protocol}}",
+ "refId": "A"
+ },
+ {
+ "expr": "max(histogram_quantile(0.99, sum(rate(${metric_namespace}_sub_libp2p_notifications_queues_size_bucket{instance=~\"${nodename}\", protocol=\"${notif_protocol}\"}[2m])) by (le, instance)))",
+ "interval": "",
+ "legendFormat": "max",
"refId": "B"
}
],
@@ -2842,10 +2403,10 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Authority discovery get_value success rate in past two hours",
+ "title": "99th percentile of queues sizes",
"tooltip": {
"shared": true,
- "sort": 1,
+ "sort": 0,
"value_type": "individual"
},
"type": "graph",
@@ -2858,11 +2419,11 @@
},
"yaxes": [
{
- "format": "percentunit",
+ "format": "short",
"label": null,
"logBase": 1,
- "max": "1.0",
- "min": null,
+ "max": "300",
+ "min": "0",
"show": true
},
{
@@ -2879,63 +2440,105 @@
"alignLevel": null
}
},
+ {
+ "collapsed": false,
+ "datasource": null,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 122
+ },
+ "id": 52,
+ "panels": [],
+ "title": "GrandPa",
+ "type": "row"
+ },
{
"aliasColors": {},
- "bars": false,
+ "bars": true,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 1,
"fillGradient": 0,
"gridPos": {
- "h": 5,
+ "h": 6,
"w": 12,
- "x": 12,
- "y": 108
+ "x": 0,
+ "y": 123
},
"hiddenSeries": false,
- "id": 234,
+ "id": 54,
"interval": "1m",
"legend": {
+ "alignAsTable": true,
"avg": false,
"current": false,
+ "hideEmpty": true,
+ "hideZero": true,
"max": false,
"min": false,
- "show": false,
- "total": false,
- "values": false
+ "rightSide": true,
+ "show": true,
+ "total": true,
+ "values": true
},
- "lines": true,
+ "lines": false,
"linewidth": 1,
- "nullPointMode": "connected",
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
- "repeatDirection": "v",
- "seriesOverrides": [],
+ "repeat": "nodename",
+ "repeatDirection": "h",
+ "seriesOverrides": [
+ {
+ "alias": "/discard/",
+ "color": "#FA6400",
+ "zindex": -2
+ },
+ {
+ "alias": "/keep/",
+ "color": "#73BF69",
+ "zindex": 2
+ },
+ {
+ "alias": "/process_and_discard/",
+ "color": "#5794F2"
+ }
+ ],
"spaceLength": 10,
- "stack": false,
+ "stack": true,
"steppedLine": false,
"targets": [
{
- "expr": "rate(${metric_namespace}_authority_discovery_dht_event_received{name=\"value_put\", instance=~\"${nodename}\"}[2h]) / ignoring(name) (\n rate(${metric_namespace}_authority_discovery_dht_event_received{name=\"value_put\", instance=~\"${nodename}\"}[2h]) +\n ignoring(name) rate(${metric_namespace}_authority_discovery_dht_event_received{name=\"value_put_failed\", instance=~\"${nodename}\"}[2h])\n)",
+ "expr": "rate(${metric_namespace}_finality_grandpa_communication_gossip_validator_messages{instance=~\"${nodename}\"}[$__interval])",
"interval": "",
- "legendFormat": "{{instance}}",
- "refId": "B"
+ "legendFormat": "{{message}} => {{action}}",
+ "refId": "A"
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Authority discovery put_value success rate in past two hours",
+ "title": "GrandPa messages received from the network, and action",
"tooltip": {
"shared": true,
- "sort": 1,
+ "sort": 0,
"value_type": "individual"
},
"type": "graph",
@@ -2948,10 +2551,10 @@
},
"yaxes": [
{
- "format": "percentunit",
+ "format": "short",
"label": null,
"logBase": 1,
- "max": "1.0",
+ "max": null,
"min": null,
"show": true
},
@@ -2961,17 +2564,62 @@
"logBase": 1,
"max": null,
"min": null,
- "show": false
+ "show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
+ },
+ {
+ "collapsed": false,
+ "datasource": null,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 129
+ },
+ "id": 25,
+ "panels": [],
+ "repeat": null,
+ "title": "Kademlia & authority-discovery",
+ "type": "row"
+ },
+ {
+ "datasource": null,
+ "description": "",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {}
+ },
+ "overrides": []
+ },
+ "folderId": null,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 130
+ },
+ "headings": true,
+ "id": 423,
+ "limit": 10,
+ "pluginVersion": "7.2.1",
+ "query": "kademlia",
+ "recent": false,
+ "search": false,
+ "starred": false,
+ "tags": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Kademlia and Authority Discovery metrics moved to \"kademlia-and-authority-discovery\" dashboard.",
+ "type": "dashlist"
}
],
"refresh": "1m",
- "schemaVersion": 22,
+ "schemaVersion": 26,
"style": "dark",
"tags": [],
"templating": {
@@ -2981,9 +2629,9 @@
"current": {},
"datasource": "$data_source",
"definition": "${metric_namespace}_process_start_time_seconds",
+ "error": null,
"hide": 0,
- "includeAll": true,
- "index": -1,
+ "includeAll": false,
"label": "Instance name filter",
"multi": true,
"name": "nodename",
@@ -3003,15 +2651,15 @@
"allValue": null,
"current": {},
"datasource": "$data_source",
- "definition": "${metric_namespace}_sub_libp2p_notifications_sizes_count",
+ "definition": "${metric_namespace}_sub_libp2p_notifications_sizes_count{instance=~\"${nodename}\"}",
+ "error": null,
"hide": 2,
"includeAll": true,
- "index": -1,
"label": null,
"multi": false,
"name": "notif_protocol",
"options": [],
- "query": "${metric_namespace}_sub_libp2p_notifications_sizes_count",
+ "query": "${metric_namespace}_sub_libp2p_notifications_sizes_count{instance=~\"${nodename}\"}",
"refresh": 1,
"regex": "/protocol=\"(.*?)\"/",
"skipUrlSync": false,
@@ -3026,15 +2674,15 @@
"allValue": null,
"current": {},
"datasource": "$data_source",
- "definition": "${metric_namespace}_sub_libp2p_requests_out_started_total",
+ "definition": "${metric_namespace}_sub_libp2p_requests_out_started_total{instance=~\"${nodename}\"}",
+ "error": null,
"hide": 2,
"includeAll": true,
- "index": -1,
"label": null,
"multi": false,
"name": "request_protocol",
"options": [],
- "query": "${metric_namespace}_sub_libp2p_requests_out_started_total",
+ "query": "${metric_namespace}_sub_libp2p_requests_out_started_total{instance=~\"${nodename}\"}",
"refresh": 1,
"regex": "/protocol=\"(.*?)\"/",
"skipUrlSync": false,
@@ -3048,9 +2696,10 @@
{
"current": {
"selected": false,
- "text": "Prometheus",
- "value": "Prometheus"
+ "text": "prometheus.parity-mgmt",
+ "value": "prometheus.parity-mgmt"
},
+ "error": null,
"hide": 0,
"includeAll": false,
"label": "Source of data",
@@ -3066,15 +2715,18 @@
{
"current": {
"value": "${VAR_METRIC_NAMESPACE}",
- "text": "${VAR_METRIC_NAMESPACE}"
+ "text": "${VAR_METRIC_NAMESPACE}",
+ "selected": false
},
+ "error": null,
"hide": 2,
"label": "Prefix of the metrics",
"name": "metric_namespace",
"options": [
{
"value": "${VAR_METRIC_NAMESPACE}",
- "text": "${VAR_METRIC_NAMESPACE}"
+ "text": "${VAR_METRIC_NAMESPACE}",
+ "selected": false
}
],
"query": "${VAR_METRIC_NAMESPACE}",
@@ -3101,11 +2753,8 @@
"1d"
]
},
- "timezone": "",
+ "timezone": "utc",
"title": "Substrate Networking",
"uid": "vKVuiD9Zk",
- "variables": {
- "list": []
- },
- "version": 121
+ "version": 147
}
diff --git a/.maintain/monitoring/grafana-dashboards/substrate-service-tasks.json b/.maintain/monitoring/grafana-dashboards/substrate-service-tasks.json
index 539fdec086a37..a3db46ec6d2a9 100644
--- a/.maintain/monitoring/grafana-dashboards/substrate-service-tasks.json
+++ b/.maintain/monitoring/grafana-dashboards/substrate-service-tasks.json
@@ -13,7 +13,7 @@
"type": "grafana",
"id": "grafana",
"name": "Grafana",
- "version": "6.7.3"
+ "version": "7.3.6"
},
{
"type": "panel",
@@ -26,6 +26,12 @@
"id": "prometheus",
"name": "Prometheus",
"version": "1.0.0"
+ },
+ {
+ "type": "panel",
+ "id": "text",
+ "name": "Text",
+ "version": ""
}
],
"annotations": {
@@ -75,18 +81,45 @@
"gnetId": null,
"graphTooltip": 0,
"id": null,
- "iteration": 1599471940817,
+ "iteration": 1610462629581,
"links": [],
"panels": [
{
- "collapsed": false,
"datasource": null,
+ "description": "",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {}
+ },
+ "overrides": []
+ },
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 0
},
+ "id": 42,
+ "options": {
+ "content": "",
+ "mode": "markdown"
+ },
+ "pluginVersion": "7.3.6",
+ "repeat": "nodename",
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "$nodename",
+ "type": "text"
+ },
+ {
+ "collapsed": false,
+ "datasource": null,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 1
+ },
"id": 29,
"panels": [],
"title": "Tasks",
@@ -94,17 +127,24 @@
},
{
"aliasColors": {},
- "bars": false,
+ "bars": true,
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
+ "fill": 2,
"fillGradient": 0,
"gridPos": {
"h": 6,
"w": 24,
"x": 0,
- "y": 1
+ "y": 2
},
"hiddenSeries": false,
"id": 11,
@@ -122,23 +162,25 @@
"total": false,
"values": true
},
- "lines": true,
- "linewidth": 2,
- "nullPointMode": "null",
+ "lines": false,
+ "linewidth": 1,
+ "nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
- "stack": false,
- "steppedLine": true,
+ "stack": true,
+ "steppedLine": false,
"targets": [
{
- "expr": "avg(irate(${metric_namespace}_tasks_polling_duration_sum{instance=~\"${nodename}\"}[10m])) by (task_name)",
+ "expr": "irate(${metric_namespace}_tasks_polling_duration_sum{instance=~\"${nodename}\"}[10m])",
"interval": "",
"legendFormat": "{{task_name}}",
"refId": "A"
@@ -148,7 +190,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "CPU time spent on each task (average per node)",
+ "title": "CPU time spent on each task",
"tooltip": {
"shared": true,
"sort": 2,
@@ -191,13 +233,20 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 6,
"w": 24,
"x": 0,
- "y": 7
+ "y": 8
},
"hiddenSeries": false,
"id": 30,
@@ -219,19 +268,21 @@
"linewidth": 2,
"nullPointMode": "null",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": true,
"targets": [
{
- "expr": "avg(irate(${metric_namespace}_tasks_polling_duration_count{instance=~\"${nodename}\"}[10m])) by (task_name)",
+ "expr": "irate(${metric_namespace}_tasks_polling_duration_count{instance=~\"${nodename}\"}[10m])",
"interval": "",
"legendFormat": "{{task_name}}",
"refId": "A"
@@ -241,7 +292,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Task polling rate per second (average per node)",
+ "title": "Task polling rate per second",
"tooltip": {
"shared": true,
"sort": 2,
@@ -284,104 +335,20 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 13
- },
- "hiddenSeries": false,
- "id": 31,
- "interval": "",
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": false,
- "max": true,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 2,
- "nullPointMode": "null",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": true,
- "targets": [
- {
- "expr": "max(irate(${metric_namespace}_tasks_polling_duration_count{instance=~\"${nodename}\"}[10m])) by (task_name)",
- "interval": "",
- "legendFormat": "{{task_name}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Task polling rate per second (maximum per node)",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "cps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
},
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 6,
"w": 24,
"x": 0,
- "y": 19
+ "y": 14
},
"hiddenSeries": false,
"id": 15,
@@ -401,19 +368,21 @@
"linewidth": 1,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": true,
"targets": [
{
- "expr": "avg by(task_name) (irate(${metric_namespace}_tasks_spawned_total{instance=~\"${nodename}\"}[10m]))",
+ "expr": "irate(${metric_namespace}_tasks_spawned_total{instance=~\"${nodename}\"}[10m])",
"interval": "",
"legendFormat": "{{task_name}}",
"refId": "A"
@@ -423,7 +392,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Number of tasks started per second (average per node)",
+ "title": "Number of tasks started per second",
"tooltip": {
"shared": true,
"sort": 2,
@@ -466,104 +435,20 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
- "fill": 0,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 25
- },
- "hiddenSeries": false,
- "id": 16,
- "interval": "",
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": false,
- "max": true,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null as zero",
- "options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": true,
- "targets": [
- {
- "expr": "max by(task_name) (irate(${metric_namespace}_tasks_spawned_total{instance=~\"${nodename}\"}[10m]))",
- "interval": "",
- "legendFormat": "{{task_name}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Number of tasks started per second (maximum over all nodes)",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 10,
- "max": null,
- "min": "0",
- "show": true
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
},
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 6,
"w": 24,
"x": 0,
- "y": 31
+ "y": 20
},
"hiddenSeries": false,
"id": 2,
@@ -583,110 +468,21 @@
"linewidth": 1,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
- },
- "percentage": false,
- "pointradius": 2,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": true,
- "targets": [
- {
- "expr": "avg by(task_name) (${metric_namespace}_tasks_spawned_total{instance=~\"${nodename}\"} - sum(${metric_namespace}_tasks_ended_total{instance=~\"${nodename}\"}) without(reason))",
- "interval": "",
- "legendFormat": "{{task_name}}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Number of tasks running (average per node)",
- "tooltip": {
- "shared": true,
- "sort": 2,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 10,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "$data_source",
- "fill": 0,
- "fillGradient": 0,
- "gridPos": {
- "h": 6,
- "w": 24,
- "x": 0,
- "y": 37
- },
- "hiddenSeries": false,
- "id": 3,
- "interval": "",
- "legend": {
- "alignAsTable": true,
- "avg": false,
- "current": false,
- "max": true,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": true
- },
- "lines": true,
- "linewidth": 1,
- "nullPointMode": "null as zero",
- "options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": true,
"targets": [
{
- "expr": "max by(task_name) (${metric_namespace}_tasks_spawned_total{instance=~\"${nodename}\"} - sum(${metric_namespace}_tasks_ended_total{instance=~\"${nodename}\"}) without(reason))",
+ "expr": "${metric_namespace}_tasks_spawned_total{instance=~\"${nodename}\"} - sum(${metric_namespace}_tasks_ended_total{instance=~\"${nodename}\"}) without(reason)\n\n# Fallback if tasks_ended_total is null for that task\nor on(instance, task_name) ${metric_namespace}_tasks_spawned_total{instance=~\"${nodename}\"}",
"interval": "",
"legendFormat": "{{task_name}}",
"refId": "A"
@@ -696,7 +492,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Number of tasks running (maximum over all nodes)",
+ "title": "Number of tasks running",
"tooltip": {
"shared": true,
"sort": 2,
@@ -740,13 +536,20 @@
"dashes": false,
"datasource": "$data_source",
"decimals": null,
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 6,
"w": 24,
"x": 0,
- "y": 43
+ "y": 26
},
"hiddenSeries": false,
"id": 7,
@@ -768,19 +571,21 @@
"linewidth": 1,
"nullPointMode": "null as zero",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": true,
"steppedLine": true,
"targets": [
{
- "expr": "avg(\n irate(${metric_namespace}_tasks_polling_duration_bucket{instance=~\"${nodename}\", le=\"+Inf\"}[10m])\n - ignoring(le)\n irate(${metric_namespace}_tasks_polling_duration_bucket{instance=~\"${nodename}\", le=\"1.024\"}[10m])\n) by (task_name) > 0",
+ "expr": "irate(${metric_namespace}_tasks_polling_duration_bucket{instance=~\"${nodename}\", le=\"+Inf\"}[10m])\n - ignoring(le)\n irate(${metric_namespace}_tasks_polling_duration_bucket{instance=~\"${nodename}\", le=\"1.024\"}[10m]) > 0",
"interval": "",
"legendFormat": "{{task_name}}",
"refId": "A"
@@ -790,7 +595,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Calls to `Future::poll` that took more than one second (average per node)",
+ "title": "Number of calls to `Future::poll` that took more than one second",
"tooltip": {
"shared": true,
"sort": 2,
@@ -835,11 +640,11 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 49
+ "y": 32
},
"id": 27,
"panels": [],
- "title": "Misc",
+ "title": "Unbounded Channels",
"type": "row"
},
{
@@ -848,13 +653,20 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 24,
"x": 0,
- "y": 50
+ "y": 33
},
"hiddenSeries": false,
"id": 32,
@@ -873,19 +685,21 @@
"linewidth": 1,
"nullPointMode": "null",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "avg(${metric_namespace}_unbounded_channel_len{instance=~\"${nodename}\", action = \"send\"} - ignoring(action) ${metric_namespace}_unbounded_channel_len{instance=~\"${nodename}\", action = \"received\"}) by (entity)",
+ "expr": "(\n ${metric_namespace}_unbounded_channel_len{instance=~\"${nodename}\", action = \"send\"} - ignoring(action) ${metric_namespace}_unbounded_channel_len{instance=~\"${nodename}\", action = \"received\"}\n)\n\n# Fallback if the `received` is null\nor on(instance) ${metric_namespace}_unbounded_channel_len{instance=~\"${nodename}\", action = \"send\"}",
"interval": "",
"legendFormat": "{{entity}}",
"refId": "B"
@@ -895,7 +709,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Unbounded channels size (average per node)",
+ "title": "Unbounded channels size",
"tooltip": {
"shared": true,
"sort": 2,
@@ -938,13 +752,20 @@
"dashLength": 10,
"dashes": false,
"datasource": "$data_source",
+ "fieldConfig": {
+ "defaults": {
+ "custom": {},
+ "links": []
+ },
+ "overrides": []
+ },
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 7,
"w": 24,
"x": 0,
- "y": 57
+ "y": 40
},
"hiddenSeries": false,
"id": 33,
@@ -963,19 +784,21 @@
"linewidth": 1,
"nullPointMode": "null",
"options": {
- "dataLinks": []
+ "alertThreshold": true
},
"percentage": false,
+ "pluginVersion": "7.3.6",
"pointradius": 2,
"points": false,
"renderer": "flot",
+ "repeat": "nodename",
"seriesOverrides": [],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
- "expr": "avg(irate(${metric_namespace}_unbounded_channel_len{instance=~\"${nodename}\", action = \"send\"}[10m])) by (entity)",
+ "expr": "irate(${metric_namespace}_unbounded_channel_len{instance=~\"${nodename}\", action = \"send\"}[10m])",
"interval": "",
"legendFormat": "{{entity}}",
"refId": "B"
@@ -985,7 +808,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
- "title": "Unbounded channels rate (average per node)",
+ "title": "Unbounded channels message sending rate (1s)",
"tooltip": {
"shared": true,
"sort": 2,
@@ -1024,7 +847,7 @@
}
],
"refresh": false,
- "schemaVersion": 22,
+ "schemaVersion": 26,
"style": "dark",
"tags": [],
"templating": {
@@ -1034,9 +857,9 @@
"current": {},
"datasource": "$data_source",
"definition": "${metric_namespace}_process_start_time_seconds",
+ "error": null,
"hide": 0,
- "includeAll": true,
- "index": -1,
+ "includeAll": false,
"label": "Instance filter",
"multi": true,
"name": "nodename",
@@ -1055,15 +878,18 @@
{
"current": {
"value": "${VAR_METRIC_NAMESPACE}",
- "text": "${VAR_METRIC_NAMESPACE}"
+ "text": "${VAR_METRIC_NAMESPACE}",
+ "selected": false
},
+ "error": null,
"hide": 2,
"label": "Prefix of the metrics",
"name": "metric_namespace",
"options": [
{
"value": "${VAR_METRIC_NAMESPACE}",
- "text": "${VAR_METRIC_NAMESPACE}"
+ "text": "${VAR_METRIC_NAMESPACE}",
+ "selected": false
}
],
"query": "${VAR_METRIC_NAMESPACE}",
@@ -1076,6 +902,7 @@
"text": "prometheus.parity-mgmt",
"value": "prometheus.parity-mgmt"
},
+ "error": null,
"hide": 0,
"includeAll": false,
"label": "Source of all the data",
@@ -1108,11 +935,8 @@
"1d"
]
},
- "timezone": "",
+ "timezone": "utc",
"title": "Substrate Service Tasks",
"uid": "3LA6XNqZz",
- "variables": {
- "list": []
- },
- "version": 52
+ "version": 59
}
diff --git a/.maintain/update-copyright.sh b/.maintain/update-copyright.sh
index d48fc3cc979d6..d67cab7c1e152 100755
--- a/.maintain/update-copyright.sh
+++ b/.maintain/update-copyright.sh
@@ -1,15 +1,14 @@
#!/usr/bin/env bash
-SINGLE_DATES=$(grep -lr "// Copyright [0-9]* Parity Technologies (UK) Ltd.")
-RANGE_DATES=$(grep -lr "// Copyright [0-9]*-[0-9]* Parity Technologies (UK) Ltd.")
+SINGLE_DATES=$(grep -lr "// Copyright (C) [0-9]* Parity Technologies (UK) Ltd.")
YEAR=$(date +%Y)
for file in $SINGLE_DATES; do
- FILE_YEAR=$(cat $file | sed -n "s|// Copyright \([[:digit:]][[:digit:]][[:digit:]][[:digit:]]\) Parity Technologies (UK) Ltd.|\1|p")
+ FILE_YEAR=$(cat $file | sed -n "s|// Copyright (C) \([[:digit:]][[:digit:]][[:digit:]][[:digit:]]\) Parity Technologies (UK) Ltd.|\1|p")
if [ $YEAR -ne $FILE_YEAR ]; then
- sed -i -e "s|// Copyright \([[:digit:]][[:digit:]][[:digit:]][[:digit:]]\) Parity Technologies (UK) Ltd.|// Copyright \1-$YEAR Parity Technologies (UK) Ltd.|g" $file
+ sed -i -e "s|// Copyright (C) \([[:digit:]][[:digit:]][[:digit:]][[:digit:]]\) Parity Technologies (UK) Ltd.|// Copyright (C) \1-$YEAR Parity Technologies (UK) Ltd.|g" $file
fi
done
-grep -lr "// Copyright [0-9]*-[0-9]* Parity Technologies (UK) Ltd." |
- xargs sed -i -e "s|// Copyright \([[:digit:]][[:digit:]][[:digit:]][[:digit:]]\)-[[:digit:]][[:digit:]][[:digit:]][[:digit:]] Parity Technologies (UK) Ltd.|// Copyright \1-$YEAR Parity Technologies (UK) Ltd.|g"
+grep -lr "// Copyright (C) [0-9]*-[0-9]* Parity Technologies (UK) Ltd." |
+ xargs sed -i -e "s|// Copyright (C) \([[:digit:]][[:digit:]][[:digit:]][[:digit:]]\)-[[:digit:]][[:digit:]][[:digit:]][[:digit:]] Parity Technologies (UK) Ltd.|// Copyright (C) \1-$YEAR Parity Technologies (UK) Ltd.|g"
diff --git a/Cargo.lock b/Cargo.lock
index 0f3e68a844e30..edbf183e74618 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -12,11 +12,11 @@ dependencies = [
[[package]]
name = "addr2line"
-version = "0.13.0"
+version = "0.14.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b6a2d3371669ab3ca9797670853d61402b03d0b4b9ebf33d677dfa720203072"
+checksum = "a55f82cfe485775d02112886f4169bde0c5894d75e79ead7eafe7e40a25e45f7"
dependencies = [
- "gimli 0.22.0",
+ "gimli",
]
[[package]]
@@ -31,89 +31,69 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331"
dependencies = [
- "generic-array 0.14.3",
+ "generic-array 0.14.4",
]
[[package]]
name = "aes"
-version = "0.4.0"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7001367fde4c768a19d1029f0a8be5abd9308e1119846d5bd9ad26297b8faf5"
+checksum = "dd2bc6d3f370b5666245ff421e231cba4353df936e26986d2918e61a8fd6aef6"
dependencies = [
"aes-soft",
"aesni",
- "block-cipher 0.7.1",
+ "block-cipher",
]
[[package]]
name = "aes-gcm"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86f5007801316299f922a6198d1d09a0bae95786815d066d5880d13f7c45ead1"
+checksum = "0301c9e9c443494d970a07885e8cf3e587bae8356a1d5abd0999068413f7205f"
dependencies = [
"aead",
"aes",
- "block-cipher 0.7.1",
+ "block-cipher",
"ghash",
- "subtle 2.2.3",
+ "subtle 2.4.0",
]
[[package]]
name = "aes-soft"
-version = "0.4.0"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4925647ee64e5056cf231608957ce7c81e12d6d6e316b9ce1404778cc1d35fa7"
+checksum = "63dd91889c49327ad7ef3b500fd1109dbd3c509a03db0d4a9ce413b79f575cb6"
dependencies = [
- "block-cipher 0.7.1",
+ "block-cipher",
"byteorder",
- "opaque-debug 0.2.3",
+ "opaque-debug 0.3.0",
]
[[package]]
name = "aesni"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d050d39b0b7688b3a3254394c3e30a9d66c41dcf9b05b0e2dbdc623f6505d264"
-dependencies = [
- "block-cipher 0.7.1",
- "opaque-debug 0.2.3",
-]
-
-[[package]]
-name = "ahash"
-version = "0.2.19"
+version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29661b60bec623f0586702976ff4d0c9942dcb6723161c2df0eea78455cfedfb"
+checksum = "0a6fe808308bb07d393e2ea47780043ec47683fcf19cf5efc8ca51c50cc8c68a"
dependencies = [
- "const-random",
+ "block-cipher",
+ "opaque-debug 0.3.0",
]
[[package]]
name = "ahash"
-version = "0.3.8"
+version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8fd72866655d1904d6b0997d0b07ba561047d070fbe29de039031c641b61217"
+checksum = "739f4a8db6605981345c5654f3a85b056ce52f37a39d34da03f25bf2151ea16e"
[[package]]
name = "aho-corasick"
-version = "0.7.13"
+version = "0.7.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86"
+checksum = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5"
dependencies = [
"memchr",
]
-[[package]]
-name = "alga"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f823d037a7ec6ea2197046bafd4ae150e6bc36f9ca347404f46a46823fa84f2"
-dependencies = [
- "approx",
- "num-complex",
- "num-traits",
-]
-
[[package]]
name = "ansi_term"
version = "0.11.0"
@@ -134,9 +114,9 @@ dependencies = [
[[package]]
name = "anyhow"
-version = "1.0.31"
+version = "1.0.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85bb70cc08ec97ca5450e6eba421deeea5f172c0fc61f78b5357b2a8e8be195f"
+checksum = "afddf7f520a80dbf76e6f50a35bca42a2331ef227a28b3b6dc5c2e2338d114b1"
[[package]]
name = "approx"
@@ -149,15 +129,9 @@ dependencies = [
[[package]]
name = "arbitrary"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7cb544f1057eaaff4b34f8c4dcf56fc3cd04debd291998405d135017a7c3c0f4"
-
-[[package]]
-name = "arc-swap"
version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d25d88fd6b8041580a654f9d0c581a047baee2b3efee13275f2fc392fc75034"
+checksum = "db55d72333851e17d572bec876e390cd3b11eb1ef53ae821dd9f3b653d2b4569"
[[package]]
name = "arrayref"
@@ -176,9 +150,9 @@ dependencies = [
[[package]]
name = "arrayvec"
-version = "0.5.1"
+version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
+checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
[[package]]
name = "asn1_der"
@@ -201,9 +175,9 @@ dependencies = [
[[package]]
name = "assert_cmd"
-version = "1.0.1"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c88b9ca26f9c16ec830350d309397e74ee9abdfd8eb1f71cb6ecc71a3fc818da"
+checksum = "3dc1679af9a1ab4bea16f228b05d18f8363f8327b1fa8db00d2760cfafc6b61e"
dependencies = [
"doc-comment",
"predicates",
@@ -214,9 +188,9 @@ dependencies = [
[[package]]
name = "assert_matches"
-version = "1.3.0"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7deb0a829ca7bcfaf5da70b073a8d128619259a7be8216a355e23f00763059e5"
+checksum = "695579f0f2520f3774bb40461e5adb066459d4e0af4d59d20175484fb8e9edf1"
[[package]]
name = "async-channel"
@@ -231,53 +205,63 @@ dependencies = [
[[package]]
name = "async-executor"
-version = "1.3.0"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d373d78ded7d0b3fa8039375718cde0aace493f2e34fb60f51cbf567562ca801"
+checksum = "eb877970c7b440ead138f6321a3b5395d6061183af779340b65e20c0fede9146"
dependencies = [
"async-task",
"concurrent-queue",
"fastrand",
"futures-lite",
- "once_cell 1.4.1",
+ "once_cell",
"vec-arena",
]
[[package]]
name = "async-global-executor"
-version = "1.3.0"
+version = "2.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fefeb39da249f4c33af940b779a56723ce45809ef5c54dad84bb538d4ffb6d9e"
+checksum = "9586ec52317f36de58453159d48351bc244bc24ced3effc1fce22f3d48664af6"
dependencies = [
+ "async-channel",
"async-executor",
"async-io",
+ "async-mutex",
+ "blocking",
"futures-lite",
"num_cpus",
- "once_cell 1.4.1",
+ "once_cell",
]
[[package]]
name = "async-io"
-version = "1.1.0"
+version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38628c78a34f111c5a6b98fc87dfc056cd1590b61afe748b145be4623c56d194"
+checksum = "9315f8f07556761c3e48fec2e6b276004acf426e6dc068b2c2251854d65ee0fd"
dependencies = [
- "cfg-if",
"concurrent-queue",
"fastrand",
"futures-lite",
"libc",
"log",
- "once_cell 1.4.1",
+ "nb-connect",
+ "once_cell",
"parking",
"polling",
- "socket2",
"vec-arena",
"waker-fn",
- "wepoll-sys-stjepang",
"winapi 0.3.9",
]
+[[package]]
+name = "async-lock"
+version = "2.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1996609732bde4a9988bc42125f55f2af5f3c36370e27c778d5191a4a1b63bfb"
+dependencies = [
+ "event-listener",
+]
+
[[package]]
name = "async-mutex"
version = "1.4.0"
@@ -287,17 +271,34 @@ dependencies = [
"event-listener",
]
+[[package]]
+name = "async-process"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c8cea09c1fb10a317d1b5af8024eeba256d6554763e85ecd90ff8df31c7bbda"
+dependencies = [
+ "async-io",
+ "blocking",
+ "cfg-if 0.1.10",
+ "event-listener",
+ "futures-lite",
+ "once_cell",
+ "signal-hook",
+ "winapi 0.3.9",
+]
+
[[package]]
name = "async-std"
-version = "1.6.5"
+version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9fa76751505e8df1c7a77762f60486f60c71bbd9b8557f4da6ad47d083732ed"
+checksum = "d9f06685bad74e0570f5213741bea82158279a4103d988e57bfada11ad230341"
dependencies = [
+ "async-channel",
"async-global-executor",
"async-io",
- "async-mutex",
- "blocking",
- "crossbeam-utils",
+ "async-lock",
+ "async-process",
+ "crossbeam-utils 0.8.1",
"futures-channel",
"futures-core",
"futures-io",
@@ -307,8 +308,8 @@ dependencies = [
"log",
"memchr",
"num_cpus",
- "once_cell 1.4.1",
- "pin-project-lite",
+ "once_cell",
+ "pin-project-lite 0.2.4",
"pin-utils",
"slab",
"wasm-bindgen-futures",
@@ -316,32 +317,32 @@ dependencies = [
[[package]]
name = "async-task"
-version = "4.0.2"
+version = "4.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ab27c1aa62945039e44edaeee1dc23c74cc0c303dd5fe0fb462a184f1c3a518"
+checksum = "e91831deabf0d6d7ec49552e489aed63b7456a7a3c46cff62adad428110b0af0"
[[package]]
-name = "async-tls"
-version = "0.10.0"
+name = "async-trait"
+version = "0.1.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d85a97c4a0ecce878efd3f945f119c78a646d8975340bca0398f9bb05c30cc52"
+checksum = "8d3a45e77e34375a7923b1e8febb049bb011f064714a8e17a1a616fef01da13d"
dependencies = [
- "futures-core",
- "futures-io",
- "rustls",
- "webpki",
- "webpki-roots",
+ "proc-macro2",
+ "quote",
+ "syn",
]
[[package]]
-name = "async-trait"
-version = "0.1.37"
+name = "asynchronous-codec"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "caae68055714ff28740f310927e04f2eba76ff580b16fb18ed90073ee71646f7"
+checksum = "fb4401f0a3622dad2e0763fa79e0eb328bc70fb7dccfdd645341f00d671247d6"
dependencies = [
- "proc-macro2",
- "quote",
- "syn",
+ "bytes 1.0.1",
+ "futures-sink",
+ "futures-util",
+ "memchr",
+ "pin-project-lite 0.2.4",
]
[[package]]
@@ -350,7 +351,7 @@ version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3410529e8288c463bedb5930f82833bc0c90e5d2fe639a56582a4d09220b281"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg",
]
[[package]]
@@ -372,41 +373,35 @@ dependencies = [
[[package]]
name = "autocfg"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
-
-[[package]]
-name = "autocfg"
-version = "1.0.0"
+version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
[[package]]
name = "backtrace"
-version = "0.3.50"
+version = "0.3.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46254cf2fdcdf1badb5934448c1bcbe046a56537b3987d96c51a7afc5d03f293"
+checksum = "9d117600f438b1707d4e4ae15d3595657288f8235a0eb593e80ecc98ab34e1bc"
dependencies = [
"addr2line",
- "cfg-if",
+ "cfg-if 1.0.0",
"libc",
"miniz_oxide",
- "object 0.20.0",
+ "object 0.23.0",
"rustc-demangle",
]
[[package]]
-name = "base58"
-version = "0.1.0"
+name = "base-x"
+version = "0.2.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83"
+checksum = "a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b"
[[package]]
-name = "base64"
-version = "0.11.0"
+name = "base58"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
+checksum = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83"
[[package]]
name = "base64"
@@ -438,10 +433,10 @@ checksum = "66c0bb6167449588ff70803f4127f0684f9063097eca5016f37eb52b92c2cf36"
dependencies = [
"bitflags",
"cexpr",
- "cfg-if",
+ "cfg-if 0.1.10",
"clang-sys",
"clap",
- "env_logger",
+ "env_logger 0.7.1",
"lazy_static",
"lazycell",
"log",
@@ -451,22 +446,7 @@ dependencies = [
"regex",
"rustc-hash",
"shlex",
- "which",
-]
-
-[[package]]
-name = "bip39"
-version = "0.6.0-beta.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7059804e226b3ac116519a252d7f5fb985a5ccc0e93255e036a5f7e7283323f4"
-dependencies = [
- "failure",
- "hashbrown 0.1.8",
- "hmac",
- "once_cell 0.1.8",
- "pbkdf2",
- "rand 0.6.5",
- "sha2 0.8.2",
+ "which 3.1.1",
]
[[package]]
@@ -477,25 +457,25 @@ checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
[[package]]
name = "bitvec"
-version = "0.17.4"
+version = "0.20.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41262f11d771fd4a61aa3ce019fca363b4b6c282fca9da2a31186d3965a47a5c"
+checksum = "f5011ffc90248764d7005b0e10c7294f5aa1bd87d9dd7248f4ad475b347c294d"
dependencies = [
- "either",
+ "funty",
"radium",
+ "tap",
+ "wyz",
]
[[package]]
name = "blake2"
-version = "0.9.0"
+version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84ce5b6108f8e154604bd4eb76a2f726066c3464d5a552a4229262a18c9bb471"
+checksum = "10a5720225ef5daecf08657f23791354e1685a8c91a4c60c7f3d3b2892f978f4"
dependencies = [
- "byte-tools",
- "byteorder",
"crypto-mac 0.8.0",
"digest 0.9.0",
- "opaque-debug 0.2.3",
+ "opaque-debug 0.3.0",
]
[[package]]
@@ -510,26 +490,41 @@ dependencies = [
[[package]]
name = "blake2b_simd"
-version = "0.5.10"
+version = "0.5.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a"
+checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587"
dependencies = [
"arrayref",
- "arrayvec 0.5.1",
+ "arrayvec 0.5.2",
"constant_time_eq",
]
[[package]]
name = "blake2s_simd"
-version = "0.5.10"
+version = "0.5.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab9e07352b829279624ceb7c64adb4f585dacdb81d35cafae81139ccd617cf44"
+checksum = "9e461a7034e85b211a4acb57ee2e6730b32912b06c08cc242243c39fc21ae6a2"
dependencies = [
"arrayref",
- "arrayvec 0.5.1",
+ "arrayvec 0.5.2",
"constant_time_eq",
]
+[[package]]
+name = "blake3"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e9ff35b701f3914bdb8fad3368d822c766ef2858b2583198e41639b936f09d3f"
+dependencies = [
+ "arrayref",
+ "arrayvec 0.5.2",
+ "cc",
+ "cfg-if 0.1.10",
+ "constant_time_eq",
+ "crypto-mac 0.8.0",
+ "digest 0.9.0",
+]
+
[[package]]
name = "block-buffer"
version = "0.7.3"
@@ -549,16 +544,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
dependencies = [
"block-padding 0.2.1",
- "generic-array 0.14.3",
-]
-
-[[package]]
-name = "block-cipher"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa136449e765dc7faa244561ccae839c394048667929af599b5d931ebe7b7f10"
-dependencies = [
- "generic-array 0.14.3",
+ "generic-array 0.14.4",
]
[[package]]
@@ -567,7 +553,7 @@ version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f337a3e6da609650eb74e02bc9fac7b735049f7623ab12f2e4c719316fcc7e80"
dependencies = [
- "generic-array 0.14.3",
+ "generic-array 0.14.4",
]
[[package]]
@@ -596,20 +582,20 @@ dependencies = [
"atomic-waker",
"fastrand",
"futures-lite",
- "once_cell 1.4.1",
+ "once_cell",
]
[[package]]
name = "bs58"
-version = "0.3.1"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "476e9cd489f9e121e02ffa6014a8ef220ecb15c05ed23fc34cca13925dc283fb"
+checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3"
[[package]]
name = "bstr"
-version = "0.2.13"
+version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31accafdb70df7871592c058eca3985b71104e15ac32f64706022c58867da931"
+checksum = "473fc6b38233f9af7baa94fb5852dca389e3d95b8e21c8e3719301462c5d9faf"
dependencies = [
"lazy_static",
"memchr",
@@ -628,15 +614,15 @@ dependencies = [
[[package]]
name = "bumpalo"
-version = "3.4.0"
+version = "3.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820"
+checksum = "099e596ef14349721d9016f6b80dd3419ea1bf289ab9b44df8e4dfd3a005d5d9"
[[package]]
name = "byte-slice-cast"
-version = "0.3.5"
+version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0a5e3906bcbf133e33c1d4d95afc664ad37fbdb9f6568d8043e7ea8c27d93d3"
+checksum = "65c1bf4a04a88c54f589125563643d773f3254b5c38571395e2b591c693bbc81"
[[package]]
name = "byte-tools"
@@ -646,9 +632,9 @@ checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
[[package]]
name = "byteorder"
-version = "1.3.4"
+version = "1.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
+checksum = "ae44d1a3d5a19df61dd0c8beb138458ac2a53a7ac09eba97d55592540004306b"
[[package]]
name = "bytes"
@@ -667,21 +653,37 @@ version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
+[[package]]
+name = "bytes"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040"
+
[[package]]
name = "cache-padded"
version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "631ae5198c9be5e753e5cc215e1bd73c2b466a3565173db433f52bb9d3e66dba"
+[[package]]
+name = "cargo-platform"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0226944a63d1bf35a3b5f948dd7c59e263db83695c9e8bffc4037de02e30f1d7"
+dependencies = [
+ "serde",
+]
+
[[package]]
name = "cargo_metadata"
-version = "0.10.1"
+version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "052dbdd9db69a339d5fa9ac87bfe2e1319f709119f0345988a597af82bb1011c"
+checksum = "7714a157da7991e23d90686b9524b9e12e0407a108647f52e9328f4b3d51ac7f"
dependencies = [
- "semver 0.10.0",
+ "cargo-platform",
+ "semver 0.11.0",
+ "semver-parser 0.10.2",
"serde",
- "serde_derive",
"serde_json",
]
@@ -696,9 +698,9 @@ dependencies = [
[[package]]
name = "cc"
-version = "1.0.58"
+version = "1.0.66"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9a06fb2e53271d7c279ec1efea6ab691c35a2ae67ec0d91d7acec0caf13b518"
+checksum = "4c0496836a84f8d0495758516b8621a622beb77c0fed418570e50764093ced48"
dependencies = [
"jobserver",
]
@@ -718,26 +720,32 @@ version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
[[package]]
name = "chacha20"
-version = "0.4.3"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "086c0f07ac275808b7bf9a39f2fd013aae1498be83632814c8c4e0bd53f2dc58"
+checksum = "244fbce0d47e97e8ef2f63b81d5e05882cb518c68531eb33194990d7b7e85845"
dependencies = [
- "stream-cipher 0.4.1",
+ "stream-cipher",
"zeroize",
]
[[package]]
name = "chacha20poly1305"
-version = "0.5.1"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18b0c90556d8e3fec7cf18d84a2f53d27b21288f2fe481b830fadcf809e48205"
+checksum = "9bf18d374d66df0c05cdddd528a7db98f78c28e2519b120855c4f84c5027b1f5"
dependencies = [
"aead",
"chacha20",
"poly1305",
- "stream-cipher 0.4.1",
+ "stream-cipher",
"zeroize",
]
@@ -757,15 +765,46 @@ dependencies = [
[[package]]
name = "chrono"
-version = "0.4.13"
+version = "0.4.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c74d84029116787153e02106bf53e66828452a4b325cc8652b788b5967c0a0b6"
+checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
dependencies = [
"js-sys",
+ "libc",
"num-integer",
"num-traits",
"time",
"wasm-bindgen",
+ "winapi 0.3.9",
+]
+
+[[package]]
+name = "cid"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d88f30b1e74e7063df5711496f3ee6e74a9735d62062242d70cddf77717f18e"
+dependencies = [
+ "multibase",
+ "multihash",
+ "unsigned-varint 0.5.1",
+]
+
+[[package]]
+name = "cipher"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801"
+dependencies = [
+ "generic-array 0.14.4",
+]
+
+[[package]]
+name = "ckb-merkle-mountain-range"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e486fe53bb9f2ca0f58cb60e8679a5354fd6687a839942ef0a75967250289ca6"
+dependencies = [
+ "cfg-if 0.1.10",
]
[[package]]
@@ -781,9 +820,9 @@ dependencies = [
[[package]]
name = "clap"
-version = "2.33.1"
+version = "2.33.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129"
+checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
dependencies = [
"ansi_term 0.11.0",
"atty",
@@ -803,15 +842,6 @@ dependencies = [
"bitflags",
]
-[[package]]
-name = "cloudabi"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4344512281c643ae7638bbabc3af17a11307803ec8f0fcad9fae512a8bf36467"
-dependencies = [
- "bitflags",
-]
-
[[package]]
name = "concurrent-queue"
version = "1.2.2"
@@ -827,39 +857,15 @@ version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8d976903543e0c48546a91908f21588a680a8c8f984df9a5d69feccb2b2a211"
dependencies = [
- "cfg-if",
+ "cfg-if 0.1.10",
"wasm-bindgen",
]
[[package]]
-name = "console_log"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e7871d2947441b0fdd8e2bd1ce2a2f75304f896582c0d572162d48290683c48"
-dependencies = [
- "log",
- "web-sys",
-]
-
-[[package]]
-name = "const-random"
-version = "0.1.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02dc82c12dc2ee6e1ded861cf7d582b46f66f796d1b6c93fa28b911ead95da02"
-dependencies = [
- "const-random-macro",
- "proc-macro-hack",
-]
-
-[[package]]
-name = "const-random-macro"
-version = "0.1.11"
+name = "const_fn"
+version = "0.4.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc757bbb9544aa296c2ae00c679e81f886b37e28e59097defe0cf524306f6685"
-dependencies = [
- "getrandom 0.2.0",
- "proc-macro-hack",
-]
+checksum = "28b9d6de7f49e22cf97ad17fc4036ece69300032f45f78f30b4a4482cdc3f4a6"
[[package]]
name = "constant_time_eq"
@@ -883,46 +889,62 @@ version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac"
+[[package]]
+name = "cpp_demangle"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44919ecaf6f99e8e737bc239408931c9a01e9a6c74814fee8242dd2506b65390"
+dependencies = [
+ "cfg-if 1.0.0",
+ "glob",
+]
+
[[package]]
name = "cpuid-bool"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634"
+[[package]]
+name = "cpuid-bool"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba"
+
[[package]]
name = "cranelift-bforest"
-version = "0.66.0"
+version = "0.69.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8dcc286b052ee24a1e5a222e7c1125e6010ad35b0f248709b9b3737a8fedcfdf"
+checksum = "4066fd63b502d73eb8c5fa6bcab9c7962b05cd580f6b149ee83a8e730d8ce7fb"
dependencies = [
"cranelift-entity",
]
[[package]]
name = "cranelift-codegen"
-version = "0.66.0"
+version = "0.69.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d9badfe36176cb653506091693bc2bb1970c9bddfcd6ec7fac404f7eaec6f38"
+checksum = "1a54e4beb833a3c873a18a8fe735d73d732044004c7539a072c8faa35ccb0c60"
dependencies = [
"byteorder",
"cranelift-bforest",
"cranelift-codegen-meta",
"cranelift-codegen-shared",
"cranelift-entity",
- "gimli 0.21.0",
+ "gimli",
"log",
"regalloc",
"serde",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
"target-lexicon",
"thiserror",
]
[[package]]
name = "cranelift-codegen-meta"
-version = "0.66.0"
+version = "0.69.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c3f460031861e4f4ad510be62b2ae50bba6cc886b598a36f9c0a970feab9598"
+checksum = "c54cac7cacb443658d8f0ff36a3545822613fa202c946c0891897843bc933810"
dependencies = [
"cranelift-codegen-shared",
"cranelift-entity",
@@ -930,36 +952,36 @@ dependencies = [
[[package]]
name = "cranelift-codegen-shared"
-version = "0.66.0"
+version = "0.69.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76ad12409e922e7697cd0bdc7dc26992f64a77c31880dfe5e3c7722f4710206d"
+checksum = "a109760aff76788b2cdaeefad6875a73c2b450be13906524f6c2a81e05b8d83c"
[[package]]
name = "cranelift-entity"
-version = "0.66.0"
+version = "0.69.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d97cdc58972ea065d107872cfb9079f4c92ade78a8af85aaff519a65b5d13f71"
+checksum = "3b044234aa32531f89a08b487630ddc6744696ec04c8123a1ad388de837f5de3"
dependencies = [
"serde",
]
[[package]]
name = "cranelift-frontend"
-version = "0.66.0"
+version = "0.69.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ef419efb4f94ecc02e5d9fbcc910d2bb7f0040e2de570e63a454f883bc891d6"
+checksum = "5452b3e4e97538ee5ef2cc071301c69a86c7adf2770916b9d04e9727096abd93"
dependencies = [
"cranelift-codegen",
"log",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
"target-lexicon",
]
[[package]]
name = "cranelift-native"
-version = "0.66.0"
+version = "0.69.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e69d44d59826eef6794066ac2c0f4ad3975f02d97030c60dbc04e3886adf36e"
+checksum = "f68035c10b2e80f26cc29c32fa824380877f38483504c2a47b54e7da311caaf3"
dependencies = [
"cranelift-codegen",
"raw-cpuid",
@@ -968,40 +990,42 @@ dependencies = [
[[package]]
name = "cranelift-wasm"
-version = "0.66.0"
+version = "0.69.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "979df666b1304624abe99738e9e0e7c7479ee5523ba4b8b237df9ff49996acbb"
+checksum = "a530eb9d1c95b3309deb24c3d179d8b0ba5837ed98914a429787c395f614949d"
dependencies = [
"cranelift-codegen",
"cranelift-entity",
"cranelift-frontend",
+ "itertools 0.9.0",
"log",
"serde",
+ "smallvec 1.6.1",
"thiserror",
- "wasmparser 0.59.0",
+ "wasmparser",
]
[[package]]
name = "crc32fast"
-version = "1.2.0"
+version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
+checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
]
[[package]]
name = "criterion"
-version = "0.3.3"
+version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70daa7ceec6cf143990669a04c7df13391d55fb27bd4079d252fca774ba244d8"
+checksum = "ab327ed7354547cc2ef43cbe20ef68b988e70b4b593cbd66a2a61733123a3d23"
dependencies = [
"atty",
"cast",
"clap",
"criterion-plot",
"csv",
- "itertools 0.9.0",
+ "itertools 0.10.0",
"lazy_static",
"num-traits",
"oorandom",
@@ -1026,30 +1050,65 @@ dependencies = [
"itertools 0.9.0",
]
+[[package]]
+name = "crossbeam-channel"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775"
+dependencies = [
+ "cfg-if 1.0.0",
+ "crossbeam-utils 0.8.1",
+]
+
[[package]]
name = "crossbeam-deque"
version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
dependencies = [
- "crossbeam-epoch",
- "crossbeam-utils",
+ "crossbeam-epoch 0.8.2",
+ "crossbeam-utils 0.7.2",
"maybe-uninit",
]
+[[package]]
+name = "crossbeam-deque"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9"
+dependencies = [
+ "cfg-if 1.0.0",
+ "crossbeam-epoch 0.9.1",
+ "crossbeam-utils 0.8.1",
+]
+
[[package]]
name = "crossbeam-epoch"
version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
dependencies = [
- "autocfg 1.0.0",
- "cfg-if",
- "crossbeam-utils",
+ "autocfg",
+ "cfg-if 0.1.10",
+ "crossbeam-utils 0.7.2",
"lazy_static",
"maybe-uninit",
- "memoffset",
- "scopeguard 1.1.0",
+ "memoffset 0.5.6",
+ "scopeguard",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1aaa739f95311c2c7887a76863f500026092fb1dce0161dab577e559ef3569d"
+dependencies = [
+ "cfg-if 1.0.0",
+ "const_fn",
+ "crossbeam-utils 0.8.1",
+ "lazy_static",
+ "memoffset 0.6.1",
+ "scopeguard",
]
[[package]]
@@ -1058,8 +1117,8 @@ version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
dependencies = [
- "cfg-if",
- "crossbeam-utils",
+ "cfg-if 0.1.10",
+ "crossbeam-utils 0.7.2",
"maybe-uninit",
]
@@ -1069,8 +1128,19 @@ version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
dependencies = [
- "autocfg 1.0.0",
- "cfg-if",
+ "autocfg",
+ "cfg-if 0.1.10",
+ "lazy_static",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "02d96d1e189ef58269ebe5b97953da3274d83a93af647c2ddd6f9dab28cedb8d"
+dependencies = [
+ "autocfg",
+ "cfg-if 1.0.0",
"lazy_static",
]
@@ -1096,15 +1166,15 @@ version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab"
dependencies = [
- "generic-array 0.14.3",
- "subtle 2.2.3",
+ "generic-array 0.14.4",
+ "subtle 2.4.0",
]
[[package]]
name = "csv"
-version = "1.1.3"
+version = "1.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00affe7f6ab566df61b4be3ce8cf16bc2576bca0963ceb0955e45d514bf9a279"
+checksum = "f9d58633299b24b515ac72a3f869f8b91306a3cec616a602843a383acd6f9e97"
dependencies = [
"bstr",
"csv-core",
@@ -1133,9 +1203,9 @@ dependencies = [
[[package]]
name = "ctor"
-version = "0.1.15"
+version = "0.1.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39858aa5bac06462d4dd4b9164848eb81ffc4aa5c479746393598fd193afa227"
+checksum = "10bcb9d7dcbf7002aaffbb53eac22906b64cdcc127971dcc387d8eb7c95d5560"
dependencies = [
"quote",
"syn",
@@ -1154,41 +1224,61 @@ dependencies = [
[[package]]
name = "curve25519-dalek"
-version = "2.1.0"
+version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d85653f070353a16313d0046f173f70d1aadd5b42600a14de626f0dfb3473a5"
+checksum = "434e1720189a637d44fe464f4df1e6eb900b4835255b14354497c78af37d9bb8"
dependencies = [
"byteorder",
"digest 0.8.1",
"rand_core 0.5.1",
- "subtle 2.2.3",
+ "subtle 2.4.0",
"zeroize",
]
[[package]]
name = "curve25519-dalek"
-version = "3.0.0"
+version = "3.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8492de420e9e60bc9a1d66e2dbb91825390b738a388606600663fc529b4b307"
+checksum = "f627126b946c25a4638eec0ea634fc52506dea98db118aae985118ce7c3d723f"
dependencies = [
"byteorder",
"digest 0.9.0",
"rand_core 0.5.1",
- "subtle 2.2.3",
+ "subtle 2.4.0",
"zeroize",
]
[[package]]
name = "data-encoding"
-version = "2.2.1"
+version = "2.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57"
+
+[[package]]
+name = "data-encoding-macro"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0a94feec3d2ba66c0b6621bca8bc6f68415b1e5c69af3586fdd0af9fd9f29b17"
+dependencies = [
+ "data-encoding",
+ "data-encoding-macro-internal",
+]
+
+[[package]]
+name = "data-encoding-macro-internal"
+version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72aa14c04dfae8dd7d8a2b1cb7ca2152618cd01336dbfe704b8dcbf8d41dbd69"
+checksum = "f0f83e699727abca3c56e187945f303389590305ab2f0185ea445aa66e8d5f2a"
+dependencies = [
+ "data-encoding",
+ "syn",
+]
[[package]]
name = "derive_more"
-version = "0.99.9"
+version = "0.99.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "298998b1cf6b5b2c8a7b023dfd45821825ce3ba8a8af55c921a0e734e4653f76"
+checksum = "41cb0e6161ad61ed084a36ba71fbba9e3ac5aee3606fb607fe08da6acbcf3d8c"
dependencies = [
"proc-macro2",
"quote",
@@ -1216,19 +1306,28 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
dependencies = [
- "generic-array 0.14.3",
+ "generic-array 0.14.4",
]
[[package]]
name = "directories"
-version = "2.0.2"
+version = "3.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "551a778172a450d7fc12e629ca3b0428d00f6afa9a43da1b630d54604e97371c"
+checksum = "f8fed639d60b58d0f53498ab13d26f621fd77569cc6edb031f4cc36a2ad9da0f"
dependencies = [
- "cfg-if",
"dirs-sys",
]
+[[package]]
+name = "directories-next"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc"
+dependencies = [
+ "cfg-if 1.0.0",
+ "dirs-sys-next",
+]
+
[[package]]
name = "dirs-sys"
version = "0.3.5"
@@ -1236,7 +1335,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e93d7f5705de3e49895a2b5e0b8855a1c27f080192ae9c32a6432d50741a57a"
dependencies = [
"libc",
- "redox_users",
+ "redox_users 0.3.5",
+ "winapi 0.3.9",
+]
+
+[[package]]
+name = "dirs-sys-next"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
+dependencies = [
+ "libc",
+ "redox_users 0.4.0",
"winapi 0.3.9",
]
@@ -1285,15 +1395,15 @@ dependencies = [
[[package]]
name = "dyn-clone"
-version = "1.0.2"
+version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c53dc3a653e0f64081026e4bf048d48fec9fce90c66e8326ca7292df0ff2d82"
+checksum = "ee2626afccd7561a06cf1367e2950c4718ea04565e20fb5029b6c7d8ad09abcf"
[[package]]
name = "ed25519"
-version = "1.0.1"
+version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf038a7b6fd7ef78ad3348b63f3a17550877b0e28f8d68bcc94894d1412158bc"
+checksum = "37c66a534cbb46ab4ea03477eae19d5c22c01da8258030280b7bd9d8433fb6ef"
dependencies = [
"signature",
]
@@ -1304,19 +1414,19 @@ version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d"
dependencies = [
- "curve25519-dalek 3.0.0",
+ "curve25519-dalek 3.0.2",
"ed25519",
"rand 0.7.3",
"serde",
- "sha2 0.9.1",
+ "sha2 0.9.3",
"zeroize",
]
[[package]]
name = "either"
-version = "1.6.0"
+version = "1.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd56b59865bce947ac5958779cfa508f6c3b9497cc762b7e24a12d11ccde2c4f"
+checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
[[package]]
name = "enumflags2"
@@ -1345,7 +1455,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
dependencies = [
"atty",
- "humantime",
+ "humantime 1.3.0",
+ "log",
+ "regex",
+ "termcolor",
+]
+
+[[package]]
+name = "env_logger"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26ecb66b4bdca6c1409b40fb255eefc2bd4f6d135dab3c3124f80ffa2a9661e"
+dependencies = [
+ "atty",
+ "humantime 2.1.0",
"log",
"regex",
"termcolor",
@@ -1359,18 +1482,18 @@ checksum = "6576a1755ddffd988788025e75bce9e74b018f7cc226198fe931d077911c6d7e"
[[package]]
name = "erased-serde"
-version = "0.3.12"
+version = "0.3.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ca8b296792113e1500fd935ae487be6e00ce318952a6880555554824d6ebf38"
+checksum = "0465971a8cc1fa2455c8465aaa377131e1f1cf4983280f474a13e68793aa770c"
dependencies = [
"serde",
]
[[package]]
name = "errno"
-version = "0.2.6"
+version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6eab5ee3df98a279d9b316b1af6ac95422127b1290317e6d18c1743c99418b01"
+checksum = "fa68f2fb9cae9d37c9b2b3584aba698a2e97f72d7aef7b9f7aa71d8b54ce46fe"
dependencies = [
"errno-dragonfly",
"libc",
@@ -1387,92 +1510,19 @@ dependencies = [
"libc",
]
-[[package]]
-name = "ethbloom"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71a6567e6fd35589fea0c63b94b4cf2e55573e413901bdbe60ab15cf0e25e5df"
-dependencies = [
- "crunchy",
- "fixed-hash",
- "impl-rlp",
- "impl-serde",
- "tiny-keccak",
-]
-
-[[package]]
-name = "ethereum-types"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "473aecff686bd8e7b9db0165cbbb53562376b39bf35b427f0c60446a9e1634b0"
-dependencies = [
- "ethbloom",
- "fixed-hash",
- "impl-rlp",
- "impl-serde",
- "primitive-types",
- "uint",
-]
-
[[package]]
name = "event-listener"
version = "2.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f7531096570974c3a9dcf9e4b8e1cede1ec26cf5046219fb3b9d897503b9be59"
-[[package]]
-name = "evm"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68224b0aa788720ef0c8a23030a4412a021ed73df069a922bee8f0db9ed617e2"
-dependencies = [
- "evm-core",
- "evm-gasometer",
- "evm-runtime",
- "primitive-types",
- "rlp",
- "serde",
- "sha3 0.8.2",
-]
-
-[[package]]
-name = "evm-core"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a040378759577447945c89da1b07d6e33fda32a97a104afe0ec3fa1c382949d"
-dependencies = [
- "primitive-types",
-]
-
-[[package]]
-name = "evm-gasometer"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7bb5bc051afad6bb0735c82b46656bbdfac41917861307a608b1404a546fec42"
-dependencies = [
- "evm-core",
- "evm-runtime",
- "primitive-types",
-]
-
-[[package]]
-name = "evm-runtime"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7410f5677a52203d3fca02b0eb8f96f9799f3a45cff82946a8ed28379e6b1b04"
-dependencies = [
- "evm-core",
- "primitive-types",
- "sha3 0.8.2",
-]
-
[[package]]
name = "exit-future"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e43f2f1833d64e33f15592464d6fdd70f349dda7b1a53088eb83cd94014008c5"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
]
[[package]]
@@ -1529,38 +1579,38 @@ dependencies = [
[[package]]
name = "file-per-thread-logger"
-version = "0.1.3"
+version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b3937f028664bd0e13df401ba49a4567ccda587420365823242977f06609ed1"
+checksum = "4fdbe0d94371f9ce939b555dd342d0686cc4c0cadbcd4b61d70af5ff97eb4126"
dependencies = [
- "env_logger",
+ "env_logger 0.7.1",
"log",
]
[[package]]
name = "finality-grandpa"
-version = "0.12.3"
+version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8feb87a63249689640ac9c011742c33139204e3c134293d3054022276869133b"
+checksum = "2cd795898c348a8ec9edc66ec9e014031c764d4c88cc26d09b492cd93eb41339"
dependencies = [
"either",
- "futures 0.3.5",
- "futures-timer 2.0.2",
+ "futures 0.3.12",
+ "futures-timer 3.0.2",
"log",
"num-traits",
"parity-scale-codec",
- "parking_lot 0.9.0",
- "rand 0.6.5",
+ "parking_lot 0.11.1",
+ "rand 0.8.3",
]
[[package]]
name = "fixed-hash"
-version = "0.6.1"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11498d382790b7a8f2fd211780bec78619bba81cdad3a283997c0c41f836759c"
+checksum = "cfcf0ed7fe52a17a03854ec54a9f76d6d84508d1c0e66bc1793301c73fc8493c"
dependencies = [
"byteorder",
- "rand 0.7.3",
+ "rand 0.8.3",
"rustc-hex",
"static_assertions",
]
@@ -1573,11 +1623,11 @@ checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d"
[[package]]
name = "flate2"
-version = "1.0.16"
+version = "1.0.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68c90b0fc46cf89d227cc78b40e494ff81287a92dd07631e5af0d06fe3cf885e"
+checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"crc32fast",
"libc",
"libz-sys",
@@ -1592,21 +1642,32 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
[[package]]
name = "fork-tree"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
]
+[[package]]
+name = "form_urlencoded"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ece68d15c92e84fa4f19d3780f1294e5ca82a78a6d515f1efaabcc144688be00"
+dependencies = [
+ "matches",
+ "percent-encoding 2.1.0",
+]
+
[[package]]
name = "frame-benchmarking"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
"hex-literal",
"linregress",
"parity-scale-codec",
- "paste 0.1.18",
+ "paste 1.0.4",
+ "serde",
"sp-api",
"sp-io",
"sp-runtime",
@@ -1617,8 +1678,9 @@ dependencies = [
[[package]]
name = "frame-benchmarking-cli"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
+ "Inflector",
"chrono",
"frame-benchmarking",
"handlebars",
@@ -1638,7 +1700,7 @@ dependencies = [
[[package]]
name = "frame-executive"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -1658,7 +1720,7 @@ dependencies = [
[[package]]
name = "frame-metadata"
-version = "12.0.0"
+version = "13.0.0"
dependencies = [
"parity-scale-codec",
"serde",
@@ -1668,7 +1730,7 @@ dependencies = [
[[package]]
name = "frame-support"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"bitflags",
"frame-metadata",
@@ -1676,19 +1738,20 @@ dependencies = [
"frame-system",
"impl-trait-for-tuples",
"log",
- "once_cell 1.4.1",
+ "once_cell",
"parity-scale-codec",
"parity-util-mem",
- "paste 0.1.18",
+ "paste 1.0.4",
"pretty_assertions",
"serde",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
"sp-api",
"sp-arithmetic",
"sp-core",
"sp-inherents",
"sp-io",
"sp-runtime",
+ "sp-staking",
"sp-state-machine",
"sp-std",
"sp-tracing",
@@ -1697,8 +1760,9 @@ dependencies = [
[[package]]
name = "frame-support-procedural"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
+ "Inflector",
"frame-support-procedural-tools",
"proc-macro2",
"quote",
@@ -1707,7 +1771,7 @@ dependencies = [
[[package]]
name = "frame-support-procedural-tools"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support-procedural-tools-derive",
"proc-macro-crate",
@@ -1718,7 +1782,7 @@ dependencies = [
[[package]]
name = "frame-support-procedural-tools-derive"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"proc-macro2",
"quote",
@@ -1727,10 +1791,11 @@ dependencies = [
[[package]]
name = "frame-support-test"
-version = "2.0.0"
+version = "2.0.1"
dependencies = [
"frame-metadata",
"frame-support",
+ "frame-system",
"parity-scale-codec",
"pretty_assertions",
"rustversion",
@@ -1746,7 +1811,7 @@ dependencies = [
[[package]]
name = "frame-system"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"criterion",
"frame-support",
@@ -1764,7 +1829,7 @@ dependencies = [
[[package]]
name = "frame-system-benchmarking"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -1779,7 +1844,7 @@ dependencies = [
[[package]]
name = "frame-system-rpc-runtime-api"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -1787,31 +1852,21 @@ dependencies = [
[[package]]
name = "fs-swap"
-version = "0.2.4"
+version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "921d332c89b3b61a826de38c61ee5b6e02c56806cade1b0e5d81bd71f57a71bb"
+checksum = "5839fda247e24ca4919c87c71dd5ca658f1f39e4f06829f80e3f15c3bafcfc2c"
dependencies = [
"lazy_static",
"libc",
- "libloading",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "fs2"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213"
-dependencies = [
- "libc",
+ "libloading",
"winapi 0.3.9",
]
[[package]]
name = "fs_extra"
-version = "1.1.0"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674"
+checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394"
[[package]]
name = "fuchsia-cprng"
@@ -1835,17 +1890,23 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+[[package]]
+name = "funty"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7"
+
[[package]]
name = "futures"
-version = "0.1.29"
+version = "0.1.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef"
+checksum = "4c7e4c2612746b0df8fed4ce0c69156021b704c9aefa360311c04e6e9e002eed"
[[package]]
name = "futures"
-version = "0.3.5"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e05b85ec287aac0dc34db7d4a569323df697f9c55b99b15d6b4ef8cde49f613"
+checksum = "da9052a1a50244d8d5aa9bf55cbc2fb6f357c86cc52e46c62ed390a7180cf150"
dependencies = [
"futures-channel",
"futures-core",
@@ -1858,34 +1919,19 @@ dependencies = [
[[package]]
name = "futures-channel"
-version = "0.3.5"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f366ad74c28cca6ba456d95e6422883cfb4b252a83bed929c83abfdbbf2967d5"
+checksum = "f2d31b7ec7efab6eefc7c57233bb10b847986139d88cc2f5a02a1ae6871a1846"
dependencies = [
"futures-core",
"futures-sink",
]
-[[package]]
-name = "futures-channel-preview"
-version = "0.3.0-alpha.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5e5f4df964fa9c1c2f8bddeb5c3611631cacd93baf810fc8bb2fb4b495c263a"
-dependencies = [
- "futures-core-preview",
-]
-
[[package]]
name = "futures-core"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59f5fff90fd5d971f936ad674802482ba441b6f09ba5e15fd8b39145582ca399"
-
-[[package]]
-name = "futures-core-preview"
-version = "0.3.0-alpha.19"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b35b6263fb1ef523c3056565fa67b1d16f0a8604ff12b11b08c25f28a734c60a"
+checksum = "79e5145dde8da7d1b3892dad07a9c98fc04bc39892b1ecc9692cf53e2b780a65"
[[package]]
name = "futures-cpupool"
@@ -1893,7 +1939,7 @@ version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
dependencies = [
- "futures 0.1.29",
+ "futures 0.1.30",
"num_cpus",
]
@@ -1903,21 +1949,21 @@ version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fdcef58a173af8148b182684c9f2d5250875adbcaff7b5794073894f9d8634a9"
dependencies = [
- "futures 0.1.29",
- "futures 0.3.5",
+ "futures 0.1.30",
+ "futures 0.3.12",
"lazy_static",
"log",
"parking_lot 0.9.0",
- "pin-project 0.4.22",
+ "pin-project 0.4.27",
"serde",
"serde_json",
]
[[package]]
name = "futures-executor"
-version = "0.3.5"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10d6bb888be1153d3abeb9006b11b02cf5e9b209fda28693c31ae1e4e012e314"
+checksum = "e9e59fdc009a4b3096bf94f740a0f2424c082521f20a9b08c5c07c48d90fd9b9"
dependencies = [
"futures-core",
"futures-task",
@@ -1927,30 +1973,30 @@ dependencies = [
[[package]]
name = "futures-io"
-version = "0.3.5"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de27142b013a8e869c14957e6d2edeef89e97c289e69d042ee3a49acd8b51789"
+checksum = "28be053525281ad8259d47e4de5de657b25e7bac113458555bb4b70bc6870500"
[[package]]
name = "futures-lite"
-version = "1.11.1"
+version = "1.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "381a7ad57b1bad34693f63f6f377e1abded7a9c85c9d3eb6771e11c60aaadab9"
+checksum = "b4481d0cd0de1d204a4fa55e7d45f07b1d958abcb06714b3446438e2eff695fb"
dependencies = [
"fastrand",
"futures-core",
"futures-io",
"memchr",
"parking",
- "pin-project-lite",
+ "pin-project-lite 0.2.4",
"waker-fn",
]
[[package]]
name = "futures-macro"
-version = "0.3.5"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0b5a30a4328ab5473878237c447333c093297bded83a4983d10f4deea240d39"
+checksum = "c287d25add322d9f9abdcdc5927ca398917996600182178774032e9f8258fedd"
dependencies = [
"proc-macro-hack",
"proc-macro2",
@@ -1958,19 +2004,30 @@ dependencies = [
"syn",
]
+[[package]]
+name = "futures-rustls"
+version = "0.21.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3a1387e07917c711fb4ee4f48ea0adb04a3c9739e53ef85bf43ae1edc2937a8b"
+dependencies = [
+ "futures-io",
+ "rustls 0.19.0",
+ "webpki",
+]
+
[[package]]
name = "futures-sink"
-version = "0.3.5"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f2032893cb734c7a05d85ce0cc8b8c4075278e93b24b66f9de99d6eb0fa8acc"
+checksum = "caf5c69029bda2e743fddd0582d1083951d65cc9539aebf8812f36c3491342d6"
[[package]]
name = "futures-task"
-version = "0.3.5"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdb66b5f09e22019b1ab0830f7785bcea8e7a42148683f99214f73f8ec21a626"
+checksum = "13de07eb8ea81ae445aca7b69f5f7bf15d7bf4912d8ca37d6645c77ae8a58d86"
dependencies = [
- "once_cell 1.4.1",
+ "once_cell",
]
[[package]]
@@ -1991,11 +2048,11 @@ dependencies = [
[[package]]
name = "futures-util"
-version = "0.3.5"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8764574ff08b701a084482c3c7031349104b07ac897393010494beaa18ce32c6"
+checksum = "632a8cd0f2a4b3fdea1657f08bde063848c3bd00f9bbf6e256b8be78802e624b"
dependencies = [
- "futures 0.1.29",
+ "futures 0.1.30",
"futures-channel",
"futures-core",
"futures-io",
@@ -2003,37 +2060,13 @@ dependencies = [
"futures-sink",
"futures-task",
"memchr",
- "pin-project 0.4.22",
+ "pin-project-lite 0.2.4",
"pin-utils",
"proc-macro-hack",
"proc-macro-nested",
"slab",
]
-[[package]]
-name = "futures-util-preview"
-version = "0.3.0-alpha.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ce968633c17e5f97936bd2797b6e38fb56cf16a7422319f7ec2e30d3c470e8d"
-dependencies = [
- "futures-channel-preview",
- "futures-core-preview",
- "pin-utils",
- "slab",
-]
-
-[[package]]
-name = "futures_codec"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce54d63f8b0c75023ed920d46fd71d0cbbb830b0ee012726b5b4f506fb6dea5b"
-dependencies = [
- "bytes 0.5.6",
- "futures 0.3.5",
- "memchr",
- "pin-project 0.4.22",
-]
-
[[package]]
name = "gcc"
version = "0.3.55"
@@ -2051,9 +2084,18 @@ dependencies = [
[[package]]
name = "generic-array"
-version = "0.14.3"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ed1e761351b56f54eb9dcd0cfaca9fd0daecf93918e1cfc01c8a3d26ee7adcd"
+dependencies = [
+ "typenum",
+]
+
+[[package]]
+name = "generic-array"
+version = "0.14.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60fb4bb6bba52f78a471264d9a3b7d026cc0af47b22cd2cffbc0b787ca003e63"
+checksum = "501466ecc8a30d1d3b7fc9229b122b2ce8ed6e9d9223f1138d4babb253e51817"
dependencies = [
"typenum",
"version_check",
@@ -2061,53 +2103,51 @@ dependencies = [
[[package]]
name = "getrandom"
-version = "0.1.14"
+version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
+checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
+ "js-sys",
"libc",
- "wasi",
+ "wasi 0.9.0+wasi-snapshot-preview1",
"wasm-bindgen",
]
[[package]]
name = "getrandom"
-version = "0.2.0"
+version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee8025cf36f917e6a52cce185b7c7177689b838b7ec138364e50cc2277a56cf4"
+checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
+ "js-sys",
"libc",
- "wasi",
+ "wasi 0.10.0+wasi-snapshot-preview1",
+ "wasm-bindgen",
]
[[package]]
name = "ghash"
-version = "0.3.0"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6e27f0689a6e15944bdce7e45425efb87eaa8ab0c6e87f11d0987a9133e2531"
+checksum = "97304e4cd182c3846f7575ced3890c53012ce534ad9114046b0a9e00bb30a375"
dependencies = [
+ "opaque-debug 0.3.0",
"polyval",
]
[[package]]
name = "gimli"
-version = "0.21.0"
+version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcc8e0c9bce37868955864dbecd2b1ab2bdf967e6f28066d65aaac620444b65c"
+checksum = "f6503fe142514ca4799d4c26297c4248239fe8838d827db6bd6065c6ed29a6ce"
dependencies = [
"fallible-iterator",
"indexmap",
"stable_deref_trait",
]
-[[package]]
-name = "gimli"
-version = "0.22.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aaf91faf136cb47367fa430cd46e37a788775e7fa104f8b4bcb3861dc389b724"
-
[[package]]
name = "glob"
version = "0.3.0"
@@ -2116,9 +2156,9 @@ checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
[[package]]
name = "globset"
-version = "0.4.5"
+version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ad1da430bd7281dde2576f44c84cc3f0f7b475e7202cd503042dff01a8c8120"
+checksum = "c152169ef1e421390738366d2f796655fec62621dabbd0fd476f905934061e4a"
dependencies = [
"aho-corasick",
"bstr",
@@ -2149,7 +2189,7 @@ dependencies = [
"byteorder",
"bytes 0.4.12",
"fnv",
- "futures 0.1.29",
+ "futures 0.1.30",
"http 0.1.21",
"indexmap",
"log",
@@ -2160,34 +2200,35 @@ dependencies = [
[[package]]
name = "h2"
-version = "0.2.6"
+version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "993f9e0baeed60001cf565546b0d3dbe6a6ad23f2bd31644a133c641eccf6d53"
+checksum = "5e4728fd124914ad25e99e3d15a9361a879f6620f63cb56bbb08f95abb97a535"
dependencies = [
"bytes 0.5.6",
"fnv",
"futures-core",
"futures-sink",
"futures-util",
- "http 0.2.1",
+ "http 0.2.3",
"indexmap",
"slab",
- "tokio 0.2.22",
+ "tokio 0.2.25",
"tokio-util",
"tracing",
+ "tracing-futures",
]
[[package]]
name = "half"
-version = "1.6.0"
+version = "1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d36fab90f82edc3c747f9d438e06cf0a491055896f2a279638bb5beed6c40177"
+checksum = "62aca2aba2d62b4a7f5b33f3712cb1b0692779a56fb510499d5c0aa594daeaf3"
[[package]]
name = "handlebars"
-version = "3.5.0"
+version = "3.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcd1b5399b9884f9ae18b5d4105d180720c8f602aeb73d3ceae9d6b1d13a5fa7"
+checksum = "964d0e99a61fe9b1b347389b77ebf8b7e1587b70293676aaca7d27e59b9073b2"
dependencies = [
"log",
"pest",
@@ -2214,48 +2255,27 @@ dependencies = [
[[package]]
name = "hashbrown"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da"
-dependencies = [
- "byteorder",
- "scopeguard 0.3.3",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e6073d0ca812575946eb5f35ff68dbe519907b25c42530389ff946dc84c6ead"
-dependencies = [
- "ahash 0.2.19",
- "autocfg 0.1.7",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.8.1"
+version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34f595585f103464d8d2f6e9864682d74c1601fed5e07d62b1c9058dba8246fb"
+checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04"
dependencies = [
- "ahash 0.3.8",
- "autocfg 1.0.0",
+ "ahash",
]
[[package]]
name = "heck"
-version = "0.3.1"
+version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
+checksum = "87cbf45460356b7deeb5e3415b5563308c0a9b057c85e12b06ad551f98d0a6ac"
dependencies = [
"unicode-segmentation",
]
[[package]]
name = "hermit-abi"
-version = "0.1.15"
+version = "0.1.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9"
+checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c"
dependencies = [
"libc",
]
@@ -2288,6 +2308,16 @@ dependencies = [
"digest 0.8.1",
]
+[[package]]
+name = "hmac"
+version = "0.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840"
+dependencies = [
+ "crypto-mac 0.8.0",
+ "digest 0.9.0",
+]
+
[[package]]
name = "hmac-drbg"
version = "0.2.0"
@@ -2296,14 +2326,14 @@ checksum = "c6e570451493f10f6581b48cdd530413b63ea9e780f544bfd3bdcaa0d89d1a7b"
dependencies = [
"digest 0.8.1",
"generic-array 0.12.3",
- "hmac",
+ "hmac 0.7.1",
]
[[package]]
name = "honggfuzz"
-version = "0.5.49"
+version = "0.5.52"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "832bac18a82ec7d6c21887daa8616b238fe90d5d5e762d0d4b9372cdaa9e097f"
+checksum = "ead88897bcad1c396806d6ccba260a0363e11da997472e9e19ab9889969083a2"
dependencies = [
"arbitrary",
"lazy_static",
@@ -2323,11 +2353,11 @@ dependencies = [
[[package]]
name = "http"
-version = "0.2.1"
+version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28d569972648b2c512421b5f2a405ad6ac9666547189d0c5477a3f200f3e02f9"
+checksum = "7245cd7449cc792608c3c8a9eaf69bd4eabbabf802713748fd739c98b82f0747"
dependencies = [
- "bytes 0.5.6",
+ "bytes 1.0.1",
"fnv",
"itoa",
]
@@ -2339,7 +2369,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6741c859c1b2463a423a1dbce98d418e6c3c3fc720fb0d45528657320920292d"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"http 0.1.21",
"tokio-buf",
]
@@ -2351,7 +2381,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "13d5ff830006f7646652e057693569bfe0d51760c0085a071769d142a205111b"
dependencies = [
"bytes 0.5.6",
- "http 0.2.1",
+ "http 0.2.3",
]
[[package]]
@@ -2360,6 +2390,12 @@ version = "1.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
+[[package]]
+name = "httpdate"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47"
+
[[package]]
name = "humantime"
version = "1.3.0"
@@ -2369,6 +2405,12 @@ dependencies = [
"quick-error 1.2.3",
]
+[[package]]
+name = "humantime"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
+
[[package]]
name = "hyper"
version = "0.12.35"
@@ -2376,7 +2418,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9dbe6ed1438e1f8ad955a4701e9a944938e9519f6888d12d8558b645e247d5f6"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"futures-cpupool",
"h2 0.1.26",
"http 0.1.21",
@@ -2390,7 +2432,7 @@ dependencies = [
"time",
"tokio 0.1.22",
"tokio-buf",
- "tokio-executor 0.1.10",
+ "tokio-executor",
"tokio-io",
"tokio-reactor",
"tokio-tcp",
@@ -2401,23 +2443,23 @@ dependencies = [
[[package]]
name = "hyper"
-version = "0.13.7"
+version = "0.13.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e68a8dd9716185d9e64ea473ea6ef63529252e3e27623295a0378a19665d5eb"
+checksum = "f6ad767baac13b44d4529fcf58ba2cd0995e36e7b435bc5b039de6f47e880dbf"
dependencies = [
"bytes 0.5.6",
"futures-channel",
"futures-core",
"futures-util",
- "h2 0.2.6",
- "http 0.2.1",
+ "h2 0.2.7",
+ "http 0.2.3",
"http-body 0.3.1",
"httparse",
+ "httpdate",
"itoa",
- "pin-project 0.4.22",
+ "pin-project 1.0.4",
"socket2",
- "time",
- "tokio 0.2.22",
+ "tokio 0.2.25",
"tower-service",
"tracing",
"want 0.3.0",
@@ -2432,11 +2474,11 @@ dependencies = [
"bytes 0.5.6",
"ct-logs",
"futures-util",
- "hyper 0.13.7",
+ "hyper 0.13.9",
"log",
- "rustls",
+ "rustls 0.18.1",
"rustls-native-certs",
- "tokio 0.2.22",
+ "tokio 0.2.25",
"tokio-rustls",
"webpki",
]
@@ -2465,9 +2507,9 @@ dependencies = [
[[package]]
name = "if-addrs"
-version = "0.6.4"
+version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f12906406f12abf5569643c46b29aec78313dc1537b17dd5c5250169790c4db9"
+checksum = "28538916eb3f3976311f5dfbe67b5362d0add1293d0a9cad17debf86f8e3aa48"
dependencies = [
"if-addrs-sys",
"libc",
@@ -2476,30 +2518,37 @@ dependencies = [
[[package]]
name = "if-addrs-sys"
-version = "0.3.1"
+version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e2556f16544202bcfe0aa5d20a01a6b815f736b136b3ad76dc547ee6b5bb1df"
+checksum = "de74b9dd780476e837e5eb5ab7c88b49ed304126e412030a0adba99c8efe79ea"
dependencies = [
"cc",
"libc",
]
[[package]]
-name = "impl-codec"
-version = "0.4.2"
+name = "if-watch"
+version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1be51a921b067b0eaca2fad532d9400041561aa922221cc65f95a85641c6bf53"
+checksum = "97b8538953a3f0d0d3868f0a706eb4273535e10d72acb5c82c1c23ae48835c85"
dependencies = [
- "parity-scale-codec",
+ "async-io",
+ "futures 0.3.12",
+ "futures-lite",
+ "if-addrs",
+ "ipnet",
+ "libc",
+ "log",
+ "winapi 0.3.9",
]
[[package]]
-name = "impl-rlp"
-version = "0.2.1"
+name = "impl-codec"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f7a72f11830b52333f36e3b09a288333888bf54380fd0ac0790a3c31ab0f3c5"
+checksum = "df170efa359aebdd5cb7fe78edcc67107748e4737bdca8a8fb40d15ea7a877ed"
dependencies = [
- "rlp",
+ "parity-scale-codec",
]
[[package]]
@@ -2513,9 +2562,9 @@ dependencies = [
[[package]]
name = "impl-trait-for-tuples"
-version = "0.1.3"
+version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef5550a42e3740a0e71f909d4c861056a284060af885ae7aa6242820f920d9d"
+checksum = "d5dacb10c5b3bb92d46ba347505a9041e676bb20ad220101326bffb0c93031ee"
dependencies = [
"proc-macro2",
"quote",
@@ -2524,26 +2573,35 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "1.5.0"
+version = "1.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b88cd59ee5f71fea89a62248fc8f387d44400cefe05ef548466d61ced9029a7"
+checksum = "4fb1fa934250de4de8aef298d81c729a7d33d8c239daa3a7575e6b92bfc7313b"
dependencies = [
- "autocfg 1.0.0",
- "hashbrown 0.8.1",
+ "autocfg",
+ "hashbrown",
"serde",
]
[[package]]
name = "instant"
-version = "0.1.6"
+version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b141fdc7836c525d4d594027d318c84161ca17aaf8113ab1f81ab93ae897485"
+checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec"
+dependencies = [
+ "cfg-if 1.0.0",
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
[[package]]
name = "integer-sqrt"
-version = "0.1.3"
+version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f65877bf7d44897a473350b1046277941cee20b263397e90869c50b6e766088b"
+checksum = "276ec31bcb4a9ee45f58bec6f9ec700ae4cf4f4f8f2fa7e06cb406bd5ffdd770"
+dependencies = [
+ "num-traits",
+]
[[package]]
name = "intervalier"
@@ -2551,7 +2609,7 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "64fa110ec7b8f493f416eed552740d10e7030ad5f63b2308f82c9608ec2df275"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 2.0.2",
]
@@ -2578,27 +2636,27 @@ checksum = "47be2f14c678be2fdcab04ab1171db51b2762ce6f0a8ee87c8dd4a04ed216135"
[[package]]
name = "itertools"
-version = "0.8.2"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484"
+checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
dependencies = [
"either",
]
[[package]]
name = "itertools"
-version = "0.9.0"
+version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
+checksum = "37d572918e350e82412fe766d24b15e6682fb2ed2bbe018280caa810397cb319"
dependencies = [
"either",
]
[[package]]
name = "itoa"
-version = "0.4.6"
+version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
+checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736"
[[package]]
name = "jobserver"
@@ -2611,21 +2669,21 @@ dependencies = [
[[package]]
name = "js-sys"
-version = "0.3.39"
+version = "0.3.46"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa5a448de267e7358beaf4a5d849518fe9a0c13fce7afd44b06e68550e5562a7"
+checksum = "cf3d7383929f7c9c7c2d0fa596f325832df98c3704f2c60553080f7127a58175"
dependencies = [
"wasm-bindgen",
]
[[package]]
name = "jsonrpc-client-transports"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6f7b1cdf66312002e15682a24430728bd13036c641163c016bc53fb686a7c2d"
+checksum = "489b9c612e60c766f751ab40fcb43cbb55a1e10bb44a9b4307ed510ca598cbd7"
dependencies = [
"failure",
- "futures 0.1.29",
+ "futures 0.1.30",
"hyper 0.12.35",
"jsonrpc-core",
"jsonrpc-pubsub",
@@ -2637,11 +2695,11 @@ dependencies = [
[[package]]
name = "jsonrpc-core"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f30b12567a31d48588a65b6cf870081e6ba1d7b2ae353977cb9820d512e69c70"
+checksum = "0745a6379e3edc893c84ec203589790774e4247420033e71a76d3ab4687991fa"
dependencies = [
- "futures 0.1.29",
+ "futures 0.1.30",
"log",
"serde",
"serde_derive",
@@ -2650,18 +2708,18 @@ dependencies = [
[[package]]
name = "jsonrpc-core-client"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d175ca0cf77439b5495612bf216c650807d252d665b4b70ab2eebd895a88fac1"
+checksum = "6f764902d7b891344a0acb65625f32f6f7c6db006952143bd650209fbe7d94db"
dependencies = [
"jsonrpc-client-transports",
]
[[package]]
name = "jsonrpc-derive"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2cc6ea7f785232d9ca8786a44e9fa698f92149dcdc1acc4aa1fc69c4993d79e"
+checksum = "99a847f9ec7bb52149b2786a17c9cb260d6effc6b8eeb8c16b343a487a7563a3"
dependencies = [
"proc-macro-crate",
"proc-macro2",
@@ -2671,9 +2729,9 @@ dependencies = [
[[package]]
name = "jsonrpc-http-server"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9996b26c0c7a59626d0ed6c5ec8bf06218e62ce1474bd2849f9b9fd38a0158c0"
+checksum = "4fb5c4513b7b542f42da107942b7b759f27120b5cc894729f88254b28dff44b7"
dependencies = [
"hyper 0.12.35",
"jsonrpc-core",
@@ -2686,9 +2744,9 @@ dependencies = [
[[package]]
name = "jsonrpc-ipc-server"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8e8f2278fb2b277175b6e21b23e7ecf30e78daff5ee301d0a2a411d9a821a0a"
+checksum = "cf50e53e4eea8f421a7316c5f63e395f7bc7c4e786a6dc54d76fab6ff7aa7ce7"
dependencies = [
"jsonrpc-core",
"jsonrpc-server-utils",
@@ -2700,9 +2758,9 @@ dependencies = [
[[package]]
name = "jsonrpc-pubsub"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f389c5cd1f3db258a99296892c21047e21ae73ff4c0e2d39650ea86fe994b4c7"
+checksum = "639558e0604013be9787ae52f798506ae42bf4220fe587bdc5625871cc8b9c77"
dependencies = [
"jsonrpc-core",
"log",
@@ -2713,9 +2771,9 @@ dependencies = [
[[package]]
name = "jsonrpc-server-utils"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c623e1895d0d9110cb0ea7736cfff13191ff52335ad33b21bd5c775ea98b27af"
+checksum = "72f1f3990650c033bd8f6bd46deac76d990f9bbfb5f8dc8c4767bf0a00392176"
dependencies = [
"bytes 0.4.12",
"globset",
@@ -2729,9 +2787,9 @@ dependencies = [
[[package]]
name = "jsonrpc-ws-server"
-version = "15.0.0"
+version = "15.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "436a92034d0137ab3e3c64a7a6350b428f31cb4d7d1a89f284bcdbcd98a7bc56"
+checksum = "6596fe75209b73a2a75ebe1dce4e60e03b88a2b25e8807b667597f6315150d22"
dependencies = [
"jsonrpc-core",
"jsonrpc-server-utils",
@@ -2779,30 +2837,30 @@ dependencies = [
[[package]]
name = "kvdb"
-version = "0.7.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0315ef2f688e33844400b31f11c263f2b3dc21d8b9355c6891c5f185fae43f9a"
+checksum = "8891bd853eff90e33024195d79d578dc984c82f9e0715fcd2b525a0c19d52811"
dependencies = [
"parity-util-mem",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
]
[[package]]
name = "kvdb-memorydb"
-version = "0.7.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73de822b260a3bdfb889dbbb65bb2d473eee2253973d6fa4a5d149a2a4a7c66e"
+checksum = "30a0da8e08caf08d384a620ec19bb6c9b85c84137248e202617fb91881f25912"
dependencies = [
"kvdb",
"parity-util-mem",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
]
[[package]]
name = "kvdb-rocksdb"
-version = "0.9.1"
+version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44947dd392f09475af614d740fe0320b66d01cb5b977f664bbbb5e45a70ea4c1"
+checksum = "34446c373ccc494c2124439281c198c7636ccdc2752c06722bbffd56d459c1e4"
dependencies = [
"fs-swap",
"kvdb",
@@ -2810,25 +2868,26 @@ dependencies = [
"num_cpus",
"owning_ref",
"parity-util-mem",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"regex",
"rocksdb",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
]
[[package]]
name = "kvdb-web"
-version = "0.7.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2701a1369d6ea4f1b9f606db46e5e2a4a8e47f22530a07823d653f85ab1f6c34"
+checksum = "eb1e98ba343d0b35f9009a8844cd2b87fa3192f7e79033ac05b00aeae0f3b0b5"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"js-sys",
"kvdb",
"kvdb-memorydb",
"log",
"parity-util-mem",
- "send_wrapper 0.3.0",
+ "parking_lot 0.11.1",
+ "send_wrapper 0.5.0",
"wasm-bindgen",
"web-sys",
]
@@ -2841,9 +2900,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
name = "lazycell"
-version = "1.2.1"
+version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f"
+checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
[[package]]
name = "leb128"
@@ -2853,9 +2912,9 @@ checksum = "3576a87f2ba00f6f106fdfcd16db1d698d648a26ad8e0573cad8537c3c362d2a"
[[package]]
name = "libc"
-version = "0.2.79"
+version = "0.2.84"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2448f6066e80e3bfc792e9c98bf705b4b0fc6e8ef5b43e5889aff0eaa9c58743"
+checksum = "1cca32fa0182e8c0989459524dc356b8f2b5c10f1b9eb521b7d182c03cf8c5ff"
[[package]]
name = "libloading"
@@ -2875,13 +2934,13 @@ checksum = "c7d73b3f436185384286bd8098d17ec07c9a7d2388a6599f824d8502b529702a"
[[package]]
name = "libp2p"
-version = "0.29.1"
+version = "0.34.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "021f703bfef6e3da78ef9828c8a244d639b8d57eedf58360922aca5ff69dfdcd"
+checksum = "d5133112ce42be9482f6a87be92a605dd6bbc9e93c297aee77d172ff06908f3a"
dependencies = [
"atomic",
- "bytes 0.5.6",
- "futures 0.3.5",
+ "bytes 1.0.1",
+ "futures 0.3.12",
"lazy_static",
"libp2p-core",
"libp2p-core-derive",
@@ -2904,26 +2963,25 @@ dependencies = [
"libp2p-wasm-ext",
"libp2p-websocket",
"libp2p-yamux",
- "multihash",
"parity-multiaddr",
- "parking_lot 0.11.0",
- "pin-project 1.0.1",
- "smallvec 1.4.1",
+ "parking_lot 0.11.1",
+ "pin-project 1.0.4",
+ "smallvec 1.6.1",
"wasm-timer",
]
[[package]]
name = "libp2p-core"
-version = "0.23.1"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3960524389409633550567e8a9e0684d25a33f4f8408887ff897dd9fdfbdb771"
+checksum = "dad04d3cef6c1df366a6ab58c9cf8b06497699e335d83ac2174783946ff847d6"
dependencies = [
"asn1_der",
"bs58",
"ed25519-dalek",
"either",
"fnv",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"lazy_static",
"libsecp256k1",
@@ -2931,26 +2989,26 @@ dependencies = [
"multihash",
"multistream-select",
"parity-multiaddr",
- "parking_lot 0.11.0",
- "pin-project 1.0.1",
+ "parking_lot 0.11.1",
+ "pin-project 1.0.4",
"prost",
"prost-build",
"rand 0.7.3",
"ring",
"rw-stream-sink",
- "sha2 0.9.1",
- "smallvec 1.4.1",
+ "sha2 0.9.3",
+ "smallvec 1.6.1",
"thiserror",
- "unsigned-varint 0.5.1",
+ "unsigned-varint 0.6.0",
"void",
"zeroize",
]
[[package]]
name = "libp2p-core-derive"
-version = "0.20.2"
+version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f753d9324cd3ec14bf04b8a8cd0d269c87f294153d6bf2a84497a63a5ad22213"
+checksum = "f4bc40943156e42138d22ed3c57ff0e1a147237742715937622a99b10fbe0156"
dependencies = [
"quote",
"syn",
@@ -2958,182 +3016,180 @@ dependencies = [
[[package]]
name = "libp2p-deflate"
-version = "0.23.0"
+version = "0.27.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567962c5c5f8a1282979441300e1739ba939024010757c3dbfab4d462189df77"
+checksum = "6d42eed63305f0420736fa487f9acef720c4528bd7852a6a760f5ccde4813345"
dependencies = [
"flate2",
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p-core",
]
[[package]]
name = "libp2p-dns"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "436280f5fe21a58fcaff82c2606945579241f32bc0eaf2d39321aa4624a66e7f"
+checksum = "5153b6db68fd4baa3b304e377db744dd8fea8ff4e4504509ee636abcde88d3e3"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p-core",
"log",
]
[[package]]
name = "libp2p-floodsub"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecc175613c5915332fd6458895407ec242ea055ae3b107a586626d5e3349350a"
+checksum = "b3c63dfa06581b24b1d12bf9815b43689a784424be217d6545c800c7c75a207f"
dependencies = [
"cuckoofilter",
"fnv",
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p-core",
"libp2p-swarm",
"log",
"prost",
"prost-build",
"rand 0.7.3",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
]
[[package]]
name = "libp2p-gossipsub"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d500ad89ba14de4d18bebdff61a0ce3e769f1c5c5a95026c5da90187e5fff5c9"
+checksum = "12451ba9493e87c91baf2a6dffce9ddf1fbc807a0861532d7cf477954f8ebbee"
dependencies = [
+ "asynchronous-codec",
"base64 0.13.0",
"byteorder",
- "bytes 0.5.6",
+ "bytes 1.0.1",
"fnv",
- "futures 0.3.5",
- "futures_codec",
+ "futures 0.3.12",
"hex_fmt",
"libp2p-core",
"libp2p-swarm",
"log",
- "lru_time_cache",
"prost",
"prost-build",
"rand 0.7.3",
- "sha2 0.9.1",
- "smallvec 1.4.1",
- "unsigned-varint 0.5.1",
+ "regex",
+ "sha2 0.9.3",
+ "smallvec 1.6.1",
+ "unsigned-varint 0.6.0",
"wasm-timer",
]
[[package]]
name = "libp2p-identify"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03b90b350e37f398b73d778bd94422f4e6a3afa2c1582742ce2446b8a0dba787"
+checksum = "b40fb36a059b7a8cce1514bd8b546fa612e006c9937caa7f5950cb20021fe91e"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p-core",
"libp2p-swarm",
"log",
"prost",
"prost-build",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
"wasm-timer",
]
[[package]]
name = "libp2p-kad"
-version = "0.24.0"
+version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb78341f114bf686d5fe50b33ff1a804d88fb326c0d39ee1c22db4346b21fc27"
+checksum = "456f5de8e283d7800ca848b9b9a4e2a578b790bd8ae582b885e831353cf0e5df"
dependencies = [
- "arrayvec 0.5.1",
- "bytes 0.5.6",
+ "arrayvec 0.5.2",
+ "asynchronous-codec",
+ "bytes 1.0.1",
"either",
"fnv",
- "futures 0.3.5",
- "futures_codec",
+ "futures 0.3.12",
"libp2p-core",
"libp2p-swarm",
"log",
- "multihash",
"prost",
"prost-build",
"rand 0.7.3",
- "sha2 0.9.1",
- "smallvec 1.4.1",
+ "sha2 0.9.3",
+ "smallvec 1.6.1",
"uint",
- "unsigned-varint 0.5.1",
+ "unsigned-varint 0.6.0",
"void",
"wasm-timer",
]
[[package]]
name = "libp2p-mdns"
-version = "0.23.0"
+version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b575514fce0a3ccbd065d6aa377bd4d5102001b05c1a22a5eee49c450254ef0f"
+checksum = "b974db63233fc0e199f4ede7794294aae285c96f4b6010f853eac4099ef08590"
dependencies = [
- "async-std",
+ "async-io",
"data-encoding",
"dns-parser",
- "either",
- "futures 0.3.5",
+ "futures 0.3.12",
+ "if-watch",
"lazy_static",
"libp2p-core",
"libp2p-swarm",
"log",
- "net2",
"rand 0.7.3",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
+ "socket2",
"void",
- "wasm-timer",
]
[[package]]
name = "libp2p-mplex"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "696c8ee8b42496690b88b0de84a96387caf6e09880bcc8e794bb88afa054e995"
+checksum = "2705dc94b01ab9e3779b42a09bbf3712e637ed213e875c30face247291a85af0"
dependencies = [
- "bytes 0.5.6",
- "futures 0.3.5",
- "futures_codec",
+ "asynchronous-codec",
+ "bytes 1.0.1",
+ "futures 0.3.12",
"libp2p-core",
"log",
"nohash-hasher",
- "parking_lot 0.11.0",
+ "parking_lot 0.11.1",
"rand 0.7.3",
- "smallvec 1.4.1",
- "unsigned-varint 0.5.1",
+ "smallvec 1.6.1",
+ "unsigned-varint 0.6.0",
]
[[package]]
name = "libp2p-noise"
-version = "0.25.0"
+version = "0.29.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93c77142e3e5b18fefa7d267305c777c9cbe9b2232ec489979390100bebcc1e6"
+checksum = "4aca322b52a0c5136142a7c3971446fb1e9964923a526c9cc6ef3b7c94e57778"
dependencies = [
- "bytes 0.5.6",
- "curve25519-dalek 3.0.0",
- "futures 0.3.5",
+ "bytes 1.0.1",
+ "curve25519-dalek 3.0.2",
+ "futures 0.3.12",
"lazy_static",
"libp2p-core",
"log",
"prost",
"prost-build",
"rand 0.7.3",
- "sha2 0.9.1",
+ "sha2 0.9.3",
"snow",
"static_assertions",
- "x25519-dalek 1.1.0",
+ "x25519-dalek",
"zeroize",
]
[[package]]
name = "libp2p-ping"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7257135609e8877f4d286935cbe1e572b2018946881c3e7f63054577074a7ee7"
+checksum = "6f3813276d0708c8db0f500d8beda1bda9ad955723b9cb272c41f4727256f73c"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p-core",
"libp2p-swarm",
"log",
@@ -3144,82 +3200,83 @@ dependencies = [
[[package]]
name = "libp2p-plaintext"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c88d59ba3e710a8c8e0535cb4a52e9e46534924cbbea4691f8c3aaad17b58c61"
+checksum = "48e8c1ec305c9949351925cdc7196b9570f4330477f5e47fbf5bb340b57e26ed"
dependencies = [
- "bytes 0.5.6",
- "futures 0.3.5",
- "futures_codec",
+ "asynchronous-codec",
+ "bytes 1.0.1",
+ "futures 0.3.12",
"libp2p-core",
"log",
"prost",
"prost-build",
- "unsigned-varint 0.5.1",
+ "unsigned-varint 0.6.0",
"void",
]
[[package]]
name = "libp2p-pnet"
-version = "0.19.2"
+version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96b3c2d5d26a9500e959a0e19743897239a6c4be78dadf99b70414301a70c006"
+checksum = "6ce3374f3b28162db9d3442c9347c4f14cb01e8290052615c7d341d40eae0599"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"log",
- "pin-project 0.4.22",
+ "pin-project 1.0.4",
"rand 0.7.3",
"salsa20",
- "sha3 0.9.1",
+ "sha3",
]
[[package]]
name = "libp2p-request-response"
-version = "0.4.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02ba1aa5727ccc118c09ba5111480873f2fe5608cb304e258fd12c173ecf27c9"
+checksum = "d37637a4b33b5390322ccc068a33897d0aa541daf4fec99f6a7efbf37295346e"
dependencies = [
"async-trait",
- "bytes 0.5.6",
- "futures 0.3.5",
+ "bytes 1.0.1",
+ "futures 0.3.12",
"libp2p-core",
"libp2p-swarm",
"log",
- "lru 0.6.0",
+ "lru",
"minicbor",
"rand 0.7.3",
- "smallvec 1.4.1",
- "unsigned-varint 0.5.1",
+ "smallvec 1.6.1",
+ "unsigned-varint 0.6.0",
"wasm-timer",
]
[[package]]
name = "libp2p-swarm"
-version = "0.23.0"
+version = "0.27.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffa6fa33b16956b8a58afbfebe1406866011a1ab8960765bd36868952d7be6a1"
+checksum = "d4f89ebb4d8953bda12623e9871959fe728dea3bf6eae0421dc9c42dc821e488"
dependencies = [
"either",
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p-core",
"log",
"rand 0.7.3",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
"void",
"wasm-timer",
]
[[package]]
name = "libp2p-tcp"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d0b6f4ef48d9493607fae069deecce0579320a1f3de6cb056770b151018a9a5"
+checksum = "3dbd3d7076a478ac5a6aca55e74bdc250ac539b95de09b9d09915e0b8d01a6b2"
dependencies = [
- "async-std",
- "futures 0.3.5",
+ "async-io",
+ "futures 0.3.12",
"futures-timer 3.0.2",
- "if-addrs",
+ "if-watch",
"ipnet",
+ "libc",
"libp2p-core",
"log",
"socket2",
@@ -3227,23 +3284,23 @@ dependencies = [
[[package]]
name = "libp2p-uds"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "945bed3c989a1b290b5a0d4e8fa6e44e01840efb9a5ab3f0d3d174f0e451ac0e"
+checksum = "80ac51ce419f60be966e02103c17f67ff5dc4422ba83ba54d251d6c62a4ed487"
dependencies = [
"async-std",
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p-core",
"log",
]
[[package]]
name = "libp2p-wasm-ext"
-version = "0.23.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "66518a4455e15c283637b4d7b579aef928b75a3fc6c50a41e7e6b9fa86672ca0"
+checksum = "6149c46cb76935c80bc8be6ec6e3ebd5f5e1679765a255fb34331d54610f15dd"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"js-sys",
"libp2p-core",
"parity-send-wrapper",
@@ -3253,33 +3310,31 @@ dependencies = [
[[package]]
name = "libp2p-websocket"
-version = "0.24.0"
+version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edc561870477523245efaaea1b6b743c70115f10c670e62bcbbe4d3153be5f0c"
+checksum = "d3b1c6a3431045da8b925ed83384e4c5163e14b990572307fca9c507435d4d22"
dependencies = [
- "async-tls",
"either",
- "futures 0.3.5",
+ "futures 0.3.12",
+ "futures-rustls",
"libp2p-core",
"log",
"quicksink",
- "rustls",
"rw-stream-sink",
"soketto",
- "url 2.1.1",
- "webpki",
+ "url 2.2.0",
"webpki-roots",
]
[[package]]
name = "libp2p-yamux"
-version = "0.26.0"
+version = "0.30.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07c0c9b6ef7a168c2ae854170b0b6b77550599afe06cc3ac390eb45c5d9c7110"
+checksum = "490b8b27fc40fe35212df1b6a3d14bffaa4117cbff956fdc2892168a371102ad"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p-core",
- "parking_lot 0.11.0",
+ "parking_lot 0.11.1",
"thiserror",
"yamux",
]
@@ -3308,27 +3363,26 @@ dependencies = [
"hmac-drbg",
"rand 0.7.3",
"sha2 0.8.2",
- "subtle 2.2.3",
+ "subtle 2.4.0",
"typenum",
]
[[package]]
name = "libz-sys"
-version = "1.0.25"
+version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
+checksum = "602113192b08db8f38796c4e85c39e960c145965140e918018bcde1952429655"
dependencies = [
"cc",
- "libc",
"pkg-config",
"vcpkg",
]
[[package]]
name = "linked-hash-map"
-version = "0.5.3"
+version = "0.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8dd5a6d5999d9907cda8ed67bbd137d3af8085216c2ac62de5be860bd41f304a"
+checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
[[package]]
name = "linked_hash_set"
@@ -3341,20 +3395,19 @@ dependencies = [
[[package]]
name = "linregress"
-version = "0.1.7"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9290cf6f928576eeb9c096c6fad9d8d452a0a1a70a2bbffa6e36064eedc0aac9"
+checksum = "0d0ad4b5cc8385a881c561fac3501353d63d2a2b7a357b5064d71815c9a92724"
dependencies = [
- "failure",
"nalgebra",
"statrs",
]
[[package]]
name = "lite-json"
-version = "0.1.2"
+version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c73e713a23ac6e12074c9e96ef2dfb770921e0cb9244c093bd38424209e0e523"
+checksum = "0460d985423a026b4d9b828a7c6eed1bcf606f476322f3f9b507529686a61715"
dependencies = [
"lite-parser",
]
@@ -3368,75 +3421,43 @@ dependencies = [
"paste 0.1.18",
]
-[[package]]
-name = "lock_api"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c"
-dependencies = [
- "scopeguard 0.3.3",
-]
-
[[package]]
name = "lock_api"
version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75"
-dependencies = [
- "scopeguard 1.1.0",
-]
-
-[[package]]
-name = "lock_api"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28247cc5a5be2f05fbcd76dd0cf2c7d3b5400cb978a28042abcd4fa0b3f8261c"
-dependencies = [
- "scopeguard 1.1.0",
-]
-
-[[package]]
-name = "log"
-version = "0.4.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
+checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75"
dependencies = [
- "cfg-if",
+ "scopeguard",
]
[[package]]
-name = "lru"
-version = "0.4.3"
+name = "lock_api"
+version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0609345ddee5badacf857d4f547e0e5a2e987db77085c24cd887f73573a04237"
+checksum = "dd96ffd135b2fd7b973ac026d28085defbe8983df057ced3eb4f2130b0831312"
dependencies = [
- "hashbrown 0.6.3",
+ "scopeguard",
]
[[package]]
-name = "lru"
-version = "0.5.3"
+name = "log"
+version = "0.4.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35c456c123957de3a220cd03786e0d86aa542a88b46029973b542f426da6ef34"
+checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
dependencies = [
- "hashbrown 0.6.3",
+ "cfg-if 1.0.0",
+ "value-bag",
]
[[package]]
name = "lru"
-version = "0.6.0"
+version = "0.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "111b945ac72ec09eb7bc62a0fbdc3cc6e80555a7245f52a69d3921a75b53b153"
+checksum = "3aae342b73d57ad0b8b364bd12584819f2c1fe9114285dfcf8b0722607671635"
dependencies = [
- "hashbrown 0.8.1",
+ "hashbrown",
]
-[[package]]
-name = "lru_time_cache"
-version = "0.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebac060fafad3adedd0c66a80741a92ff4bc8e94a273df2ba3770ab206f2e29a"
-
[[package]]
name = "mach"
version = "0.3.2"
@@ -3469,9 +3490,9 @@ checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
[[package]]
name = "matrixmultiply"
-version = "0.2.3"
+version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4f7ec66360130972f34830bfad9ef05c6610a43938a467bcc9ab9369ab3478f"
+checksum = "916806ba0031cd542105d916a97c8572e1fa6dd79c9c51e7eb43a09ec2dd84c1"
dependencies = [
"rawpointer",
]
@@ -3484,9 +3505,9 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
[[package]]
name = "memchr"
-version = "2.3.3"
+version = "2.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
+checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
[[package]]
name = "memmap"
@@ -3498,23 +3519,41 @@ dependencies = [
"winapi 0.3.9",
]
+[[package]]
+name = "memmap2"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e73be3b7d04a0123e933fea1d50d126cc7196bbc0362c0ce426694f777194eee"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "memoffset"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa"
+dependencies = [
+ "autocfg",
+]
+
[[package]]
name = "memoffset"
-version = "0.5.5"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c198b026e1bbf08a937e94c6c60f9ec4a2267f5b0d2eec9c1b21b061ce2be55f"
+checksum = "157b4208e3059a8f9e78d559edc658e13df41410cb3ae03979c83130067fdd87"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg",
]
[[package]]
name = "memory-db"
-version = "0.24.1"
+version = "0.26.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36f36ddb0b2cdc25d38babba472108798e3477f02be5165f038c5e393e50c57a"
+checksum = "814bbecfc0451fc314eeea34f05bbcd5b98a7ad7af37faee088b86a1e633f1d4"
dependencies = [
"hash-db",
- "hashbrown 0.8.1",
+ "hashbrown",
"parity-util-mem",
]
@@ -3526,9 +3565,9 @@ checksum = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882"
[[package]]
name = "merlin"
-version = "2.0.0"
+version = "2.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6feca46f4fa3443a01769d768727f10c10a20fdb65e52dc16a81f0c8269bb78"
+checksum = "4e261cf0f8b3c42ded9f7d2bb59dea03aa52bc8a1cbc7482f9fc3fd1229d3b42"
dependencies = [
"byteorder",
"keccak",
@@ -3538,18 +3577,18 @@ dependencies = [
[[package]]
name = "minicbor"
-version = "0.6.0"
+version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2ef6aa869726518c5d8206fa5d1337bda8a0442807611be617891c018fa781"
+checksum = "3265a9f5210bb726f81ef9c456ae0aff5321cd95748c0e71889b0e19d8f0332b"
dependencies = [
"minicbor-derive",
]
[[package]]
name = "minicbor-derive"
-version = "0.5.0"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b3569c0dbfff1b8d5f1434c642b67f5bf81c0f354a3f5f8f180b549dba3c07c"
+checksum = "130b9455e28a3f308f6579671816a6f2621e2e0cbf55dc2f886345bef699481e"
dependencies = [
"proc-macro2",
"quote",
@@ -3558,27 +3597,28 @@ dependencies = [
[[package]]
name = "miniz_oxide"
-version = "0.4.0"
+version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be0f75932c1f6cfae3c04000e40114adf955636e19040f9c0a2c380702aa1c7f"
+checksum = "0f2d26ec3309788e423cfbf68ad1800f061638098d76a83681af979dc4eda19d"
dependencies = [
"adler",
+ "autocfg",
]
[[package]]
name = "mio"
-version = "0.6.22"
+version = "0.6.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430"
+checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4"
dependencies = [
- "cfg-if",
+ "cfg-if 0.1.10",
"fuchsia-zircon",
"fuchsia-zircon-sys",
"iovec",
"kernel32-sys",
"libc",
"log",
- "miow 0.2.1",
+ "miow 0.2.2",
"net2",
"slab",
"winapi 0.2.8",
@@ -3604,7 +3644,7 @@ checksum = "0840c1c50fd55e521b247f949c241c9997709f23bd7f023b9762cd561e935656"
dependencies = [
"log",
"mio",
- "miow 0.3.5",
+ "miow 0.3.6",
"winapi 0.3.9",
]
@@ -3621,9 +3661,9 @@ dependencies = [
[[package]]
name = "miow"
-version = "0.2.1"
+version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
+checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d"
dependencies = [
"kernel32-sys",
"net2",
@@ -3633,9 +3673,9 @@ dependencies = [
[[package]]
name = "miow"
-version = "0.3.5"
+version = "0.3.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07b88fb9795d4d36d62a012dfbf49a8f5cf12751f36d31a9dbe66d528e58979e"
+checksum = "5a33c1b55807fbed163481b5ba66db4b2fa6cde694a5027be10fb724206c5897"
dependencies = [
"socket2",
"winapi 0.3.9",
@@ -3647,55 +3687,83 @@ version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0debeb9fcf88823ea64d64e4a815ab1643f33127d995978e099942ce38f25238"
+[[package]]
+name = "multibase"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b78c60039650ff12e140ae867ef5299a58e19dded4d334c849dc7177083667e2"
+dependencies = [
+ "base-x",
+ "data-encoding",
+ "data-encoding-macro",
+]
+
[[package]]
name = "multihash"
-version = "0.11.2"
+version = "0.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f75db05d738947aa5389863aadafbcf2e509d7ba099dc2ddcdf4fc66bf7a9e03"
+checksum = "4dac63698b887d2d929306ea48b63760431ff8a24fac40ddb22f9c7f49fb7cab"
dependencies = [
"blake2b_simd",
"blake2s_simd",
- "digest 0.8.1",
- "sha-1",
- "sha2 0.8.2",
- "sha3 0.8.2",
- "unsigned-varint 0.3.3",
+ "blake3",
+ "digest 0.9.0",
+ "generic-array 0.14.4",
+ "multihash-derive",
+ "sha2 0.9.3",
+ "sha3",
+ "unsigned-varint 0.5.1",
+]
+
+[[package]]
+name = "multihash-derive"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85ee3c48cb9d9b275ad967a0e96715badc13c6029adb92f34fa17b9ff28fd81f"
+dependencies = [
+ "proc-macro-crate",
+ "proc-macro-error",
+ "proc-macro2",
+ "quote",
+ "syn",
+ "synstructure",
]
[[package]]
name = "multimap"
-version = "0.8.1"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8883adfde9756c1d30b0f519c9b8c502a94b41ac62f696453c37c7fc0a958ce"
+checksum = "1255076139a83bb467426e7f8d0134968a8118844faa755985e077cf31850333"
[[package]]
name = "multistream-select"
-version = "0.8.4"
+version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36a6aa6e32fbaf16795142335967214b8564a7a4661eb6dc846ef343a6e00ac1"
+checksum = "10ddc0eb0117736f19d556355464fc87efc8ad98b29e3fd84f02531eb6e90840"
dependencies = [
- "bytes 0.5.6",
- "futures 0.3.5",
+ "bytes 1.0.1",
+ "futures 0.3.12",
"log",
- "pin-project 1.0.1",
- "smallvec 1.4.1",
- "unsigned-varint 0.5.1",
+ "pin-project 1.0.4",
+ "smallvec 1.6.1",
+ "unsigned-varint 0.6.0",
]
[[package]]
name = "nalgebra"
-version = "0.18.1"
+version = "0.21.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aaa9fddbc34c8c35dd2108515587b8ce0cab396f17977b8c738568e4edb521a2"
+checksum = "d6b6147c3d50b4f3cdabfe2ecc94a0191fd3d6ad58aefd9664cf396285883486"
dependencies = [
- "alga",
"approx",
- "generic-array 0.12.3",
+ "generic-array 0.13.2",
"matrixmultiply",
"num-complex",
"num-rational",
"num-traits",
- "rand 0.6.5",
+ "rand 0.7.3",
+ "rand_distr",
+ "simba",
"typenum",
]
@@ -3708,28 +3776,37 @@ dependencies = [
"rand 0.3.23",
]
+[[package]]
+name = "nb-connect"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8123a81538e457d44b933a02faf885d3fe8408806b23fa700e8f01c6c3a98998"
+dependencies = [
+ "libc",
+ "winapi 0.3.9",
+]
+
[[package]]
name = "net2"
-version = "0.2.34"
+version = "0.2.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ba7c918ac76704fb42afcbbb43891e72731f3dcca3bef2a19786297baf14af7"
+checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae"
dependencies = [
- "cfg-if",
+ "cfg-if 0.1.10",
"libc",
"winapi 0.3.9",
]
[[package]]
name = "nix"
-version = "0.17.0"
+version = "0.19.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50e4785f2c3b7589a0d0c1dd60285e1188adac4006e8abd6dd578e1567027363"
+checksum = "b2ccba0cfe4fdf15982d1674c69b1fd80bad427d293849982668dfe454bd61f2"
dependencies = [
"bitflags",
"cc",
- "cfg-if",
+ "cfg-if 1.0.0",
"libc",
- "void",
]
[[package]]
@@ -3738,7 +3815,7 @@ version = "0.8.0"
dependencies = [
"derive_more",
"fs_extra",
- "futures 0.3.5",
+ "futures 0.3.12",
"hash-db",
"hex",
"kvdb",
@@ -3774,7 +3851,7 @@ dependencies = [
name = "node-browser-testing"
version = "2.0.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"jsonrpc-core",
"libp2p",
@@ -3795,7 +3872,7 @@ dependencies = [
"frame-benchmarking-cli",
"frame-support",
"frame-system",
- "futures 0.3.5",
+ "futures 0.3.12",
"hex-literal",
"log",
"nix",
@@ -3814,7 +3891,7 @@ dependencies = [
"pallet-timestamp",
"pallet-transaction-payment",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"platforms",
"rand 0.7.3",
"regex",
@@ -3827,7 +3904,9 @@ dependencies = [
"sc-consensus",
"sc-consensus-babe",
"sc-consensus-epochs",
+ "sc-consensus-slots",
"sc-finality-grandpa",
+ "sc-finality-grandpa-warp-sync",
"sc-keystore",
"sc-network",
"sc-offchain",
@@ -3857,7 +3936,6 @@ dependencies = [
"substrate-build-script-utils",
"substrate-frame-cli",
"tempfile",
- "tracing",
"wasm-bindgen",
"wasm-bindgen-futures",
]
@@ -3961,8 +4039,8 @@ dependencies = [
name = "node-rpc-client"
version = "2.0.0"
dependencies = [
- "futures 0.1.29",
- "hyper 0.12.35",
+ "futures 0.1.30",
+ "hyper 0.13.9",
"jsonrpc-core-client",
"log",
"node-primitives",
@@ -3972,7 +4050,7 @@ dependencies = [
[[package]]
name = "node-runtime"
-version = "2.0.0"
+version = "2.0.1"
dependencies = [
"frame-benchmarking",
"frame-executive",
@@ -3981,12 +4059,13 @@ dependencies = [
"frame-system-benchmarking",
"frame-system-rpc-runtime-api",
"hex-literal",
- "integer-sqrt",
"node-primitives",
+ "pallet-assets",
"pallet-authority-discovery",
"pallet-authorship",
"pallet-babe",
"pallet-balances",
+ "pallet-bounties",
"pallet-collective",
"pallet-contracts",
"pallet-contracts-primitives",
@@ -3997,7 +4076,9 @@ dependencies = [
"pallet-identity",
"pallet-im-online",
"pallet-indices",
+ "pallet-lottery",
"pallet-membership",
+ "pallet-mmr",
"pallet-multisig",
"pallet-offences",
"pallet-offences-benchmarking",
@@ -4012,6 +4093,7 @@ dependencies = [
"pallet-staking-reward-curve",
"pallet-sudo",
"pallet-timestamp",
+ "pallet-tips",
"pallet-transaction-payment",
"pallet-transaction-payment-rpc-runtime-api",
"pallet-treasury",
@@ -4035,7 +4117,7 @@ dependencies = [
"sp-transaction-pool",
"sp-version",
"static_assertions",
- "substrate-wasm-builder-runner",
+ "substrate-wasm-builder",
]
[[package]]
@@ -4054,9 +4136,11 @@ dependencies = [
"sc-consensus-aura",
"sc-executor",
"sc-finality-grandpa",
+ "sc-keystore",
"sc-rpc",
"sc-rpc-api",
"sc-service",
+ "sc-telemetry",
"sc-transaction-pool",
"sp-api",
"sp-block-builder",
@@ -4106,7 +4190,7 @@ dependencies = [
"sp-std",
"sp-transaction-pool",
"sp-version",
- "substrate-wasm-builder-runner",
+ "substrate-wasm-builder",
]
[[package]]
@@ -4117,7 +4201,7 @@ dependencies = [
"frame-support",
"frame-system",
"fs_extra",
- "futures 0.3.5",
+ "futures 0.3.12",
"log",
"node-executor",
"node-primitives",
@@ -4181,7 +4265,7 @@ version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg",
"num-integer",
"num-traits",
]
@@ -4192,17 +4276,17 @@ version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg",
"num-traits",
]
[[package]]
name = "num-integer"
-version = "0.1.43"
+version = "0.1.44"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b"
+checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg",
"num-traits",
]
@@ -4212,7 +4296,7 @@ version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg",
"num-bigint",
"num-integer",
"num-traits",
@@ -4220,11 +4304,11 @@ dependencies = [
[[package]]
name = "num-traits"
-version = "0.2.12"
+version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
+checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
dependencies = [
- "autocfg 1.0.0",
+ "autocfg",
"libm",
]
@@ -4240,44 +4324,34 @@ dependencies = [
[[package]]
name = "object"
-version = "0.19.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cbca9424c482ee628fa549d9c812e2cd22f1180b9222c9200fdfa6eb31aecb2"
-
-[[package]]
-name = "object"
-version = "0.20.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5"
+checksum = "8d3b63360ec3cb337817c2dbd47ab4a0f170d285d8e5a2064600f3def1402397"
dependencies = [
"crc32fast",
"indexmap",
- "wasmparser 0.57.0",
]
[[package]]
-name = "once_cell"
-version = "0.1.8"
+name = "object"
+version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "532c29a261168a45ce28948f9537ddd7a5dd272cc513b3017b1e82a88f962c37"
-dependencies = [
- "parking_lot 0.7.1",
-]
+checksum = "a9a7ab5d64814df0fe4a4b5ead45ed6c5f181ee3ff04ba344313a6c80446c5d4"
[[package]]
name = "once_cell"
-version = "1.4.1"
+version = "1.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "260e51e7efe62b592207e9e13a68e43692a7a279171d6ba57abd208bf23645ad"
+checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0"
dependencies = [
- "parking_lot 0.11.0",
+ "parking_lot 0.11.1",
]
[[package]]
name = "oorandom"
-version = "11.1.2"
+version = "11.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a170cebd8021a008ea92e4db85a72f80b35df514ec664b296fdcbb654eac0b2c"
+checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
[[package]]
name = "opaque-debug"
@@ -4317,10 +4391,12 @@ dependencies = [
[[package]]
name = "pallet-assets"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
+ "frame-benchmarking",
"frame-support",
"frame-system",
+ "pallet-balances",
"parity-scale-codec",
"serde",
"sp-core",
@@ -4331,7 +4407,7 @@ dependencies = [
[[package]]
name = "pallet-atomic-swap"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4346,7 +4422,7 @@ dependencies = [
[[package]]
name = "pallet-aura"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4354,12 +4430,11 @@ dependencies = [
"pallet-session",
"pallet-timestamp",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"serde",
"sp-application-crypto",
"sp-consensus-aura",
"sp-core",
- "sp-inherents",
"sp-io",
"sp-runtime",
"sp-std",
@@ -4368,7 +4443,7 @@ dependencies = [
[[package]]
name = "pallet-authority-discovery"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4386,12 +4461,13 @@ dependencies = [
[[package]]
name = "pallet-authorship"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
"impl-trait-for-tuples",
"parity-scale-codec",
+ "serde",
"sp-authorship",
"sp-core",
"sp-inherents",
@@ -4402,7 +4478,7 @@ dependencies = [
[[package]]
name = "pallet-babe"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4431,7 +4507,7 @@ dependencies = [
[[package]]
name = "pallet-balances"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4445,9 +4521,27 @@ dependencies = [
"sp-std",
]
+[[package]]
+name = "pallet-bounties"
+version = "3.0.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
+ "pallet-balances",
+ "pallet-treasury",
+ "parity-scale-codec",
+ "serde",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
+ "sp-storage",
+]
+
[[package]]
name = "pallet-collective"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4464,7 +4558,7 @@ dependencies = [
[[package]]
name = "pallet-contracts"
-version = "2.0.0"
+version = "2.0.1"
dependencies = [
"assert_matches",
"frame-benchmarking",
@@ -4473,13 +4567,16 @@ dependencies = [
"hex-literal",
"pallet-balances",
"pallet-contracts-primitives",
+ "pallet-contracts-proc-macro",
"pallet-randomness-collective-flip",
"pallet-timestamp",
"parity-scale-codec",
"parity-wasm 0.41.0",
- "paste 1.0.0",
+ "paste 1.0.4",
"pretty_assertions",
- "pwasm-utils",
+ "pwasm-utils 0.16.0",
+ "rand 0.7.3",
+ "rand_pcg",
"serde",
"sp-core",
"sp-io",
@@ -4492,7 +4589,7 @@ dependencies = [
[[package]]
name = "pallet-contracts-primitives"
-version = "2.0.0"
+version = "2.0.1"
dependencies = [
"bitflags",
"parity-scale-codec",
@@ -4500,9 +4597,18 @@ dependencies = [
"sp-std",
]
+[[package]]
+name = "pallet-contracts-proc-macro"
+version = "0.1.0"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
[[package]]
name = "pallet-contracts-rpc"
-version = "0.8.0"
+version = "0.8.1"
dependencies = [
"jsonrpc-core",
"jsonrpc-core-client",
@@ -4521,7 +4627,7 @@ dependencies = [
[[package]]
name = "pallet-contracts-rpc-runtime-api"
-version = "0.8.0"
+version = "0.8.1"
dependencies = [
"pallet-contracts-primitives",
"parity-scale-codec",
@@ -4532,7 +4638,7 @@ dependencies = [
[[package]]
name = "pallet-democracy"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4552,7 +4658,7 @@ dependencies = [
[[package]]
name = "pallet-elections"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4568,7 +4674,7 @@ dependencies = [
[[package]]
name = "pallet-elections-phragmen"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4585,28 +4691,6 @@ dependencies = [
"substrate-test-utils",
]
-[[package]]
-name = "pallet-evm"
-version = "2.0.0"
-dependencies = [
- "evm",
- "frame-support",
- "frame-system",
- "impl-trait-for-tuples",
- "pallet-balances",
- "pallet-timestamp",
- "parity-scale-codec",
- "primitive-types",
- "ripemd160",
- "rlp",
- "serde",
- "sha3 0.8.2",
- "sp-core",
- "sp-io",
- "sp-runtime",
- "sp-std",
-]
-
[[package]]
name = "pallet-example"
version = "2.0.0"
@@ -4625,7 +4709,7 @@ dependencies = [
[[package]]
name = "pallet-example-offchain-worker"
-version = "2.0.0"
+version = "2.0.1"
dependencies = [
"frame-support",
"frame-system",
@@ -4641,11 +4725,12 @@ dependencies = [
[[package]]
name = "pallet-example-parallel"
-version = "2.0.0"
+version = "2.0.1"
dependencies = [
"frame-support",
"frame-system",
"parity-scale-codec",
+ "serde",
"sp-core",
"sp-io",
"sp-runtime",
@@ -4655,7 +4740,7 @@ dependencies = [
[[package]]
name = "pallet-grandpa"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"finality-grandpa",
"frame-benchmarking",
@@ -4683,7 +4768,7 @@ dependencies = [
[[package]]
name = "pallet-identity"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"enumflags2",
"frame-benchmarking",
@@ -4700,7 +4785,7 @@ dependencies = [
[[package]]
name = "pallet-im-online"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4719,7 +4804,7 @@ dependencies = [
[[package]]
name = "pallet-indices"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4734,12 +4819,47 @@ dependencies = [
"sp-std",
]
+[[package]]
+name = "pallet-lottery"
+version = "3.0.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
+ "pallet-balances",
+ "parity-scale-codec",
+ "serde",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
+]
+
[[package]]
name = "pallet-membership"
-version = "2.0.0"
+version = "3.0.0"
+dependencies = [
+ "frame-support",
+ "frame-system",
+ "parity-scale-codec",
+ "serde",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
+]
+
+[[package]]
+name = "pallet-mmr"
+version = "3.0.0"
dependencies = [
+ "ckb-merkle-mountain-range",
+ "env_logger 0.8.2",
+ "frame-benchmarking",
"frame-support",
"frame-system",
+ "hex-literal",
+ "pallet-mmr-primitives",
"parity-scale-codec",
"serde",
"sp-core",
@@ -4748,9 +4868,24 @@ dependencies = [
"sp-std",
]
+[[package]]
+name = "pallet-mmr-primitives"
+version = "3.0.0"
+dependencies = [
+ "frame-support",
+ "frame-system",
+ "hex-literal",
+ "parity-scale-codec",
+ "serde",
+ "sp-api",
+ "sp-core",
+ "sp-runtime",
+ "sp-std",
+]
+
[[package]]
name = "pallet-multisig"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4766,7 +4901,7 @@ dependencies = [
[[package]]
name = "pallet-nicks"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4795,7 +4930,7 @@ dependencies = [
[[package]]
name = "pallet-offences"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4811,7 +4946,7 @@ dependencies = [
[[package]]
name = "pallet-offences-benchmarking"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4836,7 +4971,7 @@ dependencies = [
[[package]]
name = "pallet-proxy"
-version = "2.0.1"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4853,12 +4988,13 @@ dependencies = [
[[package]]
name = "pallet-randomness-collective-flip"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
"parity-scale-codec",
"safe-mix",
+ "serde",
"sp-core",
"sp-io",
"sp-runtime",
@@ -4867,7 +5003,7 @@ dependencies = [
[[package]]
name = "pallet-recovery"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"enumflags2",
"frame-support",
@@ -4883,7 +5019,7 @@ dependencies = [
[[package]]
name = "pallet-scheduler"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4899,7 +5035,7 @@ dependencies = [
[[package]]
name = "pallet-scored-pool"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4914,7 +5050,7 @@ dependencies = [
[[package]]
name = "pallet-session"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4935,7 +5071,7 @@ dependencies = [
[[package]]
name = "pallet-session-benchmarking"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4957,7 +5093,7 @@ dependencies = [
[[package]]
name = "pallet-society"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -4973,7 +5109,7 @@ dependencies = [
[[package]]
name = "pallet-staking"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -4985,7 +5121,7 @@ dependencies = [
"pallet-staking-reward-curve",
"pallet-timestamp",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"rand_chacha 0.2.2",
"serde",
"sp-application-crypto",
@@ -5015,6 +5151,7 @@ dependencies = [
"pallet-staking-reward-curve",
"pallet-timestamp",
"parity-scale-codec",
+ "serde",
"sp-core",
"sp-io",
"sp-npos-elections",
@@ -5024,7 +5161,7 @@ dependencies = [
[[package]]
name = "pallet-staking-reward-curve"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"proc-macro-crate",
"proc-macro2",
@@ -5035,7 +5172,7 @@ dependencies = [
[[package]]
name = "pallet-sudo"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
@@ -5054,6 +5191,7 @@ dependencies = [
"frame-support",
"frame-system",
"parity-scale-codec",
+ "serde",
"sp-core",
"sp-io",
"sp-runtime",
@@ -5061,7 +5199,7 @@ dependencies = [
[[package]]
name = "pallet-timestamp"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -5077,17 +5215,35 @@ dependencies = [
"sp-timestamp",
]
+[[package]]
+name = "pallet-tips"
+version = "3.0.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
+ "pallet-balances",
+ "pallet-treasury",
+ "parity-scale-codec",
+ "serde",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
+ "sp-storage",
+]
+
[[package]]
name = "pallet-transaction-payment"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
"pallet-balances",
- "pallet-transaction-payment-rpc-runtime-api",
"parity-scale-codec",
"serde",
- "smallvec 1.4.1",
+ "serde_json",
+ "smallvec 1.6.1",
"sp-core",
"sp-io",
"sp-runtime",
@@ -5097,14 +5253,13 @@ dependencies = [
[[package]]
name = "pallet-transaction-payment-rpc"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"jsonrpc-core",
"jsonrpc-core-client",
"jsonrpc-derive",
"pallet-transaction-payment-rpc-runtime-api",
"parity-scale-codec",
- "serde",
"sp-api",
"sp-blockchain",
"sp-core",
@@ -5114,24 +5269,22 @@ dependencies = [
[[package]]
name = "pallet-transaction-payment-rpc-runtime-api"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "frame-support",
+ "pallet-transaction-payment",
"parity-scale-codec",
- "serde",
- "serde_json",
"sp-api",
"sp-runtime",
- "sp-std",
]
[[package]]
name = "pallet-treasury"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
"frame-system",
+ "impl-trait-for-tuples",
"pallet-balances",
"parity-scale-codec",
"serde",
@@ -5144,7 +5297,7 @@ dependencies = [
[[package]]
name = "pallet-utility"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -5160,7 +5313,7 @@ dependencies = [
[[package]]
name = "pallet-vesting"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"enumflags2",
"frame-benchmarking",
@@ -5179,23 +5332,25 @@ dependencies = [
[[package]]
name = "parity-db"
-version = "0.1.2"
+version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00d595e372d119261593297debbe4193811a4dc811d2a1ccbb8caaa6666ad7ab"
+checksum = "111e193c96758d476d272093a853882668da17489f76bf4361b8decae0b6c515"
dependencies = [
"blake2-rfc",
"crc32fast",
+ "hex",
"libc",
"log",
- "memmap",
- "parking_lot 0.10.2",
+ "memmap2",
+ "parking_lot 0.11.1",
+ "rand 0.8.3",
]
[[package]]
name = "parity-multiaddr"
-version = "0.9.3"
+version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c7ad66970bbab360c97179b60906e2dc4aef1f7fca8ab4e5c5db8c97b16814a"
+checksum = "8bfda2e46fc5e14122649e2645645a81ee5844e0fb2e727ef560cc71a8b2d801"
dependencies = [
"arrayref",
"bs58",
@@ -5205,17 +5360,17 @@ dependencies = [
"percent-encoding 2.1.0",
"serde",
"static_assertions",
- "unsigned-varint 0.5.1",
- "url 2.1.1",
+ "unsigned-varint 0.6.0",
+ "url 2.2.0",
]
[[package]]
name = "parity-scale-codec"
-version = "1.3.4"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34d38aeaffc032ec69faa476b3caaca8d4dd7f3f798137ff30359e5c7869ceb6"
+checksum = "75c823fdae1bb5ff5708ee61a62697e6296175dc671710876871c853f48592b3"
dependencies = [
- "arrayvec 0.5.1",
+ "arrayvec 0.5.2",
"bitvec",
"byte-slice-cast",
"parity-scale-codec-derive",
@@ -5224,9 +5379,9 @@ dependencies = [
[[package]]
name = "parity-scale-codec-derive"
-version = "1.2.1"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd20ff7e0399b274a5f5bb37b712fccb5b3a64b9128200d1c3cc40fe709cb073"
+checksum = "9029e65297c7fd6d7013f0579e193ec2b34ae78eabca854c9417504ad8a2d214"
dependencies = [
"proc-macro-crate",
"proc-macro2",
@@ -5247,11 +5402,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e57fea504fea33f9fbb5f49f378359030e7e026a6ab849bb9e8f0787376f1bf"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"libc",
"log",
"mio-named-pipes",
- "miow 0.3.5",
+ "miow 0.3.6",
"rand 0.7.3",
"tokio 0.1.22",
"tokio-named-pipes",
@@ -5261,19 +5416,17 @@ dependencies = [
[[package]]
name = "parity-util-mem"
-version = "0.7.0"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "297ff91fa36aec49ce183484b102f6b75b46776822bd81525bfc4cc9b0dd0f5c"
+checksum = "664a8c6b8e62d8f9f2f937e391982eb433ab285b4cd9545b342441e04a906e42"
dependencies = [
- "cfg-if",
- "ethereum-types",
- "hashbrown 0.8.1",
+ "cfg-if 1.0.0",
+ "hashbrown",
"impl-trait-for-tuples",
- "lru 0.5.3",
"parity-util-mem-derive",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"primitive-types",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
"winapi 0.3.9",
]
@@ -5316,9 +5469,9 @@ dependencies = [
"mio",
"mio-extras",
"rand 0.7.3",
- "sha-1",
+ "sha-1 0.8.2",
"slab",
- "url 2.1.1",
+ "url 2.2.0",
]
[[package]]
@@ -5327,16 +5480,6 @@ version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
-[[package]]
-name = "parking_lot"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337"
-dependencies = [
- "lock_api 0.1.5",
- "parking_lot_core 0.4.0",
-]
-
[[package]]
name = "parking_lot"
version = "0.9.0"
@@ -5360,26 +5503,13 @@ dependencies = [
[[package]]
name = "parking_lot"
-version = "0.11.0"
+version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4893845fa2ca272e647da5d0e46660a314ead9c2fdd9a883aabc32e481a8733"
+checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
dependencies = [
"instant",
- "lock_api 0.4.1",
- "parking_lot_core 0.8.0",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9"
-dependencies = [
- "libc",
- "rand 0.6.5",
- "rustc_version",
- "smallvec 0.6.13",
- "winapi 0.3.9",
+ "lock_api 0.4.2",
+ "parking_lot_core 0.8.2",
]
[[package]]
@@ -5388,12 +5518,12 @@ version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
dependencies = [
- "cfg-if",
- "cloudabi 0.0.3",
+ "cfg-if 0.1.10",
+ "cloudabi",
"libc",
- "redox_syscall",
+ "redox_syscall 0.1.57",
"rustc_version",
- "smallvec 0.6.13",
+ "smallvec 0.6.14",
"winapi 0.3.9",
]
@@ -5403,26 +5533,25 @@ version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3"
dependencies = [
- "cfg-if",
- "cloudabi 0.0.3",
+ "cfg-if 0.1.10",
+ "cloudabi",
"libc",
- "redox_syscall",
- "smallvec 1.4.1",
+ "redox_syscall 0.1.57",
+ "smallvec 1.6.1",
"winapi 0.3.9",
]
[[package]]
name = "parking_lot_core"
-version = "0.8.0"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c361aa727dd08437f2f1447be8b59a33b0edd15e0fcee698f935613d9efbca9b"
+checksum = "9ccb628cad4f84851442432c60ad8e1f607e29752d0bf072cbd0baf28aa34272"
dependencies = [
- "cfg-if",
- "cloudabi 0.1.0",
+ "cfg-if 1.0.0",
"instant",
"libc",
- "redox_syscall",
- "smallvec 1.4.1",
+ "redox_syscall 0.1.57",
+ "smallvec 1.6.1",
"winapi 0.3.9",
]
@@ -5438,9 +5567,9 @@ dependencies = [
[[package]]
name = "paste"
-version = "1.0.0"
+version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6ddc8e145de01d9180ac7b78b9676f95a9c2447f6a88b2c2a04702211bc5d71"
+checksum = "c5d65c4d95931acda4498f675e332fcbdc9a06705cd07086c510e9b6009cd1c1"
[[package]]
name = "paste-impl"
@@ -5459,7 +5588,15 @@ checksum = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9"
dependencies = [
"byteorder",
"crypto-mac 0.7.0",
- "rayon",
+]
+
+[[package]]
+name = "pbkdf2"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "216eaa586a190f0a738f2f918511eecfa90f13295abec0e457cdebcceda80cbd"
+dependencies = [
+ "crypto-mac 0.8.0",
]
[[package]]
@@ -5526,7 +5663,7 @@ checksum = "54be6e404f5317079812fc8f9f5279de376d8856929e21c184ecf6bbd692a11d"
dependencies = [
"maplit",
"pest",
- "sha-1",
+ "sha-1 0.8.2",
]
[[package]]
@@ -5541,27 +5678,27 @@ dependencies = [
[[package]]
name = "pin-project"
-version = "0.4.22"
+version = "0.4.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12e3a6cdbfe94a5e4572812a0201f8c0ed98c1c452c7b8563ce2276988ef9c17"
+checksum = "2ffbc8e94b38ea3d2d8ba92aea2983b503cd75d0888d75b86bb37970b5698e15"
dependencies = [
- "pin-project-internal 0.4.22",
+ "pin-project-internal 0.4.27",
]
[[package]]
name = "pin-project"
-version = "1.0.1"
+version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee41d838744f60d959d7074e3afb6b35c7456d0f61cad38a24e35e6553f73841"
+checksum = "95b70b68509f17aa2857863b6fa00bf21fc93674c7a8893de2f469f6aa7ca2f2"
dependencies = [
- "pin-project-internal 1.0.1",
+ "pin-project-internal 1.0.4",
]
[[package]]
name = "pin-project-internal"
-version = "0.4.22"
+version = "0.4.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a0ffd45cf79d88737d7cc85bfd5d2894bee1139b356e616fe85dc389c61aaf7"
+checksum = "65ad2ae56b6abe3a1ee25f15ee605bacadb9a764edaba9c2bf4103800d4a1895"
dependencies = [
"proc-macro2",
"quote",
@@ -5570,9 +5707,9 @@ dependencies = [
[[package]]
name = "pin-project-internal"
-version = "1.0.1"
+version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81a4ffa594b66bff340084d4081df649a7dc049ac8d7fc458d8e628bfbbb2f86"
+checksum = "caa25a6393f22ce819b0f50e0be89287292fda8d425be38ee0ca14c4931d9e71"
dependencies = [
"proc-macro2",
"quote",
@@ -5581,9 +5718,15 @@ dependencies = [
[[package]]
name = "pin-project-lite"
-version = "0.1.7"
+version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "282adbf10f2698a7a77f8e983a74b2d18176c19a7fd32a45446139ae7b02b715"
+checksum = "c917123afa01924fc84bb20c4c03f004d9c38e5127e3c039bbf7f4b9c76a2f6b"
+
+[[package]]
+name = "pin-project-lite"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "439697af366c49a6d0a010c56a0d97685bc140ce0d377b13a2ea2aa42d64a827"
[[package]]
name = "pin-utils"
@@ -5593,71 +5736,89 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]]
name = "pkg-config"
-version = "0.3.18"
+version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33"
+checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c"
[[package]]
name = "platforms"
-version = "0.2.1"
+version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "feb3b2b1033b8a60b4da6ee470325f887758c95d5320f52f9ce0df055a55940e"
+checksum = "989d43012e2ca1c4a02507c67282691a0a3207f9dc67cec596b43fe925b3d325"
[[package]]
name = "plotters"
-version = "0.2.15"
+version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d1685fbe7beba33de0330629da9d955ac75bd54f33d7b79f9a895590124f6bb"
+checksum = "45ca0ae5f169d0917a7c7f5a9c1a3d3d9598f18f529dd2b8373ed988efea307a"
dependencies = [
- "js-sys",
"num-traits",
+ "plotters-backend",
+ "plotters-svg",
"wasm-bindgen",
"web-sys",
]
+[[package]]
+name = "plotters-backend"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b07fffcddc1cb3a1de753caa4e4df03b79922ba43cf882acc1bdd7e8df9f4590"
+
+[[package]]
+name = "plotters-svg"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b38a02e23bd9604b842a812063aec4ef702b57989c37b655254bb61c471ad211"
+dependencies = [
+ "plotters-backend",
+]
+
[[package]]
name = "polling"
-version = "1.1.0"
+version = "2.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0720e0b9ea9d52451cf29d3413ba8a9303f8815d9d9653ef70e03ff73e65566"
+checksum = "a2a7bc6b2a29e632e45451c941832803a18cce6781db04de8a04696cdca8bde4"
dependencies = [
- "cfg-if",
+ "cfg-if 0.1.10",
"libc",
"log",
- "wepoll-sys-stjepang",
+ "wepoll-sys",
"winapi 0.3.9",
]
[[package]]
name = "poly1305"
-version = "0.6.0"
+version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b42192ab143ed7619bf888a7f9c6733a9a2153b218e2cd557cfdb52fbf9bb1"
+checksum = "4b7456bc1ad2d4cf82b3a016be4c2ac48daf11bf990c1603ebd447fe6f30fca8"
dependencies = [
+ "cpuid-bool 0.2.0",
"universal-hash",
]
[[package]]
name = "polyval"
-version = "0.4.0"
+version = "0.4.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9a50142b55ab3ed0e9f68dfb3709f1d90d29da24e91033f28b96330643107dc"
+checksum = "eebcc4aa140b9abd2bc40d9c3f7ccec842679cd79045ac3a7ac698c1a064b7cd"
dependencies = [
- "cfg-if",
+ "cpuid-bool 0.2.0",
+ "opaque-debug 0.3.0",
"universal-hash",
]
[[package]]
name = "ppv-lite86"
-version = "0.2.8"
+version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea"
+checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857"
[[package]]
name = "predicates"
-version = "1.0.5"
+version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96bfead12e90dccead362d62bb2c90a5f6fc4584963645bc7f71a735e0b0735a"
+checksum = "eeb433456c1a57cc93554dea3ce40b4c19c4057e41c55d4a0f3d84ea71c325aa"
dependencies = [
"difference",
"predicates-core",
@@ -5665,15 +5826,15 @@ dependencies = [
[[package]]
name = "predicates-core"
-version = "1.0.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06075c3a3e92559ff8929e7a280684489ea27fe44805174c3ebd9328dcb37178"
+checksum = "57e35a3326b75e49aa85f5dc6ec15b41108cf5aee58eabb1f274dd18b73c2451"
[[package]]
name = "predicates-tree"
-version = "1.0.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e63c4859013b38a76eca2414c64911fba30def9e3202ac461a2d22831220124"
+checksum = "15f553275e5721409451eb85e15fd9a860a6e5ab4496eb215987502b5f5391f2"
dependencies = [
"predicates-core",
"treeline",
@@ -5693,13 +5854,12 @@ dependencies = [
[[package]]
name = "primitive-types"
-version = "0.7.2"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c55c21c64d0eaa4d7ed885d959ef2d62d9e488c27c0e02d9aa5ce6c877b7d5f8"
+checksum = "2415937401cb030a2a0a4d922483f945fa068f52a7dbb22ce0fe5f2b6f6adace"
dependencies = [
"fixed-hash",
"impl-codec",
- "impl-rlp",
"impl-serde",
"uint",
]
@@ -5715,9 +5875,9 @@ dependencies = [
[[package]]
name = "proc-macro-error"
-version = "1.0.3"
+version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc175e9777c3116627248584e8f8b3e2987405cabe1c0adf7d1dd28f09dc7880"
+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
"proc-macro2",
@@ -5728,28 +5888,26 @@ dependencies = [
[[package]]
name = "proc-macro-error-attr"
-version = "1.0.3"
+version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3cc9795ca17eb581285ec44936da7fc2335a3f34f2ddd13118b6f4d515435c50"
+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
"proc-macro2",
"quote",
- "syn",
- "syn-mid",
"version_check",
]
[[package]]
name = "proc-macro-hack"
-version = "0.5.16"
+version = "0.5.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e0456befd48169b9f13ef0f0ad46d492cf9d2dbb918bcf38e01eed4ce3ec5e4"
+checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
[[package]]
name = "proc-macro-nested"
-version = "0.1.6"
+version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a"
+checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086"
[[package]]
name = "proc-macro2"
@@ -5762,54 +5920,54 @@ dependencies = [
[[package]]
name = "prometheus"
-version = "0.10.0"
+version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30d70cf4412832bcac9cffe27906f4a66e450d323525e977168c70d1b36120ae"
+checksum = "c8425533e7122f0c3cc7a37e6244b16ad3a2cc32ae7ac6276e2a75da0d9c200d"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"fnv",
"lazy_static",
- "parking_lot 0.11.0",
+ "parking_lot 0.11.1",
"regex",
"thiserror",
]
[[package]]
name = "prost"
-version = "0.6.1"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce49aefe0a6144a45de32927c77bd2859a5f7677b55f220ae5b744e87389c212"
+checksum = "9e6984d2f1a23009bd270b8bb56d0926810a3d483f59c987d77969e9d8e840b2"
dependencies = [
- "bytes 0.5.6",
+ "bytes 1.0.1",
"prost-derive",
]
[[package]]
name = "prost-build"
-version = "0.6.1"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02b10678c913ecbd69350e8535c3aef91a8676c0773fc1d7b95cdd196d7f2f26"
+checksum = "32d3ebd75ac2679c2af3a92246639f9fcc8a442ee420719cc4fe195b98dd5fa3"
dependencies = [
- "bytes 0.5.6",
+ "bytes 1.0.1",
"heck",
- "itertools 0.8.2",
+ "itertools 0.9.0",
"log",
"multimap",
"petgraph",
"prost",
"prost-types",
"tempfile",
- "which",
+ "which 4.0.2",
]
[[package]]
name = "prost-derive"
-version = "0.6.1"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "537aa19b95acde10a12fec4301466386f757403de4cd4e5b4fa78fb5ecb18f72"
+checksum = "169a15f3008ecb5160cba7d37bcd690a7601b6d30cfb87a117d45e59d52af5d4"
dependencies = [
"anyhow",
- "itertools 0.8.2",
+ "itertools 0.9.0",
"proc-macro2",
"quote",
"syn",
@@ -5817,14 +5975,23 @@ dependencies = [
[[package]]
name = "prost-types"
-version = "0.6.1"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1834f67c0697c001304b75be76f67add9c89742eda3a085ad8ee0bb38c3417aa"
+checksum = "b518d7cdd93dab1d1122cf07fa9a60771836c668dde9d9e2a139f957f0d9f1bb"
dependencies = [
- "bytes 0.5.6",
+ "bytes 1.0.1",
"prost",
]
+[[package]]
+name = "psm"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3abf49e5417290756acfd26501536358560c4a5cc4a0934d390939acb3e7083a"
+dependencies = [
+ "cc",
+]
+
[[package]]
name = "pwasm-utils"
version = "0.14.0"
@@ -5836,6 +6003,17 @@ dependencies = [
"parity-wasm 0.41.0",
]
+[[package]]
+name = "pwasm-utils"
+version = "0.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1c8ac87af529432d3a4f0e2b3bbf08af49f28f09cc73ed7e551161bdaef5f78d"
+dependencies = [
+ "byteorder",
+ "log",
+ "parity-wasm 0.41.0",
+]
+
[[package]]
name = "quick-error"
version = "1.2.3"
@@ -5850,14 +6028,13 @@ checksum = "3ac73b1112776fc109b2e61909bc46c7e1bf0d7f690ffb1676553acce16d5cda"
[[package]]
name = "quickcheck"
-version = "0.9.2"
+version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a44883e74aa97ad63db83c4bf8ca490f02b2fc02f92575e720c8551e843c945f"
+checksum = "588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6"
dependencies = [
- "env_logger",
+ "env_logger 0.8.2",
"log",
- "rand 0.7.3",
- "rand_core 0.5.1",
+ "rand 0.8.3",
]
[[package]]
@@ -5868,23 +6045,23 @@ checksum = "77de3c815e5a160b1539c6592796801df2043ae35e123b46d73380cfa57af858"
dependencies = [
"futures-core",
"futures-sink",
- "pin-project-lite",
+ "pin-project-lite 0.1.11",
]
[[package]]
name = "quote"
-version = "1.0.7"
+version = "1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
+checksum = "991431c3519a3f36861882da93630ce66b52918dcf1b8e2fd66b397fc96f28df"
dependencies = [
"proc-macro2",
]
[[package]]
name = "radium"
-version = "0.3.0"
+version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "def50a86306165861203e7f84ecffbbdfdea79f0e51039b33de1e952358c47ac"
+checksum = "643f8f41a8ebc4c5dc4515c82bb8abd397b527fc20fd681b7c011c2aee5d44fb"
[[package]]
name = "rand"
@@ -5909,60 +6086,30 @@ dependencies = [
"winapi 0.3.9",
]
-[[package]]
-name = "rand"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
-dependencies = [
- "cloudabi 0.0.3",
- "fuchsia-cprng",
- "libc",
- "rand_core 0.3.1",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "rand"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
-dependencies = [
- "autocfg 0.1.7",
- "libc",
- "rand_chacha 0.1.1",
- "rand_core 0.4.2",
- "rand_hc 0.1.0",
- "rand_isaac",
- "rand_jitter",
- "rand_os",
- "rand_pcg 0.1.2",
- "rand_xorshift",
- "winapi 0.3.9",
-]
-
[[package]]
name = "rand"
version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
dependencies = [
- "getrandom 0.1.14",
+ "getrandom 0.1.16",
"libc",
"rand_chacha 0.2.2",
"rand_core 0.5.1",
"rand_hc 0.2.0",
- "rand_pcg 0.2.1",
+ "rand_pcg",
]
[[package]]
-name = "rand_chacha"
-version = "0.1.1"
+name = "rand"
+version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
+checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e"
dependencies = [
- "autocfg 0.1.7",
- "rand_core 0.3.1",
+ "libc",
+ "rand_chacha 0.3.0",
+ "rand_core 0.6.1",
+ "rand_hc 0.3.0",
]
[[package]]
@@ -5975,6 +6122,16 @@ dependencies = [
"rand_core 0.5.1",
]
+[[package]]
+name = "rand_chacha"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"
+dependencies = [
+ "ppv-lite86",
+ "rand_core 0.6.1",
+]
+
[[package]]
name = "rand_core"
version = "0.3.1"
@@ -5996,70 +6153,43 @@ version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
dependencies = [
- "getrandom 0.1.14",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
-dependencies = [
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-dependencies = [
- "rand_core 0.5.1",
+ "getrandom 0.1.16",
]
[[package]]
-name = "rand_isaac"
-version = "0.1.1"
+name = "rand_core"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
+checksum = "c026d7df8b298d90ccbbc5190bd04d85e159eaf5576caeacf8741da93ccbd2e5"
dependencies = [
- "rand_core 0.3.1",
+ "getrandom 0.2.2",
]
[[package]]
-name = "rand_jitter"
-version = "0.1.4"
+name = "rand_distr"
+version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
+checksum = "96977acbdd3a6576fb1d27391900035bf3863d4a16422973a409b488cf29ffb2"
dependencies = [
- "libc",
- "rand_core 0.4.2",
- "winapi 0.3.9",
+ "rand 0.7.3",
]
[[package]]
-name = "rand_os"
-version = "0.1.3"
+name = "rand_hc"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
+checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
dependencies = [
- "cloudabi 0.0.3",
- "fuchsia-cprng",
- "libc",
- "rand_core 0.4.2",
- "rdrand",
- "wasm-bindgen",
- "winapi 0.3.9",
+ "rand_core 0.5.1",
]
[[package]]
-name = "rand_pcg"
-version = "0.1.2"
+name = "rand_hc"
+version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
+checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"
dependencies = [
- "autocfg 0.1.7",
- "rand_core 0.4.2",
+ "rand_core 0.6.1",
]
[[package]]
@@ -6071,20 +6201,11 @@ dependencies = [
"rand_core 0.5.1",
]
-[[package]]
-name = "rand_xorshift"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
-dependencies = [
- "rand_core 0.3.1",
-]
-
[[package]]
name = "raw-cpuid"
-version = "7.0.3"
+version = "8.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4a349ca83373cfa5d6dbb66fd76e58b2cca08da71a5f6400de0a0a6a9bceeaf"
+checksum = "1fdf7d9dbd43f3d81d94a49c1c3df73cc2b3827995147e6cf7f89d4ec5483e73"
dependencies = [
"bitflags",
"cc",
@@ -6099,25 +6220,25 @@ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
[[package]]
name = "rayon"
-version = "1.3.1"
+version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080"
+checksum = "8b0d8e0819fadc20c74ea8373106ead0600e3a67ef1fe8da56e39b9ae7275674"
dependencies = [
- "autocfg 1.0.0",
- "crossbeam-deque",
+ "autocfg",
+ "crossbeam-deque 0.8.0",
"either",
"rayon-core",
]
[[package]]
name = "rayon-core"
-version = "1.7.1"
+version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280"
+checksum = "9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a"
dependencies = [
- "crossbeam-deque",
- "crossbeam-queue",
- "crossbeam-utils",
+ "crossbeam-channel",
+ "crossbeam-deque 0.8.0",
+ "crossbeam-utils 0.8.1",
"lazy_static",
"num_cpus",
]
@@ -6137,31 +6258,50 @@ version = "0.1.57"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
+[[package]]
+name = "redox_syscall"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05ec8ca9416c5ea37062b502703cd7fcb207736bc294f6e0cf367ac6fc234570"
+dependencies = [
+ "bitflags",
+]
+
[[package]]
name = "redox_users"
-version = "0.3.4"
+version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431"
+checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d"
dependencies = [
- "getrandom 0.1.14",
- "redox_syscall",
+ "getrandom 0.1.16",
+ "redox_syscall 0.1.57",
"rust-argon2",
]
+[[package]]
+name = "redox_users"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64"
+dependencies = [
+ "getrandom 0.2.2",
+ "redox_syscall 0.2.4",
+]
+
[[package]]
name = "ref-cast"
-version = "1.0.2"
+version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "745c1787167ddae5569661d5ffb8b25ae5fedbf46717eaa92d652221cec72623"
+checksum = "300f2a835d808734ee295d45007adacb9ebb29dd3ae2424acfa17930cae541da"
dependencies = [
"ref-cast-impl",
]
[[package]]
name = "ref-cast-impl"
-version = "1.0.2"
+version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d21b475ab879ef0e315ad99067fa25778c3b0377f57f1b00207448dac1a3144"
+checksum = "4c38e3aecd2b21cb3959637b883bb3714bc7e43f0268b9a29d3743ee3e55cdd2"
dependencies = [
"proc-macro2",
"quote",
@@ -6170,20 +6310,20 @@ dependencies = [
[[package]]
name = "regalloc"
-version = "0.0.27"
+version = "0.0.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9ba8aaf5fe7cf307c6dbdaeed85478961d29e25e3bee5169e11b92fa9f027a8"
+checksum = "571f7f397d61c4755285cd37853fe8e03271c243424a907415909379659381c5"
dependencies = [
"log",
"rustc-hash",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
]
[[package]]
name = "regex"
-version = "1.3.9"
+version = "1.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
+checksum = "d9251239e129e16308e70d853559389de218ac275b515068abc96829d05b948a"
dependencies = [
"aho-corasick",
"memchr",
@@ -6203,9 +6343,9 @@ dependencies = [
[[package]]
name = "regex-syntax"
-version = "0.6.18"
+version = "0.6.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
+checksum = "b5eb417147ba9860a96cfe72a0b93bf88fee1744b5636ec99ab20c1aa9376581"
[[package]]
name = "region"
@@ -6230,45 +6370,25 @@ dependencies = [
[[package]]
name = "retain_mut"
-version = "0.1.1"
+version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e005d658ad26eacc2b6c506dfde519f4e277e328d0eb3379ca61647d70a8f531"
+checksum = "53552c6c49e1e13f1a203ef0080ab3bbef0beb570a528993e83df057a9d9bba1"
[[package]]
name = "ring"
-version = "0.16.15"
+version = "0.16.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "952cd6b98c85bbc30efa1ba5783b8abf12fec8b3287ffa52605b9432313e34e4"
+checksum = "024a1e66fea74c66c66624ee5622a7ff0e4b73a13b4f5c326ddb50c708944226"
dependencies = [
"cc",
"libc",
- "once_cell 1.4.1",
+ "once_cell",
"spin",
"untrusted",
"web-sys",
"winapi 0.3.9",
]
-[[package]]
-name = "ripemd160"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eca4ecc81b7f313189bf73ce724400a07da2a6dac19588b03c8bd76a2dcc251"
-dependencies = [
- "block-buffer 0.9.0",
- "digest 0.9.0",
- "opaque-debug 0.3.0",
-]
-
-[[package]]
-name = "rlp"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a7d3f9bed94764eac15b8f14af59fac420c236adaff743b7bcc88e265cb4345"
-dependencies = [
- "rustc-hex",
-]
-
[[package]]
name = "rocksdb"
version = "0.15.0"
@@ -6281,9 +6401,9 @@ dependencies = [
[[package]]
name = "rpassword"
-version = "4.0.5"
+version = "5.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99371657d3c8e4d816fb6221db98fa408242b0b53bac08f8676a41f8554fe99f"
+checksum = "ffc936cf8a7ea60c58f030fd36a612a48f440610214dc54bc36431f9ea0c3efb"
dependencies = [
"libc",
"winapi 0.3.9",
@@ -6291,21 +6411,21 @@ dependencies = [
[[package]]
name = "rust-argon2"
-version = "0.7.0"
+version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bc8af4bda8e1ff4932523b94d3dd20ee30a87232323eda55903ffd71d2fb017"
+checksum = "4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb"
dependencies = [
- "base64 0.11.0",
+ "base64 0.13.0",
"blake2b_simd",
"constant_time_eq",
- "crossbeam-utils",
+ "crossbeam-utils 0.8.1",
]
[[package]]
name = "rustc-demangle"
-version = "0.1.16"
+version = "0.1.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
+checksum = "6e3bad0ee36814ca07d7968269dd4b7ec89ec2da10c4bb613928d3077083c232"
[[package]]
name = "rustc-hash"
@@ -6330,9 +6450,9 @@ dependencies = [
[[package]]
name = "rustls"
-version = "0.18.0"
+version = "0.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cac94b333ee2aac3284c5b8a1b7fb4dd11cba88c244e3fe33cdbd047af0eb693"
+checksum = "5d1126dcf58e93cee7d098dbda643b5f92ed724f1f6a63007c1116eed6700c81"
dependencies = [
"base64 0.12.3",
"log",
@@ -6341,6 +6461,19 @@ dependencies = [
"webpki",
]
+[[package]]
+name = "rustls"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "064fd21ff87c6e87ed4506e68beb42459caa4a0e2eb144932e6776768556980b"
+dependencies = [
+ "base64 0.13.0",
+ "log",
+ "ring",
+ "sct",
+ "webpki",
+]
+
[[package]]
name = "rustls-native-certs"
version = "0.4.0"
@@ -6348,21 +6481,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "629d439a7672da82dd955498445e496ee2096fe2117b9f796558a43fdb9e59b8"
dependencies = [
"openssl-probe",
- "rustls",
+ "rustls 0.18.1",
"schannel",
"security-framework",
]
[[package]]
name = "rustversion"
-version = "1.0.3"
+version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9bdc5e856e51e685846fb6c13a1f5e5432946c2c90501bdc76a1319f19e29da"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
+checksum = "cb5d2a036dc6d2d8fd16fde3498b04306e29bd193bf306a57427019b823d5acd"
[[package]]
name = "rw-stream-sink"
@@ -6370,8 +6498,8 @@ version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4da5fcb054c46f5a5dff833b129285a93d3f0179531735e6c866e8cc307d2020"
dependencies = [
- "futures 0.3.5",
- "pin-project 0.4.22",
+ "futures 0.3.12",
+ "pin-project 0.4.27",
"static_assertions",
]
@@ -6392,11 +6520,11 @@ dependencies = [
[[package]]
name = "salsa20"
-version = "0.6.0"
+version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7f47b10fa80f6969bbbd9c8e7cc998f082979d402a9e10579e2303a87955395"
+checksum = "399f290ffc409596022fce5ea5d4138184be4784f2b28c62c59f0d8389059a15"
dependencies = [
- "stream-cipher 0.7.1",
+ "cipher",
]
[[package]]
@@ -6410,13 +6538,12 @@ dependencies = [
[[package]]
name = "sc-authority-discovery"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"async-trait",
- "bytes 0.5.6",
"derive_more",
"either",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"libp2p",
"log",
@@ -6426,7 +6553,6 @@ dependencies = [
"quickcheck",
"rand 0.7.3",
"sc-client-api",
- "sc-keystore",
"sc-network",
"sc-peerset",
"serde_json",
@@ -6443,13 +6569,13 @@ dependencies = [
[[package]]
name = "sc-basic-authorship"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-block-builder",
"sc-client-api",
"sc-proposer-metrics",
@@ -6464,12 +6590,11 @@ dependencies = [
"sp-transaction-pool",
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
- "tokio-executor 0.2.0-alpha.6",
]
[[package]]
name = "sc-block-builder"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"parity-scale-codec",
"sc-client-api",
@@ -6487,7 +6612,7 @@ dependencies = [
[[package]]
name = "sc-chain-spec"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"impl-trait-for-tuples",
"parity-scale-codec",
@@ -6507,7 +6632,7 @@ dependencies = [
[[package]]
name = "sc-chain-spec-derive"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"proc-macro-crate",
"proc-macro2",
@@ -6517,14 +6642,11 @@ dependencies = [
[[package]]
name = "sc-cli"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
- "ansi_term 0.12.1",
- "atty",
- "bip39",
"chrono",
"fdlimit",
- "futures 0.3.5",
+ "futures 0.3.12",
"hex",
"libp2p",
"log",
@@ -6533,7 +6655,6 @@ dependencies = [
"rand 0.7.3",
"regex",
"rpassword",
- "sc-cli-proc-macro",
"sc-client-api",
"sc-keystore",
"sc-network",
@@ -6553,39 +6674,25 @@ dependencies = [
"structopt",
"tempfile",
"thiserror",
- "tokio 0.2.22",
- "tracing",
- "tracing-log",
- "tracing-subscriber",
-]
-
-[[package]]
-name = "sc-cli-proc-macro"
-version = "2.0.0"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "syn",
+ "tiny-bip39",
+ "tokio 0.2.25",
]
[[package]]
name = "sc-client-api"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"derive_more",
"fnv",
- "futures 0.3.5",
+ "futures 0.3.12",
"hash-db",
- "hex-literal",
"kvdb",
"kvdb-memorydb",
"lazy_static",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-executor",
- "sc-telemetry",
"sp-api",
"sp-blockchain",
"sp-consensus",
@@ -6593,7 +6700,6 @@ dependencies = [
"sp-database",
"sp-externalities",
"sp-inherents",
- "sp-keyring",
"sp-keystore",
"sp-runtime",
"sp-state-machine",
@@ -6606,11 +6712,12 @@ dependencies = [
"sp-version",
"substrate-prometheus-endpoint",
"substrate-test-runtime",
+ "thiserror",
]
[[package]]
name = "sc-client-db"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"blake2-rfc",
"hash-db",
@@ -6622,7 +6729,7 @@ dependencies = [
"parity-db",
"parity-scale-codec",
"parity-util-mem",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"quickcheck",
"sc-client-api",
"sc-executor",
@@ -6644,7 +6751,7 @@ dependencies = [
[[package]]
name = "sc-consensus"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"sc-client-api",
"sp-blockchain",
@@ -6654,14 +6761,15 @@ dependencies = [
[[package]]
name = "sc-consensus-aura"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
+ "getrandom 0.2.2",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-block-builder",
"sc-client-api",
"sc-consensus-slots",
@@ -6677,6 +6785,7 @@ dependencies = [
"sp-blockchain",
"sp-consensus",
"sp-consensus-aura",
+ "sp-consensus-slots",
"sp-core",
"sp-inherents",
"sp-io",
@@ -6693,11 +6802,11 @@ dependencies = [
[[package]]
name = "sc-consensus-babe"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"derive_more",
"fork-tree",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"log",
"merlin",
@@ -6705,7 +6814,7 @@ dependencies = [
"num-rational",
"num-traits",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"pdqselect",
"rand 0.7.3",
"rand_chacha 0.2.2",
@@ -6729,6 +6838,7 @@ dependencies = [
"sp-blockchain",
"sp-consensus",
"sp-consensus-babe",
+ "sp-consensus-slots",
"sp-consensus-vrf",
"sp-core",
"sp-inherents",
@@ -6747,10 +6857,10 @@ dependencies = [
[[package]]
name = "sc-consensus-babe-rpc"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"jsonrpc-core",
"jsonrpc-core-client",
"jsonrpc-derive",
@@ -6776,11 +6886,11 @@ dependencies = [
[[package]]
name = "sc-consensus-epochs"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"fork-tree",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-client-api",
"sp-blockchain",
"sp-runtime",
@@ -6788,16 +6898,17 @@ dependencies = [
[[package]]
name = "sc-consensus-manual-seal"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"assert_matches",
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"jsonrpc-core",
"jsonrpc-core-client",
"jsonrpc-derive",
"log",
- "parking_lot 0.10.2",
+ "parity-scale-codec",
+ "parking_lot 0.11.1",
"sc-basic-authorship",
"sc-client-api",
"sc-consensus-babe",
@@ -6808,8 +6919,10 @@ dependencies = [
"sp-blockchain",
"sp-consensus",
"sp-consensus-babe",
+ "sp-consensus-slots",
"sp-core",
"sp-inherents",
+ "sp-keyring",
"sp-keystore",
"sp-runtime",
"sp-timestamp",
@@ -6818,19 +6931,19 @@ dependencies = [
"substrate-test-runtime-client",
"substrate-test-runtime-transaction-pool",
"tempfile",
- "tokio 0.2.22",
+ "tokio 0.2.25",
]
[[package]]
name = "sc-consensus-pow"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-client-api",
"sp-api",
"sp-block-builder",
@@ -6846,17 +6959,18 @@ dependencies = [
[[package]]
name = "sc-consensus-slots"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-client-api",
"sc-telemetry",
"sp-api",
"sp-application-crypto",
+ "sp-arithmetic",
"sp-blockchain",
"sp-consensus",
"sp-consensus-slots",
@@ -6866,11 +6980,12 @@ dependencies = [
"sp-state-machine",
"sp-trie",
"substrate-test-runtime-client",
+ "thiserror",
]
[[package]]
name = "sc-consensus-uncles"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"log",
"sc-client-api",
@@ -6883,7 +6998,7 @@ dependencies = [
[[package]]
name = "sc-executor"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"assert_matches",
"derive_more",
@@ -6893,7 +7008,8 @@ dependencies = [
"log",
"parity-scale-codec",
"parity-wasm 0.41.0",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
+ "paste 1.0.4",
"sc-executor-common",
"sc-executor-wasmi",
"sc-executor-wasmtime",
@@ -6914,7 +7030,6 @@ dependencies = [
"sp-version",
"sp-wasm-interface",
"substrate-test-runtime",
- "test-case",
"tracing",
"tracing-subscriber",
"wasmi",
@@ -6923,23 +7038,22 @@ dependencies = [
[[package]]
name = "sc-executor-common"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"derive_more",
- "log",
"parity-scale-codec",
"parity-wasm 0.41.0",
"sp-allocator",
"sp-core",
- "sp-runtime-interface",
"sp-serializer",
"sp-wasm-interface",
+ "thiserror",
"wasmi",
]
[[package]]
name = "sc-executor-wasmi"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"log",
"parity-scale-codec",
@@ -6953,13 +7067,13 @@ dependencies = [
[[package]]
name = "sc-executor-wasmtime"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"assert_matches",
"log",
"parity-scale-codec",
"parity-wasm 0.41.0",
- "pwasm-utils",
+ "pwasm-utils 0.14.0",
"sc-executor-common",
"scoped-tls",
"sp-allocator",
@@ -6971,18 +7085,19 @@ dependencies = [
[[package]]
name = "sc-finality-grandpa"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"assert_matches",
"derive_more",
"finality-grandpa",
"fork-tree",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
+ "linked-hash-map",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
- "pin-project 0.4.22",
+ "parking_lot 0.11.1",
+ "pin-project 1.0.4",
"rand 0.7.3",
"sc-block-builder",
"sc-client-api",
@@ -7011,16 +7126,16 @@ dependencies = [
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"tempfile",
- "tokio 0.2.22",
+ "tokio 0.2.25",
]
[[package]]
name = "sc-finality-grandpa-rpc"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"derive_more",
"finality-grandpa",
- "futures 0.3.5",
+ "futures 0.3.12",
"jsonrpc-core",
"jsonrpc-core-client",
"jsonrpc-derive",
@@ -7045,11 +7160,30 @@ dependencies = [
]
[[package]]
-name = "sc-informant"
+name = "sc-finality-grandpa-warp-sync"
version = "0.8.0"
+dependencies = [
+ "derive_more",
+ "futures 0.3.12",
+ "log",
+ "num-traits",
+ "parity-scale-codec",
+ "parking_lot 0.11.1",
+ "prost",
+ "sc-client-api",
+ "sc-finality-grandpa",
+ "sc-network",
+ "sc-service",
+ "sp-blockchain",
+ "sp-runtime",
+]
+
+[[package]]
+name = "sc-informant"
+version = "0.9.0"
dependencies = [
"ansi_term 0.12.1",
- "futures 0.3.5",
+ "futures 0.3.12",
"log",
"parity-util-mem",
"sc-client-api",
@@ -7063,32 +7197,32 @@ dependencies = [
[[package]]
name = "sc-keystore"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"async-trait",
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-util",
"hex",
"merlin",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"rand 0.7.3",
"serde_json",
"sp-application-crypto",
"sp-core",
"sp-keystore",
- "subtle 2.2.3",
+ "subtle 2.4.0",
"tempfile",
]
[[package]]
name = "sc-light"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"hash-db",
"lazy_static",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-client-api",
"sc-executor",
"sp-api",
@@ -7101,33 +7235,34 @@ dependencies = [
[[package]]
name = "sc-network"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"assert_matches",
"async-std",
"async-trait",
+ "asynchronous-codec",
"bitflags",
"bs58",
- "bytes 0.5.6",
+ "bytes 1.0.1",
+ "cid",
"derive_more",
"either",
"erased-serde",
"fnv",
"fork-tree",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
- "futures_codec",
"hex",
"ip_network",
"libp2p",
"linked-hash-map",
"linked_hash_set",
"log",
- "lru 0.4.3",
+ "lru",
"nohash-hasher",
"parity-scale-codec",
- "parking_lot 0.10.2",
- "pin-project 0.4.22",
+ "parking_lot 0.11.1",
+ "pin-project 1.0.4",
"prost",
"prost-build",
"quickcheck",
@@ -7137,9 +7272,7 @@ dependencies = [
"sc-peerset",
"serde",
"serde_json",
- "slog",
- "slog_derive",
- "smallvec 0.6.13",
+ "smallvec 1.6.1",
"sp-arithmetic",
"sp-blockchain",
"sp-consensus",
@@ -7154,7 +7287,7 @@ dependencies = [
"substrate-test-runtime-client",
"tempfile",
"thiserror",
- "unsigned-varint 0.4.0",
+ "unsigned-varint 0.6.0",
"void",
"wasm-timer",
"zeroize",
@@ -7162,18 +7295,19 @@ dependencies = [
[[package]]
name = "sc-network-gossip"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"async-std",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"libp2p",
"log",
- "lru 0.4.3",
+ "lru",
"quickcheck",
"rand 0.7.3",
"sc-network",
"sp-runtime",
+ "substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"wasm-timer",
]
@@ -7182,11 +7316,12 @@ dependencies = [
name = "sc-network-test"
version = "0.8.0"
dependencies = [
- "futures 0.3.5",
+ "async-std",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"libp2p",
"log",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"rand 0.7.3",
"sc-block-builder",
"sc-client-api",
@@ -7206,26 +7341,28 @@ dependencies = [
[[package]]
name = "sc-offchain"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"bytes 0.5.6",
"fnv",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
- "hyper 0.13.7",
+ "hyper 0.13.9",
"hyper-rustls",
"lazy_static",
"log",
"num_cpus",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"rand 0.7.3",
+ "sc-block-builder",
"sc-client-api",
"sc-client-db",
"sc-keystore",
"sc-network",
"sc-transaction-pool",
"sp-api",
+ "sp-consensus",
"sp-core",
"sp-offchain",
"sp-runtime",
@@ -7234,14 +7371,14 @@ dependencies = [
"sp-utils",
"substrate-test-runtime-client",
"threadpool",
- "tokio 0.2.22",
+ "tokio 0.2.25",
]
[[package]]
name = "sc-peerset"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"libp2p",
"log",
"rand 0.7.3",
@@ -7252,7 +7389,7 @@ dependencies = [
[[package]]
name = "sc-proposer-metrics"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"log",
"substrate-prometheus-endpoint",
@@ -7260,24 +7397,26 @@ dependencies = [
[[package]]
name = "sc-rpc"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"assert_matches",
- "futures 0.1.29",
- "futures 0.3.5",
+ "futures 0.1.30",
+ "futures 0.3.12",
"hash-db",
"jsonrpc-core",
"jsonrpc-pubsub",
"lazy_static",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-block-builder",
+ "sc-cli",
"sc-client-api",
"sc-executor",
"sc-keystore",
"sc-network",
"sc-rpc-api",
+ "sc-tracing",
"sc-transaction-pool",
"serde_json",
"sp-api",
@@ -7300,17 +7439,17 @@ dependencies = [
[[package]]
name = "sc-rpc-api"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"jsonrpc-core",
"jsonrpc-core-client",
"jsonrpc-derive",
"jsonrpc-pubsub",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"serde",
"serde_json",
"sp-chain-spec",
@@ -7323,9 +7462,9 @@ dependencies = [
[[package]]
name = "sc-rpc-server"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "futures 0.1.29",
+ "futures 0.1.30",
"jsonrpc-core",
"jsonrpc-http-server",
"jsonrpc-ipc-server",
@@ -7349,19 +7488,18 @@ dependencies = [
"sp-sandbox",
"sp-std",
"sp-tasks",
- "substrate-wasm-builder-runner",
+ "substrate-wasm-builder",
]
[[package]]
name = "sc-service"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"async-std",
- "derive_more",
"directories",
"exit-future",
- "futures 0.1.29",
- "futures 0.3.5",
+ "futures 0.1.30",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"hash-db",
"jsonrpc-core",
@@ -7370,8 +7508,8 @@ dependencies = [
"log",
"parity-scale-codec",
"parity-util-mem",
- "parking_lot 0.10.2",
- "pin-project 0.4.22",
+ "parking_lot 0.11.1",
+ "pin-project 1.0.4",
"rand 0.7.3",
"sc-block-builder",
"sc-chain-spec",
@@ -7391,7 +7529,6 @@ dependencies = [
"sc-transaction-pool",
"serde",
"serde_json",
- "slog",
"sp-api",
"sp-application-crypto",
"sp-block-builder",
@@ -7416,9 +7553,11 @@ dependencies = [
"substrate-test-runtime",
"substrate-test-runtime-client",
"tempfile",
- "tokio 0.2.22",
+ "thiserror",
+ "tokio 0.2.25",
"tracing",
"tracing-futures",
+ "tracing-subscriber",
"wasm-timer",
]
@@ -7427,12 +7566,12 @@ name = "sc-service-test"
version = "2.0.0"
dependencies = [
"fdlimit",
- "futures 0.1.29",
- "futures 0.3.5",
+ "futures 0.1.30",
+ "futures 0.3.12",
"hex-literal",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-block-builder",
"sc-client-api",
"sc-client-db",
@@ -7460,20 +7599,21 @@ dependencies = [
[[package]]
name = "sc-state-db"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"log",
"parity-scale-codec",
"parity-util-mem",
"parity-util-mem-derive",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-client-api",
"sp-core",
+ "thiserror",
]
[[package]]
name = "sc-sync-state-rpc"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"jsonrpc-core",
"jsonrpc-core-client",
@@ -7487,59 +7627,80 @@ dependencies = [
"serde_json",
"sp-blockchain",
"sp-runtime",
+ "thiserror",
]
[[package]]
name = "sc-telemetry"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "futures 0.3.5",
- "futures-timer 3.0.2",
+ "chrono",
+ "futures 0.3.12",
"libp2p",
"log",
- "parking_lot 0.10.2",
- "pin-project 0.4.22",
+ "parking_lot 0.11.1",
+ "pin-project 1.0.4",
"rand 0.7.3",
"serde",
- "slog",
- "slog-json",
- "slog-scope",
+ "serde_json",
+ "sp-utils",
"take_mut",
+ "tracing",
+ "tracing-subscriber",
"void",
"wasm-timer",
]
[[package]]
name = "sc-tracing"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
+ "ansi_term 0.12.1",
+ "atty",
"erased-serde",
+ "lazy_static",
"log",
- "parking_lot 0.10.2",
+ "once_cell",
+ "parking_lot 0.11.1",
+ "regex",
"rustc-hash",
"sc-telemetry",
+ "sc-tracing-proc-macro",
"serde",
"serde_json",
- "slog",
"sp-tracing",
+ "thiserror",
"tracing",
"tracing-core",
+ "tracing-log",
"tracing-subscriber",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "sc-tracing-proc-macro"
+version = "3.0.0"
+dependencies = [
+ "proc-macro-crate",
+ "proc-macro2",
+ "quote",
+ "syn",
]
[[package]]
name = "sc-transaction-graph"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"assert_matches",
"criterion",
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"linked-hash-map",
"log",
"parity-scale-codec",
"parity-util-mem",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"retain_mut",
"serde",
"sp-blockchain",
@@ -7548,23 +7709,23 @@ dependencies = [
"sp-transaction-pool",
"sp-utils",
"substrate-test-runtime",
+ "thiserror",
"wasm-timer",
]
[[package]]
name = "sc-transaction-pool"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"assert_matches",
- "derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-diagnose",
"hex",
"intervalier",
"log",
"parity-scale-codec",
"parity-util-mem",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-block-builder",
"sc-client-api",
"sc-transaction-graph",
@@ -7580,6 +7741,7 @@ dependencies = [
"substrate-prometheus-endpoint",
"substrate-test-runtime-client",
"substrate-test-runtime-transaction-pool",
+ "thiserror",
"wasm-timer",
]
@@ -7600,14 +7762,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "021b403afe70d81eea68f6ea12f6b3c9588e5d536a94c3bf80f15e7faa267862"
dependencies = [
"arrayref",
- "arrayvec 0.5.1",
- "curve25519-dalek 2.1.0",
- "getrandom 0.1.14",
+ "arrayvec 0.5.2",
+ "curve25519-dalek 2.1.2",
+ "getrandom 0.1.16",
"merlin",
"rand 0.7.3",
"rand_core 0.5.1",
+ "serde",
"sha2 0.8.2",
- "subtle 2.2.3",
+ "subtle 2.4.0",
"zeroize",
]
@@ -7617,12 +7780,6 @@ version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2"
-[[package]]
-name = "scopeguard"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
-
[[package]]
name = "scopeguard"
version = "1.1.0"
@@ -7631,18 +7788,18 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
[[package]]
name = "scroll"
-version = "0.10.1"
+version = "0.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb2332cb595d33f7edd5700f4cbf94892e680c7f0ae56adab58a35190b66cb1"
+checksum = "fda28d4b4830b807a8b43f7b0e6b5df875311b3e7621d84577188c175b6ec1ec"
dependencies = [
"scroll_derive",
]
[[package]]
name = "scroll_derive"
-version = "0.10.2"
+version = "0.10.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e367622f934864ffa1c704ba2b82280aab856e3d8213c84c5720257eb34b15b9"
+checksum = "aaaae8f38bb311444cfb7f1979af0bc9240d95795f75f9ceddf6a59b79ceffa0"
dependencies = [
"proc-macro2",
"quote",
@@ -7661,9 +7818,9 @@ dependencies = [
[[package]]
name = "secrecy"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9182278ed645df3477a9c27bfee0621c621aa16f6972635f7f795dae3d81070f"
+checksum = "0673d6a6449f5e7d12a1caf424fd9363e2af3a4953023ed455e3c4beef4597c0"
dependencies = [
"zeroize",
]
@@ -7697,7 +7854,7 @@ version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a3186ec9e65071a2095434b1f5bb24838d4e8e130f584c790f6033c79943537"
dependencies = [
- "semver-parser",
+ "semver-parser 0.7.0",
]
[[package]]
@@ -7706,16 +7863,16 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
dependencies = [
- "semver-parser",
+ "semver-parser 0.7.0",
]
[[package]]
name = "semver"
-version = "0.10.0"
+version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "394cec28fa623e00903caf7ba4fa6fb9a0e260280bb8cdbbba029611108a0190"
+checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
dependencies = [
- "semver-parser",
+ "semver-parser 0.10.2",
"serde",
]
@@ -7726,28 +7883,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
-name = "send_wrapper"
-version = "0.2.0"
+name = "semver-parser"
+version = "0.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0eddf2e8f50ced781f288c19f18621fa72a3779e3cb58dbf23b07469b0abeb4"
+checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
+dependencies = [
+ "pest",
+]
[[package]]
name = "send_wrapper"
-version = "0.3.0"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "686ef91cf020ad8d4aca9a7047641fd6add626b7b89e14546c2b6a76781cf822"
+checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0"
[[package]]
name = "send_wrapper"
-version = "0.4.0"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0"
+checksum = "930c0acf610d3fdb5e2ab6213019aaa04e227ebe9547b0649ba599b16d788bd7"
[[package]]
name = "serde"
-version = "1.0.116"
+version = "1.0.123"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96fe57af81d28386a513cbc6858332abc6117cfdb5999647c6444b8f43a370a5"
+checksum = "92d5161132722baa40d802cc70b15262b98258453e85e5d1d365c757c73869ae"
dependencies = [
"serde_derive",
]
@@ -7764,9 +7924,9 @@ dependencies = [
[[package]]
name = "serde_derive"
-version = "1.0.116"
+version = "1.0.123"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f630a6370fd8e457873b4bd2ffdae75408bc291ba72be773772a4c2a065d9ae8"
+checksum = "9391c295d64fc0abb2c556bad848f33cb8296276b1ad2677d1ae1ace4f258f31"
dependencies = [
"proc-macro2",
"quote",
@@ -7775,9 +7935,9 @@ dependencies = [
[[package]]
name = "serde_json"
-version = "1.0.58"
+version = "1.0.61"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a230ea9107ca2220eea9d46de97eddcb04cd00e92d13dda78e478dd33fa82bd4"
+checksum = "4fceb2595057b6891a4ee808f70054bd2d12f0e97f1cbb78689b59f676df325a"
dependencies = [
"itoa",
"ryu",
@@ -7796,6 +7956,19 @@ dependencies = [
"opaque-debug 0.2.3",
]
+[[package]]
+name = "sha-1"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce3cdf1b5e620a498ee6f2a171885ac7e22f0e12089ec4b3d22b84921792507c"
+dependencies = [
+ "block-buffer 0.9.0",
+ "cfg-if 1.0.0",
+ "cpuid-bool 0.1.2",
+ "digest 0.9.0",
+ "opaque-debug 0.3.0",
+]
+
[[package]]
name = "sha2"
version = "0.8.2"
@@ -7810,30 +7983,17 @@ dependencies = [
[[package]]
name = "sha2"
-version = "0.9.1"
+version = "0.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2933378ddfeda7ea26f48c555bdad8bb446bf8a3d17832dc83e380d444cfb8c1"
+checksum = "fa827a14b29ab7f44778d14a88d3cb76e949c45083f7dbfa507d0cb699dc12de"
dependencies = [
"block-buffer 0.9.0",
- "cfg-if",
- "cpuid-bool",
+ "cfg-if 1.0.0",
+ "cpuid-bool 0.1.2",
"digest 0.9.0",
"opaque-debug 0.3.0",
]
-[[package]]
-name = "sha3"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd26bc0e7a2e3a7c959bc494caf58b72ee0c71d67704e9520f736ca7e4853ecf"
-dependencies = [
- "block-buffer 0.7.3",
- "byte-tools",
- "digest 0.8.1",
- "keccak",
- "opaque-debug 0.2.3",
-]
-
[[package]]
name = "sha3"
version = "0.9.1"
@@ -7848,9 +8008,9 @@ dependencies = [
[[package]]
name = "sharded-slab"
-version = "0.0.9"
+version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06d5a3f5166fb5b42a5439f2eee8b9de149e235961e3eb21c5808fc3ea17ff3e"
+checksum = "79c719719ee05df97490f80a45acfc99e5a30ce98a1e4fb67aee422745ae14e3"
dependencies = [
"lazy_static",
]
@@ -7862,91 +8022,68 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
[[package]]
-name = "signal-hook-registry"
-version = "1.2.0"
+name = "signal-hook"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94f478ede9f64724c5d173d7bb56099ec3e2d9fc2774aac65d34b8b890405f41"
+checksum = "7e31d442c16f047a671b5a71e2161d6e68814012b7f5379d269ebd915fac2729"
dependencies = [
- "arc-swap",
"libc",
+ "signal-hook-registry",
]
[[package]]
-name = "signature"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65211b7b6fc3f14ff9fc7a2011a434e3e6880585bd2e9e9396315ae24cbf7852"
-
-[[package]]
-name = "slab"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
-
-[[package]]
-name = "slog"
-version = "2.5.2"
+name = "signal-hook-registry"
+version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cc9c640a4adbfbcc11ffb95efe5aa7af7309e002adab54b185507dbf2377b99"
+checksum = "16f1d0fef1604ba8f7a073c7e701f213e056707210e9020af4528e0101ce11a6"
dependencies = [
- "erased-serde",
+ "libc",
]
[[package]]
-name = "slog-json"
-version = "2.3.0"
+name = "signature"
+version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddc0d2aff1f8f325ef660d9a0eb6e6dcd20b30b3f581a5897f58bf42d061c37a"
-dependencies = [
- "chrono",
- "erased-serde",
- "serde",
- "serde_json",
- "slog",
-]
+checksum = "0f0242b8e50dd9accdd56170e94ca1ebd223b098eb9c83539a6e367d0f36ae68"
[[package]]
-name = "slog-scope"
-version = "4.3.0"
+name = "simba"
+version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c44c89dd8b0ae4537d1ae318353eaf7840b4869c536e31c41e963d1ea523ee6"
+checksum = "fb931b1367faadea6b1ab1c306a860ec17aaa5fa39f367d0c744e69d971a1fb2"
dependencies = [
- "arc-swap",
- "lazy_static",
- "slog",
+ "approx",
+ "num-complex",
+ "num-traits",
+ "paste 0.1.18",
]
[[package]]
-name = "slog_derive"
-version = "0.2.0"
+name = "slab"
+version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a945ec7f7ce853e89ffa36be1e27dce9a43e82ff9093bf3461c30d5da74ed11b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
+checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
[[package]]
name = "smallvec"
-version = "0.6.13"
+version = "0.6.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6"
+checksum = "b97fcaeba89edba30f044a10c6a3cc39df9c3f17d7cd829dd1446cab35f890e0"
dependencies = [
"maybe-uninit",
]
[[package]]
name = "smallvec"
-version = "1.4.1"
+version = "1.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3757cb9d89161a2f24e1cf78efa0c1fcff485d18e3f55e0aa3480824ddaa0f3f"
+checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e"
[[package]]
name = "snow"
-version = "0.7.1"
+version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32bf8474159a95551661246cda4976e89356999e3cbfef36f493dacc3fae1e8e"
+checksum = "795dd7aeeee24468e5a32661f6d27f7b5cbed802031b2d7640c7b10f8fb2dd50"
dependencies = [
"aes-gcm",
"blake2",
@@ -7955,53 +8092,52 @@ dependencies = [
"rand_core 0.5.1",
"ring",
"rustc_version",
- "sha2 0.9.1",
- "subtle 2.2.3",
- "x25519-dalek 0.6.0",
+ "sha2 0.9.3",
+ "subtle 2.4.0",
+ "x25519-dalek",
]
[[package]]
name = "socket2"
-version = "0.3.12"
+version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03088793f677dce356f3ccc2edb1b314ad191ab702a5de3faf49304f7e104918"
+checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"libc",
- "redox_syscall",
"winapi 0.3.9",
]
[[package]]
name = "soketto"
-version = "0.4.1"
+version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85457366ae0c6ce56bf05a958aef14cd38513c236568618edbcd9a8c52cb80b0"
+checksum = "b5c71ed3d54db0a699f4948e1bb3e45b450fa31fe602621dee6680361d569c88"
dependencies = [
"base64 0.12.3",
"bytes 0.5.6",
"flate2",
- "futures 0.3.5",
+ "futures 0.3.12",
"httparse",
"log",
"rand 0.7.3",
- "sha-1",
+ "sha-1 0.9.2",
]
[[package]]
name = "sp-allocator"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "derive_more",
"log",
"sp-core",
"sp-std",
"sp-wasm-interface",
+ "thiserror",
]
[[package]]
name = "sp-api"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"hash-db",
"parity-scale-codec",
@@ -8012,11 +8148,12 @@ dependencies = [
"sp-std",
"sp-test-primitives",
"sp-version",
+ "thiserror",
]
[[package]]
name = "sp-api-proc-macro"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"blake2-rfc",
"proc-macro-crate",
@@ -8027,7 +8164,7 @@ dependencies = [
[[package]]
name = "sp-api-test"
-version = "2.0.0"
+version = "2.0.1"
dependencies = [
"criterion",
"parity-scale-codec",
@@ -8046,7 +8183,7 @@ dependencies = [
[[package]]
name = "sp-application-crypto"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
"serde",
@@ -8069,7 +8206,7 @@ dependencies = [
[[package]]
name = "sp-arithmetic"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"criterion",
"integer-sqrt",
@@ -8096,7 +8233,7 @@ dependencies = [
[[package]]
name = "sp-authority-discovery"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -8107,7 +8244,7 @@ dependencies = [
[[package]]
name = "sp-authorship"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
"sp-inherents",
@@ -8117,7 +8254,7 @@ dependencies = [
[[package]]
name = "sp-block-builder"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -8128,13 +8265,14 @@ dependencies = [
[[package]]
name = "sp-blockchain"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
+ "futures 0.3.12",
"log",
- "lru 0.4.3",
+ "lru",
"parity-scale-codec",
- "parking_lot 0.10.2",
- "sp-block-builder",
+ "parking_lot 0.11.1",
+ "sp-api",
"sp-consensus",
"sp-database",
"sp-runtime",
@@ -8144,7 +8282,7 @@ dependencies = [
[[package]]
name = "sp-chain-spec"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"serde",
"serde_json",
@@ -8152,14 +8290,14 @@ dependencies = [
[[package]]
name = "sp-consensus"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-timer 3.0.2",
"libp2p",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"serde",
"sp-api",
"sp-core",
@@ -8178,11 +8316,12 @@ dependencies = [
[[package]]
name = "sp-consensus-aura"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"parity-scale-codec",
"sp-api",
"sp-application-crypto",
+ "sp-consensus-slots",
"sp-inherents",
"sp-runtime",
"sp-std",
@@ -8191,7 +8330,7 @@ dependencies = [
[[package]]
name = "sp-consensus-babe"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"merlin",
"parity-scale-codec",
@@ -8210,7 +8349,7 @@ dependencies = [
[[package]]
name = "sp-consensus-pow"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -8221,15 +8360,16 @@ dependencies = [
[[package]]
name = "sp-consensus-slots"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"parity-scale-codec",
+ "sp-arithmetic",
"sp-runtime",
]
[[package]]
name = "sp-consensus-vrf"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"parity-scale-codec",
"schnorrkel",
@@ -8240,7 +8380,7 @@ dependencies = [
[[package]]
name = "sp-core"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"base58",
"blake2-rfc",
@@ -8248,7 +8388,7 @@ dependencies = [
"criterion",
"dyn-clonable",
"ed25519-dalek",
- "futures 0.3.5",
+ "futures 0.3.12",
"hash-db",
"hash256-std-hasher",
"hex",
@@ -8261,7 +8401,7 @@ dependencies = [
"num-traits",
"parity-scale-codec",
"parity-util-mem",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"pretty_assertions",
"primitive-types",
"rand 0.7.3",
@@ -8271,7 +8411,7 @@ dependencies = [
"secrecy",
"serde",
"serde_json",
- "sha2 0.8.2",
+ "sha2 0.9.3",
"sp-debug-derive",
"sp-externalities",
"sp-runtime-interface",
@@ -8289,24 +8429,35 @@ dependencies = [
[[package]]
name = "sp-database"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"kvdb",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
]
[[package]]
name = "sp-debug-derive"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
+[[package]]
+name = "sp-election-providers"
+version = "3.0.0"
+dependencies = [
+ "parity-scale-codec",
+ "sp-arithmetic",
+ "sp-npos-elections",
+ "sp-runtime",
+ "sp-std",
+]
+
[[package]]
name = "sp-externalities"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"environmental",
"parity-scale-codec",
@@ -8316,7 +8467,7 @@ dependencies = [
[[package]]
name = "sp-finality-grandpa"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"finality-grandpa",
"log",
@@ -8332,10 +8483,10 @@ dependencies = [
[[package]]
name = "sp-inherents"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sp-core",
"sp-std",
"thiserror",
@@ -8343,14 +8494,14 @@ dependencies = [
[[package]]
name = "sp-io"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"hash-db",
"libsecp256k1",
"log",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sp-core",
"sp-externalities",
"sp-keystore",
@@ -8366,7 +8517,7 @@ dependencies = [
[[package]]
name = "sp-keyring"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"lazy_static",
"sp-core",
@@ -8376,29 +8527,31 @@ dependencies = [
[[package]]
name = "sp-keystore"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"async-trait",
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"merlin",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"rand 0.7.3",
"rand_chacha 0.2.2",
"schnorrkel",
+ "serde",
"sp-core",
"sp-externalities",
]
[[package]]
name = "sp-npos-elections"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
"rand 0.7.3",
"serde",
"sp-arithmetic",
+ "sp-core",
"sp-npos-elections-compact",
"sp-runtime",
"sp-std",
@@ -8407,7 +8560,7 @@ dependencies = [
[[package]]
name = "sp-npos-elections-compact"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"proc-macro-crate",
"proc-macro2",
@@ -8429,7 +8582,7 @@ dependencies = [
[[package]]
name = "sp-offchain"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"sp-api",
"sp-core",
@@ -8439,15 +8592,14 @@ dependencies = [
[[package]]
name = "sp-panic-handler"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"backtrace",
- "log",
]
[[package]]
name = "sp-rpc"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"serde",
"serde_json",
@@ -8456,7 +8608,7 @@ dependencies = [
[[package]]
name = "sp-runtime"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"either",
"hash256-std-hasher",
@@ -8464,14 +8616,13 @@ dependencies = [
"log",
"parity-scale-codec",
"parity-util-mem",
- "paste 0.1.18",
+ "paste 1.0.4",
"rand 0.7.3",
"serde",
"serde_json",
"sp-application-crypto",
"sp-arithmetic",
"sp-core",
- "sp-inherents",
"sp-io",
"sp-state-machine",
"sp-std",
@@ -8479,8 +8630,9 @@ dependencies = [
[[package]]
name = "sp-runtime-interface"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
+ "impl-trait-for-tuples",
"parity-scale-codec",
"primitive-types",
"rustversion",
@@ -8500,7 +8652,7 @@ dependencies = [
[[package]]
name = "sp-runtime-interface-proc-macro"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"Inflector",
"proc-macro-crate",
@@ -8533,7 +8685,7 @@ dependencies = [
"sp-io",
"sp-runtime-interface",
"sp-std",
- "substrate-wasm-builder-runner",
+ "substrate-wasm-builder",
]
[[package]]
@@ -8544,12 +8696,12 @@ dependencies = [
"sp-io",
"sp-runtime-interface",
"sp-std",
- "substrate-wasm-builder-runner",
+ "substrate-wasm-builder",
]
[[package]]
name = "sp-sandbox"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"assert_matches",
"parity-scale-codec",
@@ -8563,7 +8715,7 @@ dependencies = [
[[package]]
name = "sp-serializer"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"serde",
"serde_json",
@@ -8571,7 +8723,7 @@ dependencies = [
[[package]]
name = "sp-session"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -8583,7 +8735,7 @@ dependencies = [
[[package]]
name = "sp-staking"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"parity-scale-codec",
"sp-runtime",
@@ -8592,17 +8744,17 @@ dependencies = [
[[package]]
name = "sp-state-machine"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"hash-db",
"hex-literal",
"log",
"num-traits",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"pretty_assertions",
"rand 0.7.3",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
"sp-core",
"sp-externalities",
"sp-panic-handler",
@@ -8616,11 +8768,11 @@ dependencies = [
[[package]]
name = "sp-std"
-version = "2.0.0"
+version = "3.0.0"
[[package]]
name = "sp-storage"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"impl-serde",
"parity-scale-codec",
@@ -8632,7 +8784,7 @@ dependencies = [
[[package]]
name = "sp-tasks"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"log",
"parity-scale-codec",
@@ -8657,7 +8809,7 @@ dependencies = [
[[package]]
name = "sp-timestamp"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"impl-trait-for-tuples",
"parity-scale-codec",
@@ -8670,7 +8822,7 @@ dependencies = [
[[package]]
name = "sp-tracing"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"log",
"parity-scale-codec",
@@ -8682,21 +8834,22 @@ dependencies = [
[[package]]
name = "sp-transaction-pool"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"log",
"parity-scale-codec",
"serde",
"sp-api",
"sp-blockchain",
"sp-runtime",
+ "thiserror",
]
[[package]]
name = "sp-trie"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"criterion",
"hash-db",
@@ -8714,9 +8867,9 @@ dependencies = [
[[package]]
name = "sp-utils"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"futures-core",
"futures-timer 3.0.2",
"lazy_static",
@@ -8725,7 +8878,7 @@ dependencies = [
[[package]]
name = "sp-version"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"impl-serde",
"parity-scale-codec",
@@ -8736,7 +8889,7 @@ dependencies = [
[[package]]
name = "sp-wasm-interface"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"impl-trait-for-tuples",
"parity-scale-codec",
@@ -8764,20 +8917,11 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
[[package]]
name = "statrs"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10102ac8d55e35db2b3fafc26f81ba8647da2e15879ab686a67e6d19af2685e8"
-dependencies = [
- "rand 0.5.6",
-]
-
-[[package]]
-name = "stream-cipher"
-version = "0.4.1"
+version = "0.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09f8ed9974042b8c3672ff3030a69fcc03b74c47c3d1ecb7755e8a3626011e88"
+checksum = "cce16f6de653e88beca7bd13780d08e09d4489dbca1f9210e041bc4852481382"
dependencies = [
- "generic-array 0.14.3",
+ "rand 0.7.3",
]
[[package]]
@@ -8786,8 +8930,8 @@ version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c80e15f898d8d8f25db24c253ea615cc14acf418ff307822995814e7d42cfa89"
dependencies = [
- "block-cipher 0.8.0",
- "generic-array 0.14.3",
+ "block-cipher",
+ "generic-array 0.14.4",
]
[[package]]
@@ -8807,9 +8951,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
[[package]]
name = "structopt"
-version = "0.3.15"
+version = "0.3.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c"
+checksum = "5277acd7ee46e63e5168a80734c9f6ee81b1367a7d8772a2d765df2a3705d28c"
dependencies = [
"clap",
"lazy_static",
@@ -8818,9 +8962,9 @@ dependencies = [
[[package]]
name = "structopt-derive"
-version = "0.4.8"
+version = "0.4.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118"
+checksum = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90"
dependencies = [
"heck",
"proc-macro-error",
@@ -8831,18 +8975,18 @@ dependencies = [
[[package]]
name = "strum"
-version = "0.16.0"
+version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6138f8f88a16d90134763314e3fc76fa3ed6a7db4725d6acf9a3ef95a3188d22"
+checksum = "7318c509b5ba57f18533982607f24070a55d353e90d4cae30c467cdb2ad5ac5c"
dependencies = [
"strum_macros",
]
[[package]]
name = "strum_macros"
-version = "0.16.0"
+version = "0.20.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0054a7df764039a6cd8592b9de84be4bec368ff081d203a7d5371cbfa8e65c81"
+checksum = "ee8bc6b87a5112aeeab1f4a9f7ab634fe6cbefc4850006df31267f4cfb9e3149"
dependencies = [
"heck",
"proc-macro2",
@@ -8854,13 +8998,8 @@ dependencies = [
name = "subkey"
version = "2.0.0"
dependencies = [
- "frame-system",
- "node-primitives",
- "node-runtime",
"sc-cli",
- "sp-core",
"structopt",
- "substrate-frame-cli",
]
[[package]]
@@ -8869,8 +9008,8 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bed6646a0159b9935b5d045611560eeef842b78d7adc3ba36f5ca325a13a0236"
dependencies = [
- "hmac",
- "pbkdf2",
+ "hmac 0.7.1",
+ "pbkdf2 0.3.0",
"schnorrkel",
"sha2 0.8.2",
"zeroize",
@@ -8878,24 +9017,25 @@ dependencies = [
[[package]]
name = "substrate-browser-utils"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"chrono",
"console_error_panic_hook",
- "console_log",
- "futures 0.1.29",
- "futures 0.3.5",
+ "futures 0.1.30",
+ "futures 0.3.12",
"futures-timer 3.0.2",
+ "getrandom 0.2.2",
"js-sys",
"kvdb-web",
"libp2p-wasm-ext",
"log",
- "rand 0.6.5",
"rand 0.7.3",
"sc-chain-spec",
"sc-informant",
"sc-network",
"sc-service",
+ "sc-telemetry",
+ "sc-tracing",
"sp-database",
"wasm-bindgen",
"wasm-bindgen-futures",
@@ -8903,14 +9043,14 @@ dependencies = [
[[package]]
name = "substrate-build-script-utils"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"platforms",
]
[[package]]
name = "substrate-frame-cli"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-system",
"sc-cli",
@@ -8921,26 +9061,26 @@ dependencies = [
[[package]]
name = "substrate-frame-rpc-support"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-support",
"frame-system",
- "futures 0.3.5",
+ "futures 0.3.12",
"jsonrpc-client-transports",
"jsonrpc-core",
"parity-scale-codec",
"sc-rpc-api",
"serde",
"sp-storage",
- "tokio 0.2.22",
+ "tokio 0.2.25",
]
[[package]]
name = "substrate-frame-rpc-system"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
"frame-system-rpc-runtime-api",
- "futures 0.3.5",
+ "futures 0.3.12",
"jsonrpc-core",
"jsonrpc-core-client",
"jsonrpc-derive",
@@ -8962,23 +9102,23 @@ dependencies = [
[[package]]
name = "substrate-prometheus-endpoint"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"async-std",
"derive_more",
"futures-util",
- "hyper 0.13.7",
+ "hyper 0.13.9",
"log",
"prometheus",
- "tokio 0.2.22",
+ "tokio 0.2.25",
]
[[package]]
name = "substrate-test-client"
-version = "2.0.0"
+version = "2.0.1"
dependencies = [
- "futures 0.1.29",
- "futures 0.3.5",
+ "futures 0.1.30",
+ "futures 0.3.12",
"hash-db",
"hex",
"parity-scale-codec",
@@ -9003,7 +9143,7 @@ dependencies = [
name = "substrate-test-runtime"
version = "2.0.0"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"frame-executive",
"frame-support",
"frame-system",
@@ -9039,7 +9179,7 @@ dependencies = [
"sp-trie",
"sp-version",
"substrate-test-runtime-client",
- "substrate-wasm-builder-runner",
+ "substrate-wasm-builder",
"trie-db",
]
@@ -9047,7 +9187,7 @@ dependencies = [
name = "substrate-test-runtime-client"
version = "2.0.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"parity-scale-codec",
"sc-block-builder",
"sc-client-api",
@@ -9068,9 +9208,9 @@ name = "substrate-test-runtime-transaction-pool"
version = "2.0.0"
dependencies = [
"derive_more",
- "futures 0.3.5",
+ "futures 0.3.12",
"parity-scale-codec",
- "parking_lot 0.10.2",
+ "parking_lot 0.11.1",
"sc-transaction-graph",
"sp-blockchain",
"sp-runtime",
@@ -9080,18 +9220,18 @@ dependencies = [
[[package]]
name = "substrate-test-utils"
-version = "2.0.0"
+version = "3.0.0"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"sc-service",
"substrate-test-utils-derive",
- "tokio 0.2.22",
+ "tokio 0.2.25",
"trybuild",
]
[[package]]
name = "substrate-test-utils-derive"
-version = "0.8.0"
+version = "0.9.0"
dependencies = [
"proc-macro-crate",
"quote",
@@ -9104,29 +9244,23 @@ version = "0.1.0"
dependencies = [
"sc-service",
"substrate-test-utils",
- "tokio 0.2.22",
+ "tokio 0.2.25",
]
[[package]]
name = "substrate-wasm-builder"
-version = "2.0.1"
+version = "4.0.0"
dependencies = [
"ansi_term 0.12.1",
"atty",
"build-helper",
"cargo_metadata",
- "fs2",
- "itertools 0.8.2",
"tempfile",
"toml",
"walkdir",
"wasm-gc-api",
]
-[[package]]
-name = "substrate-wasm-builder-runner"
-version = "2.0.0"
-
[[package]]
name = "subtle"
version = "1.0.0"
@@ -9135,32 +9269,21 @@ checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee"
[[package]]
name = "subtle"
-version = "2.2.3"
+version = "2.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "502d53007c02d7605a05df1c1a73ee436952781653da5d0bf57ad608f66932c1"
+checksum = "1e81da0851ada1f3e9d4312c704aa4f8806f0f9d69faaf8df2f3464b4a9437c2"
[[package]]
name = "syn"
-version = "1.0.44"
+version = "1.0.60"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e03e57e4fcbfe7749842d53e24ccb9aa12b7252dbe5e91d2acad31834c8b8fdd"
+checksum = "c700597eca8a5a762beb35753ef6b94df201c81cca676604f547495a0d7f0081"
dependencies = [
"proc-macro2",
"quote",
"unicode-xid",
]
-[[package]]
-name = "syn-mid"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
[[package]]
name = "synstructure"
version = "0.12.4"
@@ -9179,48 +9302,41 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60"
+[[package]]
+name = "tap"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "36474e732d1affd3a6ed582781b3683df3d0563714c59c39591e8ff707cf078e"
+
[[package]]
name = "target-lexicon"
-version = "0.10.0"
+version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab0e7238dcc7b40a7be719a25365910f6807bd864f4cce6b2e6b873658e2b19d"
+checksum = "4ee5a98e506fb7231a304c3a1bd7c132a55016cf65001e0282480665870dfcb9"
[[package]]
name = "tempfile"
-version = "3.1.0"
+version = "3.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"libc",
- "rand 0.7.3",
- "redox_syscall",
+ "rand 0.8.3",
+ "redox_syscall 0.2.4",
"remove_dir_all",
"winapi 0.3.9",
]
[[package]]
name = "termcolor"
-version = "1.1.0"
+version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
+checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4"
dependencies = [
"winapi-util",
]
-[[package]]
-name = "test-case"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a605baa797821796a751f4a959e1206079b24a4b7e1ed302b7d785d81a9276c9"
-dependencies = [
- "lazy_static",
- "proc-macro2",
- "quote",
- "syn",
- "version_check",
-]
-
[[package]]
name = "textwrap"
version = "0.11.0"
@@ -9232,18 +9348,18 @@ dependencies = [
[[package]]
name = "thiserror"
-version = "1.0.21"
+version = "1.0.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "318234ffa22e0920fe9a40d7b8369b5f649d490980cf7aadcf1eb91594869b42"
+checksum = "76cc616c6abf8c8928e2fdcc0dbfab37175edd8fb49a4641066ad1364fdab146"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
-version = "1.0.21"
+version = "1.0.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cae2447b6282786c3493999f40a9be2a6ad20cb8bd268b0a0dbf5a065535c0ab"
+checksum = "9be73a2caec27583d0046ef3796c3794f868a5bc813db689eed00c7631275cd1"
dependencies = [
"proc-macro2",
"quote",
@@ -9252,11 +9368,11 @@ dependencies = [
[[package]]
name = "thread_local"
-version = "1.0.1"
+version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
+checksum = "d8208a331e1cb318dd5bd76951d2b8fc48ca38a69f5f4e4af1b6a9f8c6236915"
dependencies = [
- "lazy_static",
+ "once_cell",
]
[[package]]
@@ -9270,28 +9386,31 @@ dependencies = [
[[package]]
name = "time"
-version = "0.1.43"
+version = "0.1.44"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
+checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255"
dependencies = [
"libc",
+ "wasi 0.10.0+wasi-snapshot-preview1",
"winapi 0.3.9",
]
[[package]]
name = "tiny-bip39"
-version = "0.7.3"
+version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0165e045cc2ae1660270ca65e1676dbaab60feb0f91b10f7d0665e9b47e31f2"
+checksum = "d9e44c4759bae7f1032e286a7ef990bd9ed23fe831b7eeba0beb97484c2e59b8"
dependencies = [
- "failure",
- "hmac",
- "once_cell 1.4.1",
- "pbkdf2",
+ "anyhow",
+ "hmac 0.8.1",
+ "once_cell",
+ "pbkdf2 0.4.0",
"rand 0.7.3",
"rustc-hash",
- "sha2 0.8.2",
+ "sha2 0.9.3",
+ "thiserror",
"unicode-normalization",
+ "zeroize",
]
[[package]]
@@ -9305,9 +9424,9 @@ dependencies = [
[[package]]
name = "tinytemplate"
-version = "1.1.0"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d3dc76004a03cec1c5932bca4cdc2e39aaa798e3f82363dd94f9adf6098c12f"
+checksum = "a2ada8616fad06a2d0c455adc530de4ef57605a8120cc65da9653e0e9623ca74"
dependencies = [
"serde",
"serde_json",
@@ -9315,9 +9434,18 @@ dependencies = [
[[package]]
name = "tinyvec"
-version = "0.3.3"
+version = "1.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "317cca572a0e89c3ce0ca1f1bdc9369547fe318a683418e42ac8f59d14701023"
+dependencies = [
+ "tinyvec_macros",
+]
+
+[[package]]
+name = "tinyvec_macros"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
+checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
[[package]]
name = "tokio"
@@ -9326,16 +9454,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"mio",
"num_cpus",
"tokio-codec",
"tokio-current-thread",
- "tokio-executor 0.1.10",
+ "tokio-executor",
"tokio-fs",
"tokio-io",
"tokio-reactor",
- "tokio-sync 0.1.8",
+ "tokio-sync",
"tokio-tcp",
"tokio-threadpool",
"tokio-timer",
@@ -9345,9 +9473,9 @@ dependencies = [
[[package]]
name = "tokio"
-version = "0.2.22"
+version = "0.2.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d34ca54d84bf2b5b4d7d31e901a8464f7b60ac145a284fba25ceb801f2ddccd"
+checksum = "6703a273949a90131b290be1fe7b039d0fc884aa1935860dfcbe056f28cd8092"
dependencies = [
"bytes 0.5.6",
"fnv",
@@ -9359,7 +9487,7 @@ dependencies = [
"mio",
"mio-uds",
"num_cpus",
- "pin-project-lite",
+ "pin-project-lite 0.1.11",
"signal-hook-registry",
"slab",
"tokio-macros",
@@ -9374,7 +9502,7 @@ checksum = "8fb220f46c53859a4b7ec083e41dec9778ff0b1851c0942b211edb89e0ccdc46"
dependencies = [
"bytes 0.4.12",
"either",
- "futures 0.1.29",
+ "futures 0.1.30",
]
[[package]]
@@ -9384,7 +9512,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "25b2998660ba0e70d18684de5d06b70b70a3a747469af9dea7618cc59e75976b"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"tokio-io",
]
@@ -9394,8 +9522,8 @@ version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b1de0e32a83f131e002238d7ccde18211c0a5397f60cbfffcb112868c2e0e20e"
dependencies = [
- "futures 0.1.29",
- "tokio-executor 0.1.10",
+ "futures 0.1.30",
+ "tokio-executor",
]
[[package]]
@@ -9404,19 +9532,8 @@ version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671"
dependencies = [
- "crossbeam-utils",
- "futures 0.1.29",
-]
-
-[[package]]
-name = "tokio-executor"
-version = "0.2.0-alpha.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ee9ceecf69145923834ea73f32ba40c790fd877b74a7817dd0b089f1eb9c7c8"
-dependencies = [
- "futures-util-preview",
- "lazy_static",
- "tokio-sync 0.2.0-alpha.6",
+ "crossbeam-utils 0.7.2",
+ "futures 0.1.30",
]
[[package]]
@@ -9425,7 +9542,7 @@ version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "297a1206e0ca6302a0eed35b700d292b275256f596e2f3fea7729d5e629b6ff4"
dependencies = [
- "futures 0.1.29",
+ "futures 0.1.30",
"tokio-io",
"tokio-threadpool",
]
@@ -9437,15 +9554,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"log",
]
[[package]]
name = "tokio-macros"
-version = "0.2.5"
+version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0c3acc6aa564495a0f2e1d59fab677cd7f81a19994cfc7f3ad0e64301560389"
+checksum = "e44da00bfc73a25f814cd8d7e57a68a5c31b74b3152a0a1d1f590c97ed06265a"
dependencies = [
"proc-macro2",
"quote",
@@ -9459,7 +9576,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9d282d483052288b2308ba5ee795f5673b159c9bdf63c385a05609da782a5eae"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"mio",
"mio-named-pipes",
"tokio 0.1.22",
@@ -9471,28 +9588,28 @@ version = "0.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351"
dependencies = [
- "crossbeam-utils",
- "futures 0.1.29",
+ "crossbeam-utils 0.7.2",
+ "futures 0.1.30",
"lazy_static",
"log",
"mio",
"num_cpus",
"parking_lot 0.9.0",
"slab",
- "tokio-executor 0.1.10",
+ "tokio-executor",
"tokio-io",
- "tokio-sync 0.1.8",
+ "tokio-sync",
]
[[package]]
name = "tokio-rustls"
-version = "0.14.0"
+version = "0.14.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "228139ddd4fea3fa345a29233009635235833e52807af7ea6448ead03890d6a9"
+checksum = "e12831b255bcfa39dc0436b01e19fea231a37db570686c06ee72c423479f889a"
dependencies = [
"futures-core",
- "rustls",
- "tokio 0.2.22",
+ "rustls 0.18.1",
+ "tokio 0.2.25",
"webpki",
]
@@ -9502,7 +9619,7 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "24da22d077e0f15f55162bdbdc661228c1581892f52074fb242678d015b45162"
dependencies = [
- "futures 0.1.29",
+ "futures 0.1.30",
]
[[package]]
@@ -9512,18 +9629,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "edfe50152bc8164fcc456dab7891fa9bf8beaf01c5ee7e1dd43a397c3cf87dee"
dependencies = [
"fnv",
- "futures 0.1.29",
-]
-
-[[package]]
-name = "tokio-sync"
-version = "0.2.0-alpha.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f1aaeb685540f7407ea0e27f1c9757d258c7c6bf4e3eb19da6fc59b747239d2"
-dependencies = [
- "fnv",
- "futures-core-preview",
- "futures-util-preview",
+ "futures 0.1.30",
]
[[package]]
@@ -9533,7 +9639,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "98df18ed66e3b72e742f185882a9e201892407957e45fbff8da17ae7a7c51f72"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"iovec",
"mio",
"tokio-io",
@@ -9546,15 +9652,15 @@ version = "0.1.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89"
dependencies = [
- "crossbeam-deque",
+ "crossbeam-deque 0.7.3",
"crossbeam-queue",
- "crossbeam-utils",
- "futures 0.1.29",
+ "crossbeam-utils 0.7.2",
+ "futures 0.1.30",
"lazy_static",
"log",
"num_cpus",
"slab",
- "tokio-executor 0.1.10",
+ "tokio-executor",
]
[[package]]
@@ -9563,10 +9669,10 @@ version = "0.2.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296"
dependencies = [
- "crossbeam-utils",
- "futures 0.1.29",
+ "crossbeam-utils 0.7.2",
+ "futures 0.1.30",
"slab",
- "tokio-executor 0.1.10",
+ "tokio-executor",
]
[[package]]
@@ -9576,7 +9682,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e2a0b10e610b39c38b031a2fcab08e4b82f16ece36504988dcbd81dbba650d82"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"log",
"mio",
"tokio-codec",
@@ -9591,7 +9697,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ab57a4ac4111c8c9dbcf70779f6fc8bc35ae4b2454809febac840ad19bd7e4e0"
dependencies = [
"bytes 0.4.12",
- "futures 0.1.29",
+ "futures 0.1.30",
"iovec",
"libc",
"log",
@@ -9612,34 +9718,34 @@ dependencies = [
"futures-core",
"futures-sink",
"log",
- "pin-project-lite",
- "tokio 0.2.22",
+ "pin-project-lite 0.1.11",
+ "tokio 0.2.25",
]
[[package]]
name = "toml"
-version = "0.5.6"
+version = "0.5.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffc92d160b1eef40665be3a05630d003936a3bc7da7421277846c2613e92c71a"
+checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa"
dependencies = [
"serde",
]
[[package]]
name = "tower-service"
-version = "0.3.0"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e987b6bf443f4b5b3b6f38704195592cca41c5bb7aedd3c3693c7081f8289860"
+checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6"
[[package]]
name = "tracing"
-version = "0.1.21"
+version = "0.1.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0987850db3733619253fe60e17cb59b82d37c7e6c0236bb81e4d6b87c879f27"
+checksum = "9f47026cdc4080c07e49b37087de021820269d996f581aac150ef9e5583eefe3"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"log",
- "pin-project-lite",
+ "pin-project-lite 0.2.4",
"tracing-attributes",
"tracing-core",
]
@@ -9670,7 +9776,7 @@ version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ab7bb6f14721aa00656086e9335d363c5c8747bae02ebe32ea2c7dece5689b4c"
dependencies = [
- "pin-project 0.4.22",
+ "pin-project 0.4.27",
"tracing",
]
@@ -9697,9 +9803,9 @@ dependencies = [
[[package]]
name = "tracing-subscriber"
-version = "0.2.13"
+version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ef0a5e15477aa303afbfac3a44cba9b6430fdaad52423b1e6c0dbbe28c3eedd"
+checksum = "a1fa8f0c8f4c594e4fc9debc1990deab13238077271ba84dd853d54902ee3401"
dependencies = [
"ansi_term 0.12.1",
"chrono",
@@ -9709,7 +9815,7 @@ dependencies = [
"serde",
"serde_json",
"sharded-slab",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
"thread_local",
"tracing",
"tracing-core",
@@ -9725,9 +9831,9 @@ checksum = "a7f741b240f1a48843f9b8e0444fb55fb2a4ff67293b50a9179dfd5ea67f8d41"
[[package]]
name = "trie-bench"
-version = "0.25.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af2cc37cac8cc158119982c920cbb9b8243d8540c1d13b8aca84484bfc83a426"
+checksum = "568257edb909a5c532b1f4ab38ee6b5dedfbf8775be6a55a29020513ebe3e072"
dependencies = [
"criterion",
"hash-db",
@@ -9741,15 +9847,15 @@ dependencies = [
[[package]]
name = "trie-db"
-version = "0.22.0"
+version = "0.22.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39f1a9a9252d38c5337cf0c5392988821a5cf1b2103245016968f2ab41de9e38"
+checksum = "ec051edf7f0fc9499a2cb0947652cab2148b9d7f61cee7605e312e9f970dacaf"
dependencies = [
"hash-db",
- "hashbrown 0.8.1",
+ "hashbrown",
"log",
"rustc-hex",
- "smallvec 1.4.1",
+ "smallvec 1.6.1",
]
[[package]]
@@ -9779,9 +9885,9 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
[[package]]
name = "trybuild"
-version = "1.0.35"
+version = "1.0.39"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7d30fe369fd650072b352b1a9cb9587669de6b89be3b8225544012c1c45292d"
+checksum = "1c9594b802f041389d2baac680663573dde3103bb4a4926d61d6aba689465978"
dependencies = [
"dissimilar",
"glob",
@@ -9794,11 +9900,13 @@ dependencies = [
[[package]]
name = "twox-hash"
-version = "1.5.0"
+version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bfd5b7557925ce778ff9b9ef90e3ade34c524b5ff10e239c69a42d546d2af56"
+checksum = "04f8ab788026715fa63b31960869617cba39117e520eb415b0139543e325ab59"
dependencies = [
- "rand 0.3.23",
+ "cfg-if 0.1.10",
+ "rand 0.7.3",
+ "static_assertions",
]
[[package]]
@@ -9815,13 +9923,13 @@ checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"
[[package]]
name = "uint"
-version = "0.8.3"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "173cd16430c206dc1a430af8a89a0e9c076cf15cb42b4aedb10e8cc8fee73681"
+checksum = "e11fe9a9348741cf134085ad57c249508345fe16411b3d7fb4ff2da2f1d6382e"
dependencies = [
"byteorder",
"crunchy",
- "rustc-hex",
+ "hex",
"static_assertions",
]
@@ -9845,18 +9953,18 @@ dependencies = [
[[package]]
name = "unicode-normalization"
-version = "0.1.13"
+version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
+checksum = "a13e63ab62dbe32aeee58d1c5408d35c36c392bba5d9d3142287219721afe606"
dependencies = [
"tinyvec",
]
[[package]]
name = "unicode-segmentation"
-version = "1.6.0"
+version = "1.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
+checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796"
[[package]]
name = "unicode-width"
@@ -9876,38 +9984,26 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402"
dependencies = [
- "generic-array 0.14.3",
- "subtle 2.2.3",
+ "generic-array 0.14.4",
+ "subtle 2.4.0",
]
[[package]]
name = "unsigned-varint"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f67332660eb59a6f1eb24ff1220c9e8d01738a8503c6002e30bcfe4bd9f2b4a9"
-
-[[package]]
-name = "unsigned-varint"
-version = "0.4.0"
+version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "669d776983b692a906c881fcd0cfb34271a48e197e4d6cb8df32b05bfc3d3fa5"
-dependencies = [
- "bytes 0.5.6",
- "futures-io",
- "futures-util",
- "futures_codec",
-]
+checksum = "f7fdeedbf205afadfe39ae559b75c3240f24e257d0ca27e85f85cb82aa19ac35"
[[package]]
name = "unsigned-varint"
-version = "0.5.1"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7fdeedbf205afadfe39ae559b75c3240f24e257d0ca27e85f85cb82aa19ac35"
+checksum = "35581ff83d4101e58b582e607120c7f5ffb17e632a980b1f38334d76b36908b2"
dependencies = [
- "bytes 0.5.6",
+ "asynchronous-codec",
+ "bytes 1.0.1",
"futures-io",
"futures-util",
- "futures_codec",
]
[[package]]
@@ -9929,20 +10025,30 @@ dependencies = [
[[package]]
name = "url"
-version = "2.1.1"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "829d4a8476c35c9bf0bbce5a3b23f4106f79728039b726d292bb93bc106787cb"
+checksum = "5909f2b0817350449ed73e8bcd81c8c3c8d9a7a5d8acba4b27db277f1868976e"
dependencies = [
+ "form_urlencoded",
"idna 0.2.0",
"matches",
"percent-encoding 2.1.0",
]
+[[package]]
+name = "value-bag"
+version = "1.0.0-alpha.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6b676010e055c99033117c2343b33a40a30b91fecd6c49055ac9cd2d6c305ab1"
+dependencies = [
+ "ctor",
+]
+
[[package]]
name = "vcpkg"
-version = "0.2.10"
+version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c"
+checksum = "b00bca6106a5e23f3eee943593759b7fcddb00554332e856d990c893966879fb"
[[package]]
name = "vec-arena"
@@ -9979,9 +10085,9 @@ dependencies = [
[[package]]
name = "waker-fn"
-version = "1.0.0"
+version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9571542c2ce85ce642e6b58b3364da2fb53526360dfb7c211add4f5c23105ff7"
+checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
[[package]]
name = "walkdir"
@@ -10000,7 +10106,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230"
dependencies = [
- "futures 0.1.29",
+ "futures 0.1.30",
"log",
"try-lock",
]
@@ -10021,13 +10127,19 @@ version = "0.9.0+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
+[[package]]
+name = "wasi"
+version = "0.10.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
+
[[package]]
name = "wasm-bindgen"
-version = "0.2.67"
+version = "0.2.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0563a9a4b071746dd5aedbc3a28c6fe9be4586fb3fbadb67c400d4f53c6b16c"
+checksum = "3cd364751395ca0f68cafb17666eee36b63077fb5ecd972bbcd74c90c4bf736e"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"serde",
"serde_json",
"wasm-bindgen-macro",
@@ -10035,9 +10147,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-backend"
-version = "0.2.67"
+version = "0.2.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc71e4c5efa60fb9e74160e89b93353bc24059999c0ae0fb03affc39770310b0"
+checksum = "1114f89ab1f4106e5b55e688b828c0ab0ea593a1ea7c094b141b14cbaaec2d62"
dependencies = [
"bumpalo",
"lazy_static",
@@ -10050,11 +10162,11 @@ dependencies = [
[[package]]
name = "wasm-bindgen-futures"
-version = "0.4.12"
+version = "0.4.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a369c5e1dfb7569e14d62af4da642a3cbc2f9a3652fe586e26ac22222aa4b04"
+checksum = "1fe9756085a84584ee9457a002b7cdfe0bfff169f45d2591d8be1345a6780e35"
dependencies = [
- "cfg-if",
+ "cfg-if 1.0.0",
"js-sys",
"wasm-bindgen",
"web-sys",
@@ -10062,9 +10174,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.67"
+version = "0.2.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97c57cefa5fa80e2ba15641578b44d36e7a64279bc5ed43c6dbaf329457a2ed2"
+checksum = "7a6ac8995ead1f084a8dea1e65f194d0973800c7f571f6edd70adf06ecf77084"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@@ -10072,9 +10184,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.67"
+version = "0.2.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "841a6d1c35c6f596ccea1f82504a192a60378f64b3bb0261904ad8f2f5657556"
+checksum = "b5a48c72f299d80557c7c62e37e7225369ecc0c963964059509fbafe917c7549"
dependencies = [
"proc-macro2",
"quote",
@@ -10085,15 +10197,15 @@ dependencies = [
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.67"
+version = "0.2.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93b162580e34310e5931c4b792560108b10fd14d64915d7fff8ff00180e70092"
+checksum = "7e7811dd7f9398f14cc76efd356f98f03aa30419dea46aa810d71e819fc97158"
[[package]]
name = "wasm-bindgen-test"
-version = "0.3.12"
+version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd8e9dad8040e378f0696b017570c6bc929aac373180e06b3d67ac5059c52da3"
+checksum = "0355fa0c1f9b792a09b6dcb6a8be24d51e71e6d74972f9eb4a44c4c004d24a25"
dependencies = [
"console_error_panic_hook",
"js-sys",
@@ -10105,9 +10217,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-test-macro"
-version = "0.3.12"
+version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c358c8d2507c1bae25efa069e62ea907aa28700b25c8c33dafb0b15ba4603627"
+checksum = "27e07b46b98024c2ba2f9e83a10c2ef0515f057f2da299c1762a2017de80438b"
dependencies = [
"proc-macro2",
"quote",
@@ -10126,15 +10238,14 @@ dependencies = [
[[package]]
name = "wasm-timer"
-version = "0.2.4"
+version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "324c5e65a08699c9c4334ba136597ab22b85dccd4b65dd1e36ccf8f723a95b54"
+checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"js-sys",
- "parking_lot 0.9.0",
+ "parking_lot 0.11.1",
"pin-utils",
- "send_wrapper 0.2.0",
"wasm-bindgen",
"wasm-bindgen-futures",
"web-sys",
@@ -10166,33 +10277,31 @@ dependencies = [
[[package]]
name = "wasmparser"
-version = "0.57.0"
+version = "0.71.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32fddd575d477c6e9702484139cf9f23dcd554b06d185ed0f56c857dd3a47aa6"
-
-[[package]]
-name = "wasmparser"
-version = "0.59.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a950e6a618f62147fd514ff445b2a0b53120d382751960797f85f058c7eda9b9"
+checksum = "89a30c99437829ede826802bfcf28500cf58df00e66cb9114df98813bc145ff1"
[[package]]
name = "wasmtime"
-version = "0.19.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cd3c4f449382779ef6e0a7c3ec6752ae614e20a42e4100000c3efdc973100e2"
+checksum = "7426055cb92bd9a1e9469b48154d8d6119cd8c498c8b70284e420342c05dc45d"
dependencies = [
"anyhow",
"backtrace",
- "cfg-if",
- "lazy_static",
+ "bincode",
+ "cfg-if 1.0.0",
+ "cpp_demangle",
+ "indexmap",
"libc",
"log",
"region",
"rustc-demangle",
- "smallvec 1.4.1",
+ "serde",
+ "smallvec 1.6.1",
"target-lexicon",
- "wasmparser 0.59.0",
+ "wasmparser",
+ "wasmtime-cache",
"wasmtime-environ",
"wasmtime-jit",
"wasmtime-profiling",
@@ -10201,74 +10310,101 @@ dependencies = [
"winapi 0.3.9",
]
+[[package]]
+name = "wasmtime-cache"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c01d9287e36921e46f5887a47007824ae5dbb9b7517a2d565660ab4471478709"
+dependencies = [
+ "anyhow",
+ "base64 0.13.0",
+ "bincode",
+ "directories-next",
+ "errno",
+ "file-per-thread-logger",
+ "libc",
+ "log",
+ "serde",
+ "sha2 0.9.3",
+ "toml",
+ "winapi 0.3.9",
+ "zstd",
+]
+
+[[package]]
+name = "wasmtime-cranelift"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4134ed3a4316cd0de0e546c6004850afe472b0fa3fcdc2f2c15f8d449562d962"
+dependencies = [
+ "cranelift-codegen",
+ "cranelift-entity",
+ "cranelift-frontend",
+ "cranelift-wasm",
+ "wasmtime-environ",
+]
+
[[package]]
name = "wasmtime-debug"
-version = "0.19.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e634af9067a3af6cf2c7d33dc3b84767ddaf5d010ba68e80eecbcea73d4a349"
+checksum = "e91fa931df6dd8af2b02606307674d3bad23f55473d5f4c809dddf7e4c4dc411"
dependencies = [
"anyhow",
- "gimli 0.21.0",
+ "gimli",
"more-asserts",
- "object 0.20.0",
+ "object 0.22.0",
"target-lexicon",
"thiserror",
- "wasmparser 0.59.0",
+ "wasmparser",
"wasmtime-environ",
]
[[package]]
name = "wasmtime-environ"
-version = "0.19.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08f85619a94ee4034bd5bb87fc3dcf71fd2237b81c840809da1201061eec9ab3"
+checksum = "a1098871dc3120aaf8190d79153e470658bb79f63ee9ca31716711e123c28220"
dependencies = [
"anyhow",
- "base64 0.12.3",
- "bincode",
- "cfg-if",
+ "cfg-if 1.0.0",
"cranelift-codegen",
"cranelift-entity",
- "cranelift-frontend",
"cranelift-wasm",
- "directories",
- "errno",
- "file-per-thread-logger",
+ "gimli",
"indexmap",
- "libc",
"log",
"more-asserts",
- "rayon",
"serde",
- "sha2 0.8.2",
"thiserror",
- "toml",
- "wasmparser 0.59.0",
- "winapi 0.3.9",
- "zstd",
+ "wasmparser",
]
[[package]]
name = "wasmtime-jit"
-version = "0.19.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e914c013c7a9f15f4e429d5431f2830fb8adb56e40567661b69c5ec1d645be23"
+checksum = "738bfcd1561ede8bb174215776fd7d9a95d5f0a47ca3deabe0282c55f9a89f68"
dependencies = [
+ "addr2line",
"anyhow",
- "cfg-if",
+ "cfg-if 1.0.0",
"cranelift-codegen",
"cranelift-entity",
"cranelift-frontend",
"cranelift-native",
"cranelift-wasm",
- "gimli 0.21.0",
+ "gimli",
"log",
"more-asserts",
- "object 0.20.0",
+ "object 0.22.0",
+ "rayon",
"region",
+ "serde",
"target-lexicon",
"thiserror",
- "wasmparser 0.59.0",
+ "wasmparser",
+ "wasmtime-cranelift",
"wasmtime-debug",
"wasmtime-environ",
"wasmtime-obj",
@@ -10279,13 +10415,13 @@ dependencies = [
[[package]]
name = "wasmtime-obj"
-version = "0.19.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e81d8e02e9bc9fe2da9b6d48bbc217f96e089f7df613f11a28a3958abc44641e"
+checksum = "3e96d77f1801131c5e86d93e42a3cf8a35402107332c202c245c83f34888a906"
dependencies = [
"anyhow",
"more-asserts",
- "object 0.20.0",
+ "object 0.22.0",
"target-lexicon",
"wasmtime-debug",
"wasmtime-environ",
@@ -10293,16 +10429,16 @@ dependencies = [
[[package]]
name = "wasmtime-profiling"
-version = "0.19.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e8d4d1af8dd5f7096cfcc89dd668d358e52980c38cce199643372ffd6590e27"
+checksum = "60bb672c9d894776d7b9250dd9b4fe890f8760201ee4f53e5f2da772b6c4debb"
dependencies = [
"anyhow",
- "cfg-if",
- "gimli 0.21.0",
+ "cfg-if 1.0.0",
+ "gimli",
"lazy_static",
"libc",
- "object 0.19.0",
+ "object 0.22.0",
"scroll",
"serde",
"target-lexicon",
@@ -10312,19 +10448,20 @@ dependencies = [
[[package]]
name = "wasmtime-runtime"
-version = "0.19.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a25f140bbbaadb07c531cba99ce1a966dba216138dc1b2a0ddecec851a01a93"
+checksum = "a978086740949eeedfefcee667b57a9e98d9a7fc0de382fcfa0da30369e3530d"
dependencies = [
"backtrace",
"cc",
- "cfg-if",
+ "cfg-if 1.0.0",
"indexmap",
"lazy_static",
"libc",
"log",
- "memoffset",
+ "memoffset 0.6.1",
"more-asserts",
+ "psm",
"region",
"thiserror",
"wasmtime-environ",
@@ -10333,27 +10470,27 @@ dependencies = [
[[package]]
name = "wast"
-version = "21.0.0"
+version = "32.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b1844f66a2bc8526d71690104c0e78a8e59ffa1597b7245769d174ebb91deb5"
+checksum = "c24a3ee360d01d60ed0a0f960ab76a6acce64348cdb0bf8699c2a866fad57c7c"
dependencies = [
"leb128",
]
[[package]]
name = "wat"
-version = "1.0.22"
+version = "1.0.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce85d72b74242c340e9e3492cfb602652d7bb324c3172dd441b5577e39a2e18c"
+checksum = "5e8f7f34773fa6318e8897283abf7941c1f250faae4e1a52f82df09c3bad7cce"
dependencies = [
"wast",
]
[[package]]
name = "web-sys"
-version = "0.3.39"
+version = "0.3.46"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bc359e5dd3b46cb9687a051d50a2fdd228e4ba7cf6fcf861a5365c3d671a642"
+checksum = "222b1ef9334f92a21d3fb53dc3fd80f30836959a90f9274a626d7e06315ba3c3"
dependencies = [
"js-sys",
"wasm-bindgen",
@@ -10361,9 +10498,9 @@ dependencies = [
[[package]]
name = "webpki"
-version = "0.21.3"
+version = "0.21.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab146130f5f790d45f82aeeb09e55a256573373ec64409fc19a6fb82fb1032ae"
+checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea"
dependencies = [
"ring",
"untrusted",
@@ -10371,18 +10508,18 @@ dependencies = [
[[package]]
name = "webpki-roots"
-version = "0.20.0"
+version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f20dea7535251981a9670857150d571846545088359b28e4951d350bdaf179f"
+checksum = "82015b7e0b8bad8185994674a13a93306bea76cf5a16c5a181382fd3a5ec2376"
dependencies = [
"webpki",
]
[[package]]
-name = "wepoll-sys-stjepang"
-version = "1.0.6"
+name = "wepoll-sys"
+version = "3.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6fd319e971980166b53e17b1026812ad66c6b54063be879eb182342b55284694"
+checksum = "0fcb14dea929042224824779fbc82d9fab8d2e6d3cbc0ac404de8edf489e77ff"
dependencies = [
"cc",
]
@@ -10396,6 +10533,16 @@ dependencies = [
"libc",
]
+[[package]]
+name = "which"
+version = "4.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87c14ef7e1b8b8ecfc75d5eca37949410046e66f15d185c01d70824f1f8111ef"
+dependencies = [
+ "libc",
+ "thiserror",
+]
+
[[package]]
name = "winapi"
version = "0.2.8"
@@ -10450,15 +10597,10 @@ dependencies = [
]
[[package]]
-name = "x25519-dalek"
-version = "0.6.0"
+name = "wyz"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "637ff90c9540fa3073bb577e65033069e4bae7c79d49d74aa3ffdf5342a53217"
-dependencies = [
- "curve25519-dalek 2.1.0",
- "rand_core 0.5.1",
- "zeroize",
-]
+checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214"
[[package]]
name = "x25519-dalek"
@@ -10466,7 +10608,7 @@ version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bc614d95359fd7afc321b66d2107ede58b246b844cf5d8a0adcca413e439f088"
dependencies = [
- "curve25519-dalek 3.0.0",
+ "curve25519-dalek 3.0.2",
"rand_core 0.5.1",
"zeroize",
]
@@ -10477,28 +10619,28 @@ version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9aeb8c4043cac71c3c299dff107171c220d179492350ea198e109a414981b83c"
dependencies = [
- "futures 0.3.5",
+ "futures 0.3.12",
"log",
"nohash-hasher",
- "parking_lot 0.11.0",
+ "parking_lot 0.11.1",
"rand 0.7.3",
"static_assertions",
]
[[package]]
name = "zeroize"
-version = "1.1.0"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3cbac2ed2ba24cc90f5e06485ac8c7c1e5449fe8911aef4d8877218af021a5b8"
+checksum = "81a974bcdd357f0dca4d41677db03436324d45a4c9ed2d0b873a5a360ce41c36"
dependencies = [
"zeroize_derive",
]
[[package]]
name = "zeroize_derive"
-version = "1.0.0"
+version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de251eec69fc7c1bc3923403d18ececb929380e016afe103da75f396704f8ca2"
+checksum = "c3f369ddb18862aba61aa49bf31e74d29f0f162dec753063200e1dc084345d16"
dependencies = [
"proc-macro2",
"quote",
@@ -10508,18 +10650,18 @@ dependencies = [
[[package]]
name = "zstd"
-version = "0.5.3+zstd.1.4.5"
+version = "0.5.4+zstd.1.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01b32eaf771efa709e8308605bbf9319bf485dc1503179ec0469b611937c0cd8"
+checksum = "69996ebdb1ba8b1517f61387a883857818a66c8a295f487b1ffd8fd9d2c82910"
dependencies = [
"zstd-safe",
]
[[package]]
name = "zstd-safe"
-version = "2.0.5+zstd.1.4.5"
+version = "2.0.6+zstd.1.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cfb642e0d27f64729a639c52db457e0ae906e7bc6f5fe8f5c453230400f1055"
+checksum = "98aa931fb69ecee256d44589d19754e61851ae4769bf963b385119b1cc37a49e"
dependencies = [
"libc",
"zstd-sys",
@@ -10527,9 +10669,9 @@ dependencies = [
[[package]]
name = "zstd-sys"
-version = "1.4.17+zstd.1.4.5"
+version = "1.4.18+zstd.1.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b89249644df056b522696b1bb9e7c18c87e8ffa3e2f0dc3b0155875d6498f01b"
+checksum = "a1e6e8778706838f43f771d80d37787cb2fe06dafe89dd3aebaf6721b9eaec81"
dependencies = [
"cc",
"glob",
diff --git a/Cargo.toml b/Cargo.toml
index b78c4da055801..38b3a2bdcf296 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,19 +1,19 @@
[workspace]
members = [
"bin/node-template/node",
- "bin/node-template/runtime",
"bin/node-template/pallets/template",
+ "bin/node-template/runtime",
"bin/node/bench",
"bin/node/browser-testing",
"bin/node/cli",
"bin/node/executor",
"bin/node/primitives",
- "bin/node/rpc-client",
"bin/node/rpc",
+ "bin/node/rpc-client",
"bin/node/runtime",
"bin/node/testing",
- "bin/utils/subkey",
"bin/utils/chain-spec-builder",
+ "bin/utils/subkey",
"client/api",
"client/authority-discovery",
"client/basic-authorship",
@@ -21,61 +21,59 @@ members = [
"client/chain-spec",
"client/chain-spec/derive",
"client/cli",
- "client/cli/proc-macro",
"client/consensus/aura",
"client/consensus/babe",
"client/consensus/babe/rpc",
"client/consensus/common",
+ "client/consensus/epochs",
"client/consensus/manual-seal",
"client/consensus/pow",
- "client/consensus/uncles",
"client/consensus/slots",
- "client/consensus/epochs",
+ "client/consensus/uncles",
"client/db",
"client/executor",
"client/executor/common",
+ "client/executor/runtime-test",
"client/executor/wasmi",
"client/executor/wasmtime",
- "client/executor/runtime-test",
"client/finality-grandpa",
+ "client/finality-grandpa-warp-sync",
"client/informant",
- "client/light",
- "client/tracing",
"client/keystore",
+ "client/light",
"client/network",
- "client/network/test",
"client/network-gossip",
+ "client/network/test",
"client/offchain",
"client/peerset",
"client/proposer-metrics",
- "client/rpc-servers",
"client/rpc",
"client/rpc-api",
+ "client/rpc-servers",
"client/service",
"client/service/test",
"client/state-db",
"client/sync-state-rpc",
"client/telemetry",
+ "client/tracing",
+ "client/tracing/proc-macro",
"client/transaction-pool",
"client/transaction-pool/graph",
- "utils/prometheus",
- "utils/wasm-builder-runner",
"frame/assets",
- "frame/aura",
"frame/atomic-swap",
+ "frame/aura",
"frame/authority-discovery",
"frame/authorship",
"frame/babe",
"frame/balances",
"frame/benchmarking",
+ "frame/bounties",
"frame/collective",
"frame/contracts",
"frame/contracts/rpc",
"frame/contracts/rpc/runtime-api",
"frame/democracy",
- "frame/elections-phragmen",
"frame/elections",
- "frame/evm",
"frame/example",
"frame/example-offchain-worker",
"frame/example-parallel",
@@ -84,7 +82,10 @@ members = [
"frame/identity",
"frame/im-online",
"frame/indices",
+ "frame/lottery",
"frame/membership",
+ "frame/merkle-mountain-range",
+ "frame/merkle-mountain-range/primitives",
"frame/metadata",
"frame/multisig",
"frame/nicks",
@@ -99,8 +100,8 @@ members = [
"frame/session/benchmarking",
"frame/society",
"frame/staking",
- "frame/staking/reward-curve",
"frame/staking/fuzzer",
+ "frame/staking/reward-curve",
"frame/sudo",
"frame/support",
"frame/support/procedural",
@@ -115,62 +116,64 @@ members = [
"frame/transaction-payment/rpc",
"frame/transaction-payment/rpc/runtime-api",
"frame/treasury",
+ "frame/tips",
"frame/utility",
"frame/vesting",
"primitives/allocator",
+ "primitives/api",
+ "primitives/api/proc-macro",
+ "primitives/api/test",
"primitives/application-crypto",
"primitives/application-crypto/test",
+ "primitives/arithmetic",
+ "primitives/arithmetic/fuzzer",
"primitives/authority-discovery",
"primitives/authorship",
"primitives/block-builder",
"primitives/blockchain",
+ "primitives/chain-spec",
"primitives/consensus/aura",
"primitives/consensus/babe",
"primitives/consensus/common",
"primitives/consensus/pow",
"primitives/consensus/vrf",
"primitives/core",
- "primitives/chain-spec",
"primitives/database",
"primitives/debug-derive",
- "primitives/storage",
"primitives/externalities",
+ "primitives/election-providers",
"primitives/finality-grandpa",
"primitives/inherents",
+ "primitives/io",
"primitives/keyring",
"primitives/keystore",
- "primitives/offchain",
- "primitives/panic-handler",
"primitives/npos-elections",
- "primitives/npos-elections/fuzzer",
"primitives/npos-elections/compact",
+ "primitives/npos-elections/fuzzer",
+ "primitives/offchain",
+ "primitives/panic-handler",
"primitives/rpc",
+ "primitives/runtime",
"primitives/runtime-interface",
"primitives/runtime-interface/proc-macro",
+ "primitives/runtime-interface/test",
"primitives/runtime-interface/test-wasm",
"primitives/runtime-interface/test-wasm-deprecated",
- "primitives/runtime-interface/test",
+ "primitives/sandbox",
"primitives/serializer",
"primitives/session",
- "primitives/api",
- "primitives/api/proc-macro",
- "primitives/api/test",
- "primitives/arithmetic",
- "primitives/arithmetic/fuzzer",
- "primitives/io",
- "primitives/runtime",
- "primitives/sandbox",
"primitives/staking",
- "primitives/std",
- "primitives/version",
"primitives/state-machine",
+ "primitives/std",
+ "primitives/storage",
"primitives/tasks",
- "primitives/timestamp",
"primitives/test-primitives",
- "primitives/transaction-pool",
+ "primitives/timestamp",
"primitives/tracing",
+ "primitives/transaction-pool",
"primitives/trie",
"primitives/utils",
+ "primitives/version",
"primitives/wasm-interface",
"test-utils/client",
"test-utils/derive",
@@ -185,6 +188,7 @@ members = [
"utils/frame/frame-utilities-cli",
"utils/frame/rpc/support",
"utils/frame/rpc/system",
+ "utils/prometheus",
"utils/wasm-builder",
]
@@ -209,7 +213,6 @@ aesni = { opt-level = 3 }
blake2 = { opt-level = 3 }
blake2-rfc = { opt-level = 3 }
blake2b_simd = { opt-level = 3 }
-blake2s_simd = { opt-level = 3 }
chacha20poly1305 = { opt-level = 3 }
cranelift-codegen = { opt-level = 3 }
cranelift-wasm = { opt-level = 3 }
@@ -219,8 +222,6 @@ crossbeam-queue = { opt-level = 3 }
crypto-mac = { opt-level = 3 }
curve25519-dalek = { opt-level = 3 }
ed25519-dalek = { opt-level = 3 }
-evm-core = { opt-level = 3 }
-evm-runtime = { opt-level = 3 }
flate2 = { opt-level = 3 }
futures-channel = { opt-level = 3 }
hashbrown = { opt-level = 3 }
diff --git a/HEADER b/HEADER-APACHE2
similarity index 92%
rename from HEADER
rename to HEADER-APACHE2
index c9b28a07b0f22..f364f4bdf845a 100644
--- a/HEADER
+++ b/HEADER-APACHE2
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/docs/license_header.txt b/HEADER-GPL3
similarity index 50%
rename from docs/license_header.txt
rename to HEADER-GPL3
index f9c1daa1ad1c1..0dd7e4f76028f 100644
--- a/docs/license_header.txt
+++ b/HEADER-GPL3
@@ -1,15 +1,17 @@
-// Copyright 2017-2020 Parity Technologies (UK) Ltd.
// This file is part of Substrate.
-// Substrate is free software: you can redistribute it and/or modify
+// Copyright (C) 2021 Parity Technologies (UK) Ltd.
+// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
+
+// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
-// Substrate is distributed in the hope that it will be useful,
+// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
-// along with Substrate. If not, see .
+// along with this program. If not, see .
diff --git a/README.md b/README.md
index c586919a1ddc3..94de8533be266 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# Substrate · [![GitHub license](https://img.shields.io/badge/license-GPL3%2FApache2-blue)](LICENSE) [![GitLab Status](https://gitlab.parity.io/parity/substrate/badges/master/pipeline.svg)](https://gitlab.parity.io/parity/substrate/pipelines) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](docs/CONTRIBUTING.adoc)
+# Substrate · [![GitHub license](https://img.shields.io/badge/license-GPL3%2FApache2-blue)](#LICENSE) [![GitLab Status](https://gitlab.parity.io/parity/substrate/badges/master/pipeline.svg)](https://gitlab.parity.io/parity/substrate/pipelines) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](docs/CONTRIBUTING.adoc)
diff --git a/bin/node-template/README.md b/bin/node-template/README.md
index 5623fedb5342b..8c8b82a14bb86 100644
--- a/bin/node-template/README.md
+++ b/bin/node-template/README.md
@@ -55,7 +55,7 @@ RUST_LOG=debug RUST_BACKTRACE=1 ./target/release/node-template -lruntime=debug -
### Multi-Node Local Testnet
To see the multi-node consensus algorithm in action, run a local testnet with two validator nodes,
-Alice and Bob, that have been [configured](/bin/node-template/node/src/chain_spec.rs) as the initial
+Alice and Bob, that have been [configured](./node/src/chain_spec.rs) as the initial
authorities of the `local` testnet chain and endowed with testnet units.
Note: this will require two terminal sessions (one for each node).
@@ -157,7 +157,7 @@ Review the [FRAME runtime implementation](./runtime/src/lib.rs) included in this
the following:
- This file configures several pallets to include in the runtime. Each pallet configuration is
- defined by a code block that begins with `impl $PALLET_NAME::Trait for Runtime`.
+ defined by a code block that begins with `impl $PALLET_NAME::Config for Runtime`.
- The pallets are composed into a single runtime by way of the
[`construct_runtime!`](https://crates.parity.io/frame_support/macro.construct_runtime.html)
macro, which is part of the core
@@ -181,8 +181,8 @@ A FRAME pallet is compromised of a number of blockchain primitives:
- Events: Substrate uses [events](https://substrate.dev/docs/en/knowledgebase/runtime/events) to
notify users of important changes in the runtime.
- Errors: When a dispatchable fails, it returns an error.
-- Trait: The `Trait` configuration interface is used to define the types and parameters upon which
- a FRAME pallet depends.
+- Config: The `Config` configuration interface is used to define the types and parameters upon
+ which a FRAME pallet depends.
## Generate a Custom Node Template
diff --git a/bin/node-template/node/Cargo.toml b/bin/node-template/node/Cargo.toml
index 8b1a47fd2bf15..464b07cb98f0b 100644
--- a/bin/node-template/node/Cargo.toml
+++ b/bin/node-template/node/Cargo.toml
@@ -18,41 +18,43 @@ name = "node-template"
[dependencies]
structopt = "0.3.8"
-sc-cli = { version = "0.8.0", path = "../../../client/cli", features = ["wasmtime"] }
-sp-core = { version = "2.0.0", path = "../../../primitives/core" }
-sc-executor = { version = "0.8.0", path = "../../../client/executor", features = ["wasmtime"] }
-sc-service = { version = "0.8.0", path = "../../../client/service", features = ["wasmtime"] }
-sp-inherents = { version = "2.0.0", path = "../../../primitives/inherents" }
-sc-transaction-pool = { version = "2.0.0", path = "../../../client/transaction-pool" }
-sp-transaction-pool = { version = "2.0.0", path = "../../../primitives/transaction-pool" }
-sc-consensus-aura = { version = "0.8.0", path = "../../../client/consensus/aura" }
-sp-consensus-aura = { version = "0.8.0", path = "../../../primitives/consensus/aura" }
-sp-consensus = { version = "0.8.0", path = "../../../primitives/consensus/common" }
-sc-consensus = { version = "0.8.0", path = "../../../client/consensus/common" }
-sc-finality-grandpa = { version = "0.8.0", path = "../../../client/finality-grandpa" }
-sp-finality-grandpa = { version = "2.0.0", path = "../../../primitives/finality-grandpa" }
-sc-client-api = { version = "2.0.0", path = "../../../client/api" }
-sp-runtime = { version = "2.0.0", path = "../../../primitives/runtime" }
+sc-cli = { version = "0.9.0", path = "../../../client/cli", features = ["wasmtime"] }
+sp-core = { version = "3.0.0", path = "../../../primitives/core" }
+sc-executor = { version = "0.9.0", path = "../../../client/executor", features = ["wasmtime"] }
+sc-service = { version = "0.9.0", path = "../../../client/service", features = ["wasmtime"] }
+sc-telemetry = { version = "3.0.0", path = "../../../client/telemetry" }
+sc-keystore = { version = "3.0.0", path = "../../../client/keystore" }
+sp-inherents = { version = "3.0.0", path = "../../../primitives/inherents" }
+sc-transaction-pool = { version = "3.0.0", path = "../../../client/transaction-pool" }
+sp-transaction-pool = { version = "3.0.0", path = "../../../primitives/transaction-pool" }
+sc-consensus-aura = { version = "0.9.0", path = "../../../client/consensus/aura" }
+sp-consensus-aura = { version = "0.9.0", path = "../../../primitives/consensus/aura" }
+sp-consensus = { version = "0.9.0", path = "../../../primitives/consensus/common" }
+sc-consensus = { version = "0.9.0", path = "../../../client/consensus/common" }
+sc-finality-grandpa = { version = "0.9.0", path = "../../../client/finality-grandpa" }
+sp-finality-grandpa = { version = "3.0.0", path = "../../../primitives/finality-grandpa" }
+sc-client-api = { version = "3.0.0", path = "../../../client/api" }
+sp-runtime = { version = "3.0.0", path = "../../../primitives/runtime" }
# These dependencies are used for the node template's RPCs
-jsonrpc-core = "15.0.0"
-sc-rpc = { version = "2.0.0", path = "../../../client/rpc" }
-sp-api = { version = "2.0.0", path = "../../../primitives/api" }
-sc-rpc-api = { version = "0.8.0", path = "../../../client/rpc-api" }
-sp-blockchain = { version = "2.0.0", path = "../../../primitives/blockchain" }
-sp-block-builder = { version = "2.0.0", path = "../../../primitives/block-builder" }
-sc-basic-authorship = { version = "0.8.0", path = "../../../client/basic-authorship" }
-substrate-frame-rpc-system = { version = "2.0.0", path = "../../../utils/frame/rpc/system" }
-pallet-transaction-payment-rpc = { version = "2.0.0", path = "../../../frame/transaction-payment/rpc/" }
+jsonrpc-core = "15.1.0"
+sc-rpc = { version = "3.0.0", path = "../../../client/rpc" }
+sp-api = { version = "3.0.0", path = "../../../primitives/api" }
+sc-rpc-api = { version = "0.9.0", path = "../../../client/rpc-api" }
+sp-blockchain = { version = "3.0.0", path = "../../../primitives/blockchain" }
+sp-block-builder = { version = "3.0.0", path = "../../../primitives/block-builder" }
+sc-basic-authorship = { version = "0.9.0", path = "../../../client/basic-authorship" }
+substrate-frame-rpc-system = { version = "3.0.0", path = "../../../utils/frame/rpc/system" }
+pallet-transaction-payment-rpc = { version = "3.0.0", path = "../../../frame/transaction-payment/rpc/" }
# These dependencies are used for runtime benchmarking
-frame-benchmarking = { version = "2.0.0", path = "../../../frame/benchmarking" }
-frame-benchmarking-cli = { version = "2.0.0", path = "../../../utils/frame/benchmarking-cli" }
+frame-benchmarking = { version = "3.0.0", path = "../../../frame/benchmarking" }
+frame-benchmarking-cli = { version = "3.0.0", path = "../../../utils/frame/benchmarking-cli" }
node-template-runtime = { version = "2.0.0", path = "../runtime" }
[build-dependencies]
-substrate-build-script-utils = { version = "2.0.0", path = "../../../utils/build-script-utils" }
+substrate-build-script-utils = { version = "3.0.0", path = "../../../utils/build-script-utils" }
[features]
default = []
diff --git a/bin/node-template/node/src/chain_spec.rs b/bin/node-template/node/src/chain_spec.rs
index 41f582fb64a46..c5451e81f20c1 100644
--- a/bin/node-template/node/src/chain_spec.rs
+++ b/bin/node-template/node/src/chain_spec.rs
@@ -39,7 +39,7 @@ pub fn authority_keys_from_seed(s: &str) -> (AuraId, GrandpaId) {
}
pub fn development_config() -> Result {
- let wasm_binary = WASM_BINARY.ok_or("Development wasm binary not available".to_string())?;
+ let wasm_binary = WASM_BINARY.ok_or_else(|| "Development wasm not available".to_string())?;
Ok(ChainSpec::from_genesis(
// Name
@@ -78,7 +78,7 @@ pub fn development_config() -> Result {
}
pub fn local_testnet_config() -> Result {
- let wasm_binary = WASM_BINARY.ok_or("Development wasm binary not available".to_string())?;
+ let wasm_binary = WASM_BINARY.ok_or_else(|| "Development wasm not available".to_string())?;
Ok(ChainSpec::from_genesis(
// Name
diff --git a/bin/node-template/node/src/cli.rs b/bin/node-template/node/src/cli.rs
index f2faf17e4ddf4..947123a6bbf5b 100644
--- a/bin/node-template/node/src/cli.rs
+++ b/bin/node-template/node/src/cli.rs
@@ -12,6 +12,8 @@ pub struct Cli {
#[derive(Debug, StructOpt)]
pub enum Subcommand {
+ /// Key management cli utilities
+ Key(sc_cli::KeySubcommand),
/// Build a chain specification.
BuildSpec(sc_cli::BuildSpecCmd),
diff --git a/bin/node-template/node/src/command.rs b/bin/node-template/node/src/command.rs
index ac950b50483ac..e61dd86418825 100644
--- a/bin/node-template/node/src/command.rs
+++ b/bin/node-template/node/src/command.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2017-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2017-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -66,6 +66,7 @@ pub fn run() -> sc_cli::Result<()> {
let cli = Cli::from_args();
match &cli.subcommand {
+ Some(Subcommand::Key(cmd)) => cmd.run(&cli),
Some(Subcommand::BuildSpec(cmd)) => {
let runner = cli.create_runner(cmd)?;
runner.sync_run(|config| cmd.run(config.chain_spec, config.network))
@@ -130,7 +131,7 @@ pub fn run() -> sc_cli::Result<()> {
match config.role {
Role::Light => service::new_light(config),
_ => service::new_full(config),
- }
+ }.map_err(sc_cli::Error::Service)
})
}
}
diff --git a/bin/node-template/node/src/service.rs b/bin/node-template/node/src/service.rs
index 90187061c9cf7..4061dce438892 100644
--- a/bin/node-template/node/src/service.rs
+++ b/bin/node-template/node/src/service.rs
@@ -9,7 +9,8 @@ use sp_inherents::InherentDataProviders;
use sc_executor::native_executor_instance;
pub use sc_executor::NativeExecutor;
use sp_consensus_aura::sr25519::{AuthorityPair as AuraPair};
-use sc_finality_grandpa::{FinalityProofProvider as GrandpaFinalityProofProvider, SharedVoterState};
+use sc_finality_grandpa::SharedVoterState;
+use sc_keystore::LocalKeystore;
// Our native executor instance.
native_executor_instance!(
@@ -34,9 +35,13 @@ pub fn new_partial(config: &Configuration) -> Result,
AuraPair
>,
- sc_finality_grandpa::LinkHalf
+ sc_finality_grandpa::LinkHalf,
)
>, ServiceError> {
+ if config.keystore_remote.is_some() {
+ return Err(ServiceError::Other(
+ format!("Remote Keystores are not supported.")))
+ }
let inherent_data_providers = sp_inherents::InherentDataProviders::new();
let (client, backend, keystore_container, task_manager) =
@@ -47,6 +52,7 @@ pub fn new_partial(config: &Configuration) -> Result Result Result Result, &'static str> {
+ // FIXME: here would the concrete keystore be built,
+ // must return a concrete type (NOT `LocalKeystore`) that
+ // implements `CryptoStore` and `SyncCryptoStore`
+ Err("Remote Keystore not supported.")
+}
+
/// Builds a new service for a full client.
-pub fn new_full(config: Configuration) -> Result {
+pub fn new_full(mut config: Configuration) -> Result {
let sc_service::PartialComponents {
- client, backend, mut task_manager, import_queue, keystore_container,
- select_chain, transaction_pool, inherent_data_providers,
+ client,
+ backend,
+ mut task_manager,
+ import_queue,
+ mut keystore_container,
+ select_chain,
+ transaction_pool,
+ inherent_data_providers,
other: (block_import, grandpa_link),
} = new_partial(&config)?;
- let finality_proof_provider =
- GrandpaFinalityProofProvider::new_for_service(backend.clone(), client.clone());
+ if let Some(url) = &config.keystore_remote {
+ match remote_keystore(url) {
+ Ok(k) => keystore_container.set_remote_keystore(k),
+ Err(e) => {
+ return Err(ServiceError::Other(
+ format!("Error hooking up remote keystore for {}: {}", url, e)))
+ }
+ };
+ }
+
+ config.network.extra_sets.push(sc_finality_grandpa::grandpa_peers_set_config());
let (network, network_status_sinks, system_rpc_tx, network_starter) =
sc_service::build_network(sc_service::BuildNetworkParams {
@@ -99,8 +132,6 @@ pub fn new_full(config: Configuration) -> Result {
import_queue,
on_demand: None,
block_announce_validator_builder: None,
- finality_proof_request_builder: None,
- finality_proof_provider: Some(finality_proof_provider.clone()),
})?;
if config.offchain_worker.enabled {
@@ -111,10 +142,10 @@ pub fn new_full(config: Configuration) -> Result {
let role = config.role.clone();
let force_authoring = config.force_authoring;
+ let backoff_authoring_blocks: Option<()> = None;
let name = config.network.node_name.clone();
let enable_grandpa = !config.disable_grandpa;
let prometheus_registry = config.prometheus_registry().cloned();
- let telemetry_connection_sinks = sc_service::TelemetryConnectionSinks::default();
let rpc_extensions_builder = {
let client = client.clone();
@@ -131,18 +162,22 @@ pub fn new_full(config: Configuration) -> Result {
})
};
- sc_service::spawn_tasks(sc_service::SpawnTasksParams {
- network: network.clone(),
- client: client.clone(),
- keystore: keystore_container.sync_keystore(),
- task_manager: &mut task_manager,
- transaction_pool: transaction_pool.clone(),
- telemetry_connection_sinks: telemetry_connection_sinks.clone(),
- rpc_extensions_builder,
- on_demand: None,
- remote_blockchain: None,
- backend, network_status_sinks, system_rpc_tx, config,
- })?;
+ let (_rpc_handlers, telemetry_connection_notifier) = sc_service::spawn_tasks(
+ sc_service::SpawnTasksParams {
+ network: network.clone(),
+ client: client.clone(),
+ keystore: keystore_container.sync_keystore(),
+ task_manager: &mut task_manager,
+ transaction_pool: transaction_pool.clone(),
+ rpc_extensions_builder,
+ on_demand: None,
+ remote_blockchain: None,
+ backend,
+ network_status_sinks,
+ system_rpc_tx,
+ config,
+ },
+ )?;
if role.is_authority() {
let proposer = sc_basic_authorship::ProposerFactory::new(
@@ -155,7 +190,7 @@ pub fn new_full(config: Configuration) -> Result {
let can_author_with =
sp_consensus::CanAuthorWithNativeVersion::new(client.executor().clone());
- let aura = sc_consensus_aura::start_aura::<_, _, _, _, _, AuraPair, _, _, _>(
+ let aura = sc_consensus_aura::start_aura::<_, _, _, _, _, AuraPair, _, _, _,_>(
sc_consensus_aura::slot_duration(&*client)?,
client.clone(),
select_chain,
@@ -164,6 +199,7 @@ pub fn new_full(config: Configuration) -> Result {
network.clone(),
inherent_data_providers.clone(),
force_authoring,
+ backoff_authoring_blocks,
keystore_container.sync_keystore(),
can_author_with,
)?;
@@ -202,7 +238,7 @@ pub fn new_full(config: Configuration) -> Result {
config: grandpa_config,
link: grandpa_link,
network,
- telemetry_on_connect: Some(telemetry_connection_sinks.on_connect_stream()),
+ telemetry_on_connect: telemetry_connection_notifier.map(|x| x.on_connect_stream()),
voting_rule: sc_finality_grandpa::VotingRulesBuilder::default().build(),
prometheus_registry,
shared_voter_state: SharedVoterState::empty(),
@@ -214,8 +250,6 @@ pub fn new_full(config: Configuration) -> Result {
"grandpa-voter",
sc_finality_grandpa::run_grandpa_voter(grandpa_config)?
);
- } else {
- sc_finality_grandpa::setup_disabled_grandpa(network)?;
}
network_starter.start_network();
@@ -223,10 +257,14 @@ pub fn new_full(config: Configuration) -> Result {
}
/// Builds a new service for a light client.
-pub fn new_light(config: Configuration) -> Result {
+pub fn new_light(mut config: Configuration) -> Result {
let (client, backend, keystore_container, mut task_manager, on_demand) =
sc_service::new_light_parts::(&config)?;
+ config.network.extra_sets.push(sc_finality_grandpa::grandpa_peers_set_config());
+
+ let select_chain = sc_consensus::LongestChain::new(backend.clone());
+
let transaction_pool = Arc::new(sc_transaction_pool::BasicPool::new_light(
config.transaction_pool.clone(),
config.prometheus_registry(),
@@ -235,19 +273,21 @@ pub fn new_light(config: Configuration) -> Result {
on_demand.clone(),
));
- let grandpa_block_import = sc_finality_grandpa::light_block_import(
- client.clone(), backend.clone(), &(client.clone() as Arc<_>),
- Arc::new(on_demand.checker().clone()) as Arc<_>,
+ let (grandpa_block_import, _) = sc_finality_grandpa::block_import(
+ client.clone(),
+ &(client.clone() as Arc<_>),
+ select_chain.clone(),
)?;
- let finality_proof_import = grandpa_block_import.clone();
- let finality_proof_request_builder =
- finality_proof_import.create_finality_proof_request_builder();
+
+ let aura_block_import = sc_consensus_aura::AuraBlockImport::<_, _, _, AuraPair>::new(
+ grandpa_block_import.clone(),
+ client.clone(),
+ );
let import_queue = sc_consensus_aura::import_queue::<_, _, _, AuraPair, _, _>(
sc_consensus_aura::slot_duration(&*client)?,
- grandpa_block_import,
- None,
- Some(Box::new(finality_proof_import)),
+ aura_block_import,
+ Some(Box::new(grandpa_block_import)),
client.clone(),
InherentDataProviders::new(),
&task_manager.spawn_handle(),
@@ -255,9 +295,6 @@ pub fn new_light(config: Configuration) -> Result {
sp_consensus::NeverCanAuthor,
)?;
- let finality_proof_provider =
- GrandpaFinalityProofProvider::new_for_service(backend.clone(), client.clone());
-
let (network, network_status_sinks, system_rpc_tx, network_starter) =
sc_service::build_network(sc_service::BuildNetworkParams {
config: &config,
@@ -267,8 +304,6 @@ pub fn new_light(config: Configuration) -> Result {
import_queue,
on_demand: Some(on_demand.clone()),
block_announce_validator_builder: None,
- finality_proof_request_builder: Some(finality_proof_request_builder),
- finality_proof_provider: Some(finality_proof_provider),
})?;
if config.offchain_worker.enabled {
@@ -283,7 +318,6 @@ pub fn new_light(config: Configuration) -> Result {
task_manager: &mut task_manager,
on_demand: Some(on_demand),
rpc_extensions_builder: Box::new(|_, _| ()),
- telemetry_connection_sinks: sc_service::TelemetryConnectionSinks::default(),
config,
client,
keystore: keystore_container.sync_keystore(),
@@ -291,9 +325,9 @@ pub fn new_light(config: Configuration) -> Result {
network,
network_status_sinks,
system_rpc_tx,
- })?;
+ })?;
- network_starter.start_network();
+ network_starter.start_network();
- Ok(task_manager)
+ Ok(task_manager)
}
diff --git a/bin/node-template/pallets/template/Cargo.toml b/bin/node-template/pallets/template/Cargo.toml
index 12b810de186f4..a13d05082b016 100644
--- a/bin/node-template/pallets/template/Cargo.toml
+++ b/bin/node-template/pallets/template/Cargo.toml
@@ -13,31 +13,34 @@ readme = "README.md"
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
-codec = { package = "parity-scale-codec", version = "1.3.4", default-features = false, features = ["derive"] }
+codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
[dependencies.frame-support]
default-features = false
-version = "2.0.0"
+version = "3.0.0"
path = "../../../../frame/support"
[dependencies.frame-system]
default-features = false
-version = "2.0.0"
+version = "3.0.0"
path = "../../../../frame/system"
+[dev-dependencies]
+serde = { version = "1.0.101" }
+
[dev-dependencies.sp-core]
default-features = false
-version = "2.0.0"
+version = "3.0.0"
path = "../../../../primitives/core"
[dev-dependencies.sp-io]
default-features = false
-version = "2.0.0"
+version = "3.0.0"
path = "../../../../primitives/io"
[dev-dependencies.sp-runtime]
default-features = false
-version = "2.0.0"
+version = "3.0.0"
path = "../../../../primitives/runtime"
diff --git a/bin/node-template/pallets/template/src/lib.rs b/bin/node-template/pallets/template/src/lib.rs
index 729a71278aa9f..52d9e8111d139 100644
--- a/bin/node-template/pallets/template/src/lib.rs
+++ b/bin/node-template/pallets/template/src/lib.rs
@@ -4,8 +4,7 @@
/// Learn more about FRAME and the core library of Substrate FRAME pallets:
/// https://substrate.dev/docs/en/knowledgebase/runtime/frame
-use frame_support::{decl_module, decl_storage, decl_event, decl_error, dispatch, traits::Get};
-use frame_system::ensure_signed;
+pub use pallet::*;
#[cfg(test)]
mod mock;
@@ -13,89 +12,91 @@ mod mock;
#[cfg(test)]
mod tests;
-/// Configure the pallet by specifying the parameters and types on which it depends.
-pub trait Trait: frame_system::Trait {
- /// Because this pallet emits events, it depends on the runtime's definition of an event.
- type Event: From> + Into<::Event>;
-}
+#[frame_support::pallet]
+pub mod pallet {
+ use frame_support::{dispatch::DispatchResultWithPostInfo, pallet_prelude::*};
+ use frame_system::pallet_prelude::*;
-// The pallet's runtime storage items.
-// https://substrate.dev/docs/en/knowledgebase/runtime/storage
-decl_storage! {
- // A unique name is used to ensure that the pallet's storage items are isolated.
- // This name may be updated, but each pallet in the runtime must use a unique name.
- // ---------------------------------vvvvvvvvvvvvvv
- trait Store for Module as TemplateModule {
- // Learn more about declaring storage items:
- // https://substrate.dev/docs/en/knowledgebase/runtime/storage#declaring-storage-items
- Something get(fn something): Option;
+ /// Configure the pallet by specifying the parameters and types on which it depends.
+ #[pallet::config]
+ pub trait Config: frame_system::Config {
+ /// Because this pallet emits events, it depends on the runtime's definition of an event.
+ type Event: From> + IsType<::Event>;
}
-}
-// Pallets use events to inform users when important changes are made.
-// https://substrate.dev/docs/en/knowledgebase/runtime/events
-decl_event!(
- pub enum Event where AccountId = ::AccountId {
+ #[pallet::pallet]
+ #[pallet::generate_store(pub(super) trait Store)]
+ pub struct Pallet(_);
+
+ // The pallet's runtime storage items.
+ // https://substrate.dev/docs/en/knowledgebase/runtime/storage
+ #[pallet::storage]
+ #[pallet::getter(fn something)]
+ // Learn more about declaring storage items:
+ // https://substrate.dev/docs/en/knowledgebase/runtime/storage#declaring-storage-items
+ pub type Something = StorageValue<_, u32>;
+
+ // Pallets use events to inform users when important changes are made.
+ // https://substrate.dev/docs/en/knowledgebase/runtime/events
+ #[pallet::event]
+ #[pallet::metadata(T::AccountId = "AccountId")]
+ #[pallet::generate_deposit(pub(super) fn deposit_event)]
+ pub enum Event {
/// Event documentation should end with an array that provides descriptive names for event
/// parameters. [something, who]
- SomethingStored(u32, AccountId),
+ SomethingStored(u32, T::AccountId),
}
-);
-
-// Errors inform users that something went wrong.
-decl_error! {
- pub enum Error for Module {
+
+ // Errors inform users that something went wrong.
+ #[pallet::error]
+ pub enum Error {
/// Error names should be descriptive.
NoneValue,
/// Errors should have helpful documentation associated with them.
StorageOverflow,
}
-}
-
-// Dispatchable functions allows users to interact with the pallet and invoke state changes.
-// These functions materialize as "extrinsics", which are often compared to transactions.
-// Dispatchable functions must be annotated with a weight and must return a DispatchResult.
-decl_module! {
- pub struct Module for enum Call where origin: T::Origin {
- // Errors must be initialized if they are used by the pallet.
- type Error = Error;
- // Events must be initialized if they are used by the pallet.
- fn deposit_event() = default;
+ #[pallet::hooks]
+ impl Hooks> for Pallet {}
+ // Dispatchable functions allows users to interact with the pallet and invoke state changes.
+ // These functions materialize as "extrinsics", which are often compared to transactions.
+ // Dispatchable functions must be annotated with a weight and must return a DispatchResult.
+ #[pallet::call]
+ impl Pallet {
/// An example dispatchable that takes a singles value as a parameter, writes the value to
/// storage and emits an event. This function must be dispatched by a signed extrinsic.
- #[weight = 10_000 + T::DbWeight::get().writes(1)]
- pub fn do_something(origin, something: u32) -> dispatch::DispatchResult {
+ #[pallet::weight(10_000 + T::DbWeight::get().writes(1))]
+ pub fn do_something(origin: OriginFor, something: u32) -> DispatchResultWithPostInfo {
// Check that the extrinsic was signed and get the signer.
// This function will return an error if the extrinsic is not signed.
// https://substrate.dev/docs/en/knowledgebase/runtime/origin
let who = ensure_signed(origin)?;
// Update storage.
- Something::put(something);
+ >::put(something);
// Emit an event.
- Self::deposit_event(RawEvent::SomethingStored(something, who));
- // Return a successful DispatchResult
- Ok(())
+ Self::deposit_event(Event::SomethingStored(something, who));
+ // Return a successful DispatchResultWithPostInfo
+ Ok(().into())
}
/// An example dispatchable that may throw a custom error.
- #[weight = 10_000 + T::DbWeight::get().reads_writes(1,1)]
- pub fn cause_error(origin) -> dispatch::DispatchResult {
+ #[pallet::weight(10_000 + T::DbWeight::get().reads_writes(1,1))]
+ pub fn cause_error(origin: OriginFor) -> DispatchResultWithPostInfo {
let _who = ensure_signed(origin)?;
// Read a value from storage.
- match Something::get() {
+ match >::get() {
// Return an error if the value has not been set.
None => Err(Error::::NoneValue)?,
Some(old) => {
// Increment the value read from storage; will error in the event of overflow.
let new = old.checked_add(1).ok_or(Error::::StorageOverflow)?;
// Update the value in storage with the incremented result.
- Something::put(new);
- Ok(())
+ >::put(new);
+ Ok(().into())
},
}
}
diff --git a/bin/node-template/pallets/template/src/mock.rs b/bin/node-template/pallets/template/src/mock.rs
index a3dff240e4847..d33670f2e9cb0 100644
--- a/bin/node-template/pallets/template/src/mock.rs
+++ b/bin/node-template/pallets/template/src/mock.rs
@@ -1,30 +1,38 @@
-use crate::{Module, Trait};
+use crate as pallet_template;
use sp_core::H256;
-use frame_support::{impl_outer_origin, parameter_types, weights::Weight};
+use frame_support::parameter_types;
use sp_runtime::{
- traits::{BlakeTwo256, IdentityLookup}, testing::Header, Perbill,
+ traits::{BlakeTwo256, IdentityLookup}, testing::Header,
};
use frame_system as system;
-impl_outer_origin! {
- pub enum Origin for Test {}
-}
+type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic;
+type Block = frame_system::mocking::MockBlock;
// Configure a mock runtime to test the pallet.
+frame_support::construct_runtime!(
+ pub enum Test where
+ Block = Block,
+ NodeBlock = Block,
+ UncheckedExtrinsic = UncheckedExtrinsic,
+ {
+ System: frame_system::{Module, Call, Config, Storage, Event},
+ TemplateModule: pallet_template::{Module, Call, Storage, Event},
+ }
+);
-#[derive(Clone, Eq, PartialEq)]
-pub struct Test;
parameter_types! {
pub const BlockHashCount: u64 = 250;
- pub const MaximumBlockWeight: Weight = 1024;
- pub const MaximumBlockLength: u32 = 2 * 1024;
- pub const AvailableBlockRatio: Perbill = Perbill::from_percent(75);
+ pub const SS58Prefix: u8 = 42;
}
-impl system::Trait for Test {
+impl system::Config for Test {
type BaseCallFilter = ();
+ type BlockWeights = ();
+ type BlockLength = ();
+ type DbWeight = ();
type Origin = Origin;
- type Call = ();
+ type Call = Call;
type Index = u64;
type BlockNumber = u64;
type Hash = H256;
@@ -32,29 +40,21 @@ impl system::Trait for Test {
type AccountId = u64;
type Lookup = IdentityLookup;
type Header = Header;
- type Event = ();
+ type Event = Event;
type BlockHashCount = BlockHashCount;
- type MaximumBlockWeight = MaximumBlockWeight;
- type DbWeight = ();
- type BlockExecutionWeight = ();
- type ExtrinsicBaseWeight = ();
- type MaximumExtrinsicWeight = MaximumBlockWeight;
- type MaximumBlockLength = MaximumBlockLength;
- type AvailableBlockRatio = AvailableBlockRatio;
type Version = ();
- type PalletInfo = ();
+ type PalletInfo = PalletInfo;
type AccountData = ();
type OnNewAccount = ();
type OnKilledAccount = ();
type SystemWeightInfo = ();
+ type SS58Prefix = SS58Prefix;
}
-impl Trait for Test {
- type Event = ();
+impl pallet_template::Config for Test {
+ type Event = Event;
}
-pub type TemplateModule = Module;
-
// Build genesis storage according to the mock runtime.
pub fn new_test_ext() -> sp_io::TestExternalities {
system::GenesisConfig::default().build_storage::().unwrap().into()
diff --git a/bin/node-template/runtime/Cargo.toml b/bin/node-template/runtime/Cargo.toml
index ed5a114b813f8..dd907f55fbbbe 100644
--- a/bin/node-template/runtime/Cargo.toml
+++ b/bin/node-template/runtime/Cargo.toml
@@ -11,44 +11,44 @@ repository = "https://github.com/paritytech/substrate/"
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
-codec = { package = "parity-scale-codec", version = "1.3.4", default-features = false, features = ["derive"] }
+codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
-pallet-aura = { version = "2.0.0", default-features = false, path = "../../../frame/aura" }
-pallet-balances = { version = "2.0.0", default-features = false, path = "../../../frame/balances" }
-frame-support = { version = "2.0.0", default-features = false, path = "../../../frame/support" }
-pallet-grandpa = { version = "2.0.0", default-features = false, path = "../../../frame/grandpa" }
-pallet-randomness-collective-flip = { version = "2.0.0", default-features = false, path = "../../../frame/randomness-collective-flip" }
-pallet-sudo = { version = "2.0.0", default-features = false, path = "../../../frame/sudo" }
-frame-system = { version = "2.0.0", default-features = false, path = "../../../frame/system" }
-pallet-timestamp = { version = "2.0.0", default-features = false, path = "../../../frame/timestamp" }
-pallet-transaction-payment = { version = "2.0.0", default-features = false, path = "../../../frame/transaction-payment" }
-frame-executive = { version = "2.0.0", default-features = false, path = "../../../frame/executive" }
+pallet-aura = { version = "3.0.0", default-features = false, path = "../../../frame/aura" }
+pallet-balances = { version = "3.0.0", default-features = false, path = "../../../frame/balances" }
+frame-support = { version = "3.0.0", default-features = false, path = "../../../frame/support" }
+pallet-grandpa = { version = "3.0.0", default-features = false, path = "../../../frame/grandpa" }
+pallet-randomness-collective-flip = { version = "3.0.0", default-features = false, path = "../../../frame/randomness-collective-flip" }
+pallet-sudo = { version = "3.0.0", default-features = false, path = "../../../frame/sudo" }
+frame-system = { version = "3.0.0", default-features = false, path = "../../../frame/system" }
+pallet-timestamp = { version = "3.0.0", default-features = false, path = "../../../frame/timestamp" }
+pallet-transaction-payment = { version = "3.0.0", default-features = false, path = "../../../frame/transaction-payment" }
+frame-executive = { version = "3.0.0", default-features = false, path = "../../../frame/executive" }
serde = { version = "1.0.101", optional = true, features = ["derive"] }
-sp-api = { version = "2.0.0", default-features = false, path = "../../../primitives/api" }
-sp-block-builder = { path = "../../../primitives/block-builder", default-features = false, version = "2.0.0"}
-sp-consensus-aura = { version = "0.8.0", default-features = false, path = "../../../primitives/consensus/aura" }
-sp-core = { version = "2.0.0", default-features = false, path = "../../../primitives/core" }
-sp-inherents = { path = "../../../primitives/inherents", default-features = false, version = "2.0.0"}
-sp-offchain = { version = "2.0.0", default-features = false, path = "../../../primitives/offchain" }
-sp-runtime = { version = "2.0.0", default-features = false, path = "../../../primitives/runtime" }
-sp-session = { version = "2.0.0", default-features = false, path = "../../../primitives/session" }
-sp-std = { version = "2.0.0", default-features = false, path = "../../../primitives/std" }
-sp-transaction-pool = { version = "2.0.0", default-features = false, path = "../../../primitives/transaction-pool" }
-sp-version = { version = "2.0.0", default-features = false, path = "../../../primitives/version" }
+sp-api = { version = "3.0.0", default-features = false, path = "../../../primitives/api" }
+sp-block-builder = { path = "../../../primitives/block-builder", default-features = false, version = "3.0.0"}
+sp-consensus-aura = { version = "0.9.0", default-features = false, path = "../../../primitives/consensus/aura" }
+sp-core = { version = "3.0.0", default-features = false, path = "../../../primitives/core" }
+sp-inherents = { path = "../../../primitives/inherents", default-features = false, version = "3.0.0"}
+sp-offchain = { version = "3.0.0", default-features = false, path = "../../../primitives/offchain" }
+sp-runtime = { version = "3.0.0", default-features = false, path = "../../../primitives/runtime" }
+sp-session = { version = "3.0.0", default-features = false, path = "../../../primitives/session" }
+sp-std = { version = "3.0.0", default-features = false, path = "../../../primitives/std" }
+sp-transaction-pool = { version = "3.0.0", default-features = false, path = "../../../primitives/transaction-pool" }
+sp-version = { version = "3.0.0", default-features = false, path = "../../../primitives/version" }
# Used for the node template's RPCs
-frame-system-rpc-runtime-api = { version = "2.0.0", default-features = false, path = "../../../frame/system/rpc/runtime-api/" }
-pallet-transaction-payment-rpc-runtime-api = { version = "2.0.0", default-features = false, path = "../../../frame/transaction-payment/rpc/runtime-api/" }
+frame-system-rpc-runtime-api = { version = "3.0.0", default-features = false, path = "../../../frame/system/rpc/runtime-api/" }
+pallet-transaction-payment-rpc-runtime-api = { version = "3.0.0", default-features = false, path = "../../../frame/transaction-payment/rpc/runtime-api/" }
# Used for runtime benchmarking
-frame-benchmarking = { version = "2.0.0", default-features = false, path = "../../../frame/benchmarking", optional = true }
-frame-system-benchmarking = { version = "2.0.0", default-features = false, path = "../../../frame/system/benchmarking", optional = true }
+frame-benchmarking = { version = "3.0.0", default-features = false, path = "../../../frame/benchmarking", optional = true }
+frame-system-benchmarking = { version = "3.0.0", default-features = false, path = "../../../frame/system/benchmarking", optional = true }
hex-literal = { version = "0.3.1", optional = true }
template = { version = "2.0.0", default-features = false, path = "../pallets/template", package = "pallet-template" }
[build-dependencies]
-wasm-builder-runner = { version = "2.0.0", package = "substrate-wasm-builder-runner", path = "../../../utils/wasm-builder-runner" }
+substrate-wasm-builder = { version = "4.0.0", path = "../../../utils/wasm-builder" }
[features]
default = ["std"]
diff --git a/bin/node-template/runtime/build.rs b/bin/node-template/runtime/build.rs
index 9654139121f6f..9b53d2457dffd 100644
--- a/bin/node-template/runtime/build.rs
+++ b/bin/node-template/runtime/build.rs
@@ -1,9 +1,8 @@
-use wasm_builder_runner::WasmBuilder;
+use substrate_wasm_builder::WasmBuilder;
fn main() {
WasmBuilder::new()
.with_current_project()
- .with_wasm_builder_from_crates("2.0.1")
.export_heap_base()
.import_memory()
.build()
diff --git a/bin/node-template/runtime/src/lib.rs b/bin/node-template/runtime/src/lib.rs
index 5028301978cd4..8d68dbdc96868 100644
--- a/bin/node-template/runtime/src/lib.rs
+++ b/bin/node-template/runtime/src/lib.rs
@@ -13,7 +13,7 @@ use sp_runtime::{
transaction_validity::{TransactionValidity, TransactionSource},
};
use sp_runtime::traits::{
- BlakeTwo256, Block as BlockT, IdentityLookup, Verify, IdentifyAccount, NumberFor, Saturating,
+ BlakeTwo256, Block as BlockT, AccountIdLookup, Verify, IdentifyAccount, NumberFor,
};
use sp_api::impl_runtime_apis;
use sp_consensus_aura::sr25519::AuthorityId as AuraId;
@@ -102,6 +102,12 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
transaction_version: 1,
};
+/// This determines the average expected block time that we are targetting.
+/// Blocks will be produced at a minimum duration defined by `SLOT_DURATION`.
+/// `SLOT_DURATION` is picked up by `pallet_timestamp` which is in turn picked
+/// up by `pallet_aura` to implement `fn slot_duration()`.
+///
+/// Change this to adjust the block time.
pub const MILLISECS_PER_BLOCK: u64 = 6000;
pub const SLOT_DURATION: u64 = MILLISECS_PER_BLOCK;
@@ -120,29 +126,34 @@ pub fn native_version() -> NativeVersion {
}
}
+const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75);
+
parameter_types! {
+ pub const Version: RuntimeVersion = VERSION;
pub const BlockHashCount: BlockNumber = 2400;
/// We allow for 2 seconds of compute with a 6 second average block time.
- pub const MaximumBlockWeight: Weight = 2 * WEIGHT_PER_SECOND;
- pub const AvailableBlockRatio: Perbill = Perbill::from_percent(75);
- /// Assume 10% of weight for average on_initialize calls.
- pub MaximumExtrinsicWeight: Weight = AvailableBlockRatio::get()
- .saturating_sub(Perbill::from_percent(10)) * MaximumBlockWeight::get();
- pub const MaximumBlockLength: u32 = 5 * 1024 * 1024;
- pub const Version: RuntimeVersion = VERSION;
+ pub BlockWeights: frame_system::limits::BlockWeights = frame_system::limits::BlockWeights
+ ::with_sensible_defaults(2 * WEIGHT_PER_SECOND, NORMAL_DISPATCH_RATIO);
+ pub BlockLength: frame_system::limits::BlockLength = frame_system::limits::BlockLength
+ ::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO);
+ pub const SS58Prefix: u8 = 42;
}
// Configure FRAME pallets to include in runtime.
-impl frame_system::Trait for Runtime {
+impl frame_system::Config for Runtime {
/// The basic call filter to use in dispatchable.
type BaseCallFilter = ();
+ /// Block & extrinsics weights: base values and limits.
+ type BlockWeights = BlockWeights;
+ /// The maximum length of a block (in bytes).
+ type BlockLength = BlockLength;
/// The identifier used to distinguish between accounts.
type AccountId = AccountId;
/// The aggregated dispatch type that is available for extrinsics.
type Call = Call;
/// The lookup mechanism to get account ID from whatever is passed in dispatchers.
- type Lookup = IdentityLookup;
+ type Lookup = AccountIdLookup;
/// The index type for storing how many extrinsics an account has signed.
type Index = Index;
/// The index type for blocks.
@@ -159,24 +170,8 @@ impl frame_system::Trait for Runtime {
type Origin = Origin;
/// Maximum number of block number to block hash mappings to keep (oldest pruned first).
type BlockHashCount = BlockHashCount;
- /// Maximum weight of each block.
- type MaximumBlockWeight = MaximumBlockWeight;
/// The weight of database operations that the runtime can invoke.
type DbWeight = RocksDbWeight;
- /// The weight of the overhead invoked on the block import process, independent of the
- /// extrinsics included in that block.
- type BlockExecutionWeight = BlockExecutionWeight;
- /// The base weight of any extrinsic processed by the runtime, independent of the
- /// logic of that extrinsic. (Signature verification, nonce increment, fee, etc...)
- type ExtrinsicBaseWeight = ExtrinsicBaseWeight;
- /// The maximum weight that a single extrinsic of `Normal` dispatch class can have,
- /// idependent of the logic of that extrinsics. (Roughly max block weight - average on
- /// initialize cost).
- type MaximumExtrinsicWeight = MaximumExtrinsicWeight;
- /// Maximum size of all encoded transactions (in bytes) that are allowed in one block.
- type MaximumBlockLength = MaximumBlockLength;
- /// Portion of the block weight that is available to all normal transactions.
- type AvailableBlockRatio = AvailableBlockRatio;
/// Version of the runtime.
type Version = Version;
/// Converts a module to the index of the module in `construct_runtime!`.
@@ -191,13 +186,15 @@ impl frame_system::Trait for Runtime {
type AccountData = pallet_balances::AccountData;
/// Weight information for the extrinsics of this pallet.
type SystemWeightInfo = ();
+ /// This is used as an identifier of the chain. 42 is the generic substrate prefix.
+ type SS58Prefix = SS58Prefix;
}
-impl pallet_aura::Trait for Runtime {
+impl pallet_aura::Config for Runtime {
type AuthorityId = AuraId;
}
-impl pallet_grandpa::Trait for Runtime {
+impl pallet_grandpa::Config for Runtime {
type Event = Event;
type Call = Call;
@@ -220,7 +217,7 @@ parameter_types! {
pub const MinimumPeriod: u64 = SLOT_DURATION / 2;
}
-impl pallet_timestamp::Trait for Runtime {
+impl pallet_timestamp::Config for Runtime {
/// A timestamp: milliseconds since the unix epoch.
type Moment = u64;
type OnTimestampSet = Aura;
@@ -233,7 +230,7 @@ parameter_types! {
pub const MaxLocks: u32 = 50;
}
-impl pallet_balances::Trait for Runtime {
+impl pallet_balances::Config for Runtime {
type MaxLocks = MaxLocks;
/// The type for recording an account's balance.
type Balance = Balance;
@@ -249,20 +246,20 @@ parameter_types! {
pub const TransactionByteFee: Balance = 1;
}
-impl pallet_transaction_payment::Trait for Runtime {
+impl pallet_transaction_payment::Config for Runtime {
type OnChargeTransaction = CurrencyAdapter;
type TransactionByteFee = TransactionByteFee;
type WeightToFee = IdentityFee;
type FeeMultiplierUpdate = ();
}
-impl pallet_sudo::Trait for Runtime {
+impl pallet_sudo::Config for Runtime {
type Event = Event;
type Call = Call;
}
/// Configure the pallet template in pallets/template.
-impl template::Trait for Runtime {
+impl template::Config for Runtime {
type Event = Event;
}
@@ -276,7 +273,7 @@ construct_runtime!(
System: frame_system::{Module, Call, Config, Storage, Event},
RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Module, Call, Storage},
Timestamp: pallet_timestamp::{Module, Call, Storage, Inherent},
- Aura: pallet_aura::{Module, Config, Inherent},
+ Aura: pallet_aura::{Module, Config},
Grandpa: pallet_grandpa::{Module, Call, Storage, Config, Event},
Balances: pallet_balances::{Module, Call, Storage, Config, Event},
TransactionPayment: pallet_transaction_payment::{Module, Storage},
@@ -287,7 +284,7 @@ construct_runtime!(
);
/// The address format for describing accounts.
-pub type Address = AccountId;
+pub type Address = sp_runtime::MultiAddress;
/// Block header type as expected by this runtime.
pub type Header = generic::Header;
/// Block type as expected by this runtime.
@@ -441,6 +438,12 @@ impl_runtime_apis! {
) -> pallet_transaction_payment_rpc_runtime_api::RuntimeDispatchInfo {
TransactionPayment::query_info(uxt, len)
}
+ fn query_fee_details(
+ uxt: ::Extrinsic,
+ len: u32,
+ ) -> pallet_transaction_payment::FeeDetails {
+ TransactionPayment::query_fee_details(uxt, len)
+ }
}
#[cfg(feature = "runtime-benchmarks")]
@@ -451,7 +454,7 @@ impl_runtime_apis! {
use frame_benchmarking::{Benchmarking, BenchmarkBatch, add_benchmark, TrackedStorageKey};
use frame_system_benchmarking::Module as SystemBench;
- impl frame_system_benchmarking::Trait for Runtime {}
+ impl frame_system_benchmarking::Config for Runtime {}
let whitelist: Vec = vec![
// Block Number
diff --git a/bin/node/bench/Cargo.toml b/bin/node/bench/Cargo.toml
index 88362f7e51022..728eb8d6093ce 100644
--- a/bin/node/bench/Cargo.toml
+++ b/bin/node/bench/Cargo.toml
@@ -13,31 +13,31 @@ log = "0.4.8"
node-primitives = { version = "2.0.0", path = "../primitives" }
node-testing = { version = "2.0.0", path = "../testing" }
node-runtime = { version = "2.0.0", path = "../runtime" }
-sc-cli = { version = "0.8.0", path = "../../../client/cli" }
-sc-client-api = { version = "2.0.0", path = "../../../client/api/" }
-sp-runtime = { version = "2.0.0", path = "../../../primitives/runtime" }
-sp-state-machine = { version = "0.8.0", path = "../../../primitives/state-machine" }
+sc-cli = { version = "0.9.0", path = "../../../client/cli" }
+sc-client-api = { version = "3.0.0", path = "../../../client/api/" }
+sp-runtime = { version = "3.0.0", path = "../../../primitives/runtime" }
+sp-state-machine = { version = "0.9.0", path = "../../../primitives/state-machine" }
serde = "1.0.101"
serde_json = "1.0.41"
structopt = "0.3"
derive_more = "0.99.2"
-kvdb = "0.7"
-kvdb-rocksdb = "0.9.1"
-sp-trie = { version = "2.0.0", path = "../../../primitives/trie" }
-sp-core = { version = "2.0.0", path = "../../../primitives/core" }
-sp-consensus = { version = "0.8.0", path = "../../../primitives/consensus/common" }
-sp-transaction-pool = { version = "2.0.0", path = "../../../primitives/transaction-pool" }
-sc-basic-authorship = { version = "0.8.0", path = "../../../client/basic-authorship" }
-sp-inherents = { version = "2.0.0", path = "../../../primitives/inherents" }
-sp-timestamp = { version = "2.0.0", default-features = false, path = "../../../primitives/timestamp" }
-sp-tracing = { version = "2.0.0", path = "../../../primitives/tracing" }
+kvdb = "0.9.0"
+kvdb-rocksdb = "0.11.0"
+sp-trie = { version = "3.0.0", path = "../../../primitives/trie" }
+sp-core = { version = "3.0.0", path = "../../../primitives/core" }
+sp-consensus = { version = "0.9.0", path = "../../../primitives/consensus/common" }
+sp-transaction-pool = { version = "3.0.0", path = "../../../primitives/transaction-pool" }
+sc-basic-authorship = { version = "0.9.0", path = "../../../client/basic-authorship" }
+sp-inherents = { version = "3.0.0", path = "../../../primitives/inherents" }
+sp-timestamp = { version = "3.0.0", default-features = false, path = "../../../primitives/timestamp" }
+sp-tracing = { version = "3.0.0", path = "../../../primitives/tracing" }
hash-db = "0.15.2"
tempfile = "3.1.0"
fs_extra = "1"
hex = "0.4.0"
rand = { version = "0.7.2", features = ["small_rng"] }
lazy_static = "1.4.0"
-parity-util-mem = { version = "0.7.0", default-features = false, features = ["primitive-types"] }
-parity-db = { version = "0.1.2" }
-sc-transaction-pool = { version = "2.0.0", path = "../../../client/transaction-pool" }
+parity-util-mem = { version = "0.9.0", default-features = false, features = ["primitive-types"] }
+parity-db = { version = "0.2.2" }
+sc-transaction-pool = { version = "3.0.0", path = "../../../client/transaction-pool" }
futures = { version = "0.3.4", features = ["thread-pool"] }
diff --git a/bin/node/bench/src/common.rs b/bin/node/bench/src/common.rs
index 2637d6e9bd04d..d04d79e9907af 100644
--- a/bin/node/bench/src/common.rs
+++ b/bin/node/bench/src/common.rs
@@ -1,7 +1,6 @@
-
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -45,4 +44,4 @@ impl SizeType {
SizeType::Custom(val) => Some(*val),
}
}
-}
\ No newline at end of file
+}
diff --git a/bin/node/bench/src/construct.rs b/bin/node/bench/src/construct.rs
index 5506dc426de0b..a8a02f19c306e 100644
--- a/bin/node/bench/src/construct.rs
+++ b/bin/node/bench/src/construct.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/bench/src/core.rs b/bin/node/bench/src/core.rs
index 6faa7b72721f4..26b7f92b14483 100644
--- a/bin/node/bench/src/core.rs
+++ b/bin/node/bench/src/core.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/bench/src/generator.rs b/bin/node/bench/src/generator.rs
index 759a4299c7275..c540ae147c9f0 100644
--- a/bin/node/bench/src/generator.rs
+++ b/bin/node/bench/src/generator.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/bench/src/import.rs b/bin/node/bench/src/import.rs
index ae28a20089e10..b4fee58dac025 100644
--- a/bin/node/bench/src/import.rs
+++ b/bin/node/bench/src/import.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/bench/src/main.rs b/bin/node/bench/src/main.rs
index 46b659dd88387..40e9e1577777e 100644
--- a/bin/node/bench/src/main.rs
+++ b/bin/node/bench/src/main.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/bench/src/simple_trie.rs b/bin/node/bench/src/simple_trie.rs
index 3cfd7ddb300a9..a29b51a38af58 100644
--- a/bin/node/bench/src/simple_trie.rs
+++ b/bin/node/bench/src/simple_trie.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/bench/src/state_sizes.rs b/bin/node/bench/src/state_sizes.rs
index d35989f61be34..f9288c1054898 100644
--- a/bin/node/bench/src/state_sizes.rs
+++ b/bin/node/bench/src/state_sizes.rs
@@ -1,18 +1,20 @@
-// Copyright 2015-2020 Parity Technologies (UK) Ltd.
-// This file is part of Parity.
+// This file is part of Substrate.
-// Parity is free software: you can redistribute it and/or modify
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
+// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
+
+// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
-// Parity is distributed in the hope that it will be useful,
+// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
-// along with Parity. If not, see .
+// along with this program. If not, see .
/// Kusama value size distribution
pub const KUSAMA_STATE_DISTRIBUTION: &'static[(u32, u32)] = &[
@@ -4753,4 +4755,4 @@ pub const KUSAMA_STATE_DISTRIBUTION: &'static[(u32, u32)] = &[
(1516670, 1),
(1605731, 1),
(1605821, 1),
-];
\ No newline at end of file
+];
diff --git a/bin/node/bench/src/tempdb.rs b/bin/node/bench/src/tempdb.rs
index 4020fd1029368..31ef71fba7b5e 100644
--- a/bin/node/bench/src/tempdb.rs
+++ b/bin/node/bench/src/tempdb.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see .
-use std::{io, sync::Arc};
+use std::{io, path::PathBuf, sync::Arc};
use kvdb::{KeyValueDB, DBTransaction};
use kvdb_rocksdb::{DatabaseConfig, Database};
@@ -124,7 +124,7 @@ impl Clone for TempDatabase {
.map(|f_result|
f_result.expect("failed to read file in seed db")
.path()
- ).collect();
+ ).collect::>();
fs_extra::copy_items(
&self_db_files,
new_dir.path(),
diff --git a/bin/node/bench/src/trie.rs b/bin/node/bench/src/trie.rs
index eb6c574e27170..a3e7620473d98 100644
--- a/bin/node/bench/src/trie.rs
+++ b/bin/node/bench/src/trie.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/bench/src/txpool.rs b/bin/node/bench/src/txpool.rs
index 7ea13fc15ec68..b3646a92e032a 100644
--- a/bin/node/bench/src/txpool.rs
+++ b/bin/node/bench/src/txpool.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -74,6 +74,7 @@ impl core::Benchmark for PoolBenchmark {
let executor = sp_core::testing::TaskExecutor::new();
let txpool = BasicPool::new_full(
Default::default(),
+ true.into(),
None,
executor,
context.client.clone(),
diff --git a/bin/node/browser-testing/Cargo.toml b/bin/node/browser-testing/Cargo.toml
index c90c4a293f49a..66e7b398dd16f 100644
--- a/bin/node/browser-testing/Cargo.toml
+++ b/bin/node/browser-testing/Cargo.toml
@@ -8,14 +8,14 @@ license = "Apache-2.0"
[dependencies]
futures-timer = "3.0.2"
-libp2p = { version = "0.29.1", default-features = false }
+libp2p = { version = "0.34.0", default-features = false }
jsonrpc-core = "15.0.0"
serde = "1.0.106"
serde_json = "1.0.48"
-wasm-bindgen = { version = "=0.2.67", features = ["serde-serialize"] }
-wasm-bindgen-futures = "0.4.10"
-wasm-bindgen-test = "0.3.10"
-futures = "0.3.4"
+wasm-bindgen = { version = "=0.2.69", features = ["serde-serialize"] }
+wasm-bindgen-futures = "0.4.18"
+wasm-bindgen-test = "0.3.18"
+futures = "0.3.9"
node-cli = { path = "../cli", default-features = false, features = ["browser"] , version = "2.0.0"}
-sc-rpc-api = { path = "../../../client/rpc-api" , version = "0.8.0"}
+sc-rpc-api = { path = "../../../client/rpc-api" , version = "0.9.0"}
diff --git a/bin/node/browser-testing/src/lib.rs b/bin/node/browser-testing/src/lib.rs
index 777e5ea9f132e..ad18de87b3d3e 100644
--- a/bin/node/browser-testing/src/lib.rs
+++ b/bin/node/browser-testing/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -26,7 +26,7 @@
//! ```
//! For debug infomation, such as the informant, run without the `--headless`
//! flag and open a browser to the url that `wasm-pack test` outputs.
-//! For more infomation see https://rustwasm.github.io/docs/wasm-pack/.
+//! For more infomation see .
use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure};
use wasm_bindgen_futures::JsFuture;
diff --git a/bin/node/cli/Cargo.toml b/bin/node/cli/Cargo.toml
index e396b2dcefff5..99d6f5216d212 100644
--- a/bin/node/cli/Cargo.toml
+++ b/bin/node/cli/Cargo.toml
@@ -34,59 +34,60 @@ crate-type = ["cdylib", "rlib"]
[dependencies]
# third-party dependencies
-codec = { package = "parity-scale-codec", version = "1.3.4" }
+codec = { package = "parity-scale-codec", version = "2.0.0" }
serde = { version = "1.0.102", features = ["derive"] }
-futures = { version = "0.3.1", features = ["compat"] }
+futures = { version = "0.3.9", features = ["compat"] }
hex-literal = "0.3.1"
log = "0.4.8"
rand = "0.7.2"
structopt = { version = "0.3.8", optional = true }
-tracing = "0.1.19"
-parking_lot = "0.10.0"
+parking_lot = "0.11.1"
# primitives
-sp-authority-discovery = { version = "2.0.0", path = "../../../primitives/authority-discovery" }
-sp-consensus-babe = { version = "0.8.0", path = "../../../primitives/consensus/babe" }
-grandpa-primitives = { version = "2.0.0", package = "sp-finality-grandpa", path = "../../../primitives/finality-grandpa" }
-sp-core = { version = "2.0.0", path = "../../../primitives/core" }
-sp-runtime = { version = "2.0.0", path = "../../../primitives/runtime" }
-sp-timestamp = { version = "2.0.0", default-features = false, path = "../../../primitives/timestamp" }
-sp-inherents = { version = "2.0.0", path = "../../../primitives/inherents" }
-sp-keyring = { version = "2.0.0", path = "../../../primitives/keyring" }
-sp-keystore = { version = "0.8.0", path = "../../../primitives/keystore" }
-sp-io = { version = "2.0.0", path = "../../../primitives/io" }
-sp-consensus = { version = "0.8.0", path = "../../../primitives/consensus/common" }
-sp-transaction-pool = { version = "2.0.0", path = "../../../primitives/transaction-pool" }
+sp-authority-discovery = { version = "3.0.0", path = "../../../primitives/authority-discovery" }
+sp-consensus-babe = { version = "0.9.0", path = "../../../primitives/consensus/babe" }
+grandpa-primitives = { version = "3.0.0", package = "sp-finality-grandpa", path = "../../../primitives/finality-grandpa" }
+sp-core = { version = "3.0.0", path = "../../../primitives/core" }
+sp-runtime = { version = "3.0.0", path = "../../../primitives/runtime" }
+sp-timestamp = { version = "3.0.0", default-features = false, path = "../../../primitives/timestamp" }
+sp-inherents = { version = "3.0.0", path = "../../../primitives/inherents" }
+sp-keyring = { version = "3.0.0", path = "../../../primitives/keyring" }
+sp-keystore = { version = "0.9.0", path = "../../../primitives/keystore" }
+sp-io = { version = "3.0.0", path = "../../../primitives/io" }
+sp-consensus = { version = "0.9.0", path = "../../../primitives/consensus/common" }
+sp-transaction-pool = { version = "3.0.0", path = "../../../primitives/transaction-pool" }
# client dependencies
-sc-client-api = { version = "2.0.0", path = "../../../client/api" }
-sc-chain-spec = { version = "2.0.0", path = "../../../client/chain-spec" }
-sc-consensus = { version = "0.8.0", path = "../../../client/consensus/common" }
-sc-transaction-pool = { version = "2.0.0", path = "../../../client/transaction-pool" }
-sc-network = { version = "0.8.0", path = "../../../client/network" }
-sc-consensus-babe = { version = "0.8.0", path = "../../../client/consensus/babe" }
-grandpa = { version = "0.8.0", package = "sc-finality-grandpa", path = "../../../client/finality-grandpa" }
-sc-client-db = { version = "0.8.0", default-features = false, path = "../../../client/db" }
-sc-offchain = { version = "2.0.0", path = "../../../client/offchain" }
-sc-rpc = { version = "2.0.0", path = "../../../client/rpc" }
-sc-basic-authorship = { version = "0.8.0", path = "../../../client/basic-authorship" }
-sc-service = { version = "0.8.0", default-features = false, path = "../../../client/service" }
-sc-tracing = { version = "2.0.0", path = "../../../client/tracing" }
-sc-telemetry = { version = "2.0.0", path = "../../../client/telemetry" }
-sc-authority-discovery = { version = "0.8.0", path = "../../../client/authority-discovery" }
+sc-client-api = { version = "3.0.0", path = "../../../client/api" }
+sc-chain-spec = { version = "3.0.0", path = "../../../client/chain-spec" }
+sc-consensus = { version = "0.9.0", path = "../../../client/consensus/common" }
+sc-transaction-pool = { version = "3.0.0", path = "../../../client/transaction-pool" }
+sc-network = { version = "0.9.0", path = "../../../client/network" }
+sc-consensus-slots = { version = "0.9.0", path = "../../../client/consensus/slots" }
+sc-consensus-babe = { version = "0.9.0", path = "../../../client/consensus/babe" }
+grandpa = { version = "0.9.0", package = "sc-finality-grandpa", path = "../../../client/finality-grandpa" }
+sc-client-db = { version = "0.9.0", default-features = false, path = "../../../client/db" }
+sc-offchain = { version = "3.0.0", path = "../../../client/offchain" }
+sc-rpc = { version = "3.0.0", path = "../../../client/rpc" }
+sc-basic-authorship = { version = "0.9.0", path = "../../../client/basic-authorship" }
+sc-service = { version = "0.9.0", default-features = false, path = "../../../client/service" }
+sc-tracing = { version = "3.0.0", path = "../../../client/tracing" }
+sc-telemetry = { version = "3.0.0", path = "../../../client/telemetry" }
+sc-authority-discovery = { version = "0.9.0", path = "../../../client/authority-discovery" }
+sc-finality-grandpa-warp-sync = { version = "0.8.0", path = "../../../client/finality-grandpa-warp-sync", optional = true }
# frame dependencies
-pallet-indices = { version = "2.0.0", path = "../../../frame/indices" }
-pallet-timestamp = { version = "2.0.0", default-features = false, path = "../../../frame/timestamp" }
+pallet-indices = { version = "3.0.0", path = "../../../frame/indices" }
+pallet-timestamp = { version = "3.0.0", default-features = false, path = "../../../frame/timestamp" }
pallet-contracts = { version = "2.0.0", path = "../../../frame/contracts" }
-frame-system = { version = "2.0.0", path = "../../../frame/system" }
-pallet-balances = { version = "2.0.0", path = "../../../frame/balances" }
-pallet-transaction-payment = { version = "2.0.0", path = "../../../frame/transaction-payment" }
-frame-support = { version = "2.0.0", default-features = false, path = "../../../frame/support" }
-pallet-im-online = { version = "2.0.0", default-features = false, path = "../../../frame/im-online" }
-pallet-authority-discovery = { version = "2.0.0", path = "../../../frame/authority-discovery" }
-pallet-staking = { version = "2.0.0", path = "../../../frame/staking" }
-pallet-grandpa = { version = "2.0.0", path = "../../../frame/grandpa" }
+frame-system = { version = "3.0.0", path = "../../../frame/system" }
+pallet-balances = { version = "3.0.0", path = "../../../frame/balances" }
+pallet-transaction-payment = { version = "3.0.0", path = "../../../frame/transaction-payment" }
+frame-support = { version = "3.0.0", default-features = false, path = "../../../frame/support" }
+pallet-im-online = { version = "3.0.0", default-features = false, path = "../../../frame/im-online" }
+pallet-authority-discovery = { version = "3.0.0", path = "../../../frame/authority-discovery" }
+pallet-staking = { version = "3.0.0", path = "../../../frame/staking" }
+pallet-grandpa = { version = "3.0.0", path = "../../../frame/grandpa" }
# node-specific dependencies
node-runtime = { version = "2.0.0", path = "../runtime" }
@@ -95,44 +96,44 @@ node-primitives = { version = "2.0.0", path = "../primitives" }
node-executor = { version = "2.0.0", path = "../executor" }
# CLI-specific dependencies
-sc-cli = { version = "0.8.0", optional = true, path = "../../../client/cli" }
-frame-benchmarking-cli = { version = "2.0.0", optional = true, path = "../../../utils/frame/benchmarking-cli" }
+sc-cli = { version = "0.9.0", optional = true, path = "../../../client/cli" }
+frame-benchmarking-cli = { version = "3.0.0", optional = true, path = "../../../utils/frame/benchmarking-cli" }
node-inspect = { version = "0.8.0", optional = true, path = "../inspect" }
# WASM-specific dependencies
wasm-bindgen = { version = "0.2.57", optional = true }
-wasm-bindgen-futures = { version = "0.4.7", optional = true }
-browser-utils = { package = "substrate-browser-utils", path = "../../../utils/browser", optional = true, version = "0.8.0"}
+wasm-bindgen-futures = { version = "0.4.18", optional = true }
+browser-utils = { package = "substrate-browser-utils", path = "../../../utils/browser", optional = true, version = "0.9.0"}
[target.'cfg(target_arch="x86_64")'.dependencies]
node-executor = { version = "2.0.0", path = "../executor", features = [ "wasmtime" ] }
-sc-cli = { version = "0.8.0", optional = true, path = "../../../client/cli", features = [ "wasmtime" ] }
-sc-service = { version = "0.8.0", default-features = false, path = "../../../client/service", features = [ "wasmtime" ] }
-sp-trie = { version = "2.0.0", default-features = false, path = "../../../primitives/trie", features = ["memory-tracker"] }
+sc-cli = { version = "0.9.0", optional = true, path = "../../../client/cli", features = [ "wasmtime" ] }
+sc-service = { version = "0.9.0", default-features = false, path = "../../../client/service", features = [ "wasmtime" ] }
+sp-trie = { version = "3.0.0", default-features = false, path = "../../../primitives/trie", features = ["memory-tracker"] }
[dev-dependencies]
-sc-keystore = { version = "2.0.0", path = "../../../client/keystore" }
-sc-consensus = { version = "0.8.0", path = "../../../client/consensus/common" }
-sc-consensus-babe = { version = "0.8.0", features = ["test-helpers"], path = "../../../client/consensus/babe" }
-sc-consensus-epochs = { version = "0.8.0", path = "../../../client/consensus/epochs" }
+sc-keystore = { version = "3.0.0", path = "../../../client/keystore" }
+sc-consensus = { version = "0.9.0", path = "../../../client/consensus/common" }
+sc-consensus-babe = { version = "0.9.0", features = ["test-helpers"], path = "../../../client/consensus/babe" }
+sc-consensus-epochs = { version = "0.9.0", path = "../../../client/consensus/epochs" }
sc-service-test = { version = "2.0.0", path = "../../../client/service/test" }
-futures = "0.3.4"
+futures = "0.3.9"
tempfile = "3.1.0"
assert_cmd = "1.0"
-nix = "0.17"
+nix = "0.19"
serde_json = "1.0"
regex = "1"
-platforms = "0.2.1"
+platforms = "1.1"
[build-dependencies]
structopt = { version = "0.3.8", optional = true }
node-inspect = { version = "0.8.0", optional = true, path = "../inspect" }
-frame-benchmarking-cli = { version = "2.0.0", optional = true, path = "../../../utils/frame/benchmarking-cli" }
-substrate-build-script-utils = { version = "2.0.0", optional = true, path = "../../../utils/build-script-utils" }
-substrate-frame-cli = { version = "2.0.0", optional = true, path = "../../../utils/frame/frame-utilities-cli" }
+frame-benchmarking-cli = { version = "3.0.0", optional = true, path = "../../../utils/frame/benchmarking-cli" }
+substrate-build-script-utils = { version = "3.0.0", optional = true, path = "../../../utils/build-script-utils" }
+substrate-frame-cli = { version = "3.0.0", optional = true, path = "../../../utils/frame/frame-utilities-cli" }
[build-dependencies.sc-cli]
-version = "0.8.0"
+version = "0.9.0"
package = "sc-cli"
path = "../../../client/cli"
optional = true
@@ -151,6 +152,7 @@ cli = [
"frame-benchmarking-cli",
"substrate-frame-cli",
"sc-service/db",
+ "sc-finality-grandpa-warp-sync",
"structopt",
"substrate-build-script-utils",
]
diff --git a/bin/node/cli/bin/main.rs b/bin/node/cli/bin/main.rs
index 299b760c82e36..cf32a7cf28860 100644
--- a/bin/node/cli/bin/main.rs
+++ b/bin/node/cli/bin/main.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/browser-demo/build.sh b/bin/node/cli/browser-demo/build.sh
index be52b7a523f01..8840106daeb5c 100755
--- a/bin/node/cli/browser-demo/build.sh
+++ b/bin/node/cli/browser-demo/build.sh
@@ -1,4 +1,5 @@
#!/usr/bin/env sh
+set -e -x
cargo +nightly build --release -p node-cli --target wasm32-unknown-unknown --no-default-features --features browser -Z features=itarget
wasm-bindgen ../../../../target/wasm32-unknown-unknown/release/node_cli.wasm --out-dir pkg --target web
python -m http.server 8000
diff --git a/bin/node/cli/browser-demo/index.html b/bin/node/cli/browser-demo/index.html
index 60acfde39f559..4a706906ab108 100644
--- a/bin/node/cli/browser-demo/index.html
+++ b/bin/node/cli/browser-demo/index.html
@@ -27,8 +27,8 @@
setInterval(() => {
client
- .rpcSend('{"method":"system_networkState","params":[],"id":1,"jsonrpc":"2.0"}')
- .then((r) => log("Network state: " + r));
+ .rpcSend('{"method":"system_localPeerId","params":[],"id":1,"jsonrpc":"2.0"}')
+ .then((r) => log("Local PeerId: " + r));
}, 20000);
}
diff --git a/bin/node/cli/build.rs b/bin/node/cli/build.rs
index a36f0d01a0a03..befcdaea6d9cf 100644
--- a/bin/node/cli/build.rs
+++ b/bin/node/cli/build.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2017-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2017-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/src/browser.rs b/bin/node/cli/src/browser.rs
index 41770f5fcde6d..6c0a2f10d95e5 100644
--- a/bin/node/cli/src/browser.rs
+++ b/bin/node/cli/src/browser.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -21,9 +21,8 @@ use log::info;
use wasm_bindgen::prelude::*;
use browser_utils::{
Client,
- browser_configuration, set_console_error_panic_hook, init_console_log,
+ browser_configuration, init_logging_and_telemetry, set_console_error_panic_hook,
};
-use std::str::FromStr;
/// Starts the client.
#[wasm_bindgen]
@@ -33,20 +32,27 @@ pub async fn start_client(chain_spec: Option, log_level: String) -> Resu
.map_err(|err| JsValue::from_str(&err.to_string()))
}
-async fn start_inner(chain_spec: Option, log_level: String) -> Result> {
+async fn start_inner(
+ chain_spec: Option,
+ log_directives: String,
+) -> Result> {
set_console_error_panic_hook();
- init_console_log(log::Level::from_str(&log_level)?)?;
+ let telemetry_worker = init_logging_and_telemetry(&log_directives)?;
let chain_spec = match chain_spec {
Some(chain_spec) => ChainSpec::from_json_bytes(chain_spec.as_bytes().to_vec())
.map_err(|e| format!("{:?}", e))?,
None => crate::chain_spec::development_config(),
};
- let config = browser_configuration(chain_spec).await?;
+ let telemetry_handle = telemetry_worker.handle();
+ let config = browser_configuration(
+ chain_spec,
+ Some(telemetry_handle),
+ ).await?;
info!("Substrate browser node");
info!("✌️ version {}", config.impl_version);
- info!("❤️ by Parity Technologies, 2017-2020");
+ info!("❤️ by Parity Technologies, 2017-2021");
info!("📋 Chain specification: {}", config.chain_spec.name());
info!("🏷 Node name: {}", config.network.node_name);
info!("👤 Role: {:?}", config.role);
@@ -54,8 +60,10 @@ async fn start_inner(chain_spec: Option, log_level: String) -> Result>,
enable_println: bool,
) -> GenesisConfig {
- let endowed_accounts: Vec = endowed_accounts.unwrap_or_else(|| {
+ let mut endowed_accounts: Vec = endowed_accounts.unwrap_or_else(|| {
vec![
get_account_id_from_seed::("Alice"),
get_account_id_from_seed::("Bob"),
@@ -234,10 +234,16 @@ pub fn testnet_genesis(
get_account_id_from_seed::("Ferdie//stash"),
]
});
+ initial_authorities.iter().for_each(|x|
+ if !endowed_accounts.contains(&x.0) {
+ endowed_accounts.push(x.0.clone())
+ }
+ );
+
let num_endowed_accounts = endowed_accounts.len();
const ENDOWMENT: Balance = 10_000_000 * DOLLARS;
- const STASH: Balance = 100 * DOLLARS;
+ const STASH: Balance = ENDOWMENT / 1000;
GenesisConfig {
frame_system: Some(SystemConfig {
@@ -246,9 +252,8 @@ pub fn testnet_genesis(
}),
pallet_balances: Some(BalancesConfig {
balances: endowed_accounts.iter().cloned()
- .map(|k| (k, ENDOWMENT))
- .chain(initial_authorities.iter().map(|x| (x.0.clone(), STASH)))
- .collect(),
+ .map(|x| (x, ENDOWMENT))
+ .collect()
}),
pallet_indices: Some(IndicesConfig {
indices: vec![],
@@ -436,7 +441,7 @@ pub(crate) mod tests {
Ok(sc_service_test::TestNetComponents::new(task_manager, client, network, transaction_pool))
},
|config| {
- let (keep_alive, _, client, network, transaction_pool) = new_light_base(config)?;
+ let (keep_alive, _, _, client, network, transaction_pool) = new_light_base(config)?;
Ok(sc_service_test::TestNetComponents::new(keep_alive, client, network, transaction_pool))
}
);
diff --git a/bin/node/cli/src/cli.rs b/bin/node/cli/src/cli.rs
index 2130ff1e4b106..63a07e00e2197 100644
--- a/bin/node/cli/src/cli.rs
+++ b/bin/node/cli/src/cli.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/src/command.rs b/bin/node/cli/src/command.rs
index f8a0f3f9b3a34..461930a613d97 100644
--- a/bin/node/cli/src/command.rs
+++ b/bin/node/cli/src/command.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2017-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2017-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -49,15 +49,18 @@ impl SubstrateCli for Cli {
}
fn load_spec(&self, id: &str) -> std::result::Result, String> {
- Ok(match id {
- "dev" => Box::new(chain_spec::development_config()),
- "local" => Box::new(chain_spec::local_testnet_config()),
- "" | "fir" | "flaming-fir" => Box::new(chain_spec::flaming_fir_config()?),
- "staging" => Box::new(chain_spec::staging_testnet_config()),
- path => Box::new(chain_spec::ChainSpec::from_json_file(
- std::path::PathBuf::from(path),
- )?),
- })
+ let spec =
+ match id {
+ "" => return Err("Please specify which chain you want to run, e.g. --dev or --chain=local".into()),
+ "dev" => Box::new(chain_spec::development_config()),
+ "local" => Box::new(chain_spec::local_testnet_config()),
+ "fir" | "flaming-fir" => Box::new(chain_spec::flaming_fir_config()?),
+ "staging" => Box::new(chain_spec::staging_testnet_config()),
+ path => Box::new(chain_spec::ChainSpec::from_json_file(
+ std::path::PathBuf::from(path),
+ )?),
+ };
+ Ok(spec)
}
fn native_runtime_version(_: &Box) -> &'static RuntimeVersion {
@@ -76,7 +79,7 @@ pub fn run() -> Result<()> {
match config.role {
Role::Light => service::new_light(config),
_ => service::new_full(config),
- }
+ }.map_err(sc_cli::Error::Service)
})
}
Some(Subcommand::Inspect(cmd)) => {
@@ -94,7 +97,7 @@ pub fn run() -> Result<()> {
You can enable it with `--features runtime-benchmarks`.".into())
}
}
- Some(Subcommand::Key(cmd)) => cmd.run(),
+ Some(Subcommand::Key(cmd)) => cmd.run(&cli),
Some(Subcommand::Sign(cmd)) => cmd.run(),
Some(Subcommand::Verify(cmd)) => cmd.run(),
Some(Subcommand::Vanity(cmd)) => cmd.run(),
diff --git a/bin/node/cli/src/lib.rs b/bin/node/cli/src/lib.rs
index bd2298514a7a2..d29836c7499f3 100644
--- a/bin/node/cli/src/lib.rs
+++ b/bin/node/cli/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/src/service.rs b/bin/node/cli/src/service.rs
index ecf50dc14634b..dcce31bd32257 100644
--- a/bin/node/cli/src/service.rs
+++ b/bin/node/cli/src/service.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -22,7 +22,6 @@
use std::sync::Arc;
use sc_consensus_babe;
-use grandpa::{self, FinalityProofProvider as GrandpaFinalityProofProvider};
use node_primitives::Block;
use node_runtime::RuntimeApi;
use sc_service::{
@@ -35,6 +34,7 @@ use sp_runtime::traits::Block as BlockT;
use futures::prelude::*;
use sc_client_api::{ExecutorProvider, RemoteBackend};
use node_executor::Executor;
+use sc_telemetry::TelemetryConnectionNotifier;
type FullClient = sc_service::TFullClient;
type FullBackend = sc_service::TFullBackend;
@@ -57,10 +57,7 @@ pub fn new_partial(config: &Configuration) -> Result,
sc_consensus_babe::BabeLink,
),
- (
- grandpa::SharedVoterState,
- Arc>,
- ),
+ grandpa::SharedVoterState,
)
>, ServiceError> {
let (client, backend, keystore_container, task_manager) =
@@ -71,6 +68,7 @@ pub fn new_partial(config: &Configuration) -> Result Result Result Result,
&sc_consensus_babe::BabeLink,
)
) -> Result {
let sc_service::PartialComponents {
- client, backend, mut task_manager, import_queue, keystore_container,
- select_chain, transaction_pool, inherent_data_providers,
+ client,
+ backend,
+ mut task_manager,
+ import_queue,
+ keystore_container,
+ select_chain,
+ transaction_pool,
+ inherent_data_providers,
other: (rpc_extensions_builder, import_setup, rpc_setup),
} = new_partial(&config)?;
- let (shared_voter_state, finality_proof_provider) = rpc_setup;
+ let shared_voter_state = rpc_setup;
+
+ config.network.extra_sets.push(grandpa::grandpa_peers_set_config());
+
+ #[cfg(feature = "cli")]
+ config.network.request_response_protocols.push(sc_finality_grandpa_warp_sync::request_response_config_for_chain(
+ &config, task_manager.spawn_handle(), backend.clone(),
+ ));
let (network, network_status_sinks, system_rpc_tx, network_starter) =
sc_service::build_network(sc_service::BuildNetworkParams {
@@ -192,8 +210,6 @@ pub fn new_full_base(
import_queue,
on_demand: None,
block_announce_validator_builder: None,
- finality_proof_request_builder: None,
- finality_proof_provider: Some(finality_proof_provider.clone()),
})?;
if config.offchain_worker.enabled {
@@ -204,26 +220,28 @@ pub fn new_full_base(
let role = config.role.clone();
let force_authoring = config.force_authoring;
+ let backoff_authoring_blocks =
+ Some(sc_consensus_slots::BackoffAuthoringOnFinalizedHeadLagging::default());
let name = config.network.node_name.clone();
let enable_grandpa = !config.disable_grandpa;
let prometheus_registry = config.prometheus_registry().cloned();
- let telemetry_connection_sinks = sc_service::TelemetryConnectionSinks::default();
- sc_service::spawn_tasks(sc_service::SpawnTasksParams {
- config,
- backend: backend.clone(),
- client: client.clone(),
- keystore: keystore_container.sync_keystore(),
- network: network.clone(),
- rpc_extensions_builder: Box::new(rpc_extensions_builder),
- transaction_pool: transaction_pool.clone(),
- task_manager: &mut task_manager,
- on_demand: None,
- remote_blockchain: None,
- telemetry_connection_sinks: telemetry_connection_sinks.clone(),
- network_status_sinks: network_status_sinks.clone(),
- system_rpc_tx,
- })?;
+ let (_rpc_handlers, telemetry_connection_notifier) = sc_service::spawn_tasks(
+ sc_service::SpawnTasksParams {
+ config,
+ backend: backend.clone(),
+ client: client.clone(),
+ keystore: keystore_container.sync_keystore(),
+ network: network.clone(),
+ rpc_extensions_builder: Box::new(rpc_extensions_builder),
+ transaction_pool: transaction_pool.clone(),
+ task_manager: &mut task_manager,
+ on_demand: None,
+ remote_blockchain: None,
+ network_status_sinks: network_status_sinks.clone(),
+ system_rpc_tx,
+ },
+ )?;
let (block_import, grandpa_link, babe_link) = import_setup;
@@ -249,6 +267,7 @@ pub fn new_full_base(
sync_oracle: network.clone(),
inherent_data_providers: inherent_data_providers.clone(),
force_authoring,
+ backoff_authoring_blocks,
babe_link,
can_author_with,
};
@@ -307,7 +326,7 @@ pub fn new_full_base(
config,
link: grandpa_link,
network: network.clone(),
- telemetry_on_connect: Some(telemetry_connection_sinks.on_connect_stream()),
+ telemetry_on_connect: telemetry_connection_notifier.map(|x| x.on_connect_stream()),
voting_rule: grandpa::VotingRulesBuilder::default().build(),
prometheus_registry,
shared_voter_state,
@@ -319,8 +338,6 @@ pub fn new_full_base(
"grandpa-voter",
grandpa::run_grandpa_voter(grandpa_config)?
);
- } else {
- grandpa::setup_disabled_grandpa(network.clone())?;
}
network_starter.start_network();
@@ -342,14 +359,16 @@ pub fn new_full(config: Configuration)
})
}
-pub fn new_light_base(config: Configuration) -> Result<(
- TaskManager, RpcHandlers, Arc,
+pub fn new_light_base(mut config: Configuration) -> Result<(
+ TaskManager, RpcHandlers, Option, Arc,
Arc::Hash>>,
Arc>>
), ServiceError> {
let (client, backend, keystore_container, mut task_manager, on_demand) =
sc_service::new_light_parts::(&config)?;
+ config.network.extra_sets.push(grandpa::grandpa_peers_set_config());
+
let select_chain = sc_consensus::LongestChain::new(backend.clone());
let transaction_pool = Arc::new(sc_transaction_pool::BasicPool::new_light(
@@ -360,14 +379,12 @@ pub fn new_light_base(config: Configuration) -> Result<(
on_demand.clone(),
));
- let grandpa_block_import = grandpa::light_block_import(
- client.clone(), backend.clone(), &(client.clone() as Arc<_>),
- Arc::new(on_demand.checker().clone()),
+ let (grandpa_block_import, _) = grandpa::block_import(
+ client.clone(),
+ &(client.clone() as Arc<_>),
+ select_chain.clone(),
)?;
-
- let finality_proof_import = grandpa_block_import.clone();
- let finality_proof_request_builder =
- finality_proof_import.create_finality_proof_request_builder();
+ let justification_import = grandpa_block_import.clone();
let (babe_block_import, babe_link) = sc_consensus_babe::block_import(
sc_consensus_babe::Config::get_or_compute(&*client)?,
@@ -380,8 +397,7 @@ pub fn new_light_base(config: Configuration) -> Result<(
let import_queue = sc_consensus_babe::import_queue(
babe_link,
babe_block_import,
- None,
- Some(Box::new(finality_proof_import)),
+ Some(Box::new(justification_import)),
client.clone(),
select_chain.clone(),
inherent_data_providers.clone(),
@@ -390,9 +406,6 @@ pub fn new_light_base(config: Configuration) -> Result<(
sp_consensus::NeverCanAuthor,
)?;
- let finality_proof_provider =
- GrandpaFinalityProofProvider::new_for_service(backend.clone(), client.clone());
-
let (network, network_status_sinks, system_rpc_tx, network_starter) =
sc_service::build_network(sc_service::BuildNetworkParams {
config: &config,
@@ -402,8 +415,6 @@ pub fn new_light_base(config: Configuration) -> Result<(
import_queue,
on_demand: Some(on_demand.clone()),
block_announce_validator_builder: None,
- finality_proof_request_builder: Some(finality_proof_request_builder),
- finality_proof_provider: Some(finality_proof_provider),
})?;
network_starter.start_network();
@@ -422,7 +433,7 @@ pub fn new_light_base(config: Configuration) -> Result<(
let rpc_extensions = node_rpc::create_light(light_deps);
- let rpc_handlers =
+ let (rpc_handlers, telemetry_connection_notifier) =
sc_service::spawn_tasks(sc_service::SpawnTasksParams {
on_demand: Some(on_demand),
remote_blockchain: Some(backend.remote_blockchain()),
@@ -432,16 +443,22 @@ pub fn new_light_base(config: Configuration) -> Result<(
keystore: keystore_container.sync_keystore(),
config, backend, network_status_sinks, system_rpc_tx,
network: network.clone(),
- telemetry_connection_sinks: sc_service::TelemetryConnectionSinks::default(),
task_manager: &mut task_manager,
})?;
- Ok((task_manager, rpc_handlers, client, network, transaction_pool))
+ Ok((
+ task_manager,
+ rpc_handlers,
+ telemetry_connection_notifier,
+ client,
+ network,
+ transaction_pool,
+ ))
}
/// Builds a new service for a light client.
pub fn new_light(config: Configuration) -> Result {
- new_light_base(config).map(|(task_manager, _, _, _, _)| {
+ new_light_base(config).map(|(task_manager, _, _, _, _, _)| {
task_manager
})
}
@@ -495,7 +512,7 @@ mod tests {
let chain_spec = crate::chain_spec::tests::integration_test_config_with_single_authority();
// For the block factory
- let mut slot_num = 1u64;
+ let mut slot = 1u64;
// For the extrinsics factory
let bob = Arc::new(AccountKeyring::Bob.pair());
@@ -523,7 +540,7 @@ mod tests {
Ok((node, (inherent_data_providers, setup_handles.unwrap())))
},
|config| {
- let (keep_alive, _, client, network, transaction_pool) = new_light_base(config)?;
+ let (keep_alive, _, _, client, network, transaction_pool) = new_light_base(config)?;
Ok(sc_service_test::TestNetComponents::new(keep_alive, client, network, transaction_pool))
},
|service, &mut (ref inherent_data_providers, (ref mut block_import, ref babe_link))| {
@@ -556,7 +573,7 @@ mod tests {
descendent_query(&*service.client()),
&parent_hash,
parent_number,
- slot_num,
+ slot.into(),
).unwrap().unwrap();
let mut digest = Digest::::default();
@@ -564,9 +581,9 @@ mod tests {
// even though there's only one authority some slots might be empty,
// so we must keep trying the next slots until we can claim one.
let babe_pre_digest = loop {
- inherent_data.replace_data(sp_timestamp::INHERENT_IDENTIFIER, &(slot_num * SLOT_DURATION));
+ inherent_data.replace_data(sp_timestamp::INHERENT_IDENTIFIER, &(slot * SLOT_DURATION));
if let Some(babe_pre_digest) = sc_consensus_babe::test_helpers::claim_slot(
- slot_num,
+ slot.into(),
&parent_header,
&*service.client(),
keystore.clone(),
@@ -575,7 +592,7 @@ mod tests {
break babe_pre_digest;
}
- slot_num += 1;
+ slot += 1;
};
digest.push(::babe_pre_digest(babe_pre_digest));
@@ -606,7 +623,7 @@ mod tests {
let item = ::babe_seal(
signature,
);
- slot_num += 1;
+ slot += 1;
let mut params = BlockImportParams::new(BlockOrigin::File, new_header);
params.post_digests.push(item);
@@ -681,7 +698,7 @@ mod tests {
Ok(sc_service_test::TestNetComponents::new(task_manager, client, network, transaction_pool))
},
|config| {
- let (keep_alive, _, client, network, transaction_pool) = new_light_base(config)?;
+ let (keep_alive, _, _, client, network, transaction_pool) = new_light_base(config)?;
Ok(sc_service_test::TestNetComponents::new(keep_alive, client, network, transaction_pool))
},
vec![
diff --git a/bin/node/cli/tests/build_spec_works.rs b/bin/node/cli/tests/build_spec_works.rs
index 800a4a8c51e61..6d863ea7f949d 100644
--- a/bin/node/cli/tests/build_spec_works.rs
+++ b/bin/node/cli/tests/build_spec_works.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/tests/check_block_works.rs b/bin/node/cli/tests/check_block_works.rs
index 34078b08cf074..39963fb002876 100644
--- a/bin/node/cli/tests/check_block_works.rs
+++ b/bin/node/cli/tests/check_block_works.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/tests/common.rs b/bin/node/cli/tests/common.rs
index 61a07dd1ca877..c3bb96555da56 100644
--- a/bin/node/cli/tests/common.rs
+++ b/bin/node/cli/tests/common.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/tests/export_import_flow.rs b/bin/node/cli/tests/export_import_flow.rs
index 557e722ddb7b5..02fba49e834ef 100644
--- a/bin/node/cli/tests/export_import_flow.rs
+++ b/bin/node/cli/tests/export_import_flow.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/tests/inspect_works.rs b/bin/node/cli/tests/inspect_works.rs
index aa9653acadba5..67dbc97056cf6 100644
--- a/bin/node/cli/tests/inspect_works.rs
+++ b/bin/node/cli/tests/inspect_works.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/tests/purge_chain_works.rs b/bin/node/cli/tests/purge_chain_works.rs
index 001bed8b136f5..4c0727d26cb17 100644
--- a/bin/node/cli/tests/purge_chain_works.rs
+++ b/bin/node/cli/tests/purge_chain_works.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/tests/running_the_node_and_interrupt.rs b/bin/node/cli/tests/running_the_node_and_interrupt.rs
index bd79dcd77a49a..05eb9a7027b71 100644
--- a/bin/node/cli/tests/running_the_node_and_interrupt.rs
+++ b/bin/node/cli/tests/running_the_node_and_interrupt.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/tests/temp_base_path_works.rs b/bin/node/cli/tests/temp_base_path_works.rs
index 9351568d87955..0152ddb464dc7 100644
--- a/bin/node/cli/tests/temp_base_path_works.rs
+++ b/bin/node/cli/tests/temp_base_path_works.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/cli/tests/version.rs b/bin/node/cli/tests/version.rs
index bbc9139d4f0f8..38e4b1fbda72e 100644
--- a/bin/node/cli/tests/version.rs
+++ b/bin/node/cli/tests/version.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/executor/Cargo.toml b/bin/node/executor/Cargo.toml
index f7bef798e4d02..b67c29889d30e 100644
--- a/bin/node/executor/Cargo.toml
+++ b/bin/node/executor/Cargo.toml
@@ -12,35 +12,35 @@ repository = "https://github.com/paritytech/substrate/"
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
-codec = { package = "parity-scale-codec", version = "1.3.4" }
+codec = { package = "parity-scale-codec", version = "2.0.0" }
node-primitives = { version = "2.0.0", path = "../primitives" }
node-runtime = { version = "2.0.0", path = "../runtime" }
-sc-executor = { version = "0.8.0", path = "../../../client/executor" }
-sp-core = { version = "2.0.0", path = "../../../primitives/core" }
-sp-keystore = { version = "0.8.0", path = "../../../primitives/keystore" }
-sp-io = { version = "2.0.0", path = "../../../primitives/io" }
-sp-state-machine = { version = "0.8.0", path = "../../../primitives/state-machine" }
-sp-trie = { version = "2.0.0", path = "../../../primitives/trie" }
+sc-executor = { version = "0.9.0", path = "../../../client/executor" }
+sp-core = { version = "3.0.0", path = "../../../primitives/core" }
+sp-keystore = { version = "0.9.0", path = "../../../primitives/keystore" }
+sp-io = { version = "3.0.0", path = "../../../primitives/io" }
+sp-state-machine = { version = "0.9.0", path = "../../../primitives/state-machine" }
+sp-trie = { version = "3.0.0", path = "../../../primitives/trie" }
trie-root = "0.16.0"
-frame-benchmarking = { version = "2.0.0", path = "../../../frame/benchmarking" }
+frame-benchmarking = { version = "3.0.0", path = "../../../frame/benchmarking" }
[dev-dependencies]
criterion = "0.3.0"
-frame-support = { version = "2.0.0", path = "../../../frame/support" }
-frame-system = { version = "2.0.0", path = "../../../frame/system" }
+frame-support = { version = "3.0.0", path = "../../../frame/support" }
+frame-system = { version = "3.0.0", path = "../../../frame/system" }
node-testing = { version = "2.0.0", path = "../testing" }
-pallet-balances = { version = "2.0.0", path = "../../../frame/balances" }
+pallet-balances = { version = "3.0.0", path = "../../../frame/balances" }
pallet-contracts = { version = "2.0.0", path = "../../../frame/contracts" }
-pallet-grandpa = { version = "2.0.0", path = "../../../frame/grandpa" }
-pallet-im-online = { version = "2.0.0", path = "../../../frame/im-online" }
-pallet-indices = { version = "2.0.0", path = "../../../frame/indices" }
-pallet-session = { version = "2.0.0", path = "../../../frame/session" }
-pallet-timestamp = { version = "2.0.0", path = "../../../frame/timestamp" }
-pallet-transaction-payment = { version = "2.0.0", path = "../../../frame/transaction-payment" }
-pallet-treasury = { version = "2.0.0", path = "../../../frame/treasury" }
-sp-application-crypto = { version = "2.0.0", path = "../../../primitives/application-crypto" }
-sp-runtime = { version = "2.0.0", path = "../../../primitives/runtime" }
-sp-externalities = { version = "0.8.0", path = "../../../primitives/externalities" }
+pallet-grandpa = { version = "3.0.0", path = "../../../frame/grandpa" }
+pallet-im-online = { version = "3.0.0", path = "../../../frame/im-online" }
+pallet-indices = { version = "3.0.0", path = "../../../frame/indices" }
+pallet-session = { version = "3.0.0", path = "../../../frame/session" }
+pallet-timestamp = { version = "3.0.0", path = "../../../frame/timestamp" }
+pallet-transaction-payment = { version = "3.0.0", path = "../../../frame/transaction-payment" }
+pallet-treasury = { version = "3.0.0", path = "../../../frame/treasury" }
+sp-application-crypto = { version = "3.0.0", path = "../../../primitives/application-crypto" }
+sp-runtime = { version = "3.0.0", path = "../../../primitives/runtime" }
+sp-externalities = { version = "0.9.0", path = "../../../primitives/externalities" }
substrate-test-client = { version = "2.0.0", path = "../../../test-utils/client" }
wat = "1.0"
diff --git a/bin/node/executor/benches/bench.rs b/bin/node/executor/benches/bench.rs
index 168cff0ff4568..554e6c4af428d 100644
--- a/bin/node/executor/benches/bench.rs
+++ b/bin/node/executor/benches/bench.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/bin/node/executor/src/lib.rs b/bin/node/executor/src/lib.rs
index 4c3b82bc7d3b5..e7fb09a19c514 100644
--- a/bin/node/executor/src/lib.rs
+++ b/bin/node/executor/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/bin/node/executor/tests/basic.rs b/bin/node/executor/tests/basic.rs
index 723e3a7e4ba62..d27954d3a721a 100644
--- a/bin/node/executor/tests/basic.rs
+++ b/bin/node/executor/tests/basic.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -17,7 +17,7 @@
use codec::{Encode, Decode, Joiner};
use frame_support::{
- StorageValue, StorageMap,
+ StorageMap,
traits::Currency,
weights::{GetDispatchInfo, DispatchInfo, DispatchClass},
};
@@ -27,7 +27,6 @@ use sp_runtime::{
traits::Hash as HashT,
transaction_validity::InvalidTransaction,
};
-use pallet_contracts::ContractAddressFor;
use frame_system::{self, EventRecord, Phase};
use node_runtime::{
@@ -193,7 +192,7 @@ fn bad_extrinsic_with_native_equivalent_code_gives_error() {
let mut t = new_test_ext(compact_code_unwrap(), false);
t.insert(
>::hashed_key_for(alice()),
- (0u32, 0u32, 69u128, 0u128, 0u128, 0u128).encode()
+ (0u32, 0u32, 0u32, 69u128, 0u128, 0u128, 0u128).encode()
);
t.insert(>::hashed_key().to_vec(), 69_u128.encode());
t.insert(>::hashed_key_for(0), vec![0u8; 32]);
@@ -222,11 +221,11 @@ fn successful_execution_with_native_equivalent_code_gives_ok() {
let mut t = new_test_ext(compact_code_unwrap(), false);
t.insert(
>::hashed_key_for(alice()),
- (0u32, 0u32, 111 * DOLLARS, 0u128, 0u128, 0u128).encode()
+ (0u32, 0u32, 0u32, 111 * DOLLARS, 0u128, 0u128, 0u128).encode()
);
t.insert(
>::hashed_key_for(bob()),
- (0u32, 0u32, 0 * DOLLARS, 0u128, 0u128, 0u128).encode()
+ (0u32, 0u32, 0u32, 0 * DOLLARS, 0u128, 0u128, 0u128).encode()
);
t.insert(
>::hashed_key().to_vec(),
@@ -265,11 +264,11 @@ fn successful_execution_with_foreign_code_gives_ok() {
let mut t = new_test_ext(bloaty_code_unwrap(), false);
t.insert(
>::hashed_key_for(alice()),
- (0u32, 0u32, 111 * DOLLARS, 0u128, 0u128, 0u128).encode()
+ (0u32, 0u32, 0u32, 111 * DOLLARS, 0u128, 0u128, 0u128).encode()
);
t.insert(
>::hashed_key_for(bob()),
- (0u32, 0u32, 0 * DOLLARS, 0u128, 0u128, 0u128).encode()
+ (0u32, 0u32, 0u32, 0 * DOLLARS, 0u128, 0u128, 0u128).encode()
);
t.insert(
>::hashed_key().to_vec(),
@@ -330,14 +329,14 @@ fn full_native_block_import_works() {
let events = vec![
EventRecord {
phase: Phase::ApplyExtrinsic(0),
- event: Event::frame_system(frame_system::RawEvent::ExtrinsicSuccess(
+ event: Event::frame_system(frame_system::Event::ExtrinsicSuccess(
DispatchInfo { weight: timestamp_weight, class: DispatchClass::Mandatory, ..Default::default() }
)),
topics: vec![],
},
EventRecord {
phase: Phase::ApplyExtrinsic(1),
- event: Event::pallet_balances(pallet_balances::RawEvent::Transfer(
+ event: Event::pallet_balances(pallet_balances::Event::Transfer(
alice().into(),
bob().into(),
69 * DOLLARS,
@@ -351,7 +350,7 @@ fn full_native_block_import_works() {
},
EventRecord {
phase: Phase::ApplyExtrinsic(1),
- event: Event::frame_system(frame_system::RawEvent::ExtrinsicSuccess(
+ event: Event::frame_system(frame_system::Event::ExtrinsicSuccess(
DispatchInfo { weight: transfer_weight, ..Default::default() }
)),
topics: vec![],
@@ -382,7 +381,7 @@ fn full_native_block_import_works() {
let events = vec![
EventRecord {
phase: Phase::ApplyExtrinsic(0),
- event: Event::frame_system(frame_system::RawEvent::ExtrinsicSuccess(
+ event: Event::frame_system(frame_system::Event::ExtrinsicSuccess(
DispatchInfo { weight: timestamp_weight, class: DispatchClass::Mandatory, ..Default::default() }
)),
topics: vec![],
@@ -390,7 +389,7 @@ fn full_native_block_import_works() {
EventRecord {
phase: Phase::ApplyExtrinsic(1),
event: Event::pallet_balances(
- pallet_balances::RawEvent::Transfer(
+ pallet_balances::Event::Transfer(
bob().into(),
alice().into(),
5 * DOLLARS,
@@ -405,7 +404,7 @@ fn full_native_block_import_works() {
},
EventRecord {
phase: Phase::ApplyExtrinsic(1),
- event: Event::frame_system(frame_system::RawEvent::ExtrinsicSuccess(
+ event: Event::frame_system(frame_system::Event::ExtrinsicSuccess(
DispatchInfo { weight: transfer_weight, ..Default::default() }
)),
topics: vec![],
@@ -413,7 +412,7 @@ fn full_native_block_import_works() {
EventRecord {
phase: Phase::ApplyExtrinsic(2),
event: Event::pallet_balances(
- pallet_balances::RawEvent::Transfer(
+ pallet_balances::Event::Transfer(
alice().into(),
bob().into(),
15 * DOLLARS,
@@ -428,7 +427,7 @@ fn full_native_block_import_works() {
},
EventRecord {
phase: Phase::ApplyExtrinsic(2),
- event: Event::frame_system(frame_system::RawEvent::ExtrinsicSuccess(
+ event: Event::frame_system(frame_system::Event::ExtrinsicSuccess(
DispatchInfo { weight: transfer_weight, ..Default::default() }
)),
topics: vec![],
@@ -581,15 +580,15 @@ const CODE_TRANSFER: &str = r#"
#[test]
fn deploying_wasm_contract_should_work() {
let transfer_code = wat::parse_str(CODE_TRANSFER).unwrap();
- let transfer_ch = ::Hashing::hash(&transfer_code);
+ let transfer_ch = ::Hashing::hash(&transfer_code);
- let addr = ::DetermineContractAddress::contract_address_for(
+ let addr = pallet_contracts::Module::::contract_address(
+ &charlie(),
&transfer_ch,
&[],
- &charlie(),
);
- let subsistence = pallet_contracts::Config::::subsistence_threshold_uncached();
+ let subsistence = pallet_contracts::Module::::subsistence_threshold();
let b = construct_block(
&mut new_test_ext(compact_code_unwrap(), false),
@@ -603,25 +602,20 @@ fn deploying_wasm_contract_should_work() {
CheckedExtrinsic {
signed: Some((charlie(), signed_extra(0, 0))),
function: Call::Contracts(
- pallet_contracts::Call::put_code::(transfer_code)
- ),
- },
- CheckedExtrinsic {
- signed: Some((charlie(), signed_extra(1, 0))),
- function: Call::Contracts(
- pallet_contracts::Call::instantiate::(
- 1 * DOLLARS + subsistence,
+ pallet_contracts::Call::instantiate_with_code::(
+ 1000 * DOLLARS + subsistence,
500_000_000,
- transfer_ch,
- Vec::new()
+ transfer_code,
+ Vec::new(),
+ Vec::new(),
)
),
},
CheckedExtrinsic {
- signed: Some((charlie(), signed_extra(2, 0))),
+ signed: Some((charlie(), signed_extra(1, 0))),
function: Call::Contracts(
pallet_contracts::Call::call::(
- pallet_indices::address::Address::Id(addr.clone()),
+ sp_runtime::MultiAddress::Id(addr.clone()),
10,
500_000_000,
vec![0x00, 0x01, 0x02, 0x03]
@@ -702,7 +696,7 @@ fn panic_execution_gives_error() {
let mut t = new_test_ext(bloaty_code_unwrap(), false);
t.insert(
>::hashed_key_for(alice()),
- (0u32, 0u32, 0 * DOLLARS, 0u128, 0u128, 0u128).encode()
+ (0u32, 0u32, 0u32, 0 * DOLLARS, 0u128, 0u128, 0u128).encode()
);
t.insert(>::hashed_key().to_vec(), 0_u128.encode());
t.insert(>::hashed_key_for(0), vec![0u8; 32]);
@@ -731,11 +725,11 @@ fn successful_execution_gives_ok() {
let mut t = new_test_ext(compact_code_unwrap(), false);
t.insert(
>::hashed_key_for(alice()),
- (0u32, 0u32, 111 * DOLLARS, 0u128, 0u128, 0u128).encode()
+ (0u32, 0u32, 0u32, 111 * DOLLARS, 0u128, 0u128, 0u128).encode()
);
t.insert(
>::hashed_key_for(bob()),
- (0u32, 0u32, 0 * DOLLARS, 0u128, 0u128, 0u128).encode()
+ (0u32, 0u32, 0u32, 0 * DOLLARS, 0u128, 0u128, 0u128).encode()
);
t.insert(
>::hashed_key().to_vec(),
diff --git a/bin/node/executor/tests/common.rs b/bin/node/executor/tests/common.rs
index efc54ebebf199..b376ebc35bae8 100644
--- a/bin/node/executor/tests/common.rs
+++ b/bin/node/executor/tests/common.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/bin/node/executor/tests/fees.rs b/bin/node/executor/tests/fees.rs
index d04af1d827009..2e92077c4ada3 100644
--- a/bin/node/executor/tests/fees.rs
+++ b/bin/node/executor/tests/fees.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -17,7 +17,6 @@
use codec::{Encode, Joiner};
use frame_support::{
- StorageValue, StorageMap,
traits::Currency,
weights::{GetDispatchInfo, constants::ExtrinsicBaseWeight, IdentityFee, WeightToFeePolynomial},
};
@@ -121,6 +120,15 @@ fn fee_multiplier_increases_and_decreases_on_big_weight() {
});
}
+fn new_account_info(free_dollars: u128) -> Vec {
+ frame_system::AccountInfo {
+ nonce: 0u32,
+ consumers: 0,
+ providers: 0,
+ data: (free_dollars * DOLLARS, 0 * DOLLARS, 0 * DOLLARS, 0 * DOLLARS),
+ }.encode()
+}
+
#[test]
fn transaction_fee_is_correct() {
// This uses the exact values of substrate-node.
@@ -131,14 +139,8 @@ fn transaction_fee_is_correct() {
// - 1 milli-dot based on current polkadot runtime.
// (this baed on assigning 0.1 CENT to the cheapest tx with `weight = 100`)
let mut t = new_test_ext(compact_code_unwrap(), false);
- t.insert(
- >::hashed_key_for(alice()),
- (0u32, 0u32, 100 * DOLLARS, 0 * DOLLARS, 0 * DOLLARS, 0 * DOLLARS).encode()
- );
- t.insert(
- >::hashed_key_for(bob()),
- (0u32, 0u32, 10 * DOLLARS, 0 * DOLLARS, 0 * DOLLARS, 0 * DOLLARS).encode()
- );
+ t.insert(>::hashed_key_for(alice()), new_account_info(100));
+ t.insert(>::hashed_key_for(bob()), new_account_info(10));
t.insert(
>::hashed_key().to_vec(),
(110 * DOLLARS).encode()
diff --git a/bin/node/executor/tests/submit_transaction.rs b/bin/node/executor/tests/submit_transaction.rs
index 5bac6b5e374c7..ff483d9ecd8cd 100644
--- a/bin/node/executor/tests/submit_transaction.rs
+++ b/bin/node/executor/tests/submit_transaction.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -217,7 +217,6 @@ fn should_submit_signed_twice_from_all_accounts() {
#[test]
fn submitted_transaction_should_be_valid() {
use codec::Encode;
- use frame_support::storage::StorageMap;
use sp_runtime::transaction_validity::{TransactionSource, TransactionTag};
use sp_runtime::traits::StaticLookup;
@@ -253,7 +252,7 @@ fn submitted_transaction_should_be_valid() {
let author = extrinsic.signature.clone().unwrap().0;
let address = Indices::lookup(author).unwrap();
let data = pallet_balances::AccountData { free: 5_000_000_000_000, ..Default::default() };
- let account = frame_system::AccountInfo { nonce: 0, refcount: 0, data };
+ let account = frame_system::AccountInfo { nonce: 0, consumers: 0, providers: 0, data };
>::insert(&address, account);
// check validity
diff --git a/bin/node/inspect/Cargo.toml b/bin/node/inspect/Cargo.toml
index 3686ddf27669b..3d89a68aed309 100644
--- a/bin/node/inspect/Cargo.toml
+++ b/bin/node/inspect/Cargo.toml
@@ -11,13 +11,13 @@ repository = "https://github.com/paritytech/substrate/"
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
-codec = { package = "parity-scale-codec", version = "1.3.4" }
+codec = { package = "parity-scale-codec", version = "2.0.0" }
derive_more = "0.99"
log = "0.4.8"
-sc-cli = { version = "0.8.0", path = "../../../client/cli" }
-sc-client-api = { version = "2.0.0", path = "../../../client/api" }
-sc-service = { version = "0.8.0", default-features = false, path = "../../../client/service" }
-sp-blockchain = { version = "2.0.0", path = "../../../primitives/blockchain" }
-sp-core = { version = "2.0.0", path = "../../../primitives/core" }
-sp-runtime = { version = "2.0.0", path = "../../../primitives/runtime" }
+sc-cli = { version = "0.9.0", path = "../../../client/cli" }
+sc-client-api = { version = "3.0.0", path = "../../../client/api" }
+sc-service = { version = "0.9.0", default-features = false, path = "../../../client/service" }
+sp-blockchain = { version = "3.0.0", path = "../../../primitives/blockchain" }
+sp-core = { version = "3.0.0", path = "../../../primitives/core" }
+sp-runtime = { version = "3.0.0", path = "../../../primitives/runtime" }
structopt = "0.3.8"
diff --git a/bin/node/inspect/src/cli.rs b/bin/node/inspect/src/cli.rs
index d66644bab52fa..abdbedc296d02 100644
--- a/bin/node/inspect/src/cli.rs
+++ b/bin/node/inspect/src/cli.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/inspect/src/command.rs b/bin/node/inspect/src/command.rs
index fae6c10c7fe78..a1a9c947a561b 100644
--- a/bin/node/inspect/src/command.rs
+++ b/bin/node/inspect/src/command.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/inspect/src/lib.rs b/bin/node/inspect/src/lib.rs
index 02f5614b81a78..2a55fdcda62ee 100644
--- a/bin/node/inspect/src/lib.rs
+++ b/bin/node/inspect/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
//
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
//
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/primitives/Cargo.toml b/bin/node/primitives/Cargo.toml
index 305764970c149..043ec5ab21cec 100644
--- a/bin/node/primitives/Cargo.toml
+++ b/bin/node/primitives/Cargo.toml
@@ -11,14 +11,14 @@ repository = "https://github.com/paritytech/substrate/"
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
-codec = { package = "parity-scale-codec", version = "1.3.4", default-features = false, features = ["derive"] }
-frame-system = { version = "2.0.0", default-features = false, path = "../../../frame/system" }
-sp-application-crypto = { version = "2.0.0", default-features = false, path = "../../../primitives/application-crypto" }
-sp-core = { version = "2.0.0", default-features = false, path = "../../../primitives/core" }
-sp-runtime = { version = "2.0.0", default-features = false, path = "../../../primitives/runtime" }
+codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
+frame-system = { version = "3.0.0", default-features = false, path = "../../../frame/system" }
+sp-application-crypto = { version = "3.0.0", default-features = false, path = "../../../primitives/application-crypto" }
+sp-core = { version = "3.0.0", default-features = false, path = "../../../primitives/core" }
+sp-runtime = { version = "3.0.0", default-features = false, path = "../../../primitives/runtime" }
[dev-dependencies]
-sp-serializer = { version = "2.0.0", path = "../../../primitives/serializer" }
+sp-serializer = { version = "3.0.0", path = "../../../primitives/serializer" }
pretty_assertions = "0.6.1"
[features]
diff --git a/bin/node/primitives/src/lib.rs b/bin/node/primitives/src/lib.rs
index 137fb1d94c778..9470adc399f96 100644
--- a/bin/node/primitives/src/lib.rs
+++ b/bin/node/primitives/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/bin/node/rpc-client/Cargo.toml b/bin/node/rpc-client/Cargo.toml
index 9f358e901dafa..d0e8798862dba 100644
--- a/bin/node/rpc-client/Cargo.toml
+++ b/bin/node/rpc-client/Cargo.toml
@@ -12,9 +12,9 @@ targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
futures = "0.1.29"
-hyper = "0.12.35"
-jsonrpc-core-client = { version = "15.0.0", default-features = false, features = ["http"] }
+hyper = "~0.13.9"
+jsonrpc-core-client = { version = "15.1.0", default-features = false, features = ["http"] }
log = "0.4.8"
node-primitives = { version = "2.0.0", path = "../primitives" }
-sp-tracing = { version = "2.0.0", path = "../../../primitives/tracing" }
-sc-rpc = { version = "2.0.0", path = "../../../client/rpc" }
+sp-tracing = { version = "3.0.0", path = "../../../primitives/tracing" }
+sc-rpc = { version = "3.0.0", path = "../../../client/rpc" }
diff --git a/bin/node/rpc-client/src/main.rs b/bin/node/rpc-client/src/main.rs
index 31f1efa28ccd0..ddd8a50ad36e4 100644
--- a/bin/node/rpc-client/src/main.rs
+++ b/bin/node/rpc-client/src/main.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/bin/node/rpc/Cargo.toml b/bin/node/rpc/Cargo.toml
index aef4a82db776a..3e0e77e030f10 100644
--- a/bin/node/rpc/Cargo.toml
+++ b/bin/node/rpc/Cargo.toml
@@ -11,28 +11,28 @@ repository = "https://github.com/paritytech/substrate/"
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
-jsonrpc-core = "15.0.0"
+jsonrpc-core = "15.1.0"
node-primitives = { version = "2.0.0", path = "../primitives" }
node-runtime = { version = "2.0.0", path = "../runtime" }
pallet-contracts-rpc = { version = "0.8.0", path = "../../../frame/contracts/rpc/" }
-pallet-transaction-payment-rpc = { version = "2.0.0", path = "../../../frame/transaction-payment/rpc/" }
-sc-client-api = { version = "2.0.0", path = "../../../client/api" }
-sc-consensus-babe = { version = "0.8.0", path = "../../../client/consensus/babe" }
-sc-consensus-babe-rpc = { version = "0.8.0", path = "../../../client/consensus/babe/rpc" }
-sc-consensus-epochs = { version = "0.8.0", path = "../../../client/consensus/epochs" }
-sc-chain-spec = { version = "2.0.0", path = "../../../client/chain-spec" }
-sc-finality-grandpa = { version = "0.8.0", path = "../../../client/finality-grandpa" }
-sc-finality-grandpa-rpc = { version = "0.8.0", path = "../../../client/finality-grandpa/rpc" }
-sc-keystore = { version = "2.0.0", path = "../../../client/keystore" }
-sc-rpc-api = { version = "0.8.0", path = "../../../client/rpc-api" }
-sc-rpc = { version = "2.0.0", path = "../../../client/rpc" }
-sc-sync-state-rpc = { version = "0.8.0", path = "../../../client/sync-state-rpc" }
-sp-api = { version = "2.0.0", path = "../../../primitives/api" }
-sp-block-builder = { version = "2.0.0", path = "../../../primitives/block-builder" }
-sp-blockchain = { version = "2.0.0", path = "../../../primitives/blockchain" }
-sp-keystore = { version = "0.8.0", path = "../../../primitives/keystore" }
-sp-consensus = { version = "0.8.0", path = "../../../primitives/consensus/common" }
-sp-consensus-babe = { version = "0.8.0", path = "../../../primitives/consensus/babe" }
-sp-runtime = { version = "2.0.0", path = "../../../primitives/runtime" }
-sp-transaction-pool = { version = "2.0.0", path = "../../../primitives/transaction-pool" }
-substrate-frame-rpc-system = { version = "2.0.0", path = "../../../utils/frame/rpc/system" }
+pallet-transaction-payment-rpc = { version = "3.0.0", path = "../../../frame/transaction-payment/rpc/" }
+sc-client-api = { version = "3.0.0", path = "../../../client/api" }
+sc-consensus-babe = { version = "0.9.0", path = "../../../client/consensus/babe" }
+sc-consensus-babe-rpc = { version = "0.9.0", path = "../../../client/consensus/babe/rpc" }
+sc-consensus-epochs = { version = "0.9.0", path = "../../../client/consensus/epochs" }
+sc-chain-spec = { version = "3.0.0", path = "../../../client/chain-spec" }
+sc-finality-grandpa = { version = "0.9.0", path = "../../../client/finality-grandpa" }
+sc-finality-grandpa-rpc = { version = "0.9.0", path = "../../../client/finality-grandpa/rpc" }
+sc-keystore = { version = "3.0.0", path = "../../../client/keystore" }
+sc-rpc-api = { version = "0.9.0", path = "../../../client/rpc-api" }
+sc-rpc = { version = "3.0.0", path = "../../../client/rpc" }
+sc-sync-state-rpc = { version = "0.9.0", path = "../../../client/sync-state-rpc" }
+sp-api = { version = "3.0.0", path = "../../../primitives/api" }
+sp-block-builder = { version = "3.0.0", path = "../../../primitives/block-builder" }
+sp-blockchain = { version = "3.0.0", path = "../../../primitives/blockchain" }
+sp-keystore = { version = "0.9.0", path = "../../../primitives/keystore" }
+sp-consensus = { version = "0.9.0", path = "../../../primitives/consensus/common" }
+sp-consensus-babe = { version = "0.9.0", path = "../../../primitives/consensus/babe" }
+sp-runtime = { version = "3.0.0", path = "../../../primitives/runtime" }
+sp-transaction-pool = { version = "3.0.0", path = "../../../primitives/transaction-pool" }
+substrate-frame-rpc-system = { version = "3.0.0", path = "../../../utils/frame/rpc/system" }
diff --git a/bin/node/rpc/src/lib.rs b/bin/node/rpc/src/lib.rs
index 1ced3d60ab362..e68ca6843bc94 100644
--- a/bin/node/rpc/src/lib.rs
+++ b/bin/node/rpc/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/bin/node/runtime/Cargo.toml b/bin/node/runtime/Cargo.toml
index 80c914ff57580..f77a16a10f4c6 100644
--- a/bin/node/runtime/Cargo.toml
+++ b/bin/node/runtime/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "node-runtime"
-version = "2.0.0"
+version = "2.0.1"
authors = ["Parity Technologies "]
edition = "2018"
build = "build.rs"
@@ -14,87 +14,93 @@ targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
# third-party dependencies
-codec = { package = "parity-scale-codec", version = "1.3.4", default-features = false, features = ["derive"] }
-integer-sqrt = { version = "0.1.2" }
+codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
serde = { version = "1.0.102", optional = true }
static_assertions = "1.1.0"
hex-literal = { version = "0.3.1", optional = true }
# primitives
-sp-authority-discovery = { version = "2.0.0", default-features = false, path = "../../../primitives/authority-discovery" }
-sp-consensus-babe = { version = "0.8.0", default-features = false, path = "../../../primitives/consensus/babe" }
-sp-block-builder = { path = "../../../primitives/block-builder", default-features = false, version = "2.0.0"}
-sp-inherents = { version = "2.0.0", default-features = false, path = "../../../primitives/inherents" }
+sp-authority-discovery = { version = "3.0.0", default-features = false, path = "../../../primitives/authority-discovery" }
+sp-consensus-babe = { version = "0.9.0", default-features = false, path = "../../../primitives/consensus/babe" }
+sp-block-builder = { path = "../../../primitives/block-builder", default-features = false, version = "3.0.0"}
+sp-inherents = { version = "3.0.0", default-features = false, path = "../../../primitives/inherents" }
node-primitives = { version = "2.0.0", default-features = false, path = "../primitives" }
-sp-offchain = { version = "2.0.0", default-features = false, path = "../../../primitives/offchain" }
-sp-core = { version = "2.0.0", default-features = false, path = "../../../primitives/core" }
-sp-std = { version = "2.0.0", default-features = false, path = "../../../primitives/std" }
-sp-api = { version = "2.0.0", default-features = false, path = "../../../primitives/api" }
-sp-runtime = { version = "2.0.0", default-features = false, path = "../../../primitives/runtime" }
-sp-staking = { version = "2.0.0", default-features = false, path = "../../../primitives/staking" }
-sp-keyring = { version = "2.0.0", optional = true, path = "../../../primitives/keyring" }
-sp-session = { version = "2.0.0", default-features = false, path = "../../../primitives/session" }
-sp-transaction-pool = { version = "2.0.0", default-features = false, path = "../../../primitives/transaction-pool" }
-sp-version = { version = "2.0.0", default-features = false, path = "../../../primitives/version" }
+sp-offchain = { version = "3.0.0", default-features = false, path = "../../../primitives/offchain" }
+sp-core = { version = "3.0.0", default-features = false, path = "../../../primitives/core" }
+sp-std = { version = "3.0.0", default-features = false, path = "../../../primitives/std" }
+sp-api = { version = "3.0.0", default-features = false, path = "../../../primitives/api" }
+sp-runtime = { version = "3.0.0", default-features = false, path = "../../../primitives/runtime" }
+sp-staking = { version = "3.0.0", default-features = false, path = "../../../primitives/staking" }
+sp-keyring = { version = "3.0.0", optional = true, path = "../../../primitives/keyring" }
+sp-session = { version = "3.0.0", default-features = false, path = "../../../primitives/session" }
+sp-transaction-pool = { version = "3.0.0", default-features = false, path = "../../../primitives/transaction-pool" }
+sp-version = { version = "3.0.0", default-features = false, path = "../../../primitives/version" }
# frame dependencies
-frame-executive = { version = "2.0.0", default-features = false, path = "../../../frame/executive" }
-frame-benchmarking = { version = "2.0.0", default-features = false, path = "../../../frame/benchmarking", optional = true }
-frame-support = { version = "2.0.0", default-features = false, path = "../../../frame/support" }
-frame-system = { version = "2.0.0", default-features = false, path = "../../../frame/system" }
-frame-system-benchmarking = { version = "2.0.0", default-features = false, path = "../../../frame/system/benchmarking", optional = true }
-frame-system-rpc-runtime-api = { version = "2.0.0", default-features = false, path = "../../../frame/system/rpc/runtime-api/" }
-pallet-authority-discovery = { version = "2.0.0", default-features = false, path = "../../../frame/authority-discovery" }
-pallet-authorship = { version = "2.0.0", default-features = false, path = "../../../frame/authorship" }
-pallet-babe = { version = "2.0.0", default-features = false, path = "../../../frame/babe" }
-pallet-balances = { version = "2.0.0", default-features = false, path = "../../../frame/balances" }
-pallet-collective = { version = "2.0.0", default-features = false, path = "../../../frame/collective" }
+frame-executive = { version = "3.0.0", default-features = false, path = "../../../frame/executive" }
+frame-benchmarking = { version = "3.0.0", default-features = false, path = "../../../frame/benchmarking", optional = true }
+frame-support = { version = "3.0.0", default-features = false, path = "../../../frame/support" }
+frame-system = { version = "3.0.0", default-features = false, path = "../../../frame/system" }
+frame-system-benchmarking = { version = "3.0.0", default-features = false, path = "../../../frame/system/benchmarking", optional = true }
+frame-system-rpc-runtime-api = { version = "3.0.0", default-features = false, path = "../../../frame/system/rpc/runtime-api/" }
+pallet-assets = { version = "3.0.0", default-features = false, path = "../../../frame/assets" }
+pallet-authority-discovery = { version = "3.0.0", default-features = false, path = "../../../frame/authority-discovery" }
+pallet-authorship = { version = "3.0.0", default-features = false, path = "../../../frame/authorship" }
+pallet-babe = { version = "3.0.0", default-features = false, path = "../../../frame/babe" }
+pallet-balances = { version = "3.0.0", default-features = false, path = "../../../frame/balances" }
+pallet-bounties = { version = "3.0.0", default-features = false, path = "../../../frame/bounties" }
+pallet-collective = { version = "3.0.0", default-features = false, path = "../../../frame/collective" }
pallet-contracts = { version = "2.0.0", default-features = false, path = "../../../frame/contracts" }
pallet-contracts-primitives = { version = "2.0.0", default-features = false, path = "../../../frame/contracts/common/" }
pallet-contracts-rpc-runtime-api = { version = "0.8.0", default-features = false, path = "../../../frame/contracts/rpc/runtime-api/" }
-pallet-democracy = { version = "2.0.0", default-features = false, path = "../../../frame/democracy" }
-pallet-elections-phragmen = { version = "2.0.0", default-features = false, path = "../../../frame/elections-phragmen" }
-pallet-grandpa = { version = "2.0.0", default-features = false, path = "../../../frame/grandpa" }
-pallet-im-online = { version = "2.0.0", default-features = false, path = "../../../frame/im-online" }
-pallet-indices = { version = "2.0.0", default-features = false, path = "../../../frame/indices" }
-pallet-identity = { version = "2.0.0", default-features = false, path = "../../../frame/identity" }
-pallet-membership = { version = "2.0.0", default-features = false, path = "../../../frame/membership" }
-pallet-multisig = { version = "2.0.0", default-features = false, path = "../../../frame/multisig" }
-pallet-offences = { version = "2.0.0", default-features = false, path = "../../../frame/offences" }
-pallet-offences-benchmarking = { version = "2.0.0", path = "../../../frame/offences/benchmarking", default-features = false, optional = true }
-pallet-proxy = { version = "2.0.0", default-features = false, path = "../../../frame/proxy" }
-pallet-randomness-collective-flip = { version = "2.0.0", default-features = false, path = "../../../frame/randomness-collective-flip" }
-pallet-recovery = { version = "2.0.0", default-features = false, path = "../../../frame/recovery" }
-pallet-session = { version = "2.0.0", features = ["historical"], path = "../../../frame/session", default-features = false }
-pallet-session-benchmarking = { version = "2.0.0", path = "../../../frame/session/benchmarking", default-features = false, optional = true }
-pallet-staking = { version = "2.0.0", default-features = false, path = "../../../frame/staking" }
-pallet-staking-reward-curve = { version = "2.0.0", default-features = false, path = "../../../frame/staking/reward-curve" }
-pallet-scheduler = { version = "2.0.0", default-features = false, path = "../../../frame/scheduler" }
-pallet-society = { version = "2.0.0", default-features = false, path = "../../../frame/society" }
-pallet-sudo = { version = "2.0.0", default-features = false, path = "../../../frame/sudo" }
-pallet-timestamp = { version = "2.0.0", default-features = false, path = "../../../frame/timestamp" }
-pallet-treasury = { version = "2.0.0", default-features = false, path = "../../../frame/treasury" }
-pallet-utility = { version = "2.0.0", default-features = false, path = "../../../frame/utility" }
-pallet-transaction-payment = { version = "2.0.0", default-features = false, path = "../../../frame/transaction-payment" }
-pallet-transaction-payment-rpc-runtime-api = { version = "2.0.0", default-features = false, path = "../../../frame/transaction-payment/rpc/runtime-api/" }
-pallet-vesting = { version = "2.0.0", default-features = false, path = "../../../frame/vesting" }
+pallet-democracy = { version = "3.0.0", default-features = false, path = "../../../frame/democracy" }
+pallet-elections-phragmen = { version = "3.0.0", default-features = false, path = "../../../frame/elections-phragmen" }
+pallet-grandpa = { version = "3.0.0", default-features = false, path = "../../../frame/grandpa" }
+pallet-im-online = { version = "3.0.0", default-features = false, path = "../../../frame/im-online" }
+pallet-indices = { version = "3.0.0", default-features = false, path = "../../../frame/indices" }
+pallet-identity = { version = "3.0.0", default-features = false, path = "../../../frame/identity" }
+pallet-lottery = { version = "3.0.0", default-features = false, path = "../../../frame/lottery" }
+pallet-membership = { version = "3.0.0", default-features = false, path = "../../../frame/membership" }
+pallet-mmr = { version = "3.0.0", default-features = false, path = "../../../frame/merkle-mountain-range" }
+pallet-multisig = { version = "3.0.0", default-features = false, path = "../../../frame/multisig" }
+pallet-offences = { version = "3.0.0", default-features = false, path = "../../../frame/offences" }
+pallet-offences-benchmarking = { version = "3.0.0", path = "../../../frame/offences/benchmarking", default-features = false, optional = true }
+pallet-proxy = { version = "3.0.0", default-features = false, path = "../../../frame/proxy" }
+pallet-randomness-collective-flip = { version = "3.0.0", default-features = false, path = "../../../frame/randomness-collective-flip" }
+pallet-recovery = { version = "3.0.0", default-features = false, path = "../../../frame/recovery" }
+pallet-session = { version = "3.0.0", features = ["historical"], path = "../../../frame/session", default-features = false }
+pallet-session-benchmarking = { version = "3.0.0", path = "../../../frame/session/benchmarking", default-features = false, optional = true }
+pallet-staking = { version = "3.0.0", default-features = false, path = "../../../frame/staking" }
+pallet-staking-reward-curve = { version = "3.0.0", default-features = false, path = "../../../frame/staking/reward-curve" }
+pallet-scheduler = { version = "3.0.0", default-features = false, path = "../../../frame/scheduler" }
+pallet-society = { version = "3.0.0", default-features = false, path = "../../../frame/society" }
+pallet-sudo = { version = "3.0.0", default-features = false, path = "../../../frame/sudo" }
+pallet-timestamp = { version = "3.0.0", default-features = false, path = "../../../frame/timestamp" }
+pallet-tips = { version = "3.0.0", default-features = false, path = "../../../frame/tips" }
+pallet-treasury = { version = "3.0.0", default-features = false, path = "../../../frame/treasury" }
+pallet-utility = { version = "3.0.0", default-features = false, path = "../../../frame/utility" }
+pallet-transaction-payment = { version = "3.0.0", default-features = false, path = "../../../frame/transaction-payment" }
+pallet-transaction-payment-rpc-runtime-api = { version = "3.0.0", default-features = false, path = "../../../frame/transaction-payment/rpc/runtime-api/" }
+pallet-vesting = { version = "3.0.0", default-features = false, path = "../../../frame/vesting" }
[build-dependencies]
-wasm-builder-runner = { version = "2.0.0", package = "substrate-wasm-builder-runner", path = "../../../utils/wasm-builder-runner" }
+substrate-wasm-builder = { version = "4.0.0", path = "../../../utils/wasm-builder" }
[dev-dependencies]
-sp-io = { version = "2.0.0", path = "../../../primitives/io" }
+sp-io = { version = "3.0.0", path = "../../../primitives/io" }
[features]
default = ["std"]
with-tracing = [ "frame-executive/with-tracing" ]
std = [
"sp-authority-discovery/std",
+ "pallet-assets/std",
"pallet-authority-discovery/std",
"pallet-authorship/std",
"sp-consensus-babe/std",
"pallet-babe/std",
"pallet-balances/std",
+ "pallet-bounties/std",
"sp-block-builder/std",
"codec/std",
"pallet-collective/std",
@@ -108,7 +114,9 @@ std = [
"pallet-im-online/std",
"pallet-indices/std",
"sp-inherents/std",
+ "pallet-lottery/std",
"pallet-membership/std",
+ "pallet-mmr/std",
"pallet-multisig/std",
"pallet-identity/std",
"pallet-scheduler/std",
@@ -133,6 +141,7 @@ std = [
"frame-system-rpc-runtime-api/std",
"frame-system/std",
"pallet-timestamp/std",
+ "pallet-tips/std",
"pallet-transaction-payment-rpc-runtime-api/std",
"pallet-transaction-payment/std",
"pallet-treasury/std",
@@ -148,8 +157,10 @@ runtime-benchmarks = [
"frame-support/runtime-benchmarks",
"frame-system/runtime-benchmarks",
"sp-runtime/runtime-benchmarks",
+ "pallet-assets/runtime-benchmarks",
"pallet-babe/runtime-benchmarks",
"pallet-balances/runtime-benchmarks",
+ "pallet-bounties/runtime-benchmarks",
"pallet-collective/runtime-benchmarks",
"pallet-contracts/runtime-benchmarks",
"pallet-democracy/runtime-benchmarks",
@@ -158,12 +169,15 @@ runtime-benchmarks = [
"pallet-identity/runtime-benchmarks",
"pallet-im-online/runtime-benchmarks",
"pallet-indices/runtime-benchmarks",
+ "pallet-lottery/runtime-benchmarks",
+ "pallet-mmr/runtime-benchmarks",
"pallet-multisig/runtime-benchmarks",
"pallet-proxy/runtime-benchmarks",
"pallet-scheduler/runtime-benchmarks",
"pallet-society/runtime-benchmarks",
"pallet-staking/runtime-benchmarks",
"pallet-timestamp/runtime-benchmarks",
+ "pallet-tips/runtime-benchmarks",
"pallet-treasury/runtime-benchmarks",
"pallet-utility/runtime-benchmarks",
"pallet-vesting/runtime-benchmarks",
diff --git a/bin/node/runtime/build.rs b/bin/node/runtime/build.rs
index 4f111bc993007..a1c4b2d892cfe 100644
--- a/bin/node/runtime/build.rs
+++ b/bin/node/runtime/build.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,12 +15,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-use wasm_builder_runner::WasmBuilder;
+use substrate_wasm_builder::WasmBuilder;
fn main() {
WasmBuilder::new()
.with_current_project()
- .with_wasm_builder_from_crates_or_path("2.0.1", "../../../utils/wasm-builder")
.export_heap_base()
.import_memory()
.build()
diff --git a/bin/node/runtime/src/constants.rs b/bin/node/runtime/src/constants.rs
index 8e87d61c1e6b5..f447486c7ffc4 100644
--- a/bin/node/runtime/src/constants.rs
+++ b/bin/node/runtime/src/constants.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -50,7 +50,7 @@ pub mod time {
/// always be assigned, in which case `MILLISECS_PER_BLOCK` and
/// `SLOT_DURATION` should have the same value.
///
- ///
+ ///
pub const MILLISECS_PER_BLOCK: Moment = 3000;
pub const SECS_PER_BLOCK: Moment = MILLISECS_PER_BLOCK / 1000;
diff --git a/bin/node/runtime/src/impls.rs b/bin/node/runtime/src/impls.rs
index 16666997b3a55..c6a56e5ac0dab 100644
--- a/bin/node/runtime/src/impls.rs
+++ b/bin/node/runtime/src/impls.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -34,13 +34,15 @@ mod multiplier_tests {
use crate::{
constants::{currency::*, time::*},
- TransactionPayment, MaximumBlockWeight, AvailableBlockRatio, Runtime, TargetBlockFullness,
+ TransactionPayment, Runtime, TargetBlockFullness,
AdjustmentVariable, System, MinimumMultiplier,
+ RuntimeBlockWeights as BlockWeights,
};
- use frame_support::weights::{Weight, WeightToFeePolynomial};
+ use frame_support::weights::{Weight, WeightToFeePolynomial, DispatchClass};
- fn max() -> Weight {
- AvailableBlockRatio::get() * MaximumBlockWeight::get()
+ fn max_normal() -> Weight {
+ BlockWeights::get().get(DispatchClass::Normal).max_total
+ .unwrap_or_else(|| BlockWeights::get().max_block)
}
fn min_multiplier() -> Multiplier {
@@ -48,7 +50,7 @@ mod multiplier_tests {
}
fn target() -> Weight {
- TargetBlockFullness::get() * max()
+ TargetBlockFullness::get() * max_normal()
}
// update based on runtime impl.
@@ -69,7 +71,7 @@ mod multiplier_tests {
let previous_float = previous_float.max(min_multiplier().into_inner() as f64 / accuracy);
// maximum tx weight
- let m = max() as f64;
+ let m = max_normal() as f64;
// block weight always truncated to max weight
let block_weight = (block_weight as f64).min(m);
let v: f64 = AdjustmentVariable::get().to_fraction();
@@ -89,7 +91,7 @@ mod multiplier_tests {
let mut t: sp_io::TestExternalities =
frame_system::GenesisConfig::default().build_storage::().unwrap().into();
t.execute_with(|| {
- System::set_block_limits(w, 0);
+ System::set_block_consumed_resources(w, 0);
assertions()
});
}
@@ -102,8 +104,8 @@ mod multiplier_tests {
(100, fm.clone()),
(1000, fm.clone()),
(target(), fm.clone()),
- (max() / 2, fm.clone()),
- (max(), fm.clone()),
+ (max_normal() / 2, fm.clone()),
+ (max_normal(), fm.clone()),
];
test_set.into_iter().for_each(|(w, fm)| {
run_with_system_weight(w, || {
@@ -164,7 +166,7 @@ mod multiplier_tests {
#[test]
fn min_change_per_day() {
- run_with_system_weight(max(), || {
+ run_with_system_weight(max_normal(), || {
let mut fm = Multiplier::one();
// See the example in the doc of `TargetedFeeAdjustment`. are at least 0.234, hence
// `fm > 1.234`.
@@ -182,7 +184,7 @@ mod multiplier_tests {
// `cargo test congested_chain_simulation -- --nocapture` to get some insight.
// almost full. The entire quota of normal transactions is taken.
- let block_weight = AvailableBlockRatio::get() * max() - 100;
+ let block_weight = BlockWeights::get().get(DispatchClass::Normal).max_total.unwrap() - 100;
// Default substrate weight.
let tx_weight = frame_support::weights::constants::ExtrinsicBaseWeight::get();
@@ -200,7 +202,7 @@ mod multiplier_tests {
fm = next;
iterations += 1;
let fee =
- ::WeightToFee::calc(&tx_weight);
+ ::WeightToFee::calc(&tx_weight);
let adjusted_fee = fm.saturating_mul_acc_int(fee);
println!(
"iteration {}, new fm = {:?}. Fee at this point is: {} units / {} millicents, \
@@ -320,15 +322,19 @@ mod multiplier_tests {
10 * mb,
2147483647,
4294967295,
- MaximumBlockWeight::get() / 2,
- MaximumBlockWeight::get(),
+ BlockWeights::get().max_block / 2,
+ BlockWeights::get().max_block,
Weight::max_value() / 2,
Weight::max_value(),
].into_iter().for_each(|i| {
run_with_system_weight(i, || {
let next = runtime_multiplier_update(Multiplier::one());
let truth = truth_value_update(i, Multiplier::one());
- assert_eq_error_rate!(truth, next, Multiplier::from_inner(50_000_000));
+ assert_eq_error_rate!(
+ truth,
+ next,
+ Multiplier::from_inner(50_000_000)
+ );
});
});
diff --git a/bin/node/runtime/src/lib.rs b/bin/node/runtime/src/lib.rs
index dddef0b46a884..58c98e529c319 100644
--- a/bin/node/runtime/src/lib.rs
+++ b/bin/node/runtime/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see .
-//! The Substrate runtime. This can be compiled with ``#[no_std]`, ready for Wasm.
+//! The Substrate runtime. This can be compiled with `#[no_std]`, ready for Wasm.
#![cfg_attr(not(feature = "std"), no_std)]
// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256.
@@ -28,14 +28,17 @@ use frame_support::{
construct_runtime, parameter_types, debug, RuntimeDebug,
weights::{
Weight, IdentityFee,
- constants::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight, WEIGHT_PER_SECOND},
+ constants::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight, WEIGHT_PER_SECOND}, DispatchClass,
},
traits::{
Currency, Imbalance, KeyOwnerProofSystem, OnUnbalanced, Randomness, LockIdentifier,
U128CurrencyToVote,
},
};
-use frame_system::{EnsureRoot, EnsureOneOf};
+use frame_system::{
+ EnsureRoot, EnsureOneOf,
+ limits::{BlockWeights, BlockLength}
+};
use frame_support::traits::InstanceFilter;
use codec::{Encode, Decode};
use sp_core::{
@@ -54,7 +57,7 @@ use sp_runtime::curve::PiecewiseLinear;
use sp_runtime::transaction_validity::{TransactionValidity, TransactionSource, TransactionPriority};
use sp_runtime::traits::{
self, BlakeTwo256, Block as BlockT, StaticLookup, SaturatedConversion,
- ConvertInto, OpaqueKeys, NumberFor, Saturating,
+ ConvertInto, OpaqueKeys, NumberFor,
};
use sp_version::RuntimeVersion;
#[cfg(any(feature = "std", test))]
@@ -63,11 +66,12 @@ use pallet_grandpa::{AuthorityId as GrandpaId, AuthorityList as GrandpaAuthority
use pallet_grandpa::fg_primitives;
use pallet_im_online::sr25519::AuthorityId as ImOnlineId;
use sp_authority_discovery::AuthorityId as AuthorityDiscoveryId;
-use pallet_transaction_payment_rpc_runtime_api::RuntimeDispatchInfo;
+use pallet_transaction_payment::{FeeDetails, RuntimeDispatchInfo};
pub use pallet_transaction_payment::{Multiplier, TargetedFeeAdjustment, CurrencyAdapter};
use pallet_session::{historical as pallet_session_historical};
use sp_inherents::{InherentData, CheckInherentsResult};
use static_assertions::const_assert;
+use pallet_contracts::WeightInfo;
#[cfg(any(feature = "std", test))]
pub use sp_runtime::BuildStorage;
@@ -87,18 +91,15 @@ pub mod constants;
use constants::{time::*, currency::*};
use sp_runtime::generic::Era;
-/// Weights for pallets used in the runtime.
-mod weights;
-
// Make the WASM binary available.
#[cfg(feature = "std")]
include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs"));
+/// Wasm binary unwrapped. If built with `SKIP_WASM_BUILD`, the function panics.
#[cfg(feature = "std")]
-/// Wasm binary unwrapped. If built with `BUILD_DUMMY_WASM_BINARY`, the function panics.
pub fn wasm_binary_unwrap() -> &'static [u8] {
WASM_BINARY.expect("Development wasm binary is not available. This means the client is \
- built with `BUILD_DUMMY_WASM_BINARY` flag and it is only usable for \
+ built with `SKIP_WASM_BUILD` flag and it is only usable for \
production chains. Please rebuild with the flag disabled.")
}
@@ -111,10 +112,10 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
// and set impl_version to 0. If only runtime
// implementation changes and behavior does not, then leave spec_version as
// is and increment impl_version.
- spec_version: 260,
+ spec_version: 264,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
- transaction_version: 1,
+ transaction_version: 2,
};
/// Native version.
@@ -144,23 +145,48 @@ impl OnUnbalanced for DealWithFees {
}
}
-const AVERAGE_ON_INITIALIZE_WEIGHT: Perbill = Perbill::from_percent(10);
+/// We assume that ~10% of the block weight is consumed by `on_initalize` handlers.
+/// This is used to limit the maximal weight of a single extrinsic.
+const AVERAGE_ON_INITIALIZE_RATIO: Perbill = Perbill::from_percent(10);
+/// We allow `Normal` extrinsics to fill up the block up to 75%, the rest can be used
+/// by Operational extrinsics.
+const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75);
+/// We allow for 2 seconds of compute with a 6 second average block time.
+const MAXIMUM_BLOCK_WEIGHT: Weight = 2 * WEIGHT_PER_SECOND;
+
parameter_types! {
pub const BlockHashCount: BlockNumber = 2400;
- /// We allow for 2 seconds of compute with a 6 second average block time.
- pub const MaximumBlockWeight: Weight = 2 * WEIGHT_PER_SECOND;
- pub const AvailableBlockRatio: Perbill = Perbill::from_percent(75);
- /// Assume 10% of weight for average on_initialize calls.
- pub MaximumExtrinsicWeight: Weight = AvailableBlockRatio::get().saturating_sub(AVERAGE_ON_INITIALIZE_WEIGHT)
- * MaximumBlockWeight::get();
- pub const MaximumBlockLength: u32 = 5 * 1024 * 1024;
pub const Version: RuntimeVersion = VERSION;
-}
-
-const_assert!(AvailableBlockRatio::get().deconstruct() >= AVERAGE_ON_INITIALIZE_WEIGHT.deconstruct());
-
-impl frame_system::Trait for Runtime {
+ pub RuntimeBlockLength: BlockLength =
+ BlockLength::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO);
+ pub RuntimeBlockWeights: BlockWeights = BlockWeights::builder()
+ .base_block(BlockExecutionWeight::get())
+ .for_class(DispatchClass::all(), |weights| {
+ weights.base_extrinsic = ExtrinsicBaseWeight::get();
+ })
+ .for_class(DispatchClass::Normal, |weights| {
+ weights.max_total = Some(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT);
+ })
+ .for_class(DispatchClass::Operational, |weights| {
+ weights.max_total = Some(MAXIMUM_BLOCK_WEIGHT);
+ // Operational transactions have some extra reserved space, so that they
+ // are included even if block reached `MAXIMUM_BLOCK_WEIGHT`.
+ weights.reserved = Some(
+ MAXIMUM_BLOCK_WEIGHT - NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT
+ );
+ })
+ .avg_block_initialization(AVERAGE_ON_INITIALIZE_RATIO)
+ .build_or_panic();
+ pub const SS58Prefix: u8 = 42;
+}
+
+const_assert!(NORMAL_DISPATCH_RATIO.deconstruct() >= AVERAGE_ON_INITIALIZE_RATIO.deconstruct());
+
+impl frame_system::Config for Runtime {
type BaseCallFilter = ();
+ type BlockWeights = RuntimeBlockWeights;
+ type BlockLength = RuntimeBlockLength;
+ type DbWeight = RocksDbWeight;
type Origin = Origin;
type Call = Call;
type Index = Index;
@@ -172,22 +198,16 @@ impl frame_system::Trait for Runtime {
type Header = generic::Header;
type Event = Event;
type BlockHashCount = BlockHashCount;
- type MaximumBlockWeight = MaximumBlockWeight;
- type DbWeight = RocksDbWeight;
- type BlockExecutionWeight = BlockExecutionWeight;
- type ExtrinsicBaseWeight = ExtrinsicBaseWeight;
- type MaximumExtrinsicWeight = MaximumExtrinsicWeight;
- type MaximumBlockLength = MaximumBlockLength;
- type AvailableBlockRatio = AvailableBlockRatio;
type Version = Version;
type PalletInfo = PalletInfo;
type AccountData = pallet_balances::AccountData;
type OnNewAccount = ();
type OnKilledAccount = ();
type SystemWeightInfo = frame_system::weights::SubstrateWeight;
+ type SS58Prefix = SS58Prefix;
}
-impl pallet_utility::Trait for Runtime {
+impl pallet_utility::Config for Runtime {
type Event = Event;
type Call = Call;
type WeightInfo = pallet_utility::weights::SubstrateWeight;
@@ -201,7 +221,7 @@ parameter_types! {
pub const MaxSignatories: u16 = 100;
}
-impl pallet_multisig::Trait for Runtime {
+impl pallet_multisig::Config for Runtime {
type Event = Event;
type Call = Call;
type Currency = Balances;
@@ -264,7 +284,7 @@ impl InstanceFilter for ProxyType {
}
}
-impl pallet_proxy::Trait for Runtime {
+impl pallet_proxy::Config for Runtime {
type Event = Event;
type Call = Call;
type Currency = Balances;
@@ -280,11 +300,12 @@ impl pallet_proxy::Trait for Runtime {
}
parameter_types! {
- pub MaximumSchedulerWeight: Weight = Perbill::from_percent(80) * MaximumBlockWeight::get();
+ pub MaximumSchedulerWeight: Weight = Perbill::from_percent(80) *
+ RuntimeBlockWeights::get().max_block;
pub const MaxScheduledPerBlock: u32 = 50;
}
-impl pallet_scheduler::Trait for Runtime {
+impl pallet_scheduler::Config for Runtime {
type Event = Event;
type Origin = Origin;
type PalletsOrigin = OriginCaller;
@@ -298,9 +319,11 @@ impl pallet_scheduler::Trait for Runtime {
parameter_types! {
pub const EpochDuration: u64 = EPOCH_DURATION_IN_SLOTS;
pub const ExpectedBlockTime: Moment = MILLISECS_PER_BLOCK;
+ pub const ReportLongevity: u64 =
+ BondingDuration::get() as u64 * SessionsPerEra::get() as u64 * EpochDuration::get();
}
-impl pallet_babe::Trait for Runtime {
+impl pallet_babe::Config for Runtime {
type EpochDuration = EpochDuration;
type ExpectedBlockTime = ExpectedBlockTime;
type EpochChangeTrigger = pallet_babe::ExternalTrigger;
@@ -318,7 +341,7 @@ impl pallet_babe::Trait for Runtime {
)>>::IdentificationTuple;
type HandleEquivocation =
- pallet_babe::EquivocationHandler;
+ pallet_babe::EquivocationHandler;
type WeightInfo = ();
}
@@ -327,7 +350,7 @@ parameter_types! {
pub const IndexDeposit: Balance = 1 * DOLLARS;
}
-impl pallet_indices::Trait for Runtime {
+impl pallet_indices::Config for Runtime {
type AccountIndex = AccountIndex;
type Currency = Balances;
type Deposit = IndexDeposit;
@@ -342,7 +365,7 @@ parameter_types! {
pub const MaxLocks: u32 = 50;
}
-impl pallet_balances::Trait for Runtime {
+impl pallet_balances::Config for Runtime {
type MaxLocks = MaxLocks;
type Balance = Balance;
type DustRemoval = ();
@@ -359,7 +382,7 @@ parameter_types! {
pub MinimumMultiplier: Multiplier = Multiplier::saturating_from_rational(1, 1_000_000_000u128);
}
-impl pallet_transaction_payment::Trait for Runtime {
+impl pallet_transaction_payment::Config for Runtime {
type OnChargeTransaction = CurrencyAdapter;
type TransactionByteFee = TransactionByteFee;
type WeightToFee = IdentityFee;
@@ -371,7 +394,7 @@ parameter_types! {
pub const MinimumPeriod: Moment = SLOT_DURATION / 2;
}
-impl pallet_timestamp::Trait for Runtime {
+impl pallet_timestamp::Config for Runtime {
type Moment = Moment;
type OnTimestampSet = Babe;
type MinimumPeriod = MinimumPeriod;
@@ -382,7 +405,7 @@ parameter_types! {
pub const UncleGenerations: BlockNumber = 5;
}
-impl pallet_authorship::Trait for Runtime {
+impl pallet_authorship::Config for Runtime {
type FindAuthor = pallet_session::FindAccountFromAuthorIndex;
type UncleGenerations = UncleGenerations;
type FilterUncle = ();
@@ -402,9 +425,9 @@ parameter_types! {
pub const DisabledValidatorsThreshold: Perbill = Perbill::from_percent(17);
}
-impl pallet_session::Trait for Runtime {
+impl pallet_session::Config for Runtime {
type Event = Event;
- type ValidatorId = ::AccountId;
+ type ValidatorId = ::AccountId;
type ValidatorIdOf = pallet_staking::StashOf;
type ShouldEndSession = Babe;
type NextSessionRotation = Babe;
@@ -415,7 +438,7 @@ impl pallet_session::Trait for Runtime {
type WeightInfo = pallet_session::weights::SubstrateWeight;
}
-impl pallet_session::historical::Trait for Runtime {
+impl pallet_session::historical::Config for Runtime {
type FullIdentification = pallet_staking::Exposure;
type FullIdentificationOf = pallet_staking::ExposureOf;
}
@@ -441,12 +464,13 @@ parameter_types! {
pub const MaxIterations: u32 = 10;
// 0.05%. The higher the value, the more strict solution acceptance becomes.
pub MinSolutionScoreBump: Perbill = Perbill::from_rational_approximation(5u32, 10_000);
- pub OffchainSolutionWeightLimit: Weight = MaximumExtrinsicWeight::get()
- .saturating_sub(BlockExecutionWeight::get())
- .saturating_sub(ExtrinsicBaseWeight::get());
+ pub OffchainSolutionWeightLimit: Weight = RuntimeBlockWeights::get()
+ .get(DispatchClass::Normal)
+ .max_extrinsic.expect("Normal extrinsics have a weight limit configured; qed")
+ .saturating_sub(BlockExecutionWeight::get());
}
-impl pallet_staking::Trait for Runtime {
+impl pallet_staking::Config for Runtime {
type Currency = Balances;
type UnixTime = Timestamp;
type CurrencyToVote = U128CurrencyToVote;
@@ -492,7 +516,7 @@ parameter_types! {
pub const MaxProposals: u32 = 100;
}
-impl pallet_democracy::Trait for Runtime {
+impl pallet_democracy::Config for Runtime {
type Proposal = Call;
type Event = Event;
type Currency = Balances;
@@ -544,7 +568,7 @@ parameter_types! {
}
type CouncilCollective = pallet_collective::Instance1;
-impl pallet_collective::Trait for Runtime {
+impl pallet_collective::Config for Runtime {
type Origin = Origin;
type Proposal = Call;
type Event = Event;
@@ -557,7 +581,10 @@ impl pallet_collective::Trait for Runtime {
parameter_types! {
pub const CandidacyBond: Balance = 10 * DOLLARS;
- pub const VotingBond: Balance = 1 * DOLLARS;
+ // 1 storage item created, key size is 32 bytes, value size is 16+16.
+ pub const VotingBondBase: Balance = deposit(1, 64);
+ // additional data per vote is 32 bytes (account id).
+ pub const VotingBondFactor: Balance = deposit(0, 32);
pub const TermDuration: BlockNumber = 7 * DAYS;
pub const DesiredMembers: u32 = 13;
pub const DesiredRunnersUp: u32 = 7;
@@ -567,7 +594,7 @@ parameter_types! {
// Make sure that there are no more than `MaxMembers` members elected via elections-phragmen.
const_assert!(DesiredMembers::get() <= CouncilMaxMembers::get());
-impl pallet_elections_phragmen::Trait for Runtime {
+impl pallet_elections_phragmen::Config for Runtime {
type Event = Event;
type ModuleId = ElectionsPhragmenModuleId;
type Currency = Balances;
@@ -577,9 +604,9 @@ impl pallet_elections_phragmen::Trait for Runtime {
type InitializeMembers = Council;
type CurrencyToVote = U128CurrencyToVote;
type CandidacyBond = CandidacyBond;
- type VotingBond = VotingBond;
+ type VotingBondBase = VotingBondBase;
+ type VotingBondFactor = VotingBondFactor;
type LoserCandidate = ();
- type BadReport = ();
type KickedMember = ();
type DesiredMembers = DesiredMembers;
type DesiredRunnersUp = DesiredRunnersUp;
@@ -594,7 +621,7 @@ parameter_types! {
}
type TechnicalCollective = pallet_collective::Instance2;
-impl pallet_collective::Trait for Runtime {
+impl pallet_collective::Config for Runtime {
type Origin = Origin;
type Proposal = Call;
type Event = Event;
@@ -610,7 +637,7 @@ type EnsureRootOrHalfCouncil = EnsureOneOf<
EnsureRoot,
pallet_collective::EnsureProportionMoreThan<_1, _2, AccountId, CouncilCollective>
>;
-impl pallet_membership::Trait for Runtime {
+impl pallet_membership::Config for Runtime {
type Event = Event;
type AddOrigin = EnsureRootOrHalfCouncil;
type RemoveOrigin = EnsureRootOrHalfCouncil;
@@ -639,7 +666,7 @@ parameter_types! {
pub const BountyValueMinimum: Balance = 5 * DOLLARS;
}
-impl pallet_treasury::Trait for Runtime {
+impl pallet_treasury::Config for Runtime {
type ModuleId = TreasuryModuleId;
type Currency = Balances;
type ApproveOrigin = EnsureOneOf<
@@ -652,55 +679,87 @@ impl pallet_treasury::Trait for Runtime {
EnsureRoot,
pallet_collective::EnsureProportionMoreThan<_1, _2, AccountId, CouncilCollective>
>;
- type Tippers = Elections;
- type TipCountdown = TipCountdown;
- type TipFindersFee = TipFindersFee;
- type TipReportDepositBase = TipReportDepositBase;
- type DataDepositPerByte = DataDepositPerByte;
type Event = Event;
type OnSlash = ();
type ProposalBond = ProposalBond;
type ProposalBondMinimum = ProposalBondMinimum;
type SpendPeriod = SpendPeriod;
type Burn = Burn;
+ type BurnDestination = ();
+ type SpendFunds = Bounties;
+ type WeightInfo = pallet_treasury::weights::SubstrateWeight;
+}
+
+impl pallet_bounties::Config for Runtime {
+ type Event = Event;
type BountyDepositBase = BountyDepositBase;
type BountyDepositPayoutDelay = BountyDepositPayoutDelay;
type BountyUpdatePeriod = BountyUpdatePeriod;
type BountyCuratorDeposit = BountyCuratorDeposit;
type BountyValueMinimum = BountyValueMinimum;
+ type DataDepositPerByte = DataDepositPerByte;
type MaximumReasonLength = MaximumReasonLength;
- type BurnDestination = ();
- type WeightInfo = pallet_treasury::weights::SubstrateWeight;
+ type WeightInfo = pallet_bounties::weights::SubstrateWeight;
}
-parameter_types! {
- pub const TombstoneDeposit: Balance = 16 * MILLICENTS;
- pub const RentByteFee: Balance = 4 * MILLICENTS;
- pub const RentDepositOffset: Balance = 1000 * MILLICENTS;
- pub const SurchargeReward: Balance = 150 * MILLICENTS;
+impl pallet_tips::Config for Runtime {
+ type Event = Event;
+ type DataDepositPerByte = DataDepositPerByte;
+ type MaximumReasonLength = MaximumReasonLength;
+ type Tippers = Elections;
+ type TipCountdown = TipCountdown;
+ type TipFindersFee = TipFindersFee;
+ type TipReportDepositBase = TipReportDepositBase;
+ type WeightInfo = pallet_tips::weights::SubstrateWeight;
}
-impl pallet_contracts::Trait for Runtime {
+parameter_types! {
+ pub const TombstoneDeposit: Balance = deposit(
+ 1,
+ sp_std::mem::size_of::>() as u32
+ );
+ pub const DepositPerContract: Balance = TombstoneDeposit::get();
+ pub const DepositPerStorageByte: Balance = deposit(0, 1);
+ pub const DepositPerStorageItem: Balance = deposit(1, 0);
+ pub RentFraction: Perbill = Perbill::from_rational_approximation(1u32, 30 * DAYS);
+ pub const SurchargeReward: Balance = 150 * MILLICENTS;
+ pub const SignedClaimHandicap: u32 = 2;
+ pub const MaxDepth: u32 = 32;
+ pub const MaxValueSize: u32 = 16 * 1024;
+ // The lazy deletion runs inside on_initialize.
+ pub DeletionWeightLimit: Weight = AVERAGE_ON_INITIALIZE_RATIO *
+ RuntimeBlockWeights::get().max_block;
+ // The weight needed for decoding the queue should be less or equal than a fifth
+ // of the overall weight dedicated to the lazy deletion.
+ pub DeletionQueueDepth: u32 = ((DeletionWeightLimit::get() / (
+ ::WeightInfo::on_initialize_per_queue_item(1) -
+ ::WeightInfo::on_initialize_per_queue_item(0)
+ )) / 5) as u32;
+}
+
+impl pallet_contracts::Config for Runtime {
type Time = Timestamp;
type Randomness = RandomnessCollectiveFlip;
type Currency = Balances;
type Event = Event;
- type DetermineContractAddress = pallet_contracts::SimpleAddressDeterminer;
- type TrieIdGenerator = pallet_contracts::TrieIdFromParentCounter;
type RentPayment = ();
- type SignedClaimHandicap = pallet_contracts::DefaultSignedClaimHandicap;
+ type SignedClaimHandicap = SignedClaimHandicap;
type TombstoneDeposit = TombstoneDeposit;
- type StorageSizeOffset = pallet_contracts::DefaultStorageSizeOffset;
- type RentByteFee = RentByteFee;
- type RentDepositOffset = RentDepositOffset;
+ type DepositPerContract = DepositPerContract;
+ type DepositPerStorageByte = DepositPerStorageByte;
+ type DepositPerStorageItem = DepositPerStorageItem;
+ type RentFraction = RentFraction;
type SurchargeReward = SurchargeReward;
- type MaxDepth = pallet_contracts::DefaultMaxDepth;
- type MaxValueSize = pallet_contracts::DefaultMaxValueSize;
+ type MaxDepth = MaxDepth;
+ type MaxValueSize = MaxValueSize;
type WeightPrice = pallet_transaction_payment::Module;
- type WeightInfo = weights::pallet_contracts::WeightInfo;
+ type WeightInfo = pallet_contracts::weights::SubstrateWeight;
+ type ChainExtension = ();
+ type DeletionQueueDepth = DeletionQueueDepth;
+ type DeletionWeightLimit = DeletionWeightLimit;
}
-impl pallet_sudo::Trait for Runtime {
+impl pallet_sudo::Config for Runtime {
type Event = Event;
type Call = Call;
}
@@ -770,9 +829,10 @@ impl frame_system::offchain::SendTransactionTypes for Runtime where
type OverarchingCall = Call;
}
-impl pallet_im_online::Trait for Runtime {
+impl pallet_im_online::Config for Runtime {
type AuthorityId = ImOnlineId;
type Event = Event;
+ type ValidatorSet = Historical;
type SessionDuration = SessionDuration;
type ReportUnresponsiveness = Offences;
type UnsignedPriority = ImOnlineUnsignedPriority;
@@ -780,19 +840,20 @@ impl pallet_im_online::Trait for Runtime {
}
parameter_types! {
- pub OffencesWeightSoftLimit: Weight = Perbill::from_percent(60) * MaximumBlockWeight::get();
+ pub OffencesWeightSoftLimit: Weight = Perbill::from_percent(60) *
+ RuntimeBlockWeights::get().max_block;
}
-impl pallet_offences::Trait for Runtime {
+impl pallet_offences::Config for Runtime {
type Event = Event;
type IdentificationTuple = pallet_session::historical::IdentificationTuple;
type OnOffenceHandler = Staking;
type WeightSoftLimit = OffencesWeightSoftLimit;
}
-impl pallet_authority_discovery::Trait for Runtime {}
+impl pallet_authority_discovery::Config for Runtime {}
-impl pallet_grandpa::Trait for Runtime {
+impl pallet_grandpa::Config for Runtime {
type Event = Event;
type Call = Call;
@@ -807,7 +868,7 @@ impl pallet_grandpa::Trait for Runtime {
)>>::IdentificationTuple;
type HandleEquivocation =
- pallet_grandpa::EquivocationHandler;
+ pallet_grandpa::EquivocationHandler;
type WeightInfo = ();
}
@@ -821,7 +882,7 @@ parameter_types! {
pub const MaxRegistrars: u32 = 20;
}
-impl pallet_identity::Trait for Runtime {
+impl pallet_identity::Config for Runtime {
type Event = Event;
type Currency = Balances;
type BasicDeposit = BasicDeposit;
@@ -843,7 +904,7 @@ parameter_types! {
pub const RecoveryDeposit: Balance = 5 * DOLLARS;
}
-impl pallet_recovery::Trait for Runtime {
+impl pallet_recovery::Config for Runtime {
type Event = Event;
type Call = Call;
type Currency = Balances;
@@ -864,7 +925,7 @@ parameter_types! {
pub const SocietyModuleId: ModuleId = ModuleId(*b"py/socie");
}
-impl pallet_society::Trait for Runtime {
+impl pallet_society::Config for Runtime {
type Event = Event;
type ModuleId = SocietyModuleId;
type Currency = Balances;
@@ -885,7 +946,7 @@ parameter_types! {
pub const MinVestedTransfer: Balance = 100 * DOLLARS;
}
-impl pallet_vesting::Trait for Runtime {
+impl pallet_vesting::Config for Runtime {
type Event = Event;
type Currency = Balances;
type BlockNumberToBalance = ConvertInto;
@@ -893,6 +954,56 @@ impl pallet_vesting::Trait for Runtime {
type WeightInfo = pallet_vesting::weights::SubstrateWeight;
}
+impl pallet_mmr::Config for Runtime {
+ const INDEXING_PREFIX: &'static [u8] = b"mmr";
+ type Hashing = ::Hashing;
+ type Hash = ::Hash;
+ type LeafData = frame_system::Module;
+ type OnNewRoot = ();
+ type WeightInfo = ();
+}
+
+parameter_types! {
+ pub const LotteryModuleId: ModuleId = ModuleId(*b"py/lotto");
+ pub const MaxCalls: usize = 10;
+ pub const MaxGenerateRandom: u32 = 10;
+}
+
+impl pallet_lottery::Config for Runtime {
+ type ModuleId = LotteryModuleId;
+ type Call = Call;
+ type Event = Event;
+ type Currency = Balances;
+ type Randomness = RandomnessCollectiveFlip;
+ type ManagerOrigin = EnsureRoot;
+ type MaxCalls = MaxCalls;
+ type ValidateCall = Lottery;
+ type MaxGenerateRandom = MaxGenerateRandom;
+ type WeightInfo = pallet_lottery::weights::SubstrateWeight;
+}
+
+parameter_types! {
+ pub const AssetDepositBase: Balance = 100 * DOLLARS;
+ pub const AssetDepositPerZombie: Balance = 1 * DOLLARS;
+ pub const StringLimit: u32 = 50;
+ pub const MetadataDepositBase: Balance = 10 * DOLLARS;
+ pub const MetadataDepositPerByte: Balance = 1 * DOLLARS;
+}
+
+impl pallet_assets::Config for Runtime {
+ type Event = Event;
+ type Balance = u64;
+ type AssetId = u32;
+ type Currency = Balances;
+ type ForceOrigin = EnsureRoot;
+ type AssetDepositBase = AssetDepositBase;
+ type AssetDepositPerZombie = AssetDepositPerZombie;
+ type StringLimit = StringLimit;
+ type MetadataDepositBase = MetadataDepositBase;
+ type MetadataDepositPerByte = MetadataDepositPerByte;
+ type WeightInfo = pallet_assets::weights::SubstrateWeight;
+}
+
construct_runtime!(
pub enum Runtime where
Block = Block,
@@ -930,11 +1041,16 @@ construct_runtime!(
Scheduler: pallet_scheduler::{Module, Call, Storage, Event},
Proxy: pallet_proxy::{Module, Call, Storage, Event},
Multisig: pallet_multisig::{Module, Call, Storage, Event},
+ Bounties: pallet_bounties::{Module, Call, Storage, Event},
+ Tips: pallet_tips::{Module, Call, Storage, Event},
+ Assets: pallet_assets::{Module, Call, Storage, Event},
+ Mmr: pallet_mmr::{Module, Storage},
+ Lottery: pallet_lottery::{Module, Call, Storage, Event},
}
);
/// The address format for describing accounts.
-pub type Address = ::Source;
+pub type Address = sp_runtime::MultiAddress;
/// Block header type as expected by this runtime.
pub type Header = generic::Header;
/// Block type as expected by this runtime.
@@ -966,6 +1082,20 @@ pub type CheckedExtrinsic = generic::CheckedExtrinsic, Runtime, AllModules>;
+/// MMR helper types.
+mod mmr {
+ use super::Runtime;
+ pub use pallet_mmr::primitives::*;
+
+ pub type Leaf = <
+ ::LeafData
+ as
+ LeafDataProvider
+ >::LeafData;
+ pub type Hash = ::Hash;
+ pub type Hashing = ::Hashing;
+}
+
impl_runtime_apis! {
impl sp_api::Core for Runtime {
fn version() -> RuntimeVersion {
@@ -1073,12 +1203,20 @@ impl_runtime_apis! {
}
}
- fn current_epoch_start() -> sp_consensus_babe::SlotNumber {
+ fn current_epoch_start() -> sp_consensus_babe::Slot {
Babe::current_epoch_start()
}
+ fn current_epoch() -> sp_consensus_babe::Epoch {
+ Babe::current_epoch()
+ }
+
+ fn next_epoch() -> sp_consensus_babe::Epoch {
+ Babe::next_epoch()
+ }
+
fn generate_key_ownership_proof(
- _slot_number: sp_consensus_babe::SlotNumber,
+ _slot: sp_consensus_babe::Slot,
authority_id: sp_consensus_babe::AuthorityId,
) -> Option {
use codec::Encode;
@@ -1147,6 +1285,32 @@ impl_runtime_apis! {
fn query_info(uxt: ::Extrinsic, len: u32) -> RuntimeDispatchInfo {
TransactionPayment::query_info(uxt, len)
}
+ fn query_fee_details(uxt: ::Extrinsic, len: u32) -> FeeDetails {
+ TransactionPayment::query_fee_details(uxt, len)
+ }
+ }
+
+ impl pallet_mmr::primitives::MmrApi<
+ Block,
+ mmr::Leaf,
+ mmr::Hash,
+ > for Runtime {
+ fn generate_proof(leaf_index: u64) -> Result<(mmr::Leaf, mmr::Proof), mmr::Error> {
+ Mmr::generate_proof(leaf_index)
+ }
+
+ fn verify_proof(leaf: mmr::Leaf, proof: mmr::Proof) -> Result<(), mmr::Error> {
+ Mmr::verify_leaf(leaf, proof)
+ }
+
+ fn verify_proof_stateless(
+ root: mmr::Hash,
+ leaf: Vec,
+ proof: mmr::Proof
+ ) -> Result<(), mmr::Error> {
+ let node = mmr::DataOrHash::Data(mmr::OpaqueLeaf(leaf));
+ pallet_mmr::verify_leaf_proof::(root, node, proof)
+ }
}
impl sp_session::SessionKeys for Runtime {
@@ -1174,9 +1338,9 @@ impl_runtime_apis! {
use pallet_offences_benchmarking::Module as OffencesBench;
use frame_system_benchmarking::Module as SystemBench;
- impl pallet_session_benchmarking::Trait for Runtime {}
- impl pallet_offences_benchmarking::Trait for Runtime {}
- impl frame_system_benchmarking::Trait for Runtime {}
+ impl pallet_session_benchmarking::Config for Runtime {}
+ impl pallet_offences_benchmarking::Config for Runtime {}
+ impl frame_system_benchmarking::Config for Runtime {}
let whitelist: Vec = vec![
// Block Number
@@ -1196,8 +1360,10 @@ impl_runtime_apis! {
let mut batches = Vec::::new();
let params = (&config, &whitelist);
+ add_benchmark!(params, batches, pallet_assets, Assets);
add_benchmark!(params, batches, pallet_babe, Babe);
add_benchmark!(params, batches, pallet_balances, Balances);
+ add_benchmark!(params, batches, pallet_bounties, Bounties);
add_benchmark!(params, batches, pallet_collective, Council);
add_benchmark!(params, batches, pallet_contracts, Contracts);
add_benchmark!(params, batches, pallet_democracy, Democracy);
@@ -1206,6 +1372,8 @@ impl_runtime_apis! {
add_benchmark!(params, batches, pallet_identity, Identity);
add_benchmark!(params, batches, pallet_im_online, ImOnline);
add_benchmark!(params, batches, pallet_indices, Indices);
+ add_benchmark!(params, batches, pallet_lottery, Lottery);
+ add_benchmark!(params, batches, pallet_mmr, Mmr);
add_benchmark!(params, batches, pallet_multisig, Multisig);
add_benchmark!(params, batches, pallet_offences, OffencesBench::);
add_benchmark!(params, batches, pallet_proxy, Proxy);
@@ -1214,6 +1382,7 @@ impl_runtime_apis! {
add_benchmark!(params, batches, pallet_staking, Staking);
add_benchmark!(params, batches, frame_system, SystemBench::);
add_benchmark!(params, batches, pallet_timestamp, Timestamp);
+ add_benchmark!(params, batches, pallet_tips, Tips);
add_benchmark!(params, batches, pallet_treasury, Treasury);
add_benchmark!(params, batches, pallet_utility, Utility);
add_benchmark!(params, batches, pallet_vesting, Vesting);
diff --git a/bin/node/runtime/src/weights/pallet_contracts.rs b/bin/node/runtime/src/weights/pallet_contracts.rs
deleted file mode 100644
index 8cd97b4a72191..0000000000000
--- a/bin/node/runtime/src/weights/pallet_contracts.rs
+++ /dev/null
@@ -1,294 +0,0 @@
-// This file is part of Substrate.
-
-// Copyright (C) 2020 Parity Technologies (UK) Ltd.
-// SPDX-License-Identifier: Apache-2.0
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-//! Weights for pallet_contracts
-//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 2.0.0
-//! DATE: 2020-10-06, STEPS: [50], REPEAT: 20, LOW RANGE: [], HIGH RANGE: []
-
-#![allow(unused_parens)]
-#![allow(unused_imports)]
-
-use frame_support::{traits::Get, weights::Weight};
-use sp_std::marker::PhantomData;
-
-pub struct WeightInfo(PhantomData);
-impl pallet_contracts::WeightInfo for WeightInfo {
- fn update_schedule() -> Weight {
- (33_207_000 as Weight)
- .saturating_add(T::DbWeight::get().reads(1 as Weight))
- .saturating_add(T::DbWeight::get().writes(1 as Weight))
- }
- fn put_code(n: u32, ) -> Weight {
- (0 as Weight)
- .saturating_add((144_833_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(1 as Weight))
- .saturating_add(T::DbWeight::get().writes(2 as Weight))
- }
- fn instantiate(n: u32, ) -> Weight {
- (223_974_000 as Weight)
- .saturating_add((1_007_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(6 as Weight))
- .saturating_add(T::DbWeight::get().writes(3 as Weight))
- }
- fn call() -> Weight {
- (210_638_000 as Weight)
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- .saturating_add(T::DbWeight::get().writes(2 as Weight))
- }
- fn claim_surcharge() -> Weight {
- (508_079_000 as Weight)
- .saturating_add(T::DbWeight::get().reads(3 as Weight))
- .saturating_add(T::DbWeight::get().writes(2 as Weight))
- }
- fn seal_caller(r: u32, ) -> Weight {
- (143_336_000 as Weight)
- .saturating_add((397_788_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_address(r: u32, ) -> Weight {
- (147_296_000 as Weight)
- .saturating_add((396_962_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_gas_left(r: u32, ) -> Weight {
- (141_677_000 as Weight)
- .saturating_add((393_308_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_balance(r: u32, ) -> Weight {
- (157_556_000 as Weight)
- .saturating_add((879_861_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- }
- fn seal_value_transferred(r: u32, ) -> Weight {
- (148_867_000 as Weight)
- .saturating_add((391_678_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_minimum_balance(r: u32, ) -> Weight {
- (147_252_000 as Weight)
- .saturating_add((393_977_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_tombstone_deposit(r: u32, ) -> Weight {
- (144_208_000 as Weight)
- .saturating_add((394_625_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_rent_allowance(r: u32, ) -> Weight {
- (135_320_000 as Weight)
- .saturating_add((925_541_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_block_number(r: u32, ) -> Weight {
- (145_849_000 as Weight)
- .saturating_add((390_065_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_now(r: u32, ) -> Weight {
- (146_363_000 as Weight)
- .saturating_add((391_772_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_weight_to_fee(r: u32, ) -> Weight {
- (129_872_000 as Weight)
- .saturating_add((670_744_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- }
- fn seal_gas(r: u32, ) -> Weight {
- (130_985_000 as Weight)
- .saturating_add((198_427_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_input(r: u32, ) -> Weight {
- (138_647_000 as Weight)
- .saturating_add((8_363_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_input_per_kb(n: u32, ) -> Weight {
- (149_418_000 as Weight)
- .saturating_add((272_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_return(r: u32, ) -> Weight {
- (129_116_000 as Weight)
- .saturating_add((5_745_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_return_per_kb(n: u32, ) -> Weight {
- (139_601_000 as Weight)
- .saturating_add((680_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_terminate(r: u32, ) -> Weight {
- (138_548_000 as Weight)
- .saturating_add((355_473_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(r as Weight)))
- .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(r as Weight)))
- }
- fn seal_restore_to(r: u32, ) -> Weight {
- (239_880_000 as Weight)
- .saturating_add((138_305_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(r as Weight)))
- .saturating_add(T::DbWeight::get().writes((4 as Weight).saturating_mul(r as Weight)))
- }
- fn seal_restore_to_per_delta(d: u32, ) -> Weight {
- (40_572_000 as Weight)
- .saturating_add((3_748_632_000 as Weight).saturating_mul(d as Weight))
- .saturating_add(T::DbWeight::get().reads(7 as Weight))
- .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(d as Weight)))
- .saturating_add(T::DbWeight::get().writes(5 as Weight))
- .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(d as Weight)))
- }
- fn seal_random(r: u32, ) -> Weight {
- (148_156_000 as Weight)
- .saturating_add((1_036_452_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- }
- fn seal_deposit_event(r: u32, ) -> Weight {
- (176_039_000 as Weight)
- .saturating_add((1_497_705_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_deposit_event_per_topic_and_kb(t: u32, n: u32, ) -> Weight {
- (1_923_547_000 as Weight)
- .saturating_add((783_354_000 as Weight).saturating_mul(t as Weight))
- .saturating_add((240_600_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(t as Weight)))
- .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(t as Weight)))
- }
- fn seal_set_rent_allowance(r: u32, ) -> Weight {
- (151_095_000 as Weight)
- .saturating_add((1_104_696_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- .saturating_add(T::DbWeight::get().writes(1 as Weight))
- }
- fn seal_set_storage(r: u32, ) -> Weight {
- (0 as Weight)
- .saturating_add((14_975_467_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight)))
- .saturating_add(T::DbWeight::get().writes(1 as Weight))
- .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(r as Weight)))
- }
- fn seal_set_storage_per_kb(n: u32, ) -> Weight {
- (2_465_724_000 as Weight)
- .saturating_add((203_125_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- .saturating_add(T::DbWeight::get().writes(2 as Weight))
- }
- fn seal_clear_storage(r: u32, ) -> Weight {
- (0 as Weight)
- .saturating_add((5_254_595_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight)))
- .saturating_add(T::DbWeight::get().writes(1 as Weight))
- .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(r as Weight)))
- }
- fn seal_get_storage(r: u32, ) -> Weight {
- (60_303_000 as Weight)
- .saturating_add((1_135_486_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight)))
- }
- fn seal_get_storage_per_kb(n: u32, ) -> Weight {
- (931_900_000 as Weight)
- .saturating_add((144_572_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- }
- fn seal_transfer(r: u32, ) -> Weight {
- (50_722_000 as Weight)
- .saturating_add((6_701_164_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight)))
- .saturating_add(T::DbWeight::get().writes(1 as Weight))
- .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(r as Weight)))
- }
- fn seal_call(r: u32, ) -> Weight {
- (0 as Weight)
- .saturating_add((10_589_747_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(5 as Weight))
- .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight)))
- }
- fn seal_call_per_transfer_input_output_kb(t: u32, i: u32, o: u32, ) -> Weight {
- (11_223_388_000 as Weight)
- .saturating_add((4_965_182_000 as Weight).saturating_mul(t as Weight))
- .saturating_add((50_603_000 as Weight).saturating_mul(i as Weight))
- .saturating_add((72_972_000 as Weight).saturating_mul(o as Weight))
- .saturating_add(T::DbWeight::get().reads(105 as Weight))
- .saturating_add(T::DbWeight::get().reads((101 as Weight).saturating_mul(t as Weight)))
- .saturating_add(T::DbWeight::get().writes((101 as Weight).saturating_mul(t as Weight)))
- }
- fn seal_instantiate(r: u32, ) -> Weight {
- (0 as Weight)
- .saturating_add((22_933_938_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(6 as Weight))
- .saturating_add(T::DbWeight::get().reads((300 as Weight).saturating_mul(r as Weight)))
- .saturating_add(T::DbWeight::get().writes(2 as Weight))
- .saturating_add(T::DbWeight::get().writes((200 as Weight).saturating_mul(r as Weight)))
- }
- fn seal_instantiate_per_input_output_kb(i: u32, o: u32, ) -> Weight {
- (20_986_307_000 as Weight)
- .saturating_add((152_611_000 as Weight).saturating_mul(i as Weight))
- .saturating_add((73_457_000 as Weight).saturating_mul(o as Weight))
- .saturating_add(T::DbWeight::get().reads(207 as Weight))
- .saturating_add(T::DbWeight::get().writes(202 as Weight))
- }
- fn seal_hash_sha2_256(r: u32, ) -> Weight {
- (145_988_000 as Weight)
- .saturating_add((343_540_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_hash_sha2_256_per_kb(n: u32, ) -> Weight {
- (719_758_000 as Weight)
- .saturating_add((420_306_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_hash_keccak_256(r: u32, ) -> Weight {
- (116_261_000 as Weight)
- .saturating_add((360_601_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_hash_keccak_256_per_kb(n: u32, ) -> Weight {
- (583_726_000 as Weight)
- .saturating_add((333_091_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_hash_blake2_256(r: u32, ) -> Weight {
- (144_609_000 as Weight)
- .saturating_add((332_388_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_hash_blake2_256_per_kb(n: u32, ) -> Weight {
- (612_987_000 as Weight)
- .saturating_add((150_030_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_hash_blake2_128(r: u32, ) -> Weight {
- (142_085_000 as Weight)
- .saturating_add((329_426_000 as Weight).saturating_mul(r as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
- fn seal_hash_blake2_128_per_kb(n: u32, ) -> Weight {
- (632_517_000 as Weight)
- .saturating_add((149_974_000 as Weight).saturating_mul(n as Weight))
- .saturating_add(T::DbWeight::get().reads(4 as Weight))
- }
-}
diff --git a/bin/node/testing/Cargo.toml b/bin/node/testing/Cargo.toml
index bc1f07645eed9..95bc8abef6fc9 100644
--- a/bin/node/testing/Cargo.toml
+++ b/bin/node/testing/Cargo.toml
@@ -13,38 +13,38 @@ publish = true
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
-pallet-balances = { version = "2.0.0", path = "../../../frame/balances" }
-sc-service = { version = "0.8.0", features = ["test-helpers", "db"], path = "../../../client/service" }
-sc-client-db = { version = "0.8.0", path = "../../../client/db/", features = ["kvdb-rocksdb", "parity-db"] }
-sc-client-api = { version = "2.0.0", path = "../../../client/api/" }
-codec = { package = "parity-scale-codec", version = "1.3.4" }
+pallet-balances = { version = "3.0.0", path = "../../../frame/balances" }
+sc-service = { version = "0.9.0", features = ["test-helpers", "db"], path = "../../../client/service" }
+sc-client-db = { version = "0.9.0", path = "../../../client/db/", features = ["kvdb-rocksdb", "parity-db"] }
+sc-client-api = { version = "3.0.0", path = "../../../client/api/" }
+codec = { package = "parity-scale-codec", version = "2.0.0" }
pallet-contracts = { version = "2.0.0", path = "../../../frame/contracts" }
-pallet-grandpa = { version = "2.0.0", path = "../../../frame/grandpa" }
-pallet-indices = { version = "2.0.0", path = "../../../frame/indices" }
-sp-keyring = { version = "2.0.0", path = "../../../primitives/keyring" }
+pallet-grandpa = { version = "3.0.0", path = "../../../frame/grandpa" }
+pallet-indices = { version = "3.0.0", path = "../../../frame/indices" }
+sp-keyring = { version = "3.0.0", path = "../../../primitives/keyring" }
node-executor = { version = "2.0.0", path = "../executor" }
node-primitives = { version = "2.0.0", path = "../primitives" }
node-runtime = { version = "2.0.0", path = "../runtime" }
-sp-core = { version = "2.0.0", path = "../../../primitives/core" }
-sp-io = { version = "2.0.0", path = "../../../primitives/io" }
-frame-support = { version = "2.0.0", path = "../../../frame/support" }
-pallet-session = { version = "2.0.0", path = "../../../frame/session" }
-pallet-society = { version = "2.0.0", path = "../../../frame/society" }
-sp-runtime = { version = "2.0.0", path = "../../../primitives/runtime" }
-pallet-staking = { version = "2.0.0", path = "../../../frame/staking" }
-sc-executor = { version = "0.8.0", path = "../../../client/executor", features = ["wasmtime"] }
-sp-consensus = { version = "0.8.0", path = "../../../primitives/consensus/common" }
-frame-system = { version = "2.0.0", path = "../../../frame/system" }
+sp-core = { version = "3.0.0", path = "../../../primitives/core" }
+sp-io = { version = "3.0.0", path = "../../../primitives/io" }
+frame-support = { version = "3.0.0", path = "../../../frame/support" }
+pallet-session = { version = "3.0.0", path = "../../../frame/session" }
+pallet-society = { version = "3.0.0", path = "../../../frame/society" }
+sp-runtime = { version = "3.0.0", path = "../../../primitives/runtime" }
+pallet-staking = { version = "3.0.0", path = "../../../frame/staking" }
+sc-executor = { version = "0.9.0", path = "../../../client/executor", features = ["wasmtime"] }
+sp-consensus = { version = "0.9.0", path = "../../../primitives/consensus/common" }
+frame-system = { version = "3.0.0", path = "../../../frame/system" }
substrate-test-client = { version = "2.0.0", path = "../../../test-utils/client" }
-pallet-timestamp = { version = "2.0.0", path = "../../../frame/timestamp" }
-pallet-transaction-payment = { version = "2.0.0", path = "../../../frame/transaction-payment" }
-pallet-treasury = { version = "2.0.0", path = "../../../frame/treasury" }
-sp-api = { version = "2.0.0", path = "../../../primitives/api" }
-sp-timestamp = { version = "2.0.0", default-features = false, path = "../../../primitives/timestamp" }
-sp-block-builder = { version = "2.0.0", path = "../../../primitives/block-builder" }
-sc-block-builder = { version = "0.8.0", path = "../../../client/block-builder" }
-sp-inherents = { version = "2.0.0", path = "../../../primitives/inherents" }
-sp-blockchain = { version = "2.0.0", path = "../../../primitives/blockchain" }
+pallet-timestamp = { version = "3.0.0", path = "../../../frame/timestamp" }
+pallet-transaction-payment = { version = "3.0.0", path = "../../../frame/transaction-payment" }
+pallet-treasury = { version = "3.0.0", path = "../../../frame/treasury" }
+sp-api = { version = "3.0.0", path = "../../../primitives/api" }
+sp-timestamp = { version = "3.0.0", default-features = false, path = "../../../primitives/timestamp" }
+sp-block-builder = { version = "3.0.0", path = "../../../primitives/block-builder" }
+sc-block-builder = { version = "0.9.0", path = "../../../client/block-builder" }
+sp-inherents = { version = "3.0.0", path = "../../../primitives/inherents" }
+sp-blockchain = { version = "3.0.0", path = "../../../primitives/blockchain" }
log = "0.4.8"
tempfile = "3.1.0"
fs_extra = "1"
@@ -52,4 +52,4 @@ futures = "0.3.1"
[dev-dependencies]
criterion = "0.3.0"
-sc-cli = { version = "0.8.0", path = "../../../client/cli" }
+sc-cli = { version = "0.9.0", path = "../../../client/cli" }
diff --git a/bin/node/testing/src/bench.rs b/bin/node/testing/src/bench.rs
index 153a52375c2a9..a6f65b86a0e27 100644
--- a/bin/node/testing/src/bench.rs
+++ b/bin/node/testing/src/bench.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -172,7 +172,7 @@ impl Clone for BenchDb {
.map(|f_result|
f_result.expect("failed to read file in seed db")
.path()
- ).collect();
+ ).collect::>();
fs_extra::copy_items(
&seed_db_files,
dir.path(),
@@ -317,7 +317,7 @@ impl<'a> Iterator for BlockContentIterator<'a> {
BlockType::RandomTransfersKeepAlive => {
Call::Balances(
BalancesCall::transfer_keep_alive(
- pallet_indices::address::Address::Id(receiver),
+ sp_runtime::MultiAddress::Id(receiver),
node_runtime::ExistentialDeposit::get() + 1,
)
)
@@ -325,7 +325,7 @@ impl<'a> Iterator for BlockContentIterator<'a> {
BlockType::RandomTransfersReaping => {
Call::Balances(
BalancesCall::transfer(
- pallet_indices::address::Address::Id(receiver),
+ sp_runtime::MultiAddress::Id(receiver),
// Transfer so that ending balance would be 1 less than existential deposit
// so that we kill the sender account.
100*DOLLARS - (node_runtime::ExistentialDeposit::get() - 1),
@@ -410,8 +410,10 @@ impl BenchDb {
let db_config = sc_client_db::DatabaseSettings {
state_cache_size: 16*1024*1024,
state_cache_child_ratio: Some((0, 100)),
- pruning: PruningMode::ArchiveAll,
+ state_pruning: PruningMode::ArchiveAll,
source: database_type.into_settings(dir.into()),
+ keep_blocks: sc_client_db::KeepBlocks::All,
+ transaction_storage: sc_client_db::TransactionStorageMode::BlockBody,
};
let task_executor = TaskExecutor::new();
@@ -591,7 +593,7 @@ impl BenchKeyring {
}
}).into();
UncheckedExtrinsic {
- signature: Some((pallet_indices::address::Address::Id(signed), signature, extra)),
+ signature: Some((sp_runtime::MultiAddress::Id(signed), signature, extra)),
function: payload.0,
}
}
@@ -695,7 +697,6 @@ impl BenchContext {
clear_justification_requests: false,
needs_justification: false,
bad_justification: false,
- needs_finality_proof: false,
is_new_best: true,
}
)
diff --git a/bin/node/testing/src/client.rs b/bin/node/testing/src/client.rs
index f44747b26b7a6..c4ace4ced9b42 100644
--- a/bin/node/testing/src/client.rs
+++ b/bin/node/testing/src/client.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/testing/src/genesis.rs b/bin/node/testing/src/genesis.rs
index 6fa178ba4bcdd..75d0d18e6ef81 100644
--- a/bin/node/testing/src/genesis.rs
+++ b/bin/node/testing/src/genesis.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/node/testing/src/keyring.rs b/bin/node/testing/src/keyring.rs
index 3413748563633..da61040206ea4 100644
--- a/bin/node/testing/src/keyring.rs
+++ b/bin/node/testing/src/keyring.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -94,7 +94,7 @@ pub fn sign(xt: CheckedExtrinsic, spec_version: u32, tx_version: u32, genesis_ha
}
}).into();
UncheckedExtrinsic {
- signature: Some((pallet_indices::address::Address::Id(signed), signature, extra)),
+ signature: Some((sp_runtime::MultiAddress::Id(signed), signature, extra)),
function: payload.0,
}
}
diff --git a/bin/node/testing/src/lib.rs b/bin/node/testing/src/lib.rs
index d682347e40019..c5792bccee80d 100644
--- a/bin/node/testing/src/lib.rs
+++ b/bin/node/testing/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/utils/chain-spec-builder/Cargo.toml b/bin/utils/chain-spec-builder/Cargo.toml
index a57dadd26bda8..3c60d654db944 100644
--- a/bin/utils/chain-spec-builder/Cargo.toml
+++ b/bin/utils/chain-spec-builder/Cargo.toml
@@ -14,10 +14,10 @@ targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
ansi_term = "0.12.1"
-sc-keystore = { version = "2.0.0", path = "../../../client/keystore" }
-sc-chain-spec = { version = "2.0.0", path = "../../../client/chain-spec" }
+sc-keystore = { version = "3.0.0", path = "../../../client/keystore" }
+sc-chain-spec = { version = "3.0.0", path = "../../../client/chain-spec" }
node-cli = { version = "2.0.0", path = "../../node/cli" }
-sp-core = { version = "2.0.0", path = "../../../primitives/core" }
-sp-keystore = { version = "0.8.0", path = "../../../primitives/keystore" }
+sp-core = { version = "3.0.0", path = "../../../primitives/core" }
+sp-keystore = { version = "0.9.0", path = "../../../primitives/keystore" }
rand = "0.7.2"
structopt = "0.3.8"
diff --git a/bin/utils/chain-spec-builder/build.rs b/bin/utils/chain-spec-builder/build.rs
index 8d5aac1a08742..57424f016f3e5 100644
--- a/bin/utils/chain-spec-builder/build.rs
+++ b/bin/utils/chain-spec-builder/build.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/utils/chain-spec-builder/src/main.rs b/bin/utils/chain-spec-builder/src/main.rs
index c2db944050eb4..f3336b1d53a84 100644
--- a/bin/utils/chain-spec-builder/src/main.rs
+++ b/bin/utils/chain-spec-builder/src/main.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2019-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2019-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
diff --git a/bin/utils/subkey/Cargo.toml b/bin/utils/subkey/Cargo.toml
index fa0b345bc8406..b0c71a4fc3327 100644
--- a/bin/utils/subkey/Cargo.toml
+++ b/bin/utils/subkey/Cargo.toml
@@ -8,21 +8,13 @@ homepage = "https://substrate.dev"
repository = "https://github.com/paritytech/substrate/"
readme = "README.md"
+[package.metadata.docs.rs]
+targets = ["x86_64-unknown-linux-gnu"]
+
[[bin]]
path = "src/main.rs"
name = "subkey"
-[package.metadata.docs.rs]
-targets = ["x86_64-unknown-linux-gnu"]
-
[dependencies]
-node-runtime = { version = "2.0.0", path = "../../node/runtime" }
-node-primitives = { version = "2.0.0", path = "../../node/primitives" }
-sc-cli = { version = "0.8.0", path = "../../../client/cli" }
-substrate-frame-cli = { version = "2.0.0", path = "../../../utils/frame/frame-utilities-cli" }
+sc-cli = { version = "0.9.0", path = "../../../client/cli" }
structopt = "0.3.14"
-frame-system = { version = "2.0.0", path = "../../../frame/system" }
-sp-core = { version = "2.0.0", path = "../../../primitives/core" }
-
-[features]
-bench = []
diff --git a/bin/utils/subkey/src/lib.rs b/bin/utils/subkey/src/lib.rs
index 051628e84a193..e7243fbd43e46 100644
--- a/bin/utils/subkey/src/lib.rs
+++ b/bin/utils/subkey/src/lib.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -18,11 +18,9 @@
use structopt::StructOpt;
use sc_cli::{
- Error, VanityCmd, SignCmd, VerifyCmd, InsertCmd,
- GenerateNodeKeyCmd, GenerateCmd, InspectKeyCmd, InspectNodeKeyCmd
+ Error, VanityCmd, SignCmd, VerifyCmd, GenerateNodeKeyCmd, GenerateCmd, InspectKeyCmd,
+ InspectNodeKeyCmd
};
-use substrate_frame_cli::ModuleIdCmd;
-use sp_core::crypto::Ss58Codec;
#[derive(Debug, StructOpt)]
#[structopt(
@@ -44,12 +42,6 @@ pub enum Subkey {
/// Print the peer ID corresponding to the node key in the given file
InspectNodeKey(InspectNodeKeyCmd),
- /// Insert a key to the keystore of a node.
- Insert(InsertCmd),
-
- /// Inspect a module ID address
- ModuleId(ModuleIdCmd),
-
/// Sign a message, with a given (secret) key.
Sign(SignCmd),
@@ -61,22 +53,14 @@ pub enum Subkey {
}
/// Run the subkey command, given the apropriate runtime.
-pub fn run() -> Result<(), Error>
- where
- R: frame_system::Trait,
- R::AccountId: Ss58Codec
-{
+pub fn run() -> Result<(), Error> {
match Subkey::from_args() {
- Subkey::GenerateNodeKey(cmd) => cmd.run()?,
- Subkey::Generate(cmd) => cmd.run()?,
- Subkey::Inspect(cmd) => cmd.run()?,
- Subkey::InspectNodeKey(cmd) => cmd.run()?,
- Subkey::Insert(cmd) => cmd.run()?,
- Subkey::ModuleId(cmd) => cmd.run::()?,
- Subkey::Vanity(cmd) => cmd.run()?,
- Subkey::Verify(cmd) => cmd.run()?,
- Subkey::Sign(cmd) => cmd.run()?,
- };
-
- Ok(())
+ Subkey::GenerateNodeKey(cmd) => cmd.run(),
+ Subkey::Generate(cmd) => cmd.run(),
+ Subkey::Inspect(cmd) => cmd.run(),
+ Subkey::InspectNodeKey(cmd) => cmd.run(),
+ Subkey::Vanity(cmd) => cmd.run(),
+ Subkey::Verify(cmd) => cmd.run(),
+ Subkey::Sign(cmd) => cmd.run(),
+ }
}
diff --git a/bin/utils/subkey/src/main.rs b/bin/utils/subkey/src/main.rs
index dd14425130b7d..2a0f0850713fa 100644
--- a/bin/utils/subkey/src/main.rs
+++ b/bin/utils/subkey/src/main.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2018-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2018-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -18,8 +18,6 @@
//! Subkey utility, based on node_runtime.
-use node_runtime::Runtime;
-
fn main() -> Result<(), sc_cli::Error> {
- subkey::run::()
+ subkey::run()
}
diff --git a/client/api/Cargo.toml b/client/api/Cargo.toml
index d0fb5fc3ee0e2..637dae4a29abd 100644
--- a/client/api/Cargo.toml
+++ b/client/api/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "sc-client-api"
-version = "2.0.0"
+version = "3.0.0"
authors = ["Parity Technologies "]
edition = "2018"
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
@@ -14,38 +14,36 @@ readme = "README.md"
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
-codec = { package = "parity-scale-codec", version = "1.3.4", default-features = false, features = ["derive"] }
-sp-consensus = { version = "0.8.0", path = "../../primitives/consensus/common" }
+codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] }
+sp-consensus = { version = "0.9.0", path = "../../primitives/consensus/common" }
derive_more = "0.99.2"
-sc-executor = { version = "0.8.0", path = "../executor" }
-sp-externalities = { version = "0.8.0", path = "../../primitives/externalities" }
+sc-executor = { version = "0.9.0", path = "../executor" }
+sp-externalities = { version = "0.9.0", path = "../../primitives/externalities" }
fnv = "1.0.6"
futures = "0.3.1"
hash-db = { version = "0.15.2", default-features = false }
-sp-blockchain = { version = "2.0.0", path = "../../primitives/blockchain" }
-hex-literal = "0.3.1"
-sp-inherents = { version = "2.0.0", default-features = false, path = "../../primitives/inherents" }
-sp-keyring = { version = "2.0.0", path = "../../primitives/keyring" }
-kvdb = "0.7.0"
+sp-blockchain = { version = "3.0.0", path = "../../primitives/blockchain" }
+sp-inherents = { version = "3.0.0", default-features = false, path = "../../primitives/inherents" }
+kvdb = "0.9.0"
log = "0.4.8"
-parking_lot = "0.10.0"
+parking_lot = "0.11.1"
lazy_static = "1.4.0"
-sp-database = { version = "2.0.0", path = "../../primitives/database" }
-sp-core = { version = "2.0.0", default-features = false, path = "../../primitives/core" }
-sp-keystore = { version = "0.8.0", default-features = false, path = "../../primitives/keystore" }
-sp-std = { version = "2.0.0", default-features = false, path = "../../primitives/std" }
-sp-version = { version = "2.0.0", default-features = false, path = "../../primitives/version" }
-sp-api = { version = "2.0.0", path = "../../primitives/api" }
-sp-utils = { version = "2.0.0", path = "../../primitives/utils" }
-sp-runtime = { version = "2.0.0", default-features = false, path = "../../primitives/runtime" }
-sp-state-machine = { version = "0.8.0", path = "../../primitives/state-machine" }
-sc-telemetry = { version = "2.0.0", path = "../telemetry" }
-sp-trie = { version = "2.0.0", path = "../../primitives/trie" }
-sp-storage = { version = "2.0.0", path = "../../primitives/storage" }
-sp-transaction-pool = { version = "2.0.0", path = "../../primitives/transaction-pool" }
-prometheus-endpoint = { package = "substrate-prometheus-endpoint", version = "0.8.0", path = "../../utils/prometheus" }
+sp-database = { version = "3.0.0", path = "../../primitives/database" }
+sp-core = { version = "3.0.0", default-features = false, path = "../../primitives/core" }
+sp-keystore = { version = "0.9.0", default-features = false, path = "../../primitives/keystore" }
+sp-std = { version = "3.0.0", default-features = false, path = "../../primitives/std" }
+sp-version = { version = "3.0.0", default-features = false, path = "../../primitives/version" }
+sp-api = { version = "3.0.0", path = "../../primitives/api" }
+sp-utils = { version = "3.0.0", path = "../../primitives/utils" }
+sp-runtime = { version = "3.0.0", default-features = false, path = "../../primitives/runtime" }
+sp-state-machine = { version = "0.9.0", path = "../../primitives/state-machine" }
+sp-trie = { version = "3.0.0", path = "../../primitives/trie" }
+sp-storage = { version = "3.0.0", path = "../../primitives/storage" }
+sp-transaction-pool = { version = "3.0.0", path = "../../primitives/transaction-pool" }
+prometheus-endpoint = { package = "substrate-prometheus-endpoint", version = "0.9.0", path = "../../utils/prometheus" }
[dev-dependencies]
-kvdb-memorydb = "0.7.0"
+kvdb-memorydb = "0.9.0"
sp-test-primitives = { version = "2.0.0", path = "../../primitives/test-primitives" }
substrate-test-runtime = { version = "2.0.0", path = "../../test-utils/runtime" }
+thiserror = "1.0.21"
diff --git a/client/api/src/backend.rs b/client/api/src/backend.rs
index 47fec977f5e82..e41b250269a11 100644
--- a/client/api/src/backend.rs
+++ b/client/api/src/backend.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2017-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2017-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -21,12 +21,12 @@
use std::sync::Arc;
use std::collections::{HashMap, HashSet};
use sp_core::ChangesTrieConfigurationRange;
-use sp_core::offchain::{OffchainStorage,storage::OffchainOverlayedChanges};
+use sp_core::offchain::OffchainStorage;
use sp_runtime::{generic::BlockId, Justification, Storage};
use sp_runtime::traits::{Block as BlockT, NumberFor, HashFor};
use sp_state_machine::{
ChangesTrieState, ChangesTrieStorage as StateChangesTrieStorage, ChangesTrieTransaction,
- StorageCollection, ChildStorageCollection,
+ StorageCollection, ChildStorageCollection, OffchainChangesCollection,
};
use sp_storage::{StorageData, StorageKey, PrefixedStorageKey, ChildInfo};
use crate::{
@@ -174,7 +174,7 @@ pub trait BlockImportOperation {
/// Write offchain storage changes to the database.
fn update_offchain_storage(
&mut self,
- _offchain_update: OffchainOverlayedChanges,
+ _offchain_update: OffchainChangesCollection,
) -> sp_blockchain::Result<()> {
Ok(())
}
diff --git a/client/api/src/call_executor.rs b/client/api/src/call_executor.rs
index 86e3440f19c93..5f1e0134a5caf 100644
--- a/client/api/src/call_executor.rs
+++ b/client/api/src/call_executor.rs
@@ -1,6 +1,6 @@
// This file is part of Substrate.
-// Copyright (C) 2017-2020 Parity Technologies (UK) Ltd.
+// Copyright (C) 2017-2021 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: GPL-3.0-or-later WITH Classpath-exception-2.0
// This program is free software: you can redistribute it and/or modify
@@ -28,7 +28,7 @@ use sp_state_machine::{
};
use sc_executor::{RuntimeVersion, NativeVersion};
use sp_externalities::Extensions;
-use sp_core::{NativeOrEncoded,offchain::storage::OffchainOverlayedChanges};
+use sp_core::NativeOrEncoded;
use sp_api::{ProofRecorder, InitializeBlock, StorageTransactionCache};
use crate::execution_extensions::ExecutionExtensions;
@@ -86,7 +86,6 @@ pub trait CallExecutor {
method: &str,
call_data: &[u8],
changes: &RefCell