182 Commits

Author SHA1 Message Date
Leosvel Pérez Espinosa
c0f5c157ab
feat(angular): support angular v18.2.0 (#27379)
<!-- 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-08-14 16:33:33 -04:00
Colum Ferry
225a8e019c
fix(module-federation): turn dts off by default #27198 (#27403)
- fix(angular): turn mf dts off by default #27198
- fix(react): turn mf dts off by default
- fix(react): add migration to turn module federation dts off by default
- fix(angular): add migration to turn module federation dts off by
default

<!-- 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 -->
Nx already provides Typing support for Module Federation projects. The
`@module-federation/enhanced` package has typing support turned on by
default but it can be problematic.


## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->
Turn off `@module-federation/enhanced` own dts plugin providing typing
support in favour of Nx's own typing support

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

Fixes #27198
2024-08-14 14:14:37 +01:00
Colum Ferry
483bcf3465
feat(module-federation): add nx-runtime-library-control-plugin (#26816)
- feat(module-federation): use @module-federation/enhanced for
withModuleFederation
- feat(module-federation): expose API for users to override module
federation plugin options
- fix(module-federation): angular mf ssr projects should not create
vendor chunks
- feat(module-federation): add nx-runtime-library-control-plugin

<!-- 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 -->
A common occurrence when working with NX Module Federation is that a
shared library may get resolved from a static remote.
Any changes to the shared lib are therefore not reflected in the dev
server.


## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->
Add the `nx-runtime-library-control-plugin` to ensure that shared
libraries are shared from a remote that is served via
webpack-dev-server.

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

Fixes #11615
2024-07-17 22:46:14 -04:00
Leosvel Pérez Espinosa
58ba1ffc6d
feat(angular): support angular v18.1.0 (#26504)
<!-- 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` -->

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

Angular v18.1.0 is not supported.

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

Angular v18.1.0 should be supported.

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

Fixes #
2024-07-11 11:17:00 -04:00
Colum Ferry
81dced7252
fix(angular): migration of browserTarget to buildTarget should handle empty config #26681 (#26690)
<!-- 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 -->
The migration from `browserTarget` to `buildTarget` assumed config would
not be undefined.


## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->
The migration should check if config is undefined

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

Fixes #26681
2024-06-26 10:12:24 +01:00
Leosvel Pérez Espinosa
15e1f78021
fix(angular): install @typescript-eslint/utils when using relevant angular eslint v18 packages (#26418)
<!-- 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` -->

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

Angular ESLint v18 packages now have `@typescript-eslint/utils` as a
peer dependency, but new projects don't install it, and existing
projects are not getting it installed in a migration.

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

The `@typescript-eslint/utils` should be installed when creating new
Angular projects and when migrating when the workspace has the relevant
Angular ESLint packages in v18.

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

Fixes #26408
2024-06-06 16:54:28 +02:00
Leosvel Pérez Espinosa
37f02f7e6b
feat(angular): support angular 18.0.0 (#22509)
<!-- 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` -->

## 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 #25284
2024-05-23 17:50:04 +02:00
Jason Jean
cfadd7d8cf
Revert "fix(core): addPlugin should not conflict on project.json targ… (#23391)
…ets (#23264)"

This reverts commit 85c89160

<!-- 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` -->

## 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-05-14 18:01:30 -04:00
Colum Ferry
85c8916087
fix(core): addPlugin should not conflict on project.json targets (#23264)
<!-- 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` -->

## Current Behavior
<!-- This is the behavior we have today -->
Calculating conflicts in target names does not consider if the
project.json defined targets will actually be impacted by the plugin
that wants to be added creating false negatives

## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->
Calculating conflicts should be more accurate

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

Fixes #22476
2024-05-13 10:53:09 -04:00
Colum Ferry
11fec5a4e8
fix(devkit): run callback for forEachProjectConfig when target.options is undefined (#23143)
<!-- 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` -->

## Current Behavior
<!-- This is the behavior we have today -->
`forEachExecutorOptions` will not run the callback if `target.options`
is undefined.
This means that even if a target exists with an executor, the target is
not being processed if it does not have `options`.

## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->
Run the callback anyway even if `target.options` is undefined

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

Fixes #
2024-05-02 12:20:07 -04:00
Jason Jean
bf206e578e
feat(misc): non conflicting init/add flow (#22791) 2024-04-15 16:45:08 -04:00
Leosvel Pérez Espinosa
8baddb5f08
feat(angular): support angular 17.3.0 (#22202) 2024-03-19 14:58:23 -04:00
Colum Ferry
81df8485a1
fix(module-federation): ensure targetDefaults for module federation executors are setup correctly (#22282) 2024-03-12 19:33:27 +00:00
Leosvel Pérez Espinosa
ca3965fcf3
fix(angular): do not force explicit targets for separate e2e projects (#21865) 2024-02-20 15:57:28 +01:00
Leosvel Pérez Espinosa
8963c4c538
feat(angular): support angular 17.2.0 (#21671) 2024-02-15 12:13:57 -05:00
Isaac Mann
7c231e34fb
fix(core): module federation migration for project with no targets (#21536) 2024-02-02 10:50:13 -05: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
Colum Ferry
f0f5039962
fix(module-federation): ensure the static remotes env var is used for task hashing #21390 (#21414) 2024-01-31 17:06:12 +00:00
Leosvel Pérez Espinosa
7a77b0d6a7
feat(angular): add generator to convert targets to use the esbuild-based application executor (#21333) 2024-01-30 17:27:00 +01:00
Leosvel Pérez Espinosa
4b88f48a18
feat(angular): support angular 17.1.0 (#20556) 2024-01-26 10:43:16 -05:00
Jason Jean
5d9b4c5224
feat(testing): add jest create-nodes plugin (#20045) 2024-01-11 14:54:04 -05:00
Leosvel Pérez Espinosa
626605ef97
chore(angular): skip formatting generated code when not needed in unit tests (#20819) 2023-12-18 11:05:44 -05:00
Leosvel Pérez Espinosa
40f8c40df2
feat(angular): support esbuild-based executors/builders in @nx/angular:dev-server (#20311) 2023-11-23 09:48:02 -05:00
Leosvel Pérez Espinosa
b4fbdf12eb
fix(angular): fix misc issues with migration replacing the nguniversal usages (#20209) 2023-11-13 15:22:53 +01:00
Leosvel Pérez Espinosa
26160cd3b4
feat(angular): update angular supported version to the stable 17.0.0 (#20135) 2023-11-08 14:33:30 -05:00
Leosvel Pérez Espinosa
304a6d14d6
cleanup(angular): remove unneeded stubbing for performance.mark in jest setup file (#20120) 2023-11-08 15:39:42 +01:00
Leosvel Pérez Espinosa
75c63f3318
fix(angular): add migration to replace deep imports from zone.js (#20117) 2023-11-08 12:58:12 +01:00
Leosvel Pérez Espinosa
25d6ec3a92
feat(angular): support angular v17 (#19689) 2023-11-07 15:45:42 -05:00
Jason Jean
1ffeca9eb7
feat(devkit): remove backwards compatibility for Nx 15 (#19572) 2023-10-12 17:16:10 -04:00
Craigory Coppola
f213976281
feat(core): include non-project files on fileMap and filesToProcess (#19217) 2023-09-19 21:46:01 -04:00
Leosvel Pérez Espinosa
b9eba9d72d
cleanup(angular): switch tests to use project name and root as-provided format by default (#18792) 2023-08-25 09:45:09 +01:00
Leosvel Pérez Espinosa
8601a0e44c
feat(angular): support angular 16.2.0 (#18561) 2023-08-14 14:46:02 +01:00
Colum Ferry
d7d3ebc3a8
feat(angular): support angular 16.2.0 RC (#17879) 2023-08-08 11:43:28 -04:00
Leosvel Pérez Espinosa
8be6558700
fix(misc): fix migrations updating target options to consider target defaults (#18064) 2023-07-11 11:21:24 -04:00
Leosvel Pérez Espinosa
64765eb313
feat(misc): change updateBuildableProjectDepsInPackageJson option default value to false (#17920) 2023-07-06 09:06:48 +01:00
Leosvel Pérez Espinosa
20d45bbdf1
fix(angular): process only angular projects in migration (#17833) 2023-06-28 16:19:49 +01:00
Leosvel Pérez Espinosa
1fcba1a43a
feat(angular): support angular v16.1 (#17155) 2023-06-22 14:45:31 +01:00
Leosvel Pérez Espinosa
e39ee11bcb
fix(angular): fix @angular-eslint/* package updates to consider angular installed version (#17526) 2023-06-12 09:30:44 +01:00
Victor Savkin
0848031dd9 feat(core): move task hashing into daemon 2023-05-17 11:37:57 -04:00
Leosvel Pérez Espinosa
f2e48e429a
feat(angular): update ngrx packages to v16 (#16763) 2023-05-11 09:46:18 -04:00
Leosvel Pérez Espinosa
7d42d887e3
fix(angular): update import paths relative to app config file location in migration extracting the config (#16863) 2023-05-09 09:30:40 +01:00
Leosvel Pérez Espinosa
203a874ddb
feat(angular): update angular 16 packages to stable versions (#16732) 2023-05-03 16:02:42 -04:00
Leosvel Pérez Espinosa
f45aa076da
feat(angular): support angular v16 (#15592) 2023-05-03 11:02:07 -04:00
Leosvel Pérez Espinosa
9c3698982b
fix(angular): add jasmine-marbles with a version compatible with installed rxjs version in migration (#16717) 2023-05-03 15:36:14 +01:00
Leosvel Pérez Espinosa
ae89df9482
fix(angular): do not wrap bootstrap call when setting up ssr in workspaces with angular >= 15.2.0 (#16714) 2023-05-03 10:58:01 +01:00
Leosvel Pérez Espinosa
4be6f7401c
fix(angular): clean up ssr main.server.ts generation (#16699) 2023-05-02 16:19:56 +01:00
Colum Ferry
ec3c642b29
feat(angular): add migration to remove protractor generator defaults (#16409) 2023-04-21 12:29:02 +01:00
Colum Ferry
14d9a8b034
feat(angular): add migration to remove karma generator defaults (#16400) 2023-04-21 09:56:47 +01: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