Merge branch 'master' into refactor_remix_debug1b

refactor_remix_debug1b
Iuri Matias 5 years ago committed by GitHub
commit 5b0fbae000
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 17
      .circleci/config.yml
  2. 2
      README.md
  3. 1
      apps/.gitkeep
  4. 231
      apps/remix-ide/.circleci/config.yml
  5. 2
      apps/remix-ide/ci/deploy_from_travis_remix-alpha.sh
  6. 7
      apps/remix-ide/ci/deploy_from_travis_remix-live.sh
  7. 19
      apps/remix-ide/ci/publishIpfs
  8. 4
      apps/remix-ide/src/app/editor/example-contracts.js
  9. 20
      apps/remix-ide/src/app/tabs/runTab/contractDropdown.js
  10. 3
      apps/remix-ide/src/app/tabs/styles/run-tab-styles.js
  11. 0
      apps/remix-ide/src/assets/img/favicon.ico
  12. BIN
      apps/remix-ide/src/favicon.ico
  13. 2
      apps/remix-ide/test-browser/commands/checkElementStyle.js
  14. 4
      apps/remix-ide/test-browser/tests/compiler_api.test.js
  15. 6
      apps/remix-ide/test-browser/tests/publishContract.test.js
  16. 23
      lerna.json
  17. 4109
      libs/remix-analyzer/package-lock.json
  18. 5
      libs/remix-analyzer/package.json
  19. 1749
      libs/remix-astwalker/package-lock.json
  20. 5
      libs/remix-astwalker/package.json
  21. 6978
      libs/remix-debug/package-lock.json
  22. 5
      libs/remix-debug/package.json
  23. 6671
      libs/remix-lib/package-lock.json
  24. 5
      libs/remix-lib/package.json
  25. 6316
      libs/remix-simulator/package-lock.json
  26. 5
      libs/remix-simulator/package.json
  27. 3206
      libs/remix-solidity/package-lock.json
  28. 5
      libs/remix-solidity/package.json
  29. 7324
      libs/remix-tests/package-lock.json
  30. 5
      libs/remix-tests/package.json
  31. 1896
      libs/remix-url-resolver/package-lock.json
  32. 5
      libs/remix-url-resolver/package.json
  33. 5554
      package-lock.json
  34. 19
      package.json
  35. 76
      release-process.md
  36. 3
      workspace.json

@ -39,7 +39,7 @@ jobs:
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js dist/apps/remix-ide/favicon.ico"
working_directory: ~/remix-project
parallelism: 20
@ -84,7 +84,7 @@ jobs:
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js dist/apps/remix-ide/favicon.ico"
working_directory: ~/remix-project
parallelism: 20
@ -127,7 +127,7 @@ jobs:
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js dist/apps/remix-ide/favicon.ico"
working_directory: ~/remix-project
steps:
@ -170,7 +170,7 @@ jobs:
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js dist/apps/remix-ide/favicon.ico"
working_directory: ~/remix-project
steps:
@ -189,7 +189,7 @@ jobs:
- store_artifacts:
path: ./apps/remix-ide/reports/screenshots
publish-docker:
publish:
docker:
# specify the version you desire here
- image: circleci/node:10.19.0-buster
@ -202,7 +202,7 @@ jobs:
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js dist/apps/remix-ide/favicon.ico"
working_directory: ~/remix-project
steps:
@ -213,6 +213,7 @@ jobs:
- run: npm run downloadsolc_root
- run: npm run build
- run: ./apps/remix-ide/ci/build_and_publish_docker_images.sh
- run: ./apps/remix-ide/ci/publishIpfs
deploy-remix-alpha:
docker:
@ -227,7 +228,7 @@ jobs:
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js"
- FILES_TO_PACKAGE: "dist/apps/remix-ide/assets dist/apps/remix-ide/index.html dist/apps/remix-ide/main.js dist/apps/remix-ide/polyfills.js dist/apps/remix-ide/runtime.js dist/apps/remix-ide/vendor.js dist/apps/remix-ide/favicon.ico"
working_directory: ~/remix-project
steps:
@ -260,7 +261,7 @@ workflows:
- remix-ide-run-deploy:
requires:
- remix-libs
- publish-docker:
- publish:
requires:
- remix-ide-chrome
- remix-ide-firefox

