review 3.1.0 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (225) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby-win.yml +45 -0
  3. data/.github/workflows/ruby.yml +27 -0
  4. data/.rubocop.yml +161 -34
  5. data/.travis.yml +16 -15
  6. data/Dockerfile +21 -5
  7. data/NEWS.ja.md +394 -0
  8. data/NEWS.md +395 -1
  9. data/README.md +10 -7
  10. data/appveyor.yml +1 -3
  11. data/bin/review-catalog-converter +5 -5
  12. data/bin/review-check +10 -12
  13. data/bin/review-checkdep +2 -2
  14. data/bin/review-compile +17 -23
  15. data/bin/review-epubmaker +3 -35
  16. data/bin/review-idgxmlmaker +16 -0
  17. data/bin/review-index +2 -89
  18. data/bin/review-preproc +13 -13
  19. data/bin/review-validate +4 -4
  20. data/bin/review-vol +4 -78
  21. data/doc/config.yml.sample +47 -12
  22. data/doc/config.yml.sample-simple +3 -2
  23. data/doc/format.ja.md +120 -17
  24. data/doc/format.md +119 -27
  25. data/doc/makeindex.ja.md +2 -2
  26. data/doc/pdfmaker.ja.md +43 -1
  27. data/doc/pdfmaker.md +42 -1
  28. data/doc/quickstart.ja.md +45 -25
  29. data/doc/quickstart.md +37 -16
  30. data/lib/epubmaker/content.rb +3 -2
  31. data/lib/epubmaker/epubcommon.rb +34 -27
  32. data/lib/epubmaker/epubv2.rb +5 -6
  33. data/lib/epubmaker/epubv3.rb +21 -18
  34. data/lib/epubmaker/producer.rb +2 -1
  35. data/lib/review/book.rb +2 -2
  36. data/lib/review/book/base.rb +91 -96
  37. data/lib/review/book/bib.rb +21 -0
  38. data/lib/review/book/book_unit.rb +155 -0
  39. data/lib/review/book/chapter.rb +48 -29
  40. data/lib/review/book/index.rb +46 -240
  41. data/lib/review/book/index/item.rb +46 -0
  42. data/lib/review/book/page_metric.rb +7 -7
  43. data/lib/review/book/part.rb +45 -10
  44. data/lib/review/book/volume.rb +4 -5
  45. data/lib/review/builder.rb +172 -56
  46. data/lib/review/catalog.rb +14 -17
  47. data/lib/review/compiler.rb +219 -121
  48. data/lib/review/configure.rb +39 -7
  49. data/lib/review/converter.rb +1 -1
  50. data/lib/review/epub2html.rb +43 -5
  51. data/lib/review/epubmaker.rb +69 -27
  52. data/lib/review/extentions/string.rb +0 -4
  53. data/lib/review/htmlbuilder.rb +112 -101
  54. data/lib/review/htmlutils.rb +9 -13
  55. data/lib/review/i18n.rb +3 -3
  56. data/lib/review/idgxmlbuilder.rb +202 -78
  57. data/lib/review/idgxmlmaker.rb +186 -0
  58. data/lib/review/index_builder.rb +653 -0
  59. data/lib/review/init-web/finish.html +10 -0
  60. data/lib/review/init-web/index.html +190 -0
  61. data/lib/review/init-web/review-layout-design.js +691 -0
  62. data/lib/review/init.rb +129 -46
  63. data/lib/review/latexbuilder.rb +255 -92
  64. data/lib/review/lineinput.rb +1 -1
  65. data/lib/review/location.rb +32 -0
  66. data/lib/review/logger.rb +4 -8
  67. data/lib/review/makerhelper.rb +35 -5
  68. data/lib/review/markdownbuilder.rb +50 -38
  69. data/lib/review/md2inaobuilder.rb +3 -5
  70. data/lib/review/pdfmaker.rb +60 -57
  71. data/lib/review/plaintextbuilder.rb +154 -87
  72. data/lib/review/preprocessor.rb +20 -42
  73. data/lib/review/rstbuilder.rb +57 -38
  74. data/lib/review/sec_counter.rb +13 -0
  75. data/lib/review/textmaker.rb +23 -15
  76. data/lib/review/textutils.rb +76 -2
  77. data/lib/review/tocprinter.rb +230 -102
  78. data/lib/review/topbuilder.rb +139 -60
  79. data/lib/review/update.rb +24 -24
  80. data/lib/review/version.rb +1 -1
  81. data/lib/review/volumeprinter.rb +98 -0
  82. data/lib/review/webmaker.rb +20 -24
  83. data/lib/review/webtocprinter.rb +38 -35
  84. data/lib/review/yamlloader.rb +26 -16
  85. data/review.gemspec +6 -4
  86. data/samples/sample-book/README.md +7 -2
  87. data/samples/sample-book/src/.gitignore +154 -0
  88. data/samples/sample-book/src/config-ebook.yml +4 -0
  89. data/samples/sample-book/src/config-jlreq-ebook.yml +4 -0
  90. data/samples/sample-book/src/config-jlreq.yml +6 -0
  91. data/samples/sample-book/src/config.yml +2 -2
  92. data/samples/sample-book/src/lib/tasks/review.rake +29 -14
  93. data/samples/sample-book/src/lib/tasks/z01_copy_sty.rake +14 -8
  94. data/samples/syntax-book/Gemfile +1 -1
  95. data/samples/syntax-book/ch01.re +4 -2
  96. data/samples/syntax-book/ch02.re +8 -16
  97. data/samples/syntax-book/ch03.re +3 -6
  98. data/samples/syntax-book/config-jlreq-lualatex.yml +4 -0
  99. data/samples/syntax-book/config-jlreq.yml +5 -0
  100. data/samples/syntax-book/config-print.yml +3 -0
  101. data/samples/syntax-book/config.yml +1 -1
  102. data/samples/syntax-book/lib/tasks/review.rake +30 -15
  103. data/samples/syntax-book/lib/tasks/z01_copy_sty.rake +14 -8
  104. data/templates/latex/config.erb +39 -25
  105. data/templates/latex/layout.tex.erb +1 -0
  106. data/templates/latex/review-jlreq/README.md +3 -1
  107. data/templates/latex/review-jlreq/review-base.sty +161 -50
  108. data/templates/latex/review-jlreq/review-jlreq.cls +21 -22
  109. data/templates/latex/review-jlreq/review-style.sty +4 -1
  110. data/templates/latex/review-jsbook/README.md +46 -5
  111. data/templates/latex/review-jsbook/review-base.sty +123 -35
  112. data/templates/latex/review-jsbook/review-jsbook.cls +10 -4
  113. data/templates/latex/review-jsbook/review-style.sty +5 -2
  114. data/templates/opf/epubv3.opf.erb +1 -0
  115. data/templates/web/html/layout-html5.html.erb +3 -3
  116. data/test/assets/test_template.tex +19 -7
  117. data/test/assets/test_template_backmatter.tex +19 -7
  118. data/test/book_test_helper.rb +11 -5
  119. data/test/test_book.rb +124 -79
  120. data/test/test_book_chapter.rb +97 -54
  121. data/test/test_book_part.rb +3 -3
  122. data/test/test_builder.rb +38 -13
  123. data/test/test_catalog.rb +24 -42
  124. data/test/test_catalog_converter_cmd.rb +1 -1
  125. data/test/test_converter.rb +1 -0
  126. data/test/test_epub3maker.rb +2 -2
  127. data/test/test_epubmaker.rb +8 -0
  128. data/test/test_epubmaker_cmd.rb +14 -7
  129. data/test/test_helper.rb +18 -7
  130. data/test/test_htmlbuilder.rb +1491 -205
  131. data/test/test_htmlutils.rb +0 -12
  132. data/test/test_i18n.rb +37 -37
  133. data/test/test_idgxmlbuilder.rb +744 -42
  134. data/test/test_idgxmlmaker_cmd.rb +46 -0
  135. data/test/test_image_finder.rb +52 -70
  136. data/test/test_index.rb +94 -44
  137. data/test/test_indexbuilder.rb +52 -0
  138. data/test/test_latexbuilder.rb +1784 -161
  139. data/test/test_latexbuilder_v2.rb +671 -102
  140. data/test/test_logger.rb +17 -4
  141. data/test/test_makerhelper.rb +2 -14
  142. data/test/test_markdownbuilder.rb +137 -16
  143. data/test/test_md2inaobuilder.rb +32 -9
  144. data/test/test_pdfmaker.rb +30 -12
  145. data/test/test_pdfmaker_cmd.rb +100 -6
  146. data/test/test_plaintextbuilder.rb +791 -30
  147. data/test/test_preprocessor.rb +2 -16
  148. data/test/test_review_ext.rb +2 -1
  149. data/test/test_rstbuilder.rb +274 -27
  150. data/test/test_sec_counter.rb +156 -0
  151. data/test/test_textmaker_cmd.rb +54 -0
  152. data/test/test_textutils.rb +109 -2
  153. data/test/test_topbuilder.rb +724 -34
  154. data/test/test_update.rb +20 -11
  155. data/test/test_webtocprinter.rb +75 -43
  156. data/test/test_yamlloader.rb +13 -0
  157. data/vendor/gentombow/LICENSE +1 -1
  158. data/vendor/gentombow/Makefile +0 -1
  159. data/vendor/gentombow/bounddvi-en.pdf +0 -0
  160. data/vendor/gentombow/bounddvi-en.tex +1 -0
  161. data/vendor/gentombow/bounddvi.pdf +0 -0
  162. data/vendor/gentombow/bounddvi.sty +30 -7
  163. data/vendor/gentombow/bounddvi.tex +1 -0
  164. data/vendor/gentombow/create_archive.sh +1 -0
  165. data/vendor/gentombow/gentombow-ja.pdf +0 -0
  166. data/vendor/gentombow/gentombow-ja.tex +9 -0
  167. data/vendor/gentombow/gentombow.pdf +0 -0
  168. data/vendor/gentombow/gentombow.sty +32 -10
  169. data/vendor/gentombow/gentombow.tex +8 -0
  170. data/vendor/gentombow/tests/gentombow-01-pdfx.tex +8 -0
  171. data/vendor/gentombow/tests/gentombow-02-pdfx.tex +8 -0
  172. data/vendor/jsclasses/LICENSE +1 -1
  173. data/vendor/jsclasses/Makefile +3 -2
  174. data/vendor/jsclasses/create_archive.sh +5 -5
  175. data/vendor/jsclasses/jis/Makefile +3 -2
  176. data/vendor/jsclasses/jis/jsarticle.cls +74 -31
  177. data/vendor/jsclasses/jis/jsbook.cls +74 -31
  178. data/vendor/jsclasses/jis/jsclasses.dtx +176 -36
  179. data/vendor/jsclasses/jis/jsclasses.ins +15 -5
  180. data/vendor/jsclasses/jis/jslogo.dtx +4 -4
  181. data/vendor/jsclasses/jis/jslogo.ins +9 -0
  182. data/vendor/jsclasses/jis/jslogo.sty +4 -16
  183. data/vendor/jsclasses/jis/jspf.cls +73 -30
  184. data/vendor/jsclasses/jis/jsreport.cls +74 -31
  185. data/vendor/jsclasses/jis/jsverb.ins +9 -0
  186. data/vendor/jsclasses/jis/jsverb.sty +1 -13
  187. data/vendor/jsclasses/jis/kiyou.cls +74 -31
  188. data/vendor/jsclasses/jis/minijs.sty +65 -22
  189. data/vendor/jsclasses/jis/okumacro.dtx +4 -5
  190. data/vendor/jsclasses/jis/okumacro.ins +9 -0
  191. data/vendor/jsclasses/jis/okumacro.sty +4 -17
  192. data/vendor/jsclasses/jis/okuverb.ins +9 -0
  193. data/vendor/jsclasses/jis/okuverb.sty +1 -13
  194. data/vendor/jsclasses/jis/winjis.sty +23 -19
  195. data/vendor/jsclasses/jsarticle.cls +74 -31
  196. data/vendor/jsclasses/jsbook.cls +74 -31
  197. data/vendor/jsclasses/jsclasses.dtx +176 -36
  198. data/vendor/jsclasses/jsclasses.ins +15 -5
  199. data/vendor/jsclasses/jsclasses.pdf +0 -0
  200. data/vendor/jsclasses/jslogo.dtx +4 -4
  201. data/vendor/jsclasses/jslogo.ins +9 -0
  202. data/vendor/jsclasses/jslogo.pdf +0 -0
  203. data/vendor/jsclasses/jslogo.sty +4 -16
  204. data/vendor/jsclasses/jspf.cls +73 -30
  205. data/vendor/jsclasses/jsreport.cls +74 -31
  206. data/vendor/jsclasses/jsverb.ins +9 -0
  207. data/vendor/jsclasses/jsverb.pdf +0 -0
  208. data/vendor/jsclasses/jsverb.sty +1 -13
  209. data/vendor/jsclasses/kiyou.cls +74 -31
  210. data/vendor/jsclasses/minijs.sty +68 -22
  211. data/vendor/jsclasses/okumacro.dtx +4 -5
  212. data/vendor/jsclasses/okumacro.ins +9 -0
  213. data/vendor/jsclasses/okumacro.pdf +0 -0
  214. data/vendor/jsclasses/okumacro.sty +4 -17
  215. data/vendor/jsclasses/okuverb.ins +9 -0
  216. data/vendor/jsclasses/okuverb.pdf +0 -0
  217. data/vendor/jsclasses/okuverb.sty +1 -13
  218. data/vendor/jsclasses/tests/relfont.tex +10 -0
  219. data/vendor/jsclasses/winjis.sty +23 -19
  220. metadata +65 -12
  221. data/.rubocop_todo.yml +0 -7
  222. data/lib/review/book/compilable.rb +0 -173
  223. data/lib/review/tocparser.rb +0 -271
  224. data/samples/syntax-book/review-ext.rb +0 -14
  225. data/test/test_tocparser.rb +0 -25
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e84bcc2665b217e208b209c794a7d4e4a71440f8094cb32e969e294ef49b525b
4
- data.tar.gz: 5a27039b3a6fa44437786debfc54fa2fe24213fdb497a84d4a483bb590fd1118
3
+ metadata.gz: a64963e856714bc3b342e5b436d5a78f310785cfcad7216afa8a1676ea8b22b1
4
+ data.tar.gz: a43be15aee421f6e864d7ba2007981717786ee359bb70d358cb9e4794827a47c
5
5
  SHA512:
