diff --git a/Gemfile b/Gemfile
index 1f31549e..08ab18af 100644
--- a/Gemfile
+++ b/Gemfile
@@ -76,7 +76,6 @@ group :jekyll_optional_dependencies do
gem "classifier-reborn", "~> 2.2.0"
gem "liquid-c", "~> 3.0"
gem "pygments.rb", "~> 1.0"
- gem "rdiscount", "~> 2.0"
gem "yajl-ruby", "~> 1.3"
end
diff --git a/History.markdown b/History.markdown
index 95eab348..db99bcc3 100644
--- a/History.markdown
+++ b/History.markdown
@@ -1,5 +1,7 @@
## HEAD
+ * Textile is only supported through a converter plugin (#7003)
+
### Documentation
* Release post for v3.8.0 (#6849)
@@ -14,6 +16,9 @@
* Update Windows install docs (#6926)
* Remove documentation for using Redcarpet (#6990)
* Updated nginx configuration for custom-404-page documentation (#6994)
+ * List all static files variables (#7002)
+ * Document that _drafts need to be contained within the custom collection directory (#6985)
+ * proposed change for passive voice. (#7005)
### Minor Enhancements
@@ -31,6 +36,7 @@
* We are not using Ruby 2.2 anymore (#6977)
* Drop support for older versions of Rouge (#6978)
* Remove support for Redcarpet (#6987)
+ * Remove support for rdiscount (#6988)
### Development Fixes
@@ -38,6 +44,7 @@
* Loggers should accept both numbers and symbols (#6967)
* Update instructions for releasing docs Gem (#6975)
* yajl-ruby update to v1.4.0 (#6976)
+ * Load Rouge for TestKramdown (#7007)
## 3.8.1 / 2018-05-01
diff --git a/docs/_docs/collections.md b/docs/_docs/collections.md
index c45a3868..6309517c 100644
--- a/docs/_docs/collections.md
+++ b/docs/_docs/collections.md
@@ -56,9 +56,9 @@ defaults:
-
Be sure to move posts into custom collections directory
+
Be sure to move drafts and posts into custom collections directory
-
If you specify a directory to store all your collections in the same place with collections_dir: my_collections
, then you will need to move your _posts
directory to my_collections/_posts
. Note that, the name of your collections directory cannot start with an underscore (`_`).
+
If you specify a directory to store all your collections in the same place with collections_dir: my_collections
, then you will need to move your _drafts
and _posts
directory to my_collections/_drafts
and my_collections/_posts
. Note that, the name of your collections directory cannot start with an underscore (`_`).
### Step 2: Add your content {#step2}
diff --git a/docs/_docs/contributing.md b/docs/_docs/contributing.md
index f1c643d3..9eea7282 100644
--- a/docs/_docs/contributing.md
+++ b/docs/_docs/contributing.md
@@ -16,7 +16,7 @@ Whether you're a developer, a designer, or just a Jekyll devotee, there are lots
* [Install Jekyll on your computer](https://jekyllrb.com/docs/installation/) and kick the tires. Does it work? Does it do what you'd expect? If not, [open an issue](https://github.com/jekyll/jekyll/issues/new) and let us know.
* Comment on some of the project's [open issues](https://github.com/jekyll/jekyll/issues). Have you experienced the same problem? Know a work around? Do you have a suggestion for how the feature could be better?
-* Read through [the documentation](https://jekyllrb.com/docs/home/), and click the "improve this page" button, any time you see something confusing, or have a suggestion for something that could be improved.
+* Read through [the documentation](https://jekyllrb.com/docs/home/), and click the "improve this page" button, any time you see something confusing, or have a suggestion on how to improve something.
* Browse through [the Jekyll discussion forum](https://talk.jekyllrb.com/), and lend a hand answering questions. There's a good chance you've already experienced what another user is experiencing.
* Find [an open issue](https://github.com/jekyll/jekyll/issues) (especially [those labeled `help-wanted`](https://github.com/jekyll/jekyll/issues?q=is%3Aopen+is%3Aissue+label%3Ahelp-wanted)), and submit a proposed fix. If it's your first pull request, we promise we won't bite, and are glad to answer any questions.
* Help evaluate [open pull requests](https://github.com/jekyll/jekyll/pulls), by testing the changes locally and reviewing what's proposed.
diff --git a/docs/_docs/pagination.md b/docs/_docs/pagination.md
index 41a3a8a2..1735ee64 100644
--- a/docs/_docs/pagination.md
+++ b/docs/_docs/pagination.md
@@ -14,7 +14,7 @@ your `_config.yml` under `plugins`. For Jekyll 2, this is standard.
Pagination only works within HTML files
- Pagination does not work from within Markdown or Textile files from
+ Pagination does not work from within Markdown files from
your Jekyll site. Pagination works when called from within the HTML
file, named index.html
, which optionally may reside in and
produce pagination from within a subdirectory, via the
diff --git a/docs/_docs/structure.md b/docs/_docs/structure.md
index 6735d6e0..6a069f29 100644
--- a/docs/_docs/structure.md
+++ b/docs/_docs/structure.md
@@ -5,7 +5,8 @@ permalink: /docs/structure/
Jekyll is, at its core, a text transformation engine. The concept behind the
system is this: you give it text written in your favorite markup language, be
-that Markdown, Textile, or just plain HTML, and it churns that through a layout
+that Markdown, [Textile](https://github.com/jekyll/jekyll-textile-converter)
+, or just plain HTML, and it churns that through a layout
or a series of layout files. Throughout that process you can tweak how you want
the site URLs to look, what data gets displayed in the layout, and more. This
is all done through editing text files; the static web site is the final
@@ -185,7 +186,7 @@ An overview of what each of these does:
index.html or index.md and other HTML,
- Markdown, Textile files
+ Markdown files
|
diff --git a/docs/_docs/upgrading/2-to-3.md b/docs/_docs/upgrading/2-to-3.md
index c12a1a91..bafda35f 100644
--- a/docs/_docs/upgrading/2-to-3.md
+++ b/docs/_docs/upgrading/2-to-3.md
@@ -44,6 +44,10 @@ For `site.collections.myCollection` in Jekyll 2, you now do:
This is a bit cumbersome at first, but is easier than a big `for` loop.
+### Textile support
+
+We dropped native support for Textile, from now on you have to install our [jekyll-textile-converter](https://github.com/jekyll/jekyll-textile-converter) plugin to work with Textile files.
+
### Dropped dependencies
We dropped a number of dependencies the Core Team felt were optional. As such, in 3.0, they must be explicitly installed and included if you use any of the features. They are:
diff --git a/docs/_docs/variables.md b/docs/_docs/variables.md
index a53d9285..d39def6e 100644
--- a/docs/_docs/variables.md
+++ b/docs/_docs/variables.md
@@ -124,8 +124,7 @@ following is a reference of the available data.
A list of all static files (i.e.
files not processed by Jekyll's converters or the Liquid renderer).
- Each file has three properties: path ,
- modified_time and extname .
+ Each file has five properties: path , modified_time , name , basename and extname .
|
diff --git a/docs/index.html b/docs/index.html
index 082e02d8..a3377478 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -21,7 +21,7 @@ overview: true
diff --git a/features/site_configuration.feature b/features/site_configuration.feature
index 4baa36a8..698c59bc 100644
--- a/features/site_configuration.feature
+++ b/features/site_configuration.feature
@@ -65,14 +65,6 @@ Feature: Site configuration
And the "_site/Rakefile" file should not exist
And the "_site/README" file should not exist
- Scenario: Use RDiscount for markup
- Given I have an "index.markdown" page that contains "[Google](https://www.google.com)"
- And I have a configuration file with "markdown" set to "rdiscount"
- When I run jekyll build
- Then I should get a zero exit status
- And the _site directory should exist
- And I should see "
Google" in "_site/index.html"
-
Scenario: Use Kramdown for markup
Given I have an "index.markdown" page that contains "[Google](https://www.google.com)"
And I have a configuration file with "markdown" set to "kramdown"
diff --git a/lib/jekyll/configuration.rb b/lib/jekyll/configuration.rb
index fb51cd5b..e49eb62b 100644
--- a/lib/jekyll/configuration.rb
+++ b/lib/jekyll/configuration.rb
@@ -66,10 +66,6 @@ module Jekyll
"strict_variables" => false,
},
- "rdiscount" => {
- "extensions" => [],
- },
-
"kramdown" => {
"auto_ids" => true,
"toc_levels" => "1..6",
diff --git a/lib/jekyll/converters/markdown.rb b/lib/jekyll/converters/markdown.rb
index 567bc120..3c1c3458 100644
--- a/lib/jekyll/converters/markdown.rb
+++ b/lib/jekyll/converters/markdown.rb
@@ -30,8 +30,7 @@ module Jekyll
# rubocop:disable Naming/AccessorMethodName
def get_processor
case @config["markdown"].downcase
- when "kramdown" then return KramdownParser.new(@config)
- when "rdiscount" then return RDiscountParser.new(@config)
+ when "kramdown" then return KramdownParser.new(@config)
else
custom_processor
end
@@ -43,7 +42,7 @@ module Jekyll
# are not in safe mode.)
def valid_processors
- %w(rdiscount kramdown) + third_party_processors
+ %w(kramdown) + third_party_processors
end
# Public: A list of processors that you provide via plugins.
@@ -52,7 +51,7 @@ module Jekyll
def third_party_processors
self.class.constants - \
- %w(KramdownParser RDiscountParser PRIORITIES).map(
+ %w(KramdownParser PRIORITIES).map(
&:to_sym
)
end
diff --git a/lib/jekyll/converters/markdown/rdiscount_parser.rb b/lib/jekyll/converters/markdown/rdiscount_parser.rb
deleted file mode 100644
index 9da177d4..00000000
--- a/lib/jekyll/converters/markdown/rdiscount_parser.rb
+++ /dev/null
@@ -1,37 +0,0 @@
-# frozen_string_literal: true
-
-module Jekyll
- module Converters
- class Markdown
- class RDiscountParser
- def initialize(config)
- unless defined?(RDiscount)
- Jekyll::External.require_with_graceful_fail "rdiscount"
- end
- @config = config
- @rdiscount_extensions = @config["rdiscount"]["extensions"].map(&:to_sym)
- end
-
- def convert(content)
- rd = RDiscount.new(content, *@rdiscount_extensions)
- html = rd.to_html
- if @config["rdiscount"]["toc_token"]
- html = replace_generated_toc(rd, html, @config["rdiscount"]["toc_token"])
- end
- html
- end
-
- private
- def replace_generated_toc(rd_instance, html, toc_token)
- if rd_instance.generate_toc && html.include?(toc_token)
- utf8_toc = rd_instance.toc_content
- utf8_toc.force_encoding("utf-8") if utf8_toc.respond_to?(:force_encoding)
- html.gsub(toc_token, utf8_toc)
- else
- html
- end
- end
- end
- end
- end
-end
diff --git a/test/helper.rb b/test/helper.rb
index a3cd6568..9e01b7de 100644
--- a/test/helper.rb
+++ b/test/helper.rb
@@ -34,10 +34,6 @@ require_relative "../lib/jekyll.rb"
Jekyll.logger = Logger.new(StringIO.new, :error)
-unless jruby?
- require "rdiscount"
-end
-
require "kramdown"
require "shoulda"
diff --git a/test/test_kramdown.rb b/test/test_kramdown.rb
index f7b5ea70..62b70ddd 100644
--- a/test/test_kramdown.rb
+++ b/test/test_kramdown.rb
@@ -1,6 +1,7 @@
# frozen_string_literal: true
require "helper"
+require "rouge"
class TestKramdown < JekyllUnitTest
context "kramdown" do
diff --git a/test/test_rdiscount.rb b/test/test_rdiscount.rb
deleted file mode 100644
index 7116c29a..00000000
--- a/test/test_rdiscount.rb
+++ /dev/null
@@ -1,51 +0,0 @@
-# frozen_string_literal: true
-
-require "helper"
-
-class TestRdiscount < JekyllUnitTest
- context "rdiscount" do
- setup do
- if jruby?
- then skip(
- "JRuby does not perform well with CExt, test disabled."
- )
- end
-
- config = {
- "markdown" => "rdiscount",
- "rdiscount" => {
- "toc_token" => "{:toc}",
- "extensions" => %w(smart generate_toc),
- },
- }
-
- @markdown = Converters::Markdown.new config
- end
-
- should "pass rdiscount extensions" do
- assert_equal "
“smart”
", @markdown.convert('"smart"').strip
- end
-
- should "render toc" do
- toc = <<-TOC
-
-
Header 1
-
-
-
Header 2
-
-
-
-
-TOC
- assert_equal toc.strip,
- @markdown.convert("# Header 1\n\n## Header 2\n\n{:toc}").strip
- end
- end
-end
diff --git a/test/test_tags.rb b/test/test_tags.rb
index 739ced21..54b8e4b7 100644
--- a/test/test_tags.rb
+++ b/test/test_tags.rb
@@ -494,7 +494,7 @@ EOS
setup do
@content = <
"rdiscount",
- })
- end
-
- should "parse correctly" do
- assert_match %r{FIGHT!}, @result
- assert_match %r!FINISH HIM!, @result
- end
- end
-
context "using Kramdown" do
setup do
create_post(@content, "markdown" => "kramdown")