rmagick 6.2.0 → 6.3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 76f2e11d828e48371aa5ff6b599cebff2e793b3751892cc864cd22015781c324
4
- data.tar.gz: 65fa64db84769aa12a954bdd57ea7e03b8fcb61c1cebab89b2f9d833e8aab0aa
3
+ metadata.gz: a7ed79c680b9ea528ef33ba989c37e33c62dc2bd69766a96478826d1f02ad42b
4
+ data.tar.gz: 80315df8a5f0ae2de433e0929e165ed2636b9a451fb93ed3b301888418313685
5
5
  SHA512:
6
- metadata.gz: 1238aaf7239bf0ae5041682b6941fb52341283d6e8fe73c37d4c914e21c40a565d0f244fb923289647dc44d0f43bfbf2e0cd59e4a8ee99595ea32524b35bbd26
7
- data.tar.gz: ba83bde0c15f3061ad9e0d656cc79a65985fc55b49ae340f7fa3fd2ef510127610d95d2d8692c2111a97b3f4673badd1a03f18d6b78abbbb169f30020bcbdd4b
6
+ metadata.gz: fcea3eb1d2d92e3d0a0b658e95be0e6579f37a204823eb7dca6f60f2f867ea888bcc4a70f99163415620d48bb0b585bd74778bc881bef5f3f81089e1490f6bb3
7
+ data.tar.gz: 8e610ec1b43e3758002329a1ab2ffa013c3ce6e2ca233349572c54dd36c0875c09f63e6d9fb529030694f750dfa996f244d56a881a55d80077b149e77c7b894d
@@ -4,7 +4,7 @@
4
4
  "dockerfile": "../Dockerfile",
5
5
  "args": {
6
6
  "RUBY_VERSION": "3.3.3",
7
- "IMAGEMAGICK_VERSION": "6.9.13-33"
7
+ "IMAGEMAGICK_VERSION": "6.9.13-43"
8
8
  }
9
9
  },
10
10
  "onCreateCommand": "/setup/setup-repo.sh"
@@ -4,7 +4,7 @@
4
4
  "dockerfile": "Dockerfile",
5
5
  "args": {
6
6
  "RUBY_VERSION": "3.3.3",
7
- "IMAGEMAGICK_VERSION": "7.1.2-8"
7
+ "IMAGEMAGICK_VERSION": "7.1.2-18"
8
8
  }
9
9
  },
10
10
  "onCreateCommand": "/setup/setup-repo.sh"
@@ -0,0 +1,6 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: 'github-actions'
4
+ directory: '/'
5
+ schedule:
6
+ interval: 'monthly'
@@ -16,10 +16,10 @@ jobs:
16
16
  timeout-minutes: 20
17
17
  steps:
18
18
  - uses: actions/checkout@v6
19
- - name: Set up Ruby 3.3
20
- uses: ruby/setup-ruby@master
19
+ - name: Set up Ruby 4.0
20
+ uses: ruby/setup-ruby@v1
21
21
  with:
22
- ruby-version: '3.3'
22
+ ruby-version: '4.0'
23
23
  bundler-cache: true
24
24
  - name: Build and test with Rake
25
25
  run: |
@@ -31,10 +31,10 @@ jobs:
31
31
  timeout-minutes: 20
32
32
  steps:
33
33
  - uses: actions/checkout@v6
34
- - name: Set up Ruby 3.0
35
- uses: ruby/setup-ruby@master
34
+ - name: Set up Ruby 4.0
35
+ uses: ruby/setup-ruby@v1
36
36
  with:
37
- ruby-version: '3.0'
37
+ ruby-version: '4.0'
38
38
  bundler-cache: true
39
39
  - name: Validate RBS signatures
40
40
  run: |
@@ -57,7 +57,7 @@ jobs:
57
57
  steps:
58
58
  - uses: actions/checkout@v6
59
59
  - name: Cache ImageMagick built objects
60
- uses: actions/cache@v4
60
+ uses: actions/cache@v5
61
61
  with:
62
62
  path: ./build-ImageMagick
63
63
  key: v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