6
- metadata.gz: cadd2c9a936fd38bd84f15d9b06fd0e85cd1df1b32e8116e165f4dd67801cdef887ca0e1c788ed8d5c3cc3b9979d729eb886149b7c188d2d461f459d6da36923
7
- data.tar.gz: ce5a14cc670d7c57ce8fb6b7c2a885dc9bdef074da06eaa3a83d1bca5eeaa4196d42f60763d86e0aa2afe8a2115ad38f3e6e43ef69aaedd930dd938eefb50bd5
6
+ metadata.gz: 12d7b001415a9e5f1b38f652ec4b3e89d8ad55661eb20fd911e0e626e1f8b3651844816ed209fa6f015524dcf2ff6f2c604ad5427ebbed91d21187e62f8629d5
7
+ data.tar.gz: 95a137a10cf78f204a3ee1d94d078f4ebe24b9b5a710c43cd41fee30d04c40ce9d350d121cd76952df5a2f01bcb9166588e287399a71cd308ff4bae31cae128e
@@ -0,0 +1,45 @@
1
+ name: TestWin
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ build:
7
+
8
+ runs-on: windows-latest
9
+ strategy:
10
+ fail-fast: false
11
+ matrix:
12
+ ruby: [ '2.6.x', '2.5.x', '2.4.x' ]
13
+
14
+ steps:
15
+ - uses: actions/checkout@v1
16
+ - name: Set up Ruby
17
+ uses: actions/setup-ruby@v1
18
+ with:
19
+ ruby-version: ${{ matrix.ruby }}
20
+ - name: Build and test with Rake
21
+ shell: bash
22
+ run: |
23
+ gem install bundler --no-document
24
+ bundle install --retry 3
25
+ bundle exec ruby test/run_test.rb --max-diff-target-string-size=10000 --verbose=v
26
+ - name: install Re:VIEW and epubcheck-ruby
27
+ shell: bash
28
+ run: |
29
+ gem install -N epubcheck-ruby
30
+ rake install
31
+ - name: Test with epubcheck-ruby
32
+ shell: bash
33
+ run: |
34
+ review-init hello
35
+ cd hello
36
+ ruby -e 'Dir.glob("*.re"){|path| File.write(path, File.read(path).gsub("=", "= foo")) }'
37
+ review-epubmaker config.yml
38
+ epubcheck book.epub
39
+ cd ..
40
+ review-init hello2 --epub-version 2
41
+ cd hello2
42
+ ruby -e 'Dir.glob("*.re"){|path| File.write(path, File.read(path).gsub("=", "= foo")) }'
43
+ review-epubmaker config.yml
44
+ epubcheck book.epub
45
+ cd ..
@@ -0,0 +1,27 @@
1
+ name: Test
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ build:
7
+
8
+ runs-on: ${{ matrix.os }}
9
+ strategy:
10
+ fail-fast: false
11
+ matrix:
12
+ ruby: [2.4, 2.5, 2.6, 2.7]
13
+ os: [ubuntu-latest, macOS-latest]
14
+ steps:
15
+ - uses: actions/checkout@v2
16
+ - name: Set up Ruby
17
+ uses: ruby/setup-ruby@v1
18
+ with:
19
+ ruby-version: ${{ matrix.ruby }}
20
+ - name: fix ImageMagick policy.xml on Linux
21
+ if: runner.os == 'Linux'
22
+ run: sudo sed -i 's/none/read|write/g' /etc/ImageMagick-6/policy.xml
23
+ - name: Build and test with Rake
24
+ run: |
25
+ gem install bundler --no-document
26
+ bundle install --retry 3
27
+ bundle exec rake
@@ -3,9 +3,12 @@ AllCops:
3
3
  - lib/lineinput.rb
