review 3.1.0 → 5.0.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 (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: