Skip to content

[WIP] Solidity build system #1072

[WIP] Solidity build system

[WIP] Solidity build system #1072

Triggered via pull request September 20, 2024 21:26
Status Failure
Total duration 3m 0s
Artifacts 1

v-next-ci.yml

on: pull_request
List packages
9s
List packages
Check dependency versions
8s
Check dependency versions
Check that the npm scripts are consistent
7s
Check that the npm scripts are consistent
Matrix: bundle
Matrix: ci
Matrix: lint
Fit to window
Zoom out
Zoom in

Annotations

31 errors
Check that the npm scripts are consistent
Process completed with exit code 1.
Check dependency versions
Process completed with exit code 1.
[hardhat] lint: v-next/hardhat/src/internal/builtin-plugins/solidity/build-system/resolver/dependency-resolver.ts#L271
Invalid throw expression. Only throwing a new HardhatError and rethrowing an error you caught are allowed
[hardhat] lint: v-next/hardhat/src/internal/builtin-plugins/solidity/build-system/resolver/dependency-resolver.ts#L277
Invalid throw expression. Only throwing a new HardhatError and rethrowing an error you caught are allowed
[hardhat] lint: v-next/hardhat/src/internal/builtin-plugins/solidity/build-system/resolver/dependency-resolver.ts#L444
Invalid throw expression. Only throwing a new HardhatError and rethrowing an error you caught are allowed
[hardhat] lint: v-next/hardhat/src/internal/builtin-plugins/solidity/build-system/resolver/dependency-resolver.ts#L554
Invalid throw expression. Only throwing a new HardhatError and rethrowing an error you caught are allowed
[hardhat] lint
Process completed with exit code 1.
lint
Process completed with exit code 1.
Should resolve them to project files with their path from the project root as sourceName: v-next\resolver\test\dependency-resolver.ts#L33
AssertionError: Expected values to be strictly equal: + actual - expected + 'contracts\\File.sol' - 'contracts/File.sol' ^ - Expected + Received - contracts/File.sol + contracts\File.sol at assertResolvedProjectFile (test\dependency-resolver.ts:33:10) at TestContext.<anonymous> (test\dependency-resolver.ts:126:7)
Should resolve them to project files with their path from the project root as sourceName: v-next\resolver\test\dependency-resolver.ts#L33
AssertionError: Expected values to be strictly equal: + actual - expected + 'contracts\\File2.sol' - 'contracts/File2.sol' ^ - Expected + Received - contracts/File2.sol + contracts\File2.sol at assertResolvedProjectFile (test\dependency-resolver.ts:33:10) at TestContext.<anonymous> (test\dependency-resolver.ts:186:15)
Should validate that the files exists with the right casing: v-next\hardhat-test-utils\src\hardhat-error.ts#L33
AssertionError: Expected values to be strictly deep-equal: + actual - expected { + from: 'contracts\\File.sol', - from: 'contracts/File.sol', importPath: './nope.sol' } - Expected + Received Object { - "from": "contracts/File.sol", + "from": "contracts\\File.sol", "importPath": "./nope.sol", } at assertIsHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:33:10) at assertRejectsWithHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:87:5) at async TestContext.<anonymous> (test\dependency-resolver.ts:200:15)
Should resolve them to project files with the direct import as sourceName: v-next\resolver\src\dependency-resolver.ts#L967
HardhatError: HHE1002: The import "contracts/File.sol from "contracts\File.sol" doesn't exist. at ResolverImplementation.#validateExistanceAndCasingOfImport (src\dependency-resolver.ts:967:13) at async ResolverImplementation.#resolveImportToProjectFile (src\dependency-resolver.ts:644:5) at async TestContext.<anonymous> (test\dependency-resolver.ts:223:17) [cause]: FileNotFoundError: File D:\a\hardhat\hardhat\v-next\resolver\test\test-fixtures\monorepo\packages\hardhat-project\contracts\File.sol not found at getFileTrueCase (D:\a\hardhat\hardhat\v-next\hardhat-utils\src\fs.ts:107:9) at async ResolverImplementation.#validateExistanceAndCasingOfImport (src\dependency-resolver.ts:960:22) at async ResolverImplementation.#resolveImportToProjectFile (src\dependency-resolver.ts:644:5) at async TestContext.<anonymous> (test\dependency-resolver.ts:223:17)
Should validate that the files exist with the right casing: v-next\hardhat-test-utils\src\hardhat-error.ts#L33
AssertionError: Expected values to be strictly deep-equal: + actual - expected { + from: 'contracts\\File.sol', - from: 'contracts/File.sol', importPath: 'contracts/nope.sol' } - Expected + Received Object { - "from": "contracts/File.sol", + "from": "contracts\\File.sol", "importPath": "contracts/nope.sol", } at assertIsHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:33:10) at assertRejectsWithHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:87:5) at async TestContext.<anonymous> (test\dependency-resolver.ts:255:15)
Should treat files in the project root as local imports, even if they don't exist: v-next\resolver\test\dependency-resolver.ts#L44
AssertionError: Expected values to be strictly equal: + actual - expected + 'monorepo/packages/hardhat-project/File.sol\n' - 'monorepo\\packages\\hardhat-project\\File.sol\n' - Expected + Received - monorepo\packages\hardhat-project\File.sol + monorepo/packages/hardhat-project/File.sol at assertResolvedProjectFile (test\dependency-resolver.ts:44:10) at TestContext.<anonymous> (test\dependency-resolver.ts:278:15)
Should treat files whose first directory exists in the project root as local imports, even if they don't exist: v-next\resolver\src\dependency-resolver.ts#L967
HardhatError: HHE1002: The import "hardhat/File.sol from "contracts\File.sol" doesn't exist. at ResolverImplementation.#validateExistanceAndCasingOfImport (src\dependency-resolver.ts:967:13) at async ResolverImplementation.#resolveImportToProjectFile (src\dependency-resolver.ts:644:5) at async TestContext.<anonymous> (test\dependency-resolver.ts:297:17) [cause]: FileNotFoundError: File D:\a\hardhat\hardhat\v-next\resolver\test\test-fixtures\monorepo\packages\hardhat-project\hardhat\File.sol not found at getFileTrueCase (D:\a\hardhat\hardhat\v-next\hardhat-utils\src\fs.ts:107:9) at async ResolverImplementation.#validateExistanceAndCasingOfImport (src\dependency-resolver.ts:960:22) at async ResolverImplementation.#resolveImportToProjectFile (src\dependency-resolver.ts:644:5) at async TestContext.<anonymous> (test\dependency-resolver.ts:297:17)
Should always treat hardhat/console.sol as an npm file even if other hardhat/ files are local: v-next\resolver\test\dependency-resolver.ts#L81
AssertionError: Expected values to be strictly equal: + actual - expected + 'monorepo/node_modules/hardhat/console.sol\n' - 'monorepo\\node_modules\\hardhat\\console.sol\n' - Expected + Received - monorepo\node_modules\hardhat\console.sol + monorepo/node_modules/hardhat/console.sol at assertNpmPackageResolvedFile (test\dependency-resolver.ts:81:10) at TestContext.<anonymous> (test\dependency-resolver.ts:325:13)
Should fail if the package is not installed: v-next\hardhat-test-utils\src\hardhat-error.ts#L33
AssertionError: Expected values to be strictly deep-equal: + actual - expected { + from: 'contracts\\File.sol', - from: 'contracts/File.sol', importPath: 'uninstalled-package/File.sol' } - Expected + Received Object { - "from": "contracts/File.sol", + "from": "contracts\\File.sol", "importPath": "uninstalled-package/File.sol", } at assertIsHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:33:10) at assertRejectsWithHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:87:5) at async TestContext.<anonymous> (test\dependency-resolver.ts:353:13)
Should fail if the package uses package.json#exports: v-next\hardhat-test-utils\src\hardhat-error.ts#L33
AssertionError: Expected values to be strictly deep-equal: + actual - expected { + from: 'contracts\\File.sol', - from: 'contracts/File.sol', importPath: 'exports/File.sol' } - Expected + Received Object { - "from": "contracts/File.sol", + "from": "contracts\\File.sol", "importPath": "exports/File.sol", } at assertIsHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:33:10) at assertRejectsWithHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:87:5) at async TestContext.<anonymous> (test\dependency-resolver.ts:368:13)
Should resolve them to project files with their path from the project root as sourceName: v-next\hardhat\test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts#L34
AssertionError: Expected values to be strictly equal: + actual - expected + 'contracts\\File.sol' - 'contracts/File.sol' ^ - Expected + Received - contracts/File.sol + contracts\File.sol at assertResolvedProjectFile (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:34:10) at TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:127:7)
Should resolve them to project files with their path from the project root as sourceName: v-next\hardhat\test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts#L34
AssertionError: Expected values to be strictly equal: + actual - expected + 'contracts\\File2.sol' - 'contracts/File2.sol' ^ - Expected + Received - contracts/File2.sol + contracts\File2.sol at assertResolvedProjectFile (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:34:10) at TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:187:15)
Should validate that the files exists with the right casing: v-next\hardhat-test-utils\src\hardhat-error.ts#L33
AssertionError: Expected values to be strictly deep-equal: + actual - expected { + from: 'contracts\\File.sol', - from: 'contracts/File.sol', importPath: './nope.sol' } - Expected + Received Object { - "from": "contracts/File.sol", + "from": "contracts\\File.sol", "importPath": "./nope.sol", } at assertIsHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:33:10) at assertRejectsWithHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:87:5) at async TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:201:15)
Should resolve them to project files with the direct import as sourceName: v-next\hardhat\src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts#L1026
HardhatError: HHE1002: The import "contracts/File.sol from "contracts\File.sol" doesn't exist. at ResolverImplementation.#validateExistanceAndCasingOfImport (src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:1026:13) at async ResolverImplementation.#resolveImportToProjectFile (src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:703:5) at async AsyncMutex.exclusiveRun (src\internal\core\async-mutex.ts:25:14) at async TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:224:17) [cause]: FileNotFoundError: File D:\a\hardhat\hardhat\v-next\hardhat\test\internal\builtin-plugins\solidity\build-system\resolver\test-fixtures\monorepo\packages\hardhat-project\contracts\File.sol not found at getFileTrueCase (D:\a\hardhat\hardhat\v-next\hardhat-utils\src\fs.ts:107:9) at async ResolverImplementation.#validateExistanceAndCasingOfImport (src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:1019:22) at async ResolverImplementation.#resolveImportToProjectFile (src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:703:5) at async AsyncMutex.exclusiveRun (src\internal\core\async-mutex.ts:25:14) at async TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:224:17)
Should validate that the files exist with the right casing: v-next\hardhat-test-utils\src\hardhat-error.ts#L33
AssertionError: Expected values to be strictly deep-equal: + actual - expected { + from: 'contracts\\File.sol', - from: 'contracts/File.sol', importPath: 'contracts/nope.sol' } - Expected + Received Object { - "from": "contracts/File.sol", + "from": "contracts\\File.sol", "importPath": "contracts/nope.sol", } at assertIsHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:33:10) at assertRejectsWithHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:87:5) at async TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:256:15)
Should treat files in the project root as local imports, even if they don't exist: v-next\hardhat\test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts#L45
AssertionError: Expected values to be strictly equal: + actual - expected + 'monorepo/packages/hardhat-project/File.sol\n' - 'monorepo\\packages\\hardhat-project\\File.sol\n' - Expected + Received - monorepo\packages\hardhat-project\File.sol + monorepo/packages/hardhat-project/File.sol at assertResolvedProjectFile (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:45:10) at TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:279:15)
Should treat files whose first directory exists in the project root as local imports, even if they don't exist: v-next\hardhat\src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts#L1026
HardhatError: HHE1002: The import "hardhat/File.sol from "contracts\File.sol" doesn't exist. at ResolverImplementation.#validateExistanceAndCasingOfImport (src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:1026:13) at async ResolverImplementation.#resolveImportToProjectFile (src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:703:5) at async AsyncMutex.exclusiveRun (src\internal\core\async-mutex.ts:25:14) at async TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:298:17) [cause]: FileNotFoundError: File D:\a\hardhat\hardhat\v-next\hardhat\test\internal\builtin-plugins\solidity\build-system\resolver\test-fixtures\monorepo\packages\hardhat-project\hardhat\File.sol not found at getFileTrueCase (D:\a\hardhat\hardhat\v-next\hardhat-utils\src\fs.ts:107:9) at async ResolverImplementation.#validateExistanceAndCasingOfImport (src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:1019:22) at async ResolverImplementation.#resolveImportToProjectFile (src\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:703:5) at async AsyncMutex.exclusiveRun (src\internal\core\async-mutex.ts:25:14) at async TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:298:17)
Should always treat hardhat/console.sol as an npm file even if other hardhat/ files are local: v-next\hardhat\test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts#L82
AssertionError: Expected values to be strictly equal: + actual - expected + 'monorepo/node_modules/hardhat/console.sol\n' - 'monorepo\\node_modules\\hardhat\\console.sol\n' - Expected + Received - monorepo\node_modules\hardhat\console.sol + monorepo/node_modules/hardhat/console.sol at assertNpmPackageResolvedFile (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:82:10) at TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:326:13)
Should fail if the package is not installed: v-next\hardhat-test-utils\src\hardhat-error.ts#L33
AssertionError: Expected values to be strictly deep-equal: + actual - expected { + from: 'contracts\\File.sol', - from: 'contracts/File.sol', importPath: 'uninstalled-package/File.sol' } - Expected + Received Object { - "from": "contracts/File.sol", + "from": "contracts\\File.sol", "importPath": "uninstalled-package/File.sol", } at assertIsHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:33:10) at assertRejectsWithHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:87:5) at async TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:354:13)
Should fail if the package uses package.json#exports: v-next\hardhat-test-utils\src\hardhat-error.ts#L33
AssertionError: Expected values to be strictly deep-equal: + actual - expected { + from: 'contracts\\File.sol', - from: 'contracts/File.sol', importPath: 'exports/File.sol' } - Expected + Received Object { - "from": "contracts/File.sol", + "from": "contracts\\File.sol", "importPath": "exports/File.sol", } at assertIsHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:33:10) at assertRejectsWithHardhatError (D:\a\hardhat\hardhat\v-next\hardhat-test-utils\src\hardhat-error.ts:87:5) at async TestContext.<anonymous> (test\internal\builtin-plugins\solidity\build-system\resolver\dependency-resolver.ts:369:13)
Should shorten a path that's inside the folder: v-next\hardhat-utils\test\path.ts#L39
AssertionError: Expected values to be strictly equal: + actual - expected + 'contracts\\File.sol' - 'contracts/File.sol' ^ - Expected + Received - contracts/File.sol + contracts\File.sol at TestContext.<anonymous> (test\path.ts:39:14)
[hardhat-utils] ci on windows-latest (Node 22)
Process completed with exit code 1.
ci
Process completed with exit code 1.

Artifacts

Produced during runtime
Name Size
hardhat
18 MB