Shrine v2.14.0 Release Notes

Release Date: 2018-12-27 // over 5 years ago
    • โž• Add tempfile plugin for easier reusing of the same uploaded file copy on disk (@janko)

    • ๐Ÿ“‡ Don't re-open the uploaded file if it's already open in refresh_metadata plugin (@janko)

    • โฌ‡๏ธ Drop support for MRI 2.1 and 2.2 (@janko)

    • ๐Ÿ›  Fix backgrounding not working when default storage was changed with Attachment.new (@janko)

    • ๐Ÿ“‡ Don't clear existing metadata definitions when loading add_metadata plugin (@janko)

    • ๐Ÿ”Œ Don't clear existing processing blocks when loading processing plugin (@janko)

    • ๐Ÿ—„ Deprecate automatic escaping of :content_disposition in Shrine::Storage::S3 (@janko)

    • Use content_disposition gem in Shrine::Storage::S3 and rack_response plugin (@janko)

    • ๐Ÿ‘‰ Make FileSystem#clear! work correctly when the storage directory is a symlink (@janko)

    • ๐Ÿ“‡ Don't abort promotion in backgrounding plugin when original metadata was updated (@janko)

    • ๐Ÿ“‡ Don't mutate the UploadedFile data hash in refresh_metadata plugin (@janko)

    • ๐Ÿ—„ Deprecate Storage::S3#download (@janko)

    • Stop using Storage#download in UploadedFile#download for peformance (@janko)

    • โœ‚ Remove #download from the Shrine storage specification (@janko)

    • ๐Ÿ“‡ Keep context argument in #extract_metadata optional after loading add_metadata plugin (@janko)

    • ๐Ÿ“‡ Include metadata key with nil value when nil is returned in add_metadata block (@janko)

    • Strip query params in upload location when re-uploading from shrine-url storage (@jrochkind)

    • ๐Ÿ”Œ Inline Base plugin into core classes, extract them to separate files (@printercu)

    • ๐Ÿ”Œ Make rack_response plugin work with Rack::Sendfile for FileSystem storage (@janko)

    • โž• Add :filename and :type options to rack_response plugin (@janko)

    • Add :host option to UploadedFile#download_url in download_endpoint plugin (@janko)

    • โž• Add support for client-side encryption to S3 storage (@janko)

    • ๐Ÿ–จ Don't look up the attachment class in each new model instance (@printercu)

    • ๐Ÿ‘ Allow Attacher#cached? and Attacher#stored? to take an UploadedFile object (@jrochkind)

    • ๐Ÿ‘ Allow assigning a filename to the DataFile object in Shrine.data_uri (@janko)

    • ๐Ÿ”Œ Don't strip media type parameters for the DataFile object in data_uri plugin (@janko)

    • Add :content_type analyzer to Shrine.mime_type_analyzers in determine_mime_type plugin (@janko)

    • Rename :default analyzer to :content_type in determine_mime_type plugin (@janko)

    • Don't display a warning when determine_mime_type plugin is loaded with :default analyzer (@janko)

    • Exclude media type parameters when copying IO#content_type into mime_type metadata (@janko)

    • โœ‚ Remove superfluous #head_object S3 API call in S3#download (@janko)

    • ๐Ÿ‘‰ Make S3#download and S3#open work with server side encryption options (@janko)

    • ๐Ÿ“‡ Make previously extracted metadata available under :metadata in add_metadata plugin (@jrochkind)

    • ๐Ÿ‘‰ Use a guard raise cause for bucket argument in S3 for an appropriate error message (@ardecvz)