Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate bundling and vscode node_modules folders #54

Open
tsmaeder opened this issue Mar 17, 2021 · 0 comments
Open

Separate bundling and vscode node_modules folders #54

tsmaeder opened this issue Mar 17, 2021 · 0 comments
Labels
enhancement New feature or request

Comments

@tsmaeder
Copy link
Contributor

Right now, we have a hoisted node_modules folder in the root directory when building, stemming from dependencies in the root package.json and the following workspace folders:

        vscode-builtin-extensions",
        "browser-app",
        "electron-app"

However, this can lead to problems when building vscode: just remove yarn.lock and try to do yarn in the root folder: there will be compile problems when the "build:extensions" script invokes yarn inside the vscode folder.
The problem is that "prepare" is invoked after after the dependencies are installed into the root-level node_modules folder. Since the resolved version of some packages is not compatible with the vscode version we're checked out, this fails. The problem arises because the typescript compiler picks up the version of @types/htmlparser2, for example, from /node_modules, not /vscode/node_modules.

I propose that we separate the the vscode folder and everything else by moving everything that is at the root level now (except the vscode folder) to a subfolder named 'packaging'. With no hoisting to the root folder, we would have completely separate node_modules folders, which would be correct on a more conceptual level as well: the packaging tools have an independent module universe from vscode.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant