Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c6bf6414ce | |||
| 395c3562d0 | |||
| 5a2ea09d9b | |||
| 9c5873c9fa | |||
| 47d4eb8eb8 | |||
| ad9344152f | |||
| 491966b6e3 | |||
| cda123802f | |||
| 9690aea0a8 | |||
| 6a1164f7ae | |||
| 0ce7acdf77 | |||
| 137ba06499 | |||
| 5df932b108 | |||
| 62e75edd24 | |||
| 2145117b24 | |||
| a42cabccf9 |
+119
-83
@@ -4,9 +4,9 @@ version: 2.1
|
||||
# ORBS
|
||||
# -------------------------
|
||||
orbs:
|
||||
nx: nrwl/nx@1.6.2
|
||||
nx: nrwl/nx@1.6.1
|
||||
rust: circleci/rust@1.6.0
|
||||
browser-tools: circleci/browser-tools@1.4.8
|
||||
browser-tools: circleci/browser-tools@1.4.0
|
||||
|
||||
# -------------------------
|
||||
# EXECUTORS
|
||||
@@ -19,12 +19,12 @@ executors:
|
||||
linux:
|
||||
<<: *defaults
|
||||
docker:
|
||||
- image: cimg/rust:1.73.0-browsers
|
||||
- image: cimg/rust:1.70.0-browsers
|
||||
resource_class: medium+
|
||||
|
||||
macos:
|
||||
<<: *defaults
|
||||
resource_class: macos.m1.medium.gen1
|
||||
resource_class: macos.x86.medium.gen2
|
||||
macos:
|
||||
xcode: '14.2.0'
|
||||
|
||||
@@ -48,7 +48,7 @@ commands:
|
||||
- run:
|
||||
name: Install pnpm package manager (linux)
|
||||
command: |
|
||||
npm install --prefix=$HOME/.local -g @pnpm/exe@8
|
||||
npm install --prefix=$HOME/.local -g @pnpm/exe@8.3.1
|
||||
- when:
|
||||
condition:
|
||||
equal: [<< parameters.os >>, macos]
|
||||
@@ -56,12 +56,11 @@ commands:
|
||||
- run:
|
||||
name: Install pnpm package manager (macos)
|
||||
command: |
|
||||
npm install -g @pnpm/exe@8
|
||||
npm install -g @pnpm/exe@8.3.1
|
||||
- run:
|
||||
name: Install Dependencies
|
||||
command: |
|
||||
pnpm install --frozen-lockfile
|
||||
pnpm playwright install --with-deps
|
||||
- save_cache:
|
||||
name: Save pnpm Package Cache
|
||||
key: node-deps-{{ arch }}-v3-{{ checksum "pnpm-lock.yaml" }}
|
||||
@@ -69,54 +68,91 @@ commands:
|
||||
- ~/.pnpm-store
|
||||
- ~/.cache/Cypress
|
||||
- node_modules
|
||||
install-sdkman:
|
||||
description: Install SDKMAN
|
||||
steps:
|
||||
- restore_cache:
|
||||
name: Restore SDKMAN executable and binaries from cache
|
||||
keys:
|
||||
- sdkman-cli-{{ arch }}-v2
|
||||
- run:
|
||||
name: Installing SDKMAN
|
||||
command: |
|
||||
if [ ! -d ~/.sdkman ]
|
||||
then
|
||||
curl -s "https://get.sdkman.io?rcupdate=false" | bash
|
||||
sed -i -e 's/sdkman_auto_answer=false/sdkman_auto_answer=true/g' ~/.sdkman/etc/config
|
||||
fi
|
||||
echo -e '\nsource "/home/circleci/.sdkman/bin/sdkman-init.sh"' >> $BASH_ENV
|
||||
source $BASH_ENV
|
||||
sdk version
|
||||
- save_cache:
|
||||
name: Save SDKMAN executable and binaries to cache
|
||||
key: sdkman-cli-{{ arch }}-v2
|
||||
paths:
|
||||
- ~/.sdkman
|
||||
install-gradle:
|
||||
description: Install gradle
|
||||
|
||||
setup:
|
||||
parameters:
|
||||
gradle-version:
|
||||
os:
|
||||
type: string
|
||||
default: ''
|
||||
steps:
|
||||
- restore_cache:
|
||||
name: Restore Gradle binary from cache
|
||||
keys:
|
||||
- gradle-cli-{{ arch }}-v1
|
||||
- run:
|
||||
name: Installing Gradle
|
||||
command: |
|
||||
sdk install gradle << parameters.gradle-version >>
|
||||
gradle --version
|
||||
- save_cache:
|
||||
name: Save Gradle binary to cache
|
||||
key: gradle-cli-{{ arch }}-v1
|
||||
paths:
|
||||
- ~/.sdkman/candidates/gradle/
|
||||
- checkout
|
||||
- when:
|
||||
condition:
|
||||
equal: [<< parameters.os >>, macos]
|
||||
steps:
|
||||
- restore_cache:
|
||||
name: Restore Homebrew packages
|
||||
keys:
|
||||
- nrwl-nx-homebrew-packages
|
||||
- run:
|
||||
name: Configure Detox Environment, Install applesimutils
|
||||
command: |
|
||||
HOMEBREW_NO_AUTO_UPDATE=1 brew tap wix/brew >/dev/null
|
||||
HOMEBREW_NO_AUTO_UPDATE=1 brew install applesimutils >/dev/null
|
||||
xcrun simctl shutdown all && xcrun simctl erase all
|
||||
no_output_timeout: 20m
|
||||
- save_cache:
|
||||
name: Save Homebrew Cache
|
||||
key: nrwl-nx-homebrew-packages
|
||||
paths:
|
||||
- /usr/local/Homebrew
|
||||
- ~/Library/Caches/Homebrew
|
||||
- when:
|
||||
condition:
|
||||
equal: [<< parameters.os >>, linux]
|
||||
steps:
|
||||
- run:
|
||||
command: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ca-certificates lsof
|
||||
- browser-tools/install-chrome
|
||||
- browser-tools/install-chromedriver
|
||||
- run-pnpm-install:
|
||||
os: << parameters.os >>
|
||||
|
||||
# -------------------------
|
||||
# JOBS
|
||||
# -------------------------
|
||||
jobs:
|
||||
# -------------------------
|
||||
# JOBS: Agent
|
||||
# -------------------------
|
||||
agent:
|
||||
parameters:
|
||||
os:
|
||||
type: string
|
||||
default: 'linux'
|
||||
pm:
|
||||
type: string
|
||||
default: 'pnpm'
|
||||
executor: << parameters.os >>
|
||||
environment:
|
||||
GIT_AUTHOR_EMAIL: test@test.com
|
||||
GIT_AUTHOR_NAME: Test
|
||||
GIT_COMMITTER_EMAIL: test@test.com
|
||||
GIT_COMMITTER_NAME: Test
|
||||
NX_E2E_CI_CACHE_KEY: e2e-circleci-<< parameters.os >>
|
||||
SELECTED_PM: << parameters.pm >>
|
||||
NX_E2E_RUN_E2E: 'true'
|
||||
NX_VERBOSE_LOGGING: 'false'
|
||||
NX_NATIVE_LOGGING: 'false'
|
||||
NX_PERF_LOGGING: 'false'
|
||||
steps:
|
||||
- run:
|
||||
name: Configure git metadata (needed for lerna smoke tests)
|
||||
command: |
|
||||
git config --global user.email test@test.com
|
||||
git config --global user.name "Test Test"
|
||||
- run:
|
||||
name: Set dynamic nx run variable
|
||||
command: |
|
||||
echo "export NX_CI_EXECUTION_ENV=\"<< parameters.os >>\";" >> $BASH_ENV
|
||||
- setup:
|
||||
os: << parameters.os >>
|
||||
- run:
|
||||
name: Agent
|
||||
command: pnpm nx-cloud start-agent
|
||||
no_output_timeout: 60m
|
||||
|
||||
# -------------------------
|
||||
# JOBS: Main Linux
|
||||
# -------------------------
|
||||
@@ -124,27 +160,20 @@ jobs:
|
||||
executor: linux
|
||||
environment:
|
||||
NX_E2E_CI_CACHE_KEY: e2e-circleci-linux
|
||||
NX_VERBOSE_LOGGING: 'false'
|
||||
NX_DAEMON: 'true'
|
||||
NX_PERF_LOGGING: 'false'
|
||||
NX_NATIVE_LOGGING: 'false'
|
||||
NX_E2E_RUN_E2E: 'true'
|
||||
NX_CI_EXECUTION_ENV: 'linux'
|
||||
steps:
|
||||
- checkout
|
||||
- run:
|
||||
name: Set dynamic nx run variable
|
||||
command: |
|
||||
echo "export NX_CI_EXECUTION_ENV=\"linux\";" >> $BASH_ENV
|
||||
- setup:
|
||||
os: linux
|
||||
- nx/set-shas:
|
||||
main-branch-name: 'master'
|
||||
- run: npx nx-cloud@next start-ci-run --distribute-on=".nx/workflows/dynamic-changesets.yaml" --stop-agents-after="e2e"
|
||||
- run:
|
||||
command: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ca-certificates lsof
|
||||
- browser-tools/install-chrome
|
||||
- browser-tools/install-chromedriver
|
||||
- install-sdkman
|
||||
- install-gradle:
|
||||
gradle-version: '8.5'
|
||||
- run-pnpm-install:
|
||||
os: linux
|
||||
- run: pnpm nx-cloud start-ci-run --stop-agents-after="e2e"
|
||||
- run:
|
||||
name: Check Documentation
|
||||
command: pnpm nx documentation --no-dte
|
||||
@@ -161,8 +190,12 @@ jobs:
|
||||
pnpm nx run-many -t check-imports check-commit check-lock-files check-codeowners documentation --parallel=1 --no-dte &
|
||||
pids+=($!)
|
||||
|
||||
(pnpm nx affected --targets=lint,test,build --base=$NX_BASE --head=$NX_HEAD --parallel=3 &&
|
||||
pnpm nx affected --targets=e2e,e2e-ci --base=$NX_BASE --head=$NX_HEAD --parallel=1) &
|
||||
pnpm nx affected --target=lint --base=$NX_BASE --head=$NX_HEAD --parallel=3 &
|
||||
pids+=($!)
|
||||
pnpm nx affected --target=test --base=$NX_BASE --head=$NX_HEAD --parallel=1 &
|
||||
pids+=($!)
|
||||
(pnpm nx affected --target=build --base=$NX_BASE --head=$NX_HEAD --parallel=3 &&
|
||||
pnpm nx affected --target=e2e --base=$NX_BASE --head=$NX_HEAD --parallel=1) &
|
||||
pids+=($!)
|
||||
|
||||
for pid in "${pids[@]}"; do
|
||||
@@ -175,29 +208,16 @@ jobs:
|
||||
executor: macos
|
||||
environment:
|
||||
NX_E2E_CI_CACHE_KEY: e2e-circleci-macos
|
||||
NX_DAEMON: 'false' # TODO: set to true after #18410
|
||||
NX_PERF_LOGGING: 'false'
|
||||
NX_CI_EXECUTION_ENV: 'macos'
|
||||
SELECTED_PM: 'npm' # explicitly define npm for macOS tests
|
||||
NX_SKIP_NX_CACHE: 'true' # TODO: Remove after #18410
|
||||
steps:
|
||||
- checkout
|
||||
- restore_cache:
|
||||
name: Restore Homebrew packages
|
||||
keys:
|
||||
- nrwl-nx-homebrew-packages
|
||||
- run:
|
||||
name: Configure Detox Environment, Install applesimutils
|
||||
name: Set dynamic nx run variable
|
||||
command: |
|
||||
HOMEBREW_NO_AUTO_UPDATE=1 brew tap wix/brew >/dev/null
|
||||
HOMEBREW_NO_AUTO_UPDATE=1 brew install applesimutils >/dev/null
|
||||
xcrun simctl shutdown all && xcrun simctl erase all
|
||||
no_output_timeout: 20m
|
||||
- save_cache:
|
||||
name: Save Homebrew Cache
|
||||
key: nrwl-nx-homebrew-packages
|
||||
paths:
|
||||
- /usr/local/Homebrew
|
||||
- ~/Library/Caches/Homebrew
|
||||
- run-pnpm-install:
|
||||
echo "export NX_CI_EXECUTION_ENV=\"macos\";" >> $BASH_ENV
|
||||
- setup:
|
||||
os: macos
|
||||
- rust/install
|
||||
- nx/set-shas:
|
||||
@@ -216,6 +236,22 @@ workflows:
|
||||
|
||||
build:
|
||||
jobs:
|
||||
- agent:
|
||||
name: 'agent1'
|
||||
- agent:
|
||||
name: 'agent2'
|
||||
- agent:
|
||||
name: 'agent3'
|
||||
- agent:
|
||||
name: 'agent4'
|
||||
- agent:
|
||||
name: 'agent5'
|
||||
- agent:
|
||||
name: 'agent6'
|
||||
- agent:
|
||||
name: 'agent7'
|
||||
- agent:
|
||||
name: 'agent8'
|
||||
- main-linux
|
||||
- mainmacos:
|
||||
name: main-macos-e2e
|
||||
|
||||
@@ -3,28 +3,26 @@
|
||||
{
|
||||
"name": "NxDevContainer",
|
||||
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
|
||||
"image": "mcr.microsoft.com/devcontainers/typescript-node:20-bullseye",
|
||||
"image": "mcr.microsoft.com/devcontainers/typescript-node:0-18",
|
||||
"features": {
|
||||
"ghcr.io/devcontainers/features/rust:1": {}
|
||||
},
|
||||
|
||||
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
||||
// 4211 = nx graph port
|
||||
"forwardPorts": [4211],
|
||||
|
||||
// Use 'postCreateCommand' to run commands after the container is created.
|
||||
"postCreateCommand": "./.devcontainer/postCreateCommand.sh",
|
||||
// Configure tool-specific properties.
|
||||
"postCreateCommand": "pnpm install",
|
||||
"customizations": {
|
||||
"vscode": {
|
||||
"extensions": [
|
||||
"nrwl.angular-console",
|
||||
"firsttris.vscode-jest-runner",
|
||||
"eamodio.gitlens"
|
||||
],
|
||||
"settings": {
|
||||
"debug.javascript.autoAttachFilter": "onlyWithFlag" // workaround for that issue: https://github.com/microsoft/vscode-js-debug/issues/374#issuecomment-622239998
|
||||
}
|
||||
"extensions": ["nrwl.angular-console"]
|
||||
}
|
||||
}
|
||||
|
||||
// Configure tool-specific properties.
|
||||
// "customizations": {},
|
||||
|
||||
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
|
||||
// "remoteUser": "root"
|
||||
}
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Update the underlying (Debian) OS, to make sure we have the latest security patches and libraries like 'GLIBC'
|
||||
sudo apt-get update && sudo apt-get -y upgrade
|
||||
|
||||
# Update pnpm
|
||||
#npm install -g pnpm
|
||||
|
||||
# Install dependencies
|
||||
pnpm install --frozen-lockfile
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
name: 🐞 Bug Report
|
||||
description: This form is to report unexpected behavior in Nx.
|
||||
labels: ["type: bug"]
|
||||
labels: [ "type: bug" ]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
@@ -53,13 +53,6 @@ body:
|
||||
label: Failure Logs
|
||||
description: Please include any relevant log snippets or files here. This will be automatically formatted into code, so no need for backticks.
|
||||
render: shell
|
||||
- type: input
|
||||
id: pm
|
||||
attributes:
|
||||
label: Package Manager Version
|
||||
description: |
|
||||
If `nx report` doesn't work, please provide the name and the version of your package manager.
|
||||
You can get version information by running `yarn --version`, `pnpm --version` or `npm --version`, depending on the package manager used.
|
||||
- type: checkboxes
|
||||
id: os
|
||||
attributes:
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
name: "\U0001F680 Feature Request"
|
||||
about: Suggest a new feature.
|
||||
labels: "type: feature"
|
||||
|
||||
---
|
||||
<!-- Please do your best to fill out all of the sections below! -->
|
||||
<!-- Use this issue type for concrete suggestions, otherwise, open a discussion type issue instead. -->
|
||||
|
||||
- [ ] I'd be willing to implement this feature ([contributing guide](https://github.com/nrwl/nx/blob/master/CONTRIBUTING.md))
|
||||
|
||||
|
||||
## Description
|
||||
<!-- What is the behavior that you would like to see introduced? -->
|
||||
|
||||
## Motivation
|
||||
<!-- Why do you believe this behavior would be beneficial? -->
|
||||
|
||||
## Suggested Implementation
|
||||
<!-- How do you imagine this might work? -->
|
||||
|
||||
## Alternate Implementations
|
||||
<!-- How else do you imagine this might work? -->
|
||||
@@ -1,17 +1,14 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: "\U0001F680 Feature Request"
|
||||
about: "Suggest a new feature to make Nx better"
|
||||
url: https://github.com/nrwl/nx/discussions/new?category=feature-requests
|
||||
- name: Start a Discussion
|
||||
about: "Start a discussion to share your experience with Nx"
|
||||
url: https://github.com/nrwl/nx/discussions/new/choose
|
||||
- name: Join the Discord
|
||||
url: https://go.nx.dev/community
|
||||
about: "The Nx Official Discord Server is a great place for questions to be asked and answered. Please use the #forum if you need help with your workspace!"
|
||||
- name: Are you looking for integration with a new tool?
|
||||
url: https://nx.dev/community
|
||||
about: "There are a lot of awesome Plugins for Nx provided by the community! Check here to see if there is a community plugin to integrate your tool."
|
||||
- name: Read the community guidelines
|
||||
about: "Please make sure you have read the submission guidelines before posting an issue"
|
||||
url: https://github.com/nrwl/nx/blob/master/CONTRIBUTING.md#-submitting-an-issue
|
||||
- name: Want to start a discussion?
|
||||
about: "Want to start a thread to discuss an idea? Use the discussions feature provided by GitHub."
|
||||
url: https://github.com/nrwl/nx/discussions
|
||||
- name: Have a question?
|
||||
url: https://go.nrwl.io/join-slack
|
||||
about: "The Community Slack is a great place for questions to be asked and answered. Please use the #support channel if you need help with your workspace!"
|
||||
- name: Are you looking for integration with a new tool?
|
||||
url: https://nx.dev/community
|
||||
about: "There are a lot of awesome Plugins for Nx provided by the community! Check here to see if there is a community plugin to integrate your tool."
|
||||
|
||||
@@ -42,7 +42,7 @@ Example:
|
||||
}]
|
||||
```
|
||||
|
||||
Once merged, your plugin will be available when running the `nx list` command, and will also be available in the Plugin Registry on [nx.dev](https://nx.dev/plugin-registry)
|
||||
Once merged, your plugin will be available when running the `nx list` command, and will also be available in the Plugin Registry on [nx.dev](https://nx.dev/extending-nx/registry)
|
||||
-->
|
||||
|
||||
# Community Plugin Submission
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
name: Unmergeable Labels Check
|
||||
name: Unmergable Labels Check
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
|
||||
@@ -2,7 +2,7 @@ name: E2E matrix
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 5 * * *"
|
||||
- cron: "0 0 * * *"
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
debug_enabled:
|
||||
@@ -14,7 +14,7 @@ on:
|
||||
env:
|
||||
CYPRESS_CACHE_FOLDER: ${{ github.workspace }}/.cypress
|
||||
|
||||
permissions: { }
|
||||
permissions: {}
|
||||
jobs:
|
||||
preinstall:
|
||||
runs-on: ${{ matrix.os }}
|
||||
@@ -24,21 +24,24 @@ jobs:
|
||||
- ubuntu-latest
|
||||
- macos-latest
|
||||
node_version:
|
||||
- 20
|
||||
- 19
|
||||
- 18
|
||||
- 16
|
||||
exclude:
|
||||
# run just node v20 on macos
|
||||
# run just node v18 on macos
|
||||
- os: macos-latest
|
||||
node_version: 18
|
||||
node_version: 19
|
||||
- os: macos-latest
|
||||
node_version: 16
|
||||
|
||||
name: Cache install (${{ matrix.os }}, node v${{ matrix.node_version }})
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Install PNPM
|
||||
run: |
|
||||
npm install -g @pnpm/exe@8.14
|
||||
npm install -g @pnpm/exe@8.3.1
|
||||
|
||||
- name: Set node
|
||||
uses: actions/setup-node@v3
|
||||
@@ -97,8 +100,9 @@ jobs:
|
||||
- ubuntu-latest
|
||||
- macos-latest
|
||||
node_version:
|
||||
- 20
|
||||
- 19
|
||||
- 18
|
||||
- 16
|
||||
package_manager:
|
||||
- npm
|
||||
- yarn
|
||||
@@ -106,37 +110,28 @@ jobs:
|
||||
project:
|
||||
- e2e-angular-core
|
||||
- e2e-angular-extensions
|
||||
- e2e-angular-module-federation
|
||||
- e2e-cypress
|
||||
- e2e-detox
|
||||
- e2e-esbuild
|
||||
- e2e-eslint
|
||||
- e2e-expo
|
||||
- e2e-gradle
|
||||
- e2e-jest
|
||||
- e2e-js
|
||||
- e2e-lerna-smoke-tests
|
||||
- e2e-next-core
|
||||
- e2e-next-extensions
|
||||
- e2e-linter
|
||||
- e2e-next
|
||||
- e2e-node
|
||||
- e2e-nuxt
|
||||
- e2e-nx-init
|
||||
- e2e-nx-misc
|
||||
- e2e-nx-plugin
|
||||
- e2e-nx-run
|
||||
- e2e-playwright
|
||||
- e2e-plugin
|
||||
- e2e-react-core
|
||||
- e2e-react-module-federation
|
||||
- e2e-react-extensions
|
||||
- e2e-react-native
|
||||
- e2e-release
|
||||
- e2e-remix
|
||||
- e2e-web
|
||||
- e2e-rollup
|
||||
- e2e-storybook
|
||||
- e2e-storybook-angular
|
||||
- e2e-vite
|
||||
- e2e-vue
|
||||
- e2e-web
|
||||
- e2e-webpack
|
||||
- e2e-workspace-create
|
||||
- e2e-workspace-create-npm
|
||||
@@ -156,8 +151,6 @@ jobs:
|
||||
codeowners: 'S04SS457V38'
|
||||
- project: e2e-angular-extensions
|
||||
codeowners: 'S04SS457V38'
|
||||
- project: e2e-angular-module-federation
|
||||
codeowners: 'S04SS457V38'
|
||||
- project: e2e-cypress
|
||||
codeowners: 'S04T16BTJJY'
|
||||
- project: e2e-detox
|
||||
@@ -166,19 +159,15 @@ jobs:
|
||||
codeowners: 'S04SJ6HHP0X'
|
||||
- project: e2e-expo
|
||||
codeowners: 'S04TNCNJG5N'
|
||||
- project: e2e-gradle
|
||||
codeowners: 'S04TNCNJG5N'
|
||||
- project: e2e-jest
|
||||
codeowners: 'S04T16BTJJY'
|
||||
- project: e2e-js
|
||||
codeowners: 'S04SJ6HHP0X'
|
||||
- project: e2e-lerna-smoke-tests
|
||||
codeowners: 'S04TNCVEETS'
|
||||
- project: e2e-eslint
|
||||
- project: e2e-linter
|
||||
codeowners: 'S04SYJGKSCT'
|
||||
- project: e2e-next-core
|
||||
codeowners: 'S04TNCNJG5N'
|
||||
- project: e2e-next-extensions
|
||||
- project: e2e-next
|
||||
codeowners: 'S04TNCNJG5N'
|
||||
- project: e2e-node
|
||||
codeowners: 'S04SJ6HHP0X'
|
||||
@@ -186,9 +175,7 @@ jobs:
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
- project: e2e-nx-misc
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
- project: e2e-plugin
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
- project: e2e-release
|
||||
- project: e2e-nx-plugin
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
- project: e2e-nx-run
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
@@ -204,18 +191,10 @@ jobs:
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-storybook
|
||||
codeowners: 'S04SVQ8H0G5'
|
||||
- project: e2e-playwright
|
||||
codeowners: 'S04SVQ8H0G5'
|
||||
- project: e2e-storybook-angular
|
||||
codeowners: 'S04SVQ8H0G5'
|
||||
- project: e2e-remix
|
||||
codeowners: 'S04SVQ8H0G5'
|
||||
- project: e2e-vite
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-vue
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-nuxt
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-webpack
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-workspace-create
|
||||
@@ -231,88 +210,124 @@ jobs:
|
||||
- os: ubuntu-latest
|
||||
project: e2e-expo
|
||||
# exclude non-CNW/Lerna tests from non-LTS node versions
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-angular-core
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-angular-extensions
|
||||
- node_version: 18
|
||||
project: e2e-angular-module-federation
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-cypress
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-detox
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-esbuild
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-expo
|
||||
- node_version: 18
|
||||
project: e2e-gradle
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-jest
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-js
|
||||
- node_version: 18
|
||||
project: e2e-eslint
|
||||
- node_version: 18
|
||||
project: e2e-next-core
|
||||
- node_version: 18
|
||||
project: e2e-next-extensions
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-linter
|
||||
- node_version: 16
|
||||
project: e2e-next
|
||||
- node_version: 16
|
||||
project: e2e-node
|
||||
- node_version: 18
|
||||
project: e2e-nuxt
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-nx-init
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-nx-misc
|
||||
- node_version: 18
|
||||
project: e2e-plugin
|
||||
- node_version: 18
|
||||
project: e2e-playwright
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-nx-plugin
|
||||
- node_version: 16
|
||||
project: e2e-lerna-smoke-tests
|
||||
- node_version: 16
|
||||
project: e2e-react-core
|
||||
- node_version: 18
|
||||
project: e2e-react-module-federation
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-react-extensions
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-react-native
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-web
|
||||
- node_version: 18
|
||||
project: e2e-remix
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-rollup
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-storybook
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-storybook-angular
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-vite
|
||||
- node_version: 18
|
||||
project: e2e-vue
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-webpack
|
||||
# run just npm v20 on macos
|
||||
- node_version: 19
|
||||
project: e2e-angular-core
|
||||
- node_version: 19
|
||||
project: e2e-angular-extensions
|
||||
- node_version: 19
|
||||
project: e2e-cypress
|
||||
- node_version: 19
|
||||
project: e2e-detox
|
||||
- node_version: 19
|
||||
project: e2e-esbuild
|
||||
- node_version: 19
|
||||
project: e2e-expo
|
||||
- node_version: 19
|
||||
project: e2e-jest
|
||||
- node_version: 19
|
||||
project: e2e-js
|
||||
- node_version: 19
|
||||
project: e2e-linter
|
||||
- node_version: 19
|
||||
project: e2e-next
|
||||
- node_version: 19
|
||||
project: e2e-node
|
||||
- node_version: 19
|
||||
project: e2e-nx-init
|
||||
- node_version: 19
|
||||
project: e2e-nx-misc
|
||||
- node_version: 19
|
||||
project: e2e-nx-plugin
|
||||
- node_version: 19
|
||||
project: e2e-lerna-smoke-tests
|
||||
- node_version: 19
|
||||
project: e2e-react-core
|
||||
- node_version: 19
|
||||
project: e2e-react-extensions
|
||||
- node_version: 19
|
||||
project: e2e-react-native
|
||||
- node_version: 19
|
||||
project: e2e-web
|
||||
- node_version: 19
|
||||
project: e2e-rollup
|
||||
- node_version: 19
|
||||
project: e2e-storybook
|
||||
- node_version: 19
|
||||
project: e2e-storybook-angular
|
||||
- node_version: 19
|
||||
project: e2e-vite
|
||||
- node_version: 19
|
||||
project: e2e-webpack
|
||||
# run just npm v18 on macos
|
||||
- os: macos-latest
|
||||
package_manager: yarn
|
||||
- os: macos-latest
|
||||
package_manager: pnpm
|
||||
- os: macos-latest
|
||||
node_version: 18
|
||||
node_version: 16
|
||||
- os: macos-latest
|
||||
node_version: 19
|
||||
fail-fast: false
|
||||
|
||||
name: ${{ matrix.os_name }}/${{ matrix.package_manager }}/${{ matrix.node_version }} ${{ join(matrix.project) }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Prepare dir for output
|
||||
run: mkdir -p outputs
|
||||
|
||||
- name: Install PNPM
|
||||
run: |
|
||||
npm install -g @pnpm/exe@8.7.4
|
||||
npm install -g @pnpm/exe@8.3.1
|
||||
|
||||
- name: Use Node.js ${{ matrix.node_version }}
|
||||
uses: actions/setup-node@v3
|
||||
@@ -399,12 +414,11 @@ jobs:
|
||||
npm_config_registry: http://localhost:4872
|
||||
YARN_REGISTRY: http://localhost:4872
|
||||
NX_CACHE_DIRECTORY: 'tmp'
|
||||
NX_E2E_SKIP_CLEANUP: 'true'
|
||||
NX_E2E_SKIP_BUILD_CLEANUP: 'true'
|
||||
NX_E2E_RUN_E2E: 'true'
|
||||
NX_E2E_VERBOSE_LOGGING: 'true'
|
||||
NX_PERF_LOGGING: 'false'
|
||||
NX_DAEMON: 'true'
|
||||
NX_SKIP_LOG_GROUPING: 'true'
|
||||
|
||||
- name: Save matrix config in file
|
||||
if: ${{ always() }}
|
||||
@@ -485,7 +499,7 @@ jobs:
|
||||
|--------------------------------|------|-------|------|`;
|
||||
failedProjects.forEach(matrix => {
|
||||
const project = matrix.project !== lastProject ? matrix.project : '...';
|
||||
result += `\n| ${project.padEnd(30)} | ${matrix.package_manager.padEnd(4)} | ${matrix.os_name} | v${matrix.node_version} |`
|
||||
result += `\n| ${project.padEnd(30)} | ${matrix.package_manager.padEnd(4)} | ${matrix.os_name} | v${matrix.node_version.toString().padEnd(3)} |`
|
||||
lastProject = matrix.project;
|
||||
});
|
||||
result += `\`\`\``;
|
||||
|
||||
@@ -2,7 +2,7 @@ name: E2E matrix (Windows)
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 5 * * *"
|
||||
- cron: "0 0 * * *"
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
debug_enabled:
|
||||
@@ -14,25 +14,26 @@ on:
|
||||
env:
|
||||
CYPRESS_CACHE_FOLDER: ${{ github.workspace }}/.cypress
|
||||
|
||||
permissions: { }
|
||||
permissions: {}
|
||||
jobs:
|
||||
preinstall:
|
||||
runs-on: windows-latest
|
||||
strategy:
|
||||
matrix:
|
||||
node_version:
|
||||
- 20
|
||||
- 19
|
||||
- 18
|
||||
- 16
|
||||
|
||||
name: Cache install (node v${{ matrix.node_version }})
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- uses: pnpm/action-setup@v2
|
||||
name: Install pnpm
|
||||
with:
|
||||
version: 8
|
||||
version: 8.3.1
|
||||
run_install: false
|
||||
|
||||
- name: Set node
|
||||
@@ -43,7 +44,7 @@ jobs:
|
||||
|
||||
- name: Cache node_modules
|
||||
id: cache-modules
|
||||
uses: actions/cache@v4
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
lookup-only: true
|
||||
path: '**/node_modules'
|
||||
@@ -62,7 +63,7 @@ jobs:
|
||||
|
||||
- name: Install Cypress
|
||||
if: steps.cache-cypress.outputs.cache-hit != 'true'
|
||||
run: pnpm cypress install
|
||||
run: npx cypress install
|
||||
|
||||
e2e:
|
||||
needs: preinstall
|
||||
@@ -72,40 +73,33 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
node_version:
|
||||
- 20
|
||||
- 19
|
||||
- 18
|
||||
- 16
|
||||
package_manager:
|
||||
- npm
|
||||
project:
|
||||
- e2e-angular-core
|
||||
- e2e-angular-extensions
|
||||
- e2e-angular-module-federation
|
||||
- e2e-cypress
|
||||
- e2e-esbuild
|
||||
- e2e-eslint
|
||||
- e2e-jest
|
||||
- e2e-js
|
||||
- e2e-lerna-smoke-tests
|
||||
- e2e-next-core
|
||||
- e2e-next-extensions
|
||||
- e2e-linter
|
||||
- e2e-next
|
||||
- e2e-node
|
||||
- e2e-nuxt
|
||||
- e2e-nx-init
|
||||
- e2e-nx-misc
|
||||
- e2e-nx-run
|
||||
- e2e-playwright
|
||||
- e2e-plugin
|
||||
- e2e-nx-run
|
||||
- e2e-react-core
|
||||
- e2e-react-module-federation
|
||||
- e2e-react-extensions
|
||||
- e2e-release
|
||||
- e2e-remix
|
||||
- e2e-web
|
||||
- e2e-rollup
|
||||
- e2e-storybook
|
||||
- e2e-storybook-angular
|
||||
- e2e-vite
|
||||
- e2e-vue
|
||||
- e2e-web
|
||||
- e2e-webpack
|
||||
- e2e-workspace-create
|
||||
- e2e-workspace-create-npm
|
||||
@@ -115,8 +109,6 @@ jobs:
|
||||
codeowners: 'S04SS457V38'
|
||||
- project: e2e-angular-extensions
|
||||
codeowners: 'S04SS457V38'
|
||||
- project: e2e-angular-module-federation
|
||||
codeowners: 'S04SS457V38'
|
||||
- project: e2e-cypress
|
||||
codeowners: 'S04T16BTJJY'
|
||||
- project: e2e-esbuild
|
||||
@@ -127,11 +119,9 @@ jobs:
|
||||
codeowners: 'S04SJ6HHP0X'
|
||||
- project: e2e-lerna-smoke-tests
|
||||
codeowners: 'S04TNCVEETS'
|
||||
- project: e2e-eslint
|
||||
- project: e2e-linter
|
||||
codeowners: 'S04SYJGKSCT'
|
||||
- project: e2e-next-core
|
||||
codeowners: 'S04TNCNJG5N'
|
||||
- project: e2e-next-extensions
|
||||
- project: e2e-next
|
||||
codeowners: 'S04TNCNJG5N'
|
||||
- project: e2e-node
|
||||
codeowners: 'S04SJ6HHP0X'
|
||||
@@ -141,8 +131,6 @@ jobs:
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
- project: e2e-plugin
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
- project: e2e-release
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
- project: e2e-nx-run
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
- project: e2e-react-core
|
||||
@@ -155,18 +143,10 @@ jobs:
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-storybook
|
||||
codeowners: 'S04SVQ8H0G5'
|
||||
- project: e2e-playwright
|
||||
codeowners: 'S04SVQ8H0G5'
|
||||
- project: e2e-storybook-angular
|
||||
codeowners: 'S04SVQ8H0G5'
|
||||
- project: e2e-remix
|
||||
codeowners: 'S04SVQ8H0G5'
|
||||
- project: e2e-vite
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-vue
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-nuxt
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-webpack
|
||||
codeowners: 'S04SJ6PL98X'
|
||||
- project: e2e-workspace-create
|
||||
@@ -175,66 +155,96 @@ jobs:
|
||||
codeowners: 'S04SYHYKGNP'
|
||||
exclude:
|
||||
# exclude non-CNW/Lerna tests from non-LTS node versions
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-angular-core
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-angular-extensions
|
||||
- node_version: 18
|
||||
project: e2e-angular-module-federation
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-cypress
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-esbuild
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-jest
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-js
|
||||
- node_version: 18
|
||||
project: e2e-eslint
|
||||
- node_version: 18
|
||||
project: e2e-next-core
|
||||
- node_version: 18
|
||||
project: e2e-next-extensions
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-linter
|
||||
- node_version: 16
|
||||
project: e2e-next
|
||||
- node_version: 16
|
||||
project: e2e-node
|
||||
- node_version: 18
|
||||
project: e2e-nuxt
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-nx-init
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-nx-misc
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-plugin
|
||||
- node_version: 18
|
||||
project: e2e-playwright
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-lerna-smoke-tests
|
||||
- node_version: 16
|
||||
project: e2e-react-core
|
||||
- node_version: 18
|
||||
project: e2e-react-module-federation
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-react-extensions
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-web
|
||||
- node_version: 18
|
||||
project: e2e-remix
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-rollup
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-storybook
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-storybook-angular
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-vite
|
||||
- node_version: 18
|
||||
project: e2e-vue
|
||||
- node_version: 18
|
||||
- node_version: 16
|
||||
project: e2e-webpack
|
||||
- node_version: 19
|
||||
project: e2e-angular-core
|
||||
- node_version: 19
|
||||
project: e2e-angular-extensions
|
||||
- node_version: 19
|
||||
project: e2e-cypress
|
||||
- node_version: 19
|
||||
project: e2e-esbuild
|
||||
- node_version: 19
|
||||
project: e2e-jest
|
||||
- node_version: 19
|
||||
project: e2e-js
|
||||
- node_version: 19
|
||||
project: e2e-linter
|
||||
- node_version: 19
|
||||
project: e2e-next
|
||||
- node_version: 19
|
||||
project: e2e-node
|
||||
- node_version: 19
|
||||
project: e2e-nx-init
|
||||
- node_version: 19
|
||||
project: e2e-nx-misc
|
||||
- node_version: 19
|
||||
project: e2e-plugin
|
||||
- node_version: 19
|
||||
project: e2e-lerna-smoke-tests
|
||||
- node_version: 19
|
||||
project: e2e-react-core
|
||||
- node_version: 19
|
||||
project: e2e-react-extensions
|
||||
- node_version: 19
|
||||
project: e2e-web
|
||||
- node_version: 19
|
||||
project: e2e-rollup
|
||||
- node_version: 19
|
||||
project: e2e-storybook
|
||||
- node_version: 19
|
||||
project: e2e-storybook-angular
|
||||
- node_version: 19
|
||||
project: e2e-vite
|
||||
- node_version: 19
|
||||
project: e2e-webpack
|
||||
fail-fast: false
|
||||
|
||||
name: ${{ matrix.project }} (v${{ matrix.node_version }})
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Prepare dir for output
|
||||
run: mkdir -p outputs
|
||||
@@ -242,7 +252,7 @@ jobs:
|
||||
- uses: pnpm/action-setup@v2
|
||||
name: Install pnpm
|
||||
with:
|
||||
version: 8.7.4
|
||||
version: 8.3.1
|
||||
run_install: false
|
||||
|
||||
- name: Use Node.js ${{ matrix.node_version }}
|
||||
@@ -292,12 +302,11 @@ jobs:
|
||||
SELECTED_PM: ${{ matrix.package_manager }}
|
||||
npm_config_registry: http://localhost:4872
|
||||
NX_CACHE_DIRECTORY: 'tmp'
|
||||
NX_E2E_SKIP_CLEANUP: 'true'
|
||||
NX_E2E_SKIP_BUILD_CLEANUP: 'true'
|
||||
NX_E2E_RUN_E2E: 'true'
|
||||
NX_E2E_VERBOSE_LOGGING: 'true'
|
||||
NX_PERF_LOGGING: 'false'
|
||||
NX_DAEMON: 'true'
|
||||
NX_SKIP_LOG_GROUPING: 'true'
|
||||
|
||||
- name: Save matrix config in file
|
||||
if: ${{ always() }}
|
||||
@@ -372,7 +381,7 @@ jobs:
|
||||
| Failed project | Node |
|
||||
|--------------------------------|------|`;
|
||||
failedProjects.forEach(matrix => {
|
||||
result += `\n| ${matrix.project.padEnd(30)} | v${matrix.node_version} |`
|
||||
result += `\n| ${matrix.project.padEnd(30)} | v${matrix.node_version.toString().padEnd(3)} |`
|
||||
});
|
||||
result += `\`\`\``;
|
||||
const message = result.split('\n').map(l => l.trim()).join('\n');
|
||||
|
||||
+66
-110
@@ -1,19 +1,15 @@
|
||||
name: publish
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 3 * * 2-6" # Tuesdays - Saturdays, at 3am UTC
|
||||
workflow_dispatch:
|
||||
release:
|
||||
types: [ published ]
|
||||
|
||||
env:
|
||||
DEBUG: napi:*
|
||||
NX_RUN_GROUP: ${{ github.run_id }}-${{ github.run_attempt }}
|
||||
|
||||
NPM_CONFIG_PROVENANCE: true
|
||||
on:
|
||||
workflow_dispatch:
|
||||
release:
|
||||
types: [published]
|
||||
jobs:
|
||||
build:
|
||||
if: ${{ github.repository_owner == 'nrwl' }}
|
||||
if: "!contains(github.event.head_commit.message, 'skip ci')"
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
@@ -86,14 +82,14 @@ jobs:
|
||||
name: stable - ${{ matrix.settings.target }} - node@18
|
||||
runs-on: ${{ matrix.settings.host }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
version: 8.2
|
||||
|
||||
- name: Setup node
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v3
|
||||
if: ${{ !matrix.settings.docker }}
|
||||
with:
|
||||
node-version: 18
|
||||
@@ -132,7 +128,7 @@ jobs:
|
||||
run: pnpm install --frozen-lockfile
|
||||
timeout-minutes: 30
|
||||
- name: Setup node x86
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v3
|
||||
if: matrix.settings.target == 'i686-pc-windows-msvc'
|
||||
with:
|
||||
node-version: 18
|
||||
@@ -156,95 +152,74 @@ jobs:
|
||||
name: bindings-${{ matrix.settings.target }}
|
||||
path: packages/**/*.node
|
||||
if-no-files-found: error
|
||||
|
||||
build-freebsd:
|
||||
if: ${{ github.repository_owner == 'nrwl' }}
|
||||
runs-on: macos-13-large
|
||||
name: Build FreeBSD
|
||||
timeout-minutes: 45
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
if: ${{ github.event_name != 'schedule' }}
|
||||
- name: Build
|
||||
id: build
|
||||
if: ${{ github.event_name != 'schedule' }}
|
||||
uses: cross-platform-actions/action@v0.22.0
|
||||
env:
|
||||
DEBUG: napi:*
|
||||
RUSTUP_IO_THREADS: 1
|
||||
NX_PREFER_TS_NODE: true
|
||||
PLAYWRIGHT_BROWSERS_PATH: 0
|
||||
with:
|
||||
operating_system: freebsd
|
||||
version: '13.2'
|
||||
architecture: x86-64
|
||||
environment_variables: DEBUG RUSTUP_IO_THREADS CI NX_PREFER_TS_NODE PLAYWRIGHT_BROWSERS_PATH
|
||||
shell: bash
|
||||
run: |
|
||||
env
|
||||
whoami
|
||||
sudo pkg install -y -f node libnghttp2 npm git
|
||||
sudo npm install --location=global --ignore-scripts pnpm
|
||||
curl https://sh.rustup.rs -sSf --output rustup.sh
|
||||
sh rustup.sh -y --profile minimal --default-toolchain stable
|
||||
source "$HOME/.cargo/env"
|
||||
echo "~~~~ rustc --version ~~~~"
|
||||
rustc --version
|
||||
echo "~~~~ node -v ~~~~"
|
||||
node -v
|
||||
echo "~~~~ pnpm --version ~~~~"
|
||||
pnpm --version
|
||||
pwd
|
||||
ls -lah
|
||||
whoami
|
||||
env
|
||||
freebsd-version
|
||||
mkdir -p /Users/runner/work/_temp/_github_workflow
|
||||
echo "{}" > /Users/runner/work/_temp/_github_workflow/event.json
|
||||
pnpm install --frozen-lockfile --ignore-scripts
|
||||
pnpm nx run-many --outputStyle stream --target=build-native -- --target=x86_64-unknown-freebsd
|
||||
pnpm nx reset
|
||||
rm -rf node_modules
|
||||
rm -rf dist
|
||||
echo "KILL ALL NODE PROCESSES"
|
||||
killall node || true
|
||||
echo "COMPLETE"
|
||||
- name: Upload artifact
|
||||
if: ${{ github.event_name != 'schedule' }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: bindings-freebsd
|
||||
path: packages/**/*.node
|
||||
if-no-files-found: error
|
||||
|
||||
runs-on: macos-12
|
||||
name: Build FreeBSD
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Build
|
||||
id: build
|
||||
uses: vmactions/freebsd-vm@v0
|
||||
env:
|
||||
DEBUG: napi:*
|
||||
RUSTUP_HOME: /usr/local/rustup
|
||||
CARGO_HOME: /usr/local/cargo
|
||||
RUSTUP_IO_THREADS: 1
|
||||
with:
|
||||
envs: DEBUG RUSTUP_HOME CARGO_HOME RUSTUP_IO_THREADS
|
||||
usesh: true
|
||||
mem: 4096
|
||||
prepare: |
|
||||
pkg install -y -f curl node libnghttp2 npm
|
||||
npm install --location=global --ignore-scripts pnpm
|
||||
curl https://sh.rustup.rs -sSf --output rustup.sh
|
||||
sh rustup.sh -y --profile minimal --default-toolchain stable
|
||||
export PATH="/usr/local/cargo/bin:$PATH"
|
||||
echo "~~~~ rustc --version ~~~~"
|
||||
rustc --version
|
||||
echo "~~~~ node -v ~~~~"
|
||||
node -v
|
||||
echo "~~~~ pnpm --version ~~~~"
|
||||
pnpm --version
|
||||
run: |
|
||||
export PATH="/usr/local/cargo/bin:$PATH"
|
||||
pwd
|
||||
ls -lah
|
||||
whoami
|
||||
env
|
||||
freebsd-version
|
||||
mkdir -p /Users/runner/work/_temp/_github_workflow
|
||||
echo "{}" > /Users/runner/work/_temp/_github_workflow/event.json
|
||||
pnpm install --frozen-lockfile --ignore-scripts
|
||||
pnpm nx run-many --target=build-native -- --target=x86_64-unknown-freebsd
|
||||
rm -rf node_modules
|
||||
rm -rf dist
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: bindings-freebsd
|
||||
path: packages/**/*.node
|
||||
if-no-files-found: error
|
||||
publish:
|
||||
if: ${{ github.repository_owner == 'nrwl' }}
|
||||
if: ${{ github.event_name == 'release' && github.repository_owner == 'nrwl' }}
|
||||
name: Publish
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
id-token: write
|
||||
contents: write
|
||||
needs:
|
||||
- build-freebsd
|
||||
- build
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
NPM_CONFIG_PROVENANCE: true
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v3
|
||||
- uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
version: 8.2
|
||||
- name: Setup node
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 18
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
check-latest: true
|
||||
cache: 'pnpm'
|
||||
- name: Check NPM Credentials
|
||||
run: npm whoami && echo "NPM credentials are valid" || (echo "NPM credentials are invalid or have expired." && exit 1)
|
||||
- name: Install dependencies
|
||||
run: pnpm install --frozen-lockfile
|
||||
- name: Download all artifacts
|
||||
@@ -257,27 +232,8 @@ jobs:
|
||||
- name: Publish
|
||||
run: |
|
||||
git checkout -b publish/$GITHUB_REF_NAME
|
||||
# If triggered by the cron, create a canary release
|
||||
if [ "${{ github.event_name }}" = "schedule" ]; then
|
||||
VERSION="canary"
|
||||
else
|
||||
# Otherwise, use the tag name (if triggered via release), or explicit version (if triggered via workflow_dispatch)
|
||||
VERSION="${GITHUB_REF_NAME}"
|
||||
fi
|
||||
# If triggered via workflow_dispatch, perform a dry-run
|
||||
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
|
||||
DRY_RUN="--dry-run"
|
||||
else
|
||||
DRY_RUN=""
|
||||
fi
|
||||
pnpm nx-release --local=false $VERSION $DRY_RUN
|
||||
- name: Trigger Docs Release
|
||||
# Publish docs only on a full release
|
||||
if: ${{ !github.event.release.prerelease }}
|
||||
run: |
|
||||
# The GITHUB_REF_NAME is a full version (i.e. 17.3.2). The branchName will only use the major version number.
|
||||
# We will publish docs to the website branch based on the current tag (i.e. website-17)
|
||||
branchName=website-${GITHUB_REF_NAME%.*.*}
|
||||
# We force recreate the branch in order to always be up to date and avoid merge conflicts within the automated workflow
|
||||
git branch -f $branchName
|
||||
git push -f origin $branchName
|
||||
npm config set //registry.npmjs.org/:_authToken=$NPM_TOKEN
|
||||
pnpm nx-release --local=false $GITHUB_REF_NAME
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
|
||||
+1
-22
@@ -12,26 +12,19 @@ tmp
|
||||
jest.debug.config.js
|
||||
.tool-versions
|
||||
/.nx-cache
|
||||
/.nx
|
||||
/.verdaccio/build/local-registry
|
||||
/graph/client/src/assets/environment.js
|
||||
/graph/client/src/assets/dev/environment.js
|
||||
/graph/client/src/assets/generated-project-graphs
|
||||
/graph/client/src/assets/generated-task-graphs
|
||||
/graph/client/src/assets/generated-task-inputs
|
||||
/graph/client/src/assets/generated-source-maps
|
||||
/nx-dev/nx-dev/public/documentation
|
||||
/nx-dev/nx-dev/public/images/open-graph
|
||||
|
||||
# Issues scraper creates these files, stored by github's cache
|
||||
/scripts/issues-scraper/cached
|
||||
|
||||
# We don't commit a CHANELGELOG.md file to the repo, we only create Github releases
|
||||
# Lerna creates this
|
||||
CHANGELOG.md
|
||||
|
||||
# Next.js
|
||||
.next
|
||||
out
|
||||
|
||||
# Angular Cache
|
||||
.angular
|
||||
@@ -39,19 +32,5 @@ out
|
||||
# Local dev files
|
||||
.env
|
||||
.bashrc
|
||||
.nx
|
||||
|
||||
*.node
|
||||
|
||||
# Fix for issue when working on the repo in a dev container
|
||||
.pnpm-store
|
||||
.nx/cache
|
||||
|
||||
.cargo/.package-cache
|
||||
.cargo/bin/
|
||||
.cargo/env
|
||||
.cargo/registry/
|
||||
.local/
|
||||
.npm/
|
||||
.profile
|
||||
.rustup/
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
launch-templates:
|
||||
linux-medium:
|
||||
resource-class: 'docker_linux_amd64/medium+'
|
||||
image: 'ubuntu22.04-node20.11-v3'
|
||||
env:
|
||||
GIT_AUTHOR_EMAIL: test@test.com
|
||||
GIT_AUTHOR_NAME: Test
|
||||
GIT_COMMITTER_EMAIL: test@test.com
|
||||
GIT_COMMITTER_NAME: Test
|
||||
SELECTED_PM: 'pnpm'
|
||||
NPM_CONFIG_PREFIX: '/home/workflows/.npm-global'
|
||||
init-steps:
|
||||
- name: Checkout
|
||||
uses: 'nrwl/nx-cloud-workflows/v3.6/workflow-steps/checkout/main.yaml'
|
||||
- name: Cache restore
|
||||
uses: 'nrwl/nx-cloud-workflows/v3.6/workflow-steps/cache/main.yaml'
|
||||
env:
|
||||
KEY: 'pnpm-lock.yaml'
|
||||
PATHS: |
|
||||
node_modules
|
||||
~/.cache/Cypress
|
||||
~/.cache/ms-playwright
|
||||
~/.pnpm-store
|
||||
~/.sdkman
|
||||
~/.sdkman/candidates/gradle
|
||||
BASE_BRANCH: 'master'
|
||||
- name: Install e2e deps
|
||||
script: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ca-certificates lsof
|
||||
- name: Install Pnpm
|
||||
script: |
|
||||
npm install -g pnpm@8.15.5
|
||||
|
||||
- name: Pnpm Install
|
||||
script: |
|
||||
pnpm install --frozen-lockfile
|
||||
|
||||
- name: Install Browsers
|
||||
script: |
|
||||
pnpm exec cypress install
|
||||
pnpm exec playwright install
|
||||
|
||||
- name: Install Rust
|
||||
script: |
|
||||
curl --proto '=https' --tlsv1.3 https://sh.rustup.rs -sSf | sh -s -- -y
|
||||
source "$HOME/.cargo/env"
|
||||
rustup toolchain install 1.70.0
|
||||
|
||||
- name: Configure git metadata (needed for lerna smoke tests)
|
||||
script: |
|
||||
git config --global user.email test@test.com
|
||||
git config --global user.name "Test Test"
|
||||
|
||||
- name: Load Cargo Env
|
||||
script: echo "PATH=$HOME/.cargo/bin:$PATH" >> $NX_CLOUD_ENV
|
||||
|
||||
- name: Install zip and unzip
|
||||
script: sudo apt-get -yqq install zip unzip
|
||||
|
||||
- name: Install SDKMAN and gradle
|
||||
script: |
|
||||
if [ ! -d $HOME/.sdkman ]
|
||||
then
|
||||
curl -s "https://get.sdkman.io" | bash
|
||||
source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
fi
|
||||
sdk version
|
||||
if [ ! -d $HOME/.sdkman/candidates/gradle/8.5 ]
|
||||
then
|
||||
sdk install gradle 8.5
|
||||
fi
|
||||
gradle --version
|
||||
echo "PATH=$HOME/.sdkman/candidates/gradle/8.5/bin:$PATH" >> $NX_CLOUD_ENV
|
||||
@@ -1,4 +0,0 @@
|
||||
distribute-on:
|
||||
small-changeset: 8 linux-medium
|
||||
medium-changeset: 10 linux-medium
|
||||
large-changeset: 12 linux-medium
|
||||
+1
-7
@@ -16,9 +16,7 @@ packages/jest/src/schematics/**/files/**/*.json
|
||||
packages/nx/src/plugins/js/lock-file/__fixtures__/**/*.*
|
||||
packages/**/schematics/**/files/**/*.html
|
||||
packages/**/generators/**/files/**/*.html
|
||||
packages/nx/src/native/**/*.rs
|
||||
packages/nx/src/native/index.js
|
||||
packages/nx/src/native/index.d.ts
|
||||
packages/nx/src/native/
|
||||
nx-dev/nx-dev/.next/
|
||||
nx-dev/nx-dev/public/documentation
|
||||
graph/client/src/assets/environment.js
|
||||
@@ -36,7 +34,3 @@ graph/client/src/assets/generated-task-graphs
|
||||
/dist
|
||||
/.env
|
||||
CODEOWNERS
|
||||
|
||||
/.nx/cache
|
||||
|
||||
.pnpm-store
|
||||
|
||||
+11
-33
@@ -6,12 +6,11 @@
|
||||
/tools/**/* @FrozenPandaz @vsavkin @AgentEnder @jaysoo @JamesHenry
|
||||
package.json @nrwl/nx-core-reviewers
|
||||
pnpm-lock.yaml @nrwl/nx-core-reviewers
|
||||
rust-toolchain @nrwl/nx-native-reviewers
|
||||
|
||||
# Docs Site + Graph
|
||||
/docs @nrwl/nx-docs-reviewers
|
||||
/docs/nx-cloud @StalkAltan @rarmatei @nrwl/nx-docs-reviewers
|
||||
/graph/** @philipjfulcher @FrozenPandaz @bcabanes @MaxKless @xiongemi
|
||||
/graph/** @philipjfulcher @FrozenPandaz @bcabanes
|
||||
/images @nrwl/nx-docs-reviewers
|
||||
/nx-dev/** @nrwl/nx-docs-reviewers
|
||||
/typedoc-theme @nrwl/nx-docs-reviewers
|
||||
@@ -24,7 +23,6 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
/packages/angular/** @nrwl/nx-angular-reviewers
|
||||
/e2e/angular-core/** @nrwl/nx-angular-reviewers
|
||||
/e2e/angular-extensions/** @nrwl/nx-angular-reviewers
|
||||
/e2e/angular-module-federation/** @nrwl/nx-angular-reviewers
|
||||
/packages/angular/plugins/component-testing.ts @nrwl/nx-angular-reviewers @nrwl/nx-testing-tools-reviewers
|
||||
/packages/angular/src/generators/cypress-component-configuration/** @nrwl/nx-angular-reviewers @nrwl/nx-testing-tools-reviewers
|
||||
/packages/angular/src/generators/component-test/** @nrwl/nx-angular-reviewers @nrwl/nx-testing-tools-reviewers
|
||||
@@ -36,11 +34,9 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
/docs/shared/packages/next/** @nrwl/nx-react-reviewers @nrwl/nx-docs-reviewers
|
||||
/packages/react/** @nrwl/nx-react-reviewers
|
||||
/e2e/react-core/** @nrwl/nx-react-reviewers
|
||||
/e2e/react-module-federation/** @nrwl/nx-react-reviewers @coly010
|
||||
/e2e/react-extensions/** @nrwl/nx-react-reviewers
|
||||
/packages/next/** @nrwl/nx-react-reviewers
|
||||
/e2e/next-core/** @nrwl/nx-react-reviewers
|
||||
/e2e/next-extensions/** @nrwl/nx-react-reviewers
|
||||
/e2e/next/** @nrwl/nx-react-reviewers
|
||||
/packages/react/plugins/component-testing/** @nrwl/nx-react-reviewers @nrwl/nx-testing-tools-reviewers
|
||||
/packages/react/src/generators/cypress-component-configuration/** @nrwl/nx-react-reviewers @nrwl/nx-testing-tools-reviewers
|
||||
/packages/react/src/generators/component-test/** @nrwl/nx-react-reviewers @nrwl/nx-testing-tools-reviewers
|
||||
@@ -57,17 +53,6 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
/packages/react-native/** @nrwl/nx-react-reviewers
|
||||
/e2e/react-native/** @nrwl/nx-react-reviewers
|
||||
|
||||
## remix
|
||||
/docs/generated/packages/remix/** @nrwl/nx-react-reviewers @nrwl/nx-docs-reviewers @Coly010
|
||||
/packages/remix/** @nrwl/nx-react-reviewers @Coly010
|
||||
/e2e/remix/** @nrwl/nx-react-reviewers @Coly010
|
||||
|
||||
# Vue
|
||||
/packages/vue/** @nrwl/nx-vue-reviewers
|
||||
/e2e/vue/** @nrwl/nx-vue-reviewers
|
||||
/packages/nuxt/** @nrwl/nx-vue-reviewers
|
||||
/e2e/nuxt/** @nrwl/nx-vue-reviewers
|
||||
|
||||
## Node
|
||||
/docs/generated/packages/node/** @nrwl/nx-node-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/generated/packages/nest/** @nrwl/nx-node-reviewers @nrwl/nx-docs-reviewers
|
||||
@@ -97,7 +82,6 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
/packages/web/** @nrwl/nx-js-reviewers
|
||||
/e2e/web/** @nrwl/nx-js-reviewers
|
||||
/packages/webpack/** @nrwl/nx-js-reviewers
|
||||
/packages/webpack/src/utils/module-federation @jaysoo @Coly010
|
||||
/e2e/webpack/** @nrwl/nx-js-reviewers
|
||||
/packages/esbuild/** @nrwl/nx-js-reviewers
|
||||
/e2e/esbuild/** @nrwl/nx-js-reviewers
|
||||
@@ -108,11 +92,9 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
|
||||
## Tools
|
||||
/docs/generated/packages/cypress/** @nrwl/nx-testing-tools-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/shared/packages/cypress/** @nrwl/nx-testing-tools-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/generated/packages/jest/** @nrwl/nx-testing-tools-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/shared/packages/jest/** @nrwl/nx-testing-tools-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/generated/packages/playwright/** @nrwl/nx-testing-tools-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/shared/packages/playwright/** @nrwl/nx-testing-tools-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/shared/packages/cypress/** @nrwl/nx-testing-tools-reviewers @nrwl/nx-docs-reviewers
|
||||
/packages/cypress/** @nrwl/nx-testing-tools-reviewers
|
||||
/e2e/cypress/** @nrwl/nx-testing-tools-reviewers
|
||||
/packages/jest/** @nrwl/nx-testing-tools-reviewers
|
||||
@@ -122,11 +104,11 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
|
||||
# Linter
|
||||
/docs/generated/packages/eslint-plugin/** @nrwl/nx-linter-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/generated/packages/eslint/** @nrwl/nx-linter-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/shared/packages/eslint/** @nrwl/nx-linter-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/generated/packages/linter/** @nrwl/nx-linter-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/shared/packages/linter/** @nrwl/nx-linter-reviewers @nrwl/nx-docs-reviewers
|
||||
/packages/eslint-plugin/** @nrwl/nx-linter-reviewers
|
||||
/packages/eslint/** @nrwl/nx-linter-reviewers
|
||||
/e2e/eslint/** @nrwl/nx-linter-reviewers
|
||||
/packages/linter/** @nrwl/nx-linter-reviewers
|
||||
/e2e/linter/** @nrwl/nx-linter-reviewers
|
||||
.eslint* @nrwl/nx-linter-reviewers
|
||||
|
||||
# Storybook
|
||||
@@ -140,13 +122,11 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
/docs/generated/devkit/** @nrwl/nx-devkit-reviewers @nrwl/nx-docs-reviewers
|
||||
/docs/generated/packages/devkit/** @nrwl/nx-devkit-reviewers @nrwl/nx-docs-reviewers
|
||||
/packages/devkit/** @nrwl/nx-devkit-reviewers
|
||||
/packages/devkit/index.ts @FrozenPandaz @vsavkin
|
||||
/packages/devkit/index.js @FrozenPandaz @vsavkin
|
||||
/packages/devkit/index.d.ts @FrozenPandaz @vsavkin
|
||||
/packages/devkit/public-api.ts @FrozenPandaz @vsavkin
|
||||
/packages/devkit/nx.ts @FrozenPandaz @vsavkin
|
||||
|
||||
# Gradle
|
||||
/packages/gradle/** @FrozenPandaz @xiongemi
|
||||
/e2e/gradle/** @FrozenPandaz @xiongemi
|
||||
/packages/devkit/src/utils/module-federation @jaysoo @Coly010
|
||||
|
||||
# Nx-Plugin
|
||||
/docs/generated/packages/plugin/** @nrwl/nx-devkit-reviewers @nrwl/nx-docs-reviewers
|
||||
@@ -171,12 +151,11 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
/packages/workspace/** @nrwl/nx-core-reviewers
|
||||
/e2e/workspace-create/** @nrwl/nx-core-reviewers
|
||||
/e2e/workspace-create-npm/** @nrwl/nx-core-reviewers
|
||||
/e2e/release/** @nrwl/nx-core-reviewers
|
||||
|
||||
# Misc
|
||||
/e2e/lerna-smoke-tests/** @vsavkin @JamesHenry
|
||||
/e2e/utils/** @meeroslav @nrwl/nx-testing-tools-reviewers @vsavkin @mandarini
|
||||
/community @nrwl/nx-docs-reviewers
|
||||
/community @nrwl/nx-devkit-reviewers
|
||||
/CONTRIBUTING.md @FrozenPandaz @isaacplmann
|
||||
/CODE_OF_CONDUCT.md @FrozenPandaz @isaacplmann
|
||||
/CODEOWNERS @FrozenPandaz @AgentEnder
|
||||
@@ -187,7 +166,6 @@ rust-toolchain @nrwl/nx-native-reviewers
|
||||
|
||||
# CI
|
||||
/.circleci/** @nrwl/nx-pipelines-reviewers
|
||||
/.nx/workflows/** @nrwl/nx-pipelines-reviewers
|
||||
/.github/** @nrwl/nx-pipelines-reviewers
|
||||
/.husky/** @nrwl/nx-pipelines-reviewers
|
||||
/packages/workspace/src/generators/ci-workflow/** @nrwl/nx-pipelines-reviewers
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@
|
||||
|
||||
As contributors and maintainers of the Nx project, we pledge to respect everyone who contributes by posting issues, updating documentation, submitting pull requests, providing feedback in comments, and any other activities.
|
||||
|
||||
Communication through any of Nx's channels (GitHub, Gitter, Discord, IRC, mailing lists, Twitter, etc.) must be constructive and never resort to personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct.
|
||||
Communication through any of Nx's channels (GitHub, Gitter, Slack, IRC, mailing lists, Twitter, etc.) must be constructive and never resort to personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct.
|
||||
|
||||
We promise to extend courtesy and respect to everyone involved in this project regardless of gender, gender identity, sexual orientation, disability, age, race, ethnicity, religion, or level of experience. We expect anyone contributing to the Nx project to do the same.
|
||||
|
||||
|
||||
+10
-12
@@ -76,13 +76,13 @@ Check out [this video for a live walkthrough](https://youtu.be/Tx257WpNsxc) or f
|
||||
- Run `pnpm local-registry` in Terminal 1 (keep it running)
|
||||
- Run `npm adduser --registry http://localhost:4873` in Terminal 2 (real credentials are not required, you just need to
|
||||
be logged in. You can use test/test/test@test.io.)
|
||||
- Run `pnpm nx-release 18.0.0 --local` in Terminal 2 - you can choose any nonexistent version number here, but it's recommended to use the next major
|
||||
- Run `pnpm nx-release 17.0.0 --local` in Terminal 2 - you can choose any nonexistent version number here, but it's recommended to use the next major
|
||||
- Run `cd ./tmp` in Terminal 2
|
||||
- Run `npx create-nx-workspace@18.0.0` in Terminal 2
|
||||
- Run `npx create-nx-workspace@17.0.0` in Terminal 2
|
||||
|
||||
If you have problems publishing, make sure you use Node 18 and NPM 8.
|
||||
|
||||
**NOTE:** To use this newly published local version, you need to make a new workspace, run `nx migrate` or change all of your target packages to this new version, eg: `"nx": "^18.0.0",` and re-run `pnpm i` in your testing project.
|
||||
**NOTE:** To use this newly published local version, you need to make a new workspace or change all of your target packages to this new version, eg: `"nx": "^17.0.0",` and re-run `pnpm i` in your testing project.
|
||||
|
||||
### Publishing for Yarn 2+ (Berry)
|
||||
|
||||
@@ -112,7 +112,9 @@ Yarn Berry operates slightly differently than Yarn Classic. In order to publish
|
||||
- localhost
|
||||
```
|
||||
|
||||
- Run `pnpm nx-release minor --local` in Terminal 2 to publish next minor version. The output will report the version of published packages.
|
||||
- Run `pnpm nx-release --local` in Terminal 2 to publish next minor version. If this version already exists, you can
|
||||
bump the minor version in `lerna.json` to toggle the next minor. The output will report the version of published
|
||||
packages.
|
||||
- Go to your target folder (e.g. `cd ./tmp`) in Terminal 2
|
||||
- Run `yarn dlx create-nx-workspace@123.4.5` in Terminal 2 (replace `123.4.5` with the version that got published).
|
||||
|
||||
@@ -177,8 +179,6 @@ The `docs/map.json` file is considered our source of truth for our site's struct
|
||||
new page to our documentation to ensure that it is included in the documentation site. We also run automated scripts
|
||||
based on this `map.json` data to safeguard against common human errors that could break our site.
|
||||
|
||||
When you make a change to the `map.json` file, make sure to run `pnpm documentation` to propagate your changes to the `nx-dev` application.
|
||||
|
||||
#### Nx-Dev Application
|
||||
|
||||
Our public `nx.dev` documentation site is a [Next.js](https://nextjs.org/) application, that can be found in
|
||||
@@ -211,10 +211,10 @@ adjusting the docs.
|
||||
To run `nx-dev` locally, run the command:
|
||||
|
||||
```bash
|
||||
npx nx serve-docs nx-dev
|
||||
npx nx serve nx-dev
|
||||
```
|
||||
|
||||
You can then access the application locally at `localhost:4200`. Changes to markdown documentation files will be automatically applied to the site when you refresh the browser.
|
||||
You can then access the application locally at `localhost:4200`.
|
||||
|
||||
#### Troubleshooting: `JavaScript heap out of memory`
|
||||
|
||||
@@ -318,17 +318,15 @@ The scope must be one of the following:
|
||||
- nest - anything Nest specific
|
||||
- nextjs - anything Next specific
|
||||
- node - anything Node specific
|
||||
- nx-cloud - anything Nx Cloud specific
|
||||
- nx-cloud - anything NxCloud specific
|
||||
- nx-plugin - anything Nx Plugin specific
|
||||
- nx-dev - anything related to docs infrastructure
|
||||
- react - anything React specific
|
||||
- react-native - anything React Native specific
|
||||
- release - anything related to nx release
|
||||
- repo - anything related to managing the Nx repo itself
|
||||
- storybook - anything Storybook specific
|
||||
- testing - anything testing specific (e.g., Jest or Cypress)
|
||||
- vite - anything Vite specific
|
||||
- vue - anything Vue specific
|
||||
- web - anything Web specific
|
||||
- webpack - anything Webpack specific
|
||||
- misc - misc stuff
|
||||
@@ -345,7 +343,7 @@ Including the issue number that the PR relates to also helps with tracking.
|
||||
```plain
|
||||
feat(angular): add an option to generate lazy-loadable modules
|
||||
|
||||
`nx generate lib mylib --lazy` provisions the mylib project in .eslintrc.json
|
||||
`nx generate lib mylib --lazy` provisions the mylib project in tslint.json
|
||||
|
||||
Closes #157
|
||||
```
|
||||
|
||||
Generated
+315
-782
File diff suppressed because it is too large
Load Diff
+1
-2
@@ -1,8 +1,7 @@
|
||||
|
||||
[workspace]
|
||||
resolver = '2'
|
||||
members = [
|
||||
'packages/nx',
|
||||
'packages/nx'
|
||||
]
|
||||
|
||||
[profile.release]
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
(The MIT License)
|
||||
|
||||
Copyright (c) 2017-2024 Narwhal Technologies Inc.
|
||||
Copyright (c) 2017-2023 Narwhal Technologies Inc.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<p style="text-align: center;">
|
||||
<picture>
|
||||
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-dark.svg">
|
||||
<img alt="Nx - Smart Monorepos · Fast CI" src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-light.svg" width="100%">
|
||||
<img alt="Nx - Smart, Fast and Extensible Build System" src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-light.svg" width="100%">
|
||||
</picture>
|
||||
</p>
|
||||
|
||||
@@ -13,15 +13,15 @@
|
||||
[]()
|
||||
[](http://commitizen.github.io/cz-cli/)
|
||||
[](https://gitter.im/nrwl-nx/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
[](https://go.nx.dev/community)
|
||||
[](https://go.nrwl.io/join-slack)
|
||||
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
# Smart Monorepos · Fast CI
|
||||
# Smart, Fast and Extensible Build System
|
||||
|
||||
Nx is a build system with built-in tooling and advanced CI capabilities. It helps you maintain and scale monorepos, both locally and on CI.
|
||||
Nx is a next generation build system with first class monorepo support and powerful integrations.
|
||||
|
||||
A few links to help you get started:
|
||||
|
||||
@@ -32,11 +32,11 @@ A few links to help you get started:
|
||||
- [Blog Posts About Nx](https://blog.nrwl.io/nx/home)
|
||||
|
||||
<p style="text-align: center;"><a href="https://nx.dev/#learning-materials" target="_blank" rel="noreferrer"><img src="./images/nx-courses-and-videos.svg"
|
||||
width="100%" alt="Nx - Smart Monorepos · Fast CI"></a></p>
|
||||
width="100%" alt="Nx - Smart, Fast and Extensible Build System"></a></p>
|
||||
|
||||
# Engage with the Core Team and the Community
|
||||
|
||||
- [Nx.Dev Community Page: Community Discord Channel, Newsletter, etc.](https://nx.dev/community)
|
||||
- [Nx.Dev Community Page: Community Slack Channel, Newsletter, etc.](https://nx.dev/community)
|
||||
- [The Nx Show Playlist on YouTube](https://www.youtube.com/playlist?list=PLakNactNC1dE8KLQ5zd3fQwu_yQHjTmR5). It's a
|
||||
regular YouTube stream where we talk all things Nx. Join the stream, ask questions, etc.
|
||||
- [Follow Nx on Twitter](https://twitter.com/NxDevTools)
|
||||
@@ -73,7 +73,7 @@ help you get started.
|
||||
|  |  |  |  |
|
||||
| [xiongemi](https://github.com/xiongemi) | [meeroslav](https://github.com/meeroslav) | [leosvelperez](https://github.com/leosvelperez) | [ZackDeRose](https://github.com/ZackDeRose) |
|
||||
|
||||
| Craigory Coppola | Chau Tran | Nicholas Cunningham | Max Kless |
|
||||
| -------------------------------------------------------------------------- | -------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -------------------------------------------------------------------- |
|
||||
|  |  |  |  |
|
||||
| [AgentEnder](https://github.com/AgentEnder) | [nartc](https://github.com/nartc) | [ndcunningham](https://github.com/ndcunningham) | [MaxKless](https://github.com/MaxKless) |
|
||||
| Craigory Coppola | Chau Tran | Nicholas Cunningham |
|
||||
| -------------------------------------------------------------------------- | -------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
|
||||
|  |  |  |
|
||||
| [AgentEnder](https://github.com/AgentEnder) | [nartc](https://github.com/nartc) | [ndcunningham](https://github.com/ndcunningham) |
|
||||
|
||||
@@ -34,21 +34,6 @@
|
||||
"description": "An nx plugin for the aws-cdk v2.",
|
||||
"url": "https://github.com/adrian-goe/nx-aws-cdk-v2"
|
||||
},
|
||||
{
|
||||
"name": "@berenddeboer/nx-aws-cdk",
|
||||
"description": "Nx plugin to generate a CDK stack with support for the vitest runner. Supports all CDK commands.",
|
||||
"url": "https://github.com/berenddeboer/nx-plugins/tree/main/packages/nx-aws-cdk"
|
||||
},
|
||||
{
|
||||
"name": "@nx-iac/aws-cdk",
|
||||
"description": "Empowers your Nx workspace with AWS CDK capabilities ⚡",
|
||||
"url": "https://github.com/joelklint/nx-aws-cdk"
|
||||
},
|
||||
{
|
||||
"name": "@routineless/nx-aws-cdk",
|
||||
"description": "Nx plugin to generate and manage aws cdk app and lambdas.",
|
||||
"url": "https://github.com/KozelAnatoliy/routineless/tree/main/packages/nx-aws-cdk"
|
||||
},
|
||||
{
|
||||
"name": "@berenddeboer/nx-sst",
|
||||
"description": "Nx plugin to generate an SST stack and execute all SST commands.",
|
||||
@@ -150,9 +135,9 @@
|
||||
"url": "https://github.com/nxext/nx-extensions/tree/master/packages/stencil"
|
||||
},
|
||||
{
|
||||
"name": "@nxext/vue",
|
||||
"description": "Nx plugin to use VueJS 3 within nx workspaces",
|
||||
"url": "https://github.com/nxext/nx-extensions/tree/master/packages/vue"
|
||||
"name": "@nxext/vite",
|
||||
"description": "Nx plugin to use ViteJS within nx workspaces",
|
||||
"url": "https://github.com/nxext/nx-extensions/tree/master/packages/vite"
|
||||
},
|
||||
{
|
||||
"name": "@nxext/solid",
|
||||
@@ -284,21 +269,21 @@
|
||||
"description": "Nx plugin for deploying your resources with Pulumi",
|
||||
"url": "https://github.com/tripss/nx-extend/tree/master/packages/pulumi"
|
||||
},
|
||||
{
|
||||
"name": "@nx-extend/react-email",
|
||||
"description": "Nx plugin for developing email templates with react.email",
|
||||
"url": "https://github.com/tripss/nx-extend/tree/master/packages/react-email"
|
||||
},
|
||||
{
|
||||
"name": "@nx-extend/shadcn-ui",
|
||||
"description": "Nx plugin for working with shadcn/ui",
|
||||
"url": "https://github.com/tripss/nx-extend/tree/master/packages/shadcn-ui"
|
||||
},
|
||||
{
|
||||
"name": "@nativescript/nx",
|
||||
"description": "Nx Plugin adding first class support for NativeScript in your Nx workspace",
|
||||
"url": "https://github.com/nativescript/nx"
|
||||
},
|
||||
{
|
||||
"name": "@jnxplus/nx-boot-gradle",
|
||||
"description": "Nx plugin to add Spring Boot and Gradle multi-project builds support to Nx workspace",
|
||||
"url": "https://github.com/khalilou88/jnxplus/tree/main/packages/nx-boot-gradle"
|
||||
},
|
||||
{
|
||||
"name": "@jnxplus/nx-boot-maven",
|
||||
"description": "Nx plugin to add Spring Boot and Maven multi-module project support to Nx workspace",
|
||||
"url": "https://github.com/khalilou88/jnxplus/tree/main/packages/nx-boot-maven"
|
||||
},
|
||||
{
|
||||
"name": "@nxtensions/astro",
|
||||
"description": "Nx plugin adding first class support for Astro (https://astro.build).",
|
||||
@@ -346,7 +331,7 @@
|
||||
},
|
||||
{
|
||||
"name": "@koliveira15/nx-sonarqube",
|
||||
"description": "Nx plugin that scans projects using SonarQube / SonarCloud.",
|
||||
"description": "Nx plugin that analyses projects using SonarQube / SonarCloud.",
|
||||
"url": "https://github.com/koliveira15/nx-sonarqube"
|
||||
},
|
||||
{
|
||||
@@ -414,6 +399,16 @@
|
||||
"description": "Adds size-limit support for Nx (performance budget tool for JavaScript)",
|
||||
"url": "https://github.com/LironHazan/nx-size-limit"
|
||||
},
|
||||
{
|
||||
"name": "@jnxplus/nx-quarkus-gradle",
|
||||
"description": "Nx plugin to add Quarkus and Gradle multi-project builds support to Nx workspace",
|
||||
"url": "https://github.com/khalilou88/jnxplus/tree/main/packages/nx-quarkus-gradle"
|
||||
},
|
||||
{
|
||||
"name": "@jnxplus/nx-quarkus-maven",
|
||||
"description": "Nx plugin to add Quarkus and Maven multi-module project support to Nx workspace",
|
||||
"url": "https://github.com/khalilou88/jnxplus/tree/main/packages/nx-quarkus-maven"
|
||||
},
|
||||
{
|
||||
"name": "@loft-orbital/terraform",
|
||||
"description": "Terraform executors and generators",
|
||||
@@ -423,55 +418,5 @@
|
||||
"name": "@nxlv/python",
|
||||
"description": "Nx plugin designed to extend the Nx features to work with Python projects based on Poetry.",
|
||||
"url": "https://github.com/lucasvieirasilva/nx-plugins/tree/main/packages/nx-python"
|
||||
},
|
||||
{
|
||||
"name": "nx-gcp-cache",
|
||||
"description": "Nx plugin to use Google Cloud Storage as distributed remote cache",
|
||||
"url": "https://github.com/davidgarciab/nx-gcp-cache"
|
||||
},
|
||||
{
|
||||
"name": "@jnxplus/nx-gradle",
|
||||
"description": "Nx plugin to add Gradle multi-project builds support to Nx workspace",
|
||||
"url": "https://github.com/khalilou88/jnxplus/tree/main/packages/nx-gradle"
|
||||
},
|
||||
{
|
||||
"name": "@jnxplus/nx-maven",
|
||||
"description": "Nx plugin to add Maven multi-module project support to Nx workspace",
|
||||
"url": "https://github.com/khalilou88/jnxplus/tree/main/packages/nx-maven"
|
||||
},
|
||||
{
|
||||
"name": "@naxodev/nx-cloudflare",
|
||||
"description": "Nx plugin for Cloudflare, in particular Cloudflare workers. It allows to generate build and run Cloudflare workers in your Nx workspace.",
|
||||
"url": "https://github.com/naxodev/oss/tree/main/packages/plugins/nx-cloudflare"
|
||||
},
|
||||
{
|
||||
"name": "@ziacik/azure-func",
|
||||
"description": "Generating, serving and publishing Azure Functions 4 apps.",
|
||||
"url": "https://github.com/ziacik/nx-tools/tree/master/packages/azure-func"
|
||||
},
|
||||
{
|
||||
"name": "@simondotm/nx-firebase",
|
||||
"description": "Nx plugin to support Firebase Apps and Cloud Functions in Nx workspaces",
|
||||
"url": "https://github.com/simondotm/nx-firebase"
|
||||
},
|
||||
{
|
||||
"name": "@dman926/nx-python-pdm",
|
||||
"description": "Use Python in NX workspaces with PDM",
|
||||
"url": "https://github.com/dman926/nx-python-pdm"
|
||||
},
|
||||
{
|
||||
"name": "@gnuechtel/nx-cucumber",
|
||||
"description": "Plugin to use Cucumber within Nx workspaces",
|
||||
"url": "https://gitlab.com/gnuechtel/open-source/-/tree/main/libs/nx-cucumber"
|
||||
},
|
||||
{
|
||||
"name": "@analogjs/platform",
|
||||
"description": "Official plugin to add Analog to your Nx monorepo.",
|
||||
"url": "https://analogjs.org/docs/integrations/nx"
|
||||
},
|
||||
{
|
||||
"name": "@getlarge/nx-heroku",
|
||||
"description": "Plugin to deploy and promote Nx apps on Heroku",
|
||||
"url": "https://github.com/getlarge/nx-heroku"
|
||||
}
|
||||
]
|
||||
|
||||
+11
-150
@@ -1,59 +1,5 @@
|
||||
# Documentation
|
||||
|
||||
## Structure of the Documentation
|
||||
|
||||
When writing documentation, it is important to know the audience you are writing for and what kind of document you are writing. We try to follow the framework listed below, but there are always some exceptions since the documentation is always changing. This framework is valuable to keep in mind, but we also follow the principle that if a PR is better than the existing content on the site, we'll merge it in and follow up to make it better later if it doesn't perfectly match the standards.
|
||||
|
||||
### Types of Documents
|
||||
|
||||
We are generally following the [Diataxis](https://diataxis.fr) model where documents are divided into tutorials, concept guides, recipes and reference.
|
||||
|
||||
- Tutorial - Focused on explaining a concept through step by step instructions.
|
||||
- Concept guide - Explains why something works the way it does or how to think about something.
|
||||
- Recipe - Focused directions to accomplish a specific task. Describes how to do something.
|
||||
- Reference - Lists what you can do with the tool (i.e. API docs).
|
||||
|
||||
### Audiences
|
||||
|
||||
We also have different audiences in mind when writing docs:
|
||||
|
||||
👶 New user starting from scratch
|
||||
|
||||
- They know their framework of choice
|
||||
- They have probably heard the term monorepo but don't really know what it is
|
||||
- They're smart and eager to learn
|
||||
|
||||
👶 New user migrating an existing repo
|
||||
|
||||
- They know their framework of choice
|
||||
- They know how npm workspaces work
|
||||
- They're smart and eager to learn
|
||||
|
||||
👦 Intermediate User
|
||||
|
||||
- They know how to create an Nx repo or add Nx to an existing repo
|
||||
- They have heard the terms integrated and package-based
|
||||
- They know what a project is and how to make one
|
||||
- They understand how to run a task and the basics of caching
|
||||
- They can launch the graph
|
||||
- They know that it is possible to enforce project boundaries
|
||||
|
||||
👨🦳 Advanced User
|
||||
|
||||
- They know everything about Nx except the specific piece of knowledge that is being taught by this document.
|
||||
|
||||
### Outline
|
||||
|
||||
- Getting Started - These documents assume a new user and are generally concept guides with a lot of links to other parts of the site. There are some elements of recipes mixed in, but those should be kept to a minimum.
|
||||
- Tutorials - These are tutorials written for a new user. After completing one of these tutorials, the user should have enough knowledge to be an intermediate user.
|
||||
- Core Features - These are primarily recipes with a little concept mixed in. These documents should be short and provide the basic information that people will want 80% of the time and link to anything more complex. A new user should be able to click through these documents and skim them to get a good understanding of what Nx does without getting overwhelmed with details.
|
||||
- Concepts - These are concept guides written for a new user. Any recipe content should be split into a recipe document and linked.
|
||||
- More Concepts (or other categories under Concepts) - These are concept guides written for an intermediate user.
|
||||
- Recipes - These are recipes written for an advanced user.
|
||||
- Nx with Your Favorite Tech - These are tutorials written for an intermediate user.
|
||||
- Benchmarks - Reference documents linking to external resources.
|
||||
- Reference - Reference documents.
|
||||
|
||||
## Markdown syntax available
|
||||
|
||||
The default markdown syntax is supported when writing documentation.
|
||||
@@ -74,12 +20,6 @@ description: This is a custom description
|
||||
---
|
||||
```
|
||||
|
||||
### Social Media Images
|
||||
|
||||
You can specify a custom social media image for a page by specifying `mediaImage` in the `map.json` entry for that page. `mediaImage` is a path relative to `/docs`.
|
||||
|
||||
Note that you won't see the social media image in the preview generated for your PR, because it loads from the live `nx.dev` site. You can make sure the image is correct by looking at `[preview-url]/images/open-graph/[page-url].[image-extension]`.
|
||||
|
||||
### Custom markdown syntax
|
||||
|
||||
The documentation website [nx.dev](https://nx.dev) is using custom Markdown syntax to enable the authors to add functionality to its content.
|
||||
@@ -94,16 +34,6 @@ Your content goes here.
|
||||
{% /callout %}
|
||||
```
|
||||
|
||||
#### Disclosure
|
||||
|
||||
A disclosure can be used for less important information that is initially collapsed.
|
||||
|
||||
```markdown
|
||||
{% disclosure title="string" %}
|
||||
Your content goes here.
|
||||
{% /disclosure %}
|
||||
```
|
||||
|
||||
#### Cards
|
||||
|
||||
Cards allow showing content in a grid system with a title, a description, a type and an url (internal/external).
|
||||
@@ -137,42 +67,6 @@ You can add specific languages and a filename on the code snippet displayed.
|
||||
```
|
||||
````
|
||||
|
||||
#### Line Highlighting
|
||||
|
||||
You can define groups of lines that can be interactively highlighted to illustrate a point.
|
||||
|
||||
````
|
||||
```javascript {% lineGroups={ first:[2,3],second:[4,5] } %}
|
||||
const code = "goes here";
|
||||
This is in the first group
|
||||
This is also in the first group
|
||||
This is in the second group
|
||||
This is also in the second group
|
||||
```
|
||||
````
|
||||
|
||||
The line groups can be highlighted using a button on the code fence itself, or by clicking on a link that you provide that changes the url fragment.
|
||||
|
||||
For example:
|
||||
|
||||
```
|
||||
[This will highlight the first group.](#first)
|
||||
```
|
||||
|
||||
You can also statically highlight a set of lines (the user won't be able to change what is highlighted):
|
||||
|
||||
````
|
||||
```javascript {% highlightLines=[2,3] %}
|
||||
const code = "goes here";
|
||||
This is highlighted
|
||||
This is also highlighted
|
||||
This is not highlighted
|
||||
Neither is this
|
||||
```
|
||||
````
|
||||
|
||||
You can also specify ranges like `highlightLines=[2,3,"8-10"]`.
|
||||
|
||||
#### Terminal command
|
||||
|
||||
To display a terminal command, use:
|
||||
@@ -246,6 +140,16 @@ We can display a special button inviting the reader to go to a VSCode marketplac
|
||||
{% install-nx-console /%}
|
||||
```
|
||||
|
||||
#### Nx Cloud section
|
||||
|
||||
We can display Nx Cloud related content in the documentation with a visual cue.
|
||||
|
||||
```markdown
|
||||
{% nx-cloud-section %}
|
||||
Your content goes here.
|
||||
{% /nx-cloud-section %}
|
||||
```
|
||||
|
||||
#### Side by side
|
||||
|
||||
You can show content in a grid of 2 columns, via the `side-by-side` shortcode.
|
||||
@@ -275,7 +179,7 @@ Yarn related information.
|
||||
|
||||
##### Youtube
|
||||
|
||||
Embed a YouTube video directly with the following shortcode, control the title and the associated width. `src` can be the Youtube URL from the browser, the "share" button (short YT url) or the embed URL.
|
||||
Embed a YouTube video directly with the following shortcode, control the title and the associated width.
|
||||
|
||||
```markdown
|
||||
{% youtube
|
||||
@@ -292,49 +196,6 @@ Have a more decent button-like widget that you can place below sections of a tut
|
||||
{% video-link link="https://youtu.be/OQ-Zc5tcxJE?t=64" /%}
|
||||
```
|
||||
|
||||
#### Project Details View
|
||||
|
||||
Embed a Project Details View that is identical what is shown in Nx Console or `nx show project myproject --web`
|
||||
|
||||
````markdown
|
||||
{% project-details title="Test" height="100px" %}
|
||||
|
||||
```json
|
||||
{
|
||||
"project": {
|
||||
"name": "demo",
|
||||
"data": {
|
||||
"root": " packages/demo",
|
||||
"projectType": "application",
|
||||
"targets": {
|
||||
"dev": {
|
||||
"executor": "nx:run-commands",
|
||||
"options": {
|
||||
"command": "vite dev"
|
||||
}
|
||||
},
|
||||
"build": {
|
||||
"executor": "nx:run-commands",
|
||||
"inputs": ["production", "^production"],
|
||||
"outputs": ["{projectRoot}/dist"],
|
||||
"options": {
|
||||
"command": "vite build"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sourceMap": {
|
||||
"targets": ["packages/demo/vite.config.ts", "@nx/vite"],
|
||||
"targets.dev": ["packages/demo/vite.config.ts", "@nx/vite"],
|
||||
"targets.build": ["packages/demo/vite.config.ts", "@nx/vite"]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
{% /project-details %}
|
||||
````
|
||||
|
||||
#### Graph
|
||||
|
||||
Embed an Nx Graph visualization that can be panned by the user.
|
||||
|
||||
@@ -4,21 +4,16 @@
|
||||
|
||||
Here are some of our feature highlights:
|
||||
|
||||
{% youtube
|
||||
src="https://youtu.be/ZST_rmhzRXI"
|
||||
title="Nx Console Run UI Form"
|
||||
width="100%" /%}
|
||||
{% cards cols="2" %}
|
||||
{% card title="Combine the Power of Nx Graph and Nx Console" type="video" url="https://youtu.be/ZST_rmhzRXI" /%}
|
||||
{% /cards %}
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
Use [the `nx migrate` command](/features/automate-updating-dependencies) to automatically account for these breaking changes.
|
||||
|
||||
{% cards cols="1" smCols="2" mdCols="3" %}
|
||||
Use [the `nx migrate` command](/core-features/automate-updating-dependencies) to automatically account for these breaking changes.
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="Removed UMD format support for rollup" type="external" url="https://github.com/nrwl/nx/pull/12426" /%}
|
||||
|
||||
{% card title="Removed --only-failed option" type="external" url="https://github.com/nrwl/nx/pull/12471" /%}
|
||||
|
||||
{% card title="Infer projects from package.json and project.json" description="Nx will now also include folders with package.json/project.json in its graph of projects. You can ignore any unwanted projects by adding the directory to .nxignore." type="external" url="https://github.com/nrwl/nx/releases/tag/15.0.0" /%}
|
||||
|
||||
{% /cards %}
|
||||
|
||||
@@ -8,7 +8,7 @@ title="What's new in Nx 15.3?"
|
||||
/%}
|
||||
Here are some of our feature highlights:
|
||||
|
||||
{% cards cols="1" smCols="2" mdCols="2" lgCols="3" %}
|
||||
{% cards cols="2" %}
|
||||
{% card title="Introducing the Nx Task Graph Visualization" type="video" url="https://youtu.be/wOE3r4299fs" /%}
|
||||
{% card title="Standalone Applications with Nx" type="video" url="https://youtu.be/qEaVzh-oBBc" /%}
|
||||
{% card title="Add Nx to any Project" type="video" url="https://youtu.be/VmGCZ77ao_I" /%}
|
||||
|
||||
@@ -9,6 +9,6 @@ title="Nx 15.4 is out! Here's all you need to know"
|
||||
|
||||
Here are some of our feature highlights:
|
||||
|
||||
{% cards cols="2" smCol="2" mdCol="2" lgCol="2" %}
|
||||
{% cards cols="2" %}
|
||||
{% card title="One Command to Run Multiple Tasks in Parallel" type="video" url="https://youtu.be/ROTO89i5m_4" /%}
|
||||
{% /cards %}
|
||||
|
||||
@@ -30,7 +30,7 @@ Here are some of our feature highlights:
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
Use [the `nx migrate` command](/features/automate-updating-dependencies) to automatically account for these breaking changes.
|
||||
Use [the `nx migrate` command](/core-features/automate-updating-dependencies) to automatically account for these breaking changes.
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="Removed @nrwl/cypress/plugins/preprocessor" type="external" url="https://github.com/nrwl/nx/pull/16170" /%}
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
## New Features:
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="Official Playwright Support" type="video" url="https://www.youtube.com/watch?v=k1U3PuBrZFQ" /%}
|
||||
{% /cards %}
|
||||
@@ -1,6 +0,0 @@
|
||||
## New Features:
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="ESLint Flat Config Generator" type="video" url="https://youtu.be/32XH909CZrY" /%}
|
||||
{% card title="Convert To Monorepo Generator" type="video" url="https://www.youtube.com/watch?v=ztNpLf2Zl-c" /%}
|
||||
{% /cards %}
|
||||
@@ -1,14 +0,0 @@
|
||||
# Nx 16.8
|
||||
|
||||
[Read the 16.8 release blog post](https://blog.nrwl.io/nx-16-8-release-e38e3bb503b5)
|
||||
|
||||
{% youtube
|
||||
src="https://www.youtube.com/embed/bw8pRh0iC4A"
|
||||
title="Nx 16.8 Launch!!!"
|
||||
/%}
|
||||
|
||||
## New Features:
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="Interactive Graphs In Nx Console" type="video" url="https://www.youtube.com/watch?v=QJ53RJhSCD0" /%}
|
||||
{% /cards %}
|
||||
@@ -1,32 +0,0 @@
|
||||
# Nx 17
|
||||
|
||||
Nx 17.0 is here!! From a brand new Vue plugin, enhancements to Module Federation Support ensuring better type safety and a new generator to federate anything, to more consistent generator paths when scaffolding new components. Dive into the details and explore more on what's fresh in Nx 17.0 on [official blog post](https://dev.to/nx/nx-170-has-landed-p60) or watch the video below:
|
||||
|
||||
{% youtube
|
||||
src="https://www.youtube.com/embed/1Z0iA9K1o8M"
|
||||
title="Nx 17.0 Has Landed!!!"
|
||||
/%}
|
||||
|
||||
## Features
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="Official @nx/vue plugin" type="document" url="/nx-api/vue" /%}
|
||||
{% card title="Module Federation Improvements" type="document" url="/concepts/module-federation/module-federation-and-nx" /%}
|
||||
{% card title="Show Task Inputs in the Task Graph Visualizer" type="external" url="https://github.com/nrwl/nx/pull/19597" /%}
|
||||
{% card title="Move properties from tasksRunnerOptions up to the root of nx.json" type="external" url="https://github.com/nrwl/nx/pull/19243" /%}
|
||||
{% card title="Each task has its own cache property" type="document" url="/reference/project-configuration#cache" /%}
|
||||
{% /cards %}
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
Use [the `nx migrate` command](/features/automate-updating-dependencies) to automatically account for these breaking changes.
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="Rename @nx/linter to @nx/eslint" type="document" url="/recipes/other/rescope#rename" /%}
|
||||
{% card title="Removed workspace generator command" type="external" url="https://github.com/nrwl/nx/pull/19541" /%}
|
||||
{% card title="Removed workspace-lint command" type="external" url="https://github.com/nrwl/nx/pull/16212" /%}
|
||||
{% card title="Removed defaultCollection property" type="external" url="https://github.com/nrwl/nx/pull/19708" /%}
|
||||
{% card title="Removed npmScope property" type="external" url="https://github.com/nrwl/nx/pull/19708" /%}
|
||||
{% card title="Removed ability for Angular CLI to use our generators and executors" type="external" url="/deprecated/angular-schematics-builders" /%}
|
||||
{% card title="Removed exported code from @nrwl/workspace that has been moved elsewhere" type="external" url="https://github.com/nrwl/nx/pull/19588" /%}
|
||||
{% /cards %}
|
||||
@@ -1,17 +0,0 @@
|
||||
# Nx 17.2
|
||||
|
||||
[Read the 17.2 release blog post](https://blog.nrwl.io/nx-17-2-update-b8f23ec42cbb?source=friends_link&sk=b2ea5cd1e07352936556a6ef5431a091)
|
||||
|
||||
{% youtube
|
||||
src="https://www.youtube.com/embed/cWIFVWKhpHQ"
|
||||
title="Nx 17.2 Has Landed!!"
|
||||
/%}
|
||||
|
||||
## New Features:
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="Module Federation Updates" type="external" url="https://github.com/nrwl/nx/pull/20006" /%}
|
||||
{% card title="Nx Release Programmatic API" type="document" url="features/manage-releases#using-the-programmatic-api-for-nx-release" /%}
|
||||
{% card title="Angular 17 Support" type="external" url="https://github.com/nrwl/nx/pull/19689" /%}
|
||||
{% card title="Nx Canary Releases" type="external" url="https://github.com/nrwl/nx/pull/20540" /%}
|
||||
{% /cards %}
|
||||
@@ -1,28 +0,0 @@
|
||||
# Nx 18
|
||||
|
||||
We were so excited about the features in Nx 18 that we created a whole [Launch Nx Week](https://nx.dev/launch-nx) to share our excitement with you. During the launch week, we made the following announcements:
|
||||
|
||||
- [Project Crystal](https://blog.nrwl.io/what-if-nx-plugins-were-more-like-vscode-extensions-dcdad140ae09?source=friends_link&sk=ade76fe8d50d44aafb4d4d89ab882e24&__hstc=221401095.5d21139e33f975ecef01c1783a7523db.1673975383152.1708023233215.1708026196201.468&__hssc=221401095.2.1708026196201&__hsfp=589919331) allows you to use inferred tasks
|
||||
- A new [`@nx/nuxt`](https://blog.nrwl.io/introducing-nx-nuxt-enhanced-nuxt-js-support-in-nx-01eac78034fc?source=friends_link&sk=91582cdbd0719dc23375338ad92afa9b&__hstc=221401095.5d21139e33f975ecef01c1783a7523db.1673975383152.1708023233215.1708026196201.468&__hssc=221401095.2.1708026196201&__hsfp=589919331) plugin is available
|
||||
- [Nx Agents](https://blog.nrwl.io/fast-effortless-ci-67812514ffb4?source=friends_link&sk=89e1b5c0388dda077e64a2eab5495d95&__hstc=221401095.5d21139e33f975ecef01c1783a7523db.1673975383152.1708023233215.1708026196201.468&__hssc=221401095.2.1708026196201&__hsfp=589919331) are publicly available
|
||||
- [`nx release`](https://blog.nrwl.io/versioning-and-releasing-packages-in-a-monorepo-45ee194378d1?source=friends_link&sk=934e4c5321774c8a9f88433e0dea578b&__hstc=221401095.5d21139e33f975ecef01c1783a7523db.1673975383152.1708023233215.1708026196201.468&__hssc=221401095.2.1708026196201&__hsfp=589919331) is out of beta
|
||||
|
||||
{% youtube
|
||||
src="https://youtu.be/Ed1ZCNqWF1Q"
|
||||
title="Nx 18.0!!!"
|
||||
/%}
|
||||
|
||||
## Features
|
||||
|
||||
{% cards cols="2" %}
|
||||
{% card title="Inferred tasks (Project Crystal)" type="document" url="/concepts/inferred-tasks" /%}
|
||||
{% card title="Project Details View" type="document" url="/features/explore-graph#explore-projects-in-your-workspace" /%}
|
||||
{% card title="New @nx/nuxt plugin" type="document" url="/nx-api/nuxt" /%}
|
||||
{% card title="Distribute tasks on Nx Agents" type="document" url="/ci/features/distribute-task-execution" /%}
|
||||
{% card title="Automatically split e2e tasks (Atomizer)" type="document" url="/ci/features/split-e2e-tasks" /%}
|
||||
{% card title="Re-run flaky tasks" type="document" url="/ci/features/flaky-tasks" /%}
|
||||
{% /cards %}
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
Note: Though this is a major version, there are no removals of previous deprecations. Any deprecations which were previously scheduled for Nx 18 are now scheduled for Nx 19 which will still be coming out around April 2024.
|
||||
@@ -1,68 +0,0 @@
|
||||
---
|
||||
title: 'add - CLI command'
|
||||
description: 'Install a plugin and initialize it.'
|
||||
---
|
||||
|
||||
# add
|
||||
|
||||
Install a plugin and initialize it.
|
||||
|
||||
## Usage
|
||||
|
||||
```shell
|
||||
nx add <packageSpecifier>
|
||||
```
|
||||
|
||||
Install `nx` globally to invoke the command directly using `nx`, or use `npx nx`, `yarn nx`, or `pnpm nx`.
|
||||
|
||||
### Examples
|
||||
|
||||
Install the `@nx/react` package matching the installed version of the `nx` package and run its `@nx/react:init` generator:
|
||||
|
||||
```shell
|
||||
nx add @nx/react
|
||||
```
|
||||
|
||||
Install the latest version of the `non-core-nx-plugin` package and run its `non-core-nx-plugin:init` generator if available:
|
||||
|
||||
```shell
|
||||
nx add non-core-nx-plugin
|
||||
```
|
||||
|
||||
Install version `17.0.0` of the `@nx/react` package and run its `@nx/react:init` generator:
|
||||
|
||||
```shell
|
||||
nx add @nx/react@17.0.0
|
||||
```
|
||||
|
||||
## Options
|
||||
|
||||
### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
### packageSpecifier
|
||||
|
||||
Type: `string`
|
||||
|
||||
The package name and optional version (e.g. `@nx/react` or `@nx/react@latest`) to install and initialize. If the version is not specified it will install the same version as the `nx` package for Nx core plugins or the latest version for other packages
|
||||
|
||||
### updatePackageScripts
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Update `package.json` scripts with inferred targets. Defaults to `true` when the package is a core Nx plugin
|
||||
|
||||
### verbose
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Prints additional information about the commands (e.g., stack traces)
|
||||
|
||||
### version
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show version number
|
||||
@@ -5,7 +5,7 @@ description: 'Graph dependencies affected by changes'
|
||||
|
||||
# affected:graph
|
||||
|
||||
**Deprecated:** Use `nx graph --affected`, or `nx affected --graph` instead depending on which best suits your use case. The `affected:graph` command will be removed in Nx 19.
|
||||
**Deprecated:** Use `nx graph --affected`, or `nx affected --graph` instead depending on which best suits your use case. The `affected:graph` command will be removed in Nx 18.
|
||||
|
||||
Graph dependencies affected by changes
|
||||
|
||||
|
||||
@@ -29,6 +29,12 @@ Run tests in parallel:
|
||||
nx affected -t test --parallel=5
|
||||
```
|
||||
|
||||
Run the test target for all projects:
|
||||
|
||||
```shell
|
||||
nx affected -t test --all
|
||||
```
|
||||
|
||||
Run lint, test, and build targets for affected projects. Requires Nx v15.4+:
|
||||
|
||||
```shell
|
||||
@@ -56,7 +62,7 @@ Run tests for all the projects affected by the last commit on main:
|
||||
Run build for only projects with the tag `dotnet`:
|
||||
|
||||
```shell
|
||||
nx affected -t=build --exclude='*,!tag:dotnet'
|
||||
nx affected -t build --exclude '*,!tag:dotnet'
|
||||
```
|
||||
|
||||
Use the currently executing project name in your command.:
|
||||
@@ -79,14 +85,6 @@ Type: `string`
|
||||
|
||||
Base of the current branch (usually main)
|
||||
|
||||
### batch
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Run task(s) in batches for executors which support batches
|
||||
|
||||
### configuration
|
||||
|
||||
Type: `string`
|
||||
@@ -123,7 +121,7 @@ Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
### nxBail
|
||||
### nx-bail
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
@@ -131,7 +129,7 @@ Default: `false`
|
||||
|
||||
Stop command execution after the first failed task
|
||||
|
||||
### nxIgnoreCycles
|
||||
### nx-ignore-cycles
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
@@ -159,7 +157,7 @@ Type: `string`
|
||||
|
||||
This is the name of the tasks runner configured in nx.json
|
||||
|
||||
### skipNxCache
|
||||
### skip-nx-cache
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
|
||||
@@ -37,6 +37,14 @@ Type: `string`
|
||||
|
||||
Bundler to be used to build the app
|
||||
|
||||
### ci
|
||||
|
||||
Type: `string`
|
||||
|
||||
Choices: [github, circleci, azure, bitbucket-pipelines, gitlab]
|
||||
|
||||
Generate a CI workflow file
|
||||
|
||||
### commit.email
|
||||
|
||||
Type: `string`
|
||||
@@ -111,19 +119,11 @@ Type: `boolean`
|
||||
|
||||
Enable the App Router for Next.js
|
||||
|
||||
### nextSrcDir
|
||||
### nxCloud
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Generate a 'src/' directory for Next.js
|
||||
|
||||
### nxCloud
|
||||
|
||||
Type: `string`
|
||||
|
||||
Choices: [yes, github, circleci, skip]
|
||||
|
||||
Do you want Nx Cloud to make your CI fast?
|
||||
Enable distributed caching to make your CI faster
|
||||
|
||||
### packageManager
|
||||
|
||||
@@ -135,24 +135,16 @@ Default: `npm`
|
||||
|
||||
Package manager to use
|
||||
|
||||
### prefix
|
||||
|
||||
Type: `string`
|
||||
|
||||
Prefix to use for Angular component and directive selectors.
|
||||
|
||||
### preset
|
||||
|
||||
Type: `string`
|
||||
|
||||
Customizes the initial content of your workspace. Default presets include: ["apps", "empty", "core", "npm", "ts", "web-components", "angular-monorepo", "angular-standalone", "react-monorepo", "react-standalone", "vue-monorepo", "vue-standalone", "nuxt", "nuxt-standalone", "next", "nextjs-standalone", "remix-monorepo", "remix-standalone", "react-native", "expo", "nest", "express", "react", "vue", "angular", "node-standalone", "node-monorepo", "ts-standalone"]. To build your own see https://nx.dev/extending-nx/recipes/create-preset
|
||||
Customizes the initial content of your workspace. Default presets include: ["apps", "empty", "core", "npm", "ts", "web-components", "angular-monorepo", "angular-standalone", "react-monorepo", "react-standalone", "next", "nextjs-standalone", "react-native", "expo", "nest", "express", "react", "angular", "node-standalone", "node-monorepo", "ts-standalone"]. To build your own see https://nx.dev/plugins/recipes/create-preset
|
||||
|
||||
### routing
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `true`
|
||||
|
||||
Add a routing setup for an Angular app
|
||||
|
||||
### skipGit
|
||||
@@ -163,18 +155,10 @@ Default: `false`
|
||||
|
||||
Skip initializing a git repository
|
||||
|
||||
### ssr
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Enable Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering) for the Angular application
|
||||
|
||||
### standaloneApi
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `true`
|
||||
|
||||
Use Standalone Components if generating an Angular app
|
||||
|
||||
### style
|
||||
|
||||
+19
-73
@@ -5,79 +5,23 @@ description: 'Executes any command as if it was a target on the project'
|
||||
|
||||
# exec
|
||||
|
||||
- Executes any command as if it was a target on the project
|
||||
- Executes an arbitrary command in each package
|
||||
Executes any command as if it was a target on the project
|
||||
|
||||
## Usage
|
||||
|
||||
In package.json, adding a script with `nx exec` will run the command as if it is a target that project:
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "myorg",
|
||||
"version": "0.0.1",
|
||||
"scripts": {
|
||||
"build": "nx exec -- <command> [..args]"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
It will run the command for `myorg`.
|
||||
|
||||
When run from the terminal, `nx exec` will run the command for all projects in the workspace:
|
||||
|
||||
```
|
||||
nx exec -- <command> [..args] # runs the command in all projects
|
||||
nx exec -- tsc
|
||||
nx exec -- echo \$NX_PROJECT_NAME
|
||||
nx exec -- echo \$NX_PROJECT_ROOT_PATH
|
||||
```shell
|
||||
nx exec
|
||||
```
|
||||
|
||||
Install `nx` globally to invoke the command directly using `nx`, or use `npx nx`, `yarn nx`, or `pnpm nx`.
|
||||
|
||||
## Examples
|
||||
|
||||
You can use `npm run <command>` for a project and leverage the caching by wrap your command with `nx exec`.
|
||||
|
||||
For example, you can run `npm run docs` as a Nx target for `myorg`:
|
||||
|
||||
```
|
||||
{
|
||||
"name": "myorg",
|
||||
"nx": {},
|
||||
"scripts": {
|
||||
"docs": "nx exec -- node ./scripts/some-script.js"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
You may also run a script located in the project directory for all projects:
|
||||
|
||||
```
|
||||
nx exec -- node ./scripts/some-script.js
|
||||
```
|
||||
|
||||
The name of the current project is available through the environment variable $NX_PROJECT_NAME:
|
||||
|
||||
```
|
||||
nx exec -- echo \$NX_PROJECT_NAME
|
||||
```
|
||||
|
||||
The location of current project is available through the environment variable $NX_PROJECT_ROOT_PATH:
|
||||
|
||||
```
|
||||
nx exec -- echo \$NX_PROJECT_ROOT_PATH
|
||||
```
|
||||
|
||||
## Options
|
||||
|
||||
### all
|
||||
### configuration
|
||||
|
||||
Type: `boolean`
|
||||
Type: `string`
|
||||
|
||||
Default: `true`
|
||||
|
||||
[deprecated] `run-many` runs all targets on all projects in the workspace if no projects are provided. This option is no longer required.
|
||||
This is the configuration to use when performing tasks on projects
|
||||
|
||||
### exclude
|
||||
|
||||
@@ -91,13 +35,7 @@ Type: `string`
|
||||
|
||||
Show the task graph of the command. Pass a file path to save the graph data instead of viewing it in the browser.
|
||||
|
||||
### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
### nxBail
|
||||
### nx-bail
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
@@ -105,7 +43,7 @@ Default: `false`
|
||||
|
||||
Stop command execution after the first failed task
|
||||
|
||||
### nxIgnoreCycles
|
||||
### nx-ignore-cycles
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
@@ -113,17 +51,25 @@ Default: `false`
|
||||
|
||||
Ignore cycles in the task graph
|
||||
|
||||
### output-style
|
||||
|
||||
Type: `string`
|
||||
|
||||
Choices: [dynamic, static, stream, stream-without-prefixes, compact]
|
||||
|
||||
Defines how Nx emits outputs tasks logs
|
||||
|
||||
### parallel
|
||||
|
||||
Type: `string`
|
||||
|
||||
Max number of parallel processes [default is 3]
|
||||
|
||||
### projects
|
||||
### project
|
||||
|
||||
Type: `string`
|
||||
|
||||
Projects to run. (comma/space delimited project names and/or patterns)
|
||||
Target project
|
||||
|
||||
### runner
|
||||
|
||||
@@ -131,7 +77,7 @@ Type: `string`
|
||||
|
||||
This is the name of the tasks runner configured in nx.json
|
||||
|
||||
### skipNxCache
|
||||
### skip-nx-cache
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
|
||||
@@ -93,12 +93,6 @@ When false, disables interactive input prompts.
|
||||
|
||||
Show help and display available generators in the default collection.
|
||||
|
||||
### quiet
|
||||
|
||||
Default: `false`
|
||||
|
||||
When true, disables Nx specific logging related to running the generator or its outputs.
|
||||
|
||||
### version
|
||||
|
||||
Show version number
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: 'init - CLI command'
|
||||
description: 'Adds Nx to any type of workspace. It installs nx, creates an nx.json configuration file and optionally sets up remote caching. For more info, check https://nx.dev/recipes/adopting-nx.'
|
||||
description: 'Adds Nx to any type of workspace. It installs nx, creates an nx.json configuration file and optionally sets up distributed caching. For more info, check https://nx.dev/recipes/adopting-nx.'
|
||||
---
|
||||
|
||||
# init
|
||||
|
||||
Adds Nx to any type of workspace. It installs nx, creates an nx.json configuration file and optionally sets up remote caching. For more info, check https://nx.dev/recipes/adopting-nx.
|
||||
Adds Nx to any type of workspace. It installs nx, creates an nx.json configuration file and optionally sets up distributed caching. For more info, check https://nx.dev/recipes/adopting-nx.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -17,12 +17,36 @@ Install `nx` globally to invoke the command directly using `nx`, or use `npx nx`
|
||||
|
||||
## Options
|
||||
|
||||
### addE2e
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Set up Cypress E2E tests in integrated workspaces. Only for CRA projects.
|
||||
|
||||
### force
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Force the migration to continue and ignore custom webpack setup or uncommitted changes. Only for CRA projects.
|
||||
|
||||
### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
### integrated
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Migrate to an Nx integrated layout workspace. Only for Angular CLI workspaces and CRA projects.
|
||||
|
||||
### interactive
|
||||
|
||||
Type: `boolean`
|
||||
@@ -50,3 +74,11 @@ Initialize an Nx workspace setup in the .nx directory of the current repository.
|
||||
Type: `boolean`
|
||||
|
||||
Show version number
|
||||
|
||||
### vite
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `true`
|
||||
|
||||
Use Vite as the bundler. Only for CRA projects.
|
||||
|
||||
@@ -5,7 +5,7 @@ description: 'Prints information about the projects and targets affected by chan
|
||||
|
||||
# print-affected
|
||||
|
||||
**Deprecated:** Use `nx show projects --affected`, `nx affected --graph -t build` or `nx graph --affected` depending on which best suits your use case. The `print-affected` command will be removed in Nx 19.
|
||||
**Deprecated:** Use `nx show projects --affected`, `nx affected --graph -t build` or `nx graph --affected` depending on which best suits your use case. The `print-affected` command will be removed in Nx 18.
|
||||
|
||||
Prints information about the projects and targets affected by changes
|
||||
|
||||
|
||||
@@ -1,390 +0,0 @@
|
||||
---
|
||||
title: 'release - CLI command'
|
||||
description: 'Orchestrate versioning and publishing of applications and libraries'
|
||||
---
|
||||
|
||||
# release
|
||||
|
||||
Orchestrate versioning and publishing of applications and libraries
|
||||
|
||||
## Usage
|
||||
|
||||
```shell
|
||||
nx release
|
||||
```
|
||||
|
||||
Install `nx` globally to invoke the command directly using `nx`, or use `npx nx`, `yarn nx`, or `pnpm nx`.
|
||||
|
||||
## Shared Options
|
||||
|
||||
### dry-run
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Preview the changes without updating files/creating releases
|
||||
|
||||
### first-release
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Indicates that this is the first release for the selected release group. If the current version cannot be determined as usual, the version on disk will be used as a fallback. This is useful when using git or the registry to determine the current version of packages, since those sources are only available after the first release. Also indicates that changelog generation should not assume a previous git tag exists and that publishing should not check for the existence of the package before running.
|
||||
|
||||
### groups
|
||||
|
||||
Type: `string`
|
||||
|
||||
One or more release groups to target with the current command.
|
||||
|
||||
### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
### projects
|
||||
|
||||
Type: `string`
|
||||
|
||||
Projects to run. (comma/space delimited project names and/or patterns)
|
||||
|
||||
### verbose
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Prints additional information about the commands (e.g., stack traces)
|
||||
|
||||
### version
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show version number
|
||||
|
||||
## Subcommands
|
||||
|
||||
### Base Command Options
|
||||
|
||||
Create a version and release for the workspace, generate a changelog, and optionally publish the packages
|
||||
|
||||
```shell
|
||||
nx release [specifier]
|
||||
```
|
||||
|
||||
#### Options
|
||||
|
||||
##### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
##### skip-publish
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Skip publishing by automatically answering no to the confirmation prompt for publishing
|
||||
|
||||
##### specifier
|
||||
|
||||
Type: `string`
|
||||
|
||||
Exact version or semver keyword to apply to the selected release group.
|
||||
|
||||
##### version
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show version number
|
||||
|
||||
##### yes
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Automatically answer yes to the confirmation prompt for publishing
|
||||
|
||||
### version
|
||||
|
||||
Create a version and release for one or more applications and libraries
|
||||
|
||||
```shell
|
||||
nx release version [specifier]
|
||||
```
|
||||
|
||||
#### Options
|
||||
|
||||
##### git-commit
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Whether or not to automatically commit the changes made by this command
|
||||
|
||||
##### git-commit-args
|
||||
|
||||
Type: `string`
|
||||
|
||||
Additional arguments (added after the --message argument, which may or may not be customized with --git-commit-message) to pass to the `git commit` command invoked behind the scenes
|
||||
|
||||
##### git-commit-message
|
||||
|
||||
Type: `string`
|
||||
|
||||
Custom git commit message to use when committing the changes made by this command. {version} will be dynamically interpolated when performing fixed releases, interpolated tags will be appended to the commit body when performing independent releases.
|
||||
|
||||
##### git-tag
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Whether or not to automatically tag the changes made by this command
|
||||
|
||||
##### git-tag-args
|
||||
|
||||
Type: `string`
|
||||
|
||||
Additional arguments to pass to the `git tag` command invoked behind the scenes
|
||||
|
||||
##### git-tag-message
|
||||
|
||||
Type: `string`
|
||||
|
||||
Custom git tag message to use when tagging the changes made by this command. This defaults to be the same value as the tag itself.
|
||||
|
||||
##### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
##### preid
|
||||
|
||||
Type: `string`
|
||||
|
||||
The optional prerelease identifier to apply to the version, in the case that specifier has been set to prerelease.
|
||||
|
||||
##### specifier
|
||||
|
||||
Type: `string`
|
||||
|
||||
Exact version or semver keyword to apply to the selected release group.
|
||||
|
||||
##### stage-changes
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Whether or not to stage the changes made by this command. Always treated as true if git-commit is true.
|
||||
|
||||
##### version
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show version number
|
||||
|
||||
### changelog
|
||||
|
||||
Generate a changelog for one or more projects, and optionally push to Github
|
||||
|
||||
```shell
|
||||
nx release changelog [version]
|
||||
```
|
||||
|
||||
#### Options
|
||||
|
||||
##### from
|
||||
|
||||
Type: `string`
|
||||
|
||||
The git reference to use as the start of the changelog. If not set it will attempt to resolve the latest tag and use that
|
||||
|
||||
##### git-commit
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Whether or not to automatically commit the changes made by this command
|
||||
|
||||
##### git-commit-args
|
||||
|
||||
Type: `string`
|
||||
|
||||
Additional arguments (added after the --message argument, which may or may not be customized with --git-commit-message) to pass to the `git commit` command invoked behind the scenes
|
||||
|
||||
##### git-commit-message
|
||||
|
||||
Type: `string`
|
||||
|
||||
Custom git commit message to use when committing the changes made by this command. {version} will be dynamically interpolated when performing fixed releases, interpolated tags will be appended to the commit body when performing independent releases.
|
||||
|
||||
##### git-remote
|
||||
|
||||
Type: `string`
|
||||
|
||||
Default: `origin`
|
||||
|
||||
Alternate git remote in the form {user}/{repo} on which to create the Github release (useful for testing)
|
||||
|
||||
##### git-tag
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Whether or not to automatically tag the changes made by this command
|
||||
|
||||
##### git-tag-args
|
||||
|
||||
Type: `string`
|
||||
|
||||
Additional arguments to pass to the `git tag` command invoked behind the scenes
|
||||
|
||||
##### git-tag-message
|
||||
|
||||
Type: `string`
|
||||
|
||||
Custom git tag message to use when tagging the changes made by this command. This defaults to be the same value as the tag itself.
|
||||
|
||||
##### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
##### interactive
|
||||
|
||||
Type: `string`
|
||||
|
||||
Choices: [all, workspace, projects]
|
||||
|
||||
Interactively modify changelog markdown contents in your code editor before applying the changes. You can set it to be interactive for all changelogs, or only the workspace level, or only the project level
|
||||
|
||||
##### stage-changes
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Whether or not to stage the changes made by this command. Always treated as true if git-commit is true.
|
||||
|
||||
##### to
|
||||
|
||||
Type: `string`
|
||||
|
||||
Default: `HEAD`
|
||||
|
||||
The git reference to use as the end of the changelog
|
||||
|
||||
##### version
|
||||
|
||||
Type: `string`
|
||||
|
||||
The version to create a Github release and changelog for
|
||||
|
||||
### publish
|
||||
|
||||
Publish a versioned project to a registry
|
||||
|
||||
```shell
|
||||
nx release publish
|
||||
```
|
||||
|
||||
#### Options
|
||||
|
||||
##### all
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `true`
|
||||
|
||||
[deprecated] `run-many` runs all targets on all projects in the workspace if no projects are provided. This option is no longer required.
|
||||
|
||||
##### exclude
|
||||
|
||||
Type: `string`
|
||||
|
||||
Exclude certain projects from being processed
|
||||
|
||||
##### graph
|
||||
|
||||
Type: `string`
|
||||
|
||||
Show the task graph of the command. Pass a file path to save the graph data instead of viewing it in the browser.
|
||||
|
||||
##### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
##### nxBail
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Stop command execution after the first failed task
|
||||
|
||||
##### nxIgnoreCycles
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Ignore cycles in the task graph
|
||||
|
||||
##### otp
|
||||
|
||||
Type: `number`
|
||||
|
||||
A one-time password for publishing to a registry that requires 2FA
|
||||
|
||||
##### output-style
|
||||
|
||||
Type: `string`
|
||||
|
||||
Choices: [dynamic, static, stream, stream-without-prefixes]
|
||||
|
||||
Defines how Nx emits outputs tasks logs
|
||||
|
||||
##### parallel
|
||||
|
||||
Type: `string`
|
||||
|
||||
Max number of parallel processes [default is 3]
|
||||
|
||||
##### projects
|
||||
|
||||
Type: `string`
|
||||
|
||||
Projects to run. (comma/space delimited project names and/or patterns)
|
||||
|
||||
##### registry
|
||||
|
||||
Type: `string`
|
||||
|
||||
The registry to publish to
|
||||
|
||||
##### runner
|
||||
|
||||
Type: `string`
|
||||
|
||||
This is the name of the tasks runner configured in nx.json
|
||||
|
||||
##### skipNxCache
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Rerun the tasks even when the results are available in the cache
|
||||
|
||||
##### tag
|
||||
|
||||
Type: `string`
|
||||
|
||||
The distribution tag to apply to the published package
|
||||
|
||||
##### verbose
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Prints additional information about the commands (e.g., stack traces)
|
||||
|
||||
##### version
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show version number
|
||||
@@ -1,29 +1,12 @@
|
||||
---
|
||||
title: 'repair - CLI command'
|
||||
description: 'Repair any configuration that is no longer supported by Nx.
|
||||
|
||||
Specifically, this will run every migration within the `nx` package
|
||||
against the current repository. Doing so should fix any configuration
|
||||
details left behind if the repository was previously updated to a new
|
||||
Nx version without using `nx migrate`.
|
||||
|
||||
If your repository has only ever updated to newer versions of Nx with
|
||||
`nx migrate`, running `nx repair` should do nothing.
|
||||
'
|
||||
description: 'Repair any configuration that is no longer supported by Nx.'
|
||||
---
|
||||
|
||||
# repair
|
||||
|
||||
Repair any configuration that is no longer supported by Nx.
|
||||
|
||||
Specifically, this will run every migration within the `nx` package
|
||||
against the current repository. Doing so should fix any configuration
|
||||
details left behind if the repository was previously updated to a new
|
||||
Nx version without using `nx migrate`.
|
||||
|
||||
If your repository has only ever updated to newer versions of Nx with
|
||||
`nx migrate`, running `nx repair` should do nothing.
|
||||
|
||||
## Usage
|
||||
|
||||
```shell
|
||||
|
||||
@@ -68,7 +68,7 @@ Test all projects with a `type:feature` or `type:ui` tag:
|
||||
Run lint, test, and build targets for all projects. Requires Nx v15.4+:
|
||||
|
||||
```shell
|
||||
nx run-many --targets=lint,test,build
|
||||
nx run-many --targets=lint,test,build --all
|
||||
```
|
||||
|
||||
## Options
|
||||
@@ -79,15 +79,7 @@ Type: `boolean`
|
||||
|
||||
Default: `true`
|
||||
|
||||
[deprecated] `run-many` runs all targets on all projects in the workspace if no projects are provided. This option is no longer required.
|
||||
|
||||
### batch
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Run task(s) in batches for executors which support batches
|
||||
[deprecated] Run the target on all projects in the workspace
|
||||
|
||||
### configuration
|
||||
|
||||
@@ -113,7 +105,7 @@ Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
### nxBail
|
||||
### nx-bail
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
@@ -121,7 +113,7 @@ Default: `false`
|
||||
|
||||
Stop command execution after the first failed task
|
||||
|
||||
### nxIgnoreCycles
|
||||
### nx-ignore-cycles
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
@@ -155,7 +147,7 @@ Type: `string`
|
||||
|
||||
This is the name of the tasks runner configured in nx.json
|
||||
|
||||
### skipNxCache
|
||||
### skip-nx-cache
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
|
||||
@@ -41,16 +41,10 @@ Show affected projects in the workspace:
|
||||
nx show projects --affected
|
||||
```
|
||||
|
||||
Show affected apps in the workspace:
|
||||
|
||||
```shell
|
||||
nx show projects --affected --type app
|
||||
```
|
||||
|
||||
Show affected projects in the workspace, excluding end-to-end projects:
|
||||
|
||||
```shell
|
||||
nx show projects --affected --exclude=*-e2e
|
||||
nx show projects --affected --exclude *-e2e
|
||||
```
|
||||
|
||||
Show detailed information about "my-app" in a json format.:
|
||||
@@ -65,13 +59,7 @@ Show information about "my-app" in a human readable format.:
|
||||
nx show project my-app --json false
|
||||
```
|
||||
|
||||
Opens a web browser to explore the configuration of "my-app":
|
||||
|
||||
```shell
|
||||
nx show project my-app --web
|
||||
```
|
||||
|
||||
## Shared Options
|
||||
## Options
|
||||
|
||||
### help
|
||||
|
||||
@@ -145,14 +133,6 @@ Type: `string`
|
||||
|
||||
Show only projects that match a given pattern.
|
||||
|
||||
##### type
|
||||
|
||||
Type: `string`
|
||||
|
||||
Choices: [app, lib, e2e]
|
||||
|
||||
Select only projects of the given type
|
||||
|
||||
##### uncommitted
|
||||
|
||||
Type: `boolean`
|
||||
@@ -165,12 +145,6 @@ Type: `boolean`
|
||||
|
||||
Untracked changes
|
||||
|
||||
##### verbose
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Prints additional information about the commands (e.g., stack traces)
|
||||
|
||||
##### version
|
||||
|
||||
Type: `boolean`
|
||||
@@ -205,20 +179,8 @@ Type: `string`
|
||||
|
||||
Which project should be viewed?
|
||||
|
||||
##### verbose
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Prints additional information about the commands (e.g., stack traces)
|
||||
|
||||
##### version
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show version number
|
||||
|
||||
##### web
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show project details in the browser
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
---
|
||||
title: 'workspace-generator - CLI command'
|
||||
description: 'Runs a workspace generator from the tools/generators directory'
|
||||
---
|
||||
|
||||
# workspace-generator
|
||||
|
||||
**Deprecated:** Use a local plugin instead. See: https://nx.dev/deprecated/workspace-generators
|
||||
|
||||
Runs a workspace generator from the tools/generators directory
|
||||
|
||||
## Usage
|
||||
|
||||
```shell
|
||||
nx workspace-generator [generator]
|
||||
```
|
||||
|
||||
Install `nx` globally to invoke the command directly using `nx`, or use `npx nx`, `yarn nx`, or `pnpm nx`.
|
||||
|
||||
## Options
|
||||
|
||||
### dryRun
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `false`
|
||||
|
||||
Preview the changes without updating files
|
||||
|
||||
### generator
|
||||
|
||||
Type: `string`
|
||||
|
||||
Name of the generator (e.g., @nx/js:library, library)
|
||||
|
||||
### help
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show help
|
||||
|
||||
### interactive
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Default: `true`
|
||||
|
||||
When false disables interactive input prompts for options
|
||||
|
||||
### quiet
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Hides logs from tree operations (e.g. `CREATE package.json`)
|
||||
|
||||
### verbose
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Prints additional information about the commands (e.g., stack traces)
|
||||
|
||||
### version
|
||||
|
||||
Type: `boolean`
|
||||
|
||||
Show version number
|
||||
@@ -0,0 +1,18 @@
|
||||
---
|
||||
title: 'workspace-lint - CLI command'
|
||||
description: 'Lint nx specific workspace files (nx.json, workspace.json)'
|
||||
---
|
||||
|
||||
# workspace-lint
|
||||
|
||||
**Deprecated:** workspace-lint is deprecated, and will be removed in v17. The checks it used to perform are no longer relevant. See: https://nx.dev/deprecated/workspace-lint
|
||||
|
||||
Lint nx specific workspace files (nx.json, workspace.json)
|
||||
|
||||
## Usage
|
||||
|
||||
```shell
|
||||
nx workspace-lint [files..]
|
||||
```
|
||||
|
||||
Install `nx` globally to invoke the command directly using `nx`, or use `npx nx`, `yarn nx`, or `pnpm nx`.
|
||||
@@ -1,20 +0,0 @@
|
||||
# Enumeration: ChangeType
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Enumeration Members
|
||||
|
||||
- [Delete](../../devkit/documents/ChangeType#delete)
|
||||
- [Insert](../../devkit/documents/ChangeType#insert)
|
||||
|
||||
## Enumeration Members
|
||||
|
||||
### Delete
|
||||
|
||||
• **Delete** = `"Delete"`
|
||||
|
||||
---
|
||||
|
||||
### Insert
|
||||
|
||||
• **Insert** = `"Insert"`
|
||||
@@ -1,27 +0,0 @@
|
||||
# Type alias: CreateDependencies\<T\>
|
||||
|
||||
Ƭ **CreateDependencies**\<`T`\>: (`options`: `T` \| `undefined`, `context`: [`CreateDependenciesContext`](../../devkit/documents/CreateDependenciesContext)) => [`RawProjectGraphDependency`](../../devkit/documents/RawProjectGraphDependency)[] \| `Promise`\<[`RawProjectGraphDependency`](../../devkit/documents/RawProjectGraphDependency)[]\>
|
||||
|
||||
A function which parses files in the workspace to create dependencies in the [ProjectGraph](../../devkit/documents/ProjectGraph)
|
||||
Use [validateDependency](../../devkit/documents/validateDependency) to validate dependencies
|
||||
|
||||
#### Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :-------- |
|
||||
| `T` | `unknown` |
|
||||
|
||||
#### Type declaration
|
||||
|
||||
▸ (`options`, `context`): [`RawProjectGraphDependency`](../../devkit/documents/RawProjectGraphDependency)[] \| `Promise`\<[`RawProjectGraphDependency`](../../devkit/documents/RawProjectGraphDependency)[]\>
|
||||
|
||||
##### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :-------- | :------------------------------------------------------------------------------ |
|
||||
| `options` | `T` \| `undefined` |
|
||||
| `context` | [`CreateDependenciesContext`](../../devkit/documents/CreateDependenciesContext) |
|
||||
|
||||
##### Returns
|
||||
|
||||
[`RawProjectGraphDependency`](../../devkit/documents/RawProjectGraphDependency)[] \| `Promise`\<[`RawProjectGraphDependency`](../../devkit/documents/RawProjectGraphDependency)[]\>
|
||||
@@ -1,60 +0,0 @@
|
||||
# Interface: CreateDependenciesContext
|
||||
|
||||
Context for [CreateDependencies](../../devkit/documents/CreateDependencies)
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [externalNodes](../../devkit/documents/CreateDependenciesContext#externalnodes): Record<string, ProjectGraphExternalNode>
|
||||
- [fileMap](../../devkit/documents/CreateDependenciesContext#filemap): FileMap
|
||||
- [filesToProcess](../../devkit/documents/CreateDependenciesContext#filestoprocess): FileMap
|
||||
- [nxJsonConfiguration](../../devkit/documents/CreateDependenciesContext#nxjsonconfiguration): NxJsonConfiguration<string[] | "\*">
|
||||
- [projects](../../devkit/documents/CreateDependenciesContext#projects): Record<string, ProjectConfiguration>
|
||||
- [workspaceRoot](../../devkit/documents/CreateDependenciesContext#workspaceroot): string
|
||||
|
||||
## Properties
|
||||
|
||||
### externalNodes
|
||||
|
||||
• `Readonly` **externalNodes**: `Record`\<`string`, [`ProjectGraphExternalNode`](../../devkit/documents/ProjectGraphExternalNode)\>
|
||||
|
||||
The external nodes that have been added to the graph.
|
||||
|
||||
---
|
||||
|
||||
### fileMap
|
||||
|
||||
• `Readonly` **fileMap**: [`FileMap`](../../devkit/documents/FileMap)
|
||||
|
||||
All files in the workspace
|
||||
|
||||
---
|
||||
|
||||
### filesToProcess
|
||||
|
||||
• `Readonly` **filesToProcess**: [`FileMap`](../../devkit/documents/FileMap)
|
||||
|
||||
Files changes since last invocation
|
||||
|
||||
---
|
||||
|
||||
### nxJsonConfiguration
|
||||
|
||||
• `Readonly` **nxJsonConfiguration**: [`NxJsonConfiguration`](../../devkit/documents/NxJsonConfiguration)\<`string`[] \| `"*"`\>
|
||||
|
||||
The `nx.json` configuration from the workspace
|
||||
|
||||
---
|
||||
|
||||
### projects
|
||||
|
||||
• `Readonly` **projects**: `Record`\<`string`, [`ProjectConfiguration`](../../devkit/documents/ProjectConfiguration)\>
|
||||
|
||||
The configuration of each project in the workspace.
|
||||
|
||||
---
|
||||
|
||||
### workspaceRoot
|
||||
|
||||
• `Readonly` **workspaceRoot**: `string`
|
||||
@@ -1,11 +0,0 @@
|
||||
# Type alias: CreateNodes\<T\>
|
||||
|
||||
Ƭ **CreateNodes**\<`T`\>: readonly [configFilePattern: string, createNodesFunction: CreateNodesFunction\<T\>]
|
||||
|
||||
A pair of file patterns and [CreateNodesFunction](../../devkit/documents/CreateNodesFunction)
|
||||
|
||||
#### Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :-------- |
|
||||
| `T` | `unknown` |
|
||||
@@ -1,31 +0,0 @@
|
||||
# Interface: CreateNodesContext
|
||||
|
||||
Context for [CreateNodesFunction](../../devkit/documents/CreateNodesFunction)
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [configFiles](../../devkit/documents/CreateNodesContext#configfiles): string[]
|
||||
- [nxJsonConfiguration](../../devkit/documents/CreateNodesContext#nxjsonconfiguration): NxJsonConfiguration<string[] | "\*">
|
||||
- [workspaceRoot](../../devkit/documents/CreateNodesContext#workspaceroot): string
|
||||
|
||||
## Properties
|
||||
|
||||
### configFiles
|
||||
|
||||
• `Readonly` **configFiles**: `string`[]
|
||||
|
||||
The subset of configuration files which match the createNodes pattern
|
||||
|
||||
---
|
||||
|
||||
### nxJsonConfiguration
|
||||
|
||||
• `Readonly` **nxJsonConfiguration**: [`NxJsonConfiguration`](../../devkit/documents/NxJsonConfiguration)\<`string`[] \| `"*"`\>
|
||||
|
||||
---
|
||||
|
||||
### workspaceRoot
|
||||
|
||||
• `Readonly` **workspaceRoot**: `string`
|
||||
@@ -1,28 +0,0 @@
|
||||
# Type alias: CreateNodesFunction\<T\>
|
||||
|
||||
Ƭ **CreateNodesFunction**\<`T`\>: (`projectConfigurationFile`: `string`, `options`: `T` \| `undefined`, `context`: [`CreateNodesContext`](../../devkit/documents/CreateNodesContext)) => [`CreateNodesResult`](../../devkit/documents/CreateNodesResult) \| `Promise`\<[`CreateNodesResult`](../../devkit/documents/CreateNodesResult)\>
|
||||
|
||||
A function which parses a configuration file into a set of nodes.
|
||||
Used for creating nodes for the [ProjectGraph](../../devkit/documents/ProjectGraph)
|
||||
|
||||
#### Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :-------- |
|
||||
| `T` | `unknown` |
|
||||
|
||||
#### Type declaration
|
||||
|
||||
▸ (`projectConfigurationFile`, `options`, `context`): [`CreateNodesResult`](../../devkit/documents/CreateNodesResult) \| `Promise`\<[`CreateNodesResult`](../../devkit/documents/CreateNodesResult)\>
|
||||
|
||||
##### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :------------------------- | :---------------------------------------------------------------- |
|
||||
| `projectConfigurationFile` | `string` |
|
||||
| `options` | `T` \| `undefined` |
|
||||
| `context` | [`CreateNodesContext`](../../devkit/documents/CreateNodesContext) |
|
||||
|
||||
##### Returns
|
||||
|
||||
[`CreateNodesResult`](../../devkit/documents/CreateNodesResult) \| `Promise`\<[`CreateNodesResult`](../../devkit/documents/CreateNodesResult)\>
|
||||
@@ -1,24 +0,0 @@
|
||||
# Interface: CreateNodesResult
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [externalNodes](../../devkit/documents/CreateNodesResult#externalnodes): Record<string, ProjectGraphExternalNode>
|
||||
- [projects](../../devkit/documents/CreateNodesResult#projects): Record<string, Optional<ProjectConfiguration, "root">>
|
||||
|
||||
## Properties
|
||||
|
||||
### externalNodes
|
||||
|
||||
• `Optional` **externalNodes**: `Record`\<`string`, [`ProjectGraphExternalNode`](../../devkit/documents/ProjectGraphExternalNode)\>
|
||||
|
||||
A map of external node name -> external node. External nodes do not have a root, so the key is their name.
|
||||
|
||||
---
|
||||
|
||||
### projects
|
||||
|
||||
• `Optional` **projects**: `Record`\<`string`, `Optional`\<[`ProjectConfiguration`](../../devkit/documents/ProjectConfiguration), `"root"`\>\>
|
||||
|
||||
A map of project root -> project configuration
|
||||
@@ -1,18 +0,0 @@
|
||||
# Type alias: CustomHasher
|
||||
|
||||
Ƭ **CustomHasher**: (`task`: [`Task`](../../devkit/documents/Task), `context`: [`HasherContext`](../../devkit/documents/HasherContext)) => `Promise`\<[`Hash`](../../devkit/documents/Hash)\>
|
||||
|
||||
#### Type declaration
|
||||
|
||||
▸ (`task`, `context`): `Promise`\<[`Hash`](../../devkit/documents/Hash)\>
|
||||
|
||||
##### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :-------- | :------------------------------------------------------ |
|
||||
| `task` | [`Task`](../../devkit/documents/Task) |
|
||||
| `context` | [`HasherContext`](../../devkit/documents/HasherContext) |
|
||||
|
||||
##### Returns
|
||||
|
||||
`Promise`\<[`Hash`](../../devkit/documents/Hash)\>
|
||||
@@ -1,76 +0,0 @@
|
||||
# Interface: DefaultTasksRunnerOptions
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [batch](../../devkit/documents/DefaultTasksRunnerOptions#batch): boolean
|
||||
- [cacheDirectory](../../devkit/documents/DefaultTasksRunnerOptions#cachedirectory): string
|
||||
- [cacheableOperations](../../devkit/documents/DefaultTasksRunnerOptions#cacheableoperations): string[]
|
||||
- [cacheableTargets](../../devkit/documents/DefaultTasksRunnerOptions#cacheabletargets): string[]
|
||||
- [captureStderr](../../devkit/documents/DefaultTasksRunnerOptions#capturestderr): boolean
|
||||
- [lifeCycle](../../devkit/documents/DefaultTasksRunnerOptions#lifecycle): LifeCycle
|
||||
- [parallel](../../devkit/documents/DefaultTasksRunnerOptions#parallel): number
|
||||
- [remoteCache](../../devkit/documents/DefaultTasksRunnerOptions#remotecache): RemoteCache
|
||||
- [runtimeCacheInputs](../../devkit/documents/DefaultTasksRunnerOptions#runtimecacheinputs): string[]
|
||||
- [skipNxCache](../../devkit/documents/DefaultTasksRunnerOptions#skipnxcache): boolean
|
||||
|
||||
## Properties
|
||||
|
||||
### batch
|
||||
|
||||
• `Optional` **batch**: `boolean`
|
||||
|
||||
---
|
||||
|
||||
### cacheDirectory
|
||||
|
||||
• `Optional` **cacheDirectory**: `string`
|
||||
|
||||
---
|
||||
|
||||
### cacheableOperations
|
||||
|
||||
• `Optional` **cacheableOperations**: `string`[]
|
||||
|
||||
---
|
||||
|
||||
### cacheableTargets
|
||||
|
||||
• `Optional` **cacheableTargets**: `string`[]
|
||||
|
||||
---
|
||||
|
||||
### captureStderr
|
||||
|
||||
• `Optional` **captureStderr**: `boolean`
|
||||
|
||||
---
|
||||
|
||||
### lifeCycle
|
||||
|
||||
• **lifeCycle**: `LifeCycle`
|
||||
|
||||
---
|
||||
|
||||
### parallel
|
||||
|
||||
• `Optional` **parallel**: `number`
|
||||
|
||||
---
|
||||
|
||||
### remoteCache
|
||||
|
||||
• `Optional` **remoteCache**: [`RemoteCache`](../../devkit/documents/RemoteCache)
|
||||
|
||||
---
|
||||
|
||||
### runtimeCacheInputs
|
||||
|
||||
• `Optional` **runtimeCacheInputs**: `string`[]
|
||||
|
||||
---
|
||||
|
||||
### skipNxCache
|
||||
|
||||
• `Optional` **skipNxCache**: `boolean`
|
||||
@@ -1,35 +0,0 @@
|
||||
# Enumeration: DependencyType
|
||||
|
||||
Type of dependency between projects
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Enumeration Members
|
||||
|
||||
- [dynamic](../../devkit/documents/DependencyType#dynamic)
|
||||
- [implicit](../../devkit/documents/DependencyType#implicit)
|
||||
- [static](../../devkit/documents/DependencyType#static)
|
||||
|
||||
## Enumeration Members
|
||||
|
||||
### dynamic
|
||||
|
||||
• **dynamic** = `"dynamic"`
|
||||
|
||||
Dynamic dependencies are brought in by the module at run time
|
||||
|
||||
---
|
||||
|
||||
### implicit
|
||||
|
||||
• **implicit** = `"implicit"`
|
||||
|
||||
Implicit dependencies are inferred
|
||||
|
||||
---
|
||||
|
||||
### static
|
||||
|
||||
• **static** = `"static"`
|
||||
|
||||
Static dependencies are tied to the loading of the module
|
||||
@@ -1,16 +0,0 @@
|
||||
# Type alias: DynamicDependency
|
||||
|
||||
Ƭ **DynamicDependency**: `Object`
|
||||
|
||||
A dynamic [ProjectGraph](../../devkit/documents/ProjectGraph) dependency between 2 projects
|
||||
|
||||
This type of dependency indicates the source project MAY OR MAY NOT load the target project.
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type | Description |
|
||||
| :----------- | :---------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `source` | `string` | The name of a [ProjectGraphProjectNode](../../devkit/documents/ProjectGraphProjectNode) depending on the target project |
|
||||
| `sourceFile` | `string` | The path of a file (relative from the workspace root) where the dependency is made |
|
||||
| `target` | `string` | The name of a [ProjectGraphProjectNode](../../devkit/documents/ProjectGraphProjectNode) that the source project depends on |
|
||||
| `type` | typeof [`dynamic`](../../devkit/documents/DependencyType#dynamic) | - |
|
||||
@@ -1,26 +0,0 @@
|
||||
# Type alias: Executor\<T\>
|
||||
|
||||
Ƭ **Executor**\<`T`\>: (`options`: `T`, `context`: [`ExecutorContext`](../../devkit/documents/ExecutorContext)) => `Promise`\<\{ `success`: `boolean` }\> \| `AsyncIterableIterator`\<\{ `success`: `boolean` }\>
|
||||
|
||||
Implementation of a target of a project
|
||||
|
||||
#### Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :---- |
|
||||
| `T` | `any` |
|
||||
|
||||
#### Type declaration
|
||||
|
||||
▸ (`options`, `context`): `Promise`\<\{ `success`: `boolean` }\> \| `AsyncIterableIterator`\<\{ `success`: `boolean` }\>
|
||||
|
||||
##### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :-------- | :---------------------------------------------------------- |
|
||||
| `options` | `T` |
|
||||
| `context` | [`ExecutorContext`](../../devkit/documents/ExecutorContext) |
|
||||
|
||||
##### Returns
|
||||
|
||||
`Promise`\<\{ `success`: `boolean` }\> \| `AsyncIterableIterator`\<\{ `success`: `boolean` }\>
|
||||
@@ -1,126 +0,0 @@
|
||||
# Interface: ExecutorContext
|
||||
|
||||
Context that is passed into an executor
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [configurationName](../../devkit/documents/ExecutorContext#configurationname): string
|
||||
- [cwd](../../devkit/documents/ExecutorContext#cwd): string
|
||||
- [isVerbose](../../devkit/documents/ExecutorContext#isverbose): boolean
|
||||
- [nxJsonConfiguration](../../devkit/documents/ExecutorContext#nxjsonconfiguration): NxJsonConfiguration<string[] | "\*">
|
||||
- [projectGraph](../../devkit/documents/ExecutorContext#projectgraph): ProjectGraph
|
||||
- [projectName](../../devkit/documents/ExecutorContext#projectname): string
|
||||
- [projectsConfigurations](../../devkit/documents/ExecutorContext#projectsconfigurations): ProjectsConfigurations
|
||||
- [root](../../devkit/documents/ExecutorContext#root): string
|
||||
- [target](../../devkit/documents/ExecutorContext#target): TargetConfiguration<any>
|
||||
- [targetName](../../devkit/documents/ExecutorContext#targetname): string
|
||||
- [taskGraph](../../devkit/documents/ExecutorContext#taskgraph): TaskGraph
|
||||
- [workspace](../../devkit/documents/ExecutorContext#workspace): ProjectsConfigurations & NxJsonConfiguration<string[] | "\*">
|
||||
|
||||
## Properties
|
||||
|
||||
### configurationName
|
||||
|
||||
• `Optional` **configurationName**: `string`
|
||||
|
||||
The name of the configuration being executed
|
||||
|
||||
---
|
||||
|
||||
### cwd
|
||||
|
||||
• **cwd**: `string`
|
||||
|
||||
The current working directory
|
||||
|
||||
---
|
||||
|
||||
### isVerbose
|
||||
|
||||
• **isVerbose**: `boolean`
|
||||
|
||||
Enable verbose logging
|
||||
|
||||
---
|
||||
|
||||
### nxJsonConfiguration
|
||||
|
||||
• `Optional` **nxJsonConfiguration**: [`NxJsonConfiguration`](../../devkit/documents/NxJsonConfiguration)\<`string`[] \| `"*"`\>
|
||||
|
||||
The contents of nx.json.
|
||||
|
||||
@todo(vsavkin): mark this as required for v17
|
||||
|
||||
---
|
||||
|
||||
### projectGraph
|
||||
|
||||
• `Optional` **projectGraph**: [`ProjectGraph`](../../devkit/documents/ProjectGraph)
|
||||
|
||||
A snapshot of the project graph as
|
||||
it existed when the Nx command was kicked off
|
||||
|
||||
@todo(vsavkin) mark this required for v17
|
||||
|
||||
---
|
||||
|
||||
### projectName
|
||||
|
||||
• `Optional` **projectName**: `string`
|
||||
|
||||
The name of the project being executed on
|
||||
|
||||
---
|
||||
|
||||
### projectsConfigurations
|
||||
|
||||
• `Optional` **projectsConfigurations**: [`ProjectsConfigurations`](../../devkit/documents/ProjectsConfigurations)
|
||||
|
||||
Projects config
|
||||
|
||||
@todo(vsavkin): mark this as required for v17
|
||||
|
||||
---
|
||||
|
||||
### root
|
||||
|
||||
• **root**: `string`
|
||||
|
||||
The root of the workspace
|
||||
|
||||
---
|
||||
|
||||
### target
|
||||
|
||||
• `Optional` **target**: [`TargetConfiguration`](../../devkit/documents/TargetConfiguration)\<`any`\>
|
||||
|
||||
The configuration of the target being executed
|
||||
|
||||
---
|
||||
|
||||
### targetName
|
||||
|
||||
• `Optional` **targetName**: `string`
|
||||
|
||||
The name of the target being executed
|
||||
|
||||
---
|
||||
|
||||
### taskGraph
|
||||
|
||||
• `Optional` **taskGraph**: [`TaskGraph`](../../devkit/documents/TaskGraph)
|
||||
|
||||
A snapshot of the task graph as
|
||||
it existed when the Nx command was kicked off
|
||||
|
||||
---
|
||||
|
||||
### workspace
|
||||
|
||||
• `Optional` **workspace**: [`ProjectsConfigurations`](../../devkit/documents/ProjectsConfigurations) & [`NxJsonConfiguration`](../../devkit/documents/NxJsonConfiguration)\<`string`[] \| `"*"`\>
|
||||
|
||||
Deprecated. Use projectsConfigurations or nxJsonConfiguration
|
||||
The full workspace configuration
|
||||
@todo(vsavkin): remove after v17
|
||||
@@ -1,20 +0,0 @@
|
||||
# Interface: ExecutorsJson
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [builders](../../devkit/documents/ExecutorsJson#builders): Record<string, ExecutorsJsonEntry>
|
||||
- [executors](../../devkit/documents/ExecutorsJson#executors): Record<string, ExecutorsJsonEntry>
|
||||
|
||||
## Properties
|
||||
|
||||
### builders
|
||||
|
||||
• `Optional` **builders**: `Record`\<`string`, `ExecutorsJsonEntry`\>
|
||||
|
||||
---
|
||||
|
||||
### executors
|
||||
|
||||
• `Optional` **executors**: `Record`\<`string`, `ExecutorsJsonEntry`\>
|
||||
@@ -1,44 +0,0 @@
|
||||
# Interface: FileChange
|
||||
|
||||
Description of a file change in the Nx virtual file system/
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [content](../../devkit/documents/FileChange#content): Buffer
|
||||
- [options](../../devkit/documents/FileChange#options): TreeWriteOptions
|
||||
- [path](../../devkit/documents/FileChange#path): string
|
||||
- [type](../../devkit/documents/FileChange#type): "CREATE" | "DELETE" | "UPDATE"
|
||||
|
||||
## Properties
|
||||
|
||||
### content
|
||||
|
||||
• **content**: `Buffer`
|
||||
|
||||
The content of the file or null in case of delete.
|
||||
|
||||
---
|
||||
|
||||
### options
|
||||
|
||||
• `Optional` **options**: `TreeWriteOptions`
|
||||
|
||||
Options to set on the file being created or updated.
|
||||
|
||||
---
|
||||
|
||||
### path
|
||||
|
||||
• **path**: `string`
|
||||
|
||||
Path relative to the workspace root
|
||||
|
||||
---
|
||||
|
||||
### type
|
||||
|
||||
• **type**: `"CREATE"` \| `"DELETE"` \| `"UPDATE"`
|
||||
|
||||
Type of change: 'CREATE' | 'DELETE' | 'UPDATE'
|
||||
@@ -1,35 +0,0 @@
|
||||
# Interface: FileData
|
||||
|
||||
Some metadata about a file
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [deps](../../devkit/documents/FileData#deps): FileDataDependency[]
|
||||
- [file](../../devkit/documents/FileData#file): string
|
||||
- [hash](../../devkit/documents/FileData#hash): string
|
||||
|
||||
## Properties
|
||||
|
||||
### deps
|
||||
|
||||
• `Optional` **deps**: `FileDataDependency`[]
|
||||
|
||||
An array of dependencies. If an element is just a string,
|
||||
the dependency is assumed to be a static dependency targetting
|
||||
that string. If the element is a tuple with two elements, the first element
|
||||
inside of it is the target project, with the second element being the type of dependency.
|
||||
If the tuple has 3 elements, the first is preceded by a source.
|
||||
|
||||
---
|
||||
|
||||
### file
|
||||
|
||||
• **file**: `string`
|
||||
|
||||
---
|
||||
|
||||
### hash
|
||||
|
||||
• **hash**: `string`
|
||||
@@ -1,20 +0,0 @@
|
||||
# Interface: FileMap
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [nonProjectFiles](../../devkit/documents/FileMap#nonprojectfiles): FileData[]
|
||||
- [projectFileMap](../../devkit/documents/FileMap#projectfilemap): ProjectFileMap
|
||||
|
||||
## Properties
|
||||
|
||||
### nonProjectFiles
|
||||
|
||||
• **nonProjectFiles**: [`FileData`](../../devkit/documents/FileData)[]
|
||||
|
||||
---
|
||||
|
||||
### projectFileMap
|
||||
|
||||
• **projectFileMap**: [`ProjectFileMap`](../../devkit/documents/ProjectFileMap)
|
||||
@@ -1,26 +0,0 @@
|
||||
# Type alias: Generator\<T\>
|
||||
|
||||
Ƭ **Generator**\<`T`\>: (`tree`: `any`, `schema`: `T`) => `void` \| [`GeneratorCallback`](../../devkit/documents/GeneratorCallback) \| `Promise`\<`void` \| [`GeneratorCallback`](../../devkit/documents/GeneratorCallback)\>
|
||||
|
||||
A function that schedules updates to the filesystem to be done atomically
|
||||
|
||||
#### Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :-------- |
|
||||
| `T` | `unknown` |
|
||||
|
||||
#### Type declaration
|
||||
|
||||
▸ (`tree`, `schema`): `void` \| [`GeneratorCallback`](../../devkit/documents/GeneratorCallback) \| `Promise`\<`void` \| [`GeneratorCallback`](../../devkit/documents/GeneratorCallback)\>
|
||||
|
||||
##### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :------- | :---- |
|
||||
| `tree` | `any` |
|
||||
| `schema` | `T` |
|
||||
|
||||
##### Returns
|
||||
|
||||
`void` \| [`GeneratorCallback`](../../devkit/documents/GeneratorCallback) \| `Promise`\<`void` \| [`GeneratorCallback`](../../devkit/documents/GeneratorCallback)\>
|
||||
@@ -1,13 +0,0 @@
|
||||
# Type alias: GeneratorCallback
|
||||
|
||||
Ƭ **GeneratorCallback**: () => `void` \| `Promise`\<`void`\>
|
||||
|
||||
A callback function that is executed after changes are made to the file system
|
||||
|
||||
#### Type declaration
|
||||
|
||||
▸ (): `void` \| `Promise`\<`void`\>
|
||||
|
||||
##### Returns
|
||||
|
||||
`void` \| `Promise`\<`void`\>
|
||||
@@ -1,27 +0,0 @@
|
||||
# Interface: GeneratorsJson
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [extends](../../devkit/documents/GeneratorsJson#extends): string
|
||||
- [generators](../../devkit/documents/GeneratorsJson#generators): Record<string, GeneratorsJsonEntry>
|
||||
- [schematics](../../devkit/documents/GeneratorsJson#schematics): Record<string, GeneratorsJsonEntry>
|
||||
|
||||
## Properties
|
||||
|
||||
### extends
|
||||
|
||||
• `Optional` **extends**: `string`
|
||||
|
||||
---
|
||||
|
||||
### generators
|
||||
|
||||
• `Optional` **generators**: `Record`\<`string`, `GeneratorsJsonEntry`\>
|
||||
|
||||
---
|
||||
|
||||
### schematics
|
||||
|
||||
• `Optional` **schematics**: `Record`\<`string`, `GeneratorsJsonEntry`\>
|
||||
@@ -1,31 +0,0 @@
|
||||
# Interface: Hash
|
||||
|
||||
A data structure returned by the default hasher.
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [details](../../devkit/documents/Hash#details): Object
|
||||
- [value](../../devkit/documents/Hash#value): string
|
||||
|
||||
## Properties
|
||||
|
||||
### details
|
||||
|
||||
• **details**: `Object`
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type |
|
||||
| :-------------- | :----------------------------------- |
|
||||
| `command` | `string` |
|
||||
| `implicitDeps?` | \{ `[fileName: string]`: `string`; } |
|
||||
| `nodes` | \{ `[name: string]`: `string`; } |
|
||||
| `runtime?` | \{ `[input: string]`: `string`; } |
|
||||
|
||||
---
|
||||
|
||||
### value
|
||||
|
||||
• **value**: `string`
|
||||
@@ -1,3 +0,0 @@
|
||||
# Type alias: Hasher
|
||||
|
||||
Ƭ **Hasher**: [`TaskHasher`](../../devkit/documents/TaskHasher)
|
||||
@@ -1,41 +0,0 @@
|
||||
# Interface: HasherContext
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [hasher](../../devkit/documents/HasherContext#hasher): TaskHasher
|
||||
- [nxJsonConfiguration](../../devkit/documents/HasherContext#nxjsonconfiguration): NxJsonConfiguration<string[] | "\*">
|
||||
- [projectGraph](../../devkit/documents/HasherContext#projectgraph): ProjectGraph
|
||||
- [projectsConfigurations](../../devkit/documents/HasherContext#projectsconfigurations): ProjectsConfigurations
|
||||
- [taskGraph](../../devkit/documents/HasherContext#taskgraph): TaskGraph
|
||||
|
||||
## Properties
|
||||
|
||||
### hasher
|
||||
|
||||
• **hasher**: [`TaskHasher`](../../devkit/documents/TaskHasher)
|
||||
|
||||
---
|
||||
|
||||
### nxJsonConfiguration
|
||||
|
||||
• **nxJsonConfiguration**: [`NxJsonConfiguration`](../../devkit/documents/NxJsonConfiguration)\<`string`[] \| `"*"`\>
|
||||
|
||||
---
|
||||
|
||||
### projectGraph
|
||||
|
||||
• **projectGraph**: [`ProjectGraph`](../../devkit/documents/ProjectGraph)
|
||||
|
||||
---
|
||||
|
||||
### projectsConfigurations
|
||||
|
||||
• **projectsConfigurations**: [`ProjectsConfigurations`](../../devkit/documents/ProjectsConfigurations)
|
||||
|
||||
---
|
||||
|
||||
### taskGraph
|
||||
|
||||
• **taskGraph**: [`TaskGraph`](../../devkit/documents/TaskGraph)
|
||||
@@ -1,15 +0,0 @@
|
||||
# Type alias: ImplicitDependency
|
||||
|
||||
Ƭ **ImplicitDependency**: `Object`
|
||||
|
||||
An implicit [ProjectGraph](../../devkit/documents/ProjectGraph) dependency between 2 projects
|
||||
|
||||
This type of dependency indicates a connection without an explicit reference in code
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type | Description |
|
||||
| :------- | :------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `source` | `string` | The name of a [ProjectGraphProjectNode](../../devkit/documents/ProjectGraphProjectNode) depending on the target project |
|
||||
| `target` | `string` | The name of a [ProjectGraphProjectNode](../../devkit/documents/ProjectGraphProjectNode) that the source project depends on |
|
||||
| `type` | typeof [`implicit`](../../devkit/documents/DependencyType#implicit) | - |
|
||||
@@ -1,13 +0,0 @@
|
||||
# Type alias: ImplicitDependencyEntry\<T\>
|
||||
|
||||
Ƭ **ImplicitDependencyEntry**\<`T`\>: `Object`
|
||||
|
||||
#### Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :------------------ |
|
||||
| `T` | `"*"` \| `string`[] |
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [key: `string`]: `T` \| [`ImplicitJsonSubsetDependency`](../../devkit/documents/ImplicitJsonSubsetDependency)\<`T`\>
|
||||
@@ -1,11 +0,0 @@
|
||||
# Interface: ImplicitJsonSubsetDependency\<T\>
|
||||
|
||||
## Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :------------------ |
|
||||
| `T` | `"*"` \| `string`[] |
|
||||
|
||||
## Indexable
|
||||
|
||||
▪ [key: `string`]: `T` \| [`ImplicitJsonSubsetDependency`](../../devkit/documents/ImplicitJsonSubsetDependency)\<`T`\>
|
||||
@@ -1,70 +0,0 @@
|
||||
# Interface: JsonParseOptions
|
||||
|
||||
## Hierarchy
|
||||
|
||||
- `ParseOptions`
|
||||
|
||||
↳ **`JsonParseOptions`**
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [allowEmptyContent](../../devkit/documents/JsonParseOptions#allowemptycontent): boolean
|
||||
- [allowTrailingComma](../../devkit/documents/JsonParseOptions#allowtrailingcomma): boolean
|
||||
- [disallowComments](../../devkit/documents/JsonParseOptions#disallowcomments): boolean
|
||||
- [expectComments](../../devkit/documents/JsonParseOptions#expectcomments): boolean
|
||||
|
||||
## Properties
|
||||
|
||||
### allowEmptyContent
|
||||
|
||||
• `Optional` **allowEmptyContent**: `boolean`
|
||||
|
||||
#### Inherited from
|
||||
|
||||
ParseOptions.allowEmptyContent
|
||||
|
||||
---
|
||||
|
||||
### allowTrailingComma
|
||||
|
||||
• `Optional` **allowTrailingComma**: `boolean`
|
||||
|
||||
Allow trailing commas in the JSON content
|
||||
|
||||
#### Overrides
|
||||
|
||||
ParseOptions.allowTrailingComma
|
||||
|
||||
---
|
||||
|
||||
### disallowComments
|
||||
|
||||
• `Optional` **disallowComments**: `boolean`
|
||||
|
||||
Disallow javascript-style
|
||||
|
||||
**`Default`**
|
||||
|
||||
```ts
|
||||
false;
|
||||
```
|
||||
|
||||
#### Overrides
|
||||
|
||||
ParseOptions.disallowComments
|
||||
|
||||
---
|
||||
|
||||
### expectComments
|
||||
|
||||
• `Optional` **expectComments**: `boolean`
|
||||
|
||||
Expect JSON with javascript-style
|
||||
|
||||
**`Default`**
|
||||
|
||||
```ts
|
||||
false;
|
||||
```
|
||||
@@ -1,21 +0,0 @@
|
||||
# Interface: JsonSerializeOptions
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [spaces](../../devkit/documents/JsonSerializeOptions#spaces): number
|
||||
|
||||
## Properties
|
||||
|
||||
### spaces
|
||||
|
||||
• `Optional` **spaces**: `number`
|
||||
|
||||
the whitespaces to add as indentation to make the output more readable.
|
||||
|
||||
**`Default`**
|
||||
|
||||
```ts
|
||||
2;
|
||||
```
|
||||
@@ -1,56 +0,0 @@
|
||||
# Interface: MigrationsJson
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [collection](../../devkit/documents/MigrationsJson#collection): string
|
||||
- [generators](../../devkit/documents/MigrationsJson#generators): Object
|
||||
- [name](../../devkit/documents/MigrationsJson#name): string
|
||||
- [packageJsonUpdates](../../devkit/documents/MigrationsJson#packagejsonupdates): PackageJsonUpdates
|
||||
- [schematics](../../devkit/documents/MigrationsJson#schematics): Object
|
||||
- [version](../../devkit/documents/MigrationsJson#version): string
|
||||
|
||||
## Properties
|
||||
|
||||
### collection
|
||||
|
||||
• `Optional` **collection**: `string`
|
||||
|
||||
---
|
||||
|
||||
### generators
|
||||
|
||||
• `Optional` **generators**: `Object`
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [name: `string`]: `MigrationsJsonEntry`
|
||||
|
||||
---
|
||||
|
||||
### name
|
||||
|
||||
• `Optional` **name**: `string`
|
||||
|
||||
---
|
||||
|
||||
### packageJsonUpdates
|
||||
|
||||
• `Optional` **packageJsonUpdates**: `PackageJsonUpdates`
|
||||
|
||||
---
|
||||
|
||||
### schematics
|
||||
|
||||
• `Optional` **schematics**: `Object`
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [name: `string`]: `MigrationsJsonEntry`
|
||||
|
||||
---
|
||||
|
||||
### version
|
||||
|
||||
• `Optional` **version**: `string`
|
||||
@@ -1,7 +0,0 @@
|
||||
# Variable: NX_VERSION
|
||||
|
||||
• `Const` **NX_VERSION**: `string`
|
||||
|
||||
**`Description`**
|
||||
|
||||
The version of Nx used by the workspace. Returns null if no version is found.
|
||||
@@ -1,19 +0,0 @@
|
||||
# Interface: NxAffectedConfig
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
Use [NxJsonConfiguration#defaultBase](../../devkit/documents/NxJsonConfiguration#defaultbase) instead
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [defaultBase](../../devkit/documents/NxAffectedConfig#defaultbase): string
|
||||
|
||||
## Properties
|
||||
|
||||
### defaultBase
|
||||
|
||||
• `Optional` **defaultBase**: `string`
|
||||
|
||||
Default based branch used by affected commands.
|
||||
@@ -1,271 +0,0 @@
|
||||
# Interface: NxJsonConfiguration\<T\>
|
||||
|
||||
Nx.json configuration
|
||||
|
||||
## Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :------------------ |
|
||||
| `T` | `"*"` \| `string`[] |
|
||||
|
||||
## Hierarchy
|
||||
|
||||
- **`NxJsonConfiguration`**
|
||||
|
||||
↳ [`Workspace`](../../devkit/documents/Workspace)
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [affected](../../devkit/documents/NxJsonConfiguration#affected): NxAffectedConfig
|
||||
- [cacheDirectory](../../devkit/documents/NxJsonConfiguration#cachedirectory): string
|
||||
- [cli](../../devkit/documents/NxJsonConfiguration#cli): Object
|
||||
- [defaultBase](../../devkit/documents/NxJsonConfiguration#defaultbase): string
|
||||
- [defaultProject](../../devkit/documents/NxJsonConfiguration#defaultproject): string
|
||||
- [extends](../../devkit/documents/NxJsonConfiguration#extends): string
|
||||
- [generators](../../devkit/documents/NxJsonConfiguration#generators): Object
|
||||
- [implicitDependencies](../../devkit/documents/NxJsonConfiguration#implicitdependencies): ImplicitDependencyEntry<T>
|
||||
- [installation](../../devkit/documents/NxJsonConfiguration#installation): NxInstallationConfiguration
|
||||
- [namedInputs](../../devkit/documents/NxJsonConfiguration#namedinputs): Object
|
||||
- [nxCloudAccessToken](../../devkit/documents/NxJsonConfiguration#nxcloudaccesstoken): string
|
||||
- [nxCloudEncryptionKey](../../devkit/documents/NxJsonConfiguration#nxcloudencryptionkey): string
|
||||
- [nxCloudUrl](../../devkit/documents/NxJsonConfiguration#nxcloudurl): string
|
||||
- [parallel](../../devkit/documents/NxJsonConfiguration#parallel): number
|
||||
- [plugins](../../devkit/documents/NxJsonConfiguration#plugins): PluginConfiguration[]
|
||||
- [pluginsConfig](../../devkit/documents/NxJsonConfiguration#pluginsconfig): Record<string, Record<string, unknown>>
|
||||
- [release](../../devkit/documents/NxJsonConfiguration#release): NxReleaseConfiguration
|
||||
- [targetDefaults](../../devkit/documents/NxJsonConfiguration#targetdefaults): TargetDefaults
|
||||
- [tasksRunnerOptions](../../devkit/documents/NxJsonConfiguration#tasksrunneroptions): Object
|
||||
- [useDaemonProcess](../../devkit/documents/NxJsonConfiguration#usedaemonprocess): boolean
|
||||
- [useInferencePlugins](../../devkit/documents/NxJsonConfiguration#useinferenceplugins): boolean
|
||||
- [workspaceLayout](../../devkit/documents/NxJsonConfiguration#workspacelayout): Object
|
||||
|
||||
## Properties
|
||||
|
||||
### affected
|
||||
|
||||
• `Optional` **affected**: [`NxAffectedConfig`](../../devkit/documents/NxAffectedConfig)
|
||||
|
||||
Default options for `nx affected`
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
use [defaultBase](../../devkit/documents/NxJsonConfiguration#defaultbase) instead. For more information see https://nx.dev/deprecated/affected-config#affected-config
|
||||
|
||||
---
|
||||
|
||||
### cacheDirectory
|
||||
|
||||
• `Optional` **cacheDirectory**: `string`
|
||||
|
||||
Changes the directory used by Nx to store its cache.
|
||||
|
||||
---
|
||||
|
||||
### cli
|
||||
|
||||
• `Optional` **cli**: `Object`
|
||||
|
||||
Default generator collection. It is used when no collection is provided.
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type |
|
||||
| :-------------------- | :-------------------------------------------------------- |
|
||||
| `defaultProjectName?` | `string` |
|
||||
| `packageManager?` | [`PackageManager`](../../devkit/documents/PackageManager) |
|
||||
|
||||
---
|
||||
|
||||
### defaultBase
|
||||
|
||||
• `Optional` **defaultBase**: `string`
|
||||
|
||||
Default value for --base used by `nx affected` and `nx format`.
|
||||
|
||||
---
|
||||
|
||||
### defaultProject
|
||||
|
||||
• `Optional` **defaultProject**: `string`
|
||||
|
||||
Default project. When project isn't provided, the default project
|
||||
will be used. Convenient for small workspaces with one main application.
|
||||
|
||||
---
|
||||
|
||||
### extends
|
||||
|
||||
• `Optional` **extends**: `string`
|
||||
|
||||
Optional (additional) Nx.json configuration file which becomes a base for this one
|
||||
|
||||
---
|
||||
|
||||
### generators
|
||||
|
||||
• `Optional` **generators**: `Object`
|
||||
|
||||
List of default values used by generators.
|
||||
|
||||
These defaults are global. They are used when no other defaults are configured.
|
||||
|
||||
Example:
|
||||
|
||||
```
|
||||
{
|
||||
"@nx/react": {
|
||||
"library": {
|
||||
"style": "scss"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [collectionName: `string`]: \{ `[generatorName: string]`: `any`; }
|
||||
|
||||
---
|
||||
|
||||
### implicitDependencies
|
||||
|
||||
• `Optional` **implicitDependencies**: [`ImplicitDependencyEntry`](../../devkit/documents/ImplicitDependencyEntry)\<`T`\>
|
||||
|
||||
Map of files to projects that implicitly depend on them
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
use [namedInputs](../../devkit/documents/NxJsonConfiguration#namedinputs) instead. For more information see https://nx.dev/deprecated/global-implicit-dependencies#global-implicit-dependencies
|
||||
|
||||
---
|
||||
|
||||
### installation
|
||||
|
||||
• `Optional` **installation**: `NxInstallationConfiguration`
|
||||
|
||||
Configures the Nx installation for a repo. Useful for maintaining a separate
|
||||
set of dependencies for Nx + Plugins compared to the base package.json, but also
|
||||
useful for workspaces that don't have a root package.json + node_modules.
|
||||
|
||||
---
|
||||
|
||||
### namedInputs
|
||||
|
||||
• `Optional` **namedInputs**: `Object`
|
||||
|
||||
Named inputs targets can refer to reduce duplication
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [inputName: `string`]: (`string` \| `InputDefinition`)[]
|
||||
|
||||
---
|
||||
|
||||
### nxCloudAccessToken
|
||||
|
||||
• `Optional` **nxCloudAccessToken**: `string`
|
||||
|
||||
If specified Nx will use nx-cloud by default with the given token.
|
||||
To use a different runner that accepts an access token, define it in [tasksRunnerOptions](../../devkit/documents/NxJsonConfiguration#tasksrunneroptions)
|
||||
|
||||
---
|
||||
|
||||
### nxCloudEncryptionKey
|
||||
|
||||
• `Optional` **nxCloudEncryptionKey**: `string`
|
||||
|
||||
Specifies the encryption key used to encrypt artifacts data before sending it to nx cloud.
|
||||
|
||||
---
|
||||
|
||||
### nxCloudUrl
|
||||
|
||||
• `Optional` **nxCloudUrl**: `string`
|
||||
|
||||
Specifies the url pointing to an instance of nx cloud. Used for remote
|
||||
caching and displaying run links.
|
||||
|
||||
---
|
||||
|
||||
### parallel
|
||||
|
||||
• `Optional` **parallel**: `number`
|
||||
|
||||
Specifies how many tasks can be run in parallel.
|
||||
|
||||
---
|
||||
|
||||
### plugins
|
||||
|
||||
• `Optional` **plugins**: [`PluginConfiguration`](../../devkit/documents/PluginConfiguration)[]
|
||||
|
||||
Plugins for extending the project graph
|
||||
|
||||
---
|
||||
|
||||
### pluginsConfig
|
||||
|
||||
• `Optional` **pluginsConfig**: `Record`\<`string`, `Record`\<`string`, `unknown`\>\>
|
||||
|
||||
Configuration for Nx Plugins
|
||||
|
||||
---
|
||||
|
||||
### release
|
||||
|
||||
• `Optional` **release**: `NxReleaseConfiguration`
|
||||
|
||||
Configuration for `nx release` (versioning and publishing of applications and libraries)
|
||||
|
||||
---
|
||||
|
||||
### targetDefaults
|
||||
|
||||
• `Optional` **targetDefaults**: [`TargetDefaults`](../../devkit/documents/TargetDefaults)
|
||||
|
||||
Dependencies between different target names across all projects
|
||||
|
||||
---
|
||||
|
||||
### tasksRunnerOptions
|
||||
|
||||
• `Optional` **tasksRunnerOptions**: `Object`
|
||||
|
||||
Available Task Runners
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [tasksRunnerName: `string`]: \{ `options?`: `any` ; `runner?`: `string` }
|
||||
|
||||
---
|
||||
|
||||
### useDaemonProcess
|
||||
|
||||
• `Optional` **useDaemonProcess**: `boolean`
|
||||
|
||||
Set this to false to disable the daemon.
|
||||
|
||||
---
|
||||
|
||||
### useInferencePlugins
|
||||
|
||||
• `Optional` **useInferencePlugins**: `boolean`
|
||||
|
||||
Set this to false to disable adding inference plugins when generating new projects
|
||||
|
||||
---
|
||||
|
||||
### workspaceLayout
|
||||
|
||||
• `Optional` **workspaceLayout**: `Object`
|
||||
|
||||
Where new apps + libs should be placed
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type |
|
||||
| :--------- | :------- |
|
||||
| `appsDir?` | `string` |
|
||||
| `libsDir?` | `string` |
|
||||
@@ -1,5 +0,0 @@
|
||||
# Type alias: NxPlugin
|
||||
|
||||
Ƭ **NxPlugin**: [`NxPluginV1`](../../devkit/documents/NxPluginV1) \| [`NxPluginV2`](../../devkit/documents/NxPluginV2)
|
||||
|
||||
A plugin for Nx
|
||||
@@ -1,16 +0,0 @@
|
||||
# Type alias: NxPluginV1
|
||||
|
||||
Ƭ **NxPluginV1**: `Object`
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
Use [NxPluginV2](../../devkit/documents/NxPluginV2) instead. This will be removed in Nx 19
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type | Description |
|
||||
| :------------------------ | :------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `name` | `string` | - |
|
||||
| `processProjectGraph?` | `ProjectGraphProcessor` | **`Deprecated`** Use [CreateNodes](../../devkit/documents/CreateNodes) and [CreateDependencies](../../devkit/documents/CreateDependencies) instead. This will be removed in Nx 19 |
|
||||
| `projectFilePatterns?` | `string`[] | A glob pattern to search for non-standard project files. @example: ["*.csproj", "pom.xml"] **`Deprecated`** Use [CreateNodes](../../devkit/documents/CreateNodes) instead. This will be removed in Nx 19 |
|
||||
| `registerProjectTargets?` | [`ProjectTargetConfigurator`](../../devkit/documents/ProjectTargetConfigurator) | **`Deprecated`** Add targets to the projects inside of [CreateNodes](../../devkit/documents/CreateNodes) instead. This will be removed in Nx 19 |
|
||||
@@ -1,19 +0,0 @@
|
||||
# Type alias: NxPluginV2\<TOptions\>
|
||||
|
||||
Ƭ **NxPluginV2**\<`TOptions`\>: `Object`
|
||||
|
||||
A plugin for Nx which creates nodes and dependencies for the [ProjectGraph](../../devkit/documents/ProjectGraph)
|
||||
|
||||
#### Type parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--------- | :-------- |
|
||||
| `TOptions` | `unknown` |
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type | Description |
|
||||
| :-------------------- | :------------------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `createDependencies?` | [`CreateDependencies`](../../devkit/documents/CreateDependencies)\<`TOptions`\> | Provides a function to analyze files to create dependencies for the [ProjectGraph](../../devkit/documents/ProjectGraph) |
|
||||
| `createNodes?` | [`CreateNodes`](../../devkit/documents/CreateNodes) | Provides a file pattern and function that retrieves configuration info from those files. e.g. { '\*_/_.csproj': buildProjectsFromCsProjFile } |
|
||||
| `name` | `string` | - |
|
||||
@@ -1,3 +0,0 @@
|
||||
# Type alias: PackageManager
|
||||
|
||||
Ƭ **PackageManager**: `"yarn"` \| `"pnpm"` \| `"npm"`
|
||||
@@ -1,3 +0,0 @@
|
||||
# Type alias: PluginConfiguration
|
||||
|
||||
Ƭ **PluginConfiguration**: `string` \| \{ `exclude?`: `string`[] ; `include?`: `string`[] ; `options?`: `unknown` ; `plugin`: `string` }
|
||||
@@ -1,144 +0,0 @@
|
||||
# Interface: ProjectConfiguration
|
||||
|
||||
Project configuration
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [generators](../../devkit/documents/ProjectConfiguration#generators): Object
|
||||
- [implicitDependencies](../../devkit/documents/ProjectConfiguration#implicitdependencies): string[]
|
||||
- [metadata](../../devkit/documents/ProjectConfiguration#metadata): Object
|
||||
- [name](../../devkit/documents/ProjectConfiguration#name): string
|
||||
- [namedInputs](../../devkit/documents/ProjectConfiguration#namedinputs): Object
|
||||
- [projectType](../../devkit/documents/ProjectConfiguration#projecttype): ProjectType
|
||||
- [release](../../devkit/documents/ProjectConfiguration#release): Object
|
||||
- [root](../../devkit/documents/ProjectConfiguration#root): string
|
||||
- [sourceRoot](../../devkit/documents/ProjectConfiguration#sourceroot): string
|
||||
- [tags](../../devkit/documents/ProjectConfiguration#tags): string[]
|
||||
- [targets](../../devkit/documents/ProjectConfiguration#targets): Object
|
||||
|
||||
## Properties
|
||||
|
||||
### generators
|
||||
|
||||
• `Optional` **generators**: `Object`
|
||||
|
||||
List of default values used by generators.
|
||||
|
||||
These defaults are project specific.
|
||||
|
||||
Example:
|
||||
|
||||
```
|
||||
{
|
||||
"@nx/react": {
|
||||
"library": {
|
||||
"style": "scss"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [collectionName: `string`]: \{ `[generatorName: string]`: `any`; }
|
||||
|
||||
---
|
||||
|
||||
### implicitDependencies
|
||||
|
||||
• `Optional` **implicitDependencies**: `string`[]
|
||||
|
||||
List of projects which are added as a dependency
|
||||
|
||||
---
|
||||
|
||||
### metadata
|
||||
|
||||
• `Optional` **metadata**: `Object`
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type |
|
||||
| :-------------- | :------------------------------- |
|
||||
| `targetGroups?` | `Record`\<`string`, `string`[]\> |
|
||||
| `technologies?` | `string`[] |
|
||||
|
||||
---
|
||||
|
||||
### name
|
||||
|
||||
• `Optional` **name**: `string`
|
||||
|
||||
Project's name. Optional if specified in workspace.json
|
||||
|
||||
---
|
||||
|
||||
### namedInputs
|
||||
|
||||
• `Optional` **namedInputs**: `Object`
|
||||
|
||||
Named inputs targets can refer to reduce duplication
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [inputName: `string`]: (`string` \| `InputDefinition`)[]
|
||||
|
||||
---
|
||||
|
||||
### projectType
|
||||
|
||||
• `Optional` **projectType**: [`ProjectType`](../../devkit/documents/ProjectType)
|
||||
|
||||
Project type
|
||||
|
||||
---
|
||||
|
||||
### release
|
||||
|
||||
• `Optional` **release**: `Object`
|
||||
|
||||
Project specific configuration for `nx release`
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type |
|
||||
| :--------- | :------------------------------------------------------------------------------- |
|
||||
| `version?` | `Pick`\<`NxReleaseVersionConfiguration`, `"generator"` \| `"generatorOptions"`\> |
|
||||
|
||||
---
|
||||
|
||||
### root
|
||||
|
||||
• **root**: `string`
|
||||
|
||||
Project's location relative to the root of the workspace
|
||||
|
||||
---
|
||||
|
||||
### sourceRoot
|
||||
|
||||
• `Optional` **sourceRoot**: `string`
|
||||
|
||||
The location of project's sources relative to the root of the workspace
|
||||
|
||||
---
|
||||
|
||||
### tags
|
||||
|
||||
• `Optional` **tags**: `string`[]
|
||||
|
||||
List of tags used by enforce-module-boundaries / project graph
|
||||
|
||||
---
|
||||
|
||||
### targets
|
||||
|
||||
• `Optional` **targets**: `Object`
|
||||
|
||||
Project's targets
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [targetName: `string`]: [`TargetConfiguration`](../../devkit/documents/TargetConfiguration)
|
||||
@@ -1,7 +0,0 @@
|
||||
# Interface: ProjectFileMap
|
||||
|
||||
A list of files separated by the project they belong to
|
||||
|
||||
## Indexable
|
||||
|
||||
▪ [projectName: `string`]: [`FileData`](../../devkit/documents/FileData)[]
|
||||
@@ -1,36 +0,0 @@
|
||||
# Interface: ProjectGraph
|
||||
|
||||
A Graph of projects in the workspace and dependencies between them
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [dependencies](../../devkit/documents/ProjectGraph#dependencies): Record<string, ProjectGraphDependency[]>
|
||||
- [externalNodes](../../devkit/documents/ProjectGraph#externalnodes): Record<string, ProjectGraphExternalNode>
|
||||
- [nodes](../../devkit/documents/ProjectGraph#nodes): Record<string, ProjectGraphProjectNode>
|
||||
- [version](../../devkit/documents/ProjectGraph#version): string
|
||||
|
||||
## Properties
|
||||
|
||||
### dependencies
|
||||
|
||||
• **dependencies**: `Record`\<`string`, [`ProjectGraphDependency`](../../devkit/documents/ProjectGraphDependency)[]\>
|
||||
|
||||
---
|
||||
|
||||
### externalNodes
|
||||
|
||||
• `Optional` **externalNodes**: `Record`\<`string`, [`ProjectGraphExternalNode`](../../devkit/documents/ProjectGraphExternalNode)\>
|
||||
|
||||
---
|
||||
|
||||
### nodes
|
||||
|
||||
• **nodes**: `Record`\<`string`, [`ProjectGraphProjectNode`](../../devkit/documents/ProjectGraphProjectNode)\>
|
||||
|
||||
---
|
||||
|
||||
### version
|
||||
|
||||
• `Optional` **version**: `string`
|
||||
@@ -1,288 +0,0 @@
|
||||
# Class: ProjectGraphBuilder
|
||||
|
||||
A class which builds up a project graph
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
The ProjectGraphProcessor has been deprecated. Use a [CreateNodes](../../devkit/documents/CreateNodes) and/or a [CreateDependencies](../../devkit/documents/CreateDependencies) instead. This will be removed in Nx 19.
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Constructors
|
||||
|
||||
- [constructor](../../devkit/documents/ProjectGraphBuilder#constructor)
|
||||
|
||||
### Properties
|
||||
|
||||
- [graph](../../devkit/documents/ProjectGraphBuilder#graph): ProjectGraph
|
||||
- [removedEdges](../../devkit/documents/ProjectGraphBuilder#removededges): Object
|
||||
|
||||
### Methods
|
||||
|
||||
- [addDependency](../../devkit/documents/ProjectGraphBuilder#adddependency)
|
||||
- [addDynamicDependency](../../devkit/documents/ProjectGraphBuilder#adddynamicdependency)
|
||||
- [addExplicitDependency](../../devkit/documents/ProjectGraphBuilder#addexplicitdependency)
|
||||
- [addExternalNode](../../devkit/documents/ProjectGraphBuilder#addexternalnode)
|
||||
- [addImplicitDependency](../../devkit/documents/ProjectGraphBuilder#addimplicitdependency)
|
||||
- [addNode](../../devkit/documents/ProjectGraphBuilder#addnode)
|
||||
- [addStaticDependency](../../devkit/documents/ProjectGraphBuilder#addstaticdependency)
|
||||
- [getUpdatedProjectGraph](../../devkit/documents/ProjectGraphBuilder#getupdatedprojectgraph)
|
||||
- [mergeProjectGraph](../../devkit/documents/ProjectGraphBuilder#mergeprojectgraph)
|
||||
- [removeDependency](../../devkit/documents/ProjectGraphBuilder#removedependency)
|
||||
- [removeNode](../../devkit/documents/ProjectGraphBuilder#removenode)
|
||||
- [setVersion](../../devkit/documents/ProjectGraphBuilder#setversion)
|
||||
|
||||
## Constructors
|
||||
|
||||
### constructor
|
||||
|
||||
• **new ProjectGraphBuilder**(`graph?`, `projectFileMap?`, `nonProjectFiles?`): [`ProjectGraphBuilder`](../../devkit/documents/ProjectGraphBuilder)
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :----------------- | :-------------------------------------------------------- |
|
||||
| `graph?` | [`ProjectGraph`](../../devkit/documents/ProjectGraph) |
|
||||
| `projectFileMap?` | [`ProjectFileMap`](../../devkit/documents/ProjectFileMap) |
|
||||
| `nonProjectFiles?` | [`FileData`](../../devkit/documents/FileData)[] |
|
||||
|
||||
#### Returns
|
||||
|
||||
[`ProjectGraphBuilder`](../../devkit/documents/ProjectGraphBuilder)
|
||||
|
||||
## Properties
|
||||
|
||||
### graph
|
||||
|
||||
• `Readonly` **graph**: [`ProjectGraph`](../../devkit/documents/ProjectGraph)
|
||||
|
||||
---
|
||||
|
||||
### removedEdges
|
||||
|
||||
• `Readonly` **removedEdges**: `Object` = `{}`
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [source: `string`]: `Set`\<`string`\>
|
||||
|
||||
## Methods
|
||||
|
||||
### addDependency
|
||||
|
||||
▸ **addDependency**(`source`, `target`, `type`, `sourceFile?`): `void`
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :------------ | :-------------------------------------------------------- |
|
||||
| `source` | `string` |
|
||||
| `target` | `string` |
|
||||
| `type` | [`DependencyType`](../../devkit/documents/DependencyType) |
|
||||
| `sourceFile?` | `string` |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### addDynamicDependency
|
||||
|
||||
▸ **addDynamicDependency**(`sourceProjectName`, `targetProjectName`, `sourceProjectFile`): `void`
|
||||
|
||||
Adds dynamic dependency from source project to target project
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :------------------ | :------- |
|
||||
| `sourceProjectName` | `string` |
|
||||
| `targetProjectName` | `string` |
|
||||
| `sourceProjectFile` | `string` |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### addExplicitDependency
|
||||
|
||||
▸ **addExplicitDependency**(`sourceProjectName`, `sourceProjectFile`, `targetProjectName`): `void`
|
||||
|
||||
Add an explicit dependency from a file in source project to target project
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :------------------ | :------- |
|
||||
| `sourceProjectName` | `string` |
|
||||
| `sourceProjectFile` | `string` |
|
||||
| `targetProjectName` | `string` |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
this method will be removed in v17. Use [addStaticDependency](../../devkit/documents/ProjectGraphBuilder#addstaticdependency) or [addDynamicDependency](../../devkit/documents/ProjectGraphBuilder#adddynamicdependency) instead
|
||||
|
||||
---
|
||||
|
||||
### addExternalNode
|
||||
|
||||
▸ **addExternalNode**(`node`): `void`
|
||||
|
||||
Adds a external node to the project graph
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :----- | :---------------------------------------------------------------------------- |
|
||||
| `node` | [`ProjectGraphExternalNode`](../../devkit/documents/ProjectGraphExternalNode) |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### addImplicitDependency
|
||||
|
||||
▸ **addImplicitDependency**(`sourceProjectName`, `targetProjectName`): `void`
|
||||
|
||||
Adds implicit dependency from source project to target project
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :------------------ | :------- |
|
||||
| `sourceProjectName` | `string` |
|
||||
| `targetProjectName` | `string` |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### addNode
|
||||
|
||||
▸ **addNode**(`node`): `void`
|
||||
|
||||
Adds a project node to the project graph
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :----- | :-------------------------------------------------------------------------- |
|
||||
| `node` | [`ProjectGraphProjectNode`](../../devkit/documents/ProjectGraphProjectNode) |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### addStaticDependency
|
||||
|
||||
▸ **addStaticDependency**(`sourceProjectName`, `targetProjectName`, `sourceProjectFile?`): `void`
|
||||
|
||||
Adds static dependency from source project to target project
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :------------------- | :------- |
|
||||
| `sourceProjectName` | `string` |
|
||||
| `targetProjectName` | `string` |
|
||||
| `sourceProjectFile?` | `string` |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### getUpdatedProjectGraph
|
||||
|
||||
▸ **getUpdatedProjectGraph**(): [`ProjectGraph`](../../devkit/documents/ProjectGraph)
|
||||
|
||||
#### Returns
|
||||
|
||||
[`ProjectGraph`](../../devkit/documents/ProjectGraph)
|
||||
|
||||
---
|
||||
|
||||
### mergeProjectGraph
|
||||
|
||||
▸ **mergeProjectGraph**(`p`): `void`
|
||||
|
||||
Merges the nodes and dependencies of p into the built project graph.
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :--- | :---------------------------------------------------- |
|
||||
| `p` | [`ProjectGraph`](../../devkit/documents/ProjectGraph) |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### removeDependency
|
||||
|
||||
▸ **removeDependency**(`sourceProjectName`, `targetProjectName`): `void`
|
||||
|
||||
Removes a dependency from source project to target project
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :------------------ | :------- |
|
||||
| `sourceProjectName` | `string` |
|
||||
| `targetProjectName` | `string` |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### removeNode
|
||||
|
||||
▸ **removeNode**(`name`): `void`
|
||||
|
||||
Removes a node and all of its dependency edges from the graph
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :----- | :------- |
|
||||
| `name` | `string` |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
|
||||
---
|
||||
|
||||
### setVersion
|
||||
|
||||
▸ **setVersion**(`version`): `void`
|
||||
|
||||
Set version of the project graph
|
||||
|
||||
#### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :-------- | :------- |
|
||||
| `version` | `string` |
|
||||
|
||||
#### Returns
|
||||
|
||||
`void`
|
||||
@@ -1,33 +0,0 @@
|
||||
# Interface: ProjectGraphDependency
|
||||
|
||||
A dependency between two projects
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [source](../../devkit/documents/ProjectGraphDependency#source): string
|
||||
- [target](../../devkit/documents/ProjectGraphDependency#target): string
|
||||
- [type](../../devkit/documents/ProjectGraphDependency#type): string
|
||||
|
||||
## Properties
|
||||
|
||||
### source
|
||||
|
||||
• **source**: `string`
|
||||
|
||||
The project importing the other
|
||||
|
||||
---
|
||||
|
||||
### target
|
||||
|
||||
• **target**: `string`
|
||||
|
||||
The project being imported by the other
|
||||
|
||||
---
|
||||
|
||||
### type
|
||||
|
||||
• **type**: `string`
|
||||
@@ -1,44 +0,0 @@
|
||||
# Interface: ProjectGraphExternalNode
|
||||
|
||||
A node describing an external dependency
|
||||
`name` has as form of:
|
||||
|
||||
- `npm:packageName` for root dependencies or
|
||||
- `npm:packageName@version` for nested transitive dependencies
|
||||
|
||||
This is vital for our node discovery to always point to root dependencies,
|
||||
while allowing tracking of the full tree of different nested versions
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [data](../../devkit/documents/ProjectGraphExternalNode#data): Object
|
||||
- [name](../../devkit/documents/ProjectGraphExternalNode#name): `npm:${string}`
|
||||
- [type](../../devkit/documents/ProjectGraphExternalNode#type): "npm"
|
||||
|
||||
## Properties
|
||||
|
||||
### data
|
||||
|
||||
• **data**: `Object`
|
||||
|
||||
#### Type declaration
|
||||
|
||||
| Name | Type |
|
||||
| :------------ | :------- |
|
||||
| `hash?` | `string` |
|
||||
| `packageName` | `string` |
|
||||
| `version` | `string` |
|
||||
|
||||
---
|
||||
|
||||
### name
|
||||
|
||||
• **name**: \`npm:$\{string}\`
|
||||
|
||||
---
|
||||
|
||||
### type
|
||||
|
||||
• **type**: `"npm"`
|
||||
@@ -1,7 +0,0 @@
|
||||
# Type alias: ProjectGraphNode
|
||||
|
||||
Ƭ **ProjectGraphNode**: [`ProjectGraphProjectNode`](../../devkit/documents/ProjectGraphProjectNode) \| [`ProjectGraphExternalNode`](../../devkit/documents/ProjectGraphExternalNode)
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
this type will be removed in v16. Use [ProjectGraphProjectNode](../../devkit/documents/ProjectGraphProjectNode) or [ProjectGraphExternalNode](../../devkit/documents/ProjectGraphExternalNode) instead
|
||||
@@ -1,57 +0,0 @@
|
||||
# Interface: ProjectGraphProcessorContext
|
||||
|
||||
Additional information to be used to process a project graph
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
The ProjectGraphProcessor is deprecated. This will be removed in Nx 19.
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [fileMap](../../devkit/documents/ProjectGraphProcessorContext#filemap): ProjectFileMap
|
||||
- [filesToProcess](../../devkit/documents/ProjectGraphProcessorContext#filestoprocess): ProjectFileMap
|
||||
- [nxJsonConfiguration](../../devkit/documents/ProjectGraphProcessorContext#nxjsonconfiguration): NxJsonConfiguration<string[] | "\*">
|
||||
- [projectsConfigurations](../../devkit/documents/ProjectGraphProcessorContext#projectsconfigurations): ProjectsConfigurations
|
||||
- [workspace](../../devkit/documents/ProjectGraphProcessorContext#workspace): Workspace
|
||||
|
||||
## Properties
|
||||
|
||||
### fileMap
|
||||
|
||||
• **fileMap**: [`ProjectFileMap`](../../devkit/documents/ProjectFileMap)
|
||||
|
||||
All files in the workspace
|
||||
|
||||
---
|
||||
|
||||
### filesToProcess
|
||||
|
||||
• **filesToProcess**: [`ProjectFileMap`](../../devkit/documents/ProjectFileMap)
|
||||
|
||||
Files changes since last invocation
|
||||
|
||||
---
|
||||
|
||||
### nxJsonConfiguration
|
||||
|
||||
• **nxJsonConfiguration**: [`NxJsonConfiguration`](../../devkit/documents/NxJsonConfiguration)\<`string`[] \| `"*"`\>
|
||||
|
||||
---
|
||||
|
||||
### projectsConfigurations
|
||||
|
||||
• **projectsConfigurations**: [`ProjectsConfigurations`](../../devkit/documents/ProjectsConfigurations)
|
||||
|
||||
---
|
||||
|
||||
### workspace
|
||||
|
||||
• **workspace**: [`Workspace`](../../devkit/documents/Workspace)
|
||||
|
||||
Workspace information such as projects and configuration
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
use [projectsConfigurations](../../devkit/documents/ProjectGraphProcessorContext#projectsconfigurations) or [nxJsonConfiguration](../../devkit/documents/ProjectGraphProcessorContext#nxjsonconfiguration) instead
|
||||
@@ -1,31 +0,0 @@
|
||||
# Interface: ProjectGraphProjectNode
|
||||
|
||||
A node describing a project in a workspace
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [data](../../devkit/documents/ProjectGraphProjectNode#data): ProjectConfiguration & Object
|
||||
- [name](../../devkit/documents/ProjectGraphProjectNode#name): string
|
||||
- [type](../../devkit/documents/ProjectGraphProjectNode#type): "app" | "e2e" | "lib"
|
||||
|
||||
## Properties
|
||||
|
||||
### data
|
||||
|
||||
• **data**: [`ProjectConfiguration`](../../devkit/documents/ProjectConfiguration) & \{ `description?`: `string` }
|
||||
|
||||
Additional metadata about a project
|
||||
|
||||
---
|
||||
|
||||
### name
|
||||
|
||||
• **name**: `string`
|
||||
|
||||
---
|
||||
|
||||
### type
|
||||
|
||||
• **type**: `"app"` \| `"e2e"` \| `"lib"`
|
||||
@@ -1,21 +0,0 @@
|
||||
# Type alias: ProjectTargetConfigurator
|
||||
|
||||
Ƭ **ProjectTargetConfigurator**: (`file`: `string`) => `Record`\<`string`, [`TargetConfiguration`](../../devkit/documents/TargetConfiguration)\>
|
||||
|
||||
**`Deprecated`**
|
||||
|
||||
Add targets to the projects in a [CreateNodes](../../devkit/documents/CreateNodes) function instead. This will be removed in Nx 19
|
||||
|
||||
#### Type declaration
|
||||
|
||||
▸ (`file`): `Record`\<`string`, [`TargetConfiguration`](../../devkit/documents/TargetConfiguration)\>
|
||||
|
||||
##### Parameters
|
||||
|
||||
| Name | Type |
|
||||
| :----- | :------- |
|
||||
| `file` | `string` |
|
||||
|
||||
##### Returns
|
||||
|
||||
`Record`\<`string`, [`TargetConfiguration`](../../devkit/documents/TargetConfiguration)\>
|
||||
@@ -1,5 +0,0 @@
|
||||
# Type alias: ProjectType
|
||||
|
||||
Ƭ **ProjectType**: `"library"` \| `"application"`
|
||||
|
||||
Type of project supported
|
||||
@@ -1,36 +0,0 @@
|
||||
# Interface: ProjectsConfigurations
|
||||
|
||||
Projects Configurations
|
||||
|
||||
## Hierarchy
|
||||
|
||||
- **`ProjectsConfigurations`**
|
||||
|
||||
↳ [`Workspace`](../../devkit/documents/Workspace)
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Properties
|
||||
|
||||
- [projects](../../devkit/documents/ProjectsConfigurations#projects): Object
|
||||
- [version](../../devkit/documents/ProjectsConfigurations#version): number
|
||||
|
||||
## Properties
|
||||
|
||||
### projects
|
||||
|
||||
• **projects**: `Object`
|
||||
|
||||
Projects' projects
|
||||
|
||||
#### Index signature
|
||||
|
||||
▪ [projectName: `string`]: [`ProjectConfiguration`](../../devkit/documents/ProjectConfiguration)
|
||||
|
||||
---
|
||||
|
||||
### version
|
||||
|
||||
• **version**: `number`
|
||||
|
||||
Version of the configuration format
|
||||
@@ -1,158 +0,0 @@
|
||||
# @nx/devkit
|
||||
|
||||
The Nx Devkit is the underlying technology used to customize Nx to support
|
||||
different technologies and custom use-cases. It contains many utility
|
||||
functions for reading and writing files, updating configuration,
|
||||
working with Abstract Syntax Trees(ASTs), and more.
|
||||
|
||||
As with most things in Nx, the core of Nx Devkit is very simple.
|
||||
It only uses language primitives and immutable objects
|
||||
(the tree being the only exception).
|
||||
|
||||
## Table of contents
|
||||
|
||||
### Enumerations
|
||||
|
||||
- [ChangeType](../../devkit/documents/ChangeType)
|
||||
- [DependencyType](../../devkit/documents/DependencyType)
|
||||
|
||||
### Classes
|
||||
|
||||
- [ProjectGraphBuilder](../../devkit/documents/ProjectGraphBuilder)
|
||||
- [Workspaces](../../devkit/documents/Workspaces)
|
||||
|
||||
### Interfaces
|
||||
|
||||
- [CreateDependenciesContext](../../devkit/documents/CreateDependenciesContext)
|
||||
- [CreateNodesContext](../../devkit/documents/CreateNodesContext)
|
||||
- [CreateNodesResult](../../devkit/documents/CreateNodesResult)
|
||||
- [DefaultTasksRunnerOptions](../../devkit/documents/DefaultTasksRunnerOptions)
|
||||
- [ExecutorContext](../../devkit/documents/ExecutorContext)
|
||||
- [ExecutorsJson](../../devkit/documents/ExecutorsJson)
|
||||
- [FileChange](../../devkit/documents/FileChange)
|
||||
- [FileData](../../devkit/documents/FileData)
|
||||
- [FileMap](../../devkit/documents/FileMap)
|
||||
- [GeneratorsJson](../../devkit/documents/GeneratorsJson)
|
||||
- [Hash](../../devkit/documents/Hash)
|
||||
- [HasherContext](../../devkit/documents/HasherContext)
|
||||
- [ImplicitJsonSubsetDependency](../../devkit/documents/ImplicitJsonSubsetDependency)
|
||||
- [JsonParseOptions](../../devkit/documents/JsonParseOptions)
|
||||
- [JsonSerializeOptions](../../devkit/documents/JsonSerializeOptions)
|
||||
- [MigrationsJson](../../devkit/documents/MigrationsJson)
|
||||
- [NxAffectedConfig](../../devkit/documents/NxAffectedConfig)
|
||||
- [NxJsonConfiguration](../../devkit/documents/NxJsonConfiguration)
|
||||
- [ProjectConfiguration](../../devkit/documents/ProjectConfiguration)
|
||||
- [ProjectFileMap](../../devkit/documents/ProjectFileMap)
|
||||
- [ProjectGraph](../../devkit/documents/ProjectGraph)
|
||||
- [ProjectGraphDependency](../../devkit/documents/ProjectGraphDependency)
|
||||
- [ProjectGraphExternalNode](../../devkit/documents/ProjectGraphExternalNode)
|
||||
- [ProjectGraphProcessorContext](../../devkit/documents/ProjectGraphProcessorContext)
|
||||
- [ProjectGraphProjectNode](../../devkit/documents/ProjectGraphProjectNode)
|
||||
- [ProjectsConfigurations](../../devkit/documents/ProjectsConfigurations)
|
||||
- [RemoteCache](../../devkit/documents/RemoteCache)
|
||||
- [StringDeletion](../../devkit/documents/StringDeletion)
|
||||
- [StringInsertion](../../devkit/documents/StringInsertion)
|
||||
- [Target](../../devkit/documents/Target)
|
||||
- [TargetConfiguration](../../devkit/documents/TargetConfiguration)
|
||||
- [TargetDependencyConfig](../../devkit/documents/TargetDependencyConfig)
|
||||
- [Task](../../devkit/documents/Task)
|
||||
- [TaskGraph](../../devkit/documents/TaskGraph)
|
||||
- [TaskHasher](../../devkit/documents/TaskHasher)
|
||||
- [Tree](../../devkit/documents/Tree)
|
||||
- [Workspace](../../devkit/documents/Workspace)
|
||||
|
||||
### Type Aliases
|
||||
|
||||
- [CreateDependencies](../../devkit/documents/CreateDependencies)
|
||||
- [CreateNodes](../../devkit/documents/CreateNodes)
|
||||
- [CreateNodesFunction](../../devkit/documents/CreateNodesFunction)
|
||||
- [CustomHasher](../../devkit/documents/CustomHasher)
|
||||
- [DynamicDependency](../../devkit/documents/DynamicDependency)
|
||||
- [Executor](../../devkit/documents/Executor)
|
||||
- [Generator](../../devkit/documents/Generator)
|
||||
- [GeneratorCallback](../../devkit/documents/GeneratorCallback)
|
||||
- [Hasher](../../devkit/documents/Hasher)
|
||||
- [ImplicitDependency](../../devkit/documents/ImplicitDependency)
|
||||
- [ImplicitDependencyEntry](../../devkit/documents/ImplicitDependencyEntry)
|
||||
- [NxPlugin](../../devkit/documents/NxPlugin)
|
||||
- [NxPluginV1](../../devkit/documents/NxPluginV1)
|
||||
- [NxPluginV2](../../devkit/documents/NxPluginV2)
|
||||
- [PackageManager](../../devkit/documents/PackageManager)
|
||||
- [PluginConfiguration](../../devkit/documents/PluginConfiguration)
|
||||
- [ProjectGraphNode](../../devkit/documents/ProjectGraphNode)
|
||||
- [ProjectTargetConfigurator](../../devkit/documents/ProjectTargetConfigurator)
|
||||
- [ProjectType](../../devkit/documents/ProjectType)
|
||||
- [RawProjectGraphDependency](../../devkit/documents/RawProjectGraphDependency)
|
||||
- [StaticDependency](../../devkit/documents/StaticDependency)
|
||||
- [StringChange](../../devkit/documents/StringChange)
|
||||
- [TargetDefaults](../../devkit/documents/TargetDefaults)
|
||||
- [TaskGraphExecutor](../../devkit/documents/TaskGraphExecutor)
|
||||
- [ToJSOptions](../../devkit/documents/ToJSOptions)
|
||||
- [WorkspaceJsonConfiguration](../../devkit/documents/WorkspaceJsonConfiguration)
|
||||
|
||||
### Variables
|
||||
|
||||
- [NX_VERSION](../../devkit/documents/NX_VERSION): string
|
||||
- [appRootPath](../../devkit/documents/appRootPath): string
|
||||
- [cacheDir](../../devkit/documents/cacheDir): string
|
||||
- [logger](../../devkit/documents/logger): Object
|
||||
- [output](../../devkit/documents/output): CLIOutput
|
||||
- [workspaceRoot](../../devkit/documents/workspaceRoot): string
|
||||
|
||||
### Functions
|
||||
|
||||
- [addDependenciesToPackageJson](../../devkit/documents/addDependenciesToPackageJson)
|
||||
- [addProjectConfiguration](../../devkit/documents/addProjectConfiguration)
|
||||
- [applyChangesToString](../../devkit/documents/applyChangesToString)
|
||||
- [convertNxExecutor](../../devkit/documents/convertNxExecutor)
|
||||
- [convertNxGenerator](../../devkit/documents/convertNxGenerator)
|
||||
- [createProjectFileMapUsingProjectGraph](../../devkit/documents/createProjectFileMapUsingProjectGraph)
|
||||
- [createProjectGraphAsync](../../devkit/documents/createProjectGraphAsync)
|
||||
- [defaultTasksRunner](../../devkit/documents/defaultTasksRunner)
|
||||
- [detectPackageManager](../../devkit/documents/detectPackageManager)
|
||||
- [ensurePackage](../../devkit/documents/ensurePackage)
|
||||
- [extractLayoutDirectory](../../devkit/documents/extractLayoutDirectory)
|
||||
- [formatFiles](../../devkit/documents/formatFiles)
|
||||
- [generateFiles](../../devkit/documents/generateFiles)
|
||||
- [getOutputsForTargetAndConfiguration](../../devkit/documents/getOutputsForTargetAndConfiguration)
|
||||
- [getPackageManagerCommand](../../devkit/documents/getPackageManagerCommand)
|
||||
- [getPackageManagerVersion](../../devkit/documents/getPackageManagerVersion)
|
||||
- [getProjects](../../devkit/documents/getProjects)
|
||||
- [getWorkspaceLayout](../../devkit/documents/getWorkspaceLayout)
|
||||
- [glob](../../devkit/documents/glob)
|
||||
- [hashArray](../../devkit/documents/hashArray)
|
||||
- [installPackagesTask](../../devkit/documents/installPackagesTask)
|
||||
- [isWorkspacesEnabled](../../devkit/documents/isWorkspacesEnabled)
|
||||
- [joinPathFragments](../../devkit/documents/joinPathFragments)
|
||||
- [moveFilesToNewDirectory](../../devkit/documents/moveFilesToNewDirectory)
|
||||
- [names](../../devkit/documents/names)
|
||||
- [normalizePath](../../devkit/documents/normalizePath)
|
||||
- [offsetFromRoot](../../devkit/documents/offsetFromRoot)
|
||||
- [parseJson](../../devkit/documents/parseJson)
|
||||
- [parseTargetString](../../devkit/documents/parseTargetString)
|
||||
- [readCachedProjectGraph](../../devkit/documents/readCachedProjectGraph)
|
||||
- [readJson](../../devkit/documents/readJson)
|
||||
- [readJsonFile](../../devkit/documents/readJsonFile)
|
||||
- [readNxJson](../../devkit/documents/readNxJson)
|
||||
- [readProjectConfiguration](../../devkit/documents/readProjectConfiguration)
|
||||
- [readProjectsConfigurationFromProjectGraph](../../devkit/documents/readProjectsConfigurationFromProjectGraph)
|
||||
- [readTargetOptions](../../devkit/documents/readTargetOptions)
|
||||
- [removeDependenciesFromPackageJson](../../devkit/documents/removeDependenciesFromPackageJson)
|
||||
- [removeProjectConfiguration](../../devkit/documents/removeProjectConfiguration)
|
||||
- [reverse](../../devkit/documents/reverse)
|
||||
- [runExecutor](../../devkit/documents/runExecutor)
|
||||
- [runTasksInSerial](../../devkit/documents/runTasksInSerial)
|
||||
- [serializeJson](../../devkit/documents/serializeJson)
|
||||
- [stripIndents](../../devkit/documents/stripIndents)
|
||||
- [stripJsonComments](../../devkit/documents/stripJsonComments)
|
||||
- [targetToTargetString](../../devkit/documents/targetToTargetString)
|
||||
- [toJS](../../devkit/documents/toJS)
|
||||
- [updateJson](../../devkit/documents/updateJson)
|
||||
- [updateNxJson](../../devkit/documents/updateNxJson)
|
||||
- [updateProjectConfiguration](../../devkit/documents/updateProjectConfiguration)
|
||||
- [updateTsConfigsToJs](../../devkit/documents/updateTsConfigsToJs)
|
||||
- [validateDependency](../../devkit/documents/validateDependency)
|
||||
- [visitNotIgnoredFiles](../../devkit/documents/visitNotIgnoredFiles)
|
||||
- [workspaceLayout](../../devkit/documents/workspaceLayout)
|
||||
- [writeJson](../../devkit/documents/writeJson)
|
||||
- [writeJsonFile](../../devkit/documents/writeJsonFile)
|
||||
@@ -1,7 +0,0 @@
|
||||
# Type alias: RawProjectGraphDependency
|
||||
|
||||
Ƭ **RawProjectGraphDependency**: [`ImplicitDependency`](../../devkit/documents/ImplicitDependency) \| [`StaticDependency`](../../devkit/documents/StaticDependency) \| [`DynamicDependency`](../../devkit/documents/DynamicDependency)
|
||||
|
||||
A [ProjectGraph](../../devkit/documents/ProjectGraph) dependency between 2 projects
|
||||
|
||||
See [DynamicDependency](../../devkit/documents/DynamicDependency), [ImplicitDependency](../../devkit/documents/ImplicitDependency), or [StaticDependency](../../devkit/documents/StaticDependency)
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user