review 3.2.0 → 5.1.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 (282) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby-tex.yml +31 -0
  3. data/.github/workflows/ruby-win.yml +45 -0
  4. data/.github/workflows/ruby.yml +27 -0
  5. data/.rubocop.yml +167 -42
  6. data/.travis.yml +1 -1
  7. data/Dockerfile +21 -5
  8. data/NEWS.ja.md +428 -1
  9. data/NEWS.md +429 -2
  10. data/README.md +11 -7
  11. data/Rakefile +7 -2
  12. data/appveyor.yml +0 -20
  13. data/bin/review +2 -4
  14. data/bin/review-catalog-converter +5 -5
  15. data/bin/review-check +13 -17
  16. data/bin/review-checkdep +3 -6
  17. data/bin/review-compile +13 -22
  18. data/bin/review-epub2html +1 -4
  19. data/bin/review-epubmaker +3 -4
  20. data/bin/review-idgxmlmaker +14 -0
  21. data/bin/review-index +5 -86
  22. data/bin/review-init +1 -4
  23. data/bin/review-pdfmaker +1 -3
  24. data/bin/review-preproc +11 -13
  25. data/bin/review-textmaker +1 -3
  26. data/bin/review-update +1 -4
  27. data/bin/review-validate +7 -7
  28. data/bin/review-vol +5 -82
  29. data/bin/review-webmaker +1 -3
  30. data/doc/config.yml.sample +67 -16
  31. data/doc/config.yml.sample-simple +4 -3
  32. data/doc/format.ja.md +133 -21
  33. data/doc/format.md +135 -34
  34. data/doc/makeindex.ja.md +2 -2
  35. data/doc/pdfmaker.ja.md +43 -1
  36. data/doc/pdfmaker.md +42 -1
  37. data/doc/quickstart.ja.md +55 -25
  38. data/doc/quickstart.md +47 -17
  39. data/lib/review.rb +1 -1
  40. data/lib/review/book.rb +2 -2
  41. data/lib/review/book/base.rb +89 -90
  42. data/lib/review/book/bib.rb +21 -0
  43. data/lib/review/book/book_unit.rb +158 -0
  44. data/lib/review/book/chapter.rb +51 -29
  45. data/lib/review/book/index.rb +42 -248
  46. data/lib/review/book/index/item.rb +46 -0
  47. data/lib/review/book/page_metric.rb +7 -7
  48. data/lib/review/book/part.rb +45 -10
  49. data/lib/review/book/volume.rb +5 -5
  50. data/lib/review/builder.rb +171 -54
  51. data/lib/review/call_hook.rb +20 -0
  52. data/lib/review/catalog.rb +15 -17
  53. data/lib/review/compiler.rb +240 -102
  54. data/lib/review/configure.rb +101 -12
  55. data/lib/review/converter.rb +1 -1
  56. data/lib/review/epub2html.rb +6 -1
  57. data/lib/review/epubmaker.rb +120 -118
  58. data/lib/review/epubmaker/content.rb +113 -0
  59. data/lib/review/epubmaker/epubcommon.rb +372 -0
  60. data/lib/review/epubmaker/epubv2.rb +178 -0
  61. data/lib/review/epubmaker/epubv3.rb +231 -0
  62. data/lib/review/epubmaker/producer.rb +168 -0
  63. data/lib/review/epubmaker/reviewheaderlistener.rb +12 -2
  64. data/lib/review/epubmaker/zip_exporter.rb +84 -0
  65. data/lib/review/exception.rb +6 -0
  66. data/lib/review/extentions/string.rb +0 -4
  67. data/lib/review/htmlbuilder.rb +147 -149
  68. data/lib/review/htmlutils.rb +10 -14
  69. data/lib/review/i18n.rb +4 -3
  70. data/lib/review/idgxmlbuilder.rb +229 -103
  71. data/lib/review/idgxmlmaker.rb +188 -0
  72. data/lib/review/img_math.rb +245 -0
  73. data/lib/review/index_builder.rb +654 -0
  74. data/lib/review/init-web/finish.html +10 -0
  75. data/lib/review/init-web/index.html +190 -0
  76. data/lib/review/init-web/review-layout-design.js +691 -0
  77. data/lib/review/init.rb +124 -41
  78. data/lib/review/latexbox.rb +58 -0
  79. data/lib/review/latexbuilder.rb +249 -97
  80. data/lib/review/latexutils.rb +9 -1
  81. data/lib/review/lineinput.rb +113 -3
  82. data/lib/review/logger.rb +43 -8
  83. data/lib/review/makerhelper.rb +13 -186
  84. data/lib/review/markdownbuilder.rb +75 -39
  85. data/lib/review/md2inaobuilder.rb +3 -5
  86. data/lib/review/pdfmaker.rb +88 -83
  87. data/lib/review/plaintextbuilder.rb +158 -83
  88. data/lib/review/preprocessor.rb +30 -24
  89. data/lib/review/rstbuilder.rb +58 -39
  90. data/lib/review/sec_counter.rb +14 -0
  91. data/lib/review/template.rb +6 -0
  92. data/lib/review/textmaker.rb +29 -17
  93. data/lib/review/textutils.rb +68 -2
  94. data/lib/review/tocprinter.rb +242 -97
  95. data/lib/review/topbuilder.rb +147 -61
  96. data/lib/review/update.rb +27 -28
  97. data/lib/review/version.rb +1 -1
  98. data/lib/review/volumeprinter.rb +97 -0
  99. data/lib/review/webmaker.rb +36 -35
  100. data/lib/review/webtocprinter.rb +39 -35
  101. data/lib/review/yamlloader.rb +4 -0
  102. data/review.gemspec +8 -5
  103. data/samples/sample-book/README.md +7 -2
  104. data/samples/sample-book/src/.gitignore +154 -0
  105. data/samples/sample-book/src/config-ebook.yml +4 -0
  106. data/samples/sample-book/src/config-epub2.yml +1 -1
  107. data/samples/sample-book/src/config-jlreq-ebook.yml +4 -0
  108. data/samples/sample-book/src/config-jlreq.yml +6 -0
  109. data/samples/sample-book/src/config.yml +3 -3
  110. data/samples/sample-book/src/lib/tasks/review.rake +45 -14
  111. data/samples/sample-book/src/lib/tasks/z01_copy_sty.rake +14 -8
  112. data/samples/syntax-book/Gemfile +1 -1
  113. data/samples/syntax-book/ch01.re +3 -1
  114. data/samples/syntax-book/ch02.re +28 -21
  115. data/samples/syntax-book/ch03.re +4 -7
  116. data/samples/syntax-book/config-jlreq-lualatex.yml +4 -0
  117. data/samples/syntax-book/config-jlreq.yml +5 -0
  118. data/samples/syntax-book/config-print.yml +3 -0
  119. data/samples/syntax-book/config.yml +1 -1
  120. data/samples/syntax-book/images/img3-2.png +0 -0
  121. data/samples/syntax-book/lib/tasks/review.rake +30 -15
  122. data/samples/syntax-book/lib/tasks/z01_copy_sty.rake +14 -8
  123. data/templates/html/_colophon.html.erb +23 -0
  124. data/templates/html/_colophon_history.html.erb +9 -0
  125. data/templates/html/_cover.html.erb +10 -0
  126. data/templates/html/_part_body.html.erb +6 -0
  127. data/templates/html/_titlepage.html.erb +20 -0
  128. data/templates/html/layout-html5.html.erb +6 -0
  129. data/templates/html/layout-xhtml1.html.erb +6 -0
  130. data/templates/latex/config.erb +45 -27
  131. data/templates/latex/layout.tex.erb +1 -0
  132. data/templates/latex/review-jlreq/README.md +3 -1
  133. data/templates/latex/review-jlreq/review-base.sty +124 -37
  134. data/templates/latex/review-jlreq/review-jlreq.cls +29 -22
  135. data/templates/latex/review-jlreq/review-style.sty +9 -1
  136. data/templates/latex/review-jlreq/review-tcbox.sty +348 -0
  137. data/templates/latex/review-jlreq/reviewmacro.sty +5 -0
  138. data/templates/latex/review-jsbook/README.md +46 -5
  139. data/templates/latex/review-jsbook/review-base.sty +111 -30
  140. data/templates/latex/review-jsbook/review-jsbook.cls +16 -2
  141. data/templates/latex/review-jsbook/review-style.sty +10 -2
  142. data/templates/latex/review-jsbook/review-tcbox.sty +348 -0
  143. data/templates/latex/review-jsbook/reviewmacro.sty +5 -0
  144. data/templates/opf/epubv2.opf.erb +7 -7
  145. data/templates/opf/epubv3.opf.erb +7 -7
  146. data/templates/opf/opf_manifest_epubv2.opf.erb +10 -0
  147. data/templates/opf/opf_manifest_epubv3.opf.erb +10 -0
  148. data/templates/opf/opf_metainfo_epubv2.opf.erb +17 -0
  149. data/templates/opf/opf_metainfo_epubv3.opf.erb +49 -0
  150. data/templates/opf/opf_tocx_epubv2.opf.erb +9 -0
  151. data/templates/opf/opf_tocx_epubv3.opf.erb +17 -0
  152. data/templates/web/html/layout-html5.html.erb +9 -8
  153. data/templates/web/html/layout-xhtml1.html.erb +6 -0
  154. data/test/assets/header_listener.html +35 -0
  155. data/test/assets/img_math/img1.png +0 -0
  156. data/test/assets/img_math/img2.png +0 -0
  157. data/test/assets/img_math/img3.png +0 -0
  158. data/test/assets/syntax_book_index_detail.txt +58 -0
  159. data/test/assets/test_template.tex +20 -9
  160. data/test/assets/test_template_backmatter.tex +20 -9
  161. data/test/book_test_helper.rb +11 -5
  162. data/test/run_test.rb +1 -1
  163. data/test/test_book.rb +123 -78
  164. data/test/test_book_chapter.rb +99 -56
  165. data/test/test_book_part.rb +3 -3
  166. data/test/test_builder.rb +24 -15
  167. data/test/test_catalog.rb +19 -42
  168. data/test/test_catalog_converter_cmd.rb +1 -1
  169. data/test/test_converter.rb +1 -0
  170. data/test/test_epub3maker.rb +170 -126
  171. data/test/test_epubmaker.rb +249 -129
  172. data/test/test_epubmaker_cmd.rb +16 -9
  173. data/test/test_helper.rb +23 -11
  174. data/test/test_htmlbuilder.rb +1083 -114
  175. data/test/test_htmlutils.rb +0 -12
  176. data/test/test_i18n.rb +37 -37
  177. data/test/test_idgxmlbuilder.rb +627 -27
  178. data/test/test_idgxmlmaker_cmd.rb +50 -0
  179. data/test/test_image_finder.rb +52 -70
  180. data/test/test_img_math.rb +111 -0
  181. data/test/test_index.rb +62 -52
  182. data/test/test_indexbuilder.rb +52 -0
  183. data/test/test_latexbuilder.rb +1189 -59
  184. data/test/test_latexbuilder_v2.rb +74 -34
  185. data/test/test_lineinput.rb +20 -93
  186. data/test/test_logger.rb +17 -4
  187. data/test/test_makerhelper.rb +2 -14
  188. data/test/test_markdownbuilder.rb +77 -4
  189. data/test/test_md2inaobuilder.rb +12 -2
  190. data/test/test_pdfmaker.rb +101 -12
  191. data/test/test_pdfmaker_cmd.rb +102 -8
  192. data/test/test_plaintextbuilder.rb +562 -31
  193. data/test/test_review_ext.rb +2 -1
  194. data/test/test_reviewheaderlistener.rb +49 -0
  195. data/test/test_rstbuilder.rb +58 -5
  196. data/test/test_sec_counter.rb +156 -0
  197. data/test/test_template.rb +12 -2
  198. data/test/test_textmaker_cmd.rb +58 -0
  199. data/test/test_textutils.rb +109 -2
  200. data/test/test_tocprinter.rb +46 -0
  201. data/test/test_topbuilder.rb +400 -17
  202. data/test/test_update.rb +53 -44
  203. data/test/test_webtocprinter.rb +75 -43
  204. data/test/test_yamlloader.rb +13 -0
  205. data/test/test_zip_exporter.rb +5 -6
  206. data/vendor/gentombow/LICENSE +1 -1
  207. data/vendor/gentombow/Makefile +0 -1
  208. data/vendor/gentombow/bounddvi-en.pdf +0 -0
  209. data/vendor/gentombow/bounddvi-en.tex +1 -0
  210. data/vendor/gentombow/bounddvi.pdf +0 -0
  211. data/vendor/gentombow/bounddvi.sty +30 -7
  212. data/vendor/gentombow/bounddvi.tex +1 -0
  213. data/vendor/gentombow/create_archive.sh +1 -0
  214. data/vendor/gentombow/gentombow-ja.pdf +0 -0
  215. data/vendor/gentombow/gentombow-ja.tex +9 -0
  216. data/vendor/gentombow/gentombow.pdf +0 -0
  217. data/vendor/gentombow/gentombow.sty +32 -10
  218. data/vendor/gentombow/gentombow.tex +8 -0
  219. data/vendor/gentombow/tests/gentombow-01-pdfx.tex +8 -0
  220. data/vendor/gentombow/tests/gentombow-02-pdfx.tex +8 -0
  221. data/vendor/jsclasses/LICENSE +1 -1
  222. data/vendor/jsclasses/Makefile +3 -2
  223. data/vendor/jsclasses/create_archive.sh +5 -5
  224. data/vendor/jsclasses/jis/Makefile +3 -2
  225. data/vendor/jsclasses/jis/jsarticle.cls +74 -31
  226. data/vendor/jsclasses/jis/jsbook.cls +74 -31
  227. data/vendor/jsclasses/jis/jsclasses.dtx +176 -36
  228. data/vendor/jsclasses/jis/jsclasses.ins +15 -5
  229. data/vendor/jsclasses/jis/jslogo.dtx +4 -4
  230. data/vendor/jsclasses/jis/jslogo.ins +9 -0
  231. data/vendor/jsclasses/jis/jslogo.sty +4 -16
  232. data/vendor/jsclasses/jis/jspf.cls +73 -30
  233. data/vendor/jsclasses/jis/jsreport.cls +74 -31
  234. data/vendor/jsclasses/jis/jsverb.ins +9 -0
  235. data/vendor/jsclasses/jis/jsverb.sty +1 -13
  236. data/vendor/jsclasses/jis/kiyou.cls +74 -31
  237. data/vendor/jsclasses/jis/minijs.sty +65 -22
  238. data/vendor/jsclasses/jis/okumacro.dtx +4 -5
  239. data/vendor/jsclasses/jis/okumacro.ins +9 -0
  240. data/vendor/jsclasses/jis/okumacro.sty +4 -17
  241. data/vendor/jsclasses/jis/okuverb.ins +9 -0
  242. data/vendor/jsclasses/jis/okuverb.sty +1 -13
  243. data/vendor/jsclasses/jis/winjis.sty +23 -19
  244. data/vendor/jsclasses/jsarticle.cls +74 -31
  245. data/vendor/jsclasses/jsbook.cls +74 -31
  246. data/vendor/jsclasses/jsclasses.dtx +176 -36
  247. data/vendor/jsclasses/jsclasses.ins +15 -5
  248. data/vendor/jsclasses/jsclasses.pdf +0 -0
  249. data/vendor/jsclasses/jslogo.dtx +4 -4
  250. data/vendor/jsclasses/jslogo.ins +9 -0
  251. data/vendor/jsclasses/jslogo.pdf +0 -0
  252. data/vendor/jsclasses/jslogo.sty +4 -16
  253. data/vendor/jsclasses/jspf.cls +73 -30
  254. data/vendor/jsclasses/jsreport.cls +74 -31
  255. data/vendor/jsclasses/jsverb.ins +9 -0
  256. data/vendor/jsclasses/jsverb.pdf +0 -0
  257. data/vendor/jsclasses/jsverb.sty +1 -13
  258. data/vendor/jsclasses/kiyou.cls +74 -31
  259. data/vendor/jsclasses/minijs.sty +68 -22
  260. data/vendor/jsclasses/okumacro.dtx +4 -5
  261. data/vendor/jsclasses/okumacro.ins +9 -0
  262. data/vendor/jsclasses/okumacro.pdf +0 -0
  263. data/vendor/jsclasses/okumacro.sty +4 -17
  264. data/vendor/jsclasses/okuverb.ins +9 -0
  265. data/vendor/jsclasses/okuverb.pdf +0 -0
  266. data/vendor/jsclasses/okuverb.sty +1 -13
  267. data/vendor/jsclasses/tests/relfont.tex +10 -0
  268. data/vendor/jsclasses/winjis.sty +23 -19
  269. metadata +136 -23
  270. data/.rubocop_todo.yml +0 -7
  271. data/lib/epubmaker.rb +0 -23
  272. data/lib/epubmaker/content.rb +0 -110
  273. data/lib/epubmaker/epubcommon.rb +0 -441
  274. data/lib/epubmaker/epubv2.rb +0 -143
  275. data/lib/epubmaker/epubv3.rb +0 -233
  276. data/lib/epubmaker/producer.rb +0 -375
  277. data/lib/epubmaker/zip_exporter.rb +0 -81
  278. data/lib/lineinput.rb +0 -155
  279. data/lib/review/book/compilable.rb +0 -173
  280. data/lib/review/tocparser.rb +0 -271
  281. data/samples/syntax-book/review-ext.rb +0 -14
  282. data/test/test_tocparser.rb +0 -25
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fd7268a71d883dbd67373a3a6c3d4d151b67cb01e6545bf83fc1b26ce9eaee02
4
- data.tar.gz: 3214804b54cba60f961ceda0ee83f8f2d50080ba3bbd691cca179057bd8dc3ac
3
+ metadata.gz: a76cbf5a17c5281505bab9a925226a41d8294eefd6f27300951f901795ce435b
4
+ data.tar.gz: 4dcc1e929cb88187655b576b9cd06f0b17c52e598cb4cd622464f16921b6a871
5
5
  SHA512:
6
- metadata.gz: bc7ccb389d4c6d836adf683f53961646e126149a63c29cda14ecbc4b95b44745a856169326ab98e84d5189b8fca4bb08dbf7292089990231a1c22063ccf58557
7
- data.tar.gz: 49790ebe6d85e685b1e9fbc0f1bc635a050ca844c8dd34369e79dee8972884c5bb1f2f9cce194ce7c7947d303503b4ba549741ab1f8069a924309b6696934701
6
+ metadata.gz: 572f178fee41b59b2a76c3959460faec1b4123e5606ed749ba419c62dd08a5aa34ebe8db7c640e9d112fe6bee509ea76107f01e49a03a4cf16ef7322f1792a94
7
+ data.tar.gz: b6904c7bf4d5bc77c6affaed7a11f2dd019018f01cd98e5853680346add595aa8ba956a0918ce4f8e20f16703d4e752ae3a86ab101c81834414b7705f12cc7a6
@@ -0,0 +1,31 @@
1
+ name: Test with TeXLive
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.5, 3.0]
13
+ os: [ubuntu-20.04]
14
+ steps:
15
+ - uses: actions/checkout@v2
16
+ - name: Install TeXLive 2020 in ubuntu
17
+ if: runner.os == 'Linux'
18
+ run: |
19
+ sudo apt-get update -y -qq && sudo apt-get install -y -qq texlive-lang-japanese texlive-fonts-recommended texlive-fonts-extra texlive-luatex texlive-extra-utils texlive-latex-extra dvipng poppler-utils
20
+ - name: Set up Ruby
21
+ uses: ruby/setup-ruby@v1
22
+ with:
23
+ ruby-version: ${{ matrix.ruby }}
24
+ - name: fix ImageMagick policy.xml on Linux
25
+ if: runner.os == 'Linux'
26
+ run: sudo sed -i 's/none/read|write/g' /etc/ImageMagick-6/policy.xml
27
+ - name: Build and test with Rake
28
+ run: |
29
+ gem install bundler --no-document
30
+ bundle install --retry 3
31
+ bundle exec rake
@@ -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: [ '3.0', '2.6', '2.5', '2.4' ]
13
+
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: 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, 3.0]
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
data/.rubocop.yml CHANGED
@@ -1,15 +1,14 @@
1
1
  AllCops:
