Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
1ccd9a76
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
1ccd9a76
编写于
5月 25, 2020
作者:
A
Alex Ross
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Don't fetch all tasks when there's a default build task
Fixes #95507
上级
5ccb199a
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
47 addition
and
27 deletion
+47
-27
src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts
...vs/workbench/contrib/tasks/browser/abstractTaskService.ts
+47
-27
未找到文件。
src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts
浏览文件 @
1ccd9a76
...
...
@@ -2515,38 +2515,58 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer
location
:
ProgressLocation
.
Window
,
title
:
nls
.
localize
(
'
TaskService.fetchingBuildTasks
'
,
'
Fetching build tasks...
'
)
};
let
promise
=
this
.
getTasksForGroup
(
TaskGroup
.
Build
).
then
((
tasks
)
=>
{
if
(
tasks
.
length
>
0
)
{
let
{
defaults
,
users
}
=
this
.
splitPerGroupType
(
tasks
);
if
(
defaults
.
length
===
1
)
{
this
.
run
(
defaults
[
0
]).
then
(
undefined
,
reason
=>
{
let
promise
=
this
.
getWorkspaceTasks
().
then
(
tasks
=>
{
const
buildTasks
:
ConfiguringTask
[]
=
[];
for
(
const
taskSource
of
tasks
)
{
for
(
const
task
in
taskSource
[
1
].
configurations
?.
byIdentifier
)
{
if
((
taskSource
[
1
].
configurations
?.
byIdentifier
[
task
].
configurationProperties
.
group
===
TaskGroup
.
Build
)
&&
(
taskSource
[
1
].
configurations
?.
byIdentifier
[
task
].
configurationProperties
.
groupType
===
GroupType
.
default
))
{
buildTasks
.
push
(
taskSource
[
1
].
configurations
.
byIdentifier
[
task
]);
}
}
}
if
(
buildTasks
.
length
===
1
)
{
this
.
tryResolveTask
(
buildTasks
[
0
]).
then
(
resolvedTask
=>
{
this
.
run
(
resolvedTask
).
then
(
undefined
,
reason
=>
{
// eat the error, it has already been surfaced to the user and we don't care about it here
});
return
;
}
else
if
(
defaults
.
length
+
users
.
length
>
0
)
{
tasks
=
defaults
.
concat
(
users
);
}
});
return
;
}
this
.
showIgnoredFoldersMessage
().
then
(()
=>
{
this
.
showQuickPick
(
tasks
,
nls
.
localize
(
'
TaskService.pickBuildTask
'
,
'
Select the build task to run
'
),
{
label
:
nls
.
localize
(
'
TaskService.noBuildTask
'
,
'
No build task to run found. Configure Build Task...
'
),
task
:
null
},
true
).
then
((
entry
)
=>
{
let
task
:
Task
|
undefined
|
null
=
entry
?
entry
.
task
:
undefined
;
if
(
task
===
undefined
)
{
return
;
}
if
(
task
===
null
)
{
this
.
runConfigureDefaultBuildTask
();
return
;
}
this
.
run
(
task
,
{
attachProblemMatcher
:
true
}).
then
(
undefined
,
reason
=>
{
return
this
.
getTasksForGroup
(
TaskGroup
.
Build
).
then
((
tasks
)
=>
{
if
(
tasks
.
length
>
0
)
{
let
{
defaults
,
users
}
=
this
.
splitPerGroupType
(
tasks
);
if
(
defaults
.
length
===
1
)
{
this
.
run
(
defaults
[
0
]).
then
(
undefined
,
reason
=>
{
// eat the error, it has already been surfaced to the user and we don't care about it here
});
});
return
;
}
else
if
(
defaults
.
length
+
users
.
length
>
0
)
{
tasks
=
defaults
.
concat
(
users
);
}
}
this
.
showIgnoredFoldersMessage
().
then
(()
=>
{
this
.
showQuickPick
(
tasks
,
nls
.
localize
(
'
TaskService.pickBuildTask
'
,
'
Select the build task to run
'
),
{
label
:
nls
.
localize
(
'
TaskService.noBuildTask
'
,
'
No build task to run found. Configure Build Task...
'
),
task
:
null
},
true
).
then
((
entry
)
=>
{
let
task
:
Task
|
undefined
|
null
=
entry
?
entry
.
task
:
undefined
;
if
(
task
===
undefined
)
{
return
;
}
if
(
task
===
null
)
{
this
.
runConfigureDefaultBuildTask
();
return
;
}
this
.
run
(
task
,
{
attachProblemMatcher
:
true
}).
then
(
undefined
,
reason
=>
{
// eat the error, it has already been surfaced to the user and we don't care about it here
});
});
});
});
});
this
.
progressService
.
withProgress
(
options
,
()
=>
promise
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录