mud

MUD is a framework for building ambitious onchain applications

MIT License

Downloads
318.4K
Stars
643
Committers
80

Bot releases are visible (Hide)

mud - [email protected]

Published by github-actions[bot] over 1 year ago

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

mud - [email protected]

Published by github-actions[bot] over 1 year ago

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

1.41.0 (2023-03-09)

Note: Version bump only for package @latticexyz/solecs

1.40.0 (2023-03-03)

Note: Version bump only for package @latticexyz/solecs

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/solecs

1.38.0 (2023-02-22)

Note: Version bump only for package @latticexyz/solecs

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

1.41.0 (2023-03-09)

Bug Fixes

1.40.0 (2023-03-03)

Features

  • v2 - add store, world and schema-type, cli table code generation (#422) (cb731e0)

BREAKING CHANGES

  • This commit removes the deprecated mud deploy CLI command. Use mud deploy-contracts instead.

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/services

1.38.0 (2023-02-22)

Note: Version bump only for package @latticexyz/services

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

  • cli: use abi types in store config (#507) (12a739f)
  • schema-type: add SchemaType -> primitive map, rearrange files (#488) (b1bf876)

1.41.0 (2023-03-09)

Features

1.40.0 (2023-03-03)

Features

  • v2 - add store, world and schema-type, cli table code generation (#422) (cb731e0)

BREAKING CHANGES

  • This commit removes the deprecated mud deploy CLI command. Use mud deploy-contracts instead.
mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Bug Fixes

  • recs,cli: fix bigint in recs and tsgen (#563) (29fefae)
  • recs: overridden component update stream should return the overridden component (#544) (9af097d)

Features

  • cli/recs/std-client: add ts definitions generator (#536) (dd1efa6)
  • cli: improve storeArgument, refactor cli (#500) (bb68670)
  • cli: use abi types in store config (#507) (12a739f)
  • network,recs,std-client: support StoreSetField before StoreSetRecord (#581) (f259f90), closes #479 #523
  • network: integrate initial sync from MODE (#493) (7d06c1b)
  • v2 event decoding (#415) (374ed54)

1.41.0 (2023-03-09)

Note: Version bump only for package @latticexyz/recs

1.40.0 (2023-03-03)

Note: Version bump only for package @latticexyz/recs

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/recs

1.38.0 (2023-02-22)

Note: Version bump only for package @latticexyz/recs

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

1.41.0 (2023-03-09)

Features

  • react: option for useEntityQuery to re-render on value changes (#460) (6b90b85)

1.40.0 (2023-03-03)

Note: Version bump only for package @latticexyz/react

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/react

1.38.0 (2023-02-22)

Note: Version bump only for package @latticexyz/react

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Minor Changes

  • #1100 b98e5180 Thanks @alvrs! - feat: add abiTypesToSchema, a util to turn a list of abi types into a Schema by separating static and dynamic types

  • #1111 ca50fef8 Thanks @alvrs! - feat: add encodeKeyTuple, a util to encode key tuples in Typescript (equivalent to key tuple encoding in Solidity and inverse of decodeKeyTuple).
    Example:

    encodeKeyTuple({ staticFields: ["uint256", "int32", "bytes16", "address", "bool", "int8"], dynamicFields: [] }, [
      42n,
      -42,
      "0x12340000000000000000000000000000",
      "0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF",
      true,
      3,
    ]);
    // [
    //  "0x000000000000000000000000000000000000000000000000000000000000002a",
    //  "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6",
    //  "0x1234000000000000000000000000000000000000000000000000000000000000",
    //  "0x000000000000000000000000ffffffffffffffffffffffffffffffffffffffff",
    //  "0x0000000000000000000000000000000000000000000000000000000000000001",
    //  "0x0000000000000000000000000000000000000000000000000000000000000003",
    // ]
    

Patch Changes

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

1.41.0 (2023-03-09)

Note: Version bump only for package @latticexyz/phaserx

1.40.0 (2023-03-03)

Features

  • phaserx: tag native phaser game objects with object pool id (#453) (27ac5d3)

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/phaserx

1.38.0 (2023-02-22)

Note: Version bump only for package @latticexyz/phaserx

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

1.41.0 (2023-03-09)

Note: Version bump only for package @latticexyz/noise

1.40.0 (2023-03-03)

Note: Version bump only for package @latticexyz/noise

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/noise

1.38.0 (2023-02-22)

Note: Version bump only for package @latticexyz/noise

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Bug Fixes

  • network: fall back to RPC sync if MODE is not available (#555) (4de4b6d)
  • network: fix mode decoding (#562) (fb82313)
  • network: handle singleton/empty keys (#541) (1e0ddb9)
  • network: skip sync from cache in dev mode (#521) (818c1e2)

Features

  • create-mud: use pnpm in templates, move to root so they can be installed/run (#599) (010740d)
  • network,recs,std-client: support StoreSetField before StoreSetRecord (#581) (f259f90), closes #479 #523
  • network: add fastTxExecute util (#543) (f05a70a)
  • network: add option to sync in main thread instead of worker (#522) (4e8e7d7)
  • network: integrate initial sync from MODE (#493) (7d06c1b)
  • use viem when creating burner wallet (#576) (d5d22e0)
  • v2 event decoding (#415) (374ed54)

1.41.0 (2023-03-09)

Note: Version bump only for package @latticexyz/network

1.40.0 (2023-03-03)

Note: Version bump only for package @latticexyz/network

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/network

1.38.0 (2023-02-22)

Note: Version bump only for package @latticexyz/network

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Minor Changes

  • #1147 66cc35a8 Thanks @dk1a! - Create gas-report package, move gas-report cli command and GasReporter contract to it

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

1.41.0 (2023-03-09)

Note: Version bump only for package @latticexyz/ecs-browser

1.40.0 (2023-03-03)

Bug Fixes

  • ecs-browser: fix some errors in ecs-browser (#420) (2a7ce21)

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/ecs-browser

1.38.0 (2023-02-22)

Note: Version bump only for package @latticexyz/ecs-browser

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

mud - [email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

  • align git dep versions (#577) (2b5fb5e)
  • create-mud: use pnpm in templates, move to root so they can be installed/run (#599) (010740d)
  • v2 event decoding (#415) (374ed54)

1.41.0 (2023-03-09)

Note: Version bump only for package create-mud

1.40.0 (2023-03-03)

Features

  • v2 - add store, world and schema-type, cli table code generation (#422) (cb731e0)

BREAKING CHANGES

  • This commit removes the deprecated mud deploy CLI command. Use mud deploy-contracts instead.

1.39.0 (2023-02-22)

Features

  • create-mud: default to latest mud version (#432) (5a38ad6)

1.38.0 (2023-02-22)

Bug Fixes

  • create-mud: small linting/type fixes for templates (#425) (1f2598c)
mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Features

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Minor Changes

  • #1173 0c4f9fea Thanks @holic! - TableId.toHex() now truncates name/namespace to 16 bytes each, to properly fit into a bytes32 hex string.

    Also adds a few utils we'll need in the indexer:

    • bigIntMin is similar to Math.min but for bigints
    • bigIntMax is similar to Math.max but for bigints
    • bigIntSort for sorting an array of bigints
    • chunk to split an array into chunks
    • wait returns a Promise that resolves after specified number of milliseconds

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Minor Changes

  • #1147 66cc35a8 Thanks @dk1a! - Create gas-report package, move gas-report cli command and GasReporter contract to it

  • #1157 c36ffd13 Thanks @alvrs! - - update the set-version cli command to work with the new release process by adding two new options:

    • --tag: install the latest version of the given tag. For snapshot releases tags correspond to the branch name, commits to main result in an automatic snapshot release, so --tag main is equivalent to what used to be -v canary
    • --commit: install a version based on a given commit hash. Since commits from main result in an automatic snapshot release it works for all commits on main, and it works for manual snapshot releases from branches other than main
    • set-version now updates all package.json nested below the current working directory (expect node_modules), so no need for running it each workspace of a monorepo separately.

    Example:

    pnpm mud set-version --tag main && pnpm install
    pnpm mud set-version --commit db19ea39 && pnpm install
    

Patch Changes

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.

1.42.0 (2023-04-13)

Bug Fixes

  • cli: account for getRecord's trimming (#574) (9c5317a)
  • cli: add back in resolveTableId export for use with mudConfig (#518) (4906d77)
  • cli: handle static arrays in worldgen (#566) (b6a09f2)
  • cli: remove node-dependent exports from base module (#517) (abb34a6)
  • cli: use esbuild to load mud config (#565) (18a8c42)
  • cli: use fileSelector in worldgen (#502) (fa021ed)
  • cli: wait for tx confirmation on deploy txs (#606) (b92be71)
  • recs,cli: fix bigint in recs and tsgen (#563) (29fefae)

Features

  • add support for key schemas (#480) (37aec2e)
  • align git dep versions (#577) (2b5fb5e)
  • cli/recs/std-client: add ts definitions generator (#536) (dd1efa6)
  • cli: add mud test-v2 command (#554) (d6be8b0)
  • cli: add set-version to upgrade all MUD dependencies in a project (#527) (89731a6)
  • cli: add encode function to all tables (#498) (564604c)
  • cli: add module config to CLI (#494) (263c828)
  • cli: add mud2 cli entrypoint with only v2 commands (#567) (785a324)
  • cli: add registerFunctionSelectors to deploy cli (#501) (de3d459)
  • cli: add worldgen (#496) (e84c0c8)
  • cli: allow customization of IWorld interface name via mud config, change world/IWorld to world/IBaseWorld (#545) (38b355c)
  • cli: allow passing world address and src dir to deploy cli (#586) (4b532be)
  • cli: allow static arrays as abi types in store config and tablegen (#509) (588d037)
  • cli: improve store config typehints, prepare for static array support (#508) (abb5eb2)
  • cli: improve storeArgument, refactor cli (#500) (bb68670)
  • cli: include stateMutability in worldgen (#571) (3a91292)
  • cli: namespace deploy output by chain id (#516) (7687349)
  • cli: rename deploymentInfoDirectory to deploysDirectory, default to ./deploys (#519) (1dba0d3)
  • cli: set storeArgument to true by default (#553) (cb1ecbc)
  • cli: use a central codegen dir for tablegen and worldgen (#585) (7500b11)
  • cli: use abi types in store config (#507) (12a739f)
  • cli: use json for gas report output (#607) (bea12ca)
  • config: separate config from cli (#600) (cd224a5)
  • v2 event decoding (#415) (374ed54)
  • world,store: add updateInField (#525) (0ac76fd)
  • world: add naive ReverseMappingHook/Module (#487) (36aaaef)
  • world: add support for modules, add RegistrationModule, add CoreModule (#482) (624cbbc)
  • world: add UniqueEntityModule (#552) (983e26a)
  • world: allow registration of function selectors in the World, split out RegisterSystem from World (#481) (ba0166f)
  • world: simplify access control to namespaces instead of routes (#467) (945f2ef)

1.41.0 (2023-03-09)

Bug Fixes

  • cli: add missing await (#475) (efb5d76)
  • cli: add missing await to tablegen, fix formatting (#472) (4313c27)
  • cli: avoid fs usage in utils, create deployment output directory if it doesn't exist (#471) (cc8aa13)
  • services: fix protobuf imports (#477) (3eda547)

Features

  • cli: add setMetadata to autogen of table libraries (#466) (1e129fe)
  • cli: add v2 deployment script (#450) (1db37a5)
  • cli: user types and route/path separation (#454) (758bf03)

1.40.0 (2023-03-03)

Features

  • cli: reorganize internal structure and add exports for all utilities (#451) (e683904)
  • v2 - add store, world and schema-type, cli table code generation (#422) (cb731e0)

BREAKING CHANGES

  • This commit removes the deprecated mud deploy CLI command. Use mud deploy-contracts instead.

1.39.0 (2023-02-22)

Note: Version bump only for package @latticexyz/cli

1.38.0 (2023-02-22)

Features

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Minor Changes

  • #1176 eeb15cc0 Thanks @holic! - - Replace blockEventsToStorage with blockLogsToStorage that exposes a storeOperations callback to perform database writes from store operations. This helps encapsulates database adapters into a single wrapper/instance of blockLogsToStorage and allows for wrapping a block of store operations in a database transaction.

    • Add toBlock option to groupLogsByBlockNumber and remove blockHash from results. This helps track the last block number for a given set of logs when used in the context of RxJS streams.
  • #1070 72b80697 Thanks @holic! - Add block logs stream package

    import { filter, map, mergeMap } from "rxjs";
    import { createPublicClient, parseAbi } from "viem";
    import {
      createBlockStream,
      isNonPendingBlock,
      groupLogsByBlockNumber,
      blockRangeToLogs,
    } from "@latticexyz/block-logs-stream";
    
    const publicClient = createPublicClient({
      // your viem public client config here
    });
    
    const latestBlock$ = await createBlockStream({ publicClient, blockTag: "latest" });
    
    const latestBlockNumber$ = latestBlock$.pipe(
      filter(isNonPendingBlock),
      map((block) => block.number)
    );
    
    latestBlockNumber$
      .pipe(
        map((latestBlockNumber) => ({ startBlock: 0n, endBlock: latestBlockNumber })),
        blockRangeToLogs({
          publicClient,
          address,
          events: parseAbi([
            "event StoreDeleteRecord(bytes32 table, bytes32[] key)",
            "event StoreSetField(bytes32 table, bytes32[] key, uint8 schemaIndex, bytes data)",
            "event StoreSetRecord(bytes32 table, bytes32[] key, bytes data)",
            "event StoreEphemeralRecord(bytes32 table, bytes32[] key, bytes data)",
          ]),
        }),
        mergeMap(({ logs }) => from(groupLogsByBlockNumber(logs)))
      )
      .subscribe((block) => {
        console.log("got events for block", block);
      });
    

Patch Changes

mud - @latticexyz/[email protected]

Published by github-actions[bot] over 1 year ago

Change Log

All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.