Commit Graph

322 Commits

Author SHA1 Message Date
Clark Du bed0714fad
feat: modern build (#4231)
* feat: modern build

* refactor: use single module import for lodash

* refactor: add credit comment for modern plugin

* feat: ssr modern build

* fix: not null check for request

* fix: not null check for request.headers

* feat: add modern argument on build command

* refactor: simpilfy filenames for modern

* refactor: use packages/webpack src instead of dist in test

* test: add feature test for modern build
2018-10-31 15:52:35 +00:00
Pooya Parsa 39b558f59c
refactor core into sub-packages (#4202) 2018-10-31 00:12:53 +03:30
Paul Gascou-Vaillancourt 208eba3867 fix(app): Throw error only if value is undefined (#4206) 2018-10-27 20:11:42 +03:30
Clark Du 79eb9c8010
Set up CI with Azure Pipelines (#4190) 2018-10-25 12:33:07 +01:00
Dmitry Molotkov a3ba6e96ca fix: check styleResources for existence (#4155) 2018-10-25 14:25:05 +03:30
Pim 96bdcaba01 fix(app): lint all templates (#4175) 2018-10-24 17:16:06 +03:30
Clark Du 811234ea02 ci: revert travis windows changes 2018-10-23 10:55:08 +01:00
Clark Du 818c66f567
ci: use travis instead of appveyor (#4168)
<!--- Provide a general summary of your changes in the title above -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [ ] Bug fix (a non-breaking change which fixes an issue)
- [ ] New feature (a non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)


## Description
<!--- Describe your changes in detail -->
<!--- Why is this change required? What problem does it solve? -->
<!--- If it resolves an open issue, please link to the issue here. For example "Resolves: #1337" -->


## Checklist:
<!--- Put an `x` in all the boxes that apply. -->
<!--- If your change requires a documentation PR, please link it appropriately -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly. (PR: #)
- [ ] I have added tests to cover my changes (if not applicable, please state why)
- [ ] All new and existing tests are passing.
2018-10-22 14:02:17 +01:00
Alexander Lichter f27939d4a7 feat(cli): support async nuxt.config.js (#4021) 2018-10-18 19:27:35 +03:30
Pooya Parsa 9c1e0d1743 feat: migrate nuxt into monorepo (#4051)
Co-authored-by: Clark Du <clark.duxin@gmail.com>
Co-authored-by: Pooya Parsa <pooya@pi0.ir>
2018-10-18 00:58:25 +03:30
Alexander Lichter 411e89e52c test(custom-dirs): fix custom-asset dir test (#4136) 2018-10-17 01:25:56 +03:30
Alexander Lichter ae2d31ed19 fix(layouts): resolving with nested custom dir (#4135) 2018-10-17 01:25:28 +03:30
Clark Du 521c3778bd
fix: style module with extractCSS not work well (#4093)
* fix: style module with extractCSS not work well

* test: improve extract css test

* fix: exract css name
2018-10-11 22:53:02 +01:00
Clark Du 61407fec1d refactor: config Postcss preset and plugins together (#3927) 2018-10-09 15:56:11 +03:30
Jonas Galvez a3dd7dad6b feat: configurable global name (#4012)
Co-authored-by: JuliaNeumann <jn.julianeumann@gmail.com>
2018-10-09 15:38:33 +03:30
Felipe Lübe de Bragança 232bc0196f feat: missing pages directory warning (#4054)
## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [ ] Bug fix (a non-breaking change which fixes an issue)
- [x] New feature (a non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)


## Description
Resolves #3920 by adding a warning during the build process and a small disclaimer into the default page component.


## Checklist:
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly. (PR: #)
- [x] I have added tests to cover my changes (if not applicable, please state why)
- [x] All new and existing tests are passing.
2018-10-05 13:37:55 +01:00
Clark Du 0393bf781c feat: use understandable file names for analyze mode (#4014)
* feat: use understandable file names for analyze mode

* test: asset name for analyze mode

* refactor: add warning message for analyze mode

* refactor: move analyze warning to builder

* test: analyze warning message
2018-09-30 18:11:20 +02:00
Dmitry Molotkov df148a896e fix: properly serialize undefined in vuex store (#3913)
* allow to serialize undefined variable in vuex store

* test properly

* fix test

* lock
2018-09-25 10:51:07 +02:00
Clark Du 1c34651baa fix: css-loader 1.0 removed alias (#3741)
BREAKING CHANGE
2018-09-19 13:16:21 +04:30
Tatsuyuki Ishi d1f6f0dc09 loading: add throttle option to skip progress for fast loads (#3886)
* loading: add throttle option to skip progress for fast loads

* Disable some tests relying on internals
2018-09-18 18:16:27 +02:00
Dmitry Molotkov 5af65527b0 allow plugin in directory with index.js file (#3908)
* allow plugin in directory with index.js file

* add test for plugin in dir

* fix: refacto plugins key
2018-09-18 18:06:55 +02:00
Sébastien Chopin 6975655d78
feat: Overwrite store.registerModule (#3909)
* feat: Overwrite store.registerModule

Make `store.registerModule` works seamlessly with server-side rendering.

* fix: test failure
2018-09-18 17:21:25 +02:00
Clark Du 281e2dc600 test: skip sockets test in windows platform 2018-09-13 10:07:34 +01:00
Clark Du 85c9c00b73 fix: no-ssr test error 2018-09-13 10:02:49 +01:00
Alexander Lichter 1e0219543a feat: automatically include env variables starting with NUXT_ENV_ (#3862) 2018-09-09 01:38:25 +04:30
Alexander Lichter f87992530e feat(webpack/client): minify extracted css assets (#3857) 2018-09-09 01:18:46 +04:30
Alexander Lichter b74d537cba feat(renderer): make compression middleware customizable (#3863) 2018-09-09 00:48:14 +04:30
Alexander Lichter 6e8a51509c feat(builder, module): allow error layouts to be added through addLayout. closes #3194. (#3834) 2018-09-02 13:52:10 +04:30
Jonas Galvez 72479687d9 feat(core, cli): builtin support of https and unix sockets (#3831)
Co-authored-by: Aurélien Chrétien <aurelien@manager.one>
Co-authored-by: Rémy Sanchez <remy.sanchez@hyperthese.net>
2018-09-02 13:50:25 +04:30
Clark Du b11e9c0e51
feat: upgrade eslint to 5.x (#3494)
- [ ] babel-eslint https://github.com/babel/babel-eslint/issues/664
- [x] eslint-config-standard-jsx https://github.com/standard/eslint-config-standard-jsx/issues/32
- [x] eslint-config-standard to be stable release https://github.com/standard/eslint-config-standard/issues/123
- [x] eslint-plugin-html
- [x] eslint-plugin-import
- [x] eslint-plugin-jest
- [x] eslint-plugin-node
- [x] eslint-plugin-promise
- [x] eslint-plugin-standard https://github.com/standard/eslint-plugin-standard/issues/29
- [x] eslint-plugin-vue https://github.com/vuejs/eslint-plugin-vue/pull/504
- [x] eslint-plugin-react https://github.com/yannickcr/eslint-plugin-react/releases/tag/v7.10.0
2018-08-31 21:34:12 +01:00
Pooya Parsa 83d9dc4105 test: add tests for validate with error 2018-08-25 22:24:16 +04:30
Jonas Galvez 608b913b8a feat: async validate() (#3797) 2018-08-25 14:12:00 +04:30
Clark Du 3f7c5f64ed
fix: async fetch and asyncData not trigger ErrorHandler (#3781) 2018-08-22 14:10:43 +01:00
Sébastien Chopin 820f0fae1a
[WIP] Hooks: render:routeContext and render:routeDone (#3773)
* hooks: Add render:routeDone hook

* hooks: Deprecate render:context and add render:routeContext

* refactor: delegate context to routeContext

* test: Add test for render:routeDone hook

* lint: Fix lint issue
2018-08-21 18:35:46 +02:00
Jonas Galvez f0f307553f Filter out non-strings (serverMiddleware watch fix) (#3771)
* Filter out non-strings

* Add serverMiddleware function

* Add serverMiddleware function (2)

* Add serverMiddleware function (3)
2018-08-20 16:43:23 +02:00
Clark Du b920f22483
refactor: add hooks (#3772) 2018-08-20 15:20:45 +01:00
Jonas Galvez 97910de3ec Improve hooks in nuxt.config.js (#3766)
* Improve hooks in nuxt.config.js

* No mult-line for
2018-08-20 14:19:09 +02:00
Alexander Lichter e26f23b74a feat: respect beforeEnter for route if set (#3760)
* feat: respect beforeEnter for route if set

* test: add redirecting beforeEnter function and test
2018-08-18 18:15:37 +02:00
Clark Du 432720b8c8 fix: appveyor test failure (#3754)
* fix: appveyor test failure

* ci: bring back yarn cache

* ci: turn off matrix

* refactor: use babel instead of esm in jest

* refactor: use es modules in fixtures
2018-08-17 22:25:23 +02:00
Clark Du c395e20e5b refactor: mock consola in test 2018-08-16 17:23:26 +01:00
Clark Du 50be809b1c
refactor: plugin sanity check (#3743) 2018-08-16 16:34:32 +01:00
Clark Du a22cabe949 test: for postcss preset 2018-08-15 15:53:31 +01:00
Clark Du 128dcbe266 refactor: add build.postcss.preset config 2018-08-15 15:22:26 +01:00
Jonas Galvez f184016197 Server middleware watcher (#3718)
See https://github.com/nuxt/nuxt.js/issues/1509

Status: improving tests.
2018-08-14 19:35:25 +01:00
Clark Du 5ddc394a50
fix: return 404 if extendRoutes without Component (#3608)
resolve #3351
2018-08-13 17:27:20 +01:00
Anthony Fu 0dff1b8fe9 feat: support `server` option in `nuxt.config.js` to set PORT and HOST (#3701)
* feat: support `server` option in `nuxt.config.js` to set PORT and HOST

* lint

* change the conifg priority to `argv > nuxt.config.js > env.NUXT_PORT > env.PORT > package.json > default`

* check for `options.server`
2018-08-12 15:26:30 +01:00
Clark Du 937dfe8183 refactor: add listening message in cli tes 2018-08-12 14:35:24 +01:00
Clark Du b60c4fd432 refactor: add build.quiet config 2018-08-12 14:35:24 +01:00
Clark Du 3a825dc773
fix: error when plugin not specify js extension (#3692) 2018-08-11 19:18:31 +01:00
Alexander Lichter 960f4fe47e feat: make appTemplatePath customizable (#3678)
related: #1925
2018-08-10 16:23:09 +01:00
Jonas Galvez 75d6c4e33a Display proper error when specified plugin isn't found (#3672)
Picking up on https://github.com/nuxt/nuxt.js/pull/3434 -- synced with dev and tests included.
2018-08-10 15:48:27 +01:00
Jonas Galvez 1842a3b5cb Relative path in custom watchers (#3673)
This was missing in #3633.
2018-08-10 11:37:05 +01:00
Jonas Galvez 8d21b60a24 Render dist options (#3671)
Picking up on [yet another abandoned PR](https://github.com/nuxt/nuxt.js/pull/2933/files). Made all changes suggested by @clarkdo and wrote a test.
2018-08-10 10:34:55 +01:00
Alexander Lichter b4d81dc584 lint: require await in async function (#3676)
* lint: require await in async function

* lint: replace "error" with 2 in config
2018-08-10 08:41:23 +01:00
Alexander Lichter cb18aa6f53 feat: add Vue.config configuration to nuxt.config.js (#3655)
After #3564 and the request of #3427  (plus #3452) I decided to add a dedicated `vueConfig`object to the `nuxt.config.js` file.

The keys will be projected on Vue.config.

By default, `Vue.config.performance` is enabled in dev mode, `Vue.config.silent` is enabled in production mode.

Doc PR incoming.

Resolves: #2910, #3427
2018-08-08 20:05:23 +01:00
Jonas Galvez a522aaf125 misc: add user-defined chokidar files to watch (2) (#3633)
* misc: add user-defined chokidar files to watch

* Improved user-defined chokidar files setup

* Improved user-defined chokidar files setup (2)

* Added custom file for CLI watch test

* Added cli.dev.test.js

* Added cli.dev.test.js (2)

* Remove cli-start/cli.dev, just use cli.test

* Refactored CLI test

* Missing dot in fname

* Improved user-defined chokidar files setup (3)

* Fix killNuxt()

* Remove genHandlers

* Refactored CLI test (2)

* Refactor exitCode

* Remove debugging code

* Remove debugging code (2)

* Linting

* Linting (2)

* Disable nuxt-start test for now

* Disable nuxt-start test for now (2)

* Tweaking nuxt-start test

* Tweaking nuxt-start test (2)

* Tweaking nuxt-start test (3)

* Fix ext

* Tweaked wait params

* Fix conflicts

*  hotfix

* nuxt-dev tweak

* Add blank line after variables declaration

* Disable waitFor() test due to random failure in appveyor

* Fixed error msg

* Refactored into builder.js

* Refactored into builder.js (2)

* Remove unnecessary import from nuxt-dev

* Fixed nuxt-dev test

* Debugging nuxt-dev test

* Debugging nuxt-dev test (2)

* Skip in appveyor

* Linting

* Requested changes

* Hook into nuxt-dev

* Hook into nuxt-dev (2)

* Get fname

* Get fname (2)

* Get fname (3)

* Change hook name

* Fixed conflict
2018-08-08 19:51:57 +01:00
Clark Du 6aaf839d54
feat: call global vue errorHandler in fetch and asyncData (#3652)
resolve #3335
2018-08-08 11:11:08 +01:00
Jonas Galvez de5b36a574 `loading: false` e2e test fix (#3635)
*  hotfix

* Fixed manual loading test

* Disable waitFor() test due to random failure in appveyor
2018-08-06 20:42:26 +02:00
Clark Du dbbcac1f4f fix: add cssnano in ssr test 2018-08-06 18:42:23 +01:00
Jonas Galvez fe9dd166df Fixed conflicts 2018-08-06 06:45:39 -03:00
Jonas Galvez 3f1d634fb7 Consistent parens in arrow functions (#3630)
* Minor consistency enhancements

* Arrow parenthesis consistency

* Change linting rule

* Fix typo

* Update .eslintrc.js to only require parens for blocks

* Update style according to brace-only suggestion

* Remove --fix from lint

* Tweak no-loading time (failing test)

* Tweak no-loading time (failing test) (2)

* Tweak no-loading time (failing test) (3)

* Tweak no-loading time (failing test) (4)

* Tweak no-loading time (failing test) (5)
2018-08-06 02:12:44 +02:00
Jonas Galvez 0e42e98751 Add `loading: false` option to pages (#3629)
* Add hasManualLoading

* Add hasManualLoading (2)

* Debugging

* Debugging (2)

* Change 'manual' to false

* Add custom-page-loading example

* Add custom-page-loading example (2)

* Changed approach

* Added custom-page-loading/README.md

* Change running loading time in about.vue

* Patch loadAsyncComponents

* Added final page

* Changed approach (2)

* Fixed example

* Fixed example (2)

* Fix example package name

* Linting

* Improved examples (more to the point)

* Linting (2)

* Fix typo

* Adjust indentation

* Added noloading.vue to basic fixture

* Added noloading tests

* Linting (3)

* Debugging test

* Linting (4)

* Debugging test (2)

* Debugging test (3)
2018-08-05 23:56:49 +02:00
Clark Du 241a071a3e test: add postcss custom feature test case 2018-07-25 17:58:24 +01:00
Alexander Lichter 65d318d475 refactor: remove unused variables (#3576) 2018-07-25 09:00:21 +01:00
Clark Du 6b8e9fa1be misc: revert appveyor condition in test 2018-07-24 17:30:31 +01:00
Clark Du daf1c28dbf test: disable http2.push in appveyor 2018-07-24 11:44:08 +01:00
Clark Du 8c85edd08b
test: ignore multiple processes test cases in appveyor 2018-07-20 17:25:11 +01:00
Clark Du 9afd6a55dd
refactor: obselete AggressiveSplittingPlugin 2018-07-17 12:13:06 +01:00
Clark Du 2b5c367efa refactor: use eslint-plugin-vue instead of eslint-plugin-html (#3517) 2018-07-12 14:03:50 +02:00
Clark Du a554a97232
misc: remove nonexistent config in config test 2018-07-04 09:31:02 +01:00
Clark Du 3c54d26c76 test: refactor cli tests (#3357)
* refactor: add untility for waiting until condition completed

* test: cli

* test: separate config of generate and build in cli test

* test: increase timeout of cli test slightly

* refactor: move waitUntil to test utils

* fix: use waitUntil in test utils
2018-06-06 17:01:43 +04:30
Pooya Parsa 8acef8d01e feat: use postcss-preset-env instead of postcss-cssnext (#3291)
https://moox.io/blog/deprecating-cssnext
2018-06-02 01:41:55 +04:30
Clark Du 93696eb60b
Revert "test: bring cli test back" 2018-05-16 08:10:20 +01:00
Clark Du e962ee19e7
test: bring cli test back 2018-05-15 12:45:09 +01:00
Clark Du 63520aa337
test: build.transpile 2018-05-06 20:29:59 +01:00
Clark Du 25d752630a
test: render:context hook 2018-05-03 20:49:37 +01:00
Pooya Parsa a8cbbf03ce always enable resourceHints 2018-05-02 14:29:55 +04:30
Pooya Parsa e8079fc740 test: force enable resourceHints for basic fixture 2018-05-02 14:29:55 +04:30
Alexandre Villeneuve 85cfc625ee feat: optional pug support (#3206) 2018-04-21 11:57:48 +04:30
Clark Du c7cb0ea562
test: remove debug test 2018-04-16 00:25:42 +08:00
Clark Du 5cd4fe8422
misc: remove deprecate.test 2018-04-13 14:38:10 +08:00
Clark Du 89bdd71591
refactor: perf-loader and test 2018-04-02 20:08:31 +08:00
Clark Du 8c9a3e70e4
test: skip deprecate due to no deprecated api now 2018-03-30 16:59:44 +08:00
Pooya Parsa 0dd35fb047 feat: css modules support (#3149) 2018-03-29 23:56:42 +04:30
Clark Du ef7a42649d misc: improve coverage and packaging (#3121)
nuxt-start and nuxt/legacy are also coming!
2018-03-28 02:58:17 +04:30
Pooya Parsa 13bae199ab feat(test): add extraxt-css fixture 2018-03-24 12:31:57 +04:30
Clark Du 46f7a0bc70 test: enable cssSourceMap when devtool not null 2018-03-22 20:30:23 +04:30
Pooya Parsa d6a403c045 test: remove stats: false.
This should happen automatically for CI environments.
2018-03-22 20:30:23 +04:30
Clark Du eb6ee86845
test: remove error hook in module.test.js 2018-03-19 10:20:20 +08:00
Clark Du b1199f8fa4
test: remove hook assetion in error.test.js 2018-03-19 10:13:05 +08:00
Pooya Parsa c4068c3a70 working tests 2018-03-19 03:11:14 +03:30
Pooya Parsa ed22e78a75 basic migration to jest 2018-03-18 23:01:32 +03:30
Pooya Parsa 5abf524b15 Merge branch 'dev' into feat/esm 2018-03-16 19:48:57 +03:30
Pooya Parsa 53e98a958c feat: rewrite core to esm 2018-03-16 19:42:06 +03:30
William Chong 27e1423e24 add test to extendRoutes redirect 2018-03-15 19:57:00 +08:00
Clark Du 1080dfdbd6
deprecate: remove callback in module definition 2018-03-15 18:09:36 +08:00
Clark Du 78aac2df26
deprecate: remove nuxt.plugin 2018-03-15 17:49:14 +08:00
Clark Du e0005dddea
deprecate: remove options.dev in build.extend() 2018-03-15 17:37:43 +08:00
Clark Du 90d9283e70
deprecate: remove context.isServer/isClient 2018-03-15 17:19:36 +08:00
Clark Du ca1c2b2ff3
test: add deprecated cases for vendor and module 2018-03-15 16:29:33 +08:00