rmagick 2.16.0 → 5.5.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 (441) hide show
  1. checksums.yaml +5 -5
  2. data/.devcontainer/Dockerfile +14 -0
  3. data/.devcontainer/ImageMagick6/devcontainer.json +11 -0
  4. data/.devcontainer/devcontainer.json +11 -0
  5. data/.devcontainer/setup-repo.sh +10 -0
  6. data/.devcontainer/setup-user.sh +45 -0
  7. data/.editorconfig +3 -0
  8. data/.github/ISSUE_TEMPLATE.md +17 -0
  9. data/.github/workflows/ci.yml +157 -0
  10. data/.gitignore +9 -1
  11. data/.rspec +1 -0
  12. data/.rubocop.yml +37 -340
  13. data/.rubocop_todo.yml +456 -0
  14. data/.yardopts +5 -0
  15. data/CHANGELOG.md +536 -0
  16. data/CODE_OF_CONDUCT.md +122 -7
  17. data/CONTRIBUTING.md +37 -6
  18. data/Gemfile +18 -4
  19. data/README.md +319 -0
  20. data/Rakefile +83 -98
  21. data/before_install_linux.sh +65 -28
  22. data/before_install_osx.sh +58 -2
  23. data/ext/RMagick/extconf.rb +310 -393
  24. data/ext/RMagick/{rmagick.c → rmagick.cpp} +119 -127
  25. data/ext/RMagick/rmagick.h +290 -363
  26. data/ext/RMagick/rmagick_gvl.h +224 -0
  27. data/ext/RMagick/rmdraw.cpp +1696 -0
  28. data/ext/RMagick/rmenum.cpp +796 -0
  29. data/ext/RMagick/{rmfill.c → rmfill.cpp} +287 -197
  30. data/ext/RMagick/rmilist.cpp +1275 -0
  31. data/ext/RMagick/rmimage.cpp +16459 -0
  32. data/ext/RMagick/{rminfo.c → rminfo.cpp} +738 -910
  33. data/ext/RMagick/rmkinfo.cpp +210 -0
  34. data/ext/RMagick/rmmain.cpp +1923 -0
  35. data/ext/RMagick/rmmontage.cpp +474 -0
  36. data/ext/RMagick/rmpixel.cpp +1322 -0
  37. data/ext/RMagick/{rmstruct.c → rmstruct.cpp} +104 -284
  38. data/ext/RMagick/{rmutil.c → rmutil.cpp} +500 -433
  39. data/lib/rmagick/version.rb +5 -4
  40. data/lib/rmagick.rb +2 -0
  41. data/lib/rmagick_internal.rb +397 -459
  42. data/lib/rvg/clippath.rb +3 -4
  43. data/lib/rvg/container.rb +30 -22
  44. data/lib/rvg/deep_equal.rb +11 -11
  45. data/lib/rvg/describable.rb +2 -2
  46. data/lib/rvg/embellishable.rb +67 -68
  47. data/lib/rvg/misc.rb +139 -142
  48. data/lib/rvg/paint.rb +2 -1
  49. data/lib/rvg/pathdata.rb +7 -8
  50. data/lib/rvg/rvg.rb +49 -46
  51. data/lib/rvg/stretchable.rb +22 -28
  52. data/lib/rvg/stylable.rb +12 -10
  53. data/lib/rvg/text.rb +169 -165
  54. data/lib/rvg/transformable.rb +17 -16
  55. data/lib/rvg/units.rb +5 -5
  56. data/rmagick.gemspec +7 -41
  57. data/sig/rmagick/_draw_common_methods.rbs +64 -0
  58. data/sig/rmagick/_image_common_methods.rbs +389 -0
  59. data/sig/rmagick/draw.rbs +38 -0
  60. data/sig/rmagick/draw_attribute.rbs +28 -0
  61. data/sig/rmagick/enum.rbs +814 -0
  62. data/sig/rmagick/error.rbs +11 -0
  63. data/sig/rmagick/fill.rbs +21 -0
  64. data/sig/rmagick/geometry.rbs +14 -0
  65. data/sig/rmagick/image.rbs +194 -0
  66. data/sig/rmagick/image_list.rbs +181 -0
  67. data/sig/rmagick/iptc.rbs +101 -0
  68. data/sig/rmagick/kernel_info.rbs +12 -0
  69. data/sig/rmagick/optional_method_arguments.rbs +10 -0
  70. data/sig/rmagick/pixel.rbs +46 -0
  71. data/sig/rmagick/struct.rbs +90 -0
  72. data/sig/rmagick.rbs +43 -0
  73. data/sig/rvg/clippath.rbs +34 -0
  74. data/sig/rvg/container.rbs +78 -0
  75. data/sig/rvg/deep_equal.rbs +48 -0
  76. data/sig/rvg/describable.rbs +30 -0
  77. data/sig/rvg/embellishable.rbs +226 -0
  78. data/sig/rvg/misc.rbs +145 -0
  79. data/sig/rvg/paint.rbs +55 -0
  80. data/sig/rvg/pathdata.rbs +77 -0
  81. data/sig/rvg/rvg.rbs +125 -0
  82. data/sig/rvg/stretchable.rbs +56 -0
  83. data/sig/rvg/stylable.rbs +66 -0
  84. data/sig/rvg/text.rbs +118 -0
  85. data/sig/rvg/transformable.rbs +59 -0
  86. data/sig/rvg/units.rbs +33 -0
  87. metadata +68 -428
  88. data/.hound.yml +0 -2
  89. data/.simplecov +0 -27
  90. data/.travis.yml +0 -74
  91. data/Doxyfile +0 -1514
  92. data/README.textile +0 -251
  93. data/deprecated/RMagick.rb +0 -6
  94. data/doc/.cvsignore +0 -1
  95. data/doc/comtasks.html +0 -287
  96. data/doc/constants.html +0 -1581
  97. data/doc/css/doc.css +0 -299
  98. data/doc/css/popup.css +0 -34
  99. data/doc/css/ref.css +0 -67
  100. data/doc/draw.html +0 -3272
  101. data/doc/ex/InitialCoords.rb +0 -22
  102. data/doc/ex/NewCoordSys.rb +0 -30
  103. data/doc/ex/OrigCoordSys.rb +0 -16
  104. data/doc/ex/PreserveAspectRatio.rb +0 -204
  105. data/doc/ex/RotateScale.rb +0 -36
  106. data/doc/ex/Skew.rb +0 -38
  107. data/doc/ex/Use01.rb +0 -15
  108. data/doc/ex/Use02.rb +0 -20
  109. data/doc/ex/Use03.rb +0 -16
  110. data/doc/ex/ViewBox.rb +0 -31
  111. data/doc/ex/adaptive_threshold.rb +0 -9
  112. data/doc/ex/add_noise.rb +0 -16
  113. data/doc/ex/affine.rb +0 -48
  114. data/doc/ex/affine_transform.rb +0 -20
  115. data/doc/ex/arc.rb +0 -49
  116. data/doc/ex/arcpath.rb +0 -32
  117. data/doc/ex/arcs01.rb +0 -28
  118. data/doc/ex/arcs02.rb +0 -59
  119. data/doc/ex/average.rb +0 -15
  120. data/doc/ex/axes.rb +0 -64
  121. data/doc/ex/baseline_shift01.rb +0 -17
  122. data/doc/ex/bilevel_channel.rb +0 -8
  123. data/doc/ex/blur_image.rb +0 -12
  124. data/doc/ex/border.rb +0 -10
  125. data/doc/ex/bounding_box.rb +0 -42
  126. data/doc/ex/cbezier1.rb +0 -41
  127. data/doc/ex/cbezier2.rb +0 -41
  128. data/doc/ex/cbezier3.rb +0 -41
  129. data/doc/ex/cbezier4.rb +0 -42
  130. data/doc/ex/cbezier5.rb +0 -42
  131. data/doc/ex/cbezier6.rb +0 -53
  132. data/doc/ex/channel.rb +0 -25
  133. data/doc/ex/charcoal.rb +0 -12
  134. data/doc/ex/chop.rb +0 -29
  135. data/doc/ex/circle.rb +0 -33
  136. data/doc/ex/circle01.rb +0 -16
  137. data/doc/ex/clip_path.rb +0 -60
  138. data/doc/ex/coalesce.rb +0 -57
  139. data/doc/ex/color_fill_to_border.rb +0 -29
  140. data/doc/ex/color_floodfill.rb +0 -28
  141. data/doc/ex/color_histogram.rb +0 -47
  142. data/doc/ex/color_reset.rb +0 -11
  143. data/doc/ex/colorize.rb +0 -16
  144. data/doc/ex/colors.rb +0 -64
  145. data/doc/ex/compose_mask.rb +0 -22
  146. data/doc/ex/composite.rb +0 -133
  147. data/doc/ex/composite_layers.rb +0 -53
  148. data/doc/ex/composite_tiled.rb +0 -21
  149. data/doc/ex/contrast.rb +0 -36
  150. data/doc/ex/crop.rb +0 -31
  151. data/doc/ex/crop_with_gravity.rb +0 -42
  152. data/doc/ex/cubic01.rb +0 -43
  153. data/doc/ex/cubic02.rb +0 -91
  154. data/doc/ex/cycle_colormap.rb +0 -21
  155. data/doc/ex/dissolve.rb +0 -12
  156. data/doc/ex/drawcomp.rb +0 -42
  157. data/doc/ex/drop_shadow.rb +0 -60
  158. data/doc/ex/edge.rb +0 -11
  159. data/doc/ex/ellipse.rb +0 -45
  160. data/doc/ex/ellipse01.rb +0 -21
  161. data/doc/ex/emboss.rb +0 -11
  162. data/doc/ex/enhance.rb +0 -28
  163. data/doc/ex/equalize.rb +0 -11
  164. data/doc/ex/evenodd.rb +0 -42
  165. data/doc/ex/fill_pattern.rb +0 -23
  166. data/doc/ex/flatten_images.rb +0 -36
  167. data/doc/ex/flip.rb +0 -11
  168. data/doc/ex/flop.rb +0 -11
  169. data/doc/ex/font_styles.rb +0 -32
  170. data/doc/ex/fonts.rb +0 -20
  171. data/doc/ex/frame.rb +0 -12
  172. data/doc/ex/gaussian_blur.rb +0 -11
  173. data/doc/ex/get_multiline_type_metrics.rb +0 -41
  174. data/doc/ex/get_pixels.rb +0 -47
  175. data/doc/ex/get_type_metrics.rb +0 -141
  176. data/doc/ex/gradientfill.rb +0 -27
  177. data/doc/ex/grav.rb +0 -45
  178. data/doc/ex/gravity.rb +0 -80
  179. data/doc/ex/group.rb +0 -26
  180. data/doc/ex/hatchfill.rb +0 -27
  181. data/doc/ex/image.rb +0 -44
  182. data/doc/ex/images/Apple.miff +0 -0
  183. data/doc/ex/images/Ballerina.jpg +0 -0
  184. data/doc/ex/images/Ballerina3.jpg +0 -0
  185. data/doc/ex/images/Button_0.gif +0 -0
  186. data/doc/ex/images/Button_1.gif +0 -0
  187. data/doc/ex/images/Button_2.gif +0 -0
  188. data/doc/ex/images/Button_3.gif +0 -0
  189. data/doc/ex/images/Button_4.gif +0 -0
  190. data/doc/ex/images/Button_5.gif +0 -0
  191. data/doc/ex/images/Button_6.gif +0 -0
  192. data/doc/ex/images/Button_7.gif +0 -0
  193. data/doc/ex/images/Button_8.gif +0 -0
  194. data/doc/ex/images/Button_9.gif +0 -0
  195. data/doc/ex/images/Button_A.gif +0 -0
  196. data/doc/ex/images/Button_B.gif +0 -0
  197. data/doc/ex/images/Button_C.gif +0 -0
  198. data/doc/ex/images/Button_D.gif +0 -0
  199. data/doc/ex/images/Button_E.gif +0 -0
  200. data/doc/ex/images/Button_F.gif +0 -0
  201. data/doc/ex/images/Button_G.gif +0 -0
  202. data/doc/ex/images/Button_H.gif +0 -0
  203. data/doc/ex/images/Button_I.gif +0 -0
  204. data/doc/ex/images/Button_J.gif +0 -0
  205. data/doc/ex/images/Button_K.gif +0 -0
  206. data/doc/ex/images/Button_L.gif +0 -0
  207. data/doc/ex/images/Button_M.gif +0 -0
  208. data/doc/ex/images/Button_N.gif +0 -0
  209. data/doc/ex/images/Button_O.gif +0 -0
  210. data/doc/ex/images/Button_P.gif +0 -0
  211. data/doc/ex/images/Button_Q.gif +0 -0
  212. data/doc/ex/images/Button_R.gif +0 -0
  213. data/doc/ex/images/Button_S.gif +0 -0
  214. data/doc/ex/images/Button_T.gif +0 -0
  215. data/doc/ex/images/Button_U.gif +0 -0
  216. data/doc/ex/images/Button_V.gif +0 -0
  217. data/doc/ex/images/Button_W.gif +0 -0
  218. data/doc/ex/images/Button_X.gif +0 -0
  219. data/doc/ex/images/Button_Y.gif +0 -0
  220. data/doc/ex/images/Button_Z.gif +0 -0
  221. data/doc/ex/images/Cheetah.jpg +0 -0
  222. data/doc/ex/images/Coffee.wmf +0 -0
  223. data/doc/ex/images/Flower_Hat.jpg +0 -0
  224. data/doc/ex/images/Gold_Statue.jpg +0 -0
  225. data/doc/ex/images/Hot_Air_Balloons.jpg +0 -0
  226. data/doc/ex/images/Hot_Air_Balloons_H.jpg +0 -0
  227. data/doc/ex/images/Leaf.miff +0 -0
  228. data/doc/ex/images/No.wmf +0 -0
  229. data/doc/ex/images/Polynesia.jpg +0 -0
  230. data/doc/ex/images/Red_Rocks.jpg +0 -0
  231. data/doc/ex/images/Rocks_On_Beach.miff +0 -0
  232. data/doc/ex/images/Shorts.jpg +0 -0
  233. data/doc/ex/images/Snake.wmf +0 -0
  234. data/doc/ex/images/Violin.jpg +0 -0
  235. data/doc/ex/images/Yellow_Rose.miff +0 -0
  236. data/doc/ex/images/big-duck.gif +0 -0
  237. data/doc/ex/images/duck.gif +0 -0
  238. data/doc/ex/images/duck0.gif +0 -0
  239. data/doc/ex/images/duck1.gif +0 -0
  240. data/doc/ex/images/duck10.gif +0 -0
  241. data/doc/ex/images/duck11.gif +0 -0
  242. data/doc/ex/images/duck12.gif +0 -0
  243. data/doc/ex/images/duck13.gif +0 -0
  244. data/doc/ex/images/duck14.gif +0 -0
  245. data/doc/ex/images/duck15.gif +0 -0
  246. data/doc/ex/images/duck2.gif +0 -0
  247. data/doc/ex/images/duck3.gif +0 -0
  248. data/doc/ex/images/duck4.gif +0 -0
  249. data/doc/ex/images/duck5.gif +0 -0
  250. data/doc/ex/images/duck6.gif +0 -0
  251. data/doc/ex/images/duck7.gif +0 -0
  252. data/doc/ex/images/duck8.gif +0 -0
  253. data/doc/ex/images/duck9.gif +0 -0
  254. data/doc/ex/images/graydient230x6.gif +0 -0
  255. data/doc/ex/images/image_with_profile.jpg +0 -0
  256. data/doc/ex/images/logo400x83.gif +0 -0
  257. data/doc/ex/images/model.miff +0 -0
  258. data/doc/ex/images/notimplemented.gif +0 -0
  259. data/doc/ex/images/smile.miff +0 -0
  260. data/doc/ex/images/spin.gif +0 -0
  261. data/doc/ex/implode.rb +0 -34
  262. data/doc/ex/level.rb +0 -11
  263. data/doc/ex/level_colors.rb +0 -11
  264. data/doc/ex/line.rb +0 -41
  265. data/doc/ex/line01.rb +0 -21
  266. data/doc/ex/mask.rb +0 -35
  267. data/doc/ex/matte_fill_to_border.rb +0 -39
  268. data/doc/ex/matte_floodfill.rb +0 -32
  269. data/doc/ex/matte_replace.rb +0 -39
  270. data/doc/ex/median_filter.rb +0 -28
  271. data/doc/ex/modulate.rb +0 -11
  272. data/doc/ex/mono.rb +0 -23
  273. data/doc/ex/morph.rb +0 -25
  274. data/doc/ex/mosaic.rb +0 -35
  275. data/doc/ex/motion_blur.rb +0 -11
  276. data/doc/ex/negate.rb +0 -11
  277. data/doc/ex/negate_channel.rb +0 -9
  278. data/doc/ex/nested_rvg.rb +0 -21
  279. data/doc/ex/nonzero.rb +0 -42
  280. data/doc/ex/normalize.rb +0 -11
  281. data/doc/ex/oil_paint.rb +0 -11
  282. data/doc/ex/opacity.rb +0 -37
  283. data/doc/ex/ordered_dither.rb +0 -11
  284. data/doc/ex/path.rb +0 -63
  285. data/doc/ex/pattern1.rb +0 -25
  286. data/doc/ex/pattern2.rb +0 -26
  287. data/doc/ex/polaroid.rb +0 -27
  288. data/doc/ex/polygon.rb +0 -23
  289. data/doc/ex/polygon01.rb +0 -21
  290. data/doc/ex/polyline.rb +0 -22
  291. data/doc/ex/polyline01.rb +0 -21
  292. data/doc/ex/posterize.rb +0 -8
  293. data/doc/ex/preview.rb +0 -8
  294. data/doc/ex/qbezierpath.rb +0 -52
  295. data/doc/ex/quad01.rb +0 -34
  296. data/doc/ex/quantize-m.rb +0 -25
  297. data/doc/ex/radial_blur.rb +0 -9
  298. data/doc/ex/raise.rb +0 -8
  299. data/doc/ex/random_threshold_channel.rb +0 -13
  300. data/doc/ex/rect01.rb +0 -14
  301. data/doc/ex/rect02.rb +0 -20
  302. data/doc/ex/rectangle.rb +0 -34
  303. data/doc/ex/reduce_noise.rb +0 -28
  304. data/doc/ex/remap.rb +0 -11
  305. data/doc/ex/remap_images.rb +0 -19
  306. data/doc/ex/resize_to_fill.rb +0 -8
  307. data/doc/ex/resize_to_fit.rb +0 -8
  308. data/doc/ex/roll.rb +0 -9
  309. data/doc/ex/rotate.rb +0 -44
  310. data/doc/ex/rotate_f.rb +0 -14
  311. data/doc/ex/roundrect.rb +0 -33
  312. data/doc/ex/rubyname.rb +0 -30
  313. data/doc/ex/rvg_clippath.rb +0 -12
  314. data/doc/ex/rvg_linecap.rb +0 -42
  315. data/doc/ex/rvg_linejoin.rb +0 -40
  316. data/doc/ex/rvg_opacity.rb +0 -18
  317. data/doc/ex/rvg_pattern.rb +0 -26
  318. data/doc/ex/rvg_stroke_dasharray.rb +0 -11
  319. data/doc/ex/segment.rb +0 -11
  320. data/doc/ex/sepiatone.rb +0 -7
  321. data/doc/ex/shade.rb +0 -11
  322. data/doc/ex/shadow.rb +0 -30
  323. data/doc/ex/shave.rb +0 -15
  324. data/doc/ex/shear.rb +0 -10
  325. data/doc/ex/sketch.rb +0 -17
  326. data/doc/ex/skewx.rb +0 -51
  327. data/doc/ex/skewy.rb +0 -47
  328. data/doc/ex/smile.rb +0 -125
  329. data/doc/ex/solarize.rb +0 -11
  330. data/doc/ex/sparse_color.rb +0 -54
  331. data/doc/ex/splice.rb +0 -8
  332. data/doc/ex/spread.rb +0 -11
  333. data/doc/ex/stegano.rb +0 -55
  334. data/doc/ex/stroke_dasharray.rb +0 -42
  335. data/doc/ex/stroke_fill.rb +0 -10
  336. data/doc/ex/stroke_linecap.rb +0 -44
  337. data/doc/ex/stroke_linejoin.rb +0 -48
  338. data/doc/ex/stroke_width.rb +0 -49
  339. data/doc/ex/swirl.rb +0 -17
  340. data/doc/ex/text.rb +0 -37
  341. data/doc/ex/text01.rb +0 -16
  342. data/doc/ex/text_align.rb +0 -36
  343. data/doc/ex/text_antialias.rb +0 -37
  344. data/doc/ex/text_styles.rb +0 -19
  345. data/doc/ex/text_undercolor.rb +0 -28
  346. data/doc/ex/texture_fill_to_border.rb +0 -34
  347. data/doc/ex/texture_floodfill.rb +0 -32
  348. data/doc/ex/texturefill.rb +0 -24
  349. data/doc/ex/threshold.rb +0 -13
  350. data/doc/ex/to_blob.rb +0 -13
  351. data/doc/ex/translate.rb +0 -39
  352. data/doc/ex/transparent.rb +0 -38
  353. data/doc/ex/transpose.rb +0 -9
  354. data/doc/ex/transverse.rb +0 -9
  355. data/doc/ex/tref01.rb +0 -24
  356. data/doc/ex/triangle01.rb +0 -15
  357. data/doc/ex/trim.rb +0 -23
  358. data/doc/ex/tspan01.rb +0 -17
  359. data/doc/ex/tspan02.rb +0 -17
  360. data/doc/ex/tspan03.rb +0 -19
  361. data/doc/ex/unsharp_mask.rb +0 -28
  362. data/doc/ex/viewex.rb +0 -33
  363. data/doc/ex/vignette.rb +0 -12
  364. data/doc/ex/watermark.rb +0 -27
  365. data/doc/ex/wave.rb +0 -9
  366. data/doc/ex/wet_floor.rb +0 -58
  367. data/doc/ex/writing_mode01.rb +0 -26
  368. data/doc/ex/writing_mode02.rb +0 -26
  369. data/doc/ilist.html +0 -2056
  370. data/doc/image1.html +0 -4680
  371. data/doc/image2.html +0 -3665
  372. data/doc/image3.html +0 -4522
  373. data/doc/imageattrs.html +0 -1638
  374. data/doc/imusage.html +0 -514
  375. data/doc/index.html +0 -416
  376. data/doc/info.html +0 -1499
  377. data/doc/magick.html +0 -565
  378. data/doc/optequiv.html +0 -2435
  379. data/doc/rvg.html +0 -975
  380. data/doc/rvgclip.html +0 -248
  381. data/doc/rvggroup.html +0 -305
  382. data/doc/rvgimage.html +0 -289
  383. data/doc/rvgpattern.html +0 -475
  384. data/doc/rvgshape.html +0 -406
  385. data/doc/rvgstyle.html +0 -270
  386. data/doc/rvgtext.html +0 -465
  387. data/doc/rvgtspan.html +0 -238
  388. data/doc/rvgtut.html +0 -530
  389. data/doc/rvguse.html +0 -145
  390. data/doc/rvgxform.html +0 -294
  391. data/doc/scripts/doc.js +0 -22
  392. data/doc/scripts/stripeTables.js +0 -23
  393. data/doc/struct.html +0 -1339
  394. data/doc/usage.html +0 -1621
  395. data/examples/constitute.rb +0 -7
  396. data/examples/crop_with_gravity.rb +0 -42
  397. data/examples/demo.rb +0 -324
  398. data/examples/describe.rb +0 -43
  399. data/examples/find_similar_region.rb +0 -34
  400. data/examples/histogram.rb +0 -321
  401. data/examples/identify.rb +0 -185
  402. data/examples/image_opacity.rb +0 -29
  403. data/examples/import_export.rb +0 -31
  404. data/examples/pattern_fill.rb +0 -38
  405. data/examples/rotating_text.rb +0 -44
  406. data/examples/spinner.rb +0 -49
  407. data/examples/thumbnail.rb +0 -64
  408. data/examples/vignette.rb +0 -78
  409. data/ext/RMagick/rmdraw.c +0 -2022
  410. data/ext/RMagick/rmenum.c +0 -1235
  411. data/ext/RMagick/rmilist.c +0 -1270
  412. data/ext/RMagick/rmimage.c +0 -15427
  413. data/ext/RMagick/rmmain.c +0 -1741
  414. data/ext/RMagick/rmmontage.c +0 -519
  415. data/ext/RMagick/rmpixel.c +0 -1114
  416. data/spec/rmagick/ImageList1_spec.rb +0 -24
  417. data/spec/rmagick/draw_spec.rb +0 -156
  418. data/spec/rmagick/image/blue_shift_spec.rb +0 -16
  419. data/spec/rmagick/image/composite_spec.rb +0 -140
  420. data/spec/rmagick/image/constitute_spec.rb +0 -15
  421. data/spec/rmagick/image/dispatch_spec.rb +0 -18
  422. data/spec/rmagick/image/from_blob_spec.rb +0 -14
  423. data/spec/rmagick/image/ping_spec.rb +0 -14
  424. data/spec/rmagick/image/properties_spec.rb +0 -29
  425. data/spec/spec_helper.rb +0 -4
  426. data/test/Image1.rb +0 -565
  427. data/test/Image2.rb +0 -1304
  428. data/test/Image3.rb +0 -1030
  429. data/test/ImageList1.rb +0 -806
  430. data/test/ImageList2.rb +0 -385
  431. data/test/Image_attributes.rb +0 -697
  432. data/test/Import_Export.rb +0 -121
  433. data/test/Info.rb +0 -345
  434. data/test/Magick.rb +0 -321
  435. data/test/Pixel.rb +0 -116
  436. data/test/Preview.rb +0 -57
  437. data/test/cmyk.icm +0 -0
  438. data/test/srgb.icm +0 -0
  439. data/test/test_all_basic.rb +0 -38
  440. data/test/tmpnam_test.rb +0 -50
  441. data/wercker.yml +0 -10
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: cdb0b76b421e905281ea36ab502157f8127ef7f4
4
- data.tar.gz: 7055d7ca36c20dfe2368b86274fcae3b092ce4af
2
+ SHA256:
3
+ metadata.gz: 41d6b9634204858bad669688ff19fc54c14dc3578f011696ade0295b5e4f7e88
4
+ data.tar.gz: 781493a793ec5ee4b9a60063761484e8b1d44e622963c2593caefac314d7ed8a
5
5
  SHA512:
