gems carrierwave 4.0.0.rc

2 hours ago

Added

  • Support direct uploads with #direct_upload, where the client sends the file straight to the storage service and the bytes never pass through the application (@mshibuya 1677465)
  • Support cache ids which were made outside CarrierWave, by overriding #parse_cache_id (@mshibuya ed90d7f)
  • Support mounting a file which is already in the store with #{column}_identifier= and #adopt!, for when something other than CarrierWave put it there (@mshibuya d12660d)
  • Support customising how a download resolves and connects, such as preferring IPv4, with the ssrf_filter_options configuration passed to SsrfFilter (@kaibadash #2813)
  • Support storing to a bucket which has ACLs disabled, and setting the ACL apart from fog_public, with the fog_acl configuration (@stanhu #2811)

Deprecated

  • Deprecate passing a block to #convert, #resize_to_limit, #resize_to_fit, #resize_to_fill, #resize_and_pad and #crop to receive a MiniMagick::Image. Use #manipulate! for a MiniMagick::Image, or #minimagick! for the ImageProcessing builder (@mshibuya acc722d)

Fixed

  • Fix a refused file going unreported when the record is saved through an association, so that the save appeared to succeed without it (@mshibuya c7cd6e5, #2727)
  • Fix assigning a refused file deleting the one which was already stored (@mshibuya 1cfb5f8)
  • Fix an upload whose filename carries a NUL byte raising ArgumentError instead of being accepted (@mshibuya 246ff3b)
  • Fix an upload whose filename is longer than the filesystem takes raising Errno::ENAMETOOLONG, which now fails validation instead (@mshibuya c34c0d5)
  • Fix caching a file which carries no name of its own, such as a bare StringIO, raising TypeError (@mshibuya 2b0a12e, #1831)
  • Fix InvalidParameter when caching or manipulating a version of a file which came from the store rather than the cache (@mshibuya, @SergeyProger 0d00f7e, #2798)
  • Fix a file keeping its old extension after #manipulate! changed its format (@mshibuya cd0686f, #2714)
  • Fix a cache name which is only a cache id, as a direct upload can leave behind, being taken for a directory instead of the file (@mshibuya b9f8c62)
  • Fix an uploader which picks its storage per file caching somewhere other than where it stores (@mshibuya 81da3b8)
  • Fix obsolete warnings from URI::RFC3986_PARSER#escape and #unescape (@mshibuya b3d77e6, #2796)
  • Fix storing a Fog file to where it already is being refused by S3 (@mshibuya 229fdfc)
  • Fix clean_cached_files! removing files outside the cache directory which merely look like a cache (@mshibuya f4691e6)
  • Fix the remove callbacks being run for a mounted column which had no file (@mshibuya b038f12)

Don't miss a new carrierwave release

NewReleases is sending notifications on new releases.