From d04f129d69b5faa82833376aeb821cf7eb501cc2 Mon Sep 17 00:00:00 2001 From: CJ42 Date: Tue, 22 Oct 2024 15:16:46 +0200 Subject: [PATCH] build: fix Foundry compile failing using different version --- package-lock.json | 198 +++++++++++++++++- package.json | 3 + packages/lsp0-contracts/constants.ts | 2 +- .../contracts/LSP4DigitalAssetMetadata.sol | 2 +- .../LSP4DigitalAssetMetadataInitAbstract.sol | 2 +- packages/lsp4-contracts/package.json | 2 +- packages/lsp6-contracts/constants.ts | 2 +- 7 files changed, 196 insertions(+), 15 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8e5ce5ce4..c943c74b3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,9 @@ "config/*", "packages/*" ], + "dependencies": { + "@erc725/smart-contracts-v8": "npm:@erc725/smart-contracts@8.0.0" + }, "devDependencies": { "@b00ste/hardhat-dodoc": "^0.3.16", "@erc725/erc725.js": "0.23.0", @@ -529,6 +532,17 @@ "solidity-bytes-utils": "0.8.0" } }, + "node_modules/@erc725/smart-contracts-v8": { + "name": "@erc725/smart-contracts", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@erc725/smart-contracts/-/smart-contracts-8.0.0.tgz", + "integrity": "sha512-dMYUbnay5sTb2u1Z4BcJdcZylciJw09W//CtCAfLu11BVqjbMdsekwZHFPDWrz5Lna/5uVx0rI4GklVRORdK5g==", + "dependencies": { + "@openzeppelin/contracts": "^4.9.6", + "@openzeppelin/contracts-upgradeable": "^4.9.6", + "solidity-bytes-utils": "0.8.0" + } + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.24.0", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz", @@ -21533,6 +21547,20 @@ "@lukso/universalprofile-contracts": "*" } }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp0-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp0-contracts/-/lsp0-contracts-0.15.0.tgz", + "integrity": "sha512-dKQu9juDJNxKdJMHkF3wOfjC/VZZW+RonQ5hSw9kBhLAhyFd6SVYU3VSUOYG3G3bLDAE9We+DeONc0N/j4zjIQ==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@lukso/lsp1-contracts": "~0.15.0", + "@lukso/lsp14-contracts": "~0.15.0", + "@lukso/lsp17contractextension-contracts": "~0.15.0", + "@lukso/lsp2-contracts": "~0.15.0", + "@lukso/lsp20-contracts": "~0.15.0", + "@openzeppelin/contracts": "^4.9.3" + } + }, "packages/lsp-smart-contracts/node_modules/@lukso/lsp1-contracts": { "version": "0.15.0", "resolved": "https://registry.npmjs.org/@lukso/lsp1-contracts/-/lsp1-contracts-0.15.0.tgz", @@ -21542,6 +21570,66 @@ "@openzeppelin/contracts": "^4.9.3" } }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp10-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp10-contracts/-/lsp10-contracts-0.15.0.tgz", + "integrity": "sha512-LXyOOCD43sHtQxyp98utUwxaU+r2MA8TvqXBibxjHxD20/L7vYGSxHqDX493/zUtfCUIMUELuj6a1+NGscbBTw==", + "dependencies": { + "@erc725/smart-contracts": "^6.0.0", + "@lukso/lsp2-contracts": "~0.15.0" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp10-contracts/node_modules/@erc725/smart-contracts": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@erc725/smart-contracts/-/smart-contracts-6.0.0.tgz", + "integrity": "sha512-6okutGGL9xbg/MSgAof2FU1UcSNE/z3p9TORlROVGaM3gi1A6FQQ7fDqtBYkPtvHureX8yS9gP7xPt3PRbP43Q==", + "dependencies": { + "@openzeppelin/contracts": "^4.9.3", + "@openzeppelin/contracts-upgradeable": "^4.9.3", + "solidity-bytes-utils": "0.8.0" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp12-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp12-contracts/-/lsp12-contracts-0.15.0.tgz", + "integrity": "sha512-fSq8syWvRkHb0hOtVubJ3YyqLoZ0IDGT+FC3W79nKCP5OYpZt1VwWwUsqQlBUImrrtTaP9Vdin9aNGD9umtCqA==", + "dependencies": { + "@lukso/lsp2-contracts": "~0.15.0" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp14-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp14-contracts/-/lsp14-contracts-0.15.0.tgz", + "integrity": "sha512-dqTY9QjGk9b+lZFchqm1ZAJ5c/AJlTPwZtXsqRyJrSS5WHwx3jteh/0mCt/1fmv8dzqgMadtOIJVpEXPannMWw==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@lukso/lsp1-contracts": "~0.15.0" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp16-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp16-contracts/-/lsp16-contracts-0.15.0.tgz", + "integrity": "sha512-zt58Uq4nWoGRMlSvZYYKM+YWmqXaWqDymiB9+v42kgNFvdpaK2bnt6zhoZOCd+D5YyQ5X7koooxR05amyxLe2w==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@openzeppelin/contracts": "^4.9.2", + "@openzeppelin/contracts-upgradeable": "^4.9.2" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp17-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp17-contracts/-/lsp17-contracts-0.15.0.tgz", + "integrity": "sha512-lEMayqU5SR2ysgs08cqzsW50DrJrTtsjoIyqvctaIMZF9DSEHRTn1yh8ePzNNcNr3tQcDmaxwtPAuYD469tXHQ==", + "dependencies": { + "@account-abstraction/contracts": "^0.6.0", + "@erc725/smart-contracts": "^7.0.0", + "@lukso/lsp14-contracts": "~0.15.0", + "@lukso/lsp17contractextension-contracts": "~0.15.0", + "@lukso/lsp20-contracts": "~0.15.0", + "@lukso/lsp6-contracts": "~0.15.0", + "@openzeppelin/contracts": "^4.9.3" + } + }, "packages/lsp-smart-contracts/node_modules/@lukso/lsp17contractextension-contracts": { "version": "0.15.0", "resolved": "https://registry.npmjs.org/@lukso/lsp17contractextension-contracts/-/lsp17contractextension-contracts-0.15.0.tgz", @@ -21551,6 +21639,21 @@ "@openzeppelin/contracts": "^4.9.3" } }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp1delegate-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp1delegate-contracts/-/lsp1delegate-contracts-0.15.0.tgz", + "integrity": "sha512-FuBzBsJZdbtHBF1q6IsCpd94xD/Ce7kHrZASWjSWIU6lzqEWpJcItZ95EkRPmJjAqYlkwzz3ry0wfY8nAIbJrA==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@lukso/lsp1-contracts": "~0.15.0", + "@lukso/lsp10-contracts": "~0.15.0", + "@lukso/lsp5-contracts": "~0.15.0", + "@lukso/lsp7-contracts": "~0.15.0", + "@lukso/lsp8-contracts": "~0.15.0", + "@lukso/lsp9-contracts": "~0.15.0", + "@openzeppelin/contracts": "^4.9.3" + } + }, "packages/lsp-smart-contracts/node_modules/@lukso/lsp2-contracts": { "version": "0.15.0", "resolved": "https://registry.npmjs.org/@lukso/lsp2-contracts/-/lsp2-contracts-0.15.0.tgz", @@ -21560,6 +21663,37 @@ "@openzeppelin/contracts": "^4.9.3" } }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp20-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp20-contracts/-/lsp20-contracts-0.15.0.tgz", + "integrity": "sha512-TfAM9tN6zzIQXq0xq3uE0zkBfVjQ52jXY69fvMSBqs/PsKV49J/T4tH9pMqazTgCF1PlAOnoA8m2MTdjJ7OCqA==" + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp23-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp23-contracts/-/lsp23-contracts-0.15.0.tgz", + "integrity": "sha512-IQqvK19PyLEAb/6gscLqn1MVy9zKOflQCVNIQmjgMhv6d89FvItwfvLk81aycSUELX5XANbzK14dM0x/ydEQAg==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@lukso/universalprofile-contracts": "~0.15.0", + "@openzeppelin/contracts": "^4.9.3" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp25-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp25-contracts/-/lsp25-contracts-0.15.0.tgz", + "integrity": "sha512-GYgnosvrWhNbkZ1lpZ9InPKF8dB1FGb3N0FvpV98ZIG28wKGdBkKnT54ot2bMwmW6oeRuz7/8hAGbcpCKVa/WA==", + "dependencies": { + "@openzeppelin/contracts": "^4.9.3" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp3-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp3-contracts/-/lsp3-contracts-0.15.0.tgz", + "integrity": "sha512-GgL9Ys9HvCuRCJ2/XB6abAwHBCE+LYMPY5vcHnZ67U7cgVgy9sc7z9VDTcBwZygsKUMuNrrnph4MC0G90rALjg==", + "dependencies": { + "@lukso/lsp2-contracts": "~0.15.0" + } + }, "packages/lsp-smart-contracts/node_modules/@lukso/lsp4-contracts": { "version": "0.15.0", "resolved": "https://registry.npmjs.org/@lukso/lsp4-contracts/-/lsp4-contracts-0.15.0.tgz", @@ -21569,6 +21703,30 @@ "@lukso/lsp2-contracts": "~0.15.0" } }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp5-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp5-contracts/-/lsp5-contracts-0.15.0.tgz", + "integrity": "sha512-mrFp5RAY/rswka8D8rfh25T30yipiQsH87pw+f3t0BLnxbkRt9XiUD4vWD9v8D04TO8wQWuTuFJutObirgFwEg==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@lukso/lsp2-contracts": "~0.15.0" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp6-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp6-contracts/-/lsp6-contracts-0.15.0.tgz", + "integrity": "sha512-nJ1V5x6RP6WlOy2yX/SqNA1M07fPjmmsGQRIWJ1/K+oZKcKSPXKRkaRfzbGo9uzBYS4sDa0E2Q4UMItjaTokoQ==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@lukso/lsp1-contracts": "~0.15.0", + "@lukso/lsp14-contracts": "~0.15.0", + "@lukso/lsp17contractextension-contracts": "~0.15.0", + "@lukso/lsp2-contracts": "~0.15.0", + "@lukso/lsp20-contracts": "~0.15.0", + "@lukso/lsp25-contracts": "~0.15.0", + "@openzeppelin/contracts": "^4.9.3" + } + }, "packages/lsp-smart-contracts/node_modules/@lukso/lsp7-contracts": { "version": "0.15.0", "resolved": "https://registry.npmjs.org/@lukso/lsp7-contracts/-/lsp7-contracts-0.15.0.tgz", @@ -21595,6 +21753,28 @@ "@openzeppelin/contracts": "^4.9.3" } }, + "packages/lsp-smart-contracts/node_modules/@lukso/lsp9-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/lsp9-contracts/-/lsp9-contracts-0.15.0.tgz", + "integrity": "sha512-wyE4RR9toZrNTcJZXtHHeLfUEqQzE+Zn5nmailAspBTo/sUmW6AjUxl4PKHG/nLYrcjb3wvZ4mTCnbFkGsRHwg==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@lukso/lsp1-contracts": "~0.15.0", + "@lukso/lsp6-contracts": "~0.15.0", + "@openzeppelin/contracts": "^4.9.3" + } + }, + "packages/lsp-smart-contracts/node_modules/@lukso/universalprofile-contracts": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@lukso/universalprofile-contracts/-/universalprofile-contracts-0.15.0.tgz", + "integrity": "sha512-umW4mpC2HtUNW+Cxi4rP+jgWDzpGQfAiDHYiqVB7TunIO6YzlVez8i4DhrmN/lInYQSuk6+kHpUo1jEO8kiJxQ==", + "dependencies": { + "@erc725/smart-contracts": "^7.0.0", + "@lukso/lsp0-contracts": "~0.15.0", + "@lukso/lsp3-contracts": "~0.15.0", + "@openzeppelin/contracts": "^4.9.3" + } + }, "packages/lsp0-contracts": { "name": "@lukso/lsp0-contracts", "version": "0.15.0-rc.0", @@ -21818,19 +21998,17 @@ "version": "0.16.0", "license": "Apache-2.0", "dependencies": { - "@erc725/smart-contracts": "^8.0.0", + "@erc725/smart-contracts-v8": "npm:@erc725/smart-contracts@8.0.0", "@lukso/lsp2-contracts": "*" } }, - "packages/lsp4-contracts/node_modules/@erc725/smart-contracts": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@erc725/smart-contracts/-/smart-contracts-8.0.0.tgz", - "integrity": "sha512-dMYUbnay5sTb2u1Z4BcJdcZylciJw09W//CtCAfLu11BVqjbMdsekwZHFPDWrz5Lna/5uVx0rI4GklVRORdK5g==", - "dependencies": { - "@openzeppelin/contracts": "^4.9.6", - "@openzeppelin/contracts-upgradeable": "^4.9.6", - "solidity-bytes-utils": "0.8.0" - } + "packages/lsp4-contracts/@erc725/smart-contracts:npm@8.0.0": { + "extraneous": true + }, + "packages/lsp4-contracts/@erc725/smart-contracts@8.0.0": {}, + "packages/lsp4-contracts/node_modules/@erc725/smart-contracts-v8": { + "resolved": "packages/lsp4-contracts/@erc725/smart-contracts@8.0.0", + "link": true }, "packages/lsp5-contracts": { "name": "@lukso/lsp5-contracts", diff --git a/package.json b/package.json index 3f94e9e2d..0b0cfe67e 100644 --- a/package.json +++ b/package.json @@ -62,6 +62,9 @@ "test:reentrancy": "hardhat test --no-compile packages/lsp-smart-contracts/tests/Reentrancy/Reentrancy.test.ts", "test:reentrancyinit": "hardhat test --no-compile packages/lsp-smart-contracts/tests/Reentrancy/ReentrancyInit.test.ts" }, + "dependencies": { + "@erc725/smart-contracts-v8": "npm:@erc725/smart-contracts@8.0.0" + }, "devDependencies": { "@b00ste/hardhat-dodoc": "^0.3.16", "@erc725/erc725.js": "0.23.0", diff --git a/packages/lsp0-contracts/constants.ts b/packages/lsp0-contracts/constants.ts index 9fe90d5e5..ccef5e1d0 100644 --- a/packages/lsp0-contracts/constants.ts +++ b/packages/lsp0-contracts/constants.ts @@ -1,6 +1,6 @@ // ERC165 Interface ID // ---------- -export const INTERFACE_ID_LSP0ERC725Account = '0x24871b3d'; +export const INTERFACE_ID_LSP0 = '0x24871b3d'; // ERC1271 // ---------- diff --git a/packages/lsp4-contracts/contracts/LSP4DigitalAssetMetadata.sol b/packages/lsp4-contracts/contracts/LSP4DigitalAssetMetadata.sol index cf6119640..fa5d85bd5 100644 --- a/packages/lsp4-contracts/contracts/LSP4DigitalAssetMetadata.sol +++ b/packages/lsp4-contracts/contracts/LSP4DigitalAssetMetadata.sol @@ -2,7 +2,7 @@ pragma solidity ^0.8.4; // modules -import {ERC725Y} from "@erc725/smart-contracts/contracts/ERC725Y.sol"; +import {ERC725Y} from "@erc725/smart-contracts-v8/contracts/ERC725Y.sol"; // constants import { diff --git a/packages/lsp4-contracts/contracts/LSP4DigitalAssetMetadataInitAbstract.sol b/packages/lsp4-contracts/contracts/LSP4DigitalAssetMetadataInitAbstract.sol index f6bff82ea..bbe737a4f 100644 --- a/packages/lsp4-contracts/contracts/LSP4DigitalAssetMetadataInitAbstract.sol +++ b/packages/lsp4-contracts/contracts/LSP4DigitalAssetMetadataInitAbstract.sol @@ -4,7 +4,7 @@ pragma solidity ^0.8.4; // modules import { ERC725YInitAbstract -} from "@erc725/smart-contracts/contracts/ERC725YInitAbstract.sol"; +} from "@erc725/smart-contracts-v8/contracts/ERC725YInitAbstract.sol"; // constants import { diff --git a/packages/lsp4-contracts/package.json b/packages/lsp4-contracts/package.json index 71cf54814..92c1435a2 100644 --- a/packages/lsp4-contracts/package.json +++ b/packages/lsp4-contracts/package.json @@ -46,7 +46,7 @@ "lint:solidity": "solhint 'contracts/**/*.sol' && prettier --check 'contracts/**/*.sol'" }, "dependencies": { - "@erc725/smart-contracts": "^8.0.0", + "@erc725/smart-contracts-v8": "npm:@erc725/smart-contracts@8.0.0", "@lukso/lsp2-contracts": "*" } } diff --git a/packages/lsp6-contracts/constants.ts b/packages/lsp6-contracts/constants.ts index 1f6e72493..9b372d0c7 100644 --- a/packages/lsp6-contracts/constants.ts +++ b/packages/lsp6-contracts/constants.ts @@ -1,6 +1,6 @@ import { LSP2ArrayKey } from '@lukso/lsp2-contracts'; -export const INTERFACE_ID_LSP6KEYMANAGER = '0x23f34c62'; +export const INTERFACE_ID_LSP6 = '0x23f34c62'; /** * @dev values returned by the `isValidSignature` function of the ERC1271 standard.