
Product
Introducing Historical Analytics β Now in Beta
Weβre excited to announce a powerful new capability in Socket: historical data and enhanced analytics.
@latticexyz/common
Advanced tools
Version 2.2.20
Release date: Tue Feb 11 2025
feat(explorer): wrap table names in double quotes by default (#3588) (@latticexyz/explorer)
Table names in SQL queries are now automatically enclosed in double quotes by default, allowing support for special characters.
feat(world-consumer): convert store-consumer package into world-consumer (#3584) (@latticexyz/world-module-erc20)
Migrated from store-consumer
to world-consumer
.
refactor(world): add default-reverting methods to Module (#3581) (@latticexyz/world-module-callwithsignature, @latticexyz/world-module-erc20, @latticexyz/world-module-metadata, @latticexyz/world-modules)
Removed unsupported install methods as these now automatically revert in the base Module
contract.
feat: install module with delegation (#3586) (@latticexyz/cli, @latticexyz/world)
Added useDelegation
module config option to install modules using a temporary, unlimited delegation. This allows modules to install or upgrade systems and tables on your behalf.
feat(world): generate system libs (#3587) (@latticexyz/world)
Added experimental system libraries for World systems for better ergonomics when interacting with core systems.
Note that these libraries are marked experimental as we may make breaking changes to their interfaces.
import { worldRegistrationSystem } from "@latticexyz/world/src/codegen/experimental/systems/WorldRegistrationSystemLib.sol";
// equivalent to `IBaseWorld(_world()).registerNamespace("hello")` but directly routed through `world.call` for better gas.
worldRegistrationSystem.registerNamespace("hello");
// and makes delegation use cases easier
worldRegistrationSystem.callFrom(_msgSender()).registerNamespace("hello");
refactor(world): add default-reverting methods to Module (#3581) (@latticexyz/world)
The base Module
contract now includes default implementations of install
and installRoot
that immediately revert, avoiding the need to implement these manually in each module.
If you've written a module, you may need to update your install methods with override
when using this new base contract.
-function install(bytes memory) public {
+function install(bytes memory) public override {
-function installRoot(bytes memory) public {
+function installRoot(bytes memory) public override {
fix(cli): use execa directly instead of custom foundry wrappers (#3582) (@latticexyz/cli)
Fixed forge/anvil/cast output for all CLI commands.
feat: install module with delegation (#3586) (@latticexyz/cli, @latticexyz/world-module-metadata)
Metadata module has been updated to install via delegation, making it easier for later module upgrades and to demonstrate modules installed via delegation.
feat(world): generate system libs (#3587) (@latticexyz/store)
Updated IStoreRegistration
interface to allow calling registerTable
with keyNames
and fieldNames
from memory
rather than calldata
so this can be called with names returned by table libraries.
feat: install module with delegation (#3586) (@latticexyz/world)
Updated encodeSystemCalls
and encodeSystemCallsFrom
to include the abi
in each call so that different systems/ABIs can be called in batch. Types have been improved to properly hint/narrow the expected arguments for each call.
-encodeSystemCalls(abi, [{
+encodeSystemCalls([{
+ abi,
systemId: '0x...',
functionName: '...',
args: [...],
}]);
-encodeSystemCallsFrom(from, abi, [{
+encodeSystemCallsFrom(from, [{
+ abi,
systemId: '0x...',
functionName: '...',
args: [...],
}]);
feat(world-consumer): convert store-consumer package into world-consumer (#3584) (@latticexyz/world-consumer)
Renamed store-consumer
package to world-consumer
. The world-consumer
package now only includes a single WorldConsumer
contract that is bound to a World
.
FAQs
Common low level logic shared between packages
The npm package @latticexyz/common receives a total of 3,945 weekly downloads. As such, @latticexyz/common popularity was classified as popular.
We found that @latticexyz/common demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.Β It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Weβre excited to announce a powerful new capability in Socket: historical data and enhanced analytics.
Product
Module Reachability filters out unreachable CVEs so you can focus on vulnerabilities that actually matter to your application.
Company News
Socket is bringing best-in-class reachability analysis into the platform β cutting false positives, accelerating triage, and cementing our place as the leader in software supply chain security.