4
4
  - lib/uuid.rb
5
5
  - test/syntax-book/*
6
+ - tmp/*
6
7
  DisplayCopNames: true
8
+ NewCops: enable
7
9
 
8
- inherit_from: .rubocop_todo.yml
10
+ require:
11
+ - rubocop-performance
9
12
 
10
13
  #### Lint
11
14
 
@@ -22,9 +25,6 @@ Lint/AssignmentInCondition:
22
25
  Lint/ParenthesesAsGroupedExpression:
23
26
  Enabled: true
24
27
 
25
- #Lint/RescueWithoutErrorClass:
26
- # Enabled: false
27
-
28
28
  Lint/UnderscorePrefixedVariableName:
29
29
  Enabled: true
30
30
 
@@ -37,6 +37,21 @@ Lint/UnusedMethodArgument:
37
37
  Lint/UselessAssignment:
38
38
  Enabled: true
39
39
 
40
+ Lint/ErbNewArguments:
41
+ Enabled: false
42
+
43
+ Lint/DeprecatedOpenSSLConstant:
44
+ Enabled: true
45
+
46
+ Lint/MixedRegexpCaptureTypes:
47
+ Enabled: true
48
+
49
+ Lint/RaiseException:
50
+ Enabled: true
51
+
52
+ Lint/StructNewOverride:
53
+ Enabled: true
54
+
40
55
  #### Performance
41
56
 
42
57
  Performance/RegexpMatch:
@@ -52,6 +67,39 @@ Performance/StringReplacement:
52
67
  Performance/RangeInclude:
53
68
  Enabled: true
54
69
 
70
+ Performance/DeletePrefix:
71
+ Enabled: false
72
+
73
+ Performance/RedundantMerge:
74
+ Enabled: true
75
+
76
+ Performance/AncestorsInclude:
77
+ Enabled: true
78
+
79
+ Performance/BigDecimalWithNumericArgument:
80
+ Enabled: true
81
+
82
+ Performance/RedundantSortBlock:
83
+ Enabled: true
84
+
85
+ Performance/RedundantStringChars:
86
+ Enabled: true
87
+
88
+ Performance/ReverseFirst:
89
+ Enabled: true
90
+
91
+ Performance/SortReverse:
92
+ Enabled: true
93
+
94
+ Performance/Squeeze:
95
+ Enabled: true
96
+
97
+ Performance/StringInclude:
98
+ Enabled: false
99
+
100
+ Performance/CollectionLiteralInLoop:
101
+ Enabled: false
102
+
55
103
  #### Style
56
104
 
57
105
  Style/AccessModifierDeclarations:
@@ -66,7 +114,7 @@ Style/Alias:
66
114
  Enabled: true
67
115
 
68
116
  Style/AndOr:
69
- Enabled: false
117
+ Enabled: true
70
118
 
71
119
  Style/BarePercentLiterals:
72
120
  EnforcedStyle: percent_q
@@ -75,9 +123,6 @@ Style/BarePercentLiterals:
75
123
  Style/BlockDelimiters:
76
124
  Enabled: true
77
125
 
78
- Style/BracesAroundHashParameters:
79
- Enabled: false
80
-
81
126
  Style/CaseEquality:
82
127
  Enabled: false
83
128
 
@@ -90,6 +135,9 @@ Style/ClassMethods:
90
135
  Style/CommentedKeyword:
91
136
  Enabled: false
92
137
 
138
+ Style/FloatDivision:
139
+ Enabled: false
140
+
93
141
  # Do not introduce global variables.
94
142
  Style/GlobalVars:
95
143
  Enabled: true
@@ -111,7 +159,7 @@ Style/EmptyElse:
111
159
  Enabled: true
112
160
 
113
161
  Style/EvalWithLocation:
114
- Enabled: false
162
+ Enabled: true
115
163
 
116
164
  Style/FormatString:
117
165
  EnforcedStyle: sprintf
@@ -132,13 +180,10 @@ Style/IfUnlessModifier:
132
180
  Style/MutableConstant:
133
181
  Enabled: false
134
182
 
135
- #Style/MultipleComparison:
136
- # Enabled: true
137
-
138
- Style/UnneededInterpolation:
183
+ Style/MultipleComparison:
139
184
  Enabled: true
140
185
 
141
- Performance/RedundantMerge:
186
+ Style/RedundantInterpolation:
142
187
  Enabled: true
143
188
 
144
189
  Style/ZeroLengthPredicate:
@@ -187,6 +232,34 @@ Style/LineEndConcatenation:
187
232
  Style/MethodCallWithoutArgsParentheses:
188
233
  Enabled: true
189
234
 
235
+ Style/MethodCallWithArgsParentheses:
236
+ IgnoredMethods:
237
+ - 'require'
238
+ - 'include'
239
+ - 'file'
240
+ - 'task'
241
+ - 'desc'
242
+ - 'info'
243
+ - 'gem'
244
+ - 'exit'
245
+ - 'print'
246
+ - 'puts'
247
+ - 'write'
248
+ - 'warn'
249
+ - 'error'
250
+ - 'raise'
251
+ - 'yield'
252
+ - 'source'
253
+ - 'assert'
254
+ - 'assert_equal'
255
+ - 'assert_raise'
256
+ - 'assert_raises'
257
+ - 'assert_nothing_raised'
258
+ - 'sh'
259
+ - 'mv'
260
+ - 'rm_rf'
261
+ Enabled: true
262
+
190
263
  Style/MixinUsage:
191
264
  Enabled: false
192
265
 
@@ -270,14 +343,56 @@ Style/TrailingCommaInHashLiteral:
270
343
  Style/WordArray:
271
344
  MinSize: 10
272
345
 
273
- Style/UnneededPercentQ:
346
+ Style/RedundantPercentQ:
274
347
  Enabled: false
275
348
 
276
349
  Style/WhileUntilModifier:
277
350
  Enabled: false
278
351
 
279
- #Style/YodaCondition:
280
- # Enabled: true
352
+ Style/YodaCondition:
353
+ Enabled: true
354
+
355
+ Style/ExponentialNotation:
356
+ Enabled: true
357
+
358
+ Style/HashEachMethods:
359
+ Enabled: true
360
+
361
+ Style/HashTransformKeys:
362
+ Enabled: true
363
+
364
+ Style/HashTransformValues:
365
+ Enabled: true
366
+
367
+ Style/RedundantFetchBlock:
368
+ Enabled: true
369
+
370
+ Style/RedundantRegexpCharacterClass:
371
+ Enabled: true
372
+
373
+ Style/RedundantRegexpEscape:
374
+ Enabled: true
375
+
376
+ Style/SlicingWithRange:
377
+ Enabled: false
378
+
379
+ Style/AccessorGrouping:
380
+ Enabled: false
381
+
382
+ Style/CaseLikeIf:
383
+ Enabled: false
384
+
385
+ Style/StringConcatenation:
386
+ Enabled: false
387
+
388
+ Style/OptionalBooleanParameter:
389
+ Enabled: false
390
+
391
+ Style/SoleNestedConditional:
392
+ Enabled: false
393
+
394
+ Style/CombinableLoops:
395
+ Enabled: false
281
396
 
282
397
  ### Layout
283
398
 
@@ -285,7 +400,7 @@ Layout/BlockAlignment:
285
400
  Enabled: true
286
401
 
287
402
  Layout/EndAlignment:
288
- Enabled: AlignWith
403
+ Enabled: true
289
404
 
290
405
  Layout/MultilineMethodCallBraceLayout:
291
406
  Enabled: true
@@ -331,10 +446,10 @@ Layout/IndentationConsistency:
331
446
  Layout/IndentationWidth:
332
447
  Enabled: true
333
448
 
334
- Layout/IndentHash:
449
+ Layout/FirstHashElementIndentation:
335
450
  Enabled: true
336
451
 
337
- Layout/IndentHeredoc:
452
+ Layout/HeredocIndentation:
338
453
  Enabled: false
339
454
 
340
455
  Layout/LeadingCommentSpace:
@@ -381,8 +496,23 @@ Layout/SpaceInsideStringInterpolation:
381
496
  EnforcedStyle: no_space
382
497
  Enabled: true
383
498
 
384
- Layout/TrailingBlankLines:
499
+ Layout/TrailingEmptyLines:
500
+ Enabled: true
501
+
502
+ Layout/TrailingWhitespace:
385
503
  Enabled: true
504
+ AllowInHeredoc: true
505
+
506
+ Layout/EmptyLinesAroundAttributeAccessor:
507
+ Enabled: true
508
+
509
+ Layout/SpaceAroundMethodCallOperator:
510
+ Enabled: true
511
+
512
+ Layout/LineLength:
513
+ Max: 256
514
+ Exclude:
515
+ - "test/**/*"
386
516
 
