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

expose resources through resource() function in world API #2266

Merged
merged 7 commits into from
Aug 9, 2024

Conversation

remybar
Copy link
Contributor

@remybar remybar commented Aug 5, 2024

See #2244.

Summary by CodeRabbit

  • New Features

    • Introduced a new Resource enum to enhance resource management and accessibility in the world module.
    • Added a consolidated resource function to replace the previous model and contract functions, simplifying resource retrieval.
    • Improved error handling in resource retrieval methods to enhance robustness and type safety.
    • Automation of Cairo project builds with the new build_cairo_projects.sh script.
  • Bug Fixes

    • Enhanced test coverage to validate resource types and improve overall reliability.
  • Documentation

    • Updated manifest files to reflect new resource definitions and modifications to class hashes.
  • Chores

    • Modified CI workflow to improve environment setup and script execution for builds.
    • Streamlined build scripts for development and release configurations.

Copy link

coderabbitai bot commented Aug 5, 2024

Walkthrough

Ohayo, sensei! The recent updates greatly enhance resource management in the dojo-core library by introducing a unified Resource enum. This modification simplifies the resource retrieval interface, improves type safety, and enhances error handling. The changes create a more intuitive and maintainable codebase, aligning with best practices in modular programming and empowering developers to interact effectively with resources.

Changes

Files Change Summary
crates/dojo-core/src/lib.cairo, crates/dojo-core/src/world/world_contract.cairo Added a public Resource enum to consolidate resource types, replacing ResourceData. Updated functions to utilize the new enum for improved type safety.
crates/dojo-core/src/tests/world.cairo Enhanced test logic with pattern matching for resource retrieval, improving error handling and type safety.
crates/dojo-lang/src/manifest_test_data/compiler_cairo/manifests/dev/base/abis/dojo-world.json, examples/spawn-and-move/manifests/dev/base/abis/dojo-world.json, examples/spawn-and-move/manifests/dev/deployment/manifest.json Introduced the new Resource enum, replacing model and contract functions with a unified resource function, streamlining ABI definitions.
crates/dojo-world/src/contracts/abi/world.rs, crates/dojo-world/src/contracts/model.rs Integrated the new Resource enum and revised function definitions for enhanced clarity and flexibility in resource access.
crates/dojo-lang/src/manifest_test_data/compiler_cairo/manifests/dev/base/dojo-world.toml, examples/spawn-and-move/manifests/dev/base/dojo-world.toml, examples/spawn-and-move/manifests/release/base/dojo-world.toml Updated class_hash and original_class_hash to reflect changes in class implementation.
examples/spawn-and-move/Scarb.toml Modified the dojo_plugin dependency revision to a new commit hash, updating to the latest features and fixes.
examples/spawn-and-move/manifests/dev/deployment/manifest.toml Updated contract addresses and transaction hashes, indicating a redeployment of contracts.
.github/workflows/ci.yml Enhanced the CI workflow by adding commands to set executable permissions on binaries and execute the build_cairo_projects.sh script to streamline the build process.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant WorldContract
    participant Resource

    User->>WorldContract: requestResource(selector)
    WorldContract->>Resource: retrieveResource(selector)
    Resource-->>WorldContract: return Resource
    WorldContract-->>User: return Resource
Loading

This sequence diagram illustrates how the user interacts with the WorldContract to retrieve a resource using the new resource function.


Recent review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 1dfd0bb and ea2304c.

Files selected for processing (1)
  • .github/workflows/ci.yml (1 hunks)
Files skipped from review as they are similar to previous changes (1)
  • .github/workflows/ci.yml

Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@remybar remybar force-pushed the expose_resources_in_world_api branch from 7a9c1aa to 11bffa7 Compare August 5, 2024 09:55
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Outside diff range, codebase verification and nitpick comments (1)
crates/dojo-core/src/world/world_contract.cairo (1)

45-45: Ohayo sensei!

