mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-10-22 19:26:13 +02:00
312f2afc41
The `auto-changelog.js` script has been refactoring into various different modules. This was done in preparation for migrating this to a separate repository, where it can be used in our libraries as well. Functionally this should act _mostly_ the same way, but there have been some changes. It was difficult to make this a pure refactor because of the strategy used to validate the changelog and ensure each addition remained valid. Instead of being updated in-place, the changelog is now parsed upfront and stored as a "Changelog" instance, which is a new class that was written to allow only valid changes. The new changelog is then stringified and completely overwrites the old one. The parsing had to be much more strict, as any unanticipated content would otherwise be erased unintentionally. This script now also normalizes the formatting of the changelog (though the individual change descriptions are still unformatted). The changelog stringification now accommodates non-linear releases as well. For example, you can now release v1.0.1 *after* v2.0.0, and it will be listed in chronological order while also correctly constructing the `compare` URLs for each release.
326 lines
13 KiB
JSON
326 lines
13 KiB
JSON
{
|
|
"name": "metamask-crx",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"setup": "yarn install && yarn setup:postinstall",
|
|
"setup:postinstall": "yarn patch-package && yarn allow-scripts",
|
|
"start": "node development/build/index.js dev",
|
|
"start:lavamoat": "yarn build dev",
|
|
"dist": "yarn build prod",
|
|
"build": "lavamoat development/build/index.js",
|
|
"start:test": "yarn build testDev",
|
|
"benchmark:chrome": "SELENIUM_BROWSER=chrome node test/e2e/benchmark.js",
|
|
"benchmark:firefox": "SELENIUM_BROWSER=firefox node test/e2e/benchmark.js",
|
|
"build:test": "yarn build test",
|
|
"build:test:metrics": "SEGMENT_HOST='http://localhost:9090' SEGMENT_WRITE_KEY='FAKE' SEGMENT_LEGACY_WRITE_KEY='FAKE' yarn build test",
|
|
"test": "yarn test:unit && yarn lint",
|
|
"dapp": "node development/static-server.js node_modules/@metamask/test-dapp/dist --port 8080",
|
|
"dapp-chain": "GANACHE_ARGS='-b 2' concurrently -k -n ganache,dapp -p '[{time}][{name}]' 'yarn ganache:start' 'sleep 5 && yarn dapp'",
|
|
"forwarder": "node ./development/static-server.js ./node_modules/@metamask/forwarder/dist/ --port 9010",
|
|
"dapp-forwarder": "concurrently -k -n forwarder,dapp -p '[{time}][{name}]' 'yarn forwarder' 'yarn dapp'",
|
|
"sendwithprivatedapp": "node development/static-server.js test/e2e/send-eth-with-private-key-test --port 8080",
|
|
"test:unit": "mocha --exit --require test/env.js --require test/setup.js --recursive './{ui,app,shared}/**/*.test.js'",
|
|
"test:unit:global": "mocha --exit --require test/env.js --require test/setup.js --recursive test/unit-global/*.test.js",
|
|
"test:unit:lax": "mocha --exit --require test/env.js --require test/setup.js --ignore './app/scripts/controllers/permissions/*.test.js' --recursive './{ui,app,shared}/**/*.test.js'",
|
|
"test:unit:strict": "mocha --exit --require test/env.js --require test/setup.js --recursive './app/scripts/controllers/permissions/*.test.js'",
|
|
"test:unit:path": "mocha --exit --require test/env.js --require test/setup.js --recursive",
|
|
"test:e2e:chrome": "SELENIUM_BROWSER=chrome test/e2e/run-all.sh",
|
|
"test:e2e:chrome:metrics": "SELENIUM_BROWSER=chrome mocha test/e2e/metrics.spec.js",
|
|
"test:e2e:firefox": "SELENIUM_BROWSER=firefox test/e2e/run-all.sh",
|
|
"test:e2e:firefox:metrics": "SELENIUM_BROWSER=firefox mocha test/e2e/metrics.spec.js",
|
|
"test:coverage": "nyc --silent --check-coverage yarn test:unit:strict && nyc --silent --no-clean yarn test:unit:lax && nyc report --reporter=text --reporter=html",
|
|
"test:coverage:strict": "nyc --check-coverage yarn test:unit:strict",
|
|
"test:coverage:path": "nyc --check-coverage yarn test:unit:path",
|
|
"ganache:start": "./development/run-ganache.sh",
|
|
"sentry:publish": "node ./development/sentry-publish.js",
|
|
"lint": "prettier --check ./**/*.json && eslint . --ext js --cache && yarn lint:styles",
|
|
"lint:fix": "prettier --write ./**/*.json && eslint . --ext js --cache --fix",
|
|
"lint:changed": "{ git ls-files --others --exclude-standard ; git diff-index --name-only --diff-filter=d HEAD ; } | grep --regexp='[.]js$' | tr '\\n' '\\0' | xargs -0 eslint",
|
|
"lint:changed:fix": "{ git ls-files --others --exclude-standard ; git diff-index --name-only --diff-filter=d HEAD ; } | grep --regexp='[.]js$' | tr '\\n' '\\0' | xargs -0 eslint --fix",
|
|
"lint:shellcheck": "./development/shellcheck.sh",
|
|
"lint:styles": "stylelint '*/**/*.scss'",
|
|
"lint:lockfile": "lockfile-lint --path yarn.lock --allowed-hosts npm yarn github.com codeload.github.com --empty-hostname false --allowed-schemes \"https:\" \"git+https:\"",
|
|
"validate-source-maps": "node ./development/sourcemap-validator.js",
|
|
"verify-locales": "node ./development/verify-locale-strings.js",
|
|
"verify-locales:fix": "node ./development/verify-locale-strings.js --fix",
|
|
"mozilla-lint": "addons-linter dist/firefox",
|
|
"watch": "mocha --watch --require test/env.js --require test/setup.js --reporter min --recursive \"test/unit/**/*.js\" \"ui/app/**/*.test.js\" \"shared/**/*.test.js\"",
|
|
"devtools:react": "react-devtools",
|
|
"devtools:redux": "remotedev --hostname=localhost --port=8000",
|
|
"start:dev": "concurrently -k -n build,react,redux yarn:start yarn:devtools:react yarn:devtools:redux",
|
|
"announce": "node development/announcer.js",
|
|
"storybook": "start-storybook -p 6006 -c .storybook --static-dir ./app ./storybook/images",
|
|
"storybook:build": "build-storybook -c .storybook -o storybook-build --static-dir ./app ./storybook/images",
|
|
"storybook:deploy": "storybook-to-ghpages --existing-output-dir storybook-build --remote storybook --branch master",
|
|
"update-changelog": "node ./development/auto-changelog.js",
|
|
"generate:migration": "./development/generate-migration.sh",
|
|
"lavamoat:auto": "lavamoat ./development/build/index.js --writeAutoPolicy",
|
|
"lavamoat:debug": "lavamoat ./development/build/index.js --writeAutoPolicyDebug"
|
|
},
|
|
"resolutions": {
|
|
"**/regenerator-runtime": "^0.13.7",
|
|
"**/configstore/dot-prop": "^5.1.1",
|
|
"**/ethers/elliptic": "^6.5.4",
|
|
"**/knex/minimist": "^1.2.5",
|
|
"**/optimist/minimist": "^1.2.5",
|
|
"**/socketcluster/minimist": "^1.2.5",
|
|
"**/redux/symbol-observable": "^2.0.3",
|
|
"**/redux-devtools-instrument/symbol-observable": "^2.0.3",
|
|
"**/rxjs/symbol-observable": "^2.0.3",
|
|
"3box/ipfs/ipld-zcash/zcash-bitcore-lib/lodash": "^4.17.19",
|
|
"3box/ipfs/ipld-zcash/zcash-bitcore-lib/elliptic": "^6.5.4",
|
|
"3box/**/libp2p-crypto/node-forge": "^0.10.0",
|
|
"3box/**/libp2p-keychain/node-forge": "^0.10.0",
|
|
"analytics-node/axios": "^0.21.1",
|
|
"netmask": "^2.0.1",
|
|
"pull-ws": "^3.3.2"
|
|
},
|
|
"dependencies": {
|
|
"3box": "^1.10.2",
|
|
"@babel/runtime": "^7.5.5",
|
|
"@download/blockies": "^1.0.3",
|
|
"@formatjs/intl-relativetimeformat": "^5.2.6",
|
|
"@fortawesome/fontawesome-free": "^5.13.0",
|
|
"@lavamoat/preinstall-always-fail": "^1.0.0",
|
|
"@material-ui/core": "^4.11.0",
|
|
"@metamask/contract-metadata": "^1.22.0",
|
|
"@metamask/controllers": "^6.2.1",
|
|
"@metamask/eth-ledger-bridge-keyring": "^0.3.0",
|
|
"@metamask/eth-token-tracker": "^3.0.1",
|
|
"@metamask/etherscan-link": "^2.0.0",
|
|
"@metamask/inpage-provider": "^8.0.4",
|
|
"@metamask/jazzicon": "^2.0.0",
|
|
"@metamask/logo": "^2.5.0",
|
|
"@metamask/obs-store": "^5.0.0",
|
|
"@popperjs/core": "^2.4.0",
|
|
"@reduxjs/toolkit": "^1.5.0",
|
|
"@sentry/browser": "^5.26.0",
|
|
"@sentry/integrations": "^5.26.0",
|
|
"@zxing/library": "^0.8.0",
|
|
"abortcontroller-polyfill": "^1.4.0",
|
|
"analytics-node": "^3.4.0-beta.3",
|
|
"await-semaphore": "^0.1.1",
|
|
"bignumber.js": "^4.1.0",
|
|
"bn.js": "^4.11.7",
|
|
"classnames": "^2.2.6",
|
|
"content-hash": "^2.5.2",
|
|
"copy-to-clipboard": "^3.0.8",
|
|
"currency-formatter": "^1.4.2",
|
|
"debounce-stream": "^2.0.0",
|
|
"deep-freeze-strict": "1.1.1",
|
|
"end-of-stream": "^1.4.4",
|
|
"eth-block-tracker": "^5.0.1",
|
|
"eth-ens-namehash": "^2.0.8",
|
|
"eth-json-rpc-filters": "^4.2.1",
|
|
"eth-json-rpc-infura": "^5.1.0",
|
|
"eth-json-rpc-middleware": "^6.0.0",
|
|
"eth-keyring-controller": "^6.1.0",
|
|
"eth-method-registry": "^2.0.0",
|
|
"eth-phishing-detect": "^1.1.14",
|
|
"eth-query": "^2.1.2",
|
|
"eth-rpc-errors": "^4.0.2",
|
|
"eth-sig-util": "^3.0.0",
|
|
"eth-trezor-keyring": "^0.6.0",
|
|
"ethereum-ens-network-map": "^1.0.2",
|
|
"ethereumjs-abi": "^0.6.4",
|
|
"ethereumjs-tx": "1.3.7",
|
|
"ethereumjs-util": "5.1.0",
|
|
"ethereumjs-wallet": "^0.6.4",
|
|
"ethers": "^5.0.8",
|
|
"ethjs": "^0.4.0",
|
|
"ethjs-contract": "^0.2.3",
|
|
"ethjs-ens": "^2.0.0",
|
|
"ethjs-query": "^0.3.4",
|
|
"extension-port-stream": "^2.0.0",
|
|
"extensionizer": "^1.0.1",
|
|
"fast-json-patch": "^2.0.4",
|
|
"fast-safe-stringify": "^2.0.7",
|
|
"fuse.js": "^3.2.0",
|
|
"globalthis": "^1.0.1",
|
|
"human-standard-token-abi": "^2.0.0",
|
|
"immer": "^8.0.1",
|
|
"json-rpc-engine": "^6.1.0",
|
|
"json-rpc-middleware-stream": "^2.1.1",
|
|
"jsonschema": "^1.2.4",
|
|
"labeled-stream-splicer": "^2.0.2",
|
|
"localforage": "^1.9.0",
|
|
"lodash": "^4.17.19",
|
|
"loglevel": "^1.4.1",
|
|
"luxon": "^1.24.1",
|
|
"nanoid": "^2.1.6",
|
|
"nonce-tracker": "^1.0.0",
|
|
"obj-multiplex": "^1.0.0",
|
|
"pify": "^5.0.0",
|
|
"post-message-stream": "^3.0.0",
|
|
"promise-to-callback": "^1.0.0",
|
|
"prop-types": "^15.6.1",
|
|
"pubnub": "4.27.3",
|
|
"pump": "^3.0.0",
|
|
"punycode": "^2.1.1",
|
|
"qrcode-generator": "1.4.1",
|
|
"react": "^16.12.0",
|
|
"react-dnd": "^3.0.2",
|
|
"react-dnd-html5-backend": "^7.4.4",
|
|
"react-dom": "^16.12.0",
|
|
"react-idle-timer": "^4.2.5",
|
|
"react-inspector": "^2.3.0",
|
|
"react-popper": "^2.2.3",
|
|
"react-redux": "^7.2.0",
|
|
"react-router-dom": "^5.1.2",
|
|
"react-simple-file-input": "^2.0.0",
|
|
"react-tippy": "^1.2.2",
|
|
"react-toggle-button": "^2.2.0",
|
|
"react-transition-group": "^1.2.1",
|
|
"readable-stream": "^2.3.3",
|
|
"redux": "^4.0.5",
|
|
"redux-thunk": "^2.3.0",
|
|
"reselect": "^3.0.1",
|
|
"rpc-cap": "^3.2.1",
|
|
"safe-event-emitter": "^1.0.1",
|
|
"ses": "^0.12.4",
|
|
"single-call-balance-checker-abi": "^1.0.0",
|
|
"swappable-obj-proxy": "^1.1.0",
|
|
"textarea-caret": "^3.0.1",
|
|
"unicode-confusables": "^0.1.1",
|
|
"valid-url": "^1.0.9",
|
|
"web3": "^0.20.7",
|
|
"web3-stream-provider": "^4.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.12.1",
|
|
"@babel/eslint-parser": "^7.13.14",
|
|
"@babel/eslint-plugin": "^7.12.1",
|
|
"@babel/plugin-proposal-class-properties": "^7.5.5",
|
|
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4",
|
|
"@babel/plugin-proposal-object-rest-spread": "^7.5.5",
|
|
"@babel/plugin-proposal-optional-chaining": "^7.8.3",
|
|
"@babel/plugin-transform-runtime": "^7.5.5",
|
|
"@babel/preset-env": "^7.5.5",
|
|
"@babel/preset-react": "^7.0.0",
|
|
"@babel/register": "^7.5.5",
|
|
"@lavamoat/allow-scripts": "^1.0.4",
|
|
"@metamask/eslint-config": "^5.0.0",
|
|
"@metamask/forwarder": "^1.1.0",
|
|
"@metamask/test-dapp": "^4.0.1",
|
|
"@sentry/cli": "^1.58.0",
|
|
"@storybook/addon-actions": "^6.1.17",
|
|
"@storybook/addon-backgrounds": "^6.1.17",
|
|
"@storybook/addon-knobs": "^6.1.17",
|
|
"@storybook/addon-toolbars": "^6.1.17",
|
|
"@storybook/core": "^6.1.17",
|
|
"@storybook/react": "^6.1.17",
|
|
"@storybook/storybook-deployer": "^2.8.7",
|
|
"@testing-library/react": "^10.4.8",
|
|
"@testing-library/react-hooks": "^3.2.1",
|
|
"@types/react": "^16.9.53",
|
|
"addons-linter": "1.14.0",
|
|
"babelify": "^10.0.0",
|
|
"brfs": "^2.0.2",
|
|
"browserify": "^16.5.1",
|
|
"chalk": "^3.0.0",
|
|
"chromedriver": "^79.0.0",
|
|
"concurrently": "^5.2.0",
|
|
"copy-webpack-plugin": "^6.0.3",
|
|
"cross-spawn": "^7.0.3",
|
|
"css-loader": "^2.1.1",
|
|
"css-to-xpath": "^0.1.0",
|
|
"del": "^3.0.0",
|
|
"enzyme": "^3.10.0",
|
|
"enzyme-adapter-react-16": "^1.15.1",
|
|
"eslint": "^7.23.0",
|
|
"eslint-config-prettier": "^8.1.0",
|
|
"eslint-plugin-import": "^2.22.1",
|
|
"eslint-plugin-mocha": "^8.1.0",
|
|
"eslint-plugin-node": "^11.1.0",
|
|
"eslint-plugin-prettier": "^3.3.1",
|
|
"eslint-plugin-react": "^7.23.1",
|
|
"eslint-plugin-react-hooks": "^4.2.0",
|
|
"fancy-log": "^1.3.3",
|
|
"fast-glob": "^3.2.2",
|
|
"fs-extra": "^8.1.0",
|
|
"ganache-cli": "^6.12.1",
|
|
"ganache-core": "^2.13.1",
|
|
"geckodriver": "^1.21.0",
|
|
"get-port": "^5.1.0",
|
|
"gulp": "^4.0.2",
|
|
"gulp-autoprefixer": "^5.0.0",
|
|
"gulp-dart-sass": "^1.0.2",
|
|
"gulp-livereload": "4.0.0",
|
|
"gulp-rename": "^2.0.0",
|
|
"gulp-rtlcss": "^1.4.0",
|
|
"gulp-sourcemaps": "^2.6.0",
|
|
"gulp-stylelint": "^13.0.0",
|
|
"gulp-terser-js": "^5.2.2",
|
|
"gulp-watch": "^5.0.1",
|
|
"gulp-zip": "^4.0.0",
|
|
"jest": "^26.6.3",
|
|
"jsdom": "^11.2.0",
|
|
"koa": "^2.7.0",
|
|
"lavamoat": "^5.1.4",
|
|
"lavamoat-viz": "^6.0.4",
|
|
"lockfile-lint": "^4.0.0",
|
|
"loose-envify": "^1.4.0",
|
|
"mocha": "^7.2.0",
|
|
"nock": "^9.0.14",
|
|
"node-fetch": "^2.6.1",
|
|
"nyc": "^15.0.0",
|
|
"patch-package": "^6.4.7",
|
|
"polyfill-crypto.getrandomvalues": "^1.0.0",
|
|
"prettier": "^2.2.1",
|
|
"prettier-plugin-sort-json": "^0.0.1",
|
|
"proxyquire": "^2.1.3",
|
|
"randomcolor": "^0.5.4",
|
|
"rc": "^1.2.8",
|
|
"react-devtools": "^4.10.1",
|
|
"read-installed": "^4.0.3",
|
|
"redux-mock-store": "^1.5.4",
|
|
"remote-redux-devtools": "^0.5.16",
|
|
"resolve-url-loader": "^3.1.2",
|
|
"sass": "^1.32.4",
|
|
"sass-loader": "^10.1.1",
|
|
"selenium-webdriver": "4.0.0-alpha.7",
|
|
"semver": "^7.3.5",
|
|
"serve-handler": "^6.1.2",
|
|
"sinon": "^9.0.0",
|
|
"source-map": "^0.7.2",
|
|
"source-map-explorer": "^2.4.2",
|
|
"string.prototype.matchall": "^4.0.2",
|
|
"style-loader": "^0.21.0",
|
|
"stylelint": "^13.6.1",
|
|
"through2": "^2.0.3",
|
|
"ttest": "^2.1.1",
|
|
"vinyl-buffer": "^1.0.1",
|
|
"vinyl-source-stream": "^2.0.0",
|
|
"watchify": "^3.11.1",
|
|
"webpack": "^4.41.6"
|
|
},
|
|
"engines": {
|
|
"node": "^14.15.1",
|
|
"yarn": "^1.16.0"
|
|
},
|
|
"lavamoat": {
|
|
"allowScripts": {
|
|
"chromedriver": true,
|
|
"geckodriver": true,
|
|
"@sentry/cli": true,
|
|
"electron": true,
|
|
"core-js": false,
|
|
"core-js-pure": false,
|
|
"keccak": false,
|
|
"secp256k1": false,
|
|
"web3": false,
|
|
"sha3": false,
|
|
"bufferutil": false,
|
|
"utf-8-validate": false,
|
|
"leveldown": false,
|
|
"ursa-optional": false,
|
|
"gc-stats": false,
|
|
"github:assemblyscript/assemblyscript": false,
|
|
"tiny-secp256k1": false,
|
|
"@lavamoat/preinstall-always-fail": false,
|
|
"fsevents": false
|
|
}
|
|
}
|
|
}
|