jekyll-commonmark-ghpages 0.1.4 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 635aef17f3e4a950f8f41670fbbb1712e39c4b3e1ffdddfd48fbf70f1b233820
4
- data.tar.gz: a2a42104b0688eedf9612db4afd76928fe156c8b8c8b3659a5697b5d2a2dba08
3
+ metadata.gz: 8b6560d6d39742b63f7976d4b6df8dcc4f0cbf96cbfd72d786b2884f9623144a
4
+ data.tar.gz: d5f9045e89575c3b4a32690976e90a4c2783f970a78a068a79a5409aa8e99753
5
5
  SHA512:
6
- metadata.gz: 7741f0a8cae7c61a82f69658f1fe3c315e441ec42474c16f1552032ac0afa6f6d55c967b5bca1c218cca218f0609ae00ea9fd7a358e1b555593c0e9bbf98f694
7
- data.tar.gz: f7ac6c990a91894c1259c19c865b1bed1d3337f6139b8427bc33f5ff01b3014256d7a64b6060e3677b9f3f7edb2be3b0328f4af30547458556a5813c06cf6f18
6
+ metadata.gz: 3746a5a1699a22924cd92e8175dcd38f51a07208ac90e8730724964a48a1b56ecec41c0d7a0a619aac089dd6f9f3d586018746761e7240f7b28f3092d82e089d
7
+ data.tar.gz: 034d544a15c89930b5691ef68324f8a37857aacd0d21ee802c31f19703d61eae1c6fe4c71860a1dd547482d638512b95d52c1cca50363815e2e9e773c7535ee2
@@ -0,0 +1,2 @@
1
+ # Automatically add our team to each pull request in this repo
2
+ * @github/pages-reviewers
@@ -0,0 +1,17 @@
1
+ on: push
2
+ name: cibuild
3
+ jobs:
4
+ build:
5
+ name: Test
6
+ strategy:
7
+ matrix:
8
+ ruby: [2.6, 2.7]
9
+ os: [ubuntu-latest, macos-latest, windows-latest]
10
+ runs-on: ${{ matrix.os }}
11
+ steps:
12
+ - uses: actions/checkout@v3
13
+ - uses: ruby/setup-ruby@v1
14
+ with:
15
+ ruby-version: ${{ matrix.ruby }}
16
+ - name: script/cibuild
17
+ run: script/cibuild
data/.gitignore CHANGED
@@ -2,3 +2,4 @@
2
2
  Gemfile.lock
3
3
  spec/dest
4
4
  .bundle
5
+ vendor/
data/README.md CHANGED
@@ -3,8 +3,7 @@
3
3
  *GitHub Flavored Markdown converter for Jekyll, based on [`jekyll-commonmark`](https://github.com/jekyll/jekyll-commonmark)*
4
4
 
5
5
  [![Gem Version](https://img.shields.io/gem/v/jekyll-commonmark-ghpages.svg)](https://rubygems.org/gems/jekyll-commonmark-ghpages)
6
- [![Build Status](https://img.shields.io/travis/github/jekyll-commonmark-ghpages/master.svg)](https://travis-ci.org/github/jekyll-commonmark-ghpages)
7
- [![Windows Build status](https://img.shields.io/appveyor/ci/github/jekyll-commonmark-ghpages/master.svg?label=Windows%20build)](https://ci.appveyor.com/project/github/jekyll-commonmark-ghpages)
6
+ [![Build Status](https://github.com/github/jekyll-commonmark-ghpages/actions/workflows/cibuild.yaml/badge.svg)](https://github.com/github/jekyll-commonmark-ghpages/actions/workflows/cibuild.yaml)
8
7
 
9
8
  Jekyll Markdown converter that uses [libcmark-gfm](https://github.com/github/cmark), GitHub's fork of [cmark](https://github.com/commonmark/cmark), the reference parser for CommonMark, with some additions to ensure compatibility with existing Kramdown-based sites.
10
9
 
@@ -30,6 +29,8 @@ To specify extensions and options for use in converting Markdown to HTML, supply
30
29
 
31
30
  ```yaml
32
31
  commonmark:
33
- options: ["SMART", "FOOTNOTES"]
34
- extensions: ["strikethrough", "autolink", "tables"]
32
+ options: ["UNSAFE", "SMART", "FOOTNOTES"]
33
+ extensions: ["strikethrough", "autolink", "table", "tagfilter"]
35
34
  ```
35
+
36
+ ⚠ The `UNSAFE` option is required for HTML rendering.
@@ -3,9 +3,9 @@
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "jekyll-commonmark-ghpages"
5
5
  spec.summary = "CommonMark generator for Jekyll"
6
- spec.version = "0.1.4"
7
- spec.authors = ["Ashe Connor"]
8
- spec.email = "kivikakk@github.com"
6
+ spec.version = "0.2.0"
7
+ spec.authors = ["GitHub, Inc."]
8
+ spec.email = "support@github.com"
9
9
  spec.homepage = "https://github.com/github/jekyll-commonmark-ghpages"
10
10
  spec.licenses = ["MIT"]
11
11
 
@@ -14,11 +14,11 @@ Gem::Specification.new do |spec|
14
14
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
15
15
  spec.require_paths = ["lib"]
16
16
 
17
- spec.add_runtime_dependency "jekyll-commonmark", "~> 1"
18
- spec.add_runtime_dependency "commonmarker", "~> 0.17.6"
19
- spec.add_runtime_dependency "rouge", "~> 2"
17
+ spec.add_runtime_dependency "jekyll", "~> 3.9.0"
18
+ spec.add_runtime_dependency "jekyll-commonmark", "~> 1.4.0"
19
+ spec.add_runtime_dependency "commonmarker", "~> 0.23.4"
20
+ spec.add_runtime_dependency "rouge", ">= 2.0", "< 4.0"
20
21
 
21
22
  spec.add_development_dependency "rspec", "~> 3.0"
22
23
  spec.add_development_dependency "rake"
23
- spec.add_development_dependency "bundler", "~> 1.6"
24
24
  end
@@ -81,13 +81,9 @@ class Jekyll::Converters::Markdown
81
81
  # final document.
82
82
  class CommonMarkGhPages < CommonMark
83
83
  def convert(content)
84
- parse_options = (Set.new(@options) & CommonMarker::Config::Parse.keys).to_a
85
- render_options = (Set.new(@options) & CommonMarker::Config::Render.keys).to_a
86
- parse_options = :DEFAULT if parse_options.empty?
87
- render_options = :DEFAULT if render_options.empty?
88
- doc = CommonMarker.render_doc(content, parse_options, @extensions)
84
+ doc = CommonMarker.render_doc(content, @parse_options, @extensions)
89
85
  html = JekyllCommonMarkCustomRenderer.new(
90
- :options => render_options,
86
+ :options => @render_options,
91
87
  :extensions => @extensions
92
88
  ).render(doc)
93
89
  html.gsub(/<br data-jekyll-commonmark-ghpages>/, "\n")
@@ -97,9 +93,25 @@ end
97
93
 
98
94
  class Jekyll::Tags::HighlightBlock
99
95
  alias render_rouge_without_ghpages_hack render_rouge
96
+ alias render_without_ghpages_hack render
97
+
98
+ def render(context)
99
+ @render_ghpages_hack_context = context
100
+ render_without_ghpages_hack(context)
101
+ end
100
102
 
101
103
  def render_rouge(context)
102
- render_rouge_without_ghpages_hack(context)
103
- .gsub(/\r?\n/, "<br data-jekyll-commonmark-ghpages>")
104
+ rendered = render_rouge_without_ghpages_hack(context)
105
+
106
+ processor = @render_ghpages_hack_context
107
+ .registers[:site]
108
+ .find_converter_instance(Jekyll::Converters::Markdown)
109
+ .get_processor
110
+
111
+ if processor.is_a?(Jekyll::Converters::Markdown::CommonMarkGhPages)
112
+ rendered.gsub!(/\r?\n/, "<br data-jekyll-commonmark-ghpages>")
113
+ end
114
+
115
+ rendered
104
116
  end
105
117
  end
data/script/cibuild CHANGED
@@ -1,3 +1,13 @@
1
1
  #!/bin/bash
2
2
 
3
+ # Update gems
4
+ gem update --system 3.2.3
5
+
6
+ # Install bundler
7
+ gem install bundler
8
+
9
+ # Install dependencies
10
+ bundle install
11
+
12
+ # Run tests
3
13
  bundle exec rspec
data/spec/test_spec.rb CHANGED
@@ -21,18 +21,18 @@ describe Jekyll::Converters::Markdown::CommonMarkGhPages do
21
21
  let(:converter) { Jekyll::Converters::Markdown::CommonMarkGhPages.new(config) }
22
22
  let(:config) {
23
23
  {"commonmark" => {
24
- "options" => ["SMART", "FOOTNOTES"],
24
+ "options" => ["UNSAFE", "SMART", "FOOTNOTES"],
25
25
  "extensions" => ["tagfilter"],
26
26
  }}
27
27
  }
28
28
  subject { converter.convert("### \"Hi\" <xmp>[^nb]\n\n[^nb]: Yes.\n") }
29
29
 
30
- it { is_expected.to match %r{<h3 id="[^"]*">“Hi” &lt;xmp><sup[^>]*><a href="#fn1"[^>]*>\[1\]</a></sup></h3>\n<section class="footnotes">\n<ol>\n<li id="fn1">\n<p>Yes. <a href="#fnref1".*</a></p>} }
30
+ it { is_expected.to match %r{<h3 id="[^"]*">“Hi” &lt;xmp><sup[^>]*><a href="#fn1"[^>]*>1</a></sup></h3>\n<section class="footnotes">\n<ol>\n<li id="fn1">\n<p>Yes. <a href="#fnref1".*</a></p>} }
31
31
  end
32
32
 
33
33
  describe Jekyll::Renderer do
34
34
  it "should not re-process markdown in a liquid tag" do
35
- site = Jekyll::Site.new(Jekyll.configuration("markdown" => "CommonMarkGhPages"))
35
+ site = Jekyll::Site.new(Jekyll.configuration("markdown" => "CommonMarkGhPages", "commonmark" => { "options" => ["UNSAFE"] }))
36
36
  collection = Jekyll::Collection.new(site, "pages")
37
37
  document = Jekyll::Document.new("hello.md", site: site, collection: collection)
38
38
  document.content = "**Hi**\n" \
metadata CHANGED
@@ -1,57 +1,77 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-commonmark-ghpages
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
- - Ashe Connor
8
- autorequire:
7
+ - GitHub, Inc.
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-09 00:00:00.000000000 Z
11
+ date: 2022-03-03 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: jekyll
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 3.9.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 3.9.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: jekyll-commonmark
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
31
  - - "~>"
18
32
  - !ruby/object:Gem::Version
19
- version: '1'
33
+ version: 1.4.0
20
34
  type: :runtime
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
38
  - - "~>"
25
39
  - !ruby/object:Gem::Version
26
- version: '1'
40
+ version: 1.4.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: commonmarker
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: 0.17.6
47
+ version: 0.23.4
34
48
  type: :runtime
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: 0.17.6
54
+ version: 0.23.4
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: rouge
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
- - - "~>"
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '2.0'
62
+ - - "<"
46
63
  - !ruby/object:Gem::Version
47
- version: '2'
64
+ version: '4.0'
48
65
  type: :runtime
49
66
  prerelease: false
50
67
  version_requirements: !ruby/object:Gem::Requirement
51
68
  requirements:
52
- - - "~>"
69
+ - - ">="
53
70
  - !ruby/object:Gem::Version
54
- version: '2'
71
+ version: '2.0'
72
+ - - "<"
73
+ - !ruby/object:Gem::Version
74
+ version: '4.0'
55
75
  - !ruby/object:Gem::Dependency
56
76
  name: rspec
57
77
  requirement: !ruby/object:Gem::Requirement
@@ -80,33 +100,19 @@ dependencies:
80
100
  - - ">="
81
101
  - !ruby/object:Gem::Version
82
102
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: bundler
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '1.6'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '1.6'
97
- description:
98
- email: kivikakk@github.com
103
+ description:
104
+ email: support@github.com
99
105
  executables: []
100
106
  extensions: []
101
107
  extra_rdoc_files: []
102
108
  files:
109
+ - ".github/CODEOWNERS"
110
+ - ".github/workflows/cibuild.yaml"
103
111
  - ".gitignore"
104
- - ".travis.yml"
105
112
  - Gemfile
106
113
  - LICENSE
107
114
  - README.md
108
115
  - Rakefile
109
- - appveyor.yml
110
116
  - jekyll-commonmark-ghpages.gemspec
111
117
  - lib/jekyll-commonmark-ghpages.rb
112
118
  - script/cibuild
@@ -116,7 +122,7 @@ homepage: https://github.com/github/jekyll-commonmark-ghpages
116
122
  licenses:
117
123
  - MIT
118
124
  metadata: {}
119
- post_install_message:
125
+ post_install_message:
120
126
  rdoc_options: []
121
127
  require_paths:
122
128
  - lib
@@ -131,9 +137,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
131
137
  - !ruby/object:Gem::Version
132
138
  version: '0'
133
139
  requirements: []
134
- rubyforge_project:
135
- rubygems_version: 2.7.3
136
- signing_key:
140
+ rubygems_version: 3.1.6
141
+ signing_key:
137
142
  specification_version: 4
138
143
  summary: CommonMark generator for Jekyll
139
144
  test_files:
data/.travis.yml DELETED
@@ -1,24 +0,0 @@
1
- language: ruby
2
- cache: bundler
3
- rvm:
4
- - 2.4
5
- - 2.3
6
- - 2.2
7
- - 2.1
8
- git:
9
- depth: 1
10
-
11
- sudo: false
12
-
13
- addons:
14
- apt:
15
- sources:
16
- - kalakris-cmake
17
- packages:
18
- - cmake
19
-
20
- before_install:
21
- - gem install bundler
22
-
23
- before_script: bundle update
24
- script: script/cibuild
data/appveyor.yml DELETED
@@ -1,24 +0,0 @@
1
- version: "{build}"
2
- clone_depth: 5
3
- build: off
4
-
5
- install:
6
- - SET PATH=C:\Ruby%RUBY_FOLDER_VER%\bin;%PATH%
7
- - bundle install --retry 5 --jobs=%NUMBER_OF_PROCESSORS% --clean --path vendor\bundle
8
-
9
- environment:
10
- matrix:
11
- - RUBY_FOLDER_VER: "24"
12
- - RUBY_FOLDER_VER: "24-x64"
13
- - RUBY_FOLDER_VER: "23"
14
- - RUBY_FOLDER_VER: "22"
15
- - RUBY_FOLDER_VER: "21"
16
-
17
- test_script:
18
- - ruby --version
19
- - gem --version
20
- - bundler --version
21
- - bash script/cibuild
22
-
23
- cache:
24
- - 'vendor\bundle -> appveyor.yml,Gemfile,jekyll-commonmark-ghpages.gemspec'