Commit Graph

173 Commits

Author SHA1 Message Date
Pim
90325c35ae feat(cli): use cjs dist stub in package (#4243)
* feat: use cjs dist stub for cli package

* fix: spawn nuxtBin directly

* keep node -r esm for optimal windows compatibility
2018-11-01 05:00:28 +01:00
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
08d298d35c test: update test/unit/nuxt 2018-10-31 12:51:44 +03:30
Pooya Parsa
39b558f59c
refactor core into sub-packages (#4202) 2018-10-31 00:12:53 +03:30
Pim
72961acabd feat: nuxt-loading enhancenments (#3891) 2018-10-29 19:18:40 +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
Pooya Parsa
46103e72ea
chore: packaging and development improvements (#4193) 2018-10-25 14:52:31 +03:30
Dmitry Molotkov
a3ba6e96ca fix: check styleResources for existence (#4155) 2018-10-25 14:25:05 +03:30
Clark Du
9df5f49e07 feat: split builder into more refined modules (#4171)
New packages:
- `@nuxt/webpack`
- `@nuxt/generator`
2018-10-24 20:25:18 +03:30
Jonas Galvez
5ec5cda1f8 chore: test utils cleanup (#4180) 2018-10-24 17:23:34 +03:30
Clark Du
811234ea02 ci: revert travis windows changes 2018-10-23 10:55:08 +01:00
Pooya Parsa
60dbc6ddc5
fix(builder): use require.resolve to get the path of babel-loader (#4150) 2018-10-23 01:18:06 +03:30
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
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
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
renovate[bot]
bc9071663f fix(deps): update all non-major dependencies (#3991)
* fix(deps): update all non-major dependencies

* Update package.json

* fix(deps): lock file update

* fix test due to changed css attribute order
2018-09-30 18:11:52 +02: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
renovate[bot]
163cfab240 chore(deps): update all non-major dependencies (#3986) 2018-09-27 11:05:12 +03:30
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
Dmitry Molotkov
9c3702c819 fix: use options.server values port, host, socket (#3942)
* user options.server values port, host, socket

* fix: Remove default value
2018-09-23 10:49:51 +01:00
Pooya Parsa
6f5137cd30
chore: upgrade dependencies (babel 7.1) (#3926) 2018-09-21 00:27:37 +04:30
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
Pim
88c9bae57b feat: add tests to check for changed files (#3893)
* feat: add tests to check for changed files

Make sure that if we are building or generating only files in buildDir and generate.dir are changed. If files in another location would also be changed due to a new config option, those locations should be guarded in lib/common/options so you cant set them lower then rootDir or srcDir.

* fix running tests inBand

use simpler path comparisons

* add debug logs for ci

use process.hrtime for waitFor test

* add debug logs for ci

use process.hrtime for waitFor test

* use writeFileSync should probably help

* use forEach instead of map when not returning a value

update waitFor test to compare values with jest

* fix appeveyor

* use lower limit than delay in waitFor test

revert isAppveyor export
2018-09-18 16:26:41 +02:00
Pim
226b90d4ae fix: prevent removing project by mistake due to build or generate paths (#3869) 2018-09-14 11:36:44 +04:30
Clark Du
0318a82177 fix: no-ssr 1.0 supports placeholder tag 2018-09-13 10:11:29 +01:00
Clark Du
281e2dc600 test: skip sockets test in windows platform 2018-09-13 10:07:34 +01:00
Clark Du
c77fa479f6 feat(webpack, builder): allow extending loader options (#3799) 2018-09-10 12:57:01 +04:30
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
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
Pim
43f639b88e fix: fallback should always be a string (#3792)
The SPA fallback option should always be a string, if the user configuration was specifed as boolean true it should have been replaced by the default string value (currently 404.html) in lib/common/options.js

Added test on empty string

Added missing test for spa-fallback.html
2018-08-23 19:33:02 +02:00
Clark Du
567dc860c1 feat: new filenames structure (#3789)
* feat: new filenames structure

* refactor: codes format

* refactor: remove [path] in output filename

* refactor: use chunkhash for js files

* refactor: remove normalizeFileName
2018-08-22 23:54:08 +02:00
Clark Du
e8414291b4
refactor: functional filename should be called from webpack (#3788)
@Atinux Improvement for #3787
2018-08-22 16:47:52 +01:00
Alexander Lichter
3e027269c0 feat: merge renderAndGetWindow options (#3761)
* feat: merge renderAndGetWindow options

* fix: typoe

* refactor: remove explicit comparison for truthy value

* fix: setup defaults correctly

* test: add custom params test
2018-08-22 17:14:15 +02:00
Clark Du
3612ecd435 feat: support functional filenames (#3787) 2018-08-22 17:08:51 +02:00
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
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
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
Clark Du
141a54a1e3
refactor: simplify killNuxt 2018-08-12 13:40:27 +01:00
Clark Du
c4792d247b refactor: options.test from env CI or test 2018-08-10 17:37:20 +01:00
Clark Du
11bd31e788 refactor: only show build errors in test mode 2018-08-10 17:13:56 +01:00
Clark Du
c8ced350b8 test:build in test env 2018-08-10 16:50:17 +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
Clark Du
9b060f3be1
feat: upgrade to Babel 7 (#3667) 2018-08-10 14:45:58 +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
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
7349adde18 fix: lint issue (#3660) 2018-08-08 19:08:38 +02:00
Sébastien Chopin
96feab15d4 tests: Fix failing test of exit code 2018-08-08 18:49:58 +02:00
Alexander Lichter
52d9629bac eslint: Prefer const over let (#3650) 2018-08-08 12:54:05 +02:00
Clark Du
6aaf839d54
feat: call global vue errorHandler in fetch and asyncData (#3652)
resolve #3335
2018-08-08 11:11:08 +01:00
Clark Du
fe6c524be1
refactor: add deprecation log for addVendor 2018-08-07 10:24:01 +01:00
Clark Du
e740f51efa fix: postcss test 2018-08-06 18:42:23 +01:00
Clark Du
c89af3c77f
test: only ignore waitfor test in appveyor (#3640) 2018-08-06 18:03:24 +01:00
Jonas Galvez
0b3a5a7e4e Disable waitFor() test due to random failure in appveyor 2018-08-06 07:04:10 -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
Alexander Lichter
8c85f2299e feat(csp): add reportOnly option (#3559) 2018-07-30 18:04:02 +02:00
Clark Du
5bdd0dd8a5
fix: undefined host in listening on message (#3595)
Fix error in #3529
2018-07-26 17:38:15 +01:00
Alexander Lichter
a37772f0f8 fix(csp): remove duplicate sha-256 hashes (#3574) 2018-07-26 15:48:28 +02:00
Clark Du
8c85edd08b
test: ignore multiple processes test cases in appveyor 2018-07-20 17:25:11 +01:00
Clark Du
d98c98360a refactor: smiplify csp 2018-07-01 23:43:30 +04:30
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
Clark Du
93696eb60b
Revert "test: bring cli test back" 2018-05-16 08:10:20 +01:00
Clark Du
7bbd6c67a5
test: for waitUntil 2018-05-15 13:10:07 +01:00
Clark Du
e962ee19e7
test: bring cli test back 2018-05-15 12:45:09 +01:00
Sébastien Chopin
3a76475ace
Merge pull request #3341 from clarkdo/babel_whitelisting
feat: make babel-loader exclude configurable
2018-05-14 09:50:24 +02:00
Sébastien Chopin
085f18a339
Update basic.dev.test.js 2018-05-14 09:22:44 +02:00
Sébastien Chopin
f275fc8069
Update transpile to return the opposite of exclude 2018-05-14 09:21:40 +02:00
Hannes Diercks
919b5395af
test(utils): make tests for relativeTo platform agnostic 2018-05-12 00:51:16 +02:00
Hannes Diercks
c017da10f6
fix(lib): ensure webpack inline loaders stay prefixed
when making a component path relative

fix https://github.com/nuxt/nuxt.js/issues/3314
2018-05-11 21:02:28 +02:00
Clark Du
a888136ac4
test: add string for build.transpile 2018-05-06 20:35:32 +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
Clark Du
6494818a5d
misc: bring module test back 2018-05-03 20:23:45 +01:00
Clark Du
592c7159a5
fix: use toMatch in ANSI color due to appveyor issue 2018-04-20 12:13:21 +08:00
Clark Du
39bc403994
test: generator build and format errors 2018-04-20 11:44:47 +08:00
Clark Du
468881abda
misc: remove obsolete log spy 2018-04-19 00:06:22 +08:00
Clark Du
e9a810a253
refactor: promise in test is passed 2018-04-18 23:56:03 +08:00
Clark Du
b6c45b81a9
refactor: basic ssr test 2018-04-18 23:50:49 +08:00
Clark Du
90419e331b
test: spa test 2018-04-18 23:12:27 +08:00
Clark Du
68560c6aae
test: error in callHook 2018-04-18 22:36:23 +08:00
Clark Du
0aea0d532c
misc(test): json format error 2018-04-16 00:40:42 +08:00
Clark Du
b7d54b2c75
test: add open-in-editor and youch test 2018-04-16 00:26:45 +08:00