mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
Monorepo (#5341)
- Implements Lerna - Moves all source code into `packages/next` - Keeps integration tests in the root directory
This commit is contained in:
parent
08c71a4403
commit
b1c4f3aec4
|
@ -7,4 +7,5 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- run: yarn install
|
- run: yarn install
|
||||||
|
- run: yarn bootstrap
|
||||||
- run: yarn test
|
- run: yarn test
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
[ignore]
|
|
||||||
<PROJECT_ROOT>/examples/.*
|
|
||||||
<PROJECT_ROOT>/.*.json
|
|
|
@ -20,6 +20,7 @@
|
||||||
before_cache: [
|
before_cache: [
|
||||||
"rm -rf node_modules/.cache"
|
"rm -rf node_modules/.cache"
|
||||||
],
|
],
|
||||||
|
before_script: ["npm run bootstrap"],
|
||||||
after_script: ["npm run coveralls"],
|
after_script: ["npm run coveralls"],
|
||||||
deploy: {
|
deploy: {
|
||||||
provider: "npm",
|
provider: "npm",
|
||||||
|
|
|
@ -10,6 +10,7 @@ install:
|
||||||
- ps: Install-Product node $env:nodejs_version x64
|
- ps: Install-Product node $env:nodejs_version x64
|
||||||
# install modules
|
# install modules
|
||||||
- npm install
|
- npm install
|
||||||
|
- npm run bootstrap
|
||||||
|
|
||||||
# Post-install test scripts.
|
# Post-install test scripts.
|
||||||
test_script:
|
test_script:
|
||||||
|
|
14
lerna.json
Normal file
14
lerna.json
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
"npmClient": "yarn",
|
||||||
|
"useWorkspaces": true,
|
||||||
|
"packages": [
|
||||||
|
"packages/*"
|
||||||
|
],
|
||||||
|
"command": {
|
||||||
|
"publish": {
|
||||||
|
"allowBranch": "canary",
|
||||||
|
"registry": "https://registry.npmjs.org/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"version": "0.0.0"
|
||||||
|
}
|
128
package.json
128
package.json
|
@ -1,50 +1,26 @@
|
||||||
{
|
{
|
||||||
"name": "next",
|
"name": "nextjs-project",
|
||||||
"version": "7.0.1",
|
"private": true,
|
||||||
"description": "Minimalistic framework for server-rendered React applications",
|
"workspaces": [
|
||||||
"main": "./dist/server/next.js",
|
"packages/*"
|
||||||
"license": "MIT",
|
|
||||||
"repository": "zeit/next.js",
|
|
||||||
"bugs": "https://github.com/zeit/next.js/issues",
|
|
||||||
"homepage": "https://github.com/zeit/next.js",
|
|
||||||
"files": [
|
|
||||||
"dist",
|
|
||||||
"app.js",
|
|
||||||
"asset.js",
|
|
||||||
"babel.js",
|
|
||||||
"client.js",
|
|
||||||
"config.js",
|
|
||||||
"constants.js",
|
|
||||||
"document.js",
|
|
||||||
"dynamic.js",
|
|
||||||
"error.js",
|
|
||||||
"head.js",
|
|
||||||
"link.js",
|
|
||||||
"prefetch.js",
|
|
||||||
"router.js"
|
|
||||||
],
|
],
|
||||||
"bin": {
|
|
||||||
"next": "./dist/bin/next"
|
|
||||||
},
|
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "taskr",
|
"lerna": "lerna",
|
||||||
"release": "taskr release",
|
"bootstrap": "lerna bootstrap",
|
||||||
"pretestonly": "taskr pretest",
|
"pretestonly": "taskr pretest",
|
||||||
"testonly": "cross-env NODE_PATH=test/lib jest \\.test.js",
|
"testonly": "cross-env NODE_PATH=test/lib jest \\.test.js",
|
||||||
"posttestonly": "taskr posttest",
|
"posttestonly": "taskr posttest",
|
||||||
"testall": "npm run testonly -- --coverage --forceExit --runInBand --verbose --bail",
|
"testall": "npm run testonly -- --coverage --forceExit --runInBand --verbose --bail",
|
||||||
"pretest": "npm run lint && npm run flow",
|
"pretest": "npm run lint",
|
||||||
"test": "cross-env npm run testall || npm run testall",
|
"test": "cross-env npm run testall || npm run testall",
|
||||||
"coveralls": "nyc --instrument=false --source-map=false report --temp-directory=./coverage --reporter=text-lcov | coveralls",
|
"coveralls": "nyc --instrument=false --source-map=false report --temp-directory=./coverage --reporter=text-lcov | coveralls",
|
||||||
"flow": "flow check",
|
"precommit": "lint-staged",
|
||||||
"lint": "standard 'bin/*' 'client/**/*.js' 'examples/**/*.js' 'lib/**/*.js' 'pages/**/*.js' 'server/**/*.js' 'build/**/*.js' 'test/**/*.js'",
|
"lint": "lerna run lint",
|
||||||
"prepublish": "npm run release",
|
"prepublish": "lerna run prepublish"
|
||||||
"precommit": "lint-staged"
|
|
||||||
},
|
},
|
||||||
"taskr": {
|
"lint-staged": {
|
||||||
"requires": [
|
"*.js": "standard",
|
||||||
"./taskfile-babel.js"
|
"bin/*": "standard"
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"standard": {
|
"standard": {
|
||||||
"parser": "babel-eslint",
|
"parser": "babel-eslint",
|
||||||
|
@ -55,73 +31,22 @@
|
||||||
"**/examples/with-mobx/**"
|
"**/examples/with-mobx/**"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"lint-staged": {
|
"jest": {
|
||||||
"*.js": "standard",
|
"testEnvironment": "node",
|
||||||
"bin/*": "standard"
|
"roots": [
|
||||||
},
|
"test/"
|
||||||
"dependencies": {
|
]
|
||||||
"@babel/core": "7.0.0",
|
|
||||||
"@babel/plugin-proposal-class-properties": "7.0.0",
|
|
||||||
"@babel/plugin-proposal-object-rest-spread": "7.0.0",
|
|
||||||
"@babel/plugin-syntax-dynamic-import": "7.0.0",
|
|
||||||
"@babel/plugin-transform-runtime": "7.0.0",
|
|
||||||
"@babel/preset-env": "7.0.0",
|
|
||||||
"@babel/preset-react": "7.0.0",
|
|
||||||
"@babel/runtime": "7.0.0",
|
|
||||||
"@babel/runtime-corejs2": "7.0.0",
|
|
||||||
"@babel/template": "7.0.0",
|
|
||||||
"ansi-html": "0.0.7",
|
|
||||||
"autodll-webpack-plugin": "0.4.2",
|
|
||||||
"babel-core": "7.0.0-bridge.0",
|
|
||||||
"babel-loader": "8.0.2",
|
|
||||||
"babel-plugin-react-require": "3.0.0",
|
|
||||||
"babel-plugin-transform-react-remove-prop-types": "0.4.15",
|
|
||||||
"case-sensitive-paths-webpack-plugin": "2.1.2",
|
|
||||||
"cross-spawn": "5.1.0",
|
|
||||||
"del": "3.0.0",
|
|
||||||
"etag": "1.8.1",
|
|
||||||
"event-source-polyfill": "0.0.12",
|
|
||||||
"find-up": "2.1.0",
|
|
||||||
"fresh": "0.5.2",
|
|
||||||
"friendly-errors-webpack-plugin": "1.7.0",
|
|
||||||
"glob": "7.1.2",
|
|
||||||
"hoist-non-react-statics": "2.5.5",
|
|
||||||
"htmlescape": "1.1.1",
|
|
||||||
"http-errors": "1.6.2",
|
|
||||||
"http-status": "1.0.1",
|
|
||||||
"launch-editor": "2.2.1",
|
|
||||||
"loader-utils": "1.1.0",
|
|
||||||
"minimist": "1.2.0",
|
|
||||||
"mkdirp-then": "1.2.0",
|
|
||||||
"nanoid": "1.2.1",
|
|
||||||
"path-to-regexp": "2.1.0",
|
|
||||||
"prop-types": "15.6.2",
|
|
||||||
"prop-types-exact": "1.2.0",
|
|
||||||
"react-error-overlay": "4.0.0",
|
|
||||||
"recursive-copy": "2.0.6",
|
|
||||||
"resolve": "1.5.0",
|
|
||||||
"send": "0.16.1",
|
|
||||||
"source-map": "0.5.7",
|
|
||||||
"strip-ansi": "3.0.1",
|
|
||||||
"styled-jsx": "3.1.0",
|
|
||||||
"terser-webpack-plugin": "1.0.2",
|
|
||||||
"unfetch": "3.0.0",
|
|
||||||
"url": "0.11.0",
|
|
||||||
"webpack": "4.20.2",
|
|
||||||
"webpack-dev-middleware": "3.4.0",
|
|
||||||
"webpack-hot-middleware": "2.22.3",
|
|
||||||
"webpack-sources": "1.2.0",
|
|
||||||
"webpackbar": "2.6.3",
|
|
||||||
"write-file-webpack-plugin": "4.3.2"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/preset-flow": "7.0.0",
|
"@babel/plugin-proposal-object-rest-spread": "7.0.0",
|
||||||
|
"@babel/preset-react": "7.0.0",
|
||||||
"@taskr/clear": "1.1.0",
|
"@taskr/clear": "1.1.0",
|
||||||
"@taskr/esnext": "1.1.0",
|
"@taskr/esnext": "1.1.0",
|
||||||
"@taskr/watch": "1.1.0",
|
"@taskr/watch": "1.1.0",
|
||||||
"@zeit/next-css": "0.2.1-canary.1",
|
"@zeit/next-css": "0.2.1-canary.1",
|
||||||
"@zeit/next-sass": "0.2.1-canary.1",
|
"@zeit/next-sass": "0.2.1-canary.1",
|
||||||
"@zeit/next-typescript": "1.1.0",
|
"@zeit/next-typescript": "1.1.0",
|
||||||
|
"babel-core": "7.0.0-bridge.0",
|
||||||
"babel-eslint": "9.0.0",
|
"babel-eslint": "9.0.0",
|
||||||
"babel-jest": "23.4.2",
|
"babel-jest": "23.4.2",
|
||||||
"babel-plugin-transform-define": "1.3.0",
|
"babel-plugin-transform-define": "1.3.0",
|
||||||
|
@ -138,6 +63,7 @@
|
||||||
"get-port": "3.2.0",
|
"get-port": "3.2.0",
|
||||||
"husky": "0.14.3",
|
"husky": "0.14.3",
|
||||||
"jest-cli": "21.2.0",
|
"jest-cli": "21.2.0",
|
||||||
|
"lerna": "^3.4.0",
|
||||||
"lint-staged": "4.2.3",
|
"lint-staged": "4.2.3",
|
||||||
"micro": "9.1.0",
|
"micro": "9.1.0",
|
||||||
"mkdirp": "0.5.1",
|
"mkdirp": "0.5.1",
|
||||||
|
@ -151,15 +77,5 @@
|
||||||
"standard": "11.0.1",
|
"standard": "11.0.1",
|
||||||
"taskr": "1.1.0",
|
"taskr": "1.1.0",
|
||||||
"wd": "1.10.3"
|
"wd": "1.10.3"
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"react": "^16.0.0",
|
|
||||||
"react-dom": "^16.0.0"
|
|
||||||
},
|
|
||||||
"jest": {
|
|
||||||
"testEnvironment": "node",
|
|
||||||
"roots": [
|
|
||||||
"test/"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
2
packages/next/.flowconfig
Normal file
2
packages/next/.flowconfig
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[ignore]
|
||||||
|
<PROJECT_ROOT>/.*.json
|
114
packages/next/package.json
Normal file
114
packages/next/package.json
Normal file
|
@ -0,0 +1,114 @@
|
||||||
|
{
|
||||||
|
"name": "next",
|
||||||
|
"version": "7.0.1",
|
||||||
|
"description": "Minimalistic framework for server-rendered React applications",
|
||||||
|
"main": "./dist/server/next.js",
|
||||||
|
"license": "MIT",
|
||||||
|
"repository": "zeit/next.js",
|
||||||
|
"bugs": "https://github.com/zeit/next.js/issues",
|
||||||
|
"homepage": "https://github.com/zeit/next.js",
|
||||||
|
"files": [
|
||||||
|
"dist",
|
||||||
|
"app.js",
|
||||||
|
"asset.js",
|
||||||
|
"babel.js",
|
||||||
|
"client.js",
|
||||||
|
"config.js",
|
||||||
|
"constants.js",
|
||||||
|
"document.js",
|
||||||
|
"dynamic.js",
|
||||||
|
"error.js",
|
||||||
|
"head.js",
|
||||||
|
"link.js",
|
||||||
|
"prefetch.js",
|
||||||
|
"router.js"
|
||||||
|
],
|
||||||
|
"bin": {
|
||||||
|
"next": "./dist/bin/next"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"build": "taskr",
|
||||||
|
"release": "taskr release",
|
||||||
|
"flow": "flow check",
|
||||||
|
"lint": "standard 'bin/*' 'client/**/*.js' 'examples/**/*.js' 'lib/**/*.js' 'pages/**/*.js' 'server/**/*.js' 'build/**/*.js' 'test/**/*.js'",
|
||||||
|
"prepublish": "npm run release"
|
||||||
|
},
|
||||||
|
"taskr": {
|
||||||
|
"requires": [
|
||||||
|
"./taskfile-babel.js"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"standard": {
|
||||||
|
"parser": "babel-eslint",
|
||||||
|
"ignore": [
|
||||||
|
"**/node_modules/**",
|
||||||
|
"**/examples/with-ioc/**",
|
||||||
|
"**/examples/with-kea/**",
|
||||||
|
"**/examples/with-mobx/**"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/core": "7.1.2",
|
||||||
|
"@babel/plugin-proposal-class-properties": "7.1.0",
|
||||||
|
"@babel/plugin-proposal-object-rest-spread": "7.0.0",
|
||||||
|
"@babel/plugin-syntax-dynamic-import": "7.0.0",
|
||||||
|
"@babel/plugin-transform-runtime": "7.1.0",
|
||||||
|
"@babel/preset-env": "7.1.0",
|
||||||
|
"@babel/preset-react": "7.0.0",
|
||||||
|
"@babel/runtime": "7.1.2",
|
||||||
|
"@babel/runtime-corejs2": "7.1.2",
|
||||||
|
"@babel/template": "7.1.2",
|
||||||
|
"ansi-html": "0.0.7",
|
||||||
|
"autodll-webpack-plugin": "0.4.2",
|
||||||
|
"babel-core": "7.0.0-bridge.0",
|
||||||
|
"babel-loader": "8.0.2",
|
||||||
|
"babel-plugin-react-require": "3.0.0",
|
||||||
|
"babel-plugin-transform-react-remove-prop-types": "0.4.15",
|
||||||
|
"case-sensitive-paths-webpack-plugin": "2.1.2",
|
||||||
|
"cross-spawn": "5.1.0",
|
||||||
|
"del": "3.0.0",
|
||||||
|
"etag": "1.8.1",
|
||||||
|
"event-source-polyfill": "0.0.12",
|
||||||
|
"find-up": "2.1.0",
|
||||||
|
"fresh": "0.5.2",
|
||||||
|
"friendly-errors-webpack-plugin": "1.7.0",
|
||||||
|
"glob": "7.1.2",
|
||||||
|
"hoist-non-react-statics": "2.5.5",
|
||||||
|
"htmlescape": "1.1.1",
|
||||||
|
"http-errors": "1.6.2",
|
||||||
|
"http-status": "1.0.1",
|
||||||
|
"launch-editor": "2.2.1",
|
||||||
|
"loader-utils": "1.1.0",
|
||||||
|
"minimist": "1.2.0",
|
||||||
|
"mkdirp-then": "1.2.0",
|
||||||
|
"nanoid": "1.2.1",
|
||||||
|
"path-to-regexp": "2.1.0",
|
||||||
|
"prop-types": "15.6.2",
|
||||||
|
"prop-types-exact": "1.2.0",
|
||||||
|
"react-error-overlay": "4.0.0",
|
||||||
|
"recursive-copy": "2.0.6",
|
||||||
|
"resolve": "1.5.0",
|
||||||
|
"send": "0.16.1",
|
||||||
|
"source-map": "0.5.7",
|
||||||
|
"strip-ansi": "3.0.1",
|
||||||
|
"styled-jsx": "3.1.0",
|
||||||
|
"terser-webpack-plugin": "1.0.2",
|
||||||
|
"unfetch": "3.0.0",
|
||||||
|
"url": "0.11.0",
|
||||||
|
"webpack": "4.20.2",
|
||||||
|
"webpack-dev-middleware": "3.4.0",
|
||||||
|
"webpack-hot-middleware": "2.22.3",
|
||||||
|
"webpack-sources": "1.2.0",
|
||||||
|
"webpackbar": "2.6.3",
|
||||||
|
"write-file-webpack-plugin": "4.3.2"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"react": "^16.0.0",
|
||||||
|
"react-dom": "^16.0.0"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@babel/preset-flow": "7.0.0",
|
||||||
|
"@taskr/clear": "1.1.0",
|
||||||
|
"@taskr/watch": "1.1.0"
|
||||||
|
}
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue