Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
915bc893
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
915bc893
编写于
8月 09, 2019
作者:
W
Winnie Hellmann
提交者:
Bob Van Landuyt
8月 09, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Revert "Merge branch '4221-board-milestone-should-persist-any-none-properly-ce' into 'master'"
This reverts merge request !30613
上级
cd81e4e3
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
23 addition
and
51 deletion
+23
-51
app/assets/javascripts/milestone_select.js
app/assets/javascripts/milestone_select.js
+3
-5
app/finders/issuable_finder.rb
app/finders/issuable_finder.rb
+15
-12
app/models/milestone.rb
app/models/milestone.rb
+2
-2
changelogs/unreleased/4221-board-milestone-should-persist-any-none-properly.yml
...4221-board-milestone-should-persist-any-none-properly.yml
+0
-5
db/migrate/20190703001120_default_milestone_to_nil.rb
db/migrate/20190703001120_default_milestone_to_nil.rb
+0
-24
spec/finders/issues_finder_spec.rb
spec/finders/issues_finder_spec.rb
+2
-2
spec/requests/api/issues/get_project_issues_spec.rb
spec/requests/api/issues/get_project_issues_spec.rb
+1
-1
未找到文件。
app/assets/javascripts/milestone_select.js
浏览文件 @
915bc893
...
...
@@ -55,7 +55,7 @@ export default class MilestoneSelect {
const
$sidebarCollapsedValue
=
$block
.
find
(
'
.sidebar-collapsed-icon
'
);
const
$value
=
$block
.
find
(
'
.value
'
);
const
$loading
=
$block
.
find
(
'
.block-loading
'
).
fadeOut
();
selectedMilestoneDefault
=
showAny
?
__
(
'
Any Milestone
'
)
:
null
;
selectedMilestoneDefault
=
showAny
?
''
:
null
;
selectedMilestoneDefault
=
showNo
&&
defaultNo
?
__
(
'
No Milestone
'
)
:
selectedMilestoneDefault
;
selectedMilestone
=
$dropdown
.
data
(
'
selected
'
)
||
selectedMilestoneDefault
;
...
...
@@ -74,16 +74,14 @@ export default class MilestoneSelect {
if
(
showAny
)
{
extraOptions
.
push
({
id
:
null
,
// eslint-disable-next-line @gitlab/i18n/no-non-i18n-strings
name
:
'
Any
'
,
name
:
null
,
title
:
__
(
'
Any Milestone
'
),
});
}
if
(
showNo
)
{
extraOptions
.
push
({
id
:
-
1
,
// eslint-disable-next-line @gitlab/i18n/no-non-i18n-strings
name
:
'
None
'
,
name
:
__
(
'
No Milestone
'
),
title
:
__
(
'
No Milestone
'
),
});
}
...
...
app/finders/issuable_finder.rb
浏览文件 @
915bc893
...
...
@@ -484,19 +484,22 @@ class IssuableFinder
# rubocop: disable CodeReuse/ActiveRecord
def
by_milestone
(
items
)
return
items
unless
milestones?
return
items
if
filter_by_any_milestone?
if
filter_by_no_milestone?
items
.
left_joins_milestones
.
where
(
milestone_id:
nil
)
elsif
filter_by_upcoming_milestone?
upcoming_ids
=
Milestone
.
upcoming_ids
(
projects
,
related_groups
)
items
.
left_joins_milestones
.
where
(
milestone_id:
upcoming_ids
)
elsif
filter_by_started_milestone?
items
.
left_joins_milestones
.
merge
(
Milestone
.
started
)
else
items
.
with_milestone
(
params
[
:milestone_title
])
if
milestones?
if
filter_by_no_milestone?
items
=
items
.
left_joins_milestones
.
where
(
milestone_id:
[
-
1
,
nil
])
elsif
filter_by_any_milestone?
items
=
items
.
any_milestone
elsif
filter_by_upcoming_milestone?
upcoming_ids
=
Milestone
.
upcoming_ids
(
projects
,
related_groups
)
items
=
items
.
left_joins_milestones
.
where
(
milestone_id:
upcoming_ids
)
elsif
filter_by_started_milestone?
items
=
items
.
left_joins_milestones
.
merge
(
Milestone
.
started
)
else
items
=
items
.
with_milestone
(
params
[
:milestone_title
])
end
end
items
end
# rubocop: enable CodeReuse/ActiveRecord
...
...
app/models/milestone.rb
浏览文件 @
915bc893
...
...
@@ -4,8 +4,8 @@ class Milestone < ApplicationRecord
# Represents a "No Milestone" state used for filtering Issues and Merge
# Requests that have no milestone assigned.
MilestoneStruct
=
Struct
.
new
(
:title
,
:name
,
:id
)
None
=
MilestoneStruct
.
new
(
'No Milestone'
,
'No Milestone'
,
-
1
)
Any
=
MilestoneStruct
.
new
(
'Any Milestone'
,
''
,
nil
)
None
=
MilestoneStruct
.
new
(
'No Milestone'
,
'No Milestone'
,
0
)
Any
=
MilestoneStruct
.
new
(
'Any Milestone'
,
''
,
-
1
)
Upcoming
=
MilestoneStruct
.
new
(
'Upcoming'
,
'#upcoming'
,
-
2
)
Started
=
MilestoneStruct
.
new
(
'Started'
,
'#started'
,
-
3
)
...
...
changelogs/unreleased/4221-board-milestone-should-persist-any-none-properly.yml
已删除
100644 → 0
浏览文件 @
cd81e4e3
---
title
:
For milestone filters, treat Any as No Filter (using
null
). Use -1 for No Milestone
merge_request
:
author
:
type
:
changed
db/migrate/20190703001120_default_milestone_to_nil.rb
已删除
100644 → 0
浏览文件 @
cd81e4e3
# frozen_string_literal: true
class
DefaultMilestoneToNil
<
ActiveRecord
::
Migration
[
5.1
]
DOWNTIME
=
false
def
up
execute
(
update_board_milestones_query
)
end
def
down
# no-op
end
private
# Only 105 records to update, as of 2019/07/18
def
update_board_milestones_query
<<~
HEREDOC
UPDATE boards
SET milestone_id = NULL
WHERE boards.milestone_id = -1
HEREDOC
end
end
spec/finders/issues_finder_spec.rb
浏览文件 @
915bc893
...
...
@@ -113,13 +113,13 @@ describe IssuesFinder do
let
(
:params
)
{
{
milestone_title:
'Any'
}
}
it
'returns issues with any assigned milestone'
do
expect
(
issues
).
to
contain_exactly
(
issue1
,
issue2
,
issue3
,
issue4
)
expect
(
issues
).
to
contain_exactly
(
issue1
)
end
it
'returns issues with any assigned milestone (deprecated)'
do
params
[
:milestone_title
]
=
Milestone
::
Any
.
title
expect
(
issues
).
to
contain_exactly
(
issue1
,
issue2
,
issue3
,
issue4
)
expect
(
issues
).
to
contain_exactly
(
issue1
)
end
end
...
...
spec/requests/api/issues/get_project_issues_spec.rb
浏览文件 @
915bc893
...
...
@@ -389,7 +389,7 @@ describe API::Issues do
it
'returns an array of issues with any milestone'
do
get
api
(
"
#{
base_url
}
/issues"
,
user
),
params:
{
milestone:
any_milestone_title
}
expect_paginated_array_response
([
issue
.
id
,
c
onfidential_issue
.
id
,
c
losed_issue
.
id
])
expect_paginated_array_response
([
issue
.
id
,
closed_issue
.
id
])
end
context
'without sort params'
do
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录