6
- metadata.gz: 3e48587349334725feb46115787fe620396220163f61822724f818645d89538b3a0a898f03b9d3af20a959ed023619ac3d268d8597f34b3dacc4ce7e2af7fd95
7
- data.tar.gz: 830620183fb702cd38df0bd0d227e1a3d094198cb4d8a6d94b6354c4a854412ae795700f25584e4470c8078fe52a8208275f758fdb249aa2dc109261316b665b
6
+ metadata.gz: e90299bfe4a9b5d9a6291d53707db9ec772fb2247517f4e9ca9e4633320a6a9c2067195dcc90109bc743cd9f0a12882adfd679fb4e06c6995958e8b962125e0e
7
+ data.tar.gz: 1e2b528111b27b48ec4f3dc8be1e65d3bf181ec8888c5e1562959b98af4762f12dd9285d4d78520eb400ffb16e09f93950e8527b27e552396487c56fd1258b95
@@ -0,0 +1,14 @@
1
+ ARG RUBY_VERSION
2
+
3
+ FROM ruby:${RUBY_VERSION}
4
+
5
+ ARG IMAGEMAGICK_VERSION
6
+
7
+ RUN mkdir /setup
8
+ ADD *.sh /setup
9
+
10
+ ENV IMAGEMAGICK_VERSION ${IMAGEMAGICK_VERSION}
11
+
12
+ RUN /setup/setup-user.sh
13
+
14
+ WORKDIR /workspaces/rmagick
@@ -0,0 +1,11 @@
1
+ {
2
+ "name": "ImageMagick 6",
3
+ "build": {
4
+ "dockerfile": "../Dockerfile",
5
+ "args": {
6
+ "RUBY_VERSION": "3.1.2",
7
+ "IMAGEMAGICK_VERSION": "6.9.13-4"
8
+ }
9
+ },
10
+ "onCreateCommand": "/setup/setup-repo.sh"
11
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "name": "ImageMagick 7",
3
+ "build": {
4
+ "dockerfile": "Dockerfile",
5
+ "args": {
6
+ "RUBY_VERSION": "3.1.2",
7
+ "IMAGEMAGICK_VERSION": "7.1.1-26"
8
+ }
9
+ },
10
+ "onCreateCommand": "/setup/setup-repo.sh"
11
+ }
@@ -0,0 +1,10 @@
1
+ #!/bin/bash
2
+ set -e
3
+
4
+ apt-get update
5
+ apt-get install sudo
6
+
7
+ bash /workspaces/rmagick/before_install_linux.sh
8
+
9
+ cd /workspaces/rmagick
10
+ bundle install --path=vendor/bundle --jobs 4 --retry 3
@@ -0,0 +1,45 @@
1
+ #!/bin/bash
2
+ set -e
3
+
4
+ codespaces_bash="$(cat \
5
+ <<'EOF'
6
+ # Codespaces bash prompt theme
7
+ __bash_prompt() {
8
+ local userpart='`export XIT=$? \
9
+ && [ ! -z "${GITHUB_USER}" ] && echo -n "\[\033[0;32m\]@${GITHUB_USER} " || echo -n "\[\033[0;32m\]\u " \
10
+ && echo -n "\[\033[0;36m\][IM ${IMAGEMAGICK_VERSION}]" \
11
+ && [ "$XIT" -ne "0" ] && echo -n "\[\033[1;31m\]➜" || echo -n "\[\033[0m\]➜"`'
12
+ local gitbranch='`\
13
+ if [ "$(git config --get codespaces-theme.hide-status 2>/dev/null)" != 1 ]; then \
14
+ export BRANCH=$(git symbolic-ref --short HEAD 2>/dev/null || git rev-parse --short HEAD 2>/dev/null); \
15
+ if [ "${BRANCH}" != "" ]; then \
16
+ echo -n "\[\033[0;36m\](\[\033[1;31m\]${BRANCH}" \
17
+ && if git ls-files --error-unmatch -m --directory --no-empty-directory -o --exclude-standard ":/*" > /dev/null 2>&1; then \
18
+ echo -n " \[\033[1;33m\]✗"; \
19
+ fi \
20
+ && echo -n "\[\033[0;36m\]) "; \
21
+ fi; \
22
+ fi`'
23
+ local lightblue='\[\033[1;34m\]'
24
+ local removecolor='\[\033[0m\]'
25
+ PS1="${userpart} ${lightblue}\w ${gitbranch}${removecolor}\$ "
26
+ unset -f __bash_prompt
27
+ }
28
+ __bash_prompt
29
+
30
+ __show_notice() {
31
+ local __message="
32
+ \033[0;32mWelcome to Codespaces! You are using the pre-configured rmagick image.\033[0m
33
+
34
+ \033[0;35mTests can be executed with:\033[0m bundle exec rake
35
+ \033[0;35mCode style can be checked with:\033[0m STYLE_CHECKS=true bundle exec rubocop
36
+ "
37
+ echo -e "$__message"
38
+
39
+ unset -f __show_notice
40
+ }
41
+ __show_notice
42
+ EOF
43
+ )"
44
+
45
+ echo "${codespaces_bash}" >> "/root/.bashrc"
data/.editorconfig CHANGED
@@ -12,3 +12,6 @@ tab_width = 2
12
12
 
13
13
  [{*.{rb,yml,sh,md}]
14
14
  indent_size = 2
15
+
16
+ [*.cpp]
17
+ indent_size = 4
@@ -0,0 +1,17 @@
1
+ ### Description
2
+ <!-- A description of the bug or feature -->
3
+
4
+ ### Steps to Reproduce
5
+ <!-- List of steps, sample code, failing test or link to a project that reproduces the behavior.
6
+ Make sure you place a stack trace inside a code (```) block to avoid linking unrelated issues -->
7
+
8
+ ### System Configuration
9
+ <!-- Tell us about the environment where you are experiencing the bug -->
10
+
11
+ - ImageMagick version:
12
+ - RMagick version:
13
+ - Ruby version:
14
+ - Environment (Operating system, version and so on):
15
+ - Additional information:
16
+
17
+ <!-- Thanks for reporting the issue to RMagick! -->
@@ -0,0 +1,157 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+ workflow_dispatch:
9
+
10
+ permissions:
11
+ contents: read
12
+
13
+ jobs:
14
+ lint:
15
+ runs-on: ubuntu-latest
16
+ timeout-minutes: 20
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+ - name: Set up Ruby 2.3
20
+ uses: ruby/setup-ruby@master
21
+ with:
22
+ ruby-version: '2.3'
23
+ - name: Build and test with Rake
24
+ run: |
25
+ bundle install --path=vendor/bundle --jobs 4 --retry 3
26
+ STYLE_CHECKS=true bundle exec rubocop
27
+
28
+ rbs:
29
+ runs-on: ubuntu-latest
30
+ name: RBS
31
+ timeout-minutes: 20
32
+ steps:
33
+ - uses: actions/checkout@v4
34
+ - name: Set up Ruby 3.0
35
+ uses: ruby/setup-ruby@master
36
+ with:
37
+ ruby-version: '3.0'
38
+ - name: Validate RBS signatures
39
+ run: |
40
+ bundle install --path=vendor/bundle --jobs 4 --retry 3
41
+ bundle exec rake rbs:validate && bundle exec steep check
42
+
43
+ test-linux:
44
+ runs-on: ubuntu-latest
45
+ timeout-minutes: 20
46
+ strategy:
47
+ matrix:
48
+ ruby-version: ['2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3']
49
+ imagemagick-version:
50
+ - { full: 6.7.7-10, major-minor: '6.7' }
51
+ - { full: 6.8.9-10, major-minor: '6.8' }
52
+ - { full: 6.9.13-4, major-minor: '6.9' }
53
+ - { full: 7.0.11-14, major-minor: '7.0' }
54
+ - { full: 7.1.1-26, major-minor: '7.1' }
55
+ exclude:
56
+ # Ghostscript 9.55.0 causes error with Ruby 3.3 + ImageMagick 6.7 when run Magick::Draw tests.
57
+ # It disable running tests with Ruby 3.3 + ImageMagick 6.7 because it might be difficult to support old ImageMagick.
58
+ - ruby-version: '3.3'
59
+ imagemagick-version: { major-minor: '6.7' }
60
+
61
+ name: Linux, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
62
+ steps:
63
+ - uses: actions/checkout@v4
64
+ - name: Cache ImageMagick built objects
65
+ uses: actions/cache@v4
66
+ with:
67
+ path: ./build-ImageMagick
68
+ key: v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
69
+ restore-keys: |
70
+ v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
71
+ - name: Set up Ruby ${{ matrix.ruby-version }}
72
+ uses: ruby/setup-ruby@master
73
+ with:
74
+ ruby-version: ${{ matrix.ruby-version }}
75
+ - name: Update/Install packages
76
+ run: |
77
+ export IMAGEMAGICK_VERSION=${{ matrix.imagemagick-version.full }}
78
+ ./before_install_linux.sh
79
+ - name: Build and test with Rake
80
+ run: |
81
+ bundle install --path=vendor/bundle --jobs 4 --retry 3
82
+ bundle exec rake
83
+
84
+ test-macos:
85
+ runs-on: macos-latest
86
+ timeout-minutes: 20
87
+ strategy:
88
+ matrix:
89
+ ruby-version: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3']
90
+ imagemagick-version:
91
+ - { full: 6.9.13-4, major-minor: '6.9' }
92
+ - { full: 7.1.1-26, major-minor: '7.1' }
93
+
94
+ name: macOS, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
95
+ steps:
96
+ - uses: actions/checkout@v4
97
+ - name: Cache ImageMagick built objects
98
+ uses: actions/cache@v4
99
+ with:
100
+ path: ./build-ImageMagick
101
+ key: v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
102
+ restore-keys: |
103
+ v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
104
+ - name: Set up Ruby ${{ matrix.ruby-version }}
105
+ uses: ruby/setup-ruby@master
106
+ with:
107
+ ruby-version: ${{ matrix.ruby-version }}
108
+ - name: Update/Install packages
109
+ run: |
110
+ IMAGEMAGICK_VERSION=${{ matrix.imagemagick-version.full }} ./before_install_osx.sh
111
+ - name: Build and test with Rake
112
+ run: |
113
+ bundle install --path=vendor/bundle --jobs 4 --retry 3
114
+ bundle exec rake
115
+
116
+ test-windows:
117
+ runs-on: windows-latest
118
+ timeout-minutes: 20
119
+ strategy:
120
+ matrix:
121
+ ruby-version: ['3.3']
122
+ imagemagick-version:
123
+ - { full: 6.9.13-4, major-minor: '6.9' }
124
+ - { full: 7.1.1-26, major-minor: '7.1' }
125
+ env:
126
+ bundled_im_dir: C:\Program Files\ImageMagick-7.1.1-Q16-HDRI
127
+ install_im_dir: D:\ImageMagick
128
+
129
+ name: MSWin, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
130
+ steps:
131
+ - uses: actions/checkout@v4
132
+ - name: Setup environment variable
133
+ # https://stackoverflow.com/questions/60169752/how-to-update-the-path-in-a-github-action-workflow-file-for-a-windows-latest-hos
134
+ run: |
135
+ Add-Content $env:GITHUB_PATH ${{ env.install_im_dir }}
136
+ - name: Uninstall bundled ImageMagick
137
+ # Bundled ImageMagick does not have C/C++ library and dll which required by rmagick.
138
+ run: |
139
+ Start-Process -FilePath "${{ env.bundled_im_dir }}\unins000.exe" -ArgumentList "/VERYSILENT /NORESTART"
140
+ - name: Set up Ruby ${{ matrix.ruby-version }}
141
+ uses: ruby/setup-ruby@master
142
+ with:
143
+ ruby-version: ${{ matrix.ruby-version }}
144
+ - name: Install ghostscript
145
+ run: |
146
+ choco install ghostscript
147
+ - name: Install ImageMagick
148
+ # https://github.com/rmagick/ImageMagick-binaries
149
+ run: |
150
+ $imagemagick_version = "${{ matrix.imagemagick-version.full }}"
151
+ $installer_name = "ImageMagick-$($imagemagick_version)-Q16-x64-dll.exe"
152
+ $url = "https://github.com/rmagick/ImageMagick-binaries/raw/main/$($installer_name)"
153
+ Invoke-WebRequest -Uri $url -OutFile $installer_name
154
+ Start-Process -FilePath $installer_name -ArgumentList "/DIR=${{ env.install_im_dir }} /VERYSILENT /NORESTART /TASKS=install_Devel"
155
+ - name: Build and test with Rake
156
+ run: |
157
+ cmd.exe /D /S /C "bundle install --path=vendor/bundle --retry 3 & bundle exec rake"
data/.gitignore CHANGED
@@ -13,9 +13,17 @@ rdoc
13
13
  spec/reports