387
517
  #### Metrics
388
518
 
@@ -390,7 +520,7 @@ Metrics/BlockNesting:
390
520
  Max: 4
391
521
 
392
522
  Metrics/ModuleLength:
393
- Max: 200
523
+ Max: 300
394
524
 
395
525
  Metrics/ParameterLists:
396
526
  Max: 8
@@ -403,11 +533,6 @@ Metrics/ClassLength:
403
533
  Exclude:
404
534
  - 'test/*.rb'
405
535
 
406
- Metrics/LineLength:
407
- Max: 256
408
- Exclude:
409
- - "test/**/*"
410
-
411
536
  ### should be < 50
412
537
  Metrics/MethodLength:
413
538
  Max: 100
@@ -442,8 +567,8 @@ Naming/AccessorMethodName:
442
567
  Enabled: true
443
568
 
444
569
  # When defining the == operator, name its argument other.
445
- #Style/BinaryOperatorParameterName:
446
- # Enabled: true
570
+ Naming/BinaryOperatorParameterName:
571
+ Enabled: true
447
572
 
448
573
  Naming/FileName:
449
574
  Enabled: false
@@ -457,7 +582,7 @@ Naming/MemoizedInstanceVariableName:
457
582
  Naming/MethodName:
458
583
  Enabled: true