2
2
  Exclude:
3
- - lib/lineinput.rb
4
3
  - lib/uuid.rb
5
4
  - test/syntax-book/*
5
+ - tmp/*
6
6
  DisplayCopNames: true
7
+ NewCops: enable
7
8
 
8
9
  require:
9
10
  - rubocop-performance
10
11
 
11
- inherit_from: .rubocop_todo.yml
12
-
13
12
  #### Lint
14
13
 
15
14
  Lint/EmptyWhen:
@@ -25,9 +24,6 @@ Lint/AssignmentInCondition:
25
24
  Lint/ParenthesesAsGroupedExpression:
26
25
  Enabled: true
27
26
 
28
- #Lint/RescueWithoutErrorClass:
29
- # Enabled: false
30
-
31
27
  Lint/UnderscorePrefixedVariableName:
32
28
  Enabled: true
33
29
 
@@ -40,6 +36,25 @@ Lint/UnusedMethodArgument:
40
36
  Lint/UselessAssignment:
41
37
  Enabled: true
42
38
 
39
+ Lint/ErbNewArguments:
40
+ Enabled: false
41
+
42
+ Lint/DeprecatedOpenSSLConstant:
43
+ Enabled: true
44
+
45
+ Lint/MixedRegexpCaptureTypes:
46
+ Enabled: true
47
+
48
+ Lint/RaiseException:
49
+ Enabled: true
50
+
51
+ Lint/StructNewOverride:
52
+ Enabled: true
53
+
54
+ # make it enable when supporting only Ruby 3.0 and higher.
55
+ Lint/RedundantDirGlobSort:
56
+ Enabled: false
57
+
43
58
  #### Performance
44
59
 
45
60
  Performance/RegexpMatch:
@@ -50,11 +65,44 @@ Performance/ReverseEach:
50
65
 
51
66
  # Use tr instead of gsub.
52
67
  Performance/StringReplacement:
53
- Enabled: false
68
+ Enabled: true
54
69
 
55
70
  Performance/RangeInclude:
56
71
  Enabled: true
57
72
 
73
+ Performance/DeletePrefix:
74
+ Enabled: false
75
+
76
+ Performance/RedundantMerge:
77
+ Enabled: true
78
+
79
+ Performance/AncestorsInclude:
80
+ Enabled: true
81
+
82
+ Performance/BigDecimalWithNumericArgument:
83
+ Enabled: true
84
+
85
+ Performance/RedundantSortBlock:
86
+ Enabled: true
87
+
88
+ Performance/RedundantStringChars:
89
+ Enabled: true
90
+
91
+ Performance/ReverseFirst:
92
+ Enabled: true
93
+
94
+ Performance/SortReverse:
95
+ Enabled: true
96
+
97
+ Performance/Squeeze:
98
+ Enabled: true
99
+
100
+ Performance/StringInclude:
101
+ Enabled: false
102
+
103
+ Performance/CollectionLiteralInLoop:
104
+ Enabled: false
105
+
58
106
  #### Style
59
107
 
60
108
  Style/AccessModifierDeclarations:
@@ -69,7 +117,7 @@ Style/Alias:
69
117
  Enabled: true
70
118
 
71
119
  Style/AndOr:
72
- Enabled: false
120
+ Enabled: true
73
121
 
74
122
  Style/BarePercentLiterals:
75
123
  EnforcedStyle: percent_q
@@ -78,9 +126,6 @@ Style/BarePercentLiterals:
78
126
  Style/BlockDelimiters:
79
127
  Enabled: true
80
128
 
81
- Style/BracesAroundHashParameters:
82
- Enabled: false
83
-
84
129
  Style/CaseEquality:
85
130
  Enabled: false
86
131
 
@@ -93,6 +138,9 @@ Style/ClassMethods:
93
138
  Style/CommentedKeyword:
94
139
  Enabled: false
95
140
 
141
+ Style/DocumentDynamicEvalDefinition:
142
+ Enabled: false
143
+
96
144
  Style/FloatDivision:
97
145
  Enabled: false
98
146
 
@@ -117,7 +165,7 @@ Style/EmptyElse:
117
165
  Enabled: true
118
166
 
119
167
  Style/EvalWithLocation:
120
- Enabled: false
168
+ Enabled: true
121
169
 
122
170
  Style/FormatString:
123
171
  EnforcedStyle: sprintf
@@ -138,13 +186,10 @@ Style/IfUnlessModifier:
138
186
  Style/MutableConstant:
139
187
  Enabled: false
140
188
 
141
- #Style/MultipleComparison:
142
- # Enabled: true
143
-
144
- Style/UnneededInterpolation:
189
+ Style/MultipleComparison:
145
190
  Enabled: true
146
191
 
147
- Performance/RedundantMerge:
192
+ Style/RedundantInterpolation:
148
193
  Enabled: true
149
194
 
150
195
  Style/ZeroLengthPredicate:
@@ -193,6 +238,34 @@ Style/LineEndConcatenation:
193
238
  Style/MethodCallWithoutArgsParentheses:
194
239
  Enabled: true
195
240
 
241
+ Style/MethodCallWithArgsParentheses:
242
+ IgnoredMethods:
243
+ - 'require'
244
+ - 'include'
245
+ - 'file'
246
+ - 'task'
247
+ - 'desc'
248
+ - 'info'
249
+ - 'gem'
250
+ - 'exit'
251
+ - 'print'
252
+ - 'puts'
253
+ - 'write'
254
+ - 'warn'
255
+ - 'error'
256
+ - 'raise'
257
+ - 'yield'
258
+ - 'source'
259
+ - 'assert'
260
+ - 'assert_equal'
261
+ - 'assert_raise'
262
+ - 'assert_raises'
263
+ - 'assert_nothing_raised'
264
+ - 'sh'
265
+ - 'mv'
266
+ - 'rm_rf'
267
+ Enabled: true
268
+
196
269
  Style/MixinUsage:
197
270
  Enabled: false
198
271
 
@@ -276,14 +349,56 @@ Style/TrailingCommaInHashLiteral:
276
349
  Style/WordArray:
277
350
  MinSize: 10
278
351
 
279
- Style/UnneededPercentQ:
352
+ Style/RedundantPercentQ:
280
353
  Enabled: false
281
354
 
282
355
  Style/WhileUntilModifier:
283
356
  Enabled: false
284
357
 
285
- #Style/YodaCondition:
286
- # Enabled: true
358
+ Style/YodaCondition:
359
+ Enabled: true
360
+
361
+ Style/ExponentialNotation:
362
+ Enabled: true
363
+
364
+ Style/HashEachMethods:
365
+ Enabled: true
366
+
367
+ Style/HashTransformKeys:
368
+ Enabled: true
369
+
370
+ Style/HashTransformValues:
371
+ Enabled: true
372
+
373
+ Style/RedundantFetchBlock:
374
+ Enabled: true
375
+
376
+ Style/RedundantRegexpCharacterClass:
377
+ Enabled: true
378
+
379
+ Style/RedundantRegexpEscape:
380
+ Enabled: true
381
+
382
+ Style/SlicingWithRange:
383
+ Enabled: false
384
+
385
+ Style/AccessorGrouping:
386
+ Enabled: false
387
+
388
+ Style/CaseLikeIf:
389
+ Enabled: false
390
+
391
+ Style/StringConcatenation:
392
+ Enabled: false
393
+
394
+ Style/OptionalBooleanParameter:
395
+ Enabled: false
396
+
397
+ Style/SoleNestedConditional:
398
+ Enabled: false
399
+
400
+ Style/CombinableLoops:
401
+ Enabled: false
287
402
 
288
403
  ### Layout
289
404
 
@@ -291,7 +406,7 @@ Layout/BlockAlignment:
291
406
  Enabled: true
292
407
 
293
408
  Layout/EndAlignment:
294
- Enabled: AlignWith
409
+ Enabled: true
295
410
 
296
411
  Layout/MultilineMethodCallBraceLayout:
297
412
  Enabled: true
@@ -311,7 +426,7 @@ Layout/EmptyLines:
311
426
  Enabled: true
312
427
 
313
428
  Layout/EmptyLineAfterGuardClause:
314
- Enabled: false
429
+ Enabled: true
315
430
 
316
431
  Layout/EmptyLinesAroundAccessModifier:
317
432
  Enabled: true
@@ -326,7 +441,7 @@ Layout/EmptyLinesAroundModuleBody:
326
441
  Enabled: true
327
442
 
328
443
  Layout/EndOfLine:
329
- Enabled: false
444
+ Enabled: true
330
445
 
331
446
  Layout/ExtraSpacing:
332
447
  Enabled: true
@@ -337,17 +452,17 @@ Layout/IndentationConsistency:
337
452
  Layout/IndentationWidth:
338
453
  Enabled: true
339
454
 
340
- Layout/IndentFirstHashElement:
455
+ Layout/FirstHashElementIndentation:
341
456
  Enabled: true
342
457
 
343
- Layout/IndentHeredoc:
458
+ Layout/HeredocIndentation:
344
459
  Enabled: false
345
460
 
346
461
  Layout/LeadingCommentSpace:
347
462
  Enabled: true
348
463
 
349
464
  Layout/MultilineOperationIndentation:
350
- Enabled: false
465
+ Enabled: true
351
466
 
352
467
  Layout/SpaceAroundBlockParameters:
353
468
  EnforcedStyleInsidePipes: no_space
@@ -369,7 +484,7 @@ Layout/SpaceAroundOperators:
369
484
  Enabled: true
370
485
 
371
486
  Layout/SpaceBeforeBlockBraces:
372
- Enabled: false
487
+ Enabled: true
373
488
 
374
489
  Layout/SpaceBeforeComma:
375
490
  Enabled: true
@@ -387,20 +502,31 @@ Layout/SpaceInsideStringInterpolation:
387
502
  EnforcedStyle: no_space
388
503
  Enabled: true
389
504
 
390
- Layout/TrailingBlankLines:
505
+ Layout/TrailingEmptyLines:
391
506
  Enabled: true
392
507
 
393
508
  Layout/TrailingWhitespace:
394
509
  Enabled: true
395
510
  AllowInHeredoc: true
396
511
 
512
+ Layout/EmptyLinesAroundAttributeAccessor:
513
+ Enabled: true
514
+
515
+ Layout/SpaceAroundMethodCallOperator:
516
+ Enabled: true
517
+
518
+ Layout/LineLength:
519
+ Max: 256
520
+ Exclude:
521
+ - "test/**/*"
522
+
397
523
  #### Metrics
