premailer-rails 1.10.3 → 1.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +64 -0
  3. data/.gitignore +2 -2
  4. data/CHANGELOG.md +14 -0
  5. data/Gemfile +13 -13
  6. data/README.md +11 -9
  7. data/VERSION +1 -1
  8. data/examples/rails5/Gemfile +4 -0
  9. data/{example → examples/rails5}/Rakefile +1 -1
  10. data/{example → examples/rails5}/bin/rails +1 -1
  11. data/{example → examples/rails5}/config/application.rb +4 -1
  12. data/examples/rails5/config/boot.rb +3 -0
  13. data/{example → examples/rails5}/config/environment.rb +1 -1
  14. data/{example → examples/rails5}/config.ru +2 -1
  15. data/examples/rails6/.gitignore +16 -0
  16. data/examples/rails6/Gemfile +5 -0
  17. data/examples/rails6/README.md +10 -0
  18. data/examples/rails6/Rakefile +6 -0
  19. data/examples/rails6/app/assets/config/manifest.js +1 -0
  20. data/examples/rails6/app/assets/stylesheets/email.css +32 -0
  21. data/examples/rails6/app/mailers/example_mailer.rb +7 -0
  22. data/examples/rails6/app/views/example_mailer/test_message.html.erb +18 -0
  23. data/examples/rails6/bin/rails +4 -0
  24. data/examples/rails6/config/application.rb +15 -0
  25. data/examples/rails6/config/boot.rb +3 -0
  26. data/examples/rails6/config/environment.rb +5 -0
  27. data/examples/rails6/config/environments/development.rb +9 -0
  28. data/examples/rails6/config/environments/production.rb +9 -0
  29. data/examples/rails6/config/routes.rb +3 -0
  30. data/examples/rails6/config.ru +6 -0
  31. data/examples/rails6/test/mailers/previews/example_mailer_preview.rb +5 -0
  32. data/examples/rails7-propshaft/.gitignore +16 -0
  33. data/examples/rails7-propshaft/Gemfile +6 -0
  34. data/examples/rails7-propshaft/README.md +10 -0
  35. data/examples/rails7-propshaft/Rakefile +6 -0
  36. data/examples/rails7-propshaft/app/assets/stylesheets/email.css +32 -0
  37. data/examples/rails7-propshaft/app/mailers/example_mailer.rb +7 -0
  38. data/examples/rails7-propshaft/app/views/example_mailer/test_message.html.erb +18 -0
  39. data/examples/rails7-propshaft/bin/rails +4 -0
  40. data/examples/rails7-propshaft/config/application.rb +14 -0
  41. data/examples/rails7-propshaft/config/boot.rb +3 -0
  42. data/examples/rails7-propshaft/config/environment.rb +5 -0
  43. data/examples/rails7-propshaft/config/environments/development.rb +9 -0
  44. data/examples/rails7-propshaft/config/environments/production.rb +9 -0
  45. data/examples/rails7-propshaft/config/routes.rb +3 -0
  46. data/examples/rails7-propshaft/config.ru +6 -0
  47. data/examples/rails7-propshaft/test/mailers/previews/example_mailer_preview.rb +5 -0
  48. data/examples/rails7-sprockets/.gitignore +16 -0
  49. data/examples/rails7-sprockets/Gemfile +6 -0
  50. data/examples/rails7-sprockets/README.md +10 -0
  51. data/examples/rails7-sprockets/Rakefile +6 -0
  52. data/examples/rails7-sprockets/app/assets/config/manifest.js +1 -0
  53. data/examples/rails7-sprockets/app/assets/stylesheets/email.css +32 -0
  54. data/examples/rails7-sprockets/app/mailers/example_mailer.rb +7 -0
  55. data/examples/rails7-sprockets/app/views/example_mailer/test_message.html.erb +18 -0
  56. data/examples/rails7-sprockets/bin/rails +4 -0
  57. data/examples/rails7-sprockets/config/application.rb +14 -0
  58. data/examples/rails7-sprockets/config/boot.rb +3 -0
  59. data/examples/rails7-sprockets/config/environment.rb +5 -0
  60. data/examples/rails7-sprockets/config/environments/development.rb +9 -0
  61. data/examples/rails7-sprockets/config/environments/production.rb +9 -0
  62. data/examples/rails7-sprockets/config/routes.rb +3 -0
  63. data/examples/rails7-sprockets/config.ru +6 -0
  64. data/examples/rails7-sprockets/test/mailers/previews/example_mailer_preview.rb +5 -0
  65. data/lib/premailer/rails/css_helper.rb +3 -1
  66. data/lib/premailer/rails/css_loaders/asset_pipeline_loader.rb +5 -4
  67. data/lib/premailer/rails/css_loaders/network_loader.rb +1 -1
  68. data/lib/premailer/rails/css_loaders/propshaft_loader.rb +38 -0
  69. data/lib/premailer/rails/css_loaders.rb +1 -0
  70. data/lib/premailer/rails/hook.rb +2 -6
  71. data/lib/premailer/rails/railtie.rb +1 -1
  72. data/lib/premailer/rails.rb +1 -1
  73. data/premailer-rails.gemspec +3 -1
  74. data/spec/integration/css_helper_spec.rb +173 -71
  75. data/spec/integration/hook_spec.rb +35 -10
  76. data/spec/rails_app/config/application.rb +7 -1
  77. data/spec/rails_app/log/.keep +0 -0
  78. data/spec/rails_app/tmp/.keep +0 -0
  79. data/spec/spec_helper.rb +0 -13
  80. data/spec/support/fixtures/message.rb +40 -0
  81. data/spec/unit/css_loaders/asset_pipeline_loader_spec.rb +44 -32
  82. data/spec/unit/css_loaders/propshaft_loader_spec.rb +57 -0
  83. metadata +95 -56
  84. data/.coveralls.yml +0 -1
  85. data/.travis.yml +0 -15
  86. data/example/Gemfile +0 -10
  87. data/example/config/boot.rb +0 -3
  88. data/example/config/secrets.yml +0 -2
  89. /data/{example → examples/rails5}/.gitignore +0 -0
  90. /data/{example → examples/rails5}/README.md +0 -0
  91. /data/{example → examples/rails5}/app/assets/stylesheets/email.css +0 -0
  92. /data/{example → examples/rails5}/app/mailers/example_mailer.rb +0 -0
  93. /data/{example → examples/rails5}/app/views/example_mailer/test_message.html.erb +0 -0
  94. /data/{example → examples/rails5}/config/environments/development.rb +0 -0
  95. /data/{example → examples/rails5}/config/environments/production.rb +0 -0
  96. /data/{example → examples/rails5}/config/initializers/assets.rb +0 -0
  97. /data/{example → examples/rails5}/config/routes.rb +0 -0
  98. /data/{example → examples/rails5}/test/mailers/previews/example_mailer_preview.rb +0 -0
