88 Commits

Author SHA1 Message Date
Jack Hsu
f743808bd5
fix(testing): migration for getJestProjects -> getJestProjectsAsync handles both CJS and ESM (#28299)
This PR updates the Jest migration so it handles both CJS and ESM format
for Jest config file. We now generate with ESM so those need to be
handled. There are four combinations:

1. `require` (CJS) with `module.export` (CJS)
2. `import` (ESM) with `export default` (ESM)
3. `require` (CJS) with `export default` (ESM)
4. `import` (ESM) with `module.export` (CJS)

(1) and (2) should cover almost all cases, and (3) and (4) are there
just in case. If the format isn't matching what we generate, then just
bail.

<!-- Please make sure you have read the submission guidelines before
posting an PR -->
<!--
https://github.com/nrwl/nx/blob/master/CONTRIBUTING.md#-submitting-a-pr
-->

<!-- Please make sure that your commit message follows our format -->
<!-- Example: `fix(nx): must begin with lowercase` -->

<!-- If this is a particularly complex change or feature addition, you
can request a dedicated Nx release for this pull request branch. Mention
someone from the Nx team or the `@nrwl/nx-pipelines-reviewers` and they
will confirm if the PR warrants its own release for testing purposes,
and generate it for you if appropriate. -->

## Current Behavior
<!-- This is the behavior we have today -->

## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->

## Related Issue(s)
<!-- Please link the issue being fixed so it gets closed when this is
merged. -->

Fixes #
2024-10-04 11:04:21 -04:00
Emily Xiong
10fb324746
chore(testing): add deprecated comment for getJestProjects (#28178)
<!-- Please make sure you have read the submission guidelines before
posting an PR -->
<!--
https://github.com/nrwl/nx/blob/master/CONTRIBUTING.md#-submitting-a-pr
-->

<!-- Please make sure that your commit message follows our format -->
<!-- Example: `fix(nx): must begin with lowercase` -->

<!-- If this is a particularly complex change or feature addition, you
can request a dedicated Nx release for this pull request branch. Mention
someone from the Nx team or the `@nrwl/nx-pipelines-reviewers` and they
will confirm if the PR warrants its own release for testing purposes,
and generate it for you if appropriate. -->

## Current Behavior
<!-- This is the behavior we have today -->

## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->

## Related Issue(s)
<!-- Please link the issue being fixed so it gets closed when this is
merged. -->

Fixes #
2024-10-02 10:19:15 -04:00
Jack Hsu
a637f9eef9
chore(repo): remove v16 migrations (#28220)
<!-- Please make sure you have read the submission guidelines before
posting an PR -->
<!--
https://github.com/nrwl/nx/blob/master/CONTRIBUTING.md#-submitting-a-pr
-->

<!-- Please make sure that your commit message follows our format -->
<!-- Example: `fix(nx): must begin with lowercase` -->

<!-- If this is a particularly complex change or feature addition, you
can request a dedicated Nx release for this pull request branch. Mention
someone from the Nx team or the `@nrwl/nx-pipelines-reviewers` and they
will confirm if the PR warrants its own release for testing purposes,
and generate it for you if appropriate. -->

## Current Behavior
<!-- This is the behavior we have today -->

## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->

## Related Issue(s)
<!-- Please link the issue being fixed so it gets closed when this is
merged. -->

Fixes #
2024-10-02 10:18:41 -04:00
Jason Jean
a64a7e2db9
feat(core): cleanup for v19 (#22993) 2024-05-01 12:12:32 -04:00
Jason Jean
396ffc4636
feat(core): enable project crystal by default (#21403)
Co-authored-by: Katerina Skroumpelou <sk.katherine@gmail.com>
Co-authored-by: Jack Hsu <jack.hsu@gmail.com>
Co-authored-by: Colum Ferry <cferry09@gmail.com>
Co-authored-by: Leosvel Pérez Espinosa <leosvel.perez.espinosa@gmail.com>
Co-authored-by: Emily Xiong <xiongemi@gmail.com>
Co-authored-by: Nicholas Cunningham <ndcunningham@gmail.com>
2024-02-02 03:40:59 -05:00
Craigory Coppola
fec681be13
fix(testing): target defaults migration should not throw if workspace contains inferred projects (#20189) 2023-11-10 18:45:50 -05:00
Jason Jean
b0d179904d
feat(testing): add migration for moving test target defaults (#19993) 2023-11-02 17:22:16 -04:00
Jason Jean
47e9fc8ed6
feat(misc): remove migrations for v14 and under (#19552) 2023-10-11 10:46:17 -04:00
Miroslav Jonaš
8f0ec5cb39
feat(testing): add test-setup.ts to ignored prod inputs (#17918) 2023-07-04 10:20:54 -04:00
Jason Jean
5a0a4e8d26
feat(repo): replace usages of @nrwl/ with @nx/ in tooling packages (#16351) 2023-04-18 12:15:33 -04:00
Jason Jean
2d195007b0
feat(core): switch packages to use the @nx scope (#16069) 2023-04-14 19:56:37 -04:00
Caleb Ukle
85b3315b34
chore(misc): update snapshots to latest format (#16276) 2023-04-14 11:29:06 -04:00
Miroslav Jonaš
cafb49ac84
feat(core): remove @nrwl/workspace:lib (#16122) 2023-04-12 15:28:09 -04:00
Jason Jean
4a55ee9a33
fix(js): run prettier with default options when theres no prettierrc (#15888) 2023-03-27 18:00:24 -04:00
Colum Ferry
c3a58e9c1d
feat(core): move forEachExecutorOptions to devkit (#15547) 2023-03-10 17:04:10 +00:00
Colum Ferry
98001cc489
cleanup(core): move ast utils to js (#15540) 2023-03-08 18:30:29 -05:00
Caleb Ukle
8c7a27f3da
fix(testing): use root preset for snapshot config changes first (#15237) 2023-02-24 12:11:31 -06:00
Caleb Ukle
8a97b43eb1
feat(testing): jest 29 support (#14701) 2023-02-23 14:30:47 -06:00
Emily Xiong
032efc2cfb
fix(angular): ensure peer deps are installed when initializing the plugin (#14906)
Co-authored-by: Leosvel Pérez Espinosa <leosvel.perez.espinosa@gmail.com>
2023-02-14 11:07:51 -05:00
Jack Hsu
d7536aa7e3 feat(core): clean up workspace configuration code 2023-01-23 19:35:15 -05:00
Victor Savkin
422c8c735a cleanup(core): clearly split nx.json config and projects config 2023-01-05 15:35:36 -05:00
Jason Jean
61d7d74378 fix(misc): fix tsconfig file includes 2022-12-05 10:39:03 -05:00
Jason Jean
6d35fd4d85
chore(core): reconcile functions to find project of a path (#13364) 2022-11-24 11:02:32 -05:00
Victor Savkin
16fd4374d6 feat(misc): derive workspace layout dynamically 2022-11-23 15:45:13 -05:00
Jason Jean
1d4247c2cf
fix(testing): handle trailing commas in 14.0.0 migration (#12837) 2022-10-26 18:28:34 +00:00
Craigory Coppola
d8f3c6b186
fix(react): migrations use tsquery, so we should provide it (#12575) 2022-10-13 13:37:37 -04:00
Jason Jean
49c5e5069b
feat(core): migrate existing workspaces to use inputs configuration (#12416) 2022-10-05 22:30:03 +00:00
Richard Roozenboom
a088cf0d73
chore(testing): update migration to read all project configuration at once (#12052) 2022-09-22 19:01:57 -04:00
Caleb Ukle
657b2bff5a
feat(testing): support jest 28 (#10857)
* feat(testing): support jest 28

WIP jest migration

* fix(testing): jest-environment-jsdom must be explicitly added now

* fix(testing): add rxjs to the transform lsit

* fix(testing): jest ts-jest updates and resolver issues

* feat(testing): remove test runner for react native jest

* feat(testing): add preprocessor for react native jest

* fix(testing): update query to handle tsx file syntax, remove rxjs transform

* chore(repo): remove file from accident commit

* chore(testing): update migration to target 14.6 for RN jest preprocessor

* fix(testing): call passed in packageFilter if preset

* docs(testing): add resolver env var to troubleshooting guide

* chore(repo): prep resolver for jest 28 migration

* fix(testing): update deps to handle esbuild-wasm service error

* fix(testing): switch to testEnvironmentOptions for cjs loading vs resolver list

* fix(testing): force babel-jest preset in transformer for project transforms

* chore(testing): address PR feedback

* fix(testing): address pr feedback, remove react-native transform

* chore(testing): update createTreeWithEmptyWorkspace calls

* chore(testing): address pr feedback

* feat(testing): add migration script for react native to rename .babelrc to babel.config.json

* chore(testing): nx format after rebase

* chore(testing): fix display name for @nrwl/js

Co-authored-by: Emily Xiong <xiongemi@gmail.com>
2022-08-18 18:40:31 -04:00
Craigory Coppola
458fc36014
chore(misc): split create tree with empty workspace to remove parameter (#10188)
* feat(devkit): split create-empty-tree to different functions

* chore(repo): apply migration for createEmptyTree

* cleanup(misc): fix tests that migration misses
2022-08-11 19:24:04 -04:00
Caleb Ukle
acab64888d
fix(testing): install ts-node when migrating to ts jest config files (#11427) 2022-08-05 13:55:57 -04:00
Caleb Ukle
bd4e6ac323
fix(testing): exclude jest.config.ts in angular project tsconfigs (#11468) 2022-08-05 12:15:56 -05:00
Jason Jean
925a27bf64
fix(devkit): add options allow trailing commas for parsing json (#10538) 2022-06-01 13:13:24 -04:00
Caleb Ukle
ecf88a6995
fix(testing): update v14 migration and migrate jest.config.ts to use export default (#10035)
* 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
2022-05-11 18:04:29 +00:00
Denis Frenademetz
5dc5429632
fix(testing): 14.0.0 jest migration errors when additional configurations are specified 2022-05-06 08:34:04 -05:00
Jason Jean
5e23c07077
fix(core): automatically add root to the project.json projects (#9977)
* fix(core): automatically add root to the project.json projects

* chore(core): move project-configuration generator utils to nx package

* fix(core): add migrations to remove root
2022-04-28 13:24:35 -04:00
Caleb Ukle
1297f0616a
fix(testing): fix migration path error on windows (#9969) 2022-04-23 04:07:45 +00:00
Caleb Ukle
88971468db
fix(testing): pass --js flag to jest generators (#9965) 2022-04-22 22:43:59 -04:00
Caleb Ukle
b93091b558
fix(testing): include jest.config.ts in tsconfig.spec.json (#9938) 2022-04-21 22:47:53 +00:00
Caleb Ukle
39331d1e17
feat(testing): move jest config to .ts files (#9854)
* 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
2022-04-21 17:58:40 +00:00
Victor Savkin
6f038e7a4a feat(core): reorganize packges to consolidate all cli-related code in nx 2022-03-14 16:42:51 -04:00
kpaxton
93095f561a
fix(testing): fix jest migrate 13.4.4 script handling missing transform property (#8595)
Fix issue for migrating jest plugin to 13.4.4 when the projects
 may have a custom preset that
excludes the transform property
 from the jest.config.js.
 Just adds an if statement around the
loop for the transform property

ISSUES CLOSED: #8566
2022-01-19 10:05:11 -05:00
Caleb Ukle
baf44ad662
fix(testing): Create root babel config if one isn't present (#7816)
* fix(testing): create root babel config for babel-jest option

when creating a jest project with babel-jest a root babel.config.json file will be create if one

doesn't exist and babel deps install for allowing jest tests to run successfully

ISSUES CLOSED: #6782

* feat(testing): add migration for missing root babel config
2022-01-07 17:05:32 -05:00
Phillip Barta
e57cef0901
cleanup(repo): use devkit instead of devkit reexports from workspace (#7773) 2021-12-21 21:06:31 +00:00
Jack Hsu
157c6e0fb0
feat(web): rename @nrwl/web:build to @nrwl/web:webpack (#7952) 2021-11-30 14:22:34 -05:00
Caleb Ukle
4c4a5039e8
fix(testing): update tsconfig migration to not warn when no file found (#7689)
* fix(testing): update tsconfig migration to not warn when no file found

use tsconfig.json references to find what other configs need to be updated. if non when we just exit

* fix(testing): update tests for migration changes

* fix(testing): include any spec. file names in pattern match

accounting for _spec. file names when generating 'test' pattern equivalents

* fix(testing): remove relance on tsconfig.references, walk for all tsconfigs to update

tsconfig.references is not always present. instead visit all files and check if they are tsconfig
json file. if so we update the include/exclude properties where a spec. pattern is found. if the
property isn't set then we do not update it.

* fix(testing): stream line update with devkit
2021-11-11 22:53:17 +00:00
Caleb Ukle
0ca5a88bf1
fix(testing) generated jest ts configs mismatch (#7556)
* 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.
2021-11-05 14:25:25 -05:00
Juri
4305c5ef63 fix(testing): jest migration for Angular in 12.4 2021-08-22 12:50:47 +02:00
Leosvel Pérez Espinosa
f3cd6028f7
fix(testing): handle migrating base jest config without projects (#6601) 2021-08-04 17:30:27 +01:00
Zachary DeRose
f0dbfb0e0c
fix(testing): fixing formatting on root jest.config migration (#6418)
* fix(testing): fixing formatting on root jest.config migration

* fix(test): rm console.log
2021-07-19 18:54:20 +00:00