Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
5f93b0e3
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 搜索 >>
提交
5f93b0e3
编写于
3月 24, 2015
作者:
D
Douwe Maan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Don't allow username to end in period.
上级
dfe0f9ee
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
47 addition
and
4 deletion
+47
-4
CHANGELOG
CHANGELOG
+2
-0
app/models/namespace.rb
app/models/namespace.rb
+1
-1
db/migrate/20150324133047_remove_periods_at_ends_of_usernames.rb
...ate/20150324133047_remove_periods_at_ends_of_usernames.rb
+39
-0
lib/gitlab/markdown.rb
lib/gitlab/markdown.rb
+1
-1
lib/gitlab/regex.rb
lib/gitlab/regex.rb
+4
-2
未找到文件。
CHANGELOG
浏览文件 @
5f93b0e3
...
...
@@ -46,6 +46,8 @@ v 7.10.0 (unreleased)
- Refactor issue filtering
- AJAX selectbox for issue assignee and author filters
- Fix issue with missing options in issue filtering dropdown if selected one
- Fix "Hello @username." references not working by no longer allowing usernames to end in period.
v 7.9.0
- Send EmailsOnPush email when branch or tag is created or deleted.
...
...
app/models/namespace.rb
浏览文件 @
5f93b0e3
...
...
@@ -66,7 +66,7 @@ class Namespace < ActiveRecord::Base
path
.
gsub!
(
/@.*\z/
,
""
)
path
.
gsub!
(
/\.git\z/
,
""
)
path
.
gsub!
(
/\A-/
,
""
)
path
.
gsub!
(
/
\z.
/
,
""
)
path
.
gsub!
(
/
.\z
/
,
""
)
path
.
gsub!
(
/[^a-zA-Z0-9_\-\.]/
,
""
)
counter
=
0
...
...
db/migrate/20150324133047_remove_periods_at_ends_of_usernames.rb
0 → 100644
浏览文件 @
5f93b0e3
class
RemovePeriodsAtEndsOfUsernames
<
ActiveRecord
::
Migration
class
Namespace
<
ActiveRecord
::
Base
class
<<
self
def
by_path
(
path
)
where
(
'lower(path) = :value'
,
value:
path
.
downcase
).
first
end
def
clean_path
(
path
)
path
.
gsub!
(
/@.*\z/
,
""
)
path
.
gsub!
(
/\.git\z/
,
""
)
path
.
gsub!
(
/\A-/
,
""
)
path
.
gsub!
(
/.\z/
,
""
)
path
.
gsub!
(
/[^a-zA-Z0-9_\-\.]/
,
""
)
counter
=
0
base
=
path
while
Namespace
.
by_path
(
path
).
present?
counter
+=
1
path
=
"
#{
base
}#{
counter
}
"
end
path
end
end
end
def
up
select_all
(
"SELECT id, username FROM users WHERE username LIKE '%.'"
).
each
do
|
user
|
username
=
quote_string
(
Namespace
.
clean_path
(
user
[
"username"
]))
execute
"UPDATE users SET username = '
#{
username
}
' WHERE id =
#{
user
[
"id"
]
}
"
execute
"UPDATE namespaces SET path = '
#{
username
}
', name = '
#{
username
}
' WHERE type = NULL AND owner_id =
#{
user
[
"id"
]
}
"
end
select_all
(
"SELECT id, path FROM namespaces WHERE type = 'Group' AND path LIKE '%.'"
).
each
do
|
group
|
path
=
quote_string
(
Namespace
.
clean_path
(
group
[
"path"
]))
execute
"UPDATE namespaces SET path = '
#{
path
}
' WHERE id =
#{
group
[
"id"
]
}
"
end
end
end
lib/gitlab/markdown.rb
浏览文件 @
5f93b0e3
...
...
@@ -152,7 +152,7 @@ module Gitlab
text
end
NAME_STR
=
'[a-zA-Z0-9_][a-zA-Z0-9_\-\.]*'
NAME_STR
=
Gitlab
::
Regex
::
NAMESPACE_REGEX_STR
PROJ_STR
=
"(?<project>
#{
NAME_STR
}
/
#{
NAME_STR
}
)"
REFERENCE_PATTERN
=
%r{
...
...
lib/gitlab/regex.rb
浏览文件 @
5f93b0e3
...
...
@@ -2,13 +2,15 @@ module Gitlab
module
Regex
extend
self
NAMESPACE_REGEX_STR
=
'(?:[a-zA-Z0-9_\.][a-zA-Z0-9_\-\.]*[a-zA-Z0-9_\-]|[a-zA-Z0-9_])'
.
freeze
def
namespace_regex
@namespace_regex
||=
/\A
[a-zA-Z0-9_.][a-zA-Z0-9_\-\.]*(?<!\.git)
\z/
.
freeze
@namespace_regex
||=
/\A
#{
NAMESPACE_REGEX_STR
}
\z/
.
freeze
end
def
namespace_regex_message
"can contain only letters, digits, '_', '-' and '.'. "
\
"Cannot start with '-' or end in '.
git'
"
\
"Cannot start with '-' or end in '.
'.
"
\
end
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录