@@ -6,7 +6,7 @@ describe Premailer::Rails::Hook do
6
6
  end
7
7
 
8
8
  def body_content(message)
9
- Nokogiri::HTML(message.html_string).at('body').content
9
+ Nokogiri::HTML(message.html_string).at('body').content.gsub("\r\n", "\n")
10
10
  end
11
11
 
12
12
  class Mail::Message
@@ -47,18 +47,31 @@ describe Premailer::Rails::Hook do
47
47
  expect(processed_message.parts).to match_array(expected_parts)
48
48
  end
49
49
 
50
- describe 'when the content-transfer-encoding is set' do
51
- before { message.content_transfer_encoding = 'quoted-printable' }
50
+ it 'does not screw up the text by maintaining the original body encoding' do
51
+ raw_msg = Fixtures::Message.latin_message
52
+ processed_msg = Fixtures::Message.latin_message
53
+ run_hook(processed_msg)
54
+ expect(body_content(processed_msg)).to eq(body_content(raw_msg))
52
55
 
53
- it 'should maintain the value' do
54
- expect(processed_message.parts.first.content_transfer_encoding).to \
55
- eq 'quoted-printable'
56
- expect(processed_message.parts.last.content_transfer_encoding).to \
57
- eq 'quoted-printable'
58
- end
56
+ raw_msg = Fixtures::Message.non_latin_message
57
+ processed_msg = Fixtures::Message.non_latin_message
58
+ run_hook(processed_msg)
59
+ expect(body_content(processed_msg)).to eq(body_content(raw_msg))
60
+
61
+ raw_msg = Fixtures::Message.greek_message
62
+ processed_msg = Fixtures::Message.greek_message
63
+ run_hook(processed_msg)
64
+ expect(body_content(processed_msg)).to eq(body_content(raw_msg))
65
+
66
+ raw_msg = Fixtures::Message.dash_message
67
+ processed_msg = Fixtures::Message.dash_message
68
+ run_hook(processed_msg)
69
+ expect(body_content(processed_msg)).to eq(body_content(raw_msg))
59
70
  end
