Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
main
is currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, runchangeset pre exit
onmain
.Releases
@latticexyz/[email protected]
Major Changes
#1458
b9e562d8
Thanks @alvrs! - TheWorld
now performsERC165
interface checks to ensure that theStoreHook
,SystemHook
,System
,DelegationControl
andModule
contracts to actually implement their respective interfaces before registering them in the World.The required
supportsInterface
methods are implemented on the respective base contracts.When creating one of these contracts, the recommended approach is to extend the base contract rather than the interface.
Minor Changes
#1422
1d60930d
Thanks @alvrs! - It is now possible to unregister Store hooks and System hooks.#1443
5e71e1cb
Thanks @holic! - MovedKeySchema
,ValueSchema
,SchemaToPrimitives
andTableRecord
types into@latticexyz/protocol-parser
Patch Changes
@latticexyz/[email protected]
Major Changes
#1458
b9e562d8
Thanks @alvrs! - TheWorld
now performsERC165
interface checks to ensure that theStoreHook
,SystemHook
,System
,DelegationControl
andModule
contracts to actually implement their respective interfaces before registering them in the World.The required
supportsInterface
methods are implemented on the respective base contracts.When creating one of these contracts, the recommended approach is to extend the base contract rather than the interface.
#1457
51914d65
Thanks @alvrs! - - The access control library no longer allows calls by theWorld
contract to itself to bypass the ownership check.This is a breaking change for root modules that relied on this mechanism to register root tables, systems or function selectors.
To upgrade, root modules must use
delegatecall
instead of a regularcall
to install root tables, systems or function selectors.installRoot
method was added to theIModule
interface.This method is now called when installing a root module via
world.installRootModule
.When installing non-root modules via
world.installModule
, the module'sinstall
function continues to be called.#1425
2ca75f9b
Thanks @alvrs! - The World now maintains a balance per namespace.When a system is called with value, the value stored in the World contract and credited to the system's namespace.
Previously, the World contract did not store value, but passed it on to the system contracts.
However, as systems are expected to be stateless (reading/writing state only via the calling World) and can be registered in multiple Worlds, this could have led to exploits.
Any address with access to a namespace can use the balance of that namespace.
This allows all systems registered in the same namespace to work with the same balance.
There are two new World methods to transfer balance between namespaces (
transferBalanceToNamespace
) or to an address (transferBalanceToAddress
).Minor Changes
#1422
1d60930d
Thanks @alvrs! - It is now possible to unregister Store hooks and System hooks.Patch Changes
1d60930d
,b9e562d8
,5e71e1cb
]:@latticexyz/[email protected]
Minor Changes
5e71e1cb
Thanks @holic! - AddsdecodeKey
,decodeValue
,encodeKey
, andencodeValue
helpers to decode/encode from key/value schemas. Deprecates previous methods that use a schema object with static/dynamic field arrays, originally attempting to model our on-chain behavior but ended up not very ergonomic when working with table configs.Patch Changes
@latticexyz/[email protected]
Patch Changes
@latticexyz/[email protected]
Patch Changes
1d60930d
,b9e562d8
,51914d65
,2ca75f9b
,5e71e1cb
,5e71e1cb
]:@latticexyz/[email protected]
Patch Changes
@latticexyz/[email protected]
Patch Changes
@latticexyz/[email protected]
Patch Changes
1d60930d
,b9e562d8
,51914d65
,2ca75f9b
,5e71e1cb
]:@latticexyz/[email protected]
Patch Changes
@latticexyz/[email protected]
Patch Changes
1d60930d
,b9e562d8
,5e71e1cb
]:@latticexyz/[email protected]
Patch Changes
@latticexyz/[email protected]
Patch Changes
1d60930d
,b9e562d8
,5e71e1cb
]:@latticexyz/[email protected]
Patch Changes
1d60930d
,b9e562d8
,51914d65
,2ca75f9b
,5e71e1cb
,5e71e1cb
]:@latticexyz/[email protected]
[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]
[email protected]
[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]
@latticexyz/[email protected]