- Dec 19, 2024
-
-
Egor_P authored
This PR includes backport of the regular version bumps and `prdocs` reordering from the `stable2412` branch back ro master --------- Co-authored-by:
ParityReleases <release-team@parity.io> Co-authored-by: command-bot <>
-
Cyrill Leutwiler authored
This PR implements the base fee syscall API method. Currently this is implemented as a compile time constant in the revive compiler, returning 0. However, since this is an opocde, if we ever need to implement it for compatibility reasons with [EIP-1559](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1559.md), it would break already deployed contracts. Thus we provide a syscall method instead. --------- Signed-off-by:
xermicus <cyrill@parity.io> Signed-off-by:
Cyrill Leutwiler <bigcyrill@hotmail.com> Co-authored-by: command-bot <>
-
clangenb authored
[polkadot-runtime-parachains] migrate disputes and disputes/slashing to benchmarking to bench v2 syntax (#6577) [polkadot-runtime-parachains] migrate disputes and disputes/slashing to benchmarking to bench v2 syntax Part of: * #6202 --------- Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io> Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Cyrill Leutwiler authored
This PR implements the EVM gas price syscall API method. Currently this is a compile time constant in revive, but in the EVM it is an opcode. Thus we should provide an opcode for this in the pallet. --------- Signed-off-by:
Cyrill Leutwiler <bigcyrill@hotmail.com> Signed-off-by:
xermicus <cyrill@parity.io> Co-authored-by: command-bot <>
-
Ludovic_Domingues authored
Linked to issue #590 Extracted code from mod.rs to new tests, mock and benchmarking files
-
Ludovic_Domingues authored
# Description Linked to issue #590. I moved the tests and benchmarking to their own seperate file to reduce the bloat inside auctions.rs Co-authored-by:
Shawn Tabrizi <shawntabrizi@gmail.com>
-
Ludovic_Domingues authored
Linked to issue #590 I moved the mod, tests, mock and benchmarking to their own seperate file to reduce the bloat inside purchase.rs --------- Co-authored-by:
Guillaume Thiolliere <gui.thiolliere@gmail.com> Co-authored-by:
Shawn Tabrizi <shawntabrizi@gmail.com>
-
- Dec 18, 2024
-
-
Alexander Theißen authored
- Fixed failing docs.rs build for `pallet-revive-uapi` by fixing a wring attribute in the manifest (we were using `default-target` instead of `targets`) - Removed the macros defining host functions because the cfg attributes introduced in #6866 won't work on them - Added an docs.rs specific attribute so that the `unstable-hostfn` feature tag will show up on the functions that are guarded behind it. --------- Co-authored-by: command-bot <>
-
Cyrill Leutwiler authored
Update to the latest polkavm version, containing a linker fix I need for revive. --------- Signed-off-by:
Cyrill Leutwiler <bigcyrill@hotmail.com> Signed-off-by:
xermicus <cyrill@parity.io> Co-authored-by: command-bot <>
-
Cyrill Leutwiler authored
This PR implements the gas limit API, returning the maximum ref_time per block. Solidity contracts only know a single weight dimension and can use this method to get the block ref_time limit. --------- Signed-off-by:
Cyrill Leutwiler <bigcyrill@hotmail.com> Signed-off-by:
xermicus <cyrill@parity.io> Co-authored-by: command-bot <>
-
Maksym H authored
#6940
-
Cyrill Leutwiler authored
Call data, return data and code sizes can never exceed `u32::MAX`; they are also not generic. Hence we know that they are guaranteed to always fit into a 64bit register and `revive` can just zero extend them into a 256bit integer value. Which is slightly more efficient than passing them on the stack. --------- Signed-off-by:
Cyrill Leutwiler <bigcyrill@hotmail.com> Signed-off-by:
xermicus <cyrill@parity.io> Co-authored-by: command-bot <> Co-authored-by:
Alexander Theißen <alex.theissen@me.com>
-
Bastian Köcher authored
Move `RelayChainDataFetcher` to its own module and rename it to `RelayChainDataCache`. Also move the `core_selector` function to the `slot_based` module. Related issue: https://github.com/paritytech/polkadot-sdk/issues/6495
-
Egor_P authored
This PR contains a small number of fixes that have been made to the release pipeline: - Fixes docker image publishing for polkadot - Fixes docker owner in one of the jobs for the polakdot container - Fixes a description of one of the inputs
-
Cyrill Leutwiler authored
This PR implements the ref_time_left API method. Solidity knows only a single "gas" dimension; Solidity contracts will use this to query the gas left. --------- Signed-off-by:
xermicus <cyrill@parity.io> Signed-off-by:
Cyrill Leutwiler <bigcyrill@hotmail.com> Co-authored-by: command-bot <>
-
Branislav Kontur authored
Relates to: https://github.com/paritytech/polkadot-sdk/issues/6918 --------- Co-authored-by: command-bot <>
-
Maksym H authored
Closes #6940
-
Ludovic_Domingues authored
Linked to issue #590. I moved the mod, tests, mock and benchmarking to their own seperate file to reduce the bloat inside claims.rs --------- Co-authored-by:
Guillaume Thiolliere <gui.thiolliere@gmail.com>
-
clangenb authored
Migrates pallet-xcm benchmarks to benchmark v2 syntax * Part of #6202
-
Alin Dima authored
Adds a new zombienet-sdk test which verifies that elastic scaling works correctly both with the MVP and the new RFC 103 implementation which sends the core selector as a UMP signal. Also enables the V2 receipts node feature for testnet genesis config. Part of https://github.com/paritytech/polkadot-sdk/issues/5049 --------- Co-authored-by:
Javier Viola <javier@parity.io> Co-authored-by:
Javier Viola <363911+pepoviola@users.noreply.github.com>
-
Cyrill Leutwiler authored
This PR implements the call data copy API by adjusting the input method. Closes #6770 --------- Signed-off-by:
xermicus <cyrill@parity.io> Co-authored-by: command-bot <>
-
- Dec 17, 2024
-
-
Frazz authored
# Description Opening this PR to add our bootnodes for the IBP. These nodes are located in Santiago Chile, we own and manage the underlying hardware. If you need any more information please let me know. ## Integration ``` docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain asset-hub-westend \ --reserved-only \ --reserved-nodes "/dns/asset-hub-westend-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWDUPyF2q8b6fVFEuwxBbRV3coAy1kzuCPU3D9TRiLnUfE" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain bridge-hub-westend \ --reserved-only \ --reserved-nodes "/dns/bridge-hub-westend-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWJEfDZxrEKehoPbW2Mfg6rypttMXCMgMiybmapKqcByc1" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain collectives-westend \ --reserved-only \ --reserved-nodes "/dns/collectives-westend-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWFH7UZnWESzuRSgrLvNSfALjtpr9PmG7QGyRNCizWEHcd" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain people-westend \ --reserved-only \ --reserved-nodes "/dns/people-westend-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWJzL4R3kq9Ms88gsV6bS9zGT8DHySdqwau5SHNqTzToNM" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain coretime-westend \ --reserved-only \ --reserved-nodes "/dns/coretime-westend-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWCFNzjaiq45ZpW2qStmQdG5w7ZHrmi3RWUeG8cV2pPc2Y" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain asset-hub-kusama \ --reserved-only \ --reserved-nodes "/dns/asset-hub-kusama-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWNCg821LyWDVrAJ2mG6ScDeeBFuDPiJtLYc9jCGNCyMoq" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain bridge-hub-kusama \ --reserved-only \ --reserved-nodes "/dns/bridge-hub-kusama-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWBE1ZhrYqMC3ECFK6qbufS9kgKuF57XpvvZU6LKsPUSnF" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain coretime-kusama \ --reserved-only \ --reserved-nodes "/dns/coretime-kusama-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWMPc6jEjzFLRCK7QgbcNh3gvxCzGvDKhU4F66QWf2kZmq" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain people-kusama \ --reserved-only \ --reserved-nodes "/dns/people-kusama-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWN32MmhPgZN8e1Dmc8DzEUKsfC2hga3Lqekko4VWvrbhq" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain bridge-hub-polkadot \ --reserved-only \ --reserved-nodes "/dns/bridge-hub-polkadot-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWSBpo6fYU8CUr4fwA14CKSDUSj5jSgZzQDBNL1B8Dnmaw" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain collectives-polkadot \ --reserved-only \ --reserved-nodes "/dns/collectives-polkadot-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWNscpobBzjPEdjbbjjKRYh9j1whYJvagRJwb9UH68zCPC" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain people-polkadot \ --reserved-only \ --reserved-nodes "/dns/people-polkadot-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWDf2aLDKHQyLkDzdEGs6exNzWWw62s2EK9g1wrujJzRZt" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain coretime-polkadot \ --reserved-only \ --reserved-nodes "/dns/coretime-polkadot-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWFG9WQQTf3MX3YQypZjJtoJM5zCQgJcqYdxxTStsbhZGU" docker run --platform=linux/amd64 --rm parity/polkadot-parachain \ --base-path /tmp/polkadot-data \ --no-hardware-benchmarks --no-mdns \ --chain asset-hub-polkadot \ --reserved-only \ --reserved-nodes "/dns/asset-hub-polkadot-01.bootnode.stkd.io/tcp/30633/wss/p2p/12D3KooWJUhizuk3crSvpyKLGycHBtnP93rwjksVueveU6x6k6RY" ``` ## Review Notes None Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Sebastian Kunert authored
#6450 introduced metadata checks. Supported are metadata v14 and higher. However, of course old chain-specs have a genesis code blob that might be on older version. This needs to be tolerated. We should just skip the checks in that case. Fixes #6921 --------- Co-authored-by: command-bot <>
-
Alexander Theißen authored
Removing apparently unused dependencies from `pallet_revive` and related crates. --------- Co-authored-by: command-bot <>
-
Alexander Samusev authored
cc https://github.com/paritytech/ci_cd/issues/1038
-
- Dec 16, 2024
-
-
Jun Jiang authored
# Description Upgrade `nix` and `reqwest` to reduce outdated dependencies and speed up compilation.
-
Iulian Barbu authored
# Description Redundant dep that made its way in #6450 .
. It can be brought up when using `cargo udeps`. Added a github action that runs `cargo udeps` on the repo too. ## Integration N/A ## Review Notes N/A --------- Signed-off-by:Iulian Barbu <iulian.barbu@parity.io> Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Sebastian Kunert authored
We check if there is a pending validation code in storage. If there is, add the go-ahead signal in the relay chain storage proof. Not super elegant, but should get the job done for development. --------- Co-authored-by: command-bot <>
-
Nazar Mokrynskyi authored
# Description Fixes https://github.com/paritytech/polkadot-sdk/issues/5996 https://github.com/libp2p/rust-libp2p/releases/tag/libp2p-v0.53.0 https://github.com/libp2p/rust-libp2p/blob/master/CHANGELOG.md ## Integration Nothing special is needed, just note that `yamux_window_size` is no longer applicable to libp2p (litep2p seems to still have it though). ## Review Notes There are a few simplifications and improvements done in libp2p 0.53 regarding swarm interface, I'll list a few key/applicable here. https://github.com/libp2p/rust-libp2p/pull/4788 removed `write_length_prefixed` function, so I inlined its code instead. https://github.com/libp2p/rust-libp2p/pull/4120 introduced new `libp2p::SwarmBuilder` instead of now deprecated `libp2p::swarm::SwarmBuilder`, the transition is straightforward and quite ergonomic (can be seen in tests). https://github.com/libp2p/rust-libp2p/pull/4581 is the most annoying change I have seen that basically makes many enums `#[non_exhaustive]`. I mapped some, but those that couldn't be mapped I dealt with by printing log messages once they are hit (the best solution I could come up with, at least with stable Rust). https://github.com/libp2p/rust-libp2p/issues/4306 makes connection close as soon as there are no handler using it, so I had to replace `KeepAlive::Until` with an explicit future that flips internal boolean after timeout, achieving the old behavior, though it should ideally be removed completely at some point. `yamux_window_size` is no longer used by libp2p thanks to https://github.com/libp2p/rust-libp2p/pull/4970 and generally Yamux should have a higher performance now. I have resolved and cleaned up all deprecations related to libp2p except `BandwidthSinks`. Libp2p deprecated it (though it is still present in 0.54.1, which is why I didn't handle it just yet). Ideally Substrate would finally [switch to the official Prometheus client](https://github.com/paritytech/substrate/issues/12699), in which case we'd get metrics for free. Otherwise a bit of code will need to be copy-pasted to maintain current behavior with `BandwidthSinks` gone, which I left a TODO about. The biggest change in 0.54.0 is https://github.com/libp2p/rust-libp2p/pull/4568 that changed transport APIs and enabled unconditional potential port reuse, which can lead to very confusing errors if running two Substrate nodes on the same machine without changing listening port explicitly. Overall nothing scary here, but testing is always appreciated. # Checklist * [x] My PR includes a detailed description as outlined in the "Description" and its two subsections above. * [x] My PR follows the [labeling requirements]( https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md#Process ) of this project (at minimum one label for `T` required) * External contributors: ask maintainers to put the right label on your PR. --- Polkadot Address: 1vSxzbyz2cJREAuVWjhXUT1ds8vBzoxn2w4asNpusQKwjJd --------- Co-authored-by:
Dmitry Markin <dmitry@markin.tech>
-
- Dec 15, 2024
-
-
Alexander Theißen authored
The timeout was too low which made the job not finish in time sometimes: Hence: - Bumping the timeout to 60 minutes which is in line with other jobs which are building substantial parts of the repo. - Roll all the runtime builds into a single cargo invocation so that it aborts after the first failure. It also allows for more parallel compiling.
-
- Dec 14, 2024
-
-
Jarkko Sakkinen authored
Bump `polkavm` to 0.18.0, and update `sc-polkavm-executor` to be compatible with the API changes. In addition, bump also `polkavm-derive` and `polkavm-linker` in order to make sure that the all parts of the Polkadot SDK use the exact same ABI for `.polkavm` binaries. Purely relying on RV32E/RV64E ABI is not possible, as PolkaVM uses a RISCV-V alike ISA, which is derived from RV32E/RV64E but it is still its own microarchitecture, i.e. not fully binary compatible. --------- Signed-off-by:
Jarkko Sakkinen <jarkko@parity.io> Co-authored-by:
Koute <koute@users.noreply.github.com> Co-authored-by:
Alexander Theißen <alex.theissen@me.com>
-
- Dec 13, 2024
-
-
davidk-pt authored
Follow up refactor to https://github.com/paritytech/polkadot-sdk/pull/6844#pullrequestreview-2497225717 I still need to finish adding `#[cfg(feature = "unstable-api")]` to the rest of the tests and make sure all tests pass, I want to make sure I'm moving into right direction first @athei @xermicus --------- Co-authored-by:
DavidK <davidk@parity.io> Co-authored-by:
Alexander Theißen <alex.theissen@me.com>
-
Shawn Tabrizi authored
Many problems can occur when building and testing a Parachain caused by misconfiguring the paraid. This can happen when there are 3 different places you need to update! This PR makes it so a SINGLE location is the source of truth for the ParaId.
-
Bastian Köcher authored
0.1.2 was yanked as it was breaking semver. --------- Co-authored-by: command-bot <>
-
Alexandru Gheorghe authored
Approval voting canonicalize is off by one that means if we are finalizing blocks one by one, approval-voting cleans it up every other block for example: - With 1, 2, 3, 4, 5, 6 blocks created, the stored range would be StoredBlockRange(1,7) - When block 3 is finalized the canonicalize works and StoredBlockRange is (4,7) - When block 4 is finalized the canonicalize exists early because of the `if range.0 > canon_number` break clause, so blocks are not cleaned up. - When block 5 is finalized the canonicalize works and StoredBlockRange becomes (6,7) and both block 4 and 5 are cleaned up. The consequences of this is that sometimes we keep block entries around after they are finalized, so at restart we consider this blocks and send them to approval-distribution. In most cases this is not a problem, but in the case when finality is lagging on restart approval-distribution will receive 4 as being the oldest block it needs to work on, and since BlockFinalized is never resent for block 4 after restart it won't get the opportunity to clean that up. Therefore it will end running approval-distribution aggression on block 4, because that is the oldest block it received from approval-voting for which it did not see a BlockFinalized signal. --------- Signed-off-by:
Alexandru Gheorghe <alexandru.gheorghe@parity.io>
-
Bastian Köcher authored
The `SlotBasedBlockImport` job is to collect the storage proofs of all blocks getting imported. These storage proofs alongside the block are being forwarded to the collation task. Right now they are just being thrown away. More logic will follow later. Basically this will be required to include multiple blocks into one `PoV` which will then be done by the collation task. --------- Co-authored-by:
Michal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com> Co-authored-by:
GitHub Action <action@github.com>
-
Dmitry Markin authored
Expose the Kademlia content providers API for the use by `sc-network` client code: 1. Extend the `NetworkDHTProvider` trait with functions to start/stop providing content and query the DHT for the list of content providers for a given key. 2. Extend the `DhtEvent` enum with events reporting the found providers or query failures. 3. Implement the above for libp2p & litep2p network backends. --------- Co-authored-by:
GitHub Action <action@github.com> Co-authored-by:
Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
-
Niklas Adolfsson authored
This PR changes that the server builder is created once and shared/cloned for each connection to avoid some extra overhead to construct this for each connection (as it was before). I don't know why I constructed a new builder for each connection because it's not needed but shouldn't make a big difference to my understanding. --------- Co-authored-by: command-bot <>
-
Cyrill Leutwiler authored
This PR adds an API method to query the contract call data input size. Part of #6770 --------- Signed-off-by:
Cyrill Leutwiler <bigcyrill@hotmail.com> Co-authored-by: command-bot <> Co-authored-by:
Alexander Theißen <alex.theissen@me.com>
-
Alexander Theißen authored
Starting with Rust 1.82 `PanicInfo` is deprecated and will throw warnings when used. The new type is available since Rust 1.81 and should be available on our CI. --------- Co-authored-by: command-bot <>
-