Merge branch 'master' of https://github.com/ethereum/remix-project into editorcontext

editorcontextDummy
filip mertens 3 years ago
commit 0d4c4bfb2d
  1. 18
      .circleci/config.yml
  2. 2
      CONTRIBUTING.md
  3. 6
      apps/remix-ide-e2e/src/tests/importFromGithub.test.ts
  4. 10
      apps/remix-ide-e2e/src/tests/solidityImport.test.ts
  5. 1
      apps/remix-ide/.npmignore
  6. 4
      apps/remix-ide/docs/file_explorer.md
  7. 6
      apps/remix-ide/docs/locations.md
  8. 2
      apps/remix-ide/docs/remix_tutorials_github.md
  9. 4
      apps/remix-ide/team-best-practices.md
  10. 12
      libs/remix-ui/helper/src/lib/remix-ui-helper.ts
  11. 2
      libs/remix-ui/home-tab/src/lib/remix-ui-home-tab.tsx
  12. 4
      libs/remix-ui/settings/src/lib/constants.ts
  13. 2
      libs/remix-ui/settings/src/lib/remix-ui-settings.tsx
  14. 2
      libs/remix-url-resolver/README.md
  15. 2
      package.json
  16. 6
      release-process.md
  17. 4
      team-best-practices.md

@ -29,10 +29,10 @@ jobs:
- restore_cache: - restore_cache:
keys: keys:
- v1-deps-{{ checksum "package-lock.json" }} - v1-deps-{{ checksum "yarn.lock" }}
- run: yarn install - run: yarn install
- save_cache: - save_cache:
key: v1-deps-{{ checksum "package-lock.json" }} key: v1-deps-{{ checksum "yarn.lock" }}
paths: paths:
- node_modules - node_modules
- run: yarn run downloadsolc_assets - run: yarn run downloadsolc_assets
@ -64,7 +64,7 @@ jobs:
- checkout - checkout
- restore_cache: - restore_cache:
keys: keys:
- v1-deps-{{ checksum "package-lock.json" }} - v1-deps-{{ checksum "yarn.lock" }}
- run: yarn install - run: yarn install
- run: - run:
name: Remix Libs Linting name: Remix Libs Linting
@ -91,7 +91,7 @@ jobs:
- run: unzip ./persist/dist.zip - run: unzip ./persist/dist.zip
- restore_cache: - restore_cache:
keys: keys:
- v1-deps-{{ checksum "package-lock.json" }} - v1-deps-{{ checksum "yarn.lock" }}
- run: yarn install - run: yarn install
- run: cd dist/libs/remix-tests && yarn install - run: cd dist/libs/remix-tests && yarn install
- run: yarn run test:libs - run: yarn run test:libs
@ -127,7 +127,7 @@ jobs:
- run: unzip ./persist/dist.zip - run: unzip ./persist/dist.zip
- restore_cache: - restore_cache:
keys: keys:
- v1-deps-{{ checksum "package-lock.json" }} - v1-deps-{{ checksum "yarn.lock" }}
- run: yarn install - run: yarn install
- run: - run:
name: Start Selenium name: Start Selenium
@ -170,7 +170,7 @@ jobs:
- run: unzip ./persist/dist.zip - run: unzip ./persist/dist.zip
- restore_cache: - restore_cache:
keys: keys:
- v1-deps-{{ checksum "package-lock.json" }} - v1-deps-{{ checksum "yarn.lock" }}
- run: yarn install - run: yarn install
- run: - run:
name: Start Selenium name: Start Selenium
@ -213,7 +213,7 @@ jobs:
- run: unzip ./persist/dist.zip - run: unzip ./persist/dist.zip
- restore_cache: - restore_cache:
keys: keys:
- v1-deps-{{ checksum "package-lock.json" }} - v1-deps-{{ checksum "yarn.lock" }}
- run: yarn install - run: yarn install
- run: - run:
name: Start Selenium name: Start Selenium
@ -255,7 +255,7 @@ jobs:
- run: unzip ./persist/dist.zip - run: unzip ./persist/dist.zip
- restore_cache: - restore_cache:
keys: keys:
- v1-deps-{{ checksum "package-lock.json" }} - v1-deps-{{ checksum "yarn.lock" }}
- run: yarn install - run: yarn install
- run: - run:
name: Start Selenium name: Start Selenium
@ -298,7 +298,7 @@ jobs:
- run: unzip ./persist/dist.zip - run: unzip ./persist/dist.zip
- restore_cache: - restore_cache:
keys: keys:
- v1-deps-{{ checksum "package-lock.json" }} - v1-deps-{{ checksum "yarn.lock" }}
- run: yarn install - run: yarn install
- run: - run:
name: Start Selenium name: Start Selenium

