52 Commits

Author SHA1 Message Date
Nicholas Cunningham
a5544e371b
feat(repo): migrate to pnpm 10 (#31427)
- Added .pnpmrc for pnpm 10 configuration, enabling peer dependencies
and lifecycle scripts.
- Updated package.json to reflect pnpm version change to 10.11.1 and
added onlyBuiltDependencies.
- Update pipelines to reflect pnpm version update to 10.11.1

## Upgrading your pnpm version
Now to upgrade your `pnpm` version you can run `pnpm
migrate-to-pnpm-version 10`. Which would upgrade your `pnpm` and it will
run the upgrade script.

Later on if you want to upgrade to pnpm v11 you can run `pnpm
migrate-to-pnpm-version 11`.
Additionally, if you just want to upgrade to the version that is inside
of `package.json` you would run
`pnpm migrate-to-pnpm-version` without passing in a major version.
2025-06-09 10:29:16 -04:00
Jonathan Cammisuli
889dee0854
chore(core): update rust to 2024 edition (#31156)
<!-- 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 -->
Currently using 2021 edition of rust

## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->
Updates to 2024 edition to support more features that are coming in
other PRs

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

Fixes #
2025-05-13 18:11:05 -04:00
Jason Jean
29d9d154e9
chore(repo): add verbose logging when releasing (#31158)
<!-- 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 -->

Not much info is shown for errors.

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

More info is shown when publishing

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

Fixes #
2025-05-11 16:06:42 +04:00
Nicholas Cunningham
28ddb8e9e7
feat(core)!: drop support for node versions prior to 20.19.0 (#30818)
<!-- 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. -->

BREAKING CHANGE: We are updating our minimum node version to `20.19.0`
which drops support for all prior versions.

---------

Co-authored-by: Jack Hsu <jack.hsu@gmail.com>
2025-05-01 02:13:50 -04:00
Jason Jean
da4201b0d1
chore(repo): publish for freebsd in canary and pr releases (#30624)
<!-- 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 -->

FreeBSD artifacts are not published as part of PR and canary releases
because it was unstable. Now it seems it's pretty stable though.

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

FreeBSD artifacts are published as part of PR and canary releases. Those
releases can be used in this repo (which requires FreeBSD) support.

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

Fixes #
2025-04-08 09:28:01 -04:00
Jason Jean
d23350fbc0
chore(repo): fix docs release (#29233)
<!-- 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 -->

Docs fail to release with the new typescript version

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

Docs can be released and release flow can be tested via `--dryRun`

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

Fixes #
2024-12-06 14:09:18 -05:00
Jason Jean
f0e419b04f
chore(repo): update pnpm to v9.8 (#27637)
<!-- 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 -->

This repo uses pnpm `9.2.0`

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

This repo uses pnpm `9.8.0`

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

Fixes #
2024-08-26 13:31:07 -04:00
Jason Jean
088a95b7e5
chore(repo): update to pnpm 9 (#27624)
<!-- 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 -->

This repo uses pnpm v8

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

This repo uses pnpm v9

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

Fixes #

---------

Co-authored-by: “JamesHenry” <james@henry.sc>
2024-08-23 16:02:00 -04:00
Jason Jean
cade5bc671
feat(core): add sqlite db for nx (#26891)
## Current Behavior
<!-- This is the behavior we have today -->

Nx has some persistent storage managed as separate files on disk. For
example, the local cache queries the file system for existing
directories.

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

Nx has a new more performant persistent storage via SQLite database. The
db is used for the following purposes now:
1. Storing task details of different hashes (This serves as reference
for other tables to get more information about a hash)
2. Storing a record of cached artifacts
3. Storing a history of tasks which have run

The cache in particular has the following benefits:
* It's faster, YMMV but it's definitely faster because it writes and
reads less from disk.
* It's able to track access of different cached artifacts
* It purges cached artifacts more intelligently by looking at when
artifacts were last ACCESSED rather than when they were CREATED. This
will also eliminate cache misses due to the cached artifacts being
purged simply because they were CREATED.

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

Fixes #
2024-08-21 13:12:20 -04:00
Jason Jean
37f0ccaa20
chore(repo): update freebsd publish to run on ubuntu and use latest f… (#26924)
…reebsd to fix issue

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

There's an issue with running `npm` when building on freebsd

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

There are no issues building on freebsd

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

Fixes #
2024-07-12 15:26:09 -05:00
LongYinan
981eb30a0f
feat(core): support compile to wasi target (#22870)
This pull request is trying to add wasm32-wasi target support for the
nx/native

To test the build, you can run the following commands:

- `rustup target add wasm32-wasip1-threads`
- `pnpm exec napi build --release --platform --package-json-path
packages/nx/package.json --manifest-path packages/nx/Cargo.toml --js
./native-bindings.js -o packages/nx/src/native --target
wasm32-wasip1-threads`

And the wasm file will be built at
packages/nx/src/native/nx.wasm32-wasi.wasm

Blocked by:

- Support @napi-rs/cli 3.0  Cammisuli/monodon#48
- https://github.com/napi-rs/napi-rs/issues/2009

The pseudo_terminal mod is excluded on the wasm32 targets, which is as
expected.

The watch mod is excluded because of the upstream `watchexec` deps
introduced by ignore-files don't support the wasi target at this moment
(but we can improve it).

## Related Issues
Fixes https://github.com/nrwl/nx/issues/21860
Fixes https://github.com/nrwl/nx/issues/23821

---------

Co-authored-by: FrozenPandaz <jasonjean1993@gmail.com>
2024-07-05 15:55:35 -04:00
James Henry
b61546fc1a
chore(repo): remove pnpm cache from data step, improve messages (#26552) 2024-06-14 08:14:45 -04:00
James Henry
42749b8225
chore(repo): refactor publish.yml for PR releases (#26550)
Redo of #26509, with more guards for unexpected missing/relative values
within full releases in GitHub Actions.

---

Refactors our publish workflow to support PR releases, in addition to
our previous triggers.

**Tests:**

---

- Example of failure on non-PR release (comment skipped):
https://github.com/nrwl/nx/actions/runs/9480869812

---

- Example of failure on PR release (comment created on PR):
  - https://github.com/nrwl/nx/actions/runs/9480852880
  - https://github.com/nrwl/nx/pull/26515#issuecomment-2162646682

---

- Example of dry-run of full release (`workflow_dispatch` with no PR
number provided): https://github.com/nrwl/nx/actions/runs/9497871483

---

- Real PR release created here:

| Release details | 📑 |
  | ------------- | ------------- |
| **Published version** |
[0.0.0-pr-26515-856ef7f](https://www.npmjs.com/package/nx/v/0.0.0-pr-26515-856ef7f)
|
  | **Triggered by** | @JamesHenry |
| **Branch** |
[JamesHenry-patch-1](https://github.com/nrwl/nx/tree/JamesHenry-patch-1)
|
| **Commit** |
[856ef7f](856ef7f353)
|
| **Workflow run** |
[9497298216](https://github.com/nrwl/nx/actions/runs/9497298216) |

---------

Co-authored-by: Katerina Skroumpelou <sk.katherine@gmail.com>
2024-06-14 07:07:06 -04:00
Jason Jean
73c8c3343d
Revert publish (#26544)
<!-- 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 below commit caused the publish pipeline to publish a `minor`
version when it should have been a `next` version.

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

This reverts commit
3750366ebc.

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

Fixes #
2024-06-13 14:27:36 -04:00
James Henry
92c94d8212
chore(repo): tweak publish.yml wording (#26542) 2024-06-13 11:47:00 -04:00
James Henry
3750366ebc
chore(repo): refactor publish.yml for PR releases (#26509) 2024-06-13 09:28:43 -04:00
Isaac Mann
508fd862c6
chore(nx-dev): skip website publish for older minor versions (#26272)
Update the website publish flow to not publish if the current minor is
not the latest version.
Moves the logic into a node script
2024-06-12 15:14:17 -04:00
Jason Jean
5ded713c3c
fix(repo): set version of pnpm for docker publishes (#23129)
<!-- 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 -->

The version of pnpm changed with the docker image.

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

The version of pnpm is installed over the one in the docker image to
ensure the right version is being used.

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

Fixes #
2024-05-01 18:40:53 -04:00
Jason Jean
9c6532ca68
fix(repo): fix pnpm version on freebsd (#23045) 2024-04-29 07:50:40 -04:00
Jack Hsu
8cd326e71a
fix(misc): fix publish script (#22981) 2024-04-24 18:49:36 -04:00
Jason Jean
f76b8c63c1
fix(repo): downgrade to macos-13 in publish workflow (#22961) 2024-04-23 13:05:44 -04:00
Jason Jean
814f767bdb
chore(repo): install playwright browsers into .local-browsers (#22463) 2024-03-22 14:37:51 -04:00
Jason Jean
286e83dbe9
chore(repo): prefer ts node on freebsd publish (#22457) 2024-03-22 13:03:05 -04:00
Isaac Mann
a059f1ae7b
chore(core): fix docs release (#22430) 2024-03-21 10:01:41 -04:00
Isaac Mann
537e8aec26
chore(core): website branches by major version (#21954) 2024-03-19 08:29:18 -04:00
James Henry
4916b8e72f
chore(repo): only run steps within publish.yml if not on fork (#21527) 2024-02-02 18:20:15 +04:00
Jason Jean
d43d5365c8
chore(repo): use large macos 13 agents for freebsd (#21468) 2024-01-31 15:28:29 -05:00
James Henry
b8a82cfa7c
chore(repo): bump cross-platform-actions to latest (#21459) 2024-01-31 18:45:03 +04:00
Miroslav Jonaš
192d36f493
chore(repo): bump pnpm and nx-orb versions (#21143) 2024-01-18 00:11:43 +01:00
Isaac Mann
ec8daed487
chore(core): add write permissions to publish (#20665) 2023-12-08 14:01:55 -05:00
Jason Jean
8fbf915db6
fix(core): publish next versions of Nx with support for FreeBSD (#20659) 2023-12-08 10:50:15 -05:00
James Henry
57cef5d979
chore(repo): ignore build-freebsd from canary releases (#20566) 2023-12-04 13:23:18 -05:00
James Henry
1b4b463b21
chore(core): add nightly canary release (#20540) 2023-12-02 00:39:04 +04:00
Jason Jean
b4622783b2
chore(repo): disable freebsd support for beta releases (#20396) 2023-11-23 16:26:02 -05:00
Isaac Mann
dc3e1404b7
fix(nx-dev): publish docs when on the latest tag (#20182) 2023-11-20 09:11:43 -05:00
Jason Jean
f28fc3bc84
fix(repo): fix freebsd hanging issue (#20042) 2023-11-03 16:10:56 -04:00
Isaac Mann
ba426a2821
chore(nx-dev): do not publish docs for patches (#20037) 2023-11-03 15:59:13 -04:00
Isaac Mann
d1042cd194
chore(core): publish docs when nx release runs (#19568)
Co-authored-by: James Henry <james@henry.sc>
2023-11-02 14:05:28 -04:00
Jonathan Cammisuli
babb2e0569
chore(repo): fix publishing on freebsd (#19907) 2023-10-27 17:16:43 -04:00
Jason Jean
9ffa90f737
feat(repo): allow testing publish workflow manually without real publ… (#17754) 2023-07-01 00:32:29 +02:00
Jonathan Cammisuli
727590aa7c
chore(core): increase freebsd mem, and remove dist from copying (#17751) 2023-06-23 10:29:51 -04:00
Jonathan Cammisuli
7455271632
fix(core): install npm via pkg for freebsd (#17735) 2023-06-22 14:47:01 -04:00
Jason Jean
ebb739a0d7
chore(repo): fix publishing workflow for freebsd again (#17603) 2023-06-14 15:48:26 -04:00
Jason Jean
51c119334d
chore(repo): fix publishing workflow for freebsd (#17602) 2023-06-14 15:09:06 -04:00
Jonathan Cammisuli
bba78eef46
feat(core): compile native code for freebsd (#17313) 2023-05-30 15:56:30 -04:00
James Henry
c9d649e57c
chore(core): enable provenance and update lerna usage (#16814) 2023-05-05 13:20:05 -04:00
Miroslav Jonaš
f004e22b7c
fix(repo): replace remaining instances of yarn with pnpm (#16571) 2023-04-27 11:16:42 -04:00
Jason Jean
240a27bb67
fix(repo): fix publish script's use of pnpm part 2 (#16568) 2023-04-25 20:08:39 -04:00
Jason Jean
d22b03756a
fix(repo): fix publish scripts use of pnpm (#16566) 2023-04-25 19:48:53 -04:00
Miroslav Jonaš
262865841d
feat(repo): migrate to pnpm (#16284) 2023-04-25 17:57:36 -04:00