From c064aed77b4e28d6e63adc940066ad793b82420b Mon Sep 17 00:00:00 2001 From: Stan Hu <stanhu@gmail.com> Date: Wed, 17 Mar 2021 17:10:54 -0700 Subject: [PATCH] Remove Kramdown patch and update to v2.3.1 gem As of https://gitlab.com/gitlab-org/gitlab/-/merge_requests/56750, Markdown should no longer be rendered through Kramdown for Wiki pages. The monkey patch can be removed with Kramdown v2.3.1. Diff: https://my.diffend.io/gems/kramdown/2.3.0/2.3.1 --- Gemfile | 2 +- Gemfile.lock | 4 +-- .../unreleased/sh-remove-kramdown-patch.yml | 5 ++++ config/initializers/kramdown_patch.rb | 25 ------------------- .../kramdown/kramdown_spec.rb} | 2 +- 5 files changed, 9 insertions(+), 29 deletions(-) create mode 100644 changelogs/unreleased/sh-remove-kramdown-patch.yml delete mode 100644 config/initializers/kramdown_patch.rb rename spec/{initializers/kramdown_patch_spec.rb => lib/kramdown/kramdown_spec.rb} (92%) diff --git a/Gemfile b/Gemfile index 81294ebe39e9c..cd8bdeca8133c 100644 --- a/Gemfile +++ b/Gemfile @@ -150,7 +150,7 @@ gem 'deckar01-task_list', '2.3.1' gem 'gitlab-markup', '~> 1.7.1' gem 'github-markup', '~> 1.7.0', require: 'github/markup' gem 'commonmarker', '~> 0.21' -gem 'kramdown', '~> 2.3.0' +gem 'kramdown', '~> 2.3.1' gem 'RedCloth', '~> 4.3.2' gem 'rdoc', '~> 6.1.2' gem 'org-ruby', '~> 0.9.12' diff --git a/Gemfile.lock b/Gemfile.lock index 063ebc4424bdd..6c714c0d5dda3 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -669,7 +669,7 @@ GEM kgio (2.11.3) knapsack (1.17.0) rake - kramdown (2.3.0) + kramdown (2.3.1) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) @@ -1471,7 +1471,7 @@ DEPENDENCIES jwt (~> 2.1.0) kaminari (~> 1.0) knapsack (~> 1.17) - kramdown (~> 2.3.0) + kramdown (~> 2.3.1) kubeclient (~> 4.9.1) lefthook (~> 0.7) letter_opener_web (~> 1.3.4) diff --git a/changelogs/unreleased/sh-remove-kramdown-patch.yml b/changelogs/unreleased/sh-remove-kramdown-patch.yml new file mode 100644 index 0000000000000..86fc282d36333 --- /dev/null +++ b/changelogs/unreleased/sh-remove-kramdown-patch.yml @@ -0,0 +1,5 @@ +--- +title: Remove Kramdown patch and update to v2.3.1 gem +merge_request: 56917 +author: +type: fixed diff --git a/config/initializers/kramdown_patch.rb b/config/initializers/kramdown_patch.rb deleted file mode 100644 index 5cb769cec242c..0000000000000 --- a/config/initializers/kramdown_patch.rb +++ /dev/null @@ -1,25 +0,0 @@ -# frozen_string_literal: true -# -# This pulls in https://github.com/gettalong/kramdown/pull/708 for kramdown v2.3.0. -# Remove this file when that pull request is merged and released. -require 'kramdown/converter' -require 'kramdown/converter/syntax_highlighter/rouge' - -module Kramdown::Converter::SyntaxHighlighter - module Rouge - def self.formatter_class(opts = {}) - case formatter = opts[:formatter] - when Class - formatter - when /\A[[:upper:]][[:alnum:]_]*\z/ - ::Rouge::Formatters.const_get(formatter, false) - else - # Available in Rouge 2.0 or later - ::Rouge::Formatters::HTMLLegacy - end - rescue NameError - # Fallback to Rouge 1.x - ::Rouge::Formatters::HTML - end - end -end diff --git a/spec/initializers/kramdown_patch_spec.rb b/spec/lib/kramdown/kramdown_spec.rb similarity index 92% rename from spec/initializers/kramdown_patch_spec.rb rename to spec/lib/kramdown/kramdown_spec.rb index 49dda9252bbfa..986a8d9959e17 100644 --- a/spec/initializers/kramdown_patch_spec.rb +++ b/spec/lib/kramdown/kramdown_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -RSpec.describe 'Kramdown patch for syntax highlighting formatters' do +RSpec.describe 'Ensure kramdown detects invalid syntax highlighting formatters' do subject { Kramdown::Document.new(options + "\n" + code).to_html } let(:code) do -- GitLab