gollum-lib 5.0.1 → 5.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/HISTORY.md +4 -0
- data/Rakefile +3 -2
- data/gemspec.rb +1 -2
- data/gollum-lib.gemspec +8 -2
- data/gollum-lib_java.gemspec +2 -2
- data/lib/gollum-lib/blob_entry.rb +16 -6
- data/lib/gollum-lib/committer.rb +1 -1
- data/lib/gollum-lib/file.rb +1 -1
- data/lib/gollum-lib/filter/emoji.rb +2 -1
- data/lib/gollum-lib/filter/tags.rb +1 -0
- data/lib/gollum-lib/filter/yaml.rb +1 -1
- data/lib/gollum-lib/helpers.rb +1 -1
- data/lib/gollum-lib/macro.rb +4 -0
- data/lib/gollum-lib/macro/series.rb +2 -2
- data/lib/gollum-lib/markups.rb +4 -3
- data/lib/gollum-lib/page.rb +3 -2
- data/lib/gollum-lib/redirects.rb +6 -2
- data/lib/gollum-lib/version.rb +1 -1
- metadata +3 -10
- data/adapter_dependencies.rb +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 694f921b2852f541dadb62d440d8b9dccdf3a387c8017980e9aad575a89b598c
|
4
|
+
data.tar.gz: 6819382931ebd534d6b698bb733f251b4b7df7c1bc6475dd8130aadf75402971
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3f6e4e928067b7044f2f415911d2ddace84d352dc5e18d17f5dd096bc98daf40acae64de86934ffd9ae20dca4a5a486bd58c74613b66fe7299bfec8a4c8bd236
|
7
|
+
data.tar.gz: 2a82c3024a8c0365089e588be77e0efcc73a8406d9882095788e8937f3e281249007b6c7f4dee9c754ae244d19d2394243b856536c4abf63d5af535911fd83b8
|
data/HISTORY.md
CHANGED
data/Rakefile
CHANGED
@@ -51,11 +51,11 @@ def gemspec_file
|
|
51
51
|
end
|
52
52
|
|
53
53
|
def gemspecs
|
54
|
-
|
54
|
+
["#{name}.gemspec", "#{name}_java.gemspec"]
|
55
55
|
end
|
56
56
|
|
57
57
|
def gem_files
|
58
|
-
|
58
|
+
["#{name}-#{version}.gem", "#{name}-#{version}-java.gem"]
|
59
59
|
end
|
60
60
|
|
61
61
|
def replace_header(head, header_name)
|
@@ -75,6 +75,7 @@ Rake::TestTask.new(:test) do |test|
|
|
75
75
|
test.libs << 'lib' << 'test' << '.'
|
76
76
|
test.pattern = 'test/**/test_*.rb'
|
77
77
|
test.verbose = true
|
78
|
+
test.warning = false
|
78
79
|
end
|
79
80
|
|
80
81
|
desc "Generate RCov test coverage and open in your browser"
|
data/gemspec.rb
CHANGED
@@ -8,7 +8,7 @@ def specification(version, default_adapter, platform = nil)
|
|
8
8
|
s.name = 'gollum-lib'
|
9
9
|
s.version = version
|
10
10
|
s.platform = platform if platform
|
11
|
-
s.date = '2020-
|
11
|
+
s.date = '2020-09-23'
|
12
12
|
s.date = '2017-04-13'
|
13
13
|
s.rubyforge_project = 'gollum-lib'
|
14
14
|
s.license = 'MIT'
|
@@ -66,7 +66,6 @@ def specification(version, default_adapter, platform = nil)
|
|
66
66
|
LICENSE
|
67
67
|
README.md
|
68
68
|
Rakefile
|
69
|
-
adapter_dependencies.rb
|
70
69
|
docs/sanitization.md
|
71
70
|
gemspec.rb
|
72
71
|
gollum-lib.gemspec
|
data/gollum-lib.gemspec
CHANGED
@@ -1,4 +1,10 @@
|
|
1
1
|
require File.join(File.dirname(__FILE__), 'gemspec.rb')
|
2
|
-
require File.join(File.dirname(__FILE__), 'adapter_dependencies.rb')
|
3
2
|
require File.join(File.dirname(__FILE__), 'lib', 'gollum-lib', 'version.rb')
|
4
|
-
|
3
|
+
# This file needs to conditionally define the default adapter for MRI and Java, because this is the file that is included from the Gemfile.
|
4
|
+
# In addition, the default Java adapter needs to be defined in gollum-lib_java.gemspec beause that file is used to *build* the Java gem.
|
5
|
+
if RUBY_PLATFORM == 'java' then
|
6
|
+
default_adapter = ['gollum-rjgit_adapter', '~> 0.6']
|
7
|
+
else
|
8
|
+
default_adapter = ['gollum-rugged_adapter', '~> 1.0']
|
9
|
+
end
|
10
|
+
Gem::Specification.new &specification(Gollum::Lib::VERSION, default_adapter)
|
data/gollum-lib_java.gemspec
CHANGED
@@ -1,4 +1,4 @@
|
|
1
1
|
require File.join(File.dirname(__FILE__), 'gemspec.rb')
|
2
|
-
require File.join(File.dirname(__FILE__), 'adapter_dependencies.rb')
|
3
2
|
require File.join(File.dirname(__FILE__), 'lib', 'gollum-lib', 'version.rb')
|
4
|
-
|
3
|
+
default_adapter = ['gollum-rjgit_adapter', '~> 0.6']
|
4
|
+
Gem::Specification.new &specification(Gollum::Lib::VERSION, default_adapter, "java")
|
@@ -78,12 +78,22 @@ module Gollum
|
|
78
78
|
# Returns a normalized String directory name, or nil if no directory
|
79
79
|
# is given.
|
80
80
|
def self.normalize_dir(dir)
|
81
|
-
return
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
81
|
+
return unless dir
|
82
|
+
|
83
|
+
dir = dir.dup
|
84
|
+
|
85
|
+
# Remove '.' and '..' path segments
|
86
|
+
dir.gsub!(%r{(\A|/)\.{1,2}(/|\z)}, '/')
|
87
|
+
|
88
|
+
# Remove repeated slashes
|
89
|
+
dir.gsub!(%r{//+}, '/')
|
90
|
+
|
91
|
+
# Remove Windows drive letters, trailing slashes, and keep one leading slash
|
92
|
+
dir.sub!(%r{\A([a-z]:)?/*(.*?)/*\z}i, '/\2')
|
93
|
+
|
94
|
+
# Return empty string for paths that point to the toplevel
|
95
|
+
return '' if dir == '/'
|
96
|
+
|
87
97
|
dir
|
88
98
|
end
|
89
99
|
end
|
data/lib/gollum-lib/committer.rb
CHANGED
@@ -54,7 +54,7 @@ module Gollum
|
|
54
54
|
@actor ||= begin
|
55
55
|
@options[:name] = @wiki.default_committer_name if @options[:name].nil?
|
56
56
|
@options[:email] = @wiki.default_committer_email if @options[:email].nil?
|
57
|
-
Gollum::Git::Actor.new(@options[:name], @options[:email])
|
57
|
+
Gollum::Git::Actor.new(@options[:name], @options[:email], @options[:time])
|
58
58
|
end
|
59
59
|
end
|
60
60
|
|
data/lib/gollum-lib/file.rb
CHANGED
@@ -171,7 +171,7 @@ module Gollum
|
|
171
171
|
return false if @blob.is_symlink && !FS_SUPPORT_SYMLINKS
|
172
172
|
|
173
173
|
# This will try to resolve symbolic links, as well
|
174
|
-
pathname = Pathname.new(::File.
|
174
|
+
pathname = Pathname.new(::File.join(@wiki.repo.path, '..', BlobEntry.normalize_dir(@path)))
|
175
175
|
if pathname.symlink?
|
176
176
|
source = ::File.readlink(pathname.to_path)
|
177
177
|
realpath = ::File.join(::File.dirname(pathname.to_path), source)
|
@@ -26,7 +26,8 @@ class Gollum::Filter::Emoji < Gollum::Filter
|
|
26
26
|
end
|
27
27
|
|
28
28
|
def process(data)
|
29
|
-
|
29
|
+
src = ::File.join(@markup.wiki.base_path, '/gollum/emoji/\\k<name>')
|
30
|
+
data.gsub! process_pattern, %Q(<img src="#{src}" alt="\\k<name>" class="emoji">)
|
30
31
|
data
|
31
32
|
end
|
32
33
|
|
@@ -230,6 +230,7 @@ class Gollum::Filter::Tags < Gollum::Filter
|
|
230
230
|
else
|
231
231
|
name = page ? path_to_link_text(link) : link
|
232
232
|
end
|
233
|
+
|
233
234
|
link = page ? page.escaped_url_path : ERB::Util.url_encode(link).force_encoding('utf-8')
|
234
235
|
generate_link(link, name, extra, presence)
|
235
236
|
end
|
@@ -14,7 +14,7 @@ class Gollum::Filter::YAML < Gollum::Filter
|
|
14
14
|
@markup.metadata.merge!(frontmatter) if frontmatter.respond_to?(:keys) && frontmatter.respond_to?(:values)
|
15
15
|
rescue ::Psych::SyntaxError, ::Psych::DisallowedClass, ::Psych::BadAlias => error
|
16
16
|
@markup.metadata['errors'] ||= []
|
17
|
-
@markup.metadata['errors'] << "Failed to load YAML
|
17
|
+
@markup.metadata['errors'] << "Failed to load YAML frontmatter: #{error.message}"
|
18
18
|
end
|
19
19
|
''
|
20
20
|
end
|
data/lib/gollum-lib/helpers.rb
CHANGED
data/lib/gollum-lib/macro.rb
CHANGED
@@ -25,6 +25,10 @@ module Gollum
|
|
25
25
|
"<p class=\"gollum-error\">#{s}</p>"
|
26
26
|
end
|
27
27
|
|
28
|
+
def active_page
|
29
|
+
return @page.parent_page || @page
|
30
|
+
end
|
31
|
+
|
28
32
|
# The special class we reserve for only the finest of screwups. The
|
29
33
|
# underscore is to make sure nobody can define a real, callable macro
|
30
34
|
# with the same name, because that would be... exciting.
|
@@ -3,7 +3,7 @@ module Gollum
|
|
3
3
|
|
4
4
|
class Series < Gollum::Macro
|
5
5
|
def render(series_prefix = "")
|
6
|
-
raise "This page's name does not match the prefix '#{series_prefix}'" unless
|
6
|
+
raise "This page's name does not match the prefix '#{series_prefix}'" unless active_page.name =~ /^#{series_prefix}/
|
7
7
|
render_links(*find_series(series_prefix))
|
8
8
|
end
|
9
9
|
|
@@ -21,7 +21,7 @@ module Gollum
|
|
21
21
|
dir = @wiki.pages.select {|page| ::File.dirname(page.path) == ::File.dirname(@page.path)}
|
22
22
|
dir.select! {|page| page.name =~ /\A#{series_prefix}/ } unless series_prefix.empty?
|
23
23
|
dir.sort_by! {|page| page.name}
|
24
|
-
self_index = dir.find_index {|page| page.name ==
|
24
|
+
self_index = dir.find_index {|page| page.name == active_page.name}
|
25
25
|
if self_index > 0
|
26
26
|
return dir[self_index-1], dir[self_index+1]
|
27
27
|
else
|
data/lib/gollum-lib/markups.rb
CHANGED
@@ -56,9 +56,9 @@ end
|
|
56
56
|
module Gollum
|
57
57
|
class Markup
|
58
58
|
if gem_exists?('pandoc-ruby')
|
59
|
-
GitHub::Markup::Markdown::MARKDOWN_GEMS.
|
59
|
+
GitHub::Markup::Markdown::MARKDOWN_GEMS.clear
|
60
60
|
GitHub::Markup::Markdown::MARKDOWN_GEMS['pandoc-ruby'] = proc { |content|
|
61
|
-
PandocRuby.convert(content, :from =>
|
61
|
+
PandocRuby.convert(content, :from => 'markdown-tex_math_dollars-raw_tex', :to => :html, :filter => 'pandoc-citeproc')
|
62
62
|
}
|
63
63
|
else
|
64
64
|
GitHub::Markup::Markdown::MARKDOWN_GEMS['kramdown'] = proc { |content|
|
@@ -85,7 +85,8 @@ module Gollum
|
|
85
85
|
:extensions => ['rest', 'rst'])
|
86
86
|
register(:asciidoc, "AsciiDoc",
|
87
87
|
:skip_filters => [:Tags],
|
88
|
-
:enabled => MarkupRegisterUtils::gem_exists?("asciidoctor")
|
88
|
+
:enabled => MarkupRegisterUtils::gem_exists?("asciidoctor"),
|
89
|
+
:extensions => ['adoc','asciidoc'])
|
89
90
|
register(:mediawiki, "MediaWiki",
|
90
91
|
:enabled => MarkupRegisterUtils::gem_exists?("wikicloth"),
|
91
92
|
:extensions => ['mediawiki','wiki'], :reverse_links => true)
|
data/lib/gollum-lib/page.rb
CHANGED
@@ -277,7 +277,7 @@ module Gollum
|
|
277
277
|
#
|
278
278
|
# Returns the String extension (no leading period).
|
279
279
|
def self.format_to_ext(format)
|
280
|
-
format
|
280
|
+
Gollum::Markup.formats[format] ? Gollum::Markup.formats[format][:extensions].first : nil
|
281
281
|
end
|
282
282
|
|
283
283
|
# The underlying wiki repo.
|
@@ -360,7 +360,7 @@ module Gollum
|
|
360
360
|
def initialize(wiki, name, data, version, parent_page = nil)
|
361
361
|
@wiki = wiki
|
362
362
|
@path = name
|
363
|
-
@blob = OpenStruct.new(:name => name, :data => data, :is_symlink => false)
|
363
|
+
@blob = OpenStruct.new(:name => name, :data => wiki.normalize(data), :is_symlink => false)
|
364
364
|
@version = version
|
365
365
|
@formatted_data = nil
|
366
366
|
@doc = nil
|
@@ -368,5 +368,6 @@ module Gollum
|
|
368
368
|
@historical = false
|
369
369
|
end
|
370
370
|
end
|
371
|
+
|
371
372
|
|
372
373
|
end
|
data/lib/gollum-lib/redirects.rb
CHANGED
@@ -7,12 +7,12 @@ module Gollum
|
|
7
7
|
module Redirects
|
8
8
|
|
9
9
|
def stale?
|
10
|
-
@current_head !=
|
10
|
+
@current_head != get_head_sha
|
11
11
|
end
|
12
12
|
|
13
13
|
def init(wiki)
|
14
14
|
@wiki = wiki
|
15
|
-
@current_head =
|
15
|
+
@current_head = get_head_sha
|
16
16
|
end
|
17
17
|
|
18
18
|
def load
|
@@ -33,6 +33,10 @@ module Gollum
|
|
33
33
|
@wiki.overwrite_file(REDIRECTS_FILE, self.to_yaml, {})
|
34
34
|
end
|
35
35
|
|
36
|
+
def get_head_sha
|
37
|
+
@wiki.repo.head ? @wiki.repo.head.commit.sha : nil
|
38
|
+
end
|
39
|
+
|
36
40
|
end # Redirects Module
|
37
41
|
|
38
42
|
end # Gollum Module
|
data/lib/gollum-lib/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gollum-lib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0.
|
4
|
+
version: 5.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tom Preston-Werner
|
@@ -15,22 +15,16 @@ dependencies:
|
|
15
15
|
name: gollum-rugged_adapter
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- - ">="
|
19
|
-
- !ruby/object:Gem::Version
|
20
|
-
version: 0.99.4
|
21
18
|
- - "~>"
|
22
19
|
- !ruby/object:Gem::Version
|
23
|
-
version: 0
|
20
|
+
version: '1.0'
|
24
21
|
type: :runtime
|
25
22
|
prerelease: false
|
26
23
|
version_requirements: !ruby/object:Gem::Requirement
|
27
24
|
requirements:
|
28
|
-
- - ">="
|
29
|
-
- !ruby/object:Gem::Version
|
30
|
-
version: 0.99.4
|
31
25
|
- - "~>"
|
32
26
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0
|
27
|
+
version: '1.0'
|
34
28
|
- !ruby/object:Gem::Dependency
|
35
29
|
name: rouge
|
36
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -456,7 +450,6 @@ files:
|
|
456
450
|
- LICENSE
|
457
451
|
- README.md
|
458
452
|
- Rakefile
|
459
|
-
- adapter_dependencies.rb
|
460
453
|
- docs/sanitization.md
|
461
454
|
- gemspec.rb
|
462
455
|
- gollum-lib.gemspec
|
data/adapter_dependencies.rb
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
# Set the default git adapter for use in gollum-lib.gemspec and gollum-lib_java.gemspec
|
2
|
-
|
3
|
-
if RUBY_PLATFORM == 'java' then
|
4
|
-
DEFAULT_ADAPTER_REQ = ['gollum-rjgit_adapter', '>= 0.5.1', '~> 0.5.1']
|
5
|
-
else
|
6
|
-
DEFAULT_ADAPTER_REQ = ['gollum-rugged_adapter', '>= 0.99.4', '~> 0.99.4']
|
7
|
-
end
|