14
14
  test/tmp
15
15
  test/version_tmp
16
+ vendor/bundle
16
17
  tmp
17
18
  *.bundle
18
19
  *.so
19
20
  *.o
20
21
  *.a
21
- mkmf.log
22
+ *.log
23
+ *.def
24
+ Makefile
25
+ extconf.h
26
+ compile_flags.txt
27
+ build-ImageMagick/
28
+ doc/node_modules/
29
+ doc/package-lock.json
data/.rspec CHANGED
@@ -1 +1,2 @@
1
1
  --require spec_helper
2
+ --force-color
data/.rubocop.yml CHANGED
@@ -1,340 +1,37 @@
1
- # Custom configuration, edit with care! This gem needs to be backwards
2
- # compatible with Ruby 1.8:
3
-
4
- Style/HashSyntax:
5
- EnforcedStyle: hash_rockets
6
-
7
- Style/DeprecatedHashMethods:
8
- Enabled: false
9
-
10
- # TODO: How to warn if stabby proc is used?
11
- Style/Lambda:
12
- Enabled: false
13
-
14
- Style/StringLiterals:
15
- EnforcedStyle: single_quotes
16
-
17
- Style/DotPosition:
18
- EnforcedStyle: leading
19
-
20
- # Auto-generated config to be cleaned up and deleted:
21
-
22
- # Offense count: 2
23
- # Cop supports --auto-correct.
24
- Lint/BlockAlignment:
25
- Enabled: false
26
-
27
- Lint/FormatParameterMismatch:
28
- Enabled: false
29
-
30
- # Offense count: 1
31
- Lint/HandleExceptions:
32
- Enabled: false
33
-
34
- # Offense count: 1
35
- Lint/RescueException:
36
- Enabled: false
37
-
38
- # Offense count: 1
39
- Lint/ShadowingOuterLocalVariable:
40
- Enabled: false
41
-
42
- # Offense count: 1
43
- Lint/UnderscorePrefixedVariableName:
44
- Enabled: false
45
-
46
- # Offense count: 9
47
- # Cop supports --auto-correct.
48
- Lint/UnusedBlockArgument:
49
- Enabled: false
50
-
51
- # Offense count: 17
52
- # Cop supports --auto-correct.
53
- Lint/UnusedMethodArgument:
54
- Enabled: false
55
-
56
- # Offense count: 22
57
- Lint/UselessAssignment:
58
- Enabled: false
59
-
60
- # Offense count: 183
61
- Metrics/AbcSize:
62
- Max: 559
63
-
64
- # Offense count: 1
65
- Metrics/BlockNesting:
66
- Max: 4
67
-
68
- # Offense count: 17
69
- # Configuration parameters: CountComments.
70
- Metrics/ClassLength:
71
- Max: 1099
72
-
73
- # Offense count: 22
74
- Metrics/CyclomaticComplexity:
75
- Max: 42
76
-
77
- # Offense count: 844
78
- # Configuration parameters: AllowURI, URISchemes.
79
- Metrics/LineLength:
80
- Max: 276
81
-
82
- # Offense count: 178
83
- # Configuration parameters: CountComments.
84
- Metrics/MethodLength:
85
- Max: 157
86
-
87
- # Offense count: 13
88
- # Configuration parameters: CountKeywordArgs.
89
- Metrics/ParameterLists:
90
- Max: 8
91
-
92
- # Offense count: 14
93
- Metrics/PerceivedComplexity:
94
- Max: 41
95
-
96
- Performance/StringReplacement:
97
- Enabled: false
98
-
99
- # Offense count: 4
100
- Style/AccessorMethodName:
101
- Enabled: false
102
-
103
- Style/AlignArray:
104
- Enabled: false
105
-
106
- # Offense count: 3
107
- # Cop supports --auto-correct.
108
- # Configuration parameters: EnforcedStyle, SupportedStyles.
109
- Style/BarePercentLiterals:
110
- Enabled: false
111
-
112
- # Offense count: 7
113
- Style/CaseEquality:
114
- Enabled: false
115
-
116
- # Offense count: 63
117
- # Configuration parameters: IndentWhenRelativeTo, SupportedStyles, IndentOneStep.
118
- Style/CaseIndentation:
119
- Enabled: false
120
-
121
- # Offense count: 13
122
- Style/ClassAndModuleCamelCase:
123
- Enabled: false
124
-
125
- # Offense count: 6
126
- # Configuration parameters: EnforcedStyle, SupportedStyles.
127
- Style/ClassAndModuleChildren:
128
- Enabled: false
129
-
130
- # Offense count: 1
131
- # Cop supports --auto-correct.
132
- Style/ClosingParenthesisIndentation:
133
- Enabled: false
134
-
135
- Style/CollectionMethods:
136
- Enabled: false
137
-
138
- # Offense count: 5
139
- # Cop supports --auto-correct.
140
- Style/CommentIndentation:
141
- Enabled: false
142
-
143
- # Offense count: 126
144
- Style/ConstantName:
145
- Enabled: false
146
-
147
- # Offense count: 62
148
- Style/Documentation:
149
- Enabled: false
150
-
151
- Style/EmptyLinesAroundBlockBody:
152
- Enabled: false
153
-
154
- Style/ExtraSpacing:
155
- Enabled: false
156
-
157
- # Offense count: 23
158
- # Configuration parameters: Exclude.
159
- Style/FileName:
160
- Enabled: false
161
-
162
- # Offense count: 68
163
- # Configuration parameters: EnforcedStyle, SupportedStyles.
164
- Style/FormatString:
165
- Enabled: false
166
-
167
- # Offense count: 45
168
- # Configuration parameters: AllowedVariables.
169
- Style/GlobalVars:
170
- Enabled: false
171
-
172
- # Offense count: 8
173
- # Configuration parameters: MinBodyLength.
174
- Style/GuardClause:
175
- Enabled: false
176
-
177
- # Offense count: 29
178
- # Cop supports --auto-correct.
179
- # Configuration parameters: MaxLineLength.
180
- Style/IfUnlessModifier:
181
- Enabled: false
182
-
183
- Style/IndentArray:
184
- Enabled: false
185
-
186
- Style/IndentationConsistency:
187
- Enabled: false
188
-
189
- # Offense count: 1049
190
- # Cop supports --auto-correct.
191
- # Configuration parameters: Width.
192
- Style/IndentationWidth:
193
- Enabled: false
194
-
195
- # Offense count: 47
196
- # Cop supports --auto-correct.
197
- Style/LeadingCommentSpace:
198
- Enabled: false
199
-
200
- # Offense count: 4
201
- # Configuration parameters: EnforcedStyle, SupportedStyles.
202
- Style/MethodName:
203
- Enabled: false
204
-
205
- # Offense count: 9
206
- # Cop supports --auto-correct.
207
- # Configuration parameters: EnforcedStyle, SupportedStyles.
208
- Style/MultilineOperationIndentation:
209
- Enabled: false
210
-
211
- # Offense count: 1
212
- Style/MultilineTernaryOperator:
213
- Enabled: false
214
-
215
- # Offense count: 3
216
- # Configuration parameters: EnforcedStyle, MinBodyLength, SupportedStyles.
217
- Style/Next:
218
- Enabled: false
219
-
220
- # Offense count: 21
221
- # Cop supports --auto-correct.
222
- Style/NumericLiterals:
223
- MinDigits: 18
224
-
225
- # Offense count: 1
226
- Style/OpMethod:
227
- Enabled: false
228
-
229
- # Offense count: 9
230
- # Cop supports --auto-correct.
231
- # Configuration parameters: PreferredDelimiters.
232
- Style/PercentLiteralDelimiters:
233
- Enabled: false
234
-
235
- # Offense count: 10
236
- # Cop supports --auto-correct.
237
- Style/PerlBackrefs:
238
- Enabled: false
239
-
240
- # Offense count: 4
241
- # Configuration parameters: NamePrefix, NamePrefixBlacklist.
242
- Style/PredicateName:
243
- Enabled: false
244
-
245
- # Offense count: 1
246
- # Cop supports --auto-correct.
247
- # Configuration parameters: EnforcedStyle, SupportedStyles, AllowInnerSlashes.
248
- Style/RegexpLiteral:
249
- Enabled: false
250
-
251
- Style/RescueEnsureAlignment:
252
- Enabled: false
253
-
254
- # Offense count: 2
255
- Style/RescueModifier:
256
- Enabled: false
257
-
258
- # Offense count: 2
259
- # Cop supports --auto-correct.
260
- # Configuration parameters: AllowAsExpressionSeparator.
261
- Style/Semicolon:
262
- Enabled: false
263
-
264
- # Offense count: 2
265
- # Configuration parameters: Methods.
266
- Style/SingleLineBlockParams:
267
- Enabled: false
268
-
269
- # Offense count: 7
270
- # Cop supports --auto-correct.
271
- Style/SingleSpaceBeforeFirstArg:
272
- Enabled: false
273
-
274
- # Offense count: 1114
275
- # Cop supports --auto-correct.
276
- Style/SpaceAfterComma:
277
- Enabled: false
278
-
279
- # Offense count: 91
280
- # Cop supports --auto-correct.
281
- # Configuration parameters: EnforcedStyle, SupportedStyles.
282
- Style/SpaceAroundEqualsInParameterDefault:
283
- Enabled: false
284
-
285
- # Offense count: 1066
286
- # Cop supports --auto-correct.
287
- # Configuration parameters: MultiSpaceAllowedForOperators.
288
- Style/SpaceAroundOperators:
289
- Enabled: false
290
-
291
- # Offense count: 3
292
- # Cop supports --auto-correct.
293
- # Configuration parameters: EnforcedStyle, SupportedStyles.
294
- Style/SpaceBeforeBlockBraces:
295
- Enabled: false
296
-
297
- # Offense count: 204
298
- # Cop supports --auto-correct.
299
- # Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
300
- Style/SpaceInsideBlockBraces:
301
- Enabled: false
302
-
303
- # Offense count: 6
304
- # Cop supports --auto-correct.
305
- Style/SpaceInsideBrackets:
306
- Enabled: false
307
-
308
- # Offense count: 68
309
- # Cop supports --auto-correct.
310
- # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SupportedStyles.
311
- Style/SpaceInsideHashLiteralBraces:
312
- Enabled: false
313
-
314
- # Offense count: 35
315
- # Cop supports --auto-correct.
316
- Style/SpaceInsideParens:
317
- Enabled: false
318
-
319
- # Offense count: 12
320
- # Cop supports --auto-correct.
321
- # Configuration parameters: IgnoredMethods.
322
- Style/SymbolProc:
323
- Enabled: false
324
-
325
- # Offense count: 3
326
- # Cop supports --auto-correct.
327
- # Configuration parameters: EnforcedStyleForMultiline, SupportedStyles.
328
- Style/TrailingComma:
329
- Enabled: false
330
-
331
- # Offense count: 2
332
- # Configuration parameters: EnforcedStyle, SupportedStyles.
333
- Style/VariableName:
334
- Enabled: false
335
-
336
- # Offense count: 7
337
- # Cop supports --auto-correct.
338
- # Configuration parameters: WordRegex.
339
- Style/WordArray:
340
- MinSize: 3
1
+ inherit_from:
2
+ - .rubocop_todo.yml
3
+
4
+ require:
5
+ - rubocop-rspec
6
+
7
+ AllCops:
8
+ DefaultFormatter: fuubar
9
+ EnabledByDefault: true
10
+ TargetRubyVersion: 2.3
11
+ Exclude:
12
+ - 'vendor/bundle/**/*'
13
+ - '**/*\.spec'
14
+
15
+ ################################################################################
16
+ #
17
+ # Rules that depart from rubocop defaults
18
+ #
19
+ ################################################################################
20
+
21
+ Layout/MultilineAssignmentLayout: { EnforcedStyle: same_line }
22
+ RSpec/FilePath: { CustomTransform: { Magick: rmagick } }
23
+ Style/FormatString: { EnforcedStyle: sprintf }
24
+ Style/GuardClause: { MinBodyLength: 3 }
25
+ # we may not need this after finishing RSpec conversion
26
+ # seems like `rubocop-rspec` already excludes the `spec/` directory
27
+ Style/MethodCalledOnDoEndBlock: { Exclude: [test/**/*.rb, spec/**/*.rb] }
28
+ Style/NumericLiterals: { MinDigits: 6 }
29
+
30
+ ################################################################################
31
+ #
32
+ # Rules we don't want to enable
33
+ #
34
+ ################################################################################
35
+
36
+ RSpec/AlignLeftLetBrace: { Enabled: false }
37
+ RSpec/AlignRightLetBrace: { Enabled: false }