Updates commonmark gem version to 1.1.5 which switches from libcmark-gfm to comrak/Rust (#40197).

git-svn-id: https://svn.redmine.org/redmine/trunk@23247 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Marius Balteanu
2024-11-11 18:28:41 +00:00
parent 0abf7105da
commit a5d263dba8
11 changed files with 31 additions and 30 deletions

View File

@@ -46,7 +46,7 @@ end
# Optional CommonMark support, not for JRuby
group :common_mark do
gem "commonmarker", '~> 0.23.8'
gem "commonmarker", '~> 1.1.0'
gem 'deckar01-task_list', '2.3.2'
end

View File

@@ -25,7 +25,7 @@ rescue LoadError
# MiniMagick is not available
end
begin
require 'commonmarker' unless Object.const_defined?(:CommonMarker)
require 'commonmarker' unless Object.const_defined?(:Commonmarker)
rescue LoadError
# CommonMarker is not available
end

View File

@@ -26,29 +26,26 @@ module Redmine
# configuration of the rendering pipeline
PIPELINE_CONFIG = {
# https://github.com/gjtorikian/commonmarker#extension-options
commonmarker_extensions: [
:table,
:strikethrough,
:tagfilter,
:autolink
].freeze,
commonmarker_extensions: {
table: true,
strikethrough: true,
tagfilter: true,
autolink: true,
footnotes: true,
}.freeze,
# https://github.com/gjtorikian/commonmarker#parse-options
commonmarker_parse_options: [
:FOOTNOTES,
:STRIKETHROUGH_DOUBLE_TILDE,
:UNSAFE,
:VALIDATE_UTF8
].freeze,
commonmarker_parse_options: {
}.freeze,
# https://github.com/gjtorikian/commonmarker#render-options
commonmarker_render_options: [
:UNSAFE
],
commonmarker_render_options: {
unsafe: true
},
}.freeze
if Redmine::Configuration['common_mark_enable_hardbreaks'] == true
PIPELINE_CONFIG[:commonmarker_render_options].push(:HARDBREAKS)
PIPELINE_CONFIG[:commonmarker_render_options].merge!({hardbreaks: true})
end
PIPELINE_CONFIG[:commonmarker_render_options].freeze

View File

@@ -32,8 +32,12 @@ module Redmine
end
def call
doc = CommonMarker.render_doc(@text, parse_options, extensions)
html = doc.to_html render_options, extensions
html = Commonmarker.to_html(@text, options: {
extension: extensions,
render: render_options,
parse: parse_options
})
html.rstrip!
html
end
@@ -41,15 +45,15 @@ module Redmine
private
def extensions
context.fetch :commonmarker_extensions, []
context.fetch :commonmarker_extensions, {}
end
def parse_options
context.fetch :commonmarker_parse_options, :DEFAULT
context.fetch :commonmarker_parse_options, {}
end
def render_options
context.fetch :commonmarker_render_options, :DEFAULT
context.fetch :commonmarker_render_options, {}
end
end
end

View File

@@ -20,7 +20,7 @@
require_relative '../../../../../test_helper'
class Redmine::WikiFormatting::CommonMark::ApplicationHelperTest < Redmine::HelperTest
if Object.const_defined?(:CommonMarker)
if Object.const_defined?(:Commonmarker)
include ERB::Util

View File

@@ -19,7 +19,7 @@
require_relative '../../../../../test_helper'
if Object.const_defined?(:CommonMarker)
if Object.const_defined?(:Commonmarker)
require 'redmine/wiki_formatting/common_mark/external_links_filter'
class Redmine::WikiFormatting::CommonMark::ExternalLinksFilterTest < ActiveSupport::TestCase

View File

@@ -19,7 +19,7 @@
require_relative '../../../../../test_helper'
if Object.const_defined?(:CommonMarker)
if Object.const_defined?(:Commonmarker)
require 'redmine/wiki_formatting/common_mark/fixup_auto_links_filter'
class Redmine::WikiFormatting::CommonMark::FixupAutoLinksFilterTest < ActiveSupport::TestCase

View File

@@ -20,7 +20,7 @@
require_relative '../../../../../test_helper'
class Redmine::WikiFormatting::CommonMark::FormatterTest < ActionView::TestCase
if Object.const_defined?(:CommonMarker)
if Object.const_defined?(:Commonmarker)
def setup
@formatter = Redmine::WikiFormatting::CommonMark::Formatter

View File

@@ -19,7 +19,7 @@
require_relative '../../../../../test_helper'
if Object.const_defined?(:CommonMarker)
if Object.const_defined?(:Commonmarker)
require 'redmine/wiki_formatting/common_mark/markdown_filter'
class Redmine::WikiFormatting::CommonMark::MarkdownFilterTest < ActiveSupport::TestCase

View File

@@ -19,7 +19,7 @@
require_relative '../../../../../test_helper'
if Object.const_defined?(:CommonMarker)
if Object.const_defined?(:Commonmarker)
require 'redmine/wiki_formatting/common_mark/sanitization_filter'
class Redmine::WikiFormatting::CommonMark::SanitizationFilterTest < ActiveSupport::TestCase

View File

@@ -18,7 +18,7 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
require_relative '../../../../../test_helper'
if Object.const_defined?(:CommonMarker)
if Object.const_defined?(:Commonmarker)
require 'redmine/wiki_formatting/common_mark/syntax_highlight_filter'
class Redmine::WikiFormatting::CommonMark::SyntaxHighlightFilterTest < ActiveSupport::TestCase