@@ -65,10 +65,9 @@ jobs:
65
65
  v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
66
66
  - name: Update/Install packages
67
67
  run: |
68
- export IMAGEMAGICK_VERSION=${{ matrix.imagemagick-version.full }}
69
- ./before_install_linux.sh
68
+ IMAGEMAGICK_VERSION=${{ matrix.imagemagick-version.full }} ./before_install_linux.sh
70
69
  - name: Set up Ruby ${{ matrix.ruby-version }}
71
- uses: ruby/setup-ruby@master
70
+ uses: ruby/setup-ruby@v1
72
71
  with:
73
72
  ruby-version: ${{ matrix.ruby-version }}
74
73
  bundler-cache: true
@@ -76,66 +75,40 @@ jobs:
76
75
  run: |
77
76
  bundle exec rake
78
77
 
79
- test-linux:
80
- runs-on: ubuntu-latest
78
+ test:
79
+ runs-on: ${{ matrix.os }}
81
80
  timeout-minutes: 20
82
81
  strategy:
83
82
  fail-fast: false
84
83
  matrix:
84
+ os:
85
+ - ubuntu-latest
86
+ - macos-latest
85
87
  ruby-version: ['3.0', '3.1', '3.2', '3.3', '3.4', '4.0']
86
88
  imagemagick-version:
87
- - { full: 6.9.13-33, major-minor: '6.9' }
88
- - { full: 7.1.2-8, major-minor: '7.1' }
89
+ - { full: 6.9.13-43, major-minor: '6.9' }
90
+ - { full: 7.1.2-18, major-minor: '7.1' }
89
91
 
90
- name: Linux, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
92
+ name: ${{ matrix.os }}, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
91
93
  steps:
92
94
  - uses: actions/checkout@v6
93
95
  - name: Cache ImageMagick built objects
94
- uses: actions/cache@v4
96
+ uses: actions/cache@v5
95
97
  with:
96
98
  path: ./build-ImageMagick
97
99
  key: v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
98
100
  restore-keys: |
99
101
  v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
100
- - name: Update/Install packages
102
+ - name: Update/Install packages (Linux)
103
+ if: runner.os == 'Linux'
101
104
  run: |
102
- export IMAGEMAGICK_VERSION=${{ matrix.imagemagick-version.full }}
103
- ./before_install_linux.sh
104
- - name: Set up Ruby ${{ matrix.ruby-version }}
105
- uses: ruby/setup-ruby@master
106
- with:
107
- ruby-version: ${{ matrix.ruby-version }}
108
- bundler-cache: true
109
- - name: Build and test with Rake
110
- run: |
111
- bundle exec rake
112
-
113
- test-macos:
114
- runs-on: macos-latest
115
- timeout-minutes: 20
116
- strategy:
117
- fail-fast: false
118
- matrix:
119
- ruby-version: ['3.0', '3.1', '3.2', '3.3', '3.4', '4.0']
120
- imagemagick-version:
121
- - { full: 6.9.13-33, major-minor: '6.9' }
122
- - { full: 7.1.2-8, major-minor: '7.1' }
123
-
124
- name: macOS, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
125
- steps:
126
- - uses: actions/checkout@v6
127
- - name: Cache ImageMagick built objects
128
- uses: actions/cache@v4
129
- with:
130
- path: ./build-ImageMagick
131
- key: v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
132
- restore-keys: |
133
- v1-${{ runner.os }}-imagemagick-${{ matrix.imagemagick-version.full }}
134
- - name: Update/Install packages
105
+ IMAGEMAGICK_VERSION=${{ matrix.imagemagick-version.full }} ./before_install_linux.sh
106
+ - name: Update/Install packages (macOS)
107
+ if: runner.os == 'macOS'
135
108
  run: |
136
109
  IMAGEMAGICK_VERSION=${{ matrix.imagemagick-version.full }} ./before_install_osx.sh
137
110
  - name: Set up Ruby ${{ matrix.ruby-version }}
138
- uses: ruby/setup-ruby@master
111
+ uses: ruby/setup-ruby@v1
139
112
  with:
140
113
  ruby-version: ${{ matrix.ruby-version }}
