diff --git a/.gitignore b/.gitignore index 5d44027bf..80dd0dd43 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +# secrets +**/.secret + ### Linux ### *~ diff --git a/.secret.template b/.secret.template new file mode 100644 index 000000000..072b7c4f2 --- /dev/null +++ b/.secret.template @@ -0,0 +1 @@ +GITHUB_TOKEN=Make One at https://github.com/settings/tokens only need public repo, read packages permissions diff --git a/docs/Earthfile b/docs/Earthfile index d53733110..308496b05 100644 --- a/docs/Earthfile +++ b/docs/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/docs:v3.1.24 AS docs-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/docs:v3.2.03 AS docs-ci IMPORT .. AS repo IMPORT ../hermes AS hermes diff --git a/hermes/Earthfile b/hermes/Earthfile index 5a8895895..1f5eea940 100644 --- a/hermes/Earthfile +++ b/hermes/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.1.24 AS rust-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.2.03 AS rust-ci # Use when debugging cat-ci locally. # IMPORT ../../catalyst-ci/earthly/rust AS rust-ci diff --git a/hermes/bin/src/app.rs b/hermes/bin/src/app.rs index 4dd558a27..fde4dbb0f 100644 --- a/hermes/bin/src/app.rs +++ b/hermes/bin/src/app.rs @@ -52,7 +52,6 @@ impl Application { } /// Get vfs - #[allow(dead_code)] pub(crate) fn vfs(&self) -> &Vfs { self.vfs.as_ref() } diff --git a/hermes/bin/src/hdf5/resources/builder.rs b/hermes/bin/src/hdf5/resources/builder.rs index bc14018e5..947062586 100644 --- a/hermes/bin/src/hdf5/resources/builder.rs +++ b/hermes/bin/src/hdf5/resources/builder.rs @@ -26,7 +26,9 @@ impl ResourceBuilder { /// Update current resource to make it relative to the given path. pub(crate) fn make_relative_to>(&mut self, to: P) { match self { - Self::Fs(fs) => { + Self::Fs(fs) => + { + #[allow(clippy::needless_borrows_for_generic_args)] if fs.is_relative() { *fs = to.as_ref().join(&fs); } diff --git a/hermes/bin/src/runtime_extensions/hermes/cron/event.rs b/hermes/bin/src/runtime_extensions/hermes/cron/event.rs index 741cc2f75..aa2a6ca76 100644 --- a/hermes/bin/src/runtime_extensions/hermes/cron/event.rs +++ b/hermes/bin/src/runtime_extensions/hermes/cron/event.rs @@ -169,7 +169,6 @@ mod tests { use super::*; #[test] - #[allow(clippy::assertions_on_constants)] fn test_cron_queue() { let start = NaiveDate::from_ymd_opt(1970, 1, 1) .unwrap() diff --git a/hermes/bin/src/runtime_extensions/hermes/cron/host.rs b/hermes/bin/src/runtime_extensions/hermes/cron/host.rs index a484f945f..6007242d6 100644 --- a/hermes/bin/src/runtime_extensions/hermes/cron/host.rs +++ b/hermes/bin/src/runtime_extensions/hermes/cron/host.rs @@ -79,10 +79,9 @@ impl Host for HermesRuntimeContext { /// ## Returns /// /// - A list of tuples containing the scheduled crontabs and their tags, along with - /// the current retrigger flag. - /// The list is sorted from most crontab that will trigger soonest to latest. - /// Crontabs are only listed once, in the case where a crontab may be scheduled - /// may times before a later one. + /// the current retrigger flag. The list is sorted from most crontab that will + /// trigger soonest to latest. Crontabs are only listed once, in the case where a + /// crontab may be scheduled may times before a later one. /// - `0` - `cron-tagged` - The Tagged crontab event. /// - `1` - `bool` - The state of the retrigger flag. fn ls(&mut self, tag: Option) -> wasmtime::Result> { @@ -130,8 +129,8 @@ impl Host for HermesRuntimeContext { /// If a particular component is out of its allowable range it will be silently /// clamped within the allowable range of each parameter. /// Redundant entries will be removed. - /// - For example specifying a `month` as `3` and `2-4` will - /// remove the individual month and only produce the range. + /// - For example specifying a `month` as `3` and `2-4` will remove the individual + /// month and only produce the range. fn mkcron( &mut self, dow: CronTime, month: CronTime, day: CronTime, hour: CronTime, minute: CronTime, ) -> wasmtime::Result { diff --git a/hermes/bin/src/runtime_extensions/hermes/cron/state.rs b/hermes/bin/src/runtime_extensions/hermes/cron/state.rs index 5ce1ed28f..5340e364a 100644 --- a/hermes/bin/src/runtime_extensions/hermes/cron/state.rs +++ b/hermes/bin/src/runtime_extensions/hermes/cron/state.rs @@ -139,10 +139,9 @@ impl InternalState { /// ## Returns /// /// - A list of tuples containing the scheduled crontabs and their tags, along with - /// the current retrigger flag. `Vec<(CronEventTag, bool)>` - /// The list is sorted from most crontab that will trigger soonest to latest. - /// Crontabs are only listed once, in the case where a crontab may be scheduled - /// may times before a later one. + /// the current retrigger flag. `Vec<(CronEventTag, bool)>` The list is sorted from + /// most crontab that will trigger soonest to latest. Crontabs are only listed once, + /// in the case where a crontab may be scheduled may times before a later one. fn ls_crontabs( &self, app_name: &ApplicationName, tag: Option, ) -> Vec<(CronTagged, bool)> { diff --git a/hermes/bin/src/runtime_extensions/hermes/crypto/bip32_ed25519.rs b/hermes/bin/src/runtime_extensions/hermes/crypto/bip32_ed25519.rs index 539b3375a..6399f37d6 100644 --- a/hermes/bin/src/runtime_extensions/hermes/crypto/bip32_ed25519.rs +++ b/hermes/bin/src/runtime_extensions/hermes/crypto/bip32_ed25519.rs @@ -63,10 +63,8 @@ pub(crate) fn check_signature( } /// Derive a new extended private key from the given extended private key. -/// - V2 derivation scheme is used as it is mention in -/// [SLIP-0023](https://github.com/satoshilabs/slips/blob/master/slip-0023.md). -/// - More information about child key derivation can be found in -/// [BIP32-Ed25519](https://input-output-hk.github.io/adrestia/static/Ed25519_BIP.pdf). +/// - V2 derivation scheme is used as it is mention in [SLIP-0023](https://github.com/satoshilabs/slips/blob/master/slip-0023.md). +/// - More information about child key derivation can be found in [BIP32-Ed25519](https://input-output-hk.github.io/adrestia/static/Ed25519_BIP.pdf). /// /// # Arguments /// diff --git a/hermes/bin/src/runtime_extensions/hermes/crypto/bip39.rs b/hermes/bin/src/runtime_extensions/hermes/crypto/bip39.rs index af17a006c..e31e28542 100644 --- a/hermes/bin/src/runtime_extensions/hermes/crypto/bip39.rs +++ b/hermes/bin/src/runtime_extensions/hermes/crypto/bip39.rs @@ -54,8 +54,8 @@ pub(crate) fn mnemonic_to_xprv(mnemonic: &str, passphrase: &str) -> Result) -> Result Result Value::Double(sqlite3_column_double(stmt_ptr, index)), SQLITE_INTEGER => { let int_value = sqlite3_column_int64(stmt_ptr, index); - if int_value >= i64::from(std::i32::MIN) && int_value <= i64::from(std::i32::MAX) { - let int_value = - i32::try_from(int_value).map_err(|_| Errno::ConvertingNumeric)?; - + if let Ok(int_value) = i32::try_from(int_value) { Value::Int32(int_value) } else { Value::Int64(int_value) diff --git a/hermes/bin/src/runtime_extensions/resource_manager.rs b/hermes/bin/src/runtime_extensions/resource_manager.rs index e4d49873e..a2639132b 100644 --- a/hermes/bin/src/runtime_extensions/resource_manager.rs +++ b/hermes/bin/src/runtime_extensions/resource_manager.rs @@ -12,7 +12,7 @@ use crate::app::ApplicationName; /// `ResourceStorage` struct. /// - `WitType` represents the type from the wit file definitions and which will appear in -/// the `wasmtime::component::Resource` object. +/// the `wasmtime::component::Resource` object. /// - `RustType` actually the type which is bound to the `WitType` and holds all the data /// needed for the `WitType`. pub(crate) struct ResourceStorage { @@ -96,7 +96,7 @@ where WitType: 'static /// `ApplicationResourceStorage` struct. /// - `WitType` represents the type from the wit file definitions and which will appear in -/// the `wasmtime::component::Resource` object. +/// the `wasmtime::component::Resource` object. /// - `RustType` actually the type which is bound to the `WitType` and holds all the data /// needed for the `WitType`. pub(crate) struct ApplicationResourceStorage { diff --git a/hermes/bin/src/runtime_extensions/wasi/filesystem/host.rs b/hermes/bin/src/runtime_extensions/wasi/filesystem/host.rs index 8c352eee5..112f05de1 100644 --- a/hermes/bin/src/runtime_extensions/wasi/filesystem/host.rs +++ b/hermes/bin/src/runtime_extensions/wasi/filesystem/host.rs @@ -496,12 +496,11 @@ impl filesystem::types::HostDescriptor for HermesRuntimeContext { /// /// Implementations are encouraged to provide the following properties: /// - /// - If the file is not modified or replaced, the computed hash value should - /// usually not change. - /// - If the object is modified or replaced, the computed hash value should - /// usually change. - /// - The inputs to the hash should not be easily computable from the - /// computed hash. + /// - If the file is not modified or replaced, the computed hash value should usually + /// not change. + /// - If the object is modified or replaced, the computed hash value should usually + /// change. + /// - The inputs to the hash should not be easily computable from the computed hash. /// /// However, none of these is required. fn metadata_hash( diff --git a/hermes/bin/src/runtime_extensions/wasi/io/streams/host.rs b/hermes/bin/src/runtime_extensions/wasi/io/streams/host.rs index 99ef34be6..b4253e299 100644 --- a/hermes/bin/src/runtime_extensions/wasi/io/streams/host.rs +++ b/hermes/bin/src/runtime_extensions/wasi/io/streams/host.rs @@ -226,8 +226,8 @@ impl HostOutputStream for HermesRuntimeContext { /// /// The behavior of splice is equivalent to: /// 1. calling `check-write` on the `output-stream` - /// 2. calling `read` on the `input-stream` with the smaller of the - /// `check-write` permitted length and the `len` provided to `splice` + /// 2. calling `read` on the `input-stream` with the smaller of the `check-write` + /// permitted length and the `len` provided to `splice` /// 3. calling `write` on the `output-stream` with that read data. /// /// Any error reported by the call to `check-write`, `read`, or diff --git a/hermes/crates/cardano-chain-follower/testbed/overhead_benchmark/README.md b/hermes/crates/cardano-chain-follower/testbed/overhead_benchmark/README.md index 00cacc1fd..55ca84035 100644 --- a/hermes/crates/cardano-chain-follower/testbed/overhead_benchmark/README.md +++ b/hermes/crates/cardano-chain-follower/testbed/overhead_benchmark/README.md @@ -11,7 +11,7 @@ It doesn't matter which network the snapshot is from because the benchmark will There are 2 modes in which the benchmark can be executed: | Benchmark name | Description | ----------------------------|--------------| +|--------------------------|--------------| | pallas | When executed with `--bench-name pallas`, the benchmark reads the Mithril snapshot from origin to its tip using only the `pallas` crate mechanisms | | cardano‑chain‑follower | When executed with `--bench-name cardano-chain-follower` it uses the `cardano-chain-follower` crate to follow the chain from origin to the tip of the specified snapshot | diff --git a/hermes/crates/hermes-ipfs/src/lib.rs b/hermes/crates/hermes-ipfs/src/lib.rs index 74fedd10e..fe8f46b63 100644 --- a/hermes/crates/hermes-ipfs/src/lib.rs +++ b/hermes/crates/hermes-ipfs/src/lib.rs @@ -210,8 +210,8 @@ impl HermesIpfs { /// List all pins in the IPFS node. /// /// ## Parameters - /// * `cid` - `Option` Optional content identifier to list pins. - /// If `None`, lists all pins. + /// * `cid` - `Option` Optional content identifier to list pins. If `None`, lists + /// all pins. /// /// ## Errors /// Returns an error if listing pins fails. diff --git a/hermes/deny.toml b/hermes/deny.toml index 921f1eb3c..26ec8794b 100644 --- a/hermes/deny.toml +++ b/hermes/deny.toml @@ -18,17 +18,21 @@ targets = [ version = 2 ignore = [ { id = "RUSTSEC-2020-0168", reason = "`mach` is used by wasmtime and we have no control over that." }, - { id = "RUSTSEC-2021-0145", reason = "we don't target windows, and don;t use a custom global allocator." }, + { id = "RUSTSEC-2021-0145", reason = "we don't target windows, and don't use a custom global allocator." }, + { id = "RUSTSEC-2024-0370", reason = "`proc-macro-error` is used by crates we rely on, we can't control what they use."}, ] [bans] multiple-versions = "warn" wildcards = 'deny' deny = [ - # { crate = "git2", use-instead = "gix" }, - { crate = "openssl", use-instead = "rustls" }, - { crate = "openssl-sys", use-instead = "rustls" }, + # Scylla DB Drivers currently require OpenSSL. Its unavoidable. + # However, there is movement to enable support for Rustls. + # So, for now, allow open-ssl but it needs to be disabled as soon as Scylla DB enables Rustls. + #{ crate = "openssl", use-instead = "rustls" }, + #{ crate = "openssl-sys", use-instead = "rustls" }, "libssh2-sys", + # { crate = "git2", use-instead = "gix" }, # { crate = "cmake", use-instead = "cc" }, # { crate = "windows", reason = "bloated and unnecessary", use-instead = "ideally inline bindings, practically, windows-sys" }, ] @@ -49,8 +53,9 @@ unknown-git = "deny" # List of URLs for allowed Git repositories allow-git = [ - "https://github.com/input-output-hk/hermes.git", + "https://github.com/input-output-hk/catalyst-libs.git", "https://github.com/input-output-hk/catalyst-pallas.git", + "https://github.com/input-output-hk/catalyst-mithril.git", "https://github.com/bytecodealliance/wasmtime", "https://github.com/aldanor/hdf5-rust", ] @@ -73,6 +78,7 @@ allow = [ "ISC", "Unicode-3.0", "MPL-2.0", + "Zlib", ] exceptions = [ #{ allow = ["Zlib"], crate = "tinyvec" }, diff --git a/hermes/rust-toolchain.toml b/hermes/rust-toolchain.toml index f0ad0a7e0..ff6c11e3f 100644 --- a/hermes/rust-toolchain.toml +++ b/hermes/rust-toolchain.toml @@ -1,4 +1,4 @@ [toolchain] -channel = "1.78" +channel = "1.80" profile = "default" targets = ["x86_64-unknown-linux-musl"] diff --git a/wasm/integration-test/cardano/Earthfile b/wasm/integration-test/cardano/Earthfile index abace6c90..858e61618 100644 --- a/wasm/integration-test/cardano/Earthfile +++ b/wasm/integration-test/cardano/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.1.24 AS rust-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.2.03 AS rust-ci # Use when debugging cat-ci locally. # IMPORT ../../catalyst-ci/earthly/rust AS rust-ci diff --git a/wasm/integration-test/cardano/rust-toolchain.toml b/wasm/integration-test/cardano/rust-toolchain.toml index 3820d414e..270039a93 100644 --- a/wasm/integration-test/cardano/rust-toolchain.toml +++ b/wasm/integration-test/cardano/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.78" +channel = "1.80" targets = ["wasm32-wasip1"] diff --git a/wasm/integration-test/clocks/Earthfile b/wasm/integration-test/clocks/Earthfile index 705d01599..f68197dec 100644 --- a/wasm/integration-test/clocks/Earthfile +++ b/wasm/integration-test/clocks/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.1.24 AS wasm-c-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.2.03 AS wasm-c-ci # Use when debugging cat-ci locally. # IMPORT ../../../catalyst-ci/earthly/wasm/c AS wasm-c-ci diff --git a/wasm/integration-test/cron/Earthfile b/wasm/integration-test/cron/Earthfile index 262ba5068..7d1b6ccf0 100644 --- a/wasm/integration-test/cron/Earthfile +++ b/wasm/integration-test/cron/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.1.24 AS wasm-c-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.2.03 AS wasm-c-ci # Use when debugging cat-ci locally. # IMPORT ../../../catalyst-ci/earthly/wasm/c AS wasm-c-ci diff --git a/wasm/integration-test/crypto/Earthfile b/wasm/integration-test/crypto/Earthfile index fd249580e..8a63a362e 100644 --- a/wasm/integration-test/crypto/Earthfile +++ b/wasm/integration-test/crypto/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.1.24 AS wasm-c-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.2.03 AS wasm-c-ci # Use when debugging cat-ci locally. # IMPORT ../../../catalyst-ci/earthly/wasm/c AS wasm-c-ci diff --git a/wasm/integration-test/golang/Earthfile b/wasm/integration-test/golang/Earthfile index 043979f12..155b66181 100644 --- a/wasm/integration-test/golang/Earthfile +++ b/wasm/integration-test/golang/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust/tools:v3.1.24 AS rust-tools +IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust/tools:v3.2.03 AS rust-tools IMPORT ../../wasi AS wasi IMPORT ../../wasi-hermes-component-adapter AS wasi-hermes-component-adapter diff --git a/wasm/integration-test/hashing/Earthfile b/wasm/integration-test/hashing/Earthfile index 0cce059fd..a80eb9b91 100644 --- a/wasm/integration-test/hashing/Earthfile +++ b/wasm/integration-test/hashing/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.1.24 AS wasm-c-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.2.03 AS wasm-c-ci # Use when debugging cat-ci locally. # IMPORT ../../../catalyst-ci/earthly/wasm/c AS wasm-c-ci diff --git a/wasm/integration-test/http_reply/Earthfile b/wasm/integration-test/http_reply/Earthfile index b3dfb76fe..9462f86f8 100644 --- a/wasm/integration-test/http_reply/Earthfile +++ b/wasm/integration-test/http_reply/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.1.8 AS rust-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.2.03 AS rust-ci # Use when debugging cat-ci locally. # IMPORT ../../catalyst-ci/earthly/rust AS rust-ci diff --git a/wasm/integration-test/http_reply/rust-toolchain.toml b/wasm/integration-test/http_reply/rust-toolchain.toml index dcb74252a..e3f2aeb57 100644 --- a/wasm/integration-test/http_reply/rust-toolchain.toml +++ b/wasm/integration-test/http_reply/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.78" +channel = "1.80" targets = ["wasm32-unknown-unknown"] diff --git a/wasm/integration-test/ipfs/Earthfile b/wasm/integration-test/ipfs/Earthfile index 486806d9e..9477d535a 100644 --- a/wasm/integration-test/ipfs/Earthfile +++ b/wasm/integration-test/ipfs/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.1.24 AS rust-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.2.03 AS rust-ci # Use when debugging cat-ci locally. # IMPORT ../../catalyst-ci/earthly/rust AS rust-ci diff --git a/wasm/integration-test/ipfs/rust-toolchain.toml b/wasm/integration-test/ipfs/rust-toolchain.toml index dcb74252a..e3f2aeb57 100644 --- a/wasm/integration-test/ipfs/rust-toolchain.toml +++ b/wasm/integration-test/ipfs/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.78" +channel = "1.80" targets = ["wasm32-unknown-unknown"] diff --git a/wasm/integration-test/localtime/Earthfile b/wasm/integration-test/localtime/Earthfile index 2c0792209..242f80122 100644 --- a/wasm/integration-test/localtime/Earthfile +++ b/wasm/integration-test/localtime/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.1.24 AS wasm-c-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.2.03 AS wasm-c-ci # Use when debugging cat-ci locally. # IMPORT ../../../catalyst-ci/earthly/wasm/c AS wasm-c-ci diff --git a/wasm/integration-test/logger/Earthfile b/wasm/integration-test/logger/Earthfile index 28c79e02b..add3dbd4a 100644 --- a/wasm/integration-test/logger/Earthfile +++ b/wasm/integration-test/logger/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.1.24 AS wasm-c-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.2.03 AS wasm-c-ci # Use when debugging cat-ci locally. # IMPORT ../../../catalyst-ci/earthly/wasm/c AS wasm-c-ci diff --git a/wasm/integration-test/smoke-test/Earthfile b/wasm/integration-test/smoke-test/Earthfile index 8359005c4..8f591aab3 100644 --- a/wasm/integration-test/smoke-test/Earthfile +++ b/wasm/integration-test/smoke-test/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.1.24 AS wasm-c-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.2.03 AS wasm-c-ci # Use when debugging cat-ci locally. # IMPORT ../../../catalyst-ci/earthly/wasm/c AS wasm-c-ci diff --git a/wasm/integration-test/sqlite/Earthfile b/wasm/integration-test/sqlite/Earthfile index 8e3521321..3f2622716 100644 --- a/wasm/integration-test/sqlite/Earthfile +++ b/wasm/integration-test/sqlite/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.1.24 AS rust-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.2.03 AS rust-ci # Use when debugging cat-ci locally. # IMPORT ../../catalyst-ci/earthly/rust AS rust-ci diff --git a/wasm/integration-test/sqlite/rust-toolchain.toml b/wasm/integration-test/sqlite/rust-toolchain.toml index 3820d414e..270039a93 100644 --- a/wasm/integration-test/sqlite/rust-toolchain.toml +++ b/wasm/integration-test/sqlite/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.78" +channel = "1.80" targets = ["wasm32-wasip1"] diff --git a/wasm/integration-test/wasi-filesystem/Earthfile b/wasm/integration-test/wasi-filesystem/Earthfile index 0597c4d3d..e76909d30 100644 --- a/wasm/integration-test/wasi-filesystem/Earthfile +++ b/wasm/integration-test/wasi-filesystem/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.1.8 AS rust-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.2.03 AS rust-ci # Use when debugging cat-ci locally. # IMPORT ../../catalyst-ci/earthly/rust AS rust-ci diff --git a/wasm/stub-module/Earthfile b/wasm/stub-module/Earthfile index 627488a9e..4117b870e 100644 --- a/wasm/stub-module/Earthfile +++ b/wasm/stub-module/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.1.24 AS wasm-c-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/wasm/c:v3.2.03 AS wasm-c-ci # Use when debugging cat-ci locally. # IMPORT ../../../catalyst-ci/earthly/wasm/c AS wasm-c-ci diff --git a/wasm/wasi-hermes-component-adapter/Earthfile b/wasm/wasi-hermes-component-adapter/Earthfile index 0ee6e82c3..65a8d75f9 100644 --- a/wasm/wasi-hermes-component-adapter/Earthfile +++ b/wasm/wasi-hermes-component-adapter/Earthfile @@ -1,6 +1,6 @@ VERSION 0.8 -IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.1.24 AS rust-ci +IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.2.03 AS rust-ci # Use when debugging cat-ci locally. # IMPORT ../../catalyst-ci/earthly/rust AS rust-ci diff --git a/wasm/wasi-hermes-component-adapter/deny.toml b/wasm/wasi-hermes-component-adapter/deny.toml index 921f1eb3c..26ec8794b 100644 --- a/wasm/wasi-hermes-component-adapter/deny.toml +++ b/wasm/wasi-hermes-component-adapter/deny.toml @@ -18,17 +18,21 @@ targets = [ version = 2 ignore = [ { id = "RUSTSEC-2020-0168", reason = "`mach` is used by wasmtime and we have no control over that." }, - { id = "RUSTSEC-2021-0145", reason = "we don't target windows, and don;t use a custom global allocator." }, + { id = "RUSTSEC-2021-0145", reason = "we don't target windows, and don't use a custom global allocator." }, + { id = "RUSTSEC-2024-0370", reason = "`proc-macro-error` is used by crates we rely on, we can't control what they use."}, ] [bans] multiple-versions = "warn" wildcards = 'deny' deny = [ - # { crate = "git2", use-instead = "gix" }, - { crate = "openssl", use-instead = "rustls" }, - { crate = "openssl-sys", use-instead = "rustls" }, + # Scylla DB Drivers currently require OpenSSL. Its unavoidable. + # However, there is movement to enable support for Rustls. + # So, for now, allow open-ssl but it needs to be disabled as soon as Scylla DB enables Rustls. + #{ crate = "openssl", use-instead = "rustls" }, + #{ crate = "openssl-sys", use-instead = "rustls" }, "libssh2-sys", + # { crate = "git2", use-instead = "gix" }, # { crate = "cmake", use-instead = "cc" }, # { crate = "windows", reason = "bloated and unnecessary", use-instead = "ideally inline bindings, practically, windows-sys" }, ] @@ -49,8 +53,9 @@ unknown-git = "deny" # List of URLs for allowed Git repositories allow-git = [ - "https://github.com/input-output-hk/hermes.git", + "https://github.com/input-output-hk/catalyst-libs.git", "https://github.com/input-output-hk/catalyst-pallas.git", + "https://github.com/input-output-hk/catalyst-mithril.git", "https://github.com/bytecodealliance/wasmtime", "https://github.com/aldanor/hdf5-rust", ] @@ -73,6 +78,7 @@ allow = [ "ISC", "Unicode-3.0", "MPL-2.0", + "Zlib", ] exceptions = [ #{ allow = ["Zlib"], crate = "tinyvec" }, diff --git a/wasm/wasi-hermes-component-adapter/rust-toolchain.toml b/wasm/wasi-hermes-component-adapter/rust-toolchain.toml index 1170a92c3..7f02acd2c 100644 --- a/wasm/wasi-hermes-component-adapter/rust-toolchain.toml +++ b/wasm/wasi-hermes-component-adapter/rust-toolchain.toml @@ -1,4 +1,4 @@ [toolchain] -channel = "1.78" +channel = "1.80" profile = "default" targets = ["wasm32-unknown-unknown"] diff --git a/wasm/wasi-hermes-component-adapter/src/lib.rs b/wasm/wasi-hermes-component-adapter/src/lib.rs index 9e5461043..7e324a094 100644 --- a/wasm/wasi-hermes-component-adapter/src/lib.rs +++ b/wasm/wasi-hermes-component-adapter/src/lib.rs @@ -2544,7 +2544,7 @@ pub struct StrTupleList { #[derive(Copy, Clone)] #[repr(C)] -#[allow(missing_docs)] +#[allow(dead_code, missing_docs)] #[allow(clippy::missing_docs_in_private_items)] pub struct ReadyList { base: *const u32, diff --git a/wasm/wasi/Earthfile b/wasm/wasi/Earthfile index aac7cad30..2cf53103a 100644 --- a/wasm/wasi/Earthfile +++ b/wasm/wasi/Earthfile @@ -76,7 +76,7 @@ build: build-rust-bindings: FROM wasi-hermes-component-adapter+builder - RUN wit-bindgen rust -w hermes:wasi/hermes ../wasi/wit + RUN wit-bindgen rust --generate-all -w hermes:wasi/hermes ../wasi/wit SAVE ARTIFACT hermes.rs