diff options
author | Rémy Coutable <remy@rymai.me> | 2016-05-10 09:47:55 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2016-05-10 09:47:55 +0000 |
commit | 3af78b5c53d5214e662aa35c6adde53d00f6c51e (patch) | |
tree | 67ad862689bea4757b85fe61fbb0baf266b58774 | |
parent | f96c34ec456deca5bb93ef27e578f078ece24aa3 (diff) | |
parent | f52a15e022fb451fa9074495897cdd10dbeeceb3 (diff) | |
download | gitlab-ce-3af78b5c53d5214e662aa35c6adde53d00f6c51e.tar.gz |
Merge branch 'revert-4026' into 'master'
Revert "Merge branch 'wiki-fix' into 'master'"
This reverts commit 4cc85a58e8ca00f5a4ecbd2bca40a0cad867b817 (!4026), reversing
changes made to 90ae445ba930068d04adc5a009dbdeabe4cb3e34.
From https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4026#note_11719950:
> 1. On Ruby 2.1.x, the [`uri.path = ::File.join(project_wiki_base_path, uri.path)`](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/lib/banzai/filter/wiki_link_filter.rb#L39) raises an `URI::InvalidComponentError: bad component(expected relative path component): http://bar.com/baz` error in `Banzai::Filter::WikiLinkFilter#rebuild_wiki_uri`, which is then rescued in [`Banzai::Filter::WikiLinkFilter#process_link_attr`](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/lib/banzai/filter/wiki_link_filter.rb#L34), thus the link is not modified and the tests pass.
1. On Ruby 2.2.x, the same line doesn't raise an error anymore, thus tests are broken on Ruby 2.2 only. I didn't really understand yet why having absolute links in the wiki would break some tests vs having relative links as before, but I think the safest course to action is to revert this MR and to find another fix (probably just prepending `ProjectWiki#wiki_base_path` with the relative URL path component if we are in the case of a relative URL...
/cc @artem-sidorenko
Just a FYI note: no need to pick into `8-7-stable` since the original commit was not picked.
See merge request !4105
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | app/models/project_wiki.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/url_builder.rb | 2 | ||||
-rw-r--r-- | spec/lib/gitlab/url_builder_spec.rb | 2 | ||||
-rw-r--r-- | spec/models/project_wiki_spec.rb | 4 |
5 files changed, 4 insertions, 7 deletions
diff --git a/CHANGELOG b/CHANGELOG index 1c6e24bc10f..6a5b1dce5c7 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -39,7 +39,6 @@ v 8.8.0 (unreleased) v 8.7.4 - Fix always showing build notification message when switching between merge requests - - Fix links on wiki pages for relative url setups. !4026 (Artem Sidorenko) - Links for Redmine issue references are generated correctly again (Benedikt Huss) v 8.7.3 diff --git a/app/models/project_wiki.rb b/app/models/project_wiki.rb index c91cb70ae25..7c1a61bb0bf 100644 --- a/app/models/project_wiki.rb +++ b/app/models/project_wiki.rb @@ -40,7 +40,7 @@ class ProjectWiki end def wiki_base_path - [Gitlab.config.gitlab.url, "/", @project.path_with_namespace, "/wikis"].join('') + ["/", @project.path_with_namespace, "/wikis"].join('') end # Returns the Gollum::Wiki object. diff --git a/lib/gitlab/url_builder.rb b/lib/gitlab/url_builder.rb index 67a09d5abf5..2bbbd3074e8 100644 --- a/lib/gitlab/url_builder.rb +++ b/lib/gitlab/url_builder.rb @@ -62,7 +62,7 @@ module Gitlab end def wiki_page_url - "#{object.wiki.wiki_base_path}/#{object.slug}" + "#{Gitlab.config.gitlab.url}#{object.wiki.wiki_base_path}/#{object.slug}" end end end diff --git a/spec/lib/gitlab/url_builder_spec.rb b/spec/lib/gitlab/url_builder_spec.rb index c8d3bc01395..bf11472407a 100644 --- a/spec/lib/gitlab/url_builder_spec.rb +++ b/spec/lib/gitlab/url_builder_spec.rb @@ -112,7 +112,7 @@ describe Gitlab::UrlBuilder, lib: true do wiki_page = build(:wiki_page) url = described_class.build(wiki_page) - expect(url).to eq "#{Gitlab.config.gitlab.url}/#{wiki_page.wiki.project.path_with_namespace}/wikis/#{wiki_page.slug}" + expect(url).to eq "#{Gitlab.config.gitlab.url}#{wiki_page.wiki.wiki_base_path}/#{wiki_page.slug}" end end end diff --git a/spec/models/project_wiki_spec.rb b/spec/models/project_wiki_spec.rb index ea659f417f2..532e3f013fd 100644 --- a/spec/models/project_wiki_spec.rb +++ b/spec/models/project_wiki_spec.rb @@ -38,9 +38,7 @@ describe ProjectWiki, models: true do describe "#wiki_base_path" do it "returns the wiki base path" do - gitlab_url = Gitlab.config.gitlab.url - wiki_base_path = "#{gitlab_url}/#{project.path_with_namespace}/wikis" - + wiki_base_path = "/#{project.path_with_namespace}/wikis" expect(subject.wiki_base_path).to eq(wiki_base_path) end end |