Change Log
All notable changes to this project will be documented in this file. See Conventional Commits (opens in a new tab) for commit guidelines.
1.42.0 (opens in a new tab) (2023-04-13)
Bug Fixes
- cli: account for getRecord's trimming (#574 (opens in a new tab)) (9c5317a (opens in a new tab))
- cli: add back in resolveTableId export for use with mudConfig (#518 (opens in a new tab)) (4906d77 (opens in a new tab))
- cli: handle static arrays in worldgen (#566 (opens in a new tab)) (b6a09f2 (opens in a new tab))
- cli: remove node-dependent exports from base module (#517 (opens in a new tab)) (abb34a6 (opens in a new tab))
- cli: use esbuild to load mud config (#565 (opens in a new tab)) (18a8c42 (opens in a new tab))
- cli: use fileSelector in worldgen (#502 (opens in a new tab)) (fa021ed (opens in a new tab))
- cli: wait for tx confirmation on deploy txs (#606 (opens in a new tab)) (b92be71 (opens in a new tab))
- network: fall back to RPC sync if MODE is not available (#555 (opens in a new tab)) (4de4b6d (opens in a new tab))
- network: fix mode decoding (#562 (opens in a new tab)) (fb82313 (opens in a new tab))
- network: handle singleton/empty keys (#541 (opens in a new tab)) (1e0ddb9 (opens in a new tab))
- network: skip sync from cache in dev mode (#521 (opens in a new tab)) (818c1e2 (opens in a new tab))
- recs,cli: fix bigint in recs and tsgen (#563 (opens in a new tab)) (29fefae (opens in a new tab))
- recs: overridden component update stream should return the overridden component (#544 (opens in a new tab)) (9af097d (opens in a new tab))
- std-client: export getBurnerWallet (#547 (opens in a new tab)) (5b5a71a (opens in a new tab))
- world: allow world to access own functions via external calls (#609 (opens in a new tab)) (98047f7 (opens in a new tab))
- world: give World contract access to root namespace (#575 (opens in a new tab)) (cbef50d (opens in a new tab))
Features
- add support for key schemas (#480 (opens in a new tab)) (37aec2e (opens in a new tab))
- align git dep versions (#577 (opens in a new tab)) (2b5fb5e (opens in a new tab))
- cli/recs/std-client: add ts definitions generator (#536 (opens in a new tab)) (dd1efa6 (opens in a new tab))
- cli: add
mud test-v2
command (#554 (opens in a new tab)) (d6be8b0 (opens in a new tab)) - cli: add
set-version
to upgrade all MUD dependencies in a project (#527 (opens in a new tab)) (89731a6 (opens in a new tab)) - cli: add encode function to all tables (#498 (opens in a new tab)) (564604c (opens in a new tab))
- cli: add module config to CLI (#494 (opens in a new tab)) (263c828 (opens in a new tab))
- cli: add mud2 cli entrypoint with only v2 commands (#567 (opens in a new tab)) (785a324 (opens in a new tab))
- cli: add registerFunctionSelectors to deploy cli (#501 (opens in a new tab)) (de3d459 (opens in a new tab))
- cli: add worldgen (#496 (opens in a new tab)) (e84c0c8 (opens in a new tab))
- cli: allow customization of IWorld interface name via mud config, change
world/IWorld
toworld/IBaseWorld
(#545 (opens in a new tab)) (38b355c (opens in a new tab)) - cli: allow passing world address and src dir to deploy cli (#586 (opens in a new tab)) (4b532be (opens in a new tab))
- cli: allow static arrays as abi types in store config and tablegen (#509 (opens in a new tab)) (588d037 (opens in a new tab))
- cli: improve store config typehints, prepare for static array support (#508 (opens in a new tab)) (abb5eb2 (opens in a new tab))
- cli: improve storeArgument, refactor cli (#500 (opens in a new tab)) (bb68670 (opens in a new tab))
- cli: include stateMutability in worldgen (#571 (opens in a new tab)) (3a91292 (opens in a new tab))
- cli: namespace deploy output by chain id (#516 (opens in a new tab)) (7687349 (opens in a new tab))
- cli: rename deploymentInfoDirectory to deploysDirectory, default to ./deploys (#519 (opens in a new tab)) (1dba0d3 (opens in a new tab))
- cli: set storeArgument to true by default (#553 (opens in a new tab)) (cb1ecbc (opens in a new tab))
- cli: use a central codegen dir for tablegen and worldgen (#585 (opens in a new tab)) (7500b11 (opens in a new tab))
- cli: use abi types in store config (#507 (opens in a new tab)) (12a739f (opens in a new tab))
- cli: use json for gas report output (#607 (opens in a new tab)) (bea12ca (opens in a new tab))
- config: create config package (#589 (opens in a new tab)) (d2a23a6 (opens in a new tab))
- config: separate config from cli (#600 (opens in a new tab)) (cd224a5 (opens in a new tab))
- create-mud: use pnpm in templates, move to root so they can be installed/run (#599 (opens in a new tab)) (010740d (opens in a new tab))
- mode mvp (#492 (opens in a new tab)) (08a7baf (opens in a new tab))
- network,recs,std-client: support StoreSetField before StoreSetRecord (#581 (opens in a new tab)) (f259f90 (opens in a new tab)), closes #479 (opens in a new tab) #523 (opens in a new tab)
- network: add fastTxExecute util (#543 (opens in a new tab)) (f05a70a (opens in a new tab))
- network: add option to sync in main thread instead of worker (#522 (opens in a new tab)) (4e8e7d7 (opens in a new tab))
- network: integrate initial sync from MODE (#493 (opens in a new tab)) (7d06c1b (opens in a new tab))
- schema-type: add SchemaType -> primitive map, rearrange files (#488 (opens in a new tab)) (b1bf876 (opens in a new tab))
- std-client: add getBurnerWallet util (#546 (opens in a new tab)) (f427b50 (opens in a new tab))
- std-client: move v2 setup to its own function/file (#526 (opens in a new tab)) (ef5b4c2 (opens in a new tab))
- store: add metadata to the schema table (#550 (opens in a new tab)) (55ab704 (opens in a new tab))
- use IErrors in IStore and IWorldCore (#573 (opens in a new tab)) (4f9ed7b (opens in a new tab))
- use viem when creating burner wallet (#576 (opens in a new tab)) (d5d22e0 (opens in a new tab))
- v2 event decoding (#415 (opens in a new tab)) (374ed54 (opens in a new tab))
- world,store: add updateInField (#525 (opens in a new tab)) (0ac76fd (opens in a new tab))
- world: add naive ReverseMappingHook/Module (#487 (opens in a new tab)) (36aaaef (opens in a new tab))
- world: add support for modules, add RegistrationModule, add CoreModule (#482 (opens in a new tab)) (624cbbc (opens in a new tab))
- world: add UniqueEntityModule (#552 (opens in a new tab)) (983e26a (opens in a new tab))
- world: allow payable systems (#568 (opens in a new tab)) (b63aca8 (opens in a new tab))
- world: allow registration of function selectors in the World, split out RegisterSystem from World (#481 (opens in a new tab)) (ba0166f (opens in a new tab))
- world: index first key for KeysWithValueModule on tables with composite keys (#569 (opens in a new tab)) (bcba109 (opens in a new tab))
- world: ReverseMapping: infer target table id from source table id, add getKeysWithValue util (#490 (opens in a new tab)) (f69e3dc (opens in a new tab))
- world: simplify access control to namespaces instead of routes (#467 (opens in a new tab)) (945f2ef (opens in a new tab))
1.41.0 (opens in a new tab) (2023-03-09)
Bug Fixes
- cli: add missing await (#475 (opens in a new tab)) (efb5d76 (opens in a new tab))
- cli: add missing await to tablegen, fix formatting (#472 (opens in a new tab)) (4313c27 (opens in a new tab))
- cli: avoid fs usage in utils, create deployment output directory if it doesn't exist (#471 (opens in a new tab)) (cc8aa13 (opens in a new tab))
- services: fix protobuf imports (#477 (opens in a new tab)) (3eda547 (opens in a new tab))
- world: fix schema order (#464 (opens in a new tab)) (3d137dd (opens in a new tab))
Features
- add pushToField to Store and World (#434 (opens in a new tab)) (b665efc (opens in a new tab))
- cli: add setMetadata to autogen of table libraries (#466 (opens in a new tab)) (1e129fe (opens in a new tab))
- cli: add v2 deployment script (#450 (opens in a new tab)) (1db37a5 (opens in a new tab))
- cli: user types and route/path separation (#454 (opens in a new tab)) (758bf03 (opens in a new tab))
- react: option for useEntityQuery to re-render on value changes (#460 (opens in a new tab)) (6b90b85 (opens in a new tab))
1.40.0 (opens in a new tab) (2023-03-03)
Bug Fixes
- ecs-browser: fix some errors in ecs-browser (#420 (opens in a new tab)) (2a7ce21 (opens in a new tab))
Features
- add StoreMetadata table for table name and field names to Store and World (#428 (opens in a new tab)) (ae39ace (opens in a new tab))
- cli: reorganize internal structure and add exports for all utilities (#451 (opens in a new tab)) (e683904 (opens in a new tab))
- phaserx: tag native phaser game objects with object pool id (#453 (opens in a new tab)) (27ac5d3 (opens in a new tab))
- v2 - add store, world and schema-type, cli table code generation (#422 (opens in a new tab)) (cb731e0 (opens in a new tab))
BREAKING CHANGES
- This commit removes the deprecated
mud deploy
CLI command. Usemud deploy-contracts
instead.
1.39.0 (opens in a new tab) (2023-02-22)
Features
- create-mud: default to latest mud version (#432 (opens in a new tab)) (5a38ad6 (opens in a new tab))
1.38.0 (opens in a new tab) (2023-02-22)
Bug Fixes
- create-mud: small linting/type fixes for templates (#425 (opens in a new tab)) (1f2598c (opens in a new tab))
Features
- cli: deprecate create command (#424 (opens in a new tab)) (292119f (opens in a new tab))
- cli: log client world URL (#426 (opens in a new tab)) (f257467 (opens in a new tab))
1.37.1 (opens in a new tab) (2023-02-17)
Note: Version bump only for package mud
1.37.0 (opens in a new tab) (2023-02-16)
Bug Fixes
- package entry points, peer dep versions (#409 (opens in a new tab)) (66a7fd6 (opens in a new tab))
Features
- create-mud: update mud versions (#407 (opens in a new tab)) (96dfef9 (opens in a new tab))
Reverts
- Revert "chore(release): publish v1.37.0" (c934f53 (opens in a new tab))
1.36.1 (opens in a new tab) (2023-02-16)
Note: Version bump only for package mud
1.36.0 (opens in a new tab) (2023-02-16)
Bug Fixes
- create-mud: attempt to fix create-mud build/install issues (#406 (opens in a new tab)) (ea53acc (opens in a new tab))
Features
- cli: use forge config for paths to src, test, out (#392 (opens in a new tab)) (01217d3 (opens in a new tab))
1.35.0 (opens in a new tab) (2023-02-15)
Bug Fixes
- cli: exit if generateDeploy fails in deploy-contracts setup (#377 (opens in a new tab)) (71dd7f0 (opens in a new tab))
- cli: pass reuseComponents arg in deploy command (#356 (opens in a new tab)) (8e31984 (opens in a new tab))
- cli: use nodejs grpc transport (#374 (opens in a new tab)) (4c9ca7d (opens in a new tab))
- network: add explicit return type to createFaucetService (#399 (opens in a new tab)) (cae82e5 (opens in a new tab))
- network: use current block number while waiting for new blocks (#368 (opens in a new tab)) (09b77a7 (opens in a new tab))
- solecs: make OwnableWritable overridable (#370 (opens in a new tab)) (49d520e (opens in a new tab))
Features
- cli: add gas-report command (#365 (opens in a new tab)) (c2a5209 (opens in a new tab))
- cli: add initialization libs to deploy (#361 (opens in a new tab)) (3999ca0 (opens in a new tab))
- cli: allow initializers to utilize SystemStorage (#371 (opens in a new tab)) (b8ba018 (opens in a new tab))
- create-mud: add create-mud package (#336 (opens in a new tab)) (e85c124 (opens in a new tab))
- update forge-std, use some new features in cli (#311 (opens in a new tab)) (43ad118 (opens in a new tab))
1.34.0 (opens in a new tab) (2023-01-29)
Bug Fixes
- cli: round gas price to nearest integer (#348 (opens in a new tab)) (ce07174 (opens in a new tab))
- network: throw errors from txQueue calls (#351 (opens in a new tab)) (a811ff7 (opens in a new tab)), closes #315 (opens in a new tab)
- phaserx: reset game object masks when resetting embodied entity (#349 (opens in a new tab)) (2153f69 (opens in a new tab))
Features
- network: add support for external wallets (eg MetaMask) (#256 (opens in a new tab)) (bf0b5cf (opens in a new tab))
- solecs: add deterministic storage location for systems, add storage access util (#264 (opens in a new tab)) (f18c398 (opens in a new tab))
1.33.1 (opens in a new tab) (2023-01-12)
Note: Version bump only for package mud
1.33.0 (opens in a new tab) (2023-01-12)
Bug Fixes
- cli: do not copy System test ABIs during build 🧱 (#312 (opens in a new tab)) (660e508 (opens in a new tab))
- solecs: use _setOwner in Ownable constructor (#338 (opens in a new tab)) (851a3e6 (opens in a new tab))
Features
- cli: add deploy option to specify whether dev flag should be appended to client url (#313 (opens in a new tab)) (d3de8d2 (opens in a new tab))
- react: add react package (#294 (opens in a new tab)) (f5ee290 (opens in a new tab))
- std-contracts: add SystemCallbackComponent (#303 (opens in a new tab)) (7b3a859 (opens in a new tab))
Reverts
- Revert "feat: bump devnode gas limit to 100m (#289)" (#302) (34c9d27 (opens in a new tab)), closes #289 (opens in a new tab) #302 (opens in a new tab)
1.32.0 (opens in a new tab) (2023-01-06)
Bug Fixes
- update tween references after phaser bump (#297 (opens in a new tab)) (9d6ed01 (opens in a new tab))
Features
- ecs-browser: replace react syntax highlighter with shiki and bundler with tsup (#262 (opens in a new tab)) (915506d (opens in a new tab))
1.31.3 (opens in a new tab) (2022-12-16)
Bug Fixes
- cli: better logs, more resilience, better gas price mgmt (#300 (opens in a new tab)) (26c62e6 (opens in a new tab))
1.31.2 (opens in a new tab) (2022-12-15)
Bug Fixes
- std-client: allow default components to be passed in to setupMUDNetwork (#299 (opens in a new tab)) (5d043ee (opens in a new tab))
1.31.1 (opens in a new tab) (2022-12-15)
Bug Fixes
- cli issue with circular dependencies (#291 (opens in a new tab)) (bbc182f (opens in a new tab))
- cli: catch error when attempting to invalid file (#282 (opens in a new tab)) (add01a8 (opens in a new tab))
- cli: reset LibDeploy.sol using original/cached contents (#292 (opens in a new tab)) (6e7a8b9 (opens in a new tab))
- new entities should be included in overrides (#290 (opens in a new tab)) (878ee2a (opens in a new tab))
- std-contracts: add virtual to MudTest setUp (#298 (opens in a new tab)) (942cfcd (opens in a new tab))
1.31.0 (opens in a new tab) (2022-12-14)
Bug Fixes
- add LoadingState component from SyncWorker (#288 (opens in a new tab)) (2026abc (opens in a new tab))
- cli: mud trace bug for non-local networks (#276 (opens in a new tab)) (3f6abeb (opens in a new tab))
- cli: replace LibDeploy.sol content with stub (275824a (opens in a new tab))
- use interfaces in LibDeploy (#278 (opens in a new tab)) (6d01082 (opens in a new tab))
Features
- bump devnode gas limit to 100m (#289 (opens in a new tab)) (a02e44b (opens in a new tab))
- services: twitter verification / linking behind a flag (#274 (opens in a new tab)) (60d4ae8 (opens in a new tab))
- solecs: add world to IComponent definition (#284 (opens in a new tab)) (881e4ea (opens in a new tab))
- std-client: add more granular relationship utilities ⏳ (#283 (opens in a new tab)) (f094624 (opens in a new tab))
1.30.1 (opens in a new tab) (2022-12-02)
Note: Version bump only for package mud
1.30.0 (opens in a new tab) (2022-12-02)
Features
- cli: hot system replacement, new commands (deploy-contracts, codegen-libdeploy, devnode, types, test, create) (#277 (opens in a new tab)) (8e32f98 (opens in a new tab))
1.29.0 (opens in a new tab) (2022-11-29)
Bug Fixes
- allow overriding preset components, replace Owned interface with IERC173, fix IComponent interface (#239 (opens in a new tab)) (ae3983b (opens in a new tab))
Features
- cli: add faucet cli (#271 (opens in a new tab)) (a33f1ce (opens in a new tab))
- cli: add mud types command for TypeChain type generation (#259 (opens in a new tab)) (4303b40 (opens in a new tab))
- solecs: add util to split up bitpacked data (#247 (opens in a new tab)) (a7f73b0 (opens in a new tab))
- std-contracts: basic gas metrics for mud components (#255 (opens in a new tab)) (2aeb4a6 (opens in a new tab))
1.28.1 (opens in a new tab) (2022-11-24)
Bug Fixes
- recalculate world view on phaser resize (#263 (opens in a new tab)) (7a01b91 (opens in a new tab))
- typescript errors (#253 (opens in a new tab)) (83e0c7a (opens in a new tab))
1.28.0 (opens in a new tab) (2022-11-20)
Features
- network: system call stream available in streaming service (0244eb8 (opens in a new tab)), closes #254 (opens in a new tab)
1.27.0 (opens in a new tab) (2022-11-15)
Bug Fixes
- network: disable browser cache in dev mode (#213 (opens in a new tab)) (ba9e6bc (opens in a new tab))
- phaserx: scale zoom delta with pinch speed (#242 (opens in a new tab)) (e939ed2 (opens in a new tab))
- solecs: restrict write access to Set and MapSet to owner (#244 (opens in a new tab)) (f17a6d7 (opens in a new tab))
Code Refactoring
- ecs-browser: make dev components optional, remove unnecessary dependencies (#235 (opens in a new tab)) (868ae02 (opens in a new tab)), closes #231 (opens in a new tab)
BREAKING CHANGES
-
ecs-browser: changes how props are handled, no longer are entities or other devComponent props required, these are inferred or set as optional and the handling is conditonal now
-
Update packages/ecs-browser/src/ComponentEditor.tsx
Co-authored-by: alvarius 89248902+alvrs@users.noreply.github.com
- Update packages/ecs-browser/src/ComponentEditor.tsx
Co-authored-by: alvarius 89248902+alvrs@users.noreply.github.com
- feat(ecs-browser): migrate browser dev components to own function
Move creation of the dev components needed for the Browser to be created outside of the Browser for easier hooking into
-
fix(ecs-browser): remove unused import
-
fix(ecs-browser): fix from Kooshaba
Co-authored-by: alvarius 89248902+alvrs@users.noreply.github.com
1.26.0 (opens in a new tab) (2022-11-07)
Bug Fixes
- phaserx: avoid creating tilemap chunks if tilemap is not visible (#241 (opens in a new tab)) (641e2c4 (opens in a new tab))
Features
- relay: check message data doesn't exceed a configurable limit (#195 (opens in a new tab)) (4e35ed3 (opens in a new tab))
- services: admin endpoint on faucet (#238 (opens in a new tab)) (282fd69 (opens in a new tab))
1.25.1 (opens in a new tab) (2022-11-03)
Note: Version bump only for package mud
1.25.0 (opens in a new tab) (2022-11-03)
Bug Fixes
- add license (af8eaa3 (opens in a new tab))
- remove global install of cli (653281e (opens in a new tab))
Features
- network,std-client: add support for SystemCall events in default MUD network setup (#232 (opens in a new tab)) (93d947b (opens in a new tab))
- network: export createBlockNumberStream (#230 (opens in a new tab)) (c227e5d (opens in a new tab))
- solecs: allow overriding Component logic, better inheritance (#229 (opens in a new tab)) (d4f5a4b (opens in a new tab))
- std-client: export missing types (aefba08 (opens in a new tab))
- working deploy script from mud basics (#218 (opens in a new tab)) (fd1c61b (opens in a new tab))
1.24.1 (opens in a new tab) (2022-10-29)
Bug Fixes
- std-contracts: use assembly for delegation in UpgradableSystem (#228 (opens in a new tab)) (1fa46fd (opens in a new tab))
1.24.0 (opens in a new tab) (2022-10-28)
Features
- v2 endpoint for pruned snapshot that returns entities as raw bytes (#215 (opens in a new tab)) (28cce1e (opens in a new tab))
1.23.1 (opens in a new tab) (2022-10-28)
Bug Fixes
- avoid early return for unknown components (#226 (opens in a new tab)) (bb8684f (opens in a new tab))
1.23.0 (opens in a new tab) (2022-10-26)
Features
- add UpgradableSystem (#225 (opens in a new tab)) (8229633 (opens in a new tab))
1.22.0 (opens in a new tab) (2022-10-26)
Features
- network: expose method to register new system contracts on the client (#224 (opens in a new tab)) (4583767 (opens in a new tab))
- network: simplify calling untyped systems (#223 (opens in a new tab)) (94e4788 (opens in a new tab))
1.21.0 (opens in a new tab) (2022-10-26)
Bug Fixes
- solecs: remove console import from MapSet (#216 (opens in a new tab)) (b3116b3 (opens in a new tab))
Features
- network: send ack between main thread and sync worker (#220 (opens in a new tab)) (e06978a (opens in a new tab))
1.20.0 (opens in a new tab) (2022-10-22)
Features
- recs: add util to clear cache of local cache component (#217 (opens in a new tab)) (30a5868 (opens in a new tab))
1.19.0 (opens in a new tab) (2022-10-21)
Bug Fixes
- checksum address / value when pruning snapshot (#214 (opens in a new tab)) (64fd178 (opens in a new tab))
Features
- network: only create encoders if asked for it (c5af08c (opens in a new tab))
1.18.0 (opens in a new tab) (2022-10-21)
Bug Fixes
- ecs-browser: remove component on contract from ecs-browser (#205 (opens in a new tab)) (f08c6d1 (opens in a new tab))
Features
- service stabilizations, send ecs tx on drip, new pruned snapshot endpoint (#204 (opens in a new tab)) (d0de185 (opens in a new tab))
- solecs: add payable system interface (#206 (opens in a new tab)) (a436d9e (opens in a new tab))
- utils: add more general euclidiean distance util (687f840 (opens in a new tab))
1.17.0 (opens in a new tab) (2022-10-19)
Features
- allow specific snapshot chunk ratio (#212 (opens in a new tab)) (827d972 (opens in a new tab))
1.16.0 (opens in a new tab) (2022-10-19)
Features
- network: expose more sync settings (#211 (opens in a new tab)) (48987f1 (opens in a new tab))
1.15.0 (opens in a new tab) (2022-10-18)
Features
- network): expose relay ping method, feat(std-client: add tx hash to action component (#209 (opens in a new tab)) (3e0b4a7 (opens in a new tab))
1.14.2 (opens in a new tab) (2022-10-18)
Note: Version bump only for package mud
1.14.1 (opens in a new tab) (2022-10-18)
Note: Version bump only for package mud
1.14.0 (opens in a new tab) (2022-10-18)
Features
- expose registerComponent method from setupMUDNetwork (#207 (opens in a new tab)) (4b078bd (opens in a new tab))
- mud.dev: add video content (ffca85e (opens in a new tab))
1.13.0 (opens in a new tab) (2022-10-15)
Features
- network: expose SystemsRegistry and ComponentsRegistry from setupMUDNetwork (373d62b (opens in a new tab))
1.12.0 (opens in a new tab) (2022-10-12)
Bug Fixes
- std-contracts: fix name of Uint32Component (#201 (opens in a new tab)) (82600e2 (opens in a new tab))
Features
- fail without error on certain checks and other improvements (#202 (opens in a new tab)) (f5d565e (opens in a new tab))
1.11.0 (opens in a new tab) (2022-10-11)
Features
- add BareComponent (#200 (opens in a new tab)) (780d62c (opens in a new tab))
- relay: check account balance is greater than a configured amount (#194 (opens in a new tab)) (1cbbd5b (opens in a new tab))
1.10.0 (opens in a new tab) (2022-10-11)
Features
- ecs-browser: add support for modifying boolean values (1dba52e (opens in a new tab))
1.9.0 (opens in a new tab) (2022-10-11)
Bug Fixes
- solecs): only allow components to register their own updates, feat(std-client: add support for multiple overrides per component per action (#199 (opens in a new tab)) (d8dd63e (opens in a new tab))
Features
- network: fall back to rpc if stream service errors (#190 (opens in a new tab)) (414e777 (opens in a new tab))
- services: grpc prometheus metrics (#196 (opens in a new tab)) (33e8959 (opens in a new tab))
1.8.0 (opens in a new tab) (2022-10-07)
Bug Fixes
- network: use websocket to subscribe to relayer messages (8218249 (opens in a new tab))
- relay: open stream grpc endpoint not properly closing (#187 (opens in a new tab)) (1db4a7d (opens in a new tab))
Features
- connected relayer clients (#188 (opens in a new tab)) (dc3fcdf (opens in a new tab))
- network: expose connectedAddressChecksum (#189 (opens in a new tab)) (e39d245 (opens in a new tab))
- wss for stream service (#186 (opens in a new tab)) (d4511ac (opens in a new tab))
1.7.1 (opens in a new tab) (2022-10-06)
Note: Version bump only for package mud
1.7.0 (opens in a new tab) (2022-10-06)
Bug Fixes
- ecs-browser: do not early return for entity 0 (bf36cc0 (opens in a new tab))
- relay: proper interval rate limiting and flag to control account balance check (#181 (opens in a new tab)) (e84ae44 (opens in a new tab))
Features
- add utils to normalize hex ids (#185 (opens in a new tab)) (170e963 (opens in a new tab))
- general service improvements (#179 (opens in a new tab)) (e0dac83 (opens in a new tab))
- services: service-side changes for health probes (#183 (opens in a new tab)) (da4cf91 (opens in a new tab))
- soleces: expose component functions set and remove internally without onlyWriter permissions (#182 (opens in a new tab)) (662936b (opens in a new tab))
1.6.0 (opens in a new tab) (2022-10-04)
Bug Fixes
- make OverridableComponent conform with Component type (#180 (opens in a new tab)) (c9d2c31 (opens in a new tab))
Features
- flag for sig verification, rate limiting of push, and check for balance when relaying (#175 (opens in a new tab)) (0271ac9 (opens in a new tab))
1.5.1 (opens in a new tab) (2022-10-03)
Note: Version bump only for package mud
1.5.0 (opens in a new tab) (2022-10-03)
Features
- add a stream rpc for message push (#174 (opens in a new tab)) (e0aa956 (opens in a new tab))
- faucet re-drip after tweet, rpc to get time until next drip (#173 (opens in a new tab)) (27b08fc (opens in a new tab))
1.4.1 (opens in a new tab) (2022-10-03)
Note: Version bump only for package mud
1.4.0 (opens in a new tab) (2022-10-03)
Features
- add signature verification for all client actions via relay service (#167 (opens in a new tab)) (7920d6e (opens in a new tab))
- faucet improvements (#168 (opens in a new tab)) (29d0b91 (opens in a new tab))
- network: add util for creating faucet service (#171 (opens in a new tab)) (9f50d9c (opens in a new tab))
- network: expose mappings and ecsEvent$ from setupMUDNetwork (44a8676 (opens in a new tab))
1.3.0 (opens in a new tab) (2022-09-30)
Bug Fixes
- network: remove failed actions from the queue (b27b958 (opens in a new tab))
- recs: change internal query behavior to match previous version (47b8834 (opens in a new tab))
- std-client: add stream service config to createMUDNetwork (98b0861 (opens in a new tab))
Features
- recs: add local cache component (#169 (opens in a new tab)) (09058f6 (opens in a new tab))
- recs: allow multiple subscribers per query update$ (6d13531 (opens in a new tab))
1.2.0 (opens in a new tab) (2022-09-29)
Bug Fixes
- network: check event type instead of just value before decoding (#166 (opens in a new tab)) (f4dedd9 (opens in a new tab))
Features
- network: increase network performance by reducing unnecessary rpc calls (#165 (opens in a new tab)) (195b710 (opens in a new tab))
1.1.0 (opens in a new tab) (2022-09-28)
Features
- add createRelayService, add utils to work with Uint8Arrays (#164 (opens in a new tab)) (b02992b (opens in a new tab))
- basic faucet service implementation (#163 (opens in a new tab)) (3217176 (opens in a new tab))
- ecs-browser: make nameComponent and spawnPrototypeAt optional (7822d53 (opens in a new tab))
- initial implementation of ecs relay service (#157 (opens in a new tab)) (140aec3 (opens in a new tab))
1.0.0 (opens in a new tab) (2022-09-27)
Note: Version bump only for package mud
0.16.4 (opens in a new tab) (2022-09-26)
Bug Fixes
- network: cancel tx request if gas estimation failed (565b37f (opens in a new tab))
0.16.3 (opens in a new tab) (2022-09-26)
Bug Fixes
- do gas estimation right before sending tx to avoid invalid gas estimations (f251642 (opens in a new tab))
0.16.2 (opens in a new tab) (2022-09-26)
Note: Version bump only for package mud
0.16.1 (opens in a new tab) (2022-09-26)
Note: Version bump only for package mud
0.16.0 (opens in a new tab) (2022-09-26)
Bug Fixes
- std-client: add generic type to waitForComponentValueIn (f1641d4 (opens in a new tab))
Features
- network: add system call stream (#162 (opens in a new tab)) (5caef57 (opens in a new tab))
- recs: add support for custom type in component (#158 (opens in a new tab)) (fdc781d (opens in a new tab))
- std-contracts: add FunctionComponent (#161 (opens in a new tab)) (d720277 (opens in a new tab))
- utils: add keccak256Coord (#160 (opens in a new tab)) (1734cdb (opens in a new tab))
0.15.1 (opens in a new tab) (2022-09-23)
Note: Version bump only for package mud
0.15.0 (opens in a new tab) (2022-09-21)
Features
- add keccak256Coord (d0d4500 (opens in a new tab))
0.14.2 (opens in a new tab) (2022-09-21)
Note: Version bump only for package mud
0.14.1 (opens in a new tab) (2022-09-21)
Bug Fixes
- network: initial sync (#156 (opens in a new tab)) (6116585 (opens in a new tab))
0.14.0 (opens in a new tab) (2022-09-20)
Bug Fixes
- phaser input click$ stream (#152 (opens in a new tab)) (a7e1cfe (opens in a new tab))
- phaserx: distinguish left and right click in click$ stream (#155 (opens in a new tab)) (004753d (opens in a new tab))
- std-client: remove references to old phaser version (#153 (opens in a new tab)) (c691c6e (opens in a new tab))
Features
- std-client: add setupContracts (#154 (opens in a new tab)) (be86d24 (opens in a new tab))
0.13.0 (opens in a new tab) (2022-09-19)
Features
- various tweaks for mudwar (#151 (opens in a new tab)) (53bc3cc (opens in a new tab))
0.12.0 (opens in a new tab) (2022-09-16)
Features
- cli: forge bulk upload ecs state script (#142 (opens in a new tab)) (bbd6e1f (opens in a new tab))
0.11.1 (opens in a new tab) (2022-09-15)
Bug Fixes
- do not run prepack multiple times when publishing (4f6f4c3 (opens in a new tab))
0.11.0 (opens in a new tab) (2022-09-15)
Features
- add more granularity to initial sync state report (#146 (opens in a new tab)) (d4ba338 (opens in a new tab))
0.10.0 (opens in a new tab) (2022-09-14)
Features
- add chunk snapshot and stream service (#139 (opens in a new tab)) (8c9d4b3 (opens in a new tab))
- matching Perlin noise implementations in Solidity and AssemblyScript (#145 (opens in a new tab)) (29094c4 (opens in a new tab))
0.9.0 (opens in a new tab) (2022-09-13)
Bug Fixes
- network: align hex entity id formatting (#140 (opens in a new tab)) (93b1bd6 (opens in a new tab))
Features
- network: add loading state component update stream to SyncWorker (#141 (opens in a new tab)) (824c4f3 (opens in a new tab))
BREAKING CHANGES
-
network: The loading state component is attached to the entity with id 0x060D (GodID). The std-client package previously exported a different mudwar specific GodID, which has been replaced with the 0x060D GodID exported by the network package.
-
test(network): add test for LoadingState and fix existing tests
0.8.1 (opens in a new tab) (2022-08-22)
Bug Fixes
- start from initialBlockNumber, build settings, fix github actions, and other minor additions (#137 (opens in a new tab)) (08eab5c (opens in a new tab))
0.8.0 (opens in a new tab) (2022-08-22)
Bug Fixes
- fix mud.dev build and improve responsiveness (#134 (opens in a new tab)) (a3f2b24 (opens in a new tab))
Features
- add codeowners file (#132 (opens in a new tab)) (258c9e5 (opens in a new tab))
- add mud.dev (#133 (opens in a new tab)) (302588c (opens in a new tab))
- integrate proto from services into network (#131 (opens in a new tab)) (756fdb7 (opens in a new tab))
0.7.0 (opens in a new tab) (2022-08-19)
Features
- integrate mud services (#130 (opens in a new tab)) (abe763c (opens in a new tab))
0.6.0 (opens in a new tab) (2022-08-15)
Code Refactoring
- sync worker (+ integrated snapshot service) (#125 (opens in a new tab)) (6173b59 (opens in a new tab))
BREAKING CHANGES
-
sync worker update stream returns component id instead of component key
-
test(network): add tests for sync utils and SyncWorker logic
-
chore: remove logs and improve comments
-
chore: add logs
Co-authored-by: andrii dobroshynski 24281657+andriidski@users.noreply.github.com
0.5.1 (opens in a new tab) (2022-08-05)
Bug Fixes
- only render prototype creator if required components are provided (#124 (opens in a new tab)) (d877b39 (opens in a new tab))
0.5.0 (opens in a new tab) (2022-08-05)
Bug Fixes
- better getComponentValueStrict error message, small std-client fixes (#121 (opens in a new tab)) (5c78b82 (opens in a new tab))
- CacheWorker (#118 (opens in a new tab)) (bfe006e (opens in a new tab))
- optimism, cancel action if gas check fails, add noise utils, fix ecs-browser entry point (#119 (opens in a new tab)) (f35d3c3 (opens in a new tab))
- phaserx: allow for multiple tweens on same objects by passing in… (#122 (opens in a new tab)) (d129836 (opens in a new tab))
Features
- ecs-browser: Allow spawning of prototypes at arbitrary locations (#117 (opens in a new tab)) (b31bfcd (opens in a new tab))
- logging library with support for topics/filters (#123 (opens in a new tab)) (4eac3c6 (opens in a new tab))
- std-client: add player getter utils for std client (#120 (opens in a new tab)) (7a06f0b (opens in a new tab))
0.4.3 (opens in a new tab) (2022-07-30)
Note: Version bump only for package mud
0.4.2 (opens in a new tab) (2022-07-29)
Note: Version bump only for package mud
0.4.1 (opens in a new tab) (2022-07-29)
Note: Version bump only for package mud
0.4.0 (opens in a new tab) (2022-07-29)
Bug Fixes
- cli: extract encoded arguments from signature (#116 (opens in a new tab)) (f630319 (opens in a new tab))
- recs: fix fragment types in system definitions (#109 (opens in a new tab)) (c74f393 (opens in a new tab))
Features
- add 3d components (d230339 (opens in a new tab))
- allow component overrides to be null (f9baf44 (opens in a new tab))
- cli: cli commands for better debugging (#113 (opens in a new tab)) (80ae128 (opens in a new tab))
- network: faster execution of multiple tx, better revert message logging (#111 (opens in a new tab)) (bee34dc (opens in a new tab))
- phaser: expose set cursor function in phaser input (#110 (opens in a new tab)) (e377bb0 (opens in a new tab))
- phaserx: allow running phaser in headless mode for unit testing in jest (#112 (opens in a new tab)) (22bc4d8 (opens in a new tab))
0.3.2 (opens in a new tab) (2022-07-26)
Note: Version bump only for package mud
0.3.1 (opens in a new tab) (2022-07-26)
Note: Version bump only for package mud
0.3.0 (opens in a new tab) (2022-07-26)
Bug Fixes
- fix deploying to hardhat using forge, check for existing persona in launcher (#56 (opens in a new tab)) (a0f954b (opens in a new tab))
- ri: add MoveFacet to deploy script (#55 (opens in a new tab)) (ee381e1 (opens in a new tab))
- std-contracts: add openzeppelin to remappings to fix build (5db32a8 (opens in a new tab))
- use hardhat as node (better logs) and make hardhat compatible with forge (#54 (opens in a new tab)) (45a5981 (opens in a new tab))
Features
- add componentComponent to store component to id mapping (#60 (opens in a new tab)) (e9cb97b (opens in a new tab))
- mudwar prototype (nyc sprint 2) (#59 (opens in a new tab)) (a3db20e (opens in a new tab)), closes #58 (opens in a new tab) #61 (opens in a new tab) #64 (opens in a new tab) #62 (opens in a new tab) #66 (opens in a new tab) #69 (opens in a new tab) #72 (opens in a new tab) #73 (opens in a new tab) #74 (opens in a new tab) #76 (opens in a new tab) #75 (opens in a new tab) #77 (opens in a new tab) #78 (opens in a new tab) #79 (opens in a new tab) #80 (opens in a new tab) #82 (opens in a new tab) #86 (opens in a new tab) #83 (opens in a new tab) #81 (opens in a new tab) #85 (opens in a new tab) #84 (opens in a new tab) #87 (opens in a new tab) #91 (opens in a new tab) #88 (opens in a new tab) #90 (opens in a new tab) #92 (opens in a new tab) #93 (opens in a new tab) #89 (opens in a new tab) #94 (opens in a new tab) #95 (opens in a new tab) #98 (opens in a new tab) #100 (opens in a new tab) #97 (opens in a new tab) #101 (opens in a new tab) #105 (opens in a new tab) #106 (opens in a new tab)
- new systems pattern (#63 (opens in a new tab)) (fb6197b (opens in a new tab))
- script: add bulk uploading map script with new ecs format (#52 (opens in a new tab)) (1d93ed7 (opens in a new tab))
- solecs, std-contracts: update the build scripts with additional jq delete statements to make the abi files cleaner (#53 (opens in a new tab)) (198dfa5 (opens in a new tab))
0.2.0 (opens in a new tab) (2022-07-05)
Bug Fixes
- phaserx: do not call preventDefault on keyboard events (ac27fe2 (opens in a new tab))
Features
- add webworker architecture for contract/client sync, add cache webworker (#10 (opens in a new tab)) (4ef9f90 (opens in a new tab)), closes #14 (opens in a new tab)
- cli: add vscode solidity config file to mud create projects (064546a (opens in a new tab))
- component browser 📈 (#16 (opens in a new tab)) (37af75e (opens in a new tab))
- contracts: add function to set contract ecs state in bulk (#23 (opens in a new tab)) (5bc8d2b (opens in a new tab))
- contracts: replace hardhat with foundry toolkit (#51 (opens in a new tab)) (2c0e4a9 (opens in a new tab))
- network: integrate snapshot service (#24 (opens in a new tab)) (a146164 (opens in a new tab))
- on-chain maps (nyc sprint 1) (#38 (opens in a new tab)) (089c46d (opens in a new tab)), closes #17 (opens in a new tab) #20 (opens in a new tab) #18 (opens in a new tab) #25 (opens in a new tab) #26 (opens in a new tab) #27 (opens in a new tab) #28 (opens in a new tab) #29 (opens in a new tab) #30 (opens in a new tab) #31 (opens in a new tab) #33 (opens in a new tab) #32 (opens in a new tab) #34 (opens in a new tab) #35 (opens in a new tab) #36 (opens in a new tab) #37 (opens in a new tab) #39 (opens in a new tab) #40 (opens in a new tab) #41 (opens in a new tab) #42 (opens in a new tab) #43 (opens in a new tab) #44 (opens in a new tab) #45 (opens in a new tab) #46 (opens in a new tab) #48 (opens in a new tab) #49 (opens in a new tab) #50 (opens in a new tab)
- recs: add more granular type assertion function for introspecting Component schema types (#8 (opens in a new tab)) (48331f9 (opens in a new tab))
- recs: add optional parameters to reaction and autorun systems (451209f (opens in a new tab))
- recs: expose raw schema on component (69d9b89 (opens in a new tab))
- recs: rewrite for performance improvements (without integrating in ri) (#22 (opens in a new tab)) (887564d (opens in a new tab))
- ri-client: pass requirement function result into updates function in ActionRequest (#7 (opens in a new tab)) (bb60c5a (opens in a new tab))
- solecs: create getUniqueEntityId function on World contract (#4 (opens in a new tab)) (a06a9c5 (opens in a new tab))
BREAKING CHANGES
-
Components have to implement a getSchema() function
-
feat(network): make Sync worker return a stream of ECS events (prev contract events)
-
feat(ri-contracts): integrate solecs change (add getSchema to components)
-
feat(ri-client): integrate network package changes
-
feat(network): store ECS state in cache
-
feat(network): load state from cache
-
feat(utils): add more utils for iterables
-
refactor(network): clean up
-
feat(network): generalize component value decoder function, add tests
-
fix(network): make it possible to subscribe to ecsStream from sync worker multiple times
-
fix(network): start sync from provided initial block number
-
feat(network): move storing ecs to indexDB to its own Cache worker
-
feat(network): create separate cache for every World contract address
-
fix(network): fix issues discovered during live review
-
chore: remove unused import
-
Update packages/network/src/createBlockNumberStream.ts
Co-authored-by: ludens ludens@lattice.xyz
-
feat(network): add clock syncInterval as config parameter
-
feat(utils): emit values through componentToStream and observableToStream only if non-null
-
feat(network): add chain id to cache id, disable loading from cache on hardhat
-
fix(contracts): change Position and EntityType schema to int32/uint32 to fit in js number
-
docs(client): fix typos in comments
-
fix(network): fix tests
-
fix(scripting): integrate new network package into ri scripting
-
fix(network): fix sending multiple requests for component schema if many events get reduced
0.1.8 (opens in a new tab) (2022-05-25)
Bug Fixes
- @latticexyz/cli: fix create script (2c3b0db (opens in a new tab))
- ri-client: change bufferCount to bufferTime to apply ecs updates immediately below threshold (03ecc70 (opens in a new tab))
Performance Improvements
- ri-contracts: disable hardhat automine (72d644a (opens in a new tab))
0.1.7 (opens in a new tab) (2022-05-25)
Note: Version bump only for package mud
0.1.6 (opens in a new tab) (2022-05-25)
Note: Version bump only for package mud
0.1.5 (opens in a new tab) (2022-05-24)
Note: Version bump only for package mud
0.1.4 (opens in a new tab) (2022-05-24)
Note: Version bump only for package mud
0.1.3 (opens in a new tab) (2022-05-23)
Note: Version bump only for package mud
0.1.2 (opens in a new tab) (2022-05-23)
Note: Version bump only for package mud
0.1.1 (opens in a new tab) (2022-05-23)
Note: Version bump only for package mud
0.1.0 (2022-05-23)
Bug Fixes
- @mud/network: do not increase nonce for view functions (233c4b5 (opens in a new tab))
- @mud/network: use component id for ecs event mapping (instead of address) (baa5f10 (opens in a new tab))
- @mud/network: use component id instead of address for mapping (39b516c (opens in a new tab))
- @mud/solecs: early return from Component.remove if value does not exist (02f78c1 (opens in a new tab))
- ri-client: fix assuming component value is not undefined when using updateQuery (f93ee23 (opens in a new tab))
- ri-client: integrate client with new contract-side component ids (78bbdfb (opens in a new tab))
- ri-client: type game contracts using combined facet abi (6bc48a8 (opens in a new tab))
Features
- @mud/cli: add deploy script to cli (99d0b70 (opens in a new tab))
- @mud/cli: add initial version of mud create script (72758cf (opens in a new tab))
- @mud/cli: add mud cli and move diamond abi generation to cli (034af90 (opens in a new tab))
- @mud/network: add @mud/network (9a29452 (opens in a new tab))
- @mud/network: add option to ignore tx confirmation to txQueue, add ready state, add fetch log (438549a (opens in a new tab))
- @mud/phaserx: add @mud/phaserx (cbefb71 (opens in a new tab))
- @mud/recs: add @mud/recs (aaf6d0f (opens in a new tab))
- @mud/solecs: add @mud/solecs (84f05f0 (opens in a new tab))
- @mud/solecs: add advanced queries with support for relationships (e56f6f4 (opens in a new tab))
- @mud/utils: add @mud/utils package (fc721cc (opens in a new tab))
- @mud/utils: add keccak256 hash function that accepts string inputs (ca1a4e0 (opens in a new tab))
- @mud/utils: add stretch rxjs operator to add a minimum delay between events in a rxjs stream (3a1673f (opens in a new tab))
- ri-client: add client reference implementation (10a33cb (opens in a new tab))
- ri-contracts: add contracts reference implementation (8709568 (opens in a new tab))
- ri-scripting: add light client to send tx at scale, add scripts for stresstest 1 (903b25c (opens in a new tab))
Performance Improvements
- @mud/network: add initial sync in stages (d0c026a (opens in a new tab))
- @mud/network: move sync and processing of chain events to a webworker (dad52ea (opens in a new tab))
- @mud/solecs: add MapSet.sol to improve solecs Component performance (reduce gas) (678c7ac (opens in a new tab))
- ri-client: throttle ECS event processing to 12000 per second (88726ec (opens in a new tab))
- ri-client: use json rpc provider to send transactions and load block events (2455aeb (opens in a new tab))