60
71
 
61
- it 'does not screw up the text by maintaining the original body encoding' do
72
+ it 'supports US-ASCII output' do
73
+ Premailer::Rails.config.merge!(output_encoding: 'US-ASCII')
74
+
62
75
  raw_msg = Fixtures::Message.latin_message
63
76
  processed_msg = Fixtures::Message.latin_message
64
77
  run_hook(processed_msg)
@@ -68,6 +81,18 @@ describe Premailer::Rails::Hook do
68
81
  processed_msg = Fixtures::Message.non_latin_message
69
82
  run_hook(processed_msg)
70
83
  expect(body_content(processed_msg)).to eq(body_content(raw_msg))
84
+
85
+ raw_msg = Fixtures::Message.greek_message
86
+ processed_msg = Fixtures::Message.greek_message
87
+ run_hook(processed_msg)
88
+ expect(body_content(processed_msg)).to eq(body_content(raw_msg))
89
+
90
+ raw_msg = Fixtures::Message.dash_message
91
+ processed_msg = Fixtures::Message.dash_message
92
+ run_hook(processed_msg)
93
+ expect(body_content(processed_msg)).to eq(body_content(raw_msg))
94
+ ensure
95
+ Premailer::Rails.config.delete(:output_encoding)
71
96
  end
72
97
 
73
98
  it 'generates a text part from the html' do
@@ -1,8 +1,14 @@
1
1
  require_relative 'boot'
2
2
 
3
+ require "action_controller/railtie"
3
4
  require "action_mailer/railtie"
4
5
  require "action_view/railtie"
5
- require "sprockets/railtie"
6
+
7
+ begin
8
+ require "sprockets/railtie"
9
+ rescue LoadError
10
+ end
11
+
6
12
  require "rails/test_unit/railtie"
7
13
 
8
14
  Bundler.require(*Rails.groups)
File without changes
File without changes
data/spec/spec_helper.rb CHANGED
@@ -1,16 +1,3 @@
1
- if RUBY_ENGINE == 'ruby'
2
- if ENV['CI']
3
- require 'coveralls'
4
- Coveralls::Output.silent = true
5
- Coveralls.wear! do
6
- add_filter 'spec/'
7
- end
8
- else
9
- require 'simplecov'
10
- SimpleCov.start
11
- end
12
- end
13
-
14
1
  # Configure Rails Environment
15
2
  ENV["RAILS_ENV"] = "test"
16
3
  require File.expand_path("../../spec/rails_app/config/environment.rb", __FILE__)
@@ -35,6 +35,30 @@ module Fixtures
35
35
  </html>
36
36
  HTML
37
37
 
