show error

show error

update solc

lock

18

put back lock

rm swarmgw

fix test

solc

yarn version

add solc

show file

set sol version on test file

update types

rm package

sync ethers

20 test

test all libs

rm pragma

test versions

update tests

revert solc

revert solc

undo changes

revert

revert

revert

fix test

log

update script

rm comment

fix flaky
pull/3658/head
filip mertens 2 years ago
parent f68ec36e6e
commit 7a861bd6f8
  1. 17
      .circleci/config.yml
  2. 2
      .github/workflows/publish-action.yml
  3. 2
      .github/workflows/run-sut.yml
  4. 2
      README.md
  5. 2
      apps/remix-ide-e2e/package.json
  6. 1
      apps/remix-ide-e2e/src/tests/workspace.test.ts
  7. 26
      apps/remix-ide/ci/download_e2e_assets.js
  8. 2
      libs/remix-analyzer/package.json
  9. 4
      libs/remix-debug/test/debugger.ts
  10. 2
      libs/remix-debug/test/sourceLocationTracker.ts
  11. 2
      libs/remix-lib/package.json
  12. 2
      libs/remix-solidity/package.json
  13. 3
      libs/remix-tests/package.json
  14. 3
      libs/remix-ui/debugger-ui/src/lib/vm-debugger/dropdown-panel.tsx
  15. 2
      libs/remix-url-resolver/package.json
  16. 2
      libs/remixd/package.json
  17. 13
      package.json
  18. 1134
      yarn.lock

@ -9,7 +9,7 @@ orbs:
jobs:
build:
docker:
- image: cimg/node:16.20.0-browsers
- image: cimg/node:20.0.0-browsers
resource_class:
xlarge
@ -43,7 +43,7 @@ jobs:
build-plugin:
docker:
- image: cimg/node:16.20.0-browsers
- image: cimg/node:20.0.0-browsers
resource_class:
xlarge
working_directory: ~/remix-project
@ -69,7 +69,7 @@ jobs:
lint:
docker:
- image: cimg/node:16.20.0-browsers
- image: cimg/node:20.0.0-browsers
resource_class:
xlarge
working_directory: ~/remix-project
@ -86,7 +86,7 @@ jobs:
command: node ./apps/remix-ide/ci/lint-targets.js
remix-libs:
docker:
- image: cimg/node:16.20.0-browsers
- image: cimg/node:20.0.0-browsers
resource_class:
xlarge
working_directory: ~/remix-project
@ -98,6 +98,7 @@ jobs:
- restore_cache:
keys:
- v1-deps-{{ checksum "yarn.lock" }}
- run: yarn --version
- run: yarn
- run: yarn build:libs
- run: cd dist/libs/remix-tests && yarn
@ -111,7 +112,7 @@ jobs:
remix-ide-browser:
docker:
- image: cimg/node:16.20.0-browsers
- image: cimg/node:20.0.0-browsers
resource_class:
xlarge
working_directory: ~/remix-project
@ -175,7 +176,7 @@ jobs:
remix-test-plugins:
docker:
- image: cimg/node:16.20.0-browsers
- image: cimg/node:20.0.0-browsers
resource_class:
xlarge
working_directory: ~/remix-project
@ -216,7 +217,7 @@ jobs:
predeploy:
docker:
- image: cimg/node:16.20.0-browsers
- image: cimg/node:20.0.0-browsers
resource_class:
xlarge
working_directory: ~/remix-project
@ -240,7 +241,7 @@ jobs:
deploy-build:
docker:
- image: cimg/node:16.20.0-browsers
- image: cimg/node:20.0.0-browsers
resource_class:
xlarge

@ -11,7 +11,7 @@ jobs:
uses: actions/checkout@v2
- uses: actions/setup-node@v3
with:
node-version: 16.20.0
node-version: 20.0.0
- run: yarn install
- run: ls
- run: pwd

@ -12,7 +12,7 @@ jobs:
- name: Environment Setup
uses: actions/setup-node@v3
with:
node-version: 16.20.0
node-version: 20.0.0
- name: Run SUT Action
uses: EthereumRemix/sol-test@v1
with:

@ -50,7 +50,7 @@ Note: It contains the latest supported version of Solidity available at the time
*Supported versions:*
```bash
"engines": {
"node": "^16.20.0",
"node": "^20.0.0",
"npm": "^6.14.15"
}
```

@ -2,7 +2,7 @@
"name": "remix-ide-e2e",
"license": "MIT",
"engines": {
"node": "^16.20.0",
"node": "^20.0.0",
"npm": "^6.14.15"
},
"dependencies": {

@ -118,6 +118,7 @@ module.exports = {
.execute(function () { (document.querySelector('[data-id="fileSystemModalDialogModalFooter-react"] .modal-ok') as HTMLElement).click() })
.pause(100)
.waitForElementPresent('*[data-id="treeViewUltreeViewMenu"]')
.waitForElementVisible('*[data-id="treeViewLitreeViewItem.prettierrc.json"]')
.execute(function () {
const fileList = document.querySelector('*[data-id="treeViewUltreeViewMenu"]')
return fileList.getElementsByTagName('li').length;

@ -20,14 +20,20 @@ axios({
const path = `./dist/apps/remix-ide/assets/js/${build.path}`;
// use axios to get the file
try {
axios({
method: 'get',
url: buildurl,
responseType: 'stream'
}).then(function (response) {
// pipe the result stream into a file on disc
response.data.pipe(fs.createWriteStream(path));
fs.writeFile(path, response.data, function (err) {
if (err) {
console.log(err);
}
})
})
} catch (e) {
console.log('Failed to download ' + build.path + ' from ' + buildurl)
}
}
}
@ -47,14 +53,22 @@ fs.readdirSync(testFolder).forEach(file => {
const path = `./dist/apps/remix-ide/assets/js/soljson${version}.js`;
// use axios to get the file
try {
axios({
method: 'get',
url: url,
responseType: 'stream'
}).then(function (response) {
// pipe the result stream into a file on disc
response.data.pipe(fs.createWriteStream(path));
fs.writeFile(path, response.data, function (err) {
if (err) {
console.log(err);
}
})
})
} catch (e) {
console.log('Failed to download soljson' + version + ' from ' + url)
}
}
}

@ -40,7 +40,7 @@
"license": "MIT",
"homepage": "https://github.com/ethereum/remix-project/tree/master/libs/remix-analyzer#readme",
"devDependencies": {
"@types/node": "^13.7.0",
"@types/node": "^18.16.1",
"babel-eslint": "^7.1.1",
"babel-plugin-transform-object-assign": "^6.22.0",
"babel-preset-es2015": "^6.24.0",

@ -9,7 +9,7 @@ import { BreakpointManager } from '../src/code/breakpointManager'
const compiler = require('solc')
const vmCall = require('./vmCall')
const ballot = `pragma solidity >=0.4.22 <0.8.0;
const ballot = `pragma solidity >=0.4.22;
/**
* @title Ballot
@ -287,7 +287,7 @@ function testDebugging (debugManager) {
breakPointManager.add({fileName: 'test.sol', row: 39})
breakPointManager.event.register('breakpointHit', function (sourceLocation, step) {
t.equal(JSON.stringify(sourceLocation), JSON.stringify({ start: 1153, length: 6, file: 0, jump: '-' }))
t.equal(JSON.stringify(sourceLocation), JSON.stringify({ start: 1146, length: 6, file: 0, jump: '-' }))
t.equal(step, 212)
})

@ -95,7 +95,7 @@ tape('SourceLocationTracker', function (t) {
map = await sourceLocationTracker.getValidSourceLocationFromVMTraceIndex('0x0d3a18d64dfe4f927832ab58d6451cecc4e517c5', 45, output.contracts)
st.equal(map['file'], 1) // 1 refers to the generated source (pragma experimental ABIEncoderV2)
st.equal(map['start'], 1293)
st.equal(map['start'], 1297)
st.equal(map['length'], 32)
map = await sourceLocationTracker.getValidSourceLocationFromVMTraceIndex('0x0d3a18d64dfe4f927832ab58d6451cecc4e517c5', 36, output.contracts)

@ -19,7 +19,7 @@
"dependencies": {
"@ethereumjs/util": "^8.0.5",
"async": "^2.1.2",
"ethers": "^4.0.40",
"ethers": "^5.7.2",
"ethjs-util": "^0.1.6",
"events": "^3.0.0",
"solc": "^0.7.4",

@ -38,7 +38,7 @@
"@babel/preset-es2015": "latest",
"@babel/preset-es2017": "latest",
"@babel/preset-stage-0": "^7.0.0",
"@types/node": "^13.1.1",
"@types/node": "^18.16.1",
"babel-eslint": "^10.0.0",
"babelify": "^10.0.0",
"typescript": "^3.7.4"

@ -58,6 +58,7 @@
"express-ws": "^4.0.0",
"merge": "^1.2.0",
"signale": "^1.4.0",
"solc": "^0.7.4",
"string-similarity": "^4.0.4",
"time-stamp": "^2.2.0",
"tslib": "^2.3.0",
@ -71,7 +72,7 @@
"@types/colors": "^1.2.1",
"@types/commander": "^2.12.2",
"@types/mocha": "^5.2.5",
"@types/node": "^10.12.21",
"@types/node": "^18.16.1",
"@types/web3": "^1.0.18",
"mocha": "^5.1.0",
"ts-node": "^8.0.2",

@ -157,7 +157,8 @@ export const DropdownPanel = (props: DropdownPanelProps) => {
...prevState.dropdownContent,
display: 'block'
},
copiableContent: JSON.stringify(calldata, null, '\t'),
// replace 0xNaN with 0x0
copiableContent: JSON.stringify(calldata, null, '\t').replace(/0xNaN/g, '0x0'),
message: {
innerText: isEmpty ? 'No data available' : '',
display: isEmpty ? 'block' : 'none'

@ -31,7 +31,7 @@
"devDependencies": {
"@types/chai": "^4.1.7",
"@types/mocha": "^5.2.5",
"@types/node": "^10.12.18",
"@types/node": "^18.16.1",
"chai": "^4.2.0",
"mocha": "^5.1.0",
"remix-plugin": "0.0.1-alpha.2",

@ -49,7 +49,7 @@
"devDependencies": {
"@types/axios": "^0.14.0",
"@types/fs-extra": "^9.0.1",
"@types/node": "^14.0.5",
"@types/node": "^18.16.1",
"@types/ws": "^7.2.4",
"@typescript-eslint/eslint-plugin": "^3.2.0",
"@typescript-eslint/parser": "^3.2.0",

@ -21,7 +21,7 @@
"remix-ide": "./apps/remix-ide/bin/remix-ide"
},
"engines": {
"node": "^16.20.0",
"node": "^20.0.0",
"npm": "^6.14.15"
},
"scripts": {
@ -48,7 +48,7 @@
"help": "nx help",
"lint:libs": "nx run-many --target=lint --projects=remix-analyzer,remix-astwalker,remix-debug,remix-lib,remix-simulator,remix-solidity,remix-tests,remix-url-resolver,remix-ws-templates,remixd,remix-ui-tree-view,remix-ui-modal-dialog,remix-ui-toaster,remix-ui-helper,remix-ui-debugger-ui,remix-ui-workspace,remix-ui-static-analyser,remix-ui-checkbox,remix-ui-settings,remix-core-plugin,remix-ui-renderer,remix-ui-publish-to-storage,remix-ui-solidity-compiler,solidity-unit-testing,remix-ui-plugin-manager,remix-ui-terminal,remix-ui-editor,remix-ui-app,remix-ui-tabs,remix-ui-panel,remix-ui-run-tab,remix-ui-permission-handler,remix-ui-search,remix-ui-file-decorators,remix-ui-tooltip-popup,ghaction-helper",
"build:libs": "nx run-many --target=build --parallel=false --with-deps=true --projects=remix-analyzer,remix-astwalker,remix-debug,remix-lib,remix-simulator,remix-solidity,remix-tests,remix-url-resolver,remix-ws-templates,remixd,ghaction-helper",
"test:libs": "nx run-many --target=test --projects=remix-analyzer,remix-astwalker,remix-debug,remix-lib,remix-simulator,remix-tests,remix-url-resolver,remixd",
"test:libs": "nx run-many --target=test --projects=remix-analyzer,remix-astwalker,remix-debug,remix-lib,remix-simulator,remix-tests,remix-url-resolver",
"publish:libs": "yarn run build:libs && lerna publish --skip-git && yarn run bumpVersion:libs",
"publishDev:libs": "yarn run build:libs && lerna publish --npm-tag alpha --skip-git && yarn run bumpVersion:libs",
"build:e2e": "node apps/remix-ide-e2e/src/buildGroupTests.js && tsc -p apps/remix-ide-e2e/tsconfig.e2e.json",
@ -200,7 +200,6 @@
"sol2uml": "^2.4.3",
"string-similarity": "^4.0.4",
"svg2pdf.js": "^2.2.1",
"swarmgw": "^0.3.1",
"time-stamp": "^2.2.0",
"toml": "^3.0.0",
"tree-kill": "^1.2.2",
@ -220,8 +219,6 @@
"@babel/plugin-transform-runtime": "^7.10.4",
"@babel/polyfill": "^7.4.4",
"@babel/preset-env": "^7.19.4",
"@babel/preset-es2015": "^7.0.0-beta.53",
"@babel/preset-es2017": "latest",
"@babel/preset-react": "^7.18.6",
"@babel/preset-stage-0": "^7.0.0",
"@babel/preset-typescript": "^7.18.6",
@ -249,7 +246,7 @@
"@types/isomorphic-git__lightning-fs": "^4.4.2",
"@types/lodash": "^4.14.172",
"@types/mocha": "^9.1.1",
"@types/node": "18.7.18",
"@types/node": "18.16.1",
"@types/react": "^17.0.24",
"@types/react-beautiful-dnd": "^13.1.2",
"@types/react-dom": "^17.0.9",
@ -312,7 +309,7 @@
"ganache-cli": "^6.8.1",
"gists": "^1.0.1",
"gulp": "^4.0.2",
"hardhat": "^2.12.7",
"hardhat": "^2.14.0",
"https-browserify": "^1.0.0",
"ipfs-http-client": "^47.0.1",
"ipfs-mini": "^1.1.5",
@ -343,7 +340,7 @@
"rimraf": "^2.6.1",
"selenium-standalone": "^8.2.3",
"semver": "^7.4.0",
"solc": "0.7.4",
"solc": "^0.7.4",
"stream-browserify": "^3.0.0",
"stream-http": "^3.2.0",
"style-loader": "^3.3.1",

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save