Skip to content
Draft
Show file tree
Hide file tree
Changes from 5 commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
64401a5
Changed block length + dispatch ratio
antkve Dec 15, 2025
373eda4
Added advance_block and changed storage sizes
antkve Dec 15, 2025
c538a1a
Added max write throughput test
antkve Dec 17, 2025
86f2d20
Added polkadot bulletin parachain
antkve Dec 28, 2025
14b8141
Fixed tests
antkve Jan 8, 2026
53362a2
Tweaked storage.rs
antkve Jan 9, 2026
ea5050a
Updated migrations
antkve Jan 20, 2026
588566e
Merge branch 'main' into ak-adjust-westend
antkve Jan 21, 2026
cde5688
Merge branch 'main' into ak-add-polkadot-parachain-2
franciscoaguirre Jan 26, 2026
1aee67d
Added constants.rs + removed relative imports
antkve Jan 26, 2026
53825c2
API change adjustments to fix compilation
antkve Jan 26, 2026
d315f18
XCM config tweaks for Bulletin Polkadot Parachain (#201)
franciscoaguirre Jan 27, 2026
79a532a
Merge branch 'main' into ak-add-polkadot-parachain-2
franciscoaguirre Jan 27, 2026
6881e94
Created apis.rs, migrations.rs, benchmarks.rs
antkve Jan 28, 2026
5d1d70b
Fixed tests to match new governance location, location conversion and…
antkve Jan 28, 2026
45b94e1
Feeless payment
antkve Jan 28, 2026
d87f1fc
Format
antkve Jan 28, 2026
00bd699
Lock
antkve Jan 28, 2026
9f92bb6
Taplo format
antkve Jan 28, 2026
cfb66e3
More taplo format
antkve Jan 28, 2026
b79aaaa
fix: duplicated dependencies
franciscoaguirre Jan 28, 2026
746ea91
Updated runtime syntax
antkve Jan 28, 2026
22ae5d3
Added ProvideCidConfig extension
antkve Jan 28, 2026
f78b06e
fix: unnecessary import
franciscoaguirre Jan 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,22 @@ hex = { version = "0.4" }
jsonrpsee = { version = "0.24.3" }
log = { version = "0.4.17", default-features = false }
parachain-info = { git = "https://github.com/paritytech/polkadot-sdk.git", package = "staging-parachain-info", rev = "41bc46f27067c243d1c0fb7f83260d61c1f97c75", default-features = false }
polkadot-core-primitives = { git = "https://github.com/paritytech/polkadot-sdk.git", rev = "41bc46f27067c243d1c0fb7f83260d61c1f97c75", default-features = false }
polkadot-parachain-primitives = { git = "https://github.com/paritytech/polkadot-sdk.git", rev = "41bc46f27067c243d1c0fb7f83260d61c1f97c75", default-features = false }
scale-info = { version = "2.11.6", default-features = false }
smallvec = { version = "1.11.0", default-features = false }
serde = { version = "1.0.126" }
serde_json = { version = "1.0.132", default-features = false }
static_assertions = { version = "1.1" }
testnet-parachains-constants = { git = "https://github.com/paritytech/polkadot-sdk.git", package = "testnet-parachains-constants", rev = "41bc46f27067c243d1c0fb7f83260d61c1f97c75", default-features = false }
tracing = { version = "0.1.41", default-features = false }
westend-runtime-constants = { git = "https://github.com/paritytech/polkadot-sdk.git", package = "westend-runtime-constants", rev = "41bc46f27067c243d1c0fb7f83260d61c1f97c75", default-features = false }
polkadot-runtime-constants = { path = "../runtimes/relay/polkadot/constants", default-features = false }
system-parachains-constants = { path = "../runtimes/system-parachains/constants", default-features = false }

# Local workspace members
bulletin-polkadot-runtime = { path = "runtimes/bulletin-polkadot" }
bulletin-polkadot-parachain-runtime = { path = "runtimes/bulletin-polkadot-parachain" }
bulletin-westend-runtime = { path = "runtimes/bulletin-westend" }
pallet-relayer-set = { path = "pallets/relayer-set", default-features = false }
pallet-transaction-storage = { path = "pallets/transaction-storage", default-features = false }
Expand Down Expand Up @@ -169,6 +174,7 @@ members = [
"pallets/validator-set",
"runtime",
"runtimes/bulletin-polkadot",
"runtimes/bulletin-polkadot-parachain",
"runtimes/bulletin-westend",
]
[profile.release]
Expand Down
227 changes: 227 additions & 0 deletions runtimes/bulletin-polkadot-parachain/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,227 @@
[package]
name = "bulletin-polkadot-parachain-runtime"
version = "0.1.0"
authors.workspace = true
edition.workspace = true
description = "Polkadot's Bulletin parachain runtime"
license = "Apache-2.0"
repository.workspace = true

[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]


[dependencies]
codec = { features = ["derive"], workspace = true }
scale-info = { features = ["derive"], workspace = true }
serde = { optional = true, features = ["derive"], workspace = true, default-features = true }
serde_json = { features = ["alloc"], workspace = true }
smallvec = { workspace = true }
tracing = { workspace = true }

# Local
polkadot-runtime-constants = { workspace = true }
system-parachains-constants = { workspace = true }

# Substrate
frame-benchmarking = { optional = true, workspace = true }
frame-executive = { workspace = true }
frame-metadata-hash-extension = { workspace = true }
frame-support = { workspace = true }
frame-system = { workspace = true }
frame-system-benchmarking = { optional = true, workspace = true }
frame-system-rpc-runtime-api = { workspace = true }
frame-try-runtime = { optional = true, workspace = true }
pallet-aura = { workspace = true }
pallet-authorship = { workspace = true }
pallet-balances = { workspace = true }
pallet-message-queue = { workspace = true }
pallet-session = { workspace = true }
pallet-sudo = { workspace = true }
pallet-timestamp = { workspace = true }
pallet-transaction-payment = { workspace = true }
pallet-transaction-payment-rpc-runtime-api = { workspace = true }
pallet-transaction-storage = { workspace = true }
sp-api = { workspace = true }
sp-block-builder = { workspace = true }
sp-consensus-aura = { workspace = true }
sp-core = { workspace = true }
sp-genesis-builder = { workspace = true }
sp-inherents = { workspace = true }
sp-keyring = { workspace = true }
sp-offchain = { workspace = true }
sp-runtime = { workspace = true }
sp-session = { workspace = true }
sp-transaction-storage-proof = { workspace = true }
sp-storage = { workspace = true }
sp-transaction-pool = { workspace = true }
sp-version = { workspace = true }
sp-weights = { workspace = true }

# Polkadot
pallet-xcm = { workspace = true }
pallet-xcm-benchmarks = { optional = true, workspace = true }
polkadot-core-primitives = { workspace = true }
polkadot-parachain-primitives = { workspace = true }
polkadot-runtime-common = { workspace = true }
xcm = { workspace = true }
xcm-builder = { workspace = true }
xcm-executor = { workspace = true }
xcm-runtime-apis = { workspace = true }

# Cumulus
cumulus-pallet-aura-ext = { workspace = true }
cumulus-pallet-parachain-system = { workspace = true }
cumulus-pallet-session-benchmarking = { workspace = true }
cumulus-pallet-weight-reclaim = { workspace = true }
cumulus-pallet-xcm = { workspace = true }
cumulus-pallet-xcmp-queue = { workspace = true }
cumulus-primitives-aura = { workspace = true }
cumulus-primitives-core = { workspace = true }
cumulus-primitives-utility = { workspace = true }

pallet-collator-selection = { workspace = true }
parachain-info = { workspace = true }
parachains-common = { workspace = true }

[dev-dependencies]
parachains-runtimes-test-utils = { workspace = true, default-features = true }
sp-io = { workspace = true }

[build-dependencies]
substrate-wasm-builder = { optional = true, workspace = true, default-features = true }

[features]
default = ["std"]
std = [
"codec/std",
"cumulus-pallet-aura-ext/std",
"cumulus-pallet-parachain-system/std",
"cumulus-pallet-session-benchmarking/std",
"cumulus-pallet-weight-reclaim/std",
"cumulus-pallet-xcm/std",
"cumulus-pallet-xcmp-queue/std",
"cumulus-primitives-aura/std",
"cumulus-primitives-core/std",
"cumulus-primitives-utility/std",
"frame-benchmarking?/std",
"frame-executive/std",
"frame-metadata-hash-extension/std",
"frame-support/std",
"frame-system-benchmarking?/std",
"frame-system-rpc-runtime-api/std",
"frame-system/std",
"frame-try-runtime?/std",
"pallet-aura/std",
"pallet-authorship/std",
"pallet-balances/std",
"pallet-collator-selection/std",
"pallet-message-queue/std",
"pallet-session/std",
"pallet-sudo/std",
"pallet-timestamp/std",
"pallet-transaction-payment-rpc-runtime-api/std",
"pallet-transaction-payment/std",
"pallet-transaction-storage/std",
"pallet-xcm-benchmarks?/std",
"pallet-xcm/std",
"parachain-info/std",
"parachains-common/std",
"polkadot-core-primitives/std",
"polkadot-parachain-primitives/std",
"polkadot-runtime-common/std",
"polkadot-runtime-constants/std",
"system-parachains-constants/std",
"scale-info/std",
"serde",
"serde_json/std",
"smallvec/write",
"sp-api/std",
"sp-block-builder/std",
"sp-consensus-aura/std",
"sp-core/std",
"sp-genesis-builder/std",
"sp-inherents/std",
"sp-keyring/std",
"sp-offchain/std",
"sp-runtime/std",
"sp-session/std",
"sp-storage/std",
"sp-transaction-pool/std",
"sp-transaction-storage-proof/std",
"sp-version/std",
"sp-weights/std",
"substrate-wasm-builder",
"tracing/std",
"xcm-builder/std",
"xcm-executor/std",
"xcm-runtime-apis/std",
"xcm/std",
]
runtime-benchmarks = [
"cumulus-pallet-parachain-system/runtime-benchmarks",
"cumulus-pallet-session-benchmarking/runtime-benchmarks",
"cumulus-pallet-weight-reclaim/runtime-benchmarks",
"cumulus-pallet-xcmp-queue/runtime-benchmarks",
"cumulus-primitives-core/runtime-benchmarks",
"cumulus-primitives-utility/runtime-benchmarks",
"frame-benchmarking/runtime-benchmarks",
"frame-support/runtime-benchmarks",
"frame-system-benchmarking/runtime-benchmarks",
"frame-system/runtime-benchmarks",
"pallet-balances/runtime-benchmarks",
"pallet-collator-selection/runtime-benchmarks",
"pallet-message-queue/runtime-benchmarks",
"pallet-sudo/runtime-benchmarks",
"pallet-timestamp/runtime-benchmarks",
"pallet-transaction-payment/runtime-benchmarks",
"pallet-transaction-storage/runtime-benchmarks",
"pallet-xcm-benchmarks/runtime-benchmarks",
"pallet-xcm/runtime-benchmarks",
"parachains-common/runtime-benchmarks",
"polkadot-parachain-primitives/runtime-benchmarks",
"polkadot-runtime-common/runtime-benchmarks",
"polkadot-runtime-constants/runtime-benchmarks",
"system-parachains-constants/runtime-benchmarks",
"sp-runtime/runtime-benchmarks",
"xcm-builder/runtime-benchmarks",
"xcm-executor/runtime-benchmarks",
"xcm-runtime-apis/runtime-benchmarks",
"xcm/runtime-benchmarks",
]
try-runtime = [
"cumulus-pallet-aura-ext/try-runtime",
"cumulus-pallet-parachain-system/try-runtime",
"cumulus-pallet-weight-reclaim/try-runtime",
"cumulus-pallet-xcm/try-runtime",
"cumulus-pallet-xcmp-queue/try-runtime",
"frame-executive/try-runtime",
"frame-support/try-runtime",
"frame-system/try-runtime",
"frame-try-runtime/try-runtime",
"pallet-aura/try-runtime",
"pallet-authorship/try-runtime",
"pallet-balances/try-runtime",
"pallet-collator-selection/try-runtime",
"pallet-message-queue/try-runtime",
"pallet-session/try-runtime",
"pallet-sudo/try-runtime",
"pallet-timestamp/try-runtime",
"pallet-transaction-payment/try-runtime",
"pallet-transaction-storage/try-runtime",
"pallet-xcm/try-runtime",
"parachain-info/try-runtime",
"parachains-common/try-runtime",
"polkadot-runtime-common/try-runtime",
"sp-runtime/try-runtime",
]

fast-runtime = ["polkadot-runtime-constants/fast-runtime"]

# Enable the metadata hash generation in the wasm builder.
metadata-hash = ["substrate-wasm-builder/metadata-hash"]

# A feature that should be enabled when the runtime should be built for on-chain
# deployment. This will disable stuff that shouldn't be part of the on-chain wasm
# to make it smaller, like logging for example.
on-chain-release-build = ["metadata-hash"]
40 changes: 40 additions & 0 deletions runtimes/bulletin-polkadot-parachain/build.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
// Copyright (C) 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.

#[cfg(all(not(feature = "metadata-hash"), feature = "std"))]
fn main() {
substrate_wasm_builder::WasmBuilder::build_using_defaults();

substrate_wasm_builder::WasmBuilder::init_with_defaults()
.set_file_name("fast_runtime_binary.rs")
.enable_feature("fast-runtime")
.build();
}

#[cfg(all(feature = "metadata-hash", feature = "std"))]
fn main() {
substrate_wasm_builder::WasmBuilder::init_with_defaults()
.enable_metadata_hash("DOT", 10)
.build();

substrate_wasm_builder::WasmBuilder::init_with_defaults()
.set_file_name("fast_runtime_binary.rs")
.enable_feature("fast-runtime")
.enable_metadata_hash("DOT", 10)
.build();
}

#[cfg(not(feature = "std"))]
fn main() {}
Loading