rmagick 6.1.2 → 6.1.4
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 +4 -4
- data/.devcontainer/ImageMagick6/devcontainer.json +1 -1
- data/.devcontainer/devcontainer.json +1 -1
- data/.github/workflows/ci.yml +18 -14
- data/CHANGELOG.md +12 -0
- data/ext/RMagick/extconf.rb +7 -3
- data/ext/RMagick/rmilist.cpp +1 -1
- data/ext/RMagick/rmimage.cpp +1 -1
- data/lib/rmagick/version.rb +1 -1
- data/lib/rmagick_internal.rb +3 -2
- data/lib/rvg/misc.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 869808111e9ff5a238c87513cf287fccf958b962a0d0a11cef7d7f2e4d66f1a4
|
4
|
+
data.tar.gz: 781eeaca5f13d2544c41a26faa9c7a7d7a08c8a8615d8982e6ae8ebfef73fee0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1e587419ce08959d886d52e1a21648444ef3054f385b8f4aa78cbcd66d37467730555d8ff7e4ba1db753fc98918f65b64b075906dae5a26daf15bdd792a8a589
|
7
|
+
data.tar.gz: 006f8c9ab91b011cc1a53c588ad4e7e85ecd015efbb3984f154dddff2de030d64209e97a69ce921d053938ffd758351636d42357197076a9be3e19c3d45795ef
|
data/.github/workflows/ci.yml
CHANGED
@@ -15,7 +15,7 @@ jobs:
|
|
15
15
|
runs-on: ubuntu-latest
|
16
16
|
timeout-minutes: 20
|
17
17
|
steps:
|
18
|
-
- uses: actions/checkout@
|
18
|
+
- uses: actions/checkout@v5
|
19
19
|
- name: Set up Ruby 3.3
|
20
20
|
uses: ruby/setup-ruby@master
|
21
21
|
with:
|
@@ -30,7 +30,7 @@ jobs:
|
|
30
30
|
name: RBS
|
31
31
|
timeout-minutes: 20
|
32
32
|
steps:
|
33
|
-
- uses: actions/checkout@
|
33
|
+
- uses: actions/checkout@v5
|
34
34
|
- name: Set up Ruby 3.0
|
35
35
|
uses: ruby/setup-ruby@master
|
36
36
|
with:
|
@@ -46,6 +46,7 @@ jobs:
|
|
46
46
|
runs-on: ubuntu-22.04
|
47
47
|
timeout-minutes: 20
|
48
48
|
strategy:
|
49
|
+
fail-fast: false
|
49
50
|
matrix:
|
50
51
|
ruby-version: ['3.0']
|
51
52
|
imagemagick-version:
|
@@ -54,7 +55,7 @@ jobs:
|
|
54
55
|
|
55
56
|
name: Linux, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
|
56
57
|
steps:
|
57
|
-
- uses: actions/checkout@
|
58
|
+
- uses: actions/checkout@v5
|
58
59
|
- name: Cache ImageMagick built objects
|
59
60
|
uses: actions/cache@v4
|
60
61
|
with:
|
@@ -79,15 +80,16 @@ jobs:
|
|
79
80
|
runs-on: ubuntu-latest
|
80
81
|
timeout-minutes: 20
|
81
82
|
strategy:
|
83
|
+
fail-fast: false
|
82
84
|
matrix:
|
83
85
|
ruby-version: ['3.0', '3.1', '3.2', '3.3', '3.4']
|
84
86
|
imagemagick-version:
|
85
|
-
- { full: 6.9.13-
|
86
|
-
- { full: 7.1.1
|
87
|
+
- { full: 6.9.13-27, major-minor: '6.9' }
|
88
|
+
- { full: 7.1.2-1, major-minor: '7.1' }
|
87
89
|
|
88
90
|
name: Linux, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
|
89
91
|
steps:
|
90
|
-
- uses: actions/checkout@
|
92
|
+
- uses: actions/checkout@v5
|
91
93
|
- name: Cache ImageMagick built objects
|
92
94
|
uses: actions/cache@v4
|
93
95
|
with:
|
@@ -112,15 +114,16 @@ jobs:
|
|
112
114
|
runs-on: macos-latest
|
113
115
|
timeout-minutes: 20
|
114
116
|
strategy:
|
117
|
+
fail-fast: false
|
115
118
|
matrix:
|
116
119
|
ruby-version: ['3.0', '3.1', '3.2', '3.3', '3.4']
|
117
120
|
imagemagick-version:
|
118
|
-
- { full: 6.9.13-
|
119
|
-
- { full: 7.1.1
|
121
|
+
- { full: 6.9.13-27, major-minor: '6.9' }
|
122
|
+
- { full: 7.1.2-1, major-minor: '7.1' }
|
120
123
|
|
121
124
|
name: macOS, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
|
122
125
|
steps:
|
123
|
-
- uses: actions/checkout@
|
126
|
+
- uses: actions/checkout@v5
|
124
127
|
- name: Cache ImageMagick built objects
|
125
128
|
uses: actions/cache@v4
|
126
129
|
with:
|
@@ -144,26 +147,27 @@ jobs:
|
|
144
147
|
runs-on: ${{ matrix.os.target }}
|
145
148
|
timeout-minutes: 20
|
146
149
|
strategy:
|
150
|
+
fail-fast: false
|
147
151
|
matrix:
|
148
152
|
ruby-version: ['3.4']
|
149
153
|
imagemagick-version:
|
150
|
-
- { full: 6.9.13-
|
151
|
-
- { full: 7.1.1
|
154
|
+
- { full: 6.9.13-27, major-minor: '6.9' }
|
155
|
+
- { full: 7.1.2-1, major-minor: '7.1' }
|
152
156
|
os:
|
153
157
|
- { target: windows-latest, arch: 'x64' }
|
154
158
|
- { target: windows-11-arm, arch: 'arm64' }
|
155
159
|
exclude:
|
156
160
|
# ImageMagick 6 has not provided ARM binary. Ref. https://legacy.imagemagick.org/archive/binaries/
|
157
|
-
- imagemagick-version: { full: 6.9.13-
|
161
|
+
- imagemagick-version: { full: 6.9.13-27, major-minor: '6.9' }
|
158
162
|
os: { target: windows-11-arm, arch: 'arm64' }
|
159
163
|
|
160
164
|
env:
|
161
|
-
bundled_im_dir: ${{ matrix.os.arch == 'x64' && 'C:\Program Files\ImageMagick-7.1.
|
165
|
+
bundled_im_dir: ${{ matrix.os.arch == 'x64' && 'C:\Program Files\ImageMagick-7.1.2-Q16-HDRI' || 'C:\Program Files (x86)\ImageMagick-7.1.2-Q16-HDRI' }}
|
162
166
|
install_im_dir: C:\ImageMagick
|
163
167
|
|
164
168
|
name: MSWin ${{ matrix.os.arch }}, Ruby ${{ matrix.ruby-version }}, IM ${{ matrix.imagemagick-version.major-minor }}
|
165
169
|
steps:
|
166
|
-
- uses: actions/checkout@
|
170
|
+
- uses: actions/checkout@v5
|
167
171
|
- name: Setup environment variable
|
168
172
|
# https://stackoverflow.com/questions/60169752/how-to-update-the-path-in-a-github-action-workflow-file-for-a-windows-latest-hos
|
169
173
|
run: |
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,18 @@
|
|
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.1.4
|
7
|
+
|
8
|
+
Improvements
|
9
|
+
|
10
|
+
- Improve check whether C++ compiler exists (#1708)
|
11
|
+
|
12
|
+
## RMagick 6.1.3
|
13
|
+
|
14
|
+
Bug Fixes
|
15
|
+
|
16
|
+
- Fixed an error with ImageMagick 7.1.2 on Windows when saving images using file descriptor (#1699)
|
17
|
+
|
6
18
|
## RMagick 6.1.2
|
7
19
|
|
8
20
|
Improvements
|
data/ext/RMagick/extconf.rb
CHANGED
@@ -226,9 +226,12 @@ module RMagick
|
|
226
226
|
def assert_can_compile!
|
227
227
|
assert_has_dev_libs!
|
228
228
|
|
229
|
-
# Check for compiler. Extract first word so ENV['CXX'] can be a program name with arguments.
|
230
|
-
|
231
|
-
|
229
|
+
# Check for C++ compiler. Extract first word so ENV['CXX'] can be a program name with arguments.
|
230
|
+
# Ref. https://bugs.ruby-lang.org/issues/21111
|
231
|
+
cxx = (ENV['CXX'] || RbConfig::CONFIG['CXX']).split.first
|
232
|
+
return if cxx != "false" && find_executable(cxx)
|
233
|
+
|
234
|
+
exit_failure "No C++ compiler found in ${ENV['PATH']}. See mkmf.log for details."
|
232
235
|
end
|
233
236
|
|
234
237
|
def assert_has_dev_libs!
|
@@ -289,6 +292,7 @@ module RMagick
|
|
289
292
|
$defs.push('-DIMAGEMAGICK_7=1') if im_version_at_least?('7.0.0')
|
290
293
|
$defs.push('-DIMAGEMAGICK_GREATER_THAN_EQUAL_7_0_8=1') if im_version_at_least?('7.0.8')
|
291
294
|
$defs.push('-DIMAGEMAGICK_GREATER_THAN_EQUAL_7_0_10=1') if im_version_at_least?('7.0.10')
|
295
|
+
$defs.push('-DIMAGEMAGICK_GREATER_THAN_EQUAL_7_1_2=1') if im_version_at_least?('7.1.2')
|
292
296
|
|
293
297
|
create_header
|
294
298
|
end
|
data/ext/RMagick/rmilist.cpp
CHANGED
@@ -1204,7 +1204,7 @@ ImageList_write(VALUE self, VALUE file)
|
|
1204
1204
|
rb_io_check_writable(fptr);
|
1205
1205
|
|
1206
1206
|
add_format_prefix(info, rm_io_path(file));
|
1207
|
-
#if defined(_WIN32)
|
1207
|
+
#if defined(_WIN32) && !defined(IMAGEMAGICK_GREATER_THAN_EQUAL_7_1_2)
|
1208
1208
|
SetImageInfoFile(info, NULL);
|
1209
1209
|
#else
|
1210
1210
|
SetImageInfoFile(info, rb_io_stdio_file(fptr));
|
data/ext/RMagick/rmimage.cpp
CHANGED
@@ -15949,7 +15949,7 @@ Image_write(VALUE self, VALUE file)
|
|
15949
15949
|
rb_io_check_writable(fptr);
|
15950
15950
|
|
15951
15951
|
add_format_prefix(info, rm_io_path(file));
|
15952
|
-
#if defined(_WIN32)
|
15952
|
+
#if defined(_WIN32) && !defined(IMAGEMAGICK_GREATER_THAN_EQUAL_7_1_2)
|
15953
15953
|
SetImageInfoFile(info, NULL);
|
15954
15954
|
#else
|
15955
15955
|
SetImageInfoFile(info, rb_io_stdio_file(fptr));
|
data/lib/rmagick/version.rb
CHANGED
data/lib/rmagick_internal.rb
CHANGED
@@ -224,7 +224,7 @@ module Magick
|
|
224
224
|
|
225
225
|
def enquote(str)
|
226
226
|
str = to_string(str)
|
227
|
-
if str.length > 2 && /\A(?:"[
|
227
|
+
if str.length > 2 && /\A(?:"[^"]+"|'[^']+'|\{[^}]+\})\z/.match(str)
|
228
228
|
str
|
229
229
|
else
|
230
230
|
'"' + str + '"'
|
@@ -619,7 +619,7 @@ module Magick
|
|
619
619
|
def text(x, y, text)
|
620
620
|
text = to_string(text)
|
621
621
|
Kernel.raise ArgumentError, 'missing text argument' if text.empty?
|
622
|
-
if text.length > 2 && /\A(?:"[
|
622
|
+
if text.length > 2 && /\A(?:"[^"]+"|'[^']+'|\{[^}]+\})\z/.match(text)
|
623
623
|
# text already quoted
|
624
624
|
elsif !text['\'']
|
625
625
|
text = '\'' + text + '\''
|
@@ -1236,6 +1236,7 @@ module Magick
|
|
1236
1236
|
class ImageList
|
1237
1237
|
include Comparable
|
1238
1238
|
include Enumerable
|
1239
|
+
|
1239
1240
|
attr_reader :scene
|
1240
1241
|
|
1241
1242
|
private
|
data/lib/rvg/misc.rb
CHANGED
@@ -74,7 +74,7 @@ module Magick
|
|
74
74
|
end
|
75
75
|
|
76
76
|
def enquote(text)
|
77
|
-
return text if text.length > 2 && /\A(?:"[
|
77
|
+
return text if text.length > 2 && /\A(?:"[^"]+"|'[^']+'|\{[^}]+\})\z/.match(text)
|
78
78
|
|
79
79
|
if !text['\'']
|
80
80
|
text = '\'' + text + '\''
|