asciidoctor-diagram 1.5.4 → 1.5.5
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 +4 -4
- data/CHANGELOG.adoc +26 -6
- data/lib/asciidoctor-diagram/ditaa/extension.rb +1 -1
- data/lib/asciidoctor-diagram/extensions.rb +18 -12
- data/lib/asciidoctor-diagram/meme/extension.rb +12 -2
- data/lib/asciidoctor-diagram/mermaid/extension.rb +2 -2
- data/lib/asciidoctor-diagram/plantuml/extension.rb +1 -1
- data/lib/asciidoctor-diagram/util/java.rb +1 -1
- data/lib/asciidoctor-diagram/util/which.rb +6 -6
- data/lib/asciidoctor-diagram/version.rb +1 -1
- data/lib/batik-all-1.7.jar +0 -0
- data/lib/ditaa-1.3.12.jar +0 -0
- data/lib/jlatexmath-minimal-1.0.3.jar +0 -0
- data/lib/plantuml-1.3.12.jar +0 -0
- data/lib/plantuml.jar +0 -0
- data/lib/server-1.3.12.jar +0 -0
- data/spec/ditaa_spec.rb +29 -0
- data/spec/plantuml_spec.rb +121 -0
- metadata +7 -3
- data/lib/asciidoctor-diagram-java-1.3.10.jar +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 65e470f480837be7f630896e91d0c61368b8a2f5
|
4
|
+
data.tar.gz: 0c674e665f3f412f2181cde62163d116efbfc7de
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 487247e3185db46d245f2c7e78c43524ed4da61a200e92a2b9984ecab45bbf6db2eee009cc3b66239941af4bc3142944e97ca0ff4daad189966f31ab5a78b39e
|
7
|
+
data.tar.gz: 92dfed70c63edf7436f4af7f1ec3b6bdb9e797fcfc953d2d74409cb8d70ed071b104e2bfdd9d597c8f004230f800120bc0ce3cc01f0eeb310ab3af14793db048
|
data/CHANGELOG.adoc
CHANGED
@@ -1,11 +1,27 @@
|
|
1
1
|
= Asciidoctor-diagram Changelog
|
2
2
|
|
3
|
+
== Development
|
4
|
+
|
5
|
+
== 1.5.5
|
6
|
+
|
7
|
+
Enhancements::
|
8
|
+
|
9
|
+
* Update PlantUML to revision 2017.15
|
10
|
+
* Issue #147: Add support for PlantUML SVG output (@puffybsd)
|
11
|
+
* Resolve compatibility issues with Asciidoctor 1.5.6 (@robertpanzer, @mojavelinux)
|
12
|
+
|
13
|
+
Bug Fixes::
|
14
|
+
|
15
|
+
* Issue #145: Incremental runs on documents containing meme diagrams would fail
|
16
|
+
* Issue #150: Resolve Ditaa character encoding issues
|
17
|
+
* Avoid error when the `PATH` environment variable is not defined (@BrentDouglas)
|
18
|
+
|
3
19
|
== 1.5.4
|
4
20
|
|
5
21
|
Enhancements::
|
6
22
|
|
7
|
-
* Add support for UMLet
|
8
|
-
* Issue #141: Allow blockdiag fontpath to be specified via attributes
|
23
|
+
* Add support for UMLet (@basejumpa)
|
24
|
+
* Issue #141: Allow blockdiag fontpath to be specified via attributes (@bithium)
|
9
25
|
|
10
26
|
Bug Fixes::
|
11
27
|
|
@@ -28,7 +44,7 @@ Bug Fixes::
|
|
28
44
|
|
29
45
|
Enhancements::
|
30
46
|
|
31
|
-
* Apply anti-aliasing to blockdiag generated images
|
47
|
+
* Apply anti-aliasing to blockdiag generated images (@bithium)
|
32
48
|
* Issue #118: Add support for Erd.
|
33
49
|
|
34
50
|
Bug Fixes::
|
@@ -54,6 +70,7 @@ Enhancements::
|
|
54
70
|
* Issue #112: Update PlantUML to revision 8043 (19/06/2016)
|
55
71
|
* Issue #114: Asciidoctor Diagram now requires Asciidoctor if it hasn't been loaded already.
|
56
72
|
* Issue #116: Resolve relative paths in PlantUML !include directives
|
73
|
+
* Add Chinese README translation (@diguage)
|
57
74
|
|
58
75
|
== 1.4.0
|
59
76
|
|
@@ -82,12 +99,13 @@ Bug Fixes::
|
|
82
99
|
|
83
100
|
* Issue #83: Omit stack trace information from error message that gets embedded in the output document
|
84
101
|
* Issue #84: Restore support for specifying the location of the `dot` executable using the `graphvizdot` attribute
|
102
|
+
* Avoid deprecation warnings with JRuby 9000 (@robertpanzer)
|
85
103
|
|
86
104
|
== 1.3.1
|
87
105
|
|
88
106
|
Bug Fixes::
|
89
107
|
|
90
|
-
* Issue #78: Resolve Java launch issues when running in a Cygwin environment
|
108
|
+
* Issue #78: Resolve Java launch issues when running in a Cygwin environment (@chanibal)
|
91
109
|
|
92
110
|
== 1.3.0
|
93
111
|
|
@@ -102,11 +120,13 @@ Enhancements::
|
|
102
120
|
* Remove dependency on RJB to simplify installation (issue #48)
|
103
121
|
* Add diagram scaling support using the scale attribute (issue #58)
|
104
122
|
* Add Ditaa command line option support using the options attribute (issue #69)
|
123
|
+
* Add extra usage instructions to README (@nearnshaw)
|
105
124
|
|
106
125
|
Bug Fixes::
|
107
126
|
|
108
127
|
* Issue #49: Resolve issue that made Java 6 installation prompt appear on Mac OS X
|
109
128
|
* Issue #51: Resolved issue where PNG files generated by Graphviz were not processed correctly on Windows
|
129
|
+
* Fix caching issue on Travis CI (@j-manu)
|
110
130
|
|
111
131
|
== 1.2.0
|
112
132
|
|
@@ -130,9 +150,9 @@ Bug Fixes::
|
|
130
150
|
|
131
151
|
Enhancements::
|
132
152
|
|
133
|
-
* Use the output directory (outdir attribute) as base directory if it's specified.
|
153
|
+
* Use the output directory (outdir attribute) as base directory if it's specified. (@neher)
|
134
154
|
* Do not auto-generate width/height attributes when outputting to a non-HTML backend. This resolves issues with
|
135
|
-
oversized images in docbook output.
|
155
|
+
oversized images in docbook output. (@neher)
|
136
156
|
|
137
157
|
== 1.1.4
|
138
158
|
|
@@ -20,7 +20,7 @@ module Asciidoctor
|
|
20
20
|
'transparent' => lambda { |o, v| o << '--transparent' if v == 'true'}
|
21
21
|
}
|
22
22
|
|
23
|
-
JARS = ['ditaamini-0.10.jar'].map do |jar|
|
23
|
+
JARS = ['ditaa-1.3.12.jar', 'ditaamini-0.10.jar'].map do |jar|
|
24
24
|
File.expand_path File.join('../..', jar), File.dirname(__FILE__)
|
25
25
|
end
|
26
26
|
Java.classpath.concat JARS
|
@@ -282,12 +282,19 @@ module Asciidoctor
|
|
282
282
|
subclass.option :pos_attrs, ['target', 'format']
|
283
283
|
end
|
284
284
|
|
285
|
+
def apply_target_subs(parent, target)
|
286
|
+
if target
|
287
|
+
parent.sub_attributes(target, :attribute_missing => 'warn')
|
288
|
+
else
|
289
|
+
nil
|
290
|
+
end
|
291
|
+
end
|
292
|
+
|
285
293
|
# Creates a FileSource using target as the file name.
|
286
294
|
#
|
287
295
|
# @return [FileSource] a FileSource
|
288
296
|
def create_source(parent, target, attributes)
|
289
|
-
|
290
|
-
FileSource.new(parent, target, attributes)
|
297
|
+
FileSource.new(parent, apply_target_subs(parent, target), attributes)
|
291
298
|
end
|
292
299
|
end
|
293
300
|
|
@@ -326,7 +333,7 @@ module Asciidoctor
|
|
326
333
|
# @return [String] the base directory against which relative paths in this diagram should be resolved
|
327
334
|
# @abstract
|
328
335
|
def base_dir
|
329
|
-
|
336
|
+
attr('docdir', nil, true)
|
330
337
|
end
|
331
338
|
|
332
339
|
# Alias for code
|
@@ -402,10 +409,9 @@ module Asciidoctor
|
|
402
409
|
protected
|
403
410
|
def resolve_diagram_subs
|
404
411
|
if @attributes.key? 'subs'
|
405
|
-
|
406
|
-
subs.empty? ? nil : subs
|
412
|
+
@parent_block.resolve_block_subs @attributes['subs'], nil, 'diagram'
|
407
413
|
else
|
408
|
-
|
414
|
+
[]
|
409
415
|
end
|
410
416
|
end
|
411
417
|
|
@@ -430,10 +436,6 @@ module Asciidoctor
|
|
430
436
|
@reader = reader
|
431
437
|
end
|
432
438
|
|
433
|
-
def base_dir
|
434
|
-
attr('docdir', nil, true)
|
435
|
-
end
|
436
|
-
|
437
439
|
def code
|
438
440
|
@code ||= @parent_block.apply_subs(@reader.lines, resolve_diagram_subs).join("\n")
|
439
441
|
end
|
@@ -447,7 +449,11 @@ module Asciidoctor
|
|
447
449
|
end
|
448
450
|
|
449
451
|
def base_dir
|
450
|
-
|
452
|
+
if @file_name
|
453
|
+
File.dirname(@file_name)
|
454
|
+
else
|
455
|
+
super
|
456
|
+
end
|
451
457
|
end
|
452
458
|
|
453
459
|
def image_name
|
@@ -461,7 +467,7 @@ module Asciidoctor
|
|
461
467
|
end
|
462
468
|
|
463
469
|
def should_process?(image_file, image_metadata)
|
464
|
-
File.mtime(@file_name) > File.mtime(image_file) || super
|
470
|
+
(@file_name && File.mtime(@file_name) > File.mtime(image_file)) || super
|
465
471
|
end
|
466
472
|
|
467
473
|
def code
|
@@ -107,12 +107,22 @@ module Asciidoctor
|
|
107
107
|
class MemeBlockMacroProcessor < Extensions::DiagramBlockMacroProcessor
|
108
108
|
include Meme
|
109
109
|
|
110
|
+
class StringReader
|
111
|
+
def initialize(str)
|
112
|
+
@str = str
|
113
|
+
end
|
114
|
+
|
115
|
+
def lines
|
116
|
+
@str.lines.map { |l| l.rstrip }
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
110
120
|
option :pos_attrs, %w(top bottom target format)
|
111
121
|
|
112
122
|
def create_source(parent, target, attributes)
|
113
123
|
attributes = attributes.dup
|
114
|
-
attributes['background'] = target
|
115
|
-
::Asciidoctor::Diagram::Extensions::
|
124
|
+
attributes['background'] = apply_target_subs(parent, target)
|
125
|
+
::Asciidoctor::Diagram::Extensions::ReaderSource.new(parent, StringReader.new(''), attributes)
|
116
126
|
end
|
117
127
|
end
|
118
128
|
end
|
@@ -21,9 +21,9 @@ module Asciidoctor
|
|
21
21
|
|
22
22
|
def mermaid(parent_block, source, format)
|
23
23
|
mermaid = which(parent_block, 'mermaid')
|
24
|
-
|
24
|
+
config['mermaid>=6'] ||= ::Asciidoctor::Diagram::Cli.run(mermaid, '--version').split('.')[0].to_i >= 6
|
25
25
|
# Mermaid >= 6.0.0 requires PhantomJS 2.1; older version required 1.9
|
26
|
-
phantomjs = which(parent_block, 'phantomjs', :alt_attrs => [
|
26
|
+
phantomjs = which(parent_block, 'phantomjs', :alt_attrs => [config['mermaid>=6'] ? 'phantomjs_2' : 'phantomjs_19'])
|
27
27
|
|
28
28
|
css = source.attr('css', nil, 'mermaid')
|
29
29
|
if css
|
@@ -10,7 +10,7 @@ module Asciidoctor
|
|
10
10
|
|
11
11
|
private
|
12
12
|
|
13
|
-
JARS = ['plantuml.jar'].map do |jar|
|
13
|
+
JARS = ['plantuml-1.3.12.jar', 'plantuml.jar', 'jlatexmath-minimal-1.0.3.jar', 'batik-all-1.7.jar'].map do |jar|
|
14
14
|
File.expand_path File.join('../..', jar), File.dirname(__FILE__)
|
15
15
|
end
|
16
16
|
Java.classpath.concat JARS
|
@@ -6,7 +6,7 @@ module Asciidoctor
|
|
6
6
|
module Java
|
7
7
|
def self.classpath
|
8
8
|
@classpath ||= [
|
9
|
-
File.expand_path(File.join('../..', '
|
9
|
+
File.expand_path(File.join('../..', 'server-1.3.12.jar'), File.dirname(__FILE__))
|
10
10
|
]
|
11
11
|
end
|
12
12
|
|
@@ -5,7 +5,7 @@ module Asciidoctor
|
|
5
5
|
def self.which(cmd, options = {})
|
6
6
|
exts = ENV['PATHEXT'] ? ENV['PATHEXT'].split(';') : ['']
|
7
7
|
|
8
|
-
paths = (options[:path] || []) + ENV['PATH'].split(File::PATH_SEPARATOR)
|
8
|
+
paths = (options[:path] || []) + (ENV['PATH'] ? ENV['PATH'].split(File::PATH_SEPARATOR) : [])
|
9
9
|
paths.each do |path|
|
10
10
|
exts.each { |ext|
|
11
11
|
exe = File.join(path, "#{cmd}#{ext}")
|
@@ -20,10 +20,10 @@ module Asciidoctor
|
|
20
20
|
attr_names = options[:attrs] || options.fetch(:alt_attrs, []) + [cmd]
|
21
21
|
cmd_names = [cmd] + options.fetch(:alt_cmds, [])
|
22
22
|
|
23
|
-
cmd_var = '
|
23
|
+
cmd_var = 'cmd-' + attr_names[0]
|
24
24
|
|
25
|
-
if
|
26
|
-
cmd_path =
|
25
|
+
if config.key? cmd_var
|
26
|
+
cmd_path = config[cmd_var]
|
27
27
|
else
|
28
28
|
cmd_path = attr_names.map { |attr_name| parent_block.attr(attr_name, nil, true) }.find { |attr| !attr.nil? }
|
29
29
|
|
@@ -35,7 +35,7 @@ module Asciidoctor
|
|
35
35
|
cmd_path = cmd_paths.reject { |c| c.nil? }.first
|
36
36
|
end
|
37
37
|
|
38
|
-
|
38
|
+
config[cmd_var] = cmd_path
|
39
39
|
|
40
40
|
if cmd_path.nil? && options.fetch(:raise_on_error, true)
|
41
41
|
raise "Could not find the #{cmd_names.map { |c| "'#{c}'" }.join(', ')} executable in PATH; add it to the PATH or specify its location using the '#{attr_names[0]}' document attribute"
|
@@ -46,4 +46,4 @@ module Asciidoctor
|
|
46
46
|
end
|
47
47
|
end
|
48
48
|
end
|
49
|
-
end
|
49
|
+
end
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/lib/plantuml.jar
CHANGED
Binary file
|
Binary file
|
data/spec/ditaa_spec.rb
CHANGED
@@ -186,4 +186,33 @@ Doc Writer <doc@example.com>
|
|
186
186
|
|
187
187
|
expect(mtime2).to be > mtime1
|
188
188
|
end
|
189
|
+
|
190
|
+
it "should support UTF-8 characters" do
|
191
|
+
doc = <<-eos
|
192
|
+
= Test
|
193
|
+
|
194
|
+
[ditaa]
|
195
|
+
----
|
196
|
+
/-----\\
|
197
|
+
|\u00AB \u2026 \u00BB|
|
198
|
+
\\-----/
|
199
|
+
----
|
200
|
+
eos
|
201
|
+
|
202
|
+
d = load_asciidoc doc
|
203
|
+
expect(d).to_not be_nil
|
204
|
+
|
205
|
+
b = d.find { |bl| bl.context == :image }
|
206
|
+
expect(b).to_not be_nil
|
207
|
+
|
208
|
+
expect(b.content_model).to eq :empty
|
209
|
+
|
210
|
+
target = b.attributes['target']
|
211
|
+
expect(target).to_not be_nil
|
212
|
+
expect(target).to match(/\.png$/)
|
213
|
+
expect(File.exist?(target)).to be true
|
214
|
+
|
215
|
+
expect(b.attributes['width']).to_not be_nil
|
216
|
+
expect(b.attributes['height']).to_not be_nil
|
217
|
+
end
|
189
218
|
end
|
data/spec/plantuml_spec.rb
CHANGED
@@ -730,4 +730,125 @@ class {child-class}
|
|
730
730
|
expect(content).to include('ParentClass')
|
731
731
|
expect(content).to include('ChildClass')
|
732
732
|
end
|
733
|
+
|
734
|
+
it "should generate PNG images for jlatexmath blocks when format is set to 'png'" do
|
735
|
+
doc = <<-eos
|
736
|
+
= Hello, PlantUML!
|
737
|
+
Doc Writer <doc@example.com>
|
738
|
+
|
739
|
+
== First Section
|
740
|
+
|
741
|
+
[plantuml,format="png"]
|
742
|
+
----
|
743
|
+
@startlatex
|
744
|
+
e^{i\\pi} + 1 = 0
|
745
|
+
@endlatex
|
746
|
+
----
|
747
|
+
eos
|
748
|
+
|
749
|
+
d = load_asciidoc doc
|
750
|
+
expect(d).to_not be_nil
|
751
|
+
|
752
|
+
b = d.find { |bl| bl.context == :image }
|
753
|
+
expect(b).to_not be_nil
|
754
|
+
|
755
|
+
expect(b.content_model).to eq :empty
|
756
|
+
|
757
|
+
target = b.attributes['target']
|
758
|
+
expect(target).to_not be_nil
|
759
|
+
expect(target).to match(/\.png$/)
|
760
|
+
expect(File.exist?(target)).to be true
|
761
|
+
|
762
|
+
expect(b.attributes['width']).to_not be_nil
|
763
|
+
expect(b.attributes['height']).to_not be_nil
|
764
|
+
end
|
765
|
+
|
766
|
+
it "should generate SVG images for jlatexmath blocks when format is set to 'svg'" do
|
767
|
+
doc = <<-eos
|
768
|
+
= Hello, PlantUML!
|
769
|
+
Doc Writer <doc@example.com>
|
770
|
+
|
771
|
+
== First Section
|
772
|
+
|
773
|
+
[plantuml,format="svg"]
|
774
|
+
----
|
775
|
+
@startlatex
|
776
|
+
e^{i\\pi} + 1 = 0
|
777
|
+
@endlatex
|
778
|
+
----
|
779
|
+
eos
|
780
|
+
|
781
|
+
d = load_asciidoc doc
|
782
|
+
expect(d).to_not be_nil
|
783
|
+
|
784
|
+
b = d.find { |bl| bl.context == :image }
|
785
|
+
expect(b).to_not be_nil
|
786
|
+
|
787
|
+
expect(b.content_model).to eq :empty
|
788
|
+
|
789
|
+
target = b.attributes['target']
|
790
|
+
expect(target).to_not be_nil
|
791
|
+
expect(target).to match(/\.svg$/)
|
792
|
+
expect(File.exist?(target)).to be true
|
793
|
+
end
|
794
|
+
|
795
|
+
it "should generate PNG images for diagrams with latex tags when format is set to 'png'" do
|
796
|
+
doc = <<-eos
|
797
|
+
= Hello, PlantUML!
|
798
|
+
Doc Writer <doc@example.com>
|
799
|
+
|
800
|
+
== First Section
|
801
|
+
|
802
|
+
[plantuml,format="png"]
|
803
|
+
----
|
804
|
+
:<latex>P(y|\\mathbf{x}) \\mbox{ or } f(\\mathbf{x})+\\epsilon</latex>;
|
805
|
+
----
|
806
|
+
eos
|
807
|
+
|
808
|
+
d = load_asciidoc doc
|
809
|
+
expect(d).to_not be_nil
|
810
|
+
|
811
|
+
b = d.find { |bl| bl.context == :image }
|
812
|
+
expect(b).to_not be_nil
|
813
|
+
|
814
|
+
expect(b.content_model).to eq :empty
|
815
|
+
|
816
|
+
target = b.attributes['target']
|
817
|
+
expect(target).to_not be_nil
|
818
|
+
expect(target).to match(/\.png$/)
|
819
|
+
expect(File.exist?(target)).to be true
|
820
|
+
|
821
|
+
expect(b.attributes['width']).to_not be_nil
|
822
|
+
expect(b.attributes['height']).to_not be_nil
|
823
|
+
end
|
824
|
+
|
825
|
+
it "should generate SVG images for diagrams with latex tags when format is set to 'svg'" do
|
826
|
+
doc = <<-eos
|
827
|
+
= Hello, PlantUML!
|
828
|
+
Doc Writer <doc@example.com>
|
829
|
+
|
830
|
+
== First Section
|
831
|
+
|
832
|
+
[plantuml,format="svg"]
|
833
|
+
----
|
834
|
+
:<latex>P(y|\\mathbf{x}) \\mbox{ or } f(\\mathbf{x})+\\epsilon</latex>;
|
835
|
+
----
|
836
|
+
eos
|
837
|
+
|
838
|
+
d = load_asciidoc doc
|
839
|
+
expect(d).to_not be_nil
|
840
|
+
|
841
|
+
b = d.find { |bl| bl.context == :image }
|
842
|
+
expect(b).to_not be_nil
|
843
|
+
|
844
|
+
expect(b.content_model).to eq :empty
|
845
|
+
|
846
|
+
target = b.attributes['target']
|
847
|
+
expect(target).to_not be_nil
|
848
|
+
expect(target).to match(/\.svg$/)
|
849
|
+
expect(File.exist?(target)).to be true
|
850
|
+
|
851
|
+
expect(b.attributes['width']).to_not be_nil
|
852
|
+
expect(b.attributes['height']).to_not be_nil
|
853
|
+
end
|
733
854
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: asciidoctor-diagram
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.
|
4
|
+
version: 1.5.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pepijn Van Eeckhoudt
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-07-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -84,7 +84,6 @@ files:
|
|
84
84
|
- examples/features.adoc
|
85
85
|
- images/asciidoctor-diagram-classes.png
|
86
86
|
- images/asciidoctor-diagram-process.png
|
87
|
-
- lib/asciidoctor-diagram-java-1.3.10.jar
|
88
87
|
- lib/asciidoctor-diagram.rb
|
89
88
|
- lib/asciidoctor-diagram/blockdiag.rb
|
90
89
|
- lib/asciidoctor-diagram/blockdiag/extension.rb
|
@@ -121,8 +120,13 @@ files:
|
|
121
120
|
- lib/asciidoctor-diagram/version.rb
|
122
121
|
- lib/asciidoctor-diagram/wavedrom.rb
|
123
122
|
- lib/asciidoctor-diagram/wavedrom/extension.rb
|
123
|
+
- lib/batik-all-1.7.jar
|
124
|
+
- lib/ditaa-1.3.12.jar
|
124
125
|
- lib/ditaamini-0.10.jar
|
126
|
+
- lib/jlatexmath-minimal-1.0.3.jar
|
127
|
+
- lib/plantuml-1.3.12.jar
|
125
128
|
- lib/plantuml.jar
|
129
|
+
- lib/server-1.3.12.jar
|
126
130
|
- spec/blockdiag_spec.rb
|
127
131
|
- spec/ditaa_spec.rb
|
128
132
|
- spec/erd_spec.rb
|
Binary file
|