rmagick 6.0.0 → 6.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4002a5d6c97fb78a5f1a75b4b192cf5151a43570702da719262b34ea08f19c28
4
- data.tar.gz: 61a03fd6de17ec92ddbf4650a03076072dfda17a6a6c9bcb5db7bb90089c5c84
3
+ metadata.gz: 513aba969c109a4cbaef2540e0c8c24b698bae9741340190439f689f36221dc5
4
+ data.tar.gz: b4c08a874757081e94168f3d61d648fa415a5db3bdf506fd9e1e33d23ddc4a44
5
5
  SHA512:
6
- metadata.gz: dd88b3a404b7dedd24bd18a71cd5245af2b4cc38df32c377b9a3e8dbcb99b1790e9bd349e6c9abc9e45a0f64c6d75fdd5b92333e4febd1e3884cd04e8a07c23a
7
- data.tar.gz: aa9ac858769d7332a334cfa154f361028650eeb2947fb0f28dc254d71d72932e0e39a04726586847230f53ee658bb2d169fab385c6992d20e3bac2e8343c707a
6
+ metadata.gz: b023dd20af9b18850820465beeec888783d0fd49d96ae35cb8aab30627789a7c542a575095bb15b85e4509d7194162bbe382bf9321e3b2e9f4d033c9dad44e82
7
+ data.tar.gz: 7cd836b62e7dc614fa00e5b781d096e05d8bac29a05e36c319cc57446e0ff285d91e4f7f1b0b27e38e0c36a3a190b50960470f4d0e808b1e93e61c81735e35db
data/.rubocop.yml CHANGED
@@ -62,3 +62,6 @@ RSpec/AlignRightLetBrace:
62
62
 
63
63
  Style/Copyright:
64
64
  Enabled: false
65
+
66
+ Style/DisableCopsWithinSourceCodeDirective:
67
+ Enabled: false
data/.rubocop_todo.yml CHANGED
@@ -171,12 +171,6 @@ Lint/FloatComparison:
171
171
  Exclude:
172
172
  - 'lib/rvg/stretchable.rb'
173
173
 
174
- # Offense count: 1
175
- # This cop supports safe autocorrection (--autocorrect).
176
- Lint/IdentityComparison:
177
- Exclude:
178
- - 'lib/rmagick_internal.rb'
179
-
180
174
  # Offense count: 91
181
175
  # This cop supports unsafe autocorrection (--autocorrect-all).
182
176
  # Configuration parameters: AllowedMethods, AllowedPatterns, IgnoredClasses.
@@ -199,12 +193,6 @@ Lint/RescueException:
199
193
  Exclude:
200
194
  - 'lib/rmagick_internal.rb'
201
195
 
202
- # Offense count: 1
203
- # Configuration parameters: AllowComments, AllowNil.
204
- Lint/SuppressedException:
205
- Exclude:
206
- - 'lib/rmagick_internal.rb'
207
-
208
196
  # Offense count: 39
209
197
  # Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes.
210
198
  Metrics/AbcSize:
@@ -389,12 +377,6 @@ Style/ClassMethodsDefinitions:
389
377
  Style/CommentedKeyword:
390
378
  Enabled: false
391
379
 
392
- # Offense count: 2
393
- # This cop supports unsafe autocorrection (--autocorrect-all).
394
- Style/ConcatArrayLiterals:
395
- Exclude:
396
- - 'spec/rmagick/image_list/concat_spec.rb'
397
-
398
380
  # Offense count: 129
399
381
  # Configuration parameters: IgnoreModules.
400
382
  Style/ConstantVisibility:
@@ -408,17 +390,6 @@ Style/ConstantVisibility:
408
390
  - 'lib/rvg/stylable.rb'
409
391
  - 'spec/support/helpers.rb'
410
392
 
411
- # Offense count: 9
412
- # This cop supports safe autocorrection (--autocorrect).
413
- # Configuration parameters: AllowedCops.
414
- Style/DisableCopsWithinSourceCodeDirective:
415
- Exclude:
416
- - 'lib/rmagick_internal.rb'
417
- - 'spec/magick_spec.rb'
418
- - 'spec/rmagick/image_list/collect_spec.rb'
419
- - 'spec/rmagick/image_list/find_all_spec.rb'
420
- - 'spec/rmagick/image_list_spec.rb'
421
-
422
393
  # Offense count: 3
423
394
  Style/DocumentDynamicEvalDefinition:
424
395
  Exclude:
@@ -455,12 +426,6 @@ Style/FormatStringToken:
455
426
  Style/FrozenStringLiteralComment:
456
427
  Enabled: false
457
428
 
458
- # Offense count: 1
459
- # This cop supports unsafe autocorrection (--autocorrect-all).
460
- Style/GlobalStdStream:
461
- Exclude:
462
- - 'Rakefile'
463
-
464
429
  # Offense count: 46
