Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/hungry-olives-attack.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@latticexyz/store": patch
---

`Memory.copy` now internally uses `mcopy`, which is available since solidity version 0.8.24
2 changes: 1 addition & 1 deletion .github/actions/setup-prerequisites/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ runs:
- name: Setup foundry
uses: foundry-rs/foundry-toolchain@v1
with:
version: nightly
version: nightly-f47d7e0c29a36372908b917cd74aa589d5888f8e
3 changes: 2 additions & 1 deletion docs/pages/store/reference/misc.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -1796,7 +1796,8 @@ function dataPointer(bytes memory data) internal pure returns (uint256 memoryPoi

Copies memory from one location to another.

_Safely copies memory in chunks of 32 bytes, then handles any residual bytes._
_Length does not have to be a multiple of 32, mcopy safely handles unaligned words.
Copying takes place as if an intermediate buffer was used, allowing the destination and source to overlap._

```solidity
function copy(uint256 fromPointer, uint256 toPointer, uint256 length) internal pure;
Expand Down
2 changes: 1 addition & 1 deletion packages/cli/src/deploy/common.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ export const worldAbi = IBaseWorldAbi;

// Ideally, this should be an append-only list. Before adding more versions here, be sure to add backwards-compatible support for old Store/World versions.
export const supportedStoreVersions = ["2.0.0", "2.0.1", "2.0.2"];
export const supportedWorldVersions = ["2.0.0", "2.0.1", "2.0.2"];
export const supportedWorldVersions = ["2.0.0", "2.0.1", "2.0.2", "2.1.0"];

// TODO: extend this to include factory+deployer address? so we can reuse the deployer for a world?
export type WorldDeploy = {
Expand Down
Loading
Loading