mini_magick 4.13.2 → 5.3.1

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.
@@ -7,9 +7,9 @@ module MiniMagick
7
7
  end
8
8
 
9
9
  module VERSION
10
- MAJOR = 4
11
- MINOR = 13
12
- TINY = 2
10
+ MAJOR = 5
11
+ MINOR = 3
12
+ TINY = 1
13
13
  PRE = nil
14
14
 
15
15
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join('.')
data/lib/mini_magick.rb CHANGED
@@ -1,64 +1,40 @@
1
1
  require 'mini_magick/version'
2
2
  require 'mini_magick/configuration'
3
+ require 'mini_magick/utilities'
4
+ require 'mini_magick/tool'
5
+ require 'mini_magick/image'
3
6
 
4
7
  module MiniMagick
5
8
 
6
- extend MiniMagick::Configuration
7
-
8
- ##
9
- # You might want to execute only certain blocks of processing with a
10
- # different CLI, because for example that CLI does that particular thing
11
- # faster. After the block CLI resets to its previous value.
12
- #
13
- # @example
14
- # MiniMagick.with_cli :graphicsmagick do
15
- # # operations that are better done with GraphicsMagick
16
- # end
17
- def self.with_cli(cli)
18
- old_cli = self.cli
19
- self.cli = cli
20
- yield
21
- ensure
22
- self.cli = old_cli
23
- end
9
+ Error = Class.new(RuntimeError)
10
+ Invalid = Class.new(StandardError)
11
+ TimeoutError = Class.new(Error)
24
12
 
25
- ##
26
- # Checks whether the CLI used is ImageMagick.
27
- #
28
- # @return [Boolean]
29
- def self.imagemagick?
30
- cli == :imagemagick
31
- end
13
+ extend MiniMagick::Configuration
32
14
 
33
15
  ##
34
- # Checks whether the CLI used is ImageMagick 7.
16
+ # Checks whether ImageMagick 7 is installed.
35
17
  #
36
18
  # @return [Boolean]
37
19
  def self.imagemagick7?
38
- cli == :imagemagick7
20
+ return false if graphicsmagick
21
+ return @imagemagick7 if defined?(@imagemagick7)
22
+ @imagemagick7 = !!MiniMagick::Utilities.which("magick")
39
23
  end
40
24
 
41
- ##
42
- # Checks whether the CLI used is GraphicsMagick.
43
- #
44
- # @return [Boolean]
45
- def self.graphicsmagick?
46
- cli == :graphicsmagick
25
+ %w[animate compare composite conjure convert display identify import mogrify montage stream].each do |tool|
26
+ define_singleton_method(tool) do |**options, &block|
27
+ name = imagemagick7? && tool == "convert" ? "magick" : tool
28
+ MiniMagick::Tool.new(name, **options, &block)
29
+ end
47
30
  end
48
31
 
49
32
  ##
50
- # Returns ImageMagick's/GraphicsMagick's version.
33
+ # Returns ImageMagick version.
51
34
  #
52
35
  # @return [String]
53
36
  def self.cli_version
54
- output = MiniMagick::Tool::Identify.new(&:version)
37
+ output = MiniMagick.identify(&:version)
55
38
  output[/\d+\.\d+\.\d+(-\d+)?/]
56
39
  end
57
-
58
- class Error < RuntimeError; end
59
- class Invalid < StandardError; end
60
-
61
40
  end
62
-
63
- require 'mini_magick/tool'
64
- require 'mini_magick/image'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mini_magick
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.13.2
4
+ version: 5.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Corey Johnson
@@ -10,19 +10,18 @@ authors:
10
10
  - James Miller
11
11
  - Thiago Fernandes Massa
12
12
  - Janko Marohnić
13
- autorequire:
14
13
  bindir: bin
15
14
  cert_chain: []
16
- date: 2024-07-08 00:00:00.000000000 Z
15
+ date: 1980-01-02 00:00:00.000000000 Z
17
16
  dependencies:
18
17
  - !ruby/object:Gem::Dependency
19
- name: rake
18
+ name: logger
20
19
  requirement: !ruby/object:Gem::Requirement
21
20
  requirements:
22
21
  - - ">="
23
22
  - !ruby/object:Gem::Version
24
23
  version: '0'
25
- type: :development
24
+ type: :runtime
26
25
  prerelease: false
27
26
  version_requirements: !ruby/object:Gem::Requirement
28
27
  requirements:
@@ -30,34 +29,34 @@ dependencies:
30
29
  - !ruby/object:Gem::Version
31
30
  version: '0'
32
31
  - !ruby/object:Gem::Dependency
33
- name: rspec
32
+ name: rake
34
33
  requirement: !ruby/object:Gem::Requirement
35
34
  requirements:
36
- - - "~>"
35
+ - - ">="
37
36
  - !ruby/object:Gem::Version
38
- version: 3.5.0
37
+ version: '0'
39
38
  type: :development
40
39
  prerelease: false
41
40
  version_requirements: !ruby/object:Gem::Requirement
42
41
  requirements:
43
- - - "~>"
42
+ - - ">="
44
43
  - !ruby/object:Gem::Version
