Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-mini_magick for 
openSUSE:Factory checked in at 2026-07-21 23:00:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-mini_magick (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-mini_magick.new.24530 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-mini_magick"

Tue Jul 21 23:00:46 2026 rev:15 rq:1366756 version:5.3.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-mini_magick/rubygem-mini_magick.changes  
2024-11-07 16:27:58.699123286 +0100
+++ 
/work/SRC/openSUSE:Factory/.rubygem-mini_magick.new.24530/rubygem-mini_magick.changes
       2026-07-21 23:00:50.842633379 +0200
@@ -1,0 +2,6 @@
+Mon Jul 20 11:58:48 UTC 2026 - Aleksei Burlakov <[email protected]>
+
+- New upstream release 5.3.1:
+  * Fixed MiniMagick.cli_prefix being mutated when set to an array. 
+
+-------------------------------------------------------------------

Old:
----
  mini_magick-5.0.1.gem

New:
----
  mini_magick-5.3.1.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-mini_magick.spec ++++++
--- /var/tmp/diff_new_pack.smhzMX/_old  2026-07-21 23:00:51.614660006 +0200
+++ /var/tmp/diff_new_pack.smhzMX/_new  2026-07-21 23:00:51.618660144 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-mini_magick
 #
-# Copyright (c) 2024 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,7 +24,7 @@
 #
 
 Name:           rubygem-mini_magick
-Version:        5.0.1
+Version:        5.3.1
 Release:        0
 %define mod_name mini_magick
 %define mod_full_name %{mod_name}-%{version}

++++++ mini_magick-5.0.1.gem -> mini_magick-5.3.1.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md       2024-07-24 10:29:49.000000000 +0200
+++ new/README.md       1980-01-02 01:00:00.000000000 +0100
@@ -237,9 +237,11 @@
   config.timeout = nil # number of seconds IM commands may take
   config.errors = true # raise errors non nonzero exit status
   config.warnings = true # forward warnings to standard error
-  config.tmdir = Dir.tmpdir # alternative directory for tempfiles
+  config.tmpdir = Dir.tmpdir # alternative directory for tempfiles
   config.logger = Logger.new($stdout) # where to log IM commands
   config.cli_prefix = nil # add prefix to all IM commands
+  config.cli_env = {} # environment variables to set for IM commands
+  config.restricted_env = false # when true, block IM commands from accessing 
system environment variables other than those in cli_env
 end
 ```
 
@@ -455,11 +457,14 @@
 ### GraphicsMagick
 
 As of MiniMagick 5+, [GraphicsMagick](http://www.graphicsmagick.org/) isn't
-officially supported. However, you can still configure MiniMagick to use it:
+officially supported. This means its installation won't be auto-detected, and 
no
+attempts will be made to handle differences in GraphicsMagick API or output.
+
+However, you can still configure MiniMagick to use it:
 
 ```rb
 MiniMagick.configure do |config|
-  config.cli_prefix = "gm"
+  config.graphicsmagick = true
 end
 ```
 
@@ -468,16 +473,27 @@
 
 ### Limiting resources
 
-ImageMagick supports a number of environment variables for controlling its
+ImageMagick supports a number of [environment variables] for controlling its
 resource limits. For example, you can enforce memory or execution time limits 
by
-setting the following variables in your application's process environment:
+setting the following:
 
-* `MAGICK_MEMORY_LIMIT=128MiB`
-* `MAGICK_MAP_LIMIT=64MiB`
-* `MAGICK_TIME_LIMIT=30`
+```rb
+MiniMagick.configure do |config|
+  config.cli_env = {
+    "MAGICK_MEMORY_LIMIT" => "128MiB",
+    "MAGICK_MAP_LIMIT" => "64MiB",
+    "MAGICK_TIME_LIMIT" => "30"
+  }
+end
+```
 
-For a full list of variables and description, see [ImageMagick's resources
-documentation](http://www.imagemagick.org/script/resources.php#environment).
+For time limit you can also use the `timeout` configuration:
+
+```rb
+MiniMagick.configure do |config|
+  config.timeout = 30 # 30 seconds
+end
+```
 
 ### Changing temporary directory
 
@@ -538,3 +554,5 @@
 * To open files with MiniMagick you use `MiniMagick::Image.open` as you would
   `Magick::Image.read`. To open a file and directly edit it, use
   `MiniMagick::Image.new`.
+
+[environment variables]: 
https://imagemagick.org/script/resources.php#environment
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/mini_magick/configuration.rb 
new/lib/mini_magick/configuration.rb
--- old/lib/mini_magick/configuration.rb        2024-07-24 10:29:49.000000000 
+0200
+++ new/lib/mini_magick/configuration.rb        1980-01-02 01:00:00.000000000 
+0100
@@ -5,6 +5,13 @@
   module Configuration
 
     ##
+    # Uses [GraphicsMagick](http://www.graphicsmagick.org/) instead of
+    # ImageMagick, by prefixing commands with `gm` instead of `magick`.
+    #
+    # @return [Boolean]
+    attr_accessor :graphicsmagick
+
+    ##
     # Adds a prefix to the CLI command.
     # For example, you could use `firejail` to run all commands in a sandbox.
     # Can be a string, or an array of strings.
@@ -16,6 +23,26 @@
     attr_accessor :cli_prefix
 
     ##
+    # Adds environment variables to every CLI command call.
+    # For example, you could use it to set 
`LD_PRELOAD="/path/to/libsomething.so"`.
+    # Must be a hash of strings keyed to valid environment variable name 
strings.
+    # e.g. {'MY_ENV' => 'my value'}
+    #
+    # @return [Hash]
+    #
+    attr_accessor :cli_env
+
+    ##
+    # If set to true, Open3 will restrict system calls to access only
+    # environment variables defined in :cli_env, plus HOME, PATH, and LANG
+    # since those are required for such system calls. It will not pass on any
+    # other environment variables from the system.
+    #
+    # @return [Boolean]
+    #
+    attr_accessor :restricted_env
+
+    ##
     # If you don't want commands to take too long, you can set a timeout (in
     # seconds).
     #
@@ -55,6 +82,9 @@
       base.errors = true
       base.logger = Logger.new($stdout).tap { |l| l.level = Logger::INFO }
       base.warnings = true
+      base.cli_env = {}.freeze
+      base.restricted_env = false
+      base.graphicsmagick = false
     end
 
     ##
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/mini_magick/shell.rb new/lib/mini_magick/shell.rb
--- old/lib/mini_magick/shell.rb        2024-07-24 10:29:49.000000000 +0200
+++ new/lib/mini_magick/shell.rb        1980-01-02 01:00:00.000000000 +0100
@@ -1,5 +1,4 @@
 require "open3"
-require "benchmark"
 
 module MiniMagick
   ##
@@ -27,8 +26,12 @@
     end
 
     def execute(command, stdin: "", timeout: MiniMagick.timeout)
+      env = MiniMagick.restricted_env ? ENV.to_h.slice("HOME", "PATH", "LANG") 
: {} # Using #to_h for Ruby 2.5 compatibility.
+      env.merge!(MiniMagick.cli_env)
+      env["MAGICK_TIME_LIMIT"] = timeout.to_s if timeout
+
       stdout, stderr, status = log(command.join(" ")) do
-        Open3.capture3({ "MAGICK_TIME_LIMIT" => timeout&.to_s }, *command, 
stdin_data: stdin)
+        Open3.capture3(env, *command, stdin_data: stdin, unsetenv_others: 
MiniMagick.restricted_env)
       end
 
       [stdout, stderr, status&.exitstatus]
@@ -39,8 +42,9 @@
     private
 
     def log(command, &block)
-      value = nil
-      duration = Benchmark.realtime { value = block.call }
+      time_start = Process.clock_gettime(Process::CLOCK_MONOTONIC)
+      value = block.call
+      duration = Process.clock_gettime(Process::CLOCK_MONOTONIC) - time_start
       MiniMagick.logger.debug "[%.2fs] %s" % [duration, command]
       value
     end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/mini_magick/tool.rb new/lib/mini_magick/tool.rb
--- old/lib/mini_magick/tool.rb 2024-07-24 10:29:49.000000000 +0200
+++ new/lib/mini_magick/tool.rb 1980-01-02 01:00:00.000000000 +0100
@@ -27,8 +27,8 @@
     #   instance of the tool, if block is given, returns the output of the
     #   command.
     #
-    def self.new(*args)
-      instance = super(*args)
+    def self.new(name, **options)
+      instance = super
 
       if block_given?
         yield instance
@@ -121,10 +121,10 @@
     #   identify.executable #=> ["firejail", "--force", "magick", "identify"]
     #
     def executable
-      exe = [name]
-      exe.unshift "magick" if MiniMagick.imagemagick7? && name != "magick"
-      Array(MiniMagick.cli_prefix).reverse_each { |p| exe.unshift p } if 
MiniMagick.cli_prefix
-      exe
+      exe = Array(MiniMagick.cli_prefix).dup
+      exe << "magick" if MiniMagick.imagemagick7? && name != "magick"
+      exe << "gm" if MiniMagick.graphicsmagick
+      exe << name
     end
 
     ##
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/mini_magick/version.rb 
new/lib/mini_magick/version.rb
--- old/lib/mini_magick/version.rb      2024-07-24 10:29:49.000000000 +0200
+++ new/lib/mini_magick/version.rb      1980-01-02 01:00:00.000000000 +0100
@@ -8,7 +8,7 @@
 
   module VERSION
     MAJOR = 5
-    MINOR = 0
+    MINOR = 3
     TINY  = 1
     PRE   = nil
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/mini_magick.rb new/lib/mini_magick.rb
--- old/lib/mini_magick.rb      2024-07-24 10:29:49.000000000 +0200
+++ new/lib/mini_magick.rb      1980-01-02 01:00:00.000000000 +0100
@@ -17,6 +17,7 @@
   #
   # @return [Boolean]
   def self.imagemagick7?
+    return false if graphicsmagick
     return @imagemagick7 if defined?(@imagemagick7)
     @imagemagick7 = !!MiniMagick::Utilities.which("magick")
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2024-07-24 10:29:49.000000000 +0200
+++ new/metadata        1980-01-02 01:00:00.000000000 +0100
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: mini_magick
 version: !ruby/object:Gem::Version
-  version: 5.0.1
+  version: 5.3.1
 platform: ruby
 authors:
 - Corey Johnson
@@ -10,19 +10,18 @@
 - James Miller
 - Thiago Fernandes Massa
 - Janko Marohnić
-autorequire:
 bindir: bin
 cert_chain: []
-date: 2024-07-24 00:00:00.000000000 Z
+date: 1980-01-02 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
-  name: rake
+  name: logger
   requirement: !ruby/object:Gem::Requirement
     requirements:
     - - ">="
       - !ruby/object:Gem::Version
         version: '0'
-  type: :development
+  type: :runtime
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
@@ -30,33 +29,33 @@
       - !ruby/object:Gem::Version
         version: '0'
 - !ruby/object:Gem::Dependency
-  name: rspec
+  name: rake
   requirement: !ruby/object:Gem::Requirement
     requirements:
-    - - "~>"
+    - - ">="
       - !ruby/object:Gem::Version
-        version: '3.5'
+        version: '0'
   type: :development
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
-    - - "~>"
+    - - ">="
       - !ruby/object:Gem::Version
-        version: '3.5'
+        version: '0'
 - !ruby/object:Gem::Dependency
-  name: webmock
+  name: rspec
   requirement: !ruby/object:Gem::Requirement
     requirements:
-    - - ">="
+    - - "~>"
       - !ruby/object:Gem::Version
-        version: '0'
+        version: '3.5'
   type: :development
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
-    - - ">="
+    - - "~>"
       - !ruby/object:Gem::Version
-        version: '0'
+        version: '3.5'
 description: Manipulate images with minimal use of memory via ImageMagick
 email:
 - [email protected]
@@ -85,7 +84,6 @@
 - MIT
 metadata:
   changelog_uri: https://github.com/minimagick/minimagick/releases
-post_install_message:
 rdoc_options: []
 require_paths:
 - lib
@@ -93,7 +91,7 @@
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
-      version: '2.3'
+      version: '2.5'
 required_rubygems_version: !ruby/object:Gem::Requirement
   requirements:
   - - ">="
@@ -101,8 +99,7 @@
       version: '0'
 requirements:
 - You must have ImageMagick installed
-rubygems_version: 3.5.11
-signing_key:
+rubygems_version: 3.6.7
 specification_version: 4
 summary: Manipulate images with minimal use of memory via ImageMagick
 test_files: []

Reply via email to