Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update dependency mini_magick to v5 #423

Open
wants to merge 1 commit into
base: staging
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 28, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
mini_magick (changelog) '~> 4.13', '>= 4.13.2' -> '~> 5.0', '>= 5.0.1' age adoption passing confidence

Release Notes

minimagick/minimagick (mini_magick)

v5.0.1

Compare Source

  • MiniMagick::Image#write doesn't delete the internal tempfile anymore, which restores use cases like:

    image = MiniMagick::Image.open("...")
    image.resize("500x500")
    image.write("foo.jpg")
    image.blur
    image.write("bar.png")
  • Prevented MiniMagick::Image#to_ary being called by ruby in certain cases, such as [image].flatten(1).

v5.0.0

Compare Source

Improvements

  • New class method shorthands were added for the tool API:

BEFORE

MiniMagick::Tool::Convert.new { |convert| ... }
MiniMagick::Tool::Identify.new { |convert| ... }

...

AFTER

MiniMagick.convert { |convert| ... }
MiniMagick.identify { |identify| ... }

...


* `Image#write` now deletes the underlying tempfile if `Image.open` was used, instead of relying on the tempfile to eventually be garbage collected.

#### Backwards compatibility

* Removed official GraphicsMagick support. GraphicsMagick can be used by setting `cli_prefix`:

```rb
MiniMagick.configure do |config|
  config.cli_prefix = "gm"
end

Some features won't be supported, such as MiniMagick.timeout (GraphicsMagick doesn't support time limits), Image#data (GraphicsMagick doesn't support JSON image details) and Image#exif (returns different format).

As a result, MiniMagick.cli and MiniMagick.processor configuration has been removed as well.

  • MiniMagick::Image and MiniMagick.convert now use magick instead of the deprecated magick convert on ImageMagick 7. This should be backwards compatible, but there might be small differences in options and behavior.

  • Removed deprecated posix-spawn shell backend, along with MiniMagick.shell_api configuration.

    Ruby 2.x has long used vfork, so there is no performance advantage of using posix-spawn. Additionally, Ruby 3.x has switched to non-blocking pipes, which should resolve deadlocks people experienced with Open3. See https://github.com/minimagick/minimagick/pull/558 for more details.

  • Removed obsolete Image#run_command.

  • Removed deprecated Image#mime_type, as it wasn't accurate.

    MIME type from file content should be determined either using Marcel or MimeMagic, or mime-types or MiniMime using Image#type.

  • The MiniMagick::Tool::* classes have been deprecated in favor of the class-level interface.

  • The MiniMagick.timeout configuration now uses the native ImageMagick timeout environment variable $MAGICK_TIME_LIMIT. This variable doesn't support timeouts lower than 1 second.

  • The MiniMagick.whiny configuration has been renamed to MiniMagick.errors.

  • Images are no longer automatically validated on Image.open, Image.read or Image.create.

  • The deprecated Image#details method has been removed in favor of the more reliable Image#data.

  • The Image#respond_to_missing? method has been removed, meaning that Image#respond_to? will return false for ImageMagick option methods.

    As a result, the undocumented MiniMagick::Tool.option_methods method has been removed as well, along with the no-op MiniMagick.reload_tools.

  • Removed the obsolete MiniMagick.processor_path configuration, which as mostly an alias for MiniMagick.cli_path.

  • Removed the deprecated MiniMagick.debug configuration in favor of MiniMagick.logger.level = Logger::DEBUG.

  • Removed the unused MiniMagick.validate_on_write configuration.

  • Additional Pathname#open or URI#open options for Image.open need to be passed in as keyword arguments instead of a hash.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link
Contributor Author

renovate bot commented Aug 28, 2024

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Gemfile.lock
Fetching gem metadata from https://rubygems.org/........
Resolving dependencies...

Could not find compatible versions

Because image_processing >= 1.0.0, < 1.8.0 depends on mini_magick ~> 4.0
  and image_processing >= 1.8.0, < 1.9.2 depends on mini_magick >= 4.9.3, < 5,
  image_processing >= 1.0.0, < 1.9.2 requires mini_magick >= 4.0, < 5.
And because image_processing >= 1.9.2 depends on mini_magick >= 4.9.5, < 5
  and carrierwave >= 2.0.0.rc depends on image_processing ~> 1.1,
  carrierwave >= 2.0.0.rc requires mini_magick >= 4.0, < 5.
So, because Gemfile depends on carrierwave ~> 2.1
  and Gemfile depends on mini_magick >= 5.0.1, < 6.A,
  version solving has failed.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Aug 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants