Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 48 additions & 24 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,67 +8,91 @@ jobs:
env:
CI: true
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- run: git fetch --no-tags --prune --depth=1 origin +refs/heads/*:refs/remotes/origin/*
- name: Setup node 14
uses: actions/setup-node@v1
- name: Setup node 24
uses: actions/setup-node@v4
with:
node-version: 14.x
- run: yarn install --frozen-lockfile --check-files
- uses: actions/cache@v1
node-version: 24.x
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9.15.0
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- run: pnpm install --frozen-lockfile
- uses: actions/cache@v4
id: cache-deps
with:
token: ${{ github.token }}
path: '.'
key: ${{ github.sha }}-deps
lint:
runs-on: ubuntu-latest
needs: install-dependencies
steps:
- uses: actions/cache@v1
- uses: actions/cache@v4
id: restore-deps
with:
path: '.'
key: ${{ github.sha }}-deps
- name: Setup node 14
uses: actions/setup-node@v1
- name: Setup node 24
uses: actions/setup-node@v4
with:
node-version: 24.x
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
node-version: 14.x
- run: yarn lint
version: 9.15.0
- run: pnpm lint
unit-test:
runs-on: ubuntu-latest
needs: install-dependencies
steps:
- uses: actions/cache@v1
- uses: actions/cache@v4
id: restore-deps
with:
path: '.'
key: ${{ github.sha }}-deps
- name: Setup node 14
uses: actions/setup-node@v1
- name: Setup node 24
uses: actions/setup-node@v4
with:
node-version: 14.x
- run: yarn test
node-version: 24.x
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9.15.0
- run: pnpm test
build:
runs-on: ubuntu-latest
needs: install-dependencies
strategy:
matrix:
node-version: [14.x]
node-version: [24.x]
steps:
- uses: actions/cache@v1
- uses: actions/cache@v4
id: restore-deps
with:
path: '.'
key: ${{ github.sha }}
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
# HACK(johnrjj) - Rebuild node-sass in case build step runs on a separate machine than the dependency install
- run: npm rebuild node-sass
- run: yarn build:prod
- uses: actions/cache@v1
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9.15.0
- run: pnpm build:prod
- uses: actions/cache@v4
id: cache-build
with:
path: '.'
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ mdx/tools/*
.env
.vercel

.env*.local
4 changes: 3 additions & 1 deletion .npmrc
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
awscli_profile=0xproject
auto-install-peers=true
strict-peer-dependencies=false
shamefully-hoist=true
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v14
20
80 changes: 48 additions & 32 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,42 +1,46 @@
{
"name": "@0x/website",
"version": "0.0.89",
"packageManager": "pnpm@9.15.0",
"engines": {
"node": ">=14 <15"
"node": "24.x"
},
"private": true,
"description": "Website and 0x portal dapp",
"scripts": {
"build": "yarn build:dev",
"build": "pnpm build:dev",
"build:prod": "node --max_old_space_size=16384 ./node_modules/webpack/bin/webpack.js --mode production",
"build:dev": "node --max-old-space-size=16384 ./node_modules/webpack/bin/webpack.js --mode development",
"build:dev": "node --max_old_space_size=16384 ./node_modules/webpack/bin/webpack.js --mode development",
"clean": "shx rm -rf public/bundle* mdx/tools",
"typecheck": "tsc --pretty --noEmit",
"test": "jest",
"test:watch": "jest --watch",
"eslint": "eslint 'ts/**/*.{ts,tsx}'",
"lint": "tslint --format stylish --project . 'ts/**/*.ts' 'ts/**/*.tsx'",
"fix": "yarn lint --fix",
"pre_push": "yarn typecheck && yarn lint:prettier && yarn lint && yarn test",
"dev": "node --max-old-space-size=16384 ./node_modules/webpack-dev-server/bin/webpack-dev-server.js --mode development --content-base public",
"deploy_dogfood": "npm run build:prod && aws s3 sync ./public/. s3://dogfood.0xproject.com --profile $(npm config get awscli_profile) --region us-east-1 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers && ./cdn-cache-clear.sh dogfood",
"deploy_staging": "&& npm run build:prod && aws s3 sync ./public/. s3://staging-0xproject --profile $(npm config get awscli_profile) --region us-east-1 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers",
"fix": "pnpm lint --fix",
"pre_push": "pnpm typecheck && pnpm lint:prettier && pnpm lint && pnpm test",
"dev": "node --max_old_space_size=16384 ./node_modules/webpack-dev-server/bin/webpack-dev-server.js --mode development --content-base public",
"deploy_dogfood": "pnpm run build:prod && aws s3 sync ./public/. s3://dogfood.0xproject.com --profile $(npm config get awscli_profile) --region us-east-1 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers && ./cdn-cache-clear.sh dogfood",
"deploy_staging": "&& pnpm run build:prod && aws s3 sync ./public/. s3://staging-0xproject --profile $(npm config get awscli_profile) --region us-east-1 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers",
"deploy_live": " DEPLOY_ROLLBAR_SOURCEMAPS=true npm run build:prod && aws s3 sync ./public/. s3://0x.org --profile $(npm config get awscli_profile) --region us-east-1 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers --exclude *.map.js && ./cdn-cache-clear.sh live",
"prettier": "prettier --write \"ts/**/*.{ts,tsx,js,json,css,yml,md}\"",
"lint:prettier": "prettier --check \"ts/**/*.{ts,tsx,js,json,css,yml,md}\"",
"postinstall": "patch-package"
},
"resolutions": {
"node-hid": "2.1.1",
"scrypt": "github:barrysteyn/node-scrypt#fb60a8d",
"websocket": "github:frozeman/WebSocket-Node#browserifyCompatible"
"pnpm": {
"overrides": {
"node-hid": "2.1.1",
"scrypt": "github:barrysteyn/node-scrypt#fb60a8d",
"websocket": "github:frozeman/WebSocket-Node#browserifyCompatible",
"typescript": "^4.0.0"
}
},
"author": "Fabio Berger",
"license": "Apache-2.0",
"dependencies": {
"@0x/asset-buyer": "6.2.0-beta.3",
"@0x/contract-addresses": "^4.1.0",
"@0x/contract-wrappers": "^13.18.0",
"@0x/contract-addresses": "^4.12.0",
"@0x/contract-wrappers": "12.2.0-beta.4",
"@0x/contracts-dev-utils": "^1.0.2",
"@0x/contracts-treasury": "^1.4.2",
"@0x/json-schemas": "^6.4.0",
Expand All @@ -60,6 +64,7 @@
"basscss": "^8.0.3",
"blockies": "^0.0.2",
"bowser": "^1.9.4",
"buffer": "^6.0.3",
"change-case": "^3.0.2",
"chart.js": "^2.8.0",
"color": "^3.1.2",
Expand All @@ -71,15 +76,15 @@
"dotenv": "^10.0.0",
"dotenv-webpack": "^7.0.3",
"ethereum-types": "^3.6.0",
"ethereumjs-util": "^5.1.1",
"ethereumjs-util": "^5.2.1",
"ethers": "^5.0.24",
"find-versions": "^2.0.0",
"flickity": "^2.2.2",
"fuse.js": "^3.4.6",
"graphql": "^15.5.1",
"graphql-request": "^3.5.0",
"is-mobile": "^0.2.2",
"less": "^2.7.2",
"less": "^4.2.0",
"lodash": "^4.17.11",
"lottie-web": "^5.6.2",
"marked": "^2.0.0",
Expand All @@ -94,26 +99,29 @@
"patch-package": "^6.4.7",
"polished": "^1.9.2",
"postinstall-postinstall": "^2.1.0",
"process": "^0.11.10",
"prop-types": "^15.7.2",
"query-string": "^6.0.0",
"rc-slider": "^8.6.3",
"react": "^16.12.0",
"rc-tooltip": "^6.4.0",
"react": "^16.14.0",
"react-autosuggest": "^9.4.3",
"react-chartjs-2": "^2.7.6",
"react-copy-to-clipboard": "^5.0.0",
"react-dom": "^16.12.0",
"react-dom": "^16.14.0",
"react-flickity-component": "^3.6.1",
"react-headroom": "2.2.2",
"react-helmet": "^5.2.1",
"react-highlight": "0xproject/react-highlight#react-peer-deps",
"react-instantsearch-dom": "^5.7.0",
"react-is": "^16.13.1",
"react-markdown": "^4.0.6",
"react-minimal-pie-chart": "^8.2.0",
"react-popper": "^1.0.0-beta.6",
"react-query": "^3.7.1",
"react-redux": "^7.1.3",
"react-responsive": "^6.0.1",
"react-router-dom": "^5.1.2",
"react-scroll": "https://github.com/0xProject/react-scroll.git#d2afc2729dc09980e4113d8c38a1b012ba180d81",
"react-scroll": "^1.9.3",
"react-scrollable-anchor": "^0.6.1",
"react-spring": "^8.0.27",
"react-spring-latest": "npm:react-spring@9.1.2",
Expand All @@ -125,7 +133,7 @@
"redux": "^4.0.4",
"redux-devtools-extension": "^2.13.2",
"rollbar": "^2.4.7",
"sass-loader": "^7.1.0",
"sass-loader": "^16.0.4",
"semver": "5.5.0",
"semver-sort": "0.0.4",
"styled-components": "^5.3.1",
Expand Down Expand Up @@ -163,6 +171,7 @@
"@types/numeral": "^0.0.26",
"@types/query-string": "^5.1.0",
"@types/rc-slider": "^8.6.0",
"@types/ethereumjs-util": "^5.2.0",
"@types/react": "^16.9.17",
"@types/react-copy-to-clipboard": "^4.2.0",
"@types/react-dom": "^16.9.4",
Expand All @@ -172,39 +181,47 @@
"@types/react-scroll": "1.5.3",
"@types/react-syntax-highlighter": "^10.2.1",
"@types/react-transition-group": "^4.2.0",
"@types/rc-tooltip": "^3.7.0",
"@types/redux": "^3.6.0",
"@types/styled-components": "^5.1.15",
"@types/valid-url": "^1.0.2",
"@types/web3-provider-engine": "^14.0.0",
"@types/yargs": "^11.0.0",
"@typescript-eslint/parser": "^2.12.0",
"assert": "^2.0.0",
"awesome-typescript-loader": "^5.2.1",
"babel-loader": "^8.0.6",
"cache-loader": "^4.1.0",
"browserify-zlib": "^0.2.0",
"compare-versions": "^3.5.1",
"crypto-browserify": "^3.12.0",
"css-loader": "0.23.x",
"eslint": "^6.7.2",
"eslint-plugin-react-hooks": "^2.3.0",
"extend": "^3.0.2",
"glob": "^7.1.4",
"https-browserify": "^1.0.0",
"husky": "^3.0.5",
"jest": "^24.9.0",
"jest-transform-stub": "^2.0.0",
"json-stringify-pretty-compact": "^2.0.0",
"less-loader": "^4.1.0",
"node-sass": "^4.12.0",
"less-loader": "^12.3.0",
"os-browserify": "^0.3.0",
"path-browserify": "^1.0.1",
"prettier": "^2.2.1",
"raw-loader": "^0.5.1",
"react-svg-loader": "^2.1.0",
"remark": "^10.0.1",
"remark-mdx": "^1.0.21",
"remark-slug": "^5.1.2",
"rollbar-sourcemap-webpack-plugin": "^2.4.0",
"sass": "^1.70.0",
"shx": "^0.2.2",
"slugify": "^1.3.4",
"source-map-loader": "^0.2.4",
"stream-browserify": "^3.0.0",
"stream-http": "^3.2.0",
"style-loader": "0.23.x",
"terser-webpack-plugin": "^1.4.1",
"terser-webpack-plugin": "^5.3.16",
"to-vfile": "^6.0.0",
"ts-jest": "^24.2.0",
"ts-loader": "^8.2.0",
Expand All @@ -217,18 +234,17 @@
"unist-util-select": "^2.0.2",
"unist-util-visit": "^2.0.0",
"unist-util-visit-parents": "^3.0.0",
"url": "^0.11.0",
"vercel": "^27.0.1",
"webpack": "^4.39.2",
"webpack-cli": "3.3.7",
"webpack-dev-server": "^3.8.0",
"vm-browserify": "^1.1.2",
"webpack": "^5.95.0",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^4.15.1",
"yargs": "^10.0.3"
},
"husky": {
"hooks": {
"pre-push": "yarn pre_push"
"pre-push": "pnpm pre_push"
}
},
"volta": {
"node": "14.21.2"
}
}
Loading