vet cargo docs on CI (#380)

Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
This commit is contained in:
xermicus
2025-09-29 13:39:09 +02:00
committed by GitHub
parent 713b7e5409
commit 1cc4f967b4
12 changed files with 28 additions and 16 deletions
+3
View File
@@ -15,3 +15,6 @@ rustflags = [
"-Clink-arg=-sSTACK_SIZE=128kb",
"-Clink-arg=-sNODEJS_CATCH_EXIT=0"
]
[build]
rustdocflags = ["-D", "warnings"]
+3
View File
@@ -57,3 +57,6 @@ jobs:
- name: Test cargo workspace
run: make test-workspace
- name: Test docs
run: make doc
+6 -2
View File
@@ -9,6 +9,7 @@
install-revive-explorer \
format \
clippy \
doc \
machete \
test \
test-integration \
@@ -52,11 +53,14 @@ format:
clippy:
cargo clippy --all-features --workspace --tests --benches -- --deny warnings
doc:
cargo doc --all-features --workspace --document-private-items --no-deps
machete:
cargo install cargo-machete
cargo machete
test: format clippy machete test-workspace install-revive-runner install-revive-explorer
test: format clippy machete test-workspace install-revive-runner install-revive-explorer doc
test-integration: install-bin
cargo test --package revive-integration
@@ -65,7 +69,7 @@ test-resolc: install
cargo test --package resolc
test-workspace: install
cargo test --workspace --exclude revive-llvm-builder
cargo test --workspace --exclude revive-llvm-builder --doc
test-wasm: install-wasm
npm run test:wasm
+2 -2
View File
@@ -3,8 +3,8 @@ use std::time::Duration;
/// Parse a go formatted duration.
///
/// Sources:
/// - https://crates.io/crates/go-parse-duration (fixed an utf8 bug)
/// - https://github.com/golang/go/blob/master/src/time/format.go
/// - <https://crates.io/crates/go-parse-duration> (fixed an utf8 bug)
/// - <https://github.com/golang/go/blob/master/src/time/format.go>
pub fn parse_go_duration(value: &str) -> Result<Duration, String> {
parse_duration(value).map(|ns| Duration::from_nanos(ns.unsigned_abs()))
}
+1 -1
View File
@@ -188,7 +188,7 @@ impl DwarfdumpAnalyzer {
}
}
/// Given a slice of u64 values, returns a Vec<u64> where each element
/// Given a slice of u64 values, returns a `Vec<u64>` where each element
/// is linearly scaled into the closed interval [1, 10].
fn scale_to(data: &[u64], scale_max: u64) -> Vec<u64> {
if data.is_empty() {
@@ -664,7 +664,7 @@ impl<'ctx> Context<'ctx> {
}
/// Builds an aligned stack allocation at the current position.
/// Use this if [`build_alloca_at_entry`] might change program semantics.
/// Use this if [`Self::build_alloca_at_entry`] might change program semantics.
/// Otherwise, alloca should always be built at the function prelude!
pub fn build_alloca<T: BasicType<'ctx> + Clone + Copy>(
&self,
+2 -2
View File
@@ -1,6 +1,6 @@
//! Experimental test runner for testing [pallet-revive](https://github.com/paritytech/polkadot-sdk/tree/master/substrate/frame/revive) contracts.
//! The crate exposes a single function [`run_tests`] that takes a [`Specs`] that defines in a declarative way:
//! - The Genesis configuration
//! The crate implements [`Specs`] that defines tests a declarative way:
//! - The Genesis configuration.
//! - A list of [`SpecsAction`] that will be executed in order.
//!
//! ## Example
+1 -1
View File
@@ -220,7 +220,7 @@ impl Default for Specs {
impl Specs {
/// Get the list of actions to perform
/// A default [`SpecAction::VerifyCall`] is injected after each Instantiate or Call action when
/// A default [`SpecsAction::VerifyCall`] is injected after each Instantiate or Call action when
/// missing and not in differential mode
pub fn actions(&self) -> Vec<SpecsAction> {
self.actions
+1 -1
View File
@@ -1,6 +1,6 @@
use inkwell::{builder::Builder, context::Context, module::Module, values::IntValue};
/// Creates a module that sets the PolkaVM minimum stack size to [`size`] if linked in.
/// Creates a module that sets the PolkaVM minimum stack size to `size` if linked in.
pub fn min_stack_size<'context>(
context: &'context Context,
module_name: &str,
+4 -3
View File
@@ -1,10 +1,11 @@
//! This crate vendors the [PolkaVM][0] C API and provides a LLVM module for interacting
//! with the `pallet-revive` runtime API.
//! At present, the contracts pallet requires blobs to export `call` and `deploy`,
//! and offers a bunch of [runtime API methods][1]. The provided [module] implements
//! and offers a bunch of [runtime API methods][1]. The provided implements
//! those exports and imports.
//! [0]: [https://crates.io/crates/polkavm]
//! [1]: [https://docs.rs/pallet-contracts/26.0.0/pallet_contracts/api_doc/index.html]
//!
//! [0]: [<https://crates.io/crates/polkavm>]
//! [1]: [<https://docs.rs/pallet-contracts/latest/pallet_contracts/api_doc/index.html>]
pub mod calling_convention;
pub mod immutable_data;
+3 -2
View File
@@ -1,7 +1,8 @@
//! This crate vendors EVM related standard library functionality and provides a LLVM module,
//! exporting the standard library functions.
//! The standard library code is inherited and adapted from [0].
//! [0]: [https://github.com/matter-labs/era-compiler-llvm/blob/v1.4.1/llvm/lib/Target/PolkaVM/polkavm-stdlib.ll]
//! The standard library code is inherited and adapted from [the era compiler][0].
//!
//! [0]: [<https://github.com/matter-labs/era-compiler-llvm/blob/v1.4.1/llvm/lib/Target/PolkaVM/polkavm-stdlib.ll>]
use inkwell::{context::Context, memory_buffer::MemoryBuffer, module::Module, support::LLVMString};
@@ -198,7 +198,7 @@ pub enum Name {
BlobHash,
/// difficulty of the current block
Difficulty,
/// https://eips.ethereum.org/EIPS/eip-4399
/// <https://eips.ethereum.org/EIPS/eip-4399>
Prevrandao,
/// current mining beneficiary
CoinBase,