38
+ HTML_PART_IN_GREEK = <<-HTML.encode(Encoding::ISO_8859_7)
39
+ <html>
40
+ <head>
41
+ </head>
42
+ <body>
43
+ <p>
44
+ Αα Ββ Γγ Δδ Εε Ζζ Ηη Θθ Ιι Κκ Λλ Μμ Νν Ξξ Οο Ππ Ρρ Σσ Ττ Υυ Φφ Χχ Ψψ Ωω
45
+ </p>
46
+ </body>
47
+ </html>
48
+ HTML
49
+
50
+ HTML_PART_WITH_DASHES = <<-HTML
51
+ <html>
52
+ <head>
53
+ </head>
54
+ <body>
55
+ <p>
56
+ Hello there—yes you! What's up with – pardon the interrupion – dashes? I can also do &ndash; and &mdash;.
57
+ </p>
58
+ </body>
59
+ </html>
60
+ HTML
61
+
38
62
  HTML_PART_WITH_CSS = <<-HTML
39
63
  <html>
40
64
  <head>
@@ -130,6 +154,22 @@ nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
130
154
  end
131
155
  end
132
156
 
157
+ def greek_message
158
+ base_message.tap do |message|
159
+ message.body = HTML_PART_IN_GREEK
160
+ message.content_type 'text/html; charset=ISO-8859-7'
161
+ message.ready_to_send!
162
+ end
163
+ end
164
+
165
+ def dash_message
166
+ base_message.tap do |message|
167
+ message.body = HTML_PART_WITH_DASHES
168
+ message.content_type 'text/html; charset=UTF-8'
169
+ message.ready_to_send!
170
+ end
171
+ end
172
+
133
173
  private
134
174
 
135
175
  def base_message
@@ -1,45 +1,57 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Premailer::Rails::CSSLoaders::AssetPipelineLoader do
4
- before do
5
- allow(Rails.configuration)
6
- .to receive(:assets).and_return(double(prefix: '/assets'))
7
- allow(Rails.configuration).to receive(:relative_url_root).and_return(nil)
8
- end
9
-
10
- describe ".file_name" do
11
- subject do
12
- Premailer::Rails::CSSLoaders::AssetPipelineLoader.file_name(asset)
3
+ if defined?(::Sprockets)
4
+ describe Premailer::Rails::CSSLoaders::AssetPipelineLoader do
5
+ before do
6
+ allow(Rails.configuration)
7
+ .to receive(:assets).and_return(double(prefix: '/assets'))
8
+ allow(Rails.configuration).to receive(:relative_url_root).and_return(nil)
13
9
  end
14
10
 
15
- context "when asset file path contains prefix" do
16
- let(:asset) { '/assets/application.css' }
17
- it { is_expected.to eq('application.css') }
18
- end
11
+ describe ".file_name" do
12
+ subject do
13
+ Premailer::Rails::CSSLoaders::AssetPipelineLoader.file_name(asset)
14
+ end
19
15
 
20
- context "when asset file path contains prefix and relative_url_root is set" do
21
- before do
22
- allow(Rails.configuration)
23
- .to receive(:relative_url_root).and_return('/foo')
16
+ context "when asset file path contains prefix" do
17
+ let(:asset) { '/assets/application.css' }
18
+ it { is_expected.to eq('application.css') }
24
19
  end
25
20
 
26
- let(:asset) { '/foo/assets/application.css' }
27
- it { is_expected.to eq('application.css') }
28
- end
21
+ context "when asset file path contains prefix and relative_url_root is set" do
22
+ before do
23
+ allow(Rails.configuration)
24
+ .to receive(:relative_url_root).and_return('/foo')
25
+ end
29
26
 
30
- context "when asset file path contains 32 chars fingerprint" do
31
- let(:asset) { 'application-6776f581a4329e299531e1d52aa59832.css' }
32
- it { is_expected.to eq('application.css') }
33
- end
27
+ let(:asset) { '/foo/assets/application.css' }
28
+ it { is_expected.to eq('application.css') }
29
+ end
34
30
 
