40 Commits

Author SHA1 Message Date
Colum Ferry
06089663c6
feat(js): add copy-workspace-modules executor (#31545)
## Current Behavior

When building applications that depend on workspace libraries for
deployment (particularly in containerized environments like Docker),
developers must manually handle copying workspace dependencies and
updating package.json references.

This creates friction when trying to deploy applications that consume
workspace libraries, as the build output doesn't contain the necessary
workspace dependencies and the package.json still references them with
`workspace:` protocol which doesn't work outside the workspace context.

  ## Expected Behavior

With the new `@nx/js:copy-workspace-modules` executor, developers can
automatically prepare their built applications for deployment by:

1. **Automatically copying workspace dependencies**: The executor scans
the application's package.json for workspace dependencies (those with
`workspace:` or `file:` version specifiers) and copies the source code
of these dependencies into a `workspace_modules` directory within the
build output

---------

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-06-18 13:50:01 +01:00
Jason Jean
4254c4bcce
feat(core): allow executors to specify if they are continuous (#30821)
<!-- 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 only way to set if a task is continuous is either directly in
`project.json` or via Project Graph Plugins.

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

Executors know if they are definitely continuous or not. Plenty of
existing continuous tasks are using executors. Executors are now able to
define if they are continuous in their `schema.json` files. Thus,
existing tasks configured with certain executors will automatically
become continuous.

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

Fixes #
2025-04-24 16:41:17 -04:00
Jack Stevenson
e32079ce3b
fix(js): skip tsc batch builds for implicit dependencies (#28840)
Implicit dependencies are not referenced in code and therefore TSC
incremental builds are not applicable.

## Current Behavior
A project using the `@nx/js:tsc` executor will fail to build if it has
implicit dependencies on projects which do not use the `@nx/js:tsc`
executor.

To reproduce:
* Clone https://github.com/cogwirrel/nx-tsc-batch-implicit-deps-example
* `pnpm i && pnpm nx run-many --target build --batch --all`

## Expected Behavior
- Implicit dependencies that do not use the `@nx/js:tsc` executor are
permitted. For example, a TypeScript project may implicitly depend on a
Python project, but the TypeScript project should still be buildable in
batch mode.
- Projects using the `@nx/js:tsc` executor will still fail to build if
they have explicit dependencies on projects which do not use the
`@nx/js:tsc` executor.

Tested by publishing to the local registry, upgrading the [example
repo](https://github.com/cogwirrel/nx-tsc-batch-implicit-deps-example)
to use my local version, and built successfully in batch mode.

## Related Issue(s)
Fixes #28839
2024-11-14 07:59:27 +00:00
Leosvel Pérez Espinosa
f7f26d847e
feat(nx-plugin): add support for the ts solution config setup to the @nx/plugin plugin (#28724)
<!-- 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-11-12 14:25:31 -05:00
Leosvel Pérez Espinosa
f357b4ed53
feat(js): update the setup-build generator to support the new ts setup (#28446)
Update the `@nx/js:setup-build` and the generators it depends on to
support the new TS setup with project references.

<!-- 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-28 14:34:57 -04:00
Emily Xiong
1218502c84
fix(js): allow custom listenAddress for verdaccio (#28498)
<!-- 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
-->
replace localhost with options. listenAddress

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

Fixes https://github.com/nrwl/nx/issues/28314
2024-10-24 12:51:10 -04:00
James Henry
1108ebf0c6
fix(release): support forwarding the --access flag to npm publish (#27765) 2024-09-04 17:58:34 +04:00
Isaac Mann
efa59fa681
docs(core): add outputFileName to tsc executor schema (#27161)
Fixes #17397
2024-07-26 15:45:36 -04:00
Wixewr
50e08aa356
feat(js): added a verdaccio listen address to configuration (#26976)
Co-authored-by: William van der Vegt <william.van.der.vegt@moba.net>
Co-authored-by: Craigory Coppola <craigorycoppola@gmail.com>
2024-07-25 14:43:33 -04:00
Emily Xiong
28cd0c4eef
feat(js): add scopes option for verdaccio (#26918) 2024-07-24 16:18:13 -04:00
Emily Xiong
471f82c991
fix(js): remove default port for verdaccio (#26502)
<!-- 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
-->
- remove default port for verdaccio so it can take port from config file

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

Fixes https://github.com/nrwl/nx/issues/23007
2024-06-12 10:06:49 -04:00
Leosvel Pérez Espinosa
2b820a274e
docs(misc): update /packages/ links to /nx-api/ (#26128)
- Update `/packages/` links to `/nx-api/`
- Convert some unneeded absolute links to relative
- Remove leftover examples doc for the already removed `cypress-project`
generator

<!-- 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 #26126
2024-05-28 09:44:48 -04:00
Jack Hsu
701c513fd7
feat(js): add swc cli options --strip-leading-paths (#22856) 2024-04-17 14:18:10 -04:00
Jason Jean
2ee965042d
Revert "feat(js): add swc cli options --strip-leading-paths (#22193)" (#22832) 2024-04-15 20:35:58 -04:00
Every
f59ed58ae6
feat(js): add swc cli options --strip-leading-paths (#22193)
Co-authored-by: Jack Hsu <jack.hsu@gmail.com>
2024-04-11 10:54:27 -04:00
beeman
a9974d3f25
docs(misc): change http:// to https:// (#19534) 2024-01-30 11:33:13 -05:00
Emily Xiong
0b0df51263
chore(core): add batch description in cli (#19707) 2023-10-18 15:15:20 -04:00
Jack Hsu
76a7506074
feat(js): remove options to update package.json dependencies and peerDependencies (#19543) 2023-10-12 12:06:45 -04:00
James Henry
6b16230499
fix(core): support dry-run on nx release publish (#19228) 2023-09-20 08:57:13 -04:00
James Henry
9116c29c18
feat(core): initial implementation of nx release (#19110)
Co-authored-by: FrozenPandaz <jasonjean1993@gmail.com>
2023-09-18 15:11:44 -04:00
Isaac Mann
d70a6ceb36 docs(core): clarify waitUntilTargets 2023-08-28 12:39:31 +02:00
Leosvel Pérez Espinosa
c785871b5c
docs(js): call out @nx/js:tsc batch executor being available from Nx 16.6.0 (#18467) 2023-08-11 12:46:47 +01:00
Jack Hsu
d63d3573c4
feat(js): add generateExportsField and additionalEntryPoints options to update exports field when building with tsc/swc (#18319) 2023-08-01 09:23:48 -06:00
Leosvel Pérez Espinosa
bd71ce35a4
fix(js): fix misc issues in tsc batch executor (#18363) 2023-07-28 14:44:35 +01:00
Leosvel Pérez Espinosa
4f9f04fb96
docs(js): add docs about @nx/js:tsc batch execution (#18071) 2023-07-14 08:41:40 +01:00
Leosvel Pérez Espinosa
95a2256a34
feat(misc): deprecate executor options to generate package.json for libraries (#17923) 2023-07-11 15:28:03 +00:00
Leosvel Pérez Espinosa
64765eb313
feat(misc): change updateBuildableProjectDepsInPackageJson option default value to false (#17920) 2023-07-06 09:06:48 +01:00
Jack Hsu
c6a0615fa5
fix(js): add watchIgnore and runBuildTargetDependencies options to speed up build (#17953) 2023-07-05 14:50:53 -04:00
Leosvel Pérez Espinosa
b6cdf9d975
feat(js): add initial/experimental batch execution implementation for tsc executor (#17287) 2023-06-05 17:18:52 -04:00
Emily Xiong
72b0f55605
feat(js): add location none to verdaccio executor (#17319) 2023-05-31 08:37:24 -04:00
Emily Xiong
be2ccb802e
feat(js): add verdaccio executor (#16928) 2023-05-25 11:10:16 -04:00
Jack Hsu
dc7122984e
feat(js): improve @nx/js:node executor to be more resilient to many file change events (#16924) 2023-05-11 16:31:52 -04:00
Isaac Mann
afa5eb59fa
docs(core): document the @nrwl => @nx rescope (#16403)
Co-authored-by: FrozenPandaz <jasonjean1993@gmail.com>
2023-04-27 18:14:59 -04:00
Miroslav Jonaš
f004e22b7c
fix(repo): replace remaining instances of yarn with pnpm (#16571) 2023-04-27 11:16:42 -04:00
Isaac Mann
0366eeaab6
docs(core): update buildable project deps description (#15331) 2023-03-01 11:22:09 -05:00
Chau Tran
281881d268
fix(js): use .swcrc for swcrc path for swc lib (#15205) 2023-02-24 08:55:47 -05:00
Chau Tran
79994e9ee4
docs(js): add x-priority flags to js executors and generators (#14261) 2023-01-30 11:57:53 +01:00
Miroslav Jonaš
23c23272ce
feat(js): add lockfile generator to js plugin (#13968) 2023-01-17 22:44:33 +01:00
youmoo
a8263f5b3b
docs(misc): remove the unnecessary to (#13945) 2022-12-28 16:38:00 -05:00
Benjamin Cabanes
19fd40ddc7
docs(nxdev): refactor docs sources generation and app consumption (#13834) 2022-12-19 18:59:50 +00:00