djot 0.0.5 → 0.0.6

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 38368915f0c2573a1daa39f56bbce7f81b66ff5a8da7253bd9f9cd414970e1b9
4
- data.tar.gz: d3828d6c7ed236474840a2c43289211c0c341b2a7a308b86633bc3e7df3b943d
3
+ metadata.gz: 2419533ac547deab5c4ec161d2147c47895839050151bf1233c093d03c7f6202
4
+ data.tar.gz: 2aae784074f6b9df2827d6dfc6ce05cb4a53fb9ad117b1c8a1141bc18234f6df
5
5
  SHA512:
6
- metadata.gz: 93057af842daddd20a723d5132be5d97a63f456dd94fab083e2bc40955dd644fbb67bb69f1a2d38cd1f646b687733cb7d228675ac17b3b6796763d0ee593ce61
7
- data.tar.gz: 92060c827d1a52f662a804ad83a8722727cf70c3ff6e9c0bc55785262aaba1f6cc3b8e4b89dfa851ed0310ad08aadfe2c1f104c2268792f76aeb1ccb896d98b5
6
+ metadata.gz: d3e5caed7e26dd27fea38c2c323024d64803ed88de74ed37e81020d6cb8117a810b6926c3e4b0d877781989d526e83916ba441be7a81c8f8ee7074413e50de0d
7
+ data.tar.gz: aa3fa15f1deb0b930779806e0cad85b2a7a65be32a252825b8211089e38341c59f29fb9713a1755aef514b2a540067e706f022188571a35725190f94128654f6
data/.mdl_style.rb ADDED
@@ -0,0 +1,4 @@
1
+ all
2
+ rule "MD007", indent: 2
3
+ exclude_rule "MD013"
4
+ exclude_rule "MD024"
data/.mdlrc ADDED
@@ -0,0 +1 @@
1
+ style ".mdl_style.rb"
data/.rubocop.yml CHANGED
@@ -15,11 +15,16 @@ Style/StringLiteralsInInterpolation:
15
15
  Layout/LineLength:
16
16
  Max: 120
17
17
 
18
- Style/Documentation:
19
- Enabled: false
20
-
21
18
  Style/FrozenStringLiteralComment:
22
19
  EnforcedStyle: never
23
20
 
21
+ Style/DocumentDynamicEvalDefinition:
22
+ Enabled: true
23
+ Exclude:
24
+ - lib/djot/javascript.rb
25
+
26
+ Metrics/ClassLength:
27
+ Enabled: false
28
+
24
29
  require:
25
30
  - rubocop-rake
data/.rubocop_todo.yml CHANGED
@@ -1,18 +1,23 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2023-01-21 02:00:17 UTC using RuboCop version 1.43.0.
3
+ # on 2023-01-30 13:50:23 UTC using RuboCop version 1.44.1.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
+ # Offense count: 1
10
+ # Configuration parameters: AllowedMethods, AllowedPatterns, IgnoredMethods, CountRepeatedAttributes.
11
+ Metrics/AbcSize:
12
+ Max: 18
13
+
9
14
  # Offense count: 2
10
15
  # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, AllowedMethods, AllowedPatterns, IgnoredMethods.
11
16
  # AllowedMethods: refine
12
17
  Metrics/BlockLength:
13
18
  Max: 37
14
19
 
