mirror of
https://github.com/foambubble/foam.git
synced 2026-01-09 14:08:13 -05:00
Fix VSCode Launch Task and Monorepo builds (#193)
* revise vscode task and launch configs - Removed commands from sub-package: same can be achieved from the root - Added build and no-build variants. In case separate watcher is already running, no need to build. - Changed watch to build (no hot-reload in vscode by default) - Show the build in console Didn't update yarn.lock, seems to want to add foam-core@0.3.0-alpha.0, but not really related to this change Note: the extension tests are failing due to `Cannot find module '...foam-vscode/out/test/suite/index'`. However that shouldn't be related to this change either. * Simplify VS Code launch tasks (shift work to typescript compiler) * Fix circular dependency index->janitor/index->index * Use --build flag to use TSC in Build Mode https://www.typescriptlang.org/docs/handbook/project-references.html#build-mode-for-typescript This configures tsc to use multiple project roots (vscode, core) and run incremental builds on changes to each projects. This will necessitate us running the core in commonjs build mode, which is fine for testing and deployment to node environments, but won't work in the browser, so foam-core will need a separate build config for UMD builds * Build foam-core in commonjs mode by default (+cleanup unnecessary config) * Create ES6 build config for distribution builds * Cleanup yarn.lock * Build package before running * Fix missing lint paths and fix lint error * Remove redundant .vscode settings files from foam-vscode project * Add core test launch task Co-authored-by: jojanaho <janne.ojanaho@iki.fi>
This commit is contained in:
23
.vscode/launch.json
vendored
23
.vscode/launch.json
vendored
@@ -6,10 +6,8 @@
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
// This task is also defined in packages/foam-vscode/.vscode/launch.json
|
||||
// for when running separately outside of the monorepo environment
|
||||
"name": "Run Extension",
|
||||
"type": "extensionHost",
|
||||
"name": "Run VSCode Extension",
|
||||
"type": "extensionHost",
|
||||
"request": "launch",
|
||||
"runtimeExecutable": "${execPath}",
|
||||
"args": [
|
||||
@@ -18,12 +16,14 @@
|
||||
"outFiles": [
|
||||
"${workspaceFolder}/packages/foam-vscode/out/**/*.js"
|
||||
],
|
||||
"preLaunchTask": "Build foam-vscode"
|
||||
"preLaunchTask": "${defaultBuildTask}"
|
||||
},
|
||||
|
||||
// @NOTE: This task is broken. VSCode e2e tests are currently disabled
|
||||
// due to incompability of jest and mocha inside a typescript monorepo
|
||||
// Contributions to fix this are welcome!
|
||||
{
|
||||
// This task is also defined in packages/foam-vscode/.vscode/launch.json
|
||||
// for when running separately outside of the monorepo environment
|
||||
"name": "Extension Tests",
|
||||
"name": "Test VSCode Extension",
|
||||
"type": "extensionHost",
|
||||
"request": "launch",
|
||||
"runtimeExecutable": "${execPath}",
|
||||
@@ -34,16 +34,17 @@
|
||||
"outFiles": [
|
||||
"${workspaceFolder}/packages/foam-vscode/out/test/**/*.js"
|
||||
],
|
||||
"preLaunchTask": "Build foam-vscode"
|
||||
"preLaunchTask": "${defaultBuildTask}"
|
||||
},
|
||||
{
|
||||
"name": "Test Core",
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"name": "Workspace Manager tests",
|
||||
"program": "${workspaceFolder}/node_modules/tsdx/dist/index.js",
|
||||
"args": ["test"],
|
||||
"cwd": "${workspaceFolder}/packages/foam-core",
|
||||
"internalConsoleOptions": "openOnSessionStart"
|
||||
"internalConsoleOptions": "openOnSessionStart",
|
||||
"preLaunchTask": "${defaultBuildTask}"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
29
.vscode/tasks.json
vendored
29
.vscode/tasks.json
vendored
@@ -4,19 +4,28 @@
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
// This task is also defined in packages/foam-vscode/.vscode/tasks.json
|
||||
// for when running separately outside of the monorepo environment
|
||||
"type": "npm",
|
||||
"script": "watch",
|
||||
"label": "Build foam-vscode",
|
||||
"path": "packages/foam-vscode",
|
||||
"problemMatcher": "$tsc-watch",
|
||||
"label": "watch: foam-vscode",
|
||||
"type": "npm",
|
||||
"script": "start:vscode",
|
||||
"problemMatcher": "$tsc-watch",
|
||||
"isBackground": true,
|
||||
"presentation": {
|
||||
"reveal": "silent",
|
||||
"revealProblems": "onProblem",
|
||||
"focus": true
|
||||
"reveal": "always"
|
||||
},
|
||||
"group": {
|
||||
"kind": "build",
|
||||
"isDefault": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"label": "test: all packages",
|
||||
"type": "npm",
|
||||
"script": "test",
|
||||
"problemMatcher": [],
|
||||
"group": {
|
||||
"kind": "test",
|
||||
"isDefault": true
|
||||
},
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user