Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2016-11-21 22:03:18 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2016-11-21 22:03:18 +0300
commit5949f398f71d9cb540e42988c19fac2768c92eb8 (patch)
treecfb839e94952e0fc2d44a4e1f99c771d19100d44
parent220c258c68c8f2e4f0315153c443c036c3ace90c (diff)
Fix 500 error when group name ends with git
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
-rw-r--r--changelogs/unreleased/dz-fix-500-group-git.yml4
-rw-r--r--lib/gitlab/regex.rb2
-rw-r--r--spec/routing/routing_spec.rb2
3 files changed, 6 insertions, 2 deletions
diff --git a/changelogs/unreleased/dz-fix-500-group-git.yml b/changelogs/unreleased/dz-fix-500-group-git.yml
new file mode 100644
index 00000000000..38e80ad8bde
--- /dev/null
+++ b/changelogs/unreleased/dz-fix-500-group-git.yml
@@ -0,0 +1,4 @@
+---
+title: Fix 500 error when group name ends with git
+merge_request: 7630
+author:
diff --git a/lib/gitlab/regex.rb b/lib/gitlab/regex.rb
index 47ea8b7e82e..c12358ceef4 100644
--- a/lib/gitlab/regex.rb
+++ b/lib/gitlab/regex.rb
@@ -9,7 +9,7 @@ module Gitlab
# `NAMESPACE_REGEX_STR`, with the negative lookbehind assertion removed. This means that the client-side validation
# will pass for usernames ending in `.atom` and `.git`, but will be caught by the server-side validation.
NAMESPACE_REGEX_STR_SIMPLE = '[a-zA-Z0-9_\.][a-zA-Z0-9_\-\.]*[a-zA-Z0-9_\-]|[a-zA-Z0-9_]'.freeze
- NAMESPACE_REGEX_STR = "(?:#{NAMESPACE_REGEX_STR_SIMPLE})(?<!\.git|\.atom)".freeze
+ NAMESPACE_REGEX_STR = '(?:' + NAMESPACE_REGEX_STR_SIMPLE + ')(?<!\.git|\.atom)'.freeze
def namespace_regex
@namespace_regex ||= /\A#{NAMESPACE_REGEX_STR}\z/.freeze
diff --git a/spec/routing/routing_spec.rb b/spec/routing/routing_spec.rb
index 7aba4f08088..f15c45cbaac 100644
--- a/spec/routing/routing_spec.rb
+++ b/spec/routing/routing_spec.rb
@@ -261,7 +261,7 @@ describe "Authentication", "routing" do
end
describe "Groups", "routing" do
- let(:name) { 'complex.group-name' }
+ let(:name) { 'complex.group-namegit' }
it "to #show" do
expect(get("/groups/#{name}")).to route_to('groups#show', id: name)