Skip to content

Releases: dojoengine/dojo

v1.7.0-alpha.4

16 Sep 05:04
7b78108

Choose a tag to compare

v1.7.0-alpha.4 Pre-release
Pre-release

Important changes

This release is using a new stable version of Scarb: 2.12.2. Please update your .tools-version to use this stable version of Scarb that comes with several fixes required for bigger projects to compile.

At the Dojo level:

  1. Issues with enums used a keys have been solved.
  2. The layout equal to 0 is now fixed.
  3. DojoStore and DojoLegacyStore had some edge cases fixed in this PR to ensure backward compatibility of models.

What's Changed

Full Changelog: v1.7.0-alpha.3...v1.7.0-alpha.4

v1.7.0-alpha.3

10 Sep 00:02
98231fb

Choose a tag to compare

v1.7.0-alpha.3 Pre-release
Pre-release

Important fixes

this release comes with two major fixes:

  1. The dojo macro had an issue when serializing enumerations as keys in models. This bug sneaked in when we merge the proc macros upgrade. You can now use enums as keys in model in this version as expected.
  2. The sozo build command was failing on some workspaces in which only libraries were found. Now sozo correctly parses the different packages in the workspace to extract the default name when building. If you find yourself stuck in such place in the future, remember that you can always build with scarb now. Sozo build only adds the statistics and binding generation layers.
  3. Typescript v2 binding generation has been removed since unused.

What's Changed

New Contributors

Full Changelog: v1.7.0-alpha.2...v1.7.0-alpha.3

v1.7.0-alpha.2

05 Sep 19:20

Choose a tag to compare

v1.7.0-alpha.2 Pre-release
Pre-release

Important changes

This version comes with a dev version of Scarb, due to a bug fixed on the Scarb side. Please use dev-2025-09-05 version of Scarb at the moment. Once the stable release (expected to be 2.12.2) of Scarb including the fixes is out, you can transition to it.

Notable changes:

  1. Workspaces are now supported, Sozo can be used to build/test/migrate a dojo project from the workspace (the only condition is having the config files dojo_.toml at the workspace level). It is still valid to go into a package and use build/test/migrate too.
  2. Dojo is now correctly listed by the Cairo Language Server (provided by Scarb). You don't need to install anything extra, you may however want to enable those two settings. You shouldn't have anymore red lines, the navigation on definitions and type hints work correctly.
image image
  1. Migration handles correctly the new DECLARE transaction delay/nonce policies, which stabilizes the migration when several classes have to be migrated. Some nonce issues still happen in some rare cases with some INVOKE preceding the DECLARE. We are still monitoring that, don't hesitate to restart the migration if this happens.
  2. A new option --no-scarb-warnings can now be used for sozo build/test to remove warning and focus on errors.
  3. Coloring from Scarb is now correctly piped to Sozo, which ensures a way better devX for checking tests that pass or fails and compilation warnings/error.
  4. The dojo macros will now emit a compilation error if the name of a model is longer than 26 chars. This is due to the fact that Dojo adds a Value suffix to the model name and the resulting string must fit into a felt252.
  5. Introspect issues with Option should be fixed (at least for some reported edge cases). If some issues persist even with this version, please reach out opening an issue or on the discord channels.

Troubleshooting:

If the asdf install scarb dev-2025-09-05 doesn't work, you may have an outdated version of asdf. Ensure you are using asdf 0.18.0 at least. You may want to remove/add the plugin too.

What's Changed

New Contributors

Full Changelog: v1.7.0-alpha.1...v1.7.0-alpha.2

v1.7.0-alpha.1

15 Aug 17:44
67aeb9f

Choose a tag to compare

v1.7.0-alpha.1 Pre-release
Pre-release

Update the supported RPC string to reflect the actual RPC version that Sozo supports.

Full Changelog: v1.7.0-alpha.0...v1.7.0-alpha.1

v1.7.0-alpha.0

13 Aug 17:11
4cedf3f

Choose a tag to compare

v1.7.0-alpha.0 Pre-release
Pre-release

What's Changed

  • chore: add Katana 1.6.1 by @kariy in #3277
  • chore: add Katana 1.6.2 by @kariy in #3280
  • feat: implement proc macro + starknet foundry + cairo optimizations by @glihm in #3266
  • chore(devcontainer): update image: v1.6.0-alpha.2 by @tarrencev in #3278
  • chore: add katana@1.6.3 by @kariy in #3283
  • fix(utils/invoker): add split for big multicalls by @glihm in #3284
  • chore(devcontainer): update image: v1.6.0 by @tarrencev in #3282
  • chore: fix some typos in comment by @pingshuijie in #3286
  • refactor(sozo): improve error message on loading non-existent World state by @remybar in #3297
  • feat(starknet): bump JSON-RPC spec to v0.9.0-rc.2 by @kariy in #3293
  • feat(core): split Introspect and DojoStore derive attributes by @remybar in #3294
  • fix(core): FixedArray Ty/Layout improvements by @remybar in #3296
  • release(prepare): v1.7.0-alpha.0 by @tarrencev in #3299
  • ci(release): remove references of language server by @kariy in #3300

New Contributors

Full Changelog: v1.6.0-alpha.2...v1.7.0-alpha.0

v1.6.2

26 Jul 06:19

Choose a tag to compare

Prepare Voyager verification integration.

What's Changed

New Contributors

v1.6.1

25 Jul 17:36

Choose a tag to compare

Important changes

This release adds the support for nested enums are keys.

Before this release, only enums used as keys in a model would be upgradeable. But if the enums contains nested enums, it wasn't working as expected.
This release ensures that enums are always upgradeable, no matter the nested level.

pub enum E1 {
    Var1: E2,
    Var2,
}

pub enum E2 {
    Var1,
    // Adding a variant here is now supported in model upgrades.
}

#[dojo::model]
pub struct MyModel {
    #[key]
    pub v: E1,
    pub data: u32,
}

What's Changed

New Contributors

Full Changelog: v1.6.0...v1.6.1

v1.6.0

17 Jul 14:21

Choose a tag to compare

Important changes

This release stabilizes the use of RPC 0.8 of Starknet.

Dojo core

Small changes to correctly handle the errors now that they can be match.

Sozo

Binding generation is now a standalone command (but can still be used during the sozo build command). This could allow some bindings updates without having to re-build the cairo project.

A new parameter for transactions max-calls can now be used to ensure multi calls are not too big for the new network limits. By default, there is no limit and Sozo will try to send only one transaction per step during the migration. If you hit network limit because of the number of resources (models, events, contracts), playing with this value in the dojo_<profile>.toml will help adjusting the transaction size.

SDKs

Fixes on binding generation for unreal engine and typescript targets.

What's Changed

New Contributors

Full Changelog: v1.5.1...v1.6.0

v1.6.0-alpha.2

10 Jul 18:33
184a4e8

Choose a tag to compare

v1.6.0-alpha.2 Pre-release
Pre-release

Important changes

This update is mainly to add stability to the RPC upgrade. Katana 1.6.0 has been re-done, and should now support migration of Dojo worlds in all cases.

It also fixes an issue where existing worlds resources couldn't be upgraded, because the class hash changed but fields are actually the same.

What's Changed

  • chore(devcontainer): update image: v1.6.0-alpha.1 by @tarrencev in #3264
  • chore(versions): allow katana 1.6.0 on alpha by @steebchen in #3270
  • chore(versions): add Dojo 1.6.0-alpha.1 by @kariy in #3272
  • refactor(sozo): check RPC spec compatibility by @kariy in #3271
  • chore: fix some minor issues in the comments by @rustfix in #3268
  • fix(core): allow fixed layout upgrade for class hash change by @glihm in #3274
  • release(prepare): v1.6.0-alpha.2 by @tarrencev in #3276

New Contributors

Full Changelog: v1.6.0-alpha.1...v1.6.0-alpha.2

v1.6.0-alpha.1

01 Jul 21:24
054623b

Choose a tag to compare

v1.6.0-alpha.1 Pre-release
Pre-release

Important changes

Sozo:

  • Bindgen fixes for several targets (unreal and typescript).
  • Standalone command to generate the bindings with sozo bindgen if the project is already built.
  • A first implementation of the MCP server for Sozo which supports building, testing and migrating contracts + inspecting the project to get info about a contract. Currently, the MCP server must be started pointing to the scarb manifest path to ensure the server can explore the project's content. Sozo MCP uses a stdio server, which can be added to the .claude.json this way (or using the mcp add command):
      "mcpServers": {
        "<PROJECT_NAME>": {
          "type": "stdio",
          "command": "sozo",
          "args": [
            "mcp",
            "--manifest-path",
            "/path/project/spawn-and-move/Scarb.toml"
          ],
          "env": {}
        },
       }

Core

  • Permissions error flow now matches the result of the starknet contract call syscall to ensure better error message.

What's Changed

New Contributors

Full Changelog: v1.6.0-alpha.0...v1.6.0-alpha.1