* 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
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
* fix(testing): jest.preset.ts => jest.preset.js
* fix(testing): update to export default
* fix(testing): migration for moving to export default
* fix(testing): add eslint ignore comments for jest config properties
fixes: #10021
* fix(testing): update tsconfig.spec.json for next apps with project parserOptions
fixes: #9982
* fix(testing): prevent renaming root jest preset
fixes: #9973
* fix(testing): update snapshots for export default
* fix(testing): bump migration version to run
* fix(testing): make sure default jest tests pass for various projects
* fix(js): generate correct jest config for --compiler=swc --js
* feat(testing): move jest config to .ts
move jest config and preset to ts files
ISSUES CLOSED: #8344
* fix(testing): update tests for jest.config.ts changes
update tests broken by renaming jest fils to ts files
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.
* 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>
* 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>
disable name mangling when building for production with optimization on,
in order not to break
features relying on runtime reflection
ISSUES CLOSED: #8537
* fix(testing): add .test. files to spec tsconfig template
add support for .test.ts and with supportTsx .test.{js|tsx|jsx} files
in the tsconfig.spec.json template.
Note each package that excludes testing files will need to be updated to
exclude the new files (coming in future commits)
* fix(angular): add .test.ts support in tsconfigs
add .test.ts in angular jest template
update angular generators to exclude test files
* fix(gatsby): add .test. file prefixes to tsconfig ignore
ignore the new .test.{js|ts|jsx|tsx} files added to jest configs
* fix(react): add .test. file prefix to app/lib tsconfigs
add .test.{ts|js|tsx|jsx} files to be excluded by app/lib tsconfig
* fix(node): add .test. file prefix to app/lib tsconfig
add .test.{ts|js|tsx|jsx} files to be excluded by app/lib tsconfig
ISSUES CLOSED: #7263
* fix(nest): update tests for new .test.ts files in tsconfig
update tests to account for changes in node generators which add .test.ts to the exclude of
tsconfigs
* fix(express): update tests to account for new tsconfig changes
updated snapshots
added new patterns for tsconfig
* fix(linter): update snapshots for new tsconfig changes
snapshot updated to include new .test.ts file changes for tsconfig
* fix(node): update testing to account for spec tsconfig changes
add .test.ts files in e2e tests
* fix(testing): add migration for tsconfig changes
initial migration and test for tsconfig changes
* chore(testing): add to migrations collection
add the update-ts-config-for-test-filenames to migrations
* fix(testing): fix filesystem issue with jest tests
mock readConfig to always return an basic config to prevent issues of not finding a config in non
linux environments, aka missing /root
* cleanup(testing): update error message
update message logged when tsconfig isn't found to mention what was trying to be accompished so it
can be manually updated if desired.
node:build currently has tsPlugins options to invoke TypeScript Plugins (transformers). This PR
brings the same functionality to node:package
ISSUES CLOSED: #7420
* feat(core): standalone project configuration is default
* chore(core): changes to e2e tests
* fix(core): intuit projects when inside their directories when using project.json files
* chore(core): e2e changes
* fix(core): standalone configurations work with npm-project generator
* chore(core): e2e tests should use standalone configurations
* chore(core): e2e fixes per review