From d3764f77fe634b571a7ec2582b126b26eb33c5ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Lorber?= Date: Tue, 13 Jul 2021 20:11:08 +0200 Subject: [PATCH] fix(v2): revert webpack.resolve.symlinks = false (#5164) * WathcOptions should work even if Webpack does not resolve symlinks * re-enable webpack resolve.symlinks = true * Use symlinked folder as source --- packages/docusaurus/src/commands/start.ts | 6 +++++- packages/docusaurus/src/webpack/base.ts | 2 +- website/docusaurus.config.js | 6 ++++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/docusaurus/src/commands/start.ts b/packages/docusaurus/src/commands/start.ts index 96f8cc5fd7..a6f2081119 100644 --- a/packages/docusaurus/src/commands/start.ts +++ b/packages/docusaurus/src/commands/start.ts @@ -185,8 +185,12 @@ export default async function start( }, publicPath: baseUrl, watchOptions: { - ignored: /node_modules/, poll: cliOptions.poll, + + // Useful options for our own monorepo using symlinks! + // See https://github.com/webpack/webpack/issues/11612#issuecomment-879259806 + followSymlinks: true, + ignored: /node_modules\/(?!@docusaurus)/, }, historyApiFallback: { rewrites: [{from: /\/*/, to: baseUrl}], diff --git a/packages/docusaurus/src/webpack/base.ts b/packages/docusaurus/src/webpack/base.ts index cab4303b81..bd59f8771a 100644 --- a/packages/docusaurus/src/webpack/base.ts +++ b/packages/docusaurus/src/webpack/base.ts @@ -139,7 +139,7 @@ export function createBaseConfig( resolve: { unsafeCache: false, // not enabled, does not seem to improve perf much extensions: ['.wasm', '.mjs', '.js', '.jsx', '.ts', '.tsx', '.json'], - symlinks: false, // disabled on purpose (https://github.com/facebook/docusaurus/issues/3272) + symlinks: true, // see https://github.com/facebook/docusaurus/issues/3272 roots: [ // Allow resolution of url("/fonts/xyz.ttf") by webpack // See https://webpack.js.org/configuration/resolve/#resolveroots diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 9b21a0e158..10d0a6b3e5 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -5,6 +5,7 @@ * LICENSE file in the root directory of this source tree. */ +const fs = require('fs'); const path = require('path'); const versions = require('./versions.json'); const math = require('remark-math'); @@ -121,10 +122,11 @@ const isVersioningDisabled = !!process.env.DISABLE_VERSIONING || isI18nStaging; { // This plugin instance is used to test fancy edge cases id: 'docs-tests', - // Using a symlinked folder as source, test against https://github.com/facebook/docusaurus/issues/3272 - path: 'dogfooding/docs-tests-symlink', routeBasePath: 'docs-tests', sidebarPath: 'dogfooding/docs-tests-sidebars.js', + + // Using a symlinked folder as source, test for use-case https://github.com/facebook/docusaurus/issues/3272 + path: fs.realpathSync('dogfooding/docs-tests-symlink'), }, ],