From 782c0fb8ad0df1fb76e5b37e8c82760e200cb32b Mon Sep 17 00:00:00 2001 From: Ori Ziv Date: Mon, 17 Feb 2025 16:50:54 +0200 Subject: [PATCH] Deprecated direct usages of `core::starknet` or `crate::starknet`. commit-id:3b4d7a14 --- corelib/src/keccak.cairo | 2 +- corelib/src/lib.cairo | 2 ++ corelib/src/prelude/v2023_01.cairo | 9 +++-- corelib/src/prelude/v2023_10.cairo | 7 ++-- corelib/src/prelude/v2024_07.cairo | 7 ++-- corelib/src/sha256.cairo | 2 +- corelib/src/starknet/account.cairo | 4 +-- corelib/src/starknet/class_hash.cairo | 4 +-- corelib/src/starknet/contract_address.cairo | 4 +-- corelib/src/starknet/eth_signature.cairo | 18 +++++----- corelib/src/starknet/info.cairo | 16 ++++----- corelib/src/starknet/secp256_trait.cairo | 36 +++++++++---------- corelib/src/starknet/storage.cairo | 18 +++++----- corelib/src/starknet/storage/map.cairo | 18 +++++----- corelib/src/starknet/storage/vec.cairo | 26 +++++++------- corelib/src/starknet/storage_access.cairo | 8 ++--- corelib/src/starknet/syscalls.cairo | 4 +-- .../src/expr/semantic_test_data/use | 1 + .../component_usage_test.cairo | 2 +- .../cairo_level_tests/flat_storage_test.cairo | 2 +- .../renamed_storage_test.cairo | 2 +- .../src/test_data/storage_path_check | 6 ++-- tests/bug_samples/issue5764.cairo | 2 +- 23 files changed, 106 insertions(+), 94 deletions(-) diff --git a/corelib/src/keccak.cairo b/corelib/src/keccak.cairo index 9c1fc53f2df..d9cf5d21ee4 100644 --- a/corelib/src/keccak.cairo +++ b/corelib/src/keccak.cairo @@ -25,9 +25,9 @@ //! 0x85c9aab73219c1e95c5b5966a4ecc8db4418c3500072a830cfb5a2d13d2c2249); //! ``` +use starknet::SyscallResultTrait; use crate::array::{ArrayTrait, Span, SpanTrait}; use crate::option::OptionTrait; -use crate::starknet::SyscallResultTrait; use crate::traits::TryInto; const KECCAK_FULL_RATE_IN_BYTES: usize = 136; diff --git a/corelib/src/lib.cairo b/corelib/src/lib.cairo index e1cd51a45f4..6ac67e3983a 100644 --- a/corelib/src/lib.cairo +++ b/corelib/src/lib.cairo @@ -383,8 +383,10 @@ pub mod debug; pub mod fmt; #[feature("corelib-internal-use")] +#[deprecated(feature: "corelib-internal-use", note: "Use `starknet` directly")] pub mod starknet; #[allow(unused_imports)] +#[feature("corelib-internal-use")] use starknet::System; pub mod internal; diff --git a/corelib/src/prelude/v2023_01.cairo b/corelib/src/prelude/v2023_01.cairo index 5048bf4d693..59b3f142bd6 100644 --- a/corelib/src/prelude/v2023_01.cairo +++ b/corelib/src/prelude/v2023_01.cairo @@ -32,7 +32,6 @@ use crate::poseidon::Poseidon; use crate::result::Result::{Err, Ok}; use crate::result::{Result, ResultTrait}; use crate::serde::Serde; -use crate::starknet::System; use crate::string::StringLiteral; use crate::traits::{ Add, BitAnd, BitNot, BitOr, BitXor, Copy, Default, Destruct, Div, DivRem, Drop, @@ -49,10 +48,14 @@ use crate::{ bool_not_impl, bool_or_impl, bool_to_felt252, bool_xor_impl, box, byte_array, bytes_31, clone, cmp, debug, dict, drop, dup, ec, ecdsa, felt252, felt252_add, felt252_const, felt252_div, felt252_is_zero, felt252_mul, felt252_sub, gas, hash, integer, internal, keccak, math, never, - nullable, option, panic_with_felt252, panics, pedersen, poseidon, result, serde, starknet, - string, testing, to_byte_array, traits, usize, zeroable, + nullable, option, panic_with_felt252, panics, pedersen, poseidon, result, serde, string, + testing, to_byte_array, traits, usize, zeroable, }; #[feature("corelib-internal-use")] +use crate::starknet::System; +#[feature("corelib-internal-use")] +use crate::starknet; +#[feature("corelib-internal-use")] #[deprecated(feature: "corelib-internal-use", note: "Use `core::num::traits::Sqrt` instead")] use crate::integer::{u128_sqrt, u256_sqrt}; #[cfg(test)] diff --git a/corelib/src/prelude/v2023_10.cairo b/corelib/src/prelude/v2023_10.cairo index 76c476aec8e..c8a905620e3 100644 --- a/corelib/src/prelude/v2023_10.cairo +++ b/corelib/src/prelude/v2023_10.cairo @@ -20,7 +20,6 @@ pub use crate::poseidon::Poseidon; pub use crate::result::Result::{Err, Ok}; pub use crate::result::{Result, ResultTrait}; pub use crate::serde::Serde; -pub use crate::starknet::System; pub use crate::traits::{ Add, BitAnd, BitNot, BitOr, BitXor, Copy, Default, Destruct, Div, DivRem, Drop, Felt252DictValue, Into, Mul, Neg, Not, PanicDestruct, PartialEq, PartialOrd, Rem, Sub, TryInto, @@ -28,8 +27,12 @@ pub use crate::traits::{ pub use crate::iter::{FromIterator, IntoIterator, Iterator}; pub use crate::zeroable::NonZero; pub use crate::{ - RangeCheck, SegmentArena, assert, bool, felt252, keccak, math, starknet, to_byte_array, usize, + RangeCheck, SegmentArena, assert, bool, felt252, keccak, math, to_byte_array, usize, }; +#[feature("corelib-internal-use")] +pub use crate::starknet::System; +#[feature("corelib-internal-use")] +pub use crate::starknet; #[deprecated( feature: "deprecated-op-assign-traits", note: "Use `core::ops::AddAssign`.", since: "2.7.0", )] diff --git a/corelib/src/prelude/v2024_07.cairo b/corelib/src/prelude/v2024_07.cairo index 715b0ce1ebb..2d2b79a553d 100644 --- a/corelib/src/prelude/v2024_07.cairo +++ b/corelib/src/prelude/v2024_07.cairo @@ -13,12 +13,15 @@ pub use crate::panics::{Panic, PanicResult, panic}; pub use crate::result::Result::{Err, Ok}; pub use crate::result::{Result, ResultTrait}; pub use crate::serde::Serde; -pub use crate::starknet::System; pub use crate::traits::{ Add, Copy, Default, Destruct, Div, DivRem, Drop, Felt252DictValue, Into, Mul, Neg, Not, PanicDestruct, PartialEq, PartialOrd, Rem, Sub, TryInto, }; pub use crate::iter::{FromIterator, IntoIterator, Iterator}; -pub use crate::{assert, bool, felt252, starknet, usize}; +pub use crate::{assert, bool, felt252, usize}; +#[feature("corelib-internal-use")] +pub use crate::starknet::System; +#[feature("corelib-internal-use")] +pub use crate::starknet; pub use crate::zeroable::NonZero; diff --git a/corelib/src/sha256.cairo b/corelib/src/sha256.cairo index 65b5d740ce1..e6ebf70da69 100644 --- a/corelib/src/sha256.cairo +++ b/corelib/src/sha256.cairo @@ -13,7 +13,7 @@ //! assert!(hash == [0x185f8db3, 0x2271fe25, 0xf561a6fc, 0x938b2e26, 0x4306ec30, 0x4eda5180, //! 0x7d17648, 0x26381969]); //! ``` -use crate::starknet::SyscallResultTrait; +use starknet::SyscallResultTrait; /// A handle to the state of a SHA-256 hash. #[derive(Copy, Drop)] diff --git a/corelib/src/starknet/account.cairo b/corelib/src/starknet/account.cairo index 71bb4f39776..f16fc257990 100644 --- a/corelib/src/starknet/account.cairo +++ b/corelib/src/starknet/account.cairo @@ -35,13 +35,13 @@ pub struct Call { pub trait AccountContract { /// An entry point that is called to check if the account is willing to pay for the declaration /// of the class with the given hash. - /// The entry point should return `core::starknet::VALIDATED` if the account is willing to pay + /// The entry point should return `starknet::VALIDATED` if the account is willing to pay /// for the declaration. fn __validate_declare__(self: @TContractState, class_hash: felt252) -> felt252; /// An entry point that is called to check if the account is willing to pay for /// executing a given set of calls. - /// The entry point should return `core::starknet::VALIDATED` if the account is willing to pay + /// The entry point should return `starknet::VALIDATED` if the account is willing to pay /// for the execution, in which case `__execute__` will be called on the same set of calls. fn __validate__(ref self: TContractState, calls: Array) -> felt252; diff --git a/corelib/src/starknet/class_hash.cairo b/corelib/src/starknet/class_hash.cairo index 1696544e539..b33200df851 100644 --- a/corelib/src/starknet/class_hash.cairo +++ b/corelib/src/starknet/class_hash.cairo @@ -8,7 +8,7 @@ //! # Examples //! //! ``` -//! use core::starknet::class_hash::class_hash_const; +//! use starknet::class_hash::class_hash_const; //! //! let hash = class_hash_const::<0x123>(); //! let hash = 0x123.try_into().unwrap(); @@ -29,7 +29,7 @@ pub extern type ClassHash; /// # Examples /// /// ``` -/// use core::starknet::class_hash::class_hash_const; +/// use starknet::class_hash::class_hash_const; /// /// let class_hash = class_hash_const::<0x123>(); /// ``` diff --git a/corelib/src/starknet/contract_address.cairo b/corelib/src/starknet/contract_address.cairo index 1b7deafc94a..7d2ca62e72a 100644 --- a/corelib/src/starknet/contract_address.cairo +++ b/corelib/src/starknet/contract_address.cairo @@ -8,7 +8,7 @@ //! # Examples //! //! ``` -//! use core::starknet::contract_address::contract_address_const; +//! use starknet::contract_address::contract_address_const; //! //! let contract_address = contract_address_const::<0x0>(); //! ``` @@ -30,7 +30,7 @@ pub extern type ContractAddress; /// # Examples /// /// ``` -/// use core::starknet::contract_address::contract_address_const; +/// use starknet::contract_address::contract_address_const; /// /// let contract_address = contract_address_const::<0x0>(); /// ``` diff --git a/corelib/src/starknet/eth_signature.cairo b/corelib/src/starknet/eth_signature.cairo index 34f1cdcf41a..1e16fe6c184 100644 --- a/corelib/src/starknet/eth_signature.cairo +++ b/corelib/src/starknet/eth_signature.cairo @@ -34,9 +34,9 @@ use starknet::{EthAddress, SyscallResult, SyscallResultTrait}; /// # Examples /// /// ``` -/// use core::starknet::eth_address::EthAddress; -/// use core::starknet::eth_signature::verify_eth_signature; -/// use core::starknet::secp256_trait::Signature; +/// use starknet::eth_address::EthAddress; +/// use starknet::eth_signature::verify_eth_signature; +/// use starknet::secp256_trait::Signature; /// /// let msg_hash = 0xe888fbb4cf9ae6254f19ba12e6d9af54788f195a6f509ca3e934f78d7a71dd85; /// let r = 0x4c8e4fbc1fbb1dece52185e532812c4f7a5f81cf3ee10044320a0d03b62d3e9a; @@ -73,9 +73,9 @@ pub fn verify_eth_signature(msg_hash: u256, signature: Signature, eth_address: E /// # Examples /// /// ``` -/// use core::starknet::eth_address::EthAddress; -/// use core::starknet::eth_signature::is_eth_signature_valid; -/// use core::starknet::secp256_trait::Signature; +/// use starknet::eth_address::EthAddress; +/// use starknet::eth_signature::is_eth_signature_valid; +/// use starknet::secp256_trait::Signature; /// /// let msg_hash = 0xe888fbb4cf9ae6254f19ba12e6d9af54788f195a6f509ca3e934f78d7a71dd85; /// let r = 0x4c8e4fbc1fbb1dece52185e532812c4f7a5f81cf3ee10044320a0d03b62d3e9a; @@ -120,9 +120,9 @@ pub fn is_eth_signature_valid( /// # Examples /// /// ``` -/// use core::starknet::eth_signature::public_key_point_to_eth_address; -/// use core::starknet::secp256k1::Secp256k1Point; -/// use core::starknet::secp256_trait::Secp256Trait; +/// use starknet::eth_signature::public_key_point_to_eth_address; +/// use starknet::secp256k1::Secp256k1Point; +/// use starknet::secp256_trait::Secp256Trait; /// /// let public_key: Secp256k1Point = Secp256Trait::secp256_ec_get_point_from_x_syscall( /// 0xa9a02d48081294b9bb0d8740d70d3607feb20876964d432846d9b9100b91eefd, false, diff --git a/corelib/src/starknet/info.cairo b/corelib/src/starknet/info.cairo index 8ba67b81872..11893ee8807 100644 --- a/corelib/src/starknet/info.cairo +++ b/corelib/src/starknet/info.cairo @@ -7,7 +7,7 @@ //! # Examples //! //! ``` -//! use core::starknet::{get_block_info, get_caller_address, get_contract_address}; +//! use starknet::{get_block_info, get_caller_address, get_contract_address}; //! //! // Get block information //! let block_info = get_block_info().unbox(); @@ -83,7 +83,7 @@ pub struct TxInfo { /// # Examples /// /// ``` -/// use core::starknet::get_execution_info; +/// use starknet::get_execution_info; /// /// let execution_info = get_execution_info().unbox(); /// @@ -101,7 +101,7 @@ pub fn get_execution_info() -> Box { /// # Examples /// /// ``` -/// use core::starknet::get_caller_address; +/// use starknet::get_caller_address; /// /// let caller = get_caller_address(); /// ``` @@ -114,7 +114,7 @@ pub fn get_caller_address() -> ContractAddress { /// # Examples /// /// ``` -/// use core::starknet::get_contract_address; +/// use starknet::get_contract_address; /// /// let contract_address = get_contract_address(); /// ``` @@ -127,7 +127,7 @@ pub fn get_contract_address() -> ContractAddress { /// # Examples /// /// ``` -/// use core::starknet::get_block_info; +/// use starknet::get_block_info; /// /// let block_info = get_block_info().unbox(); /// @@ -144,7 +144,7 @@ pub fn get_block_info() -> Box { /// # Examples /// /// ``` -/// use core::starknet::get_tx_info; +/// use starknet::get_tx_info; /// /// let tx_info = get_tx_info().unbox(); /// @@ -165,7 +165,7 @@ pub fn get_tx_info() -> Box { /// # Examples /// /// ``` -/// use core::starknet::get_block_timestamp; +/// use starknet::get_block_timestamp; /// /// let block_timestamp = get_block_timestamp(); /// ``` @@ -178,7 +178,7 @@ pub fn get_block_timestamp() -> u64 { /// # Examples /// /// ``` -/// use core::starknet::get_block_number; +/// use starknet::get_block_number; /// /// let block_number = get_block_number(); /// ``` diff --git a/corelib/src/starknet/secp256_trait.cairo b/corelib/src/starknet/secp256_trait.cairo index eb986db6e3d..fb430ebf0fb 100644 --- a/corelib/src/starknet/secp256_trait.cairo +++ b/corelib/src/starknet/secp256_trait.cairo @@ -7,9 +7,9 @@ //! # Examples //! //! ``` -//! use core::starknet::SyscallResultTrait; -/// use core::starknet::secp256r1::Secp256r1Point; -/// use core::starknet::secp256_trait::{Secp256Trait, Signature, is_signature_entry_valid, +//! use starknet::SyscallResultTrait; +/// use starknet::secp256r1::Secp256r1Point; +/// use starknet::secp256_trait::{Secp256Trait, Signature, is_signature_entry_valid, /// is_valid_signature, recover_public_key}; /// /// assert!( @@ -86,7 +86,7 @@ impl SignatureStorePacking of starknet::StorePacking Signature { /// # Examples /// /// ``` -/// use core::starknet::secp256k1::Secp256k1Point; -/// use core::starknet::secp256_trait::Secp256Trait; -/// use core::starknet::SyscallResultTrait; +/// use starknet::secp256k1::Secp256k1Point; +/// use starknet::secp256_trait::Secp256Trait; +/// use starknet::SyscallResultTrait; /// /// assert!( /// Secp256Trait::< @@ -171,10 +171,10 @@ pub trait Secp256Trait { /// # Examples /// /// ``` -/// use core::starknet::SyscallResultTrait; -/// use core::starknet::secp256k1::Secp256k1Point; -/// use core::starknet::secp256_trait::Secp256PointTrait; -/// use core::starknet::secp256_trait::Secp256Trait; +/// use starknet::SyscallResultTrait; +/// use starknet::secp256k1::Secp256k1Point; +/// use starknet::secp256_trait::Secp256PointTrait; +/// use starknet::secp256_trait::Secp256Trait; /// /// let generator = Secp256Trait::::get_generator_point(); /// @@ -220,8 +220,8 @@ pub trait Secp256PointTrait { /// # Examples /// /// ``` -/// use core::starknet::secp256r1::Secp256r1Point; -/// use core::starknet::secp256_trait::is_signature_entry_valid; +/// use starknet::secp256r1::Secp256r1Point; +/// use starknet::secp256_trait::is_signature_entry_valid; /// /// assert!(!is_signature_entry_valid::(0)); /// ``` @@ -238,9 +238,9 @@ pub fn is_signature_entry_valid< /// # Examples /// /// ``` -/// use core::starknet::SyscallResultTrait; -/// use core::starknet::secp256r1::Secp256r1Point; -/// use core::starknet::secp256_trait::{Secp256Trait, is_valid_signature}; +/// use starknet::SyscallResultTrait; +/// use starknet::secp256r1::Secp256r1Point; +/// use starknet::secp256_trait::{Secp256Trait, is_valid_signature}; /// /// let msg_hash = 0x4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4d; /// let r = 0xa73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac; @@ -288,8 +288,8 @@ pub fn is_valid_signature< /// # Examples /// /// ``` -/// use core::starknet::secp256r1::Secp256r1Point; -/// use core::starknet::secp256_trait::{Signature, recover_public_key}; +/// use starknet::secp256r1::Secp256r1Point; +/// use starknet::secp256_trait::{Signature, recover_public_key}; /// /// let msg_hash = 0x4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4d; /// diff --git a/corelib/src/starknet/storage.cairo b/corelib/src/starknet/storage.cairo index 4a8f7b2cf45..98261bb4292 100644 --- a/corelib/src/starknet/storage.cairo +++ b/corelib/src/starknet/storage.cairo @@ -6,8 +6,8 @@ //! [`StoragePointerWriteAccess`] traits, along with useful storage-only collection types like //! [`Vec`] and [`Map`]. //! -//! [`Vec`]: crate::starknet::storage::vec::Vec -//! [`Map`]: crate::starknet::storage::map::Map +//! [`Vec`]: starknet::storage::vec::Vec +//! [`Map`]: starknet::storage::map::Map //! //! # Overview //! @@ -54,11 +54,11 @@ //! with the `StoragePointer` traits to read and write in these entries. //! - [`VecTrait`] and [`MutableVecTrait`] allow for interacting with storage [`Vec`]s. //! -//! [`VecTrait`]: crate::starknet::storage::vec::VecTrait -//! [`MutableVecTrait`]: crate::starknet::storage::vec::MutableVecTrait -//! [`StorageMapReadAccess`]: crate::starknet::storage::map::StorageMapReadAccess -//! [`StorageMapWriteAccess`]: crate::starknet::storage::map::StorageMapWriteAccess -//! [`StoragePathEntry`]: crate::starknet::storage::map::StoragePathEntry +//! [`VecTrait`]: starknet::storage::vec::VecTrait +//! [`MutableVecTrait`]: starknet::storage::vec::MutableVecTrait +//! [`StorageMapReadAccess`]: starknet::storage::map::StorageMapReadAccess +//! [`StorageMapWriteAccess`]: starknet::storage::map::StorageMapWriteAccess +//! [`StoragePathEntry`]: starknet::storage::map::StoragePathEntry //! //! ## Examples //! @@ -215,7 +215,7 @@ pub trait StorageAsPointer { /// # Examples /// //! ``` -//! use core::starknet::storage::StoragePointerReadAccess; +//! use starknet::storage::StoragePointerReadAccess; //! //! #[storage] //! struct Storage { @@ -236,7 +236,7 @@ pub trait StoragePointerReadAccess { /// # Examples /// //! ``` -//! use core::starknet::storage::StoragePointerWriteAccess; +//! use starknet::storage::StoragePointerWriteAccess; //! //! #[storage] //! struct Storage { diff --git a/corelib/src/starknet/storage/map.cairo b/corelib/src/starknet/storage/map.cairo index 56ca6f383f2..361a72a2610 100644 --- a/corelib/src/starknet/storage/map.cairo +++ b/corelib/src/starknet/storage/map.cairo @@ -61,8 +61,8 @@ //! Basic usage with a single mapping: //! //! ``` -//! use core::starknet::ContractAddress; -//! use core::starknet::storage::{Map, StorageMapReadAccess, StoragePathEntry, +//! use starknet::ContractAddress; +//! use starknet::storage::{Map, StorageMapReadAccess, StoragePathEntry, //! StoragePointerReadAccess}; //! //! #[storage] @@ -101,8 +101,8 @@ use super::{ /// # Examples /// /// ``` -/// use core::starknet::ContractAddress; -/// use core::starknet::storage::{Map, StorageMapReadAccess, StoragePathEntry}; +/// use starknet::ContractAddress; +/// use starknet::storage::{Map, StorageMapReadAccess, StoragePathEntry}; /// /// #[storage] /// struct Storage { @@ -130,8 +130,8 @@ pub trait StorageMapReadAccess { /// # Examples /// /// ``` -/// use core::starknet::ContractAddress; -/// use core::starknet::storage::{Map, StorageMapWriteAccess, StoragePathEntry}; +/// use starknet::ContractAddress; +/// use starknet::storage::{Map, StorageMapWriteAccess, StoragePathEntry}; /// /// #[storage] /// struct Storage { @@ -161,8 +161,8 @@ pub trait StorageMapWriteAccess { /// # Examples /// /// ``` -/// use core::starknet::ContractAddress; -/// use core::starknet::storage::{Map, StoragePathEntry}; +/// use starknet::ContractAddress; +/// use starknet::storage::{Map, StoragePathEntry}; /// /// #[storage] /// struct Storage { @@ -332,7 +332,7 @@ impl PathableStorageEntryImpl< /// - The `key` type implements `core::hash::Hash`, which allows it to be used in storage mappings. /// - The `value` type implements `ValidStorageTypeTrait`, meaning it is itself a valid storage /// type. -use crate::starknet::storage::ValidStorageTypeTrait; +use starknet::storage::ValidStorageTypeTrait; impl ValidStorageTypeTraitMapImpl< Key, Value, +core::hash::Hash, +ValidStorageTypeTrait, > of ValidStorageTypeTrait>; diff --git a/corelib/src/starknet/storage/vec.cairo b/corelib/src/starknet/storage/vec.cairo index 8945f5cea71..f32608d52c5 100644 --- a/corelib/src/starknet/storage/vec.cairo +++ b/corelib/src/starknet/storage/vec.cairo @@ -42,7 +42,7 @@ //! Basic usage: //! //! ``` -//! use core::starknet::storage::{Vec, VecTrait, MutableVecTrait, StoragePointerReadAccess, +//! use starknet::storage::{Vec, VecTrait, MutableVecTrait, StoragePointerReadAccess, //! StoragePointerWriteAccess}; //! //! #[storage] @@ -65,7 +65,7 @@ //! Loading the numbers into a memory array: //! //! ``` -//! use core::starknet::storage::{Vec, VecTrait, StoragePointerReadAccess}; +//! use starknet::storage::{Vec, VecTrait, StoragePointerReadAccess}; //! //! fn to_array(self: @ContractState) -> Array { //! let mut arr = array![]; @@ -123,7 +123,7 @@ pub trait VecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, VecTrait, StoragePointerReadAccess}; + /// use starknet::storage::{Vec, VecTrait, StoragePointerReadAccess}; /// /// #[storage] /// struct Storage { @@ -145,7 +145,7 @@ pub trait VecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, VecTrait, StoragePointerReadAccess}; + /// use starknet::storage::{Vec, VecTrait, StoragePointerReadAccess}; /// /// #[storage] /// struct Storage { @@ -166,7 +166,7 @@ pub trait VecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, VecTrait}; + /// use starknet::storage::{Vec, VecTrait}; /// /// #[storage] /// struct Storage { @@ -239,7 +239,7 @@ pub trait MutableVecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, MutableVecTrait, StoragePointerWriteAccess}; + /// use starknet::storage::{Vec, MutableVecTrait, StoragePointerWriteAccess}; /// /// #[storage] /// struct Storage { @@ -266,7 +266,7 @@ pub trait MutableVecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, MutableVecTrait, StoragePointerWriteAccess}; + /// use starknet::storage::{Vec, MutableVecTrait, StoragePointerWriteAccess}; /// /// #[storage] /// struct Storage { @@ -287,7 +287,7 @@ pub trait MutableVecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, MutableVecTrait}; + /// use starknet::storage::{Vec, MutableVecTrait}; /// /// #[storage] /// struct Storage { @@ -309,7 +309,7 @@ pub trait MutableVecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, MutableVecTrait, StoragePointerWriteAccess}; + /// use starknet::storage::{Vec, MutableVecTrait, StoragePointerWriteAccess}; /// /// #[storage] /// struct Storage { @@ -353,7 +353,7 @@ pub trait MutableVecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, MutableVecTrait, StoragePointerWriteAccess}; + /// use starknet::storage::{Vec, MutableVecTrait, StoragePointerWriteAccess}; /// /// #[storage] /// struct Storage { @@ -384,7 +384,7 @@ pub trait MutableVecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, MutableVecTrait}; + /// use starknet::storage::{Vec, MutableVecTrait}; /// /// #[storage] /// struct Storage { @@ -409,7 +409,7 @@ pub trait MutableVecTrait { /// # Examples /// /// ``` - /// use core::starknet::storage::{Vec, MutableVecTrait}; + /// use starknet::storage::{Vec, MutableVecTrait}; /// /// #[storage] /// struct Storage { @@ -644,5 +644,5 @@ pub impl PathableMutableVecIntoIterRange< /// as long as the contained type `T` is itself a valid storage type (`ValidStorageTypeTrait`). /// This allows vectors to be stored in contract storage, provided that their elements /// conform to the required storage constraints. -use crate::starknet::storage::ValidStorageTypeTrait; +use starknet::storage::ValidStorageTypeTrait; impl ValidStorageTypeVecTrait> of ValidStorageTypeTrait>; diff --git a/corelib/src/starknet/storage_access.cairo b/corelib/src/starknet/storage_access.cairo index ac6f5bc2ba7..775093c902a 100644 --- a/corelib/src/starknet/storage_access.cairo +++ b/corelib/src/starknet/storage_access.cairo @@ -58,7 +58,7 @@ pub extern type StorageBaseAddress; /// # Examples /// /// ``` -/// use core::starknet::storage_access::storage_base_address_const; +/// use starknet::storage_access::storage_base_address_const; /// /// let base_address = storage_base_address_const::<0>(); /// ``` @@ -136,8 +136,8 @@ impl LowerHexStorageBaseAddress of core::fmt::LowerHex { /// etc.) do not implement `Store` directly. Instead, use specialized storage types, such as [`Vec`] /// or [`Map`]. /// -/// [`Map`]: crate::starknet::storage::Map -/// [`Vec`]: crate::starknet::storage::Vec +/// [`Map`]: starknet::storage::Map +/// [`Vec`]: starknet::storage::Vec /// /// # Derivation /// @@ -262,7 +262,7 @@ pub trait Store { /// Packing multiple integer fields into a single storage slot: /// /// ``` -/// use core::starknet::storage_access::StorePacking; +/// use starknet::storage_access::StorePacking; /// /// #[derive(Drop)] /// struct Sizes { diff --git a/corelib/src/starknet/syscalls.cairo b/corelib/src/starknet/syscalls.cairo index 8ce94e06f5a..969926be985 100644 --- a/corelib/src/starknet/syscalls.cairo +++ b/corelib/src/starknet/syscalls.cairo @@ -79,7 +79,7 @@ pub extern fn get_block_hash_syscall( /// * `block_timestamp` returns the hour, rounded down to the nearest hour. /// * `block_number` returns the block number, rounded down to the nearest multiple of 100. /// -/// [`Execution information`]: core::starknet::info::ExecutionInfo +/// [`Execution information`]: starknet::info::ExecutionInfo /// /// # Returns /// @@ -91,7 +91,7 @@ pub extern fn get_execution_info_syscall() -> SyscallResult< /// Gets information about the current execution, version 2. /// This syscall should not be called directly. Instead, use -/// `core::starknet::info::get_execution_info`. +/// `starknet::info::get_execution_info`. /// /// # Returns /// diff --git a/crates/cairo-lang-semantic/src/expr/semantic_test_data/use b/crates/cairo-lang-semantic/src/expr/semantic_test_data/use index 104ac7ee8a0..f978c51b7e3 100644 --- a/crates/cairo-lang-semantic/src/expr/semantic_test_data/use +++ b/crates/cairo-lang-semantic/src/expr/semantic_test_data/use @@ -1371,6 +1371,7 @@ test_expr_semantics(expect_diagnostics: false) edition = "2024_07" //! > module_code +#[feature("corelib-internal-use")] use core::starknet::*; //! > function_body diff --git a/crates/cairo-lang-starknet/cairo_level_tests/component_usage_test.cairo b/crates/cairo-lang-starknet/cairo_level_tests/component_usage_test.cairo index 45aeebec72d..6f0cd8bb1fb 100644 --- a/crates/cairo-lang-starknet/cairo_level_tests/component_usage_test.cairo +++ b/crates/cairo-lang-starknet/cairo_level_tests/component_usage_test.cairo @@ -1,4 +1,4 @@ -use core::starknet::storage::{StoragePointerReadAccess, StoragePointerWriteAccess}; +use starknet::storage::{StoragePointerReadAccess, StoragePointerWriteAccess}; #[starknet::component] mod comp_v0 { diff --git a/crates/cairo-lang-starknet/cairo_level_tests/flat_storage_test.cairo b/crates/cairo-lang-starknet/cairo_level_tests/flat_storage_test.cairo index 34694c41f12..2714afe38f4 100644 --- a/crates/cairo-lang-starknet/cairo_level_tests/flat_storage_test.cairo +++ b/crates/cairo-lang-starknet/cairo_level_tests/flat_storage_test.cairo @@ -1,4 +1,4 @@ -use core::starknet::storage::{StoragePointerReadAccess, StoragePointerWriteAccess}; +use starknet::storage::{StoragePointerReadAccess, StoragePointerWriteAccess}; #[starknet::storage_node] struct Struct1 { diff --git a/crates/cairo-lang-starknet/cairo_level_tests/renamed_storage_test.cairo b/crates/cairo-lang-starknet/cairo_level_tests/renamed_storage_test.cairo index f5b074dfe57..bb8cd0c2085 100644 --- a/crates/cairo-lang-starknet/cairo_level_tests/renamed_storage_test.cairo +++ b/crates/cairo-lang-starknet/cairo_level_tests/renamed_storage_test.cairo @@ -1,4 +1,4 @@ -use core::starknet::storage::{StoragePointerReadAccess, StoragePointerWriteAccess}; +use starknet::storage::{StoragePointerReadAccess, StoragePointerWriteAccess}; #[starknet::storage_node] struct A { diff --git a/crates/cairo-lang-starknet/src/test_data/storage_path_check b/crates/cairo-lang-starknet/src/test_data/storage_path_check index 39753969b30..6d3026e56d9 100644 --- a/crates/cairo-lang-starknet/src/test_data/storage_path_check +++ b/crates/cairo-lang-starknet/src/test_data/storage_path_check @@ -255,7 +255,7 @@ warning: Plugin diagnostic: The path `b` collides with existing path `a`. Fix or test_storage_path_check(expect_diagnostics: true) //! > cairo_code -use core::starknet::storage::{Map, Vec}; +use starknet::storage::{Map, Vec}; #[starknet::storage_node] struct ValidStorageStruct { pub valid_field: felt252, @@ -314,7 +314,7 @@ warning: Plugin diagnostic: Missing `ValidStorageTypeTrait` for member type. Inf test_storage_path_check(expect_diagnostics: false) //! > cairo_code -use core::starknet::storage::{Map, Vec}; +use starknet::storage::{Map, Vec}; struct InvalidStorageStruct {} #[starknet::storage_node] #[allow(starknet::invalid_storage_member_types)] @@ -344,7 +344,7 @@ struct PartiallyIgnoredStorage { test_storage_path_check(expect_diagnostics: true) //! > cairo_code -use core::starknet::storage::{Map, Vec}; +use starknet::storage::{Map, Vec}; struct InvalidStorageStruct {} diff --git a/tests/bug_samples/issue5764.cairo b/tests/bug_samples/issue5764.cairo index dce35e83e22..808b8edc512 100644 --- a/tests/bug_samples/issue5764.cairo +++ b/tests/bug_samples/issue5764.cairo @@ -1,4 +1,4 @@ -use core::starknet::SyscallResultTrait; +use starknet::SyscallResultTrait; #[test] fn test_store_opt_and_result_at_offset() {