35
- context "when asset file path contains 64 chars fingerprint" do
36
- let(:asset) { 'application-02275ccb3fd0c11615bbfb11c99ea123ca2287e75045fe7b72cefafb880dad2b.css' }
37
- it { is_expected.to eq('application.css') }
38
- end
31
+ context "when asset file path contains prefix and relative_url_root is set to root" do
32
+ before do
33
+ allow(Rails.configuration)
34
+ .to receive(:relative_url_root).and_return('/')
35
+ end
39
36
 
40
- context "when asset file page contains numbers, but not a fingerprint" do
41
- let(:asset) { 'test/20130708152545-foo-bar.css' }
42
- it { is_expected.to eq("test/20130708152545-foo-bar.css") }
37
+ let(:asset) { '/assets/application.css' }
38
+ it { is_expected.to eq('application.css') }
39
+ end
40
+
41
+ context "when asset file path contains 32 chars fingerprint" do
42
+ let(:asset) { 'application-6776f581a4329e299531e1d52aa59832.css' }
43
+ it { is_expected.to eq('application.css') }
44
+ end
45
+
46
+ context "when asset file path contains 64 chars fingerprint" do
47
+ let(:asset) { 'application-02275ccb3fd0c11615bbfb11c99ea123ca2287e75045fe7b72cefafb880dad2b.css' }
48
+ it { is_expected.to eq('application.css') }
49
+ end
50
+
51
+ context "when asset file page contains numbers, but not a fingerprint" do
52
+ let(:asset) { 'test/20130708152545-foo-bar.css' }
53
+ it { is_expected.to eq("test/20130708152545-foo-bar.css") }
54
+ end
43
55
  end
44
56
  end
45
57
  end
@@ -0,0 +1,57 @@
1
+ require 'spec_helper'
2
+
3
+ if defined?(::Propshaft)
4
+ describe Premailer::Rails::CSSLoaders::PropshaftLoader do
5
+ before do
6
+ allow(Rails.application)
7
+ .to receive(:assets).and_return(double(prefix: '/assets'))
8
+ allow(Rails.configuration).to receive(:relative_url_root).and_return(nil)
9
+ end
10
+
11
+ describe ".file_name" do
12
+ subject do
13
+ described_class.file_name(asset)
14
+ end
15
+
16
+ context "when asset file path contains prefix" do
17
+ let(:asset) { '/assets/application.css' }
18
+ it { is_expected.to eq('application.css') }
19
+ end
20
+
21
+ context "when asset file path contains prefix and relative_url_root is set" do
22
+ before do
23
+ allow(Rails.configuration)
24
+ .to receive(:relative_url_root).and_return('/foo')
25
+ end
26
+
27
+ let(:asset) { '/foo/assets/application.css' }
28
+ it { is_expected.to eq('application.css') }
29
+ end
30
+
31
+ context "when asset file path contains prefix and relative_url_root is set to root" do
32
+ before do
33
+ allow(Rails.configuration)
34
+ .to receive(:relative_url_root).and_return('/')
35
+ end
36
+
37
+ let(:asset) { '/assets/application.css' }
38
+ it { is_expected.to eq('application.css') }
39
+ end
40
+
41
+ context "when asset file path contains 7 chars fingerprint" do
42
+ let(:asset) { 'application-1234567.css' }
43
+ it { is_expected.to eq('application.css') }
44
+ end
45
+
46
+ context "when asset file path contains 128 chars fingerprint" do
47
+ let(:asset) { 'application-02275ccb3fd0c11615bbfb11c99ea123ca2287e75045fe7b72cefafb880dad2b.css' }
48
+ it { is_expected.to eq('application.css') }
49
+ end
50
+
51
+ context "when asset file page contains numbers, but not a fingerprint" do
52
+ let(:asset) { 'test/20130708152545-foo-bar.css' }
53
+ it { is_expected.to eq("test/20130708152545-foo-bar.css") }
54
+ end
55
+ end
56
+ end
57
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: premailer-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.3
4
+ version: 1.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Philipe Fatio
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-17 00:00:00.000000000 Z
11
+ date: 2022-11-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: premailer
@@ -45,35 +45,35 @@ dependencies:
45
45
  - !ruby/object:Gem::Version
