diff --git a/.github/workflows/check_changelog.yml b/.github/workflows/check_changelog.yml index 1e9febe..2c9b08f 100644 --- a/.github/workflows/check_changelog.yml +++ b/.github/workflows/check_changelog.yml @@ -1,13 +1,22 @@ name: Check Changelog on: - pull_request: - types: [opened, reopened, edited, synchronize] + pull_request: + types: [opened, reopened, edited, labeled, unlabeled, synchronize] + jobs: - build: + check-changelog: runs-on: ubuntu-latest + if: | + !contains(github.event.pull_request.body, '[skip changelog]') && + !contains(github.event.pull_request.body, '[changelog skip]') && + !contains(github.event.pull_request.body, '[skip ci]') && + !contains(github.event.pull_request.labels.*.name, 'skip changelog') && + !contains(github.event.pull_request.labels.*.name, 'dependencies') && + !contains(github.event.pull_request.labels.*.name, 'automation') steps: - - uses: actions/checkout@v1 - - name: Check that CHANGELOG is touched - run: | - cat $GITHUB_EVENT_PATH | jq .pull_request.title | grep -i '\[\(\(changelog skip\)\|\(ci skip\)\)\]' || git diff remotes/origin/${{ github.base_ref }} --name-only | grep CHANGELOG.md + - uses: actions/checkout@v3 + - name: Check that CHANGELOG is touched + run: | + git fetch origin ${{ github.base_ref }} --depth 1 && \ + git diff remotes/origin/${{ github.base_ref }} --name-only | grep CHANGELOG.md diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..aac9993 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,36 @@ +name: CI + +on: + - push + - pull_request + +jobs: + test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + ruby: + - '2.7' + - '3.0' + - '3.1' + # - 'head' + gemfile: + - gemfiles/rails_6_0.gemfile + - gemfiles/rails_6_1.gemfile + - gemfiles/rails_7_0.gemfile + # - gemfile: gemfiles/rails_head.gemfile + steps: + - name: Checkout code + uses: actions/checkout@v3 + - name: Set up Ruby + env: + BUNDLE_GEMFILE: ${{ matrix.gemfile }} + uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby }} + bundler-cache: true + - name: Run test + env: + BUNDLE_GEMFILE: ${{ matrix.gemfile }} + run: bundle exec rake test diff --git a/Appraisals b/Appraisals index 76a289a..c32c53f 100644 --- a/Appraisals +++ b/Appraisals @@ -1,24 +1,28 @@ -appraise "rails-5" do - gem "rails", "5.0.7.2" - gem "sqlite3", "~> 1.3.6" +appraise "rails_5_2" do + gem "rails", "5.2.3" + gem "sqlite3", "~> 1.4" + gem 'net-smtp', require: false end -appraise "rails-51" do - gem "rails", "5.1.7" - gem "sqlite3", "~> 1.3.6" +appraise "rails_6_0" do + gem "rails", "6.0.5" + gem "sqlite3", "~> 1.4" + gem 'net-smtp', require: false end -appraise "rails-52" do - gem "rails", "5.2.3" - gem "sqlite3", "~> 1.3.6" +appraise "rails_6_1" do + gem "rails", "6.1.6" + gem "sqlite3", "~> 1.4" + gem 'net-smtp', require: false end -appraise "rails-6" do - gem "rails", "6.0.0" +appraise "rails_7_0" do + gem "rails", "7.0.3" gem "sqlite3", "~> 1.4" end -appraise "rails-head" do +appraise "rails_head" do gem "rails", git: "https://github.com/rails/rails.git" + gem "railties", git: "https://github.com/rails/rails.git" gem "sqlite3", "~> 1.4" end diff --git a/CHANGELOG.md b/CHANGELOG.md index 86144e2..178e78a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ ## HEAD (Unreleased) +- Add support for Rails 7 (https://github.com/zombocom/maildown/pull/61) + ## 3.3.0 - Delay loading of ActionMailer to fix support for `delivery_job` config (https://github.com/codetriage/maildown/pull/56) diff --git a/README.md b/README.md index ca8f7b0..07b7320 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,16 @@ # Maildown -[Markdown](http://daringfireball.net/projects/markdown/syntax) for your ActionMailer-generated emails. Supports Rails 5.0+ +[Markdown](http://daringfireball.net/projects/markdown/syntax) for your ActionMailer-generated emails. Also due to the way it's implemented it extends markdown support for any other view you want to look for. It could be called `markdown-rails` or something, but this is what I named the gem and I'm sticking with it. [![Build Status](https://travis-ci.org/codetriage/maildown.svg?branch=schneems%2F2.0.0)](https://travis-ci.org/schneems/maildown) [![Help Contribute to Open Source](https://www.codetriage.com/schneems/maildown/badges/users.svg)](https://www.codetriage.com/schneems/maildown) +## Maintenance policy + +Follows the Rails maintenance policy https://guides.rubyonrails.org/maintenance_policy.html under "Severe Security Issues". Versions of Rails still under maintenance for Severe Security Issues should be expected to work with Maildown. + ## What? - Fact: You should always send emails in `text/html` and `text/plain` at the same time @@ -203,21 +207,22 @@ Features we have that they don't: - Their gem is unmaintained, but honestly it's pretty simple and will keep working for some time. - We have way more monkeypatches than they do 🙀. - ## Test -We use the appraisal gem to generate Gemfiles. Install all dependencies with this: +We use the [appraisal gem](https://github.com/thoughtbot/appraisal) to generate Gemfiles. Install all dependencies with this: ``` -$ appraisal install +$ bundle exec appraisal install ``` Run a specific suite like this: ``` -$ BUNDLE_GEMFILE=gemfiles/rails_6.gemfile bundle exec rake test +$ BUNDLE_GEMFILE=gemfiles/rails_7_0.gemfile bundle exec rake test ``` +To add a new test case modify the `Appraisals` file in root and then re-run `bundle exec appraisal install`. + ## License MIT diff --git a/gemfiles/rails_5.gemfile.lock b/gemfiles/rails_5.gemfile.lock deleted file mode 100644 index 1c1d932..0000000 --- a/gemfiles/rails_5.gemfile.lock +++ /dev/null @@ -1,137 +0,0 @@ -PATH - remote: .. - specs: - maildown (3.2.0) - actionmailer (>= 4.0.0) - kramdown-parser-gfm - -GEM - remote: https://rubygems.org/ - specs: - actioncable (5.0.7.2) - actionpack (= 5.0.7.2) - nio4r (>= 1.2, < 3.0) - websocket-driver (~> 0.6.1) - actionmailer (5.0.7.2) - actionpack (= 5.0.7.2) - actionview (= 5.0.7.2) - activejob (= 5.0.7.2) - mail (~> 2.5, >= 2.5.4) - rails-dom-testing (~> 2.0) - actionpack (5.0.7.2) - actionview (= 5.0.7.2) - activesupport (= 5.0.7.2) - rack (~> 2.0) - rack-test (~> 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.0.2) - actionview (5.0.7.2) - activesupport (= 5.0.7.2) - builder (~> 3.1) - erubis (~> 2.7.0) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.0.3) - activejob (5.0.7.2) - activesupport (= 5.0.7.2) - globalid (>= 0.3.6) - activemodel (5.0.7.2) - activesupport (= 5.0.7.2) - activerecord (5.0.7.2) - activemodel (= 5.0.7.2) - activesupport (= 5.0.7.2) - arel (~> 7.0) - activesupport (5.0.7.2) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 0.7, < 2) - minitest (~> 5.1) - tzinfo (~> 1.1) - appraisal (2.2.0) - bundler - rake - thor (>= 0.14.0) - arel (7.1.4) - builder (3.2.3) - concurrent-ruby (1.1.5) - crass (1.0.4) - erubis (2.7.0) - globalid (0.4.2) - activesupport (>= 4.2.0) - i18n (1.6.0) - concurrent-ruby (~> 1.0) - kramdown (2.3.0) - rexml - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) - loofah (2.2.3) - crass (~> 1.0.2) - nokogiri (>= 1.5.9) - m (1.5.1) - method_source (>= 0.6.7) - rake (>= 0.9.2.2) - mail (2.7.1) - mini_mime (>= 0.1.1) - method_source (0.9.2) - mini_mime (1.0.1) - mini_portile2 (2.4.0) - minitest (5.11.3) - nio4r (2.3.1) - nokogiri (1.10.3) - mini_portile2 (~> 2.4.0) - rack (2.0.7) - rack-test (0.6.3) - rack (>= 1.0) - rails (5.0.7.2) - actioncable (= 5.0.7.2) - actionmailer (= 5.0.7.2) - actionpack (= 5.0.7.2) - actionview (= 5.0.7.2) - activejob (= 5.0.7.2) - activemodel (= 5.0.7.2) - activerecord (= 5.0.7.2) - activesupport (= 5.0.7.2) - bundler (>= 1.3.0) - railties (= 5.0.7.2) - sprockets-rails (>= 2.0.0) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) - nokogiri (>= 1.6) - rails-html-sanitizer (1.0.4) - loofah (~> 2.2, >= 2.2.2) - railties (5.0.7.2) - actionpack (= 5.0.7.2) - activesupport (= 5.0.7.2) - method_source - rake (>= 0.8.7) - thor (>= 0.18.1, < 2.0) - rake (12.3.2) - rexml (3.2.4) - sprockets (3.7.2) - concurrent-ruby (~> 1.0) - rack (> 1, < 3) - sprockets-rails (3.2.1) - actionpack (>= 4.0) - activesupport (>= 4.0) - sprockets (>= 3.0.0) - sqlite3 (1.3.13) - thor (0.20.3) - thread_safe (0.3.6) - tzinfo (1.2.5) - thread_safe (~> 0.1) - websocket-driver (0.6.5) - websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.3) - -PLATFORMS - ruby - -DEPENDENCIES - appraisal - m - maildown! - rails (= 5.0.7.2) - railties - rake - sqlite3 (~> 1.3.6) - -BUNDLED WITH - 2.1.4 diff --git a/gemfiles/rails_51.gemfile.lock b/gemfiles/rails_51.gemfile.lock deleted file mode 100644 index 068b86b..0000000 --- a/gemfiles/rails_51.gemfile.lock +++ /dev/null @@ -1,137 +0,0 @@ -PATH - remote: .. - specs: - maildown (3.2.0) - actionmailer (>= 4.0.0) - kramdown-parser-gfm - -GEM - remote: https://rubygems.org/ - specs: - actioncable (5.1.7) - actionpack (= 5.1.7) - nio4r (~> 2.0) - websocket-driver (~> 0.6.1) - actionmailer (5.1.7) - actionpack (= 5.1.7) - actionview (= 5.1.7) - activejob (= 5.1.7) - mail (~> 2.5, >= 2.5.4) - rails-dom-testing (~> 2.0) - actionpack (5.1.7) - actionview (= 5.1.7) - activesupport (= 5.1.7) - rack (~> 2.0) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.0.2) - actionview (5.1.7) - activesupport (= 5.1.7) - builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.0.3) - activejob (5.1.7) - activesupport (= 5.1.7) - globalid (>= 0.3.6) - activemodel (5.1.7) - activesupport (= 5.1.7) - activerecord (5.1.7) - activemodel (= 5.1.7) - activesupport (= 5.1.7) - arel (~> 8.0) - activesupport (5.1.7) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 0.7, < 2) - minitest (~> 5.1) - tzinfo (~> 1.1) - appraisal (2.2.0) - bundler - rake - thor (>= 0.14.0) - arel (8.0.0) - builder (3.2.3) - concurrent-ruby (1.1.5) - crass (1.0.4) - erubi (1.8.0) - globalid (0.4.2) - activesupport (>= 4.2.0) - i18n (1.6.0) - concurrent-ruby (~> 1.0) - kramdown (2.3.0) - rexml - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) - loofah (2.2.3) - crass (~> 1.0.2) - nokogiri (>= 1.5.9) - m (1.5.1) - method_source (>= 0.6.7) - rake (>= 0.9.2.2) - mail (2.7.1) - mini_mime (>= 0.1.1) - method_source (0.9.2) - mini_mime (1.0.1) - mini_portile2 (2.4.0) - minitest (5.11.3) - nio4r (2.3.1) - nokogiri (1.10.3) - mini_portile2 (~> 2.4.0) - rack (2.0.7) - rack-test (1.1.0) - rack (>= 1.0, < 3) - rails (5.1.7) - actioncable (= 5.1.7) - actionmailer (= 5.1.7) - actionpack (= 5.1.7) - actionview (= 5.1.7) - activejob (= 5.1.7) - activemodel (= 5.1.7) - activerecord (= 5.1.7) - activesupport (= 5.1.7) - bundler (>= 1.3.0) - railties (= 5.1.7) - sprockets-rails (>= 2.0.0) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) - nokogiri (>= 1.6) - rails-html-sanitizer (1.0.4) - loofah (~> 2.2, >= 2.2.2) - railties (5.1.7) - actionpack (= 5.1.7) - activesupport (= 5.1.7) - method_source - rake (>= 0.8.7) - thor (>= 0.18.1, < 2.0) - rake (12.3.2) - rexml (3.2.4) - sprockets (3.7.2) - concurrent-ruby (~> 1.0) - rack (> 1, < 3) - sprockets-rails (3.2.1) - actionpack (>= 4.0) - activesupport (>= 4.0) - sprockets (>= 3.0.0) - sqlite3 (1.3.13) - thor (0.20.3) - thread_safe (0.3.6) - tzinfo (1.2.5) - thread_safe (~> 0.1) - websocket-driver (0.6.5) - websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.3) - -PLATFORMS - ruby - -DEPENDENCIES - appraisal - m - maildown! - rails (= 5.1.7) - railties - rake - sqlite3 (~> 1.3.6) - -BUNDLED WITH - 2.1.4 diff --git a/gemfiles/rails_52.gemfile b/gemfiles/rails_5_2.gemfile similarity index 70% rename from gemfiles/rails_52.gemfile rename to gemfiles/rails_5_2.gemfile index 10793d5..abfcf2e 100644 --- a/gemfiles/rails_52.gemfile +++ b/gemfiles/rails_5_2.gemfile @@ -4,6 +4,7 @@ source "https://rubygems.org" gem "appraisal" gem "rails", "5.2.3" -gem "sqlite3", "~> 1.3.6" +gem "sqlite3", "~> 1.4" +gem "net-smtp", require: false gemspec path: "../" diff --git a/gemfiles/rails_52.gemfile.lock b/gemfiles/rails_5_2.gemfile.lock similarity index 70% rename from gemfiles/rails_52.gemfile.lock rename to gemfiles/rails_5_2.gemfile.lock index c3f51a7..65e153a 100644 --- a/gemfiles/rails_52.gemfile.lock +++ b/gemfiles/rails_5_2.gemfile.lock @@ -1,7 +1,7 @@ PATH remote: .. specs: - maildown (3.2.0) + maildown (3.3.0) actionmailer (>= 4.0.0) kramdown-parser-gfm @@ -49,42 +49,53 @@ GEM i18n (>= 0.7, < 2) minitest (~> 5.1) tzinfo (~> 1.1) - appraisal (2.2.0) + appraisal (2.4.1) bundler rake thor (>= 0.14.0) arel (9.0.0) - builder (3.2.3) - concurrent-ruby (1.1.5) - crass (1.0.4) - erubi (1.8.0) - globalid (0.4.2) - activesupport (>= 4.2.0) - i18n (1.6.0) + builder (3.2.4) + concurrent-ruby (1.1.10) + crass (1.0.6) + digest (3.1.0) + erubi (1.10.0) + globalid (1.0.0) + activesupport (>= 5.0) + i18n (1.10.0) concurrent-ruby (~> 1.0) - kramdown (2.3.0) + kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) - loofah (2.2.3) + loofah (2.18.0) crass (~> 1.0.2) nokogiri (>= 1.5.9) - m (1.5.1) + m (1.6.0) method_source (>= 0.6.7) rake (>= 0.9.2.2) mail (2.7.1) mini_mime (>= 0.1.1) marcel (0.3.3) mimemagic (~> 0.3.2) - method_source (0.9.2) - mimemagic (0.3.3) - mini_mime (1.0.1) - mini_portile2 (2.4.0) - minitest (5.11.3) - nio4r (2.3.1) - nokogiri (1.10.3) - mini_portile2 (~> 2.4.0) - rack (2.0.7) + method_source (1.0.0) + mimemagic (0.3.10) + nokogiri (~> 1) + rake + mini_mime (1.1.2) + minitest (5.15.0) + net-protocol (0.1.3) + timeout + net-smtp (0.3.1) + digest + net-protocol + timeout + nio4r (2.5.8) + nokogiri (1.13.6-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.13.6-x86_64-linux) + racc (~> 1.4) + racc (1.6.0) + rack (2.2.3.1) rack-test (1.1.0) rack (>= 1.0, < 3) rails (5.2.3) @@ -103,43 +114,46 @@ GEM rails-dom-testing (2.0.3) activesupport (>= 4.2.0) nokogiri (>= 1.6) - rails-html-sanitizer (1.0.4) - loofah (~> 2.2, >= 2.2.2) + rails-html-sanitizer (1.4.3) + loofah (~> 2.3) railties (5.2.3) actionpack (= 5.2.3) activesupport (= 5.2.3) method_source rake (>= 0.8.7) thor (>= 0.19.0, < 2.0) - rake (12.3.2) - rexml (3.2.4) - sprockets (3.7.2) + rake (13.0.6) + rexml (3.2.5) + sprockets (4.0.3) concurrent-ruby (~> 1.0) rack (> 1, < 3) - sprockets-rails (3.2.1) - actionpack (>= 4.0) - activesupport (>= 4.0) + sprockets-rails (3.4.2) + actionpack (>= 5.2) + activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.3.13) - thor (0.20.3) + sqlite3 (1.4.2) + thor (1.2.1) thread_safe (0.3.6) - tzinfo (1.2.5) + timeout (0.3.0) + tzinfo (1.2.9) thread_safe (~> 0.1) - websocket-driver (0.7.0) + websocket-driver (0.7.5) websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.3) + websocket-extensions (0.1.5) PLATFORMS - ruby + x86_64-darwin-20 + x86_64-linux DEPENDENCIES appraisal m maildown! + net-smtp rails (= 5.2.3) railties rake - sqlite3 (~> 1.3.6) + sqlite3 (~> 1.4) BUNDLED WITH - 2.1.4 + 2.3.15 diff --git a/gemfiles/rails_6.gemfile.lock b/gemfiles/rails_6.gemfile.lock deleted file mode 100644 index b5a73f4..0000000 --- a/gemfiles/rails_6.gemfile.lock +++ /dev/null @@ -1,161 +0,0 @@ -PATH - remote: .. - specs: - maildown (3.2.0) - actionmailer (>= 4.0.0) - kramdown-parser-gfm - -GEM - remote: https://rubygems.org/ - specs: - actioncable (6.0.0) - actionpack (= 6.0.0) - nio4r (~> 2.0) - websocket-driver (>= 0.6.1) - actionmailbox (6.0.0) - actionpack (= 6.0.0) - activejob (= 6.0.0) - activerecord (= 6.0.0) - activestorage (= 6.0.0) - activesupport (= 6.0.0) - mail (>= 2.7.1) - actionmailer (6.0.0) - actionpack (= 6.0.0) - actionview (= 6.0.0) - activejob (= 6.0.0) - mail (~> 2.5, >= 2.5.4) - rails-dom-testing (~> 2.0) - actionpack (6.0.0) - actionview (= 6.0.0) - activesupport (= 6.0.0) - rack (~> 2.0) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (6.0.0) - actionpack (= 6.0.0) - activerecord (= 6.0.0) - activestorage (= 6.0.0) - activesupport (= 6.0.0) - nokogiri (>= 1.8.5) - actionview (6.0.0) - activesupport (= 6.0.0) - builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.0.0) - activesupport (= 6.0.0) - globalid (>= 0.3.6) - activemodel (6.0.0) - activesupport (= 6.0.0) - activerecord (6.0.0) - activemodel (= 6.0.0) - activesupport (= 6.0.0) - activestorage (6.0.0) - actionpack (= 6.0.0) - activejob (= 6.0.0) - activerecord (= 6.0.0) - marcel (~> 0.3.1) - activesupport (6.0.0) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 0.7, < 2) - minitest (~> 5.1) - tzinfo (~> 1.1) - zeitwerk (~> 2.1, >= 2.1.8) - appraisal (2.2.0) - bundler - rake - thor (>= 0.14.0) - builder (3.2.3) - concurrent-ruby (1.1.5) - crass (1.0.4) - erubi (1.9.0) - globalid (0.4.2) - activesupport (>= 4.2.0) - i18n (1.6.0) - concurrent-ruby (~> 1.0) - kramdown (2.3.0) - rexml - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) - loofah (2.3.0) - crass (~> 1.0.2) - nokogiri (>= 1.5.9) - m (1.5.1) - method_source (>= 0.6.7) - rake (>= 0.9.2.2) - mail (2.7.1) - mini_mime (>= 0.1.1) - marcel (0.3.3) - mimemagic (~> 0.3.2) - method_source (0.9.2) - mimemagic (0.3.3) - mini_mime (1.0.2) - mini_portile2 (2.4.0) - minitest (5.12.2) - nio4r (2.5.2) - nokogiri (1.10.4) - mini_portile2 (~> 2.4.0) - rack (2.0.7) - rack-test (1.1.0) - rack (>= 1.0, < 3) - rails (6.0.0) - actioncable (= 6.0.0) - actionmailbox (= 6.0.0) - actionmailer (= 6.0.0) - actionpack (= 6.0.0) - actiontext (= 6.0.0) - actionview (= 6.0.0) - activejob (= 6.0.0) - activemodel (= 6.0.0) - activerecord (= 6.0.0) - activestorage (= 6.0.0) - activesupport (= 6.0.0) - bundler (>= 1.3.0) - railties (= 6.0.0) - sprockets-rails (>= 2.0.0) - rails-dom-testing (2.0.3) - activesupport (>= 4.2.0) - nokogiri (>= 1.6) - rails-html-sanitizer (1.2.0) - loofah (~> 2.2, >= 2.2.2) - railties (6.0.0) - actionpack (= 6.0.0) - activesupport (= 6.0.0) - method_source - rake (>= 0.8.7) - thor (>= 0.20.3, < 2.0) - rake (13.0.0) - rexml (3.2.4) - sprockets (3.7.2) - concurrent-ruby (~> 1.0) - rack (> 1, < 3) - sprockets-rails (3.2.1) - actionpack (>= 4.0) - activesupport (>= 4.0) - sprockets (>= 3.0.0) - sqlite3 (1.4.1) - thor (0.20.3) - thread_safe (0.3.6) - tzinfo (1.2.5) - thread_safe (~> 0.1) - websocket-driver (0.7.1) - websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.4) - zeitwerk (2.1.10) - -PLATFORMS - ruby - -DEPENDENCIES - appraisal - m - maildown! - rails (= 6.0.0) - railties - rake - sqlite3 (~> 1.4) - -BUNDLED WITH - 2.1.4 diff --git a/gemfiles/rails_5.gemfile b/gemfiles/rails_6_0.gemfile similarity index 58% rename from gemfiles/rails_5.gemfile rename to gemfiles/rails_6_0.gemfile index 5c49817..b131fc3 100644 --- a/gemfiles/rails_5.gemfile +++ b/gemfiles/rails_6_0.gemfile @@ -3,7 +3,8 @@ source "https://rubygems.org" gem "appraisal" -gem "rails", "5.0.7.2" -gem "sqlite3", "~> 1.3.6" +gem "rails", "6.0.5" +gem "sqlite3", "~> 1.4" +gem "net-smtp", require: false gemspec path: "../" diff --git a/gemfiles/rails_6_0.gemfile.lock b/gemfiles/rails_6_0.gemfile.lock new file mode 100644 index 0000000..ac28527 --- /dev/null +++ b/gemfiles/rails_6_0.gemfile.lock @@ -0,0 +1,171 @@ +PATH + remote: .. + specs: + maildown (3.3.0) + actionmailer (>= 4.0.0) + kramdown-parser-gfm + +GEM + remote: https://rubygems.org/ + specs: + actioncable (6.0.5) + actionpack (= 6.0.5) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (6.0.5) + actionpack (= 6.0.5) + activejob (= 6.0.5) + activerecord (= 6.0.5) + activestorage (= 6.0.5) + activesupport (= 6.0.5) + mail (>= 2.7.1) + actionmailer (6.0.5) + actionpack (= 6.0.5) + actionview (= 6.0.5) + activejob (= 6.0.5) + mail (~> 2.5, >= 2.5.4) + rails-dom-testing (~> 2.0) + actionpack (6.0.5) + actionview (= 6.0.5) + activesupport (= 6.0.5) + rack (~> 2.0, >= 2.0.8) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (6.0.5) + actionpack (= 6.0.5) + activerecord (= 6.0.5) + activestorage (= 6.0.5) + activesupport (= 6.0.5) + nokogiri (>= 1.8.5) + actionview (6.0.5) + activesupport (= 6.0.5) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (6.0.5) + activesupport (= 6.0.5) + globalid (>= 0.3.6) + activemodel (6.0.5) + activesupport (= 6.0.5) + activerecord (6.0.5) + activemodel (= 6.0.5) + activesupport (= 6.0.5) + activestorage (6.0.5) + actionpack (= 6.0.5) + activejob (= 6.0.5) + activerecord (= 6.0.5) + marcel (~> 1.0) + activesupport (6.0.5) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 0.7, < 2) + minitest (~> 5.1) + tzinfo (~> 1.1) + zeitwerk (~> 2.2, >= 2.2.2) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + builder (3.2.4) + concurrent-ruby (1.1.10) + crass (1.0.6) + digest (3.1.0) + erubi (1.10.0) + globalid (1.0.0) + activesupport (>= 5.0) + i18n (1.10.0) + concurrent-ruby (~> 1.0) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + loofah (2.18.0) + crass (~> 1.0.2) + nokogiri (>= 1.5.9) + m (1.6.0) + method_source (>= 0.6.7) + rake (>= 0.9.2.2) + mail (2.7.1) + mini_mime (>= 0.1.1) + marcel (1.0.2) + method_source (1.0.0) + mini_mime (1.1.2) + minitest (5.15.0) + net-protocol (0.1.3) + timeout + net-smtp (0.3.1) + digest + net-protocol + timeout + nio4r (2.5.8) + nokogiri (1.13.6-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.13.6-x86_64-linux) + racc (~> 1.4) + racc (1.6.0) + rack (2.2.3.1) + rack-test (1.1.0) + rack (>= 1.0, < 3) + rails (6.0.5) + actioncable (= 6.0.5) + actionmailbox (= 6.0.5) + actionmailer (= 6.0.5) + actionpack (= 6.0.5) + actiontext (= 6.0.5) + actionview (= 6.0.5) + activejob (= 6.0.5) + activemodel (= 6.0.5) + activerecord (= 6.0.5) + activestorage (= 6.0.5) + activesupport (= 6.0.5) + bundler (>= 1.3.0) + railties (= 6.0.5) + sprockets-rails (>= 2.0.0) + rails-dom-testing (2.0.3) + activesupport (>= 4.2.0) + nokogiri (>= 1.6) + rails-html-sanitizer (1.4.3) + loofah (~> 2.3) + railties (6.0.5) + actionpack (= 6.0.5) + activesupport (= 6.0.5) + method_source + rake (>= 0.8.7) + thor (>= 0.20.3, < 2.0) + rake (13.0.6) + rexml (3.2.5) + sprockets (4.0.3) + concurrent-ruby (~> 1.0) + rack (> 1, < 3) + sprockets-rails (3.4.2) + actionpack (>= 5.2) + activesupport (>= 5.2) + sprockets (>= 3.0.0) + sqlite3 (1.4.2) + thor (1.2.1) + thread_safe (0.3.6) + timeout (0.3.0) + tzinfo (1.2.9) + thread_safe (~> 0.1) + websocket-driver (0.7.5) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + zeitwerk (2.5.4) + +PLATFORMS + x86_64-darwin-20 + x86_64-linux + +DEPENDENCIES + appraisal + m + maildown! + net-smtp + rails (= 6.0.5) + railties + rake + sqlite3 (~> 1.4) + +BUNDLED WITH + 2.3.15 diff --git a/gemfiles/rails_51.gemfile b/gemfiles/rails_6_1.gemfile similarity index 58% rename from gemfiles/rails_51.gemfile rename to gemfiles/rails_6_1.gemfile index 298664d..db67f39 100644 --- a/gemfiles/rails_51.gemfile +++ b/gemfiles/rails_6_1.gemfile @@ -3,7 +3,8 @@ source "https://rubygems.org" gem "appraisal" -gem "rails", "5.1.7" -gem "sqlite3", "~> 1.3.6" +gem "rails", "6.1.6" +gem "sqlite3", "~> 1.4" +gem "net-smtp", require: false gemspec path: "../" diff --git a/gemfiles/rails_6_1.gemfile.lock b/gemfiles/rails_6_1.gemfile.lock new file mode 100644 index 0000000..f081359 --- /dev/null +++ b/gemfiles/rails_6_1.gemfile.lock @@ -0,0 +1,174 @@ +PATH + remote: .. + specs: + maildown (3.3.0) + actionmailer (>= 4.0.0) + kramdown-parser-gfm + +GEM + remote: https://rubygems.org/ + specs: + actioncable (6.1.6) + actionpack (= 6.1.6) + activesupport (= 6.1.6) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (6.1.6) + actionpack (= 6.1.6) + activejob (= 6.1.6) + activerecord (= 6.1.6) + activestorage (= 6.1.6) + activesupport (= 6.1.6) + mail (>= 2.7.1) + actionmailer (6.1.6) + actionpack (= 6.1.6) + actionview (= 6.1.6) + activejob (= 6.1.6) + activesupport (= 6.1.6) + mail (~> 2.5, >= 2.5.4) + rails-dom-testing (~> 2.0) + actionpack (6.1.6) + actionview (= 6.1.6) + activesupport (= 6.1.6) + rack (~> 2.0, >= 2.0.9) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (6.1.6) + actionpack (= 6.1.6) + activerecord (= 6.1.6) + activestorage (= 6.1.6) + activesupport (= 6.1.6) + nokogiri (>= 1.8.5) + actionview (6.1.6) + activesupport (= 6.1.6) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (6.1.6) + activesupport (= 6.1.6) + globalid (>= 0.3.6) + activemodel (6.1.6) + activesupport (= 6.1.6) + activerecord (6.1.6) + activemodel (= 6.1.6) + activesupport (= 6.1.6) + activestorage (6.1.6) + actionpack (= 6.1.6) + activejob (= 6.1.6) + activerecord (= 6.1.6) + activesupport (= 6.1.6) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (6.1.6) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + zeitwerk (~> 2.3) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + builder (3.2.4) + concurrent-ruby (1.1.10) + crass (1.0.6) + digest (3.1.0) + erubi (1.10.0) + globalid (1.0.0) + activesupport (>= 5.0) + i18n (1.10.0) + concurrent-ruby (~> 1.0) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + loofah (2.18.0) + crass (~> 1.0.2) + nokogiri (>= 1.5.9) + m (1.6.0) + method_source (>= 0.6.7) + rake (>= 0.9.2.2) + mail (2.7.1) + mini_mime (>= 0.1.1) + marcel (1.0.2) + method_source (1.0.0) + mini_mime (1.1.2) + minitest (5.15.0) + net-protocol (0.1.3) + timeout + net-smtp (0.3.1) + digest + net-protocol + timeout + nio4r (2.5.8) + nokogiri (1.13.6-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.13.6-x86_64-linux) + racc (~> 1.4) + racc (1.6.0) + rack (2.2.3.1) + rack-test (1.1.0) + rack (>= 1.0, < 3) + rails (6.1.6) + actioncable (= 6.1.6) + actionmailbox (= 6.1.6) + actionmailer (= 6.1.6) + actionpack (= 6.1.6) + actiontext (= 6.1.6) + actionview (= 6.1.6) + activejob (= 6.1.6) + activemodel (= 6.1.6) + activerecord (= 6.1.6) + activestorage (= 6.1.6) + activesupport (= 6.1.6) + bundler (>= 1.15.0) + railties (= 6.1.6) + sprockets-rails (>= 2.0.0) + rails-dom-testing (2.0.3) + activesupport (>= 4.2.0) + nokogiri (>= 1.6) + rails-html-sanitizer (1.4.3) + loofah (~> 2.3) + railties (6.1.6) + actionpack (= 6.1.6) + activesupport (= 6.1.6) + method_source + rake (>= 12.2) + thor (~> 1.0) + rake (13.0.6) + rexml (3.2.5) + sprockets (4.0.3) + concurrent-ruby (~> 1.0) + rack (> 1, < 3) + sprockets-rails (3.4.2) + actionpack (>= 5.2) + activesupport (>= 5.2) + sprockets (>= 3.0.0) + sqlite3 (1.4.2) + thor (1.2.1) + timeout (0.3.0) + tzinfo (2.0.4) + concurrent-ruby (~> 1.0) + websocket-driver (0.7.5) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + zeitwerk (2.5.4) + +PLATFORMS + x86_64-darwin-20 + x86_64-linux + +DEPENDENCIES + appraisal + m + maildown! + net-smtp + rails (= 6.1.6) + railties + rake + sqlite3 (~> 1.4) + +BUNDLED WITH + 2.3.15 diff --git a/gemfiles/rails_6.gemfile b/gemfiles/rails_7_0.gemfile similarity index 86% rename from gemfiles/rails_6.gemfile rename to gemfiles/rails_7_0.gemfile index 3de0970..28ad8cf 100644 --- a/gemfiles/rails_6.gemfile +++ b/gemfiles/rails_7_0.gemfile @@ -3,7 +3,7 @@ source "https://rubygems.org" gem "appraisal" -gem "rails", "6.0.0" +gem "rails", "7.0.3" gem "sqlite3", "~> 1.4" gemspec path: "../" diff --git a/gemfiles/rails_7_0.gemfile.lock b/gemfiles/rails_7_0.gemfile.lock new file mode 100644 index 0000000..a67e56e --- /dev/null +++ b/gemfiles/rails_7_0.gemfile.lock @@ -0,0 +1,181 @@ +PATH + remote: .. + specs: + maildown (3.3.0) + actionmailer (>= 4.0.0) + kramdown-parser-gfm + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.0.3) + actionpack (= 7.0.3) + activesupport (= 7.0.3) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (7.0.3) + actionpack (= 7.0.3) + activejob (= 7.0.3) + activerecord (= 7.0.3) + activestorage (= 7.0.3) + activesupport (= 7.0.3) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.0.3) + actionpack (= 7.0.3) + actionview (= 7.0.3) + activejob (= 7.0.3) + activesupport (= 7.0.3) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.0) + actionpack (7.0.3) + actionview (= 7.0.3) + activesupport (= 7.0.3) + rack (~> 2.0, >= 2.2.0) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.3) + actionpack (= 7.0.3) + activerecord (= 7.0.3) + activestorage (= 7.0.3) + activesupport (= 7.0.3) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.0.3) + activesupport (= 7.0.3) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.0.3) + activesupport (= 7.0.3) + globalid (>= 0.3.6) + activemodel (7.0.3) + activesupport (= 7.0.3) + activerecord (7.0.3) + activemodel (= 7.0.3) + activesupport (= 7.0.3) + activestorage (7.0.3) + actionpack (= 7.0.3) + activejob (= 7.0.3) + activerecord (= 7.0.3) + activesupport (= 7.0.3) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.0.3) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + builder (3.2.4) + concurrent-ruby (1.1.10) + crass (1.0.6) + digest (3.1.0) + erubi (1.10.0) + globalid (1.0.0) + activesupport (>= 5.0) + i18n (1.10.0) + concurrent-ruby (~> 1.0) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + loofah (2.18.0) + crass (~> 1.0.2) + nokogiri (>= 1.5.9) + m (1.6.0) + method_source (>= 0.6.7) + rake (>= 0.9.2.2) + mail (2.7.1) + mini_mime (>= 0.1.1) + marcel (1.0.2) + method_source (1.0.0) + mini_mime (1.1.2) + minitest (5.15.0) + net-imap (0.2.3) + digest + net-protocol + strscan + net-pop (0.1.1) + digest + net-protocol + timeout + net-protocol (0.1.3) + timeout + net-smtp (0.3.1) + digest + net-protocol + timeout + nio4r (2.5.8) + nokogiri (1.13.6-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.13.6-x86_64-linux) + racc (~> 1.4) + racc (1.6.0) + rack (2.2.3.1) + rack-test (1.1.0) + rack (>= 1.0, < 3) + rails (7.0.3) + actioncable (= 7.0.3) + actionmailbox (= 7.0.3) + actionmailer (= 7.0.3) + actionpack (= 7.0.3) + actiontext (= 7.0.3) + actionview (= 7.0.3) + activejob (= 7.0.3) + activemodel (= 7.0.3) + activerecord (= 7.0.3) + activestorage (= 7.0.3) + activesupport (= 7.0.3) + bundler (>= 1.15.0) + railties (= 7.0.3) + rails-dom-testing (2.0.3) + activesupport (>= 4.2.0) + nokogiri (>= 1.6) + rails-html-sanitizer (1.4.3) + loofah (~> 2.3) + railties (7.0.3) + actionpack (= 7.0.3) + activesupport (= 7.0.3) + method_source + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) + rake (13.0.6) + rexml (3.2.5) + sqlite3 (1.4.2) + strscan (3.0.3) + thor (1.2.1) + timeout (0.3.0) + tzinfo (2.0.4) + concurrent-ruby (~> 1.0) + websocket-driver (0.7.5) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + zeitwerk (2.5.4) + +PLATFORMS + x86_64-darwin-20 + x86_64-linux + +DEPENDENCIES + appraisal + m + maildown! + rails (= 7.0.3) + railties + rake + sqlite3 (~> 1.4) + +BUNDLED WITH + 2.3.15 diff --git a/gemfiles/rails_head.gemfile b/gemfiles/rails_head.gemfile index 3355b74..ee70e62 100644 --- a/gemfiles/rails_head.gemfile +++ b/gemfiles/rails_head.gemfile @@ -4,6 +4,7 @@ source "https://rubygems.org" gem "appraisal" gem "rails", git: "https://github.com/rails/rails.git" +gem "railties", git: "https://github.com/rails/rails.git" gem "sqlite3", "~> 1.4" gemspec path: "../" diff --git a/gemfiles/rails_head.gemfile.lock b/gemfiles/rails_head.gemfile.lock index 9bc5387..f3a4632 100644 --- a/gemfiles/rails_head.gemfile.lock +++ b/gemfiles/rails_head.gemfile.lock @@ -1,154 +1,176 @@ GIT remote: https://github.com/rails/rails.git - revision: 85a8bc644be69908f05740a5886ec19cd3679df5 + revision: 7c1165c8c8752a84a9d02ef06fccbf113b8ff6b0 specs: - actioncable (6.1.0.alpha) - actionpack (= 6.1.0.alpha) + actioncable (7.1.0.alpha) + actionpack (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.0.alpha) - actionpack (= 6.1.0.alpha) - activejob (= 6.1.0.alpha) - activerecord (= 6.1.0.alpha) - activestorage (= 6.1.0.alpha) - activesupport (= 6.1.0.alpha) + zeitwerk (~> 2.5) + actionmailbox (7.1.0.alpha) + actionpack (= 7.1.0.alpha) + activejob (= 7.1.0.alpha) + activerecord (= 7.1.0.alpha) + activestorage (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) mail (>= 2.7.1) - actionmailer (6.1.0.alpha) - actionpack (= 6.1.0.alpha) - actionview (= 6.1.0.alpha) - activejob (= 6.1.0.alpha) + net-imap + net-pop + net-smtp + actionmailer (7.1.0.alpha) + actionpack (= 7.1.0.alpha) + actionview (= 7.1.0.alpha) + activejob (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp rails-dom-testing (~> 2.0) - actionpack (6.1.0.alpha) - actionview (= 6.1.0.alpha) - activesupport (= 6.1.0.alpha) - rack (~> 2.0) + actionpack (7.1.0.alpha) + actionview (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) + rack (~> 2.0, >= 2.2.0) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.0.2) - actiontext (6.1.0.alpha) - actionpack (= 6.1.0.alpha) - activerecord (= 6.1.0.alpha) - activestorage (= 6.1.0.alpha) - activesupport (= 6.1.0.alpha) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.1.0.alpha) + actionpack (= 7.1.0.alpha) + activerecord (= 7.1.0.alpha) + activestorage (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) + globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (6.1.0.alpha) - activesupport (= 6.1.0.alpha) + actionview (7.1.0.alpha) + activesupport (= 7.1.0.alpha) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.0.3) - activejob (6.1.0.alpha) - activesupport (= 6.1.0.alpha) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.1.0.alpha) + activesupport (= 7.1.0.alpha) globalid (>= 0.3.6) - activemodel (6.1.0.alpha) - activesupport (= 6.1.0.alpha) - activerecord (6.1.0.alpha) - activemodel (= 6.1.0.alpha) - activesupport (= 6.1.0.alpha) - activestorage (6.1.0.alpha) - actionpack (= 6.1.0.alpha) - activejob (= 6.1.0.alpha) - activerecord (= 6.1.0.alpha) - marcel (~> 0.3.1) - activesupport (6.1.0.alpha) + activemodel (7.1.0.alpha) + activesupport (= 7.1.0.alpha) + activerecord (7.1.0.alpha) + activemodel (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) + activestorage (7.1.0.alpha) + actionpack (= 7.1.0.alpha) + activejob (= 7.1.0.alpha) + activerecord (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.1.0.alpha) concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 0.7, < 2) - minitest (~> 5.1) - tzinfo (~> 1.1) - zeitwerk (~> 2.1, >= 2.1.4) - rails (6.1.0.alpha) - actioncable (= 6.1.0.alpha) - actionmailbox (= 6.1.0.alpha) - actionmailer (= 6.1.0.alpha) - actionpack (= 6.1.0.alpha) - actiontext (= 6.1.0.alpha) - actionview (= 6.1.0.alpha) - activejob (= 6.1.0.alpha) - activemodel (= 6.1.0.alpha) - activerecord (= 6.1.0.alpha) - activestorage (= 6.1.0.alpha) - activesupport (= 6.1.0.alpha) - bundler (>= 1.3.0) - railties (= 6.1.0.alpha) - sprockets-rails (>= 2.0.0) - railties (6.1.0.alpha) - actionpack (= 6.1.0.alpha) - activesupport (= 6.1.0.alpha) + connection_pool (>= 2.2.5) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + rails (7.1.0.alpha) + actioncable (= 7.1.0.alpha) + actionmailbox (= 7.1.0.alpha) + actionmailer (= 7.1.0.alpha) + actionpack (= 7.1.0.alpha) + actiontext (= 7.1.0.alpha) + actionview (= 7.1.0.alpha) + activejob (= 7.1.0.alpha) + activemodel (= 7.1.0.alpha) + activerecord (= 7.1.0.alpha) + activestorage (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) + bundler (>= 1.15.0) + railties (= 7.1.0.alpha) + railties (7.1.0.alpha) + actionpack (= 7.1.0.alpha) + activesupport (= 7.1.0.alpha) method_source - rake (>= 0.8.7) - thor (>= 0.20.3, < 2.0) + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) PATH remote: .. specs: - maildown (3.2.0) + maildown (3.3.0) actionmailer (>= 4.0.0) kramdown-parser-gfm GEM remote: https://rubygems.org/ specs: - appraisal (2.2.0) + appraisal (2.4.1) bundler rake thor (>= 0.14.0) - builder (3.2.3) - concurrent-ruby (1.1.5) - crass (1.0.4) - erubi (1.8.0) - globalid (0.4.2) - activesupport (>= 4.2.0) - i18n (1.6.0) + builder (3.2.4) + concurrent-ruby (1.1.10) + connection_pool (2.2.5) + crass (1.0.6) + digest (3.1.0) + erubi (1.10.0) + globalid (1.0.0) + activesupport (>= 5.0) + i18n (1.10.0) concurrent-ruby (~> 1.0) - kramdown (2.3.0) + kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) - loofah (2.2.3) + loofah (2.18.0) crass (~> 1.0.2) nokogiri (>= 1.5.9) - m (1.5.1) + m (1.6.0) method_source (>= 0.6.7) rake (>= 0.9.2.2) mail (2.7.1) mini_mime (>= 0.1.1) - marcel (0.3.3) - mimemagic (~> 0.3.2) - method_source (0.9.2) - mimemagic (0.3.3) - mini_mime (1.0.1) - mini_portile2 (2.4.0) - minitest (5.11.3) - nio4r (2.3.1) - nokogiri (1.10.3) - mini_portile2 (~> 2.4.0) - rack (2.0.7) + marcel (1.0.2) + method_source (1.0.0) + mini_mime (1.1.2) + mini_portile2 (2.8.0) + minitest (5.15.0) + net-imap (0.2.3) + digest + net-protocol + strscan + net-pop (0.1.1) + digest + net-protocol + timeout + net-protocol (0.1.3) + timeout + net-smtp (0.3.1) + digest + net-protocol + timeout + nio4r (2.5.8) + nokogiri (1.13.6) + mini_portile2 (~> 2.8.0) + racc (~> 1.4) + racc (1.6.0) + rack (2.2.3.1) rack-test (1.1.0) rack (>= 1.0, < 3) rails-dom-testing (2.0.3) activesupport (>= 4.2.0) nokogiri (>= 1.6) - rails-html-sanitizer (1.0.4) - loofah (~> 2.2, >= 2.2.2) - rake (12.3.2) - rexml (3.2.4) - sprockets (3.7.2) + rails-html-sanitizer (1.4.3) + loofah (~> 2.3) + rake (13.0.6) + rexml (3.2.5) + sqlite3 (1.4.2) + strscan (3.0.3) + thor (1.2.1) + timeout (0.3.0) + tzinfo (2.0.4) concurrent-ruby (~> 1.0) - rack (> 1, < 3) - sprockets-rails (3.2.1) - actionpack (>= 4.0) - activesupport (>= 4.0) - sprockets (>= 3.0.0) - sqlite3 (1.4.1) - thor (0.20.3) - thread_safe (0.3.6) - tzinfo (1.2.5) - thread_safe (~> 0.1) - websocket-driver (0.7.0) + websocket-driver (0.7.5) websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.3) - zeitwerk (2.1.6) + websocket-extensions (0.1.5) + zeitwerk (2.5.4) PLATFORMS ruby @@ -158,9 +180,9 @@ DEPENDENCIES m maildown! rails! - railties + railties! rake sqlite3 (~> 1.4) BUNDLED WITH - 2.1.4 + 2.3.15 diff --git a/lib/maildown/ext/action_view.rb b/lib/maildown/ext/action_view.rb index 9d680ee..375e2ab 100644 --- a/lib/maildown/ext/action_view.rb +++ b/lib/maildown/ext/action_view.rb @@ -1,5 +1,20 @@ # frozen_string_literal: true +if !defined?(ActionView::OptimizedFileSystemResolver) + module ActionView + # https://github.com/codetriage/maildown/issues/59 + # + # extract_handler_and_format_and_variant was removed in https://github.com/rails/rails/commit/2be8d3ebf85e26e936a7717b968737ee333d95bd + # OptimizedFileSystemResolver was removed in https://github.com/rails/rails/commit/faac734387124c6d780dbfcfdab721b2f26ce865 + class OptimizedFileSystemResolver < FileSystemResolver + def extract_handler_and_format_and_variant(template) + details = @path_parser.parse(template) + [details.handler, details.format, details.variant] + end + end + end +end + # This monkeypatch allows the use of `.md.erb` file extensions # in addition to `.md+erb` and `.md` module ActionView diff --git a/test/dummy/app/assets/config/manifest.js b/test/dummy/app/assets/config/manifest.js new file mode 100644 index 0000000..6b49435 --- /dev/null +++ b/test/dummy/app/assets/config/manifest.js @@ -0,0 +1,2 @@ + //= link application.css + //= link application.js diff --git a/test/unit/ext_action_mailer_test.rb b/test/unit/ext_action_mailer_test.rb index 6fd2e0b..4dc1402 100644 --- a/test/unit/ext_action_mailer_test.rb +++ b/test/unit/ext_action_mailer_test.rb @@ -6,9 +6,5 @@ class ExtActionMailerTest < ActiveSupport::TestCase monkeypatch = ActionMailer::Base.instance_method(:each_template) path = monkeypatch.source_location.first assert_match "maildown/ext/action_mailer.rb", path - - monkeypatch = ActionView::OptimizedFileSystemResolver.instance_method(:extract_handler_and_format_and_variant) - path = monkeypatch.source_location.first - assert_match "maildown/ext/action_view.rb", path end end