Skip to content
This repository was archived by the owner on Aug 1, 2025. It is now read-only.

Commit 9dd0705

Browse files
committed
chore: update 2.9.4
1 parent 445924d commit 9dd0705

File tree

34 files changed

+114
-186
lines changed

34 files changed

+114
-186
lines changed

.tool-versions

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
scarb 2.9.2
2-
starknet-foundry 0.35.0
1+
scarb 2.9.4
2+
starknet-foundry 0.37.0

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ version.workspace = true
103103
starknet.workspace = true
104104
# Uncomment the following lines if you want to use additional dependencies:
105105
# OpenZeppelin:
106-
# openzeppelin.workspace = true
106+
# openzeppelin_{package_name}.workspace = true
107107

108108
# If you want to use another Starknet By Example's listing, you can add it as a dependency like this:
109109
# erc20 = { path = "../../getting-started/erc20" }
@@ -137,7 +137,7 @@ version.workspace = true
137137
starknet.workspace = true
138138
# Uncomment the following lines if you want to use additional dependencies:
139139
# OpenZeppelin:
140-
# openzeppelin.workspace = true
140+
# openzeppelin_{package_name}.workspace = true
141141

142142
# If you want to use another Starknet By Example's listing, you can add it as a dependency like this:
143143
# erc20 = { path = "../../getting-started/erc20" }

Scarb.lock

Lines changed: 24 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ version = 1
55
name = "account_spending_limits"
66
version = "0.1.0"
77
dependencies = [
8-
"openzeppelin",
8+
"openzeppelin_token",
99
"snforge_std",
1010
]
1111

