From 7ff2468c5e8676be0e438f33dde5f2975e1acc88 Mon Sep 17 00:00:00 2001 From: Khaled Garbaya Date: Wed, 31 Aug 2022 11:20:54 +0100 Subject: [PATCH 1/7] docs: monorepos support --- docs/docs/reference/cloud/monorepos.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 docs/docs/reference/cloud/monorepos.md diff --git a/docs/docs/reference/cloud/monorepos.md b/docs/docs/reference/cloud/monorepos.md new file mode 100644 index 0000000000000..c7cfe2c32ca13 --- /dev/null +++ b/docs/docs/reference/cloud/monorepos.md @@ -0,0 +1,24 @@ +--- +title: "Monorepos" +description: "Learn how to use monorepos in Gatsby Cloud" +--- + +## Introduction + +Gatsby Cloud has support for monorepos projects, but since there is a plethora of dependency management tools out there some issues can occure. +This document will walk you through the tools that are supported and how to troubleshoot some edge cases + +## Monorepo Support + +| Tool. | Level of Support | Notes | +| --------------------- | ------ | ----- | +| Yarn Workspaces (v1) | Full support | | +| Yarn Workspaces (v2/v3 with PnP) | Full support | | +| Lerna | Full support | | +| NPM Workspaces (v7 and onwards) | Full support | | +| NX | No Support | Support is in progress | +| Turborepo | No Support | We do not have plans to support Turborepo at this time. | + + + +## Troubleshooting From 456de43a790c06570765759de991723b7ad8076c Mon Sep 17 00:00:00 2001 From: Khaled Garbaya Date: Wed, 31 Aug 2022 12:41:35 +0200 Subject: [PATCH 2/7] Change description --- docs/docs/reference/cloud/monorepos.md | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/docs/docs/reference/cloud/monorepos.md b/docs/docs/reference/cloud/monorepos.md index c7cfe2c32ca13..01f0d2eddb059 100644 --- a/docs/docs/reference/cloud/monorepos.md +++ b/docs/docs/reference/cloud/monorepos.md @@ -1,6 +1,6 @@ --- title: "Monorepos" -description: "Learn how to use monorepos in Gatsby Cloud" +description: "Monorepos support in Gatsby Cloud" --- ## Introduction @@ -10,15 +10,13 @@ This document will walk you through the tools that are supported and how to trou ## Monorepo Support -| Tool. | Level of Support | Notes | -| --------------------- | ------ | ----- | -| Yarn Workspaces (v1) | Full support | | -| Yarn Workspaces (v2/v3 with PnP) | Full support | | -| Lerna | Full support | | -| NPM Workspaces (v7 and onwards) | Full support | | -| NX | No Support | Support is in progress | -| Turborepo | No Support | We do not have plans to support Turborepo at this time. | - - +| Tool. | Level of Support | Notes | +| -------------------------------- | ---------------- | ------------------------------------------------------- | +| Yarn Workspaces (v1) | Full support | | +| Yarn Workspaces (v2/v3 with PnP) | Full support | | +| Lerna | Full support | | +| NPM Workspaces (v7 and onwards) | Full support | | +| NX | No Support | Support is in progress | +| Turborepo | No Support | We do not have plans to support Turborepo at this time. | ## Troubleshooting From 3d50cc52b380b281721402ea5eb53b61d79b275d Mon Sep 17 00:00:00 2001 From: Khaled Garbaya Date: Wed, 31 Aug 2022 12:59:34 +0200 Subject: [PATCH 3/7] Improve the support table --- docs/docs/reference/cloud/monorepos.md | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/docs/docs/reference/cloud/monorepos.md b/docs/docs/reference/cloud/monorepos.md index 01f0d2eddb059..3231b81b594ad 100644 --- a/docs/docs/reference/cloud/monorepos.md +++ b/docs/docs/reference/cloud/monorepos.md @@ -10,13 +10,25 @@ This document will walk you through the tools that are supported and how to trou ## Monorepo Support +The following tables shows the level of support for each tool + +**Legend** + +| Icon | Feature Capability | +| ---- | ---------------------------------------- | +| ● | Fully Supported | +| ◐ | Somewhat Supported (support is minimal ) | +| ○ | Not Supported | + +**Support** + | Tool. | Level of Support | Notes | | -------------------------------- | ---------------- | ------------------------------------------------------- | -| Yarn Workspaces (v1) | Full support | | -| Yarn Workspaces (v2/v3 with PnP) | Full support | | -| Lerna | Full support | | -| NPM Workspaces (v7 and onwards) | Full support | | -| NX | No Support | Support is in progress | -| Turborepo | No Support | We do not have plans to support Turborepo at this time. | +| Yarn Workspaces (v1) | ◐ | | +| Yarn Workspaces (v2/v3 with PnP) | ◐ | | +| Lerna | ● | | +| NPM Workspaces (v7 and onwards) | ● | | +| NX | ○ | Work is in progress | +| Turborepo | ○ | We do not have plans to support Turborepo at this time. | ## Troubleshooting From 324b9a881cf913b9511f247ba262f08720425a34 Mon Sep 17 00:00:00 2001 From: Khaled Garbaya Date: Tue, 6 Sep 2022 12:29:41 +0100 Subject: [PATCH 4/7] Apply suggestions from code review Co-authored-by: Lennart --- docs/docs/reference/cloud/monorepos.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/docs/docs/reference/cloud/monorepos.md b/docs/docs/reference/cloud/monorepos.md index 3231b81b594ad..d241838d9bfd9 100644 --- a/docs/docs/reference/cloud/monorepos.md +++ b/docs/docs/reference/cloud/monorepos.md @@ -5,12 +5,13 @@ description: "Monorepos support in Gatsby Cloud" ## Introduction -Gatsby Cloud has support for monorepos projects, but since there is a plethora of dependency management tools out there some issues can occure. -This document will walk you through the tools that are supported and how to troubleshoot some edge cases +Gatsby Cloud has support for projects organized as [monorepos](https://monorepo.tools/), but since there are different competing tools to build a monorepo it's important to know what Gatsby Cloud supports today. -## Monorepo Support +This document will explain which tools are supported and how you can troubleshoot issues. -The following tables shows the level of support for each tool +## Supported tools + +The following table shows the level of support for each tool. **Legend** @@ -28,7 +29,7 @@ The following tables shows the level of support for each tool | Yarn Workspaces (v2/v3 with PnP) | ◐ | | | Lerna | ● | | | NPM Workspaces (v7 and onwards) | ● | | -| NX | ○ | Work is in progress | +| NX | ○ | Work in progress | | Turborepo | ○ | We do not have plans to support Turborepo at this time. | ## Troubleshooting From 90e4996bdd9daeaada4d14732c7e04419d59866c Mon Sep 17 00:00:00 2001 From: Khaled Garbaya Date: Wed, 7 Sep 2022 09:31:56 +0200 Subject: [PATCH 5/7] chore(docs): add to troubleshooting --- docs/docs/reference/cloud/monorepos.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/docs/reference/cloud/monorepos.md b/docs/docs/reference/cloud/monorepos.md index d241838d9bfd9..e51414885314a 100644 --- a/docs/docs/reference/cloud/monorepos.md +++ b/docs/docs/reference/cloud/monorepos.md @@ -33,3 +33,11 @@ The following table shows the level of support for each tool. | Turborepo | ○ | We do not have plans to support Turborepo at this time. | ## Troubleshooting + +**PnP and Yarn compatibility issues** + +Some tools don't work under Plug'n'Play environments, check the Yarn [Compatibility table](https://yarnpkg.com/features/pnp#compatibility-table), you can enable the built-in node-modules plugin by adding the following into your local .yarnrc.yml file before running a fresh yarn install: + +``` +nodeLinker: node-modules +``` From e7f9a9014107142e52dbf97959225344b118634d Mon Sep 17 00:00:00 2001 From: Khaled Garbaya Date: Wed, 7 Sep 2022 09:37:03 +0200 Subject: [PATCH 6/7] chore(docs): Change Yarn workspace support --- docs/docs/reference/cloud/monorepos.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/docs/reference/cloud/monorepos.md b/docs/docs/reference/cloud/monorepos.md index e51414885314a..5cabe7a2bf47b 100644 --- a/docs/docs/reference/cloud/monorepos.md +++ b/docs/docs/reference/cloud/monorepos.md @@ -25,11 +25,11 @@ The following table shows the level of support for each tool. | Tool. | Level of Support | Notes | | -------------------------------- | ---------------- | ------------------------------------------------------- | -| Yarn Workspaces (v1) | ◐ | | +| Yarn Workspaces (v1) | ● | | | Yarn Workspaces (v2/v3 with PnP) | ◐ | | | Lerna | ● | | | NPM Workspaces (v7 and onwards) | ● | | -| NX | ○ | Work in progress | +| NX | ○ | Work in progress | | Turborepo | ○ | We do not have plans to support Turborepo at this time. | ## Troubleshooting From 9c23dc50dadeed275adc1fcc6a1e4deda77ac673 Mon Sep 17 00:00:00 2001 From: Lennart Date: Wed, 7 Sep 2022 10:03:32 +0200 Subject: [PATCH 7/7] Update monorepos.md --- docs/docs/reference/cloud/monorepos.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/docs/reference/cloud/monorepos.md b/docs/docs/reference/cloud/monorepos.md index 5cabe7a2bf47b..8b6a6b9c39054 100644 --- a/docs/docs/reference/cloud/monorepos.md +++ b/docs/docs/reference/cloud/monorepos.md @@ -13,7 +13,7 @@ This document will explain which tools are supported and how you can troubleshoo The following table shows the level of support for each tool. -**Legend** +**Legend:** | Icon | Feature Capability | | ---- | ---------------------------------------- | @@ -21,7 +21,7 @@ The following table shows the level of support for each tool. | ◐ | Somewhat Supported (support is minimal ) | | ○ | Not Supported | -**Support** +**Support:** | Tool. | Level of Support | Notes | | -------------------------------- | ---------------- | ------------------------------------------------------- | @@ -34,10 +34,10 @@ The following table shows the level of support for each tool. ## Troubleshooting -**PnP and Yarn compatibility issues** +### PnP and Yarn compatibility issues -Some tools don't work under Plug'n'Play environments, check the Yarn [Compatibility table](https://yarnpkg.com/features/pnp#compatibility-table), you can enable the built-in node-modules plugin by adding the following into your local .yarnrc.yml file before running a fresh yarn install: +Some tools don't work under Plug'n'Play environments, check the Yarn [compatibility table](https://yarnpkg.com/features/pnp#compatibility-table). You can enable the built-in `node-modules` plugin by adding the following into your local `.yarnrc.yml` file before running a fresh `yarn install`: -``` +```yml nodeLinker: node-modules ```