45
- version: 3.5.0
44
+ version: '0'
46
45
  - !ruby/object:Gem::Dependency
47
- name: webmock
46
+ name: rspec
48
47
  requirement: !ruby/object:Gem::Requirement
49
48
  requirements:
50
- - - ">="
49
+ - - "~>"
51
50
  - !ruby/object:Gem::Version
52
- version: '0'
51
+ version: '3.5'
53
52
  type: :development
54
53
  prerelease: false
55
54
  version_requirements: !ruby/object:Gem::Requirement
56
55
  requirements:
57
- - - ">="
56
+ - - "~>"
58
57
  - !ruby/object:Gem::Version
59
- version: '0'
60
- description: Manipulate images with minimal use of memory via ImageMagick / GraphicsMagick
58
+ version: '3.5'
59
+ description: Manipulate images with minimal use of memory via ImageMagick
61
60
  email:
62
61
  - probablycorey@gmail.com
63
62
  - hcatlin@gmail.com
@@ -72,33 +71,19 @@ files:
72
71
  - MIT-LICENSE
73
72
  - README.md
74
73
  - Rakefile
75
- - lib/mini_gmagick.rb
76
74
  - lib/mini_magick.rb
77
75
  - lib/mini_magick/configuration.rb
78
76
  - lib/mini_magick/image.rb
79
77
  - lib/mini_magick/image/info.rb
80
78
  - lib/mini_magick/shell.rb
81
79
  - lib/mini_magick/tool.rb
82
- - lib/mini_magick/tool/animate.rb
83
- - lib/mini_magick/tool/compare.rb
84
- - lib/mini_magick/tool/composite.rb
85
- - lib/mini_magick/tool/conjure.rb
86
- - lib/mini_magick/tool/convert.rb
87
- - lib/mini_magick/tool/display.rb
88
- - lib/mini_magick/tool/identify.rb
89
- - lib/mini_magick/tool/import.rb
90
- - lib/mini_magick/tool/magick.rb
91
- - lib/mini_magick/tool/mogrify.rb
92
- - lib/mini_magick/tool/mogrify_restricted.rb
93
- - lib/mini_magick/tool/montage.rb
94
- - lib/mini_magick/tool/stream.rb
95
80
  - lib/mini_magick/utilities.rb
96
81
  - lib/mini_magick/version.rb
97
82
  homepage: https://github.com/minimagick/minimagick
98
83
  licenses:
99
84
  - MIT
100
- metadata: {}
101
- post_install_message:
85
+ metadata:
86
+ changelog_uri: https://github.com/minimagick/minimagick/releases
102
87
  rdoc_options: []
103
88
  require_paths:
104
89
  - lib
@@ -106,16 +91,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
106
91
  requirements:
107
92
  - - ">="
108
93
  - !ruby/object:Gem::Version
109
- version: '2.3'
94
+ version: '2.5'
110
95
  required_rubygems_version: !ruby/object:Gem::Requirement
111
96
  requirements:
112
97
  - - ">="
113
98
  - !ruby/object:Gem::Version
114
99
  version: '0'
115
100
  requirements:
116
- - You must have ImageMagick or GraphicsMagick installed
117
- rubygems_version: 3.5.11
118
- signing_key:
101
+ - You must have ImageMagick installed
102
+ rubygems_version: 3.6.7
119
103
  specification_version: 4
120
- summary: Manipulate images with minimal use of memory via ImageMagick / GraphicsMagick
104
+ summary: Manipulate images with minimal use of memory via ImageMagick
121
105
  test_files: []
data/lib/mini_gmagick.rb DELETED
@@ -1,3 +0,0 @@
1
- require 'mini_magick'
2
-
3
- MiniMagick.processor = :gm
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/animate.php
5
- #
6
- class Animate < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("animate", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/compare.php
5
- #
6
- class Compare < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("compare", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/composite.php
5
- #
6
- class Composite < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("composite", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/conjure.php
5
- #
6
- class Conjure < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("conjure", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/convert.php
5
- #
6
- class Convert < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("convert", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/display.php
5
- #
6
- class Display < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("display", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/identify.php
5
- #
6
- class Identify < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("identify", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/import.php
5
- #
6
- class Import < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("import", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/command-line-processing.php
5
- #
6
- class Magick < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("magick", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/mogrify.php
5
- #
6
- class Mogrify < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("mogrify", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,15 +0,0 @@
1
- require "mini_magick/tool/mogrify"
2
-
3
- module MiniMagick
4
- class Tool
5
- ##
6
- # @see http://www.imagemagick.org/script/mogrify.php
7
- #
8
- class MogrifyRestricted < Mogrify
9
- def format(*args)
10
- fail NoMethodError,
11
- "you must call #format on a MiniMagick::Image directly"
12
- end
13
- end
14
- end
15
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/montage.php
5
- #
6
- class Montage < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("montage", *args)
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- module MiniMagick
2
- class Tool
3
- ##
4
- # @see http://www.imagemagick.org/script/stream.php
5
- #
6
- class Stream < MiniMagick::Tool
7
-
8
- def initialize(*args)
9
- super("stream", *args)
10
- end
11
-
12
- end
13
- end
14
- end