@@ -29,7 +29,7 @@ dependencies = [
2929
name = "coin_flip"
3030
version = "0.1.0"
3131
dependencies = [
32-
"openzeppelin",
32+
"openzeppelin_token",
3333
"pragma_lib",
3434
"snforge_std",
3535
]
@@ -53,7 +53,7 @@ dependencies = [
5353
name = "constant_product_amm"
5454
version = "0.1.0"
5555
dependencies = [
56-
"openzeppelin",
56+
"openzeppelin_token",
5757
]
5858

5959
[[package]]
@@ -75,7 +75,7 @@ name = "crowdfunding"
7575
version = "0.1.0"
7676
dependencies = [
7777
"components",
78-
"openzeppelin",
78+
"openzeppelin_token",
7979
"snforge_std",
8080
]
8181

@@ -143,123 +143,49 @@ dependencies = [
143143
"snforge_std",
144144
]
145145

146-
[[package]]
147-
name = "openzeppelin"
148-
version = "0.20.0"
149-
source = "registry+https://scarbs.xyz/"
150-
checksum = "sha256:05fd9365be85a4a3e878135d5c52229f760b3861ce4ed314cb1e75b178b553da"
151-
dependencies = [
152-
"openzeppelin_access",
153-
"openzeppelin_account",
154-
"openzeppelin_finance",
155-
"openzeppelin_governance",
156-
"openzeppelin_introspection",
157-
"openzeppelin_merkle_tree",
158-
"openzeppelin_presets",
159-
"openzeppelin_security",
160-
"openzeppelin_token",
161-
"openzeppelin_upgrades",
162-
"openzeppelin_utils",
163-
]
164-
165146
[[package]]
166147
name = "openzeppelin_access"
167-
version = "0.20.0"
148+
version = "1.0.0"
168149
source = "registry+https://scarbs.xyz/"
169-
checksum = "sha256:7734901a0ca7a7065e69416fea615dd1dc586c8dc9e76c032f25ee62e8b2a06c"
150+
checksum = "sha256:a39a4ea1582916c637bf7e3aee0832c3fe1ea3a3e39191955e8dc39d08327f9b"
170151
dependencies = [
171152
"openzeppelin_introspection",
153+
"openzeppelin_utils",
172154
]
173155

174156
[[package]]
175157
name = "openzeppelin_account"
176-
version = "0.20.0"
158+
version = "1.0.0"
177159
source = "registry+https://scarbs.xyz/"
178-
checksum = "sha256:1aa3a71e2f40f66f98d96aa9bf9f361f53db0fd20fa83ef7df04426a3c3a926a"
160+
checksum = "sha256:7e943a2de32ddca4d48e467e52790e380ab1f49c4daddbbbc4634dd930d0243f"
179161
dependencies = [
180162
"openzeppelin_introspection",
181163
"openzeppelin_utils",
182164
]
183165

184-
[[package]]
185-
name = "openzeppelin_finance"
186-
version = "0.20.0"
187-
source = "registry+https://scarbs.xyz/"
188-
checksum = "sha256:f0c507fbff955e4180ea3fa17949c0ff85518c40101f4948948d9d9a74143d6c"
189-
dependencies = [
190-
"openzeppelin_access",
191-
"openzeppelin_token",
192-
]
193-
194-
[[package]]
195-
name = "openzeppelin_governance"
196-
version = "0.20.0"
197-
source = "registry+https://scarbs.xyz/"
198-
checksum = "sha256:c0fb60fad716413d537fabd5fcbb2c499ca6beb95af5f0d1699955ecec4c6f63"
199-
dependencies = [
200-
"openzeppelin_access",
201-
"openzeppelin_account",
202-
"openzeppelin_introspection",
203-
"openzeppelin_token",
204-
"openzeppelin_utils",
205-
]
206-
207166
[[package]]
208167
name = "openzeppelin_introspection"
209-
version = "0.20.0"
210-
source = "registry+https://scarbs.xyz/"
211-
checksum = "sha256:13e04a2190684e6804229a77a6c56de7d033db8b9ef519e5e8dee400a70d8a3d"
212-
213-
[[package]]
214-
name = "openzeppelin_merkle_tree"
215-
version = "0.20.0"
216-
source = "registry+https://scarbs.xyz/"
217-
checksum = "sha256:039608900e92f3dcf479bf53a49a1fd76452acd97eb86e390d1eb92cacdaf3af"
218-
219-
[[package]]
220-
name = "openzeppelin_presets"
221-
version = "0.20.0"
222-
source = "registry+https://scarbs.xyz/"
223-
checksum = "sha256:5c07a8de32e5d9abe33988c7927eaa8b5f83bc29dc77302d9c8c44c898611042"
224-
dependencies = [
225-
"openzeppelin_access",
226-
"openzeppelin_account",
227-
"openzeppelin_finance",
228-
"openzeppelin_introspection",
229-
"openzeppelin_token",
230-
"openzeppelin_upgrades",
231-
"openzeppelin_utils",
232-
]
233-
234-
[[package]]
235-
name = "openzeppelin_security"
236-
version = "0.20.0"
168+
version = "1.0.0"
237169
source = "registry+https://scarbs.xyz/"
238-
checksum = "sha256:27155597019ecf971c48d7bfb07fa58cdc146d5297745570071732abca17f19f"
170+
checksum = "sha256:34e088ecf19e0b3012481a29f1fbb20e600540cb9a5db1c3002a97ebb7f5a32a"
239171

240172
[[package]]
241173
name = "openzeppelin_token"
242-
version = "0.20.0"
174+
version = "1.0.0"
243175
source = "registry+https://scarbs.xyz/"
244-
checksum = "sha256:4452f449dc6c1ea97cf69d1d9182749abd40e85bd826cd79652c06a627eafd91"
176+
checksum = "sha256:33fcb84a1a76d2d3fff9302094ff564f78d45b743548fd7568c130b272473f66"
245177
dependencies = [
246178
"openzeppelin_access",
247179
"openzeppelin_account",
248180
"openzeppelin_introspection",
249181
"openzeppelin_utils",
250182
]
251183

252-
[[package]]
253-
name = "openzeppelin_upgrades"
254-
version = "0.20.0"
255-
source = "registry+https://scarbs.xyz/"
256-
checksum = "sha256:15fdd63f6b50a0fda7b3f8f434120aaf7637bcdfe6fd8d275ad57343d5ede5e1"
257-
258184
[[package]]
259185
name = "openzeppelin_utils"
260-
version = "0.20.0"
186+
version = "1.0.0"
261187
source = "registry+https://scarbs.xyz/"
262-
checksum = "sha256:44f32d242af1e43982decc49c563e613a9b67ade552f5c3d5cde504e92f74607"
188+
checksum = "sha256:fd348b31c4a4407add33adc3c2b8f26dca71dbd7431faaf726168f37a91db0c1"
263189

264190
[[package]]
265191
name = "pragma_lib"
@@ -274,7 +200,8 @@ version = "0.1.0"
274200
name = "simple_account"
275201
version = "0.1.0"
276202
dependencies = [
277-
"openzeppelin",
203+
"openzeppelin_account",
204+
"openzeppelin_introspection",
278205
]
279206

280207
[[package]]
@@ -290,15 +217,15 @@ dependencies = [
290217

291218
[[package]]
292219
name = "snforge_scarb_plugin"
293-
version = "0.35.0"
220+
version = "0.37.0"
294221
source = "registry+https://scarbs.xyz/"
295-
checksum = "sha256:20bd6a488fda7201ce2a5fd680d8e715b10e3545147b276747ad079c96c3d5d2"
222+
checksum = "sha256:9dbb114f853decc27b2d6d53e2ddd207217ce63c2d24a47c5c48d5f475b0b9a5"
296223

297224
[[package]]
298225
name = "snforge_std"
299-
version = "0.35.0"
226+
version = "0.37.0"
300227
source = "registry+https://scarbs.xyz/"
301-
checksum = "sha256:fe4e1b1526c815441183baed7f93e73bc76a6393d23e1f9c34fbe227bfaedfd6"
228+
checksum = "sha256:f5702c4a6d54e3563b4aa78c834de6ddcf18ef8ca8fd35dc1bceb7ece58e9571"
302229
dependencies = [
303230
"snforge_scarb_plugin",
304231
]
@@ -307,7 +234,7 @@ dependencies = [
307234
name = "staking"
308235
version = "0.1.0"
309236
dependencies = [
310-
"openzeppelin",
237+
"openzeppelin_token",
311238
]
312239

313240
[[package]]
@@ -344,7 +271,8 @@ name = "timelock"
344271
version = "0.1.0"
345272
dependencies = [
346273
"components",
347-
"openzeppelin",
274+
"openzeppelin_introspection",
275+
"openzeppelin_token",
348276
"snforge_std",
349277
]
350278

Scarb.toml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,13 @@ test = "$(git rev-parse --show-toplevel)/scripts/test_resolver.sh"
1212
[workspace.tool.snforge]
1313

1414
[workspace.dependencies]
15-
starknet = "2.9.2"
16-
cairo_test = "2.9.2"
17-
assert_macros = "2.9.2"
18-
snforge_std = "0.35.0"
19-
openzeppelin = "0.20.0"
15+
starknet = "2.9.4"
16+
cairo_test = "2.9.4"
17+
assert_macros = "2.9.4"
18+
snforge_std = "0.37.0"
19+
openzeppelin_token = "1.0.0"
20+
openzeppelin_account = "1.0.0"
21+
openzeppelin_introspection = "1.0.0"
2022
components = { path = "listings/applications/components" }
2123
pragma_lib = { git = "https://github.com/astraly-labs/pragma-lib", tag = "2.9.1" }
2224

listings/advanced-concepts/account_spending_limits/Scarb.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ edition.workspace = true
55

66
[dependencies]
77
starknet.workspace = true
8-
openzeppelin.workspace = true
8+
openzeppelin_token.workspace = true
99

1010
[dev-dependencies]
1111
assert_macros.workspace = true

listings/advanced-concepts/account_spending_limits/src/account.cairo

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ trait ISRC6<TContractState> {
66
fn __execute__(ref self: TContractState, calls: Array<Call>) -> Array<Span<felt252>>;
77
fn __validate__(self: @TContractState, calls: Array<Call>) -> felt252;
88
fn is_valid_signature(
9-
self: @TContractState, hash: felt252, signature: Array<felt252>
9+
self: @TContractState, hash: felt252, signature: Array<felt252>,
1010
) -> felt252;
1111
}
1212

@@ -18,7 +18,7 @@ trait ISRC5<TContractState> {
1818
#[starknet::interface]
1919
trait IDeployableAccount<TContractState> {
2020
fn __validate_deploy__(
21-
self: @TContractState, class_hash: felt252, salt: felt252, public_key: felt252
21+
self: @TContractState, class_hash: felt252, public_key: felt252, time_limit: u64,
2222
) -> felt252;
2323
}
2424

@@ -47,15 +47,15 @@ struct SpendingLimit {
4747
#[starknet::contract(account)]
4848
mod Account {
4949
use super::{
50-
ISRC6, ISRC5, IDeployableAccount, IDeclarerAccount, ISpendingLimitsAccount, SpendingLimit
50+
ISRC6, ISRC5, IDeployableAccount, IDeclarerAccount, ISpendingLimitsAccount, SpendingLimit,
5151
};
5252
use starknet::{
5353
ContractAddress, get_caller_address, get_tx_info, VALIDATED, get_block_timestamp,
54-
get_contract_address, account::Call, syscalls::call_contract_syscall
54+
get_contract_address, account::Call, syscalls::call_contract_syscall,
5555
};
5656
use starknet::storage::{
5757
Map, StorageMapReadAccess, StorageMapWriteAccess, StoragePointerReadAccess,
58-
StoragePointerWriteAccess
58+
StoragePointerWriteAccess,
5959
};
6060
use core::num::traits::Zero;
6161

@@ -115,7 +115,7 @@ mod Account {
115115
self.update_timestamp(to);
116116
}
117117

118-
let syscall_res = call_contract_syscall(to, selector, calldata).unwrap_syscall();
118+
let syscall_res = call_contract_syscall(to, selector, calldata).unwrap();
119119
res.append(syscall_res);
120120
};
121121
res
@@ -127,7 +127,7 @@ mod Account {
127127
}
128128

129129
fn is_valid_signature(
130-
self: @ContractState, hash: felt252, signature: Array<felt252>
130+
self: @ContractState, hash: felt252, signature: Array<felt252>,
131131
) -> felt252 {
132132
let is_valid = self._is_valid_signature(hash, signature.span());
133133
if is_valid {
@@ -148,7 +148,7 @@ mod Account {
148148
#[abi(embed_v0)]
149149
impl DeployableAccount of IDeployableAccount<ContractState> {
150150
fn __validate_deploy__(
151-
self: @ContractState, class_hash: felt252, salt: felt252, public_key: felt252
151+
self: @ContractState, class_hash: felt252, public_key: felt252, time_limit: u64,
152152
) -> felt252 {
153153
self.only_protocol();
154154
self.validate_transaction()
@@ -174,25 +174,25 @@ mod Account {
174174
}
175175

176176
fn set_spending_limit(
177-
ref self: ContractState, token_address: ContractAddress, _limit: u256
177+
ref self: ContractState, token_address: ContractAddress, _limit: u256,
178178
) {
179179
assert(get_caller_address() == get_contract_address(), 'Invalid caller');
180180
let timemstamp = get_block_timestamp();
181181
let new_limit: SpendingLimit = SpendingLimit {
182-
exists: true, limit: _limit, timestamp: timemstamp
182+
exists: true, limit: _limit, timestamp: timemstamp,
183183
};
184184
self.spending_limit.write(token_address, new_limit);
185185
self.current_spending_limit.write(token_address, _limit);
186186
}
187187

188188
fn get_current_spending_limit(
189-
self: @ContractState, token_address: ContractAddress
189+
self: @ContractState, token_address: ContractAddress,
190190
) -> u256 {
191191
self.current_spending_limit.read(token_address)
192192
}
193193

194194
fn get_spending_limit_timestamp(
195-
self: @ContractState, token_address: ContractAddress
195+
self: @ContractState, token_address: ContractAddress,
196196
) -> u64 {
197197
self.spending_limit.read(token_address).timestamp
198198
}
@@ -237,11 +237,11 @@ mod Account {
237237
}
238238

239239
fn _is_valid_signature(
240-
self: @ContractState, hash: felt252, signature: Span<felt252>
240+
self: @ContractState, hash: felt252, signature: Span<felt252>,
241241
) -> bool {
242242
if signature.len() == 2_u32 {
243243
core::ecdsa::check_ecdsa_signature(
244-
hash, self.public_key.read(), *signature.at(0_u32), *signature.at(1_u32)
244+
hash, self.public_key.read(), *signature.at(0_u32), *signature.at(1_u32),
245245
)
246246
} else {
247247
false

0 commit comments

Comments
 (0)