-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
Support compound tasks #5517
Comments
@elaihau @RomanNikitenko if you can find a moment to write down how it can be done it would helpful. @idoprz would like to have a look into it |
All tasks can be retrieved from the Configured tasks can be retrieved from Take this compound task for example: {
"label": "Build",
"dependsOn": ["Client Build", "Server Build"]
} with all the task data in memory, I believe we are able to find In current theia, we open a separate terminal window for each and every task. In my opinion, the difficult part of this feature is figuring out a good way to use ONE terminal for all the smaller tasks. |
task-service.ts and task-configurations.ts are both in the browser. Regarding the behavior you suggested, VSCode runs each dependent task on a new terminal. |
yep, that's how things work in theia. we just resolve the task config in browser and pass it to the node part.
running each dependent task in a new terminal sounds good. sorry for the misleading comment. |
The dependencies can create a DAG, which should be converted to a tree. Do you suggest I will read all tasks in the browser and create the tree by adding to TaskCustomization interface:
|
i have no issues with that :) |
@akosyakov @elaihau |
@ShimonBenYair ok, please don't forget to follow PR checklist |
I want the "dependsOn" array, to be of type : string (the tasks labels) and also of type TaskIdentifier (like in VSCode) :
But if the user will not write (in the dependsOn object) all the task required properties (every type has different required properties e.g. npm, gulp …), then how will I identify the task that is related to what is mention in the taskIdentifier ?
|
The first thing I would try, is passing "taskIdentifier" (e.g., if the function returns if the function returns something other than |
Please also make sure that all user facing JSON interfaces (i.e. used to parse data) are have the same shape as in VS Code. For it, please don't guess, but read VS Code codebase. |
Ok, thanks.
How can i solve it ? |
i am not sure. i would check what vs code does in this case. at this moment, the property "background" is not supported in Theia. So i am a little skeptical on the feasiblity of running your -------------- UPDATE ---------------------- This is what I found from the vscode documentation: https://code.visualstudio.com/docs/editor/tasks
So I guess the trick is defining a problem matcher and pattern, so that Theia knows if the |
…lipse-theia#5517 and also Fixes eclipse-theia#6534 Signed-off-by: Shimon Ben Yair <shimon.ben.yair@sap.com>
Description
VS Code supports having tasks that are dependent on other tasks.
See https://code.visualstudio.com/docs/editor/tasks#_compound-tasks for details
The text was updated successfully, but these errors were encountered: