Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

snfoundry: Update dependencies #449

Open
wants to merge 11 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 10 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 17 additions & 13 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,6 @@ jobs:
- name: Checkout
uses: actions/checkout@master

- name: Install scarb
run: curl --proto '=https' --tlsv1.2 -sSf https://docs.swmansion.com/scarb/install.sh | sh -s -- -v 2.9.2

- name: Install snfoundryup
run: curl -L https://raw.githubusercontent.com/foundry-rs/starknet-foundry/master/scripts/install.sh | sh

- name: Install snforge
run: snfoundryup -v 0.35.1

- name: Run snforge tests
run: snforge test
working-directory: ./packages/snfoundry/contracts

- name: Setup node env
uses: actions/setup-node@v3
with:
Expand All @@ -49,6 +36,23 @@ jobs:
run: yarn install --immutable
working-directory: ./packages/nextjs

- name: Install scarb
uses: software-mansion/setup-scarb@v1
with:
tool-versions: ./.tool-versions
scarb-lock: ./packages/snfoundry/contracts/Scarb.lock

- name: Install snfoundryup
uses: foundry-rs/setup-snfoundry@v3
with:
tool-versions: ./.tool-versions

- name: Build Contracts
run: yarn compile

- name: Run smart contract tests
run: yarn test

- name: Check Code Format
run: yarn format:check

