Skip to content

Commit 20e0556

Browse files
authored
Merge pull request #84 from abdulomeiza/feat/implement-minesweeper
Feat/implement minesweeper
2 parents e930633 + 0dc8462 commit 20e0556

5 files changed

Lines changed: 1432 additions & 0 deletions

File tree

.github/workflows/minesweeper.yml

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: Minesweeper CI
2+
3+
on:
4+
push:
5+
branches: [main, develop]
6+
paths:
7+
- 'examples/minesweeper/**'
8+
- '.github/workflows/minesweeper.yml'
9+
pull_request:
10+
branches: [main, develop]
11+
paths:
12+
- 'examples/minesweeper/**'
13+
- '.github/workflows/minesweeper.yml'
14+
15+
env:
16+
CARGO_TERM_COLOR: always
17+
18+
jobs:
19+
ci:
20+
name: CI
21+
runs-on: macos-latest
22+
defaults:
23+
run:
24+
working-directory: examples/minesweeper
25+
steps:
26+
- uses: actions/checkout@v4
27+
28+
- name: Setup Rust
29+
uses: dtolnay/rust-toolchain@stable
30+
with:
31+
targets: wasm32v1-none
32+
components: rustfmt, clippy
33+
34+
- name: Cache dependencies
35+
uses: Swatinem/rust-cache@v2
36+
with:
37+
workspaces: examples/minesweeper
38+
39+
- name: Check formatting
40+
run: cargo fmt --check
41+
42+
- name: Clippy
43+
run: cargo clippy --all-targets --all-features -- -D warnings
44+
45+
- name: Build
46+
run: cargo build
47+
48+
- name: Test
49+
run: cargo test
50+
51+
- name: Install Stellar CLI
52+
run: brew install stellar-cli
53+
54+
- name: Stellar contract build
55+
run: stellar contract build

examples/minesweeper/Cargo.toml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
[package]
2+
name = "minesweeper"
3+
version = "0.1.0"
4+
edition = "2021"
5+
description = "Minesweeper on-chain game using Cougr-Core ECS framework on Stellar Soroban"
6+
license = "MIT OR Apache-2.0"
7+
8+
[lib]
9+
crate-type = ["cdylib", "rlib"]
10+
11+
[dependencies]
12+
soroban-sdk = "25.1.0"
13+
cougr-core = { path = "../../" }
14+
15+
[dev-dependencies]
16+
soroban-sdk = { version = "25.1.0", features = ["testutils"] }
17+
18+
[profile.release]
19+
opt-level = "z"
20+
overflow-checks = true
21+
debug = 0
22+
strip = "symbols"
23+
debug-assertions = false
24+
panic = "abort"
25+
codegen-units = 1
26+
lto = true
27+
28+
[profile.release-with-logs]
29+
inherits = "release"
30+
debug-assertions = true

0 commit comments

Comments
 (0)