46
46
  version: '3'
47
47
  - !ruby/object:Gem::Dependency
48
- name: rspec
48
+ name: net-smtp
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - "~>"
51
+ - - ">="
52
52
  - !ruby/object:Gem::Version
53
- version: '3.3'
54
- type: :development
53
+ version: '0'
54
+ type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - "~>"
58
+ - - ">="
59
59
  - !ruby/object:Gem::Version
60
- version: '3.3'
60
+ version: '0'
61
61
  - !ruby/object:Gem::Dependency
62
- name: nokogiri
62
+ name: rspec
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
- - - ">="
65
+ - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '0'
67
+ version: '3.3'
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - ">="
72
+ - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: '0'
74
+ version: '3.3'
75
75
  - !ruby/object:Gem::Dependency
76
- name: coveralls
76
+ name: nokogiri
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
79
  - - ">="
@@ -97,40 +97,89 @@ executables: []
97
97
  extensions: []
98
98
  extra_rdoc_files: []
99
99
  files:
100
- - ".coveralls.yml"
100
+ - ".github/workflows/test.yml"
101
101
  - ".gitignore"
102
102
  - ".rspec"
103
- - ".travis.yml"
104
103
  - CHANGELOG.md
105
104
  - Gemfile
106
105
  - LICENSE
107
106
  - README.md
108
107
  - Rakefile
109
108
  - VERSION
110
- - example/.gitignore
111
- - example/Gemfile
112
- - example/README.md
113
- - example/Rakefile
114
- - example/app/assets/stylesheets/email.css
115
- - example/app/mailers/example_mailer.rb
116
- - example/app/views/example_mailer/test_message.html.erb
117
- - example/bin/rails
118
- - example/config.ru
119
- - example/config/application.rb
120
- - example/config/boot.rb
121
- - example/config/environment.rb
122
- - example/config/environments/development.rb
123
- - example/config/environments/production.rb
124
- - example/config/initializers/assets.rb
125
- - example/config/routes.rb
126
- - example/config/secrets.yml
127
- - example/test/mailers/previews/example_mailer_preview.rb
109
+ - examples/rails5/.gitignore
110
+ - examples/rails5/Gemfile
111
+ - examples/rails5/README.md
112
+ - examples/rails5/Rakefile
113
+ - examples/rails5/app/assets/stylesheets/email.css
114
+ - examples/rails5/app/mailers/example_mailer.rb
115
+ - examples/rails5/app/views/example_mailer/test_message.html.erb
116
+ - examples/rails5/bin/rails
117
+ - examples/rails5/config.ru
118
+ - examples/rails5/config/application.rb
119
+ - examples/rails5/config/boot.rb
120
+ - examples/rails5/config/environment.rb
121
+ - examples/rails5/config/environments/development.rb
122
+ - examples/rails5/config/environments/production.rb
123
+ - examples/rails5/config/initializers/assets.rb
124
+ - examples/rails5/config/routes.rb
125
+ - examples/rails5/test/mailers/previews/example_mailer_preview.rb
126
+ - examples/rails6/.gitignore
127
+ - examples/rails6/Gemfile
128
+ - examples/rails6/README.md
129
+ - examples/rails6/Rakefile
130
+ - examples/rails6/app/assets/config/manifest.js
131
+ - examples/rails6/app/assets/stylesheets/email.css
132
+ - examples/rails6/app/mailers/example_mailer.rb
133
+ - examples/rails6/app/views/example_mailer/test_message.html.erb
134
+ - examples/rails6/bin/rails
135
+ - examples/rails6/config.ru
136
+ - examples/rails6/config/application.rb
137
+ - examples/rails6/config/boot.rb
138
+ - examples/rails6/config/environment.rb
139
+ - examples/rails6/config/environments/development.rb
140
+ - examples/rails6/config/environments/production.rb
141
+ - examples/rails6/config/routes.rb
142
+ - examples/rails6/test/mailers/previews/example_mailer_preview.rb
143
+ - examples/rails7-propshaft/.gitignore
144
+ - examples/rails7-propshaft/Gemfile
145
+ - examples/rails7-propshaft/README.md
146
+ - examples/rails7-propshaft/Rakefile
147
+ - examples/rails7-propshaft/app/assets/stylesheets/email.css
148
+ - examples/rails7-propshaft/app/mailers/example_mailer.rb
149
+ - examples/rails7-propshaft/app/views/example_mailer/test_message.html.erb
150
+ - examples/rails7-propshaft/bin/rails
151
+ - examples/rails7-propshaft/config.ru
152
+ - examples/rails7-propshaft/config/application.rb
153
+ - examples/rails7-propshaft/config/boot.rb
154
+ - examples/rails7-propshaft/config/environment.rb
155
+ - examples/rails7-propshaft/config/environments/development.rb
156
+ - examples/rails7-propshaft/config/environments/production.rb
157
+ - examples/rails7-propshaft/config/routes.rb
158
+ - examples/rails7-propshaft/test/mailers/previews/example_mailer_preview.rb
159
+ - examples/rails7-sprockets/.gitignore
160
+ - examples/rails7-sprockets/Gemfile
161
+ - examples/rails7-sprockets/README.md
162
+ - examples/rails7-sprockets/Rakefile
163
+ - examples/rails7-sprockets/app/assets/config/manifest.js
164
+ - examples/rails7-sprockets/app/assets/stylesheets/email.css
165
+ - examples/rails7-sprockets/app/mailers/example_mailer.rb
166
+ - examples/rails7-sprockets/app/views/example_mailer/test_message.html.erb
167
+ - examples/rails7-sprockets/bin/rails
168
+ - examples/rails7-sprockets/config.ru
169
+ - examples/rails7-sprockets/config/application.rb
170
+ - examples/rails7-sprockets/config/boot.rb
171
+ - examples/rails7-sprockets/config/environment.rb
172
+ - examples/rails7-sprockets/config/environments/development.rb
173
+ - examples/rails7-sprockets/config/environments/production.rb
174
+ - examples/rails7-sprockets/config/routes.rb
175
+ - examples/rails7-sprockets/test/mailers/previews/example_mailer_preview.rb
128
176
  - lib/premailer/rails.rb