398
524
 
399
525
  Metrics/BlockNesting:
400
526
  Max: 4
401
527
 
402
528
  Metrics/ModuleLength:
403
- Max: 200
529
+ Max: 300
404
530
 
405
531
  Metrics/ParameterLists:
406
532
  Max: 8
@@ -413,11 +539,6 @@ Metrics/ClassLength:
413
539
  Exclude:
414
540
  - 'test/*.rb'
415
541
 
416
- Metrics/LineLength:
417
- Max: 256
418
- Exclude:
419
- - "test/**/*"
420
-
421
542
  ### should be < 50
422
543
  Metrics/MethodLength:
423
544
  Max: 100
@@ -428,7 +549,7 @@ Metrics/MethodLength:
428
549
 
429
550
  ### should be < 20
430
551
  Metrics/CyclomaticComplexity:
431
- Max: 32
552
+ Max: 25
432
553
 
433
554
  ### should be < 60
434
555
  Metrics/AbcSize:
@@ -452,8 +573,8 @@ Naming/AccessorMethodName:
452
573
  Enabled: true
453
574
 
454
575
  # When defining the == operator, name its argument other.
455
- #Style/BinaryOperatorParameterName:
456
- # Enabled: true
576
+ Naming/BinaryOperatorParameterName:
577
+ Enabled: true
457
578
 
458
579
  Naming/FileName:
459
580
  Enabled: false
@@ -467,7 +588,7 @@ Naming/MemoizedInstanceVariableName:
467
588
  Naming/MethodName:
468
589
  Enabled: true
469
590
 
470
- Naming/UncommunicativeMethodParamName:
591
+ Naming/MethodParameterName:
471
592
  Enabled: false
472
593
 
473
594
  # Use snake_case for variable names.
@@ -477,11 +598,15 @@ Naming/VariableName:
477
598
  Naming/VariableNumber:
478
599
  EnforcedStyle: normalcase
479
600
  Enabled: true
601
+ Exclude:
602
+ - test/*
480
603
 
481
604
  #### Security
482
605
 
483
- # we use Date object in config.yml so should use YAML.load :-/
484
606
  Security/YAMLLoad:
485
- Exclude:
486
- - 'lib/review/catalog.rb'
487
- - 'test/test_helper.rb'
607
+ Enabled: true
608
+
609
+ #### Gemspec
610
+
611
+ Gemspec/RequiredRubyVersion:
612
+ Enabled: false