mjml-ruby 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: db0b60d0ad6a5d23205a3bbac3703a53806029f0
4
- data.tar.gz: d5fb6c55c058866cb65e9d0d7d6f7e0aa9d7dd32
3
+ metadata.gz: 431c3699bbdba99d82ba599191008e1bddbf7b71
4
+ data.tar.gz: 07f94777bb07770d9d9da7b4c81ce5899c5da244
5
5
  SHA512:
6
- metadata.gz: fc135252a72a4ffdd91dde91bed103f9aa8227083587d77a6bd7d122ce54a97e8c1cfcfa1b411af1b5219a5854f7c7fdba46dd88834520d4d76f23c79f0b1248
7
- data.tar.gz: 118ef5bb3ed4172fbb0ff12b01ba6661bfddccaded7220918b28e9604a885c25071f82b74c9cccd436806158e44beea0b9eaf060c4a496b5a56f838ea0580a90
6
+ metadata.gz: e4132a15b2f3c54d3bfcfc37fbd16456f3f3fa2269f8ce5f85e9d65c80c4a8eebfce9fb322ec0b47c365198f88441cb87c0ef9f569dc94a180c831fc19060180
7
+ data.tar.gz: 0671779264d9699d6e3d4ff4e2e672cf4a8a6443c54c75f272bb6059f1da34436d668931b3f15332f94e802ffdf75fefb9e7f06e0ca3f9a915a0fe157bc39be2
data/lib/mjml.rb CHANGED
@@ -5,6 +5,7 @@ module MJML
5
5
  # Constants
6
6
  MIME_TYPE = 'text/mjml'.freeze
7
7
  EXTENSION = '.mjml'.freeze
8
+ VERSION_REGEX = /^\d\.\d\.\d/i
8
9
 
9
10
  extend Dry::Configurable
10
11
  # Available settings
@@ -20,7 +21,12 @@ module MJML
20
21
  def self.find_executable
21
22
  local_path = File.expand_path('node_modules/.bin/mjml', Dir.pwd)
22
23
  return local_path if File.file?(local_path)
23
- `/usr/bin/which mjml`.strip
24
+ `/usr/bin/env bash -c "which mjml"`.strip
25
+ end
26
+
27
+ def self.executable_version
28
+ ver, _status = Open3.capture2(find_executable, '-V')
29
+ (ver =~ VERSION_REGEX).nil? ? nil : ver
24
30
  end
25
31
  end
26
32
 
data/lib/mjml/parser.rb CHANGED
@@ -7,10 +7,9 @@ module MJML
7
7
  class ExecutableNotFound < StandardError; end
8
8
 
9
9
  ROOT_TAGS_REGEX = %r{<mjml>.*<\/mjml>}im
10
- VERSION_REGEX = /^\d\.\d\.\d/i
11
10
 
12
11
  def initialize
13
- raise ExecutableNotFound if mjml_version.nil?
12
+ raise ExecutableNotFound if MJML.executable_version.nil?
14
13
  end
15
14
 
16
15
  def call(template)
@@ -29,7 +28,7 @@ module MJML
29
28
  raise InvalidTemplate if template.empty?
30
29
  return template if partial?(template)
31
30
 
32
- out, err, _status = Open3.capture3("#{mjml_bin} -is <<< '#{template}'")
31
+ out, err, _status = Open3.capture3(build_cmd(template))
33
32
 
34
33
  raise InvalidTemplate unless err.empty?
35
34
  out
@@ -43,9 +42,8 @@ module MJML
43
42
  MJML.config.bin_path
44
43
  end
45
44
 
46
- def mjml_version
47
- ver, _status = Open3.capture2(mjml_bin, '-V')
48
- (ver =~ VERSION_REGEX).nil? ? nil : ver
45
+ def build_cmd(template)
46
+ "/usr/bin/env bash -c \"echo '#{template}' | #{mjml_bin} -is\""
49
47
  end
50
48
  end
51
49
  end
data/lib/mjml/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module MJML
2
- VERSION = '0.1.1'.freeze
2
+ VERSION = '0.1.2'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mjml-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mykola Basov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-02 00:00:00.000000000 Z
11
+ date: 2016-09-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-configurable