129
177
  - lib/premailer/rails/css_helper.rb
130
178
  - lib/premailer/rails/css_loaders.rb
131
179
  - lib/premailer/rails/css_loaders/asset_pipeline_loader.rb
132
180
  - lib/premailer/rails/css_loaders/file_system_loader.rb
133
181
  - lib/premailer/rails/css_loaders/network_loader.rb
182
+ - lib/premailer/rails/css_loaders/propshaft_loader.rb
134
183
  - lib/premailer/rails/customized_premailer.rb
135
184
  - lib/premailer/rails/hook.rb
136
185
  - lib/premailer/rails/railtie.rb
@@ -152,19 +201,23 @@ files:
152
201
  - spec/rails_app/config/environments/test.rb
153
202
  - spec/rails_app/config/initializers/assets.rb
154
203
  - spec/rails_app/config/routes.rb
204
+ - spec/rails_app/log/.keep
205
+ - spec/rails_app/tmp/.keep
155
206
  - spec/spec_helper.rb
156
207
  - spec/support/fixtures/html.rb
157
208
  - spec/support/fixtures/message.rb
158
209
  - spec/unit/css_loaders/asset_pipeline_loader_spec.rb
159
210
  - spec/unit/css_loaders/file_system_loader_spec.rb
160
211
  - spec/unit/css_loaders/network_loader_spec.rb
212
+ - spec/unit/css_loaders/propshaft_loader_spec.rb
161
213
  - spec/unit/customized_premailer_spec.rb
162
214
  - spec/unit/premailer_rails_spec.rb
163
215
  homepage: https://github.com/fphilipe/premailer-rails
164
216
  licenses:
165
217
  - MIT
166
- metadata: {}
167
- post_install_message:
218
+ metadata:
219
+ changelog_uri: https://github.com/fphilipe/premailer-rails/blob/v1.12.0/CHANGELOG.md
220
+ post_install_message:
168
221
  rdoc_options: []
169
222
  require_paths:
170
223
  - lib
@@ -179,28 +232,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
232
  - !ruby/object:Gem::Version
180
233
  version: '0'
181
234
  requirements: []
182
- rubygems_version: 3.0.3
183
- signing_key:
235
+ rubygems_version: 3.3.3
236
+ signing_key:
184
237
  specification_version: 4
185
238
  summary: Easily create styled HTML emails in Rails.
186
239
  test_files:
187
- - example/Gemfile
188
- - example/README.md
189
- - example/Rakefile
190
- - example/app/assets/stylesheets/email.css
191
- - example/app/mailers/example_mailer.rb
192
- - example/app/views/example_mailer/test_message.html.erb
193
- - example/bin/rails
194
- - example/config.ru
195
- - example/config/application.rb
196
- - example/config/boot.rb
197
- - example/config/environment.rb
198
- - example/config/environments/development.rb
199
- - example/config/environments/production.rb
200
- - example/config/initializers/assets.rb
201
- - example/config/routes.rb
202
- - example/config/secrets.yml
203
- - example/test/mailers/previews/example_mailer_preview.rb
204
240
  - spec/integration/css_helper_spec.rb
205
241
  - spec/integration/delivery_spec.rb
206
242
  - spec/integration/hook_spec.rb
@@ -217,11 +253,14 @@ test_files:
217
253
  - spec/rails_app/config/environments/test.rb
218
254
  - spec/rails_app/config/initializers/assets.rb
219
255
  - spec/rails_app/config/routes.rb
256
+ - spec/rails_app/log/.keep
257
+ - spec/rails_app/tmp/.keep
220
258
  - spec/spec_helper.rb
221
259
  - spec/support/fixtures/html.rb
222
260
  - spec/support/fixtures/message.rb
223
261
  - spec/unit/css_loaders/asset_pipeline_loader_spec.rb
224
262
  - spec/unit/css_loaders/file_system_loader_spec.rb
225
263
  - spec/unit/css_loaders/network_loader_spec.rb
264
+ - spec/unit/css_loaders/propshaft_loader_spec.rb
226
265
  - spec/unit/customized_premailer_spec.rb
227
266
  - spec/unit/premailer_rails_spec.rb
data/.coveralls.yml DELETED
@@ -1 +0,0 @@
1
- service_name: travis-ci
data/.travis.yml DELETED
@@ -1,15 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- cache: bundler
4
- script: bundle exec rspec
5
- rvm:
6
- - 2.6.1
7
- env:
8
- matrix:
9
- - ACTION_MAILER_VERSION=4
10
- - ACTION_MAILER_VERSION=5
11
- - ACTION_MAILER_VERSION=master
12
- matrix:
13
- fast_finish: true
14
- allow_failures:
15
- - env: ACTION_MAILER_VERSION=master
data/example/Gemfile DELETED
@@ -1,10 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'rails', '~> 5.0.0.beta3'
4
- gem 'premailer-rails', path: '..'
5
- gem 'nokogiri'
6
-
7
- platforms :rbx do
8
- gem 'rubysl'
9
- gem 'racc'
10
- end
@@ -1,3 +0,0 @@
1
- ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
2
-
3
- require 'bundler/setup' # Set up gems listed in the Gemfile.
@@ -1,2 +0,0 @@
1
- development:
2
- secret_key_base: bc1d05753b1a42a7d983dcb4f998c433532ec8f91ab3842a36ed3d9072d143a2d9c05a6dc43a3d780a2ff3d8e7b75a1011ae2e0d13a022e98dc1f0299da5a5a0
File without changes
File without changes
File without changes