74 Commits

Author SHA1 Message Date
Jack Hsu
47a4ff4bf5
fix(bundling): add a deprecation warning for users to update their project config before Nx 16 (#14913) 2023-02-10 08:46:23 -06:00
Chau Tran
5f32a9ae5c
docs(node): add prioritize flags to node (#14280) 2023-02-01 08:21:36 -06:00
youmoo
a8263f5b3b
docs(misc): remove the unnecessary to (#13945) 2022-12-28 16:38:00 -05:00
Miroslav Jonaš
75de1651a1
feat(core): add lockfile pruning to executors that generate package.json (#13734) 2022-12-09 12:17:36 -05:00
Craigory Coppola
8ab7f85ca1
fix(core): swap default method for output capture (#12535) 2022-10-12 22:06:32 +00:00
Jack Hsu
d05cc86ac7
fix(bundling): provide correct defaults scripts/styles options (#12157) 2022-09-21 17:16:52 +00:00
Jack Hsu
f49769a34a
feat(webpack): add webpack plugin (#11966) 2022-09-12 21:19:50 +01:00
Jonathan Cammisuli
e7ec91b9e0
feat(core): add file completion types for the nx language server (#11669) 2022-08-26 10:34:33 -04:00
Craigory Coppola
6948ffdcff fix(core): project graph should be read from executor context
These changes lower the risk of reading the cache during a write operation when multiple
processes are actively writing / reading the cache.
2022-08-19 12:50:07 -04:00
Herb
86b2015ddd
feat(node): expose webpack watchOptions to executor (#11453) 2022-08-18 12:34:33 -04:00
Jack Hsu
e45c2f24ba
feat(nextjs): improve support for custom server (#11325)
- Add new generator for custom server
- Add @nrwl/js:node executor for serving custom server
- Deprecate @nrwl/node:node in favor of the above
2022-08-02 18:37:23 +00:00
Leosvel Pérez Espinosa
6f2d5243c5
cleanup(misc): replace usage of rxjs-for-await (#11182) 2022-07-22 15:28:45 -04:00
Jack Hsu
3a63eeab21
chore(core): remove checks for built dependencies in executors since dependsOn guarantees that they are built (#11227) 2022-07-20 15:56:57 +00:00
Jay Tavares
99b245b08d
feat(node): add deleteOutputPath option to @nrwl/node:webpack executor (#10073) 2022-06-08 17:48:45 -04:00
Denis Frenademetz
7418ae19c2
fix(node): use webpack compilation hooks to emit package.json (#10229)
Use the webpack plugin system to create the package.json, this allows for developers to use plugins like
CleanWebpackPlugin which clears the dist before the compilation starts. If this plugin is used in
combination with the old method of generating the package.json, then it is deleted on compilation start.
2022-06-08 10:46:03 -05:00
Chau Tran
36010c1c0e
feat(js): implement a smarter compiler (tsc, swc) helper dependency d… (#10297)
* feat(js): implement a smarter compiler (tsc, swc) helper dependency detection

ISSUES CLOSED: #10270

* chore(js): add test to check for swc/helpers upon build lib
2022-05-20 14:14:30 -05:00
Chau Tran
7b9b0cd21b
fix(node): add workaround for handling sub processes in node:node executor (#10292)
In Nx 15, we plan to clean up runExecutor and implement proper process handling in runExecutor
upstream. This is a workaround that fix some racing-condition in node:node exexecutor downstream

ISSUES CLOSED: #9305
2022-05-17 16:13:58 -04:00
zhaoyunfeng
0e68c616fe
fix(node): webpack executor doesn't respect option outputFileName (#9740)
Co-authored-by: zhaoyunfeng <zhaoyunfeng@worktile.com>
2022-04-08 14:16:54 -04:00
Kalarrs Topham
f9223817b3
feat(node): add support for async webpack configuration (#9641) 2022-04-01 22:48:31 +00:00
Jack Hsu
cb4126c442
fix(react): pass configuration from context when reading build target options (#9656)
Closes #7924
2022-04-01 17:48:40 -04:00
Isaac Mann
753277ad50
docs(nxdev): customize webpack guide (#8857)
* docs(nxdev): customize webpack guide

* docs(core): add webpack-merge

* docs(core): webpack config example

Co-authored-by: Isaac Mann <isaacplmann+git@gmail.com>
2022-03-25 11:27:16 -04:00
Benjamin Cabanes
6dae32cc3a
docs(nxdev): support packages schemas metadata & discoverability (#9383) 2022-03-24 12:00:06 -04:00
Victor Savkin
d4b5c30eba
cleanup(core): remove the indirection left after inlining ta… (#9469) 2022-03-23 22:18:17 -04:00
hellivan
3824eebc23
fix(node): npm modules are not resolved correctly (#9284)
The current implementation of the node executor resolves all npm
modules that are referenced by the application from the root
node_modules folder. This behavior leads to runtime errors if any of
the project dependencies requires a different version of a package
than the project itself.

For example, if we have a project that depends on `express` in version
`4.17.3` (which on the other hand depends on `path-to-regexp` version
`0.1.7`) as well as on `path-to-regexp` in version `6.2.0`. In such
case `express` will throw a runtime error since it would load
`path-to-regexp` version `6.2.0` which is not API compatible.

For this reason, this commit changes the behavior of the node-executor
so that it completely ignores npm dependencies when calculating
resolve mappings.
2022-03-18 16:40:37 -04:00
Leosvel Pérez Espinosa
acc29e9593
fix(misc): support workspaces using a root tsconfig.json instead of tsconfig.base.json (#9195)
* fix(misc): support workspaces using a root tsconfig.json instead of tsconfig.base.json

* cleanup(angular): address pr feedback
2022-03-09 11:30:26 -05:00
Jack Hsu
7084d19dd6
feat(node): improve @nrwl/node:node executor to handle build process correctly in watch and no-watch mode (#9180)
* Build only triggered once on file change
* Kill previous process if it exists
* Wait for build process to finish before exiting
2022-03-04 08:09:08 -05:00
Chau Tran
229f71ef17
feat(nest): use nrwl/js to generate library (#9164)
* chore(js): rename GeneratorSchema to LibraryGeneratorSchema

* fix(js): add publishable to library generator schema

* feat(nest): use nrwl/js for library generator

* fix(js): update documentation about publishable

* chore(nest): fix depcheck for nrwl/js

* chore(nest): update test snapshot

* chore(nest): update nestjs/swagger version in node e2e

* chore(js): rename loadTsPlugins function

* fix(nest): default standaloneConfig for library generator to true

* feat(nest): rename tsPlugins to transformers and add tsPlugins to aliases

* chore(nest): fix e2e test on generate a new nest library

Co-authored-by: Chau Tran <ctran@Chaus-MacBook-Pro.local>
2022-03-03 15:47:06 -05:00
Jack Hsu
95f5a085fa
feat(node): consolidate js and node plugins (#9086)
* chore(node): update docs after consolidating js and node plugins

* feat(node): consolidate js and node plugins
2022-02-23 16:59:03 -05:00
Chau Tran
7da9fbbe88
fix(js): migrate swc executor off of rxjs (#8728)
* fix(js): clean up swc

* fix(js): clean up swc

* fix(js): add incremental to TypeCheckOptions

* fix(js): use async iterator with tsc executor. remove rxjs deps

* chore(js): remove unnecessary test and commented out code

* fix(js): add else statement for readability

* fix(js): ensure error() and done() always set error and done fields

* chore(js): clean up create async iterable tests

* fix(js): ensure pushQueue is resolved first if there are still items to be resolved before done

Co-authored-by: Chau Tran <ctran@Chaus-MacBook-Pro.local>
2022-02-15 14:16:30 -06:00
Phillip Barta
be91d1f99a
fix(core): stop inlining tsconfig-paths-webpack-plugin and use version with fix (#8357) 2022-01-27 08:59:46 -05:00
Victor Savkin
4e474773bf
Revert "feat(core): show dep types in dep graph (#2760) (#8132)"
This reverts commit 31bb2f36261fdf222e9e8e962227dcd911dfee66.
2022-01-25 15:23:25 -05:00
MaximSagan
31bb2f3626
feat(core): show dep types in dep graph (#2760) (#8132) 2022-01-18 10:20:09 -07:00
Phillip Barta
e57cef0901
cleanup(repo): use devkit instead of devkit reexports from workspace (#7773) 2021-12-21 21:06:31 +00:00
Craigory Coppola
5b95b4c06f
fix(node): support for typescript webpack plugins (#8171) 2021-12-15 20:43:15 -05:00
Christopher Dieringer
9bedb80f20
fix(node): fix source-map-support dependency (#7728) 2021-11-17 00:23:28 +00:00
Chau Tran
421d4f2f02
feat(node): add outputFileName to build executor (#7708)
Fixes  #4969
2021-11-11 17:01:20 -06:00
Craigory Coppola
07c256b4dc
heckout (#7657)
fix(node): nrwl/node:package should support dotfile assets
2021-11-08 13:43:07 -05:00
Chau Tran
9356f73380
feat(node): add tsPlugins to node:package executor (#7477)
node:build currently has tsPlugins options to invoke TypeScript Plugins (transformers). This PR
brings the same functionality to node:package

ISSUES CLOSED: #7420
2021-10-25 20:03:56 -05:00
Christopher Dieringer
289ebfc891
feat(node): support buildTargetOptions in node:execute (#7002)
Closes #7001
2021-10-18 09:42:12 -05:00
Jack Hsu
bedad1cc77
fix(core): patch resolve logic for tsconfig paths (#7387) 2021-10-15 20:47:18 +00:00
Miroslav Jonaš
b23f2d8b80
feat(core): extract project graph external nodes (#7340) 2021-10-15 10:08:12 -04:00
Jack Hsu
8779a22be3
chore(core): move webpack utils into web and node packages (#7367) 2021-10-14 18:50:46 +00:00
Craigory Coppola
79cf69b4e4
feat(core): consolidate nx.json and workspace.json (#6642)
* feat(core): consolidate settings between workspace.json + nx.json

workspace.json (and linked project.json files) now contain all project specific settings.
nx.json now contains all settings that affect the whole workspace.

* chore(core): fix angular unit tests w/ new config

* chore(core): fix failing tests

* chore(core): fix formatting

* chore(core): fix more tests

* chore(core): normalize-nx-json feedback

* chore(core): Fix more unit tests

* chore(core): fix remaining tests in workspace

* chore(linter): fix remaining linter tests

* chore(core): fix remaining spec + build issues

* chore(core): formatting fixes

* feat(core): migration script to move config options to new locations

* chore(core): fix e2e tests

* chore(core): run format

* chore(react-native): fix failing tests

Signed-off-by: AgentEnder <craigorycoppola@gmail.com>

* feat(core): move properties to new location during format step

Signed-off-by: AgentEnder <craigorycoppola@gmail.com>

* feat(core): initial pass on ngcli-adapter for property consolidation

Signed-off-by: AgentEnder <craigorycoppola@gmail.com>

* chore(misc): fix tests

Signed-off-by: AgentEnder <craigorycoppola@gmail.com>

* docs(core): update docs with changes

* chore(misc): fix tests

* chore(core): code review changes

updateWorkspaceJson -> updateWorkspace, no longer uses updater function

Signed-off-by: AgentEnder <craigorycoppola@gmail.com>

* chore(core): fix bug in ngcli impl

* fix(core): fix bug in ngcli-adapter

Signed-off-by: AgentEnder <craigorycoppola@gmail.com>

* fix(core): fix ngcli-adapter

Signed-off-by: AgentEnder <craigorycoppola@gmail.com>

* chore(core): fix workspace e2e

* chore(core): fix nx-plugin e2e

* fix(core): move defaultProject to nx.json

* chore(core): fix broken workspace test

* chore(core): formatting

* chore(core): fix workspace format

* chore(core): add nxJson to ExecutorContext

Signed-off-by: AgentEnder <craigorycoppola@gmail.com>

* chore(core): remove all references ot `NxProjectConfiguration` from our code

* chore(core): Review Changes

* fix(core): update new config locations v13 migration
2021-10-14 10:42:47 -04:00
Jack Hsu
3fe973e012
chore(node): optimize node webpack build (#7337) 2021-10-13 14:13:40 -04:00
Jack Hsu
4d6df58ac8
chore(node): remove build options deprecated since Nx 11 (#7331) 2021-10-13 07:47:51 +02:00
Jack Hsu
724b0c0e3c
feat(core): upgrade to webpack 5 (#7283)
* feat(core): upgrade to webpack 5

* chore(core): update webpack 5 docs
2021-10-13 00:34:28 -04:00
Lars von Qualen
6b37e4b2f1
feat(node): builder should support multiple entry files (#5741)
Adds a new option to the node build executor in order to enable multiple entry files.
2021-08-20 15:49:56 +00:00
Chau Tran
8297386d80
feat(node): add TS plugins support for build executor (#6677)
* feat(node): add TS plugins support for build executor

ISSUES CLOSED: #2147

* docs(node): add tsPlugins to node build executor schema

* chore(node): reformat schema json

* chore(repo): update yarn.lock

* cleanup(node): adjust tsPlugins test for node build executor

* cleanup(node): remove packageJson check for tsPlugins test

* cleanup(node): increase timeout for tsPlugins e2e test

* cleanup(node): use type import for typescript types instead of importing typescript

Co-authored-by: Chau Tran <ctran@Chaus-MacBook-Pro.local>
Co-authored-by: Miroslav Jonas <missing.manual@gmail.com>
2021-08-18 17:48:18 -04:00
Miroslav Jonaš
3aca62af68
cleanup(repo): remove unused ext from file data and fix ext regex matcher (#6550) 2021-08-04 09:45:07 -04:00
Juri Strumpflohner
dc38003751
fix(node): change default debug port to 9229 to allow for easy debugging (#6536) 2021-07-30 10:32:57 -07:00