459
584
 
460
- Naming/UncommunicativeMethodParamName:
585
+ Naming/MethodParameterName:
461
586
  Enabled: false
462
587
 
463
588
  # Use snake_case for variable names.
@@ -470,8 +595,10 @@ Naming/VariableNumber:
470
595
 
471
596
  #### Security
472
597
 
473
- # we use Date object in config.yml so should use YAML.load :-/
474
598
  Security/YAMLLoad:
475
- Exclude:
476
- - 'lib/review/catalog.rb'
477
- - 'test/test_helper.rb'
599
+ Enabled: true
600
+
601
+ #### Gemspec
602
+
603
+ Gemspec/RequiredRubyVersion:
604
+ Enabled: false
@@ -2,6 +2,10 @@ language: ruby
2
2
  sudo: false
3
3
  dist: trusty
4
4
 
5
+ os:
6
+ - linux
7
+ - osx
8
+
5
9
  addons:
6
10
  apt:
7
11
  packages:
@@ -12,23 +16,20 @@ addons:
12
16
 
13
17
  before_install:
14
18
  - |-
15
- RUBY_VER=`ruby -e "print RUBY_VERSION"`
16
- if [ "$RUBY_VER" = "2.1.10" ]; then
17
- gem install bundler -v '< 2'
18
- elif [ "$RUBY_VER" = "2.2.10" ]; then
19
- gem install bundler -v '< 2'
20
- else
21
- gem update --system
22
- gem install bundler
23
- fi
19
+ ## gem update --system
20
+ gem install bundler
21
+ gem install epubcheck-ruby
22
+
23
+ script:
24
+ - bundle exec rake
25
+ - ruby bin/review-init hello && cd hello && ruby ../bin/review-epubmaker config.yml && epubcheck book.epub
26
+ - cd ..
27
+ - ruby bin/review-init hello2 --epub-version 2 && cd hello2 && ruby ../bin/review-epubmaker config.yml && epubcheck book.epub
24
28
 
25
29
  rvm:
26
- - 2.1
27
- - 2.2.10
28
- - 2.3.8
29
- - 2.4.5
30
- - 2.5.3
31
- - 2.6.0
30
+ - 2.4.6
31
+ - 2.5.5
32
+ - 2.6.3
32
33
  ## - ruby-head
33
34
 
34
35
  branches: