Skip to content

Use TryFrom impls instead of as operator in polkadot-runtime-parachains #8118

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 48 commits into from
Apr 11, 2025
Merged
Show file tree
Hide file tree
Changes from 46 commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
f94ac1a
explicit usize convertion
iulianbarbu Apr 1, 2025
73bd02a
fix compilation issues
iulianbarbu Apr 1, 2025
5d6c072
more compilation issues fixes
iulianbarbu Apr 1, 2025
a23c8b3
Update from github-actions[bot] running command 'prdoc'
github-actions[bot] Apr 1, 2025
09ef1b6
polished prdoc
iulianbarbu Apr 1, 2025
7a60b8a
fix title
iulianbarbu Apr 1, 2025
9161731
simplify fix
iulianbarbu Apr 1, 2025
8612c78
fix prdoc title
iulianbarbu Apr 1, 2025
10706cb
add audience
iulianbarbu Apr 1, 2025
e79f7b7
Merge branch 'master' into ib-fix-compilation-issues
iulianbarbu Apr 1, 2025
1d7980c
fix prdoc
iulianbarbu Apr 1, 2025
da3b68a
Bump deranged & time
bkchr Apr 4, 2025
611031b
fix compilation after upgrading degraded
iulianbarbu Apr 4, 2025
28aaff9
more fixes
iulianbarbu Apr 4, 2025
195349f
Update bridges/relays/messages/src/message_race_delivery.rs
bkchr Apr 5, 2025
1119588
fix compilation issue
iulianbarbu Apr 7, 2025
7d2a97d
fix more compilation issues
iulianbarbu Apr 7, 2025
c273bb8
one more fix
iulianbarbu Apr 7, 2025
eb99995
fix polkadot/service tests
iulianbarbu Apr 7, 2025
3dd4fb5
fix yet another
iulianbarbu Apr 7, 2025
a333b40
Update from github-actions[bot] running command 'prdoc --force'
github-actions[bot] Apr 7, 2025
70aa1de
Update prdoc/pr_8118.prdoc
iulianbarbu Apr 7, 2025
7a1b174
Update prdoc/pr_8118.prdoc
iulianbarbu Apr 7, 2025
a89df75
Update prdoc/pr_8118.prdoc
iulianbarbu Apr 7, 2025
8cf821e
Update prdoc/pr_8118.prdoc
iulianbarbu Apr 7, 2025
ca7416b
Apply suggestions from code review
iulianbarbu Apr 7, 2025
12f6db0
Update prdoc/pr_8118.prdoc
iulianbarbu Apr 7, 2025
89fd3bd
Update message_race_delivery.rs
iulianbarbu Apr 8, 2025
120906d
Update polkadot/node/core/chain-selection/src/db_backend/v1.rs
iulianbarbu Apr 8, 2025
adf6ac6
use explicit From conversions instead of 'as'
iulianbarbu Apr 8, 2025
b1e105a
remove unnecessary paranthesis
iulianbarbu Apr 8, 2025
3980374
handle out of bounds usize conversion
iulianbarbu Apr 9, 2025
4ab7d01
Update from github-actions[bot] running command 'fmt'
github-actions[bot] Apr 9, 2025
5a1274f
proper handling errors and rest of conversions
iulianbarbu Apr 9, 2025
a3a461d
Update from github-actions[bot] running command 'fmt'
github-actions[bot] Apr 9, 2025
00995ac
Merge branch 'master' into ib-fix-compilation-issues
iulianbarbu Apr 9, 2025
4257827
update prdoc and downgrade degrade to 0.4.0
iulianbarbu Apr 9, 2025
af5df68
fix prdoc
iulianbarbu Apr 9, 2025
e610b8f
Update prdoc/pr_8118.prdoc
iulianbarbu Apr 10, 2025
b26273a
rever unnecessary changes
iulianbarbu Apr 10, 2025
8d4d080
some leftovers
iulianbarbu Apr 10, 2025
2076e2c
Update from github-actions[bot] running command 'fmt'
github-actions[bot] Apr 10, 2025
ef51bd3
revert deranged upgrade
iulianbarbu Apr 11, 2025
14d5d9a
rever gitignore
iulianbarbu Apr 11, 2025
7ca6156
fix time hash in cargo.lock
iulianbarbu Apr 11, 2025
6dcdab2
Merge branch 'master' into ib-fix-compilation-issues
iulianbarbu Apr 11, 2025
aea2cae
Update polkadot/runtime/parachains/src/inclusion/mod.rs
bkchr Apr 11, 2025
44a5a0e
Update prdoc/pr_8118.prdoc
bkchr Apr 11, 2025
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
14 changes: 9 additions & 5 deletions polkadot/runtime/parachains/src/inclusion/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1319,19 +1319,23 @@ impl<T: Config> CandidateCheckContext<T> {
hrmp_watermark: BlockNumberFor<T>,
horizontal_messages: &[polkadot_primitives::OutboundHrmpMessage<ParaId>],
) -> Result<(), AcceptanceCheckErr> {
ensure!(
head_data.0.len() <= self.config.max_head_data_size as _,
AcceptanceCheckErr::HeadDataTooLarge,
);
// Safe convertions when `self.config.max_head_data_size` is in bounds of `usize` type.
let max_head_data_size = usize::try_from(self.config.max_head_data_size)
.map_err(|_| AcceptanceCheckErr::HeadDataTooLarge)?;
ensure!(head_data.0.len() <= max_head_data_size, AcceptanceCheckErr::HeadDataTooLarge,);

// if any, the code upgrade attempt is allowed.
if let Some(new_validation_code) = new_validation_code {
// Safe convertions when `self.config.max_code_size` is in bounds of `usize` type.
let max_code_size = usize::try_from(self.config.max_code_size)
.map_err(|_| AcceptanceCheckErr::NewCodeTooLarge)?;

ensure!(
paras::Pallet::<T>::can_upgrade_validation_code(para_id),
AcceptanceCheckErr::PrematureCodeUpgrade,
);
ensure!(
new_validation_code.0.len() <= self.config.max_code_size as _,
new_validation_code.0.len() <= max_code_size,
AcceptanceCheckErr::NewCodeTooLarge,
);
}
Expand Down
8 changes: 8 additions & 0 deletions prdoc/pr_8118.prdoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
title: Safer conversions in polkadot-runtime-parachains
doc:
- audience: [Node Dev, Runtime Dev]
description: |-
Use TryFrom impls instead of `as` operator for conversions.
crates:
- name: polkadot-runtime-parachains
bump: patch
Loading