141
114
  bundler-cache: true
@@ -151,14 +124,14 @@ jobs:
151
124
  matrix:
152
125
  ruby-version: ['4.0']
153
126
  imagemagick-version:
154
- - { full: 6.9.13-33, major-minor: '6.9' }
155
- - { full: 7.1.2-8, major-minor: '7.1' }
127
+ - { full: 6.9.13-43, major-minor: '6.9' }
128
+ - { full: 7.1.2-18, major-minor: '7.1' }
156
129
  os:
157
130
  - { target: windows-latest, arch: 'x64' }
158
131
  - { target: windows-11-arm, arch: 'arm64' }
159
132
  exclude:
160
133
  # ImageMagick 6 has not provided ARM binary. Ref. https://legacy.imagemagick.org/archive/binaries/
161
- - imagemagick-version: { full: 6.9.13-33, major-minor: '6.9' }
134
+ - imagemagick-version: { full: 6.9.13-43, major-minor: '6.9' }
162
135
  os: { target: windows-11-arm, arch: 'arm64' }
163
136
 
164
137
  env:
@@ -222,7 +195,7 @@ jobs:
222
195
  Invoke-WebRequest -Uri $url -OutFile $installer_name
223
196
  Start-Process -FilePath $installer_name -ArgumentList "/DIR=${{ env.install_im_dir }} /VERYSILENT /NORESTART /TASKS=install_Devel"
224
197
  - name: Set up Ruby ${{ matrix.ruby-version }}
225
- uses: ruby/setup-ruby@master
198
+ uses: ruby/setup-ruby@v1
226
199
  with:
227
200
  ruby-version: ${{ matrix.ruby-version }}
228
201
  bundler-cache: true
@@ -247,7 +220,7 @@ jobs:
247
220
  steps:
248
221
  - uses: actions/checkout@v6
249
222
  - name: Set up Ruby ${{ matrix.ruby-version }}
250
- uses: ruby/setup-ruby@master
223
+ uses: ruby/setup-ruby@v1
251
224
  with:
252
225
  ruby-version: ${{ matrix.ruby-version }}
253
226
  bundler-cache: true
@@ -259,6 +232,6 @@ jobs:
259
232
  $pkg = "mingw-w64-ucrt-x86_64-imagemagick"
260
233
  }
261
234
  ridk exec pacman -S $pkg --noconfirm
262
- - name: Build and test with Rake
235
+ - name: Build test
263
236
  run: |
264
- cmd.exe /D /S /C "bundle exec rake"
237
+ cmd.exe /D /S /C "bundle exec rake compile"
data/.rubocop_todo.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2026-01-31 06:59:04 UTC using RuboCop version 1.84.0.
3
+ # on 2026-03-06 16:48:22 UTC using RuboCop version 1.85.1.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
@@ -117,7 +117,7 @@ Lint/ConstantDefinitionInBlock:
117
117
  Exclude:
118
118
  - 'Rakefile'
119
119
 
120
- # Offense count: 5527
120
+ # Offense count: 5528
121
121
  # Configuration parameters: Only, Ignore.
122
122
  Lint/ConstantResolution:
123
123
  Enabled: false
@@ -270,7 +270,7 @@ Naming/MethodParameterName:
270
270
  # Offense count: 2
271
271
  # Configuration parameters: Mode, AllowedMethods, AllowedPatterns, AllowBangMethods, WaywardPredicates.
272
272
  # AllowedMethods: call
273
- # WaywardPredicates: nonzero?
273
+ # WaywardPredicates: infinite?, nonzero?
274
274
  Naming/PredicateMethod:
275
275
  Exclude:
276
276
  - 'lib/rvg/deep_equal.rb'
@@ -351,15 +351,6 @@ Style/CaseEquality:
351
351
  - 'spec/rmagick/pixel/dup_spec.rb'
352
352
  - 'spec/rmagick/pixel/threequals_spec.rb'
353
353
 
354
- # Offense count: 2
355
- # This cop supports unsafe autocorrection (--autocorrect-all).
356
- # Configuration parameters: AllowedMethods, AllowedPatterns.
357
- # AllowedMethods: ==, equal?, eql?
358
- Style/ClassEqualityComparison:
359
- Exclude:
360
- - 'spec/rmagick/image_list/all_predicate_spec.rb'
361
- - 'spec/rmagick/image_list/any_predicate_spec.rb'
362
-
363
354
  # Offense count: 2
364
355
  # This cop supports safe autocorrection (--autocorrect).
365
356
  # Configuration parameters: EnforcedStyle.
@@ -396,7 +387,7 @@ Style/DocumentDynamicEvalDefinition:
396
387
  Style/Documentation:
397
388
  Enabled: false
398
389
 
399
- # Offense count: 164
390
+ # Offense count: 165
400
391
  # Configuration parameters: AllowedMethods, RequireForNonPublicMethods.
401
392
  Style/DocumentationMethod:
402
393
  Enabled: false
@@ -415,7 +406,7 @@ Style/FetchEnvVar:
415
406
  Style/FormatStringToken:
416
407
  EnforcedStyle: unannotated
417
408
 
418
- # Offense count: 41
409
+ # Offense count: 43
419
410
  # Configuration parameters: AllowedVariables.
420
411
  Style/GlobalVars:
421
412
  Exclude:
@@ -440,7 +431,7 @@ Style/HashEachMethods:
440
431
  - 'spec/rmagick/image/info/orientation_spec.rb'
441
432
  - 'spec/rmagick/image/info/units_spec.rb'
442
433
 
443
- # Offense count: 2
434
+ # Offense count: 1
444
435
  # This cop supports safe autocorrection (--autocorrect).
445
436
  Style/IfUnlessModifier:
446
437
  Exclude:
@@ -461,7 +452,7 @@ Style/InvertibleUnlessCondition:
461
452
  - 'lib/rvg/embellishable.rb'
462
453
  - 'lib/rvg/stretchable.rb'
463
454
 
464
- # Offense count: 4515
455
+ # Offense count: 4516
465
456
  # This cop supports safe autocorrection (--autocorrect).
466
457
  # Configuration parameters: IgnoreMacros, AllowedMethods, AllowedPatterns, IncludedMacros, IncludedMacroPatterns, AllowParenthesesInMultilineCall, AllowParenthesesInChaining, AllowParenthesesInCamelCaseMethod, AllowParenthesesInStringInterpolation, EnforcedStyle.
467
458
  # SupportedStyles: require_parentheses, omit_parentheses
@@ -512,6 +503,13 @@ Style/NumericPredicate:
512
503
  - 'lib/rvg/embellishable.rb'
513
504
  - 'spec/rmagick/image/destroy_spec.rb'
514
505
 
506
+ # Offense count: 3
507
+ # Configuration parameters: AllowedClasses.
508
+ Style/OneClassPerFile:
509
+ Exclude:
510
+ - 'examples/histogram.rb'
511
+ - 'lib/rvg/misc.rb'
512
+
515
513
  # Offense count: 4
516
514
  # Configuration parameters: AllowedMethods.
517
515
  # AllowedMethods: respond_to_missing?
@@ -588,7 +586,7 @@ Style/YodaCondition:
588
586
  Style/YodaExpression:
589
587
  Enabled: false
590
588
 
591
- # Offense count: 128
589
+ # Offense count: 129
592
590
  # This cop supports safe autocorrection (--autocorrect).
593
591
  # Configuration parameters: AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, AllowRBSInlineAnnotation, AllowCopDirectives, AllowedPatterns, SplitStrings.
594
592
  # URISchemes: http, https
data/CHANGELOG.md CHANGED
@@ -3,6 +3,20 @@
3
3
  All notable changes to this project are documented in this file.
4
4
  This project adheres to [Semantic Versioning](http://semver.org/).
5
5
 
6
+ ## RMagick 6.3.0
7
+
8
+ > [!IMPORTANT]
9
+ > This release is the final minor update for the RMagick 6 series.
10
+ >
11
+ > The upcoming RMagick 7.0 will require:
12
+ > * Ruby 3.2 or later
13
+ > * ImageMagick 6.9 or later (for ImageMagick 6 users)
14
+ > * ImageMagick 7.1 or later (for ImageMagick 7 users)
15
+
16
+ Enhancements
17
+
18
+ - Add deprecation warnings for upcoming RMagick 7.0 (#1740)
19
+
6
20
  ## RMagick 6.2.0
7
21
 
8
22
  Improvements
data/Gemfile CHANGED
@@ -16,9 +16,11 @@ gem 'rubocop', '~> 1.63'
16
16
  gem 'rubocop-performance', '~> 1.21'
17
17
  gem 'rubocop-rspec', '~> 3.5'
18
18
 
19
- gem 'rubocop-on-rbs', '~> 1.5' if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('3.2')
20
-
21
- gem 'rbs', '~> 3.4'
22
- gem 'steep', '~> 1.6'
19
+ if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('3.2')
20
+ # TODO: Bump rubocop-on-rbs to >= 2.0 when steep supports rbs 4.0
21
+ gem 'rbs', '~> 3.9'
22
+ gem 'rubocop-on-rbs', '< 2.0'
23
+ gem 'steep', '~> 1.10'
24
+ end
23
25
 
24
26
  gem 'ruby_memcheck', '~> 3.0' if RUBY_PLATFORM.include?('linux')
@@ -363,6 +363,38 @@ at_exit do
363
363
  msg = "Configured compile options: #{extconf.configured_compile_options}"
364
364
  Logging.message msg
365
365
  message msg + "\n"
366
+
367
+ if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.2.0')
368
+ message <<~"WARNING"
369
+ =======================================================================
370
+ DEPRECATION WARNING
371
+
372
+ RMagick 7.0 will drop support for Ruby #{RUBY_VERSION}.
373
+ Please upgrade to Ruby 3.2 or later.
374
+ =======================================================================
375
+ WARNING
376
+ end
377
+
378
+ if Gem::Version.new($magick_version) < Gem::Version.new('6.9.0')
379
+ message <<~"WARNING"
380
+ =======================================================================
381
+ DEPRECATION WARNING
382
+
383
+ RMagick 7.0 will drop support for ImageMagick #{$magick_version}.
384
+ Please upgrade to ImageMagick 6.9.0 or later.
385
+ =======================================================================
386
+ WARNING
387
+ end
388
+ if Gem::Version.new($magick_version) >= Gem::Version.new('7.0.0') && Gem::Version.new($magick_version) < Gem::Version.new('7.1.0')
389
+ message <<~"WARNING"
390
+ =======================================================================
391
+ DEPRECATION WARNING
392
+
393
+ RMagick 7.0 will drop support for ImageMagick #{$magick_version}.
394
+ Please upgrade to ImageMagick 7.1.0 or later.
395
+ =======================================================================
396
+ WARNING
397
+ end
366
398
  end
367
399
  extconf.create_makefile_file
368
400
  extconf.create_compile_flags_txt
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Magick
4
- VERSION = '6.2.0'
4
+ VERSION = '6.3.0'
5
5
  MIN_RUBY_VERSION = '3.0.0'
6
6
  MIN_IM_VERSION = '6.8.9'
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rmagick
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.2.0
4
+ version: 6.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Hunter
@@ -53,8 +53,8 @@ files:
53
53
  - ".devcontainer/setup-repo.sh"
54
54
  - ".devcontainer/setup-user.sh"
55
55
  - ".editorconfig"
56
- - ".github/ISSUE_TEMPLATE.md"
57
56
  - ".github/ISSUE_TEMPLATE/report.yml"
57
+ - ".github/dependabot.yml"
58
58
  - ".github/workflows/ci.yml"
59
59
  - ".gitignore"
60
60
  - ".rspec"
@@ -158,7 +158,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
158
158
  version: '0'
159
159
  requirements:
160
160
  - ImageMagick 6.8.9 or later
161
- rubygems_version: 4.0.6
161
+ rubygems_version: 3.6.9
162
162
  specification_version: 4
163
163
  summary: Ruby binding to ImageMagick
164
164
  test_files: []
@@ -1,17 +0,0 @@
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! -->