The addition of the resource method looks good, but it seems the removal of the model and contract methods has not been fully propagated throughout the codebase. There are still multiple occurrences of these methods:

  • model method references:

    • crates/torii/core/src/processors/store_update_record.rs
    • crates/torii/core/src/sql.rs
    • crates/torii/core/src/processors/store_set_record.rs
    • crates/torii/core/src/processors/store_update_member.rs
    • crates/torii/libp2p/src/tests.rs
    • crates/torii/core/src/processors/store_del_record.rs
    • crates/torii/libp2p/src/server/mod.rs
    • crates/torii/core/src/processors/event_message.rs
    • crates/torii/core/src/processors/register_model.rs
    • crates/torii/graphql/src/tests/mod.rs
    • crates/torii/graphql/src/tests/subscription_test.rs
    • crates/torii/client/src/client/storage.rs
    • crates/dojo-world/src/contracts/model_test.rs
    • crates/torii/client/src/client/mod.rs
    • crates/torii/client/src/client/subscription.rs
    • crates/dojo-types/src/lib.rs
    • crates/dojo-core/src/tests/utils.cairo
    • crates/dojo-core/src/tests/model/model.cairo
    • crates/dojo-core/src/tests/world.cairo
    • crates/dojo-core/src/tests/base.cairo
    • crates/dojo-lang/src/plugin_test_data/model
    • crates/dojo-lang/src/plugin.rs
    • crates/dojo-lang/src/semantics/utils.rs
    • crates/dojo-core/src/world/world_contract.cairo
    • crates/dojo-bindgen/src/plugins/typescript/tests.rs
    • crates/dojo-bindgen/src/plugins/unity/mod.rs
    • crates/dojo-bindgen/src/plugins/typescript/mod.rs
  • contract method references:

    • crates/sozo/ops/src/migration/migrate.rs
    • crates/katana/contracts/test_contract.cairo
    • crates/katana/rpc/rpc/tests/starknet.rs
    • crates/katana/rpc/rpc/src/starknet/mod.rs
    • crates/katana/storage/provider/tests/contract.rs
    • crates/katana/storage/provider/src/lib.rs
    • crates/katana/storage/provider/src/traits/state.rs
    • crates/katana/storage/provider/src/providers/fork/mod.rs
    • crates/katana/storage/provider/src/providers/fork/state.rs
    • crates/katana/storage/provider/src/providers/fork/backend.rs
    • crates/katana/storage/provider/src/providers/db/state.rs
    • crates/katana/storage/provider/src/providers/in_memory/mod.rs
    • crates/katana/storage/provider/src/providers/in_memory/state.rs
    • crates/katana/executor/tests/executor.rs
    • crates/katana/core/src/backend/storage.rs
    • crates/katana/executor/src/abstraction/mod.rs
    • crates/katana/executor/src/implementation/noop.rs
    • crates/katana/executor/src/implementation/blockifier/state.rs
    • crates/dojo-world/src/contracts/world_test.rs
    • crates/dojo-bindgen/src/plugins/unity/mod.rs
    • crates/dojo-core/src/contract/upgradeable.cairo
    • crates/dojo-core/src/utils/test.cairo
    • crates/dojo-core/src/tests/world.cairo
    • crates/dojo-lang/src/plugin_test_data/system
    • crates/benches/src/deployer.rs
    • crates/benches/contracts/src/tests/test_world.cairo
    • examples/spawn-and-move/src/actions.cairo

Please ensure all references to these methods are updated to reflect the new resource method.

Analysis chain

LGTM! But verify the removal of old methods.

The addition of the resource method improves the interface by consolidating resource retrieval into a single method.

However, ensure that all references to the removed model and contract methods are updated in the codebase.


Ohayo sensei!

The addition of the resource method looks good, but we need to verify the complete removal of the old model and contract methods. The previous attempt to search for these methods failed due to a regex error. Let's correct this and search across all relevant files.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the removal of the `model` and `contract` methods.

# Test: Search for the usage of the removed methods. Expect: No occurrences.
rg --type python -A 5 $'model('
rg --type python -A 5 $'contract('

Length of output: 200


Script:

#!/bin/bash
# Description: Verify the removal of the `model` and `contract` methods.

# Test: Search for the usage of the removed methods. Expect: No occurrences.
rg 'model\(' -A 5
rg 'contract\(' -A 5

Length of output: 125172

Copy link

codecov bot commented Aug 5, 2024

Codecov Report

Attention: Patch coverage is 13.46154% with 45 lines in your changes missing coverage. Please review.

Project coverage is 66.88%. Comparing base (f15def3) to head (ea2304c).

Files Patch % Lines
crates/dojo-world/src/contracts/abi/world.rs 0.00% 42 Missing ⚠️
xtask/generate-test-db/src/main.rs 0.00% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2266      +/-   ##
==========================================
- Coverage   69.94%   66.88%   -3.06%     
==========================================
  Files         342      342              
  Lines       44990    45149     +159     
==========================================
- Hits        31468    30199    -1269     
- Misses      13522    14950    +1428     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Collaborator

@glihm glihm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the rework @remybar, some minor comment and let's merge!

crates/dojo-core/src/world/world_contract.cairo Outdated Show resolved Hide resolved
crates/dojo-core/src/world/world_contract.cairo Outdated Show resolved Hide resolved
@remybar remybar force-pushed the expose_resources_in_world_api branch 2 times, most recently from d791753 to a84949e Compare August 6, 2024 11:08
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Outside diff range, codebase verification and nitpick comments (3)
examples/spawn-and-move/manifests/dev/base/abis/dojo-world.json (1)

387-402: Ohayo, sensei!

It looks like there are still numerous references to the old model and contract functions scattered throughout the codebase. These need to be updated to the new resource function to ensure consistency and correctness.

Please update the following references to use the new resource function:

  • model references:

    • crates/torii/libp2p/src/tests.rs
    • crates/torii/libp2p/src/server/mod.rs
    • crates/torii/graphql/src/tests/mod.rs
    • crates/torii/graphql/src/tests/subscription_test.rs
    • crates/torii/core/src/sql.rs
    • crates/torii/core/src/processors/store_update_member.rs
    • crates/torii/core/src/processors/store_update_record.rs
    • crates/torii/core/src/processors/store_del_record.rs
    • crates/torii/core/src/processors/store_set_record.rs
    • crates/torii/core/src/processors/event_message.rs
    • crates/torii/core/src/processors/register_model.rs
    • crates/dojo-world/src/contracts/model_test.rs
    • crates/dojo-lang/src/semantics/utils.rs
    • crates/dojo-lang/src/plugin_test_data/model
    • crates/dojo-lang/src/plugin.rs
    • crates/dojo-types/src/lib.rs
    • crates/dojo-core/src/world/world_contract.cairo
    • crates/dojo-core/src/utils/test.cairo
    • crates/dojo-core/src/tests/utils.cairo
    • crates/dojo-core/src/tests/world.cairo
    • crates/dojo-core/src/tests/base.cairo
    • crates/dojo-core/src/tests/model/model.cairo
    • crates/dojo-bindgen/src/plugins/unity/mod.rs
    • crates/dojo-bindgen/src/plugins/typescript/tests.rs
    • crates/dojo-bindgen/src/plugins/typescript/mod.rs
  • contract references:

    • examples/spawn-and-move/src/actions.cairo
    • crates/sozo/ops/src/migration/migrate.rs
    • crates/dojo-world/src/contracts/world_test.rs
    • crates/katana/storage/provider/src/traits/state.rs
    • crates/katana/storage/provider/src/providers/in_memory/mod.rs
    • crates/katana/storage/provider/src/providers/db/mod.rs
    • crates/katana/storage/provider/src/providers/db/state.rs
    • crates/katana/storage/provider/src/lib.rs
    • crates/katana/storage/provider/src/providers/fork/state.rs
    • crates/katana/storage/provider/src/providers/fork/mod.rs
    • crates/katana/storage/provider/src/providers/fork/backend.rs
    • crates/katana/storage/db/benches/codec.rs
    • crates/katana/storage/provider/tests/contract.rs
    • crates/katana/storage/provider/src/providers/in_memory/state.rs
    • crates/katana/rpc/rpc/tests/starknet.rs
    • crates/katana/runner/src/lib.rs
    • crates/katana/rpc/rpc/src/starknet/mod.rs
    • crates/katana/executor/tests/executor.rs
    • crates/katana/executor/src/implementation/noop.rs
    • crates/katana/executor/src/implementation/blockifier/state.rs
    • crates/katana/core/src/backend/storage.rs
    • crates/katana/executor/src/abstraction/mod.rs
    • crates/katana/contracts/test_contract.cairo
    • crates/dojo-lang/src/plugin_test_data/system
    • crates/dojo-core/src/contract/upgradeable.cairo
    • crates/dojo-core/src/world/world_contract.cairo
    • crates/dojo-core/src/utils/test.cairo
    • crates/dojo-bindgen/src/plugins/unity/mod.rs
    • crates/dojo-core/src/tests/world.cairo
    • crates/dojo-core/src/tests/base.cairo
    • crates/benches/src/deployer.rs
    • crates/benches/contracts/src/tests/test_world.cairo
Analysis chain

LGTM! But verify the function usage in the codebase.

The introduction of the resource function is appropriate and aligns with the new Resource enum.

However, ensure that all references to the old model and contract functions are updated accordingly.


Ohayo, sensei!

The initial check didn't show direct references to the model and contract functions, but there are some call_contract references that might need further investigation. Let's dig deeper to ensure all references to the old functions are properly updated.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify all references to the removed `model` and `contract` functions are updated.

# Test: Search for the function usage. Expect: No occurrences of the removed functions.
rg --type json -e 'model\(' -e 'contract\('

Length of output: 368


Script:

#!/bin/bash
# Description: Verify all references to the removed `model` and `contract` functions are updated.

# Search for the function definitions and usages of `model` and `contract` in the codebase.
rg 'model\('
rg 'contract\('

Length of output: 26913

crates/dojo-core/src/world/world_contract.cairo (1)

45-45: Ohayo sensei!

It looks like there are still several references to the old model and contract functions in the codebase. These need to be updated to use the new resource function. Here are the locations that need attention:

  • examples/spawn-and-move/src/actions.cairo
  • crates/katana/contracts/test_contract.cairo
  • crates/dojo-core/src/utils/test.cairo
  • crates/dojo-core/src/world/world_contract.cairo
  • crates/dojo-core/src/tests/world.cairo
  • crates/dojo-core/src/tests/utils.cairo
  • crates/dojo-core/src/tests/model/model.cairo
  • crates/dojo-core/src/tests/base.cairo
  • crates/dojo-core/src/contract/upgradeable.cairo
  • crates/benches/contracts/src/tests/test_world.cairo

Please update these references to ensure consistency with the new resource function.

Analysis chain

LGTM! But verify the function usage in the codebase.

The introduction of the resource function in the IWorld trait is appropriate and aligns with the new Resource enum.

However, ensure that all references to the old model and contract functions are updated accordingly.


Ohayo sensei!

The initial verification script encountered an issue due to an unrecognized file type for Cairo. Let's refine our approach to ensure we can accurately verify the removal of model and contract function references.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify all references to the removed `model` and `contract` functions are updated.

# Test: Search for the function usage. Expect: No occurrences of the removed functions.
rg --type cairo -e 'model\(' -e 'contract\('

Length of output: 76


Script:

#!/bin/bash
# Description: Verify all references to the removed `model` and `contract` functions are updated.

# Find all Cairo files and search for the function usage.
fd -e cairo | xargs rg -e 'model\(' -e 'contract\('

Length of output: 11928

examples/spawn-and-move/manifests/dev/deployment/manifest.json (1)

392-407: Ohayo, sensei! There are inconsistencies in the resource function definitions.

The new definition of the resource function should have inputs selector: core::felt252 and outputs dojo::world::world_contract::Resource. However, some instances have different inputs and outputs. Please review and update the following occurrences to match the new definition:

  • examples/spawn-and-move/manifests/dev/deployment/manifest.json

    • Inputs: selector: core::felt252, address: core::starknet::contract_address::ContractAddress
    • Outputs: core::bool
    • State Mutability: external
  • examples/spawn-and-move/manifests/dev/deployment/abis/dojo-world.json

    • Inputs: selector: core::felt252, address: core::starknet::contract_address::ContractAddress
    • Outputs: core::bool
    • State Mutability: external
  • examples/game-lib/manifests/dev/base/abis/dojo-world.json

    • Inputs: selector: core::felt252
    • Outputs: core::bool
    • State Mutability: view
  • bin/sozo/tests/test_data/manifest.json

    • Inputs: selector: core::felt252
    • Outputs: core::array::Span::<core::felt252>
    • State Mutability: view

Please ensure all instances of the resource function match the new definition.

Analysis chain

Ohayo, sensei! The new resource function looks good.

The addition of the resource function with input selector: core::felt252 and output dojo::world::world_contract::Resource is well-defined.

However, ensure that all function calls to resource match the new definition.


Ohayo, sensei! The resource function has been found in multiple files. To ensure all instances match the new definition, let's verify the inputs and outputs of the resource function across the codebase.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify all function calls to `resource` match the new definition.

# Test: Search for the function usage. Expect: Only occurrences of the new definition.
rg --type json -A 5 $'"name": "resource"'

Length of output: 46317


Script:

#!/bin/bash
# Description: Verify the consistency of the `resource` function definition across the codebase.

# Test: Search for the function definition. Expect: Consistent inputs and outputs.
rg --type json -A 10 $'"name": "resource"' | grep -E -A 10 '"name": "resource"|inputs|outputs'

Length of output: 81627

@remybar remybar force-pushed the expose_resources_in_world_api branch from a84949e to f1e3dfe Compare August 7, 2024 05:21
@remybar remybar force-pushed the expose_resources_in_world_api branch from f1e3dfe to 9856856 Compare August 7, 2024 07:22
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Outside diff range, codebase verification and nitpick comments (1)
xtask/generate-test-db/src/main.rs (1)

60-61: Ohayo, sensei! Directory cleanup looks solid.

Using fs::remove_dir_all ensures a clean state, which is crucial for preventing conflicts with old data.

Consider adding a comment to clarify why errors are ignored, enhancing code readability.

// Ignore errors as the directories may not exist.
let _ = fs::remove_dir_all(&spawn_and_move_compressed_path);
let _ = fs::remove_dir_all(&types_test_compressed_path);

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Outside diff range, codebase verification and nitpick comments (1)
scripts/build_spawn_and_move.sh (1)

1-1: Ensure the script has execute permissions.

The shebang line is correct for a bash script. Make sure this script has execute permissions set in the repository.

chmod +x scripts/build_spawn_and_move.sh

Comment on lines 6 to 7
$sozo_path build --manifest-path examples/spawn-and-move/Scarb.toml
$sozo_path build --manifest-path examples/spawn-and-move/Scarb.toml -P release
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider handling build errors.

The build commands do not currently handle errors. Consider adding error handling to improve robustness.

$sozo_path build --manifest-path examples/spawn-and-move/Scarb.toml || { echo "Build failed"; exit 1; }
$sozo_path build --manifest-path examples/spawn-and-move/Scarb.toml -P release || { echo "Build failed"; exit 1; }

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

Outside diff range, codebase verification and nitpick comments (1)
crates/torii/types-test/src/contracts.cairo (1)

124-124: Remove or complete the implementation comment.

The comment // Implemment fn delete, input param: record_id seems incomplete or unnecessary. Consider removing it or expanding it to provide meaningful context.

-        // Implemment fn delete, input param: record_id

#!/bin/bash

# usage: bash scripts/build_cairo_projects.sh <sozo_path>
sozo_path=$1
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Validate the input path.

Ohayo, sensei! Ensure the script checks if the sozo_path is provided and valid before proceeding.

if [ -z "$sozo_path" ]; then
  echo "Error: sozo_path is not provided."
  exit 1
fi

if [ ! -x "$sozo_path" ]; then
  echo "Error: sozo_path is not executable."
  exit 1
fi

Comment on lines +7 to +9
$sozo_path build --manifest-path examples/spawn-and-move/Scarb.toml
$sozo_path build --manifest-path examples/spawn-and-move/Scarb.toml -P release
$sozo_path build --manifest-path crates/torii/types-test/Scarb.toml
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add error handling for build commands.

Consider adding error handling to ensure that each build command executes successfully.

$sozo_path build --manifest-path examples/spawn-and-move/Scarb.toml || { echo "Build failed for spawn-and-move."; exit 1; }
$sozo_path build --manifest-path examples/spawn-and-move/Scarb.toml -P release || { echo "Build failed for spawn-and-move release."; exit 1; }
$sozo_path build --manifest-path crates/torii/types-test/Scarb.toml || { echo "Build failed for types-test."; exit 1; }

Copy link
Collaborator

@glihm glihm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for that @remybar. 🙏

@glihm glihm merged commit 7461b53 into dojoengine:main Aug 9, 2024
13 of 15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants