Skip to content

Releases: dojoengine/dojo

v1.0.0-alpha.10

09 Sep 00:55
f105912
Compare
Choose a tag to compare
v1.0.0-alpha.10 Pre-release
Pre-release

Important changes

  • Katana now requires the --dev flag to enable the dev_predeployedAccounts endpoint (previous katana_predeployedAccounts).
  • Walnut (starknet debugger) has been integrated in Dojo and is available for sozo migrate apply --walnut and sozo execute --walnut. If you require an API key working with Dojo, please contact https://walnut.dev founders, they will be happy to share one with you.
  • Katana now returns the events for the pending block.
  • Torii bug fixes.

What's Changed

  • Update devcontainer image: v1.0.0-alpha.9 by @tarrencev in #2372
  • Break on empty events when loading from remote by @kariy in #2376
  • chore; use debug for pending tx log by @Larkooo in #2383
  • fix(katana-rpc): include events from pending block in getEvents by @kariy in #2375
  • refactor(katana): move predeployedAccounts under DevApi and remove KatanaApi by @glihm in #2310
  • opt(torii): avoid re-processing of transactions in certain case by @lambda-0x in #2381
  • feat(docker): add infinite-file-curtailer to image by @steebchen in #2386
  • Bump blockifier to HEAD of cairo-2.7 branch by @kariy in #2389
  • fix system_name in bindgen by @wighawag in #2387
  • fix(torii): offchain messages signature validation on first set by @edisontim in #2390
  • feat(dojo-compiler): add sierra to cairo debug information by @kariy in #2392
  • Bump blockifier to latest rev by @kariy in #2393
  • opt(torii): avoid calculating poseidon hash where possible by @lambda-0x in #2394
  • update default invoke max steps by @notV4l in #2395
  • fix: fix sozo issues with migration on sepolia by @glihm in #2398
  • Add walnut flag to sozo execute and migrate apply commands by @barabanovro in #2333
  • Prepare release: v1.0.0-alpha.10 by @tarrencev in #2399

New Contributors

Full Changelog: v1.0.0-alpha.9...v1.0.0-alpha.10

v1.0.0-alpha.9

30 Aug 04:50
e42ce0c
Compare
Choose a tag to compare
v1.0.0-alpha.9 Pre-release
Pre-release

Important changes

  • Sozo now warns the user if the toolchain version installed with dojoup or asdf doesn't match the one found in Scarb.toml.
  • Torii now uses websocket for libp2p communication.
  • Sozo now supports prefixes for sozo call to parse calldata.
  • Fix a bug in Sozo where already registered models were not skipped correctly.

What's Changed

  • Update devcontainer image: v1.0.0-alpha.8 by @tarrencev in #2356
  • chore(torii): less noise in logs by @Larkooo in #2358
  • fix(dojo-bindgen): ensure typescript plugin output deterministic order by @glihm in #2359
  • fix(torii-relay): remove tls for ws by @glihm in #2361
  • fix(katana): per transaction validator by @kariy in #2362
  • chore(katana-rpc): test cleanup by @kariy in #2363
  • fix(libp2p): fix typed data from model by @Larkooo in #2357
  • fix(katana): set bouncer weight to max by @kariy in #2367
  • dev: pin exact rust nightly version by @kariy in #2365
  • Update devcontainer image: e89ac13 by @tarrencev in #2369
  • feat(sozo): ensure sozo errors with dojo-core version mismatch by @glihm in #2364
  • feat: add prefixes for sozo call and better output message by @glihm in #2366
  • chore(torii): remove unused parameters by @lambda-0x in #2360
  • fix: ensure we check registered model and not declared models by @glihm in #2368
  • refactor(katana-pool): enable ordering using BTreeSet by @kariy in #2370
  • Prepare release: v1.0.0-alpha.9 by @tarrencev in #2371

Full Changelog: v1.0.0-alpha.8...v1.0.0-alpha.9

v1.0.0-alpha.8

28 Aug 17:28
d31f81e
Compare
Choose a tag to compare
v1.0.0-alpha.8 Pre-release
Pre-release

Important changes

  • Fix a bug preventing Sozo to update a world due to resource already registered errors.
  • Fix Store trait generation to ensure set/delete are available for Model and update/delete for ModelEntity.
  • Torii bug fixes an optimization to index worlds with numerous transactions.
  • Katana has now a different behavior with the nonces. Before, if a transaction for account A was in the pool, the nonce would still the same and would be incremented only when the transaction is executed. Now, Katana returns the incremented nonce even if the transaction in the pool is not yet executed, which should enhance throughput and reduce nonce errors when sending transaction with small delays.
  • Sozo will now emit a warning if a print is used in the code (as this works on Katana, but not on public networks).
  • New macro available to deploy a world: spawn_test_world, sozo build must be run before running the tests:
// Register all namespaces and models.
let world = spawn_test_world!();

// Register all models for the given namespace.
let world = spawn_test_world!(["ns1"]);

What's Changed

  • Update devcontainer image: v1.0.0-alpha.7 by @tarrencev in #2329
  • Rename common crate -> dojo-utils by @kariy in #2332
  • chore(dojo-utils): move dojo-world::utils module to dojo-utils by @kariy in #2334
  • fix(torii-graphql): expose namespace in models query by @lambda-0x in #2331
  • chore: taplo fmt by @kariy in #2336
  • refactor(katana): relax nonce check in estimateFee by @kariy in #2335
  • feat: add macros for testing by @glihm in #2337
  • feat(dojo-lang): add warnings for migrations with prints by @jsanchez556 in #2316
  • fix(schema): empty array name by @Larkooo in #2339
  • fix(katana): ensure messages are ordered by @adrianvrj in #2326
  • fix(dojo-core): adjust ACL to restore governance without relaxing permissions by @glihm in #2341
  • feat(katana): pool validation by @kariy in #2344
  • fix: ensure models generated Store trait exposes set/update/delete by @glihm in #2348
  • feat(libp2p): websocket transport by @Larkooo in #2347
  • fix: emit trace for unprocessed event only once by @lambda-0x in #2352
  • fix(sozo): ensure already registered resources don't make migration fail by @glihm in #2350
  • hotfix(katana): make sure validator state is synced with block producer by @kariy in #2353
  • opt(torii): remove unused receipt from processor & reduce one rpc call per transaction by @lambda-0x in #2351
  • Prepare release: v1.0.0-alpha.8 by @tarrencev in #2345

New Contributors

Full Changelog: v1.0.0-alpha.7...v1.0.0-alpha.8

v1.0.0-alpha.7

21 Aug 23:11
e2ed073
Compare
Choose a tag to compare
v1.0.0-alpha.7 Pre-release
Pre-release

What's Changed

Full Changelog: v1.0.0-alpha.6...v1.0.0-alpha.7

v1.0.0-alpha.6

16 Aug 18:10
ede7930
Compare
Choose a tag to compare
v1.0.0-alpha.6 Pre-release
Pre-release

Important changes

  • Fix a bug that prevented contracts from other libraries to be correctly imported during testing.
  • Ensure accounts during migration use the Pending block tag.
  • Torii can now be started before the world is deployed.
  • Contract's manifest has now a new systems entry with the list of systems found in the dojo contract.
  • Torii should now delete correctly the entities and return an empty array of models if the entity was deleted completely.

What's Changed

  • feat(torii): enable any build (not just wasm) to connect to Slot by @caillef in #2147
  • fix: ensure migrators are on block pending + display contract address by @glihm in #2293
  • fix(dojo-lang): add all crates to test database for Cairo test runner by @glihm in #2296
  • feat: improve world contract performance by @remybar in #2287
  • refactor(torii): get rid of world class hash by @Larkooo in #2298
  • refactor(torii): include model in entity deletion for filter & update member broadcast by @Larkooo in #2299
  • feat(torii-core): log when engine syncing has been reestablished by @Larkooo in #2301
  • refactor(torii-libp2p): use is_valid_signature for different sig impls by @Larkooo in #2302
  • fix(torii-core): engine update cursor when world event by @Larkooo in #2300
  • fix(torii-grpc): world class hash by @Larkooo in #2307
  • refactor(torii): entity deletion logic for models by @Larkooo in #2306
  • fix: improve world's error messages by @glihm in #2305
  • feat(dojo-lang): add systems to contract's manifest and fix DojoAuxData gathering by @glihm in #2309
  • feat(torii-libp2p): typed data from model by @Larkooo in #2308
  • Prepare release: v1.0.0-alpha.6 by @tarrencev in #2312

New Contributors

Full Changelog: v1.0.0-alpha.5...v1.0.0-alpha.6

v1.0.0-alpha.5

13 Aug 02:54
Compare
Choose a tag to compare
v1.0.0-alpha.5 Pre-release
Pre-release

important changes

  • New configuration file dojo_<PROFILE_NAME>.toml, to place all dojo specific content. Must be placed at the same level as Scarb.toml.
  • Bug fixes on Torii for Graphql and GRPC for some types that were failing.
  • ACLs revised to protect against malicious manipulation of permissions.
  • Add a new Sozo command to compute hashes: sozo hash that can accept a tag or felts.
  • Sozo init is now correctly working with pinned versions.
  • Torii full support for signed integers.
  • An empty clause in Torii subscriptions is now again subscribing to every entity.
  • Speed up migration with pre-deployed accounts on katana locally and slot.

What's Changed

  • Update devcontainer image: v1.0.0-alpha.4 by @tarrencev in #2250
  • bump metrics dependencies by @kariy in #2251
  • fix(torii): only retrieve metadata for world by @lambda-0x in #2252
  • feat: add --tag to dojoup by @glihm in #2265
  • feat: stabilize cairo to 2.7.0 by @glihm in #2257
  • katana: database metrics by @kariy in #2258
  • refactor(torii-client): remove deprecated model storage and subscription by @Larkooo in #2267
  • fix(torii): member clause escaped table name by @Larkooo in #2255
  • fix(torii-grpc): deser from db for grpc enums by @Larkooo in #2259
  • refactor(torii-grpc): subscribe to all for empty clauses by @Larkooo in #2269
  • feat(torii-grpc): add signed integers to grpc proto by @Larkooo in #2239
  • chore(katana): remove unused sequencer code by @kariy in #2279
  • fix(controller): wait for controller to be deployed by @kariy in #2278
  • feat: implement sozo init versioning by @EjembiEmmanuel in #2262
  • refactor(torii-grpc): correct pagination logic for grpc query member by @Larkooo in #2256
  • xtask: generate katana test db by @kariy in #2271
  • remove computed attribute by @remybar in #2272
  • expose resources through resource() function in world API by @remybar in #2266
  • feat(sozo): selector from tag command on sozo by @Larkooo in #2282
  • ACL rework to avoid "man in the middle" vulnerability by @remybar in #2254
  • fix(katana): handle when database is None by @kariy in #2284
  • refactor(katana): move pool into its own crate by @kariy in #2281
  • feat: adding profile config by @glihm in #2285
  • fix(sozo): add support for new ACLs workflow by @glihm in #2288
  • fix: update migration error message about world_address in Scarb.toml by @remybar in #2286
  • Prepare release: v1.0.0-alpha.5 by @tarrencev in #2289
  • feat(torii-graphql): event messages update & subscription by @Larkooo in #2227

Full Changelog: v1.0.0-alpha.4...v1.0.0-alpha.5

v1.0.0-alpha.4

02 Aug 00:47
d08c461
Compare
Choose a tag to compare
v1.0.0-alpha.4 Pre-release
Pre-release

Mostly bug fixes in this release

  • Controller integration with Sozo.
  • Fix bug when testing contracts where TEST_CLASS_HASH wasn't found.
  • Katana internal refactoring and hash computation fixes.

What's Changed

  • Update devcontainer image: v1.0.0-alpha.3 by @tarrencev in #2211
  • refactor(katana-rpc): move API implementations from Sequencer to their dedicated server struct by @kariy in #2209
  • refactor(katana): remove unneccessary level of abstraction due to KatanaSequencer by @kariy in #2214
  • fix: ensure event messages are emitted with the correct selector by @glihm in #2217
  • feat(dojo-core): add selector_from_names for cairo runtime by @glihm in #2219
  • tests: unit tests for hash computations in transaction.rs by @g4titanx in #2216
  • refactor(katana): flatten the logic of starting the node by @kariy in #2232
  • update permission api by @remybar in #2224
  • fix calldata issue by @ponderingdemocritus in #2213
  • fix(sozo): events subcommand by @lambda-0x in #2215
  • fix: ensure correct compilation unit is picked up by @glihm in #2220
  • feat(katana-db): database stats by @kariy in #2235
  • fix(sozo): upgrade_contract use selector instead of contract_address by @notV4l in #2234
  • refactor(cli): katana cli module by @kariy in #2236
  • feat(katana): db stats cli by @kariy in #2237
  • refactor(sozo): fetch writes from events and calculate diff for that + some refactor by @lambda-0x in #2203
  • Bump account_sdk to rev 512ff89 by @kariy in #2240
  • chore(katana-primitives): pleasing clippy by @kariy in #2241
  • katana: include freelist in stats by @kariy in #2243
  • Export setup module under test-utils feature by @kariy in #2247
  • fix(sozo): block can contain multiple event of same type for same address by @lambda-0x in #2245
  • refactor(sozo): deploy controller account if not exist by @kariy in #2242
  • feat(torii-core): store update member by @Larkooo in #2182
  • Prepare release: v1.0.0-alpha.4 by @tarrencev in #2249

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

v1.0.0-alpha.3

25 Jul 05:21
a6a7724
Compare
Choose a tag to compare
v1.0.0-alpha.3 Pre-release
Pre-release

Important changes

  • Sozo now supports workspaces with packages. However, only one package with [[target.dojo]] is supported into a workspace. This unlock the possibility of organizing a dojo project with some packages (crates) that can be easily imported by other projects, and having the world to deploy in the same repository.
  • Default namespaces are now supported for libraries.
  • Work on Typescript bindgen to work with namespaces and better Enum support.

What's Changed

  • Remove starknet_in_rust executor support by @kariy in #2200
  • test(katana-executor): katana to blockifier chain id invariant by @kariy in #2204
  • refactor(katana-rpc): starknet rpc clean up by @kariy in #2205
  • Cleaning/Refactoring of the dojo-core crate. by @remybar in #2187
  • fix(dojo-lang): ensure compiler tests have unique id to not avoid output conflicts by @glihm in #2206
  • refactor(katana-rpc): rename trait methods to their exact names in the api spec by @kariy in #2208
  • feat(sozo): add full workspace and accept non-dojo targets by @glihm in #2207
  • fix(sozo): adjust typescript bindgen to v1 by @ponderingdemocritus in #2202
  • Prepare release: v1.0.0-alpha.3 by @tarrencev in #2210

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

v0.7.4

22 Jul 18:19
Compare
Choose a tag to compare

Backported few bug fixes to 0.7.x

Full Changelog: v0.7.3...v0.7.4

v1.0.0-alpha.2

20 Jul 23:07
8a1a652
Compare
Choose a tag to compare
v1.0.0-alpha.2 Pre-release
Pre-release

Important changes

  • ⚠️breaking ⚠️ Support for Cairo 2.7.0-rc.3 for both dojo-lang and katana.
  • Subscriptions with Torii can now be updated by providing an array of clauses.

What's Changed

  • Update devcontainer image: v1.0.0-alpha.1 by @tarrencev in #2181
  • rm useless alloy patches by @tcoratger in #2183
  • move to edition 2023_11 by @remybar in #2179
  • Update Katana benchmark CI by @kariy in #2184
  • feat: update subscription by subscription id & multiple clauses by @Larkooo in #2176
  • fix: ensure the snake case is only applied to model name by @glihm in #2185
  • Bump blockifier to support Cairo 2.7 by @kariy in #2180
  • bench(katana-executor): measure cached state concurrency by @kariy in #2190
  • fix(dojo-lang): bump to cairo 2.7.0-rc.3 by @glihm in #2189
  • fix: ensure scarb points to the correct plugin version by @glihm in #2194
  • feat(dojo-bindgen): signed integers & typescript by @Larkooo in #2191
  • Prepare release: v1.0.0-alpha.2 by @tarrencev in #2195
  • fix(sozo): update some clap arguments by @lambda-0x in #2196
  • fix(sozo): use Provider trait and avoid manifest read when possible by @glihm in #2197

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