465
430
  # Configuration parameters: AllowedVariables.
466
431
  Style/GlobalVars:
data/CHANGELOG.md CHANGED
@@ -3,6 +3,13 @@
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.0.1
7
+
8
+ Bug Fixes
9
+
10
+ - Fix build error on FreeBSD (#1618)
11
+ - Fix build error with GCC 14 on Windows (#1616)
12
+
6
13
  ## RMagick 6.0.0
7
14
 
8
15
  Improvements
data/README.md CHANGED
@@ -105,10 +105,10 @@ brew install imagemagick@6
105
105
  ### Windows
106
106
  1. Install latest Ruby+Devkit package which you can get from [RubyInstaller for Windows](https://rubyinstaller.org).
107
107
  2. You might need to configure `PATH` environment variable to where the compiler is located.
108
- (Ex: `set PATH=C:\Ruby27-x64\msys64\usr\bin;C:\Ruby27-x64\msys64\mingw64\bin;%PATH%`)
108
+ (Ex: `set PATH=C:\Ruby33-x64\bin;C:\Ruby33-x64\msys64\ucrt64\bin;%PATH%`)
109
109
  3. Download `ImageMagick-7.XXXX-Q16-x64-dll.exe` (not, `ImageMagick-7.XXXX-Q16-x64-static.exe`) binary from [Windows Binary Release](https://imagemagick.org/script/download.php#windows), or you can download ImageMagick 6 from [Windows Binary Release](https://legacy.imagemagick.org/script/download.php#windows).
110
- 4. Install ImageMagick. You need to turn on checkboxes `Add application directory to your system path` and `Install development headers and libraries for C and C++` in an installer for RMagick.
111
- <img width="50%" src="https://user-images.githubusercontent.com/199156/77183472-b72cbd00-6b11-11ea-8b9a-247bc1f9d8b1.png" />
110
+ 4. Install ImageMagick. You need to turn on checkboxes `Add application directory to your system path` and `Install development headers for C and C++` in an installer for RMagick.
111
+ <img width="75%" src="https://github.com/rmagick/rmagick/assets/199156/494e7963-cca5-4cb5-b28a-6c4d76adce5d" />
112
112
 
113
113
  Installing RMagick
114
114
  ------------------
data/Rakefile CHANGED
@@ -2,11 +2,9 @@ require 'simplecov'
2
2
  require './lib/rmagick/version'
3
3
  require 'fileutils'
4
4
  require 'English'
5
-
6
- desc "Open an irb session preloaded with this library"
7
- task :console do
8
- sh "irb -r ./ext/RMagick/extconf.rb -r ./lib/rmagick.rb"
9
- end
5
+ require 'bundler/gem_tasks'
6
+ require 'rake/extensiontask'
7
+ require 'rspec/core/rake_task'
10
8
 
11
9
  task :config do
12
10
  def version
@@ -52,7 +50,7 @@ task push_and_tag: [:build] do
52
50
  sh "gem push #{File.join(base, 'pkg', gem_name)}"
53
51
  if $CHILD_STATUS.success?
54
52
  sh "git tag -a -m \"Version #{version}\" #{version_tag}"
55
- STDOUT.puts "Tagged #{version_tag}."
53
+ puts "Tagged #{version_tag}."
56
54
  sh 'git push'
57
55
  sh 'git push --tags'
58
56
  else
@@ -60,6 +58,7 @@ task push_and_tag: [:build] do
60
58
  end
61
59
  end
62
60
 
61
+ Rake::Task["release"].clear # Remove `release` task in bundler/gem_tasks
63
62
  desc 'Release'
64
63
  task release: %i[assert_clean_repo push_and_tag]
65
64
 
@@ -125,8 +124,8 @@ namespace :website do
125
124
  end
126
125
  end
127
126
 
128
- desc 'Update RMagick website'
129
- task :update do
127
+ desc 'Update RMagick website HTML files'
128
+ task :"update:html" do
130
129
  unless File.exist?(PATH_TO_LOCAL_WEBSITE_REPOSITORY)
131
130
  puts "Please clone the rmagick.github.io repository to #{PATH_TO_LOCAL_WEBSITE_REPOSITORY}"
132
131
  exit 1
@@ -141,6 +140,25 @@ namespace :website do
141
140
  file_to_html('doc/ex', file_name, PATH_TO_LOCAL_WEBSITE_REPOSITORY, "#{file_name}.html")
142
141
  end
143
142
  end
143
+
144
+ desc 'Update RMagick website image files'
145
+ task :"update:image" do
146
+ unless File.exist?(PATH_TO_LOCAL_WEBSITE_REPOSITORY)
147
+ puts "Please clone the rmagick.github.io repository to #{PATH_TO_LOCAL_WEBSITE_REPOSITORY}"
148
+ exit 1
149
+ end
150
+
151
+ Rake::Task['install'].invoke
152
+
153
+ FileUtils.rm_rf("#{PATH_TO_LOCAL_WEBSITE_REPOSITORY}/ex")
154
+ FileUtils.cp_r('doc/ex', PATH_TO_LOCAL_WEBSITE_REPOSITORY)
155
+
156
+ FileUtils.cd("#{PATH_TO_LOCAL_WEBSITE_REPOSITORY}/ex") do
157
+ Dir.glob('*.rb').each do |file|
158
+ sh "ruby #{file}"
159
+ end
160
+ end
161
+ end
144
162
  end
145
163
 
146
164
  namespace :rbs do
@@ -153,9 +171,6 @@ namespace :rbs do
153
171
  end
154
172
  end
155
173
 
156
- require 'bundler/gem_tasks'
157
- require 'rake/extensiontask'
158
- require 'rspec/core/rake_task'
159
174
  RSpec::Core::RakeTask.new(:spec)
160
175
 
161
176
  Rake::ExtensionTask.new('RMagick2') do |ext|
@@ -15,10 +15,10 @@ fi
15
15
 
16
16
  export HOMEBREW_NO_AUTO_UPDATE=true
17
17
  brew uninstall --force imagemagick imagemagick@6
18
- brew install wget ghostscript freetype libtool jpeg little-cms2 openexr libomp libpng libtiff liblqr zlib webp zstd
18
+ brew install wget ghostscript freetype libtool jpeg jpeg-xl little-cms2 openexr libomp libpng libtiff liblqr zlib webp zstd
19
19
 
20
- export LDFLAGS="-L$(brew --prefix jpeg)/lib -L$(brew --prefix little-cms2)/lib -L$(brew --prefix openexr)/lib -L$(brew --prefix libomp)/lib -L$(brew --prefix libpng)/lib -L$(brew --prefix libtiff)/lib -L$(brew --prefix liblqr)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix webp)/lib -L$(brew --prefix zstd)/lib"
21
- export CPPFLAGS="-I$(brew --prefix jpeg)/include -I$(brew --prefix openexr)/include/OpenEXR -I$(brew --prefix libtiff)/include -I$(brew --prefix zlib)/include -I$(brew --prefix zstd)/include -I$(brew --prefix glib)/include/glib-2.0 -I$(brew --prefix glib)/lib/glib-2.0/include"
20
+ export LDFLAGS="-L$(brew --prefix jpeg)/lib -I$(brew --prefix jpeg-xl)/lib -L$(brew --prefix little-cms2)/lib -L$(brew --prefix openexr)/lib -L$(brew --prefix libomp)/lib -L$(brew --prefix libpng)/lib -L$(brew --prefix libtiff)/lib -L$(brew --prefix liblqr)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix webp)/lib -L$(brew --prefix zstd)/lib"
21
+ export CPPFLAGS="-I$(brew --prefix jpeg)/include -I$(brew --prefix jpeg-xl)/include -I$(brew --prefix openexr)/include/OpenEXR -I$(brew --prefix libtiff)/include -I$(brew --prefix zlib)/include -I$(brew --prefix zstd)/include -I$(brew --prefix glib)/include/glib-2.0 -I$(brew --prefix glib)/lib/glib-2.0/include"
22
22
 
23
23
  project_dir=$(pwd)
24
24
  build_dir="${project_dir}/build-ImageMagick/ImageMagick-${IMAGEMAGICK_VERSION}"
@@ -41,7 +41,11 @@ build_imagemagick() {
41
41
  fi
42
42
 
43
43
  cd "${build_dir}"
44
- ./configure --prefix=/usr/local "${options}" --without-raw
44
+ ./configure \
45
+ --prefix=/usr/local \
46
+ "${options}" \
47
+ --with-gs-font-dir=/opt/homebrew/share/ghostscript/fonts \
48
+ --without-raw
45
49
  make -j
46
50
  }
47
51
 
@@ -20,6 +20,7 @@ module RMagick
20
20
  ImageMagick-6.Q32
21
21
  ImageMagick-6.Q16
22
22
  ImageMagick-6.Q8
23
+ ImageMagick-6
23
24
  ].freeze
24
25
 
25
26
  # ImageMagick 7 packages
@@ -32,6 +33,7 @@ module RMagick
32
33
  ImageMagick-7.Q32
33
34
  ImageMagick-7.Q16
34
35
  ImageMagick-7.Q8
36
+ ImageMagick-7
35
37
  ].freeze
36
38
 
37
39
  attr_reader :headers
@@ -129,7 +131,7 @@ module RMagick
129
131
  configure_archflags_for_osx($magick_package) if RUBY_PLATFORM.include?('darwin') # osx
130
132
 
131
133
  end
132
- $CPPFLAGS += ' $(optflags) $(debugflags)'
134
+ $CPPFLAGS += ' $(optflags) $(debugflags) -fomit-frame-pointer'
133
135
  end
134
136
 
135
137
  def exit_failure(msg)
@@ -273,8 +273,8 @@ typedef struct
273
273
 
274
274
  //! Quantum expression adapter.
275
275
  /**
276
- * Both ImageMagick and GraphicsMagick define an enum type for quantum-level
277
- * expressions, but they're different types. The QuantumExpressionOperator
276
+ * ImageMagick defines an enum type for quantum-level expressions,
277
+ * but they're different types. The QuantumExpressionOperator
278
278
  * type is an adapter type that can be mapped to either one.
279
279
  */
280
280
  typedef enum _QuantumExpressionOperator
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Magick
4
- VERSION = '6.0.0'
4
+ VERSION = '6.0.1'
5
5
  MIN_RUBY_VERSION = '3.0.0'
6
6
  MIN_IM_VERSION = '6.8.9'
7
7
  end
@@ -11,12 +11,9 @@
11
11
  #==============================================================================
12
12
 
13
13
  if RUBY_PLATFORM.match?(/mingw/i)
14
- begin
15
- require 'ruby_installer'
16
- ENV['PATH'].split(File::PATH_SEPARATOR).grep(/ImageMagick/i).each do |path|
17
- RubyInstaller::Runtime.add_dll_directory(path) if File.exist?(File.join(path, 'CORE_RL_magick_.dll')) || File.exist?(File.join(path, 'CORE_RL_MagickCore_.dll'))
18
- end
19
- rescue LoadError
14
+ require 'ruby_installer'
15
+ ENV['PATH'].split(File::PATH_SEPARATOR).grep(/ImageMagick/i).each do |path|
16
+ RubyInstaller::Runtime.add_dll_directory(path) if File.exist?(File.join(path, 'CORE_RL_magick_.dll')) || File.exist?(File.join(path, 'CORE_RL_MagickCore_.dll'))
20
17
  end
21
18
  end
22
19
 
@@ -1616,7 +1613,7 @@ module Magick
1616
1613
  if @scene
1617
1614
  img = @images[@scene]
1618
1615
  new_img = img.public_send(meth_id, *args, &block)
1619
- img.object_id == new_img.object_id ? self : new_img
1616
+ img.equal?(new_img) ? self : new_img
1620
1617
  else
1621
1618
  super
1622
1619
  end
data/rmagick.gemspec CHANGED
@@ -12,6 +12,10 @@ Gem::Specification.new do |s|
12
12
  s.homepage = 'https://github.com/rmagick/rmagick'
13
13
  s.license = 'MIT'
14
14
 
15
+ s.metadata['bug_tracker_uri'] = 'https://github.com/rmagick/rmagick/issues'
16
+ s.metadata['documentation_uri'] = 'https://rmagick.github.io/'
17
+ s.metadata['changelog_uri'] = 'https://github.com/rmagick/rmagick/blob/main/CHANGELOG.md'
18
+
15
19
  tracked_files = `git ls-files`.split($OUTPUT_RECORD_SEPARATOR)
16
20
  file_exclusion_regex = /\A(doc|benchmarks|examples|spec|Steepfile)/
17
21
  files = tracked_files.reject { |file| file[file_exclusion_regex] }
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rmagick
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.0
4
+ version: 6.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Hunter
8
8
  - Omer Bar-or
9
9
  - Benjamin Thomas
10
10
  - Moncef Maiza
11
- autorequire:
11
+ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2024-05-02 00:00:00.000000000 Z
14
+ date: 2024-05-15 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: observer
@@ -137,8 +137,11 @@ files:
137
137
  homepage: https://github.com/rmagick/rmagick
138
138
  licenses:
139
139
  - MIT
140
- metadata: {}
141
- post_install_message:
140
+ metadata:
141
+ bug_tracker_uri: https://github.com/rmagick/rmagick/issues
142
+ documentation_uri: https://rmagick.github.io/
143
+ changelog_uri: https://github.com/rmagick/rmagick/blob/main/CHANGELOG.md
144
+ post_install_message:
142
145
  rdoc_options: []
143
146
  require_paths:
144
147
  - lib
@@ -155,8 +158,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
155
158
  version: '0'
156
159
  requirements:
157
160
  - ImageMagick 6.8.9 or later
158
- rubygems_version: 3.4.10
159
- signing_key:
161
+ rubygems_version: 3.5.9
162
+ signing_key:
160
163
  specification_version: 4
161
164
  summary: Ruby binding to ImageMagick
162
165
  test_files: []