@ -12,6 +12,6 @@ When you add a code in any library, please ensure you add related tests. You can
Please conform to [standard](https://standardjs.com/) for code styles. Please conform to [standard](https://standardjs.com/) for code styles.
## Submitting Pull Request ## Submitting Pull Request
Please follow Github's standard model of making changes & submitting pull request which is very well explained [here](https://guides.github.com/activities/forking/). Make sure your code works fine locally before submitting a pull request. Please follow GitHub's standard model of making changes & submitting pull request which is very well explained [here](https://guides.github.com/activities/forking/). Make sure your code works fine locally before submitting a pull request.

@ -23,7 +23,7 @@ module.exports = {
.pause(1000) .pause(1000)
.click('button[data-id="landingPageImportFromGitHubButton"]') .click('button[data-id="landingPageImportFromGitHubButton"]')
.waitForElementVisible('*[data-id="homeTabModalDialogModalTitle-react"]') .waitForElementVisible('*[data-id="homeTabModalDialogModalTitle-react"]')
.assert.containsText('*[data-id="homeTabModalDialogModalTitle-react"]', 'Import from Github') .assert.containsText('*[data-id="homeTabModalDialogModalTitle-react"]', 'Import from GitHub')
.waitForElementVisible('*[data-id="homeTabModalDialogModalBody-react"]') .waitForElementVisible('*[data-id="homeTabModalDialogModalBody-react"]')
.assert.containsText('*[data-id="homeTabModalDialogModalBody-react"]', 'Enter the github URL you would like to load.') .assert.containsText('*[data-id="homeTabModalDialogModalBody-react"]', 'Enter the github URL you would like to load.')
.waitForElementVisible('input[data-id="homeTabModalDialogCustomPromptText"]') .waitForElementVisible('input[data-id="homeTabModalDialogCustomPromptText"]')
@ -41,7 +41,7 @@ module.exports = {
.assert.containsText('*[data-shared="tooltipPopup"] span', 'not found ' + testData.invalidURL) .assert.containsText('*[data-shared="tooltipPopup"] span', 'not found ' + testData.invalidURL)
}, },
'Import From Github For Valid URL #group2': function (browser: NightwatchBrowser) { 'Import From GitHub For Valid URL #group2': function (browser: NightwatchBrowser) {
browser browser
.waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000)
.clickLaunchIcon('filePanel') .clickLaunchIcon('filePanel')
@ -62,7 +62,7 @@ module.exports = {
browser.assert.ok(content.indexOf('library Roles {') !== -1, 'content does contain "library Roles {"') browser.assert.ok(content.indexOf('library Roles {') !== -1, 'content does contain "library Roles {"')
}) })
}, },
'Import JSON From Github For Valid URL #group2': function (browser: NightwatchBrowser) { 'Import JSON From GitHub For Valid URL #group2': function (browser: NightwatchBrowser) {
browser browser
.click('div[title="home"]') .click('div[title="home"]')
.click('button[data-id="landingPageImportFromGitHubButton"]') .click('button[data-id="landingPageImportFromGitHubButton"]')

@ -30,7 +30,7 @@ module.exports = {
.assert.containsText('#compileTabView .error pre', 'not found Untitled11.sol') .assert.containsText('#compileTabView .error pre', 'not found Untitled11.sol')
}, },
'Test Github Import - from master branch #group1': function (browser: NightwatchBrowser) { 'Test GitHub Import - from master branch #group1': function (browser: NightwatchBrowser) {
browser browser
.setSolidityCompilerVersion('soljson-v0.8.0+commit.c7dfd78e.js') // open-zeppelin moved to pragma ^0.8.0 (master branch) .setSolidityCompilerVersion('soljson-v0.8.0+commit.c7dfd78e.js') // open-zeppelin moved to pragma ^0.8.0 (master branch)
.addFile('Untitled4.sol', sources[3]['Untitled4.sol']) .addFile('Untitled4.sol', sources[3]['Untitled4.sol'])
@ -38,7 +38,7 @@ module.exports = {
.verifyContracts(['test7', 'ERC20'], { wait: 10000 }) .verifyContracts(['test7', 'ERC20'], { wait: 10000 })
}, },
'Test Github Import - from other branch #group2': function (browser: NightwatchBrowser) { 'Test GitHub Import - from other branch #group2': function (browser: NightwatchBrowser) {
browser browser
.setSolidityCompilerVersion('soljson-v0.5.0+commit.1d4f565a.js') // switch back to 0.5.0 : release-v2.3.0 branch is not solidity 0.6 compliant .setSolidityCompilerVersion('soljson-v0.5.0+commit.1d4f565a.js') // switch back to 0.5.0 : release-v2.3.0 branch is not solidity 0.6 compliant
.addFile('Untitled5.sol', sources[4]['Untitled5.sol']) .addFile('Untitled5.sol', sources[4]['Untitled5.sol'])
@ -46,7 +46,7 @@ module.exports = {
.verifyContracts(['test8', 'ERC20', 'SafeMath'], { wait: 10000 }) .verifyContracts(['test8', 'ERC20', 'SafeMath'], { wait: 10000 })
}, },
'Test Github Import - no branch specified #group2': function (browser: NightwatchBrowser) { 'Test GitHub Import - no branch specified #group2': function (browser: NightwatchBrowser) {
browser browser
.setSolidityCompilerVersion('soljson-v0.8.0+commit.c7dfd78e.js') // open-zeppelin moved to pragma ^0.8.0 (master branch) .setSolidityCompilerVersion('soljson-v0.8.0+commit.c7dfd78e.js') // open-zeppelin moved to pragma ^0.8.0 (master branch)
.clickLaunchIcon('filePanel') .clickLaunchIcon('filePanel')
@ -56,7 +56,7 @@ module.exports = {
.verifyContracts(['test10', 'ERC20'], { wait: 10000 }) .verifyContracts(['test10', 'ERC20'], { wait: 10000 })
}, },
'Test Github Import - raw URL #group4': function (browser: NightwatchBrowser) { 'Test GitHub Import - raw URL #group4': function (browser: NightwatchBrowser) {
browser browser
.clickLaunchIcon('filePanel') .clickLaunchIcon('filePanel')
.click('li[data-id="treeViewLitreeViewItemREADME.txt"') .click('li[data-id="treeViewLitreeViewItemREADME.txt"')
@ -65,7 +65,7 @@ module.exports = {
.verifyContracts(['test11', 'ERC20'], { wait: 10000 }) .verifyContracts(['test11', 'ERC20'], { wait: 10000 })
}, },
'Test switch to a github import from a solidity warning #group3': function (browser: NightwatchBrowser) { 'Test switch to a GitHub import from a solidity warning #group3': function (browser: NightwatchBrowser) {
browser browser
.setSolidityCompilerVersion('soljson-v0.7.4+commit.3f05b770.js') .setSolidityCompilerVersion('soljson-v0.7.4+commit.3f05b770.js')
.clickLaunchIcon('filePanel') .clickLaunchIcon('filePanel')

@ -3,5 +3,6 @@ node_modules
reports reports
npm-debug.log* npm-debug.log*
package-lock.json package-lock.json
yarn.lock
remix remix
.DS_Store .DS_Store

@ -33,9 +33,9 @@ Publish to Gist
The icon marked **C.** above. Publishes all files from the browser folder to a gist. Only file in the root of **browser** will be published. Files in subfolders will not be publish to the Gist. The icon marked **C.** above. Publishes all files from the browser folder to a gist. Only file in the root of **browser** will be published. Files in subfolders will not be publish to the Gist.
Gist API has changed in 2018 and **requires** users to be authenticated to be able to publish a gist. Gist API has changed in 2018 and **requires** users to be authenticated to be able to publish a gist.
Click [this link](https://github.com/settings/tokens) to Github tokens setup and select Generate new token. Then check the **Create gists** checkbox and generate a new token. Click [this link](https://github.com/settings/tokens) to GitHub tokens setup and select Generate new token. Then check the **Create gists** checkbox and generate a new token.
Take the token and paste it in Remix's **Settings** module in the **Github Access Token** section. And then click Save. Now you should be able to use the feature. Take the token and paste it in Remix's **Settings** module in the **GitHub Access Token** section. And then click Save. Now you should be able to use the feature.
Create a folder Create a folder
--------------- ---------------

@ -7,4 +7,8 @@ So if you've found the documentation to Remix but don't know where to find Remix
- An alpha online version is available at [https://remix-alpha.ethereum.org](https://remix-alpha.ethereum.org). This is not a stable version. - An alpha online version is available at [https://remix-alpha.ethereum.org](https://remix-alpha.ethereum.org). This is not a stable version.
- npm `remix-ide` package `yarn global add remix-ide`. `remix-ide` create a new instance of `Remix IDE` available at [http://127.0.0.1:8080](http://127.0.0.1:8080) and make the current folder available to Remix IDE by automatically starting `remixd`. - npm `remix-ide` package `yarn global add remix-ide`. `remix-ide` create a new instance of `Remix IDE` available at [http://127.0.0.1:8080](http://127.0.0.1:8080) and make the current folder available to Remix IDE by automatically starting `remixd`.
see [Connection to `remixd`](https://remix-ide.readthedocs.io/en/latest/remixd.html) for more information about sharing local file with `Remix IDE`. see [Connection to `remixd`](https://remix-ide.readthedocs.io/en/latest/remixd.html) for more information about sharing local file with `Remix IDE`.
- Github release: [https://github.com/ethereum/remix-ide/releases](https://github.com/ethereum/remix-ide/releases) . The source code is packaged at every release but still need to be built using `yarn run build`.
- GitHub release: [https://github.com/ethereum/remix-ide/releases](https://github.com/ethereum/remix-ide/releases) . The source code is packaged at every release but still need to be built using `npm run build`.
- GitHub release: [https://github.com/ethereum/remix-ide/releases](https://github.com/ethereum/remix-ide/releases) . The source code is packaged at every release but still need to be built using `yarn run build`.

@ -1,4 +1,4 @@
Remix Github Tutorials Remix GitHub Tutorials
======================= =======================
There are a series of tutorials in our github repo [remix-workshops](https://github.com/ethereum/remix-workshops). There are a series of tutorials in our github repo [remix-workshops](https://github.com/ethereum/remix-workshops).

@ -54,7 +54,7 @@ Related links:
- How the backend (if any) works / will work (could be a smart contract). - How the backend (if any) works / will work (could be a smart contract).
- How the frontend works / will work. - How the frontend works / will work.
- What is the general vision of the UX design for this particular story. - What is the general vision of the UX design for this particular story.
Later progress and discussion is updated directly on the issue or pull request (Github). Later progress and discussion is updated directly on the issue or pull request (GitHub).
--- ---
@ -72,7 +72,7 @@ Before starting coding, we should ensure all devs / contributors are aware of:
# Story / Bug fix # Story / Bug fix
- Prioritised list of PRs / issues are tracked in a Github Project, Remix IDE issues are managed by a prioritized backlog. - Prioritised list of PRs / issues are tracked in a GitHub Project, Remix IDE issues are managed by a prioritized backlog.
- Every story can be executed by a single developer or a group of 2 or more developers (depending on the size and complexity) - Every story can be executed by a single developer or a group of 2 or more developers (depending on the size and complexity)
- Each dev should take the part he/she feels the most confortable with. - Each dev should take the part he/she feels the most confortable with.
- Later progress and discussion is updated directly on the issue or pull request (github). - Later progress and discussion is updated directly on the issue or pull request (github).

@ -56,15 +56,15 @@ export const joinPath = (...paths) => {
export const getPathIcon = (path: string) => { export const getPathIcon = (path: string) => {
return path.endsWith('.txt') return path.endsWith('.txt')
? 'far fa-file-alt' : path.endsWith('.md') ? 'far fa-file-alt' : path.endsWith('.md')
? 'far fa-file-alt' : path.endsWith('.sol') ? 'fab fa-markdown' : path.endsWith('.sol')
? 'fak fa-solidity-mono' : path.endsWith('.js') ? 'fak fa-solidity-mono' : path.endsWith('.js')
? 'fab fa-js' : path.endsWith('.json') ? 'fab fa-js' : path.endsWith('.json')
? 'fas fa-brackets-curly' : path.endsWith('.vy') ? 'small fas fa-brackets-curly' : path.endsWith('.vy')
? 'fak fa-vyper-mono' : path.endsWith('.lex') ? 'small fak fa-vyper2' : path.endsWith('.lex')
? 'fak fa-lexon' : path.endsWith('ts') ? 'fak fa-lexon' : path.endsWith('ts')
? 'fad fa-brackets-curly' : path.endsWith('.contract') ? 'small fak fa-ts-logo' : path.endsWith('.tsc')
? 'fab fa-ethereum' : path.endsWith('.cairo') ? 'fad fa-brackets-curly' : path.endsWith('.cairo')
? 'fab fa-ethereum' : 'far fa-file' // TODO: add cairo icon ? 'small fak fa-cairo' : 'far fa-file'
} }
export const isNumeric = (value) => { export const isNumeric = (value) => {

@ -284,7 +284,7 @@ export const RemixUiHomeTab = (props: RemixUiHomeTabProps) => {
<p className="mt-3 mb-0"><label>LOAD FROM:</label></p> <p className="mt-3 mb-0"><label>LOAD FROM:</label></p>
<div className="btn-group"> <div className="btn-group">
<button className="btn mr-1 btn-secondary" data-id="landingPageImportFromGistButton" onClick={() => importFromGist()}>Gist</button> <button className="btn mr-1 btn-secondary" data-id="landingPageImportFromGistButton" onClick={() => importFromGist()}>Gist</button>
<button className="btn mx-1 btn-secondary" data-id="landingPageImportFromGitHubButton" onClick={() => showFullMessage('Github', 'github URL', ['https://github.com/0xcert/ethereum-erc721/src/contracts/tokens/nf-token-metadata.sol', 'https://github.com/OpenZeppelin/openzeppelin-solidity/blob/67bca857eedf99bf44a4b6a0fc5b5ed553135316/contracts/access/Roles.sol'])}>GitHub</button> <button className="btn mx-1 btn-secondary" data-id="landingPageImportFromGitHubButton" onClick={() => showFullMessage('GitHub', 'github URL', ['https://github.com/0xcert/ethereum-erc721/src/contracts/tokens/nf-token-metadata.sol', 'https://github.com/OpenZeppelin/openzeppelin-solidity/blob/67bca857eedf99bf44a4b6a0fc5b5ed553135316/contracts/access/Roles.sol'])}>GitHub</button>
<button className="btn mx-1 btn-secondary" onClick={() => showFullMessage('Ipfs', 'ipfs URL', ['ipfs://<ipfs-hash>'])}>Ipfs</button> <button className="btn mx-1 btn-secondary" onClick={() => showFullMessage('Ipfs', 'ipfs URL', ['ipfs://<ipfs-hash>'])}>Ipfs</button>
<button className="btn mx-1 btn-secondary" onClick={() => showFullMessage('Https', 'http/https raw content', ['https://raw.githubusercontent.com/OpenZeppelin/openzeppelin-contracts/master/contracts/token/ERC20/ERC20.sol'])}>https</button> <button className="btn mx-1 btn-secondary" onClick={() => showFullMessage('Https', 'http/https raw content', ['https://raw.githubusercontent.com/OpenZeppelin/openzeppelin-contracts/master/contracts/token/ERC20/ERC20.sol'])}>https</button>
</div> </div>

@ -3,8 +3,8 @@ export const textSecondary = 'text-secondary'
export const textDark = 'text-dark' export const textDark = 'text-dark'
export const warnText = 'Be sure the endpoint is opened before enabling it. \nThis mode allows a user to provide a passphrase in the Remix interface without having to unlock the account. Although this is very convenient, you should completely trust the backend you are connected to (Geth, Parity, ...). Remix never persists any passphrase'.split('\n').map(s => s.trim()).join(' ') export const warnText = 'Be sure the endpoint is opened before enabling it. \nThis mode allows a user to provide a passphrase in the Remix interface without having to unlock the account. Although this is very convenient, you should completely trust the backend you are connected to (Geth, Parity, ...). Remix never persists any passphrase'.split('\n').map(s => s.trim()).join(' ')
export const gitAccessTokenTitle = 'Github Access Token' export const gitAccessTokenTitle = 'GitHub Access Token'
export const gitAccessTokenText = 'Manage the access token used to publish to Gist and retrieve Github contents.' export const gitAccessTokenText = 'Manage the access token used to publish to Gist and retrieve GitHub contents.'
export const gitAccessTokenText2 = 'Go to github token page (link below) to create a new token and save it in Remix. Make sure this token has only \'create gist\' permission.' export const gitAccessTokenText2 = 'Go to github token page (link below) to create a new token and save it in Remix. Make sure this token has only \'create gist\' permission.'
export const gitAccessTokenLink = 'https://github.com/settings/tokens' export const gitAccessTokenLink = 'https://github.com/settings/tokens'
export const etherscanTokenTitle = 'EtherScan Access Token' export const etherscanTokenTitle = 'EtherScan Access Token'

@ -188,7 +188,7 @@ export const RemixUiSettings = (props: RemixUiSettingsProps) => {
<div className="d-flex justify-content-end pt-2"> <div className="d-flex justify-content-end pt-2">
<CopyToClipboard content={tokenValue[type]} data-id='copyToClipboardCopyIcon' /> <CopyToClipboard content={tokenValue[type]} data-id='copyToClipboardCopyIcon' />
<input className="btn btn-sm btn-primary ml-2" id="savegisttoken" data-id="settingsTabSaveGistToken" onClick={() => saveToken(type)} value="Save" type="button" disabled={tokenValue === ''}></input> <input className="btn btn-sm btn-primary ml-2" id="savegisttoken" data-id="settingsTabSaveGistToken" onClick={() => saveToken(type)} value="Save" type="button" disabled={tokenValue === ''}></input>
<button className="btn btn-sm btn-secondary ml-2" id="removegisttoken" data-id="settingsTabRemoveGistToken" title="Delete Github access token" onClick={() => removeToken(type)}>Remove</button> <button className="btn btn-sm btn-secondary ml-2" id="removegisttoken" data-id="settingsTabRemoveGistToken" title="Delete GitHub access token" onClick={() => removeToken(type)}>Remove</button>
</div> </div>
</div></div> </div></div>
</div> </div>

@ -6,7 +6,7 @@
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/ethereum/remix-project/issues) [![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/ethereum/remix-project/issues)
`@remix-project/remix-url-resolver` is a tool to handle import from different sources and resolve the content. It is used in Remix IDE to handle imports from `Github`, `Swarm`, `IPFS` and other URLs. `@remix-project/remix-url-resolver` is a tool to handle import from different sources and resolve the content. It is used in Remix IDE to handle imports from `GitHub`, `Swarm`, `IPFS` and other URLs.
### Installation ### Installation

@ -106,7 +106,7 @@
"sourcemap": "exorcist --root ../ apps/remix-ide/build/app.js.map > apps/remix-ide/build/app.js", "sourcemap": "exorcist --root ../ apps/remix-ide/build/app.js.map > apps/remix-ide/build/app.js",
"test-browser": "npm-run-all -lpr selenium make-mock-compiler serve browsertest", "test-browser": "npm-run-all -lpr selenium make-mock-compiler serve browsertest",
"watch": "watchify apps/remix-ide/src/index.js -dv -p browserify-reload -o apps/remix-ide/build/app.js --exclude solc", "watch": "watchify apps/remix-ide/src/index.js -dv -p browserify-reload -o apps/remix-ide/build/app.js --exclude solc",
"reinstall": "rm ./node-modules/ -rf && rm package-lock.json && rm ./build/ -rf && yarn install & yarn run build", "reinstall": "rm ./node-modules/ -rf && rm yarn.lock && rm ./build/ -rf && yarn install & yarn run build",
"ganache-cli": "npx ganache-cli" "ganache-cli": "npx ganache-cli"
}, },
"browserify": { "browserify": {

@ -37,7 +37,7 @@ This document includes:
- git checkout origin/remix_beta - git checkout origin/remix_beta
- git checkout -b bumpVersion - git checkout -b bumpVersion
- update package.json version - update package.json version
- update version in package-lock.json - update version in yarn.lock
- merge PR to **origin/remix_beta** - merge PR to **origin/remix_beta**
- git fetch origin remix_beta - git fetch origin remix_beta
- git checkout origin/remix_beta - git checkout origin/remix_beta
@ -52,7 +52,7 @@ This document includes:
- git checkout origin/master - git checkout origin/master
- git checkout -b bumpDevVersion - git checkout -b bumpDevVersion
- update package.json version: bump the version and add the tag `dev` if not already present. - update package.json version: bump the version and add the tag `dev` if not already present.
- update version in package-lock.json - update version in yarn.lock
- create a PR and merge it to origin/master - create a PR and merge it to origin/master
## Remix IDE release Part 4. remix.ethereum.org update ## Remix IDE release Part 4. remix.ethereum.org update
@ -73,7 +73,7 @@ This is not strictly speaking a release. Updating the remix site is done through
- git checkout origin/master - git checkout origin/master
- git checkout -b bumpVersion - git checkout -b bumpVersion
- update package.json version to the new version "vx.x.x-beta.1" - update package.json version to the new version "vx.x.x-beta.1"
- update version in package-lock.json - update version in yarn.lock
- merge PR - merge PR
- git fetch origin master - git fetch origin master
- git checkout origin/master - git checkout origin/master

@ -55,7 +55,7 @@ Related links:
- How the backend (if any) works / will work (could be a smart contract). - How the backend (if any) works / will work (could be a smart contract).
- How the frontend works / will work. - How the frontend works / will work.
- What is the general vision of the UX design for this particular story. - What is the general vision of the UX design for this particular story.
Later progress and discussion is updated directly on the issue or pull request (Github). Later progress and discussion is updated directly on the issue or pull request (GitHub).
--- ---
@ -73,7 +73,7 @@ Before starting coding, we should ensure all devs / contributors are aware of:
# Story / Bug fix # Story / Bug fix
- Prioritised list of PRs / issues are tracked in a Github Project, Remix IDE issues are managed by a prioritized backlog. - Prioritised list of PRs / issues are tracked in a GitHub Project, Remix IDE issues are managed by a prioritized backlog.
- Every story can be executed by a single developer or a group of 2 or more developers (depending on the size and complexity) - Every story can be executed by a single developer or a group of 2 or more developers (depending on the size and complexity)
- Each dev should take the part he/she feels the most confortable with. - Each dev should take the part he/she feels the most confortable with.
- Later progress and discussion is updated directly on the issue or pull request (github). - Later progress and discussion is updated directly on the issue or pull request (github).

Loading…
Cancel
Save