summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorFrancisco Javier López <fjlopez@gitlab.com>2018-04-13 13:17:52 +0000
committerDouwe Maan <douwe@gitlab.com>2018-04-13 13:17:52 +0000
commitef48664047881411ea849e02c5a675c06275b868 (patch)
tree0047ab15dc175ff808d6c474e7d8ae0c000c2842 /config
parent9ab4408bfa82602c54673a6fc1691d201a29c7cf (diff)
downloadgitlab-ce-ef48664047881411ea849e02c5a675c06275b868.tar.gz
Replacing gollum libs for custom gitlab ones
Diffstat (limited to 'config')
-rw-r--r--config/initializers/gollum.rb133
1 files changed, 0 insertions, 133 deletions
diff --git a/config/initializers/gollum.rb b/config/initializers/gollum.rb
index 6dfaceb8427..81e0577a7c9 100644
--- a/config/initializers/gollum.rb
+++ b/config/initializers/gollum.rb
@@ -7,139 +7,6 @@ module Gollum
end
require "gollum-lib"
-module Gollum
- class Committer
- # Patch for UTF-8 path
- def method_missing(name, *args)
- index.send(name, *args)
- end
- end
-
- class Wiki
- def pages(treeish = nil, limit: nil)
- tree_list((treeish || @ref), limit: limit)
- end
-
- def tree_list(ref, limit: nil)
- if (sha = @access.ref_to_sha(ref))
- commit = @access.commit(sha)
- tree_map_for(sha).inject([]) do |list, entry|
- next list unless @page_class.valid_page_name?(entry.name)
-
- list << entry.page(self, commit)
- break list if limit && list.size >= limit
-
- list
- end
- else
- []
- end
- end
-
- # Remove if https://github.com/gollum/gollum-lib/pull/292 has been merged
- def update_page(page, name, format, data, commit = {})
- name = name ? ::File.basename(name) : page.name
- format ||= page.format
- dir = ::File.dirname(page.path)
- dir = '' if dir == '.'
- filename = (rename = page.name != name) ? Gollum::Page.cname(name) : page.filename_stripped
-
- multi_commit = !!commit[:committer]
- committer = multi_commit ? commit[:committer] : Committer.new(self, commit)
-
- if !rename && page.format == format
- committer.add(page.path, normalize(data))
- else
- committer.delete(page.path)
- committer.add_to_index(dir, filename, format, data)
- end
-
- committer.after_commit do |index, _sha|
- @access.refresh
- index.update_working_dir(dir, page.filename_stripped, page.format)
- index.update_working_dir(dir, filename, format)
- end
-
- multi_commit ? committer : committer.commit
- end
-
- # Remove if https://github.com/gollum/gollum-lib/pull/292 has been merged
- def rename_page(page, rename, commit = {})
- return false if page.nil?
- return false if rename.nil? || rename.empty?
-
- (target_dir, target_name) = ::File.split(rename)
- (source_dir, source_name) = ::File.split(page.path)
- source_name = page.filename_stripped
-
- # File.split gives us relative paths with ".", commiter.add_to_index doesn't like that.
- target_dir = '' if target_dir == '.'
- source_dir = '' if source_dir == '.'
- target_dir = target_dir.gsub(/^\//, '') # rubocop:disable Style/RegexpLiteral
-
- # if the rename is a NOOP, abort
- if source_dir == target_dir && source_name == target_name
- return false
- end
-
- multi_commit = !!commit[:committer]
- committer = multi_commit ? commit[:committer] : Committer.new(self, commit)
-
- # This piece only works for multi_commit
- # If we are in a commit batch and one of the previous operations
- # has updated the page, any information we ask to the page can be outdated.
- # Therefore, we should ask first to the current committer tree to see if
- # there is any updated change.
- raw_data = raw_data_in_committer(committer, source_dir, page.filename) ||
- raw_data_in_committer(committer, source_dir, "#{target_name}.#{Page.format_to_ext(page.format)}") ||
- page.raw_data
-
- committer.delete(page.path)
- committer.add_to_index(target_dir, target_name, page.format, raw_data)
-
- committer.after_commit do |index, _sha|
- @access.refresh
- index.update_working_dir(source_dir, source_name, page.format)
- index.update_working_dir(target_dir, target_name, page.format)
- end
-
- multi_commit ? committer : committer.commit
- end
-
- # Remove if https://github.com/gollum/gollum-lib/pull/292 has been merged
- def raw_data_in_committer(committer, dir, filename)
- data = nil
-
- [*dir.split(::File::SEPARATOR), filename].each do |key|
- data = data ? data[key] : committer.tree[key]
- break unless data
- end
-
- data
- end
- end
-
- module Git
- class Git
- def tree_entry(commit, path)
- pathname = Pathname.new(path)
- tmp_entry = nil
-
- pathname.each_filename do |dir|
- tmp_entry = if tmp_entry.nil?
- commit.tree[dir]
- else
- @repo.lookup(tmp_entry[:oid])[dir]
- end
-
- return nil unless tmp_entry
- end
- tmp_entry
- end
- end
- end
-end
-
Rails.application.configure do
config.after_initialize do
Gollum::Page.per_page = Kaminari.config.default_per_page