15
- # Offense count: 1
16
- # Configuration parameters: CountComments, CountAsOne.
17
- Metrics/ClassLength:
18
- Max: 139
20
+ # Offense count: 2
21
+ # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, AllowedMethods, AllowedPatterns, IgnoredMethods.
22
+ Metrics/MethodLength:
23
+ Max: 22
data/CHANGELOG.md CHANGED
@@ -2,6 +2,30 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.0.6] - 2023-01-31
6
+
7
+ Note again that the default parser might be changed from djot.lua to djot.js in future version.
8
+
9
+ ### Added
10
+
11
+ * `Djot::Lua` module, which contains ex-`Djot.render_*` methods.
12
+ Now `Djot.render_*` methods are pointers to `Djot::Lua.render_*` (default is not changed for this release).
13
+ * Option `warn` for `Djot::JavaScript.parse`.
14
+ * `Djot::JavaScript.parse_events` method.
15
+ * Option `warn` for `Djot::JavaScript.render_html`.
16
+ (Option `overrides` are not yet supported.)
17
+ * Option `warn` and `smart_punctuation_map` for `Djot::JavaScript.to_pandoc`.
18
+ (Please caution that `warn` options has not yet tested.)
19
+ * Option `warn` for `Djot::JavaScript.from_pandoc`.
20
+ (Please caution that `warn` options has not yet tested.)
21
+
22
+ ### Changed
23
+
24
+ * JavaScript runtime has changed from ExecJS to MiniRacer, for passing Ruby proc to JavaScript runtime.
25
+ See also [rails/execjs#71 > Custom configuration of runtime](https://github.com/rails/execjs/issues/71).
26
+ * `Djot::JavaScript::VERSION` and `Djot::JavaScript::PATH` is deprecated.
27
+ Use `Djot::JavaScript.version` and `Djot::JavaScript.path` instead.
28
+
5
29
  ## [0.0.5] - 2023-01-21
6
30
 
7
31
  Note that the default parser might be changed from djot.lua to djot.js in future version.
data/Gemfile CHANGED
@@ -2,9 +2,11 @@ source "https://rubygems.org"
2
2
 
3
3
  gemspec
4
4
 
5
+ gem "mdl", "~> 0.12.0"
5
6
  gem "rake", "~> 13.0"
6
7
  gem "rdoc", "~> 6.4"
7
8
  gem "rubocop", "~> 1.21"
8
9
  gem "rubocop-rake", "~> 0.6.0"
9
10
  gem "steep", "~> 1.1"
10
11
  gem "test-unit", "~> 3.0"
12
+ gem "typeprof", "~> 0.21.4"
data/README.md CHANGED
@@ -20,7 +20,23 @@ gem install djot
20
20
 
21
21
  ```ruby
22
22
  require 'djot'
23
+
23
24
  Djot.render_html('This is *djot*')
25
+ #=> "<p>This is <strong>djot</strong></p>\n"
26
+
27
+ Djot::JavaScript.parse("- `hello", warn: ->(w) { p w })
28
+ #=>
29
+ # {"tag"=>"doc",
30
+ # "references"=>{},
31
+ # "footnotes"=>{},
32
+ # "children"=>
33
+ # [{"tag"=>"bullet_list",
34
+ # "tight"=>true,
35
+ # "style"=>"-",
36
+ # "children"=>[{"tag"=>"list_item", "children"=>[{"tag"=>"para", "children"=>[{"tag"=>"str", "text"=>"hello"}]}]}]}]}
37
+ #
38
+ # stdout:
39
+ # {"message"=>"Unclosed verbatim", "offset"=>7}
24
40
  ```
25
41
 
26
42
  ## Development
@@ -39,8 +55,10 @@ and push the `.gem` file to [rubygems.org](https://rubygems.org).
39
55
 
40
56
  ### TODO
41
57
 
42
- * Use [Attach global Ruby functions to your JavaScript context](https://github.com/rubyjs/mini_racer#attach-global-ruby-functions-to-your-javascript-context) for the functions' options which accepts lambda expressions.
43
58
  * Create document class (and more) for idiomatic control in Ruby.
59
+ * Write parser in pure Ruby.
60
+ * Make JavaScript version as default. Currently the default is Lua version.
61
+ * Update Lua implementation from djot to djot.lua.
44
62
 
45
63
  ## Contributing
46
64
 
@@ -54,7 +72,7 @@ to the [code of conduct](CODE_OF_CONDUCT.md).
54
72
 
55
73
  As mentioned earlier, this library only calls the original JavaScript and Lua implementations; the important work is done in those libraries.
56
74
  The Lua implementation was sufficient to render in HTML, but thanks to the more Ruby-friendly JavaScript implementation, even more flexible operations can now be performed in Ruby.
57
- This gem also uses [rails/execjs](https://github.com/rails/execjs) and [ruby-lua](https://github.com/glejeune/ruby-lua) to call JavaScript and Lua source codes respectibly.
75
+ This gem also uses [MiniRacer](https://github.com/rubyjs/mini_racer) and [ruby-lua](https://github.com/glejeune/ruby-lua) to call JavaScript and Lua source codes respectibly.
58
76
 
59
77
  ## License
60
78
 
data/Rakefile CHANGED
@@ -11,7 +11,7 @@ require "rubocop/rake_task"
11
11
 
12
12
  RuboCop::RakeTask.new
13
13
 
14
- task default: %i[copy copy_js test rubocop]
14
+ task default: %i[copy copy_js test rubocop sig mdl]
15
15
 
16
16
  desc "Copy JavaScript files"
17
17
  task copy_js: "lib/js/djot.js"
@@ -53,3 +53,20 @@ RDoc::Task.new do |rdoc|
53
53
  rdoc.main = readme
54
54
  rdoc.rdoc_files.include(readme, "lib/**/*.rb")
55
55
  end
56
+
57
+ desc "Lint Markdown files"
58
+ task "mdl" do
59
+ sh "bundle exec mdl CHANGELOG.md README.md"
60
+ end
61
+
62
+ desc "Type check"
63
+ task tc: :sig do
64
+ sh "bundle exec steep check"
65
+ end
66
+
67
+ desc "Update generated RBS"
68
+ task sig: "sig/djot.gen.rbs"
69
+
70
+ file "sig/djot.gen.rbs" => ["sig/djot.rbs", *Dir["lib/**/*.rb"]] do |t|
71
+ sh "bundle", "exec", "typeprof", "-o", t.name, *t.sources
72
+ end
data/Steepfile CHANGED
@@ -3,6 +3,8 @@ D = Steep::Diagnostic
3
3
  target :lib do
4
4
  signature "sig"
5
5
 
6
+ library "pathname"
7
+
6
8
  check "lib"
7
9
  check "Gemfile"
8
10
 
data/djot.gemspec CHANGED
@@ -27,6 +27,6 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.require_paths = ["lib"]
29
29
 
30
- spec.add_dependency "execjs", "~> 2.8"
30
+ spec.add_dependency "mini_racer", "~> 0.6.3"
31
31
  spec.add_dependency "ruby-lua", "~> 0.4"
32
32
  end
@@ -1,75 +1,144 @@
1
1
  require "pathname"
2
- require "execjs"
2
+ require "mini_racer"
3
3
 
4
4
  module Djot
5
5
  # Functionalities of djot.js
6
6
  module JavaScript
7
- PATH = Pathname(__dir__) / ".." / "js" / "djot.js"
7
+ def self.path # :nodoc:
8
+ @path ||= Pathname(__dir__ || (raise Error)) / ".." / "js" / "djot.js"
9
+ end
10
+
11
+ PATH = path # :nodoc:
8
12
 
9
- def self.source
13
+ deprecate_constant :PATH
14
+
15
+ def self.source # :nodoc:
10
16
  @source ||= PATH.read
11
17
  end
12
18
 
13
- def self.context
14
- @context ||= ExecJS.compile(source)
19
+ def self.context # :nodoc:
20
+ return @context if @context
21
+
22
+ context = MiniRacer::Context.new
23
+ context.eval("let args, result")
24
+ context.eval(source)
25
+ @context = context
15
26
  end
16
27
 
17
28
  # Correspond to +djot.parse+
18
29
  # (https://github.com/jgm/djot.js#parsing-djot-to-an-ast)
19
- #
20
- # TODO: support +warn+ option
21
- def self.parse(input, source_positions: false)
22
- context.call("djot.parse", input, { "sourcePositions" => source_positions })
30
+ def self.parse(input, source_positions: nil, warn: nil)
31
+ args = [input]
32
+ options = {}
33
+ options["sourcePositions"] = source_positions if source_positions
34
+ args << options
35
+ context.eval("args = #{JSON.generate(args)}")
36
+ if warn
37
+ context.attach("warn", warn)
38
+ context.eval('args[1]["warn"] = warn')
39
+ end
40
+ context.eval("djot.parse.apply(this, args)")
23
41
  end
24
42
 
25
- # TODO: support +djot.EventParser+
43
+ # Correspond to +djot.parseEvents+
26
44
  # (https://github.com/jgm/djot.js#parsing-djot-to-a-stream-of-events)
45
+ def self.parse_events(input, warn: nil, &block)
46
+ context.eval("args = #{JSON.generate([input, {}])}")
47
+ if warn
48
+ context.attach("warn", warn)
49
+ context.eval('args[1]["warn"] = warn')
50
+ end
51
+ source = if block_given?
52
+ context.attach("fun", block)
53
+ <<~END_JAVASCRIPT
54
+ for (let event of djot.parseEvents(...args)) {
55
+ fun(event)
56
+ }
57
+ END_JAVASCRIPT
58
+ else
59
+ # TODO: Use enum_for
60
+ <<~END_JAVASCRIPT
61
+ events = []
62
+ for (let event of djot.parseEvents(...args)) {
63
+ events.push(event)
64
+ }
65
+ events
66
+ END_JAVASCRIPT
67
+ end
68
+ context.eval(source)
69
+ end
27
70
 
28
71
  # Correspond to +djot.renderAST+
29
72
  # (https://github.com/jgm/djot.js#pretty-printing-the-djot-ast)
30
73
  def self.render_ast(doc)
31
- context.call("djot.renderAST", doc)
74
+ call("renderAST", doc)
32
75
  end
33
76
 
34
77
  # Correspond to +djot.renderHTML+
35
78
  # (https://github.com/jgm/djot.js#rendering-the-djot-ast-to-html)
36
79
  #
37
- # TODO: support +options+
38
- def self.render_html(doc)
39
- context.call("djot.renderHTML", doc)
80
+ # TODO: support +overrides+ option
81
+ def self.render_html(doc, warn: nil)
82
+ context.eval("args = #{JSON.generate([doc, {}])}")
83
+ if warn
84
+ context.attach("warn", warn)
85
+ context.eval('args[1]["warn"] = warn')
86
+ end
87
+ context.eval("djot.renderHTML.apply(this, args)")
40
88
  end
41
89
 
42
90
  # Correspond to +djot.renderDjot+
43
91
  # (https://github.com/jgm/djot.js#rendering-djot)
44
- #
45
- # TODO: support options
46
92
  def self.render_djot(doc, wrap_width: nil)
47
93
  options = {}
48
94
  options["wrapWidth"] = wrap_width if wrap_width
49
95
 
50
- context.call("djot.renderDjot", doc, options)
96
+ call("renderDjot", doc, options)
51
97
  end
52
98
 
53
99
  # Correspond to +djot.toPandoc+
54
100
  # (https://github.com/jgm/djot.js#pandoc-interoperability)
55
101
  #
56
- # TODO: support +warn+ and +smart_punctuation_map+ option
57
- def self.to_pandoc(doc)
58
- context.call("djot.toPandoc", doc)
102
+ # CAUTION: +warn+ option hasn't yet tested.
103
+ # There may be bugs.
104
+ def self.to_pandoc(doc, warn: nil, smart_punctuation_map: nil)
105
+ options = {}
106
+ options["smartPunctuationMap"] = smart_punctuation_map if smart_punctuation_map
107
+ context.eval("args = #{JSON.generate([doc, options])}")
108
+ if warn
109
+ context.attach("warn", warn)
110
+ context.eval('args[1]["warn"] = warn')
111
+ end
112
+ context.eval("djot.toPandoc.apply(this, args)")
59
113
  end
60
114
 
61
115
  # Correspond to +djot.fromPandoc+
62
116
  # (https://github.com/jgm/djot.js#pandoc-interoperability)
63
117
  #
64
- # TODO: support options
65
- def self.from_pandoc(pandoc)
66
- context.call("djot.fromPandoc", pandoc)
118
+ # CAUTION: +warn+ options hasn't yet tested.
119
+ def self.from_pandoc(pandoc, warn: nil)
120
+ context.eval("args = #{JSON.generate([pandoc, {}])}")
121
+ if warn
122
+ context.attach("warn", warn)
123
+ context.eval('args[1]["warn"] = warn')
124
+ end
125
+ context.eval("djot.fromPandoc.apply(this, args)")
67
126
  end
68
127
 
69
128
  # TODO: support filters
70
129
 
71
130
  # Correspond to +djot.version+
72
131
  # (https://github.com/jgm/djot.js#getting-the-version)
73
- VERSION = context.eval("djot.version")
132
+ def self.version
133
+ @version ||= context.eval("djot.version")
134
+ end
135
+
136
+ VERSION = version # :nodoc:
137
+
138
+ deprecate_constant :VERSION
139
+
140
+ def self.call(name, *args) # :nodoc:
141
+ context.eval("djot.#{name}.apply(this, #{::JSON.generate(args)})")
142
+ end
74
143
  end
75
144
  end
data/lib/djot/lua.rb ADDED
@@ -0,0 +1,52 @@
1
+ require "language/lua"
2
+ require "pathname"
3
+
4
+ module Djot
5
+ # Functionalities of djot (Lua implementation)
6
+ module Lua
7
+ LUA = Language::Lua.new # :nodoc:
8
+ LUA.eval(<<~END_LUA)
9
+ function djot_parser(input)
10
+ local parser = require("djot").Parser:new(input)
11
+ parser:parse()
12
+ return parser
13
+ end
14
+
15
+ function djot_render_html(input)
16
+ return djot_parser(input):render_html()
17
+ end
18
+
19
+ function djot_render_matches(input)
20
+ return djot_parser(input):render_matches()
21
+ end
22
+
23
+ function djot_render_ast(input)
24
+ return djot_parser(input):render_ast()
25
+ end
26
+ END_LUA
27
+
28
+ ROOT = Pathname(__dir__ || (raise Error)) / ".." / "lua" # :nodoc:
29
+
30
+ def self.render_html(input)
31
+ run_at_root do
32
+ LUA.djot_render_html(input)
33
+ end
34
+ end
35
+
36
+ def self.render_matches(input)
37
+ run_at_root do
38
+ LUA.djot_render_matches(input)
39
+ end
40
+ end
41
+
42
+ def self.render_ast(input)
43
+ run_at_root do
44
+ LUA.djot_render_ast(input)
45
+ end
46
+ end
47
+
48
+ def self.run_at_root(&block) # :nodoc:
49
+ Dir.chdir(ROOT.to_s, &block)
50
+ end
51
+ end
52
+ end
data/lib/djot/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Djot
2
- VERSION = "0.0.5".freeze
2
+ VERSION = "0.0.6".freeze
3
3
  end
data/lib/djot.rb CHANGED
@@ -1,49 +1,22 @@
1
1
  require_relative "djot/version"
2
2
  require_relative "djot/javascript"
3
- require "language/lua"
4
- require "pathname"
3
+ require_relative "djot/lua"
5
4
 
5
+ # Provides Djot parsing functionalities.
6
+ # +Djot.*+ methods are pointing to Lua implementation now.
7
+ # See also Djot::JavaScript for ones pointing to JavaScript implementation.
6
8
  module Djot
7
9
  class Error < StandardError; end
8
10
 
9
- LUA = Language::Lua.new
10
- LUA.eval(<<~END_LUA)
11
- function djot_parser(input)
12
- local parser = require("djot").Parser:new(input)
13
- parser:parse()
14
- return parser
15
- end
16
-
17
- function djot_render_html(input)
18
- return djot_parser(input):render_html()
19
- end
20
-
21
- function djot_render_matches(input)
22
- return djot_parser(input):render_matches()
23
- end
24
-
25
- function djot_render_ast(input)
26
- return djot_parser(input):render_ast()
27
- end
28
- END_LUA
29
-
30
- ROOT = Pathname(__dir__) / "lua"
31
-
32
11
  def self.render_html(input)
33
- Dir.chdir(ROOT) do
34
- LUA.djot_render_html(input)
35
- end
12
+ Lua.render_html(input)
36
13
  end
37
14
 
38
15
  def self.render_matches(input)
39
- Dir.chdir(ROOT) do
40
- LUA.djot_render_matches(input)
41
- end
16
+ Lua.render_matches(input)
42
17
  end
43
18
 
44
19
  def self.render_ast(input)
45
- Dir.chdir(ROOT) do
46
- LUA.djot_render_ast(input)
47
- end
20
+ Lua.render_ast(input)
48
21
  end
49
22
  end
data/sig/djot.gen.rbs ADDED
@@ -0,0 +1,42 @@
1
+ # TypeProf 0.21.4
2
+
3
+ # Classes
4
+ module Djot
5
+ VERSION: String
6
+
7
+ def self.render_html: (untyped input) -> untyped
8
+ def self.render_matches: (untyped input) -> untyped
9
+ def self.render_ast: (untyped input) -> untyped
10
+
11
+ module JavaScript
12
+ PATH: Pathname
13
+ VERSION: (Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?
14
+ self.@path: Pathname
15
+ self.@version: (Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?
16
+ self.@context: MiniRacer::Context
17
+ self.@source: String
18
+
19
+ def self.path: -> Pathname
20
+ def self.source: -> String
21
+ def self.context: -> MiniRacer::Context?
22
+ def self.parse: (untyped input, ?source_positions: nil, ?warn: nil) -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
23
+ def self.parse_events: (untyped input, ?warn: nil) -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
24
+ def self.render_ast: (untyped doc) -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
25
+ def self.render_html: (untyped doc, ?warn: nil) -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
26
+ def self.render_djot: (untyped doc, ?wrap_width: nil) -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
27
+ def self.to_pandoc: (untyped doc, ?warn: nil, ?smart_punctuation_map: nil) -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
28
+ def self.from_pandoc: (untyped pandoc, ?warn: nil) -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
29
+ def self.version: -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
30
+ def self.call: (String name, *Hash[String, untyped] args) -> ((Array[untyped] | Hash[untyped, untyped] | MiniRacer::JavaScriptFunction | Time)?)
31
+ end
32
+
33
+ module Lua
34
+ LUA: untyped
35
+ ROOT: Pathname
36
+
37
+ def self.render_html: (untyped input) -> untyped
38
+ def self.render_matches: (untyped input) -> untyped
39
+ def self.render_ast: (untyped input) -> untyped
40
+ def self.run_at_root: { (String) -> untyped } -> untyped
41
+ end
42
+ end
data/sig/djot.rbs CHANGED
@@ -1,6 +1,11 @@
1
+ # TODO
1
2
  module Djot
2
- VERSION: String
3
- def self.render_html: (String) -> String
4
- def self.render_matches: (String) -> String
5
- def self.render_ast: (String) -> String
3
+ module JavaScript
4
+ end
5
+
6
+ module Lua
7
+ end
8
+
9
+ class Error < StandardError
10
+ end
6
11
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: djot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - gemmaro
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-21 00:00:00.000000000 Z
11
+ date: 2023-01-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: execjs
14
+ name: mini_racer
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.8'
19
+ version: 0.6.3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.8'
26
+ version: 0.6.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: ruby-lua
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -46,6 +46,8 @@ executables: []
46
46
  extensions: []
47
47
  extra_rdoc_files: []
48
48
  files:
49
+ - ".mdl_style.rb"
50
+ - ".mdlrc"
49
51
  - ".rubocop.yml"
50
52
  - ".rubocop_todo.yml"
51
53
  - CHANGELOG.md
@@ -58,6 +60,7 @@ files:
58
60
  - djot.gemspec
59
61
  - lib/djot.rb
60
62
  - lib/djot/javascript.rb
63
+ - lib/djot/lua.rb
61
64
  - lib/djot/version.rb
62
65
  - lib/js/djot.js
63
66
  - lib/lua/djot.lua
@@ -68,6 +71,7 @@ files:
68
71
  - lib/lua/djot/html.lua
69
72
  - lib/lua/djot/inline.lua
70
73
  - lib/lua/djot/match.lua
74
+ - sig/djot.gen.rbs
71
75
  - sig/djot.rbs
72
76
  homepage: https://gitlab.com/gemmaro/ruby-djot
73
77
  licenses:
@@ -92,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
92
96
  - !ruby/object:Gem::Version
93
97
  version: '0'
94
98
  requirements: []
95
- rubygems_version: 3.3.26
99
+ rubygems_version: 3.4.1
96
100
  signing_key:
97
101
  specification_version: 4
98
102
  summary: Djot parser