Expand Down
4 changes: 2 additions & 2 deletions .tool-versions
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
scarb 2.9.2
starknet-foundry 0.35.1
scarb 2.9.4
starknet-foundry 0.37.0
starknet-devnet 0.2.3
29 changes: 15 additions & 14 deletions packages/snfoundry/contracts/Scarb.lock
Original file line number Diff line number Diff line change
Expand Up @@ -13,34 +13,35 @@ dependencies = [

[[package]]
name = "openzeppelin_access"
version = "0.20.0"
version = "1.0.0"
source = "registry+https://scarbs.xyz/"
checksum = "sha256:7734901a0ca7a7065e69416fea615dd1dc586c8dc9e76c032f25ee62e8b2a06c"
checksum = "sha256:a39a4ea1582916c637bf7e3aee0832c3fe1ea3a3e39191955e8dc39d08327f9b"
dependencies = [
"openzeppelin_introspection",
"openzeppelin_utils",
]

[[package]]
name = "openzeppelin_account"
version = "0.20.0"
version = "1.0.0"
source = "registry+https://scarbs.xyz/"
checksum = "sha256:1aa3a71e2f40f66f98d96aa9bf9f361f53db0fd20fa83ef7df04426a3c3a926a"
checksum = "sha256:7e943a2de32ddca4d48e467e52790e380ab1f49c4daddbbbc4634dd930d0243f"
dependencies = [
"openzeppelin_introspection",
"openzeppelin_utils",
]

[[package]]
name = "openzeppelin_introspection"
version = "0.20.0"
version = "1.0.0"
source = "registry+https://scarbs.xyz/"
checksum = "sha256:13e04a2190684e6804229a77a6c56de7d033db8b9ef519e5e8dee400a70d8a3d"
checksum = "sha256:34e088ecf19e0b3012481a29f1fbb20e600540cb9a5db1c3002a97ebb7f5a32a"

[[package]]
name = "openzeppelin_token"
version = "0.20.0"
version = "1.0.0"
source = "registry+https://scarbs.xyz/"
checksum = "sha256:4452f449dc6c1ea97cf69d1d9182749abd40e85bd826cd79652c06a627eafd91"
checksum = "sha256:33fcb84a1a76d2d3fff9302094ff564f78d45b743548fd7568c130b272473f66"
dependencies = [
"openzeppelin_access",
"openzeppelin_account",
Expand All @@ -50,21 +51,21 @@ dependencies = [

[[package]]
name = "openzeppelin_utils"
version = "0.20.0"
version = "1.0.0"
source = "registry+https://scarbs.xyz/"
checksum = "sha256:44f32d242af1e43982decc49c563e613a9b67ade552f5c3d5cde504e92f74607"
checksum = "sha256:fd348b31c4a4407add33adc3c2b8f26dca71dbd7431faaf726168f37a91db0c1"

[[package]]
name = "snforge_scarb_plugin"
version = "0.35.1"
version = "0.37.0"
source = "registry+https://scarbs.xyz/"
checksum = "sha256:1b6d50abc7f306a06abf90649bcd60a3bc1cdf6d0dc21a9725c71b014a334bab"
checksum = "sha256:9dbb114f853decc27b2d6d53e2ddd207217ce63c2d24a47c5c48d5f475b0b9a5"

[[package]]
name = "snforge_std"
version = "0.35.1"
version = "0.37.0"
source = "registry+https://scarbs.xyz/"
checksum = "sha256:e25cbeb9cbed6da8e14ab19ad0e7c1d888055dfee62978a845ce669cfaba5d93"
checksum = "sha256:f5702c4a6d54e3563b4aa78c834de6ddcf18ef8ca8fd35dc1bceb7ece58e9571"
dependencies = [
"snforge_scarb_plugin",
]
12 changes: 6 additions & 6 deletions packages/snfoundry/contracts/Scarb.toml
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
[package]
name = "contracts"
version = "0.2.0"
edition = "2023_11"
edition = "2024_07"

# See more keys and their definitions at https://docs.swmansion.com/scarb/docs/reference/manifest.html

[dependencies]
starknet = "2.9.2"
starknet = "2.9.4"
# Change to just "openzeppelin" to use full features
openzeppelin_access = "0.20.0"
openzeppelin_token = "0.20.0"
openzeppelin_access = "1.0.0"
openzeppelin_token = "1.0.0"

[dev-dependencies]
openzeppelin_utils = "0.20.0"
snforge_std = "0.35.1"
openzeppelin_utils = "1.0.0"
snforge_std = "0.37.0"

[[target.starknet-contract]]
casm = true
Expand Down
7 changes: 4 additions & 3 deletions packages/snfoundry/contracts/src/YourContract.cairo
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ pub trait IYourContract<TContractState> {
mod YourContract {
use openzeppelin_access::ownable::OwnableComponent;
use openzeppelin_token::erc20::interface::{IERC20Dispatcher, IERC20DispatcherTrait};
use starknet::storage::Map;
use starknet::storage::{Map, StorageMapReadAccess, StorageMapWriteAccess};
use starknet::storage::{StoragePointerReadAccess, StoragePointerWriteAccess};
use starknet::{ContractAddress, contract_address_const};
use starknet::{get_caller_address, get_contract_address};
use super::{IYourContract};
Expand Down Expand Up @@ -73,8 +74,8 @@ mod YourContract {

match amount_eth {
Option::Some(amount_eth) => {
// In `Debug Contract` or UI implementation call `approve` on ETH contract
// before invoke fn set_greeting()
// In `Debug Contract` or UI implementation, call `approve` on ETH contract
// before invoking fn set_greeting()
let eth_contract_address = contract_address_const::<ETH_CONTRACT_ADDRESS>();
let eth_dispatcher = IERC20Dispatcher {
contract_address: eth_contract_address,
Expand Down
10 changes: 5 additions & 5 deletions packages/snfoundry/scripts-ts/deploy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ import {
executeDeployCalls,
exportDeployments,
deployer,
} from './deploy-contract';
import { green } from './helpers/colorize-log';
} from "./deploy-contract";
import { green } from "./helpers/colorize-log";

/**
* Deploy a contract using the specified parameters.
Expand Down Expand Up @@ -43,7 +43,7 @@ import { green } from './helpers/colorize-log';
*/
const deployScript = async (): Promise<void> => {
await deployContract({
contract: 'YourContract',
contract: "YourContract",
constructorArgs: {
owner: deployer.address,
},
Expand All @@ -56,11 +56,11 @@ const main = async (): Promise<void> => {
await executeDeployCalls();
exportDeployments();

console.log(green('All Setup Done!'));
console.log(green("All Setup Done!"));
} catch (err) {
console.log(err);
process.exit(1); //exit with error so that non subsequent scripts are run
}
};

main();
main();
100 changes: 29 additions & 71 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2457,14 +2457,7 @@ __metadata:
languageName: node
linkType: hard

"@scure/base@npm:~1.1.3":
version: 1.1.7
resolution: "@scure/base@npm:1.1.7"
checksum: d9084be9a2f27971df1684af9e40bb750e86f549345e1bb3227fb61673c0c83569c92c1cb0a4ddccb32650b39d3cd3c145603b926ba751c9bc60c27317549b20
languageName: node
linkType: hard

"@scure/base@npm:~1.1.7, @scure/base@npm:~1.1.8":
"@scure/base@npm:~1.1.3, @scure/base@npm:~1.1.7, @scure/base@npm:~1.1.8":
version: 1.1.9
resolution: "@scure/base@npm:1.1.9"
checksum: 120820a37dfe9dfe4cab2b7b7460552d08e67dee8057ed5354eb68d8e3440890ae983ce3bee957d2b45684950b454a2b6d71d5ee77c1fd3fddc022e2a510337f
Expand Down Expand Up @@ -2598,28 +2591,29 @@ __metadata:
languageName: node
linkType: hard

"@starknet-react/chains@npm:^3.1.0":
version: 3.1.0
resolution: "@starknet-react/chains@npm:3.1.0"
checksum: 031425a794a57031ed20249f9b44fe734edb9268e3e616a6e883ffcf6627272249f896e672711e3bb41bdd3490ea71b7ad07477ed94ca78075bb85c59de9aeae
"@starknet-react/chains@npm:^3.1.0, @starknet-react/chains@npm:^3.1.2":
version: 3.1.2
resolution: "@starknet-react/chains@npm:3.1.2"
checksum: 681af7b1db76e856cab1e2727fb941428807750218d0a7f7884e8fba3a19883e0093874e44e0994303ec294bda5f5bf3729d34cb9cf749e09ae4dba4746b5204
languageName: node
linkType: hard

"@starknet-react/core@npm:^3.6.0":
version: 3.6.0
resolution: "@starknet-react/core@npm:3.6.0"
version: 3.7.2
resolution: "@starknet-react/core@npm:3.7.2"
dependencies:
"@starknet-io/types-js": ^0.7.7
"@starknet-react/chains": ^3.1.0
"@starknet-react/chains": ^3.1.2
"@tanstack/react-query": ^5.25.0
abi-wan-kanabi: ^2.2.4
eventemitter3: ^5.0.1
viem: ^2.21.1
zod: ^3.22.4
peerDependencies:
get-starknet-core: ^4.0.0
react: ^18.0
starknet: ^6.11.0
checksum: ba85a1156c3874c00fb07837787549830095905543d99f2b27f22330d3751ddac865ff655551ebcb9193d3d556d69bb43017955a1393195ae2f9c87b5ae6429a
checksum: cfedd51cf6f554daa4c4f9508aa69d509c5845a971c5ed5242387feb0249f0eff1bac602a4c010df3492d427c1a9ee372c7eef3a03d95777a0c28dadb9759841
languageName: node
linkType: hard

Expand Down Expand Up @@ -3737,6 +3731,20 @@ __metadata:
languageName: node
linkType: hard

"abi-wan-kanabi@npm:^2.2.4":
version: 2.2.4
resolution: "abi-wan-kanabi@npm:2.2.4"
dependencies:
ansicolors: ^0.3.2
cardinal: ^2.1.1
fs-extra: ^10.0.0
yargs: ^17.7.2
bin:
generate: dist/generate.js
checksum: 6d7cbb424f6e7fda479aaa586e114bbbe0f65bea19215f8a8847b7ab67bdf07baff42ea07c9cfba0f8067f2503490a1017eb3c9fc92df79b8f94a87301f705d4
languageName: node
linkType: hard

"abitype@npm:1.0.6, abitype@npm:^1.0.6":
version: 1.0.6
resolution: "abitype@npm:1.0.6"
Expand Down Expand Up @@ -6339,12 +6347,12 @@ __metadata:
linkType: hard

"fetch-cookie@npm:^3.0.0":
version: 3.0.1
resolution: "fetch-cookie@npm:3.0.1"
version: 3.1.0
resolution: "fetch-cookie@npm:3.1.0"
dependencies:
set-cookie-parser: ^2.4.8
tough-cookie: ^4.0.0
checksum: 01657ccdf6305c3bf9b2375a9aedd6930f803acc77583c02e96a0b3d84068cc9406d2ad4d061a8c4d9c106c021de51dd2aa505a0a05a4477a1a859052f2537a0
tough-cookie: ^5.0.0
checksum: 9721f20de6cea8551920f95c5f0d0bc53ecc644d8ddad8bd7837e15b74d108f5f7ab756f06ab2231592d4106f8e2d909f874bf49f6aebfe22868ce1732aadc07
languageName: node
linkType: hard

Expand Down Expand Up @@ -9234,13 +9242,6 @@ __metadata:
languageName: node
linkType: hard

"psl@npm:^1.1.33":
version: 1.9.0
resolution: "psl@npm:1.9.0"
checksum: 20c4277f640c93d393130673f392618e9a8044c6c7bf61c53917a0fddb4952790f5f362c6c730a9c32b124813e173733f9895add8d26f566ed0ea0654b2e711d
languageName: node
linkType: hard

"pump@npm:^3.0.0":
version: 3.0.0
resolution: "pump@npm:3.0.0"
Expand All @@ -9251,7 +9252,7 @@ __metadata:
languageName: node
linkType: hard

"punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.1":
"punycode@npm:^2.1.0, punycode@npm:^2.3.1":
version: 2.3.1
resolution: "punycode@npm:2.3.1"
checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2
Expand All @@ -9267,13 +9268,6 @@ __metadata:
languageName: node
linkType: hard

"querystringify@npm:^2.1.1":
version: 2.2.0
resolution: "querystringify@npm:2.2.0"
checksum: 5641ea231bad7ef6d64d9998faca95611ed4b11c2591a8cae741e178a974f6a8e0ebde008475259abe1621cb15e692404e6b6626e927f7b849d5c09392604b15
languageName: node
linkType: hard

"queue-microtask@npm:^1.2.2":
version: 1.2.3
resolution: "queue-microtask@npm:1.2.3"
Expand Down Expand Up @@ -9533,13 +9527,6 @@ __metadata:
languageName: node
linkType: hard

"requires-port@npm:^1.0.0":
version: 1.0.0
resolution: "requires-port@npm:1.0.0"
checksum: eee0e303adffb69be55d1a214e415cf42b7441ae858c76dfc5353148644f6fd6e698926fc4643f510d5c126d12a705e7c8ed7e38061113bdf37547ab356797ff
languageName: node
linkType: hard

"resolve-cwd@npm:^3.0.0":
version: 3.0.0
resolution: "resolve-cwd@npm:3.0.0"
Expand Down Expand Up @@ -10678,18 +10665,6 @@ __metadata:
languageName: node
linkType: hard

"tough-cookie@npm:^4.0.0":
version: 4.1.4
resolution: "tough-cookie@npm:4.1.4"
dependencies:
psl: ^1.1.33
punycode: ^2.1.1
universalify: ^0.2.0
url-parse: ^1.5.3
checksum: 5815059f014c31179a303c673f753f7899a6fce94ac93712c88ea5f3c26e0c042b5f0c7a599a00f8e0feeca4615dba75c3dffc54f3c1a489978aa8205e09307c
languageName: node
linkType: hard

"tough-cookie@npm:^5.0.0":
version: 5.0.0
resolution: "tough-cookie@npm:5.0.0"
Expand Down Expand Up @@ -11071,13 +11046,6 @@ __metadata:
languageName: node
linkType: hard

"universalify@npm:^0.2.0":
version: 0.2.0
resolution: "universalify@npm:0.2.0"
checksum: e86134cb12919d177c2353196a4cc09981524ee87abf621f7bc8d249dbbbebaec5e7d1314b96061497981350df786e4c5128dbf442eba104d6e765bc260678b5
languageName: node
linkType: hard

"universalify@npm:^2.0.0":
version: 2.0.1
resolution: "universalify@npm:2.0.1"
Expand Down Expand Up @@ -11136,16 +11104,6 @@ __metadata:
languageName: node
linkType: hard

"url-parse@npm:^1.5.3":
version: 1.5.10
resolution: "url-parse@npm:1.5.10"
dependencies:
querystringify: ^2.1.1
requires-port: ^1.0.0
checksum: fbdba6b1d83336aca2216bbdc38ba658d9cfb8fc7f665eb8b17852de638ff7d1a162c198a8e4ed66001ddbf6c9888d41e4798912c62b4fd777a31657989f7bdf
languageName: node
linkType: hard

"use-callback-ref@npm:^1.3.0":
version: 1.3.2
resolution: "use-callback-ref@npm:1.3.2"
Expand Down