Now that webpack is out, we can properly implement typescript linting. Do this, and add to arc lint.
Details
Details
- Reviewers
PiRK - Group Reviewers
Restricted Project - Commits
- rABCf0d32cf005dc: [ecashaddrjs] Implement typescript linting and add to arclint
npm test, arc lint -- modules/ecashaddrjs/**/*
Diff Detail
Diff Detail
- Repository
- rABC Bitcoin ABC
- Branch
- cashaddr-lint-fixes
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Event Timeline
Comment Actions
update changelog, back out unrelated style pref change, apply correct types, build lint
Comment Actions
Build Bitcoin ABC Diffs / Diff Testing (ecashaddrjs-tests) failed.
Tail of the build log:
> ecashaddrjs@1.6.2 build > tsc added 577 packages, and audited 578 packages in 4s 66 packages are looking for funding run `npm fund` for details 2 vulnerabilities (1 moderate, 1 high) To address all issues, run: npm audit fix Run `npm audit` for details. CI not configured to test build. > ecashaddrjs@1.6.2 test > mocha --reporter mocha-junit-reporter --reporter-options mochaFile=test_results/ecashaddrjs-junit.xml --reporter-options testsuitesTitle=Ecashaddrjs Unit Tests --reporter-options rootSuiteTitle=Ecashaddrjs TSError: ⨯ Unable to compile TypeScript: test/base32.test.ts(10,24): error TS7016: Could not find a declaration file for module 'chai'. '/work/modules/ecashaddrjs/node_modules/chai/index.js' implicitly has an 'any' type. Try `npm i --save-dev @types/chai` if it exists or add a new declaration (.d.ts) file containing `declare module 'chai';` at createTSError (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:859:12) at reportTSError (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:863:19) at getOutput (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1077:36) at Object.compile (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1433:41) at Module.m._compile (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1617:30) at module.exports (/usr/lib/node_modules/nyc/node_modules/default-require-extensions/js.js:7:9) at /usr/lib/node_modules/nyc/node_modules/append-transform/index.js:64:4 at require.extensions.<computed> (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1621:12) at Object.<anonymous> (/usr/lib/node_modules/nyc/node_modules/append-transform/index.js:64:4) at Module.load (node:internal/modules/cjs/loader:1288:32) at Function.Module._load (node:internal/modules/cjs/loader:1104:12) at Module.require (node:internal/modules/cjs/loader:1311:19) at require (node:internal/modules/helpers:179:18) at Object.exports.requireOrImport (/work/modules/ecashaddrjs/node_modules/mocha/lib/nodejs/esm-utils.js:53:16) at async Object.exports.loadFilesAsync (/work/modules/ecashaddrjs/node_modules/mocha/lib/nodejs/esm-utils.js:100:20) at async singleRun (/work/modules/ecashaddrjs/node_modules/mocha/lib/cli/run-helpers.js:125:3) at async Object.exports.handler (/work/modules/ecashaddrjs/node_modules/mocha/lib/cli/run.js:370:5) ----------|---------|----------|---------|---------|------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ----------|---------|----------|---------|---------|------------------- All files | 0 | 0 | 0 | 0 | ----------|---------|----------|---------|---------|------------------- ##teamcity[blockOpened name='Code Coverage Summary'] ##teamcity[buildStatisticValue key='CodeCoverageAbsBCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsBTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsRCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsRTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsMCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsMTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsLCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsLTotal' value='0'] ##teamcity[blockClosed name='Code Coverage Summary'] mv: cannot stat 'test_results/ecashaddrjs-junit.xml': No such file or directory Build ecashaddrjs-tests failed with exit code 1
Comment Actions
Build Bitcoin ABC Diffs / Diff Testing (ecashaddrjs-tests) failed.
Tail of the build log:
> ecashaddrjs@1.6.2 build > tsc added 577 packages, and audited 578 packages in 4s 66 packages are looking for funding run `npm fund` for details 2 vulnerabilities (1 moderate, 1 high) To address all issues, run: npm audit fix Run `npm audit` for details. CI not configured to test build. > ecashaddrjs@1.6.2 test > mocha --reporter mocha-junit-reporter --reporter-options mochaFile=test_results/ecashaddrjs-junit.xml --reporter-options testsuitesTitle=Ecashaddrjs Unit Tests --reporter-options rootSuiteTitle=Ecashaddrjs TSError: ⨯ Unable to compile TypeScript: test/base32.test.ts(10,24): error TS7016: Could not find a declaration file for module 'chai'. '/work/modules/ecashaddrjs/node_modules/chai/index.js' implicitly has an 'any' type. Try `npm i --save-dev @types/chai` if it exists or add a new declaration (.d.ts) file containing `declare module 'chai';` at createTSError (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:859:12) at reportTSError (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:863:19) at getOutput (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1077:36) at Object.compile (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1433:41) at Module.m._compile (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1617:30) at module.exports (/usr/lib/node_modules/nyc/node_modules/default-require-extensions/js.js:7:9) at /usr/lib/node_modules/nyc/node_modules/append-transform/index.js:64:4 at require.extensions.<computed> (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1621:12) at Object.<anonymous> (/usr/lib/node_modules/nyc/node_modules/append-transform/index.js:64:4) at Module.load (node:internal/modules/cjs/loader:1288:32) at Function.Module._load (node:internal/modules/cjs/loader:1104:12) at Module.require (node:internal/modules/cjs/loader:1311:19) at require (node:internal/modules/helpers:179:18) at Object.exports.requireOrImport (/work/modules/ecashaddrjs/node_modules/mocha/lib/nodejs/esm-utils.js:53:16) at async Object.exports.loadFilesAsync (/work/modules/ecashaddrjs/node_modules/mocha/lib/nodejs/esm-utils.js:100:20) at async singleRun (/work/modules/ecashaddrjs/node_modules/mocha/lib/cli/run-helpers.js:125:3) at async Object.exports.handler (/work/modules/ecashaddrjs/node_modules/mocha/lib/cli/run.js:370:5) ----------|---------|----------|---------|---------|------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ----------|---------|----------|---------|---------|------------------- All files | 0 | 0 | 0 | 0 | ----------|---------|----------|---------|---------|------------------- ##teamcity[blockOpened name='Code Coverage Summary'] ##teamcity[buildStatisticValue key='CodeCoverageAbsBCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsBTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsRCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsRTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsMCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsMTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsLCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsLTotal' value='0'] ##teamcity[blockClosed name='Code Coverage Summary'] mv: cannot stat 'test_results/ecashaddrjs-junit.xml': No such file or directory Build ecashaddrjs-tests failed with exit code 1
Comment Actions
Build Bitcoin ABC Diffs / Diff Testing (token-server-tests) failed.
Failed tests logs:
====== routes.js: "after all" hook for "/blacklist/:tokenId returns expected error if database fails to lookup a valid tokenId".routes.js "after all" hook for "/blacklist/:tokenId returns expected error if database fails to lookup a valid tokenId" ====== Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/work/apps/token-server/src/routes.test.ts) at listOnTimeout (node:internal/timers:581:17) at processTimers (node:internal/timers:519:7)
Each failure log is accessible here:
routes.js: "after all" hook for "/blacklist/:tokenId returns expected error if database fails to lookup a valid tokenId".routes.js "after all" hook for "/blacklist/:tokenId returns expected error if database fails to lookup a valid tokenId"
Comment Actions
Build Bitcoin ABC Diffs / Diff Testing (ecashaddrjs-tests) failed.
Tail of the build log:
> ecashaddrjs@1.6.2 build > tsc added 577 packages, and audited 578 packages in 4s 66 packages are looking for funding run `npm fund` for details 2 vulnerabilities (1 moderate, 1 high) To address all issues, run: npm audit fix Run `npm audit` for details. CI not configured to test build. > ecashaddrjs@1.6.2 test > mocha --reporter mocha-junit-reporter --reporter-options mochaFile=test_results/ecashaddrjs-junit.xml --reporter-options testsuitesTitle=Ecashaddrjs Unit Tests --reporter-options rootSuiteTitle=Ecashaddrjs TSError: ⨯ Unable to compile TypeScript: test/base32.test.ts(10,24): error TS7016: Could not find a declaration file for module 'chai'. '/work/modules/ecashaddrjs/node_modules/chai/index.js' implicitly has an 'any' type. Try `npm i --save-dev @types/chai` if it exists or add a new declaration (.d.ts) file containing `declare module 'chai';` at createTSError (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:859:12) at reportTSError (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:863:19) at getOutput (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1077:36) at Object.compile (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1433:41) at Module.m._compile (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1617:30) at module.exports (/usr/lib/node_modules/nyc/node_modules/default-require-extensions/js.js:7:9) at /usr/lib/node_modules/nyc/node_modules/append-transform/index.js:64:4 at require.extensions.<computed> (/work/modules/ecashaddrjs/node_modules/ts-node/src/index.ts:1621:12) at Object.<anonymous> (/usr/lib/node_modules/nyc/node_modules/append-transform/index.js:64:4) at Module.load (node:internal/modules/cjs/loader:1288:32) at Function.Module._load (node:internal/modules/cjs/loader:1104:12) at Module.require (node:internal/modules/cjs/loader:1311:19) at require (node:internal/modules/helpers:179:18) at Object.exports.requireOrImport (/work/modules/ecashaddrjs/node_modules/mocha/lib/nodejs/esm-utils.js:53:16) at async Object.exports.loadFilesAsync (/work/modules/ecashaddrjs/node_modules/mocha/lib/nodejs/esm-utils.js:100:20) at async singleRun (/work/modules/ecashaddrjs/node_modules/mocha/lib/cli/run-helpers.js:125:3) at async Object.exports.handler (/work/modules/ecashaddrjs/node_modules/mocha/lib/cli/run.js:370:5) ----------|---------|----------|---------|---------|------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ----------|---------|----------|---------|---------|------------------- All files | 0 | 0 | 0 | 0 | ----------|---------|----------|---------|---------|------------------- ##teamcity[blockOpened name='Code Coverage Summary'] ##teamcity[buildStatisticValue key='CodeCoverageAbsBCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsBTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsRCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsRTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsMCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsMTotal' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsLCovered' value='0'] ##teamcity[buildStatisticValue key='CodeCoverageAbsLTotal' value='0'] ##teamcity[blockClosed name='Code Coverage Summary'] mv: cannot stat 'test_results/ecashaddrjs-junit.xml': No such file or directory Build ecashaddrjs-tests failed with exit code 1
Comment Actions
Tail of the build log:
File "/work/abc-ci-builds/ecash-lib-integration-tests/test/functional/test_runner.py", line 362, in main os.makedirs(tmpdir) File "<frozen os>", line 225, in makedirs FileExistsError: [Errno 17] File exists: '/work/abc-ci-builds/ecash-lib-integration-tests/test/tmp/test_runner_₿₵_🏃_20241122_000838' Test runner completed with code 1 ----------------------------|---------|----------|---------|---------|------------------------------ File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ----------------------------|---------|----------|---------|---------|------------------------------ All files | 64.33 | 53.1 | 64.35 | 64.32 | ecash-lib | 0 | 0 | 0 | 0 | eslint.config.js | 0 | 0 | 0 | 0 | ecash-lib/src | 75.79 | 56.13 | 76.25 | 75.47 | consts.ts | 0 | 100 | 100 | 0 | 6-8 ecc.ts | 57.14 | 83.33 | 40 | 57.14 | 23-31 hash.ts | 88.88 | 83.33 | 80 | 88.88 | 14 index.ts | 0 | 0 | 0 | 0 | indexBrowser.ts | 0 | 0 | 0 | 0 | indexNodeJs.ts | 0 | 0 | 0 | 0 | initBrowser.ts | 0 | 100 | 0 | 0 | 11-13 initNodeJs.ts | 100 | 100 | 100 | 100 | op.ts | 40 | 44.44 | 66.66 | 40 | ...4,107,109,117-122,133-161 opcode.ts | 100 | 83.33 | 100 | 100 | 1 script.ts | 52.63 | 38.09 | 60 | 50.9 | ...4-135,146,156,166,188-199 sigHashType.ts | 77.77 | 44 | 85.71 | 77.77 | 26-38 tx.ts | 93.47 | 79.16 | 90.9 | 93.18 | 123-125 txBuilder.ts | 80.89 | 59.25 | 84.61 | 80.23 | ...1,154,173-178,183,236-240 unsignedTx.ts | 75 | 57.14 | 85.71 | 75.3 | ...3,151,159,184,192,198-201 ecash-lib/src/ffi | 28.26 | 15.94 | 16.98 | 28.98 | ecash_lib_wasm_browser.js | 0 | 0 | 0 | 0 | 3-336 ecash_lib_wasm_nodejs.js | 61.9 | 55 | 39.13 | 62.75 | ...1,197-215,237,250-251,255 ecash-lib/src/io | 59.55 | 60.29 | 70.58 | 58.77 | bytes.ts | 7.4 | 71.42 | 12.5 | 7.4 | 13-64 hex.ts | 82.05 | 62.5 | 80 | 82.35 | 41-45,50,58 int.ts | 0 | 0 | 0 | 0 | str.ts | 85.71 | 83.33 | 66.66 | 85.71 | 15 varsize.ts | 32 | 36.36 | 66.66 | 32 | 14-24,40-47 writer.ts | 0 | 0 | 0 | 0 | writerbytes.ts | 83.33 | 68.42 | 100 | 83.33 | 33,43,53,63,79 writerlength.ts | 100 | 83.33 | 100 | 100 | 1 ecash-lib/src/test | 89.02 | 54.16 | 89.47 | 89.47 | testRunner.ts | 89.02 | 54.16 | 89.47 | 89.47 | 73-75,88-89,112,123,166 ecash-lib/src/token | 87.15 | 72.85 | 93.33 | 87.07 | alp.ts | 82.92 | 89.47 | 83.33 | 82.92 | 110-123,142 common.ts | 100 | 83.33 | 100 | 100 | 1 empp.ts | 92.3 | 75 | 100 | 91.66 | 12 slp.ts | 89.74 | 62.16 | 100 | 89.74 | ...9,161,167,175,178,197,202 ----------------------------|---------|----------|---------|---------|------------------------------ ##teamcity[blockOpened name='Code Coverage Summary'] ##teamcity[buildStatisticValue key='CodeCoverageAbsBCovered' value='808'] ##teamcity[buildStatisticValue key='CodeCoverageAbsBTotal' value='1256'] ##teamcity[buildStatisticValue key='CodeCoverageAbsRCovered' value='248'] ##teamcity[buildStatisticValue key='CodeCoverageAbsRTotal' value='467'] ##teamcity[buildStatisticValue key='CodeCoverageAbsMCovered' value='139'] ##teamcity[buildStatisticValue key='CodeCoverageAbsMTotal' value='216'] ##teamcity[buildStatisticValue key='CodeCoverageAbsLCovered' value='788'] ##teamcity[buildStatisticValue key='CodeCoverageAbsLTotal' value='1225'] ##teamcity[blockClosed name='Code Coverage Summary'] mv: cannot stat 'test_results/ecash-lib-integration-tests-junit.xml': No such file or directory Build ecash-lib-integration-tests failed with exit code 1