@ -1,4 +1,6 @@
[![Join the chat at https://gitter.im/ethereum/remix](https://badges.gitter.im/ethereum/remix.svg)](https://gitter.im/ethereum/remix?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![CircleCI](https://circleci.com/gh/ethereum/remix-project.svg?style=svg)](https://circleci.com/gh/ethereum/remix-project)
[![Documentation Status](https://readthedocs.org/projects/docs/badge/?version=latest)](https://remix-ide.readthedocs.io/en/latest/index.html)
# Remix

@ -1,231 +0,0 @@
# Javascript Node CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-javascript/ for more details
#
version: 2
jobs:
remix-ide-chrome:
docker:
# specify the version you desire here
- image: circleci/node:10.18.0-browsers
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
resource_class: xlarge
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json"
working_directory: ~/remix-project
parallelism: 20
steps:
- checkout
- run: npm install
- run: npm run lint
- run:
name: Download Compatible JAVA Version for Selenium
command: |
java -version
sudo apt-get purge --auto-remove java-common
sudo apt-get update
sudo apt-get install openjdk-8-jdk
java -version
- run:
name: Download Selenium
command: ./node_modules/.bin/selenium-standalone install --config=../remix-project/apps/remix-ide/seleniumConfig.js
- run:
name: Start Selenium
command: ./node_modules/.bin/selenium-standalone start --config=../remix-project/apps/remix-ide/seleniumConfig.js
background: true
- run: ./apps/remix-ide/ci/browser_tests_chrome.sh
- store_test_results:
path: ./apps/remix-ide/reports/tests
- store_artifacts:
path: ./apps/remix-ide/reports/screenshots
remix-ide-firefox:
docker:
# specify the version you desire here
- image: circleci/node:10.18.0-browsers
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
resource_class: xlarge
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json"
working_directory: ~/remix-project
parallelism: 20
steps:
- checkout
- run: npm install
- run: npm run lint
- run:
name: Download Selenium
command: ./node_modules/.bin/selenium-standalone install --config=../remix-project/apps/remix-ide/seleniumConfig.js
- run:
name: Start Selenium
command: ./node_modules/.bin/selenium-standalone start --config=../remix-project/apps/remix-ide/seleniumConfig.js
background: true
- run:
name: Download Latest Firefox
command: sudo apt-get purge -y firefox && wget https://sourceforge.net/projects/ubuntuzilla/files/mozilla/apt/pool/main/f/firefox-mozilla-build/firefox-mozilla-build_73.0.1-0ubuntu1_amd64.deb
- run:
name: Install Firefox
command: sudo dpkg -i firefox-mozilla-build_73.0.1-0ubuntu1_amd64.deb
- run: ./apps/remix-ide/ci/browser_tests_firefox.sh
- store_test_results:
path: ./apps/remix-ide/reports/tests
- store_artifacts:
path: ./apps/remix-ide/reports/screenshots
remix-ide-run-deploy:
docker:
# specify the version you desire here
- image: circleci/node:10.18.0-browsers
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
resource_class: xlarge
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json"
working_directory: ~/remix-project
steps:
- checkout
- run: npm install
- run: npm run lint
- run:
name: Download Selenium
command: ./node_modules/.bin/selenium-standalone install --config=../remix-project/apps/remix-ide/seleniumConfig.js
- run:
name: Start Selenium
command: ./node_modules/.bin/selenium-standalone start --config=../remix-project/apps/remix-ide/seleniumConfig.js
background: true
- run: ./apps/remix-ide/ci/browser_tests_run_deploy.sh
- store_artifacts:
path: ./apps/remix-ide/reports/screenshots
deploy-remix-live:
docker:
# specify the version you desire here
- image: circleci/node:10.18.0-browsers
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
resource_class: xlarge
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json"
working_directory: ~/remix-project
steps:
- checkout
- run: npm install
- run: npm run lint
- run:
name: Deploy
command: |
if [ "${CIRCLE_BRANCH}" == "remix_live" ]; then
./apps/remix-ide/ci/deploy_from_travis_remix-live.sh;
fi
- store_artifacts:
path: ./apps/remix-ide/reports/screenshots
publish-docker:
docker:
# specify the version you desire here
- image: circleci/node:10.19.0-buster
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
resource_class: xlarge
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "assets background.js build icon.png index.html manifest.json README.md soljson.js package.json"
working_directory: ~/remix-ide
steps:
- checkout
- setup_remote_docker
- run: npm install
- run: npm run build
- run: ./ci/build_and_publish_docker_images.sh
deploy-remix-alpha:
docker:
# specify the version you desire here
- image: circleci/node:10.18.0-browsers
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
resource_class: xlarge
# documented at https://circleci.com/docs/2.0/circleci-images/
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json"
working_directory: ~/remix-project
steps:
- checkout
- run: npm install
- run: npm run lint
- run:
name: Deploy
command: |
if [ "${CIRCLE_BRANCH}" == "master" ]; then
./apps/remix-ide/ci/deploy_from_travis_remix-alpha.sh;
fi
- store_artifacts:
path: ./apps/remix-ide/reports/screenshots
workflows:
version: 2
build_all:
jobs:
- remix-ide-chrome
- remix-ide-firefox
- remix-ide-run-deploy
- publish-docker:
requires:
- remix-ide-chrome
- remix-ide-firefox
- remix-ide-run-deploy
- deploy-remix-live:
requires:
- remix-ide-chrome
- remix-ide-firefox
- remix-ide-run-deploy
- publish-docker
filters:
branches:
only: remix_live
- deploy-remix-alpha:
requires:
- remix-ide-chrome
- remix-ide-firefox
- remix-ide-run-deploy
- publish-docker
filters:
branches:
only: master

@ -14,7 +14,7 @@ echo "To use an offline copy, download \`remix-$SHA.zip\`." >> README.md
cp -r $FILES_TO_PACKAGE "./"
rm -rf dist
ls
FILES_TO_DEPLOY="assets index.html main.js polyfills.js runtime.js vendor.js"
FILES_TO_DEPLOY="assets index.html main.js polyfills.js runtime.js vendor.js favicon.ico"
# ZIP the whole directory
zip -r remix-$SHA.zip $FILES_TO_DEPLOY
# -f is needed because "build" is part of .gitignore

@ -11,10 +11,13 @@ git rm --cached -r -f .
echo "# Automatic build" > README.md
echo "Built website from \`$SHA\`. See https://github.com/ethereum/remix-ide/ for details." >> README.md
echo "To use an offline copy, download \`remix-$SHA.zip\`." >> README.md
cp -r $FILES_TO_PACKAGE "./"
rm -rf dist
FILES_TO_DEPLOY="assets index.html main.js polyfills.js runtime.js vendor.js"
# ZIP the whole directory
zip -r remix-$SHA.zip $FILES_TO_PACKAGE
zip -r remix-$SHA.zip $FILES_TO_DEPLOY
# -f is needed because "build" is part of .gitignore
git add -f $FILES_TO_PACKAGE remix-$SHA.zip
git add -f $FILES_TO_DEPLOY remix-$SHA.zip
git commit -m "Built website from {$SHA}."
git push -f git@github.com:ethereum/remix-live.git gh-pages

@ -0,0 +1,19 @@
#!/usr/bin/env node
const ipfsClient = require('ipfs-http-client')
console.log('current folder', process.cwd())
const folder = process.cwd() + '/temp_publish_docker';
(async () => {
const host = 'ipfs.komputing.org' // ethdev berlin ipfs node
const ipfs = ipfsClient({ host, port: 443, protocol: 'https' })
try {
let result = await ipfs.addFromFs(folder, { recursive: true, pin: false })
const remoteFolder = result[result.length - 1]
console.log('ipfs://' + remoteFolder.hash)
console.log('https://ipfsgw.komputing.org/ipfs/' + remoteFolder.hash)
console.log('https://gateway.ipfs.io/ipfs/' + remoteFolder.hash)
} catch (e) {
console.log(e)
}
})()

@ -4,7 +4,7 @@ const storage = `pragma solidity >=0.4.22 <0.7.0;
/**
* @title Storage
* @dev Store & retreive value in a variable
* @dev Store & retrieve value in a variable
*/
contract Storage {
@ -22,7 +22,7 @@ contract Storage {
* @dev Return value
* @return value of 'number'
*/
function retreive() public view returns (uint256){
function retrieve() public view returns (uint256){
return number;
}
}`

@ -92,19 +92,27 @@ class ContractDropdownUI {
const savedConfig = window.localStorage.getItem(`ipfs/${this.exEnvironment}/${this.networkName}`)
this.ipfsCheckedState = savedConfig === 'true' ? true : false // eslint-disable-line
this.ipfsCheckbox = this.ipfsCheckedState === true
? yo`<input id="deployAndRunPublishToIPFS" data-id="contractDropdownIpfsCheckbox" class="mr-2" checked type="checkbox" onchange=${this.toggleCheckedState.bind(this)} >`
: yo`<input id="deployAndRunPublishToIPFS" data-id="contractDropdownIpfsCheckbox" class="mr-2" type="checkbox" onchange=${this.toggleCheckedState.bind(this)} >`
this.ipfsCheckbox = yo`
<input
id="deployAndRunPublishToIPFS"
data-id="contractDropdownIpfsCheckbox"
class="form-check-input custom-control-input"
type="checkbox"
onchange=${() => this.toggleCheckedState()}
>
`
if (this.ipfsCheckedState) this.ipfsCheckbox.checked = true
this.deployCheckBox = yo`
<div class="mt-2 d-flex align-items-start">
<div class="d-flex py-1 align-items-center custom-control custom-checkbox">
${this.ipfsCheckbox}
<label
for="deployAndRunPublishToIPFS"
class="p-0 m-0"
data-id="contractDropdownIpfsCheckboxLabel"
class="m-0 form-check-label custom-control-label ${css.checkboxAlign}"
title="Publishing the source code and ABI to IPFS facilitates source code verification and will greatly foster contract adoption (auditing, debugging, calling it, etc...)"
>
PUBLISH TO IPFS
Publish to IPFS
</label>
</div>
`

@ -216,6 +216,9 @@ var css = csjs`
text-align: center;
text-transform: uppercase;
}
.checkboxAlign {
padding-top: 2px;
}
`
module.exports = css

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

@ -18,7 +18,7 @@ function checkStyle (browser, cssSelector, styleProperty, expectedResult, callba
}, [cssSelector, styleProperty], function (result) {
const value = result.value
browser.assert.equal(value.trim(), expectedResult)
browser.assert.equal(value.trim().toLowerCase(), expectedResult.toLowerCase())
callback()
})
}

@ -40,7 +40,7 @@ const simpleContract = `pragma solidity >=0.4.22 <0.7.0;
/**
* @title Storage
* @dev Store & retreive value in a variable
* @dev Store & retrieve value in a variable
*/
contract StorageTestUpdateConfiguration {
@ -58,7 +58,7 @@ contract StorageTestUpdateConfiguration {
* @dev Return value
* @return value of 'number'
*/
function retreive() public view returns (uint256){
function retrieve() public view returns (uint256){
return number;
}
}

@ -39,8 +39,8 @@ module.exports = {
.clickLaunchIcon('fileExplorers')
.openFile('browser/1_Storage.sol')
.clickLaunchIcon('udapp')
.waitForElementVisible('*[data-id="contractDropdownIpfsCheckbox"]')
.click('*[data-id="contractDropdownIpfsCheckbox"]')
.waitForElementVisible('*[data-id="contractDropdownIpfsCheckboxLabel"]')
.click('*[data-id="contractDropdownIpfsCheckboxLabel"]')
.click('*[data-id="Deploy - transact (not payable)"]')
.pause(5000)
.assert.containsText('*[data-id="modalDialogModalBody"]', 'Metadata of "storage" was published successfully.')
@ -51,7 +51,7 @@ module.exports = {
.refresh()
.openFile('browser/1_Storage.sol')
.clickLaunchIcon('udapp')
.waitForElementVisible('*[data-id="contractDropdownIpfsCheckbox"]')
.waitForElementVisible('*[data-id="contractDropdownIpfsCheckboxLabel"]')
.verify.elementPresent('*[data-id="contractDropdownIpfsCheckbox"]:checked')
.end()
},

@ -1,23 +1,10 @@
{
"lerna": "2.10.2",
"packages": [
"remix-debug",
"remix-lib",
"remix-solidity",
"remix-analyzer",
"remix-tests",
"remix-simulator",
"remix-url-resolver",
"remix-astwalker"
],
"packages": ["dist/libs/**/*"],
"version": "independent",
"command": {
"init": {
"exact": true
},
"publish": {
"exact": true,
"skipGit": true
"ignoreChanges": ["ignored-file", "*.md"],
"message": "remix-libs(release): publish version"
}
}
},
"version": "independent"
}

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
{
"name": "@remix-project/remix-analyzer",
"version": "0.5.3",
"version": "0.5.4",
"description": "Tool to perform static analysis on Solidity smart contracts",
"main": "./index.js",
"types": ".index.d.ts",
@ -22,6 +22,9 @@
"@remix-project/remix-astwalker": "0.0.24",
"@remix-project/remix-lib": "0.4.29"
},
"publishConfig": {
"access": "public"
},
"scripts": {
"build": "tsc",
"test": "./../../node_modules/.bin/ts-node --require tsconfig-paths/register ./../../node_modules/.bin/tape ./test/tests.ts"

File diff suppressed because it is too large Load Diff

@ -1,12 +1,15 @@
{
"name": "@remix-project/remix-astwalker",
"version": "0.0.24",
"version": "0.0.25",
"description": "Tool to walk through Solidity AST",
"main": "./index.js",
"scripts": {
"build": "tsc",
"test": "./../../node_modules/.bin/nyc --reporter=lcov --require ts-node/register --require tsconfig-paths/register ./../../node_modules/.bin/tape ./tests/*.ts | ./../../node_modules/.bin/tap-spec; ./../../node_modules/.bin/nyc report ---reporter=text"
},
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "git+https://github.com/ethereum/remix-project.git"

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
{
"name": "@remix-project/remix-debug",
"version": "0.4.5",
"version": "0.4.6",
"description": "Tool to debug Ethereum transactions",
"contributors": [
{
@ -39,6 +39,9 @@
"scripts": {
"test": "./../../node_modules/.bin/tape --require tsconfig-paths/register ./test/tests.js"
},
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "git+https://github.com/ethereum/remix-project.git"

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
{
"name": "@remix-project/remix-lib",
"version": "0.4.29",
"version": "0.4.30",
"description": "Library to various Remix tools",
"contributors": [
{
@ -38,6 +38,9 @@
"scripts": {
"test": "./../../node_modules/.bin/tape ./test/tests.js"
},
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "git+https://github.com/ethereum/remix-project.git"

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
{
"name": "@remix-project/remix-simulator",
"version": "0.1.9-beta.6",
"version": "0.1.9-beta.7",
"description": "Ethereum IDE and tools for the web",
"contributors": [
{
@ -43,6 +43,9 @@
"scripts": {
"test": "./../../node_modules/.bin/mocha --require tsconfig-paths/register test/"
},
"publishConfig": {
"access": "public"
},
"bin": {
"ethsim": "./bin/ethsim",
"remix-simulator": "./bin/ethsim"

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
{
"name": "@remix-project/remix-solidity",
"version": "0.3.30",
"version": "0.3.31",
"description": "Tool to load and run Solidity compiler",
"main": "./index.js",
"types": "./index.d.ts",
@ -37,6 +37,9 @@
"build": "tsc",
"test": "./../../node_modules/.bin/tape ./test/tests.js"
},
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "git+https://github.com/ethereum/remix-project.git"

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
{
"name": "@remix-project/remix-tests",
"version": "0.1.33",
"version": "0.1.34",
"description": "Tool to test Solidity smart contracts",
"main": "./src/index.js",
"types": "./src/index.d.ts",
@ -21,6 +21,9 @@
"build": "tsc",
"test": "./../../node_modules/.bin/jest"
},
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "git+https://github.com/ethereum/remix-project.git"

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
{
"name": "@remix-project/remix-url-resolver",
"version": "0.0.15",
"version": "0.0.16",
"description": "Solidity import url resolver engine",
"main": "./index.js",
"types": "./index.d.ts",
@ -8,6 +8,9 @@
"build": "tsc",
"test": "./../../node_modules/.bin/mocha --require ts-node/register --require tsconfig-paths/register tests/*.ts -t 300000"
},
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "git+https://github.com/ethereum/remix-project.git"

5554
package-lock.json generated

File diff suppressed because it is too large Load Diff

@ -25,11 +25,8 @@
"start": "nx start",
"serve": "nx serve",
"build": "nx build",
"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",
"test": "nx test",
"test:libs": "nx run-many --target=test --projects=remix-analyzer,remix-astwalker,remix-debug,remix-lib,remix-simulator,remix-solidity,remix-tests,remix-url-resolver",
"lint": "nx lint",
"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",
"e2e": "nx e2e",
"affected:apps": "nx affected:apps",
"affected:libs": "nx affected:libs",
@ -46,15 +43,10 @@
"workspace-schematic": "nx workspace-schematic",
"dep-graph": "nx dep-graph",
"help": "nx help",
"setupremix": "npm run linkremixdebug && npm run linkremixlib && npm run linkremixsolidity && npm run linkremixanalyzer && npm run linkremixtests && npm run linkremixsimulator",
"pullremix": "git clone https://github.com/ethereum/remix",
"linkremixlib": "cd node_modules && rm -rf remix-lib && ln -s ../../remix/remix-lib remix-lib && cd ..",
"linkremixsolidity": "cd node_modules && rm -rf remix-solidity && ln -s ../../remix/remix-solidity remix-solidity && cd ..",
"linkremixtests": "cd node_modules && rm -rf remix-tests && ln -s ../../remix/remix-tests remix-tests && cd ..",
"linkremixdebug": "cd node_modules && rm -rf remix-debug && ln -s ../../remix/remix-debug remix-debug && cd ..",
"linkremixanalyzer": "cd node_modules && rm -rf remix-analyzer && ln -s ../../remix/remix-analyzer remix-analyzer && cd ..",
"linkremixsimulator": "cd node_modules && rm -rf remix-simulator && ln -s ../../remix/remix-simulator remix-simulator && cd ..",
"build_debugger": "browserify apps/remix-ide/src/app/debugger/remix-debugger/index.js -o apps/remix-ide/src/app/debugger/remix-debugger/build/app.js",
"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",
"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",
"test:libs": "nx run-many --target=test --projects=remix-analyzer,remix-astwalker,remix-debug,remix-lib,remix-simulator,remix-solidity,remix-tests,remix-url-resolver",
"publish:libs": "npm run build:libs; lerna publish --skip-git",
"browsertest": "sleep 5 && npm run nightwatch_local",
"csslint": "csslint --ignore=order-alphabetical --errors='errors,duplicate-properties,empty-rules' --exclude-list='apps/remix-ide/assets/css/font-awesome.min.css' apps/remix-ide/assets/css/",
"downloadsolc_root": "wget --no-check-certificate https://solc-bin.ethereum.org/bin/soljson-v0.6.6+commit.6c089d02.js -O ./apps/remix-ide/soljson.js",
@ -213,6 +205,7 @@
"fast-levenshtein": "^2.0.6",
"ganache-cli": "^6.8.1",
"gists": "^1.0.1",
"ipfs-http-client": "35.1.1",
"ipfs-mini": "^1.1.5",
"is-electron": "^2.2.0",
"javascript-serialize": "^1.6.1",
@ -220,6 +213,7 @@
"jquery": "^3.3.1",
"js-base64": "^2.1.9",
"js-beautify": "1.6.14",
"lerna": "^3.22.1",
"minixhr": "^3.2.2",
"mkdirp": "^0.5.1",
"mocha": "^8.0.1",
@ -250,7 +244,6 @@
"vm-browserify": "0.0.4",
"watchify": "^3.9.0",
"web3": "1.2.4",
"webworkify": "^1.2.1",
"webworkify-webpack": "^2.1.5",
"worker-loader": "^2.0.0",
"yo-yo": "github:ioedeveloper/yo-yo",

@ -1,26 +1,60 @@
# Release process
This document details steps for publishing packages and tag the code base accordingly:
1) Publish (using lerna) all the modules that depends on one of the newly published module
- checkout a new branch from master
- npm run publish (that command use lerna)
- commit
2) Increment the root (repository scoped) package.json
- increment root package.json version
This document includes:
- how to publish remix libs to NPM
- how to update remix.ethereum.org
- how to update remix-alpha.ethereum.org
- how to release remix IDE
## Remix libs release
- git fetch origin master
- git checkout origin/master
- git checkout -b bumpLibsVersion
- npm run publish:libs (this command uses lerna)
- commit
- merge the branch
3) Create a tag (using the package.json version)
- checkout latest origin/master
- npm run tag
- previousVersion=[previous_version] npm run updateChangelog
- create a new release out of the changes of CHANGELOG.md
4) Commit new updated CHANGELOG.md
## Remix IDE release
- git fetch origin master
- git checkout origin/master
- git checkout -b bumpVersion
- update package.json version
- remove package-lock.json version and generate a new one with `npm install`
- merge PR
- git fetch origin master
- git checkout origin/master
- git tag v(version-number)
- git push --tags
- github-changes -o ethereum -r remix-ide -a --only-pulls --use-commit-body --only-merges --between-tags previous_version...next_version
- publish a release in github using the changelog
- after remix_live is updated, drop the zip (from https://github.com/ethereum/remix-live/) to the release.
## Remix-ide beta release
- git fetch origin master
- git checkout origin/master
- git checkout -b bumpVersion
- update package.json version to the new version "vx.x.x-beta.1"
- remove package-lock/json version and generate a new one with `npm install`
- merge PR
- git fetch origin master
- git checkout origin/master
- git tag v(version-number) (with "vx.x.x-beta.1")
- git push --tags
- github-changes -o ethereum -r remix-ide -a --only-pulls --use-commit-body --only-merges --between-tags previous_version...next_version
- publish a beta release in github using the changelog
- drop zip file to the beta release (from https://github.com/ethereum/remix-live-alpha)
## remix.ethereum.org update
This is not strictly speaking a release. Updating the remix site is done through the Travis build:
- git co -b remix_live origin/remix_live
- git reset --hard -master-commit-hash-
- git push -f origin remix_live
CircleCI will build automaticaly and remix.ethereum.org will be updated
## remix-alpha.ethereum.org update
remix-alpha.ethereum.org is automaticaly updated every time commits are pushed to master

@ -17,7 +17,8 @@
"tsConfig": "apps/remix-ide/tsconfig.app.json",
"assets": [
"apps/remix-ide/src/assets",
"apps/remix-ide/src/index.html"
"apps/remix-ide/src/index.html",
"apps/remix-ide/src/favicon.ico"
],
"styles": [],
"scripts": [],

Loading…
Cancel
Save