20 Commits

Author SHA1 Message Date
James Henry
443d4fd27a
feat(core): support bun's new text-based lockfile and use bun publish within nx release (#30064) 2025-02-19 13:42:35 +04:00
Leosvel Pérez Espinosa
4235cf35e3
fix(core): improve resolution of packages in package manager workspaces when constructing the project graph (#29795)
Main fixes:

- Identify dependencies from packages that only expose named exports (no
`.` export)
- Identify dependencies from exports containing wildcards (e.g.
`"./utils/*": "./src/utils/*.js`)
- Disallow identifying dependencies from restricted exports (e.g.
`"./foo": null`)
- Handle conditional exports (e.g. `"exports": { "import":
"./dist/index.js", "default": "./dist/index.js" }`
- Handle invalid `"exports": {}` (by not falling back to `main`)
- Handle projects included or not in package manager workspaces

## Current Behavior

## Expected Behavior

## Related Issue(s)

Fixes #29486
2025-02-03 08:03:49 -05:00
Jack Hsu
80ef3ee544
chore(repo): allow NX_NATIVE_LOGGING to be passed to commands within e2e tests (#28752)
…e2e tests

<!-- 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-01 12:28:16 -04:00
Craigory Coppola
a0e8f83672
fix(core): move plugin worker to socket (#26558)
<!-- 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
Plugin isolation communicates with workers via built-in node IPC with
forked processes. When doing this, the parent process will not exit
until the child process has exited, in case more messages would be sent.
This requires an explicit call to shut down the plugin workers.

We set this up as a `process.on('exit')` listener, to shutdown the
workers whenever the main Nx process dies. This is "fine", but requires
explicit calls to `process.exit` as node won't exit on its own
otherwise.

## Expected Behavior
To allow plugin workers to clean themselves up on exit, but not require
explicit `process.exit` calls, we need to detach them from the main
process and call `unref`. This only works when IPC is not being used. As
such, we need a different way to communicate with the worker.

This PR updates the communication method to mirror the daemon, and
communicate over a socket. Additionally, this PR enables isolation
during the Nx repo's E2E tests.

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

Fixes #
2024-06-26 17:31:10 -04:00
Jordan Hall
80702b59c7
feat(core): add bun package manager (#22602)
Bun uses yarn lock for it's binary file. Running the binary will produce
the content of a yarn lock file (v1)

Other option is to use the -y command on add and install. This will
create a yarn lock file and then createLockFile can just modify the
yarn.lock file instead?

This is the PR made from #19113 and pushed due to #22402 being closed.

PS Bun feels more stable since the PR was first created!

This PR will resolve #22283 and start of #21075
2024-05-22 16:51:21 -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
2374d8eaba
feat(testing): add create-nodes plugin for playwright e2e targets (#20099) 2023-12-20 16:34:32 -05:00
Leosvel Pérez Espinosa
2076abfca4
fix(angular): fix usage of internal generators and prevent usage of deprecated project option (#19697) 2023-10-18 18:26:21 -04:00
Jason Jean
bda90c4cc5 Revert "Revert "feat(repo): enable agents" (#19112)"
This reverts commit 3771c325bc50bb2acbca45966f2a2fd39d7f0af6.
2023-09-20 14:22:39 -04:00
Simon Critchley
3771c325bc
Revert "feat(repo): enable agents" (#19112) 2023-09-11 15:58:09 -04:00
Victor Savkin
018d9972ee feat(repo): add cloud workflows 2023-09-08 12:04:36 -04:00
Katerina Skroumpelou
c0d3aa5697
chore(testing): try catch the pm command detection (#18486) 2023-08-04 14:59:20 +00:00
Miroslav Jonaš
4a541418bb
fix(repo): fix silent yarn run on e2e for berry (#18340) 2023-07-27 20:39:26 +02:00
Emily Xiong
8407d7aedf
feat(testing): add lint target for playwright (#18233) 2023-07-21 11:48:40 -04:00
Emily Xiong
e5e561d648
feat(testing): add playwright configuration generator (#18013) 2023-07-14 12:17:10 -04:00
Caleb Ukle
2128f8e3e2
feat(testing): add @nx/playwright plugin (#17975) 2023-07-11 16:47:56 -04:00
Jason Jean
2d195007b0
feat(core): switch packages to use the @nx scope (#16069) 2023-04-14 19:56:37 -04:00
Miroslav Jonaš
7450e724b7
feat(repo): add new flag for verbose e2e logging (#15541) 2023-03-13 17:30:21 +00:00
Katerina Skroumpelou
a0e00c85fc
fix(core): refactor the logging logic in e2e tests (#15548) 2023-03-09 15:13:32 -05:00
Katerina Skroumpelou
808ca1215c
chore(core): rearrange e2e utils (#15421) 2023-03-03 15:22:23 +00:00